@apr144/generic-filehandle
Version:
uniform interface for accessing binary data from local files, remote HTTP resources, and browser Blob data
30 lines (29 loc) • 1.33 kB
TypeScript
/// <reference types="node" />
import { GenericFilehandle, FilehandleOptions, Stats, PolyfilledResponse } from './filehandle';
export default class RemoteFile implements GenericFilehandle {
protected url: string;
protected auth: any;
private _stat?;
private fetchImplementation;
private baseOverrides;
private getBufferFromResponse;
constructor(source: string, opts?: FilehandleOptions);
fetch(input: RequestInfo, init: RequestInit | undefined): Promise<PolyfilledResponse>;
read(buffer: Buffer, offset: number | undefined, length: number, position?: number, opts?: FilehandleOptions): Promise<{
bytesRead: number;
buffer: Buffer;
}>;
readFile(): Promise<Buffer>;
readFile(options: BufferEncoding): Promise<string>;
readFile<T extends undefined>(options: Omit<FilehandleOptions, 'encoding'> | (Omit<FilehandleOptions, 'encoding'> & {
encoding: T;
})): Promise<Buffer>;
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<Buffer> : Promise<Buffer | string>;
stat(): Promise<Stats>;
close(): Promise<void>;
}