import type { InputBookingField_2024_06_14, OutputBookingField_2024_06_14 } from '../../../../platform/types/index.ts';
import { type CustomField, type SystemField } from "../internal-to-api";
export declare function transformBookingFieldsApiRequestToInternal(inputBookingFields: InputBookingField_2024_06_14[]): (SystemField | CustomField)[];
export declare function transformSelectOptionsApiToInternal(options: string[]): {
    label: string;
    value: string;
}[];
export declare function transformBookingFieldsApiResponseToInternal(bookingFields: OutputBookingField_2024_06_14[]): ({
    disableOnPrefill: boolean;
    type: "name";
    name: "name";
    required: true;
    defaultLabel: string;
    editable: "system" | "system-but-optional" | "user-readonly";
    sources: {
        label: "Default";
        type: "default";
        id: "default";
    }[];
    label?: string | undefined;
    hidden?: boolean | undefined;
    placeholder?: string | undefined;
    defaultPlaceholder?: "" | "email" | "share_additional_notes" | "reschedule_placeholder" | undefined;
    getOptionsAt?: "locations" | undefined;
    optionsInputs?: {
        phone: {
            type: "phone";
            required: boolean;
            placeholder: string;
        };
        attendeeInPerson: {
            type: "address";
            required: boolean;
            placeholder: string;
        };
        somewhereElse?: {
            type: "text";
            required: boolean;
            placeholder: string;
        } | undefined;
    } | undefined;
    views?: {
        label: string;
        id: "reschedule";
    }[] | undefined;
    hideWhenJustOneOption?: boolean | undefined;
    variant?: "fullName" | undefined;
    variantsConfig?: {
        variants: {
            fullName: {
                fields: {
                    type: "text";
                    name: "fullName";
                    required: true;
                    label?: string | undefined;
                    placeholder?: string | undefined;
                }[];
            };
        };
    } | undefined;
    labelAsSafeHtml?: undefined;
} | {
    label: string | undefined;
    placeholder: string | undefined;
    disableOnPrefill: boolean;
    type: "email";
    name: "email";
    required: boolean;
    defaultLabel: string;
    editable: "system" | "system-but-optional" | "user-readonly";
    sources: {
        label: "Default";
        type: "default";
        id: "default";
    }[];
    hidden?: boolean | undefined;
    defaultPlaceholder?: "" | "email" | "share_additional_notes" | "reschedule_placeholder" | undefined;
    getOptionsAt?: "locations" | undefined;
    optionsInputs?: {
        phone: {
            type: "phone";
            required: boolean;
            placeholder: string;
        };
        attendeeInPerson: {
            type: "address";
            required: boolean;
            placeholder: string;
        };
        somewhereElse?: {
            type: "text";
            required: boolean;
            placeholder: string;
        } | undefined;
    } | undefined;
    views?: {
        label: string;
        id: "reschedule";
    }[] | undefined;
    hideWhenJustOneOption?: boolean | undefined;
    labelAsSafeHtml?: undefined;
} | {
    required: boolean;
    hidden: boolean;
    type: "radioInput";
    name: "location";
    defaultLabel: string;
    editable: "system" | "system-but-optional" | "user-readonly";
    sources: {
        label: "Default";
        type: "default";
        id: "default";
    }[];
    label?: string | undefined;
    placeholder?: string | undefined;
    defaultPlaceholder?: "" | "email" | "share_additional_notes" | "reschedule_placeholder" | undefined;
    getOptionsAt?: "locations" | undefined;
    optionsInputs?: {
        phone: {
            type: "phone";
            required: boolean;
            placeholder: string;
        };
        attendeeInPerson: {
            type: "address";
            required: boolean;
            placeholder: string;
        };
        somewhereElse?: {
            type: "text";
            required: boolean;
            placeholder: string;
        } | undefined;
    } | undefined;
    views?: {
        label: string;
        id: "reschedule";
    }[] | undefined;
    hideWhenJustOneOption?: boolean | undefined;
    disableOnPrefill?: boolean | undefined;
    labelAsSafeHtml?: undefined;
} | {
    required: boolean;
    type: "phone";
    name: "attendeePhoneNumber";
    defaultLabel: string;
    editable: "system" | "system-but-optional" | "user-readonly";
    sources: {
        label: "Default";
        type: "default";
        id: "default";
    }[];
    label?: string | undefined;
    hidden?: boolean | undefined;
    placeholder?: string | undefined;
    defaultPlaceholder?: "" | "email" | "share_additional_notes" | "reschedule_placeholder" | undefined;
    getOptionsAt?: "locations" | undefined;
    optionsInputs?: {
        phone: {
            type: "phone";
            required: boolean;
            placeholder: string;
        };
        attendeeInPerson: {
            type: "address";
            required: boolean;
            placeholder: string;
        };
        somewhereElse?: {
            type: "text";
            required: boolean;
            placeholder: string;
        } | undefined;
    } | undefined;
    views?: {
        label: string;
        id: "reschedule";
    }[] | undefined;
    hideWhenJustOneOption?: boolean | undefined;
    disableOnPrefill?: boolean | undefined;
    labelAsSafeHtml?: undefined;
} | {
    required: boolean;
    hidden: boolean;
    label: string | undefined;
    placeholder: string | undefined;
    disableOnPrefill: boolean;
    type: "textarea";
    name: "rescheduleReason";
    defaultLabel: string;
    editable: "system" | "system-but-optional" | "user-readonly";
    sources: {
        label: "Default";
        type: "default";
        id: "default";
    }[];
    defaultPlaceholder?: "" | "email" | "share_additional_notes" | "reschedule_placeholder" | undefined;
    getOptionsAt?: "locations" | undefined;
    optionsInputs?: {
        phone: {
            type: "phone";
            required: boolean;
            placeholder: string;
        };
        attendeeInPerson: {
            type: "address";
            required: boolean;
            placeholder: string;
        };
        somewhereElse?: {
            type: "text";
            required: boolean;
            placeholder: string;
        } | undefined;
    } | undefined;
    views?: {
        label: string;
        id: "reschedule";
    }[] | undefined;
    hideWhenJustOneOption?: boolean | undefined;
    labelAsSafeHtml?: undefined;
} | {
    required: boolean;
    hidden: boolean;
    label: string | undefined;
    placeholder: string | undefined;
    disableOnPrefill: boolean;
    type: "text";
    name: "title";
    defaultLabel: string;
    editable: "system" | "system-but-optional" | "user-readonly";
    sources: {
        label: "Default";
        type: "default";
        id: "default";
    }[];
    defaultPlaceholder?: "" | "email" | "share_additional_notes" | "reschedule_placeholder" | undefined;
    getOptionsAt?: "locations" | undefined;
    optionsInputs?: {
        phone: {
            type: "phone";
            required: boolean;
            placeholder: string;
        };
        attendeeInPerson: {
            type: "address";
            required: boolean;
            placeholder: string;
        };
        somewhereElse?: {
            type: "text";
            required: boolean;
            placeholder: string;
        } | undefined;
    } | undefined;
    views?: {
        label: string;
        id: "reschedule";
    }[] | undefined;
    hideWhenJustOneOption?: boolean | undefined;
    labelAsSafeHtml?: undefined;
} | {
    required: boolean;
    hidden: boolean;
    label: string | undefined;
    placeholder: string | undefined;
    disableOnPrefill: boolean;
    type: "textarea";
    name: "notes";
    defaultLabel: string;
    editable: "system" | "system-but-optional" | "user-readonly";
    sources: {
        label: "Default";
        type: "default";
        id: "default";
    }[];
    defaultPlaceholder?: "" | "email" | "share_additional_notes" | "reschedule_placeholder" | undefined;
    getOptionsAt?: "locations" | undefined;
    optionsInputs?: {
        phone: {
            type: "phone";
            required: boolean;
            placeholder: string;
        };
        attendeeInPerson: {
            type: "address";
            required: boolean;
            placeholder: string;
        };
        somewhereElse?: {
            type: "text";
            required: boolean;
            placeholder: string;
        } | undefined;
    } | undefined;
    views?: {
        label: string;
        id: "reschedule";
    }[] | undefined;
    hideWhenJustOneOption?: boolean | undefined;
    labelAsSafeHtml?: undefined;
} | {
    required: boolean;
    hidden: boolean;
    label: string | undefined;
    placeholder: string | undefined;
    disableOnPrefill: boolean;
    type: "multiemail";
    name: "guests";
    defaultLabel: string;
    editable: "system" | "system-but-optional" | "user-readonly";
    sources: {
        label: "Default";
        type: "default";
        id: "default";
    }[];
    defaultPlaceholder?: "" | "email" | "share_additional_notes" | "reschedule_placeholder" | undefined;
    getOptionsAt?: "locations" | undefined;
    optionsInputs?: {
        phone: {
            type: "phone";
            required: boolean;
            placeholder: string;
        };
        attendeeInPerson: {
            type: "address";
            required: boolean;
            placeholder: string;
        };
        somewhereElse?: {
            type: "text";
            required: boolean;
            placeholder: string;
        } | undefined;
    } | undefined;
    views?: {
        label: string;
        id: "reschedule";
    }[] | undefined;
    hideWhenJustOneOption?: boolean | undefined;
    labelAsSafeHtml?: undefined;
} | {
    name: string;
    type: "boolean";
    label: string;
    labelAsSafeHtml: string;
    sources: {
        id: string;
        type: string;
        label: string;
        fieldRequired: boolean;
    }[];
    editable: string;
    required: boolean;
    disableOnPrefill: boolean;
    hidden: boolean;
    placeholder?: undefined;
} | {
    name: string;
    type: "number" | "text" | "address" | "select" | "textarea" | "unknown" | "phone" | "multiselect" | "multiemail" | "checkbox" | "radio" | "radioInput";
    label: string | undefined;
    sources: {
        id: string;
        type: string;
        label: string;
        fieldRequired: boolean;
    }[];
    editable: string;
    required: boolean;
    placeholder: string;
    disableOnPrefill: boolean;
    hidden: boolean | undefined;
    labelAsSafeHtml?: undefined;
} | {
    options: {
        label: string;
        value: string;
    }[];
    disableOnPrefill: boolean;
    type: "name";
    name: "name";
    required: true;
    defaultLabel: string;
    editable: "system" | "system-but-optional" | "user-readonly";
    sources: {
        label: "Default";
        type: "default";
        id: "default";
    }[];
    label?: string | undefined;
    hidden?: boolean | undefined;
    placeholder?: string | undefined;
    defaultPlaceholder?: "" | "email" | "share_additional_notes" | "reschedule_placeholder" | undefined;
    getOptionsAt?: "locations" | undefined;
    optionsInputs?: {
        phone: {
            type: "phone";
            required: boolean;
            placeholder: string;
        };
        attendeeInPerson: {
            type: "address";
            required: boolean;
            placeholder: string;
        };
        somewhereElse?: {
            type: "text";
            required: boolean;
            placeholder: string;
        } | undefined;
    } | undefined;
    views?: {
        label: string;
        id: "reschedule";
    }[] | undefined;
    hideWhenJustOneOption?: boolean | undefined;
    variant?: "fullName" | undefined;
    variantsConfig?: {
        variants: {
            fullName: {
                fields: {
                    type: "text";
                    name: "fullName";
                    required: true;
                    label?: string | undefined;
                    placeholder?: string | undefined;
                }[];
            };
        };
    } | undefined;
    labelAsSafeHtml?: undefined;
} | {
    options: {
        label: string;
        value: string;
    }[];
    label: string | undefined;
    placeholder: string | undefined;
    disableOnPrefill: boolean;
    type: "email";
    name: "email";
    required: boolean;
    defaultLabel: string;
    editable: "system" | "system-but-optional" | "user-readonly";
    sources: {
        label: "Default";
        type: "default";
        id: "default";
    }[];
    hidden?: boolean | undefined;
    defaultPlaceholder?: "" | "email" | "share_additional_notes" | "reschedule_placeholder" | undefined;
    getOptionsAt?: "locations" | undefined;
    optionsInputs?: {
        phone: {
            type: "phone";
            required: boolean;
            placeholder: string;
        };
        attendeeInPerson: {
            type: "address";
            required: boolean;
            placeholder: string;
        };
        somewhereElse?: {
            type: "text";
            required: boolean;
            placeholder: string;
        } | undefined;
    } | undefined;
    views?: {
        label: string;
        id: "reschedule";
    }[] | undefined;
    hideWhenJustOneOption?: boolean | undefined;
    labelAsSafeHtml?: undefined;
} | {
    options: {
        label: string;
        value: string;
    }[];
    required: boolean;
    hidden: boolean;
    type: "radioInput";
    name: "location";
    defaultLabel: string;
    editable: "system" | "system-but-optional" | "user-readonly";
    sources: {
        label: "Default";
        type: "default";
        id: "default";
    }[];
    label?: string | undefined;
    placeholder?: string | undefined;
    defaultPlaceholder?: "" | "email" | "share_additional_notes" | "reschedule_placeholder" | undefined;
    getOptionsAt?: "locations" | undefined;
    optionsInputs?: {
        phone: {
            type: "phone";
            required: boolean;
            placeholder: string;
        };
        attendeeInPerson: {
            type: "address";
            required: boolean;
            placeholder: string;
        };
        somewhereElse?: {
            type: "text";
            required: boolean;
            placeholder: string;
        } | undefined;
    } | undefined;
    views?: {
        label: string;
        id: "reschedule";
    }[] | undefined;
    hideWhenJustOneOption?: boolean | undefined;
    disableOnPrefill?: boolean | undefined;
    labelAsSafeHtml?: undefined;
} | {
    options: {
        label: string;
        value: string;
    }[];
    required: boolean;
    type: "phone";
    name: "attendeePhoneNumber";
    defaultLabel: string;
    editable: "system" | "system-but-optional" | "user-readonly";
    sources: {
        label: "Default";
        type: "default";
        id: "default";
    }[];
    label?: string | undefined;
    hidden?: boolean | undefined;
    placeholder?: string | undefined;
    defaultPlaceholder?: "" | "email" | "share_additional_notes" | "reschedule_placeholder" | undefined;
    getOptionsAt?: "locations" | undefined;
    optionsInputs?: {
        phone: {
            type: "phone";
            required: boolean;
            placeholder: string;
        };
        attendeeInPerson: {
            type: "address";
            required: boolean;
            placeholder: string;
        };
        somewhereElse?: {
            type: "text";
            required: boolean;
            placeholder: string;
        } | undefined;
    } | undefined;
    views?: {
        label: string;
        id: "reschedule";
    }[] | undefined;
    hideWhenJustOneOption?: boolean | undefined;
    disableOnPrefill?: boolean | undefined;
    labelAsSafeHtml?: undefined;
} | {
    options: {
        label: string;
        value: string;
    }[];
    required: boolean;
    hidden: boolean;
    label: string | undefined;
    placeholder: string | undefined;
    disableOnPrefill: boolean;
    type: "textarea";
    name: "rescheduleReason";
    defaultLabel: string;
    editable: "system" | "system-but-optional" | "user-readonly";
    sources: {
        label: "Default";
        type: "default";
        id: "default";
    }[];
    defaultPlaceholder?: "" | "email" | "share_additional_notes" | "reschedule_placeholder" | undefined;
    getOptionsAt?: "locations" | undefined;
    optionsInputs?: {
        phone: {
            type: "phone";
            required: boolean;
            placeholder: string;
        };
        attendeeInPerson: {
            type: "address";
            required: boolean;
            placeholder: string;
        };
        somewhereElse?: {
            type: "text";
            required: boolean;
            placeholder: string;
        } | undefined;
    } | undefined;
    views?: {
        label: string;
        id: "reschedule";
    }[] | undefined;
    hideWhenJustOneOption?: boolean | undefined;
    labelAsSafeHtml?: undefined;
} | {
    options: {
        label: string;
        value: string;
    }[];
    required: boolean;
    hidden: boolean;
    label: string | undefined;
    placeholder: string | undefined;
    disableOnPrefill: boolean;
    type: "text";
    name: "title";
    defaultLabel: string;
    editable: "system" | "system-but-optional" | "user-readonly";
    sources: {
        label: "Default";
        type: "default";
        id: "default";
    }[];
    defaultPlaceholder?: "" | "email" | "share_additional_notes" | "reschedule_placeholder" | undefined;
    getOptionsAt?: "locations" | undefined;
    optionsInputs?: {
        phone: {
            type: "phone";
            required: boolean;
            placeholder: string;
        };
        attendeeInPerson: {
            type: "address";
            required: boolean;
            placeholder: string;
        };
        somewhereElse?: {
            type: "text";
            required: boolean;
            placeholder: string;
        } | undefined;
    } | undefined;
    views?: {
        label: string;
        id: "reschedule";
    }[] | undefined;
    hideWhenJustOneOption?: boolean | undefined;
    labelAsSafeHtml?: undefined;
} | {
    options: {
        label: string;
        value: string;
    }[];
    required: boolean;
    hidden: boolean;
    label: string | undefined;
    placeholder: string | undefined;
    disableOnPrefill: boolean;
    type: "textarea";
    name: "notes";
    defaultLabel: string;
    editable: "system" | "system-but-optional" | "user-readonly";
    sources: {
        label: "Default";
        type: "default";
        id: "default";
    }[];
    defaultPlaceholder?: "" | "email" | "share_additional_notes" | "reschedule_placeholder" | undefined;
    getOptionsAt?: "locations" | undefined;
    optionsInputs?: {
        phone: {
            type: "phone";
            required: boolean;
            placeholder: string;
        };
        attendeeInPerson: {
            type: "address";
            required: boolean;
            placeholder: string;
        };
        somewhereElse?: {
            type: "text";
            required: boolean;
            placeholder: string;
        } | undefined;
    } | undefined;
    views?: {
        label: string;
        id: "reschedule";
    }[] | undefined;
    hideWhenJustOneOption?: boolean | undefined;
    labelAsSafeHtml?: undefined;
} | {
    options: {
        label: string;
        value: string;
    }[];
    required: boolean;
    hidden: boolean;
    label: string | undefined;
    placeholder: string | undefined;
    disableOnPrefill: boolean;
    type: "multiemail";
    name: "guests";
    defaultLabel: string;
    editable: "system" | "system-but-optional" | "user-readonly";
    sources: {
        label: "Default";
        type: "default";
        id: "default";
    }[];
    defaultPlaceholder?: "" | "email" | "share_additional_notes" | "reschedule_placeholder" | undefined;
    getOptionsAt?: "locations" | undefined;
    optionsInputs?: {
        phone: {
            type: "phone";
            required: boolean;
            placeholder: string;
        };
        attendeeInPerson: {
            type: "address";
            required: boolean;
            placeholder: string;
        };
        somewhereElse?: {
            type: "text";
            required: boolean;
            placeholder: string;
        } | undefined;
    } | undefined;
    views?: {
        label: string;
        id: "reschedule";
    }[] | undefined;
    hideWhenJustOneOption?: boolean | undefined;
    labelAsSafeHtml?: undefined;
} | {
    options: {
        label: string;
        value: string;
    }[];
    name: string;
    type: "boolean";
    label: string;
    labelAsSafeHtml: string;
    sources: {
        id: string;
        type: string;
        label: string;
        fieldRequired: boolean;
    }[];
    editable: string;
    required: boolean;
    disableOnPrefill: boolean;
    hidden: boolean;
    placeholder?: undefined;
} | {
    options: {
        label: string;
        value: string;
    }[];
    name: string;
    type: "number" | "text" | "address" | "select" | "textarea" | "unknown" | "phone" | "multiselect" | "multiemail" | "checkbox" | "radio" | "radioInput";
    label: string | undefined;
    sources: {
        id: string;
        type: string;
        label: string;
        fieldRequired: boolean;
    }[];
    editable: string;
    required: boolean;
    placeholder: string;
    disableOnPrefill: boolean;
    hidden: boolean | undefined;
    labelAsSafeHtml?: undefined;
})[];
//# sourceMappingURL=booking-fields.d.ts.map