import * as metaast from './meta_ast'; import type { GrammarOptions } from '../types'; import type * as I18n from '../../i18n'; import type SentenceGenerator from '../generator'; import ThingpediaLoader from '../../templates/load-thingpedia'; export declare class Compiler { private _target; private _files; private _nonTerm; private _typeMap; private _filenameMap; private _keyFnMap; constructor(target: 'js' | 'ts'); private _loadFile; private _assignAllImportNames; private _assignAllTypes; visit(visitor: metaast.NodeVisitor): void; parse(filename: string): Promise; process(filename: string): Promise; private _outputAllFiles; private _outputFile; } export declare function compile(filename: string): Promise; declare type CompiledTemplate = (options: GrammarOptions, langPack: I18n.LanguagePack, grammar: SentenceGenerator, loader: ThingpediaLoader) => Promise; export declare function importGenie(filename: string, searchPath?: string): Promise; export {};