UNPKG

rhombic

Version:

SQL parsing, lineage extraction and manipulation

61 lines 1.82 kB
import { ProjectionItemContext, ProjectionItemsContext, CastContext, OrderItemContext, OrderByContext } from "../Context"; import { IToken } from "chevrotain"; import { Range } from "../utils/getRange"; declare const Visitor: new (...args: any[]) => import("chevrotain").ICstVisitor<any, any>; /** * Visitor to extract `projectionItem` list */ export declare class ProjectionItemsVisitor extends Visitor { output: Array<{ range: Range; isAsterisk: boolean; expression: string; path?: { catalogName?: string; schemaName?: string; tableName?: string; columnName: string; }; alias?: string; cast?: { value: string; type: string; }; fn?: { identifier: string; values: { expression: string; path?: { catalogName?: string; schemaName?: string; tableName?: string; columnName: string; }; }[]; }; sort?: { order: "asc" | "desc"; nullsOrder?: "first" | "last"; }; }>; sort: Array<{ expression: string; expressionRange: Range; order?: "asc" | "desc"; nullsOrder?: "first" | "last"; }>; sortRange: Range | undefined; commas: IToken[]; asteriskCount: number; constructor(); projectionItems(ctx: ProjectionItemsContext): void; cast(ctx: CastContext): { value: string; type: string; }; orderBy(ctx: OrderByContext): void; orderItem(ctx: OrderItemContext): void; projectionItem(ctx: ProjectionItemContext): void; } export {}; //# sourceMappingURL=ProjectionItemsVisitor.d.ts.map