import { Provider, Type } from '@nestjs/common'; import { ModuleMetadata } from '@nestjs/common/interfaces'; export interface ServeStaticModuleOptions { rootPath?: string; renderPath?: string | RegExp; useGlobalPrefix?: boolean; serveRoot?: string; exclude?: string[]; serveStaticOptions?: { acceptRanges?: boolean; cacheControl?: boolean; dotfiles?: string; etag?: boolean; fallthrough?: boolean; extensions?: string[]; immutable?: boolean; index?: boolean | string | string[]; lastModified?: boolean; maxAge?: number | string; redirect?: boolean; setHeaders?: (res: any, path: string, stat: any) => any; preCompressed?: boolean; decorateReply?: boolean; }; } export interface ServeStaticModuleOptionsFactory { createLoggerOptions(): Promise | ServeStaticModuleOptions[]; } export interface ServeStaticModuleAsyncOptions extends Pick { isGlobal?: boolean; useExisting?: Type; useClass?: Type; useFactory?: (...args: any[]) => Promise | ServeStaticModuleOptions[]; inject?: any[]; extraProviders?: Provider[]; }