import { z } from 'zod';
import { CollectionField } from '@plitzi/sdk-shared';
export declare const collectionFieldSchema: z.ZodObject<{
    id: z.ZodString;
    type: z.ZodEnum<{
        number: "number";
        link: "link";
        text: "text";
        color: "color";
        email: "email";
        date: "date";
        file: "file";
        image: "image";
        option: "option";
        switch: "switch";
        video: "video";
        richText: "richText";
        multiImage: "multiImage";
        phone: "phone";
    }>;
    name: z.ZodString;
    machineName: z.ZodString;
    params: z.ZodObject<{
        required: z.ZodBoolean;
        primary: z.ZodBoolean;
    }, z.core.$strip>;
}, z.core.$strip>;
export type CollectionFieldFormProps = {
    isNewField?: boolean;
    name?: string;
    machineName?: string;
    type?: CollectionField['type'];
    params?: CollectionField['params'];
    onSubmit?: (values: z.infer<typeof collectionFieldSchema>) => void;
    onValidate?: (values: z.infer<typeof collectionFieldSchema>) => {
        key: 'name' | 'machineName' | 'type' | 'params.required' | 'params.primary';
        message: string;
    } | null | undefined;
};
declare const CollectionFieldForm: ({ name, type, machineName, params, onSubmit, onValidate }: CollectionFieldFormProps) => import("react/jsx-runtime").JSX.Element;
export default CollectionFieldForm;
