import { Node, Origin } from "../model/model"; import { ASTTransformer } from "../transformation/transformation"; import { Issue } from "../validation"; import { Source } from "../model/position"; /** * Implements a transformation from an ANTLR parse tree (the output of the parser) to an AST (a higher-level * representation of the source code). */ export declare class ParseTreeToASTTransformer extends ASTTransformer { readonly source?: Source | undefined; constructor(issues?: Issue[], allowGenericNode?: boolean, source?: Source | undefined); getSource(node: Node, source: any): any; asOrigin(source: any): Origin | undefined; /** * Performs the transformation of a node and, recursively, its descendants. In addition to the overridden method, * it also assigns the parseTreeNode to the AST node so that it can keep track of its position. * However, a node factory can override the parseTreeNode of the nodes it creates (but not the parent). */ transformIntoNodes(source?: any, parent?: Node): Node[]; }