/// import { StreamableFile } from '@nestjs/common'; import { ConfigService } from '@nestjs/config'; import { FileDto } from './dto'; import { StorageAdapter } from './adapters'; import { StorageModuleOptions } from './storage.module'; import { FileProps } from './decorators'; import { FileMetadata, FileMetaService } from './file-meta'; import { AuthUser } from '../auth'; type AccessMeta = { allowed: boolean; meta: FileMetadata; }; type StoredFile = { fileName: string; metaId?: string | number; }; export declare class FileManager { private storageModuleOptions; private fileMetaService; private storageAdapter; private configService; private readonly logger; private readonly dirname; private readonly tempDirname; private readonly filesDirPattern; private readonly filesNamePattern; constructor(storageModuleOptions: StorageModuleOptions, fileMetaService: FileMetaService, storageAdapter: StorageAdapter, configService: ConfigService); useWith(sessionManager: any): FileManager; checkFileAccess(name: string, user: AuthUser): Promise; storeFile(name: string, data: Buffer, meta?: FileMetadata, transformName?: boolean): Promise; loadFile(name: string): Promise; fileExists(name: string): Promise; streamFile(name: string, start?: number, end?: number): Promise; deleteFile(name: string): Promise; moveFromTemp(name: string, meta?: FileMetadata, transformName?: boolean): Promise; updateFilesMetaResourceIds(fileNames: string[], id: string | number): Promise; deleteFileArray(fileNames: string[]): Promise; deleteFiles(fileProps: Record, currentModel: any, newModel?: any): Promise; getFilesToDelete(fileProps: Record, currentModel: any, newModel?: any): string[]; persistFile(file: FileDto, isUpdate?: boolean, meta?: FileMetadata): Promise; persistFiles(fileProps: Record, newModel: any, currentModel?: any, isFileUpload?: boolean): Promise; private directoryName; private fileName; private setFileMetaService; } export {};