import { z } from 'zod';
import { type TableCalculation } from '../../../../types/field';
declare const tableCalcSchema: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
    name: z.ZodString;
    displayName: z.ZodString;
} & {
    type: z.ZodLiteral<"percent_change_from_previous">;
    fieldId: z.ZodString;
    orderBy: 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">>;
}, "strip", z.ZodTypeAny, {
    name: string;
    fieldId: string;
    type: "percent_change_from_previous";
    displayName: string;
    orderBy: {
        fieldId: string;
        order: "asc" | "desc" | null;
    }[];
    partitionBy: string[] | null;
}, {
    name: string;
    fieldId: string;
    type: "percent_change_from_previous";
    displayName: string;
    orderBy: {
        fieldId: string;
        order: "asc" | "desc" | null;
    }[];
    partitionBy: string[] | null;
}>, z.ZodObject<{
    name: z.ZodString;
    displayName: z.ZodString;
} & {
    type: z.ZodLiteral<"percent_of_previous_value">;
    fieldId: z.ZodString;
    orderBy: 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">>;
}, "strip", z.ZodTypeAny, {
    name: string;
    fieldId: string;
    type: "percent_of_previous_value";
    displayName: string;
    orderBy: {
        fieldId: string;
        order: "asc" | "desc" | null;
    }[];
    partitionBy: string[] | null;
}, {
    name: string;
    fieldId: string;
    type: "percent_of_previous_value";
    displayName: string;
    orderBy: {
        fieldId: string;
        order: "asc" | "desc" | null;
    }[];
    partitionBy: string[] | null;
}>, z.ZodObject<{
    name: z.ZodString;
    displayName: z.ZodString;
} & {
    type: z.ZodLiteral<"percent_of_column_total">;
    fieldId: z.ZodString;
    partitionBy: z.ZodNullable<z.ZodArray<z.ZodString, "many">>;
}, "strip", z.ZodTypeAny, {
    name: string;
    fieldId: string;
    type: "percent_of_column_total";
    displayName: string;
    partitionBy: string[] | null;
}, {
    name: string;
    fieldId: string;
    type: "percent_of_column_total";
    displayName: string;
    partitionBy: string[] | null;
}>, z.ZodObject<{
    name: z.ZodString;
    displayName: z.ZodString;
} & {
    type: z.ZodLiteral<"rank_in_column">;
    fieldId: z.ZodString;
}, "strip", z.ZodTypeAny, {
    name: string;
    fieldId: string;
    type: "rank_in_column";
    displayName: string;
}, {
    name: string;
    fieldId: string;
    type: "rank_in_column";
    displayName: string;
}>, z.ZodObject<{
    name: z.ZodString;
    displayName: z.ZodString;
} & {
    type: z.ZodLiteral<"running_total">;
    fieldId: z.ZodString;
}, "strip", z.ZodTypeAny, {
    name: string;
    fieldId: string;
    type: "running_total";
    displayName: string;
}, {
    name: string;
    fieldId: string;
    type: "running_total";
    displayName: string;
}>, z.ZodObject<{
    name: z.ZodString;
    displayName: z.ZodString;
} & {
    type: z.ZodLiteral<"window_function">;
    windowFunction: z.ZodEnum<[import("../../../../types/field").WindowFunctionType.ROW_NUMBER, import("../../../../types/field").WindowFunctionType.PERCENT_RANK, import("../../../../types/field").WindowFunctionType.CUME_DIST, import("../../../../types/field").WindowFunctionType.RANK, import("../../../../types/field").WindowFunctionType.SUM, import("../../../../types/field").WindowFunctionType.AVG, import("../../../../types/field").WindowFunctionType.COUNT, import("../../../../types/field").WindowFunctionType.MIN, import("../../../../types/field").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, {
        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";
        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;
        };
    }>>;
}, "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: import("../../../../types/field").WindowFunctionType;
    frame: {
        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;
        };
    } | null;
}, {
    name: string;
    fieldId: string | null;
    type: "window_function";
    displayName: string;
    orderBy: {
        fieldId: string;
        order: "asc" | "desc" | null;
    }[] | null;
    partitionBy: string[] | null;
    windowFunction: import("../../../../types/field").WindowFunctionType;
    frame: {
        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;
        };
    } | null;
}>]>;
export type TableCalcSchema = z.infer<typeof tableCalcSchema>;
export declare const tableCalcsSchema: z.ZodNullable<z.ZodArray<z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
    name: z.ZodString;
    displayName: z.ZodString;
} & {
    type: z.ZodLiteral<"percent_change_from_previous">;
    fieldId: z.ZodString;
    orderBy: 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">>;
}, "strip", z.ZodTypeAny, {
    name: string;
    fieldId: string;
    type: "percent_change_from_previous";
    displayName: string;
    orderBy: {
        fieldId: string;
        order: "asc" | "desc" | null;
    }[];
    partitionBy: string[] | null;
}, {
    name: string;
    fieldId: string;
    type: "percent_change_from_previous";
    displayName: string;
    orderBy: {
        fieldId: string;
        order: "asc" | "desc" | null;
    }[];
    partitionBy: string[] | null;
}>, z.ZodObject<{
    name: z.ZodString;
    displayName: z.ZodString;
} & {
    type: z.ZodLiteral<"percent_of_previous_value">;
    fieldId: z.ZodString;
    orderBy: 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">>;
}, "strip", z.ZodTypeAny, {
    name: string;
    fieldId: string;
    type: "percent_of_previous_value";
    displayName: string;
    orderBy: {
        fieldId: string;
        order: "asc" | "desc" | null;
    }[];
    partitionBy: string[] | null;
}, {
    name: string;
    fieldId: string;
    type: "percent_of_previous_value";
    displayName: string;
    orderBy: {
        fieldId: string;
        order: "asc" | "desc" | null;
    }[];
    partitionBy: string[] | null;
}>, z.ZodObject<{
    name: z.ZodString;
    displayName: z.ZodString;
} & {
    type: z.ZodLiteral<"percent_of_column_total">;
    fieldId: z.ZodString;
    partitionBy: z.ZodNullable<z.ZodArray<z.ZodString, "many">>;
}, "strip", z.ZodTypeAny, {
    name: string;
    fieldId: string;
    type: "percent_of_column_total";
    displayName: string;
    partitionBy: string[] | null;
}, {
    name: string;
    fieldId: string;
    type: "percent_of_column_total";
    displayName: string;
    partitionBy: string[] | null;
}>, z.ZodObject<{
    name: z.ZodString;
    displayName: z.ZodString;
} & {
    type: z.ZodLiteral<"rank_in_column">;
    fieldId: z.ZodString;
}, "strip", z.ZodTypeAny, {
    name: string;
    fieldId: string;
    type: "rank_in_column";
    displayName: string;
}, {
    name: string;
    fieldId: string;
    type: "rank_in_column";
    displayName: string;
}>, z.ZodObject<{
    name: z.ZodString;
    displayName: z.ZodString;
} & {
    type: z.ZodLiteral<"running_total">;
    fieldId: z.ZodString;
}, "strip", z.ZodTypeAny, {
    name: string;
    fieldId: string;
    type: "running_total";
    displayName: string;
}, {
    name: string;
    fieldId: string;
    type: "running_total";
    displayName: string;
}>, z.ZodObject<{
    name: z.ZodString;
    displayName: z.ZodString;
} & {
    type: z.ZodLiteral<"window_function">;
    windowFunction: z.ZodEnum<[import("../../../../types/field").WindowFunctionType.ROW_NUMBER, import("../../../../types/field").WindowFunctionType.PERCENT_RANK, import("../../../../types/field").WindowFunctionType.CUME_DIST, import("../../../../types/field").WindowFunctionType.RANK, import("../../../../types/field").WindowFunctionType.SUM, import("../../../../types/field").WindowFunctionType.AVG, import("../../../../types/field").WindowFunctionType.COUNT, import("../../../../types/field").WindowFunctionType.MIN, import("../../../../types/field").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, {
        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";
        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;
        };
    }>>;
}, "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: import("../../../../types/field").WindowFunctionType;
    frame: {
        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;
        };
    } | null;
}, {
    name: string;
    fieldId: string | null;
    type: "window_function";
    displayName: string;
    orderBy: {
        fieldId: string;
        order: "asc" | "desc" | null;
    }[] | null;
    partitionBy: string[] | null;
    windowFunction: import("../../../../types/field").WindowFunctionType;
    frame: {
        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;
        };
    } | null;
}>]>, "many">>;
export type TableCalcsSchema = z.infer<typeof tableCalcsSchema>;
export declare function convertAiTableCalcsSchemaToTableCalcs(tableCalcs: TableCalcsSchema): TableCalculation[];
export {};
//# sourceMappingURL=tableCalcs.d.ts.map