import { BookingResponse, RecurringBookingCreateBody } from '../../../../features/bookings/types';
import { ApiErrorResponse, ApiSuccessResponse } from '../../../types/index.ts';
interface IUseCreateRecurringBooking {
    onSuccess?: (res: ApiSuccessResponse<BookingResponse[]>) => void;
    onError?: (err: ApiErrorResponse | Error) => void;
}
export declare const useCreateRecurringBooking: ({ onSuccess, onError }?: IUseCreateRecurringBooking) => import('@tanstack/react-query').UseMutationResult<ApiErrorResponse | ApiSuccessResponse<({
    id: number;
    uid: import('short-uuid').SUUID;
    iCalUID: string;
    status: "ACCEPTED";
    eventTypeId: number;
    user: {
        name: string;
        timeZone: string;
        email: null;
    };
    userId: null;
    userUuid: null;
    title: string;
    startTime: Date;
    endTime: Date;
    createdAt: Date;
    updatedAt: Date;
    attendees: {
        id: number;
        email: string;
        name: string;
        timeZone: string;
        locale: null;
        phoneNumber: null;
        bookingId: null;
        noShow: null;
    }[];
    oneTimePassword: null;
    smsReminderNumber: null;
    metadata: {};
    idempotencyKey: null;
    userPrimaryEmail: null;
    description: string | null;
    customInputs: null;
    responses: null;
    location: string;
    paid: boolean;
    cancellationReason: null;
    rejectionReason: null;
    dynamicEventSlugRef: null;
    dynamicGroupSlugRef: null;
    fromReschedule: null;
    recurringEventId: null;
    scheduledJobs: never[];
    rescheduledBy: null;
    destinationCalendarId: null;
    reassignReason: null;
    reassignById: null;
    rescheduled: boolean;
    isRecorded: boolean;
    iCalSequence: number;
    rating: null;
    ratingFeedback: null;
    noShowHost: null;
    cancelledBy: null;
    creationSource: "WEBAPP";
    references: never[];
    payment: never[];
    isDryRun: boolean;
    paymentRequired: boolean;
    paymentUid: undefined;
    luckyUsers: never[];
    paymentId: undefined;
    seatReferenceUid: undefined;
    isShortCircuitedBooking: boolean;
    organizationId: number | null;
    previousBooking: {
        uid: string;
        startTime: Date;
        endTime: Date;
    } | null;
} | {
    organizationId: number | null;
    previousBooking: {
        uid: string;
        startTime: Date;
        endTime: Date;
    } | null;
    luckyUsers?: number[] | undefined;
    troubleshooterData?: {
        organizerUser: {
            id: number;
        } | null;
        eventType: {
            id: number;
            slug: string;
        };
        allHostUsers: number[];
        luckyUsers: number[];
        luckyUserPool: number[];
        fixedUsers: number[];
        luckyUsersFromFirstBooking: number[];
        usedContactOwnerEmail: string | null;
        askedContactOwnerEmail: string | null;
        isManagedEventType: boolean;
    } | undefined;
    user: {
        email: null;
        username?: string | null | undefined;
        name?: string | null | undefined;
        timeZone?: string | undefined;
        uuid?: string | undefined;
        isPlatformManaged?: boolean | undefined;
    };
    paymentRequired: boolean;
    isDryRun: boolean;
    userUuid?: string | null | undefined;
    payment?: {
        success: boolean;
        refunded: boolean;
        currency: string;
        uid: string;
        amount: number;
        data: import('@prisma/client/runtime/client').JsonValue;
        id: number;
        appId: string | null;
        externalId: string;
        bookingId: number;
        fee: number;
        paymentOption: import('../../../../kysely/types.ts').PaymentOption | null;
    }[] | undefined;
    attendees?: {
        email: string;
        name: string;
        locale: string | null;
        id: number;
        phoneNumber: string | null;
        timeZone: string;
        bookingId: number | null;
        noShow: boolean | null;
    }[] | undefined;
    references?: {
        type: string;
        uid: string;
        id: number;
        credentialId: number | null;
        delegationCredentialId: string | null;
        domainWideDelegationCredentialId: string | null;
        bookingId: number | null;
        meetingId: string | null;
        thirdPartyRecurringEventId: string | null;
        meetingPassword: string | null;
        meetingUrl: string | null;
        externalCalendarId: string | null;
        deleted: boolean | null;
    }[] | undefined;
    paid?: boolean | undefined;
    location?: string | null | undefined;
    title?: string | undefined;
    description?: string | null | undefined;
    status?: import('../../../../kysely/types.ts').BookingStatus | undefined;
    rescheduled?: boolean | null | undefined;
    rating?: number | null | undefined;
    uid?: string | undefined;
    userId?: number | null | undefined;
    metadata?: import('@prisma/client/runtime/client').JsonValue | undefined;
    id?: number | undefined;
    eventTypeId?: number | null | undefined;
    createdAt?: Date | undefined;
    updatedAt?: Date | null | undefined;
    creationSource?: import('../../../../kysely/types.ts').CreationSource | null | undefined;
    idempotencyKey?: string | null | undefined;
    userPrimaryEmail?: string | null | undefined;
    customInputs?: import('@prisma/client/runtime/client').JsonValue | undefined;
    responses?: import('@prisma/client/runtime/client').JsonValue | undefined;
    startTime?: Date | undefined;
    endTime?: Date | undefined;
    destinationCalendarId?: number | null | undefined;
    cancellationReason?: string | null | undefined;
    rejectionReason?: string | null | undefined;
    reassignReason?: string | null | undefined;
    reassignById?: number | null | undefined;
    dynamicEventSlugRef?: string | null | undefined;
    dynamicGroupSlugRef?: string | null | undefined;
    fromReschedule?: string | null | undefined;
    recurringEventId?: string | null | undefined;
    smsReminderNumber?: string | null | undefined;
    scheduledJobs?: string[] | undefined;
    isRecorded?: boolean | undefined;
    iCalUID?: string | null | undefined;
    iCalSequence?: number | undefined;
    ratingFeedback?: string | null | undefined;
    noShowHost?: boolean | null | undefined;
    oneTimePassword?: string | null | undefined;
    cancelledBy?: string | null | undefined;
    rescheduledBy?: string | null | undefined;
    appsStatus?: import('@calcom/types/Calendar').AppsStatus[];
    seatReferenceUid?: string;
    paymentUid?: string;
    message?: string;
    paymentId?: number;
    isShortCircuitedBooking?: undefined;
} | {
    organizationId: number | null;
    previousBooking: {
        uid: string;
        startTime: Date;
        endTime: Date;
    } | null;
    troubleshooterData?: {
        organizerUser: {
            id: number;
        } | null;
        eventType: {
            id: number;
            slug: string;
        };
        allHostUsers: number[];
        luckyUsers: number[];
        luckyUserPool: number[];
        fixedUsers: number[];
        luckyUsersFromFirstBooking: number[];
        usedContactOwnerEmail: string | null;
        askedContactOwnerEmail: string | null;
        isManagedEventType: boolean;
    } | undefined;
    message: string;
    paymentRequired: boolean;
    paymentUid: string | undefined;
    paymentId: number | undefined;
    isDryRun: boolean;
    luckyUsers?: number[] | undefined;
    user: {
        email: null;
        username: string | null;
        name: string | null;
        timeZone: string;
        uuid: string;
        isPlatformManaged: boolean;
    };
    videoCallUrl: any;
    seatReferenceUid: string | undefined;
    userUuid: string | null;
    payment: {
        success: boolean;
        refunded: boolean;
        currency: string;
        uid: string;
        amount: number;
        data: import('@prisma/client/runtime/client').JsonValue;
        id: number;
        appId: string | null;
        externalId: string;
        bookingId: number;
        fee: number;
        paymentOption: import('../../../../kysely/types.ts').PaymentOption | null;
    }[];
    attendees: {
        email: string;
        name: string;
        locale: string | null;
        id: number;
        phoneNumber: string | null;
        timeZone: string;
        bookingId: number | null;
        noShow: boolean | null;
    }[];
    references: {
        type: string;
        uid: string;
        id: number;
        credentialId: number | null;
        delegationCredentialId: string | null;
        domainWideDelegationCredentialId: string | null;
        bookingId: number | null;
        meetingId: string | null;
        thirdPartyRecurringEventId: string | null;
        meetingPassword: string | null;
        meetingUrl: string | null;
        externalCalendarId: string | null;
        deleted: boolean | null;
    }[];
    paid: boolean;
    location: string | null;
    title: string;
    description: string | null;
    status: import('../../../../kysely/types.ts').BookingStatus;
    rescheduled: boolean | null;
    rating: number | null;
    uid: string;
    userId: number | null;
    metadata: import('@prisma/client/runtime/client').JsonValue | null;
    id: number;
    eventTypeId: number | null;
    createdAt: Date;
    updatedAt: Date | null;
    creationSource: import('../../../../kysely/types.ts').CreationSource | null;
    idempotencyKey: string | null;
    userPrimaryEmail: string | null;
    customInputs: import('@prisma/client/runtime/client').JsonValue | null;
    responses: import('@prisma/client/runtime/client').JsonValue | null;
    startTime: Date;
    endTime: Date;
    destinationCalendarId: number | null;
    cancellationReason: string | null;
    rejectionReason: string | null;
    reassignReason: string | null;
    reassignById: number | null;
    dynamicEventSlugRef: string | null;
    dynamicGroupSlugRef: string | null;
    fromReschedule: string | null;
    recurringEventId: string | null;
    smsReminderNumber: string | null;
    scheduledJobs: string[];
    isRecorded: boolean;
    iCalUID: string | null;
    iCalSequence: number;
    ratingFeedback: string | null;
    noShowHost: boolean | null;
    oneTimePassword: string | null;
    cancelledBy: string | null;
    rescheduledBy: string | null;
    isShortCircuitedBooking?: boolean;
    appsStatus?: import('@calcom/types/Calendar').AppsStatus[];
} | {
    references: import('@calcom/types/EventManager').PartialReference[];
    seatReferenceUid: string | undefined;
    videoCallUrl: any;
    organizationId: number | null;
    previousBooking: {
        uid: string;
        startTime: Date;
        endTime: Date;
    } | null;
    troubleshooterData?: {
        organizerUser: {
            id: number;
        } | null;
        eventType: {
            id: number;
            slug: string;
        };
        allHostUsers: number[];
        luckyUsers: number[];
        luckyUserPool: number[];
        fixedUsers: number[];
        luckyUsersFromFirstBooking: number[];
        usedContactOwnerEmail: string | null;
        askedContactOwnerEmail: string | null;
        isManagedEventType: boolean;
    } | undefined;
    isDryRun: boolean;
    luckyUsers?: number[] | undefined;
    user: {
        email: null;
        username?: string | null | undefined;
        name?: string | null | undefined;
        timeZone?: string | undefined;
        uuid?: string | undefined;
        isPlatformManaged?: boolean | undefined;
    };
    paymentRequired: boolean;
    userUuid: string | null;
    payment: {
        success: boolean;
        refunded: boolean;
        currency: string;
        uid: string;
        amount: number;
        data: import('@prisma/client/runtime/client').JsonValue;
        id: number;
        appId: string | null;
        externalId: string;
        bookingId: number;
        fee: number;
        paymentOption: import('../../../../kysely/types.ts').PaymentOption | null;
    }[];
    attendees: {
        email: string;
        name: string;
        locale: string | null;
        id: number;
        phoneNumber: string | null;
        timeZone: string;
        bookingId: number | null;
        noShow: boolean | null;
    }[];
    paid: boolean;
    location: string | null;
    title: string;
    description: string | null;
    status: import('../../../../kysely/types.ts').BookingStatus;
    rescheduled: boolean | null;
    rating: number | null;
    uid: string;
    userId: number | null;
    metadata: import('@prisma/client/runtime/client').JsonValue | null;
    id: number;
    eventTypeId: number | null;
    createdAt: Date;
    updatedAt: Date | null;
    creationSource: import('../../../../kysely/types.ts').CreationSource | null;
    idempotencyKey: string | null;
    userPrimaryEmail: string | null;
    customInputs: import('@prisma/client/runtime/client').JsonValue | null;
    responses: import('@prisma/client/runtime/client').JsonValue | null;
    startTime: Date;
    endTime: Date;
    destinationCalendarId: number | null;
    cancellationReason: string | null;
    rejectionReason: string | null;
    reassignReason: string | null;
    reassignById: number | null;
    dynamicEventSlugRef: string | null;
    dynamicGroupSlugRef: string | null;
    fromReschedule: string | null;
    recurringEventId: string | null;
    smsReminderNumber: string | null;
    scheduledJobs: string[];
    isRecorded: boolean;
    iCalUID: string | null;
    iCalSequence: number;
    ratingFeedback: string | null;
    noShowHost: boolean | null;
    oneTimePassword: string | null;
    cancelledBy: string | null;
    rescheduledBy: string | null;
    isShortCircuitedBooking?: boolean;
    appsStatus?: import('@calcom/types/Calendar').AppsStatus[];
    paymentUid?: string;
    paymentId?: number;
})[]>, Error, RecurringBookingCreateBody[], unknown>;
export {};
//# sourceMappingURL=useCreateRecurringBooking.d.ts.map