import type { Readable } from 'stream'; import type { ErrorReporter } from '../errors'; import type { BinaryData } from './types'; export declare class FileSystemManager implements BinaryData.Manager { private storagePath; private readonly errorReporter; constructor(storagePath: string, errorReporter: ErrorReporter); init(): Promise; store(location: BinaryData.FileLocation, bufferOrStream: Buffer | Readable, { mimeType, fileName }: BinaryData.PreWriteMetadata): Promise<{ fileId: string; fileSize: number; }>; getPath(fileId: string): string; getAsStream(fileId: string, chunkSize?: number): Promise; getAsBuffer(fileId: string): Promise>; getMetadata(fileId: string): Promise; deleteMany(locations: BinaryData.FileLocation[]): Promise; copyByFilePath(targetLocation: BinaryData.FileLocation, sourcePath: string, { mimeType, fileName }: BinaryData.PreWriteMetadata): Promise<{ fileId: string; fileSize: number; }>; copyByFileId(targetLocation: BinaryData.FileLocation, sourceFileId: string): Promise; rename(oldFileId: string, newFileId: string): Promise; deleteManyByFileId(ids: string[]): Promise; private toFileId; private toRelativePath; private parseFileId; private resolvePath; private storeMetadata; private getSize; }