import { GenericFilehandle, FilehandleOptions, Stats } from './filehandle';
export default class RemoteFile implements GenericFilehandle {
    protected url: string;
    private _stat?;
    private fetchImplementation;
    private baseOverrides;
    constructor(source: string, opts?: FilehandleOptions);
    fetch(input: RequestInfo, init: RequestInit | undefined): Promise<Response>;
    read(length: number, position: number, opts?: FilehandleOptions): Promise<Uint8Array<ArrayBuffer>>;
    readFile(): Promise<Uint8Array<ArrayBuffer>>;
    readFile(options: BufferEncoding): Promise<string>;
    readFile<T extends undefined>(options: Omit<FilehandleOptions, 'encoding'> | (Omit<FilehandleOptions, 'encoding'> & {
        encoding: T;
    })): Promise<Uint8Array<ArrayBuffer>>;
    readFile<T extends BufferEncoding>(options: Omit<FilehandleOptions, 'encoding'> & {
        encoding: T;
    }): Promise<string>;
    readFile<T extends BufferEncoding>(options: Omit<FilehandleOptions, 'encoding'> & {
        encoding: T;
    }): T extends BufferEncoding ? Promise<Uint8Array<ArrayBuffer>> : Promise<Uint8Array<ArrayBuffer> | string>;
    stat(): Promise<Stats>;
    close(): Promise<void>;
}
