import { default as z } from 'zod';
import { TgetBookingDataSchema } from '../getBookingDataSchema';
import { getEventTypeResponse } from './getEventTypesFromDB';
type ReqBodyWithEnd = TgetBookingDataSchema & {
    end: string;
};
declare const _getBookingData: <T extends z.ZodType>({ reqBody, eventType, schema, }: {
    reqBody: Record<string, any>;
    eventType: getEventTypeResponse;
    schema: T;
}) => Promise<{
    name: string;
    email: string;
    guests: string[] | undefined;
    location: string;
    smsReminderNumber: string | null | undefined;
    notes: string | undefined;
    rescheduleReason: string | undefined;
    calEventUserFieldsResponses: undefined;
    calEventResponses: undefined;
    customInputs: undefined;
    attendeePhoneNumber: undefined;
    language: string;
    metadata: Record<string, string>;
    start: string;
    eventTypeId: number;
    timeZone: string;
    responses: {
        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>;
    user?: string | string[] | undefined;
    end: string;
    bookingUid?: string | undefined;
    creationSource?: "API_V1" | "API_V2" | "WEBAPP" | undefined;
    thirdPartyRecurringEventId?: string | null | undefined;
    recurringEventId?: string | undefined;
    rescheduledBy?: string | undefined;
    hashedLink?: string | null | undefined;
    seatReferenceUid?: string | undefined;
    tracking?: {
        utm_source?: string | undefined;
        utm_medium?: string | undefined;
        utm_campaign?: string | undefined;
        utm_term?: string | undefined;
        utm_content?: string | undefined;
    } | undefined;
    orgSlug?: string | undefined;
    recurringCount?: number | undefined;
    appsStatus?: {
        success: number;
        type: string;
        appName: string;
        errors: string[];
        failures: number;
        warnings?: string[] | undefined;
    }[] | undefined;
    skipContactOwner?: boolean | undefined;
    rescheduleUid?: string | undefined;
    routingFormResponseId?: number | undefined;
    eventTypeSlug?: string | undefined;
    routedTeamMemberIds?: number[] | null | undefined;
    teamMemberEmail?: string | null | undefined;
    _isDryRun?: boolean | undefined;
    rrHostSubsetIds?: number[] | null | undefined;
    crmAppSlug?: string | null | undefined;
    crmOwnerRecordType?: string | null | undefined;
    hasHashedBookingLink?: boolean | undefined;
    crmRecordId?: string | null | undefined;
    cfToken?: string | null | undefined;
    reroutingFormResponses?: Record<string, {
        value: string | number | string[];
        label?: string | undefined;
    }> | undefined;
    dub_id?: string | null | undefined;
    verificationCode?: string | undefined;
    isFirstRecurringSlot?: boolean | undefined;
    numSlotsToCheckForAvailability?: number | undefined;
    allRecurringDates?: {
        start: string;
        end?: string | undefined;
    }[] | undefined;
    currentRecurringIndex?: number | undefined;
    noEmail?: boolean | undefined;
    luckyUsers?: number[] | undefined;
} | {
    name: string | {
        firstName: string;
        lastName?: string | undefined;
    };
    email: string;
    attendeePhoneNumber: string | undefined;
    guests: string[];
    location: string;
    smsReminderNumber: string | undefined;
    notes: string;
    calEventUserFieldsResponses: import('@calcom/types/Calendar').CalEventResponses;
    rescheduleReason: string | undefined;
    calEventResponses: import('@calcom/types/Calendar').CalEventResponses;
    customInputs: undefined;
    language: string;
    metadata: Record<string, string>;
    start: string;
    eventTypeId: number;
    timeZone: string;
    responses: {
        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>;
    user?: string | string[] | undefined;
    end: string;
    bookingUid?: string | undefined;
    creationSource?: "API_V1" | "API_V2" | "WEBAPP" | undefined;
    thirdPartyRecurringEventId?: string | null | undefined;
    recurringEventId?: string | undefined;
    rescheduledBy?: string | undefined;
    hashedLink?: string | null | undefined;
    seatReferenceUid?: string | undefined;
    tracking?: {
        utm_source?: string | undefined;
        utm_medium?: string | undefined;
        utm_campaign?: string | undefined;
        utm_term?: string | undefined;
        utm_content?: string | undefined;
    } | undefined;
    orgSlug?: string | undefined;
    recurringCount?: number | undefined;
    appsStatus?: {
        success: number;
        type: string;
        appName: string;
        errors: string[];
        failures: number;
        warnings?: string[] | undefined;
    }[] | undefined;
    skipContactOwner?: boolean | undefined;
    rescheduleUid?: string | undefined;
    routingFormResponseId?: number | undefined;
    eventTypeSlug?: string | undefined;
    routedTeamMemberIds?: number[] | null | undefined;
    teamMemberEmail?: string | null | undefined;
    _isDryRun?: boolean | undefined;
    rrHostSubsetIds?: number[] | null | undefined;
    crmAppSlug?: string | null | undefined;
    crmOwnerRecordType?: string | null | undefined;
    hasHashedBookingLink?: boolean | undefined;
    crmRecordId?: string | null | undefined;
    cfToken?: string | null | undefined;
    reroutingFormResponses?: Record<string, {
        value: string | number | string[];
        label?: string | undefined;
    }> | undefined;
    dub_id?: string | null | undefined;
    verificationCode?: string | undefined;
    isFirstRecurringSlot?: boolean | undefined;
    numSlotsToCheckForAvailability?: number | undefined;
    allRecurringDates?: {
        start: string;
        end?: string | undefined;
    }[] | undefined;
    currentRecurringIndex?: number | undefined;
    noEmail?: boolean | undefined;
    luckyUsers?: number[] | undefined;
}>;
export declare const getBookingData: <T extends z.ZodType>(args_0: {
    reqBody: Record<string, any>;
    eventType: getEventTypeResponse;
    schema: T;
}) => Promise<{
    name: string;
    email: string;
    guests: string[] | undefined;
    location: string;
    smsReminderNumber: string | null | undefined;
    notes: string | undefined;
    rescheduleReason: string | undefined;
    calEventUserFieldsResponses: undefined;
    calEventResponses: undefined;
    customInputs: undefined;
    attendeePhoneNumber: undefined;
    language: string;
    metadata: Record<string, string>;
    start: string;
    eventTypeId: number;
    timeZone: string;
    responses: {
        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>;
    user?: string | string[] | undefined;
    end: string;
    bookingUid?: string | undefined;
    creationSource?: "API_V1" | "API_V2" | "WEBAPP" | undefined;
    thirdPartyRecurringEventId?: string | null | undefined;
    recurringEventId?: string | undefined;
    rescheduledBy?: string | undefined;
    hashedLink?: string | null | undefined;
    seatReferenceUid?: string | undefined;
    tracking?: {
        utm_source?: string | undefined;
        utm_medium?: string | undefined;
        utm_campaign?: string | undefined;
        utm_term?: string | undefined;
        utm_content?: string | undefined;
    } | undefined;
    orgSlug?: string | undefined;
    recurringCount?: number | undefined;
    appsStatus?: {
        success: number;
        type: string;
        appName: string;
        errors: string[];
        failures: number;
        warnings?: string[] | undefined;
    }[] | undefined;
    skipContactOwner?: boolean | undefined;
    rescheduleUid?: string | undefined;
    routingFormResponseId?: number | undefined;
    eventTypeSlug?: string | undefined;
    routedTeamMemberIds?: number[] | null | undefined;
    teamMemberEmail?: string | null | undefined;
    _isDryRun?: boolean | undefined;
    rrHostSubsetIds?: number[] | null | undefined;
    crmAppSlug?: string | null | undefined;
    crmOwnerRecordType?: string | null | undefined;
    hasHashedBookingLink?: boolean | undefined;
    crmRecordId?: string | null | undefined;
    cfToken?: string | null | undefined;
    reroutingFormResponses?: Record<string, {
        value: string | number | string[];
        label?: string | undefined;
    }> | undefined;
    dub_id?: string | null | undefined;
    verificationCode?: string | undefined;
    isFirstRecurringSlot?: boolean | undefined;
    numSlotsToCheckForAvailability?: number | undefined;
    allRecurringDates?: {
        start: string;
        end?: string | undefined;
    }[] | undefined;
    currentRecurringIndex?: number | undefined;
    noEmail?: boolean | undefined;
    luckyUsers?: number[] | undefined;
} | {
    name: string | {
        firstName: string;
        lastName?: string | undefined;
    };
    email: string;
    attendeePhoneNumber: string | undefined;
    guests: string[];
    location: string;
    smsReminderNumber: string | undefined;
    notes: string;
    calEventUserFieldsResponses: import('@calcom/types/Calendar').CalEventResponses;
    rescheduleReason: string | undefined;
    calEventResponses: import('@calcom/types/Calendar').CalEventResponses;
    customInputs: undefined;
    language: string;
    metadata: Record<string, string>;
    start: string;
    eventTypeId: number;
    timeZone: string;
    responses: {
        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>;
    user?: string | string[] | undefined;
    end: string;
    bookingUid?: string | undefined;
    creationSource?: "API_V1" | "API_V2" | "WEBAPP" | undefined;
    thirdPartyRecurringEventId?: string | null | undefined;
    recurringEventId?: string | undefined;
    rescheduledBy?: string | undefined;
    hashedLink?: string | null | undefined;
    seatReferenceUid?: string | undefined;
    tracking?: {
        utm_source?: string | undefined;
        utm_medium?: string | undefined;
        utm_campaign?: string | undefined;
        utm_term?: string | undefined;
        utm_content?: string | undefined;
    } | undefined;
    orgSlug?: string | undefined;
    recurringCount?: number | undefined;
    appsStatus?: {
        success: number;
        type: string;
        appName: string;
        errors: string[];
        failures: number;
        warnings?: string[] | undefined;
    }[] | undefined;
    skipContactOwner?: boolean | undefined;
    rescheduleUid?: string | undefined;
    routingFormResponseId?: number | undefined;
    eventTypeSlug?: string | undefined;
    routedTeamMemberIds?: number[] | null | undefined;
    teamMemberEmail?: string | null | undefined;
    _isDryRun?: boolean | undefined;
    rrHostSubsetIds?: number[] | null | undefined;
    crmAppSlug?: string | null | undefined;
    crmOwnerRecordType?: string | null | undefined;
    hasHashedBookingLink?: boolean | undefined;
    crmRecordId?: string | null | undefined;
    cfToken?: string | null | undefined;
    reroutingFormResponses?: Record<string, {
        value: string | number | string[];
        label?: string | undefined;
    }> | undefined;
    dub_id?: string | null | undefined;
    verificationCode?: string | undefined;
    isFirstRecurringSlot?: boolean | undefined;
    numSlotsToCheckForAvailability?: number | undefined;
    allRecurringDates?: {
        start: string;
        end?: string | undefined;
    }[] | undefined;
    currentRecurringIndex?: number | undefined;
    noEmail?: boolean | undefined;
    luckyUsers?: number[] | undefined;
}>;
export type AwaitedBookingData = Awaited<ReturnType<typeof _getBookingData>>;
export type RescheduleReason = AwaitedBookingData["rescheduleReason"];
export type NoEmail = AwaitedBookingData["noEmail"];
export type AdditionalNotes = AwaitedBookingData["notes"];
export type ReqAppsStatus = AwaitedBookingData["appsStatus"];
export type SmsReminderNumber = AwaitedBookingData["smsReminderNumber"];
export type EventTypeId = AwaitedBookingData["eventTypeId"];
export type ReqBodyMetadata = ReqBodyWithEnd["metadata"];
export {};
//# sourceMappingURL=getBookingData.d.ts.map