/** * Static file server with streaming, ETags, and directory listing */ import type { IStaticOptions } from '../core/smartserve.interfaces.js'; /** * Static file server */ export declare class FileServer { private options; constructor(options: IStaticOptions | string); /** * Handle a request for static files */ serve(request: Request): Promise; /** * Serve a single file with proper headers */ private serveFile; /** * Serve partial content (Range request) */ private servePartial; /** * Serve directory listing */ private serveDirectory; /** * Generate default directory listing HTML */ private generateDirectoryHtml; /** * Find pre-compressed variant of a file if it exists * Checks for .br and .gz variants based on client Accept-Encoding */ private findPrecompressedVariant; /** * Convert Node.js stream to Web ReadableStream */ private nodeStreamToWebStream; }