import { z } from "zod";
export declare const ZQueue: z.ZodObject<{
    type: z.ZodLiteral<"queue">;
    queue: z.ZodObject<{
        /** Ticket._id - will not be exposed to frontend. */
        /** Position in queue (zero based). */
        index: z.ZodOptional<z.ZodNumber>;
        /** Length of the queue. */
        queueLength: z.ZodOptional<z.ZodNumber>;
        /** Already waited for. */
        waited: z.ZodOptional<z.ZodNumber>;
        /** Based on Average Watch Time,
         * we calculate an average interval of expected connection closings and based on the amount of concurrent sessions,
         * we can calculate the estimated time until another slot will be freed up. */
        estimatedWaitTime: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
        /** The average time all current sessions.
         * (How long did it actually take those that waited for them that received a connection to the currently running instances.)
         */
        averageWaitTime: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
        /** Type of all time-values in the que. */
        valueType: z.ZodEnum<["milliseconds", "seconds", "minutes", "hours", "days"]>;
    }, "strip", z.ZodTypeAny, {
        index?: number;
        queueLength?: number;
        waited?: number;
        estimatedWaitTime?: number;
        averageWaitTime?: number;
        valueType?: "milliseconds" | "seconds" | "minutes" | "hours" | "days";
    }, {
        index?: number;
        queueLength?: number;
        waited?: number;
        estimatedWaitTime?: number;
        averageWaitTime?: number;
        valueType?: "milliseconds" | "seconds" | "minutes" | "hours" | "days";
    }>;
}, "strip", z.ZodTypeAny, {
    type?: "queue";
    queue?: {
        index?: number;
        queueLength?: number;
        waited?: number;
        estimatedWaitTime?: number;
        averageWaitTime?: number;
        valueType?: "milliseconds" | "seconds" | "minutes" | "hours" | "days";
    };
}, {
    type?: "queue";
    queue?: {
        index?: number;
        queueLength?: number;
        waited?: number;
        estimatedWaitTime?: number;
        averageWaitTime?: number;
        valueType?: "milliseconds" | "seconds" | "minutes" | "hours" | "days";
    };
}>;
export type Queue = z.infer<typeof ZQueue>;
