@crowdedkingdoms/crowdyjs 8.15.0 → 8.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/README.md +16 -1
  2. package/dist/crowdy-client.d.ts +12 -0
  3. package/dist/crowdy-client.d.ts.map +1 -1
  4. package/dist/crowdy-client.js +9 -0
  5. package/dist/domains/admin.d.ts +4 -0
  6. package/dist/domains/admin.d.ts.map +1 -1
  7. package/dist/domains/admin.js +1 -0
  8. package/dist/domains/apps.d.ts +28 -1
  9. package/dist/domains/apps.d.ts.map +1 -1
  10. package/dist/domains/apps.js +52 -1
  11. package/dist/domains/gameApps.d.ts +17 -1
  12. package/dist/domains/gameApps.d.ts.map +1 -1
  13. package/dist/domains/gameApps.js +29 -1
  14. package/dist/domains/marketplace.d.ts +137 -0
  15. package/dist/domains/marketplace.d.ts.map +1 -0
  16. package/dist/domains/marketplace.js +241 -0
  17. package/dist/domains/playerCompute.d.ts +85 -0
  18. package/dist/domains/playerCompute.d.ts.map +1 -0
  19. package/dist/domains/playerCompute.js +127 -0
  20. package/dist/domains/playerModel.d.ts +20 -0
  21. package/dist/domains/playerModel.d.ts.map +1 -0
  22. package/dist/domains/playerModel.js +54 -0
  23. package/dist/domains/playerWallet.d.ts +59 -0
  24. package/dist/domains/playerWallet.d.ts.map +1 -0
  25. package/dist/domains/playerWallet.js +106 -0
  26. package/dist/generated/graphql.d.ts +3357 -125
  27. package/dist/generated/graphql.d.ts.map +1 -1
  28. package/dist/generated/graphql.js +185 -1
  29. package/dist/index.d.ts +12 -3
  30. package/dist/index.d.ts.map +1 -1
  31. package/dist/index.js +10 -1
  32. package/dist/kit/npcs.d.ts.map +1 -1
  33. package/dist/kit/social.d.ts.map +1 -1
  34. package/dist/live-coding/live-coding-controller.d.ts +73 -0
  35. package/dist/live-coding/live-coding-controller.d.ts.map +1 -0
  36. package/dist/live-coding/live-coding-controller.js +140 -0
  37. package/dist/live-coding/mount.d.ts +26 -0
  38. package/dist/live-coding/mount.d.ts.map +1 -0
  39. package/dist/live-coding/mount.js +108 -0
  40. package/dist/live-coding/templates.d.ts +17 -0
  41. package/dist/live-coding/templates.d.ts.map +1 -0
  42. package/dist/live-coding/templates.js +59 -0
  43. package/dist/player-runtime/player-code-broker.d.ts +101 -0
  44. package/dist/player-runtime/player-code-broker.d.ts.map +1 -0
  45. package/dist/player-runtime/player-code-broker.js +251 -0
  46. package/dist/player-runtime/player-glue-worker.d.ts +62 -0
  47. package/dist/player-runtime/player-glue-worker.d.ts.map +1 -0
  48. package/dist/player-runtime/player-glue-worker.js +127 -0
  49. package/package.json +1 -1
@@ -180,6 +180,16 @@ export type AddEdgeInput = {
180
180
  /** Optional edge weight. */
181
181
  weight?: InputMaybe<Scalars['Float']['input']>;
182
182
  };
183
+ export type AdmitAppCodeInput = {
184
+ /** Numeric app id whose allow list receives this entry. */
185
+ appId: Scalars['BigInt']['input'];
186
+ /** Admit one code listing, author user, or authoring org. */
187
+ subjectKind: CodeAdmissionSubjectKind;
188
+ /** Stable id of the subject (listing UUID, numeric user id, or numeric org id). */
189
+ subjectRef: Scalars['String']['input'];
190
+ /** Optional P1 version range: exact "3", inclusive "2-5", ">=4", or "<=9". Omit to admit all versions. */
191
+ versionRange?: InputMaybe<Scalars['String']['input']>;
192
+ };
183
193
  /** A publishable application (game/experience) owned by an organization. Its discoverability is controlled by visibility and its lifecycle by status. */
184
194
  export type App = {
185
195
  __typename?: 'App';
@@ -187,6 +197,8 @@ export type App = {
187
197
  appId: Scalars['BigInt']['output'];
188
198
  /** OAuth client type: "public" (browser/PKCE, no secret) or "confidential" (server-side, holds a secret). Defaults to "public". */
189
199
  clientType: Scalars['String']['output'];
200
+ /** Player-code censorship mode: "implicit_allow" (default/off) or "allow_list" (strict admission of every running artifact, including self-authored code). */
201
+ codeAdmissionMode: Scalars['String']['output'];
190
202
  /** Timestamp when the app was created. */
191
203
  createdAt: Scalars['DateTime']['output'];
192
204
  /** Numeric user id of the account that created the app. */
@@ -197,6 +209,10 @@ export type App = {
197
209
  description: Maybe<Scalars['String']['output']>;
198
210
  /** Resolved game-api base URL for SDK/runtime calls: the per-tenant URL for dedicated apps, or the shared platform URL for shared apps. Null for legacy or not-yet-deployed apps. */
199
211
  gameApiUrl: Maybe<Scalars['String']['output']>;
212
+ /** Player user ids allowed to approve grid claim requests in "approval" mode. When empty, approval falls back to org staff holding manage_compute. */
213
+ gridClaimApproverUserIds: Array<Scalars['String']['output']>;
214
+ /** How a player claim confers grid ownership (D4): "self_claim" (the claim right alone; default), "approval" (designated approvers accept claim requests), "invite" (standing invites only), or "marketplace_only" (only a marketplace grid purchase; the purchase edge ships in P4b). */
215
+ gridClaimPolicy: Scalars['String']['output'];
200
216
  /** True for first-party/trusted apps: portal entry skips the consent screen. The Overworld (app 1) is trusted. Studio admins cannot set this; it is platform-controlled. */
201
217
  isTrusted: Scalars['Boolean']['output'];
202
218
  /** Browser destination (origin/URL) a player is redirected to when they portal into this app from the Overworld. Used to route the player and to validate portal redirect URIs. */
@@ -308,6 +324,26 @@ export type AppBudget = {
308
324
  /** When the budget was last updated (ISO-8601 UTC timestamp). */
309
325
  updatedAt: Scalars['DateTime']['output'];
310
326
  };
327
+ /** An active or revoked app code-admission entry. Admission controls execution only; it never grants source access. */
328
+ export type AppCodeAdmission = {
329
+ __typename?: 'AppCodeAdmission';
330
+ /** UUID of this admission record. */
331
+ admissionId: Scalars['String']['output'];
332
+ /** When the entry was admitted. */
333
+ admittedAt: Scalars['DateTime']['output'];
334
+ /** Numeric user id of the org member who admitted the subject. */
335
+ admittedBy: Scalars['BigInt']['output'];
336
+ /** Numeric app id whose code-admission policy owns this entry. */
337
+ appId: Scalars['BigInt']['output'];
338
+ /** When the entry was revoked; null while active. */
339
+ revokedAt: Maybe<Scalars['DateTime']['output']>;
340
+ /** Whether this entry admits code, an author, or an org. */
341
+ subjectKind: CodeAdmissionSubjectKind;
342
+ /** Stable id of the admitted subject (listing UUID, user id, or org id). */
343
+ subjectRef: Scalars['String']['output'];
344
+ /** Optional P1 version range: exact "3", inclusive "2-5", ">=4", or "<=9". Null admits all versions; invalid expressions fail closed at runtime. */
345
+ versionRange: Maybe<Scalars['String']['output']>;
346
+ };
311
347
  /** Where an app runs: none (draft), shared (the shared game-api), or dedicated (a provisioned environment). */
312
348
  export declare enum AppDeploymentTarget {
313
349
  /** Runs on a dedicated, org-provisioned environment. */
@@ -358,6 +394,20 @@ export type AppMarketplaceFilterInput = {
358
394
  /** Free-text search applied to app name and description (case-insensitive substring match). Omit for no text filter. */
359
395
  query?: InputMaybe<Scalars['String']['input']>;
360
396
  };
397
+ /** Per-player usage row for studio diagnostics (top spenders / quota utilization): one (player, app) aggregate over a window. */
398
+ export type AppPlayerUsageRow = {
399
+ __typename?: 'AppPlayerUsageRow';
400
+ /** Player automation units used. */
401
+ automationUnits: Scalars['BigInt']['output'];
402
+ /** Cents charged in the window. */
403
+ chargedCents: Scalars['BigInt']['output'];
404
+ /** Compile submissions. */
405
+ compileCount: Scalars['Int']['output'];
406
+ /** Player compute units used. */
407
+ computeUnits: Scalars['BigInt']['output'];
408
+ /** The player (grid owner). */
409
+ userId: Scalars['BigInt']['output'];
410
+ };
361
411
  /** The shared-environment runtime gate + current billing-window usage for an app. */
362
412
  export type AppRuntimeState = {
363
413
  __typename?: 'AppRuntimeState';
@@ -567,6 +617,18 @@ export type AppsPage = {
567
617
  /** Pagination metadata: totalCount (total matches ignoring limit/offset) plus the applied limit and offset. */
568
618
  pageInfo: PageInfo;
569
619
  };
620
+ export type AssignGridOwnershipInput = {
621
+ /** App that contains the grid. */
622
+ appId: Scalars['BigInt']['input'];
623
+ /** Required for RENTED tenure; omitted for permanent ownership. */
624
+ expiresAt?: InputMaybe<Scalars['DateTime']['input']>;
625
+ /** Grid to assign. */
626
+ gridId: Scalars['BigInt']['input'];
627
+ /** User id receiving title. P1 only permits user owners. */
628
+ ownerUserId: Scalars['BigInt']['input'];
629
+ /** OWNED (default) or RENTED. */
630
+ tenure?: InputMaybe<GridTenure>;
631
+ };
570
632
  /** Grant runtime permission keys to a group (optionally one role) on a grid (writes the grid_group_grants input table). */
571
633
  export type AssignGroupToGridInput = {
572
634
  /** The app (tenant) that owns the grid. */
@@ -761,7 +823,7 @@ export type CheckoutFilterInput = {
761
823
  /** Only return checkouts created by this user (BigInt as a decimal string). */
762
824
  userId?: InputMaybe<Scalars['BigInt']['input']>;
763
825
  };
764
- /** Why the checkout exists. Drives which side effect runs on webhook completion: ORG_WALLET_TOPUP credits an org_wallet; APP_ACCESS_PURCHASE upserts app_user_access; DONATION inserts donations; PROPERTY_TOKENS credits property_tokens; SHARED_APP_SUBSCRIPTION activates a paid shared-environment app slot. */
826
+ /** Why the checkout exists. Drives which side effect runs on webhook completion: ORG_WALLET_TOPUP credits an org_wallet; PLAYER_WALLET_TOPUP credits the caller's player_wallet; APP_ACCESS_PURCHASE upserts app_user_access; DONATION inserts donations; PROPERTY_TOKENS credits property_tokens; SHARED_APP_SUBSCRIPTION activates a paid shared-environment app slot. */
765
827
  export declare enum CheckoutPurpose {
766
828
  /** Purchase a user's access to an app at a given tier. Requires appId and tierId. Upserts app_user_access on completion. */
767
829
  AppAccessPurchase = "APP_ACCESS_PURCHASE",
@@ -772,6 +834,8 @@ export declare enum CheckoutPurpose {
772
834
  Donation = "DONATION",
773
835
  /** Add funds to an organization wallet. Requires orgId and amountCents, and the caller must hold the org "manage_billing" permission. Credits the org wallet on completion. */
774
836
  OrgWalletTopup = "ORG_WALLET_TOPUP",
837
+ /** Add funds to the caller's own player wallet (player compute P2). Requires amountCents only — any authenticated user may fund their own wallet; no org permission is involved. Credits the player wallet idempotently on completion. */
838
+ PlayerWalletTopup = "PLAYER_WALLET_TOPUP",
775
839
  /**
776
840
  * Deprecated. Historically a purchase of in-world property tokens. No longer purchasable and rejected at runtime by createCheckout.
777
841
  * @deprecated No longer purchasable; use ORG_WALLET_TOPUP or APP_ACCESS_PURCHASE. Retained for historical checkouts.
@@ -1339,6 +1403,39 @@ export type ClientTextPacketInput = {
1339
1403
  /** A unique identifier for the text source (typically the player UUID). Must be exactly 32 bytes when encoded as UTF-8. */
1340
1404
  uuid: Scalars['String']['input'];
1341
1405
  };
1406
+ /** Controls player-code censorship for an app. IMPLICIT_ALLOW admits lawful code by default; ALLOW_LIST requires every code target, including self-authored code, to match an active code/author/org admission. */
1407
+ export declare enum CodeAdmissionMode {
1408
+ AllowList = "ALLOW_LIST",
1409
+ ImplicitAllow = "IMPLICIT_ALLOW"
1410
+ }
1411
+ /** The identity admitted by an app code allow-list entry: one code listing, one author user, or one authoring organization. */
1412
+ export declare enum CodeAdmissionSubjectKind {
1413
+ Author = "AUTHOR",
1414
+ Code = "CODE",
1415
+ Org = "ORG"
1416
+ }
1417
+ /** One entry in the T11 commerce risk queue (studio/operator moderation). */
1418
+ export type CommerceRiskFlag = {
1419
+ __typename?: 'CommerceRiskFlag';
1420
+ /** App the flag belongs to. */
1421
+ appId: Scalars['BigInt']['output'];
1422
+ /** When the flag was raised. */
1423
+ createdAt: Scalars['DateTime']['output'];
1424
+ /** Detail note. */
1425
+ detail: Maybe<Scalars['String']['output']>;
1426
+ /** Flag row id. */
1427
+ flagId: Scalars['String']['output'];
1428
+ /** Flag kind: 'buyer_velocity', 'listing_velocity', 'same_party', 'chargeback', or 'manual'. */
1429
+ kind: Scalars['String']['output'];
1430
+ /** Related order UUID, if any. */
1431
+ orderId: Maybe<Scalars['String']['output']>;
1432
+ /** 'open', 'released', or 'confirmed'. */
1433
+ status: Scalars['String']['output'];
1434
+ /** Subject: 'user' or 'org'. */
1435
+ subjectKind: Scalars['String']['output'];
1436
+ /** Subject user or org id. */
1437
+ subjectRef: Scalars['BigInt']['output'];
1438
+ };
1342
1439
  /** Complete a magic-link sign-in with the emailed token. */
1343
1440
  export type CompleteLoginLinkInput = {
1344
1441
  /** The one-time token from the magic-link URL. */
@@ -1843,6 +1940,30 @@ export type CreateGridInput = {
1843
1940
  /** The opposite corner of the grid box, in chunk coordinates. May equal corner1 for a single-chunk grid. */
1844
1941
  corner2: ChunkCoordinatesInput;
1845
1942
  };
1943
+ export type CreateGridListingInput = {
1944
+ /** App the listing belongs to. */
1945
+ appId: Scalars['BigInt']['input'];
1946
+ /** JSON bounds/placement config (blueprint listings). */
1947
+ blueprintConfigJson?: InputMaybe<Scalars['String']['input']>;
1948
+ /** Player-code keys the sale confers (e.g. write/run server/client). */
1949
+ conferredPermissionKeys?: InputMaybe<Array<Scalars['String']['input']>>;
1950
+ /** Store description. */
1951
+ description?: InputMaybe<Scalars['String']['input']>;
1952
+ /** The concrete grid id being sold (concrete listings). */
1953
+ gridId?: InputMaybe<Scalars['BigInt']['input']>;
1954
+ /** 'blueprint' or 'concrete'. */
1955
+ kind: Scalars['String']['input'];
1956
+ /** Display name. */
1957
+ name: Scalars['String']['input'];
1958
+ /** Price in cents. */
1959
+ priceCents: Scalars['Int']['input'];
1960
+ /** JSON per-grid quota preset bound on purchase. */
1961
+ quotaPresetJson?: InputMaybe<Scalars['String']['input']>;
1962
+ /** Resale policy: 'no_resale' (default), 'resale_free', or 'resale_with_studio_cut'. */
1963
+ resalePolicy?: InputMaybe<Scalars['String']['input']>;
1964
+ /** Studio cut (bps) taken on resales, when resale_with_studio_cut. */
1965
+ studioCutBps?: InputMaybe<Scalars['Int']['input']>;
1966
+ };
1846
1967
  /** Result of createGrid. This is a hybrid result rather than a thrown error: inspect `error` first. When `error` is NO_ERROR the call succeeded and `grid` is populated; otherwise `grid` is null and `error` explains why. */
1847
1968
  export type CreateGridResponse = {
1848
1969
  __typename?: 'CreateGridResponse';
@@ -1886,6 +2007,40 @@ export type CreateOrganizationInput = {
1886
2007
  /** Unique URL slug; lowercase letters, numbers, and dashes only (1-128 characters). */
1887
2008
  slug: Scalars['String']['input'];
1888
2009
  };
2010
+ /** Create a grid-confined player automation. Trigger and action are strict JSON shapes; owner/app/grid selectors cannot be supplied. */
2011
+ export type CreatePlayerAutomationInput = {
2012
+ /** Strict action JSON. Use {"kind":"studio_model_invoke","functionName":"...","selfContainerId":"...","params":{}} or {"kind":"player_compute_invoke","moduleName":"...","exportName":"...","params":{}}. Selectors and caller identity are forbidden. */
2013
+ actionJson: Scalars['String']['input'];
2014
+ /** App containing the owned grid. */
2015
+ appId: Scalars['BigInt']['input'];
2016
+ /** Circuit cooldown in milliseconds. Default 60000; minimum 1. */
2017
+ cooldownMs?: InputMaybe<Scalars['Int']['input']>;
2018
+ /** Optional description. */
2019
+ description?: InputMaybe<Scalars['String']['input']>;
2020
+ /** Consecutive failures before the circuit opens. Default 5; minimum 1. */
2021
+ failureThreshold?: InputMaybe<Scalars['Int']['input']>;
2022
+ /** Grid that confines the automation. */
2023
+ gridId: Scalars['BigInt']['input'];
2024
+ /** Per-automation run limit per rolling minute. Default 60; minimum 1. */
2025
+ maxRunsPerMinute?: InputMaybe<Scalars['Int']['input']>;
2026
+ /** Name unique for the current owner in this grid. */
2027
+ name: Scalars['String']['input'];
2028
+ /** Strict trigger JSON. Schedule: {"kind":"schedule","scheduleKind":"interval","intervalMs":2000} or cron with cronExpr. Event: {"kind":"event","eventKind":"owner_container_changed|grid_actor_changed|grid_voxel_changed|compute_event"}; compute_event may include eventName. */
2029
+ triggerJson: Scalars['String']['input'];
2030
+ };
2031
+ /** Create a flexible player-owned model container inside one grid. The caller must currently own the grid; owner identity cannot be supplied. */
2032
+ export type CreatePlayerModelContainerInput = {
2033
+ /** App containing the owned grid. */
2034
+ appId: Scalars['BigInt']['input'];
2035
+ /** Optional player-facing name, unique within the owner/grid/type tuple. */
2036
+ displayName?: InputMaybe<Scalars['String']['input']>;
2037
+ /** Grid that confines the container. */
2038
+ gridId: Scalars['BigInt']['input'];
2039
+ /** Optional JSON object stored as untyped container state. */
2040
+ stateJson?: InputMaybe<Scalars['String']['input']>;
2041
+ /** Flexible instance kit key. Defaults to 'PlayerData'; this does not author a studio model type. */
2042
+ typeKey?: InputMaybe<Scalars['String']['input']>;
2043
+ };
1889
2044
  /** Input for createPortalAuthorizationCode: the Overworld (identity origin, holding the session token) mints a one-time code the destination game exchanges for an app token. Browser handoff path; pair with a PKCE verifier held by the destination game origin. */
1890
2045
  export type CreatePortalAuthorizationCodeInput = {
1891
2046
  /** Numeric id of the target app the player is portaling into. */
@@ -1962,6 +2117,28 @@ export type DeployComputeVersionInput = {
1962
2117
  /** JSON object mapping relative paths to file contents. Must include Cargo.toml and src/lib.rs; only .rs files under src/ plus Cargo.toml are allowed. Dependencies are restricted to the platform crate allowlist; build.rs and [build-dependencies] are rejected. */
1963
2118
  sourceFilesJson: Scalars['String']['input'];
1964
2119
  };
2120
+ export type DeployPlayerComputeInput = {
2121
+ /** Guest ABI version. P1 supports ABI 0. */
2122
+ abiVersion?: InputMaybe<Scalars['Int']['input']>;
2123
+ /** App containing the owned grid. */
2124
+ appId: Scalars['BigInt']['input'];
2125
+ /** Optional player-facing module description. */
2126
+ description?: InputMaybe<Scalars['String']['input']>;
2127
+ /** Deploy in draft mode (live-coding iteration): the module runs for its author but its spatial egress is suppressed server-side, so no other session in the grid observes its world effects. Omit or false for a normal deploy. */
2128
+ draft?: InputMaybe<Scalars['Boolean']['input']>;
2129
+ /** Owned grid that confines server execution. */
2130
+ gridId: Scalars['BigInt']['input'];
2131
+ /** Lowercase crate-style module name, unique within the grid. */
2132
+ name: Scalars['String']['input'];
2133
+ /** Pinned crowdy-compute-sdk version. Defaults to 0.1.5. */
2134
+ sdkVersion?: InputMaybe<Scalars['String']['input']>;
2135
+ /** JSON object mapping Cargo.toml and src/*.rs relative paths to source. P1 player caps: at most 8 files, 64 KiB/file, 256 KiB total. */
2136
+ sourceFilesJson: Scalars['String']['input'];
2137
+ /** SERVER or CLIENT compile target. */
2138
+ target: PlayerComputeTarget;
2139
+ /** Optional server tick rate in Hz. Omit for invoke/event-only modules or CLIENT artifacts. Clamped by the effective player/app policy. */
2140
+ tickHz?: InputMaybe<Scalars['Float']['input']>;
2141
+ };
1965
2142
  export type DestroyEnvironmentInput = {
1966
2143
  /** Optional idempotency key. Recommended for retries: replaying with the same key and identical input returns the first result instead of re-applying; the same key with different input returns IDEMPOTENCY_CONFLICT. Keys expire after 24h. */
1967
2144
  idempotencyKey?: InputMaybe<Scalars['String']['input']>;
@@ -3007,6 +3184,59 @@ export type Grid = {
3007
3184
  /** Low (minimum x/y/z) corner chunk of the box. */
3008
3185
  low_chunk: ChunkCoordinates;
3009
3186
  };
3187
+ /** How a player claim confers grid ownership in this app (D4): SELF_CLAIM (the claim alone assigns ownership), APPROVAL (claims create requests designated approvers accept), INVITE (only against a standing invite), or MARKETPLACE_ONLY (only a marketplace grid purchase; direct claims refused — the purchase edge ships in P4b). */
3188
+ export declare enum GridClaimPolicy {
3189
+ Approval = "APPROVAL",
3190
+ Invite = "INVITE",
3191
+ MarketplaceOnly = "MARKETPLACE_ONLY",
3192
+ SelfClaim = "SELF_CLAIM"
3193
+ }
3194
+ /** A pending or decided grid claim request (claim policy 'approval'). Approval assigns grid_ownership to the requester. */
3195
+ export type GridClaimRequest = {
3196
+ __typename?: 'GridClaimRequest';
3197
+ /** App of the grid. */
3198
+ appId: Scalars['BigInt']['output'];
3199
+ /** When the request was created. */
3200
+ createdAt: Scalars['DateTime']['output'];
3201
+ /** The grid being claimed. */
3202
+ gridId: Scalars['BigInt']['output'];
3203
+ /** UUID of the request. */
3204
+ requestId: Scalars['String']['output'];
3205
+ /** The requesting player. */
3206
+ requesterUserId: Scalars['BigInt']['output'];
3207
+ /** Request status: 'pending', 'approved', 'denied', or 'cancelled'. */
3208
+ status: Scalars['String']['output'];
3209
+ };
3210
+ /** Result of claimGridOwnership: either ownership was assigned now (SELF_CLAIM / INVITE) or a claim request was created (APPROVAL). MARKETPLACE_ONLY apps refuse direct claims. */
3211
+ export type GridClaimResult = {
3212
+ __typename?: 'GridClaimResult';
3213
+ /** UUID of the created claim request in APPROVAL mode; null otherwise. */
3214
+ claimRequestId: Maybe<Scalars['String']['output']>;
3215
+ /** True when the caller now owns the grid. */
3216
+ ownershipAssigned: Scalars['Boolean']['output'];
3217
+ /** The app policy that was applied. */
3218
+ policy: GridClaimPolicy;
3219
+ };
3220
+ /** A grid-attached client mod (a bundle's client half installed on a grid). Players present in the grid may fetch and run it only after per-player consent to its capability hash — the D2 pattern that lets grid authors run client compute on visitors (e.g. relaying actor updates to the grid's server compute). */
3221
+ export type GridClientMod = {
3222
+ __typename?: 'GridClientMod';
3223
+ /** UUID of the grid attachment. */
3224
+ attachmentId: Scalars['String']['output'];
3225
+ /** Whether the calling player has already consented to this attachment. */
3226
+ callerConsented: Scalars['Boolean']['output'];
3227
+ /** Capability hash a player must consent to before fetching. */
3228
+ capabilityHash: Scalars['String']['output'];
3229
+ /** JSON derived capability summary of the pinned version. */
3230
+ capabilitySummaryJson: Scalars['String']['output'];
3231
+ /** The grid the client mod is attached to. */
3232
+ gridId: Scalars['BigInt']['output'];
3233
+ /** UUID of the listing. */
3234
+ listingId: Scalars['String']['output'];
3235
+ /** Listing display name. */
3236
+ listingName: Scalars['String']['output'];
3237
+ /** UUID of the pinned listing version. */
3238
+ versionId: Scalars['String']['output'];
3239
+ };
3010
3240
  /** A single group/role -> permission-key grant on a grid (one row of the grid_group_grants input table). */
3011
3241
  export type GridGroupGrant = {
3012
3242
  __typename?: 'GridGroupGrant';
@@ -3023,6 +3253,58 @@ export type GridGroupGrant = {
3023
3253
  /** The runtime permission key string granted to the group/role. */
3024
3254
  permissionKey: Scalars['String']['output'];
3025
3255
  };
3256
+ /** A grid listing available in the app store (P4b): a blueprint that stamps a fresh grid per purchase, or a concrete grid. Buying it confers grid_ownership + the listed player-code keys + the quota preset atomically. */
3257
+ export type GridListing = {
3258
+ __typename?: 'GridListing';
3259
+ /** App the listing belongs to. */
3260
+ appId: Scalars['BigInt']['output'];
3261
+ /** Player-code keys conferred on purchase. */
3262
+ conferredPermissionKeys: Array<Scalars['String']['output']>;
3263
+ /** Store description. */
3264
+ description: Scalars['String']['output'];
3265
+ /** UUID of the grid listing. */
3266
+ gridListingId: Scalars['String']['output'];
3267
+ /** 'blueprint' or 'concrete'. */
3268
+ kind: Scalars['String']['output'];
3269
+ /** Display name. */
3270
+ name: Scalars['String']['output'];
3271
+ /** Price in cents. */
3272
+ priceCents: Scalars['Int']['output'];
3273
+ /** Resale policy for the grid. */
3274
+ resalePolicy: Scalars['String']['output'];
3275
+ /** Catalog status: 'active' or 'delisted'. */
3276
+ status: Scalars['String']['output'];
3277
+ /** Studio cut (bps) on resale, when applicable. */
3278
+ studioCutBps: Scalars['Int']['output'];
3279
+ };
3280
+ /** Kind of principal holding grid title. P1 can assign USER owners; GROUP and ORG are schema-reserved for future shared ownership. */
3281
+ export declare enum GridOwnerKind {
3282
+ Group = "GROUP",
3283
+ Org = "ORG",
3284
+ User = "USER"
3285
+ }
3286
+ /** The current first-class ownership record for a grid. Server player code always resolves its execution identity from this record. */
3287
+ export type GridOwnership = {
3288
+ __typename?: 'GridOwnership';
3289
+ /** When this ownership began. */
3290
+ acquiredAt: Scalars['DateTime']['output'];
3291
+ /** Audit origin of this ownership (for example studio_grant, transfer, or marketplace). */
3292
+ acquiredVia: Scalars['String']['output'];
3293
+ /** App that contains the grid. */
3294
+ appId: Scalars['BigInt']['output'];
3295
+ /** Rental expiry; null for permanent ownership. */
3296
+ expiresAt: Maybe<Scalars['DateTime']['output']>;
3297
+ /** Owned grid id. */
3298
+ gridId: Scalars['BigInt']['output'];
3299
+ /** UUID of the ownership history row. */
3300
+ gridOwnershipId: Scalars['String']['output'];
3301
+ /** Kind of current owner. P1 supports USER. */
3302
+ ownerKind: GridOwnerKind;
3303
+ /** Numeric user/group/org id selected by ownerKind. */
3304
+ ownerRef: Scalars['BigInt']['output'];
3305
+ /** Permanent ownership or an expiring rental. */
3306
+ tenure: GridTenure;
3307
+ };
3026
3308
  /** The permission-key whitelist configured for a grid (the grid_permission_limits input table). */
3027
3309
  export type GridPermissionLimits = {
3028
3310
  __typename?: 'GridPermissionLimits';
@@ -3033,6 +3315,19 @@ export type GridPermissionLimits = {
3033
3315
  /** The permission keys this grid is limited to. Empty means no limit (every active grid permission is allowed). */
3034
3316
  permissionKeys: Array<Scalars['String']['output']>;
3035
3317
  };
3318
+ /** Result of purchasing a grid listing: the owned grid the buyer now holds. */
3319
+ export type GridPurchaseResult = {
3320
+ __typename?: 'GridPurchaseResult';
3321
+ /** The grid the buyer now owns. */
3322
+ gridId: Scalars['BigInt']['output'];
3323
+ /** True when ownership was assigned. */
3324
+ ownershipAssigned: Scalars['Boolean']['output'];
3325
+ };
3326
+ /** Whether the current title is permanent ownership or an expiring rental. */
3327
+ export declare enum GridTenure {
3328
+ Owned = "OWNED",
3329
+ Rented = "RENTED"
3330
+ }
3036
3331
  /** A user's effective (materialized) runtime permissions on one grid: the flattened union of direct + group grants, with expired grants excluded, that Buddy enforces. */
3037
3332
  export type GridUserPermissions = {
3038
3333
  __typename?: 'GridUserPermissions';
@@ -3219,20 +3514,32 @@ export type MintAppTokenInput = {
3219
3514
  };
3220
3515
  export type Mutation = {
3221
3516
  __typename?: 'Mutation';
3517
+ /** Acquire a free listing: writes the entitlement row (no payment edge exists in P4a — paid modes are P4b). Idempotent per (listing, caller). Allowed in any admission mode; in allow_list apps an unadmitted acquisition holds until the listing/author/org is admitted, at which point installPlayerCode proceeds. */
3518
+ acquirePlayerCode: PlayerCodeAcquisition;
3222
3519
  /** Liveness heartbeat for the authenticated user's actors in an app. Refreshes actors.updated_at for every actor row the user owns so the user stays host-eligible, then returns the freshly-elected host (same shape as the gameHost query) so a client can fold its poll and heartbeat into one round-trip. Call on an interval shorter than HOST_ACTOR_FRESHNESS_SECONDS. Only refreshes rows that already exist (created by Buddy on chunk entry); returns null when no fresh actors exist for the app. */
3223
3520
  actorHeartbeat: Maybe<GameHost>;
3224
3521
  /** Add a user to a channel, or approve their pending join request (upsert to active). Requires the 'manage_members' channel permission (app admins bypass). Auto-assigns the default role if configured and notifies Buddy with the member's effective send permission. */
3225
3522
  addChannelMember: GroupMember;
3226
3523
  /** Add a user to a team, or approve their pending join request (upsert to active). Requires the 'manage_members' team permission (app admins bypass). Auto-assigns the team's default role if configured. */
3227
3524
  addTeamMember: GroupMember;
3525
+ /** Admit one player-code listing, author, or authoring org to an app's strict allow list. Requires 'manage_compute'. Idempotency is explicit: an identical active entry returns a conflict instead of silently creating duplicates. SIDE EFFECTS: audit row + replica sync. */
3526
+ admitAppCode: AppCodeAdmission;
3228
3527
  /** Soft-delete an access tier by setting its status to 'archived' (the row is retained, NOT hard-deleted) and notifies the game API. Requires the 'manage_access_tiers' permission on the app that owns the tier; super admins bypass. Existing user grants on this tier are NOT automatically revoked. Throws if the tier is not found. */
3229
3528
  archiveAccessTier: AppAccessTier;
3230
3529
  /** Soft-delete an app by setting status=ARCHIVED. The row is retained (NOT hard-deleted) and is excluded from the public marketplace. REVERSIBLE: call updateApp to set status back to DRAFT or LIVE. Requires the 'manage_apps' permission on the app; super admins bypass. Throws if the app id does not exist. */
3231
3530
  archiveApp: App;
3531
+ /** Assign first-class title for an unowned grid to one user. P1 studio/bootstrap path; marketplace acquisition supersedes it later. Requires app-admin ('manage_apps'). Assigns title only: permissions must be granted explicitly. */
3532
+ assignGridOwnership: GridOwnership;
3232
3533
  /** Grant runtime permission keys to a group (optionally scoped to a single group role) on a grid by writing the `grid_group_grants` input table, then recompute the materialized effective ACL so every affected member gains the keys. Requires app-admin ('manage_apps'). Returns the grid's current group grants for the group. Use `grantGridPermissions` for per-user grants instead. */
3233
3534
  assignGroupToGrid: Array<GridGroupGrant>;
3234
3535
  /** Record the user's consent for an (untrusted) app to receive app-scoped tokens via the portal. Called from the Overworld consent screen before createPortalAuthorizationCode. Idempotent. Requires a SESSION token. */
3235
3536
  authorizeApp: AppAuthorizationGrant;
3537
+ /** Begin Stripe Connect Express onboarding for an ORG's payout account (org-owned listings, DN-9). Requires 'manage_billing' in the org. */
3538
+ beginOrgSellerOnboarding: SellerOnboardingLink;
3539
+ /** Begin vaulting a card on the caller's player wallet (P4b): returns a Stripe SetupIntent client secret + publishable key for the browser to confirm. On success the card is saved for wallet auto-recharge and rent auto-renew. Closes the P2 gap where players had no card-setup path. */
3540
+ beginPlayerCardSetup: PlayerCardSetup;
3541
+ /** Begin Stripe Connect Express seller onboarding for the calling player (personal listings). Returns the hosted onboarding URL to finish KYC, or an unavailable reason in unsupported regions. Required before pricing a listing above free. */
3542
+ beginSellerOnboarding: SellerOnboardingLink;
3236
3543
  /** DESTRUCTIVE. Cancels an app's paid shared-environment subscription. The app loses its paid shared slot (typically at currentPeriodEnd) and may be denied runtime once the period lapses unless a free slot covers it. Returns the updated subscription. Requires the 'manage_billing' permission on the app's org. */
3237
3544
  cancelSharedSubscription: AppSharedSubscription;
3238
3545
  /** Captures an approved PayPal order after the hosted checkout redirects back, completes the checkout (wallet credit / access grant), and returns the updated Checkout. PayPal webhooks remain a backup for idempotent reconciliation if they arrive later. Requires an authenticated user who owns the checkout. */
@@ -3241,6 +3548,8 @@ export type Mutation = {
3241
3548
  changePassword: Scalars['Boolean']['output'];
3242
3549
  /** Self-service: the authenticated caller claims access to an app via its free, open-by-default tier. Requires authentication only (no org membership needed). ENTITLEMENT CHANGE: grants the free default tier as a 'system' grant and notifies the game API. Idempotent: returns the existing row if already granted, and never overrides a prior revoke. Errors if the app has no free default tier or is archived. */
3243
3550
  claimFreeAppAccess: AppUserAccess;
3551
+ /** Claim grid ownership under the app's claim policy (D4, server-authorized — no client manage_apps involved). SELF_CLAIM assigns ownership immediately; APPROVAL creates a pending request for designated approvers; INVITE requires a standing invite (consumed on use); MARKETPLACE_ONLY refuses (ownership arrives only via grid purchase, P4b). The grid must exist and have no current owner; game rules gate who may attempt a claim. */
3552
+ claimGridOwnership: GridClaimResult;
3244
3553
  /** Complete a magic-link sign-in with the emailed token; returns a session AuthResponse. Public (the token authorizes the call); throws if invalid/expired/used. */
3245
3554
  completeLoginLink: AuthResponse;
3246
3555
  /** Delete a compute module and (via cascade) its versions, triggers, and lease. Run history is retained for auditing. Returns true when a module was deleted. Requires the org 'manage_compute' permission. */
@@ -3265,6 +3574,8 @@ export type Mutation = {
3265
3574
  confirmEmail: Scalars['Boolean']['output'];
3266
3575
  /** Open the UDP proxy session for this game token (idempotent: returns the existing status if one is already open). Binds a socket and selects the game server with the fewest clients on first open. Optional: send mutations and udpNotifications also create a session lazily when none exists. To force a fresh socket, call disconnectUdpProxy first. */
3267
3576
  connectUdpProxy: UdpProxyConnectionStatus;
3577
+ /** Consent to run a grid-attached client mod (D2): acknowledges the attachment's exact capability hash. A newer version with a widened summary carries a different hash, so stale consents fail closed — re-consent is always explicit. Consent is per player per attachment. */
3578
+ consentGridClientMod: Scalars['Boolean']['output'];
3268
3579
  /** Operator only (is_operator). Patches the platform compute ceilings: omitted fields stay unchanged, an explicit null clears that override (game-api falls back to env/default), a value (> 0) sets it. SIDE EFFECTS: fans a replica notify out to every game-api so the new ceilings clamp computeSetPolicy within ~30 seconds without a restart, and writes an audit entry. Lowering a ceiling does not shrink already-stored per-app policies; it rejects future computeSetPolicy values above the new ceiling. Returns the updated ceilings row. */
3269
3580
  cpSetComputePlatformCeilings: CpComputePlatformCeilings;
3270
3581
  /** Create a new access tier (a free/paid bundle of runtime permissions) for an app. Requires the 'manage_access_tiers' permission on the app (input.appId); super admins bypass. SIDE EFFECTS: validates the tier's permission keys against runtimePermissions and notifies the game API so Buddy sees the new tier. Does NOT grant the tier to any user. */
@@ -3285,6 +3596,8 @@ export type Mutation = {
3285
3596
  createEnvironment: CksEnvironmentDetail;
3286
3597
  /** Create a grid: a named 3D box of chunks that runtime/world (voxel) permissions are scoped to. The box must fit within one of the app's grid assignments (its buildable regions); it MAY be nested inside a broader containing grid such as the open-by-default world grid, but must not partially overlap a peer grid. Requires app-admin ('manage_apps'). Returns a hybrid response — on success `grid` is populated and `error` is NO_ERROR; on failure `grid` is null and `error` is a UDP-style error code (e.g. NO_MATCHING_GRID_ASSIGNMENT, GRID_OUTSIDE_ASSIGNMENT, GRID_OVERLAPS_EXISTING, GRID_ALREADY_EXISTS). */
3287
3598
  createGrid: CreateGridResponse;
3599
+ /** Create a studio grid listing (07 §1.1): a blueprint that stamps a fresh grid per sale, or a concrete grid. Requires 'manage_apps'. Purchase (in-game) confers grid_ownership + the listed keys + quota preset atomically. */
3600
+ createGridListing: GridListing;
3288
3601
  /** Creates a custom role in an organization with a name, optional description, and permission keys. Requires the 'manage_members' permission on the org (super admins bypass). */
3289
3602
  createOrgRole: OrgRole;
3290
3603
  /** Mints a new org API token and returns the plaintext token exactly once - save it, since subsequent queries only show metadata. Requires the 'manage_tokens' permission on the target org (super admins bypass). */
@@ -3297,6 +3610,10 @@ export type Mutation = {
3297
3610
  createTeam: Group;
3298
3611
  /** Create a custom (non-system) team role granting the given team permission keys. Requires the 'manage_roles' team permission (app admins bypass). Permission keys must be valid team permission keys (group_permission_defs). */
3299
3612
  createTeamRole: GroupRole;
3613
+ /** Release (settle held order + unfreeze payout) or confirm (uphold) a T11 risk flag. Requires 'manage_compute'. */
3614
+ decideCommerceRiskFlag: Scalars['Boolean']['output'];
3615
+ /** Approve or deny a pending grid claim request (claim policy APPROVAL). Callable by the app's designated approver users or studio staff holding manage_compute. Approval assigns grid_ownership to the requester. */
3616
+ decideGridClaim: GridClaimRequest;
3300
3617
  /** DESTRUCTIVE: permanently deletes the actor identified by `uuid` and returns a copy of the now-deleted row. OWNER-EXCLUSIVE: only the owner may delete (throws Unauthorized otherwise). Requires a valid game token. `uuid` is the 32-character ASCII actor id. */
3301
3618
  deleteActor: Actor;
3302
3619
  /** DESTRUCTIVE: permanently deletes the avatar and returns a copy of the now-deleted row. OWNER-EXCLUSIVE: only the owner may delete (throws Unauthorized otherwise). Requires a valid game token. */
@@ -3313,6 +3630,8 @@ export type Mutation = {
3313
3630
  deleteMyAccount: Scalars['Boolean']['output'];
3314
3631
  /** Deletes an organization role. Requires the 'manage_members' permission on the role's org (super admins bypass). DESTRUCTIVE: removes the role and unassigns it from all members. Returns false if the role does not exist. */
3315
3632
  deleteOrgRole: Scalars['Boolean']['output'];
3633
+ /** Delete a player-compute policy row; covered players fall back to the next most general scope. Returns false when no matching row exists. Requires 'manage_compute'. */
3634
+ deletePlayerWasmPolicy: Scalars['Boolean']['output'];
3316
3635
  /** Permanently deletes a quota enforcement rule by id. Returns true if a rule was removed, or false if no quota with that id exists. Destructive and not reversible: once removed, the metric falls back to the next-most-specific rule or the free-tier default. Requires the 'manage_quotas' permission on the same scope (app or org) the quota belongs to, or super admin for global quotas. */
3317
3636
  deleteQuota: Scalars['Boolean']['output'];
3318
3637
  /** Delete a team. Requires the 'manage_group' team permission (app admins bypass). DESTRUCTIVE: cascades to members, roles, and any grid grants the team conferred, and recomputes the effective grid ACL for affected grids. Returns true on success. */
@@ -3393,8 +3712,12 @@ export type Mutation = {
3393
3712
  grantMyAppAccess: AppUserAccess;
3394
3713
  /** Operator only (is_operator). Ingests a release manifest into cks_environment_versions, making the version deployable, and writes an audit entry. Use force to overwrite an existing row. */
3395
3714
  ingestEnvironmentVersion: CpEnvironmentVersionRow;
3715
+ /** Install an acquired listing after consenting to its capability summary (echo the version's capabilityHash as consentCapabilityHash — a mismatch fails closed). Server halves register through the same P1 registry as instances in a grid the caller OWNS (requires run_server_code) and run as the grid owner on their quota/wallet — never as the author. Bundled client halves attach to the grid for per-visitor consent (D2); omitting gridId makes a personal client-only install. Fail-closed on entitlement, admission, consent, ownership, and run keys. */
3716
+ installPlayerCode: PlayerCodeInstall;
3396
3717
  /** Adds a user to an organization as a member. Requires the 'manage_members' permission on the target org (super admins bypass). */
3397
3718
  inviteOrgMember: OrgMember;
3719
+ /** Issue a standing grid claim invite (claim policy INVITE). Callable by designated approvers or studio staff holding manage_compute; the invitee then calls claimGridOwnership to take ownership. */
3720
+ issueGridClaimInvite: Scalars['Boolean']['output'];
3398
3721
  /** Join a channel as the caller (subscribe to it). Honors the channel membership policy: open -> active immediately, request -> pending (a manager must approve), invite/admin -> rejected. On becoming active, Buddy is notified with the caller's effective send permission so routing starts. */
3399
3722
  joinChannel: GroupMember;
3400
3723
  /** Join a team as the caller. Honors the team membership policy: open -> active immediately, request -> pending (a manager must approve), invite/admin -> rejected. Banned users are rejected. No special permission required. */
@@ -3415,10 +3738,38 @@ export type Mutation = {
3415
3738
  logoutAllDevices: Scalars['Boolean']['output'];
3416
3739
  /** Mint a short-lived, app-scoped gameplay token for the calling user (native/direct path; no browser redirect). Requires an identity SESSION token (app tokens cannot mint). Free/open apps auto-grant access; paid apps require an existing entitlement (else FORBIDDEN). Side effect: may create an app_user_access row on the app's free default tier. */
3417
3740
  mintAppToken: AppTokenResponse;
3741
+ /** Create a disabled player automation confined to the caller and one currently owned grid. Strict trigger/action validation rejects selectors, supplied identities, and app-wide shapes. */
3742
+ playerAutomationCreate: PlayerAutomation;
3743
+ /** Delete one caller-owned player automation from the specified currently owned grid. Destructive; recorded run rows remain for audit. */
3744
+ playerAutomationDelete: Scalars['Boolean']['output'];
3745
+ /** Enable or disable one caller-owned player automation. Enabling requires effective run_server_code and, in strict mode, author admission. Interval/cron triggers compute the first due time; the P1 dispatcher executes scheduled studio-model actions while event delivery and player-compute actions remain typed pending paths. */
3746
+ playerAutomationSetEnabled: PlayerAutomation;
3747
+ /** Delete a self-authored player module and its source versions. Only the code author may delete it, and they must still own the target grid. Returns false when no matching module exists. */
3748
+ playerComputeDelete: Scalars['Boolean']['output'];
3749
+ /** Deploy player-authored Rust into a grid the caller currently owns. Requires the target's write permission at both app-tier and grid ACL layers. One call creates/updates the module and publishes an immutable pending version; the shared compiler builds it asynchronously. Authoring is never admission-gated, but only the original author may replace closed source. */
3750
+ playerComputeDeploy: PlayerWasmModuleVersion;
3751
+ /** Synchronously invoke a server player-module export as the current grid owner. Requires the module to be enabled, compiled, admitted, and covered by run_server_code at app and grid scope. The runtime payload carries callerUserId/gridId; author identity never participates. */
3752
+ playerComputeInvoke: PlayerComputeInvokeResult;
3753
+ /** Enable or disable a player module. Enabling requires current grid ownership, the target's run permission, a successful compile, and admission when the app uses strict ALLOW_LIST mode. Write permission is not sufficient to run code. */
3754
+ playerComputeSetEnabled: PlayerWasmModule;
3755
+ /** Throw or release a player-compute kill switch at player, grid, app, or listing scope (the 03 §7 kill ladder). Throwing a switch stops the covered modules on the next scheduler pass; quota state is retained, and releasing resumes normally. LISTING scope (P4a) disables every install of a marketplace listing fleet-wide — pass the listing UUID in listingRef; pair it with the management-side catalog kill to also stop new acquisitions. Module-level disable is playerComputeSetEnabled. Requires the org 'manage_compute' permission. */
3756
+ playerComputeSetSwitch: Scalars['Boolean']['output'];
3757
+ /** Create a flexible player-model instance in a currently owned grid. The server forces ownerUserId to the caller; this cannot author studio types or app-wide rows. */
3758
+ playerModelCreateContainer: PlayerModelContainer;
3759
+ /** Delete one caller-owned player-model container and its properties from the specified currently owned grid. Destructive; foreign or absent IDs return NOT_FOUND. */
3760
+ playerModelDeleteContainer: Scalars['Boolean']['output'];
3761
+ /** Upsert one arbitrary JSON property on a caller-owned player-model container. Requires current ownership of the specified grid. */
3762
+ playerModelSetProperty: PlayerModelContainer;
3418
3763
  /** Publishes an app to the shared game-api environment. Free under the org's app-slot quota (result.free = true); beyond the quota, publish still succeeds and hourly usage is debited from the org wallet. Requires the 'manage_apps' permission on the app's org. Blocked when SHARED_GAME_API_URL is not configured. */
3419
3764
  publishAppToShared: PublishAppResult;
3420
3765
  /** Operator only (is_operator). Cuts a new environment release from a cks-game-api git tag: ingests it as available and commits the manifest to the git ref. SIDE EFFECT: makes the version the new redeploy target and writes to GitHub. Use force to overwrite. Writes an audit entry. */
3421
3766
  publishEnvironmentReleaseFromGameApiTag: CpPublishEnvironmentReleaseResult;
3767
+ /** Create a marketplace listing (free mode) for code the caller authors — personally, or org-owned via ownerOrgId (DN-9; requires manage_compute in that org). SIDE EFFECTS: the catalog row is written on cks-management-api with an ownership audit entry and replica-synced back. Publishing never uploads source; versions snapshot artifact hashes only. */
3768
+ publishPlayerCode: PlayerCodeListing;
3769
+ /** Publish an immutable version under a listing from the caller's successfully compiled module versions (server and/or client — both makes a bundle). Snapshots ARTIFACT HASHES and the DERIVED capability summary; source never leaves the author's rows. Open-sourcing a version is irreversible for that version. Existing installs keep their pinned versions; a widened capability summary forces fresh consent on any new install. */
3770
+ publishPlayerCodeVersion: PlayerCodeListingVersion;
3771
+ /** Buy a grid listing with real money (P4b). Debits the player wallet management-side (platform/org split), then assigns grid_ownership + the listed player-code keys atomically; a failure to apply ownership refunds the charge. For blueprint listings, targetChunk picks where the fresh grid is stamped. This is the ownership path for marketplace_only-policy apps. */
3772
+ purchaseGrid: GridPurchaseResult;
3422
3773
  /** DESTRUCTIVE. Permanently deletes a destroyed environment's record and all cascaded metadata from the platform; returns true on success. The environment must already be in status 'destroyed' (run destroyEnvironment first) and must not have deletion protection enabled, otherwise this fails. Does not touch cloud resources. Requires the 'manage_environments' org permission. */
3423
3774
  purgeEnvironment: Scalars['Boolean']['output'];
3424
3775
  /** Operator only (is_operator). Creates or overwrites an environment-delivered secret (injected into the tenant runtime) and writes an audit entry. SENSITIVE: plaintext is write-only and never returned. */
@@ -3429,6 +3780,8 @@ export type Mutation = {
3429
3780
  redeployEnvironment: CksEnvironmentChangeOrder;
3430
3781
  /** Rotate the calling app token for a fresh one (same app, extended TTL) and revoke the old. Call before the current token expires to keep playing without bouncing back through the Overworld. Allowed for app-scoped tokens; re-checks entitlement. */
3431
3782
  refreshAppToken: AppTokenResponse;
3783
+ /** Request a refund of a paid acquisition (P4b). Allowed only within the refund window and before meaningful use (first install/fetch voids it), capped per buyer; a successful refund credits the wallet, reverses the ledger split, claws back the seller balance, revokes the acquisition, and drains installs. Returns cents refunded. */
3784
+ refundPlayerCodeAcquisition: Scalars['Int']['output'];
3432
3785
  /** Registers a new email + password account: creates the (initially unconfirmed) account, emails a confirmation link, and returns an AuthResponse with a session `token` for immediate use (send as `Authorization: Bearer <token>`). If an account already exists for the email (e.g. created via magic link/social), the password is attached pending email confirmation and no session is returned (throws CONFLICT). Public. */
3433
3786
  register: AuthResponse;
3434
3787
  /** Remove a member from a channel. Requires the 'manage_members' channel permission, except that any member may remove themselves. Notifies Buddy to stop routing to the removed member. Returns true if a membership was removed. */
@@ -3439,10 +3792,14 @@ export type Mutation = {
3439
3792
  removeSharedPaymentMethod: Scalars['Boolean']['output'];
3440
3793
  /** Remove a member from a team. Requires the 'manage_members' team permission, except that any member may remove themselves. DESTRUCTIVE: drops the membership and its roles. Returns true if a membership was removed. */
3441
3794
  removeTeamMember: Scalars['Boolean']['output'];
3795
+ /** Renew a RENT acquisition (or extend a TIME_LIMITED window): a wallet charge on the same acquisition that pushes its expiry out. A drained install resumes on the next scheduler pass without re-consent. Paid modes only (P4b). */
3796
+ renewPlayerCodeAcquisition: PlayerCodeAcquisition;
3442
3797
  /** Passwordless: email a one-time magic sign-in link to the address (creates the account on first sign-in). Always reports sent=true (no account enumeration). Public. */
3443
3798
  requestLoginLink: RequestLoginLinkResult;
3444
3799
  /** Starts the password-reset flow by emailing a reset link to the address. Always returns true regardless of whether the email exists (prevents account enumeration). The reset link is also the ownership-proven way an existing passwordless account adds a password. Public. */
3445
3800
  requestPasswordReset: Scalars['Boolean']['output'];
3801
+ /** Pay out the calling player's payable balance to their Connect account (D6 minimum, 7-day delay, reserves enforced). Returns cents paid. */
3802
+ requestSellerPayout: Scalars['Int']['output'];
3446
3803
  /** Request to join a request-only channel (creates a pending membership a manager can approve via addChannelMember). Behaves identically to joinChannel; named for request-policy UIs. */
3447
3804
  requestToJoinChannel: GroupMember;
3448
3805
  /** Request to join a request-only team (creates a pending membership a manager can approve via addTeamMember). Behaves identically to joinTeam; named for request-policy UIs. */
@@ -3459,6 +3816,8 @@ export type Mutation = {
3459
3816
  revokeAppAccess: AppUserAccess;
3460
3817
  /** Revoke a previously-granted app authorization and immediately revoke the user's live app tokens for it. Requires a SESSION token. */
3461
3818
  revokeAppAuthorization: Scalars['Boolean']['output'];
3819
+ /** Revoke an active player-code admission. Requires 'manage_compute'. SIDE EFFECTS: audit row + replica sync; game-api drains affected server modules and blocks client artifact fetches on the next admission refresh. */
3820
+ revokeAppCodeAdmission: AppCodeAdmission;
3462
3821
  /** Revoke a user's direct grants on a grid (deletes from the `grid_user_direct_grants` input table) and recompute their materialized effective ACL. Omit `permissionKeys` to remove ALL of the user's direct grants on the grid; pass a subset to remove only those keys. Does not affect permissions the user receives via group grants. Requires app-admin ('manage_apps'). DESTRUCTIVE for the targeted grants. Returns the user's remaining effective permission keys on the grid. */
3463
3822
  revokeGridPermissions: GridUserPermissions;
3464
3823
  /** Revoke group/role grants on a grid (deletes from the `grid_group_grants` input table) and recompute the materialized effective ACL. Omit `permissionKeys` to revoke ALL of the group/role's grants on the grid; pass a subset to revoke only those keys. Requires app-admin ('manage_apps'). DESTRUCTIVE: removes the granted permissions from every affected member. Returns the group's remaining grants on the grid. */
@@ -3485,6 +3844,12 @@ export type Mutation = {
3485
3844
  setAppBudget: AppBudget;
3486
3845
  /** Register/update an app's portal client settings (redirect_uris, client_type, launch_url). Requires manage_apps on the app and a SESSION token. */
3487
3846
  setAppClientSettings: PortalConsentState;
3847
+ /** Set an app's player-code censorship mode. Requires 'manage_compute'. SIDE EFFECTS: writes an immutable audit row and replica-syncs the mode to game-api. Switching to ALLOW_LIST is strict: unadmitted code (including self-authored code) drains at the runtime activation gate; deploy/compile remain allowed. */
3848
+ setAppCodeAdmissionMode: CodeAdmissionMode;
3849
+ /** Set how a player claim confers grid ownership in this app (D4): SELF_CLAIM, APPROVAL (optionally with a designated approver list), INVITE, or MARKETPLACE_ONLY. Requires 'manage_apps'. SIDE EFFECTS: replica-syncs to game-api, where claimGridOwnership enforces the policy. Changing policy never revokes existing grid_ownership rows. */
3850
+ setAppGridClaimPolicy: GridClaimPolicy;
3851
+ /** Set the app's marketplace org revenue share in basis points (OQ-3; taken from the post-platform remainder). Requires 'manage_billing'. BWF uses 0. */
3852
+ setAppMarketplaceOrgShare: Scalars['Int']['output'];
3488
3853
  /** Reserve sustained egress throughput for a shared app (bypasses the ~1 MB/s free-tier rate limit). Billed at $3/MB/s/month from the org wallet; upgrades are prorated for the current month. Requires 'manage_billing' on the app's org. */
3489
3854
  setAppReservedThroughput: SetAppReservedThroughputResult;
3490
3855
  /** Sets per-app hourly/daily spend caps (in cents) and returns the re-evaluated runtime state. Pass null for a limit to clear that cap. Exceeding a cap denies the app's runtime (runtimeDenialReason = spend_cap). Requires the 'manage_billing' permission on the app's org. */
@@ -3503,10 +3868,22 @@ export type Mutation = {
3503
3868
  setEnvironmentDeletionProtection: Scalars['Boolean']['output'];
3504
3869
  /** Replace the whitelist of permission keys allowed on a grid (writes the `grid_permission_limits` input table), then recompute the grid's materialized effective ACL so any keys no longer on the whitelist are dropped for all users. Pass an empty array to remove all limits. Requires app-admin ('manage_apps'). DESTRUCTIVE: narrowing the whitelist can strip effective permissions from existing users on the grid. */
3505
3870
  setGridPermissionLimits: GridPermissionLimits;
3871
+ /** Set (author-only) the acquisition mode and pricing for a code listing. Non-free modes require completed seller onboarding. Curation can reject a listing but never reprice it (07 §1.2). */
3872
+ setListingPricing: Scalars['Boolean']['output'];
3506
3873
  /** Super-admin only. Flip users.is_operator to grant or revoke control-plane / operator access. */
3507
3874
  setOperator: User;
3508
3875
  /** Super admin only. Used to freeze/unfreeze orgs platform-wide. SIDE EFFECT: sets organizations.status, which gates the org's platform access. */
3509
3876
  setOrgStatus: Organization;
3877
+ /** Configure the caller's player-wallet auto-recharge: enable/disable, per-period ceiling, recharge amount, and low-water threshold. Enabling requires a vaulted payment method. */
3878
+ setPlayerAutoBilling: PlayerAutoBilling;
3879
+ /** Change a listing's catalog status. DELISTED/ACTIVE are owner actions (existing installs keep their pinned versions; delisting only stops new acquisitions). KILLED requires 'manage_compute' on the app (studio/operator) and is the catalog half of the listing kill — pair it with the game-api listing-scope kill switch (playerComputeSetSwitch) to disable running installs fleet-wide. SIDE EFFECTS: audit row + replica sync. */
3880
+ setPlayerCodeListingStatus: PlayerCodeListing;
3881
+ /** Set the app's player rate-card markup (0..10000 basis points on the platform base price). Markup income accrues per charge to the org's income line and is paid out via the P4b payout ledger. Requires 'manage_billing'. */
3882
+ setPlayerRateMarkup: Scalars['Int']['output'];
3883
+ /** Set (or clear, by passing both limits null) one of the caller's self-set spend caps: a global or per-app daily/monthly ceiling in cents. Hitting a cap pauses that player's mods with PLAYER_SPEND_CAP until the window rolls — play is untouched. Changes replica-sync to the game runtime. */
3884
+ setPlayerSpendCap: Array<PlayerSpendCap>;
3885
+ /** Create or update a player-compute policy row at app_default, tier, grid, or user scope. Omitted knobs keep their current value; unitsPerHour/unitsPerDay set the PLAYER_QUOTA_EXHAUSTED budgets (null = uncapped). Every knob is additionally clamped by the app's studio compute policy at runtime, so a player policy can only tighten. Requires 'manage_compute'. */
3886
+ setPlayerWasmPolicy: PlayerWasmPolicy;
3510
3887
  /** Creates or updates a quota enforcement rule (idempotent upsert keyed by org/app/tier + metric + period) and returns it. Scope is inferred from the input ids: an app-scoped rule requires the 'manage_quotas' app permission, an org-scoped rule requires the 'manage_quotas' org permission, and a global rule (no org/app/tier) requires super admin. Changes which limit `effectiveQuota` resolves for the metric; does not retroactively alter past usage. */
3511
3888
  setQuota: ServiceQuota;
3512
3889
  /** ADMIN PRIVILEGE CHANGE: grants or revokes platform super-admin on the target user, changing their privileges across the whole platform. Requires a super-admin bearer game token (and the management API enabled). NOTE: in cks-game-api super-admin checks always fail and the users table is management-owned — perform this via cks-management-api. */
@@ -3521,8 +3898,18 @@ export type Mutation = {
3521
3898
  socialLoginComplete: AuthResponse;
3522
3899
  /** Begin a federated (social) sign-in: returns an authorizeUrl to redirect the user to and an opaque state to round-trip back to socialLoginComplete. Public. */
3523
3900
  socialLoginStart: SocialLoginStart;
3901
+ /** Earn-to-mod: convert payable seller balance into the player wallet without a provider round-trip (07 §4.1). Returns cents credited. */
3902
+ spendPayoutBalanceToWallet: Scalars['Int']['output'];
3524
3903
  /** Checks whether the authenticated user is allowed to teleport an actor to a destination within an app and returns the authorization result. This is an authorization check only — it does NOT itself move the actor; the UDP runtime performs the actual movement. Requires a valid bearer game token plus the app-level "teleport" runtime permission. Returns success=false with errorCode INVALID_APP_ID (non-positive appId), UNAUTHORIZED (reserved sentinel destination -6,-6,-6 or missing permission), or success=true / NO_ERROR when allowed. */
3525
3904
  teleportRequest: TeleportResponse;
3905
+ /** Top up a COST_LIMITED acquisition's compute-unit budget: a wallet charge that adds the listing's unit budget to the license. Exhausted installs resume once the budget clears their consumed units. Paid modes only (P4b). */
3906
+ topUpPlayerCodeAcquisition: PlayerCodeAcquisition;
3907
+ /** Transfer grid title to another user. The current user owner or an app admin may transfer. DESTRUCTIVE/SECURITY-SENSITIVE: atomically disables every player module on the grid pending new-owner consent, wipes module state, removes the old owner direct grid grants, and closes the old title row. The new owner receives no implicit permissions. */
3908
+ transferGridOwnership: GridOwnership;
3909
+ /** Transfer a listing between personal and org ownership (DN-9). The caller must be the current owner (user-owned) or hold manage_compute in the owning org; transfers to an org require manage_compute in the receiving org. SIDE EFFECTS: append-only ownership audit row + replica sync to game-api. Ownership moves listing control and source-access rights; from P4b it also moves proceeds. */
3910
+ transferPlayerCodeListing: PlayerCodeListing;
3911
+ /** Uninstall: removes the registered instances, grid client attachments, and fetch rights. The acquisition row is RETAINED for audit; reinstalling later needs no new acquisition. Returns false when no matching active install exists. */
3912
+ uninstallPlayerCode: Scalars['Boolean']['output'];
3526
3913
  /** Unlink a federated identity from the signed-in account by identityId. Refuses to remove your last remaining sign-in method. Requires a session token. */
3527
3914
  unlinkIdentity: Scalars['Boolean']['output'];
3528
3915
  /** Update an existing access tier (name, ordering, pricing, permissions, etc.); only fields present in the input are changed. Requires the 'manage_access_tiers' permission on the app that owns the tier (resolved from tierId); super admins bypass. SIDE EFFECTS: re-syncs the tier's permissions to the game API. Throws if the tier is not found or the caller lacks permission. */
@@ -3576,6 +3963,10 @@ export type Mutation = {
3576
3963
  /** Operator only (is_operator). Yanks (withdraws) an environment version so it can no longer be deployed; existing environments are unaffected. Writes an audit entry. Returns true on success. */
3577
3964
  yankEnvironmentVersion: Scalars['Boolean']['output'];
3578
3965
  };
3966
+ export type MutationAcquirePlayerCodeArgs = {
3967
+ appId: Scalars['BigInt']['input'];
3968
+ listingId: Scalars['String']['input'];
3969
+ };
3579
3970
  export type MutationActorHeartbeatArgs = {
3580
3971
  appId: Scalars['BigInt']['input'];
3581
3972
  };
@@ -3587,6 +3978,9 @@ export type MutationAddTeamMemberArgs = {
3587
3978
  groupId: Scalars['BigInt']['input'];
3588
3979
  userId: Scalars['BigInt']['input'];
3589
3980
  };
3981
+ export type MutationAdmitAppCodeArgs = {
3982
+ input: AdmitAppCodeInput;
3983
+ };
3590
3984
  export type MutationArchiveAccessTierArgs = {
3591
3985
  idempotencyKey?: InputMaybe<Scalars['String']['input']>;
3592
3986
  tierId: Scalars['BigInt']['input'];
@@ -3595,12 +3989,22 @@ export type MutationArchiveAppArgs = {
3595
3989
  appId: Scalars['BigInt']['input'];
3596
3990
  idempotencyKey?: InputMaybe<Scalars['String']['input']>;
3597
3991
  };
3992
+ export type MutationAssignGridOwnershipArgs = {
3993
+ input: AssignGridOwnershipInput;
3994
+ };
3598
3995
  export type MutationAssignGroupToGridArgs = {
3599
3996
  input: AssignGroupToGridInput;
3600
3997
  };
3601
3998
  export type MutationAuthorizeAppArgs = {
3602
3999
  input: AuthorizeAppInput;
3603
4000
  };
4001
+ export type MutationBeginOrgSellerOnboardingArgs = {
4002
+ country: Scalars['String']['input'];
4003
+ orgId: Scalars['BigInt']['input'];
4004
+ };
4005
+ export type MutationBeginSellerOnboardingArgs = {
4006
+ country: Scalars['String']['input'];
4007
+ };
3604
4008
  export type MutationCancelSharedSubscriptionArgs = {
3605
4009
  appId: Scalars['BigInt']['input'];
3606
4010
  idempotencyKey?: InputMaybe<Scalars['String']['input']>;
@@ -3616,6 +4020,10 @@ export type MutationChangePasswordArgs = {
3616
4020
  export type MutationClaimFreeAppAccessArgs = {
3617
4021
  appId: Scalars['BigInt']['input'];
3618
4022
  };
4023
+ export type MutationClaimGridOwnershipArgs = {
4024
+ appId: Scalars['BigInt']['input'];
4025
+ gridId: Scalars['BigInt']['input'];
4026
+ };
3619
4027
  export type MutationCompleteLoginLinkArgs = {
3620
4028
  input: CompleteLoginLinkInput;
3621
4029
  };
@@ -3658,6 +4066,11 @@ export type MutationComputeUpsertTriggerArgs = {
3658
4066
  export type MutationConfirmEmailArgs = {
3659
4067
  token: Scalars['String']['input'];
3660
4068
  };
4069
+ export type MutationConsentGridClientModArgs = {
4070
+ appId: Scalars['BigInt']['input'];
4071
+ attachmentId: Scalars['String']['input'];
4072
+ consentCapabilityHash: Scalars['String']['input'];
4073
+ };
3661
4074
  export type MutationCpSetComputePlatformCeilingsArgs = {
3662
4075
  input: CpSetComputePlatformCeilingsInput;
3663
4076
  };
@@ -3688,6 +4101,9 @@ export type MutationCreateEnvironmentArgs = {
3688
4101
  export type MutationCreateGridArgs = {
3689
4102
  input: CreateGridInput;
3690
4103
  };
4104
+ export type MutationCreateGridListingArgs = {
4105
+ input: CreateGridListingInput;
4106
+ };
3691
4107
  export type MutationCreateOrgRoleArgs = {
3692
4108
  input: CreateOrgRoleInput;
3693
4109
  };
@@ -3706,6 +4122,16 @@ export type MutationCreateTeamArgs = {
3706
4122
  export type MutationCreateTeamRoleArgs = {
3707
4123
  input: CreateGroupRoleInput;
3708
4124
  };
4125
+ export type MutationDecideCommerceRiskFlagArgs = {
4126
+ appId: Scalars['BigInt']['input'];
4127
+ flagId: Scalars['String']['input'];
4128
+ release: Scalars['Boolean']['input'];
4129
+ };
4130
+ export type MutationDecideGridClaimArgs = {
4131
+ appId: Scalars['BigInt']['input'];
4132
+ approve: Scalars['Boolean']['input'];
4133
+ requestId: Scalars['String']['input'];
4134
+ };
3709
4135
  export type MutationDeleteActorArgs = {
3710
4136
  idempotencyKey?: InputMaybe<Scalars['String']['input']>;
3711
4137
  uuid: Scalars['String']['input'];
@@ -3731,6 +4157,11 @@ export type MutationDeleteOrgRoleArgs = {
3731
4157
  idempotencyKey?: InputMaybe<Scalars['String']['input']>;
3732
4158
  orgRoleId: Scalars['BigInt']['input'];
3733
4159
  };
4160
+ export type MutationDeletePlayerWasmPolicyArgs = {
4161
+ appId: Scalars['BigInt']['input'];
4162
+ scope: Scalars['String']['input'];
4163
+ scopeRef?: InputMaybe<Scalars['BigInt']['input']>;
4164
+ };
3734
4165
  export type MutationDeleteQuotaArgs = {
3735
4166
  idempotencyKey?: InputMaybe<Scalars['String']['input']>;
3736
4167
  quotaId: Scalars['BigInt']['input'];
@@ -3861,9 +4292,21 @@ export type MutationGrantMyAppAccessArgs = {
3861
4292
  export type MutationIngestEnvironmentVersionArgs = {
3862
4293
  input: IngestEnvironmentVersionInput;
3863
4294
  };
4295
+ export type MutationInstallPlayerCodeArgs = {
4296
+ acquisitionId: Scalars['String']['input'];
4297
+ appId: Scalars['BigInt']['input'];
4298
+ consentCapabilityHash: Scalars['String']['input'];
4299
+ gridId?: InputMaybe<Scalars['BigInt']['input']>;
4300
+ versionId?: InputMaybe<Scalars['String']['input']>;
4301
+ };
3864
4302
  export type MutationInviteOrgMemberArgs = {
3865
4303
  input: InviteOrgMemberInput;
3866
4304
  };
4305
+ export type MutationIssueGridClaimInviteArgs = {
4306
+ appId: Scalars['BigInt']['input'];
4307
+ gridId: Scalars['BigInt']['input'];
4308
+ inviteeUserId: Scalars['BigInt']['input'];
4309
+ };
3867
4310
  export type MutationJoinChannelArgs = {
3868
4311
  groupId: Scalars['BigInt']['input'];
3869
4312
  };
@@ -3889,6 +4332,53 @@ export type MutationLoginArgs = {
3889
4332
  export type MutationMintAppTokenArgs = {
3890
4333
  input: MintAppTokenInput;
3891
4334
  };
4335
+ export type MutationPlayerAutomationCreateArgs = {
4336
+ input: CreatePlayerAutomationInput;
4337
+ };
4338
+ export type MutationPlayerAutomationDeleteArgs = {
4339
+ input: PlayerAutomationRefInput;
4340
+ };
4341
+ export type MutationPlayerAutomationSetEnabledArgs = {
4342
+ input: SetPlayerAutomationEnabledInput;
4343
+ };
4344
+ export type MutationPlayerComputeDeleteArgs = {
4345
+ appId: Scalars['BigInt']['input'];
4346
+ gridId: Scalars['BigInt']['input'];
4347
+ name: Scalars['String']['input'];
4348
+ };
4349
+ export type MutationPlayerComputeDeployArgs = {
4350
+ input: DeployPlayerComputeInput;
4351
+ };
4352
+ export type MutationPlayerComputeInvokeArgs = {
4353
+ appId: Scalars['BigInt']['input'];
4354
+ exportName: Scalars['String']['input'];
4355
+ gridId: Scalars['BigInt']['input'];
4356
+ moduleName: Scalars['String']['input'];
4357
+ paramsJson?: InputMaybe<Scalars['String']['input']>;
4358
+ };
4359
+ export type MutationPlayerComputeSetEnabledArgs = {
4360
+ appId: Scalars['BigInt']['input'];
4361
+ enabled: Scalars['Boolean']['input'];
4362
+ gridId: Scalars['BigInt']['input'];
4363
+ name: Scalars['String']['input'];
4364
+ };
4365
+ export type MutationPlayerComputeSetSwitchArgs = {
4366
+ appId: Scalars['BigInt']['input'];
4367
+ disabled: Scalars['Boolean']['input'];
4368
+ listingRef?: InputMaybe<Scalars['String']['input']>;
4369
+ reason?: InputMaybe<Scalars['String']['input']>;
4370
+ scope: Scalars['String']['input'];
4371
+ scopeRef?: InputMaybe<Scalars['BigInt']['input']>;
4372
+ };
4373
+ export type MutationPlayerModelCreateContainerArgs = {
4374
+ input: CreatePlayerModelContainerInput;
4375
+ };
4376
+ export type MutationPlayerModelDeleteContainerArgs = {
4377
+ input: PlayerModelContainerRefInput;
4378
+ };
4379
+ export type MutationPlayerModelSetPropertyArgs = {
4380
+ input: SetPlayerModelPropertyInput;
4381
+ };
3892
4382
  export type MutationPublishAppToSharedArgs = {
3893
4383
  appId: Scalars['BigInt']['input'];
3894
4384
  cancelUrl?: InputMaybe<Scalars['String']['input']>;
@@ -3900,6 +4390,19 @@ export type MutationPublishAppToSharedArgs = {
3900
4390
  export type MutationPublishEnvironmentReleaseFromGameApiTagArgs = {
3901
4391
  input: PublishEnvironmentReleaseFromGameApiTagInput;
3902
4392
  };
4393
+ export type MutationPublishPlayerCodeArgs = {
4394
+ input: PublishPlayerCodeInput;
4395
+ };
4396
+ export type MutationPublishPlayerCodeVersionArgs = {
4397
+ input: PublishPlayerCodeVersionInput;
4398
+ };
4399
+ export type MutationPurchaseGridArgs = {
4400
+ appId: Scalars['BigInt']['input'];
4401
+ chunkX?: InputMaybe<Scalars['Int']['input']>;
4402
+ chunkY?: InputMaybe<Scalars['Int']['input']>;
4403
+ chunkZ?: InputMaybe<Scalars['Int']['input']>;
4404
+ gridListingId: Scalars['String']['input'];
4405
+ };
3903
4406
  export type MutationPurgeEnvironmentArgs = {
3904
4407
  input: PurgeEnvironmentInput;
3905
4408
  };
@@ -3918,6 +4421,10 @@ export type MutationPutCpSecretArgs = {
3918
4421
  export type MutationRedeployEnvironmentArgs = {
3919
4422
  input: RedeployEnvironmentInput;
3920
4423
  };
4424
+ export type MutationRefundPlayerCodeAcquisitionArgs = {
4425
+ acquisitionId: Scalars['String']['input'];
4426
+ appId: Scalars['BigInt']['input'];
4427
+ };
3921
4428
  export type MutationRegisterArgs = {
3922
4429
  registerUserInput: RegisterUserInput;
3923
4430
  };
@@ -3939,6 +4446,10 @@ export type MutationRemoveTeamMemberArgs = {
3939
4446
  groupId: Scalars['BigInt']['input'];
3940
4447
  userId: Scalars['BigInt']['input'];
3941
4448
  };
4449
+ export type MutationRenewPlayerCodeAcquisitionArgs = {
4450
+ acquisitionId: Scalars['String']['input'];
4451
+ appId: Scalars['BigInt']['input'];
4452
+ };
3942
4453
  export type MutationRequestLoginLinkArgs = {
3943
4454
  input: RequestLoginLinkInput;
3944
4455
  };
@@ -3971,6 +4482,10 @@ export type MutationRevokeAppAccessArgs = {
3971
4482
  export type MutationRevokeAppAuthorizationArgs = {
3972
4483
  appId: Scalars['BigInt']['input'];
3973
4484
  };
4485
+ export type MutationRevokeAppCodeAdmissionArgs = {
4486
+ admissionId: Scalars['String']['input'];
4487
+ appId: Scalars['BigInt']['input'];
4488
+ };
3974
4489
  export type MutationRevokeGridPermissionsArgs = {
3975
4490
  input: RevokeGridPermissionsInput;
3976
4491
  };
@@ -4014,6 +4529,19 @@ export type MutationSetAppBudgetArgs = {
4014
4529
  export type MutationSetAppClientSettingsArgs = {
4015
4530
  input: SetAppClientSettingsInput;
4016
4531
  };
4532
+ export type MutationSetAppCodeAdmissionModeArgs = {
4533
+ appId: Scalars['BigInt']['input'];
4534
+ mode: CodeAdmissionMode;
4535
+ };
4536
+ export type MutationSetAppGridClaimPolicyArgs = {
4537
+ appId: Scalars['BigInt']['input'];
4538
+ approverUserIds?: InputMaybe<Array<Scalars['BigInt']['input']>>;
4539
+ policy: GridClaimPolicy;
4540
+ };
4541
+ export type MutationSetAppMarketplaceOrgShareArgs = {
4542
+ appId: Scalars['BigInt']['input'];
4543
+ bps: Scalars['Int']['input'];
4544
+ };
4017
4545
  export type MutationSetAppReservedThroughputArgs = {
4018
4546
  idempotencyKey?: InputMaybe<Scalars['String']['input']>;
4019
4547
  input: SetAppReservedThroughputInput;
@@ -4052,6 +4580,9 @@ export type MutationSetEnvironmentDeletionProtectionArgs = {
4052
4580
  export type MutationSetGridPermissionLimitsArgs = {
4053
4581
  input: SetGridPermissionLimitsInput;
4054
4582
  };
4583
+ export type MutationSetListingPricingArgs = {
4584
+ input: SetListingPricingInput;
4585
+ };
4055
4586
  export type MutationSetOperatorArgs = {
4056
4587
  userId: Scalars['BigInt']['input'];
4057
4588
  value: Scalars['Boolean']['input'];
@@ -4060,6 +4591,30 @@ export type MutationSetOrgStatusArgs = {
4060
4591
  orgId: Scalars['BigInt']['input'];
4061
4592
  status: Scalars['String']['input'];
4062
4593
  };
4594
+ export type MutationSetPlayerAutoBillingArgs = {
4595
+ enabled: Scalars['Boolean']['input'];
4596
+ limitCents?: InputMaybe<Scalars['BigInt']['input']>;
4597
+ lowWaterThresholdCents?: InputMaybe<Scalars['BigInt']['input']>;
4598
+ rechargeAmountCents?: InputMaybe<Scalars['BigInt']['input']>;
4599
+ };
4600
+ export type MutationSetPlayerCodeListingStatusArgs = {
4601
+ appId: Scalars['BigInt']['input'];
4602
+ listingId: Scalars['String']['input'];
4603
+ status: PlayerCodeListingStatus;
4604
+ };
4605
+ export type MutationSetPlayerRateMarkupArgs = {
4606
+ appId: Scalars['BigInt']['input'];
4607
+ markupBps: Scalars['Int']['input'];
4608
+ };
4609
+ export type MutationSetPlayerSpendCapArgs = {
4610
+ appId?: InputMaybe<Scalars['BigInt']['input']>;
4611
+ dailyLimitCents?: InputMaybe<Scalars['BigInt']['input']>;
4612
+ monthlyLimitCents?: InputMaybe<Scalars['BigInt']['input']>;
4613
+ scope: Scalars['String']['input'];
4614
+ };
4615
+ export type MutationSetPlayerWasmPolicyArgs = {
4616
+ input: SetPlayerWasmPolicyInput;
4617
+ };
4063
4618
  export type MutationSetQuotaArgs = {
4064
4619
  input: SetQuotaInput;
4065
4620
  };
@@ -4083,9 +4638,26 @@ export type MutationSocialLoginCompleteArgs = {
4083
4638
  export type MutationSocialLoginStartArgs = {
4084
4639
  input: SocialLoginStartInput;
4085
4640
  };
4641
+ export type MutationSpendPayoutBalanceToWalletArgs = {
4642
+ amountCents: Scalars['Int']['input'];
4643
+ };
4086
4644
  export type MutationTeleportRequestArgs = {
4087
4645
  input: TeleportRequestInput;
4088
4646
  };
4647
+ export type MutationTopUpPlayerCodeAcquisitionArgs = {
4648
+ acquisitionId: Scalars['String']['input'];
4649
+ appId: Scalars['BigInt']['input'];
4650
+ };
4651
+ export type MutationTransferGridOwnershipArgs = {
4652
+ input: TransferGridOwnershipInput;
4653
+ };
4654
+ export type MutationTransferPlayerCodeListingArgs = {
4655
+ input: TransferPlayerCodeListingInput;
4656
+ };
4657
+ export type MutationUninstallPlayerCodeArgs = {
4658
+ appId: Scalars['BigInt']['input'];
4659
+ installId: Scalars['String']['input'];
4660
+ };
4089
4661
  export type MutationUnlinkIdentityArgs = {
4090
4662
  identityId: Scalars['String']['input'];
4091
4663
  };
@@ -4490,6 +5062,377 @@ export type PlatformConfig = {
4490
5062
  /** Shared game-api WebSocket root (subscriptions / UDP proxy). */
4491
5063
  sharedGameApiWsUrl: Maybe<Scalars['String']['output']>;
4492
5064
  };
5065
+ /** Off-session auto-recharge settings for the player wallet (the org auto-billing twin): when enabled with a vaulted card, the player gate tops the wallet up before denying for insufficient funds. */
5066
+ export type PlayerAutoBilling = {
5067
+ __typename?: 'PlayerAutoBilling';
5068
+ /** Amount auto-billed so far this period. */
5069
+ autoBilledThisPeriodCents: Scalars['BigInt']['output'];
5070
+ /** Whether auto-recharge is enabled. */
5071
+ enabled: Scalars['Boolean']['output'];
5072
+ /** Whether an active vaulted card is attached. */
5073
+ hasPaymentMethod: Scalars['Boolean']['output'];
5074
+ /** Last auto-recharge failure, if any. */
5075
+ lastError: Maybe<Scalars['String']['output']>;
5076
+ /** Per-period auto-recharge ceiling in cents; null = no limit. */
5077
+ limitCents: Maybe<Scalars['BigInt']['output']>;
5078
+ /** Balance threshold that triggers a recharge. */
5079
+ lowWaterThresholdCents: Scalars['BigInt']['output'];
5080
+ /** Amount charged per auto-recharge. */
5081
+ rechargeAmountCents: Scalars['BigInt']['output'];
5082
+ /** The owning player user id. */
5083
+ userId: Scalars['BigInt']['output'];
5084
+ };
5085
+ /** A player-owned automation confined to one app and grid. Trigger/action JSON has been structurally validated. */
5086
+ export type PlayerAutomation = {
5087
+ __typename?: 'PlayerAutomation';
5088
+ /** Validated action as canonical JSON. */
5089
+ actionJson: Scalars['String']['output'];
5090
+ /** App containing the automation. */
5091
+ appId: Scalars['BigInt']['output'];
5092
+ /** Player automation UUID. */
5093
+ automationId: Scalars['String']['output'];
5094
+ /** Circuit state: closed, open, or half_open. */
5095
+ circuitState: Scalars['String']['output'];
5096
+ /** Current consecutive failure count. */
5097
+ consecutiveFailures: Scalars['Int']['output'];
5098
+ /** Open-circuit cooldown in milliseconds. */
5099
+ cooldownMs: Scalars['Int']['output'];
5100
+ /** Automation creation time. */
5101
+ createdAt: Scalars['DateTime']['output'];
5102
+ /** Optional description. */
5103
+ description: Maybe<Scalars['String']['output']>;
5104
+ /** Whether the automation may dispatch. */
5105
+ enabled: Scalars['Boolean']['output'];
5106
+ /** Failures required to open the circuit. */
5107
+ failureThreshold: Scalars['Int']['output'];
5108
+ /** Grid confining the automation. */
5109
+ gridId: Scalars['BigInt']['output'];
5110
+ /** Most recent dispatch error. */
5111
+ lastError: Maybe<Scalars['String']['output']>;
5112
+ /** Most recent dispatch time. */
5113
+ lastRunAt: Maybe<Scalars['DateTime']['output']>;
5114
+ /** Maximum runs per rolling minute. */
5115
+ maxRunsPerMinute: Scalars['Int']['output'];
5116
+ /** Owner-local automation name. */
5117
+ name: Scalars['String']['output'];
5118
+ /** Next scheduled dispatch time. */
5119
+ nextRunAt: Maybe<Scalars['DateTime']['output']>;
5120
+ /** Owning user. Forced from current grid ownership at creation. */
5121
+ ownerUserId: Scalars['BigInt']['output'];
5122
+ /** Time at which an open circuit may retry. */
5123
+ pausedUntil: Maybe<Scalars['DateTime']['output']>;
5124
+ /** Validated trigger as canonical JSON. */
5125
+ triggerJson: Scalars['String']['output'];
5126
+ /** Most recent automation update time. */
5127
+ updatedAt: Scalars['DateTime']['output'];
5128
+ };
5129
+ /** Identify one player automation within its app and grid. The server additionally forces the current caller as owner. */
5130
+ export type PlayerAutomationRefInput = {
5131
+ /** App containing the owned grid. */
5132
+ appId: Scalars['BigInt']['input'];
5133
+ /** Player automation UUID. */
5134
+ automationId: Scalars['String']['input'];
5135
+ /** Grid that confines the automation. */
5136
+ gridId: Scalars['BigInt']['input'];
5137
+ };
5138
+ /** A pending player card-vault (P4b): the Stripe SetupIntent the browser confirms to save a card off-session, enabling wallet auto-recharge and rent auto-renew. On success a setup_intent.succeeded webhook persists the card. */
5139
+ export type PlayerCardSetup = {
5140
+ __typename?: 'PlayerCardSetup';
5141
+ /** Stripe SetupIntent client secret the browser confirms. */
5142
+ clientSecret: Maybe<Scalars['String']['output']>;
5143
+ /** The Stripe customer id the card is attached to. */
5144
+ externalCustomerId: Scalars['String']['output'];
5145
+ /** Stripe publishable key the browser needs to confirm the card. */
5146
+ publishableKey: Maybe<Scalars['String']['output']>;
5147
+ };
5148
+ /** A compiled CLIENT-target player artifact plus the metadata the browser broker needs to run it (player compute P3). Served only to the current grid owner who authored the version, holding run_client_code, when the app's admission mode admits the code. The bytes are the gas-injected wasm32-unknown-unknown module; clientFuelPerDispatch is the per-dispatch fuel budget the glue worker enforces locally. */
5149
+ export type PlayerClientArtifact = {
5150
+ __typename?: 'PlayerClientArtifact';
5151
+ /** ABI version the artifact was built for. */
5152
+ abiVersion: Scalars['Int']['output'];
5153
+ /** The gas-injected client WASM artifact, base64-encoded. */
5154
+ artifactBase64: Scalars['String']['output'];
5155
+ /** Content hash of the artifact (also the cache key stem). */
5156
+ artifactHash: Scalars['String']['output'];
5157
+ /** Per-dispatch client fuel budget from the resolved player policy; the broker's glue worker traps when a dispatch exceeds it. */
5158
+ clientFuelPerDispatch: Scalars['BigInt']['output'];
5159
+ /** Declared client interop contract (bridge messages) as JSON, when the version pins one. */
5160
+ contractJson: Maybe<Scalars['String']['output']>;
5161
+ /** Artifact size in bytes (<= 512 KiB). */
5162
+ sizeBytes: Scalars['Int']['output'];
5163
+ /** The served version UUID. */
5164
+ versionId: Scalars['String']['output'];
5165
+ };
5166
+ /** The caller's entitlement to a listing (mode 'free' in P4a). Uninstalling never deletes this row; it is the audit trail P4b attaches payment to. */
5167
+ export type PlayerCodeAcquisition = {
5168
+ __typename?: 'PlayerCodeAcquisition';
5169
+ /** When acquired. */
5170
+ acquiredAt: Scalars['DateTime']['output'];
5171
+ /** Numeric user id of the acquirer. */
5172
+ acquirerUserId: Scalars['BigInt']['output'];
5173
+ /** UUID of the acquisition. */
5174
+ acquisitionId: Scalars['String']['output'];
5175
+ /** App of the listing. */
5176
+ appId: Scalars['BigInt']['output'];
5177
+ /** Expiry for RENT/TIME_LIMITED; null for perpetual (FREE/BUY) or unit-budgeted (COST_LIMITED). Past expiry drains installs until renewed. */
5178
+ expiresAt: Maybe<Scalars['DateTime']['output']>;
5179
+ /** UUID of the acquired listing. */
5180
+ listingId: Scalars['String']['output'];
5181
+ /** Acquisition mode: FREE, BUY (perpetual), RENT (renewable window), TIME_LIMITED (single window), or COST_LIMITED (compute-unit budget). */
5182
+ mode: PlayerCodeAcquisitionMode;
5183
+ /** When the entitlement was revoked; null while active. */
5184
+ revokedAt: Maybe<Scalars['DateTime']['output']>;
5185
+ /** Entitlement status: 'active' or 'revoked'. */
5186
+ status: Scalars['String']['output'];
5187
+ /** Compute-unit budget for COST_LIMITED; null otherwise. */
5188
+ unitBudget: Maybe<Scalars['BigInt']['output']>;
5189
+ /** Compute units consumed so far (advances against unitBudget). */
5190
+ unitsConsumed: Scalars['BigInt']['output'];
5191
+ };
5192
+ /** How a listing is acquired. P4a ships FREE only; the paid modes (buy, rent, time-limited, cost-limited) arrive with the P4b money workstream. */
5193
+ export declare enum PlayerCodeAcquisitionMode {
5194
+ Buy = "BUY",
5195
+ CostLimited = "COST_LIMITED",
5196
+ Free = "FREE",
5197
+ Rent = "RENT",
5198
+ TimeLimited = "TIME_LIMITED"
5199
+ }
5200
+ /** One row of an app's admission queue: a listing joined with its standing under the app's allow-list (admitted via a matching code, author, or org admission; pending; or revoked). The studio moderation surface for allow_list apps. */
5201
+ export type PlayerCodeAdmissionQueueEntry = {
5202
+ __typename?: 'PlayerCodeAdmissionQueueEntry';
5203
+ /** UUID of the admission entry that admits (or last admitted) this listing — matched on the code subject, its author, or its owning org. Null while pending. */
5204
+ admissionId: Maybe<Scalars['String']['output']>;
5205
+ /** The listing's admission standing in this app. */
5206
+ admissionState: PlayerCodeAdmissionState;
5207
+ /** The listing under review. */
5208
+ listing: PlayerCodeListing;
5209
+ /** Which allow-list subject matched: 'code', 'author', or 'org'. Null while pending. */
5210
+ matchedSubjectKind: Maybe<Scalars['String']['output']>;
5211
+ };
5212
+ /** A listing's standing under this app's admission mode: ADMITTED (installable), PENDING (browsable but uninstallable in allow_list apps), or REVOKED (installs drain). */
5213
+ export declare enum PlayerCodeAdmissionState {
5214
+ Admitted = "ADMITTED",
5215
+ Pending = "PENDING",
5216
+ Revoked = "REVOKED"
5217
+ }
5218
+ /** An install of an acquired listing: the pinned version, the consent hash acknowledged, and (for server halves) the owned target grid. Installs pin their version; updating to a newer version is a new consent + install update, never automatic. */
5219
+ export type PlayerCodeInstall = {
5220
+ __typename?: 'PlayerCodeInstall';
5221
+ /** UUID of the acquisition this install uses. */
5222
+ acquisitionId: Scalars['String']['output'];
5223
+ /** App of the listing. */
5224
+ appId: Scalars['BigInt']['output'];
5225
+ /** The capability hash the installer consented to. */
5226
+ consentedCapabilityHash: Scalars['String']['output'];
5227
+ /** When installed. */
5228
+ createdAt: Scalars['DateTime']['output'];
5229
+ /** UUID of the install. */
5230
+ installId: Scalars['String']['output'];
5231
+ /** UUID of the installed listing. */
5232
+ listingId: Scalars['String']['output'];
5233
+ /** UUID of the pinned listing version. */
5234
+ pinnedVersionId: Scalars['String']['output'];
5235
+ /** Install status: 'active', 'uninstalled', or 'disabled'. */
5236
+ status: Scalars['String']['output'];
5237
+ /** Owned grid the server half (and any bundled client attachment) was installed into; null for personal client-only installs. */
5238
+ targetGridId: Maybe<Scalars['BigInt']['output']>;
5239
+ };
5240
+ /** Source-access mode of a listing: CLOSED (artifacts + contracts only) or OPEN_SOURCE (source readable; irreversible per published version). */
5241
+ export declare enum PlayerCodeLicenseMode {
5242
+ Closed = "CLOSED",
5243
+ OpenSource = "OPEN_SOURCE"
5244
+ }
5245
+ /** A marketplace code listing as seen in-game (replica of the management catalog). Every listing is FREE in P4a; carrying both server and client artifact sets makes it a bundle. */
5246
+ export type PlayerCodeListing = {
5247
+ __typename?: 'PlayerCodeListing';
5248
+ /** Acquisition mode: FREE, or a paid mode (BUY / RENT / TIME_LIMITED / COST_LIMITED; P4b). Free listings carry no price. */
5249
+ acquisitionMode: PlayerCodeAcquisitionMode;
5250
+ /** The listing's admission standing in this app. In implicit_allow apps this is always ADMITTED; in allow_list apps PENDING listings can be acquired but not installed. */
5251
+ admissionState: PlayerCodeAdmissionState;
5252
+ /** App the listing belongs to. */
5253
+ appId: Scalars['BigInt']['output'];
5254
+ /** When the listing was created. */
5255
+ createdAt: Scalars['DateTime']['output'];
5256
+ /** Store description. */
5257
+ description: Scalars['String']['output'];
5258
+ /** UUID of the newest published version; null before first publish. */
5259
+ latestVersionId: Maybe<Scalars['String']['output']>;
5260
+ /** Source-access mode for new versions. */
5261
+ licenseMode: PlayerCodeLicenseMode;
5262
+ /** UUID of the listing. */
5263
+ listingId: Scalars['String']['output'];
5264
+ /** JSON array of media refs. */
5265
+ mediaJson: Scalars['String']['output'];
5266
+ /** Display name. */
5267
+ name: Scalars['String']['output'];
5268
+ /** Whether a player user or an org owns this listing. */
5269
+ ownerKind: PlayerCodeOwnerKind;
5270
+ /** User id or org id of the owner, per ownerKind. */
5271
+ ownerRef: Scalars['BigInt']['output'];
5272
+ /** Price in cents for paid modes; null when FREE. */
5273
+ priceCents: Maybe<Scalars['Int']['output']>;
5274
+ /** Rent billing interval in days (RENT mode). */
5275
+ rentIntervalDays: Maybe<Scalars['Int']['output']>;
5276
+ /** Catalog status (active / delisted / killed). */
5277
+ status: PlayerCodeListingStatus;
5278
+ /** Compute-unit budget per purchase (COST_LIMITED mode). */
5279
+ unitBudget: Maybe<Scalars['BigInt']['output']>;
5280
+ /** When the listing was last updated. */
5281
+ updatedAt: Scalars['DateTime']['output'];
5282
+ /** Fixed access window in days (TIME_LIMITED mode). */
5283
+ windowDays: Maybe<Scalars['Int']['output']>;
5284
+ };
5285
+ /** Catalog status of a listing: ACTIVE (browsable/acquirable), DELISTED (author withdrew it — existing installs keep their pinned versions), KILLED (studio/operator kill). */
5286
+ export declare enum PlayerCodeListingStatus {
5287
+ Active = "ACTIVE",
5288
+ Delisted = "DELISTED",
5289
+ Killed = "KILLED"
5290
+ }
5291
+ /** An immutable published version of a code listing: artifact hashes (never source) plus the DERIVED capability summary installers consent to. */
5292
+ export type PlayerCodeListingVersion = {
5293
+ __typename?: 'PlayerCodeListingVersion';
5294
+ /** sha256 of the canonical capability summary. installPlayerCode and consentGridClientMod must echo this hash as the consent acknowledgement. */
5295
+ capabilityHash: Scalars['String']['output'];
5296
+ /** JSON capability summary DERIVED from the artifacts (host functions, capability groups, presentation hooks, triggers, egress budgets). Never self-declared; shown at acquire and install consent. */
5297
+ capabilitySummaryJson: Scalars['String']['output'];
5298
+ /** Client-target artifact hashes (empty for server-only listings). */
5299
+ clientArtifactHashes: Array<Scalars['String']['output']>;
5300
+ /** When the version was published. */
5301
+ createdAt: Maybe<Scalars['DateTime']['output']>;
5302
+ /** Author license terms shown at acquisition. */
5303
+ licenseText: Maybe<Scalars['String']['output']>;
5304
+ /** UUID of the listing. */
5305
+ listingId: Scalars['String']['output'];
5306
+ /** Whether this version’s source is open (irreversible per version). */
5307
+ openSource: Scalars['Boolean']['output'];
5308
+ /** Server-target artifact hashes (empty for client-only listings). */
5309
+ serverArtifactHashes: Array<Scalars['String']['output']>;
5310
+ /** UUID of this published version. */
5311
+ versionId: Scalars['String']['output'];
5312
+ /** Monotonic version number within the listing. */
5313
+ versionNo: Scalars['Int']['output'];
5314
+ };
5315
+ /** Who owns a marketplace code listing: a player user or an org (DN-9: the org then holds source access and listing control). */
5316
+ export declare enum PlayerCodeOwnerKind {
5317
+ Org = "ORG",
5318
+ User = "USER"
5319
+ }
5320
+ /** An immutable published version of a code listing. Snapshots ARTIFACT HASHES from the author’s compiled module versions — never source (OQ-1). A version with both server and client hashes is a bundle: installing it on a grid also attaches the client half for visitor consent (D2). */
5321
+ export type PlayerCodeVersion = {
5322
+ __typename?: 'PlayerCodeVersion';
5323
+ /** Numeric app id (denormalized from the listing). */
5324
+ appId: Scalars['BigInt']['output'];
5325
+ /** sha256 of the canonical capability summary. Installs record the hash they consented to; a widened summary on a newer version forces re-consent. */
5326
+ capabilityHash: Scalars['String']['output'];
5327
+ /** JSON capability summary DERIVED from the artifacts by the compile pipeline (imported host families, invoke contracts, presentation hooks, egress budgets). Never self-declared; this is what installers consent to. */
5328
+ capabilitySummaryJson: Scalars['String']['output'];
5329
+ /** Artifact hashes of the client-target modules in this version (empty for server-only listings). */
5330
+ clientArtifactHashes: Array<Scalars['String']['output']>;
5331
+ /** When the version was published. */
5332
+ createdAt: Scalars['DateTime']['output'];
5333
+ /** Author license terms shown at acquisition (platform enforces access, not downstream legal terms). */
5334
+ licenseText: Maybe<Scalars['String']['output']>;
5335
+ /** UUID of the listing this version belongs to. */
5336
+ listingId: Scalars['String']['output'];
5337
+ /** Whether this version’s source is open. Open-sourcing a version is irreversible for that version; later versions may return to closed. */
5338
+ openSource: Scalars['Boolean']['output'];
5339
+ /** Artifact hashes of the server-target modules in this version (empty for client-only listings). */
5340
+ serverArtifactHashes: Array<Scalars['String']['output']>;
5341
+ /** UUID of this published version. */
5342
+ versionId: Scalars['String']['output'];
5343
+ /** Monotonic version number within the listing. */
5344
+ versionNo: Scalars['Int']['output'];
5345
+ };
5346
+ /** Synchronous result from invoking an admitted server player-module export as the current grid owner. */
5347
+ export type PlayerComputeInvokeResult = {
5348
+ __typename?: 'PlayerComputeInvokeResult';
5349
+ /** Wall-clock execution duration in µs. */
5350
+ durationUs: Scalars['Int']['output'];
5351
+ /** Instrumented fuel consumed. */
5352
+ fuelUsed: Scalars['BigInt']['output'];
5353
+ /** Raw module result bytes encoded as base64. */
5354
+ resultBase64: Scalars['String']['output'];
5355
+ /** UTF-8 result when it is valid JSON; otherwise null. */
5356
+ resultJson: Maybe<Scalars['String']['output']>;
5357
+ };
5358
+ /** A kill-ladder switch row (03 §7): a studio-set immediate stop at player, grid, app, or listing scope. Module-level disable lives on the module itself; killing a LISTING disables every install of that marketplace listing fleet-wide (P4a). Quota state is retained across a kill. */
5359
+ export type PlayerComputeSwitch = {
5360
+ __typename?: 'PlayerComputeSwitch';
5361
+ /** The app the switch applies to. */
5362
+ appId: Scalars['BigInt']['output'];
5363
+ /** When execution was stopped. */
5364
+ disabledAt: Scalars['DateTime']['output'];
5365
+ /** The marketplace listing UUID for listing scope; null otherwise. */
5366
+ listingRef: Maybe<Scalars['String']['output']>;
5367
+ /** Operator note recorded when the switch was thrown. */
5368
+ reason: Maybe<Scalars['String']['output']>;
5369
+ /** Scope: 'player', 'grid', 'app', or 'listing'. */
5370
+ scope: Scalars['String']['output'];
5371
+ /** The player user id or grid id; null for app and listing scopes. */
5372
+ scopeRef: Maybe<Scalars['BigInt']['output']>;
5373
+ /** Switch row UUID. */
5374
+ switchId: Scalars['String']['output'];
5375
+ };
5376
+ /** Execution target for player-authored Rust. SERVER runs as the grid owner in game-api; CLIENT runs as the actual player in the browser worker sandbox. */
5377
+ export declare enum PlayerComputeTarget {
5378
+ Client = "CLIENT",
5379
+ Server = "SERVER"
5380
+ }
5381
+ /** The caller's player-compute spend and quota view for one app (P2): unit usage in the current clock hour/day, the effective policy limits, compile-quota utilization, and the replica-synced wallet/spend-cap gate state. Units follow the platform formula GREATEST(cpu ms, fuel/22M); player automation units are included. */
5382
+ export type PlayerComputeUsage = {
5383
+ __typename?: 'PlayerComputeUsage';
5384
+ /** The app this view covers. */
5385
+ appId: Scalars['BigInt']['output'];
5386
+ /** Compile submissions counted in the current clock hour. */
5387
+ compilesThisHour: Scalars['Int']['output'];
5388
+ /** Compute units consumed in the current clock day. */
5389
+ dayUnitsUsed: Scalars['BigInt']['output'];
5390
+ /** Typed pause reason when gated: PLAYER_WALLET_EMPTY, PLAYER_SPEND_CAP, PLAYER_QUOTA_EXHAUSTED, or PLAYER_COMPUTE_KILLED. */
5391
+ gateReason: Maybe<Scalars['String']['output']>;
5392
+ /** Replica-synced management player gate for this app: 'active', 'grace', or 'denied'. Non-active pauses this player's modules only; play is untouched. */
5393
+ gateStatus: Scalars['String']['output'];
5394
+ /** Compute units consumed in the current clock hour (modules + automations, all owned grids aggregated). */
5395
+ hourUnitsUsed: Scalars['BigInt']['output'];
5396
+ /** Effective max_compiles_per_hour policy cap. */
5397
+ maxCompilesPerHour: Scalars['Int']['output'];
5398
+ /** Effective units_per_day developer-policy cap; null when the app sets no daily quota. */
5399
+ unitsPerDay: Maybe<Scalars['BigInt']['output']>;
5400
+ /** Effective units_per_hour developer-policy cap; null when the app sets no hourly quota. */
5401
+ unitsPerHour: Maybe<Scalars['BigInt']['output']>;
5402
+ };
5403
+ /** A flexible player-owned model container confined to exactly one app, grid, and current owner. */
5404
+ export type PlayerModelContainer = {
5405
+ __typename?: 'PlayerModelContainer';
5406
+ /** App containing the container. */
5407
+ appId: Scalars['BigInt']['output'];
5408
+ /** Player container UUID. */
5409
+ containerId: Scalars['String']['output'];
5410
+ /** Container creation time. */
5411
+ createdAt: Scalars['DateTime']['output'];
5412
+ /** Optional player-facing name. */
5413
+ displayName: Maybe<Scalars['String']['output']>;
5414
+ /** Grid confining the container. */
5415
+ gridId: Scalars['BigInt']['output'];
5416
+ /** Owning user. Always the grid owner at creation time. */
5417
+ ownerUserId: Scalars['BigInt']['output'];
5418
+ /** JSON object containing all separately upserted properties. */
5419
+ propertiesJson: Scalars['String']['output'];
5420
+ /** JSON object containing untyped container state. */
5421
+ stateJson: Scalars['String']['output'];
5422
+ /** Flexible instance kit key; this is not a studio-authored type. */
5423
+ typeKey: Scalars['String']['output'];
5424
+ /** Most recent container or property update time. */
5425
+ updatedAt: Scalars['DateTime']['output'];
5426
+ };
5427
+ /** Identify one player-owned model container within an app and grid. The server also forces the current caller as owner. */
5428
+ export type PlayerModelContainerRefInput = {
5429
+ /** App containing the owned grid. */
5430
+ appId: Scalars['BigInt']['input'];
5431
+ /** Player container UUID. */
5432
+ containerId: Scalars['String']['input'];
5433
+ /** Grid that confines the container. */
5434
+ gridId: Scalars['BigInt']['input'];
5435
+ };
4493
5436
  /** Live concurrent players for a studio vs its all-time peak, a percentile comparison against other studios, and the site-wide CKS total. */
4494
5437
  export type PlayerPulse = {
4495
5438
  __typename?: 'PlayerPulse';
@@ -4506,19 +5449,245 @@ export type PlayerPulse = {
4506
5449
  /** Number of studios in the percentile comparison pool (studios with all_time_peak > 0). */
4507
5450
  poolSize: Scalars['Int']['output'];
4508
5451
  };
4509
- /** A one-time portal authorization code. Redirect the player to `redirectUri` carrying `code`; the destination game exchanges it (with its PKCE verifier) via exchangePortalCode for an app token. Single-use and short-lived. */
4510
- export type PortalAuthorizationCode = {
4511
- __typename?: 'PortalAuthorizationCode';
4512
- /** The one-time authorization code. Deliver it to the destination game origin only (e.g. as a `code` query param on redirectUri). */
4513
- code: Scalars['String']['output'];
4514
- /** ISO-8601 UTC expiry of the code (typically ~60s). */
4515
- expiresAt: Scalars['String']['output'];
4516
- /** The validated redirect URI the player should be sent to. */
4517
- redirectUri: Scalars['String']['output'];
5452
+ /** The caller's per-app player runtime gate state (the app runtime_status twin, player-scoped): 'active', 'grace', or 'denied' with a typed reason. Non-active pauses the player's grid compute only an unfunded wallet stops your mods, not your game. */
5453
+ export type PlayerRuntimeState = {
5454
+ __typename?: 'PlayerRuntimeState';
5455
+ /** The app. */
5456
+ appId: Scalars['BigInt']['output'];
5457
+ /** PLAYER_WALLET_EMPTY or PLAYER_SPEND_CAP when not active. */
5458
+ reason: Maybe<Scalars['String']['output']>;
5459
+ /** 'active', 'grace', or 'denied'. */
5460
+ status: Scalars['String']['output'];
5461
+ /** Last gate evaluation that changed state. */
5462
+ updatedAt: Scalars['DateTime']['output'];
5463
+ /** The player user id. */
5464
+ userId: Scalars['BigInt']['output'];
4518
5465
  };
4519
- /** Whether portaling into an app requires a consent prompt on the Overworld. */
4520
- export type PortalConsentState = {
4521
- __typename?: 'PortalConsentState';
5466
+ /** A player's self-set spend cap (06 §2a): a daily/monthly ceiling globally or per app. The effective runtime limit is min(developer policy, self-cap, wallet balance); hitting a cap pauses that player's mods with PLAYER_SPEND_CAP, never their play. */
5467
+ export type PlayerSpendCap = {
5468
+ __typename?: 'PlayerSpendCap';
5469
+ /** Spend counted against the daily cap so far today. */
5470
+ currentDayUsageCents: Scalars['BigInt']['output'];
5471
+ /** Spend counted against the monthly cap so far this month. */
5472
+ currentMonthUsageCents: Scalars['BigInt']['output'];
5473
+ /** Daily ceiling in cents; null = no daily cap. */
5474
+ dailyLimitCents: Maybe<Scalars['BigInt']['output']>;
5475
+ /** Calendar-month ceiling in cents; null = no monthly cap. */
5476
+ monthlyLimitCents: Maybe<Scalars['BigInt']['output']>;
5477
+ /** Cap scope: 'global' or 'app'. */
5478
+ scope: Scalars['String']['output'];
5479
+ /** The app id for app scope; null for global. */
5480
+ scopeRef: Maybe<Scalars['BigInt']['output']>;
5481
+ /** The owning player user id. */
5482
+ userId: Scalars['BigInt']['output'];
5483
+ };
5484
+ /** One posted player usage charge: a (player, app, closed clock hour) row. amountCents = platformCents + markupCents — players see what the platform charges and what the studio adds (06 §4). The UNIQUE hour key makes the billing tick idempotent. */
5485
+ export type PlayerUsageCharge = {
5486
+ __typename?: 'PlayerUsageCharge';
5487
+ /** Total debited cents. */
5488
+ amountCents: Scalars['BigInt']['output'];
5489
+ /** The app the usage ran in. */
5490
+ appId: Scalars['BigInt']['output'];
5491
+ /** Charge id. */
5492
+ chargeId: Scalars['BigInt']['output'];
5493
+ /** When the charge posted. */
5494
+ createdAt: Scalars['DateTime']['output'];
5495
+ /** ISO currency code. */
5496
+ currency: Scalars['String']['output'];
5497
+ /** Studio markup component (the app's player_rate_markup_bps). */
5498
+ markupCents: Scalars['BigInt']['output'];
5499
+ /** Billed hour end (exclusive). */
5500
+ periodEnd: Scalars['DateTime']['output'];
5501
+ /** Billed hour start (inclusive). */
5502
+ periodStart: Scalars['DateTime']['output'];
5503
+ /** Platform component (base rate card). */
5504
+ platformCents: Scalars['BigInt']['output'];
5505
+ /** JSON per-metric usage/billing snapshot for the hour. */
5506
+ usageSnapshotJson: Scalars['String']['output'];
5507
+ /** The owning player user id. */
5508
+ userId: Scalars['BigInt']['output'];
5509
+ };
5510
+ /** The caller's player wallet (player compute P2, DN-5): a platform-scoped balance funding that player's grid compute across every org/app they play in. Out-of-band from org wallets — player usage never touches an org's money. */
5511
+ export type PlayerWallet = {
5512
+ __typename?: 'PlayerWallet';
5513
+ /** Current balance in cents (may go negative on a closed hour). */
5514
+ balanceCents: Scalars['BigInt']['output'];
5515
+ /** Wallet creation time. */
5516
+ createdAt: Scalars['DateTime']['output'];
5517
+ /** ISO currency code (lowercase). */
5518
+ currency: Scalars['String']['output'];
5519
+ /** The owning player user id. */
5520
+ userId: Scalars['BigInt']['output'];
5521
+ /** Wallet id. */
5522
+ walletId: Scalars['BigInt']['output'];
5523
+ };
5524
+ /** One player-wallet ledger entry: top-ups, hourly usage debits, auto-recharges, refunds, and adjustments. Usage debits carry the app and reference the hour's charge row, whose snapshot splits platform vs studio-markup components. */
5525
+ export type PlayerWalletTransaction = {
5526
+ __typename?: 'PlayerWalletTransaction';
5527
+ /** Signed amount in cents (debits negative). */
5528
+ amountCents: Scalars['BigInt']['output'];
5529
+ /** The app a usage debit covers; null for wallet-level entries. */
5530
+ appId: Maybe<Scalars['BigInt']['output']>;
5531
+ /** Balance after this entry. */
5532
+ balanceAfter: Scalars['BigInt']['output'];
5533
+ /** Entry time. */
5534
+ createdAt: Scalars['DateTime']['output'];
5535
+ /** Human description. */
5536
+ description: Maybe<Scalars['String']['output']>;
5537
+ /** External reference (checkout/PaymentIntent id). */
5538
+ referenceId: Maybe<Scalars['String']['output']>;
5539
+ /** Transaction id. */
5540
+ transactionId: Scalars['BigInt']['output'];
5541
+ /** One of 'topup', 'usage_debit', 'auto_recharge', 'refund', 'adjustment'. */
5542
+ transactionType: Scalars['String']['output'];
5543
+ /** The owning player user id. */
5544
+ userId: Scalars['BigInt']['output'];
5545
+ /** The wallet. */
5546
+ walletId: Scalars['BigInt']['output'];
5547
+ };
5548
+ /** A grid-bound player compute module. Runtime identity is never stored here; it resolves from the grid current owner at activation. */
5549
+ export type PlayerWasmModule = {
5550
+ __typename?: 'PlayerWasmModule';
5551
+ /** Owning app id. */
5552
+ appId: Scalars['BigInt']['output'];
5553
+ /** Authoring org id; null for personally-authored code. */
5554
+ authorOrgId: Maybe<Scalars['BigInt']['output']>;
5555
+ /** Personal author user id; null for org-owned code. */
5556
+ authorUserId: Maybe<Scalars['BigInt']['output']>;
5557
+ /** closed, open, or half_open. */
5558
+ circuitState: Scalars['String']['output'];
5559
+ /** Creation time. */
5560
+ createdAt: Scalars['DateTime']['output'];
5561
+ /** Currently deployed immutable version UUID. */
5562
+ currentVersionId: Maybe<Scalars['String']['output']>;
5563
+ /** Module description. */
5564
+ description: Maybe<Scalars['String']['output']>;
5565
+ /** Draft mode: the module runs for its author but its spatial egress is suppressed server-side (live-coding iteration). */
5566
+ draft: Scalars['Boolean']['output'];
5567
+ /** Requested activation state. Actual execution also requires grid ownership, run permission, admission, and a successful version. */
5568
+ enabled: Scalars['Boolean']['output'];
5569
+ /** Confining grid id. */
5570
+ gridId: Scalars['BigInt']['output'];
5571
+ /** Last runtime/transfer error. */
5572
+ lastError: Maybe<Scalars['String']['output']>;
5573
+ /** Module UUID. */
5574
+ moduleId: Scalars['String']['output'];
5575
+ /** Module name within the grid. */
5576
+ name: Scalars['String']['output'];
5577
+ /** Last update time. */
5578
+ updatedAt: Scalars['DateTime']['output'];
5579
+ };
5580
+ /** One execution of a player module (init/tick/invoke/event), attributed to the grid owner it ran as. The per-run twin of the studio WasmModuleRun, scoped to grids the caller currently owns. */
5581
+ export type PlayerWasmModuleRun = {
5582
+ __typename?: 'PlayerWasmModuleRun';
5583
+ /** The app (tenant). */
5584
+ appId: Scalars['BigInt']['output'];
5585
+ /** Wall-clock duration in microseconds. */
5586
+ durationUs: Scalars['Int']['output'];
5587
+ /** Typed failure kind when the run failed. */
5588
+ errorMessage: Maybe<Scalars['String']['output']>;
5589
+ /** Execution identity: the grid owner the run executed as. */
5590
+ executedAsUserId: Scalars['BigInt']['output'];
5591
+ /** Flow correlation id shared across the entry call. */
5592
+ flowId: Maybe<Scalars['String']['output']>;
5593
+ /** Fuel consumed by the run. */
5594
+ fuelUsed: Scalars['BigInt']['output'];
5595
+ /** The owned grid the module ran in. */
5596
+ gridId: Scalars['BigInt']['output'];
5597
+ /** The module that ran. */
5598
+ moduleId: Scalars['String']['output'];
5599
+ /** The module name at run time. */
5600
+ moduleName: Scalars['String']['output'];
5601
+ /** Unique run id (UUID). */
5602
+ runId: Scalars['String']['output'];
5603
+ /** When the run started. */
5604
+ startedAt: Scalars['DateTime']['output'];
5605
+ /** Whether the run succeeded. */
5606
+ success: Scalars['Boolean']['output'];
5607
+ /** What ran: init | tick | event | invoke. */
5608
+ triggerSource: Scalars['String']['output'];
5609
+ };
5610
+ /** An immutable player-code source version. sourceFilesJson is returned only to its personal author (org-owned source requires the future org-authoring path) or when openSource is true. */
5611
+ export type PlayerWasmModuleVersion = {
5612
+ __typename?: 'PlayerWasmModuleVersion';
5613
+ /** Compiler log; visible to the author. */
5614
+ compileLog: Maybe<Scalars['String']['output']>;
5615
+ /** pending, compiling, succeeded, or failed. */
5616
+ compileStatus: Scalars['String']['output'];
5617
+ /** Final instrumented/optimized artifact size. */
5618
+ compiledSizeBytes: Maybe<Scalars['BigInt']['output']>;
5619
+ /** Version creation time. */
5620
+ createdAt: Scalars['DateTime']['output'];
5621
+ /** Parent module UUID. */
5622
+ moduleId: Scalars['String']['output'];
5623
+ /** Whether anyone may read this immutable version source. */
5624
+ openSource: Scalars['Boolean']['output'];
5625
+ /** JSON source map. Null for non-authors of closed-source code; P1 exposes no moderation override. */
5626
+ sourceFilesJson: Maybe<Scalars['String']['output']>;
5627
+ /** Compile target. */
5628
+ target: PlayerComputeTarget;
5629
+ /** Version UUID. */
5630
+ versionId: Scalars['String']['output'];
5631
+ /** Monotonic version number. */
5632
+ versionNo: Scalars['Int']['output'];
5633
+ };
5634
+ /** One player-compute policy row (06 §3): developer-set per-player/cohort clamps evaluated most-specific-wins (user > grid > tier > app_default), every knob additionally clamped by the app's studio policy at runtime. Management is authoritative in P2; rows replica-sync to the game runtime. */
5635
+ export type PlayerWasmPolicy = {
5636
+ __typename?: 'PlayerWasmPolicy';
5637
+ /** The app. */
5638
+ appId: Scalars['BigInt']['output'];
5639
+ /** Client-target fuel budget per browser dispatch (04 §3). */
5640
+ clientFuelPerDispatch: Scalars['BigInt']['output'];
5641
+ /** Whether this row is applied. */
5642
+ enabled: Scalars['Boolean']['output'];
5643
+ /** Fuel budget per invoke/event. */
5644
+ fuelPerInvoke: Scalars['BigInt']['output'];
5645
+ /** Fuel budget per tick. */
5646
+ fuelPerTick: Scalars['BigInt']['output'];
5647
+ /** Deploys (compiles) allowed per player per hour. */
5648
+ maxCompilesPerHour: Scalars['Int']['output'];
5649
+ /** Player model containers created per player per day. */
5650
+ maxContainerCreatesDay: Scalars['Int']['output'];
5651
+ /** Host data-API ops per tick. */
5652
+ maxDbOpsPerTick: Scalars['Int']['output'];
5653
+ /** Module replication bytes per minute. */
5654
+ maxEgressBytesPerMin: Scalars['BigInt']['output'];
5655
+ /** Module replication messages per minute. */
5656
+ maxEgressMsgsPerMin: Scalars['Int']['output'];
5657
+ /** Sandbox memory ceiling (MiB). */
5658
+ maxMemoryMb: Scalars['Int']['output'];
5659
+ /** Max player modules per grid. */
5660
+ maxModulesPerGrid: Scalars['Int']['output'];
5661
+ /** Max player modules across all grids one player owns. */
5662
+ maxModulesTotal: Scalars['Int']['output'];
5663
+ /** Watchdog wall-clock ceiling (ms). */
5664
+ maxRunMs: Scalars['Int']['output'];
5665
+ /** Max tick rate in Hz. */
5666
+ maxTickHz: Scalars['Float']['output'];
5667
+ /** Policy row UUID. */
5668
+ policyId: Scalars['String']['output'];
5669
+ /** 'app_default', 'tier', 'grid', or 'user'. */
5670
+ scope: Scalars['String']['output'];
5671
+ /** Tier/grid/user id; null for app_default. */
5672
+ scopeRef: Maybe<Scalars['BigInt']['output']>;
5673
+ /** Daily compute-unit quota; null = uncapped. */
5674
+ unitsPerDay: Maybe<Scalars['BigInt']['output']>;
5675
+ /** Hourly compute-unit quota (PLAYER_QUOTA_EXHAUSTED pause); null = uncapped. */
5676
+ unitsPerHour: Maybe<Scalars['BigInt']['output']>;
5677
+ };
5678
+ /** A one-time portal authorization code. Redirect the player to `redirectUri` carrying `code`; the destination game exchanges it (with its PKCE verifier) via exchangePortalCode for an app token. Single-use and short-lived. */
5679
+ export type PortalAuthorizationCode = {
5680
+ __typename?: 'PortalAuthorizationCode';
5681
+ /** The one-time authorization code. Deliver it to the destination game origin only (e.g. as a `code` query param on redirectUri). */
5682
+ code: Scalars['String']['output'];
5683
+ /** ISO-8601 UTC expiry of the code (typically ~60s). */
5684
+ expiresAt: Scalars['String']['output'];
5685
+ /** The validated redirect URI the player should be sent to. */
5686
+ redirectUri: Scalars['String']['output'];
5687
+ };
5688
+ /** Whether portaling into an app requires a consent prompt on the Overworld. */
5689
+ export type PortalConsentState = {
5690
+ __typename?: 'PortalConsentState';
4522
5691
  /** True if the user already has an active grant for this app. */
4523
5692
  alreadyGranted: Scalars['Boolean']['output'];
4524
5693
  /** App id, as a String. */
@@ -4560,6 +5729,32 @@ export type PublishEnvironmentReleaseFromGameApiTagInput = {
4560
5729
  /** cks-game-api semver tag (e.g. v0.6.20). */
4561
5730
  gameApiTag: Scalars['String']['input'];
4562
5731
  };
5732
+ export type PublishPlayerCodeInput = {
5733
+ /** App the listing belongs to. */
5734
+ appId: Scalars['BigInt']['input'];
5735
+ /** Store description. */
5736
+ description?: InputMaybe<Scalars['String']['input']>;
5737
+ /** Default source-access mode for new versions (default CLOSED). */
5738
+ licenseMode?: InputMaybe<PlayerCodeLicenseMode>;
5739
+ /** JSON array of media refs for store display. */
5740
+ mediaJson?: InputMaybe<Scalars['String']['input']>;
5741
+ /** Listing display name (unique per app among live listings). */
5742
+ name: Scalars['String']['input'];
5743
+ /** Publish under this org (DN-9 org-owned code: the org then holds source access and listing control). Requires manage_compute in that org. Omit to publish personally. */
5744
+ ownerOrgId?: InputMaybe<Scalars['BigInt']['input']>;
5745
+ };
5746
+ export type PublishPlayerCodeVersionInput = {
5747
+ /** App the listing belongs to. */
5748
+ appId: Scalars['BigInt']['input'];
5749
+ /** Author license terms shown at acquisition. */
5750
+ licenseText?: InputMaybe<Scalars['String']['input']>;
5751
+ /** UUID of the listing to publish under. */
5752
+ listingId: Scalars['String']['input'];
5753
+ /** UUIDs of the caller-authored, successfully compiled player module versions to package. Server and client versions may be combined into a bundle. The publish pipeline snapshots artifact hashes and the derived capability summary — never source. */
5754
+ moduleVersionIds: Array<Scalars['String']['input']>;
5755
+ /** Open-source this published version (irreversible for the version). */
5756
+ openSource?: InputMaybe<Scalars['Boolean']['input']>;
5757
+ };
4563
5758
  export type PurgeEnvironmentInput = {
4564
5759
  /** Optional idempotency key. Recommended for retries: replaying with the same key and identical input returns the first result instead of re-applying; the same key with different input returns IDEMPOTENCY_CONFLICT. Keys expire after 24h. */
4565
5760
  idempotencyKey?: InputMaybe<Scalars['String']['input']>;
@@ -4590,10 +5785,26 @@ export type Query = {
4590
5785
  appBudgets: Array<AppBudget>;
4591
5786
  /** Look up a single app by its org slug + app slug (the marketplace URL path). PUBLIC: no authentication required, and NOT filtered by visibility/status, so it can resolve unlisted or draft apps when the exact slugs are known. Returns null if no matching app exists. */
4592
5787
  appBySlug: Maybe<App>;
5788
+ /** Read an app's player-code admission mode. Requires 'view_compute_diagnostics'. IMPLICIT_ALLOW (the default) admits lawful player code without curation; ALLOW_LIST requires every running server/client artifact, including self-authored code, to match an active code, author, or org admission. */
5789
+ appCodeAdmissionMode: CodeAdmissionMode;
5790
+ /** The app's admission queue: every non-killed listing joined with its allow-list standing (ADMITTED via a matching code/author/org admission, PENDING, or REVOKED). Requires 'view_compute_diagnostics'. In allow_list apps PENDING listings are browsable but uninstallable; admit them via admitAppCode (subject kind CODE for one listing, AUTHOR or ORG for wholesale admission). */
5791
+ appCodeAdmissionQueue: Array<PlayerCodeAdmissionQueueEntry>;
5792
+ /** List an app's player-code admission entries, newest first. Requires 'view_compute_diagnostics'. By default returns active entries only; includeRevoked adds audit-visible revoked rows. Admission controls execution, never source visibility. */
5793
+ appCodeAdmissions: Array<AppCodeAdmission>;
4593
5794
  /** Lists org members eligible for a manual app access grant (active members of the app's owning org). Requires the 'manage_access_tiers' permission on the app; super admins bypass. Use the returned user ids with grantAppAccess. */
4594
5795
  appGrantMemberCandidates: Array<AppGrantMemberCandidate>;
4595
5796
  /** Top GraphQL operations for an app ranked by bytes over the time range. Read-only reporting; the app must be linked to an environment in the org. Requires the 'view_usage' org permission. */
4596
5797
  appGraphqlOperations: Array<GraphqlOperationUsageRow>;
5798
+ /** List an app's code acquisitions (entitlement rows), newest first. Requires 'view_compute_diagnostics'. All rows are mode FREE in P4a; uninstalls never delete acquisitions (audit). */
5799
+ appPlayerCodeAcquisitions: Array<PlayerCodeAcquisition>;
5800
+ /** List the immutable published versions of a listing, newest first. Requires 'view_compute_diagnostics'. Versions expose artifact hashes and the derived capability summary — never source. */
5801
+ appPlayerCodeListingVersions: Array<PlayerCodeVersion>;
5802
+ /** List an app's marketplace code listings (studio administration view), newest first. Requires 'view_compute_diagnostics'. includeDelisted adds delisted/killed rows for moderation history. */
5803
+ appPlayerCodeListings: Array<PlayerCodeListing>;
5804
+ /** Total player rate-card markup accrued to this app's org income line, in cents (payouts arrive with the P4b ledger). Requires 'view_billing'. */
5805
+ appPlayerMarkupAccrued: Scalars['BigInt']['output'];
5806
+ /** Per-player usage aggregate for an app over a trailing window (top spenders / quota utilization, 06 §5): compute units, automation units, compiles, and cents charged per player. Requires 'view_compute_diagnostics'. */
5807
+ appPlayerUsage: Array<AppPlayerUsageRow>;
4597
5808
  /** Shared-environment runtime gate decision plus current hour/day billing-window usage for an app. Read this to learn why an app is not running (runtimeDenialReason). Caller must be a member of the app's org. */
4598
5809
  appRuntimeState: AppRuntimeState;
4599
5810
  /** An app's paid shared-environment subscription, or null when it has none (e.g. unpublished or on the free quota). Caller must be a member of the app's org. */
@@ -4640,6 +5851,8 @@ export type Query = {
4640
5851
  checkouts: CheckoutsPage;
4641
5852
  /** Cross-tenant payments audit across all users, orgs, and apps (newest first), with optional filtering. Restricted to super admins; requests from non-super-admins are rejected. For a caller's own history use `myCheckoutsConnection` instead. Relay cursor connection; prefer this over the offset-based checkouts. */
4642
5853
  checkoutsConnection: CheckoutsConnection;
5854
+ /** The app's open T11 commerce risk queue (velocity holds, same-party flags, chargebacks). Requires 'manage_compute'. */
5855
+ commerceRiskQueue: Array<CommerceRiskFlag>;
4643
5856
  /** A snapshot of an app's compute footprint: module/version/trigger counts plus 24h run activity and the most-active modules. Requires the org 'view_compute_diagnostics' permission. */
4644
5857
  computeAppDiagnostics: WasmAppDiagnostics;
4645
5858
  /** Read one compute module by name. Requires the org 'view_compute_diagnostics' permission. */
@@ -4768,8 +5981,18 @@ export type Query = {
4768
5981
  graphqlBillingTiers: Array<GraphqlBillingTier>;
4769
5982
  /** List every registered GraphQL API server (both management-api and game-api kinds), regardless of health/state. No authentication required. For service discovery; to route clients, prefer activeGraphQLServers (filters to healthy servers). */
4770
5983
  graphqlServers: Array<GraphQlServer>;
5984
+ /** The app's grid claim policy (D4): how a player claim confers grid ownership. */
5985
+ gridClaimPolicy: GridClaimPolicy;
5986
+ /** Pending grid claim requests: designated approvers (or studio staff holding manage_compute) see the app's queue; other callers see their own requests. */
5987
+ gridClaimRequests: Array<GridClaimRequest>;
5988
+ /** Client mods attached to a grid (bundled listings installed by the grid owner, D2). A player present in the grid may run one only after consenting to its capability hash via consentGridClientMod; callerConsented reports the caller's state. This is how grid authors offer client compute to visitors — e.g. relaying actor updates to the grid's server compute. */
5989
+ gridClientMods: Array<GridClientMod>;
4771
5990
  /** List the group/role -> permission-key grants configured on a grid for one group (rows of the `grid_group_grants` input table). These are inputs to the effective ACL, not the materialized result — use `gridUserPermissions` for a specific user's effective keys. Requires app-admin ('manage_apps'). */
4772
5991
  gridGroupGrants: Array<GridGroupGrant>;
5992
+ /** Browse the app's grid listings (P4b): blueprints that stamp a fresh grid per purchase, or concrete grids. Buying confers ownership + keys + quota preset atomically. */
5993
+ gridListings: Array<GridListing>;
5994
+ /** Read the current first-class ownership record for a grid. Requires authentication. Returns null when the grid has no current/unexpired owner. Player server code always resolves its execution identity from this record. */
5995
+ gridOwnership: Maybe<GridOwnership>;
4773
5996
  /** Read the permission-key whitelist configured for a grid. An empty list means there is no limit (every active runtime permission may be granted on the grid). Requires app-admin ('manage_apps'). */
4774
5997
  gridPermissionLimits: GridPermissionLimits;
4775
5998
  /** Read one user's effective (materialized) runtime permission keys on a grid — the flattened union of direct and group-derived grants that Buddy enforces, with expired grants excluded. Use this to see what a user can actually do. To inspect the underlying inputs instead, use `gridGroupGrants` (group grants) and `gridPermissionLimits` (the whitelist). Requires app-admin ('manage_apps'). */
@@ -4805,11 +6028,17 @@ export type Query = {
4805
6028
  myIdentities: Array<UserIdentity>;
4806
6029
  /** Lists the authenticated caller's organization memberships. Each entry bundles the org, the caller's effective permission keys, and assigned roles. Requires a valid session token. */
4807
6030
  myOrganizations: Array<OrgMembership>;
6031
+ /** The caller's code entitlements in this app (all mode 'free' in P4a). Uninstalls never remove acquisitions. */
6032
+ myPlayerCodeAcquisitions: Array<PlayerCodeAcquisition>;
6033
+ /** The caller's active installs in this app: pinned versions, consent hashes, and target grids. */
6034
+ myPlayerCodeInstalls: Array<PlayerCodeInstall>;
4808
6035
  /**
4809
6036
  * The authenticated user’s property-token balances (available, in use, total). Requires a valid game token. NOTE: property tokens are management-owned, so in cks-game-api this throws ForbiddenException — call cks-management-api instead.
4810
6037
  * @deprecated Legacy donation/property-token data; these products are no longer purchasable. Retained for historical records.
4811
6038
  */
4812
6039
  myPropertyTokens: UserPropertyTokenData;
6040
+ /** The calling player's seller payout balance (pending/payable/reserved). */
6041
+ mySellerPayoutBalance: SellerPayoutBalance;
4813
6042
  /** The caller's teams in an app, with their roles and effective team permissions. Use this to discover which teams the current user belongs to and what they may do in each. */
4814
6043
  myTeams: Array<GroupMembership>;
4815
6044
  /** List every grid overlapping a chunk-coordinate bounding box, each with the given user's effective permission keys on it. Useful for previewing what a user can do across a region (e.g. around their current position). Requires app-admin ('manage_apps'). */
@@ -4850,8 +6079,50 @@ export type Query = {
4850
6079
  paymentEventsConnection: PaymentEventsConnection;
4851
6080
  /** Public platform discovery. Returns the shared game-api URL clients use for shared-environment apps (served by the platform shared environment). No auth required. */
4852
6081
  platformConfig: PlatformConfig;
6082
+ /** The caller's player-wallet auto-recharge settings (off-session card top-up before the player gate denies for funds). */
6083
+ playerAutoBilling: PlayerAutoBilling;
6084
+ /** List only the caller-owned player automations in one currently owned grid. Requires an app-scoped token; no app-wide listing exists. */
6085
+ playerAutomations: Array<PlayerAutomation>;
6086
+ /** Fetch the client half of an acquired or grid-attached listing (P4a — the deliberate widening of the P3 author-only artifact fetch). Served to an entitled acquirer with a live install, or to a consenting player currently PRESENT in a grid with a live attachment. Both paths require run_client_code and the listing admitted under the app's mode; every factor fails closed as 'not found'. */
6087
+ playerCodeClientArtifact: PlayerClientArtifact;
6088
+ /** List the immutable published versions of a listing, newest first, with each version’s derived capability summary and consent hash. */
6089
+ playerCodeListingVersions: Array<PlayerCodeListingVersion>;
6090
+ /** Browse an app's active marketplace code listings (free mode). Each listing carries its admission standing: in allow_list apps a PENDING listing can be acquired but not installed. Closed-source listings expose artifact hashes and the derived capability summary only — never source. */
6091
+ playerCodeListings: Array<PlayerCodeListing>;
6092
+ /** Fetch a compiled CLIENT player artifact plus the metadata the browser broker needs to run it (player compute P3). Fail-closed: the caller must currently own the grid, be the version's author, hold run_client_code at app and grid scope, and the code must be admitted under the app's mode. Returns the gas-injected wasm bytes (base64), the declared client contract, and the per-dispatch fuel budget the glue worker enforces. Acquired (bought/rented) client code is served through the marketplace path in a later phase. */
6093
+ playerComputeArtifact: PlayerClientArtifact;
6094
+ /** Failed-run diagnostics for player modules on a grid the caller currently owns: the failing runs with their typed error kinds, newest first. The owner-scoped twin of computeModuleLogs. */
6095
+ playerComputeLogs: Array<PlayerWasmModuleRun>;
6096
+ /** List player modules the caller authored or that are installed on grids they currently own. Requires a valid app token; closed source is never included here. */
6097
+ playerComputeMyModules: Array<PlayerWasmModule>;
6098
+ /** List executions of player modules on a grid the caller currently owns, newest first. Every run is attributed to the grid owner it executed as; author identity never appears here. */
6099
+ playerComputeRuns: Array<PlayerWasmModuleRun>;
6100
+ /** Active player-compute kill switches for an app, newest first. Requires the org 'view_compute_diagnostics' permission. */
6101
+ playerComputeSwitches: Array<PlayerComputeSwitch>;
6102
+ /** The caller's player-compute spend and quota view for one app (P2): compute units used in the current clock hour/day vs the effective units_per_hour/units_per_day policy caps, compile-quota utilization, and the wallet/spend-cap gate state with its typed reason. This is the remaining-budget source the live-coding panel consumes. */
6103
+ playerComputeUsage: PlayerComputeUsage;
6104
+ /** List immutable versions for one player module. Source and compile logs are returned only to the personal author, or source when that version is open-source. There is intentionally no studio/operator moderation override. */
6105
+ playerComputeVersions: Array<PlayerWasmModuleVersion>;
6106
+ /** Return one caller-owned player-model container in the specified app/grid, or null when it is absent or outside that owner scope. Requires current grid ownership. */
6107
+ playerModelContainer: Maybe<PlayerModelContainer>;
6108
+ /** List flexible player-model containers owned by the caller in one currently owned grid. Requires an app-scoped token and current grid ownership; never returns app-wide or foreign-owner rows. */
6109
+ playerModelContainers: Array<PlayerModelContainer>;
4853
6110
  /** Live concurrent players for the org vs its all-time peak, a percentile comparison against other studios, and the site-wide total. Requires the 'view_usage' org permission. */
4854
6111
  playerPulse: PlayerPulse;
6112
+ /** The app's player rate-card markup in basis points on the platform base price (06 §4): the studio's usage-revenue stream, shown to players as a separate spend-history component. 0 = no markup (the BWF posture). Requires 'view_billing'. */
6113
+ playerRateMarkup: Scalars['Int']['output'];
6114
+ /** The caller's per-app player runtime gate states. Only apps where the gate has ever acted appear; absence means active. 'denied' with PLAYER_WALLET_EMPTY or PLAYER_SPEND_CAP pauses that player's grid compute only — play is never touched. */
6115
+ playerRuntimeStates: Array<PlayerRuntimeState>;
6116
+ /** The caller's self-set spend caps (global and per-app) with running counters. The effective runtime limit is min(developer policy, self-cap, wallet balance). */
6117
+ playerSpendCaps: Array<PlayerSpendCap>;
6118
+ /** The caller's posted hourly player-usage charges, newest first, optionally filtered by app. Each charge splits platformCents (base rate card) from markupCents (the studio's configured markup) with a per-metric snapshot — players always see what the platform charges and what the studio adds. */
6119
+ playerUsageCharges: Array<PlayerUsageCharge>;
6120
+ /** The caller's player wallet, created empty on first access (never null). Platform-scoped: one wallet funds the player's grid compute across every org/app (DN-5); org billing never touches it. Fund it via createCheckout purpose PLAYER_WALLET_TOPUP. */
6121
+ playerWalletBalance: PlayerWallet;
6122
+ /** The caller's player-wallet ledger, newest first: top-ups, hourly usage debits (per app), auto-recharges, refunds, and adjustments. Usage-debit hours are broken down by playerUsageCharges, whose snapshot splits the platform and studio-markup components. */
6123
+ playerWalletTransactions: Array<PlayerWalletTransaction>;
6124
+ /** List an app's player-compute policy rows (developer cost/rate clamps per player or cohort, 06 §3), most general first. Requires 'view_compute_diagnostics'. Management is authoritative; rows replica-sync to the game runtime on change. */
6125
+ playerWasmPolicies: Array<PlayerWasmPolicy>;
4855
6126
  /** Whether portaling the calling user into an app needs a consent prompt. Trusted (first-party) apps and already-granted apps return consentRequired=false. The Overworld calls this before createPortalAuthorizationCode. Requires a SESSION token. */
4856
6127
  portalConsent: PortalConsentState;
4857
6128
  /** Public read-only catalog of active Postgres billing tiers. Usage metering deferred. */
@@ -4934,6 +6205,16 @@ export type QueryAppBySlugArgs = {
4934
6205
  appSlug: Scalars['String']['input'];
4935
6206
  orgSlug: Scalars['String']['input'];
4936
6207
  };
6208
+ export type QueryAppCodeAdmissionModeArgs = {
6209
+ appId: Scalars['BigInt']['input'];
6210
+ };
6211
+ export type QueryAppCodeAdmissionQueueArgs = {
6212
+ appId: Scalars['BigInt']['input'];
6213
+ };
6214
+ export type QueryAppCodeAdmissionsArgs = {
6215
+ appId: Scalars['BigInt']['input'];
6216
+ includeRevoked?: InputMaybe<Scalars['Boolean']['input']>;
6217
+ };
4937
6218
  export type QueryAppGrantMemberCandidatesArgs = {
4938
6219
  appId: Scalars['BigInt']['input'];
4939
6220
  };
@@ -4943,6 +6224,24 @@ export type QueryAppGraphqlOperationsArgs = {
4943
6224
  orgId: Scalars['BigInt']['input'];
4944
6225
  since: Scalars['DateTime']['input'];
4945
6226
  };
6227
+ export type QueryAppPlayerCodeAcquisitionsArgs = {
6228
+ appId: Scalars['BigInt']['input'];
6229
+ };
6230
+ export type QueryAppPlayerCodeListingVersionsArgs = {
6231
+ appId: Scalars['BigInt']['input'];
6232
+ listingId: Scalars['String']['input'];
6233
+ };
6234
+ export type QueryAppPlayerCodeListingsArgs = {
6235
+ appId: Scalars['BigInt']['input'];
6236
+ includeDelisted?: InputMaybe<Scalars['Boolean']['input']>;
6237
+ };
6238
+ export type QueryAppPlayerMarkupAccruedArgs = {
6239
+ appId: Scalars['BigInt']['input'];
6240
+ };
6241
+ export type QueryAppPlayerUsageArgs = {
6242
+ appId: Scalars['BigInt']['input'];
6243
+ hours?: InputMaybe<Scalars['Int']['input']>;
6244
+ };
4946
6245
  export type QueryAppRuntimeStateArgs = {
4947
6246
  appId: Scalars['BigInt']['input'];
4948
6247
  };
@@ -5026,6 +6325,9 @@ export type QueryCheckoutsConnectionArgs = {
5026
6325
  filter?: InputMaybe<CheckoutFilterInput>;
5027
6326
  first?: InputMaybe<Scalars['Int']['input']>;
5028
6327
  };
6328
+ export type QueryCommerceRiskQueueArgs = {
6329
+ appId: Scalars['BigInt']['input'];
6330
+ };
5029
6331
  export type QueryComputeAppDiagnosticsArgs = {
5030
6332
  appId: Scalars['BigInt']['input'];
5031
6333
  };
@@ -5255,11 +6557,28 @@ export type QueryGetChunksByDistanceArgs = {
5255
6557
  export type QueryGetVoxelListArgs = {
5256
6558
  input: GetVoxelListInput;
5257
6559
  };
6560
+ export type QueryGridClaimPolicyArgs = {
6561
+ appId: Scalars['BigInt']['input'];
6562
+ };
6563
+ export type QueryGridClaimRequestsArgs = {
6564
+ appId: Scalars['BigInt']['input'];
6565
+ };
6566
+ export type QueryGridClientModsArgs = {
6567
+ appId: Scalars['BigInt']['input'];
6568
+ gridId: Scalars['BigInt']['input'];
6569
+ };
5258
6570
  export type QueryGridGroupGrantsArgs = {
5259
6571
  appId: Scalars['BigInt']['input'];
5260
6572
  gridId: Scalars['BigInt']['input'];
5261
6573
  groupId: Scalars['BigInt']['input'];
5262
6574
  };
6575
+ export type QueryGridListingsArgs = {
6576
+ appId: Scalars['BigInt']['input'];
6577
+ };
6578
+ export type QueryGridOwnershipArgs = {
6579
+ appId: Scalars['BigInt']['input'];
6580
+ gridId: Scalars['BigInt']['input'];
6581
+ };
5263
6582
  export type QueryGridPermissionLimitsArgs = {
5264
6583
  appId: Scalars['BigInt']['input'];
5265
6584
  gridId: Scalars['BigInt']['input'];
@@ -5292,6 +6611,12 @@ export type QueryMyCheckoutsConnectionArgs = {
5292
6611
  after?: InputMaybe<Scalars['String']['input']>;
5293
6612
  first?: InputMaybe<Scalars['Int']['input']>;
5294
6613
  };
6614
+ export type QueryMyPlayerCodeAcquisitionsArgs = {
6615
+ appId: Scalars['BigInt']['input'];
6616
+ };
6617
+ export type QueryMyPlayerCodeInstallsArgs = {
6618
+ appId: Scalars['BigInt']['input'];
6619
+ };
5295
6620
  export type QueryMyTeamsArgs = {
5296
6621
  appId: Scalars['BigInt']['input'];
5297
6622
  };
@@ -5348,9 +6673,80 @@ export type QueryPaymentEventsConnectionArgs = {
5348
6673
  after?: InputMaybe<Scalars['String']['input']>;
5349
6674
  first?: InputMaybe<Scalars['Int']['input']>;
5350
6675
  };
6676
+ export type QueryPlayerAutomationsArgs = {
6677
+ appId: Scalars['BigInt']['input'];
6678
+ gridId: Scalars['BigInt']['input'];
6679
+ };
6680
+ export type QueryPlayerCodeClientArtifactArgs = {
6681
+ appId: Scalars['BigInt']['input'];
6682
+ listingId: Scalars['String']['input'];
6683
+ versionId?: InputMaybe<Scalars['String']['input']>;
6684
+ };
6685
+ export type QueryPlayerCodeListingVersionsArgs = {
6686
+ appId: Scalars['BigInt']['input'];
6687
+ listingId: Scalars['String']['input'];
6688
+ };
6689
+ export type QueryPlayerCodeListingsArgs = {
6690
+ appId: Scalars['BigInt']['input'];
6691
+ };
6692
+ export type QueryPlayerComputeArtifactArgs = {
6693
+ appId: Scalars['BigInt']['input'];
6694
+ gridId: Scalars['BigInt']['input'];
6695
+ name: Scalars['String']['input'];
6696
+ versionId?: InputMaybe<Scalars['String']['input']>;
6697
+ };
6698
+ export type QueryPlayerComputeLogsArgs = {
6699
+ appId: Scalars['BigInt']['input'];
6700
+ gridId: Scalars['BigInt']['input'];
6701
+ limit?: InputMaybe<Scalars['Int']['input']>;
6702
+ moduleName?: InputMaybe<Scalars['String']['input']>;
6703
+ };
6704
+ export type QueryPlayerComputeMyModulesArgs = {
6705
+ appId: Scalars['BigInt']['input'];
6706
+ };
6707
+ export type QueryPlayerComputeRunsArgs = {
6708
+ appId: Scalars['BigInt']['input'];
6709
+ gridId: Scalars['BigInt']['input'];
6710
+ limit?: InputMaybe<Scalars['Int']['input']>;
6711
+ moduleName?: InputMaybe<Scalars['String']['input']>;
6712
+ offset?: InputMaybe<Scalars['Int']['input']>;
6713
+ success?: InputMaybe<Scalars['Boolean']['input']>;
6714
+ };
6715
+ export type QueryPlayerComputeSwitchesArgs = {
6716
+ appId: Scalars['BigInt']['input'];
6717
+ };
6718
+ export type QueryPlayerComputeUsageArgs = {
6719
+ appId: Scalars['BigInt']['input'];
6720
+ };
6721
+ export type QueryPlayerComputeVersionsArgs = {
6722
+ appId: Scalars['BigInt']['input'];
6723
+ gridId: Scalars['BigInt']['input'];
6724
+ name: Scalars['String']['input'];
6725
+ };
6726
+ export type QueryPlayerModelContainerArgs = {
6727
+ input: PlayerModelContainerRefInput;
6728
+ };
6729
+ export type QueryPlayerModelContainersArgs = {
6730
+ appId: Scalars['BigInt']['input'];
6731
+ gridId: Scalars['BigInt']['input'];
6732
+ };
5351
6733
  export type QueryPlayerPulseArgs = {
5352
6734
  orgId: Scalars['BigInt']['input'];
5353
6735
  };
6736
+ export type QueryPlayerRateMarkupArgs = {
6737
+ appId: Scalars['BigInt']['input'];
6738
+ };
6739
+ export type QueryPlayerUsageChargesArgs = {
6740
+ appId?: InputMaybe<Scalars['BigInt']['input']>;
6741
+ limit?: InputMaybe<Scalars['Int']['input']>;
6742
+ };
6743
+ export type QueryPlayerWalletTransactionsArgs = {
6744
+ limit?: InputMaybe<Scalars['Int']['input']>;
6745
+ offset?: InputMaybe<Scalars['Int']['input']>;
6746
+ };
6747
+ export type QueryPlayerWasmPoliciesArgs = {
6748
+ appId: Scalars['BigInt']['input'];
6749
+ };
5354
6750
  export type QueryPortalConsentArgs = {
5355
6751
  appId: Scalars['BigInt']['input'];
5356
6752
  };
@@ -5685,6 +7081,41 @@ export type SeedPropertyInput = {
5685
7081
  /** Value type of the value being set. */
5686
7082
  valueType: Scalars['String']['input'];
5687
7083
  };
7084
+ /** Result of beginning seller onboarding: the Stripe Connect Express account link the seller opens to finish KYC. */
7085
+ export type SellerOnboardingLink = {
7086
+ __typename?: 'SellerOnboardingLink';
7087
+ /** The Stripe-hosted onboarding URL to open; null when already complete or unavailable in the seller region. */
7088
+ onboardingUrl: Maybe<Scalars['String']['output']>;
7089
+ /** Current onboarding state. */
7090
+ status: SellerOnboardingStatus;
7091
+ /** Why onboarding is unavailable (e.g. region unsupported); null otherwise. */
7092
+ unavailableReason: Maybe<Scalars['String']['output']>;
7093
+ };
7094
+ /** A seller (player or org) payout-account state: NONE (never started), PENDING (Stripe Connect Express onboarding incomplete), COMPLETE (payouts enabled), or BLOCKED (provider or platform hold). */
7095
+ export declare enum SellerOnboardingStatus {
7096
+ Blocked = "BLOCKED",
7097
+ Complete = "COMPLETE",
7098
+ None = "NONE",
7099
+ Pending = "PENDING"
7100
+ }
7101
+ /** A seller's payout balance (player or org). pending ages through the D6 delay window into payable; reserved is the D6 young-account holdback or a T11 freeze. */
7102
+ export type SellerPayoutBalance = {
7103
+ __typename?: 'SellerPayoutBalance';
7104
+ /** Stripe Connect Express onboarding state. */
7105
+ onboardingStatus: SellerOnboardingStatus;
7106
+ /** 'user' or 'org'. */
7107
+ partyKind: Scalars['String']['output'];
7108
+ /** User id or org id. */
7109
+ partyRef: Scalars['BigInt']['output'];
7110
+ /** Cents aged, unreserved, and withdrawable. */
7111
+ payableCents: Scalars['Int']['output'];
7112
+ /** Whether payouts are frozen by a T11 review hold. */
7113
+ payoutsFrozen: Scalars['Boolean']['output'];
7114
+ /** Cents still aging in the delay window. */
7115
+ pendingCents: Scalars['Int']['output'];
7116
+ /** Cents held back (reserve or T11 freeze). */
7117
+ reservedCents: Scalars['Int']['output'];
7118
+ };
5688
7119
  /** Notification received when the server sends a custom event. Received via the udpNotifications subscription. */
5689
7120
  export type ServerEventNotification = {
5690
7121
  __typename?: 'ServerEventNotification';
@@ -5916,6 +7347,24 @@ export type SetGridPermissionLimitsInput = {
5916
7347
  /** The whitelist of permission keys allowed on this grid. Empty array removes all limits (every active grid permission becomes grantable again). Each key must be a known runtime permission key, unique, and at most 64 chars. */
5917
7348
  permissionKeys: Array<Scalars['String']['input']>;
5918
7349
  };
7350
+ export type SetListingPricingInput = {
7351
+ /** Acquisition mode: 'free', 'buy', 'rent', 'time_limited', or 'cost_limited'. */
7352
+ acquisitionMode: Scalars['String']['input'];
7353
+ /** App that owns the listing. */
7354
+ appId: Scalars['BigInt']['input'];
7355
+ /** Whether an acquired license may travel with a grid resale (default false; 07 §5.a). */
7356
+ licenseTransferable?: InputMaybe<Scalars['Boolean']['input']>;
7357
+ /** UUID of the listing to price. */
7358
+ listingId: Scalars['String']['input'];
7359
+ /** Price in cents (required for all non-free modes; author-set only). */
7360
+ priceCents?: InputMaybe<Scalars['Int']['input']>;
7361
+ /** Rent billing interval in days (rent mode). */
7362
+ rentIntervalDays?: InputMaybe<Scalars['Int']['input']>;
7363
+ /** Compute-unit budget the license grants (cost_limited mode). */
7364
+ unitBudget?: InputMaybe<Scalars['BigInt']['input']>;
7365
+ /** Single fixed window in days (time_limited mode). */
7366
+ windowDays?: InputMaybe<Scalars['Int']['input']>;
7367
+ };
5919
7368
  /** Replace a member's roles in a group (the listed roles become their full set). */
5920
7369
  export type SetMemberRolesInput = {
5921
7370
  /** The group (team/channel) id. */
@@ -5925,6 +7374,55 @@ export type SetMemberRolesInput = {
5925
7374
  /** The member (user) whose roles to set. */
5926
7375
  userId: Scalars['BigInt']['input'];
5927
7376
  };
7377
+ /** Enable or disable one player automation. Enabling a schedule computes its next due time. */
7378
+ export type SetPlayerAutomationEnabledInput = {
7379
+ /** App containing the owned grid. */
7380
+ appId: Scalars['BigInt']['input'];
7381
+ /** Player automation UUID. */
7382
+ automationId: Scalars['String']['input'];
7383
+ /** Whether the automation may dispatch. */
7384
+ enabled: Scalars['Boolean']['input'];
7385
+ /** Grid that confines the automation. */
7386
+ gridId: Scalars['BigInt']['input'];
7387
+ };
7388
+ /** Set one arbitrary JSON property on a player-owned container. The caller must currently own the specified grid and container. */
7389
+ export type SetPlayerModelPropertyInput = {
7390
+ /** App containing the owned grid. */
7391
+ appId: Scalars['BigInt']['input'];
7392
+ /** Player container UUID. */
7393
+ containerId: Scalars['String']['input'];
7394
+ /** Grid that confines the container. */
7395
+ gridId: Scalars['BigInt']['input'];
7396
+ /** Property key, upserted within the container. */
7397
+ propertyKey: Scalars['String']['input'];
7398
+ /** JSON-encoded property value. Any valid JSON value is accepted. */
7399
+ valueJson: Scalars['String']['input'];
7400
+ };
7401
+ /** Upsert one player policy row. Omitted knobs keep their current value (or the platform default on first insert). unitsPerHour/unitsPerDay accept null to clear the quota. */
7402
+ export type SetPlayerWasmPolicyInput = {
7403
+ /** The app. */
7404
+ appId: Scalars['BigInt']['input'];
7405
+ clientFuelPerDispatch?: InputMaybe<Scalars['BigInt']['input']>;
7406
+ enabled?: InputMaybe<Scalars['Boolean']['input']>;
7407
+ fuelPerInvoke?: InputMaybe<Scalars['BigInt']['input']>;
7408
+ fuelPerTick?: InputMaybe<Scalars['BigInt']['input']>;
7409
+ maxCompilesPerHour?: InputMaybe<Scalars['Int']['input']>;
7410
+ maxContainerCreatesDay?: InputMaybe<Scalars['Int']['input']>;
7411
+ maxDbOpsPerTick?: InputMaybe<Scalars['Int']['input']>;
7412
+ maxEgressBytesPerMin?: InputMaybe<Scalars['BigInt']['input']>;
7413
+ maxEgressMsgsPerMin?: InputMaybe<Scalars['Int']['input']>;
7414
+ maxMemoryMb?: InputMaybe<Scalars['Int']['input']>;
7415
+ maxModulesPerGrid?: InputMaybe<Scalars['Int']['input']>;
7416
+ maxModulesTotal?: InputMaybe<Scalars['Int']['input']>;
7417
+ maxRunMs?: InputMaybe<Scalars['Int']['input']>;
7418
+ maxTickHz?: InputMaybe<Scalars['Float']['input']>;
7419
+ /** 'app_default', 'tier', 'grid', or 'user'. */
7420
+ scope: Scalars['String']['input'];
7421
+ /** Tier/grid/user id; required unless scope is app_default. */
7422
+ scopeRef?: InputMaybe<Scalars['BigInt']['input']>;
7423
+ unitsPerDay?: InputMaybe<Scalars['BigInt']['input']>;
7424
+ unitsPerHour?: InputMaybe<Scalars['BigInt']['input']>;
7425
+ };
5928
7426
  export type SetQuotaInput = {
5929
7427
  /** What to do when the limit is exceeded. Optional; defaults to "throttle" (typical values: "throttle" to rate-limit, "block" to reject). */
5930
7428
  actionOnExceed?: InputMaybe<Scalars['String']['input']>;
@@ -6069,6 +7567,28 @@ export type TeleportResponse = {
6069
7567
  /** True when the teleport is authorized/accepted; false otherwise (inspect errorCode for the reason). */
6070
7568
  success: Scalars['Boolean']['output'];
6071
7569
  };
7570
+ export type TransferGridOwnershipInput = {
7571
+ /** App that contains the grid. */
7572
+ appId: Scalars['BigInt']['input'];
7573
+ /** Required when the new tenure is RENTED. */
7574
+ expiresAt?: InputMaybe<Scalars['DateTime']['input']>;
7575
+ /** Grid whose title transfers. */
7576
+ gridId: Scalars['BigInt']['input'];
7577
+ /** User id receiving title. */
7578
+ newOwnerUserId: Scalars['BigInt']['input'];
7579
+ /** New owner tenure. */
7580
+ tenure?: InputMaybe<GridTenure>;
7581
+ };
7582
+ export type TransferPlayerCodeListingInput = {
7583
+ /** Numeric app id that owns the listing. */
7584
+ appId: Scalars['BigInt']['input'];
7585
+ /** UUID of the listing to transfer. */
7586
+ listingId: Scalars['String']['input'];
7587
+ /** New owner kind (USER or ORG). */
7588
+ toOwnerKind: PlayerCodeOwnerKind;
7589
+ /** Numeric user id or org id of the new owner, per toOwnerKind. */
7590
+ toOwnerRef: Scalars['BigInt']['input'];
7591
+ };
6072
7592
  /** Error codes returned by UDP game servers (and surfaced on `GenericErrorResponse.errorCode`) in response to a spatial/realtime message. NO_ERROR (0) indicates success; every other value indicates a failure. The numeric value is the byte sent on the wire; GraphQL exposes the name. Note: a failed message does not always produce an error — some auth failures are dropped silently (see the docs). */
6073
7593
  export declare enum UdpErrorCode {
6074
7594
  /** No app matches the supplied appId. */
@@ -7663,6 +9183,85 @@ export type ArchiveAppMutation = {
7663
9183
  updatedAt: string;
7664
9184
  };
7665
9185
  };
9186
+ export type AppCodeAdmissionFieldsFragment = {
9187
+ __typename?: 'AppCodeAdmission';
9188
+ admissionId: string;
9189
+ appId: string;
9190
+ subjectKind: CodeAdmissionSubjectKind;
9191
+ subjectRef: string;
9192
+ versionRange: string | null;
9193
+ admittedBy: string;
9194
+ admittedAt: string;
9195
+ revokedAt: string | null;
9196
+ };
9197
+ export type AppCodeAdmissionModeQueryVariables = Exact<{
9198
+ appId: Scalars['BigInt']['input'];
9199
+ }>;
9200
+ export type AppCodeAdmissionModeQuery = {
9201
+ __typename?: 'Query';
9202
+ appCodeAdmissionMode: CodeAdmissionMode;
9203
+ };
9204
+ export type AppCodeAdmissionsQueryVariables = Exact<{
9205
+ appId: Scalars['BigInt']['input'];
9206
+ includeRevoked?: InputMaybe<Scalars['Boolean']['input']>;
9207
+ }>;
9208
+ export type AppCodeAdmissionsQuery = {
9209
+ __typename?: 'Query';
9210
+ appCodeAdmissions: Array<{
9211
+ __typename?: 'AppCodeAdmission';
9212
+ admissionId: string;
9213
+ appId: string;
9214
+ subjectKind: CodeAdmissionSubjectKind;
9215
+ subjectRef: string;
9216
+ versionRange: string | null;
9217
+ admittedBy: string;
9218
+ admittedAt: string;
9219
+ revokedAt: string | null;
9220
+ }>;
9221
+ };
9222
+ export type SetAppCodeAdmissionModeMutationVariables = Exact<{
9223
+ appId: Scalars['BigInt']['input'];
9224
+ mode: CodeAdmissionMode;
9225
+ }>;
9226
+ export type SetAppCodeAdmissionModeMutation = {
9227
+ __typename?: 'Mutation';
9228
+ setAppCodeAdmissionMode: CodeAdmissionMode;
9229
+ };
9230
+ export type AdmitAppCodeMutationVariables = Exact<{
9231
+ input: AdmitAppCodeInput;
9232
+ }>;
9233
+ export type AdmitAppCodeMutation = {
9234
+ __typename?: 'Mutation';
9235
+ admitAppCode: {
9236
+ __typename?: 'AppCodeAdmission';
9237
+ admissionId: string;
9238
+ appId: string;
9239
+ subjectKind: CodeAdmissionSubjectKind;
9240
+ subjectRef: string;
9241
+ versionRange: string | null;
9242
+ admittedBy: string;
9243
+ admittedAt: string;
9244
+ revokedAt: string | null;
9245
+ };
9246
+ };
9247
+ export type RevokeAppCodeAdmissionMutationVariables = Exact<{
9248
+ appId: Scalars['BigInt']['input'];
9249
+ admissionId: Scalars['String']['input'];
9250
+ }>;
9251
+ export type RevokeAppCodeAdmissionMutation = {
9252
+ __typename?: 'Mutation';
9253
+ revokeAppCodeAdmission: {
9254
+ __typename?: 'AppCodeAdmission';
9255
+ admissionId: string;
9256
+ appId: string;
9257
+ subjectKind: CodeAdmissionSubjectKind;
9258
+ subjectRef: string;
9259
+ versionRange: string | null;
9260
+ admittedBy: string;
9261
+ admittedAt: string;
9262
+ revokedAt: string | null;
9263
+ };
9264
+ };
7666
9265
  export type CreateAppMutationVariables = Exact<{
7667
9266
  input: CreateAppInput;
7668
9267
  }>;
@@ -9959,20 +11558,87 @@ export type UpdateEnvironmentScalingMutation = {
9959
11558
  finishedAt: string | null;
9960
11559
  };
9961
11560
  };
9962
- export type GridUserPermissionsQueryVariables = Exact<{
11561
+ export type GridOwnershipFieldsFragment = {
11562
+ __typename?: 'GridOwnership';
11563
+ gridOwnershipId: string;
11564
+ gridId: string;
11565
+ appId: string;
11566
+ ownerKind: GridOwnerKind;
11567
+ ownerRef: string;
11568
+ tenure: GridTenure;
11569
+ acquiredVia: string;
11570
+ acquiredAt: string;
11571
+ expiresAt: string | null;
11572
+ };
11573
+ export type GridOwnershipQueryVariables = Exact<{
9963
11574
  appId: Scalars['BigInt']['input'];
9964
11575
  gridId: Scalars['BigInt']['input'];
9965
- userId: Scalars['BigInt']['input'];
9966
11576
  }>;
9967
- export type GridUserPermissionsQuery = {
11577
+ export type GridOwnershipQuery = {
9968
11578
  __typename?: 'Query';
9969
- gridUserPermissions: {
9970
- __typename?: 'GridUserPermissions';
9971
- appId: string;
11579
+ gridOwnership: {
11580
+ __typename?: 'GridOwnership';
11581
+ gridOwnershipId: string;
9972
11582
  gridId: string;
9973
- userId: string;
9974
- permissionKeys: Array<string>;
9975
- };
11583
+ appId: string;
11584
+ ownerKind: GridOwnerKind;
11585
+ ownerRef: string;
11586
+ tenure: GridTenure;
11587
+ acquiredVia: string;
11588
+ acquiredAt: string;
11589
+ expiresAt: string | null;
11590
+ } | null;
11591
+ };
11592
+ export type AssignGridOwnershipMutationVariables = Exact<{
11593
+ input: AssignGridOwnershipInput;
11594
+ }>;
11595
+ export type AssignGridOwnershipMutation = {
11596
+ __typename?: 'Mutation';
11597
+ assignGridOwnership: {
11598
+ __typename?: 'GridOwnership';
11599
+ gridOwnershipId: string;
11600
+ gridId: string;
11601
+ appId: string;
11602
+ ownerKind: GridOwnerKind;
11603
+ ownerRef: string;
11604
+ tenure: GridTenure;
11605
+ acquiredVia: string;
11606
+ acquiredAt: string;
11607
+ expiresAt: string | null;
11608
+ };
11609
+ };
11610
+ export type TransferGridOwnershipMutationVariables = Exact<{
11611
+ input: TransferGridOwnershipInput;
11612
+ }>;
11613
+ export type TransferGridOwnershipMutation = {
11614
+ __typename?: 'Mutation';
11615
+ transferGridOwnership: {
11616
+ __typename?: 'GridOwnership';
11617
+ gridOwnershipId: string;
11618
+ gridId: string;
11619
+ appId: string;
11620
+ ownerKind: GridOwnerKind;
11621
+ ownerRef: string;
11622
+ tenure: GridTenure;
11623
+ acquiredVia: string;
11624
+ acquiredAt: string;
11625
+ expiresAt: string | null;
11626
+ };
11627
+ };
11628
+ export type GridUserPermissionsQueryVariables = Exact<{
11629
+ appId: Scalars['BigInt']['input'];
11630
+ gridId: Scalars['BigInt']['input'];
11631
+ userId: Scalars['BigInt']['input'];
11632
+ }>;
11633
+ export type GridUserPermissionsQuery = {
11634
+ __typename?: 'Query';
11635
+ gridUserPermissions: {
11636
+ __typename?: 'GridUserPermissions';
11637
+ appId: string;
11638
+ gridId: string;
11639
+ userId: string;
11640
+ permissionKeys: Array<string>;
11641
+ };
9976
11642
  };
9977
11643
  export type NearbyGridPermissionsQueryVariables = Exact<{
9978
11644
  input: NearbyGridPermissionsInput;
@@ -11550,152 +13216,826 @@ export type ActorHeartbeatMutation = {
11550
13216
  earliestActorJoinedAt: string;
11551
13217
  } | null;
11552
13218
  };
11553
- export type CreateOrgRoleMutationVariables = Exact<{
11554
- input: CreateOrgRoleInput;
13219
+ export type PlayerCodeListingFieldsFragment = {
13220
+ __typename?: 'PlayerCodeListing';
13221
+ listingId: string;
13222
+ appId: string;
13223
+ ownerKind: PlayerCodeOwnerKind;
13224
+ ownerRef: string;
13225
+ name: string;
13226
+ description: string;
13227
+ mediaJson: string;
13228
+ licenseMode: PlayerCodeLicenseMode;
13229
+ acquisitionMode: PlayerCodeAcquisitionMode;
13230
+ priceCents: number | null;
13231
+ rentIntervalDays: number | null;
13232
+ windowDays: number | null;
13233
+ unitBudget: string | null;
13234
+ status: PlayerCodeListingStatus;
13235
+ createdAt: string;
13236
+ };
13237
+ export type PlayerCodeListingVersionFieldsFragment = {
13238
+ __typename?: 'PlayerCodeListingVersion';
13239
+ versionId: string;
13240
+ listingId: string;
13241
+ versionNo: number;
13242
+ serverArtifactHashes: Array<string>;
13243
+ clientArtifactHashes: Array<string>;
13244
+ capabilitySummaryJson: string;
13245
+ capabilityHash: string;
13246
+ openSource: boolean;
13247
+ licenseText: string | null;
13248
+ createdAt: string | null;
13249
+ };
13250
+ export type PlayerCodeAcquisitionFieldsFragment = {
13251
+ __typename?: 'PlayerCodeAcquisition';
13252
+ acquisitionId: string;
13253
+ listingId: string;
13254
+ appId: string;
13255
+ mode: PlayerCodeAcquisitionMode;
13256
+ status: string;
13257
+ expiresAt: string | null;
13258
+ unitBudget: string | null;
13259
+ unitsConsumed: string;
13260
+ acquiredAt: string;
13261
+ };
13262
+ export type PlayerCodeInstallFieldsFragment = {
13263
+ __typename?: 'PlayerCodeInstall';
13264
+ installId: string;
13265
+ acquisitionId: string;
13266
+ listingId: string;
13267
+ appId: string;
13268
+ pinnedVersionId: string;
13269
+ targetGridId: string | null;
13270
+ consentedCapabilityHash: string;
13271
+ status: string;
13272
+ createdAt: string;
13273
+ };
13274
+ export type GridClaimRequestFieldsFragment = {
13275
+ __typename?: 'GridClaimRequest';
13276
+ requestId: string;
13277
+ appId: string;
13278
+ gridId: string;
13279
+ requesterUserId: string;
13280
+ status: string;
13281
+ createdAt: string;
13282
+ };
13283
+ export type MarketplaceListingsQueryVariables = Exact<{
13284
+ appId: Scalars['BigInt']['input'];
11555
13285
  }>;
11556
- export type CreateOrgRoleMutation = {
11557
- __typename?: 'Mutation';
11558
- createOrgRole: {
11559
- __typename?: 'OrgRole';
11560
- orgRoleId: string;
11561
- orgId: string;
11562
- roleName: string;
11563
- isSystem: boolean;
11564
- permissions: Array<string>;
11565
- description: string | null;
11566
- };
13286
+ export type MarketplaceListingsQuery = {
13287
+ __typename?: 'Query';
13288
+ playerCodeListings: Array<{
13289
+ __typename?: 'PlayerCodeListing';
13290
+ admissionState: PlayerCodeAdmissionState;
13291
+ latestVersionId: string | null;
13292
+ listingId: string;
13293
+ appId: string;
13294
+ ownerKind: PlayerCodeOwnerKind;
13295
+ ownerRef: string;
13296
+ name: string;
13297
+ description: string;
13298
+ mediaJson: string;
13299
+ licenseMode: PlayerCodeLicenseMode;
13300
+ acquisitionMode: PlayerCodeAcquisitionMode;
13301
+ priceCents: number | null;
13302
+ rentIntervalDays: number | null;
13303
+ windowDays: number | null;
13304
+ unitBudget: string | null;
13305
+ status: PlayerCodeListingStatus;
13306
+ createdAt: string;
13307
+ }>;
11567
13308
  };
11568
- export type CreateOrgTokenMutationVariables = Exact<{
11569
- input: CreateOrgTokenInput;
13309
+ export type MarketplaceListingVersionsQueryVariables = Exact<{
13310
+ appId: Scalars['BigInt']['input'];
13311
+ listingId: Scalars['String']['input'];
11570
13312
  }>;
11571
- export type CreateOrgTokenMutation = {
11572
- __typename?: 'Mutation';
11573
- createOrgToken: {
11574
- __typename?: 'OrgTokenWithSecret';
11575
- orgTokenId: string;
11576
- orgId: string;
11577
- token: string;
11578
- label: string | null;
11579
- isActive: boolean;
13313
+ export type MarketplaceListingVersionsQuery = {
13314
+ __typename?: 'Query';
13315
+ playerCodeListingVersions: Array<{
13316
+ __typename?: 'PlayerCodeListingVersion';
13317
+ versionId: string;
13318
+ listingId: string;
13319
+ versionNo: number;
13320
+ serverArtifactHashes: Array<string>;
13321
+ clientArtifactHashes: Array<string>;
13322
+ capabilitySummaryJson: string;
13323
+ capabilityHash: string;
13324
+ openSource: boolean;
13325
+ licenseText: string | null;
13326
+ createdAt: string | null;
13327
+ }>;
13328
+ };
13329
+ export type MarketplaceMyAcquisitionsQueryVariables = Exact<{
13330
+ appId: Scalars['BigInt']['input'];
13331
+ }>;
13332
+ export type MarketplaceMyAcquisitionsQuery = {
13333
+ __typename?: 'Query';
13334
+ myPlayerCodeAcquisitions: Array<{
13335
+ __typename?: 'PlayerCodeAcquisition';
13336
+ acquisitionId: string;
13337
+ listingId: string;
13338
+ appId: string;
13339
+ mode: PlayerCodeAcquisitionMode;
13340
+ status: string;
11580
13341
  expiresAt: string | null;
13342
+ unitBudget: string | null;
13343
+ unitsConsumed: string;
13344
+ acquiredAt: string;
13345
+ }>;
13346
+ };
13347
+ export type MarketplaceMyInstallsQueryVariables = Exact<{
13348
+ appId: Scalars['BigInt']['input'];
13349
+ }>;
13350
+ export type MarketplaceMyInstallsQuery = {
13351
+ __typename?: 'Query';
13352
+ myPlayerCodeInstalls: Array<{
13353
+ __typename?: 'PlayerCodeInstall';
13354
+ installId: string;
13355
+ acquisitionId: string;
13356
+ listingId: string;
13357
+ appId: string;
13358
+ pinnedVersionId: string;
13359
+ targetGridId: string | null;
13360
+ consentedCapabilityHash: string;
13361
+ status: string;
11581
13362
  createdAt: string;
13363
+ }>;
13364
+ };
13365
+ export type MarketplaceGridClientModsQueryVariables = Exact<{
13366
+ appId: Scalars['BigInt']['input'];
13367
+ gridId: Scalars['BigInt']['input'];
13368
+ }>;
13369
+ export type MarketplaceGridClientModsQuery = {
13370
+ __typename?: 'Query';
13371
+ gridClientMods: Array<{
13372
+ __typename?: 'GridClientMod';
13373
+ attachmentId: string;
13374
+ listingId: string;
13375
+ listingName: string;
13376
+ versionId: string;
13377
+ gridId: string;
13378
+ capabilitySummaryJson: string;
13379
+ capabilityHash: string;
13380
+ callerConsented: boolean;
13381
+ }>;
13382
+ };
13383
+ export type MarketplaceClientArtifactQueryVariables = Exact<{
13384
+ appId: Scalars['BigInt']['input'];
13385
+ listingId: Scalars['String']['input'];
13386
+ versionId?: InputMaybe<Scalars['String']['input']>;
13387
+ }>;
13388
+ export type MarketplaceClientArtifactQuery = {
13389
+ __typename?: 'Query';
13390
+ playerCodeClientArtifact: {
13391
+ __typename?: 'PlayerClientArtifact';
13392
+ versionId: string;
13393
+ artifactHash: string;
13394
+ artifactBase64: string;
13395
+ sizeBytes: number;
13396
+ abiVersion: number;
13397
+ contractJson: string | null;
13398
+ clientFuelPerDispatch: string;
11582
13399
  };
11583
13400
  };
11584
- export type CreateOrganizationMutationVariables = Exact<{
11585
- input: CreateOrganizationInput;
13401
+ export type MarketplacePublishListingMutationVariables = Exact<{
13402
+ input: PublishPlayerCodeInput;
11586
13403
  }>;
11587
- export type CreateOrganizationMutation = {
13404
+ export type MarketplacePublishListingMutation = {
11588
13405
  __typename?: 'Mutation';
11589
- createOrganization: {
11590
- __typename?: 'Organization';
11591
- orgId: string;
13406
+ publishPlayerCode: {
13407
+ __typename?: 'PlayerCodeListing';
13408
+ admissionState: PlayerCodeAdmissionState;
13409
+ latestVersionId: string | null;
13410
+ listingId: string;
13411
+ appId: string;
13412
+ ownerKind: PlayerCodeOwnerKind;
13413
+ ownerRef: string;
11592
13414
  name: string;
11593
- slug: string;
11594
- ownerUserId: string;
11595
- status: string;
13415
+ description: string;
13416
+ mediaJson: string;
13417
+ licenseMode: PlayerCodeLicenseMode;
13418
+ acquisitionMode: PlayerCodeAcquisitionMode;
13419
+ priceCents: number | null;
13420
+ rentIntervalDays: number | null;
13421
+ windowDays: number | null;
13422
+ unitBudget: string | null;
13423
+ status: PlayerCodeListingStatus;
11596
13424
  createdAt: string;
11597
- updatedAt: string;
11598
13425
  };
11599
13426
  };
11600
- export type DeleteOrgRoleMutationVariables = Exact<{
11601
- orgRoleId: Scalars['BigInt']['input'];
13427
+ export type MarketplacePublishVersionMutationVariables = Exact<{
13428
+ input: PublishPlayerCodeVersionInput;
11602
13429
  }>;
11603
- export type DeleteOrgRoleMutation = {
13430
+ export type MarketplacePublishVersionMutation = {
11604
13431
  __typename?: 'Mutation';
11605
- deleteOrgRole: boolean;
13432
+ publishPlayerCodeVersion: {
13433
+ __typename?: 'PlayerCodeListingVersion';
13434
+ versionId: string;
13435
+ listingId: string;
13436
+ versionNo: number;
13437
+ serverArtifactHashes: Array<string>;
13438
+ clientArtifactHashes: Array<string>;
13439
+ capabilitySummaryJson: string;
13440
+ capabilityHash: string;
13441
+ openSource: boolean;
13442
+ licenseText: string | null;
13443
+ createdAt: string | null;
13444
+ };
11606
13445
  };
11607
- export type InviteOrgMemberMutationVariables = Exact<{
11608
- input: InviteOrgMemberInput;
13446
+ export type MarketplaceAcquireMutationVariables = Exact<{
13447
+ appId: Scalars['BigInt']['input'];
13448
+ listingId: Scalars['String']['input'];
11609
13449
  }>;
11610
- export type InviteOrgMemberMutation = {
13450
+ export type MarketplaceAcquireMutation = {
11611
13451
  __typename?: 'Mutation';
11612
- inviteOrgMember: {
11613
- __typename?: 'OrgMember';
11614
- orgMemberId: string;
11615
- orgId: string;
11616
- userId: string;
13452
+ acquirePlayerCode: {
13453
+ __typename?: 'PlayerCodeAcquisition';
13454
+ acquisitionId: string;
13455
+ listingId: string;
13456
+ appId: string;
13457
+ mode: PlayerCodeAcquisitionMode;
13458
+ status: string;
13459
+ expiresAt: string | null;
13460
+ unitBudget: string | null;
13461
+ unitsConsumed: string;
13462
+ acquiredAt: string;
13463
+ };
13464
+ };
13465
+ export type MarketplaceInstallMutationVariables = Exact<{
13466
+ appId: Scalars['BigInt']['input'];
13467
+ acquisitionId: Scalars['String']['input'];
13468
+ consentCapabilityHash: Scalars['String']['input'];
13469
+ gridId?: InputMaybe<Scalars['BigInt']['input']>;
13470
+ versionId?: InputMaybe<Scalars['String']['input']>;
13471
+ }>;
13472
+ export type MarketplaceInstallMutation = {
13473
+ __typename?: 'Mutation';
13474
+ installPlayerCode: {
13475
+ __typename?: 'PlayerCodeInstall';
13476
+ installId: string;
13477
+ acquisitionId: string;
13478
+ listingId: string;
13479
+ appId: string;
13480
+ pinnedVersionId: string;
13481
+ targetGridId: string | null;
13482
+ consentedCapabilityHash: string;
11617
13483
  status: string;
11618
13484
  createdAt: string;
11619
- updatedAt: string;
11620
13485
  };
11621
13486
  };
11622
- export type MemberRolesQueryVariables = Exact<{
11623
- orgMemberId: Scalars['BigInt']['input'];
13487
+ export type MarketplaceUninstallMutationVariables = Exact<{
13488
+ appId: Scalars['BigInt']['input'];
13489
+ installId: Scalars['String']['input'];
11624
13490
  }>;
11625
- export type MemberRolesQuery = {
13491
+ export type MarketplaceUninstallMutation = {
13492
+ __typename?: 'Mutation';
13493
+ uninstallPlayerCode: boolean;
13494
+ };
13495
+ export type MarketplaceConsentGridClientModMutationVariables = Exact<{
13496
+ appId: Scalars['BigInt']['input'];
13497
+ attachmentId: Scalars['String']['input'];
13498
+ consentCapabilityHash: Scalars['String']['input'];
13499
+ }>;
13500
+ export type MarketplaceConsentGridClientModMutation = {
13501
+ __typename?: 'Mutation';
13502
+ consentGridClientMod: boolean;
13503
+ };
13504
+ export type MarketplaceGridClaimPolicyQueryVariables = Exact<{
13505
+ appId: Scalars['BigInt']['input'];
13506
+ }>;
13507
+ export type MarketplaceGridClaimPolicyQuery = {
11626
13508
  __typename?: 'Query';
11627
- memberRoles: Array<{
11628
- __typename?: 'OrgRole';
11629
- orgRoleId: string;
11630
- orgId: string;
11631
- roleName: string;
11632
- isSystem: boolean;
11633
- permissions: Array<string>;
11634
- description: string | null;
13509
+ gridClaimPolicy: GridClaimPolicy;
13510
+ };
13511
+ export type MarketplaceGridClaimRequestsQueryVariables = Exact<{
13512
+ appId: Scalars['BigInt']['input'];
13513
+ }>;
13514
+ export type MarketplaceGridClaimRequestsQuery = {
13515
+ __typename?: 'Query';
13516
+ gridClaimRequests: Array<{
13517
+ __typename?: 'GridClaimRequest';
13518
+ requestId: string;
13519
+ appId: string;
13520
+ gridId: string;
13521
+ requesterUserId: string;
13522
+ status: string;
13523
+ createdAt: string;
11635
13524
  }>;
11636
13525
  };
11637
- export type MyOrganizationsQueryVariables = Exact<{
11638
- [key: string]: never;
13526
+ export type MarketplaceClaimGridOwnershipMutationVariables = Exact<{
13527
+ appId: Scalars['BigInt']['input'];
13528
+ gridId: Scalars['BigInt']['input'];
11639
13529
  }>;
11640
- export type MyOrganizationsQuery = {
13530
+ export type MarketplaceClaimGridOwnershipMutation = {
13531
+ __typename?: 'Mutation';
13532
+ claimGridOwnership: {
13533
+ __typename?: 'GridClaimResult';
13534
+ policy: GridClaimPolicy;
13535
+ ownershipAssigned: boolean;
13536
+ claimRequestId: string | null;
13537
+ };
13538
+ };
13539
+ export type MarketplaceDecideGridClaimMutationVariables = Exact<{
13540
+ appId: Scalars['BigInt']['input'];
13541
+ requestId: Scalars['String']['input'];
13542
+ approve: Scalars['Boolean']['input'];
13543
+ }>;
13544
+ export type MarketplaceDecideGridClaimMutation = {
13545
+ __typename?: 'Mutation';
13546
+ decideGridClaim: {
13547
+ __typename?: 'GridClaimRequest';
13548
+ requestId: string;
13549
+ appId: string;
13550
+ gridId: string;
13551
+ requesterUserId: string;
13552
+ status: string;
13553
+ createdAt: string;
13554
+ };
13555
+ };
13556
+ export type MarketplaceIssueGridClaimInviteMutationVariables = Exact<{
13557
+ appId: Scalars['BigInt']['input'];
13558
+ gridId: Scalars['BigInt']['input'];
13559
+ inviteeUserId: Scalars['BigInt']['input'];
13560
+ }>;
13561
+ export type MarketplaceIssueGridClaimInviteMutation = {
13562
+ __typename?: 'Mutation';
13563
+ issueGridClaimInvite: boolean;
13564
+ };
13565
+ export type MarketplaceAdmissionQueueQueryVariables = Exact<{
13566
+ appId: Scalars['BigInt']['input'];
13567
+ }>;
13568
+ export type MarketplaceAdmissionQueueQuery = {
11641
13569
  __typename?: 'Query';
11642
- myOrganizations: Array<{
11643
- __typename?: 'OrgMembership';
11644
- permissions: Array<string>;
11645
- joinedAt: string;
11646
- org: {
11647
- __typename?: 'Organization';
11648
- orgId: string;
11649
- slug: string;
13570
+ appCodeAdmissionQueue: Array<{
13571
+ __typename?: 'PlayerCodeAdmissionQueueEntry';
13572
+ admissionState: PlayerCodeAdmissionState;
13573
+ admissionId: string | null;
13574
+ matchedSubjectKind: string | null;
13575
+ listing: {
13576
+ __typename?: 'PlayerCodeListing';
13577
+ listingId: string;
13578
+ appId: string;
13579
+ ownerKind: PlayerCodeOwnerKind;
13580
+ ownerRef: string;
11650
13581
  name: string;
11651
- ownerUserId: string;
11652
- status: string;
13582
+ description: string;
13583
+ mediaJson: string;
13584
+ licenseMode: PlayerCodeLicenseMode;
13585
+ acquisitionMode: PlayerCodeAcquisitionMode;
13586
+ priceCents: number | null;
13587
+ rentIntervalDays: number | null;
13588
+ windowDays: number | null;
13589
+ unitBudget: string | null;
13590
+ status: PlayerCodeListingStatus;
11653
13591
  createdAt: string;
11654
- updatedAt: string;
11655
13592
  };
11656
- roles: Array<{
11657
- __typename?: 'OrgRole';
11658
- orgRoleId: string;
11659
- orgId: string;
11660
- roleName: string;
11661
- isSystem: boolean;
11662
- permissions: Array<string>;
11663
- }>;
11664
13593
  }>;
11665
13594
  };
11666
- export type OrgMembersQueryVariables = Exact<{
11667
- orgId: Scalars['BigInt']['input'];
13595
+ export type MarketplaceAppListingsQueryVariables = Exact<{
13596
+ appId: Scalars['BigInt']['input'];
13597
+ includeDelisted?: InputMaybe<Scalars['Boolean']['input']>;
11668
13598
  }>;
11669
- export type OrgMembersQuery = {
13599
+ export type MarketplaceAppListingsQuery = {
11670
13600
  __typename?: 'Query';
11671
- orgMembers: Array<{
11672
- __typename?: 'OrgMember';
11673
- orgMemberId: string;
11674
- orgId: string;
11675
- userId: string;
11676
- status: string;
11677
- createdAt: string;
13601
+ appPlayerCodeListings: Array<{
13602
+ __typename?: 'PlayerCodeListing';
11678
13603
  updatedAt: string;
13604
+ listingId: string;
13605
+ appId: string;
13606
+ ownerKind: PlayerCodeOwnerKind;
13607
+ ownerRef: string;
13608
+ name: string;
13609
+ description: string;
13610
+ mediaJson: string;
13611
+ licenseMode: PlayerCodeLicenseMode;
13612
+ acquisitionMode: PlayerCodeAcquisitionMode;
13613
+ priceCents: number | null;
13614
+ rentIntervalDays: number | null;
13615
+ windowDays: number | null;
13616
+ unitBudget: string | null;
13617
+ status: PlayerCodeListingStatus;
13618
+ createdAt: string;
11679
13619
  }>;
11680
13620
  };
11681
- export type OrgPermissionsQueryVariables = Exact<{
11682
- [key: string]: never;
13621
+ export type MarketplaceAppAcquisitionsQueryVariables = Exact<{
13622
+ appId: Scalars['BigInt']['input'];
11683
13623
  }>;
11684
- export type OrgPermissionsQuery = {
13624
+ export type MarketplaceAppAcquisitionsQuery = {
11685
13625
  __typename?: 'Query';
11686
- orgPermissions: Array<{
11687
- __typename?: 'OrgPermission';
11688
- permissionKey: string;
11689
- description: string | null;
11690
- category: string | null;
13626
+ appPlayerCodeAcquisitions: Array<{
13627
+ __typename?: 'PlayerCodeAcquisition';
13628
+ acquirerUserId: string;
13629
+ revokedAt: string | null;
13630
+ acquisitionId: string;
13631
+ listingId: string;
13632
+ appId: string;
13633
+ mode: PlayerCodeAcquisitionMode;
13634
+ status: string;
13635
+ expiresAt: string | null;
13636
+ unitBudget: string | null;
13637
+ unitsConsumed: string;
13638
+ acquiredAt: string;
11691
13639
  }>;
11692
13640
  };
11693
- export type OrgRolesQueryVariables = Exact<{
11694
- orgId: Scalars['BigInt']['input'];
13641
+ export type MarketplaceTransferListingMutationVariables = Exact<{
13642
+ input: TransferPlayerCodeListingInput;
11695
13643
  }>;
11696
- export type OrgRolesQuery = {
11697
- __typename?: 'Query';
11698
- orgRoles: Array<{
13644
+ export type MarketplaceTransferListingMutation = {
13645
+ __typename?: 'Mutation';
13646
+ transferPlayerCodeListing: {
13647
+ __typename?: 'PlayerCodeListing';
13648
+ updatedAt: string;
13649
+ listingId: string;
13650
+ appId: string;
13651
+ ownerKind: PlayerCodeOwnerKind;
13652
+ ownerRef: string;
13653
+ name: string;
13654
+ description: string;
13655
+ mediaJson: string;
13656
+ licenseMode: PlayerCodeLicenseMode;
13657
+ acquisitionMode: PlayerCodeAcquisitionMode;
13658
+ priceCents: number | null;
13659
+ rentIntervalDays: number | null;
13660
+ windowDays: number | null;
13661
+ unitBudget: string | null;
13662
+ status: PlayerCodeListingStatus;
13663
+ createdAt: string;
13664
+ };
13665
+ };
13666
+ export type MarketplaceSetListingStatusMutationVariables = Exact<{
13667
+ appId: Scalars['BigInt']['input'];
13668
+ listingId: Scalars['String']['input'];
13669
+ status: PlayerCodeListingStatus;
13670
+ }>;
13671
+ export type MarketplaceSetListingStatusMutation = {
13672
+ __typename?: 'Mutation';
13673
+ setPlayerCodeListingStatus: {
13674
+ __typename?: 'PlayerCodeListing';
13675
+ updatedAt: string;
13676
+ listingId: string;
13677
+ appId: string;
13678
+ ownerKind: PlayerCodeOwnerKind;
13679
+ ownerRef: string;
13680
+ name: string;
13681
+ description: string;
13682
+ mediaJson: string;
13683
+ licenseMode: PlayerCodeLicenseMode;
13684
+ acquisitionMode: PlayerCodeAcquisitionMode;
13685
+ priceCents: number | null;
13686
+ rentIntervalDays: number | null;
13687
+ windowDays: number | null;
13688
+ unitBudget: string | null;
13689
+ status: PlayerCodeListingStatus;
13690
+ createdAt: string;
13691
+ };
13692
+ };
13693
+ export type MarketplaceSetGridClaimPolicyMutationVariables = Exact<{
13694
+ appId: Scalars['BigInt']['input'];
13695
+ policy: GridClaimPolicy;
13696
+ approverUserIds?: InputMaybe<Array<Scalars['BigInt']['input']> | Scalars['BigInt']['input']>;
13697
+ }>;
13698
+ export type MarketplaceSetGridClaimPolicyMutation = {
13699
+ __typename?: 'Mutation';
13700
+ setAppGridClaimPolicy: GridClaimPolicy;
13701
+ };
13702
+ export type MarketplaceRenewAcquisitionMutationVariables = Exact<{
13703
+ appId: Scalars['BigInt']['input'];
13704
+ acquisitionId: Scalars['String']['input'];
13705
+ }>;
13706
+ export type MarketplaceRenewAcquisitionMutation = {
13707
+ __typename?: 'Mutation';
13708
+ renewPlayerCodeAcquisition: {
13709
+ __typename?: 'PlayerCodeAcquisition';
13710
+ acquisitionId: string;
13711
+ listingId: string;
13712
+ appId: string;
13713
+ mode: PlayerCodeAcquisitionMode;
13714
+ status: string;
13715
+ expiresAt: string | null;
13716
+ unitBudget: string | null;
13717
+ unitsConsumed: string;
13718
+ acquiredAt: string;
13719
+ };
13720
+ };
13721
+ export type MarketplaceTopUpAcquisitionMutationVariables = Exact<{
13722
+ appId: Scalars['BigInt']['input'];
13723
+ acquisitionId: Scalars['String']['input'];
13724
+ }>;
13725
+ export type MarketplaceTopUpAcquisitionMutation = {
13726
+ __typename?: 'Mutation';
13727
+ topUpPlayerCodeAcquisition: {
13728
+ __typename?: 'PlayerCodeAcquisition';
13729
+ acquisitionId: string;
13730
+ listingId: string;
13731
+ appId: string;
13732
+ mode: PlayerCodeAcquisitionMode;
13733
+ status: string;
13734
+ expiresAt: string | null;
13735
+ unitBudget: string | null;
13736
+ unitsConsumed: string;
13737
+ acquiredAt: string;
13738
+ };
13739
+ };
13740
+ export type MarketplaceRefundAcquisitionMutationVariables = Exact<{
13741
+ appId: Scalars['BigInt']['input'];
13742
+ acquisitionId: Scalars['String']['input'];
13743
+ }>;
13744
+ export type MarketplaceRefundAcquisitionMutation = {
13745
+ __typename?: 'Mutation';
13746
+ refundPlayerCodeAcquisition: number;
13747
+ };
13748
+ export type MarketplaceGridListingsQueryVariables = Exact<{
13749
+ appId: Scalars['BigInt']['input'];
13750
+ }>;
13751
+ export type MarketplaceGridListingsQuery = {
13752
+ __typename?: 'Query';
13753
+ gridListings: Array<{
13754
+ __typename?: 'GridListing';
13755
+ gridListingId: string;
13756
+ appId: string;
13757
+ kind: string;
13758
+ name: string;
13759
+ description: string;
13760
+ priceCents: number;
13761
+ conferredPermissionKeys: Array<string>;
13762
+ resalePolicy: string;
13763
+ }>;
13764
+ };
13765
+ export type MarketplacePurchaseGridMutationVariables = Exact<{
13766
+ appId: Scalars['BigInt']['input'];
13767
+ gridListingId: Scalars['String']['input'];
13768
+ chunkX?: InputMaybe<Scalars['Int']['input']>;
13769
+ chunkY?: InputMaybe<Scalars['Int']['input']>;
13770
+ chunkZ?: InputMaybe<Scalars['Int']['input']>;
13771
+ }>;
13772
+ export type MarketplacePurchaseGridMutation = {
13773
+ __typename?: 'Mutation';
13774
+ purchaseGrid: {
13775
+ __typename?: 'GridPurchaseResult';
13776
+ gridId: string;
13777
+ ownershipAssigned: boolean;
13778
+ };
13779
+ };
13780
+ export type MarketplaceSetListingPricingMutationVariables = Exact<{
13781
+ input: SetListingPricingInput;
13782
+ }>;
13783
+ export type MarketplaceSetListingPricingMutation = {
13784
+ __typename?: 'Mutation';
13785
+ setListingPricing: boolean;
13786
+ };
13787
+ export type MarketplaceSetOrgShareMutationVariables = Exact<{
13788
+ appId: Scalars['BigInt']['input'];
13789
+ bps: Scalars['Int']['input'];
13790
+ }>;
13791
+ export type MarketplaceSetOrgShareMutation = {
13792
+ __typename?: 'Mutation';
13793
+ setAppMarketplaceOrgShare: number;
13794
+ };
13795
+ export type MarketplaceBeginSellerOnboardingMutationVariables = Exact<{
13796
+ country: Scalars['String']['input'];
13797
+ }>;
13798
+ export type MarketplaceBeginSellerOnboardingMutation = {
13799
+ __typename?: 'Mutation';
13800
+ beginSellerOnboarding: {
13801
+ __typename?: 'SellerOnboardingLink';
13802
+ status: SellerOnboardingStatus;
13803
+ onboardingUrl: string | null;
13804
+ unavailableReason: string | null;
13805
+ };
13806
+ };
13807
+ export type MarketplaceBeginOrgSellerOnboardingMutationVariables = Exact<{
13808
+ orgId: Scalars['BigInt']['input'];
13809
+ country: Scalars['String']['input'];
13810
+ }>;
13811
+ export type MarketplaceBeginOrgSellerOnboardingMutation = {
13812
+ __typename?: 'Mutation';
13813
+ beginOrgSellerOnboarding: {
13814
+ __typename?: 'SellerOnboardingLink';
13815
+ status: SellerOnboardingStatus;
13816
+ onboardingUrl: string | null;
13817
+ unavailableReason: string | null;
13818
+ };
13819
+ };
13820
+ export type MarketplaceMySellerBalanceQueryVariables = Exact<{
13821
+ [key: string]: never;
13822
+ }>;
13823
+ export type MarketplaceMySellerBalanceQuery = {
13824
+ __typename?: 'Query';
13825
+ mySellerPayoutBalance: {
13826
+ __typename?: 'SellerPayoutBalance';
13827
+ partyKind: string;
13828
+ partyRef: string;
13829
+ pendingCents: number;
13830
+ payableCents: number;
13831
+ reservedCents: number;
13832
+ onboardingStatus: SellerOnboardingStatus;
13833
+ payoutsFrozen: boolean;
13834
+ };
13835
+ };
13836
+ export type MarketplaceRequestPayoutMutationVariables = Exact<{
13837
+ [key: string]: never;
13838
+ }>;
13839
+ export type MarketplaceRequestPayoutMutation = {
13840
+ __typename?: 'Mutation';
13841
+ requestSellerPayout: number;
13842
+ };
13843
+ export type MarketplaceSpendPayoutToWalletMutationVariables = Exact<{
13844
+ amountCents: Scalars['Int']['input'];
13845
+ }>;
13846
+ export type MarketplaceSpendPayoutToWalletMutation = {
13847
+ __typename?: 'Mutation';
13848
+ spendPayoutBalanceToWallet: number;
13849
+ };
13850
+ export type MarketplaceCommerceRiskQueueQueryVariables = Exact<{
13851
+ appId: Scalars['BigInt']['input'];
13852
+ }>;
13853
+ export type MarketplaceCommerceRiskQueueQuery = {
13854
+ __typename?: 'Query';
13855
+ commerceRiskQueue: Array<{
13856
+ __typename?: 'CommerceRiskFlag';
13857
+ flagId: string;
13858
+ appId: string;
13859
+ kind: string;
13860
+ orderId: string | null;
13861
+ subjectKind: string;
13862
+ subjectRef: string;
13863
+ detail: string | null;
13864
+ status: string;
13865
+ createdAt: string;
13866
+ }>;
13867
+ };
13868
+ export type MarketplaceDecideRiskFlagMutationVariables = Exact<{
13869
+ appId: Scalars['BigInt']['input'];
13870
+ flagId: Scalars['String']['input'];
13871
+ release: Scalars['Boolean']['input'];
13872
+ }>;
13873
+ export type MarketplaceDecideRiskFlagMutation = {
13874
+ __typename?: 'Mutation';
13875
+ decideCommerceRiskFlag: boolean;
13876
+ };
13877
+ export type MarketplaceCreateGridListingMutationVariables = Exact<{
13878
+ input: CreateGridListingInput;
13879
+ }>;
13880
+ export type MarketplaceCreateGridListingMutation = {
13881
+ __typename?: 'Mutation';
13882
+ createGridListing: {
13883
+ __typename?: 'GridListing';
13884
+ gridListingId: string;
13885
+ appId: string;
13886
+ kind: string;
13887
+ name: string;
13888
+ priceCents: number;
13889
+ resalePolicy: string;
13890
+ status: string;
13891
+ };
13892
+ };
13893
+ export type CreateOrgRoleMutationVariables = Exact<{
13894
+ input: CreateOrgRoleInput;
13895
+ }>;
13896
+ export type CreateOrgRoleMutation = {
13897
+ __typename?: 'Mutation';
13898
+ createOrgRole: {
13899
+ __typename?: 'OrgRole';
13900
+ orgRoleId: string;
13901
+ orgId: string;
13902
+ roleName: string;
13903
+ isSystem: boolean;
13904
+ permissions: Array<string>;
13905
+ description: string | null;
13906
+ };
13907
+ };
13908
+ export type CreateOrgTokenMutationVariables = Exact<{
13909
+ input: CreateOrgTokenInput;
13910
+ }>;
13911
+ export type CreateOrgTokenMutation = {
13912
+ __typename?: 'Mutation';
13913
+ createOrgToken: {
13914
+ __typename?: 'OrgTokenWithSecret';
13915
+ orgTokenId: string;
13916
+ orgId: string;
13917
+ token: string;
13918
+ label: string | null;
13919
+ isActive: boolean;
13920
+ expiresAt: string | null;
13921
+ createdAt: string;
13922
+ };
13923
+ };
13924
+ export type CreateOrganizationMutationVariables = Exact<{
13925
+ input: CreateOrganizationInput;
13926
+ }>;
13927
+ export type CreateOrganizationMutation = {
13928
+ __typename?: 'Mutation';
13929
+ createOrganization: {
13930
+ __typename?: 'Organization';
13931
+ orgId: string;
13932
+ name: string;
13933
+ slug: string;
13934
+ ownerUserId: string;
13935
+ status: string;
13936
+ createdAt: string;
13937
+ updatedAt: string;
13938
+ };
13939
+ };
13940
+ export type DeleteOrgRoleMutationVariables = Exact<{
13941
+ orgRoleId: Scalars['BigInt']['input'];
13942
+ }>;
13943
+ export type DeleteOrgRoleMutation = {
13944
+ __typename?: 'Mutation';
13945
+ deleteOrgRole: boolean;
13946
+ };
13947
+ export type InviteOrgMemberMutationVariables = Exact<{
13948
+ input: InviteOrgMemberInput;
13949
+ }>;
13950
+ export type InviteOrgMemberMutation = {
13951
+ __typename?: 'Mutation';
13952
+ inviteOrgMember: {
13953
+ __typename?: 'OrgMember';
13954
+ orgMemberId: string;
13955
+ orgId: string;
13956
+ userId: string;
13957
+ status: string;
13958
+ createdAt: string;
13959
+ updatedAt: string;
13960
+ };
13961
+ };
13962
+ export type MemberRolesQueryVariables = Exact<{
13963
+ orgMemberId: Scalars['BigInt']['input'];
13964
+ }>;
13965
+ export type MemberRolesQuery = {
13966
+ __typename?: 'Query';
13967
+ memberRoles: Array<{
13968
+ __typename?: 'OrgRole';
13969
+ orgRoleId: string;
13970
+ orgId: string;
13971
+ roleName: string;
13972
+ isSystem: boolean;
13973
+ permissions: Array<string>;
13974
+ description: string | null;
13975
+ }>;
13976
+ };
13977
+ export type MyOrganizationsQueryVariables = Exact<{
13978
+ [key: string]: never;
13979
+ }>;
13980
+ export type MyOrganizationsQuery = {
13981
+ __typename?: 'Query';
13982
+ myOrganizations: Array<{
13983
+ __typename?: 'OrgMembership';
13984
+ permissions: Array<string>;
13985
+ joinedAt: string;
13986
+ org: {
13987
+ __typename?: 'Organization';
13988
+ orgId: string;
13989
+ slug: string;
13990
+ name: string;
13991
+ ownerUserId: string;
13992
+ status: string;
13993
+ createdAt: string;
13994
+ updatedAt: string;
13995
+ };
13996
+ roles: Array<{
13997
+ __typename?: 'OrgRole';
13998
+ orgRoleId: string;
13999
+ orgId: string;
14000
+ roleName: string;
14001
+ isSystem: boolean;
14002
+ permissions: Array<string>;
14003
+ }>;
14004
+ }>;
14005
+ };
14006
+ export type OrgMembersQueryVariables = Exact<{
14007
+ orgId: Scalars['BigInt']['input'];
14008
+ }>;
14009
+ export type OrgMembersQuery = {
14010
+ __typename?: 'Query';
14011
+ orgMembers: Array<{
14012
+ __typename?: 'OrgMember';
14013
+ orgMemberId: string;
14014
+ orgId: string;
14015
+ userId: string;
14016
+ status: string;
14017
+ createdAt: string;
14018
+ updatedAt: string;
14019
+ }>;
14020
+ };
14021
+ export type OrgPermissionsQueryVariables = Exact<{
14022
+ [key: string]: never;
14023
+ }>;
14024
+ export type OrgPermissionsQuery = {
14025
+ __typename?: 'Query';
14026
+ orgPermissions: Array<{
14027
+ __typename?: 'OrgPermission';
14028
+ permissionKey: string;
14029
+ description: string | null;
14030
+ category: string | null;
14031
+ }>;
14032
+ };
14033
+ export type OrgRolesQueryVariables = Exact<{
14034
+ orgId: Scalars['BigInt']['input'];
14035
+ }>;
14036
+ export type OrgRolesQuery = {
14037
+ __typename?: 'Query';
14038
+ orgRoles: Array<{
11699
14039
  __typename?: 'OrgRole';
11700
14040
  orgRoleId: string;
11701
14041
  orgId: string;
@@ -12106,6 +14446,799 @@ export type PlatformConfigQuery = {
12106
14446
  freeAppsPerOrg: number;
12107
14447
  };
12108
14448
  };
14449
+ export type PlayerWasmModuleFieldsFragment = {
14450
+ __typename?: 'PlayerWasmModule';
14451
+ moduleId: string;
14452
+ appId: string;
14453
+ gridId: string;
14454
+ name: string;
14455
+ description: string | null;
14456
+ authorUserId: string | null;
14457
+ authorOrgId: string | null;
14458
+ enabled: boolean;
14459
+ draft: boolean;
14460
+ currentVersionId: string | null;
14461
+ circuitState: string;
14462
+ lastError: string | null;
14463
+ createdAt: string;
14464
+ updatedAt: string;
14465
+ };
14466
+ export type PlayerWasmModuleVersionFieldsFragment = {
14467
+ __typename?: 'PlayerWasmModuleVersion';
14468
+ versionId: string;
14469
+ moduleId: string;
14470
+ versionNo: number;
14471
+ target: PlayerComputeTarget;
14472
+ sourceFilesJson: string | null;
14473
+ openSource: boolean;
14474
+ compileStatus: string;
14475
+ compileLog: string | null;
14476
+ compiledSizeBytes: string | null;
14477
+ createdAt: string;
14478
+ };
14479
+ export type PlayerComputeDeployMutationVariables = Exact<{
14480
+ input: DeployPlayerComputeInput;
14481
+ }>;
14482
+ export type PlayerComputeDeployMutation = {
14483
+ __typename?: 'Mutation';
14484
+ playerComputeDeploy: {
14485
+ __typename?: 'PlayerWasmModuleVersion';
14486
+ versionId: string;
14487
+ moduleId: string;
14488
+ versionNo: number;
14489
+ target: PlayerComputeTarget;
14490
+ sourceFilesJson: string | null;
14491
+ openSource: boolean;
14492
+ compileStatus: string;
14493
+ compileLog: string | null;
14494
+ compiledSizeBytes: string | null;
14495
+ createdAt: string;
14496
+ };
14497
+ };
14498
+ export type PlayerComputeSetEnabledMutationVariables = Exact<{
14499
+ appId: Scalars['BigInt']['input'];
14500
+ gridId: Scalars['BigInt']['input'];
14501
+ name: Scalars['String']['input'];
14502
+ enabled: Scalars['Boolean']['input'];
14503
+ }>;
14504
+ export type PlayerComputeSetEnabledMutation = {
14505
+ __typename?: 'Mutation';
14506
+ playerComputeSetEnabled: {
14507
+ __typename?: 'PlayerWasmModule';
14508
+ moduleId: string;
14509
+ appId: string;
14510
+ gridId: string;
14511
+ name: string;
14512
+ description: string | null;
14513
+ authorUserId: string | null;
14514
+ authorOrgId: string | null;
14515
+ enabled: boolean;
14516
+ draft: boolean;
14517
+ currentVersionId: string | null;
14518
+ circuitState: string;
14519
+ lastError: string | null;
14520
+ createdAt: string;
14521
+ updatedAt: string;
14522
+ };
14523
+ };
14524
+ export type PlayerComputeMyModulesQueryVariables = Exact<{
14525
+ appId: Scalars['BigInt']['input'];
14526
+ }>;
14527
+ export type PlayerComputeMyModulesQuery = {
14528
+ __typename?: 'Query';
14529
+ playerComputeMyModules: Array<{
14530
+ __typename?: 'PlayerWasmModule';
14531
+ moduleId: string;
14532
+ appId: string;
14533
+ gridId: string;
14534
+ name: string;
14535
+ description: string | null;
14536
+ authorUserId: string | null;
14537
+ authorOrgId: string | null;
14538
+ enabled: boolean;
14539
+ draft: boolean;
14540
+ currentVersionId: string | null;
14541
+ circuitState: string;
14542
+ lastError: string | null;
14543
+ createdAt: string;
14544
+ updatedAt: string;
14545
+ }>;
14546
+ };
14547
+ export type PlayerComputeVersionsQueryVariables = Exact<{
14548
+ appId: Scalars['BigInt']['input'];
14549
+ gridId: Scalars['BigInt']['input'];
14550
+ name: Scalars['String']['input'];
14551
+ }>;
14552
+ export type PlayerComputeVersionsQuery = {
14553
+ __typename?: 'Query';
14554
+ playerComputeVersions: Array<{
14555
+ __typename?: 'PlayerWasmModuleVersion';
14556
+ versionId: string;
14557
+ moduleId: string;
14558
+ versionNo: number;
14559
+ target: PlayerComputeTarget;
14560
+ sourceFilesJson: string | null;
14561
+ openSource: boolean;
14562
+ compileStatus: string;
14563
+ compileLog: string | null;
14564
+ compiledSizeBytes: string | null;
14565
+ createdAt: string;
14566
+ }>;
14567
+ };
14568
+ export type PlayerComputeDeleteMutationVariables = Exact<{
14569
+ appId: Scalars['BigInt']['input'];
14570
+ gridId: Scalars['BigInt']['input'];
14571
+ name: Scalars['String']['input'];
14572
+ }>;
14573
+ export type PlayerComputeDeleteMutation = {
14574
+ __typename?: 'Mutation';
14575
+ playerComputeDelete: boolean;
14576
+ };
14577
+ export type PlayerComputeInvokeMutationVariables = Exact<{
14578
+ appId: Scalars['BigInt']['input'];
14579
+ gridId: Scalars['BigInt']['input'];
14580
+ moduleName: Scalars['String']['input'];
14581
+ exportName: Scalars['String']['input'];
14582
+ paramsJson?: InputMaybe<Scalars['String']['input']>;
14583
+ }>;
14584
+ export type PlayerComputeInvokeMutation = {
14585
+ __typename?: 'Mutation';
14586
+ playerComputeInvoke: {
14587
+ __typename?: 'PlayerComputeInvokeResult';
14588
+ resultBase64: string;
14589
+ resultJson: string | null;
14590
+ fuelUsed: string;
14591
+ durationUs: number;
14592
+ };
14593
+ };
14594
+ export type PlayerWasmModuleRunFieldsFragment = {
14595
+ __typename?: 'PlayerWasmModuleRun';
14596
+ runId: string;
14597
+ appId: string;
14598
+ gridId: string;
14599
+ moduleId: string;
14600
+ moduleName: string;
14601
+ executedAsUserId: string;
14602
+ flowId: string | null;
14603
+ triggerSource: string;
14604
+ startedAt: string;
14605
+ durationUs: number;
14606
+ fuelUsed: string;
14607
+ success: boolean;
14608
+ errorMessage: string | null;
14609
+ };
14610
+ export type PlayerComputeUsageQueryVariables = Exact<{
14611
+ appId: Scalars['BigInt']['input'];
14612
+ }>;
14613
+ export type PlayerComputeUsageQuery = {
14614
+ __typename?: 'Query';
14615
+ playerComputeUsage: {
14616
+ __typename?: 'PlayerComputeUsage';
14617
+ appId: string;
14618
+ hourUnitsUsed: string;
14619
+ dayUnitsUsed: string;
14620
+ unitsPerHour: string | null;
14621
+ unitsPerDay: string | null;
14622
+ compilesThisHour: number;
14623
+ maxCompilesPerHour: number;
14624
+ gateStatus: string;
14625
+ gateReason: string | null;
14626
+ };
14627
+ };
14628
+ export type PlayerComputeRunsQueryVariables = Exact<{
14629
+ appId: Scalars['BigInt']['input'];
14630
+ gridId: Scalars['BigInt']['input'];
14631
+ moduleName?: InputMaybe<Scalars['String']['input']>;
14632
+ success?: InputMaybe<Scalars['Boolean']['input']>;
14633
+ limit?: InputMaybe<Scalars['Int']['input']>;
14634
+ offset?: InputMaybe<Scalars['Int']['input']>;
14635
+ }>;
14636
+ export type PlayerComputeRunsQuery = {
14637
+ __typename?: 'Query';
14638
+ playerComputeRuns: Array<{
14639
+ __typename?: 'PlayerWasmModuleRun';
14640
+ runId: string;
14641
+ appId: string;
14642
+ gridId: string;
14643
+ moduleId: string;
14644
+ moduleName: string;
14645
+ executedAsUserId: string;
14646
+ flowId: string | null;
14647
+ triggerSource: string;
14648
+ startedAt: string;
14649
+ durationUs: number;
14650
+ fuelUsed: string;
14651
+ success: boolean;
14652
+ errorMessage: string | null;
14653
+ }>;
14654
+ };
14655
+ export type PlayerComputeLogsQueryVariables = Exact<{
14656
+ appId: Scalars['BigInt']['input'];
14657
+ gridId: Scalars['BigInt']['input'];
14658
+ moduleName?: InputMaybe<Scalars['String']['input']>;
14659
+ limit?: InputMaybe<Scalars['Int']['input']>;
14660
+ }>;
14661
+ export type PlayerComputeLogsQuery = {
14662
+ __typename?: 'Query';
14663
+ playerComputeLogs: Array<{
14664
+ __typename?: 'PlayerWasmModuleRun';
14665
+ runId: string;
14666
+ appId: string;
14667
+ gridId: string;
14668
+ moduleId: string;
14669
+ moduleName: string;
14670
+ executedAsUserId: string;
14671
+ flowId: string | null;
14672
+ triggerSource: string;
14673
+ startedAt: string;
14674
+ durationUs: number;
14675
+ fuelUsed: string;
14676
+ success: boolean;
14677
+ errorMessage: string | null;
14678
+ }>;
14679
+ };
14680
+ export type PlayerComputeSetSwitchMutationVariables = Exact<{
14681
+ appId: Scalars['BigInt']['input'];
14682
+ scope: Scalars['String']['input'];
14683
+ disabled: Scalars['Boolean']['input'];
14684
+ scopeRef?: InputMaybe<Scalars['BigInt']['input']>;
14685
+ reason?: InputMaybe<Scalars['String']['input']>;
14686
+ listingRef?: InputMaybe<Scalars['String']['input']>;
14687
+ }>;
14688
+ export type PlayerComputeSetSwitchMutation = {
14689
+ __typename?: 'Mutation';
14690
+ playerComputeSetSwitch: boolean;
14691
+ };
14692
+ export type PlayerComputeSwitchesQueryVariables = Exact<{
14693
+ appId: Scalars['BigInt']['input'];
14694
+ }>;
14695
+ export type PlayerComputeSwitchesQuery = {
14696
+ __typename?: 'Query';
14697
+ playerComputeSwitches: Array<{
14698
+ __typename?: 'PlayerComputeSwitch';
14699
+ switchId: string;
14700
+ appId: string;
14701
+ scope: string;
14702
+ scopeRef: string | null;
14703
+ listingRef: string | null;
14704
+ reason: string | null;
14705
+ disabledAt: string;
14706
+ }>;
14707
+ };
14708
+ export type PlayerComputeArtifactQueryVariables = Exact<{
14709
+ appId: Scalars['BigInt']['input'];
14710
+ gridId: Scalars['BigInt']['input'];
14711
+ name: Scalars['String']['input'];
14712
+ versionId?: InputMaybe<Scalars['String']['input']>;
14713
+ }>;
14714
+ export type PlayerComputeArtifactQuery = {
14715
+ __typename?: 'Query';
14716
+ playerComputeArtifact: {
14717
+ __typename?: 'PlayerClientArtifact';
14718
+ versionId: string;
14719
+ artifactHash: string;
14720
+ artifactBase64: string;
14721
+ sizeBytes: number;
14722
+ abiVersion: number;
14723
+ contractJson: string | null;
14724
+ clientFuelPerDispatch: string;
14725
+ };
14726
+ };
14727
+ export type PlayerModelContainersQueryVariables = Exact<{
14728
+ appId: Scalars['BigInt']['input'];
14729
+ gridId: Scalars['BigInt']['input'];
14730
+ }>;
14731
+ export type PlayerModelContainersQuery = {
14732
+ __typename?: 'Query';
14733
+ playerModelContainers: Array<{
14734
+ __typename?: 'PlayerModelContainer';
14735
+ containerId: string;
14736
+ appId: string;
14737
+ gridId: string;
14738
+ ownerUserId: string;
14739
+ typeKey: string;
14740
+ displayName: string | null;
14741
+ stateJson: string;
14742
+ propertiesJson: string;
14743
+ createdAt: string;
14744
+ updatedAt: string;
14745
+ }>;
14746
+ };
14747
+ export type PlayerModelContainerQueryVariables = Exact<{
14748
+ input: PlayerModelContainerRefInput;
14749
+ }>;
14750
+ export type PlayerModelContainerQuery = {
14751
+ __typename?: 'Query';
14752
+ playerModelContainer: {
14753
+ __typename?: 'PlayerModelContainer';
14754
+ containerId: string;
14755
+ appId: string;
14756
+ gridId: string;
14757
+ ownerUserId: string;
14758
+ typeKey: string;
14759
+ displayName: string | null;
14760
+ stateJson: string;
14761
+ propertiesJson: string;
14762
+ createdAt: string;
14763
+ updatedAt: string;
14764
+ } | null;
14765
+ };
14766
+ export type PlayerModelCreateContainerMutationVariables = Exact<{
14767
+ input: CreatePlayerModelContainerInput;
14768
+ }>;
14769
+ export type PlayerModelCreateContainerMutation = {
14770
+ __typename?: 'Mutation';
14771
+ playerModelCreateContainer: {
14772
+ __typename?: 'PlayerModelContainer';
14773
+ containerId: string;
14774
+ appId: string;
14775
+ gridId: string;
14776
+ ownerUserId: string;
14777
+ typeKey: string;
14778
+ displayName: string | null;
14779
+ stateJson: string;
14780
+ propertiesJson: string;
14781
+ createdAt: string;
14782
+ updatedAt: string;
14783
+ };
14784
+ };
14785
+ export type PlayerModelSetPropertyMutationVariables = Exact<{
14786
+ input: SetPlayerModelPropertyInput;
14787
+ }>;
14788
+ export type PlayerModelSetPropertyMutation = {
14789
+ __typename?: 'Mutation';
14790
+ playerModelSetProperty: {
14791
+ __typename?: 'PlayerModelContainer';
14792
+ containerId: string;
14793
+ appId: string;
14794
+ gridId: string;
14795
+ ownerUserId: string;
14796
+ typeKey: string;
14797
+ displayName: string | null;
14798
+ stateJson: string;
14799
+ propertiesJson: string;
14800
+ createdAt: string;
14801
+ updatedAt: string;
14802
+ };
14803
+ };
14804
+ export type PlayerModelDeleteContainerMutationVariables = Exact<{
14805
+ input: PlayerModelContainerRefInput;
14806
+ }>;
14807
+ export type PlayerModelDeleteContainerMutation = {
14808
+ __typename?: 'Mutation';
14809
+ playerModelDeleteContainer: boolean;
14810
+ };
14811
+ export type PlayerAutomationsQueryVariables = Exact<{
14812
+ appId: Scalars['BigInt']['input'];
14813
+ gridId: Scalars['BigInt']['input'];
14814
+ }>;
14815
+ export type PlayerAutomationsQuery = {
14816
+ __typename?: 'Query';
14817
+ playerAutomations: Array<{
14818
+ __typename?: 'PlayerAutomation';
14819
+ automationId: string;
14820
+ appId: string;
14821
+ gridId: string;
14822
+ ownerUserId: string;
14823
+ name: string;
14824
+ description: string | null;
14825
+ enabled: boolean;
14826
+ triggerJson: string;
14827
+ actionJson: string;
14828
+ maxRunsPerMinute: number;
14829
+ failureThreshold: number;
14830
+ cooldownMs: number;
14831
+ circuitState: string;
14832
+ consecutiveFailures: number;
14833
+ pausedUntil: string | null;
14834
+ lastError: string | null;
14835
+ lastRunAt: string | null;
14836
+ nextRunAt: string | null;
14837
+ createdAt: string;
14838
+ updatedAt: string;
14839
+ }>;
14840
+ };
14841
+ export type PlayerAutomationCreateMutationVariables = Exact<{
14842
+ input: CreatePlayerAutomationInput;
14843
+ }>;
14844
+ export type PlayerAutomationCreateMutation = {
14845
+ __typename?: 'Mutation';
14846
+ playerAutomationCreate: {
14847
+ __typename?: 'PlayerAutomation';
14848
+ automationId: string;
14849
+ appId: string;
14850
+ gridId: string;
14851
+ ownerUserId: string;
14852
+ name: string;
14853
+ description: string | null;
14854
+ enabled: boolean;
14855
+ triggerJson: string;
14856
+ actionJson: string;
14857
+ maxRunsPerMinute: number;
14858
+ failureThreshold: number;
14859
+ cooldownMs: number;
14860
+ circuitState: string;
14861
+ consecutiveFailures: number;
14862
+ pausedUntil: string | null;
14863
+ lastError: string | null;
14864
+ lastRunAt: string | null;
14865
+ nextRunAt: string | null;
14866
+ createdAt: string;
14867
+ updatedAt: string;
14868
+ };
14869
+ };
14870
+ export type PlayerAutomationSetEnabledMutationVariables = Exact<{
14871
+ input: SetPlayerAutomationEnabledInput;
14872
+ }>;
14873
+ export type PlayerAutomationSetEnabledMutation = {
14874
+ __typename?: 'Mutation';
14875
+ playerAutomationSetEnabled: {
14876
+ __typename?: 'PlayerAutomation';
14877
+ automationId: string;
14878
+ appId: string;
14879
+ gridId: string;
14880
+ ownerUserId: string;
14881
+ name: string;
14882
+ description: string | null;
14883
+ enabled: boolean;
14884
+ triggerJson: string;
14885
+ actionJson: string;
14886
+ maxRunsPerMinute: number;
14887
+ failureThreshold: number;
14888
+ cooldownMs: number;
14889
+ circuitState: string;
14890
+ consecutiveFailures: number;
14891
+ pausedUntil: string | null;
14892
+ lastError: string | null;
14893
+ lastRunAt: string | null;
14894
+ nextRunAt: string | null;
14895
+ createdAt: string;
14896
+ updatedAt: string;
14897
+ };
14898
+ };
14899
+ export type PlayerAutomationDeleteMutationVariables = Exact<{
14900
+ input: PlayerAutomationRefInput;
14901
+ }>;
14902
+ export type PlayerAutomationDeleteMutation = {
14903
+ __typename?: 'Mutation';
14904
+ playerAutomationDelete: boolean;
14905
+ };
14906
+ export type PlayerWalletFieldsFragment = {
14907
+ __typename?: 'PlayerWallet';
14908
+ walletId: string;
14909
+ userId: string;
14910
+ balanceCents: string;
14911
+ currency: string;
14912
+ createdAt: string;
14913
+ };
14914
+ export type PlayerWalletTransactionFieldsFragment = {
14915
+ __typename?: 'PlayerWalletTransaction';
14916
+ transactionId: string;
14917
+ walletId: string;
14918
+ userId: string;
14919
+ amountCents: string;
14920
+ balanceAfter: string;
14921
+ transactionType: string;
14922
+ description: string | null;
14923
+ referenceId: string | null;
14924
+ appId: string | null;
14925
+ createdAt: string;
14926
+ };
14927
+ export type PlayerSpendCapFieldsFragment = {
14928
+ __typename?: 'PlayerSpendCap';
14929
+ userId: string;
14930
+ scope: string;
14931
+ scopeRef: string | null;
14932
+ dailyLimitCents: string | null;
14933
+ monthlyLimitCents: string | null;
14934
+ currentDayUsageCents: string;
14935
+ currentMonthUsageCents: string;
14936
+ };
14937
+ export type PlayerAutoBillingFieldsFragment = {
14938
+ __typename?: 'PlayerAutoBilling';
14939
+ userId: string;
14940
+ enabled: boolean;
14941
+ limitCents: string | null;
14942
+ autoBilledThisPeriodCents: string;
14943
+ rechargeAmountCents: string;
14944
+ lowWaterThresholdCents: string;
14945
+ hasPaymentMethod: boolean;
14946
+ lastError: string | null;
14947
+ };
14948
+ export type PlayerUsageChargeFieldsFragment = {
14949
+ __typename?: 'PlayerUsageCharge';
14950
+ chargeId: string;
14951
+ userId: string;
14952
+ appId: string;
14953
+ periodStart: string;
14954
+ periodEnd: string;
14955
+ amountCents: string;
14956
+ platformCents: string;
14957
+ markupCents: string;
14958
+ currency: string;
14959
+ usageSnapshotJson: string;
14960
+ createdAt: string;
14961
+ };
14962
+ export type PlayerWasmPolicyFieldsFragment = {
14963
+ __typename?: 'PlayerWasmPolicy';
14964
+ policyId: string;
14965
+ appId: string;
14966
+ scope: string;
14967
+ scopeRef: string | null;
14968
+ enabled: boolean;
14969
+ maxModulesPerGrid: number;
14970
+ maxModulesTotal: number;
14971
+ maxTickHz: number;
14972
+ fuelPerTick: string;
14973
+ fuelPerInvoke: string;
14974
+ maxMemoryMb: number;
14975
+ maxRunMs: number;
14976
+ maxDbOpsPerTick: number;
14977
+ maxEgressMsgsPerMin: number;
14978
+ maxEgressBytesPerMin: string;
14979
+ unitsPerHour: string | null;
14980
+ unitsPerDay: string | null;
14981
+ maxCompilesPerHour: number;
14982
+ maxContainerCreatesDay: number;
14983
+ clientFuelPerDispatch: string;
14984
+ };
14985
+ export type PlayerWalletBalanceQueryVariables = Exact<{
14986
+ [key: string]: never;
14987
+ }>;
14988
+ export type PlayerWalletBalanceQuery = {
14989
+ __typename?: 'Query';
14990
+ playerWalletBalance: {
14991
+ __typename?: 'PlayerWallet';
14992
+ walletId: string;
14993
+ userId: string;
14994
+ balanceCents: string;
14995
+ currency: string;
14996
+ createdAt: string;
14997
+ };
14998
+ };
14999
+ export type PlayerWalletTransactionsQueryVariables = Exact<{
15000
+ limit?: InputMaybe<Scalars['Int']['input']>;
15001
+ offset?: InputMaybe<Scalars['Int']['input']>;
15002
+ }>;
15003
+ export type PlayerWalletTransactionsQuery = {
15004
+ __typename?: 'Query';
15005
+ playerWalletTransactions: Array<{
15006
+ __typename?: 'PlayerWalletTransaction';
15007
+ transactionId: string;
15008
+ walletId: string;
15009
+ userId: string;
15010
+ amountCents: string;
15011
+ balanceAfter: string;
15012
+ transactionType: string;
15013
+ description: string | null;
15014
+ referenceId: string | null;
15015
+ appId: string | null;
15016
+ createdAt: string;
15017
+ }>;
15018
+ };
15019
+ export type PlayerUsageChargesQueryVariables = Exact<{
15020
+ appId?: InputMaybe<Scalars['BigInt']['input']>;
15021
+ limit?: InputMaybe<Scalars['Int']['input']>;
15022
+ }>;
15023
+ export type PlayerUsageChargesQuery = {
15024
+ __typename?: 'Query';
15025
+ playerUsageCharges: Array<{
15026
+ __typename?: 'PlayerUsageCharge';
15027
+ chargeId: string;
15028
+ userId: string;
15029
+ appId: string;
15030
+ periodStart: string;
15031
+ periodEnd: string;
15032
+ amountCents: string;
15033
+ platformCents: string;
15034
+ markupCents: string;
15035
+ currency: string;
15036
+ usageSnapshotJson: string;
15037
+ createdAt: string;
15038
+ }>;
15039
+ };
15040
+ export type PlayerSpendCapsQueryVariables = Exact<{
15041
+ [key: string]: never;
15042
+ }>;
15043
+ export type PlayerSpendCapsQuery = {
15044
+ __typename?: 'Query';
15045
+ playerSpendCaps: Array<{
15046
+ __typename?: 'PlayerSpendCap';
15047
+ userId: string;
15048
+ scope: string;
15049
+ scopeRef: string | null;
15050
+ dailyLimitCents: string | null;
15051
+ monthlyLimitCents: string | null;
15052
+ currentDayUsageCents: string;
15053
+ currentMonthUsageCents: string;
15054
+ }>;
15055
+ };
15056
+ export type SetPlayerSpendCapMutationVariables = Exact<{
15057
+ scope: Scalars['String']['input'];
15058
+ appId?: InputMaybe<Scalars['BigInt']['input']>;
15059
+ dailyLimitCents?: InputMaybe<Scalars['BigInt']['input']>;
15060
+ monthlyLimitCents?: InputMaybe<Scalars['BigInt']['input']>;
15061
+ }>;
15062
+ export type SetPlayerSpendCapMutation = {
15063
+ __typename?: 'Mutation';
15064
+ setPlayerSpendCap: Array<{
15065
+ __typename?: 'PlayerSpendCap';
15066
+ userId: string;
15067
+ scope: string;
15068
+ scopeRef: string | null;
15069
+ dailyLimitCents: string | null;
15070
+ monthlyLimitCents: string | null;
15071
+ currentDayUsageCents: string;
15072
+ currentMonthUsageCents: string;
15073
+ }>;
15074
+ };
15075
+ export type PlayerAutoBillingQueryVariables = Exact<{
15076
+ [key: string]: never;
15077
+ }>;
15078
+ export type PlayerAutoBillingQuery = {
15079
+ __typename?: 'Query';
15080
+ playerAutoBilling: {
15081
+ __typename?: 'PlayerAutoBilling';
15082
+ userId: string;
15083
+ enabled: boolean;
15084
+ limitCents: string | null;
15085
+ autoBilledThisPeriodCents: string;
15086
+ rechargeAmountCents: string;
15087
+ lowWaterThresholdCents: string;
15088
+ hasPaymentMethod: boolean;
15089
+ lastError: string | null;
15090
+ };
15091
+ };
15092
+ export type BeginPlayerCardSetupMutationVariables = Exact<{
15093
+ [key: string]: never;
15094
+ }>;
15095
+ export type BeginPlayerCardSetupMutation = {
15096
+ __typename?: 'Mutation';
15097
+ beginPlayerCardSetup: {
15098
+ __typename?: 'PlayerCardSetup';
15099
+ clientSecret: string | null;
15100
+ publishableKey: string | null;
15101
+ externalCustomerId: string;
15102
+ };
15103
+ };
15104
+ export type SetPlayerAutoBillingMutationVariables = Exact<{
15105
+ enabled: Scalars['Boolean']['input'];
15106
+ limitCents?: InputMaybe<Scalars['BigInt']['input']>;
15107
+ rechargeAmountCents?: InputMaybe<Scalars['BigInt']['input']>;
15108
+ lowWaterThresholdCents?: InputMaybe<Scalars['BigInt']['input']>;
15109
+ }>;
15110
+ export type SetPlayerAutoBillingMutation = {
15111
+ __typename?: 'Mutation';
15112
+ setPlayerAutoBilling: {
15113
+ __typename?: 'PlayerAutoBilling';
15114
+ userId: string;
15115
+ enabled: boolean;
15116
+ limitCents: string | null;
15117
+ autoBilledThisPeriodCents: string;
15118
+ rechargeAmountCents: string;
15119
+ lowWaterThresholdCents: string;
15120
+ hasPaymentMethod: boolean;
15121
+ lastError: string | null;
15122
+ };
15123
+ };
15124
+ export type PlayerRuntimeStatesQueryVariables = Exact<{
15125
+ [key: string]: never;
15126
+ }>;
15127
+ export type PlayerRuntimeStatesQuery = {
15128
+ __typename?: 'Query';
15129
+ playerRuntimeStates: Array<{
15130
+ __typename?: 'PlayerRuntimeState';
15131
+ userId: string;
15132
+ appId: string;
15133
+ status: string;
15134
+ reason: string | null;
15135
+ updatedAt: string;
15136
+ }>;
15137
+ };
15138
+ export type PlayerWasmPoliciesQueryVariables = Exact<{
15139
+ appId: Scalars['BigInt']['input'];
15140
+ }>;
15141
+ export type PlayerWasmPoliciesQuery = {
15142
+ __typename?: 'Query';
15143
+ playerWasmPolicies: Array<{
15144
+ __typename?: 'PlayerWasmPolicy';
15145
+ policyId: string;
15146
+ appId: string;
15147
+ scope: string;
15148
+ scopeRef: string | null;
15149
+ enabled: boolean;
15150
+ maxModulesPerGrid: number;
15151
+ maxModulesTotal: number;
15152
+ maxTickHz: number;
15153
+ fuelPerTick: string;
15154
+ fuelPerInvoke: string;
15155
+ maxMemoryMb: number;
15156
+ maxRunMs: number;
15157
+ maxDbOpsPerTick: number;
15158
+ maxEgressMsgsPerMin: number;
15159
+ maxEgressBytesPerMin: string;
15160
+ unitsPerHour: string | null;
15161
+ unitsPerDay: string | null;
15162
+ maxCompilesPerHour: number;
15163
+ maxContainerCreatesDay: number;
15164
+ clientFuelPerDispatch: string;
15165
+ }>;
15166
+ };
15167
+ export type SetPlayerWasmPolicyMutationVariables = Exact<{
15168
+ input: SetPlayerWasmPolicyInput;
15169
+ }>;
15170
+ export type SetPlayerWasmPolicyMutation = {
15171
+ __typename?: 'Mutation';
15172
+ setPlayerWasmPolicy: {
15173
+ __typename?: 'PlayerWasmPolicy';
15174
+ policyId: string;
15175
+ appId: string;
15176
+ scope: string;
15177
+ scopeRef: string | null;
15178
+ enabled: boolean;
15179
+ maxModulesPerGrid: number;
15180
+ maxModulesTotal: number;
15181
+ maxTickHz: number;
15182
+ fuelPerTick: string;
15183
+ fuelPerInvoke: string;
15184
+ maxMemoryMb: number;
15185
+ maxRunMs: number;
15186
+ maxDbOpsPerTick: number;
15187
+ maxEgressMsgsPerMin: number;
15188
+ maxEgressBytesPerMin: string;
15189
+ unitsPerHour: string | null;
15190
+ unitsPerDay: string | null;
15191
+ maxCompilesPerHour: number;
15192
+ maxContainerCreatesDay: number;
15193
+ clientFuelPerDispatch: string;
15194
+ };
15195
+ };
15196
+ export type DeletePlayerWasmPolicyMutationVariables = Exact<{
15197
+ appId: Scalars['BigInt']['input'];
15198
+ scope: Scalars['String']['input'];
15199
+ scopeRef?: InputMaybe<Scalars['BigInt']['input']>;
15200
+ }>;
15201
+ export type DeletePlayerWasmPolicyMutation = {
15202
+ __typename?: 'Mutation';
15203
+ deletePlayerWasmPolicy: boolean;
15204
+ };
15205
+ export type PlayerRateMarkupQueryVariables = Exact<{
15206
+ appId: Scalars['BigInt']['input'];
15207
+ }>;
15208
+ export type PlayerRateMarkupQuery = {
15209
+ __typename?: 'Query';
15210
+ playerRateMarkup: number;
15211
+ };
15212
+ export type SetPlayerRateMarkupMutationVariables = Exact<{
15213
+ appId: Scalars['BigInt']['input'];
15214
+ markupBps: Scalars['Int']['input'];
15215
+ }>;
15216
+ export type SetPlayerRateMarkupMutation = {
15217
+ __typename?: 'Mutation';
15218
+ setPlayerRateMarkup: number;
15219
+ };
15220
+ export type AppPlayerUsageQueryVariables = Exact<{
15221
+ appId: Scalars['BigInt']['input'];
15222
+ hours?: InputMaybe<Scalars['Int']['input']>;
15223
+ }>;
15224
+ export type AppPlayerUsageQuery = {
15225
+ __typename?: 'Query';
15226
+ appPlayerUsage: Array<{
15227
+ __typename?: 'AppPlayerUsageRow';
15228
+ userId: string;
15229
+ computeUnits: string;
15230
+ automationUnits: string;
15231
+ compileCount: number;
15232
+ chargedCents: string;
15233
+ }>;
15234
+ };
15235
+ export type AppPlayerMarkupAccruedQueryVariables = Exact<{
15236
+ appId: Scalars['BigInt']['input'];
15237
+ }>;
15238
+ export type AppPlayerMarkupAccruedQuery = {
15239
+ __typename?: 'Query';
15240
+ appPlayerMarkupAccrued: string;
15241
+ };
12109
15242
  export type DeleteQuotaMutationVariables = Exact<{
12110
15243
  quotaId: Scalars['BigInt']['input'];
12111
15244
  }>;
@@ -13678,11 +16811,13 @@ export type VoxelUpdateHistoryConnectionQuery = {
13678
16811
  };
13679
16812
  };
13680
16813
  };
16814
+ export declare const AppCodeAdmissionFieldsFragmentDoc: DocumentNode<AppCodeAdmissionFieldsFragment, unknown>;
13681
16815
  export declare const ComputeModuleFieldsFragmentDoc: DocumentNode<ComputeModuleFieldsFragment, unknown>;
13682
16816
  export declare const ComputeVersionFieldsFragmentDoc: DocumentNode<ComputeVersionFieldsFragment, unknown>;
13683
16817
  export declare const ComputeTriggerFieldsFragmentDoc: DocumentNode<ComputeTriggerFieldsFragment, unknown>;
13684
16818
  export declare const ComputePolicyFieldsFragmentDoc: DocumentNode<ComputePolicyFieldsFragment, unknown>;
13685
16819
  export declare const ComputeRunFieldsFragmentDoc: DocumentNode<ComputeRunFieldsFragment, unknown>;
16820
+ export declare const GridOwnershipFieldsFragmentDoc: DocumentNode<GridOwnershipFieldsFragment, unknown>;
13686
16821
  export declare const GmAutomationFieldsFragmentDoc: DocumentNode<GmAutomationFieldsFragment, unknown>;
13687
16822
  export declare const GmAutomationTriggerFieldsFragmentDoc: DocumentNode<GmAutomationTriggerFieldsFragment, unknown>;
13688
16823
  export declare const GmAutomationPolicyFieldsFragmentDoc: DocumentNode<GmAutomationPolicyFieldsFragment, unknown>;
@@ -13692,6 +16827,20 @@ export declare const GmContainerFieldsFragmentDoc: DocumentNode<GmContainerField
13692
16827
  export declare const GmInvokeResultFieldsFragmentDoc: DocumentNode<GmInvokeResultFieldsFragment, unknown>;
13693
16828
  export declare const GmFunctionFieldsFragmentDoc: DocumentNode<GmFunctionFieldsFragment, unknown>;
13694
16829
  export declare const GmPropertyDefFieldsFragmentDoc: DocumentNode<GmPropertyDefFieldsFragment, unknown>;
16830
+ export declare const PlayerCodeListingFieldsFragmentDoc: DocumentNode<PlayerCodeListingFieldsFragment, unknown>;
16831
+ export declare const PlayerCodeListingVersionFieldsFragmentDoc: DocumentNode<PlayerCodeListingVersionFieldsFragment, unknown>;
16832
+ export declare const PlayerCodeAcquisitionFieldsFragmentDoc: DocumentNode<PlayerCodeAcquisitionFieldsFragment, unknown>;
16833
+ export declare const PlayerCodeInstallFieldsFragmentDoc: DocumentNode<PlayerCodeInstallFieldsFragment, unknown>;
16834
+ export declare const GridClaimRequestFieldsFragmentDoc: DocumentNode<GridClaimRequestFieldsFragment, unknown>;
16835
+ export declare const PlayerWasmModuleFieldsFragmentDoc: DocumentNode<PlayerWasmModuleFieldsFragment, unknown>;
16836
+ export declare const PlayerWasmModuleVersionFieldsFragmentDoc: DocumentNode<PlayerWasmModuleVersionFieldsFragment, unknown>;
16837
+ export declare const PlayerWasmModuleRunFieldsFragmentDoc: DocumentNode<PlayerWasmModuleRunFieldsFragment, unknown>;
16838
+ export declare const PlayerWalletFieldsFragmentDoc: DocumentNode<PlayerWalletFieldsFragment, unknown>;
16839
+ export declare const PlayerWalletTransactionFieldsFragmentDoc: DocumentNode<PlayerWalletTransactionFieldsFragment, unknown>;
16840
+ export declare const PlayerSpendCapFieldsFragmentDoc: DocumentNode<PlayerSpendCapFieldsFragment, unknown>;
16841
+ export declare const PlayerAutoBillingFieldsFragmentDoc: DocumentNode<PlayerAutoBillingFieldsFragment, unknown>;
16842
+ export declare const PlayerUsageChargeFieldsFragmentDoc: DocumentNode<PlayerUsageChargeFieldsFragment, unknown>;
16843
+ export declare const PlayerWasmPolicyFieldsFragmentDoc: DocumentNode<PlayerWasmPolicyFieldsFragment, unknown>;
13695
16844
  export declare const ActorDocument: DocumentNode<ActorQuery, ActorQueryVariables>;
13696
16845
  export declare const ActorsDocument: DocumentNode<ActorsQuery, ActorsQueryVariables>;
13697
16846
  export declare const ActorsConnectionDocument: DocumentNode<ActorsConnectionQuery, ActorsConnectionQueryVariables>;
@@ -13717,6 +16866,11 @@ export declare const AppDocument: DocumentNode<AppQuery, AppQueryVariables>;
13717
16866
  export declare const AppBySlugDocument: DocumentNode<AppBySlugQuery, AppBySlugQueryVariables>;
13718
16867
  export declare const AppsForOrgDocument: DocumentNode<AppsForOrgQuery, AppsForOrgQueryVariables>;
13719
16868
  export declare const ArchiveAppDocument: DocumentNode<ArchiveAppMutation, ArchiveAppMutationVariables>;
16869
+ export declare const AppCodeAdmissionModeDocument: DocumentNode<AppCodeAdmissionModeQuery, AppCodeAdmissionModeQueryVariables>;
16870
+ export declare const AppCodeAdmissionsDocument: DocumentNode<AppCodeAdmissionsQuery, AppCodeAdmissionsQueryVariables>;
16871
+ export declare const SetAppCodeAdmissionModeDocument: DocumentNode<SetAppCodeAdmissionModeMutation, SetAppCodeAdmissionModeMutationVariables>;
16872
+ export declare const AdmitAppCodeDocument: DocumentNode<AdmitAppCodeMutation, AdmitAppCodeMutationVariables>;
16873
+ export declare const RevokeAppCodeAdmissionDocument: DocumentNode<RevokeAppCodeAdmissionMutation, RevokeAppCodeAdmissionMutationVariables>;
13720
16874
  export declare const CreateAppDocument: DocumentNode<CreateAppMutation, CreateAppMutationVariables>;
13721
16875
  export declare const MarketplaceAppsDocument: DocumentNode<MarketplaceAppsQuery, MarketplaceAppsQueryVariables>;
13722
16876
  export declare const AppsConnectionDocument: DocumentNode<AppsConnectionQuery, AppsConnectionQueryVariables>;
@@ -13827,6 +16981,9 @@ export declare const RestartEnvironmentServicesDocument: DocumentNode<RestartEnv
13827
16981
  export declare const ResumeEnvironmentDocument: DocumentNode<ResumeEnvironmentMutation, ResumeEnvironmentMutationVariables>;
13828
16982
  export declare const UpdateEnvironmentBillingTiersDocument: DocumentNode<UpdateEnvironmentBillingTiersMutation, UpdateEnvironmentBillingTiersMutationVariables>;
13829
16983
  export declare const UpdateEnvironmentScalingDocument: DocumentNode<UpdateEnvironmentScalingMutation, UpdateEnvironmentScalingMutationVariables>;
16984
+ export declare const GridOwnershipDocument: DocumentNode<GridOwnershipQuery, GridOwnershipQueryVariables>;
16985
+ export declare const AssignGridOwnershipDocument: DocumentNode<AssignGridOwnershipMutation, AssignGridOwnershipMutationVariables>;
16986
+ export declare const TransferGridOwnershipDocument: DocumentNode<TransferGridOwnershipMutation, TransferGridOwnershipMutationVariables>;
13830
16987
  export declare const GridUserPermissionsDocument: DocumentNode<GridUserPermissionsQuery, GridUserPermissionsQueryVariables>;
13831
16988
  export declare const NearbyGridPermissionsDocument: DocumentNode<NearbyGridPermissionsQuery, NearbyGridPermissionsQueryVariables>;
13832
16989
  export declare const GridPermissionLimitsDocument: DocumentNode<GridPermissionLimitsQuery, GridPermissionLimitsQueryVariables>;
@@ -13893,6 +17050,44 @@ export declare const GameModelRevokeTierFeatureDocument: DocumentNode<GameModelR
13893
17050
  export declare const GameHostDocument: DocumentNode<GameHostQuery, GameHostQueryVariables>;
13894
17051
  export declare const AmIGameHostDocument: DocumentNode<AmIGameHostQuery, AmIGameHostQueryVariables>;
13895
17052
  export declare const ActorHeartbeatDocument: DocumentNode<ActorHeartbeatMutation, ActorHeartbeatMutationVariables>;
17053
+ export declare const MarketplaceListingsDocument: DocumentNode<MarketplaceListingsQuery, MarketplaceListingsQueryVariables>;
17054
+ export declare const MarketplaceListingVersionsDocument: DocumentNode<MarketplaceListingVersionsQuery, MarketplaceListingVersionsQueryVariables>;
17055
+ export declare const MarketplaceMyAcquisitionsDocument: DocumentNode<MarketplaceMyAcquisitionsQuery, MarketplaceMyAcquisitionsQueryVariables>;
17056
+ export declare const MarketplaceMyInstallsDocument: DocumentNode<MarketplaceMyInstallsQuery, MarketplaceMyInstallsQueryVariables>;
17057
+ export declare const MarketplaceGridClientModsDocument: DocumentNode<MarketplaceGridClientModsQuery, MarketplaceGridClientModsQueryVariables>;
17058
+ export declare const MarketplaceClientArtifactDocument: DocumentNode<MarketplaceClientArtifactQuery, MarketplaceClientArtifactQueryVariables>;
17059
+ export declare const MarketplacePublishListingDocument: DocumentNode<MarketplacePublishListingMutation, MarketplacePublishListingMutationVariables>;
17060
+ export declare const MarketplacePublishVersionDocument: DocumentNode<MarketplacePublishVersionMutation, MarketplacePublishVersionMutationVariables>;
17061
+ export declare const MarketplaceAcquireDocument: DocumentNode<MarketplaceAcquireMutation, MarketplaceAcquireMutationVariables>;
17062
+ export declare const MarketplaceInstallDocument: DocumentNode<MarketplaceInstallMutation, MarketplaceInstallMutationVariables>;
17063
+ export declare const MarketplaceUninstallDocument: DocumentNode<MarketplaceUninstallMutation, MarketplaceUninstallMutationVariables>;
17064
+ export declare const MarketplaceConsentGridClientModDocument: DocumentNode<MarketplaceConsentGridClientModMutation, MarketplaceConsentGridClientModMutationVariables>;
17065
+ export declare const MarketplaceGridClaimPolicyDocument: DocumentNode<MarketplaceGridClaimPolicyQuery, MarketplaceGridClaimPolicyQueryVariables>;
17066
+ export declare const MarketplaceGridClaimRequestsDocument: DocumentNode<MarketplaceGridClaimRequestsQuery, MarketplaceGridClaimRequestsQueryVariables>;
17067
+ export declare const MarketplaceClaimGridOwnershipDocument: DocumentNode<MarketplaceClaimGridOwnershipMutation, MarketplaceClaimGridOwnershipMutationVariables>;
17068
+ export declare const MarketplaceDecideGridClaimDocument: DocumentNode<MarketplaceDecideGridClaimMutation, MarketplaceDecideGridClaimMutationVariables>;
17069
+ export declare const MarketplaceIssueGridClaimInviteDocument: DocumentNode<MarketplaceIssueGridClaimInviteMutation, MarketplaceIssueGridClaimInviteMutationVariables>;
17070
+ export declare const MarketplaceAdmissionQueueDocument: DocumentNode<MarketplaceAdmissionQueueQuery, MarketplaceAdmissionQueueQueryVariables>;
17071
+ export declare const MarketplaceAppListingsDocument: DocumentNode<MarketplaceAppListingsQuery, MarketplaceAppListingsQueryVariables>;
17072
+ export declare const MarketplaceAppAcquisitionsDocument: DocumentNode<MarketplaceAppAcquisitionsQuery, MarketplaceAppAcquisitionsQueryVariables>;
17073
+ export declare const MarketplaceTransferListingDocument: DocumentNode<MarketplaceTransferListingMutation, MarketplaceTransferListingMutationVariables>;
17074
+ export declare const MarketplaceSetListingStatusDocument: DocumentNode<MarketplaceSetListingStatusMutation, MarketplaceSetListingStatusMutationVariables>;
17075
+ export declare const MarketplaceSetGridClaimPolicyDocument: DocumentNode<MarketplaceSetGridClaimPolicyMutation, MarketplaceSetGridClaimPolicyMutationVariables>;
17076
+ export declare const MarketplaceRenewAcquisitionDocument: DocumentNode<MarketplaceRenewAcquisitionMutation, MarketplaceRenewAcquisitionMutationVariables>;
17077
+ export declare const MarketplaceTopUpAcquisitionDocument: DocumentNode<MarketplaceTopUpAcquisitionMutation, MarketplaceTopUpAcquisitionMutationVariables>;
17078
+ export declare const MarketplaceRefundAcquisitionDocument: DocumentNode<MarketplaceRefundAcquisitionMutation, MarketplaceRefundAcquisitionMutationVariables>;
17079
+ export declare const MarketplaceGridListingsDocument: DocumentNode<MarketplaceGridListingsQuery, MarketplaceGridListingsQueryVariables>;
17080
+ export declare const MarketplacePurchaseGridDocument: DocumentNode<MarketplacePurchaseGridMutation, MarketplacePurchaseGridMutationVariables>;
17081
+ export declare const MarketplaceSetListingPricingDocument: DocumentNode<MarketplaceSetListingPricingMutation, MarketplaceSetListingPricingMutationVariables>;
17082
+ export declare const MarketplaceSetOrgShareDocument: DocumentNode<MarketplaceSetOrgShareMutation, MarketplaceSetOrgShareMutationVariables>;
17083
+ export declare const MarketplaceBeginSellerOnboardingDocument: DocumentNode<MarketplaceBeginSellerOnboardingMutation, MarketplaceBeginSellerOnboardingMutationVariables>;
17084
+ export declare const MarketplaceBeginOrgSellerOnboardingDocument: DocumentNode<MarketplaceBeginOrgSellerOnboardingMutation, MarketplaceBeginOrgSellerOnboardingMutationVariables>;
17085
+ export declare const MarketplaceMySellerBalanceDocument: DocumentNode<MarketplaceMySellerBalanceQuery, MarketplaceMySellerBalanceQueryVariables>;
17086
+ export declare const MarketplaceRequestPayoutDocument: DocumentNode<MarketplaceRequestPayoutMutation, MarketplaceRequestPayoutMutationVariables>;
17087
+ export declare const MarketplaceSpendPayoutToWalletDocument: DocumentNode<MarketplaceSpendPayoutToWalletMutation, MarketplaceSpendPayoutToWalletMutationVariables>;
17088
+ export declare const MarketplaceCommerceRiskQueueDocument: DocumentNode<MarketplaceCommerceRiskQueueQuery, MarketplaceCommerceRiskQueueQueryVariables>;
17089
+ export declare const MarketplaceDecideRiskFlagDocument: DocumentNode<MarketplaceDecideRiskFlagMutation, MarketplaceDecideRiskFlagMutationVariables>;
17090
+ export declare const MarketplaceCreateGridListingDocument: DocumentNode<MarketplaceCreateGridListingMutation, MarketplaceCreateGridListingMutationVariables>;
13896
17091
  export declare const CreateOrgRoleDocument: DocumentNode<CreateOrgRoleMutation, CreateOrgRoleMutationVariables>;
13897
17092
  export declare const CreateOrgTokenDocument: DocumentNode<CreateOrgTokenMutation, CreateOrgTokenMutationVariables>;
13898
17093
  export declare const CreateOrganizationDocument: DocumentNode<CreateOrganizationMutation, CreateOrganizationMutationVariables>;
@@ -13921,6 +17116,43 @@ export declare const MyCheckoutsConnectionDocument: DocumentNode<MyCheckoutsConn
13921
17116
  export declare const PaymentEventsDocument: DocumentNode<PaymentEventsQuery, PaymentEventsQueryVariables>;
13922
17117
  export declare const PaymentEventsConnectionDocument: DocumentNode<PaymentEventsConnectionQuery, PaymentEventsConnectionQueryVariables>;
13923
17118
  export declare const PlatformConfigDocument: DocumentNode<PlatformConfigQuery, PlatformConfigQueryVariables>;
17119
+ export declare const PlayerComputeDeployDocument: DocumentNode<PlayerComputeDeployMutation, PlayerComputeDeployMutationVariables>;
17120
+ export declare const PlayerComputeSetEnabledDocument: DocumentNode<PlayerComputeSetEnabledMutation, PlayerComputeSetEnabledMutationVariables>;
17121
+ export declare const PlayerComputeMyModulesDocument: DocumentNode<PlayerComputeMyModulesQuery, PlayerComputeMyModulesQueryVariables>;
17122
+ export declare const PlayerComputeVersionsDocument: DocumentNode<PlayerComputeVersionsQuery, PlayerComputeVersionsQueryVariables>;
17123
+ export declare const PlayerComputeDeleteDocument: DocumentNode<PlayerComputeDeleteMutation, PlayerComputeDeleteMutationVariables>;
17124
+ export declare const PlayerComputeInvokeDocument: DocumentNode<PlayerComputeInvokeMutation, PlayerComputeInvokeMutationVariables>;
17125
+ export declare const PlayerComputeUsageDocument: DocumentNode<PlayerComputeUsageQuery, PlayerComputeUsageQueryVariables>;
17126
+ export declare const PlayerComputeRunsDocument: DocumentNode<PlayerComputeRunsQuery, PlayerComputeRunsQueryVariables>;
17127
+ export declare const PlayerComputeLogsDocument: DocumentNode<PlayerComputeLogsQuery, PlayerComputeLogsQueryVariables>;
17128
+ export declare const PlayerComputeSetSwitchDocument: DocumentNode<PlayerComputeSetSwitchMutation, PlayerComputeSetSwitchMutationVariables>;
17129
+ export declare const PlayerComputeSwitchesDocument: DocumentNode<PlayerComputeSwitchesQuery, PlayerComputeSwitchesQueryVariables>;
17130
+ export declare const PlayerComputeArtifactDocument: DocumentNode<PlayerComputeArtifactQuery, PlayerComputeArtifactQueryVariables>;
17131
+ export declare const PlayerModelContainersDocument: DocumentNode<PlayerModelContainersQuery, PlayerModelContainersQueryVariables>;
17132
+ export declare const PlayerModelContainerDocument: DocumentNode<PlayerModelContainerQuery, PlayerModelContainerQueryVariables>;
17133
+ export declare const PlayerModelCreateContainerDocument: DocumentNode<PlayerModelCreateContainerMutation, PlayerModelCreateContainerMutationVariables>;
17134
+ export declare const PlayerModelSetPropertyDocument: DocumentNode<PlayerModelSetPropertyMutation, PlayerModelSetPropertyMutationVariables>;
17135
+ export declare const PlayerModelDeleteContainerDocument: DocumentNode<PlayerModelDeleteContainerMutation, PlayerModelDeleteContainerMutationVariables>;
17136
+ export declare const PlayerAutomationsDocument: DocumentNode<PlayerAutomationsQuery, PlayerAutomationsQueryVariables>;
17137
+ export declare const PlayerAutomationCreateDocument: DocumentNode<PlayerAutomationCreateMutation, PlayerAutomationCreateMutationVariables>;
17138
+ export declare const PlayerAutomationSetEnabledDocument: DocumentNode<PlayerAutomationSetEnabledMutation, PlayerAutomationSetEnabledMutationVariables>;
17139
+ export declare const PlayerAutomationDeleteDocument: DocumentNode<PlayerAutomationDeleteMutation, PlayerAutomationDeleteMutationVariables>;
17140
+ export declare const PlayerWalletBalanceDocument: DocumentNode<PlayerWalletBalanceQuery, PlayerWalletBalanceQueryVariables>;
17141
+ export declare const PlayerWalletTransactionsDocument: DocumentNode<PlayerWalletTransactionsQuery, PlayerWalletTransactionsQueryVariables>;
17142
+ export declare const PlayerUsageChargesDocument: DocumentNode<PlayerUsageChargesQuery, PlayerUsageChargesQueryVariables>;
17143
+ export declare const PlayerSpendCapsDocument: DocumentNode<PlayerSpendCapsQuery, PlayerSpendCapsQueryVariables>;
17144
+ export declare const SetPlayerSpendCapDocument: DocumentNode<SetPlayerSpendCapMutation, SetPlayerSpendCapMutationVariables>;
17145
+ export declare const PlayerAutoBillingDocument: DocumentNode<PlayerAutoBillingQuery, PlayerAutoBillingQueryVariables>;
17146
+ export declare const BeginPlayerCardSetupDocument: DocumentNode<BeginPlayerCardSetupMutation, BeginPlayerCardSetupMutationVariables>;
17147
+ export declare const SetPlayerAutoBillingDocument: DocumentNode<SetPlayerAutoBillingMutation, SetPlayerAutoBillingMutationVariables>;
17148
+ export declare const PlayerRuntimeStatesDocument: DocumentNode<PlayerRuntimeStatesQuery, PlayerRuntimeStatesQueryVariables>;
17149
+ export declare const PlayerWasmPoliciesDocument: DocumentNode<PlayerWasmPoliciesQuery, PlayerWasmPoliciesQueryVariables>;
17150
+ export declare const SetPlayerWasmPolicyDocument: DocumentNode<SetPlayerWasmPolicyMutation, SetPlayerWasmPolicyMutationVariables>;
17151
+ export declare const DeletePlayerWasmPolicyDocument: DocumentNode<DeletePlayerWasmPolicyMutation, DeletePlayerWasmPolicyMutationVariables>;
17152
+ export declare const PlayerRateMarkupDocument: DocumentNode<PlayerRateMarkupQuery, PlayerRateMarkupQueryVariables>;
17153
+ export declare const SetPlayerRateMarkupDocument: DocumentNode<SetPlayerRateMarkupMutation, SetPlayerRateMarkupMutationVariables>;
17154
+ export declare const AppPlayerUsageDocument: DocumentNode<AppPlayerUsageQuery, AppPlayerUsageQueryVariables>;
17155
+ export declare const AppPlayerMarkupAccruedDocument: DocumentNode<AppPlayerMarkupAccruedQuery, AppPlayerMarkupAccruedQueryVariables>;
13924
17156
  export declare const DeleteQuotaDocument: DocumentNode<DeleteQuotaMutation, DeleteQuotaMutationVariables>;
13925
17157
  export declare const EffectiveQuotaDocument: DocumentNode<EffectiveQuotaQuery, EffectiveQuotaQueryVariables>;
13926
17158
  export declare const QuotasForAppDocument: DocumentNode<QuotasForAppQuery, QuotasForAppQueryVariables>;