import * as AST from './AST'; import type { AliasNameFunction, BuiltInFunctionTable, BuiltInFunctionTableEntry } from './Evaluator'; declare class SymbolTable { variableTable: Record; functionTable: Record; builtInTable: BuiltInFunctionTable; aliasNameFunction: AliasNameFunction; parent: SymbolTable | null; child: SymbolTable[]; scope: string | null; constructor(builtInTable: BuiltInFunctionTable, aliasNameFunction: AliasNameFunction, parent?: SymbolTable | null, scope?: string | null, node?: any); lookupVariable(id: string): [AST.NodeExpr, string | null] | null; insertVariable(id: string, expression: AST.NodeExpr): [AST.NodeExpr, string | null]; lookupFunction(id: string): [AST.NodeFunction | BuiltInFunctionTableEntry, string | null] | null; insertFunction(id: string, entry: AST.NodeFunction): [AST.NodeFunction, string | null]; } export { SymbolTable }; declare const _default: { SymbolTable: typeof SymbolTable; }; export default _default;