import { z } from 'zod';
import { WindowFunctionType } from '../../../../types/field';
export declare const tableCalcWindowFunctionSchema: z.ZodObject<{
    name: z.ZodString;
    displayName: z.ZodString;
} & {
    type: z.ZodLiteral<"window_function">;
    windowFunction: z.ZodEnum<[WindowFunctionType.ROW_NUMBER, WindowFunctionType.PERCENT_RANK, WindowFunctionType.CUME_DIST, WindowFunctionType.RANK, WindowFunctionType.SUM, WindowFunctionType.AVG, WindowFunctionType.COUNT, WindowFunctionType.MIN, WindowFunctionType.MAX]>;
    fieldId: z.ZodNullable<z.ZodString>;
    orderBy: z.ZodNullable<z.ZodArray<z.ZodObject<{
        fieldId: z.ZodString;
        order: z.ZodNullable<z.ZodEnum<["asc", "desc"]>>;
    }, "strip", z.ZodTypeAny, {
        fieldId: string;
        order: "asc" | "desc" | null;
    }, {
        fieldId: string;
        order: "asc" | "desc" | null;
    }>, "many">>;
    partitionBy: z.ZodNullable<z.ZodArray<z.ZodString, "many">>;
    frame: z.ZodNullable<z.ZodObject<{
        frameType: z.ZodEnum<["rows", "range"]>;
        start: z.ZodNullable<z.ZodObject<{
            type: z.ZodEnum<["unbounded_preceding", "preceding", "current_row", "following", "unbounded_following"]>;
            offset: z.ZodNullable<z.ZodNumber>;
        }, "strip", z.ZodTypeAny, {
            type: "unbounded_preceding" | "preceding" | "current_row" | "following" | "unbounded_following";
            offset: number | null;
        }, {
            type: "unbounded_preceding" | "preceding" | "current_row" | "following" | "unbounded_following";
            offset: number | null;
        }>>;
        end: z.ZodObject<{
            type: z.ZodEnum<["unbounded_preceding", "preceding", "current_row", "following", "unbounded_following"]>;
            offset: z.ZodNullable<z.ZodNumber>;
        }, "strip", z.ZodTypeAny, {
            type: "unbounded_preceding" | "preceding" | "current_row" | "following" | "unbounded_following";
            offset: number | null;
        }, {
            type: "unbounded_preceding" | "preceding" | "current_row" | "following" | "unbounded_following";
            offset: number | null;
        }>;
    }, "strip", z.ZodTypeAny, {
        start: {
            type: "unbounded_preceding" | "preceding" | "current_row" | "following" | "unbounded_following";
            offset: number | null;
        } | null;
        end: {
            type: "unbounded_preceding" | "preceding" | "current_row" | "following" | "unbounded_following";
            offset: number | null;
        };
        frameType: "rows" | "range";
    }, {
        start: {
            type: "unbounded_preceding" | "preceding" | "current_row" | "following" | "unbounded_following";
            offset: number | null;
        } | null;
        end: {
            type: "unbounded_preceding" | "preceding" | "current_row" | "following" | "unbounded_following";
            offset: number | null;
        };
        frameType: "rows" | "range";
    }>>;
}, "strip", z.ZodTypeAny, {
    name: string;
    fieldId: string | null;
    type: "window_function";
    displayName: string;
    orderBy: {
        fieldId: string;
        order: "asc" | "desc" | null;
    }[] | null;
    partitionBy: string[] | null;
    windowFunction: WindowFunctionType;
    frame: {
        start: {
            type: "unbounded_preceding" | "preceding" | "current_row" | "following" | "unbounded_following";
            offset: number | null;
        } | null;
        end: {
            type: "unbounded_preceding" | "preceding" | "current_row" | "following" | "unbounded_following";
            offset: number | null;
        };
        frameType: "rows" | "range";
    } | null;
}, {
    name: string;
    fieldId: string | null;
    type: "window_function";
    displayName: string;
    orderBy: {
        fieldId: string;
        order: "asc" | "desc" | null;
    }[] | null;
    partitionBy: string[] | null;
    windowFunction: WindowFunctionType;
    frame: {
        start: {
            type: "unbounded_preceding" | "preceding" | "current_row" | "following" | "unbounded_following";
            offset: number | null;
        } | null;
        end: {
            type: "unbounded_preceding" | "preceding" | "current_row" | "following" | "unbounded_following";
            offset: number | null;
        };
        frameType: "rows" | "range";
    } | null;
}>;
export type TableCalcWindowFunctionSchema = z.infer<typeof tableCalcWindowFunctionSchema>;
//# sourceMappingURL=tableCalcWindowFunction.d.ts.map