import type { Scalars } from '../generated/graphql.js'; import type { EngineDetector, EngineInvokeResult } from './engine.js'; /** Options for {@link MinigamesKit}. */ export interface MinigamesKitOptions { /** Default module when calls omit one (e.g. your scaffolded game). */ defaultModuleName?: string; } /** * A thin invoke wrapper for invoke-loop minigames (the Wave 2 `minigame` * scaffold pattern): synchronous `play` RPCs with server-bound caller * identity, server-held secrets, and per-caller records. Every method * resolves the engine envelope — denials come back as * `{success: false, reason}` rather than throwing. * * Obtained via `client.kit(appId).minigames`. */ export declare class MinigamesKit { private readonly engines; private readonly defaultModuleName?; constructor(_appId: Scalars['BigInt']['input'], engines: EngineDetector, options?: MinigamesKitOptions); /** Is a minigame module deployed + enabled (cached per session)? */ engineAvailable(moduleName?: string): Promise; /** One round: invoke the game's `play` export with your move. */ play(params: Record, moduleName?: string): Promise; /** Your per-caller record. */ record(moduleName?: string): Promise; /** Any other export the game defines (typed result envelope). */ invoke(exportName: string, params?: Record, moduleName?: string): Promise; } //# sourceMappingURL=minigames.d.ts.map