import { default as z } from 'zod';
import { ALL_VIEWS } from '../../form-builder/schema';
import { eventTypeBookingFields } from '../../../prisma/zod-utils';
type View = ALL_VIEWS | (string & {});
type BookingFields = (z.infer<typeof eventTypeBookingFields> & z.BRAND<"HAS_SYSTEM_FIELDS">) | null;
type TranslationFunction = (key: string, options?: Record<string, unknown>) => string;
type CommonParams = {
    bookingFields: BookingFields;
    view: View;
    translateFn?: TranslationFunction;
};
export declare const bookingResponse: z.ZodUnion<[z.ZodString, z.ZodBoolean, z.ZodArray<z.ZodString, "many">, z.ZodObject<{
    optionValue: z.ZodString;
    value: z.ZodString;
}, "strip", z.ZodTypeAny, {
    value: string;
    optionValue: string;
}, {
    value: string;
    optionValue: string;
}>, z.ZodRecord<z.ZodString, z.ZodString>]>;
export declare const bookingResponsesDbSchema: z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodBoolean, z.ZodArray<z.ZodString, "many">, z.ZodObject<{
    optionValue: z.ZodString;
    value: z.ZodString;
}, "strip", z.ZodTypeAny, {
    value: string;
    optionValue: string;
}, {
    value: string;
    optionValue: string;
}>, z.ZodRecord<z.ZodString, z.ZodString>]>>;
export declare const getBookingResponsesPartialSchema: ({ bookingFields, view, translateFn, }: CommonParams) => z.ZodType<{
    notes?: string | undefined;
    guests?: string[] | undefined;
    email?: string | undefined;
    location?: {
        value: string;
        optionValue: string;
    } | undefined;
    name?: string | {
        firstName: string;
        lastName?: string | undefined;
    } | undefined;
    smsReminderNumber?: string | undefined;
    attendeePhoneNumber?: string | undefined;
    rescheduleReason?: string | undefined;
} & Record<string, string | boolean | string[] | Record<string, string> | {
    value: string;
    optionValue: string;
}>, {
    notes?: string | undefined;
    guests?: string[] | undefined;
    email?: string | undefined;
    location?: {
        value: string;
        optionValue: string;
    } | undefined;
    name?: string | {
        firstName: string;
        lastName?: string | undefined;
    } | undefined;
    smsReminderNumber?: string | undefined;
    attendeePhoneNumber?: string | undefined;
    rescheduleReason?: string | undefined;
} & Record<string, string | boolean | string[] | Record<string, string> | {
    value: string;
    optionValue: string;
}>, {
    notes?: string | undefined;
    guests?: string[] | undefined;
    email?: string | undefined;
    location?: {
        value: string;
        optionValue: string;
    } | undefined;
    name?: string | {
        firstName: string;
        lastName?: string | undefined;
    } | undefined;
    smsReminderNumber?: string | undefined;
    attendeePhoneNumber?: string | undefined;
    rescheduleReason?: string | undefined;
} & Record<string, string | boolean | string[] | Record<string, string> | {
    value: string;
    optionValue: string;
}>>;
export default function getBookingResponsesSchema({ bookingFields, view, translateFn, }: CommonParams): z.ZodType<{
    email: string;
    name: string | {
        firstName: string;
        lastName?: string | undefined;
    };
    notes?: string | undefined;
    guests?: string[] | undefined;
    location?: {
        value: string;
        optionValue: string;
    } | undefined;
    smsReminderNumber?: string | undefined;
    attendeePhoneNumber?: string | undefined;
    rescheduleReason?: string | undefined;
} & Record<string, any>, {
    email: string;
    name: string | {
        firstName: string;
        lastName?: string | undefined;
    };
    notes?: string | undefined;
    guests?: string[] | undefined;
    location?: {
        value: string;
        optionValue: string;
    } | undefined;
    smsReminderNumber?: string | undefined;
    attendeePhoneNumber?: string | undefined;
    rescheduleReason?: string | undefined;
} & Record<string, any>, {
    email: string;
    name: string | {
        firstName: string;
        lastName?: string | undefined;
    };
    notes?: string | undefined;
    guests?: string[] | undefined;
    location?: {
        value: string;
        optionValue: string;
    } | undefined;
    smsReminderNumber?: string | undefined;
    attendeePhoneNumber?: string | undefined;
    rescheduleReason?: string | undefined;
} & Record<string, any>>;
export declare function getBookingResponsesSchemaWithOptionalChecks({ bookingFields, view, translateFn, }: CommonParams): z.ZodType<{
    email: string;
    name: string | {
        firstName: string;
        lastName?: string | undefined;
    };
    notes?: string | undefined;
    guests?: string[] | undefined;
    location?: {
        value: string;
        optionValue: string;
    } | undefined;
    smsReminderNumber?: string | undefined;
    attendeePhoneNumber?: string | undefined;
    rescheduleReason?: string | undefined;
} & Record<string, any>, {
    email: string;
    name: string | {
        firstName: string;
        lastName?: string | undefined;
    };
    notes?: string | undefined;
    guests?: string[] | undefined;
    location?: {
        value: string;
        optionValue: string;
    } | undefined;
    smsReminderNumber?: string | undefined;
    attendeePhoneNumber?: string | undefined;
    rescheduleReason?: string | undefined;
} & Record<string, any>, {
    email: string;
    name: string | {
        firstName: string;
        lastName?: string | undefined;
    };
    notes?: string | undefined;
    guests?: string[] | undefined;
    location?: {
        value: string;
        optionValue: string;
    } | undefined;
    smsReminderNumber?: string | undefined;
    attendeePhoneNumber?: string | undefined;
    rescheduleReason?: string | undefined;
} & Record<string, any>>;
export {};
//# sourceMappingURL=getBookingResponsesSchema.d.ts.map