import { ValidActionSource } from '../../booking-audit/lib/types/actionSource';
import { getEventTypesFromDB } from '../../bookings/lib/handleNewBooking/getEventTypesFromDB';
import { PlatformClientParams } from '../../../prisma/zod-utils';
import { CalendarEvent } from '@calcom/types/Calendar';
import { BookingSelectResult } from './utils/bookingSelect';
export declare const roundRobinManualReassignment: ({ bookingId, newUserId, orgId, reassignReason, reassignedById, emailsEnabled, platformClientParams, actionSource, reassignedByUuid, }: {
    bookingId: number;
    newUserId: number;
    orgId: number | null;
    reassignReason?: string;
    reassignedById: number;
    emailsEnabled?: boolean;
    platformClientParams?: PlatformClientParams;
    actionSource: ValidActionSource;
    reassignedByUuid: string;
}) => Promise<{
    location: string | null;
    title: string;
    description: string | null;
    attendees: {
        email: string;
        name: string;
        locale: string | null;
        id: number;
        phoneNumber: string | null;
        timeZone: string;
        bookingId: number | null;
        noShow: boolean | null;
    }[];
    user: {
        username: string | null;
        email: string;
        name: string | null;
        locale: string | null;
        id: number;
        credentials: {
            type: string;
            user: {
                email: string;
            } | null;
            userId: number | null;
            key: import('@prisma/client/runtime/client').JsonValue;
            id: number;
            teamId: number | null;
            encryptedKey: string | null;
            appId: string | null;
            invalid: boolean | null;
            delegationCredentialId: string | null;
        }[];
        timeZone: string;
        uuid: string;
        timeFormat: number | null;
        destinationCalendar: {
            userId: number | null;
            id: number;
            eventTypeId: number | null;
            createdAt: Date | null;
            updatedAt: Date | null;
            credentialId: number | null;
            delegationCredentialId: string | null;
            integration: string;
            externalId: string;
            primaryEmail: string | null;
            domainWideDelegationCredentialId: string | null;
            customCalendarReminder: number | null;
        } | null;
    } | null;
    uid: string;
    userId: number | null;
    metadata: import('@prisma/client/runtime/client').JsonValue;
    eventTypeId: number | null;
    customInputs: import('@prisma/client/runtime/client').JsonValue;
    responses: import('@prisma/client/runtime/client').JsonValue;
    startTime: Date;
    endTime: Date;
    iCalUID: string | null;
    destinationCalendar: {
        userId: number | null;
        id: number;
        eventTypeId: number | null;
        createdAt: Date | null;
        updatedAt: Date | null;
        credentialId: number | null;
        delegationCredentialId: string | null;
        integration: string;
        externalId: string;
        primaryEmail: string | null;
        domainWideDelegationCredentialId: string | null;
        customCalendarReminder: number | null;
    } | 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;
    }[];
}>;
export declare function handleWorkflowsUpdate({ booking, newUser, evt, eventType, orgId, }: {
    booking: BookingSelectResult;
    newUser: {
        id: number;
        email: string;
        locale?: string | null;
    };
    evt: CalendarEvent;
    eventType: Awaited<ReturnType<typeof getEventTypesFromDB>>;
    orgId: number | null;
}): Promise<void>;
export default roundRobinManualReassignment;
//# sourceMappingURL=roundRobinManualReassignment.d.ts.map