UNPKG

@uploadx/core

Version:
47 lines (46 loc) 1.55 kB
import { IncomingMessage } from '../types'; import { ERRORS, HttpError } from '../utils'; import { File, FileInit, FilePart, FileQuery } from './file'; import { LocalMetaStorageOptions } from './local-meta-storage'; import { MetaStorage } from './meta-storage'; import { BaseStorage, BaseStorageOptions } from './storage'; export declare class DiskFile extends File { } export type DiskStorageOptions = BaseStorageOptions<DiskFile> & { /** * Uploads directory * @defaultValue './files' */ directory?: string; /** * Configuring metafile storage on the local disk * @example * ```ts * const storage = new DiskStorage({ * directory: 'upload', * metaStorageConfig: { directory: '/tmp/upload-metafiles', prefix: '.' } * }); * ``` */ metaStorageConfig?: LocalMetaStorageOptions; }; /** * Local Disk Storage */ export declare class DiskStorage extends BaseStorage<DiskFile> { config: DiskStorageOptions; checksumTypes: string[]; directory: string; meta: MetaStorage<DiskFile>; constructor(config?: DiskStorageOptions); normalizeError(err: Error): HttpError; accessCheck(): Promise<void>; create(req: IncomingMessage, fileInit: FileInit): Promise<DiskFile>; write(part: FilePart | FileQuery): Promise<DiskFile>; delete({ id }: FileQuery): Promise<DiskFile[]>; /** * Returns path for the uploaded file */ getFilePath(filename: string): string; protected _write(part: FilePart & File): Promise<[number, ERRORS?]>; }