import { _ as Card, l as ClientState, m as ChatMessage, p as GameEvent, v as Color, y as DiscardedCard } from "../index-eCgOhnMT.mjs"; //#region src/client/createClient.d.ts type Client = ReturnType; declare const createClient: (baseUrl: string) => { readonly createGame: (accessToken: string) => Promise<{ readonly success: true; readonly gameId: string; readonly playerId: string; } | { readonly success: false; readonly error: "maxGamesReached"; }>; readonly getClientStateAndClearEvents: (gameId: string, playerId: string) => Promise<{ readonly success: true; readonly state: ClientState; } | { readonly success: false; readonly error: "playerNotFound" | "gameNotFound" | "invalidInput"; }>; readonly getEventsAndClearAcknowledged: (gameId: string, playerId: string, lastReadId: string | null) => Promise<{ readonly success: true; readonly events: readonly GameEvent[]; } | { readonly success: false; readonly error: "playerNotFound" | "gameNotFound" | "invalidInput"; }>; readonly getJoinableGames: () => Promise<{ readonly games: readonly { readonly id: string; readonly numPlayers: number; }[]; }>; readonly joinGame: (gameId: string, accessToken: string) => Promise<{ readonly success: true; readonly playerId: string; } | { readonly success: false; readonly error: "invalidStatus" | "maxPlayersReached" | "alreadyInGame" | "gameNotFound" | "invalidInput"; }>; readonly leaveGame: (gameId: string, playerId: string) => Promise<{ readonly success: true; } | { readonly success: false; readonly error: "playerNotFound" | "gameNotFound" | "invalidInput"; }>; readonly sendChat: (gameId: string, playerId: string, text: string) => Promise<{ readonly success: true; } | { readonly success: false; readonly error: "playerNotFound" | "gameNotFound" | "invalidInput"; }>; readonly startGame: (gameId: string, playerId: string) => Promise<{ readonly success: true; } | { readonly success: false; readonly error: "playerNotFound" | "invalidStatus" | "playerNotAdmin" | "minPlayersNotReached" | "gameNotFound" | "invalidInput"; }>; } & Readonly<{ drawCard: (gameId: string, playerId: string) => Promise<{ readonly success: true; } | { readonly success: false; readonly error: "playerNotFound" | "invalidStatus" | "outOfTurn" | "hasPlayableCard" | "gameNotFound" | "invalidInput"; }>; playCard: (gameId: string, playerId: string, cardId: string) => Promise<{ readonly success: true; } | { readonly success: false; readonly error: "playerNotFound" | "invalidStatus" | "outOfTurn" | "cardNotFound" | "cardIsWild" | "cardNotPlayable" | "gameNotFound" | "invalidInput"; }>; playWildCard: (gameId: string, playerId: string, cardId: string, color: "blue" | "green" | "red" | "yellow") => Promise<{ readonly success: true; } | { readonly success: false; readonly error: "playerNotFound" | "invalidStatus" | "outOfTurn" | "cardNotFound" | "cardNotPlayable" | "cardNotWild" | "gameNotFound" | "invalidInput"; }>; }>; //#endregion //#region src/client/index.d.ts type CreateGameResult = Awaited>; type DrawCardResult = Awaited>; type GetClientStateAndClearEventsResult = Awaited>; type GetEventsAndClearAcknowledgedResult = Awaited>; type GetJoinableGamesResult = Awaited>; type JoinGameResult = Awaited>; type LeaveGameResult = Awaited>; type PlayCardResult = Awaited>; type PlayWildCardResult = Awaited>; type SendChatResult = Awaited>; type StartGameResult = Awaited>; //#endregion export { type Card, type ChatMessage, type Client, type ClientState, type Color, CreateGameResult, type DiscardedCard, DrawCardResult, type GameEvent, GetClientStateAndClearEventsResult, GetEventsAndClearAcknowledgedResult, GetJoinableGamesResult, JoinGameResult, LeaveGameResult, PlayCardResult, PlayWildCardResult, SendChatResult, StartGameResult, createClient }; //# sourceMappingURL=index.d.mts.map