import { Filesystem } from '@deepkit/filesystem'; import { AppModule } from '@deepkit/app'; import { ClassType } from '@deepkit/core'; import { InjectorContext } from '@deepkit/injector'; import { ReceiveType } from '@deepkit/type'; export declare class FilesystemRegistry { protected injectorContext: InjectorContext; protected filesystems: { classType: ClassType; module: AppModule; }[]; constructor(injectorContext: InjectorContext); addFilesystem(classType: ClassType, module: AppModule): void; getFilesystems(): Filesystem[]; } export declare class PublicFilesystem extends Filesystem { constructor(publicDir: string, publicBaseUrl: string); } export declare class ServeFilesystemOptions { baseUrl: string; directory: string; cacheHeaders: boolean; /** * Max cache control header age in seconds. Default is 1hour (3600 seconds). */ cacheMaxAge: number; /** * Size of the memory cache in bytes. Default is 200MB. */ dataCacheMaxSize: number; /** * Maximum number of files to cache in memory. Default is 10,000. */ fileCacheMaxSize: number; /** * Maximum age of files in the file cache in seconds. Default is 15 minutes. */ fileCacheMaxAge: number; } export declare function serveFilesystem(module: AppModule, options?: Partial, type?: ReceiveType): void;