@domino-sdk/relay-cli 0.5.0 → 0.7.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.
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { pointsMutationSchema, referralControlSchema, leaderboardQuerySchema, leaderboardExclusionSchema, leaderboardGroupSchema, projectDeploymentSchema, publishDeploymentSchema, catalogDeploymentSchema, saveQuestDraftSchema, publishQuestDraftSchema, collectionBeginSchema, configurePickupSchema } from '@domino-sdk/relay';
1
+ import { observationInputSchema, pointLedgerSchema, pointsMutationSchema, referralControlSchema, leaderboardQuerySchema, leaderboardExclusionSchema, leaderboardGroupSchema, projectDeploymentSchema, publishDeploymentSchema, catalogDeploymentSchema, saveQuestDraftSchema, publishQuestDraftSchema, collectionBeginSchema, configurePickupSchema } from '@domino-sdk/relay';
2
2
  import { z } from 'zod';
3
3
 
4
4
  declare const appRoutingSchema: z.ZodDefault<z.ZodEnum<{
@@ -86,8 +86,8 @@ declare const buildPhaseSchema: z.ZodEnum<{
86
86
  check: "check";
87
87
  failed: "failed";
88
88
  ready: "ready";
89
- queued: "queued";
90
89
  source: "source";
90
+ queued: "queued";
91
91
  install: "install";
92
92
  build: "build";
93
93
  deploy: "deploy";
@@ -97,8 +97,8 @@ declare const buildStatusSchema: z.ZodObject<{
97
97
  check: "check";
98
98
  failed: "failed";
99
99
  ready: "ready";
100
- queued: "queued";
101
100
  source: "source";
101
+ queued: "queued";
102
102
  install: "install";
103
103
  build: "build";
104
104
  deploy: "deploy";
@@ -107,8 +107,8 @@ declare const buildStatusSchema: z.ZodObject<{
107
107
  check: "check";
108
108
  failed: "failed";
109
109
  ready: "ready";
110
- queued: "queued";
111
110
  source: "source";
111
+ queued: "queued";
112
112
  install: "install";
113
113
  build: "build";
114
114
  deploy: "deploy";
@@ -142,8 +142,8 @@ declare const hostedBuildSchema: z.ZodObject<{
142
142
  check: "check";
143
143
  failed: "failed";
144
144
  ready: "ready";
145
- queued: "queued";
146
145
  source: "source";
146
+ queued: "queued";
147
147
  install: "install";
148
148
  build: "build";
149
149
  deploy: "deploy";
@@ -152,8 +152,8 @@ declare const hostedBuildSchema: z.ZodObject<{
152
152
  check: "check";
153
153
  failed: "failed";
154
154
  ready: "ready";
155
- queued: "queued";
156
155
  source: "source";
156
+ queued: "queued";
157
157
  install: "install";
158
158
  build: "build";
159
159
  deploy: "deploy";
@@ -188,8 +188,8 @@ declare const buildSnapshotSchema: z.ZodObject<{
188
188
  check: "check";
189
189
  failed: "failed";
190
190
  ready: "ready";
191
- queued: "queued";
192
191
  source: "source";
192
+ queued: "queued";
193
193
  install: "install";
194
194
  build: "build";
195
195
  deploy: "deploy";
@@ -198,8 +198,8 @@ declare const buildSnapshotSchema: z.ZodObject<{
198
198
  check: "check";
199
199
  failed: "failed";
200
200
  ready: "ready";
201
- queued: "queued";
202
201
  source: "source";
202
+ queued: "queued";
203
203
  install: "install";
204
204
  build: "build";
205
205
  deploy: "deploy";
@@ -232,8 +232,8 @@ declare const buildSnapshotSchema: z.ZodObject<{
232
232
  check: "check";
233
233
  failed: "failed";
234
234
  ready: "ready";
235
- queued: "queued";
236
235
  source: "source";
236
+ queued: "queued";
237
237
  install: "install";
238
238
  build: "build";
239
239
  deploy: "deploy";
@@ -242,8 +242,8 @@ declare const buildSnapshotSchema: z.ZodObject<{
242
242
  check: "check";
243
243
  failed: "failed";
244
244
  ready: "ready";
245
- queued: "queued";
246
245
  source: "source";
246
+ queued: "queued";
247
247
  install: "install";
248
248
  build: "build";
249
249
  deploy: "deploy";
@@ -276,8 +276,8 @@ declare const buildSnapshotSchema: z.ZodObject<{
276
276
  check: "check";
277
277
  failed: "failed";
278
278
  ready: "ready";
279
- queued: "queued";
280
279
  source: "source";
280
+ queued: "queued";
281
281
  install: "install";
282
282
  build: "build";
283
283
  deploy: "deploy";
@@ -286,8 +286,8 @@ declare const buildSnapshotSchema: z.ZodObject<{
286
286
  check: "check";
287
287
  failed: "failed";
288
288
  ready: "ready";
289
- queued: "queued";
290
289
  source: "source";
290
+ queued: "queued";
291
291
  install: "install";
292
292
  build: "build";
293
293
  deploy: "deploy";
@@ -385,6 +385,7 @@ declare const permissionSchema: z.ZodEnum<{
385
385
  inventory: "inventory";
386
386
  access: "access";
387
387
  points: "points";
388
+ observe: "observe";
388
389
  }>;
389
390
  type Permission = z.infer<typeof permissionSchema>;
390
391
  declare const rolePermissions: Record<z.infer<typeof roleSchema>, Permission[]>;
@@ -420,6 +421,7 @@ declare const projectSchema: z.ZodObject<{
420
421
  inventory: "inventory";
421
422
  access: "access";
422
423
  points: "points";
424
+ observe: "observe";
423
425
  }>>;
424
426
  environments: z.ZodArray<z.ZodEnum<{
425
427
  test: "test";
@@ -480,6 +482,7 @@ declare const accessSchema: z.ZodObject<{
480
482
  inventory: "inventory";
481
483
  access: "access";
482
484
  points: "points";
485
+ observe: "observe";
483
486
  }>>;
484
487
  environments: z.ZodArray<z.ZodEnum<{
485
488
  test: "test";
@@ -545,6 +548,22 @@ declare const memberSchema: z.ZodObject<{
545
548
  rewards: z.ZodNumber;
546
549
  lastActivity: z.ZodNullable<z.ZodNumber>;
547
550
  }, z.core.$strip>;
551
+ /** Who a member is, for any record that names them only by ID. */
552
+ declare const personSchema: z.ZodObject<{
553
+ id: z.ZodString;
554
+ accounts: z.ZodDefault<z.ZodArray<z.ZodObject<{
555
+ provider: z.ZodString;
556
+ subject: z.ZodString;
557
+ signInEnabled: z.ZodBoolean;
558
+ profile: z.ZodOptional<z.ZodObject<{
559
+ name: z.ZodOptional<z.ZodString>;
560
+ email: z.ZodOptional<z.ZodString>;
561
+ emailVerified: z.ZodDefault<z.ZodBoolean>;
562
+ imageUrl: z.ZodOptional<z.ZodString>;
563
+ }, z.core.$strip>>;
564
+ }, z.core.$strip>>>;
565
+ }, z.core.$strip>;
566
+ type Person = z.infer<typeof personSchema>;
548
567
  declare const metricsSchema: z.ZodObject<{
549
568
  quests: z.ZodNumber;
550
569
  members: z.ZodNumber;
@@ -610,6 +629,33 @@ declare const pageSchema: z.ZodObject<{
610
629
  discord: "discord";
611
630
  }>>>;
612
631
  fields: z.ZodRecord<z.ZodString, z.ZodDiscriminatedUnion<[z.ZodObject<{
632
+ kind: z.ZodLiteral<"point-ledger">;
633
+ default: z.ZodString;
634
+ label: z.ZodString;
635
+ description: z.ZodOptional<z.ZodString>;
636
+ }, z.core.$strict>, z.ZodObject<{
637
+ kind: z.ZodLiteral<"datetime">;
638
+ default: z.ZodPipe<z.ZodISODateTime, z.ZodTransform<string, string>>;
639
+ label: z.ZodString;
640
+ description: z.ZodOptional<z.ZodString>;
641
+ }, z.core.$strict>, z.ZodObject<{
642
+ kind: z.ZodLiteral<"resource">;
643
+ default: z.ZodUnion<readonly [z.ZodLiteral<"">, z.ZodString]>;
644
+ source: z.ZodUnion<readonly [z.ZodObject<{
645
+ provider: z.ZodLiteral<"discord">;
646
+ resource: z.ZodLiteral<"channel">;
647
+ types: z.ZodArray<z.ZodEnum<{
648
+ text: "text";
649
+ announcement: "announcement";
650
+ }>>;
651
+ }, z.core.$strict>, z.ZodObject<{
652
+ provider: z.ZodLiteral<"discord">;
653
+ resource: z.ZodLiteral<"role">;
654
+ assignable: z.ZodDefault<z.ZodBoolean>;
655
+ }, z.core.$strict>]>;
656
+ label: z.ZodString;
657
+ description: z.ZodOptional<z.ZodString>;
658
+ }, z.core.$strict>, z.ZodObject<{
613
659
  kind: z.ZodLiteral<"quiz">;
614
660
  default: z.ZodArray<z.ZodObject<{
615
661
  id: z.ZodString;
@@ -679,6 +725,11 @@ declare const pageSchema: z.ZodObject<{
679
725
  }, z.core.$strict>;
680
726
  }, z.core.$strict>;
681
727
  tier: z.ZodString;
728
+ }, z.core.$strict>, z.ZodObject<{
729
+ kind: z.ZodLiteral<"integration">;
730
+ provider: z.ZodLiteral<"discord">;
731
+ action: z.ZodLiteral<"grant-role">;
732
+ roleId: z.ZodString;
682
733
  }, z.core.$strict>]>>;
683
734
  humanReview: z.ZodBoolean;
684
735
  trigger: z.ZodUnion<readonly [z.ZodObject<{
@@ -694,14 +745,39 @@ declare const pageSchema: z.ZodObject<{
694
745
  }>>;
695
746
  }, z.core.$strict>, z.ZodObject<{
696
747
  kind: z.ZodLiteral<"automatic">;
748
+ observation: z.ZodOptional<z.ZodObject<{
749
+ source: z.ZodString;
750
+ type: z.ZodString;
751
+ }, z.core.$strict>>;
697
752
  }, z.core.$strict>]>;
698
753
  requires: z.ZodDefault<z.ZodArray<z.ZodObject<{
699
754
  quest: z.ZodString;
700
755
  scope: z.ZodLiteral<"ever">;
701
756
  }, z.core.$strict>>>;
702
- completion: z.ZodObject<{
757
+ completion: z.ZodDiscriminatedUnion<[z.ZodObject<{
703
758
  kind: z.ZodLiteral<"once">;
704
- }, z.core.$strict>;
759
+ }, z.core.$strict>, z.ZodObject<{
760
+ kind: z.ZodLiteral<"keyed">;
761
+ }, z.core.$strict>], "kind">;
762
+ visibility: z.ZodDefault<z.ZodEnum<{
763
+ visible: "visible";
764
+ hidden: "hidden";
765
+ }>>;
766
+ budgets: z.ZodDefault<z.ZodArray<z.ZodObject<{
767
+ id: z.ZodString;
768
+ scope: z.ZodEnum<{
769
+ member: "member";
770
+ project: "project";
771
+ }>;
772
+ period: z.ZodEnum<{
773
+ lifetime: "lifetime";
774
+ day: "day";
775
+ }>;
776
+ limit: z.ZodNumber;
777
+ cost: z.ZodUnion<readonly [z.ZodNumber, z.ZodObject<{
778
+ balance: z.ZodString;
779
+ }, z.core.$strict>]>;
780
+ }, z.core.$strict>>>;
705
781
  code: z.ZodString;
706
782
  provider: z.ZodEnum<{
707
783
  "fixture-pass": "fixture-pass";
@@ -768,6 +844,11 @@ declare const pageSchema: z.ZodObject<{
768
844
  }, z.core.$strict>;
769
845
  }, z.core.$strict>;
770
846
  tier: z.ZodString;
847
+ }, z.core.$strict>, z.ZodObject<{
848
+ kind: z.ZodLiteral<"integration">;
849
+ provider: z.ZodLiteral<"discord">;
850
+ action: z.ZodLiteral<"grant-role">;
851
+ roleId: z.ZodString;
771
852
  }, z.core.$strict>]>>;
772
853
  code: z.ZodString;
773
854
  provider: z.ZodEnum<{
@@ -805,6 +886,30 @@ declare const pageSchema: z.ZodObject<{
805
886
  };
806
887
  integrations: "discord"[];
807
888
  fields: Record<string, {
889
+ kind: "point-ledger";
890
+ default: string;
891
+ label: string;
892
+ description?: string | undefined;
893
+ } | {
894
+ kind: "datetime";
895
+ default: string;
896
+ label: string;
897
+ description?: string | undefined;
898
+ } | {
899
+ kind: "resource";
900
+ default: string;
901
+ source: {
902
+ provider: "discord";
903
+ resource: "channel";
904
+ types: ("text" | "announcement")[];
905
+ } | {
906
+ provider: "discord";
907
+ resource: "role";
908
+ assignable: boolean;
909
+ };
910
+ label: string;
911
+ description?: string | undefined;
912
+ } | {
808
913
  kind: "quiz";
809
914
  default: {
810
915
  id: string;
@@ -874,6 +979,11 @@ declare const pageSchema: z.ZodObject<{
874
979
  kind: "points";
875
980
  balance: string;
876
981
  amount: number;
982
+ } | {
983
+ kind: "integration";
984
+ provider: "discord";
985
+ action: "grant-role";
986
+ roleId: string;
877
987
  })[];
878
988
  humanReview: boolean;
879
989
  trigger: {
@@ -882,6 +992,10 @@ declare const pageSchema: z.ZodObject<{
882
992
  actor?: "staff" | "member" | undefined;
883
993
  } | {
884
994
  kind: "automatic";
995
+ observation?: {
996
+ source: string;
997
+ type: string;
998
+ } | undefined;
885
999
  };
886
1000
  requires: {
887
1001
  quest: string;
@@ -889,7 +1003,19 @@ declare const pageSchema: z.ZodObject<{
889
1003
  }[];
890
1004
  completion: {
891
1005
  kind: "once";
1006
+ } | {
1007
+ kind: "keyed";
892
1008
  };
1009
+ visibility: "visible" | "hidden";
1010
+ budgets: {
1011
+ id: string;
1012
+ scope: "member" | "project";
1013
+ period: "lifetime" | "day";
1014
+ limit: number;
1015
+ cost: number | {
1016
+ balance: string;
1017
+ };
1018
+ }[];
893
1019
  code: string;
894
1020
  provider: "fixture-pass" | "fixture-fail" | "fixture-unclear" | "fixture-error" | "workers-ai";
895
1021
  id: string;
@@ -946,6 +1072,11 @@ declare const pageSchema: z.ZodObject<{
946
1072
  kind: "points";
947
1073
  balance: string;
948
1074
  amount: number;
1075
+ } | {
1076
+ kind: "integration";
1077
+ provider: "discord";
1078
+ action: "grant-role";
1079
+ roleId: string;
949
1080
  })[];
950
1081
  code: string;
951
1082
  provider: "fixture-pass" | "fixture-fail" | "fixture-unclear" | "fixture-error" | "workers-ai";
@@ -953,6 +1084,7 @@ declare const pageSchema: z.ZodObject<{
953
1084
  createdAt: number;
954
1085
  }>>]>>;
955
1086
  completions: z.ZodArray<z.ZodObject<{
1087
+ key: z.ZodDefault<z.ZodString>;
956
1088
  id: z.ZodString;
957
1089
  quest: z.ZodString;
958
1090
  member: z.ZodString;
@@ -1080,6 +1212,11 @@ declare const pageSchema: z.ZodObject<{
1080
1212
  }, z.core.$strict>;
1081
1213
  }, z.core.$strict>;
1082
1214
  tier: z.ZodString;
1215
+ }, z.core.$strict>, z.ZodObject<{
1216
+ kind: z.ZodLiteral<"integration">;
1217
+ provider: z.ZodLiteral<"discord">;
1218
+ action: z.ZodLiteral<"grant-role">;
1219
+ roleId: z.ZodString;
1083
1220
  }, z.core.$strict>]>>>>;
1084
1221
  createdAt: z.ZodNumber;
1085
1222
  }, z.core.$strip>>;
@@ -1117,6 +1254,20 @@ declare const pageSchema: z.ZodObject<{
1117
1254
  rewards: z.ZodNumber;
1118
1255
  lastActivity: z.ZodNullable<z.ZodNumber>;
1119
1256
  }, z.core.$strip>>;
1257
+ people: z.ZodDefault<z.ZodArray<z.ZodObject<{
1258
+ id: z.ZodString;
1259
+ accounts: z.ZodDefault<z.ZodArray<z.ZodObject<{
1260
+ provider: z.ZodString;
1261
+ subject: z.ZodString;
1262
+ signInEnabled: z.ZodBoolean;
1263
+ profile: z.ZodOptional<z.ZodObject<{
1264
+ name: z.ZodOptional<z.ZodString>;
1265
+ email: z.ZodOptional<z.ZodString>;
1266
+ emailVerified: z.ZodDefault<z.ZodBoolean>;
1267
+ imageUrl: z.ZodOptional<z.ZodString>;
1268
+ }, z.core.$strip>>;
1269
+ }, z.core.$strip>>>;
1270
+ }, z.core.$strip>>>;
1120
1271
  metrics: z.ZodObject<{
1121
1272
  quests: z.ZodNumber;
1122
1273
  members: z.ZodNumber;
@@ -1184,6 +1335,33 @@ declare const memberDetailSchema: z.ZodObject<{
1184
1335
  discord: "discord";
1185
1336
  }>>>;
1186
1337
  fields: z.ZodRecord<z.ZodString, z.ZodDiscriminatedUnion<[z.ZodObject<{
1338
+ kind: z.ZodLiteral<"point-ledger">;
1339
+ default: z.ZodString;
1340
+ label: z.ZodString;
1341
+ description: z.ZodOptional<z.ZodString>;
1342
+ }, z.core.$strict>, z.ZodObject<{
1343
+ kind: z.ZodLiteral<"datetime">;
1344
+ default: z.ZodPipe<z.ZodISODateTime, z.ZodTransform<string, string>>;
1345
+ label: z.ZodString;
1346
+ description: z.ZodOptional<z.ZodString>;
1347
+ }, z.core.$strict>, z.ZodObject<{
1348
+ kind: z.ZodLiteral<"resource">;
1349
+ default: z.ZodUnion<readonly [z.ZodLiteral<"">, z.ZodString]>;
1350
+ source: z.ZodUnion<readonly [z.ZodObject<{
1351
+ provider: z.ZodLiteral<"discord">;
1352
+ resource: z.ZodLiteral<"channel">;
1353
+ types: z.ZodArray<z.ZodEnum<{
1354
+ text: "text";
1355
+ announcement: "announcement";
1356
+ }>>;
1357
+ }, z.core.$strict>, z.ZodObject<{
1358
+ provider: z.ZodLiteral<"discord">;
1359
+ resource: z.ZodLiteral<"role">;
1360
+ assignable: z.ZodDefault<z.ZodBoolean>;
1361
+ }, z.core.$strict>]>;
1362
+ label: z.ZodString;
1363
+ description: z.ZodOptional<z.ZodString>;
1364
+ }, z.core.$strict>, z.ZodObject<{
1187
1365
  kind: z.ZodLiteral<"quiz">;
1188
1366
  default: z.ZodArray<z.ZodObject<{
1189
1367
  id: z.ZodString;
@@ -1253,6 +1431,11 @@ declare const memberDetailSchema: z.ZodObject<{
1253
1431
  }, z.core.$strict>;
1254
1432
  }, z.core.$strict>;
1255
1433
  tier: z.ZodString;
1434
+ }, z.core.$strict>, z.ZodObject<{
1435
+ kind: z.ZodLiteral<"integration">;
1436
+ provider: z.ZodLiteral<"discord">;
1437
+ action: z.ZodLiteral<"grant-role">;
1438
+ roleId: z.ZodString;
1256
1439
  }, z.core.$strict>]>>;
1257
1440
  humanReview: z.ZodBoolean;
1258
1441
  trigger: z.ZodUnion<readonly [z.ZodObject<{
@@ -1268,14 +1451,39 @@ declare const memberDetailSchema: z.ZodObject<{
1268
1451
  }>>;
1269
1452
  }, z.core.$strict>, z.ZodObject<{
1270
1453
  kind: z.ZodLiteral<"automatic">;
1454
+ observation: z.ZodOptional<z.ZodObject<{
1455
+ source: z.ZodString;
1456
+ type: z.ZodString;
1457
+ }, z.core.$strict>>;
1271
1458
  }, z.core.$strict>]>;
1272
1459
  requires: z.ZodDefault<z.ZodArray<z.ZodObject<{
1273
1460
  quest: z.ZodString;
1274
1461
  scope: z.ZodLiteral<"ever">;
1275
1462
  }, z.core.$strict>>>;
1276
- completion: z.ZodObject<{
1463
+ completion: z.ZodDiscriminatedUnion<[z.ZodObject<{
1277
1464
  kind: z.ZodLiteral<"once">;
1278
- }, z.core.$strict>;
1465
+ }, z.core.$strict>, z.ZodObject<{
1466
+ kind: z.ZodLiteral<"keyed">;
1467
+ }, z.core.$strict>], "kind">;
1468
+ visibility: z.ZodDefault<z.ZodEnum<{
1469
+ visible: "visible";
1470
+ hidden: "hidden";
1471
+ }>>;
1472
+ budgets: z.ZodDefault<z.ZodArray<z.ZodObject<{
1473
+ id: z.ZodString;
1474
+ scope: z.ZodEnum<{
1475
+ member: "member";
1476
+ project: "project";
1477
+ }>;
1478
+ period: z.ZodEnum<{
1479
+ lifetime: "lifetime";
1480
+ day: "day";
1481
+ }>;
1482
+ limit: z.ZodNumber;
1483
+ cost: z.ZodUnion<readonly [z.ZodNumber, z.ZodObject<{
1484
+ balance: z.ZodString;
1485
+ }, z.core.$strict>]>;
1486
+ }, z.core.$strict>>>;
1279
1487
  code: z.ZodString;
1280
1488
  provider: z.ZodEnum<{
1281
1489
  "fixture-pass": "fixture-pass";
@@ -1342,6 +1550,11 @@ declare const memberDetailSchema: z.ZodObject<{
1342
1550
  }, z.core.$strict>;
1343
1551
  }, z.core.$strict>;
1344
1552
  tier: z.ZodString;
1553
+ }, z.core.$strict>, z.ZodObject<{
1554
+ kind: z.ZodLiteral<"integration">;
1555
+ provider: z.ZodLiteral<"discord">;
1556
+ action: z.ZodLiteral<"grant-role">;
1557
+ roleId: z.ZodString;
1345
1558
  }, z.core.$strict>]>>;
1346
1559
  code: z.ZodString;
1347
1560
  provider: z.ZodEnum<{
@@ -1379,6 +1592,30 @@ declare const memberDetailSchema: z.ZodObject<{
1379
1592
  };
1380
1593
  integrations: "discord"[];
1381
1594
  fields: Record<string, {
1595
+ kind: "point-ledger";
1596
+ default: string;
1597
+ label: string;
1598
+ description?: string | undefined;
1599
+ } | {
1600
+ kind: "datetime";
1601
+ default: string;
1602
+ label: string;
1603
+ description?: string | undefined;
1604
+ } | {
1605
+ kind: "resource";
1606
+ default: string;
1607
+ source: {
1608
+ provider: "discord";
1609
+ resource: "channel";
1610
+ types: ("text" | "announcement")[];
1611
+ } | {
1612
+ provider: "discord";
1613
+ resource: "role";
1614
+ assignable: boolean;
1615
+ };
1616
+ label: string;
1617
+ description?: string | undefined;
1618
+ } | {
1382
1619
  kind: "quiz";
1383
1620
  default: {
1384
1621
  id: string;
@@ -1448,6 +1685,11 @@ declare const memberDetailSchema: z.ZodObject<{
1448
1685
  kind: "points";
1449
1686
  balance: string;
1450
1687
  amount: number;
1688
+ } | {
1689
+ kind: "integration";
1690
+ provider: "discord";
1691
+ action: "grant-role";
1692
+ roleId: string;
1451
1693
  })[];
1452
1694
  humanReview: boolean;
1453
1695
  trigger: {
@@ -1456,6 +1698,10 @@ declare const memberDetailSchema: z.ZodObject<{
1456
1698
  actor?: "staff" | "member" | undefined;
1457
1699
  } | {
1458
1700
  kind: "automatic";
1701
+ observation?: {
1702
+ source: string;
1703
+ type: string;
1704
+ } | undefined;
1459
1705
  };
1460
1706
  requires: {
1461
1707
  quest: string;
@@ -1463,7 +1709,19 @@ declare const memberDetailSchema: z.ZodObject<{
1463
1709
  }[];
1464
1710
  completion: {
1465
1711
  kind: "once";
1712
+ } | {
1713
+ kind: "keyed";
1466
1714
  };
1715
+ visibility: "visible" | "hidden";
1716
+ budgets: {
1717
+ id: string;
1718
+ scope: "member" | "project";
1719
+ period: "lifetime" | "day";
1720
+ limit: number;
1721
+ cost: number | {
1722
+ balance: string;
1723
+ };
1724
+ }[];
1467
1725
  code: string;
1468
1726
  provider: "fixture-pass" | "fixture-fail" | "fixture-unclear" | "fixture-error" | "workers-ai";
1469
1727
  id: string;
@@ -1520,6 +1778,11 @@ declare const memberDetailSchema: z.ZodObject<{
1520
1778
  kind: "points";
1521
1779
  balance: string;
1522
1780
  amount: number;
1781
+ } | {
1782
+ kind: "integration";
1783
+ provider: "discord";
1784
+ action: "grant-role";
1785
+ roleId: string;
1523
1786
  })[];
1524
1787
  code: string;
1525
1788
  provider: "fixture-pass" | "fixture-fail" | "fixture-unclear" | "fixture-error" | "workers-ai";
@@ -1527,6 +1790,7 @@ declare const memberDetailSchema: z.ZodObject<{
1527
1790
  createdAt: number;
1528
1791
  }>>]>>;
1529
1792
  completions: z.ZodArray<z.ZodObject<{
1793
+ key: z.ZodDefault<z.ZodString>;
1530
1794
  id: z.ZodString;
1531
1795
  quest: z.ZodString;
1532
1796
  member: z.ZodString;
@@ -1654,6 +1918,11 @@ declare const memberDetailSchema: z.ZodObject<{
1654
1918
  }, z.core.$strict>;
1655
1919
  }, z.core.$strict>;
1656
1920
  tier: z.ZodString;
1921
+ }, z.core.$strict>, z.ZodObject<{
1922
+ kind: z.ZodLiteral<"integration">;
1923
+ provider: z.ZodLiteral<"discord">;
1924
+ action: z.ZodLiteral<"grant-role">;
1925
+ roleId: z.ZodString;
1657
1926
  }, z.core.$strict>]>>>>;
1658
1927
  createdAt: z.ZodNumber;
1659
1928
  }, z.core.$strip>>;
@@ -1736,6 +2005,10 @@ declare const memberDetailSchema: z.ZodObject<{
1736
2005
  }>>;
1737
2006
  }, z.core.$strict>, z.ZodObject<{
1738
2007
  kind: z.ZodLiteral<"automatic">;
2008
+ observation: z.ZodOptional<z.ZodObject<{
2009
+ source: z.ZodString;
2010
+ type: z.ZodString;
2011
+ }, z.core.$strict>>;
1739
2012
  }, z.core.$strict>]>;
1740
2013
  availability: z.ZodDiscriminatedUnion<[z.ZodObject<{
1741
2014
  kind: z.ZodLiteral<"available">;
@@ -1756,6 +2029,10 @@ declare const memberDetailSchema: z.ZodObject<{
1756
2029
  kind: z.ZodLiteral<"staff-required">;
1757
2030
  }, z.core.$strict>, z.ZodObject<{
1758
2031
  kind: z.ZodLiteral<"automatic">;
2032
+ observation: z.ZodOptional<z.ZodObject<{
2033
+ source: z.ZodString;
2034
+ type: z.ZodString;
2035
+ }, z.core.$strict>>;
1759
2036
  }, z.core.$strict>, z.ZodObject<{
1760
2037
  kind: z.ZodLiteral<"checking">;
1761
2038
  attempt: z.ZodString;
@@ -1767,6 +2044,16 @@ declare const memberDetailSchema: z.ZodObject<{
1767
2044
  attempt: z.ZodString;
1768
2045
  }, z.core.$strict>], "kind">;
1769
2046
  completed: z.ZodBoolean;
2047
+ completion: z.ZodDefault<z.ZodDiscriminatedUnion<[z.ZodObject<{
2048
+ kind: z.ZodLiteral<"once">;
2049
+ }, z.core.$strict>, z.ZodObject<{
2050
+ kind: z.ZodLiteral<"keyed">;
2051
+ }, z.core.$strict>], "kind">>;
2052
+ completionCount: z.ZodDefault<z.ZodNumber>;
2053
+ visibility: z.ZodDefault<z.ZodEnum<{
2054
+ visible: "visible";
2055
+ hidden: "hidden";
2056
+ }>>;
1770
2057
  missing: z.ZodArray<z.ZodObject<{
1771
2058
  quest: z.ZodString;
1772
2059
  title: z.ZodString;
@@ -1817,6 +2104,11 @@ declare const memberDetailSchema: z.ZodObject<{
1817
2104
  }, z.core.$strict>;
1818
2105
  }, z.core.$strict>;
1819
2106
  tier: z.ZodString;
2107
+ }, z.core.$strict>, z.ZodObject<{
2108
+ kind: z.ZodLiteral<"integration">;
2109
+ provider: z.ZodLiteral<"discord">;
2110
+ action: z.ZodLiteral<"grant-role">;
2111
+ roleId: z.ZodString;
1820
2112
  }, z.core.$strict>]>>>>;
1821
2113
  createdAt: z.ZodNumber;
1822
2114
  }, z.core.$strip>>;
@@ -1945,6 +2237,7 @@ declare const tokenInputSchema: z.ZodObject<{
1945
2237
  inventory: "inventory";
1946
2238
  access: "access";
1947
2239
  points: "points";
2240
+ observe: "observe";
1948
2241
  }>>;
1949
2242
  days: z.ZodDefault<z.ZodNumber>;
1950
2243
  }, z.core.$strict>;
@@ -1965,6 +2258,7 @@ declare const tokenSchema: z.ZodObject<{
1965
2258
  inventory: "inventory";
1966
2259
  access: "access";
1967
2260
  points: "points";
2261
+ observe: "observe";
1968
2262
  }>>;
1969
2263
  expiresAt: z.ZodNumber;
1970
2264
  }, z.core.$strip>;
@@ -1977,6 +2271,26 @@ declare function createManagementClient(options: {
1977
2271
  }): {
1978
2272
  raw: (path: string, init?: RequestInit) => Promise<Response>;
1979
2273
  request: <T>(path: string, schema: z.ZodType<T>, input?: unknown, method?: string) => Promise<T>;
2274
+ observations: {
2275
+ submit: (input: z.input<typeof observationInputSchema>) => Promise<{
2276
+ id: string;
2277
+ source: string;
2278
+ attempts: string[];
2279
+ receivedAt: number;
2280
+ }>;
2281
+ };
2282
+ pointLedgers: {
2283
+ list: () => Promise<{
2284
+ id: string;
2285
+ name: string;
2286
+ description: string;
2287
+ }[]>;
2288
+ save: (input: z.input<typeof pointLedgerSchema>) => Promise<{
2289
+ id: string;
2290
+ name: string;
2291
+ description: string;
2292
+ }>;
2293
+ };
1980
2294
  points: {
1981
2295
  update: (input: z.input<typeof pointsMutationSchema>) => Promise<{
1982
2296
  entry: {
@@ -2315,7 +2629,7 @@ declare function createManagementClient(options: {
2315
2629
  baseRevision: number;
2316
2630
  releases: ({
2317
2631
  quest: string;
2318
- runtimeVersion: 1 | 2;
2632
+ runtimeVersion: 2 | 1;
2319
2633
  title: string;
2320
2634
  presentation: {
2321
2635
  quiz?: {
@@ -2339,6 +2653,30 @@ declare function createManagementClient(options: {
2339
2653
  };
2340
2654
  integrations: "discord"[];
2341
2655
  fields: Record<string, {
2656
+ kind: "point-ledger";
2657
+ default: string;
2658
+ label: string;
2659
+ description?: string | undefined;
2660
+ } | {
2661
+ kind: "datetime";
2662
+ default: string;
2663
+ label: string;
2664
+ description?: string | undefined;
2665
+ } | {
2666
+ kind: "resource";
2667
+ default: string;
2668
+ source: {
2669
+ provider: "discord";
2670
+ resource: "channel";
2671
+ types: ("text" | "announcement")[];
2672
+ } | {
2673
+ provider: "discord";
2674
+ resource: "role";
2675
+ assignable: boolean;
2676
+ };
2677
+ label: string;
2678
+ description?: string | undefined;
2679
+ } | {
2342
2680
  kind: "quiz";
2343
2681
  default: {
2344
2682
  id: string;
@@ -2408,6 +2746,11 @@ declare function createManagementClient(options: {
2408
2746
  kind: "points";
2409
2747
  balance: string;
2410
2748
  amount: number;
2749
+ } | {
2750
+ kind: "integration";
2751
+ provider: "discord";
2752
+ action: "grant-role";
2753
+ roleId: string;
2411
2754
  })[];
2412
2755
  humanReview: boolean;
2413
2756
  trigger: {
@@ -2416,6 +2759,10 @@ declare function createManagementClient(options: {
2416
2759
  actor?: "member" | "staff" | undefined;
2417
2760
  } | {
2418
2761
  kind: "automatic";
2762
+ observation?: {
2763
+ source: string;
2764
+ type: string;
2765
+ } | undefined;
2419
2766
  };
2420
2767
  requires: {
2421
2768
  quest: string;
@@ -2423,7 +2770,19 @@ declare function createManagementClient(options: {
2423
2770
  }[];
2424
2771
  completion: {
2425
2772
  kind: "once";
2773
+ } | {
2774
+ kind: "keyed";
2426
2775
  };
2776
+ visibility: "visible" | "hidden";
2777
+ budgets: {
2778
+ id: string;
2779
+ scope: "project" | "member";
2780
+ period: "day" | "lifetime";
2781
+ limit: number;
2782
+ cost: number | {
2783
+ balance: string;
2784
+ };
2785
+ }[];
2427
2786
  code: string;
2428
2787
  provider: "fixture-pass" | "fixture-fail" | "fixture-unclear" | "fixture-error" | "workers-ai";
2429
2788
  id: string;
@@ -2480,6 +2839,30 @@ declare function createManagementClient(options: {
2480
2839
  };
2481
2840
  integrations: "discord"[];
2482
2841
  fields: Record<string, {
2842
+ kind: "point-ledger";
2843
+ default: string;
2844
+ label: string;
2845
+ description?: string | undefined;
2846
+ } | {
2847
+ kind: "datetime";
2848
+ default: string;
2849
+ label: string;
2850
+ description?: string | undefined;
2851
+ } | {
2852
+ kind: "resource";
2853
+ default: string;
2854
+ source: {
2855
+ provider: "discord";
2856
+ resource: "channel";
2857
+ types: ("text" | "announcement")[];
2858
+ } | {
2859
+ provider: "discord";
2860
+ resource: "role";
2861
+ assignable: boolean;
2862
+ };
2863
+ label: string;
2864
+ description?: string | undefined;
2865
+ } | {
2483
2866
  kind: "quiz";
2484
2867
  default: {
2485
2868
  id: string;
@@ -2549,6 +2932,11 @@ declare function createManagementClient(options: {
2549
2932
  };
2550
2933
  };
2551
2934
  tier: string;
2935
+ } | {
2936
+ kind: "integration";
2937
+ provider: "discord";
2938
+ action: "grant-role";
2939
+ roleId: string;
2552
2940
  })[];
2553
2941
  humanReview: boolean;
2554
2942
  trigger: {
@@ -2557,6 +2945,10 @@ declare function createManagementClient(options: {
2557
2945
  actor?: "staff" | "member" | undefined;
2558
2946
  } | {
2559
2947
  kind: "automatic";
2948
+ observation?: {
2949
+ source: string;
2950
+ type: string;
2951
+ } | undefined;
2560
2952
  };
2561
2953
  requires: {
2562
2954
  quest: string;
@@ -2564,7 +2956,19 @@ declare function createManagementClient(options: {
2564
2956
  }[];
2565
2957
  completion: {
2566
2958
  kind: "once";
2959
+ } | {
2960
+ kind: "keyed";
2567
2961
  };
2962
+ visibility: "visible" | "hidden";
2963
+ budgets: {
2964
+ id: string;
2965
+ scope: "project" | "member";
2966
+ period: "day" | "lifetime";
2967
+ limit: number;
2968
+ cost: number | {
2969
+ balance: string;
2970
+ };
2971
+ }[];
2568
2972
  code: string;
2569
2973
  provider: "fixture-pass" | "fixture-fail" | "fixture-unclear" | "fixture-error" | "workers-ai";
2570
2974
  id: string;
@@ -2626,6 +3030,30 @@ declare function createManagementClient(options: {
2626
3030
  };
2627
3031
  integrations: "discord"[];
2628
3032
  fields: Record<string, {
3033
+ kind: "point-ledger";
3034
+ default: string;
3035
+ label: string;
3036
+ description?: string | undefined;
3037
+ } | {
3038
+ kind: "datetime";
3039
+ default: string;
3040
+ label: string;
3041
+ description?: string | undefined;
3042
+ } | {
3043
+ kind: "resource";
3044
+ default: string;
3045
+ source: {
3046
+ provider: "discord";
3047
+ resource: "channel";
3048
+ types: ("text" | "announcement")[];
3049
+ } | {
3050
+ provider: "discord";
3051
+ resource: "role";
3052
+ assignable: boolean;
3053
+ };
3054
+ label: string;
3055
+ description?: string | undefined;
3056
+ } | {
2629
3057
  kind: "quiz";
2630
3058
  default: {
2631
3059
  id: string;
@@ -2695,6 +3123,11 @@ declare function createManagementClient(options: {
2695
3123
  };
2696
3124
  };
2697
3125
  tier: string;
3126
+ } | {
3127
+ kind: "integration";
3128
+ provider: "discord";
3129
+ action: "grant-role";
3130
+ roleId: string;
2698
3131
  })[];
2699
3132
  humanReview: boolean;
2700
3133
  trigger: {
@@ -2703,6 +3136,10 @@ declare function createManagementClient(options: {
2703
3136
  actor?: "staff" | "member" | undefined;
2704
3137
  } | {
2705
3138
  kind: "automatic";
3139
+ observation?: {
3140
+ source: string;
3141
+ type: string;
3142
+ } | undefined;
2706
3143
  };
2707
3144
  requires: {
2708
3145
  quest: string;
@@ -2710,7 +3147,19 @@ declare function createManagementClient(options: {
2710
3147
  }[];
2711
3148
  completion: {
2712
3149
  kind: "once";
3150
+ } | {
3151
+ kind: "keyed";
2713
3152
  };
3153
+ visibility: "visible" | "hidden";
3154
+ budgets: {
3155
+ id: string;
3156
+ scope: "project" | "member";
3157
+ period: "day" | "lifetime";
3158
+ limit: number;
3159
+ cost: number | {
3160
+ balance: string;
3161
+ };
3162
+ }[];
2714
3163
  };
2715
3164
  provider: "fixture-pass" | "fixture-fail" | "fixture-unclear" | "fixture-error" | "workers-ai";
2716
3165
  createdAt: number;
@@ -2947,7 +3396,7 @@ declare function createManagementClient(options: {
2947
3396
  baseRevision: number;
2948
3397
  releases: ({
2949
3398
  quest: string;
2950
- runtimeVersion: 1 | 2;
3399
+ runtimeVersion: 2 | 1;
2951
3400
  title: string;
2952
3401
  presentation: {
2953
3402
  quiz?: {
@@ -2971,6 +3420,30 @@ declare function createManagementClient(options: {
2971
3420
  };
2972
3421
  integrations: "discord"[];
2973
3422
  fields: Record<string, {
3423
+ kind: "point-ledger";
3424
+ default: string;
3425
+ label: string;
3426
+ description?: string | undefined;
3427
+ } | {
3428
+ kind: "datetime";
3429
+ default: string;
3430
+ label: string;
3431
+ description?: string | undefined;
3432
+ } | {
3433
+ kind: "resource";
3434
+ default: string;
3435
+ source: {
3436
+ provider: "discord";
3437
+ resource: "channel";
3438
+ types: ("text" | "announcement")[];
3439
+ } | {
3440
+ provider: "discord";
3441
+ resource: "role";
3442
+ assignable: boolean;
3443
+ };
3444
+ label: string;
3445
+ description?: string | undefined;
3446
+ } | {
2974
3447
  kind: "quiz";
2975
3448
  default: {
2976
3449
  id: string;
@@ -3040,6 +3513,11 @@ declare function createManagementClient(options: {
3040
3513
  kind: "points";
3041
3514
  balance: string;
3042
3515
  amount: number;
3516
+ } | {
3517
+ kind: "integration";
3518
+ provider: "discord";
3519
+ action: "grant-role";
3520
+ roleId: string;
3043
3521
  })[];
3044
3522
  humanReview: boolean;
3045
3523
  trigger: {
@@ -3048,6 +3526,10 @@ declare function createManagementClient(options: {
3048
3526
  actor?: "member" | "staff" | undefined;
3049
3527
  } | {
3050
3528
  kind: "automatic";
3529
+ observation?: {
3530
+ source: string;
3531
+ type: string;
3532
+ } | undefined;
3051
3533
  };
3052
3534
  requires: {
3053
3535
  quest: string;
@@ -3055,7 +3537,19 @@ declare function createManagementClient(options: {
3055
3537
  }[];
3056
3538
  completion: {
3057
3539
  kind: "once";
3540
+ } | {
3541
+ kind: "keyed";
3058
3542
  };
3543
+ visibility: "visible" | "hidden";
3544
+ budgets: {
3545
+ id: string;
3546
+ scope: "project" | "member";
3547
+ period: "day" | "lifetime";
3548
+ limit: number;
3549
+ cost: number | {
3550
+ balance: string;
3551
+ };
3552
+ }[];
3059
3553
  code: string;
3060
3554
  provider: "fixture-pass" | "fixture-fail" | "fixture-unclear" | "fixture-error" | "workers-ai";
3061
3555
  id: string;
@@ -3112,14 +3606,38 @@ declare function createManagementClient(options: {
3112
3606
  };
3113
3607
  integrations: "discord"[];
3114
3608
  fields: Record<string, {
3115
- kind: "quiz";
3116
- default: {
3117
- id: string;
3118
- prompt: string;
3119
- choices: {
3120
- id: string;
3121
- label: string;
3122
- }[];
3609
+ kind: "point-ledger";
3610
+ default: string;
3611
+ label: string;
3612
+ description?: string | undefined;
3613
+ } | {
3614
+ kind: "datetime";
3615
+ default: string;
3616
+ label: string;
3617
+ description?: string | undefined;
3618
+ } | {
3619
+ kind: "resource";
3620
+ default: string;
3621
+ source: {
3622
+ provider: "discord";
3623
+ resource: "channel";
3624
+ types: ("text" | "announcement")[];
3625
+ } | {
3626
+ provider: "discord";
3627
+ resource: "role";
3628
+ assignable: boolean;
3629
+ };
3630
+ label: string;
3631
+ description?: string | undefined;
3632
+ } | {
3633
+ kind: "quiz";
3634
+ default: {
3635
+ id: string;
3636
+ prompt: string;
3637
+ choices: {
3638
+ id: string;
3639
+ label: string;
3640
+ }[];
3123
3641
  correct: string;
3124
3642
  }[];
3125
3643
  label: string;
@@ -3181,6 +3699,11 @@ declare function createManagementClient(options: {
3181
3699
  };
3182
3700
  };
3183
3701
  tier: string;
3702
+ } | {
3703
+ kind: "integration";
3704
+ provider: "discord";
3705
+ action: "grant-role";
3706
+ roleId: string;
3184
3707
  })[];
3185
3708
  humanReview: boolean;
3186
3709
  trigger: {
@@ -3189,6 +3712,10 @@ declare function createManagementClient(options: {
3189
3712
  actor?: "staff" | "member" | undefined;
3190
3713
  } | {
3191
3714
  kind: "automatic";
3715
+ observation?: {
3716
+ source: string;
3717
+ type: string;
3718
+ } | undefined;
3192
3719
  };
3193
3720
  requires: {
3194
3721
  quest: string;
@@ -3196,7 +3723,19 @@ declare function createManagementClient(options: {
3196
3723
  }[];
3197
3724
  completion: {
3198
3725
  kind: "once";
3726
+ } | {
3727
+ kind: "keyed";
3199
3728
  };
3729
+ visibility: "visible" | "hidden";
3730
+ budgets: {
3731
+ id: string;
3732
+ scope: "project" | "member";
3733
+ period: "day" | "lifetime";
3734
+ limit: number;
3735
+ cost: number | {
3736
+ balance: string;
3737
+ };
3738
+ }[];
3200
3739
  code: string;
3201
3740
  provider: "fixture-pass" | "fixture-fail" | "fixture-unclear" | "fixture-error" | "workers-ai";
3202
3741
  id: string;
@@ -3258,6 +3797,30 @@ declare function createManagementClient(options: {
3258
3797
  };
3259
3798
  integrations: "discord"[];
3260
3799
  fields: Record<string, {
3800
+ kind: "point-ledger";
3801
+ default: string;
3802
+ label: string;
3803
+ description?: string | undefined;
3804
+ } | {
3805
+ kind: "datetime";
3806
+ default: string;
3807
+ label: string;
3808
+ description?: string | undefined;
3809
+ } | {
3810
+ kind: "resource";
3811
+ default: string;
3812
+ source: {
3813
+ provider: "discord";
3814
+ resource: "channel";
3815
+ types: ("text" | "announcement")[];
3816
+ } | {
3817
+ provider: "discord";
3818
+ resource: "role";
3819
+ assignable: boolean;
3820
+ };
3821
+ label: string;
3822
+ description?: string | undefined;
3823
+ } | {
3261
3824
  kind: "quiz";
3262
3825
  default: {
3263
3826
  id: string;
@@ -3327,6 +3890,11 @@ declare function createManagementClient(options: {
3327
3890
  };
3328
3891
  };
3329
3892
  tier: string;
3893
+ } | {
3894
+ kind: "integration";
3895
+ provider: "discord";
3896
+ action: "grant-role";
3897
+ roleId: string;
3330
3898
  })[];
3331
3899
  humanReview: boolean;
3332
3900
  trigger: {
@@ -3335,6 +3903,10 @@ declare function createManagementClient(options: {
3335
3903
  actor?: "staff" | "member" | undefined;
3336
3904
  } | {
3337
3905
  kind: "automatic";
3906
+ observation?: {
3907
+ source: string;
3908
+ type: string;
3909
+ } | undefined;
3338
3910
  };
3339
3911
  requires: {
3340
3912
  quest: string;
@@ -3342,7 +3914,19 @@ declare function createManagementClient(options: {
3342
3914
  }[];
3343
3915
  completion: {
3344
3916
  kind: "once";
3917
+ } | {
3918
+ kind: "keyed";
3345
3919
  };
3920
+ visibility: "visible" | "hidden";
3921
+ budgets: {
3922
+ id: string;
3923
+ scope: "project" | "member";
3924
+ period: "day" | "lifetime";
3925
+ limit: number;
3926
+ cost: number | {
3927
+ balance: string;
3928
+ };
3929
+ }[];
3346
3930
  };
3347
3931
  provider: "fixture-pass" | "fixture-fail" | "fixture-unclear" | "fixture-error" | "workers-ai";
3348
3932
  createdAt: number;
@@ -3609,6 +4193,30 @@ declare function createManagementClient(options: {
3609
4193
  };
3610
4194
  integrations: "discord"[];
3611
4195
  fields: Record<string, {
4196
+ kind: "point-ledger";
4197
+ default: string;
4198
+ label: string;
4199
+ description?: string | undefined;
4200
+ } | {
4201
+ kind: "datetime";
4202
+ default: string;
4203
+ label: string;
4204
+ description?: string | undefined;
4205
+ } | {
4206
+ kind: "resource";
4207
+ default: string;
4208
+ source: {
4209
+ provider: "discord";
4210
+ resource: "channel";
4211
+ types: ("text" | "announcement")[];
4212
+ } | {
4213
+ provider: "discord";
4214
+ resource: "role";
4215
+ assignable: boolean;
4216
+ };
4217
+ label: string;
4218
+ description?: string | undefined;
4219
+ } | {
3612
4220
  kind: "quiz";
3613
4221
  default: {
3614
4222
  id: string;
@@ -3678,6 +4286,11 @@ declare function createManagementClient(options: {
3678
4286
  };
3679
4287
  };
3680
4288
  tier: string;
4289
+ } | {
4290
+ kind: "integration";
4291
+ provider: "discord";
4292
+ action: "grant-role";
4293
+ roleId: string;
3681
4294
  })[];
3682
4295
  humanReview: boolean;
3683
4296
  trigger: {
@@ -3686,6 +4299,10 @@ declare function createManagementClient(options: {
3686
4299
  actor?: "staff" | "member" | undefined;
3687
4300
  } | {
3688
4301
  kind: "automatic";
4302
+ observation?: {
4303
+ source: string;
4304
+ type: string;
4305
+ } | undefined;
3689
4306
  };
3690
4307
  requires: {
3691
4308
  quest: string;
@@ -3693,7 +4310,19 @@ declare function createManagementClient(options: {
3693
4310
  }[];
3694
4311
  completion: {
3695
4312
  kind: "once";
4313
+ } | {
4314
+ kind: "keyed";
3696
4315
  };
4316
+ visibility: "visible" | "hidden";
4317
+ budgets: {
4318
+ id: string;
4319
+ scope: "project" | "member";
4320
+ period: "day" | "lifetime";
4321
+ limit: number;
4322
+ cost: number | {
4323
+ balance: string;
4324
+ };
4325
+ }[];
3697
4326
  };
3698
4327
  provider: "fixture-pass" | "fixture-fail" | "fixture-unclear" | "fixture-error" | "workers-ai";
3699
4328
  createdAt: number;
@@ -3781,7 +4410,7 @@ declare function createManagementClient(options: {
3781
4410
  })[];
3782
4411
  releases: ({
3783
4412
  quest: string;
3784
- runtimeVersion: 1 | 2;
4413
+ runtimeVersion: 2 | 1;
3785
4414
  title: string;
3786
4415
  presentation: {
3787
4416
  quiz?: {
@@ -3805,6 +4434,30 @@ declare function createManagementClient(options: {
3805
4434
  };
3806
4435
  integrations: "discord"[];
3807
4436
  fields: Record<string, {
4437
+ kind: "point-ledger";
4438
+ default: string;
4439
+ label: string;
4440
+ description?: string | undefined;
4441
+ } | {
4442
+ kind: "datetime";
4443
+ default: string;
4444
+ label: string;
4445
+ description?: string | undefined;
4446
+ } | {
4447
+ kind: "resource";
4448
+ default: string;
4449
+ source: {
4450
+ provider: "discord";
4451
+ resource: "channel";
4452
+ types: ("text" | "announcement")[];
4453
+ } | {
4454
+ provider: "discord";
4455
+ resource: "role";
4456
+ assignable: boolean;
4457
+ };
4458
+ label: string;
4459
+ description?: string | undefined;
4460
+ } | {
3808
4461
  kind: "quiz";
3809
4462
  default: {
3810
4463
  id: string;
@@ -3874,6 +4527,11 @@ declare function createManagementClient(options: {
3874
4527
  kind: "points";
3875
4528
  balance: string;
3876
4529
  amount: number;
4530
+ } | {
4531
+ kind: "integration";
4532
+ provider: "discord";
4533
+ action: "grant-role";
4534
+ roleId: string;
3877
4535
  })[];
3878
4536
  humanReview: boolean;
3879
4537
  trigger: {
@@ -3882,6 +4540,10 @@ declare function createManagementClient(options: {
3882
4540
  actor?: "member" | "staff" | undefined;
3883
4541
  } | {
3884
4542
  kind: "automatic";
4543
+ observation?: {
4544
+ source: string;
4545
+ type: string;
4546
+ } | undefined;
3885
4547
  };
3886
4548
  requires: {
3887
4549
  quest: string;
@@ -3889,7 +4551,19 @@ declare function createManagementClient(options: {
3889
4551
  }[];
3890
4552
  completion: {
3891
4553
  kind: "once";
4554
+ } | {
4555
+ kind: "keyed";
3892
4556
  };
4557
+ visibility: "visible" | "hidden";
4558
+ budgets: {
4559
+ id: string;
4560
+ scope: "project" | "member";
4561
+ period: "day" | "lifetime";
4562
+ limit: number;
4563
+ cost: number | {
4564
+ balance: string;
4565
+ };
4566
+ }[];
3893
4567
  code: string;
3894
4568
  provider: "fixture-pass" | "fixture-fail" | "fixture-unclear" | "fixture-error" | "workers-ai";
3895
4569
  id: string;
@@ -3946,6 +4620,30 @@ declare function createManagementClient(options: {
3946
4620
  };
3947
4621
  integrations: "discord"[];
3948
4622
  fields: Record<string, {
4623
+ kind: "point-ledger";
4624
+ default: string;
4625
+ label: string;
4626
+ description?: string | undefined;
4627
+ } | {
4628
+ kind: "datetime";
4629
+ default: string;
4630
+ label: string;
4631
+ description?: string | undefined;
4632
+ } | {
4633
+ kind: "resource";
4634
+ default: string;
4635
+ source: {
4636
+ provider: "discord";
4637
+ resource: "channel";
4638
+ types: ("text" | "announcement")[];
4639
+ } | {
4640
+ provider: "discord";
4641
+ resource: "role";
4642
+ assignable: boolean;
4643
+ };
4644
+ label: string;
4645
+ description?: string | undefined;
4646
+ } | {
3949
4647
  kind: "quiz";
3950
4648
  default: {
3951
4649
  id: string;
@@ -4015,6 +4713,11 @@ declare function createManagementClient(options: {
4015
4713
  };
4016
4714
  };
4017
4715
  tier: string;
4716
+ } | {
4717
+ kind: "integration";
4718
+ provider: "discord";
4719
+ action: "grant-role";
4720
+ roleId: string;
4018
4721
  })[];
4019
4722
  humanReview: boolean;
4020
4723
  trigger: {
@@ -4023,6 +4726,10 @@ declare function createManagementClient(options: {
4023
4726
  actor?: "staff" | "member" | undefined;
4024
4727
  } | {
4025
4728
  kind: "automatic";
4729
+ observation?: {
4730
+ source: string;
4731
+ type: string;
4732
+ } | undefined;
4026
4733
  };
4027
4734
  requires: {
4028
4735
  quest: string;
@@ -4030,7 +4737,19 @@ declare function createManagementClient(options: {
4030
4737
  }[];
4031
4738
  completion: {
4032
4739
  kind: "once";
4740
+ } | {
4741
+ kind: "keyed";
4033
4742
  };
4743
+ visibility: "visible" | "hidden";
4744
+ budgets: {
4745
+ id: string;
4746
+ scope: "project" | "member";
4747
+ period: "day" | "lifetime";
4748
+ limit: number;
4749
+ cost: number | {
4750
+ balance: string;
4751
+ };
4752
+ }[];
4034
4753
  code: string;
4035
4754
  provider: "fixture-pass" | "fixture-fail" | "fixture-unclear" | "fixture-error" | "workers-ai";
4036
4755
  id: string;
@@ -4096,6 +4815,30 @@ declare function createManagementClient(options: {
4096
4815
  };
4097
4816
  integrations: "discord"[];
4098
4817
  fields: Record<string, {
4818
+ kind: "point-ledger";
4819
+ default: string;
4820
+ label: string;
4821
+ description?: string | undefined;
4822
+ } | {
4823
+ kind: "datetime";
4824
+ default: string;
4825
+ label: string;
4826
+ description?: string | undefined;
4827
+ } | {
4828
+ kind: "resource";
4829
+ default: string;
4830
+ source: {
4831
+ provider: "discord";
4832
+ resource: "channel";
4833
+ types: ("text" | "announcement")[];
4834
+ } | {
4835
+ provider: "discord";
4836
+ resource: "role";
4837
+ assignable: boolean;
4838
+ };
4839
+ label: string;
4840
+ description?: string | undefined;
4841
+ } | {
4099
4842
  kind: "quiz";
4100
4843
  default: {
4101
4844
  id: string;
@@ -4165,6 +4908,11 @@ declare function createManagementClient(options: {
4165
4908
  };
4166
4909
  };
4167
4910
  tier: string;
4911
+ } | {
4912
+ kind: "integration";
4913
+ provider: "discord";
4914
+ action: "grant-role";
4915
+ roleId: string;
4168
4916
  })[];
4169
4917
  humanReview: boolean;
4170
4918
  trigger: {
@@ -4173,6 +4921,10 @@ declare function createManagementClient(options: {
4173
4921
  actor?: "staff" | "member" | undefined;
4174
4922
  } | {
4175
4923
  kind: "automatic";
4924
+ observation?: {
4925
+ source: string;
4926
+ type: string;
4927
+ } | undefined;
4176
4928
  };
4177
4929
  requires: {
4178
4930
  quest: string;
@@ -4180,7 +4932,19 @@ declare function createManagementClient(options: {
4180
4932
  }[];
4181
4933
  completion: {
4182
4934
  kind: "once";
4935
+ } | {
4936
+ kind: "keyed";
4183
4937
  };
4938
+ visibility: "visible" | "hidden";
4939
+ budgets: {
4940
+ id: string;
4941
+ scope: "project" | "member";
4942
+ period: "day" | "lifetime";
4943
+ limit: number;
4944
+ cost: number | {
4945
+ balance: string;
4946
+ };
4947
+ }[];
4184
4948
  };
4185
4949
  provider: "fixture-pass" | "fixture-fail" | "fixture-unclear" | "fixture-error" | "workers-ai";
4186
4950
  createdAt: number;
@@ -4223,6 +4987,30 @@ declare function createManagementClient(options: {
4223
4987
  };
4224
4988
  integrations: "discord"[];
4225
4989
  fields: Record<string, {
4990
+ kind: "point-ledger";
4991
+ default: string;
4992
+ label: string;
4993
+ description?: string | undefined;
4994
+ } | {
4995
+ kind: "datetime";
4996
+ default: string;
4997
+ label: string;
4998
+ description?: string | undefined;
4999
+ } | {
5000
+ kind: "resource";
5001
+ default: string;
5002
+ source: {
5003
+ provider: "discord";
5004
+ resource: "channel";
5005
+ types: ("text" | "announcement")[];
5006
+ } | {
5007
+ provider: "discord";
5008
+ resource: "role";
5009
+ assignable: boolean;
5010
+ };
5011
+ label: string;
5012
+ description?: string | undefined;
5013
+ } | {
4226
5014
  kind: "quiz";
4227
5015
  default: {
4228
5016
  id: string;
@@ -4292,6 +5080,11 @@ declare function createManagementClient(options: {
4292
5080
  };
4293
5081
  };
4294
5082
  tier: string;
5083
+ } | {
5084
+ kind: "integration";
5085
+ provider: "discord";
5086
+ action: "grant-role";
5087
+ roleId: string;
4295
5088
  })[];
4296
5089
  humanReview: boolean;
4297
5090
  trigger: {
@@ -4300,6 +5093,10 @@ declare function createManagementClient(options: {
4300
5093
  actor?: "staff" | "member" | undefined;
4301
5094
  } | {
4302
5095
  kind: "automatic";
5096
+ observation?: {
5097
+ source: string;
5098
+ type: string;
5099
+ } | undefined;
4303
5100
  };
4304
5101
  requires: {
4305
5102
  quest: string;
@@ -4307,7 +5104,19 @@ declare function createManagementClient(options: {
4307
5104
  }[];
4308
5105
  completion: {
4309
5106
  kind: "once";
5107
+ } | {
5108
+ kind: "keyed";
4310
5109
  };
5110
+ visibility: "visible" | "hidden";
5111
+ budgets: {
5112
+ id: string;
5113
+ scope: "project" | "member";
5114
+ period: "day" | "lifetime";
5115
+ limit: number;
5116
+ cost: number | {
5117
+ balance: string;
5118
+ };
5119
+ }[];
4311
5120
  };
4312
5121
  provider: "fixture-pass" | "fixture-fail" | "fixture-unclear" | "fixture-error" | "workers-ai";
4313
5122
  createdAt: number;
@@ -4395,7 +5204,7 @@ declare function createManagementClient(options: {
4395
5204
  })[];
4396
5205
  releases: ({
4397
5206
  quest: string;
4398
- runtimeVersion: 1 | 2;
5207
+ runtimeVersion: 2 | 1;
4399
5208
  title: string;
4400
5209
  presentation: {
4401
5210
  quiz?: {
@@ -4419,6 +5228,30 @@ declare function createManagementClient(options: {
4419
5228
  };
4420
5229
  integrations: "discord"[];
4421
5230
  fields: Record<string, {
5231
+ kind: "point-ledger";
5232
+ default: string;
5233
+ label: string;
5234
+ description?: string | undefined;
5235
+ } | {
5236
+ kind: "datetime";
5237
+ default: string;
5238
+ label: string;
5239
+ description?: string | undefined;
5240
+ } | {
5241
+ kind: "resource";
5242
+ default: string;
5243
+ source: {
5244
+ provider: "discord";
5245
+ resource: "channel";
5246
+ types: ("text" | "announcement")[];
5247
+ } | {
5248
+ provider: "discord";
5249
+ resource: "role";
5250
+ assignable: boolean;
5251
+ };
5252
+ label: string;
5253
+ description?: string | undefined;
5254
+ } | {
4422
5255
  kind: "quiz";
4423
5256
  default: {
4424
5257
  id: string;
@@ -4488,6 +5321,11 @@ declare function createManagementClient(options: {
4488
5321
  kind: "points";
4489
5322
  balance: string;
4490
5323
  amount: number;
5324
+ } | {
5325
+ kind: "integration";
5326
+ provider: "discord";
5327
+ action: "grant-role";
5328
+ roleId: string;
4491
5329
  })[];
4492
5330
  humanReview: boolean;
4493
5331
  trigger: {
@@ -4496,6 +5334,10 @@ declare function createManagementClient(options: {
4496
5334
  actor?: "member" | "staff" | undefined;
4497
5335
  } | {
4498
5336
  kind: "automatic";
5337
+ observation?: {
5338
+ source: string;
5339
+ type: string;
5340
+ } | undefined;
4499
5341
  };
4500
5342
  requires: {
4501
5343
  quest: string;
@@ -4503,7 +5345,19 @@ declare function createManagementClient(options: {
4503
5345
  }[];
4504
5346
  completion: {
4505
5347
  kind: "once";
5348
+ } | {
5349
+ kind: "keyed";
4506
5350
  };
5351
+ visibility: "visible" | "hidden";
5352
+ budgets: {
5353
+ id: string;
5354
+ scope: "project" | "member";
5355
+ period: "day" | "lifetime";
5356
+ limit: number;
5357
+ cost: number | {
5358
+ balance: string;
5359
+ };
5360
+ }[];
4507
5361
  code: string;
4508
5362
  provider: "fixture-pass" | "fixture-fail" | "fixture-unclear" | "fixture-error" | "workers-ai";
4509
5363
  id: string;
@@ -4560,6 +5414,30 @@ declare function createManagementClient(options: {
4560
5414
  };
4561
5415
  integrations: "discord"[];
4562
5416
  fields: Record<string, {
5417
+ kind: "point-ledger";
5418
+ default: string;
5419
+ label: string;
5420
+ description?: string | undefined;
5421
+ } | {
5422
+ kind: "datetime";
5423
+ default: string;
5424
+ label: string;
5425
+ description?: string | undefined;
5426
+ } | {
5427
+ kind: "resource";
5428
+ default: string;
5429
+ source: {
5430
+ provider: "discord";
5431
+ resource: "channel";
5432
+ types: ("text" | "announcement")[];
5433
+ } | {
5434
+ provider: "discord";
5435
+ resource: "role";
5436
+ assignable: boolean;
5437
+ };
5438
+ label: string;
5439
+ description?: string | undefined;
5440
+ } | {
4563
5441
  kind: "quiz";
4564
5442
  default: {
4565
5443
  id: string;
@@ -4629,6 +5507,11 @@ declare function createManagementClient(options: {
4629
5507
  };
4630
5508
  };
4631
5509
  tier: string;
5510
+ } | {
5511
+ kind: "integration";
5512
+ provider: "discord";
5513
+ action: "grant-role";
5514
+ roleId: string;
4632
5515
  })[];
4633
5516
  humanReview: boolean;
4634
5517
  trigger: {
@@ -4637,6 +5520,10 @@ declare function createManagementClient(options: {
4637
5520
  actor?: "staff" | "member" | undefined;
4638
5521
  } | {
4639
5522
  kind: "automatic";
5523
+ observation?: {
5524
+ source: string;
5525
+ type: string;
5526
+ } | undefined;
4640
5527
  };
4641
5528
  requires: {
4642
5529
  quest: string;
@@ -4644,7 +5531,19 @@ declare function createManagementClient(options: {
4644
5531
  }[];
4645
5532
  completion: {
4646
5533
  kind: "once";
5534
+ } | {
5535
+ kind: "keyed";
4647
5536
  };
5537
+ visibility: "visible" | "hidden";
5538
+ budgets: {
5539
+ id: string;
5540
+ scope: "project" | "member";
5541
+ period: "day" | "lifetime";
5542
+ limit: number;
5543
+ cost: number | {
5544
+ balance: string;
5545
+ };
5546
+ }[];
4648
5547
  code: string;
4649
5548
  provider: "fixture-pass" | "fixture-fail" | "fixture-unclear" | "fixture-error" | "workers-ai";
4650
5549
  id: string;
@@ -4801,7 +5700,7 @@ declare function createManagementClient(options: {
4801
5700
  };
4802
5701
  releases: ({
4803
5702
  quest: string;
4804
- runtimeVersion: 1 | 2;
5703
+ runtimeVersion: 2 | 1;
4805
5704
  title: string;
4806
5705
  presentation: {
4807
5706
  quiz?: {
@@ -4825,6 +5724,30 @@ declare function createManagementClient(options: {
4825
5724
  };
4826
5725
  integrations: "discord"[];
4827
5726
  fields: Record<string, {
5727
+ kind: "point-ledger";
5728
+ default: string;
5729
+ label: string;
5730
+ description?: string | undefined;
5731
+ } | {
5732
+ kind: "datetime";
5733
+ default: string;
5734
+ label: string;
5735
+ description?: string | undefined;
5736
+ } | {
5737
+ kind: "resource";
5738
+ default: string;
5739
+ source: {
5740
+ provider: "discord";
5741
+ resource: "channel";
5742
+ types: ("text" | "announcement")[];
5743
+ } | {
5744
+ provider: "discord";
5745
+ resource: "role";
5746
+ assignable: boolean;
5747
+ };
5748
+ label: string;
5749
+ description?: string | undefined;
5750
+ } | {
4828
5751
  kind: "quiz";
4829
5752
  default: {
4830
5753
  id: string;
@@ -4894,6 +5817,11 @@ declare function createManagementClient(options: {
4894
5817
  kind: "points";
4895
5818
  balance: string;
4896
5819
  amount: number;
5820
+ } | {
5821
+ kind: "integration";
5822
+ provider: "discord";
5823
+ action: "grant-role";
5824
+ roleId: string;
4897
5825
  })[];
4898
5826
  humanReview: boolean;
4899
5827
  trigger: {
@@ -4902,6 +5830,10 @@ declare function createManagementClient(options: {
4902
5830
  actor?: "member" | "staff" | undefined;
4903
5831
  } | {
4904
5832
  kind: "automatic";
5833
+ observation?: {
5834
+ source: string;
5835
+ type: string;
5836
+ } | undefined;
4905
5837
  };
4906
5838
  requires: {
4907
5839
  quest: string;
@@ -4909,7 +5841,19 @@ declare function createManagementClient(options: {
4909
5841
  }[];
4910
5842
  completion: {
4911
5843
  kind: "once";
5844
+ } | {
5845
+ kind: "keyed";
4912
5846
  };
5847
+ visibility: "visible" | "hidden";
5848
+ budgets: {
5849
+ id: string;
5850
+ scope: "project" | "member";
5851
+ period: "day" | "lifetime";
5852
+ limit: number;
5853
+ cost: number | {
5854
+ balance: string;
5855
+ };
5856
+ }[];
4913
5857
  code: string;
4914
5858
  provider: "fixture-pass" | "fixture-fail" | "fixture-unclear" | "fixture-error" | "workers-ai";
4915
5859
  id: string;
@@ -4966,6 +5910,30 @@ declare function createManagementClient(options: {
4966
5910
  };
4967
5911
  integrations: "discord"[];
4968
5912
  fields: Record<string, {
5913
+ kind: "point-ledger";
5914
+ default: string;
5915
+ label: string;
5916
+ description?: string | undefined;
5917
+ } | {
5918
+ kind: "datetime";
5919
+ default: string;
5920
+ label: string;
5921
+ description?: string | undefined;
5922
+ } | {
5923
+ kind: "resource";
5924
+ default: string;
5925
+ source: {
5926
+ provider: "discord";
5927
+ resource: "channel";
5928
+ types: ("text" | "announcement")[];
5929
+ } | {
5930
+ provider: "discord";
5931
+ resource: "role";
5932
+ assignable: boolean;
5933
+ };
5934
+ label: string;
5935
+ description?: string | undefined;
5936
+ } | {
4969
5937
  kind: "quiz";
4970
5938
  default: {
4971
5939
  id: string;
@@ -5035,6 +6003,11 @@ declare function createManagementClient(options: {
5035
6003
  };
5036
6004
  };
5037
6005
  tier: string;
6006
+ } | {
6007
+ kind: "integration";
6008
+ provider: "discord";
6009
+ action: "grant-role";
6010
+ roleId: string;
5038
6011
  })[];
5039
6012
  humanReview: boolean;
5040
6013
  trigger: {
@@ -5043,6 +6016,10 @@ declare function createManagementClient(options: {
5043
6016
  actor?: "staff" | "member" | undefined;
5044
6017
  } | {
5045
6018
  kind: "automatic";
6019
+ observation?: {
6020
+ source: string;
6021
+ type: string;
6022
+ } | undefined;
5046
6023
  };
5047
6024
  requires: {
5048
6025
  quest: string;
@@ -5050,7 +6027,19 @@ declare function createManagementClient(options: {
5050
6027
  }[];
5051
6028
  completion: {
5052
6029
  kind: "once";
6030
+ } | {
6031
+ kind: "keyed";
5053
6032
  };
6033
+ visibility: "visible" | "hidden";
6034
+ budgets: {
6035
+ id: string;
6036
+ scope: "project" | "member";
6037
+ period: "day" | "lifetime";
6038
+ limit: number;
6039
+ cost: number | {
6040
+ balance: string;
6041
+ };
6042
+ }[];
5054
6043
  code: string;
5055
6044
  provider: "fixture-pass" | "fixture-fail" | "fixture-unclear" | "fixture-error" | "workers-ai";
5056
6045
  id: string;
@@ -5151,7 +6140,7 @@ declare function createManagementClient(options: {
5151
6140
  };
5152
6141
  releases: ({
5153
6142
  quest: string;
5154
- runtimeVersion: 1 | 2;
6143
+ runtimeVersion: 2 | 1;
5155
6144
  title: string;
5156
6145
  presentation: {
5157
6146
  quiz?: {
@@ -5175,6 +6164,30 @@ declare function createManagementClient(options: {
5175
6164
  };
5176
6165
  integrations: "discord"[];
5177
6166
  fields: Record<string, {
6167
+ kind: "point-ledger";
6168
+ default: string;
6169
+ label: string;
6170
+ description?: string | undefined;
6171
+ } | {
6172
+ kind: "datetime";
6173
+ default: string;
6174
+ label: string;
6175
+ description?: string | undefined;
6176
+ } | {
6177
+ kind: "resource";
6178
+ default: string;
6179
+ source: {
6180
+ provider: "discord";
6181
+ resource: "channel";
6182
+ types: ("text" | "announcement")[];
6183
+ } | {
6184
+ provider: "discord";
6185
+ resource: "role";
6186
+ assignable: boolean;
6187
+ };
6188
+ label: string;
6189
+ description?: string | undefined;
6190
+ } | {
5178
6191
  kind: "quiz";
5179
6192
  default: {
5180
6193
  id: string;
@@ -5244,6 +6257,11 @@ declare function createManagementClient(options: {
5244
6257
  kind: "points";
5245
6258
  balance: string;
5246
6259
  amount: number;
6260
+ } | {
6261
+ kind: "integration";
6262
+ provider: "discord";
6263
+ action: "grant-role";
6264
+ roleId: string;
5247
6265
  })[];
5248
6266
  humanReview: boolean;
5249
6267
  trigger: {
@@ -5252,6 +6270,10 @@ declare function createManagementClient(options: {
5252
6270
  actor?: "member" | "staff" | undefined;
5253
6271
  } | {
5254
6272
  kind: "automatic";
6273
+ observation?: {
6274
+ source: string;
6275
+ type: string;
6276
+ } | undefined;
5255
6277
  };
5256
6278
  requires: {
5257
6279
  quest: string;
@@ -5259,7 +6281,19 @@ declare function createManagementClient(options: {
5259
6281
  }[];
5260
6282
  completion: {
5261
6283
  kind: "once";
6284
+ } | {
6285
+ kind: "keyed";
5262
6286
  };
6287
+ visibility: "visible" | "hidden";
6288
+ budgets: {
6289
+ id: string;
6290
+ scope: "project" | "member";
6291
+ period: "day" | "lifetime";
6292
+ limit: number;
6293
+ cost: number | {
6294
+ balance: string;
6295
+ };
6296
+ }[];
5263
6297
  code: string;
5264
6298
  provider: "fixture-pass" | "fixture-fail" | "fixture-unclear" | "fixture-error" | "workers-ai";
5265
6299
  id: string;
@@ -5316,6 +6350,30 @@ declare function createManagementClient(options: {
5316
6350
  };
5317
6351
  integrations: "discord"[];
5318
6352
  fields: Record<string, {
6353
+ kind: "point-ledger";
6354
+ default: string;
6355
+ label: string;
6356
+ description?: string | undefined;
6357
+ } | {
6358
+ kind: "datetime";
6359
+ default: string;
6360
+ label: string;
6361
+ description?: string | undefined;
6362
+ } | {
6363
+ kind: "resource";
6364
+ default: string;
6365
+ source: {
6366
+ provider: "discord";
6367
+ resource: "channel";
6368
+ types: ("text" | "announcement")[];
6369
+ } | {
6370
+ provider: "discord";
6371
+ resource: "role";
6372
+ assignable: boolean;
6373
+ };
6374
+ label: string;
6375
+ description?: string | undefined;
6376
+ } | {
5319
6377
  kind: "quiz";
5320
6378
  default: {
5321
6379
  id: string;
@@ -5385,6 +6443,11 @@ declare function createManagementClient(options: {
5385
6443
  };
5386
6444
  };
5387
6445
  tier: string;
6446
+ } | {
6447
+ kind: "integration";
6448
+ provider: "discord";
6449
+ action: "grant-role";
6450
+ roleId: string;
5388
6451
  })[];
5389
6452
  humanReview: boolean;
5390
6453
  trigger: {
@@ -5393,6 +6456,10 @@ declare function createManagementClient(options: {
5393
6456
  actor?: "staff" | "member" | undefined;
5394
6457
  } | {
5395
6458
  kind: "automatic";
6459
+ observation?: {
6460
+ source: string;
6461
+ type: string;
6462
+ } | undefined;
5396
6463
  };
5397
6464
  requires: {
5398
6465
  quest: string;
@@ -5400,7 +6467,19 @@ declare function createManagementClient(options: {
5400
6467
  }[];
5401
6468
  completion: {
5402
6469
  kind: "once";
6470
+ } | {
6471
+ kind: "keyed";
5403
6472
  };
6473
+ visibility: "visible" | "hidden";
6474
+ budgets: {
6475
+ id: string;
6476
+ scope: "project" | "member";
6477
+ period: "day" | "lifetime";
6478
+ limit: number;
6479
+ cost: number | {
6480
+ balance: string;
6481
+ };
6482
+ }[];
5404
6483
  code: string;
5405
6484
  provider: "fixture-pass" | "fixture-fail" | "fixture-unclear" | "fixture-error" | "workers-ai";
5406
6485
  id: string;
@@ -5702,7 +6781,7 @@ declare function createManagementClient(options: {
5702
6781
  subtitle: string;
5703
6782
  initials: string;
5704
6783
  color: string;
5705
- permissions: ("read" | "publish" | "review" | "confirm" | "handover" | "inventory" | "access" | "points")[];
6784
+ permissions: ("read" | "publish" | "review" | "confirm" | "handover" | "inventory" | "access" | "points" | "observe")[];
5706
6785
  environments: ("test" | "live")[];
5707
6786
  setup?: {
5708
6787
  mode: "new" | "existing";
@@ -5719,13 +6798,27 @@ declare function createManagementClient(options: {
5719
6798
  subtitle: string;
5720
6799
  initials: string;
5721
6800
  color: string;
5722
- permissions: ("read" | "publish" | "review" | "confirm" | "handover" | "inventory" | "access" | "points")[];
6801
+ permissions: ("read" | "publish" | "review" | "confirm" | "handover" | "inventory" | "access" | "points" | "observe")[];
5723
6802
  environments: ("test" | "live")[];
5724
6803
  setup?: {
5725
6804
  mode: "new" | "existing";
5726
6805
  brief: string;
5727
6806
  } | undefined;
5728
6807
  }>;
6808
+ people: (members: string[]) => Promise<{
6809
+ id: string;
6810
+ accounts: {
6811
+ provider: string;
6812
+ subject: string;
6813
+ signInEnabled: boolean;
6814
+ profile?: {
6815
+ emailVerified: boolean;
6816
+ name?: string | undefined;
6817
+ email?: string | undefined;
6818
+ imageUrl?: string | undefined;
6819
+ } | undefined;
6820
+ }[];
6821
+ }[]>;
5729
6822
  page: (page: string, query: Partial<ListQuery> & {
5730
6823
  detail?: string;
5731
6824
  }) => Promise<{
@@ -5756,6 +6849,30 @@ declare function createManagementClient(options: {
5756
6849
  };
5757
6850
  integrations: "discord"[];
5758
6851
  fields: Record<string, {
6852
+ kind: "point-ledger";
6853
+ default: string;
6854
+ label: string;
6855
+ description?: string | undefined;
6856
+ } | {
6857
+ kind: "datetime";
6858
+ default: string;
6859
+ label: string;
6860
+ description?: string | undefined;
6861
+ } | {
6862
+ kind: "resource";
6863
+ default: string;
6864
+ source: {
6865
+ provider: "discord";
6866
+ resource: "channel";
6867
+ types: ("text" | "announcement")[];
6868
+ } | {
6869
+ provider: "discord";
6870
+ resource: "role";
6871
+ assignable: boolean;
6872
+ };
6873
+ label: string;
6874
+ description?: string | undefined;
6875
+ } | {
5759
6876
  kind: "quiz";
5760
6877
  default: {
5761
6878
  id: string;
@@ -5825,6 +6942,11 @@ declare function createManagementClient(options: {
5825
6942
  kind: "points";
5826
6943
  balance: string;
5827
6944
  amount: number;
6945
+ } | {
6946
+ kind: "integration";
6947
+ provider: "discord";
6948
+ action: "grant-role";
6949
+ roleId: string;
5828
6950
  })[];
5829
6951
  humanReview: boolean;
5830
6952
  trigger: {
@@ -5833,6 +6955,10 @@ declare function createManagementClient(options: {
5833
6955
  actor?: "staff" | "member" | undefined;
5834
6956
  } | {
5835
6957
  kind: "automatic";
6958
+ observation?: {
6959
+ source: string;
6960
+ type: string;
6961
+ } | undefined;
5836
6962
  };
5837
6963
  requires: {
5838
6964
  quest: string;
@@ -5840,7 +6966,19 @@ declare function createManagementClient(options: {
5840
6966
  }[];
5841
6967
  completion: {
5842
6968
  kind: "once";
6969
+ } | {
6970
+ kind: "keyed";
5843
6971
  };
6972
+ visibility: "visible" | "hidden";
6973
+ budgets: {
6974
+ id: string;
6975
+ scope: "member" | "project";
6976
+ period: "lifetime" | "day";
6977
+ limit: number;
6978
+ cost: number | {
6979
+ balance: string;
6980
+ };
6981
+ }[];
5844
6982
  code: string;
5845
6983
  provider: "fixture-pass" | "fixture-fail" | "fixture-unclear" | "fixture-error" | "workers-ai";
5846
6984
  id: string;
@@ -5897,6 +7035,30 @@ declare function createManagementClient(options: {
5897
7035
  };
5898
7036
  integrations: "discord"[];
5899
7037
  fields: Record<string, {
7038
+ kind: "point-ledger";
7039
+ default: string;
7040
+ label: string;
7041
+ description?: string | undefined;
7042
+ } | {
7043
+ kind: "datetime";
7044
+ default: string;
7045
+ label: string;
7046
+ description?: string | undefined;
7047
+ } | {
7048
+ kind: "resource";
7049
+ default: string;
7050
+ source: {
7051
+ provider: "discord";
7052
+ resource: "channel";
7053
+ types: ("text" | "announcement")[];
7054
+ } | {
7055
+ provider: "discord";
7056
+ resource: "role";
7057
+ assignable: boolean;
7058
+ };
7059
+ label: string;
7060
+ description?: string | undefined;
7061
+ } | {
5900
7062
  kind: "quiz";
5901
7063
  default: {
5902
7064
  id: string;
@@ -5966,6 +7128,11 @@ declare function createManagementClient(options: {
5966
7128
  };
5967
7129
  };
5968
7130
  tier: string;
7131
+ } | {
7132
+ kind: "integration";
7133
+ provider: "discord";
7134
+ action: "grant-role";
7135
+ roleId: string;
5969
7136
  })[];
5970
7137
  humanReview: boolean;
5971
7138
  trigger: {
@@ -5974,6 +7141,10 @@ declare function createManagementClient(options: {
5974
7141
  actor?: "staff" | "member" | undefined;
5975
7142
  } | {
5976
7143
  kind: "automatic";
7144
+ observation?: {
7145
+ source: string;
7146
+ type: string;
7147
+ } | undefined;
5977
7148
  };
5978
7149
  requires: {
5979
7150
  quest: string;
@@ -5981,7 +7152,19 @@ declare function createManagementClient(options: {
5981
7152
  }[];
5982
7153
  completion: {
5983
7154
  kind: "once";
7155
+ } | {
7156
+ kind: "keyed";
5984
7157
  };
7158
+ visibility: "visible" | "hidden";
7159
+ budgets: {
7160
+ id: string;
7161
+ scope: "project" | "member";
7162
+ period: "day" | "lifetime";
7163
+ limit: number;
7164
+ cost: number | {
7165
+ balance: string;
7166
+ };
7167
+ }[];
5985
7168
  code: string;
5986
7169
  provider: "fixture-pass" | "fixture-fail" | "fixture-unclear" | "fixture-error" | "workers-ai";
5987
7170
  id: string;
@@ -6014,6 +7197,7 @@ declare function createManagementClient(options: {
6014
7197
  } | undefined;
6015
7198
  })[];
6016
7199
  completions: {
7200
+ key: string;
6017
7201
  id: string;
6018
7202
  quest: string;
6019
7203
  member: string;
@@ -6127,6 +7311,11 @@ declare function createManagementClient(options: {
6127
7311
  };
6128
7312
  };
6129
7313
  tier: string;
7314
+ } | {
7315
+ kind: "integration";
7316
+ provider: "discord";
7317
+ action: "grant-role";
7318
+ roleId: string;
6130
7319
  })[] | null;
6131
7320
  createdAt: number;
6132
7321
  input?: {
@@ -6171,6 +7360,20 @@ declare function createManagementClient(options: {
6171
7360
  rewards: number;
6172
7361
  lastActivity: number | null;
6173
7362
  }[];
7363
+ people: {
7364
+ id: string;
7365
+ accounts: {
7366
+ provider: string;
7367
+ subject: string;
7368
+ signInEnabled: boolean;
7369
+ profile?: {
7370
+ emailVerified: boolean;
7371
+ name?: string | undefined;
7372
+ email?: string | undefined;
7373
+ imageUrl?: string | undefined;
7374
+ } | undefined;
7375
+ }[];
7376
+ }[];
6174
7377
  metrics: {
6175
7378
  quests: number;
6176
7379
  members: number;
@@ -6207,6 +7410,23 @@ declare function createManagementClient(options: {
6207
7410
  }[];
6208
7411
  questCounts: Record<string, number>;
6209
7412
  }>;
7413
+ rewardDeliveries: (member?: string) => Promise<{
7414
+ deliveries: {
7415
+ id: string;
7416
+ quest: string;
7417
+ completion: string;
7418
+ member: string;
7419
+ provider: "discord";
7420
+ action: "grant-role";
7421
+ roleId: string;
7422
+ status: "pending" | "delivered";
7423
+ attempts: number;
7424
+ nextAt: number;
7425
+ lastError: string | null;
7426
+ createdAt: number;
7427
+ deliveredAt: number | null;
7428
+ }[];
7429
+ }>;
6210
7430
  member: (id: string) => Promise<{
6211
7431
  snapshot: {
6212
7432
  releases: ({
@@ -6235,6 +7455,30 @@ declare function createManagementClient(options: {
6235
7455
  };
6236
7456
  integrations: "discord"[];
6237
7457
  fields: Record<string, {
7458
+ kind: "point-ledger";
7459
+ default: string;
7460
+ label: string;
7461
+ description?: string | undefined;
7462
+ } | {
7463
+ kind: "datetime";
7464
+ default: string;
7465
+ label: string;
7466
+ description?: string | undefined;
7467
+ } | {
7468
+ kind: "resource";
7469
+ default: string;
7470
+ source: {
7471
+ provider: "discord";
7472
+ resource: "channel";
7473
+ types: ("text" | "announcement")[];
7474
+ } | {
7475
+ provider: "discord";
7476
+ resource: "role";
7477
+ assignable: boolean;
7478
+ };
7479
+ label: string;
7480
+ description?: string | undefined;
7481
+ } | {
6238
7482
  kind: "quiz";
6239
7483
  default: {
6240
7484
  id: string;
@@ -6304,6 +7548,11 @@ declare function createManagementClient(options: {
6304
7548
  kind: "points";
6305
7549
  balance: string;
6306
7550
  amount: number;
7551
+ } | {
7552
+ kind: "integration";
7553
+ provider: "discord";
7554
+ action: "grant-role";
7555
+ roleId: string;
6307
7556
  })[];
6308
7557
  humanReview: boolean;
6309
7558
  trigger: {
@@ -6312,6 +7561,10 @@ declare function createManagementClient(options: {
6312
7561
  actor?: "staff" | "member" | undefined;
6313
7562
  } | {
6314
7563
  kind: "automatic";
7564
+ observation?: {
7565
+ source: string;
7566
+ type: string;
7567
+ } | undefined;
6315
7568
  };
6316
7569
  requires: {
6317
7570
  quest: string;
@@ -6319,7 +7572,19 @@ declare function createManagementClient(options: {
6319
7572
  }[];
6320
7573
  completion: {
6321
7574
  kind: "once";
7575
+ } | {
7576
+ kind: "keyed";
6322
7577
  };
7578
+ visibility: "visible" | "hidden";
7579
+ budgets: {
7580
+ id: string;
7581
+ scope: "member" | "project";
7582
+ period: "lifetime" | "day";
7583
+ limit: number;
7584
+ cost: number | {
7585
+ balance: string;
7586
+ };
7587
+ }[];
6323
7588
  code: string;
6324
7589
  provider: "fixture-pass" | "fixture-fail" | "fixture-unclear" | "fixture-error" | "workers-ai";
6325
7590
  id: string;
@@ -6376,6 +7641,30 @@ declare function createManagementClient(options: {
6376
7641
  };
6377
7642
  integrations: "discord"[];
6378
7643
  fields: Record<string, {
7644
+ kind: "point-ledger";
7645
+ default: string;
7646
+ label: string;
7647
+ description?: string | undefined;
7648
+ } | {
7649
+ kind: "datetime";
7650
+ default: string;
7651
+ label: string;
7652
+ description?: string | undefined;
7653
+ } | {
7654
+ kind: "resource";
7655
+ default: string;
7656
+ source: {
7657
+ provider: "discord";
7658
+ resource: "channel";
7659
+ types: ("text" | "announcement")[];
7660
+ } | {
7661
+ provider: "discord";
7662
+ resource: "role";
7663
+ assignable: boolean;
7664
+ };
7665
+ label: string;
7666
+ description?: string | undefined;
7667
+ } | {
6379
7668
  kind: "quiz";
6380
7669
  default: {
6381
7670
  id: string;
@@ -6445,6 +7734,11 @@ declare function createManagementClient(options: {
6445
7734
  };
6446
7735
  };
6447
7736
  tier: string;
7737
+ } | {
7738
+ kind: "integration";
7739
+ provider: "discord";
7740
+ action: "grant-role";
7741
+ roleId: string;
6448
7742
  })[];
6449
7743
  humanReview: boolean;
6450
7744
  trigger: {
@@ -6453,6 +7747,10 @@ declare function createManagementClient(options: {
6453
7747
  actor?: "staff" | "member" | undefined;
6454
7748
  } | {
6455
7749
  kind: "automatic";
7750
+ observation?: {
7751
+ source: string;
7752
+ type: string;
7753
+ } | undefined;
6456
7754
  };
6457
7755
  requires: {
6458
7756
  quest: string;
@@ -6460,7 +7758,19 @@ declare function createManagementClient(options: {
6460
7758
  }[];
6461
7759
  completion: {
6462
7760
  kind: "once";
7761
+ } | {
7762
+ kind: "keyed";
6463
7763
  };
7764
+ visibility: "visible" | "hidden";
7765
+ budgets: {
7766
+ id: string;
7767
+ scope: "project" | "member";
7768
+ period: "day" | "lifetime";
7769
+ limit: number;
7770
+ cost: number | {
7771
+ balance: string;
7772
+ };
7773
+ }[];
6464
7774
  code: string;
6465
7775
  provider: "fixture-pass" | "fixture-fail" | "fixture-unclear" | "fixture-error" | "workers-ai";
6466
7776
  id: string;
@@ -6493,6 +7803,7 @@ declare function createManagementClient(options: {
6493
7803
  } | undefined;
6494
7804
  })[];
6495
7805
  completions: {
7806
+ key: string;
6496
7807
  id: string;
6497
7808
  quest: string;
6498
7809
  member: string;
@@ -6606,6 +7917,11 @@ declare function createManagementClient(options: {
6606
7917
  };
6607
7918
  };
6608
7919
  tier: string;
7920
+ } | {
7921
+ kind: "integration";
7922
+ provider: "discord";
7923
+ action: "grant-role";
7924
+ roleId: string;
6609
7925
  })[] | null;
6610
7926
  createdAt: number;
6611
7927
  input?: {
@@ -6682,6 +7998,10 @@ declare function createManagementClient(options: {
6682
7998
  actor?: "staff" | "member" | undefined;
6683
7999
  } | {
6684
8000
  kind: "automatic";
8001
+ observation?: {
8002
+ source: string;
8003
+ type: string;
8004
+ } | undefined;
6685
8005
  };
6686
8006
  availability: {
6687
8007
  kind: "available";
@@ -6698,6 +8018,10 @@ declare function createManagementClient(options: {
6698
8018
  kind: "staff-required";
6699
8019
  } | {
6700
8020
  kind: "automatic";
8021
+ observation?: {
8022
+ source: string;
8023
+ type: string;
8024
+ } | undefined;
6701
8025
  } | {
6702
8026
  kind: "checking";
6703
8027
  attempt: string;
@@ -6709,6 +8033,13 @@ declare function createManagementClient(options: {
6709
8033
  attempt: string;
6710
8034
  };
6711
8035
  completed: boolean;
8036
+ completion: {
8037
+ kind: "once";
8038
+ } | {
8039
+ kind: "keyed";
8040
+ };
8041
+ completionCount: number;
8042
+ visibility: "visible" | "hidden";
6712
8043
  missing: {
6713
8044
  quest: string;
6714
8045
  title: string;
@@ -6745,6 +8076,11 @@ declare function createManagementClient(options: {
6745
8076
  };
6746
8077
  };
6747
8078
  tier: string;
8079
+ } | {
8080
+ kind: "integration";
8081
+ provider: "discord";
8082
+ action: "grant-role";
8083
+ roleId: string;
6748
8084
  })[] | null;
6749
8085
  createdAt: number;
6750
8086
  input?: {
@@ -6862,4 +8198,4 @@ declare function createManagementClient(options: {
6862
8198
  }>;
6863
8199
  };
6864
8200
 
6865
- export { type Access, type AuditRecord, type BuildArtifacts, type BuildIdentity, type BuildSnapshot, type BuildStatus, type HostedBuild, type ListQuery, type ManagementPage, type Permission, type Project, accessSchema, accountProfileSchema, appRoutingSchema, assetPathSchema, auditRecordSchema, buildArtifactsSchema, buildIdentitySchema, buildPhaseSchema, buildSnapshotSchema, buildStatusSchema, commitSchema, createManagementClient, createRepositorySchema, developmentPreflightSchema, deviceApproveSchema, deviceRedeemSchema, deviceStartSchema, environmentSchema, grantSchema, hostedAppSchema, hostedBuildSchema, inventorySchema, memberAccountSchema, memberDetailSchema, memberSchema, metricsSchema, operationInputSchema, operationSchema, pageSchema, permissionSchema, projectInputSchema, projectSchema, projectSetupSchema, querySchema, readinessSchema, repositorySchema, rolePermissions, roleSchema, stageRequestSchema, stockInputSchema, tokenInputSchema, tokenSchema };
8201
+ export { type Access, type AuditRecord, type BuildArtifacts, type BuildIdentity, type BuildSnapshot, type BuildStatus, type HostedBuild, type ListQuery, type ManagementPage, type Permission, type Person, type Project, accessSchema, accountProfileSchema, appRoutingSchema, assetPathSchema, auditRecordSchema, buildArtifactsSchema, buildIdentitySchema, buildPhaseSchema, buildSnapshotSchema, buildStatusSchema, commitSchema, createManagementClient, createRepositorySchema, developmentPreflightSchema, deviceApproveSchema, deviceRedeemSchema, deviceStartSchema, environmentSchema, grantSchema, hostedAppSchema, hostedBuildSchema, inventorySchema, memberAccountSchema, memberDetailSchema, memberSchema, metricsSchema, operationInputSchema, operationSchema, pageSchema, permissionSchema, personSchema, projectInputSchema, projectSchema, projectSetupSchema, querySchema, readinessSchema, repositorySchema, rolePermissions, roleSchema, stageRequestSchema, stockInputSchema, tokenInputSchema, tokenSchema };