import { LogicASTNode, LogicGotoNode, LogicLabel } from '../Extract/Logic/LogicDecompile'; import { LogicScriptParseTree, LogicScriptPreprocessedStatement, LogicScriptStatementStack } from './LogicScriptParser'; import { LogicScriptLabel } from './LogicScriptParserTypes'; import { WordList } from '../Types/WordList'; import { LogicScriptPrimitiveStatement } from './LogicScriptPrimitiveTree'; import { IdentifierMapping } from './LogicScriptIdentifierMapping'; import { ObjectList } from '../Types/ObjectList'; export declare class LogicScriptASTGenerator { parseTree: LogicScriptParseTree; wordList: WordList; invertedWordList: Map; objectList: ObjectList; objectNumbersByName: Map; messages: (string | undefined)[]; messagesByContent: Map; identifiers: Map; unresolvedGotos: { node: LogicGotoNode; label: string; }[]; labels: Map; private statementAddresses; private nodesByAddress; constructor(parseTree: LogicScriptParseTree, wordList: WordList, objectList: ObjectList); private getMessageNumber; private argumentToNumber; private booleanExpressionToClauses; private testCallToClause; private generateASTForNextStatement; generateASTForLogicScriptStatements(statements: LogicScriptPrimitiveStatement[], previousLabel: LogicScriptLabel | undefined, stack: LogicScriptStatementStack): LogicASTNode | undefined; generateASTForLogicScript(): LogicASTNode; getLabels(): LogicLabel[]; generateMessageArray(): (string | undefined)[]; }