import type { UseQueryResult } from "@tanstack/react-query";
import type { GetAllSchedulesByUserIdQueryType } from "@calcom/atoms/event-types/wrappers/EventAvailabilityTabWebWrapper";
import type { TeamMembers } from '../../EventType';
import type { EventTypeSetup, Host } from '../../../lib/types';
import type { RouterOutputs } from '../../../../../trpc/react';
type ScheduleQueryData = RouterOutputs["viewer"]["availability"]["schedule"]["get"];
type EventTypeScheduleDetailsProps = {
    scheduleQueryData?: Pick<ScheduleQueryData, "timeZone" | "id" | "isManaged" | "readOnly"> & {
        schedule: Array<Pick<ScheduleQueryData["schedule"][number], "days" | "startTime" | "endTime">>;
    };
    isSchedulePending?: boolean;
    user?: Pick<RouterOutputs["viewer"]["me"], "timeFormat" | "weekStart">;
    editAvailabilityRedirectUrl?: string;
};
type HostSchedulesQueryType = GetAllSchedulesByUserIdQueryType | (({ userId }: {
    userId: number;
}) => UseQueryResult<{
    schedules: {
        id: number;
        name: string;
        isDefault: boolean;
        userId: number;
        readOnly: boolean;
    }[];
}, Error>);
type EventTypeTeamScheduleProps = {
    hostSchedulesQuery: HostSchedulesQueryType;
    hosts?: Host[];
};
type TeamMember = Pick<TeamMembers[number], "avatar" | "name" | "id">;
type EventTypeScheduleProps = {
    schedulesQueryData?: Array<Omit<RouterOutputs["viewer"]["availability"]["list"]["schedules"][number], "availability">>;
    isSchedulesPending?: boolean;
    eventType: EventTypeSetup;
    teamMembers: TeamMember[];
} & EventTypeScheduleDetailsProps & EventTypeTeamScheduleProps;
export type EventAvailabilityTabBaserProps = {
    isTeamEvent: boolean;
};
type EventAvailabilityTabProps = EventAvailabilityTabBaserProps & EventTypeScheduleProps;
export declare const EventAvailabilityTab: ({ eventType, isTeamEvent, ...rest }: EventAvailabilityTabProps) => JSX.Element;
export {};
//# sourceMappingURL=EventAvailabilityTab.d.ts.map