import { z } from 'zod';
export declare const gameTypeSchema: z.ZodEnum<{
    readonly Race: "Race";
    readonly Battle: "Battle";
}>;
export declare const gameStatusSchema: z.ZodEnum<{
    readonly NON_STARTED: "non-started";
    readonly ACTIVE: "active";
    readonly YELLOW_FLAG: "yellow-flag";
    readonly RED_FLAG: "red-flag";
    readonly FINISHED: "finished";
    readonly KART_ELIMINATED: "kart-eliminated";
}>;
export declare const gameFinishedReasonSchema: z.ZodEnum<{
    readonly TIME_IS_OVER: "TIME_IS_OVER";
    readonly GAME_KARTS_FINISHED: "GAME_KARTS_FINISHED";
    readonly EMERGENCY: "EMERGENCY";
    readonly BY_CONTROLLER: "BY_CONTROLLER";
}>;
export declare const gameWarningEventSchema: z.ZodEnum<{
    readonly YELLOW_FLAG: "yellow-flag";
    readonly RED_FLAG: "red-flag";
}>;
export declare const gameKartStateSchema: z.ZodObject<{
    coins: z.ZodNumber;
}, z.core.$strip>;
export declare const kartRankingItemSchema: z.ZodObject<{
    kartGuid: z.ZodString;
    position: z.ZodNumber;
    time: z.ZodNumber;
}, z.core.$strip>;
export declare const gameSchema: z.ZodObject<{
    id: z.ZodNumber;
    status: z.ZodEnum<{
        readonly NON_STARTED: "non-started";
        readonly ACTIVE: "active";
        readonly YELLOW_FLAG: "yellow-flag";
        readonly RED_FLAG: "red-flag";
        readonly FINISHED: "finished";
        readonly KART_ELIMINATED: "kart-eliminated";
    }>;
    kartsGuids: z.ZodArray<z.ZodString>;
    powerUpsIds: z.ZodArray<z.ZodString>;
    gameTrackId: z.ZodString;
    type: z.ZodEnum<{
        readonly Race: "Race";
        readonly Battle: "Battle";
    }>;
    coins: z.ZodNumber;
    time: z.ZodNumber;
    speedConfig: z.ZodNumber;
    createdAt: z.ZodDate;
    startedAt: z.ZodOptional<z.ZodDate>;
    finishedAt: z.ZodOptional<z.ZodDate>;
    finishedReason: z.ZodOptional<z.ZodEnum<{
        readonly TIME_IS_OVER: "TIME_IS_OVER";
        readonly GAME_KARTS_FINISHED: "GAME_KARTS_FINISHED";
        readonly EMERGENCY: "EMERGENCY";
        readonly BY_CONTROLLER: "BY_CONTROLLER";
    }>>;
    kartsState: z.ZodRecord<z.ZodString, z.ZodObject<{
        coins: z.ZodNumber;
    }, z.core.$strip>>;
    gameRanking: z.ZodArray<z.ZodObject<{
        kartGuid: z.ZodString;
        position: z.ZodNumber;
        time: z.ZodNumber;
    }, z.core.$strip>>;
}, z.core.$strip>;
