import type { GraphQLClient } from '../client.js'; import { type BeginPlayerCardSetupMutation, type PlayerWalletBalanceQuery, type PlayerWalletTransactionsQuery, type PlayerWalletTransactionsQueryVariables, type PlayerUsageChargesQuery, type PlayerUsageChargesQueryVariables, type PlayerSpendCapsQuery, type SetPlayerSpendCapMutation, type SetPlayerSpendCapMutationVariables, type PlayerAutoBillingQuery, type SetPlayerAutoBillingMutation, type SetPlayerAutoBillingMutationVariables, type PlayerRuntimeStatesQuery, type PlayerWasmPoliciesQuery, type PlayerWasmPoliciesQueryVariables, type SetPlayerWasmPolicyMutation, type SetPlayerWasmPolicyMutationVariables, type DeletePlayerWasmPolicyMutation, type DeletePlayerWasmPolicyMutationVariables, type PlayerRateMarkupQuery, type PlayerRateMarkupQueryVariables, type SetPlayerRateMarkupMutation, type SetPlayerRateMarkupMutationVariables, type AppPlayerUsageQuery, type AppPlayerUsageQueryVariables, type AppPlayerMarkupAccruedQuery, type AppPlayerMarkupAccruedQueryVariables } from '../generated/graphql.js'; /** * The player wallet and player-billing surface (player compute P2, DN-5) — * exposed as `client.playerWallet` and routed to the Management API. * * Every viewer-scoped call operates on the CALLER's own wallet: balance, * ledger, hourly usage charges (platform vs studio-markup split), self-set * spend caps, auto-recharge config, and per-app gate states. Fund the wallet * via `client.payments.createCheckout` with purpose `PLAYER_WALLET_TOPUP`. * * The studio-scoped calls (policies, markup, per-player usage, accrued * markup) require the corresponding org permissions (`manage_compute`, * `manage_billing`, `view_compute_diagnostics`, `view_billing`). */ export declare class PlayerWalletAPI { private readonly graphql; constructor(graphql: GraphQLClient); /** The caller's wallet, created empty on first access (never null). */ balance(): Promise; /** The caller's wallet ledger, newest first. */ transactions(variables?: PlayerWalletTransactionsQueryVariables): Promise; /** * The caller's posted hourly usage charges; each splits platformCents vs * markupCents with a per-metric snapshot ("what is this grid costing me"). */ charges(variables?: PlayerUsageChargesQueryVariables): Promise; /** The caller's self-set spend caps with running counters. */ spendCaps(): Promise; /** Set (or clear with null limits) a global or per-app self spend cap. */ setSpendCap(variables: SetPlayerSpendCapMutationVariables): Promise; /** The caller's auto-recharge settings. */ autoBilling(): Promise; /** Configure auto-recharge (requires a vaulted payment method to enable). */ setAutoBilling(variables: SetPlayerAutoBillingMutationVariables): Promise; /** * Begin vaulting a card on the caller's player wallet (P4b): returns the * Stripe SetupIntent client secret + publishable key the browser confirms. * On success the card is saved for wallet auto-recharge and rent auto-renew. */ beginCardSetup(): Promise; /** The caller's per-app gate states (absence means active). */ runtimeStates(): Promise; /** Studio: list an app's player policy rows (`view_compute_diagnostics`). */ policies(variables: PlayerWasmPoliciesQueryVariables): Promise; /** Studio: upsert a player policy row (`manage_compute`). */ setPolicy(variables: SetPlayerWasmPolicyMutationVariables): Promise; /** Studio: delete a player policy row (`manage_compute`). */ deletePolicy(variables: DeletePlayerWasmPolicyMutationVariables): Promise; /** Studio: read the app's player rate-card markup in bps (`view_billing`). */ rateMarkup(variables: PlayerRateMarkupQueryVariables): Promise; /** Studio: set the app's player rate-card markup in bps (`manage_billing`). */ setRateMarkup(variables: SetPlayerRateMarkupMutationVariables): Promise; /** Studio: per-player usage aggregate (`view_compute_diagnostics`). */ appPlayerUsage(variables: AppPlayerUsageQueryVariables): Promise; /** Studio: total accrued markup income in cents (`view_billing`). */ appMarkupAccrued(variables: AppPlayerMarkupAccruedQueryVariables): Promise; } //# sourceMappingURL=playerWallet.d.ts.map