@domino-sdk/relay 0.27.0 → 0.29.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/browser.d.ts CHANGED
@@ -1,6 +1,6 @@
1
- import { N as WalletSigner, a3 as CosmosChain, a4 as CosmosNetwork, H as referralAcceptSchema, J as LeaderboardQuery, K as WalletAddressInput, M as walletSignatureSchema, L as LinkedWallet, P as walletChallengeInputSchema, Q as walletProofSchema, R as AuthProvider, V as WalletSignature, Y as engagementPageQuerySchema, Z as contentQualificationQuerySchema, _ as contentAdmissionQuerySchema, $ as contentEnrollmentInputSchema, a0 as contentReleaseInputSchema } from './submission-input-CYyH_25w.js';
1
+ import { a5 as CosmosChain, a6 as CosmosNetwork, N as WalletSigner, a2 as WalletSignInNetwork, R as AuthProvider, H as referralAcceptSchema, J as LeaderboardQuery, K as WalletAddressInput, M as walletSignatureSchema, L as LinkedWallet, P as walletChallengeInputSchema, Q as walletProofSchema, V as WalletSignature, Y as engagementPageQuerySchema, Z as contentQualificationQuerySchema, _ as contentAdmissionQuerySchema, $ as contentEnrollmentInputSchema, a0 as contentReleaseInputSchema } from './submission-input-C0cOmO4Q.js';
2
2
  import { SubmitInput, ReleaseInput, beginHandoverSchema, contentPerformanceQuerySchema } from './schema.js';
3
- import { SubmissionStore, createRelayClient, ProfileUpdate, QuestView, QuestController, ProgressObservation, questExperienceSchema, ProgressObserver, ExchangeInput, PhotoSubmission, QuizSubmission, ClaimSubmission, ValueSubmission } from './index.js';
3
+ import { createRelayClient, SubmissionStore, ProfileUpdate, ProfileCompletionQuery, QuestView, QuestController, ProgressObservation, questExperienceSchema, ProgressObserver, ExchangeInput, PhotoSubmission, QuizSubmission, ClaimSubmission, ValueSubmission } from './index.js';
4
4
  import * as zod from 'zod';
5
5
 
6
6
  /** An EIP-1193 provider, such as `window.ethereum` or an EIP-6963 announcement's provider. */
@@ -85,6 +85,120 @@ declare function discoverSolanaWallets(): DiscoveredWallet[];
85
85
  * the chain ID.
86
86
  */
87
87
  declare function discoverCosmosWallets(chain: CosmosChain | CosmosNetwork): DiscoveredWallet[];
88
+ /**
89
+ * The Cosmos SDK chains an app offers wallets on: one chain or several, each as
90
+ * `{ chainId, chainInfo? }` or `"cosmos:<chain ID>"`. Relay has no chain list of its own.
91
+ */
92
+ type CosmosChains = CosmosChain | CosmosNetwork | readonly (CosmosChain | CosmosNetwork)[];
93
+ /** The chains in `CosmosChains`, as a list. */
94
+ declare function cosmosChainList(chains: CosmosChains | undefined): (CosmosChain | CosmosNetwork)[];
95
+ /** An installed wallet that can sign in on one of the project's enabled wallet families. */
96
+ type SignInWallet = DiscoveredWallet & {
97
+ network: WalletSignInNetwork;
98
+ };
99
+ /**
100
+ * The wallets installed in this browser that can sign in with `families`: EVM wallets first, then
101
+ * Solana wallets, then Cosmos wallets once per chain in `cosmos`. Without `cosmos` there are no
102
+ * Cosmos wallets. Empty during SSR.
103
+ */
104
+ declare function discoverSignInWallets(families: readonly WalletSignInNetwork[], cosmos?: CosmosChains): Promise<SignInWallet[]>;
105
+
106
+ type Auth = ReturnType<typeof createRelayClient>["auth"];
107
+ /** The part of a Relay client sign-in options use. */
108
+ type SignInClient = {
109
+ auth: Pick<Auth, "providers" | "start" | "emailStart" | "emailVerify"> & {
110
+ wallet: Pick<Auth["wallet"], "signIn">;
111
+ };
112
+ };
113
+ /** The sign-in methods a project takes: the platform's OAuth providers and email, and its wallet families. */
114
+ type SignInMethods = {
115
+ providers: AuthProvider[];
116
+ email: boolean;
117
+ /** The wallet families this project enabled for sign-in in Console. */
118
+ wallets: WalletSignInNetwork[];
119
+ /**
120
+ * Set when the methods could not be read, such as when the network failed: they are then email
121
+ * alone, and the server has the final say when the participant uses it.
122
+ */
123
+ error?: string;
124
+ };
125
+ /** Which icon to draw: an OAuth provider's logo, a mail icon, or a generic wallet icon. */
126
+ type SignInIcon = AuthProvider | "email" | "wallet";
127
+ type OAuthSignInOption = {
128
+ kind: "oauth";
129
+ /** The provider, such as `"google"`. */
130
+ id: AuthProvider;
131
+ /** The provider's name, such as "Google". */
132
+ label: string;
133
+ icon: AuthProvider;
134
+ /** Leaves the page for the provider's consent screen. See `SignInOption` for failures. */
135
+ start(): Promise<void>;
136
+ };
137
+ type EmailSignInOption = {
138
+ kind: "email";
139
+ id: "email";
140
+ label: string;
141
+ icon: "email";
142
+ /** Emails a one-time code to the address. */
143
+ sendCode(email: string): Promise<void>;
144
+ /** Signs in with the code sent last. */
145
+ verifyCode(code: string): Promise<void>;
146
+ };
147
+ type WalletSignInOption = {
148
+ kind: "wallet";
149
+ /** Unique among the options, such as `"wallet:eip155:io.metamask"`. */
150
+ id: string;
151
+ /** The wallet's name, with its family or chain when another installed wallet has the same name. */
152
+ label: string;
153
+ icon: "wallet";
154
+ /** The wallet's own icon, a data or HTTPS URL, when it announces one. */
155
+ iconUrl?: string;
156
+ /** The wallet family it signs in with. */
157
+ family: WalletSignInNetwork;
158
+ /** The signer, for `useWallets().link` or `relay.wallets.link`. */
159
+ signer: WalletSigner;
160
+ /** Asks the wallet to sign a message, then signs in, or signs up. See `SignInOption` for failures. */
161
+ start(): Promise<void>;
162
+ };
163
+ /**
164
+ * One way to sign in that this project takes and this browser can use. From `useSignInOptions()`
165
+ * its actions never reject: a failure lands in the hook's `error`. From `signInOptions()` they
166
+ * reject with the failure.
167
+ */
168
+ type SignInOption = OAuthSignInOption | EmailSignInOption | WalletSignInOption;
169
+ /**
170
+ * A sign-in method the project enabled that is not offered, and why:
171
+ * - `cosmos-chains-missing`: the project takes Cosmos wallets but the app named no Cosmos chains.
172
+ * For the app's developer; pass `cosmos` to offer them.
173
+ * - `cosmos-chains-invalid`: the project takes Cosmos wallets but a chain in `cosmos` is not one,
174
+ * such as `"cosmoshub-4"` without the `cosmos:` prefix. For the app's developer; `message` says
175
+ * what is wrong.
176
+ * - `no-wallet-installed`: the project takes wallets but this browser has none for its families.
177
+ * For the participant; `message` says which to install.
178
+ */
179
+ type SignInUnavailable = {
180
+ reason: "cosmos-chains-missing" | "cosmos-chains-invalid" | "no-wallet-installed";
181
+ families: WalletSignInNetwork[];
182
+ message: string;
183
+ };
184
+ type SignInOptions = {
185
+ /** OAuth providers first, then installed wallets, then email. */
186
+ options: SignInOption[];
187
+ unavailable: SignInUnavailable[];
188
+ /** Why the project's methods could not be read; the options are then email alone. */
189
+ methodsError?: string;
190
+ };
191
+ /**
192
+ * Every way a participant can sign in to this project from this browser, for apps without React:
193
+ * the OAuth providers and email the platform configured, and the installed wallets of the families
194
+ * the project enabled. Cosmos wallets need the app's chains in `cosmos`; without them, or when one
195
+ * is invalid, they are not offered and `unavailable` says so. Each option signs in with this
196
+ * client: OAuth leaves the page, email sends a code and then verifies it, a wallet signs a
197
+ * message. The actions reject when they fail.
198
+ */
199
+ declare function signInOptions(relay: SignInClient, input?: {
200
+ cosmos?: CosmosChains;
201
+ }): Promise<SignInOptions>;
88
202
 
89
203
  /** Browser client with durable submission recovery; safe to construct during SSR. */
90
204
  declare function createBrowserRelayClient(options: Parameters<typeof createRelayClient>[0]): {
@@ -295,7 +409,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
295
409
  accounts: {
296
410
  id: string;
297
411
  program: string;
298
- kind: "milestone" | "fixed" | "bonus";
412
+ kind: "fixed" | "milestone" | "bonus";
299
413
  balance: string;
300
414
  earned: number;
301
415
  settled: number;
@@ -461,6 +575,15 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
461
575
  }[];
462
576
  nextCursor: string | null;
463
577
  }>;
578
+ placement: (board: string, profile: string) => Promise<{
579
+ leaderboard: string;
580
+ title: string;
581
+ profile: string;
582
+ rank: number | null;
583
+ score: number | null;
584
+ total: number;
585
+ key?: string | undefined;
586
+ }>;
464
587
  };
465
588
  profiles: {
466
589
  mine: () => Promise<{
@@ -480,7 +603,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
480
603
  seed: string;
481
604
  };
482
605
  displayName: string | null;
483
- avatarChoice: "default" | "account" | "generated" | "upload";
606
+ avatarChoice: "default" | "account" | "upload" | "generated";
484
607
  avatarProvider: "x" | "discord" | "google" | null;
485
608
  hidden: boolean;
486
609
  locked: boolean;
@@ -510,7 +633,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
510
633
  seed: string;
511
634
  };
512
635
  displayName: string | null;
513
- avatarChoice: "default" | "account" | "generated" | "upload";
636
+ avatarChoice: "default" | "account" | "upload" | "generated";
514
637
  avatarProvider: "x" | "discord" | "google" | null;
515
638
  hidden: boolean;
516
639
  locked: boolean;
@@ -541,7 +664,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
541
664
  seed: string;
542
665
  };
543
666
  displayName: string | null;
544
- avatarChoice: "default" | "account" | "generated" | "upload";
667
+ avatarChoice: "default" | "account" | "upload" | "generated";
545
668
  avatarProvider: "x" | "discord" | "google" | null;
546
669
  hidden: boolean;
547
670
  locked: boolean;
@@ -568,36 +691,28 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
568
691
  source: "generated";
569
692
  seed: string;
570
693
  };
571
- self: boolean;
572
- leaderboards: {
573
- leaderboard: string;
574
- title: string;
575
- rank: number;
576
- score: number;
577
- total: number;
578
- key?: string | undefined;
579
- }[] | null;
580
- quests: {
694
+ }>;
695
+ completions: (profile: string, options?: ProfileCompletionQuery) => Promise<{
696
+ items: {
581
697
  quest: string;
582
698
  title: string;
583
699
  completions: number;
584
700
  lastCompletedAt: number | null;
585
701
  key?: string | undefined;
586
- }[] | null;
587
- referrals: {
588
- attributed: number;
589
- programs: {
590
- program: string;
591
- title: string;
592
- qualified: number;
593
- milestones: {
594
- id: string;
595
- count: number;
596
- reached: boolean;
597
- }[];
598
- key?: string | undefined;
599
- }[];
600
- } | null;
702
+ }[];
703
+ nextCursor: string | null;
704
+ }>;
705
+ referral: (profile: string, program: string) => Promise<{
706
+ program: string;
707
+ title: string;
708
+ invited: number;
709
+ qualified: number;
710
+ milestones: {
711
+ id: string;
712
+ count: number;
713
+ reached: boolean;
714
+ }[];
715
+ key?: string | undefined;
601
716
  }>;
602
717
  };
603
718
  quests: {
@@ -637,7 +752,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
637
752
  start: number;
638
753
  end?: number | undefined;
639
754
  };
640
- enrollment: "required" | "none";
755
+ enrollment: "none" | "required";
641
756
  posts: "after-enrollment" | "since-start";
642
757
  historical: "staff" | "automatic" | "claim";
643
758
  } | undefined;
@@ -665,12 +780,12 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
665
780
  actor?: "member" | "staff" | undefined;
666
781
  } | {
667
782
  kind: "manual";
668
- input: "quiz" | "photo" | "none";
783
+ input: "none" | "quiz" | "photo";
669
784
  actor?: "member" | "staff" | undefined;
670
785
  };
671
786
  availability: {
672
787
  kind: "available";
673
- input: "quiz" | "url" | "text" | "photo" | "none";
788
+ input: "text" | "url" | "none" | "quiz" | "photo";
674
789
  } | {
675
790
  kind: "completed";
676
791
  } | {
@@ -708,7 +823,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
708
823
  kind: "keyed";
709
824
  };
710
825
  completionCount: number;
711
- visibility: "hidden" | "visible";
826
+ visibility: "visible" | "hidden";
712
827
  missing: {
713
828
  quest: string;
714
829
  title: string;
@@ -719,7 +834,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
719
834
  quest: string;
720
835
  member: string;
721
836
  evidence: string | null;
722
- status: "needs-review" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected" | "failed";
837
+ status: "needs-review" | "failed" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected";
723
838
  reason: string | null;
724
839
  retries: number;
725
840
  generation: number;
@@ -753,22 +868,22 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
753
868
  })[] | null;
754
869
  createdAt: number;
755
870
  input?: {
756
- kind: "quiz";
757
- answers: {
758
- [k: string]: string;
759
- };
760
- release?: string | undefined;
761
- } | {
762
871
  kind: "text";
763
872
  value: string;
764
873
  } | {
765
874
  kind: "url";
766
875
  value: string;
876
+ } | {
877
+ kind: "quiz";
878
+ answers: {
879
+ [k: string]: string;
880
+ };
881
+ release?: string | undefined;
767
882
  } | undefined;
768
883
  } | null;
769
884
  release: string;
770
- interaction: "quiz" | "url" | "text" | "staff" | "photo" | "automatic" | "claim";
771
- lifecycle: "active" | "paused" | "archived";
885
+ interaction: "staff" | "text" | "url" | "automatic" | "claim" | "quiz" | "photo";
886
+ lifecycle: "paused" | "active" | "archived";
772
887
  rewards: ({
773
888
  kind: "points";
774
889
  label: string;
@@ -829,7 +944,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
829
944
  quest: string;
830
945
  member: string;
831
946
  evidence: string | null;
832
- status: "needs-review" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected" | "failed";
947
+ status: "needs-review" | "failed" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected";
833
948
  reason: string | null;
834
949
  retries: number;
835
950
  generation: number;
@@ -863,17 +978,17 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
863
978
  })[] | null;
864
979
  createdAt: number;
865
980
  input?: {
866
- kind: "quiz";
867
- answers: {
868
- [k: string]: string;
869
- };
870
- release?: string | undefined;
871
- } | {
872
981
  kind: "text";
873
982
  value: string;
874
983
  } | {
875
984
  kind: "url";
876
985
  value: string;
986
+ } | {
987
+ kind: "quiz";
988
+ answers: {
989
+ [k: string]: string;
990
+ };
991
+ release?: string | undefined;
877
992
  } | undefined;
878
993
  }>;
879
994
  experience: () => Promise<{
@@ -914,7 +1029,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
914
1029
  start: number;
915
1030
  end?: number | undefined;
916
1031
  };
917
- enrollment: "required" | "none";
1032
+ enrollment: "none" | "required";
918
1033
  posts: "after-enrollment" | "since-start";
919
1034
  historical: "staff" | "automatic" | "claim";
920
1035
  } | undefined;
@@ -942,12 +1057,12 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
942
1057
  actor?: "member" | "staff" | undefined;
943
1058
  } | {
944
1059
  kind: "manual";
945
- input: "quiz" | "photo" | "none";
1060
+ input: "none" | "quiz" | "photo";
946
1061
  actor?: "member" | "staff" | undefined;
947
1062
  };
948
1063
  availability: {
949
1064
  kind: "available";
950
- input: "quiz" | "url" | "text" | "photo" | "none";
1065
+ input: "text" | "url" | "none" | "quiz" | "photo";
951
1066
  } | {
952
1067
  kind: "completed";
953
1068
  } | {
@@ -985,7 +1100,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
985
1100
  kind: "keyed";
986
1101
  };
987
1102
  completionCount: number;
988
- visibility: "hidden" | "visible";
1103
+ visibility: "visible" | "hidden";
989
1104
  missing: {
990
1105
  quest: string;
991
1106
  title: string;
@@ -996,7 +1111,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
996
1111
  quest: string;
997
1112
  member: string;
998
1113
  evidence: string | null;
999
- status: "needs-review" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected" | "failed";
1114
+ status: "needs-review" | "failed" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected";
1000
1115
  reason: string | null;
1001
1116
  retries: number;
1002
1117
  generation: number;
@@ -1030,22 +1145,22 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
1030
1145
  })[] | null;
1031
1146
  createdAt: number;
1032
1147
  input?: {
1033
- kind: "quiz";
1034
- answers: {
1035
- [k: string]: string;
1036
- };
1037
- release?: string | undefined;
1038
- } | {
1039
1148
  kind: "text";
1040
1149
  value: string;
1041
1150
  } | {
1042
1151
  kind: "url";
1043
1152
  value: string;
1153
+ } | {
1154
+ kind: "quiz";
1155
+ answers: {
1156
+ [k: string]: string;
1157
+ };
1158
+ release?: string | undefined;
1044
1159
  } | undefined;
1045
1160
  } | null;
1046
1161
  release: string;
1047
- interaction: "quiz" | "url" | "text" | "staff" | "photo" | "automatic" | "claim";
1048
- lifecycle: "active" | "paused" | "archived";
1162
+ interaction: "staff" | "text" | "url" | "automatic" | "claim" | "quiz" | "photo";
1163
+ lifecycle: "paused" | "active" | "archived";
1049
1164
  rewards: ({
1050
1165
  kind: "points";
1051
1166
  label: string;
@@ -1139,7 +1254,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
1139
1254
  start: number;
1140
1255
  end?: number | undefined;
1141
1256
  };
1142
- enrollment: "required" | "none";
1257
+ enrollment: "none" | "required";
1143
1258
  posts: "after-enrollment" | "since-start";
1144
1259
  historical: "staff" | "automatic" | "claim";
1145
1260
  } | undefined;
@@ -1167,12 +1282,12 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
1167
1282
  actor?: "member" | "staff" | undefined;
1168
1283
  } | {
1169
1284
  kind: "manual";
1170
- input: "quiz" | "photo" | "none";
1285
+ input: "none" | "quiz" | "photo";
1171
1286
  actor?: "member" | "staff" | undefined;
1172
1287
  };
1173
1288
  availability: {
1174
1289
  kind: "available";
1175
- input: "quiz" | "url" | "text" | "photo" | "none";
1290
+ input: "text" | "url" | "none" | "quiz" | "photo";
1176
1291
  } | {
1177
1292
  kind: "completed";
1178
1293
  } | {
@@ -1210,7 +1325,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
1210
1325
  kind: "keyed";
1211
1326
  };
1212
1327
  completionCount: number;
1213
- visibility: "hidden" | "visible";
1328
+ visibility: "visible" | "hidden";
1214
1329
  missing: {
1215
1330
  quest: string;
1216
1331
  title: string;
@@ -1221,7 +1336,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
1221
1336
  quest: string;
1222
1337
  member: string;
1223
1338
  evidence: string | null;
1224
- status: "needs-review" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected" | "failed";
1339
+ status: "needs-review" | "failed" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected";
1225
1340
  reason: string | null;
1226
1341
  retries: number;
1227
1342
  generation: number;
@@ -1255,22 +1370,22 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
1255
1370
  })[] | null;
1256
1371
  createdAt: number;
1257
1372
  input?: {
1258
- kind: "quiz";
1259
- answers: {
1260
- [k: string]: string;
1261
- };
1262
- release?: string | undefined;
1263
- } | {
1264
1373
  kind: "text";
1265
1374
  value: string;
1266
1375
  } | {
1267
1376
  kind: "url";
1268
1377
  value: string;
1378
+ } | {
1379
+ kind: "quiz";
1380
+ answers: {
1381
+ [k: string]: string;
1382
+ };
1383
+ release?: string | undefined;
1269
1384
  } | undefined;
1270
1385
  } | null;
1271
1386
  release: string;
1272
- interaction: "quiz" | "url" | "text" | "staff" | "photo" | "automatic" | "claim";
1273
- lifecycle: "active" | "paused" | "archived";
1387
+ interaction: "staff" | "text" | "url" | "automatic" | "claim" | "quiz" | "photo";
1388
+ lifecycle: "paused" | "active" | "archived";
1274
1389
  rewards: ({
1275
1390
  kind: "points";
1276
1391
  label: string;
@@ -1367,7 +1482,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
1367
1482
  start: number;
1368
1483
  end?: number | undefined;
1369
1484
  };
1370
- enrollment: "required" | "none";
1485
+ enrollment: "none" | "required";
1371
1486
  posts: "after-enrollment" | "since-start";
1372
1487
  historical: "staff" | "automatic" | "claim";
1373
1488
  } | undefined;
@@ -1395,12 +1510,12 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
1395
1510
  actor?: "member" | "staff" | undefined;
1396
1511
  } | {
1397
1512
  kind: "manual";
1398
- input: "quiz" | "photo" | "none";
1513
+ input: "none" | "quiz" | "photo";
1399
1514
  actor?: "member" | "staff" | undefined;
1400
1515
  };
1401
1516
  availability: {
1402
1517
  kind: "available";
1403
- input: "quiz" | "url" | "text" | "photo" | "none";
1518
+ input: "text" | "url" | "none" | "quiz" | "photo";
1404
1519
  } | {
1405
1520
  kind: "completed";
1406
1521
  } | {
@@ -1438,7 +1553,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
1438
1553
  kind: "keyed";
1439
1554
  };
1440
1555
  completionCount: number;
1441
- visibility: "hidden" | "visible";
1556
+ visibility: "visible" | "hidden";
1442
1557
  missing: {
1443
1558
  quest: string;
1444
1559
  title: string;
@@ -1449,7 +1564,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
1449
1564
  quest: string;
1450
1565
  member: string;
1451
1566
  evidence: string | null;
1452
- status: "needs-review" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected" | "failed";
1567
+ status: "needs-review" | "failed" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected";
1453
1568
  reason: string | null;
1454
1569
  retries: number;
1455
1570
  generation: number;
@@ -1483,22 +1598,22 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
1483
1598
  })[] | null;
1484
1599
  createdAt: number;
1485
1600
  input?: {
1486
- kind: "quiz";
1487
- answers: {
1488
- [k: string]: string;
1489
- };
1490
- release?: string | undefined;
1491
- } | {
1492
1601
  kind: "text";
1493
1602
  value: string;
1494
1603
  } | {
1495
1604
  kind: "url";
1496
1605
  value: string;
1606
+ } | {
1607
+ kind: "quiz";
1608
+ answers: {
1609
+ [k: string]: string;
1610
+ };
1611
+ release?: string | undefined;
1497
1612
  } | undefined;
1498
1613
  } | null;
1499
1614
  release: string;
1500
- interaction: "quiz" | "url" | "text" | "staff" | "photo" | "automatic" | "claim";
1501
- lifecycle: "active" | "paused" | "archived";
1615
+ interaction: "staff" | "text" | "url" | "automatic" | "claim" | "quiz" | "photo";
1616
+ lifecycle: "paused" | "active" | "archived";
1502
1617
  rewards: ({
1503
1618
  kind: "points";
1504
1619
  label: string;
@@ -1800,7 +1915,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
1800
1915
  quest: string;
1801
1916
  member: string;
1802
1917
  evidence: string | null;
1803
- status: "needs-review" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected" | "failed";
1918
+ status: "needs-review" | "failed" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected";
1804
1919
  reason: string | null;
1805
1920
  retries: number;
1806
1921
  generation: number;
@@ -1834,17 +1949,17 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
1834
1949
  })[] | null;
1835
1950
  createdAt: number;
1836
1951
  input?: {
1837
- kind: "quiz";
1838
- answers: {
1839
- [k: string]: string;
1840
- };
1841
- release?: string | undefined;
1842
- } | {
1843
1952
  kind: "text";
1844
1953
  value: string;
1845
1954
  } | {
1846
1955
  kind: "url";
1847
1956
  value: string;
1957
+ } | {
1958
+ kind: "quiz";
1959
+ answers: {
1960
+ [k: string]: string;
1961
+ };
1962
+ release?: string | undefined;
1848
1963
  } | undefined;
1849
1964
  }>;
1850
1965
  progress: () => Promise<{
@@ -1885,7 +2000,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
1885
2000
  start: number;
1886
2001
  end?: number | undefined;
1887
2002
  };
1888
- enrollment: "required" | "none";
2003
+ enrollment: "none" | "required";
1889
2004
  posts: "after-enrollment" | "since-start";
1890
2005
  historical: "staff" | "automatic" | "claim";
1891
2006
  } | undefined;
@@ -1913,12 +2028,12 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
1913
2028
  actor?: "member" | "staff" | undefined;
1914
2029
  } | {
1915
2030
  kind: "manual";
1916
- input: "quiz" | "photo" | "none";
2031
+ input: "none" | "quiz" | "photo";
1917
2032
  actor?: "member" | "staff" | undefined;
1918
2033
  };
1919
2034
  availability: {
1920
2035
  kind: "available";
1921
- input: "quiz" | "url" | "text" | "photo" | "none";
2036
+ input: "text" | "url" | "none" | "quiz" | "photo";
1922
2037
  } | {
1923
2038
  kind: "completed";
1924
2039
  } | {
@@ -1956,7 +2071,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
1956
2071
  kind: "keyed";
1957
2072
  };
1958
2073
  completionCount: number;
1959
- visibility: "hidden" | "visible";
2074
+ visibility: "visible" | "hidden";
1960
2075
  missing: {
1961
2076
  quest: string;
1962
2077
  title: string;
@@ -1967,7 +2082,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
1967
2082
  quest: string;
1968
2083
  member: string;
1969
2084
  evidence: string | null;
1970
- status: "needs-review" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected" | "failed";
2085
+ status: "needs-review" | "failed" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected";
1971
2086
  reason: string | null;
1972
2087
  retries: number;
1973
2088
  generation: number;
@@ -2001,17 +2116,17 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
2001
2116
  })[] | null;
2002
2117
  createdAt: number;
2003
2118
  input?: {
2004
- kind: "quiz";
2005
- answers: {
2006
- [k: string]: string;
2007
- };
2008
- release?: string | undefined;
2009
- } | {
2010
2119
  kind: "text";
2011
2120
  value: string;
2012
2121
  } | {
2013
2122
  kind: "url";
2014
2123
  value: string;
2124
+ } | {
2125
+ kind: "quiz";
2126
+ answers: {
2127
+ [k: string]: string;
2128
+ };
2129
+ release?: string | undefined;
2015
2130
  } | undefined;
2016
2131
  } | null;
2017
2132
  key?: string | undefined;
@@ -2150,7 +2265,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
2150
2265
  quest: string;
2151
2266
  member: string;
2152
2267
  evidence: string | null;
2153
- status: "needs-review" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected" | "failed";
2268
+ status: "needs-review" | "failed" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected";
2154
2269
  reason: string | null;
2155
2270
  retries: number;
2156
2271
  generation: number;
@@ -2184,17 +2299,17 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
2184
2299
  })[] | null;
2185
2300
  createdAt: number;
2186
2301
  input?: {
2187
- kind: "quiz";
2188
- answers: {
2189
- [k: string]: string;
2190
- };
2191
- release?: string | undefined;
2192
- } | {
2193
2302
  kind: "text";
2194
2303
  value: string;
2195
2304
  } | {
2196
2305
  kind: "url";
2197
2306
  value: string;
2307
+ } | {
2308
+ kind: "quiz";
2309
+ answers: {
2310
+ [k: string]: string;
2311
+ };
2312
+ release?: string | undefined;
2198
2313
  } | undefined;
2199
2314
  }>;
2200
2315
  upload: (file: File) => Promise<{
@@ -2216,7 +2331,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
2216
2331
  code: string;
2217
2332
  definition: {
2218
2333
  quest: string;
2219
- runtimeVersion: 1 | 2;
2334
+ runtimeVersion: 2 | 1;
2220
2335
  title: string;
2221
2336
  presentation: {
2222
2337
  quiz?: {
@@ -2355,7 +2470,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
2355
2470
  start: number;
2356
2471
  end?: number | undefined;
2357
2472
  };
2358
- enrollment: "required" | "none";
2473
+ enrollment: "none" | "required";
2359
2474
  posts: "after-enrollment" | "since-start";
2360
2475
  historical: "staff" | "automatic" | "claim";
2361
2476
  } | undefined;
@@ -2383,7 +2498,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
2383
2498
  actor?: "member" | "staff" | undefined;
2384
2499
  } | {
2385
2500
  kind: "manual";
2386
- input: "quiz" | "photo" | "none";
2501
+ input: "none" | "quiz" | "photo";
2387
2502
  actor?: "member" | "staff" | undefined;
2388
2503
  };
2389
2504
  requires: {
@@ -2399,10 +2514,10 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
2399
2514
  } | {
2400
2515
  kind: "keyed";
2401
2516
  };
2402
- visibility: "hidden" | "visible";
2517
+ visibility: "visible" | "hidden";
2403
2518
  budgets: {
2404
2519
  id: string;
2405
- scope: "member" | "project";
2520
+ scope: "project" | "member";
2406
2521
  period: "day" | "lifetime" | "week";
2407
2522
  limit: number;
2408
2523
  cost: number | {
@@ -2413,13 +2528,16 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
2413
2528
  metrics: ("likes" | "replies" | "reposts" | "quotes" | "views" | "bookmarks")[];
2414
2529
  maxAgeMs: number;
2415
2530
  } | undefined;
2531
+ profile?: {
2532
+ visible: boolean;
2533
+ } | undefined;
2416
2534
  };
2417
2535
  }[]>;
2418
2536
  template: () => Promise<{
2419
2537
  code: string;
2420
2538
  definition: {
2421
2539
  quest: string;
2422
- runtimeVersion: 1 | 2;
2540
+ runtimeVersion: 2 | 1;
2423
2541
  title: string;
2424
2542
  presentation: {
2425
2543
  quiz?: {
@@ -2558,7 +2676,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
2558
2676
  start: number;
2559
2677
  end?: number | undefined;
2560
2678
  };
2561
- enrollment: "required" | "none";
2679
+ enrollment: "none" | "required";
2562
2680
  posts: "after-enrollment" | "since-start";
2563
2681
  historical: "staff" | "automatic" | "claim";
2564
2682
  } | undefined;
@@ -2586,7 +2704,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
2586
2704
  actor?: "member" | "staff" | undefined;
2587
2705
  } | {
2588
2706
  kind: "manual";
2589
- input: "quiz" | "photo" | "none";
2707
+ input: "none" | "quiz" | "photo";
2590
2708
  actor?: "member" | "staff" | undefined;
2591
2709
  };
2592
2710
  requires: {
@@ -2602,10 +2720,10 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
2602
2720
  } | {
2603
2721
  kind: "keyed";
2604
2722
  };
2605
- visibility: "hidden" | "visible";
2723
+ visibility: "visible" | "hidden";
2606
2724
  budgets: {
2607
2725
  id: string;
2608
- scope: "member" | "project";
2726
+ scope: "project" | "member";
2609
2727
  period: "day" | "lifetime" | "week";
2610
2728
  limit: number;
2611
2729
  cost: number | {
@@ -2616,12 +2734,15 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
2616
2734
  metrics: ("likes" | "replies" | "reposts" | "quotes" | "views" | "bookmarks")[];
2617
2735
  maxAgeMs: number;
2618
2736
  } | undefined;
2737
+ profile?: {
2738
+ visible: boolean;
2739
+ } | undefined;
2619
2740
  };
2620
2741
  }>;
2621
2742
  snapshot: () => Promise<{
2622
2743
  releases: {
2623
2744
  quest: string;
2624
- runtimeVersion: 1 | 2;
2745
+ runtimeVersion: 2 | 1;
2625
2746
  title: string;
2626
2747
  presentation: {
2627
2748
  quiz?: {
@@ -2760,7 +2881,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
2760
2881
  start: number;
2761
2882
  end?: number | undefined;
2762
2883
  };
2763
- enrollment: "required" | "none";
2884
+ enrollment: "none" | "required";
2764
2885
  posts: "after-enrollment" | "since-start";
2765
2886
  historical: "staff" | "automatic" | "claim";
2766
2887
  } | undefined;
@@ -2788,7 +2909,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
2788
2909
  actor?: "member" | "staff" | undefined;
2789
2910
  } | {
2790
2911
  kind: "manual";
2791
- input: "quiz" | "photo" | "none";
2912
+ input: "none" | "quiz" | "photo";
2792
2913
  actor?: "member" | "staff" | undefined;
2793
2914
  };
2794
2915
  requires: {
@@ -2804,10 +2925,10 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
2804
2925
  } | {
2805
2926
  kind: "keyed";
2806
2927
  };
2807
- visibility: "hidden" | "visible";
2928
+ visibility: "visible" | "hidden";
2808
2929
  budgets: {
2809
2930
  id: string;
2810
- scope: "member" | "project";
2931
+ scope: "project" | "member";
2811
2932
  period: "day" | "lifetime" | "week";
2812
2933
  limit: number;
2813
2934
  cost: number | {
@@ -2819,11 +2940,14 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
2819
2940
  id: string;
2820
2941
  createdAt: number;
2821
2942
  legacy: boolean;
2822
- lifecycle: "active" | "paused" | "archived";
2943
+ lifecycle: "paused" | "active" | "archived";
2823
2944
  performance?: {
2824
2945
  metrics: ("likes" | "replies" | "reposts" | "quotes" | "views" | "bookmarks")[];
2825
2946
  maxAgeMs: number;
2826
2947
  } | undefined;
2948
+ profile?: {
2949
+ visible: boolean;
2950
+ } | undefined;
2827
2951
  key?: string | undefined;
2828
2952
  origin?: {
2829
2953
  typeVersion: string;
@@ -2939,7 +3063,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
2939
3063
  quest: string;
2940
3064
  member: string;
2941
3065
  evidence: string | null;
2942
- status: "needs-review" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected" | "failed";
3066
+ status: "needs-review" | "failed" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected";
2943
3067
  reason: string | null;
2944
3068
  retries: number;
2945
3069
  generation: number;
@@ -2973,17 +3097,17 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
2973
3097
  })[] | null;
2974
3098
  createdAt: number;
2975
3099
  input?: {
2976
- kind: "quiz";
2977
- answers: {
2978
- [k: string]: string;
2979
- };
2980
- release?: string | undefined;
2981
- } | {
2982
3100
  kind: "text";
2983
3101
  value: string;
2984
3102
  } | {
2985
3103
  kind: "url";
2986
3104
  value: string;
3105
+ } | {
3106
+ kind: "quiz";
3107
+ answers: {
3108
+ [k: string]: string;
3109
+ };
3110
+ release?: string | undefined;
2987
3111
  } | undefined;
2988
3112
  }[];
2989
3113
  balances: {
@@ -3004,7 +3128,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
3004
3128
  }>;
3005
3129
  publish: (release: ReleaseInput) => Promise<{
3006
3130
  quest: string;
3007
- runtimeVersion: 1 | 2;
3131
+ runtimeVersion: 2 | 1;
3008
3132
  title: string;
3009
3133
  presentation: {
3010
3134
  quiz?: {
@@ -3143,7 +3267,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
3143
3267
  start: number;
3144
3268
  end?: number | undefined;
3145
3269
  };
3146
- enrollment: "required" | "none";
3270
+ enrollment: "none" | "required";
3147
3271
  posts: "after-enrollment" | "since-start";
3148
3272
  historical: "staff" | "automatic" | "claim";
3149
3273
  } | undefined;
@@ -3171,7 +3295,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
3171
3295
  actor?: "member" | "staff" | undefined;
3172
3296
  } | {
3173
3297
  kind: "manual";
3174
- input: "quiz" | "photo" | "none";
3298
+ input: "none" | "quiz" | "photo";
3175
3299
  actor?: "member" | "staff" | undefined;
3176
3300
  };
3177
3301
  requires: {
@@ -3187,10 +3311,10 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
3187
3311
  } | {
3188
3312
  kind: "keyed";
3189
3313
  };
3190
- visibility: "hidden" | "visible";
3314
+ visibility: "visible" | "hidden";
3191
3315
  budgets: {
3192
3316
  id: string;
3193
- scope: "member" | "project";
3317
+ scope: "project" | "member";
3194
3318
  period: "day" | "lifetime" | "week";
3195
3319
  limit: number;
3196
3320
  cost: number | {
@@ -3202,11 +3326,14 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
3202
3326
  id: string;
3203
3327
  createdAt: number;
3204
3328
  legacy: boolean;
3205
- lifecycle: "active" | "paused" | "archived";
3329
+ lifecycle: "paused" | "active" | "archived";
3206
3330
  performance?: {
3207
3331
  metrics: ("likes" | "replies" | "reposts" | "quotes" | "views" | "bookmarks")[];
3208
3332
  maxAgeMs: number;
3209
3333
  } | undefined;
3334
+ profile?: {
3335
+ visible: boolean;
3336
+ } | undefined;
3210
3337
  key?: string | undefined;
3211
3338
  origin?: {
3212
3339
  typeVersion: string;
@@ -3235,7 +3362,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
3235
3362
  }>;
3236
3363
  publishBatch: (releases: ReleaseInput[]) => Promise<{
3237
3364
  quest: string;
3238
- runtimeVersion: 1 | 2;
3365
+ runtimeVersion: 2 | 1;
3239
3366
  title: string;
3240
3367
  presentation: {
3241
3368
  quiz?: {
@@ -3374,7 +3501,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
3374
3501
  start: number;
3375
3502
  end?: number | undefined;
3376
3503
  };
3377
- enrollment: "required" | "none";
3504
+ enrollment: "none" | "required";
3378
3505
  posts: "after-enrollment" | "since-start";
3379
3506
  historical: "staff" | "automatic" | "claim";
3380
3507
  } | undefined;
@@ -3402,7 +3529,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
3402
3529
  actor?: "member" | "staff" | undefined;
3403
3530
  } | {
3404
3531
  kind: "manual";
3405
- input: "quiz" | "photo" | "none";
3532
+ input: "none" | "quiz" | "photo";
3406
3533
  actor?: "member" | "staff" | undefined;
3407
3534
  };
3408
3535
  requires: {
@@ -3418,10 +3545,10 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
3418
3545
  } | {
3419
3546
  kind: "keyed";
3420
3547
  };
3421
- visibility: "hidden" | "visible";
3548
+ visibility: "visible" | "hidden";
3422
3549
  budgets: {
3423
3550
  id: string;
3424
- scope: "member" | "project";
3551
+ scope: "project" | "member";
3425
3552
  period: "day" | "lifetime" | "week";
3426
3553
  limit: number;
3427
3554
  cost: number | {
@@ -3433,11 +3560,14 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
3433
3560
  id: string;
3434
3561
  createdAt: number;
3435
3562
  legacy: boolean;
3436
- lifecycle: "active" | "paused" | "archived";
3563
+ lifecycle: "paused" | "active" | "archived";
3437
3564
  performance?: {
3438
3565
  metrics: ("likes" | "replies" | "reposts" | "quotes" | "views" | "bookmarks")[];
3439
3566
  maxAgeMs: number;
3440
3567
  } | undefined;
3568
+ profile?: {
3569
+ visible: boolean;
3570
+ } | undefined;
3441
3571
  key?: string | undefined;
3442
3572
  origin?: {
3443
3573
  typeVersion: string;
@@ -3502,7 +3632,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
3502
3632
  start: number;
3503
3633
  end?: number | undefined;
3504
3634
  };
3505
- enrollment: "required" | "none";
3635
+ enrollment: "none" | "required";
3506
3636
  posts: "after-enrollment" | "since-start";
3507
3637
  historical: "staff" | "automatic" | "claim";
3508
3638
  } | undefined;
@@ -3530,12 +3660,12 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
3530
3660
  actor?: "member" | "staff" | undefined;
3531
3661
  } | {
3532
3662
  kind: "manual";
3533
- input: "quiz" | "photo" | "none";
3663
+ input: "none" | "quiz" | "photo";
3534
3664
  actor?: "member" | "staff" | undefined;
3535
3665
  };
3536
3666
  availability: {
3537
3667
  kind: "available";
3538
- input: "quiz" | "url" | "text" | "photo" | "none";
3668
+ input: "text" | "url" | "none" | "quiz" | "photo";
3539
3669
  } | {
3540
3670
  kind: "completed";
3541
3671
  } | {
@@ -3573,7 +3703,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
3573
3703
  kind: "keyed";
3574
3704
  };
3575
3705
  completionCount: number;
3576
- visibility: "hidden" | "visible";
3706
+ visibility: "visible" | "hidden";
3577
3707
  missing: {
3578
3708
  quest: string;
3579
3709
  title: string;
@@ -3584,7 +3714,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
3584
3714
  quest: string;
3585
3715
  member: string;
3586
3716
  evidence: string | null;
3587
- status: "needs-review" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected" | "failed";
3717
+ status: "needs-review" | "failed" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected";
3588
3718
  reason: string | null;
3589
3719
  retries: number;
3590
3720
  generation: number;
@@ -3618,17 +3748,17 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
3618
3748
  })[] | null;
3619
3749
  createdAt: number;
3620
3750
  input?: {
3621
- kind: "quiz";
3622
- answers: {
3623
- [k: string]: string;
3624
- };
3625
- release?: string | undefined;
3626
- } | {
3627
3751
  kind: "text";
3628
3752
  value: string;
3629
3753
  } | {
3630
3754
  kind: "url";
3631
3755
  value: string;
3756
+ } | {
3757
+ kind: "quiz";
3758
+ answers: {
3759
+ [k: string]: string;
3760
+ };
3761
+ release?: string | undefined;
3632
3762
  } | undefined;
3633
3763
  } | null;
3634
3764
  key?: string | undefined;
@@ -4010,14 +4140,14 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
4010
4140
  content: {
4011
4141
  performance: (input: zod.infer<typeof contentPerformanceQuerySchema>) => Promise<{
4012
4142
  current: {
4013
- state: "needs-review" | "pending" | "failed" | "superseded" | "qualified" | "unqualified" | "content-pending" | "content-unqualified" | "waiting";
4143
+ state: "pending" | "superseded" | "qualified" | "unqualified" | "needs-review" | "failed" | "content-pending" | "content-unqualified" | "waiting";
4014
4144
  reason: string | null;
4015
4145
  contentAttempt: string;
4016
4146
  attempt: string | null;
4017
4147
  reward: {
4018
4148
  attempt: string | null;
4019
4149
  completion: string | null;
4020
- state: "awarded" | "excluded" | "unresolved";
4150
+ state: "excluded" | "unresolved" | "awarded";
4021
4151
  };
4022
4152
  };
4023
4153
  items: {
@@ -4026,7 +4156,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
4026
4156
  observation: string;
4027
4157
  observedAt: number;
4028
4158
  metrics: Partial<Record<"likes" | "replies" | "reposts" | "quotes" | "views" | "bookmarks", number>>;
4029
- state: "needs-review" | "pending" | "failed" | "superseded" | "qualified" | "unqualified";
4159
+ state: "pending" | "superseded" | "qualified" | "unqualified" | "needs-review" | "failed";
4030
4160
  reason: string | null;
4031
4161
  }[];
4032
4162
  next: number | null;
@@ -4041,12 +4171,12 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
4041
4171
  revision: string;
4042
4172
  observation: string;
4043
4173
  current: boolean;
4044
- state: "needs-review" | "pending" | "failed" | "superseded" | "qualified" | "unqualified" | "stale" | "blocked" | "unavailable";
4174
+ state: "pending" | "superseded" | "qualified" | "unqualified" | "needs-review" | "failed" | "stale" | "blocked" | "unavailable";
4045
4175
  reason: string | null;
4046
4176
  reward: {
4047
4177
  attempt: string | null;
4048
4178
  completion: string | null;
4049
- state: "awarded" | "excluded" | "unresolved";
4179
+ state: "excluded" | "unresolved" | "awarded";
4050
4180
  };
4051
4181
  }[];
4052
4182
  next: number | null;
@@ -4056,7 +4186,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
4056
4186
  quest: string;
4057
4187
  content: string;
4058
4188
  release: string;
4059
- state: "pending" | "admitted" | "excluded";
4189
+ state: "admitted" | "pending" | "excluded";
4060
4190
  reason: string | null;
4061
4191
  attempt: string | null;
4062
4192
  }[];
@@ -4071,7 +4201,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
4071
4201
  quest: string;
4072
4202
  content: string;
4073
4203
  release: string;
4074
- state: "pending" | "admitted" | "excluded";
4204
+ state: "admitted" | "pending" | "excluded";
4075
4205
  reason: string | null;
4076
4206
  attempt: string | null;
4077
4207
  }>;
@@ -4082,7 +4212,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
4082
4212
  quest: string;
4083
4213
  member: string;
4084
4214
  evidence: string | null;
4085
- status: "needs-review" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected" | "failed";
4215
+ status: "needs-review" | "failed" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected";
4086
4216
  reason: string | null;
4087
4217
  retries: number;
4088
4218
  generation: number;
@@ -4116,17 +4246,17 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
4116
4246
  })[] | null;
4117
4247
  createdAt: number;
4118
4248
  input?: {
4119
- kind: "quiz";
4120
- answers: {
4121
- [k: string]: string;
4122
- };
4123
- release?: string | undefined;
4124
- } | {
4125
4249
  kind: "text";
4126
4250
  value: string;
4127
4251
  } | {
4128
4252
  kind: "url";
4129
4253
  value: string;
4254
+ } | {
4255
+ kind: "quiz";
4256
+ answers: {
4257
+ [k: string]: string;
4258
+ };
4259
+ release?: string | undefined;
4130
4260
  } | undefined;
4131
4261
  }>;
4132
4262
  retry: (id: string) => Promise<{
@@ -4135,7 +4265,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
4135
4265
  quest: string;
4136
4266
  member: string;
4137
4267
  evidence: string | null;
4138
- status: "needs-review" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected" | "failed";
4268
+ status: "needs-review" | "failed" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected";
4139
4269
  reason: string | null;
4140
4270
  retries: number;
4141
4271
  generation: number;
@@ -4169,17 +4299,17 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
4169
4299
  })[] | null;
4170
4300
  createdAt: number;
4171
4301
  input?: {
4172
- kind: "quiz";
4173
- answers: {
4174
- [k: string]: string;
4175
- };
4176
- release?: string | undefined;
4177
- } | {
4178
4302
  kind: "text";
4179
4303
  value: string;
4180
4304
  } | {
4181
4305
  kind: "url";
4182
4306
  value: string;
4307
+ } | {
4308
+ kind: "quiz";
4309
+ answers: {
4310
+ [k: string]: string;
4311
+ };
4312
+ release?: string | undefined;
4183
4313
  } | undefined;
4184
4314
  }>;
4185
4315
  decide: (id: string, input: {
@@ -4193,7 +4323,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
4193
4323
  quest: string;
4194
4324
  member: string;
4195
4325
  evidence: string | null;
4196
- status: "needs-review" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected" | "failed";
4326
+ status: "needs-review" | "failed" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected";
4197
4327
  reason: string | null;
4198
4328
  retries: number;
4199
4329
  generation: number;
@@ -4227,20 +4357,20 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
4227
4357
  })[] | null;
4228
4358
  createdAt: number;
4229
4359
  input?: {
4230
- kind: "quiz";
4231
- answers: {
4232
- [k: string]: string;
4233
- };
4234
- release?: string | undefined;
4235
- } | {
4236
4360
  kind: "text";
4237
4361
  value: string;
4238
4362
  } | {
4239
4363
  kind: "url";
4240
4364
  value: string;
4365
+ } | {
4366
+ kind: "quiz";
4367
+ answers: {
4368
+ [k: string]: string;
4369
+ };
4370
+ release?: string | undefined;
4241
4371
  } | undefined;
4242
4372
  }>;
4243
4373
  };
4244
4374
  declare function browserSubmissionStore(): SubmissionStore;
4245
4375
 
4246
- export { type DiscoveredWallet, type Eip1193Provider, type KeplrLike, type SolanaInjectedProvider, type StandardWallet, type StandardWalletAccount, browserSubmissionStore, cosmosSigner, createBrowserRelayClient, discoverCosmosWallets, discoverEvmWallets, discoverSolanaWallets, evmSigner, solanaSigner, walletStandardSolanaSigner };
4376
+ export { type CosmosChains, type DiscoveredWallet, type Eip1193Provider, type EmailSignInOption, type KeplrLike, type OAuthSignInOption, type SignInClient, type SignInIcon, type SignInMethods, type SignInOption, type SignInOptions, type SignInUnavailable, type SignInWallet, type SolanaInjectedProvider, type StandardWallet, type StandardWalletAccount, type WalletSignInOption, browserSubmissionStore, cosmosChainList, cosmosSigner, createBrowserRelayClient, discoverCosmosWallets, discoverEvmWallets, discoverSignInWallets, discoverSolanaWallets, evmSigner, signInOptions, solanaSigner, walletStandardSolanaSigner };