import { SelectQuery } from "../models/SelectQuery";
import { SqlComponent } from "../models/SqlComponent";
export type SelectBodyWrapperKind = "create-table-as" | "create-view" | "create-materialized-view" | "insert-select";
export interface SelectBodyExtractionResult {
    supported: boolean;
    kind: SelectBodyWrapperKind | null;
    targetName: string | null;
    selectQuery: SelectQuery | null;
    reason?: string;
}
export declare class SelectBodyExtractor {
    static extract(input: string | SqlComponent): SelectBodyExtractionResult;
    private static extractFromSql;
    private static extractFromStatement;
    private static extractCreateViewFromLexemes;
    private static isCreateViewStatement;
    private static consumeBalancedParentheses;
    private static createTableTargetName;
    private static insertTargetName;
    private static unsupported;
}
