import { z } from 'zod';
export declare const GAME_TURN_STATUS: {
    readonly CREATED: "created";
    readonly IN_QUEUE: "in_queue";
    readonly READY: "ready";
    readonly PLAYING: "playing";
    readonly COMPLETED: "completed";
};
export declare const GAME_TURN_CHECK: {
    readonly TUTORIAL: "tutorial";
    readonly AGE_VERIFICATION: "age_verification";
    readonly TERMS_ACCEPTANCE: "terms_acceptance";
};
export declare const GameTurnStatusSchema: z.ZodEnum<{
    completed: "completed";
    created: "created";
    in_queue: "in_queue";
    ready: "ready";
    playing: "playing";
}>;
export declare const GameTurnCheckSchema: z.ZodEnum<{
    tutorial: "tutorial";
    age_verification: "age_verification";
    terms_acceptance: "terms_acceptance";
}>;
export declare const GameTurnSchema: z.ZodObject<{
    id: z.ZodString;
    purchaseId: z.ZodString;
    leaderUsername: z.ZodString;
    gameTickets: z.ZodArray<z.ZodString>;
    usernames: z.ZodArray<z.ZodString>;
    status: z.ZodEnum<{
        completed: "completed";
        created: "created";
        in_queue: "in_queue";
        ready: "ready";
        playing: "playing";
    }>;
    tasks: z.ZodArray<z.ZodObject<{
        id: z.ZodString;
        type: z.ZodEnum<{
            qr_scan: "qr_scan";
            manual_check: "manual_check";
            link_accept: "link_accept";
        }>;
        status: z.ZodEnum<{
            pending: "pending";
            completed: "completed";
        }>;
        label: z.ZodString;
        metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
        completedAt: z.ZodOptional<z.ZodDate>;
    }, z.core.$strip>>;
    createdAt: z.ZodDate;
    updatedAt: z.ZodDate;
    startedAt: z.ZodOptional<z.ZodDate>;
    completedAt: z.ZodOptional<z.ZodDate>;
}, z.core.$strip>;
export declare const GameTurnQueueItemSchema: z.ZodObject<{
    id: z.ZodString;
    purchaseId: z.ZodString;
    leaderUsername: z.ZodString;
    gameTickets: z.ZodArray<z.ZodString>;
    usernames: z.ZodArray<z.ZodString>;
    status: z.ZodEnum<{
        completed: "completed";
        created: "created";
        in_queue: "in_queue";
        ready: "ready";
        playing: "playing";
    }>;
    tasks: z.ZodArray<z.ZodObject<{
        id: z.ZodString;
        type: z.ZodEnum<{
            qr_scan: "qr_scan";
            manual_check: "manual_check";
            link_accept: "link_accept";
        }>;
        status: z.ZodEnum<{
            pending: "pending";
            completed: "completed";
        }>;
        label: z.ZodString;
        metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
        completedAt: z.ZodOptional<z.ZodDate>;
    }, z.core.$strip>>;
    createdAt: z.ZodDate;
    updatedAt: z.ZodDate;
    startedAt: z.ZodOptional<z.ZodDate>;
    completedAt: z.ZodOptional<z.ZodDate>;
    position: z.ZodNumber;
}, z.core.$strip>;
