import { Link } from '../publication/Link';
export declare class NumberRange {
    readonly start: number;
    readonly endInclusive: number;
    constructor(start: number, endInclusive: number);
}
export declare abstract class Resource {
    abstract link(): Promise<Link>;
    abstract length(): Promise<number | undefined>;
    abstract read(range?: NumberRange): Promise<Uint8Array | undefined>;
    readAsString(): Promise<string | undefined>;
    readAsJSON(): Promise<unknown | undefined>;
    readAsXML(): Promise<XMLDocument | undefined>;
    abstract close(): void;
}
