import { Prisma } from '../../../../../prisma-client';
import type { TrpcSessionUser } from "../../../types";
import type { TDuplicateInputSchema } from "./duplicate.schema";
type DuplicateOptions = {
    ctx: {
        user: NonNullable<TrpcSessionUser>;
    };
    input: TDuplicateInputSchema;
};
export declare const duplicateHandler: ({ ctx, input }: DuplicateOptions) => Promise<{
    eventType: {
        calVideoSettings: {
            eventTypeId: number;
            createdAt: Date;
            updatedAt: Date;
            disableRecordingForOrganizer: boolean;
            disableRecordingForGuests: boolean;
            enableAutomaticTranscription: boolean;
            redirectUrlOnExit: string | null;
            disableTranscriptionForGuests: boolean;
            disableTranscriptionForOrganizer: boolean;
        } | null;
    } & {
        id: number;
        length: number;
        title: string;
        metadata: Prisma.JsonValue;
        description: string | null;
        price: number;
        hidden: boolean;
        currency: string;
        slug: string;
        userId: number | null;
        interfaceLanguage: string | null;
        position: number;
        locations: Prisma.JsonValue;
        offsetStart: number;
        profileId: number | null;
        teamId: number | null;
        useEventLevelSelectedCalendars: boolean;
        eventName: string | null;
        parentId: number | null;
        bookingFields: Prisma.JsonValue;
        timeZone: string | null;
        periodType: import('../../../../../prisma-client').$Enums.PeriodType;
        periodStartDate: Date | null;
        periodEndDate: Date | null;
        periodDays: number | null;
        periodCountCalendarDays: boolean | null;
        lockTimeZoneToggleOnBookingPage: boolean;
        requiresConfirmation: boolean;
        requiresConfirmationWillBlockSlot: boolean;
        requiresConfirmationForFreeEmail: boolean;
        requiresBookerEmailVerification: boolean;
        canSendCalVideoTranscriptionEmails: boolean;
        autoTranslateDescriptionEnabled: boolean;
        recurringEvent: Prisma.JsonValue;
        disableGuests: boolean;
        hideCalendarNotes: boolean;
        hideCalendarEventDetails: boolean;
        minimumBookingNotice: number;
        beforeEventBuffer: number;
        afterEventBuffer: number;
        seatsPerTimeSlot: number | null;
        onlyShowFirstAvailableSlot: boolean;
        disableCancelling: boolean | null;
        disableRescheduling: boolean | null;
        seatsShowAttendees: boolean | null;
        seatsShowAvailabilityCount: boolean | null;
        schedulingType: import('../../../../../prisma-client').$Enums.SchedulingType | null;
        scheduleId: number | null;
        allowReschedulingCancelledBookings: boolean | null;
        slotInterval: number | null;
        successRedirectUrl: string | null;
        forwardParamsSuccessRedirect: boolean | null;
        bookingLimits: Prisma.JsonValue;
        durationLimits: Prisma.JsonValue;
        isInstantEvent: boolean;
        instantMeetingExpiryTimeOffsetInSeconds: number;
        instantMeetingScheduleId: number | null;
        instantMeetingParameters: string[];
        assignAllTeamMembers: boolean;
        assignRRMembersUsingSegment: boolean;
        rrSegmentQueryValue: Prisma.JsonValue;
        useEventTypeDestinationCalendarEmail: boolean;
        isRRWeightsEnabled: boolean;
        maxLeadThreshold: number | null;
        includeNoShowInRRCalculation: boolean;
        allowReschedulingPastBookings: boolean;
        hideOrganizerEmail: boolean;
        maxActiveBookingsPerBooker: number | null;
        maxActiveBookingPerBookerOfferReschedule: boolean;
        customReplyToEmail: string | null;
        eventTypeColor: Prisma.JsonValue;
        rescheduleWithSameRoundRobinHost: boolean;
        secondaryEmailId: number | null;
        useBookerTimezone: boolean;
        restrictionScheduleId: number | null;
    };
}>;
export {};
//# sourceMappingURL=duplicate.handler.d.ts.map