import type { InputBookingField_2024_06_14, LocationDefaultFieldOutput_2024_06_14, PhoneDefaultFieldOutput_2024_06_14 } from '../../../../platform/types/index.ts';
type InputBookingField = InputBookingField_2024_06_14 | LocationDefaultFieldOutput_2024_06_14 | PhoneDefaultFieldOutput_2024_06_14;
export declare function transformBookingFieldsApiToInternal(bookingFields: InputBookingField[]): ({
    label: string;
    type: "number" | "boolean" | "text" | "address" | "select" | "textarea" | "phone" | "multiselect" | "multiemail" | "checkbox" | "radio" | "radioInput";
    name: string;
    required: boolean;
    editable: "user" | "user-readonly";
    sources: {
        label: "User";
        type: "user";
        id: "user";
        fieldRequired: true;
    }[];
    labelAsSafeHtml?: string | undefined;
    hidden?: boolean | undefined;
    placeholder?: string | undefined;
    options?: {
        label: string;
        value: string;
    }[] | undefined;
    disableOnPrefill?: boolean | undefined;
} | {
    type: "name";
    name: "name";
    required: boolean;
    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;
    variant?: "fullName" | "firstAndLastName" | undefined;
    variantsConfig?: {
        variants: {
            fullName: {
                fields: {
                    type: "text";
                    name: "fullName";
                    required: boolean;
                    label?: string | undefined;
                    placeholder?: string | undefined;
                }[];
            };
            firstAndLastName?: {
                fields: {
                    type: "text";
                    name: "firstName" | "lastName";
                    required: boolean;
                    label?: string | undefined;
                    placeholder?: string | undefined;
                }[];
            } | undefined;
        };
    } | undefined;
} | {
    type: "email";
    name: "email";
    required: boolean;
    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;
} | {
    type: "phone";
    name: "attendeePhoneNumber";
    required: boolean;
    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;
} | {
    type: "textarea";
    name: "rescheduleReason";
    required: boolean;
    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;
} | {
    type: "radioInput";
    name: "location";
    required: boolean;
    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;
} | {
    type: "text";
    name: "title";
    required: boolean;
    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;
} | {
    type: "textarea";
    name: "notes";
    required: boolean;
    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;
} | {
    type: "multiemail";
    name: "guests";
    required: boolean;
    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;
} | {
    options: {
        label: string;
        value: string;
    }[];
    type: "name";
    name: "name";
    required: boolean;
    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;
    variant?: "fullName" | "firstAndLastName" | undefined;
    variantsConfig?: {
        variants: {
            fullName: {
                fields: {
                    type: "text";
                    name: "fullName";
                    required: boolean;
                    label?: string | undefined;
                    placeholder?: string | undefined;
                }[];
            };
            firstAndLastName?: {
                fields: {
                    type: "text";
                    name: "firstName" | "lastName";
                    required: boolean;
                    label?: string | undefined;
                    placeholder?: string | undefined;
                }[];
            } | undefined;
        };
    } | undefined;
} | {
    options: {
        label: string;
        value: string;
    }[];
    type: "email";
    name: "email";
    required: boolean;
    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;
} | {
    options: {
        label: string;
        value: string;
    }[];
    type: "phone";
    name: "attendeePhoneNumber";
    required: boolean;
    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;
} | {
    options: {
        label: string;
        value: string;
    }[];
    type: "textarea";
    name: "rescheduleReason";
    required: boolean;
    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;
} | {
    options: {
        label: string;
        value: string;
    }[];
    type: "radioInput";
    name: "location";
    required: boolean;
    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;
} | {
    options: {
        label: string;
        value: string;
    }[];
    type: "text";
    name: "title";
    required: boolean;
    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;
} | {
    options: {
        label: string;
        value: string;
    }[];
    type: "textarea";
    name: "notes";
    required: boolean;
    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;
} | {
    options: {
        label: string;
        value: string;
    }[];
    type: "multiemail";
    name: "guests";
    required: boolean;
    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;
})[];
export declare function transformSelectOptionsApiToInternal(options: string[]): {
    label: string;
    value: string;
}[];
export {};
//# sourceMappingURL=booking-fields.d.ts.map