import { Conf } from './conf.js'; import { ListenerHandler, ViewHandler } from './types.js'; interface Source { module: string; key: string; parts: string[]; name: string; } export declare abstract class Indexer { index(conf: Conf, writeIndexFile?: boolean): Promise; indexSourceDir(conf: Conf): Promise; indexFilePath(conf: Conf): Promise; protected indexDirectory(indexedMap: { [key: string]: ViewHandler | ListenerHandler; }, parts: string[], dir: string): Promise; protected indexFile(indexedMap: { [key: string]: Function; }, parts: string[], file: string): Promise; protected abstract get ext(): string; generateFileContent(views: Source[], listeners: Source[]): Promise; static index(conf: Conf, writeIndexFile?: boolean): Promise; } export declare class JavaScriptIndexer extends Indexer { get ext(): string; } export declare class TypeScriptIndexer extends JavaScriptIndexer { get ext(): string; } export declare const indexers: { [key: string]: Indexer; }; export declare function getView(name: string): any; export declare function getListener(name: string): any; export {};