burdy
Version:
Open Source Headless Platform
31 lines (30 loc) • 1.27 kB
TypeScript
export interface IFileDriver {
getUpload: () => any;
getName: () => string;
getPath: (key: string) => string;
copy: (src: string, dest: string) => Promise<any>;
write: (key: string, content: any) => Promise<any>;
read: (key: string) => Promise<any>;
stat: (key: string) => Promise<any>;
delete: (params: string | string[]) => Promise<any>;
createReadStream: (key: string, options?: any) => any;
createWriteStream: (key: string, options?: any) => any;
uploadReadableStream?: (key: string, stream: any) => Promise<any>;
}
export default class FileDriver implements IFileDriver {
private static instance;
private implementation;
constructor();
static getInstance(): IFileDriver;
getUpload: () => any;
getPath: (key: string) => string;
getName: () => string;
copy: (src: string, dest: string) => Promise<any>;
write: (key: string, content: any) => Promise<any>;
read: (key: string) => Promise<any>;
stat: (key: string) => Promise<any>;
delete: (params: string | string[]) => Promise<any>;
createReadStream: (key: string, options?: any) => any;
createWriteStream: (key: string, options?: any) => any;
uploadReadableStream: (key: string, stream: any) => Promise<any>;
}