import { InstrAtomContext, ReplaceAtomContext, SubstrAtomContext, UnaryStringFunctionContext, Visitor as VtlVisitor } from "@making-sense/vtl-2-1-antlr-tools-ts"; import { VisitorResult, Bindings } from "../../model"; import ExpressionVisitor from "../Expression"; declare class StringVisitor extends VtlVisitor { exprVisitor: ExpressionVisitor; constructor(exprVisitor: ExpressionVisitor); visitUnaryStringFunction: (ctx: UnaryStringFunctionContext) => { resolve: (bindings: Bindings) => string | number | null; type: number; }; checkTypes: (exprCtx: any, expectedTypes: number | number[]) => VisitorResult; visitReplaceAtom: (ctx: ReplaceAtomContext) => { resolve: (bindings: Bindings) => any; type: number; }; visitInstrAtom: (ctx: InstrAtomContext) => { resolve: (bindings: Bindings) => number | null; type: number; }; visitSubstrAtom: (ctx: SubstrAtomContext) => { resolve: (bindings: Bindings) => any; type: number; }; } export default StringVisitor;