import { Transformation } from '@imagekit/javascript';
import { z } from 'zod/v3';
export declare const DEFAULT_FOCUS_OBJECTS: readonly ["person", "bicycle", "car", "motorcycle", "airplane", "bus", "train", "truck", "boat", "trafficLight", "fireHydrant", "stopSign", "parkingMeter", "bench", "bird", "cat", "dog", "horse", "sheep", "cow", "elephant", "bear", "zebra", "giraffe", "backpack", "umbrella", "handbag", "tie", "suitcase", "frisbee", "skis", "snowboard", "sportsBall", "kite", "baseballBat", "baseballGlove", "skateboard", "surfboard", "tennisRacket", "bottle", "wineGlass", "cup", "fork", "knife", "spoon", "bowl", "banana", "apple", "sandwich", "orange", "broccoli", "carrot", "hotDog", "pizza", "donut", "cake", "chair", "couch", "pottedPlant", "bed", "diningTable", "toilet", "tv", "laptop", "mouse", "remote", "keyboard", "cellPhone", "microwave", "oven", "toaster", "sink", "refrigerator", "book", "clock", "vase", "scissors", "teddyBear", "hairDrier", "toothbrush"];
export interface TransformationItem {
    key: string;
    name: string;
    defaultTransformation: Transformation;
    description?: string;
    docsLink?: string;
    schema: z.ZodTypeAny;
    transformations: TransformationField[];
    warning?: {
        heading?: string;
        message?: string;
    };
}
export interface TransformationField {
    label: string;
    name: string;
    fieldType?: "input" | "select" | string;
    fieldProps?: Record<string, unknown> & {
        defaultValue?: string | number | unknown;
        options?: {
            label: string;
            icon?: React.ReactNode;
            value: string;
        }[];
        autoOption?: boolean;
        isCreatable?: boolean;
        min?: number;
        max?: number;
        step?: number;
    };
    helpText?: string;
    examples?: string[];
    isTransformation: boolean;
    transformationKey?: string;
    isVisible?: (value: Record<string, unknown>) => boolean;
    transformationGroup?: string;
}
export interface TransformationSchema {
    key: string;
    name: string;
    items: TransformationItem[];
}
export declare const transformationSchema: TransformationSchema[];
export declare const transformationFormatters: Record<string, (groupValues: Record<string, unknown>, transforms: Record<string, unknown>) => void>;
