type MustacheTemplate = any; type ViewMap = Record; type GlobStr = string; type LoaderOpts = { files?: GlobStr; cacheTemplates?: boolean; dir: string; }; export declare class DefaultLoader { protected cache?: Promise; protected opts: Required; constructor(opts: LoaderOpts); protected fsLoad(): Promise; load(): Promise; static templateKey(dir: string, filename: string): string; static DefaultOptions: { files: string; cacheTemplates: boolean; }; } interface Loader { load(): Promise; } export declare class Renderer { protected loader: Loader; constructor(loader: Loader); render(templateName: K, params: T[K]): Promise; } export declare class Declarer { protected loader: Loader; constructor(loader: Loader); declare(): Promise; } export {};