@domino-sdk/relay 0.26.0 → 0.28.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 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-Ckpb4sBv.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-D3t8WKOk.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, 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. */
@@ -46,6 +46,8 @@ type KeplrLike = {
46
46
  value: string;
47
47
  };
48
48
  }>;
49
+ /** Adds a chain the wallet does not know, after the user approves it. */
50
+ experimentalSuggestChain?(chainInfo: CosmosChain["chainInfo"]): Promise<void>;
49
51
  };
50
52
  /** A wallet found in the page, ready to pass to `relay.wallets.link`. */
51
53
  type DiscoveredWallet = {
@@ -64,16 +66,139 @@ declare function solanaSigner(provider: SolanaInjectedProvider, info?: {
64
66
  }): WalletSigner;
65
67
  /** Signs with a Wallet Standard wallet's `solana:signMessage` feature. */
66
68
  declare function walletStandardSolanaSigner(wallet: StandardWallet): WalletSigner;
67
- /** Signs an ADR-36 message with Keplr or a wallet that implements its API. */
68
- declare function cosmosSigner(provider: KeplrLike, network: CosmosNetwork, info?: {
69
+ /**
70
+ * Signs an ADR-36 message with Keplr or a wallet that implements its API, on the app's chain:
71
+ * `{ chainId, chainInfo? }` or `"cosmos:<chain ID>"`. When the wallet does not know the chain and
72
+ * `chainInfo` is given, it suggests the chain to the wallet (`experimentalSuggestChain`) and tries
73
+ * again; without `chainInfo`, or with a wallet that cannot add chains, it throws an error that
74
+ * names the chain. Other failures, such as a rejected request, pass through.
75
+ */
76
+ declare function cosmosSigner(provider: KeplrLike, chain: CosmosChain | CosmosNetwork, info?: {
69
77
  name?: string;
70
78
  }): WalletSigner;
71
79
  /** EIP-6963 wallets, or `window.ethereum` when none announce themselves within `timeoutMs`. */
72
80
  declare function discoverEvmWallets(timeoutMs?: number): Promise<DiscoveredWallet[]>;
73
81
  /** Wallet Standard wallets that can sign Solana messages, then legacy injected providers. */
74
82
  declare function discoverSolanaWallets(): DiscoveredWallet[];
75
- /** Keplr, Leap and Cosmostation, each signing on `network`. IDs end with the network's chain ID. */
76
- declare function discoverCosmosWallets(network: CosmosNetwork): DiscoveredWallet[];
83
+ /**
84
+ * Keplr, Leap and Cosmostation, each signing on the app's chain (see `cosmosSigner`). IDs end with
85
+ * the chain ID.
86
+ */
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>;
77
202
 
78
203
  /** Browser client with durable submission recovery; safe to construct during SSR. */
79
204
  declare function createBrowserRelayClient(options: Parameters<typeof createRelayClient>[0]): {
@@ -284,7 +409,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
284
409
  accounts: {
285
410
  id: string;
286
411
  program: string;
287
- kind: "fixed" | "milestone" | "bonus";
412
+ kind: "milestone" | "fixed" | "bonus";
288
413
  balance: string;
289
414
  earned: number;
290
415
  settled: number;
@@ -626,7 +751,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
626
751
  start: number;
627
752
  end?: number | undefined;
628
753
  };
629
- enrollment: "none" | "required";
754
+ enrollment: "required" | "none";
630
755
  posts: "after-enrollment" | "since-start";
631
756
  historical: "staff" | "automatic" | "claim";
632
757
  } | undefined;
@@ -654,12 +779,12 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
654
779
  actor?: "member" | "staff" | undefined;
655
780
  } | {
656
781
  kind: "manual";
657
- input: "none" | "quiz" | "photo";
782
+ input: "quiz" | "photo" | "none";
658
783
  actor?: "member" | "staff" | undefined;
659
784
  };
660
785
  availability: {
661
786
  kind: "available";
662
- input: "text" | "url" | "none" | "quiz" | "photo";
787
+ input: "quiz" | "url" | "text" | "photo" | "none";
663
788
  } | {
664
789
  kind: "completed";
665
790
  } | {
@@ -697,7 +822,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
697
822
  kind: "keyed";
698
823
  };
699
824
  completionCount: number;
700
- visibility: "visible" | "hidden";
825
+ visibility: "hidden" | "visible";
701
826
  missing: {
702
827
  quest: string;
703
828
  title: string;
@@ -708,7 +833,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
708
833
  quest: string;
709
834
  member: string;
710
835
  evidence: string | null;
711
- status: "needs-review" | "failed" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected";
836
+ status: "needs-review" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected" | "failed";
712
837
  reason: string | null;
713
838
  retries: number;
714
839
  generation: number;
@@ -742,22 +867,22 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
742
867
  })[] | null;
743
868
  createdAt: number;
744
869
  input?: {
745
- kind: "text";
746
- value: string;
747
- } | {
748
- kind: "url";
749
- value: string;
750
- } | {
751
870
  kind: "quiz";
752
871
  answers: {
753
872
  [k: string]: string;
754
873
  };
755
874
  release?: string | undefined;
875
+ } | {
876
+ kind: "text";
877
+ value: string;
878
+ } | {
879
+ kind: "url";
880
+ value: string;
756
881
  } | undefined;
757
882
  } | null;
758
883
  release: string;
759
- interaction: "staff" | "text" | "url" | "automatic" | "claim" | "quiz" | "photo";
760
- lifecycle: "paused" | "active" | "archived";
884
+ interaction: "quiz" | "url" | "text" | "staff" | "photo" | "automatic" | "claim";
885
+ lifecycle: "active" | "paused" | "archived";
761
886
  rewards: ({
762
887
  kind: "points";
763
888
  label: string;
@@ -818,7 +943,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
818
943
  quest: string;
819
944
  member: string;
820
945
  evidence: string | null;
821
- status: "needs-review" | "failed" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected";
946
+ status: "needs-review" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected" | "failed";
822
947
  reason: string | null;
823
948
  retries: number;
824
949
  generation: number;
@@ -852,17 +977,17 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
852
977
  })[] | null;
853
978
  createdAt: number;
854
979
  input?: {
855
- kind: "text";
856
- value: string;
857
- } | {
858
- kind: "url";
859
- value: string;
860
- } | {
861
980
  kind: "quiz";
862
981
  answers: {
863
982
  [k: string]: string;
864
983
  };
865
984
  release?: string | undefined;
985
+ } | {
986
+ kind: "text";
987
+ value: string;
988
+ } | {
989
+ kind: "url";
990
+ value: string;
866
991
  } | undefined;
867
992
  }>;
868
993
  experience: () => Promise<{
@@ -903,7 +1028,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
903
1028
  start: number;
904
1029
  end?: number | undefined;
905
1030
  };
906
- enrollment: "none" | "required";
1031
+ enrollment: "required" | "none";
907
1032
  posts: "after-enrollment" | "since-start";
908
1033
  historical: "staff" | "automatic" | "claim";
909
1034
  } | undefined;
@@ -931,12 +1056,12 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
931
1056
  actor?: "member" | "staff" | undefined;
932
1057
  } | {
933
1058
  kind: "manual";
934
- input: "none" | "quiz" | "photo";
1059
+ input: "quiz" | "photo" | "none";
935
1060
  actor?: "member" | "staff" | undefined;
936
1061
  };
937
1062
  availability: {
938
1063
  kind: "available";
939
- input: "text" | "url" | "none" | "quiz" | "photo";
1064
+ input: "quiz" | "url" | "text" | "photo" | "none";
940
1065
  } | {
941
1066
  kind: "completed";
942
1067
  } | {
@@ -974,7 +1099,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
974
1099
  kind: "keyed";
975
1100
  };
976
1101
  completionCount: number;
977
- visibility: "visible" | "hidden";
1102
+ visibility: "hidden" | "visible";
978
1103
  missing: {
979
1104
  quest: string;
980
1105
  title: string;
@@ -985,7 +1110,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
985
1110
  quest: string;
986
1111
  member: string;
987
1112
  evidence: string | null;
988
- status: "needs-review" | "failed" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected";
1113
+ status: "needs-review" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected" | "failed";
989
1114
  reason: string | null;
990
1115
  retries: number;
991
1116
  generation: number;
@@ -1019,22 +1144,22 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
1019
1144
  })[] | null;
1020
1145
  createdAt: number;
1021
1146
  input?: {
1022
- kind: "text";
1023
- value: string;
1024
- } | {
1025
- kind: "url";
1026
- value: string;
1027
- } | {
1028
1147
  kind: "quiz";
1029
1148
  answers: {
1030
1149
  [k: string]: string;
1031
1150
  };
1032
1151
  release?: string | undefined;
1152
+ } | {
1153
+ kind: "text";
1154
+ value: string;
1155
+ } | {
1156
+ kind: "url";
1157
+ value: string;
1033
1158
  } | undefined;
1034
1159
  } | null;
1035
1160
  release: string;
1036
- interaction: "staff" | "text" | "url" | "automatic" | "claim" | "quiz" | "photo";
1037
- lifecycle: "paused" | "active" | "archived";
1161
+ interaction: "quiz" | "url" | "text" | "staff" | "photo" | "automatic" | "claim";
1162
+ lifecycle: "active" | "paused" | "archived";
1038
1163
  rewards: ({
1039
1164
  kind: "points";
1040
1165
  label: string;
@@ -1128,7 +1253,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
1128
1253
  start: number;
1129
1254
  end?: number | undefined;
1130
1255
  };
1131
- enrollment: "none" | "required";
1256
+ enrollment: "required" | "none";
1132
1257
  posts: "after-enrollment" | "since-start";
1133
1258
  historical: "staff" | "automatic" | "claim";
1134
1259
  } | undefined;
@@ -1156,12 +1281,12 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
1156
1281
  actor?: "member" | "staff" | undefined;
1157
1282
  } | {
1158
1283
  kind: "manual";
1159
- input: "none" | "quiz" | "photo";
1284
+ input: "quiz" | "photo" | "none";
1160
1285
  actor?: "member" | "staff" | undefined;
1161
1286
  };
1162
1287
  availability: {
1163
1288
  kind: "available";
1164
- input: "text" | "url" | "none" | "quiz" | "photo";
1289
+ input: "quiz" | "url" | "text" | "photo" | "none";
1165
1290
  } | {
1166
1291
  kind: "completed";
1167
1292
  } | {
@@ -1199,7 +1324,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
1199
1324
  kind: "keyed";
1200
1325
  };
1201
1326
  completionCount: number;
1202
- visibility: "visible" | "hidden";
1327
+ visibility: "hidden" | "visible";
1203
1328
  missing: {
1204
1329
  quest: string;
1205
1330
  title: string;
@@ -1210,7 +1335,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
1210
1335
  quest: string;
1211
1336
  member: string;
1212
1337
  evidence: string | null;
1213
- status: "needs-review" | "failed" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected";
1338
+ status: "needs-review" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected" | "failed";
1214
1339
  reason: string | null;
1215
1340
  retries: number;
1216
1341
  generation: number;
@@ -1244,22 +1369,22 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
1244
1369
  })[] | null;
1245
1370
  createdAt: number;
1246
1371
  input?: {
1247
- kind: "text";
1248
- value: string;
1249
- } | {
1250
- kind: "url";
1251
- value: string;
1252
- } | {
1253
1372
  kind: "quiz";
1254
1373
  answers: {
1255
1374
  [k: string]: string;
1256
1375
  };
1257
1376
  release?: string | undefined;
1377
+ } | {
1378
+ kind: "text";
1379
+ value: string;
1380
+ } | {
1381
+ kind: "url";
1382
+ value: string;
1258
1383
  } | undefined;
1259
1384
  } | null;
1260
1385
  release: string;
1261
- interaction: "staff" | "text" | "url" | "automatic" | "claim" | "quiz" | "photo";
1262
- lifecycle: "paused" | "active" | "archived";
1386
+ interaction: "quiz" | "url" | "text" | "staff" | "photo" | "automatic" | "claim";
1387
+ lifecycle: "active" | "paused" | "archived";
1263
1388
  rewards: ({
1264
1389
  kind: "points";
1265
1390
  label: string;
@@ -1356,7 +1481,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
1356
1481
  start: number;
1357
1482
  end?: number | undefined;
1358
1483
  };
1359
- enrollment: "none" | "required";
1484
+ enrollment: "required" | "none";
1360
1485
  posts: "after-enrollment" | "since-start";
1361
1486
  historical: "staff" | "automatic" | "claim";
1362
1487
  } | undefined;
@@ -1384,12 +1509,12 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
1384
1509
  actor?: "member" | "staff" | undefined;
1385
1510
  } | {
1386
1511
  kind: "manual";
1387
- input: "none" | "quiz" | "photo";
1512
+ input: "quiz" | "photo" | "none";
1388
1513
  actor?: "member" | "staff" | undefined;
1389
1514
  };
1390
1515
  availability: {
1391
1516
  kind: "available";
1392
- input: "text" | "url" | "none" | "quiz" | "photo";
1517
+ input: "quiz" | "url" | "text" | "photo" | "none";
1393
1518
  } | {
1394
1519
  kind: "completed";
1395
1520
  } | {
@@ -1427,7 +1552,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
1427
1552
  kind: "keyed";
1428
1553
  };
1429
1554
  completionCount: number;
1430
- visibility: "visible" | "hidden";
1555
+ visibility: "hidden" | "visible";
1431
1556
  missing: {
1432
1557
  quest: string;
1433
1558
  title: string;
@@ -1438,7 +1563,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
1438
1563
  quest: string;
1439
1564
  member: string;
1440
1565
  evidence: string | null;
1441
- status: "needs-review" | "failed" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected";
1566
+ status: "needs-review" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected" | "failed";
1442
1567
  reason: string | null;
1443
1568
  retries: number;
1444
1569
  generation: number;
@@ -1472,22 +1597,22 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
1472
1597
  })[] | null;
1473
1598
  createdAt: number;
1474
1599
  input?: {
1475
- kind: "text";
1476
- value: string;
1477
- } | {
1478
- kind: "url";
1479
- value: string;
1480
- } | {
1481
1600
  kind: "quiz";
1482
1601
  answers: {
1483
1602
  [k: string]: string;
1484
1603
  };
1485
1604
  release?: string | undefined;
1605
+ } | {
1606
+ kind: "text";
1607
+ value: string;
1608
+ } | {
1609
+ kind: "url";
1610
+ value: string;
1486
1611
  } | undefined;
1487
1612
  } | null;
1488
1613
  release: string;
1489
- interaction: "staff" | "text" | "url" | "automatic" | "claim" | "quiz" | "photo";
1490
- lifecycle: "paused" | "active" | "archived";
1614
+ interaction: "quiz" | "url" | "text" | "staff" | "photo" | "automatic" | "claim";
1615
+ lifecycle: "active" | "paused" | "archived";
1491
1616
  rewards: ({
1492
1617
  kind: "points";
1493
1618
  label: string;
@@ -1553,7 +1678,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
1553
1678
  wallets: {
1554
1679
  list: () => Promise<{
1555
1680
  chain: "solana" | "eip155" | "cosmos";
1556
- network: "cosmos:pio-mainnet-1" | "cosmos:pio-testnet-1" | null;
1681
+ network: `cosmos:${string}` | null;
1557
1682
  address: string;
1558
1683
  verifiedAt: number;
1559
1684
  revision: number;
@@ -1563,14 +1688,14 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
1563
1688
  id: string;
1564
1689
  purpose: "link" | "sign-in";
1565
1690
  chain: "solana" | "eip155" | "cosmos";
1566
- network: "cosmos:pio-mainnet-1" | "cosmos:pio-testnet-1" | null;
1691
+ network: `cosmos:${string}` | null;
1567
1692
  address: string;
1568
1693
  message: string;
1569
1694
  expiresAt: number;
1570
1695
  }>;
1571
1696
  verify: (input: zod.input<typeof walletSignatureSchema>, session: string) => Promise<{
1572
1697
  chain: "solana" | "eip155" | "cosmos";
1573
- network: "cosmos:pio-mainnet-1" | "cosmos:pio-testnet-1" | null;
1698
+ network: `cosmos:${string}` | null;
1574
1699
  address: string;
1575
1700
  verifiedAt: number;
1576
1701
  revision: number;
@@ -1581,7 +1706,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
1581
1706
  }>;
1582
1707
  link: (signer: WalletSigner) => Promise<{
1583
1708
  chain: "solana" | "eip155" | "cosmos";
1584
- network: "cosmos:pio-mainnet-1" | "cosmos:pio-testnet-1" | null;
1709
+ network: `cosmos:${string}` | null;
1585
1710
  address: string;
1586
1711
  verifiedAt: number;
1587
1712
  revision: number;
@@ -1616,7 +1741,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
1616
1741
  configured: boolean;
1617
1742
  }[];
1618
1743
  email: boolean;
1619
- wallets: ("solana" | "eip155" | "cosmos:pio-mainnet-1" | "cosmos:pio-testnet-1")[];
1744
+ wallets: ("solana" | "eip155" | "cosmos")[];
1620
1745
  demo: boolean;
1621
1746
  }>;
1622
1747
  start: (provider: AuthProvider, mode: "sign-in" | "connect") => Promise<{
@@ -1647,7 +1772,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
1647
1772
  id: string;
1648
1773
  purpose: "link" | "sign-in";
1649
1774
  chain: "solana" | "eip155" | "cosmos";
1650
- network: "cosmos:pio-mainnet-1" | "cosmos:pio-testnet-1" | null;
1775
+ network: `cosmos:${string}` | null;
1651
1776
  address: string;
1652
1777
  message: string;
1653
1778
  expiresAt: number;
@@ -1789,7 +1914,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
1789
1914
  quest: string;
1790
1915
  member: string;
1791
1916
  evidence: string | null;
1792
- status: "needs-review" | "failed" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected";
1917
+ status: "needs-review" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected" | "failed";
1793
1918
  reason: string | null;
1794
1919
  retries: number;
1795
1920
  generation: number;
@@ -1823,17 +1948,17 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
1823
1948
  })[] | null;
1824
1949
  createdAt: number;
1825
1950
  input?: {
1826
- kind: "text";
1827
- value: string;
1828
- } | {
1829
- kind: "url";
1830
- value: string;
1831
- } | {
1832
1951
  kind: "quiz";
1833
1952
  answers: {
1834
1953
  [k: string]: string;
1835
1954
  };
1836
1955
  release?: string | undefined;
1956
+ } | {
1957
+ kind: "text";
1958
+ value: string;
1959
+ } | {
1960
+ kind: "url";
1961
+ value: string;
1837
1962
  } | undefined;
1838
1963
  }>;
1839
1964
  progress: () => Promise<{
@@ -1874,7 +1999,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
1874
1999
  start: number;
1875
2000
  end?: number | undefined;
1876
2001
  };
1877
- enrollment: "none" | "required";
2002
+ enrollment: "required" | "none";
1878
2003
  posts: "after-enrollment" | "since-start";
1879
2004
  historical: "staff" | "automatic" | "claim";
1880
2005
  } | undefined;
@@ -1902,12 +2027,12 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
1902
2027
  actor?: "member" | "staff" | undefined;
1903
2028
  } | {
1904
2029
  kind: "manual";
1905
- input: "none" | "quiz" | "photo";
2030
+ input: "quiz" | "photo" | "none";
1906
2031
  actor?: "member" | "staff" | undefined;
1907
2032
  };
1908
2033
  availability: {
1909
2034
  kind: "available";
1910
- input: "text" | "url" | "none" | "quiz" | "photo";
2035
+ input: "quiz" | "url" | "text" | "photo" | "none";
1911
2036
  } | {
1912
2037
  kind: "completed";
1913
2038
  } | {
@@ -1945,7 +2070,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
1945
2070
  kind: "keyed";
1946
2071
  };
1947
2072
  completionCount: number;
1948
- visibility: "visible" | "hidden";
2073
+ visibility: "hidden" | "visible";
1949
2074
  missing: {
1950
2075
  quest: string;
1951
2076
  title: string;
@@ -1956,7 +2081,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
1956
2081
  quest: string;
1957
2082
  member: string;
1958
2083
  evidence: string | null;
1959
- status: "needs-review" | "failed" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected";
2084
+ status: "needs-review" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected" | "failed";
1960
2085
  reason: string | null;
1961
2086
  retries: number;
1962
2087
  generation: number;
@@ -1990,17 +2115,17 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
1990
2115
  })[] | null;
1991
2116
  createdAt: number;
1992
2117
  input?: {
1993
- kind: "text";
1994
- value: string;
1995
- } | {
1996
- kind: "url";
1997
- value: string;
1998
- } | {
1999
2118
  kind: "quiz";
2000
2119
  answers: {
2001
2120
  [k: string]: string;
2002
2121
  };
2003
2122
  release?: string | undefined;
2123
+ } | {
2124
+ kind: "text";
2125
+ value: string;
2126
+ } | {
2127
+ kind: "url";
2128
+ value: string;
2004
2129
  } | undefined;
2005
2130
  } | null;
2006
2131
  key?: string | undefined;
@@ -2139,7 +2264,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
2139
2264
  quest: string;
2140
2265
  member: string;
2141
2266
  evidence: string | null;
2142
- status: "needs-review" | "failed" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected";
2267
+ status: "needs-review" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected" | "failed";
2143
2268
  reason: string | null;
2144
2269
  retries: number;
2145
2270
  generation: number;
@@ -2173,17 +2298,17 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
2173
2298
  })[] | null;
2174
2299
  createdAt: number;
2175
2300
  input?: {
2176
- kind: "text";
2177
- value: string;
2178
- } | {
2179
- kind: "url";
2180
- value: string;
2181
- } | {
2182
2301
  kind: "quiz";
2183
2302
  answers: {
2184
2303
  [k: string]: string;
2185
2304
  };
2186
2305
  release?: string | undefined;
2306
+ } | {
2307
+ kind: "text";
2308
+ value: string;
2309
+ } | {
2310
+ kind: "url";
2311
+ value: string;
2187
2312
  } | undefined;
2188
2313
  }>;
2189
2314
  upload: (file: File) => Promise<{
@@ -2205,7 +2330,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
2205
2330
  code: string;
2206
2331
  definition: {
2207
2332
  quest: string;
2208
- runtimeVersion: 2 | 1;
2333
+ runtimeVersion: 1 | 2;
2209
2334
  title: string;
2210
2335
  presentation: {
2211
2336
  quiz?: {
@@ -2344,7 +2469,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
2344
2469
  start: number;
2345
2470
  end?: number | undefined;
2346
2471
  };
2347
- enrollment: "none" | "required";
2472
+ enrollment: "required" | "none";
2348
2473
  posts: "after-enrollment" | "since-start";
2349
2474
  historical: "staff" | "automatic" | "claim";
2350
2475
  } | undefined;
@@ -2372,7 +2497,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
2372
2497
  actor?: "member" | "staff" | undefined;
2373
2498
  } | {
2374
2499
  kind: "manual";
2375
- input: "none" | "quiz" | "photo";
2500
+ input: "quiz" | "photo" | "none";
2376
2501
  actor?: "member" | "staff" | undefined;
2377
2502
  };
2378
2503
  requires: {
@@ -2388,10 +2513,10 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
2388
2513
  } | {
2389
2514
  kind: "keyed";
2390
2515
  };
2391
- visibility: "visible" | "hidden";
2516
+ visibility: "hidden" | "visible";
2392
2517
  budgets: {
2393
2518
  id: string;
2394
- scope: "project" | "member";
2519
+ scope: "member" | "project";
2395
2520
  period: "day" | "lifetime" | "week";
2396
2521
  limit: number;
2397
2522
  cost: number | {
@@ -2408,7 +2533,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
2408
2533
  code: string;
2409
2534
  definition: {
2410
2535
  quest: string;
2411
- runtimeVersion: 2 | 1;
2536
+ runtimeVersion: 1 | 2;
2412
2537
  title: string;
2413
2538
  presentation: {
2414
2539
  quiz?: {
@@ -2547,7 +2672,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
2547
2672
  start: number;
2548
2673
  end?: number | undefined;
2549
2674
  };
2550
- enrollment: "none" | "required";
2675
+ enrollment: "required" | "none";
2551
2676
  posts: "after-enrollment" | "since-start";
2552
2677
  historical: "staff" | "automatic" | "claim";
2553
2678
  } | undefined;
@@ -2575,7 +2700,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
2575
2700
  actor?: "member" | "staff" | undefined;
2576
2701
  } | {
2577
2702
  kind: "manual";
2578
- input: "none" | "quiz" | "photo";
2703
+ input: "quiz" | "photo" | "none";
2579
2704
  actor?: "member" | "staff" | undefined;
2580
2705
  };
2581
2706
  requires: {
@@ -2591,10 +2716,10 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
2591
2716
  } | {
2592
2717
  kind: "keyed";
2593
2718
  };
2594
- visibility: "visible" | "hidden";
2719
+ visibility: "hidden" | "visible";
2595
2720
  budgets: {
2596
2721
  id: string;
2597
- scope: "project" | "member";
2722
+ scope: "member" | "project";
2598
2723
  period: "day" | "lifetime" | "week";
2599
2724
  limit: number;
2600
2725
  cost: number | {
@@ -2610,7 +2735,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
2610
2735
  snapshot: () => Promise<{
2611
2736
  releases: {
2612
2737
  quest: string;
2613
- runtimeVersion: 2 | 1;
2738
+ runtimeVersion: 1 | 2;
2614
2739
  title: string;
2615
2740
  presentation: {
2616
2741
  quiz?: {
@@ -2749,7 +2874,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
2749
2874
  start: number;
2750
2875
  end?: number | undefined;
2751
2876
  };
2752
- enrollment: "none" | "required";
2877
+ enrollment: "required" | "none";
2753
2878
  posts: "after-enrollment" | "since-start";
2754
2879
  historical: "staff" | "automatic" | "claim";
2755
2880
  } | undefined;
@@ -2777,7 +2902,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
2777
2902
  actor?: "member" | "staff" | undefined;
2778
2903
  } | {
2779
2904
  kind: "manual";
2780
- input: "none" | "quiz" | "photo";
2905
+ input: "quiz" | "photo" | "none";
2781
2906
  actor?: "member" | "staff" | undefined;
2782
2907
  };
2783
2908
  requires: {
@@ -2793,10 +2918,10 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
2793
2918
  } | {
2794
2919
  kind: "keyed";
2795
2920
  };
2796
- visibility: "visible" | "hidden";
2921
+ visibility: "hidden" | "visible";
2797
2922
  budgets: {
2798
2923
  id: string;
2799
- scope: "project" | "member";
2924
+ scope: "member" | "project";
2800
2925
  period: "day" | "lifetime" | "week";
2801
2926
  limit: number;
2802
2927
  cost: number | {
@@ -2808,7 +2933,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
2808
2933
  id: string;
2809
2934
  createdAt: number;
2810
2935
  legacy: boolean;
2811
- lifecycle: "paused" | "active" | "archived";
2936
+ lifecycle: "active" | "paused" | "archived";
2812
2937
  performance?: {
2813
2938
  metrics: ("likes" | "replies" | "reposts" | "quotes" | "views" | "bookmarks")[];
2814
2939
  maxAgeMs: number;
@@ -2928,7 +3053,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
2928
3053
  quest: string;
2929
3054
  member: string;
2930
3055
  evidence: string | null;
2931
- status: "needs-review" | "failed" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected";
3056
+ status: "needs-review" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected" | "failed";
2932
3057
  reason: string | null;
2933
3058
  retries: number;
2934
3059
  generation: number;
@@ -2962,17 +3087,17 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
2962
3087
  })[] | null;
2963
3088
  createdAt: number;
2964
3089
  input?: {
2965
- kind: "text";
2966
- value: string;
2967
- } | {
2968
- kind: "url";
2969
- value: string;
2970
- } | {
2971
3090
  kind: "quiz";
2972
3091
  answers: {
2973
3092
  [k: string]: string;
2974
3093
  };
2975
3094
  release?: string | undefined;
3095
+ } | {
3096
+ kind: "text";
3097
+ value: string;
3098
+ } | {
3099
+ kind: "url";
3100
+ value: string;
2976
3101
  } | undefined;
2977
3102
  }[];
2978
3103
  balances: {
@@ -2993,7 +3118,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
2993
3118
  }>;
2994
3119
  publish: (release: ReleaseInput) => Promise<{
2995
3120
  quest: string;
2996
- runtimeVersion: 2 | 1;
3121
+ runtimeVersion: 1 | 2;
2997
3122
  title: string;
2998
3123
  presentation: {
2999
3124
  quiz?: {
@@ -3132,7 +3257,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
3132
3257
  start: number;
3133
3258
  end?: number | undefined;
3134
3259
  };
3135
- enrollment: "none" | "required";
3260
+ enrollment: "required" | "none";
3136
3261
  posts: "after-enrollment" | "since-start";
3137
3262
  historical: "staff" | "automatic" | "claim";
3138
3263
  } | undefined;
@@ -3160,7 +3285,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
3160
3285
  actor?: "member" | "staff" | undefined;
3161
3286
  } | {
3162
3287
  kind: "manual";
3163
- input: "none" | "quiz" | "photo";
3288
+ input: "quiz" | "photo" | "none";
3164
3289
  actor?: "member" | "staff" | undefined;
3165
3290
  };
3166
3291
  requires: {
@@ -3176,10 +3301,10 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
3176
3301
  } | {
3177
3302
  kind: "keyed";
3178
3303
  };
3179
- visibility: "visible" | "hidden";
3304
+ visibility: "hidden" | "visible";
3180
3305
  budgets: {
3181
3306
  id: string;
3182
- scope: "project" | "member";
3307
+ scope: "member" | "project";
3183
3308
  period: "day" | "lifetime" | "week";
3184
3309
  limit: number;
3185
3310
  cost: number | {
@@ -3191,7 +3316,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
3191
3316
  id: string;
3192
3317
  createdAt: number;
3193
3318
  legacy: boolean;
3194
- lifecycle: "paused" | "active" | "archived";
3319
+ lifecycle: "active" | "paused" | "archived";
3195
3320
  performance?: {
3196
3321
  metrics: ("likes" | "replies" | "reposts" | "quotes" | "views" | "bookmarks")[];
3197
3322
  maxAgeMs: number;
@@ -3224,7 +3349,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
3224
3349
  }>;
3225
3350
  publishBatch: (releases: ReleaseInput[]) => Promise<{
3226
3351
  quest: string;
3227
- runtimeVersion: 2 | 1;
3352
+ runtimeVersion: 1 | 2;
3228
3353
  title: string;
3229
3354
  presentation: {
3230
3355
  quiz?: {
@@ -3363,7 +3488,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
3363
3488
  start: number;
3364
3489
  end?: number | undefined;
3365
3490
  };
3366
- enrollment: "none" | "required";
3491
+ enrollment: "required" | "none";
3367
3492
  posts: "after-enrollment" | "since-start";
3368
3493
  historical: "staff" | "automatic" | "claim";
3369
3494
  } | undefined;
@@ -3391,7 +3516,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
3391
3516
  actor?: "member" | "staff" | undefined;
3392
3517
  } | {
3393
3518
  kind: "manual";
3394
- input: "none" | "quiz" | "photo";
3519
+ input: "quiz" | "photo" | "none";
3395
3520
  actor?: "member" | "staff" | undefined;
3396
3521
  };
3397
3522
  requires: {
@@ -3407,10 +3532,10 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
3407
3532
  } | {
3408
3533
  kind: "keyed";
3409
3534
  };
3410
- visibility: "visible" | "hidden";
3535
+ visibility: "hidden" | "visible";
3411
3536
  budgets: {
3412
3537
  id: string;
3413
- scope: "project" | "member";
3538
+ scope: "member" | "project";
3414
3539
  period: "day" | "lifetime" | "week";
3415
3540
  limit: number;
3416
3541
  cost: number | {
@@ -3422,7 +3547,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
3422
3547
  id: string;
3423
3548
  createdAt: number;
3424
3549
  legacy: boolean;
3425
- lifecycle: "paused" | "active" | "archived";
3550
+ lifecycle: "active" | "paused" | "archived";
3426
3551
  performance?: {
3427
3552
  metrics: ("likes" | "replies" | "reposts" | "quotes" | "views" | "bookmarks")[];
3428
3553
  maxAgeMs: number;
@@ -3491,7 +3616,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
3491
3616
  start: number;
3492
3617
  end?: number | undefined;
3493
3618
  };
3494
- enrollment: "none" | "required";
3619
+ enrollment: "required" | "none";
3495
3620
  posts: "after-enrollment" | "since-start";
3496
3621
  historical: "staff" | "automatic" | "claim";
3497
3622
  } | undefined;
@@ -3519,12 +3644,12 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
3519
3644
  actor?: "member" | "staff" | undefined;
3520
3645
  } | {
3521
3646
  kind: "manual";
3522
- input: "none" | "quiz" | "photo";
3647
+ input: "quiz" | "photo" | "none";
3523
3648
  actor?: "member" | "staff" | undefined;
3524
3649
  };
3525
3650
  availability: {
3526
3651
  kind: "available";
3527
- input: "text" | "url" | "none" | "quiz" | "photo";
3652
+ input: "quiz" | "url" | "text" | "photo" | "none";
3528
3653
  } | {
3529
3654
  kind: "completed";
3530
3655
  } | {
@@ -3562,7 +3687,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
3562
3687
  kind: "keyed";
3563
3688
  };
3564
3689
  completionCount: number;
3565
- visibility: "visible" | "hidden";
3690
+ visibility: "hidden" | "visible";
3566
3691
  missing: {
3567
3692
  quest: string;
3568
3693
  title: string;
@@ -3573,7 +3698,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
3573
3698
  quest: string;
3574
3699
  member: string;
3575
3700
  evidence: string | null;
3576
- status: "needs-review" | "failed" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected";
3701
+ status: "needs-review" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected" | "failed";
3577
3702
  reason: string | null;
3578
3703
  retries: number;
3579
3704
  generation: number;
@@ -3607,17 +3732,17 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
3607
3732
  })[] | null;
3608
3733
  createdAt: number;
3609
3734
  input?: {
3610
- kind: "text";
3611
- value: string;
3612
- } | {
3613
- kind: "url";
3614
- value: string;
3615
- } | {
3616
3735
  kind: "quiz";
3617
3736
  answers: {
3618
3737
  [k: string]: string;
3619
3738
  };
3620
3739
  release?: string | undefined;
3740
+ } | {
3741
+ kind: "text";
3742
+ value: string;
3743
+ } | {
3744
+ kind: "url";
3745
+ value: string;
3621
3746
  } | undefined;
3622
3747
  } | null;
3623
3748
  key?: string | undefined;
@@ -3999,14 +4124,14 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
3999
4124
  content: {
4000
4125
  performance: (input: zod.infer<typeof contentPerformanceQuerySchema>) => Promise<{
4001
4126
  current: {
4002
- state: "pending" | "superseded" | "qualified" | "unqualified" | "needs-review" | "failed" | "content-pending" | "content-unqualified" | "waiting";
4127
+ state: "needs-review" | "pending" | "failed" | "superseded" | "qualified" | "unqualified" | "content-pending" | "content-unqualified" | "waiting";
4003
4128
  reason: string | null;
4004
4129
  contentAttempt: string;
4005
4130
  attempt: string | null;
4006
4131
  reward: {
4007
4132
  attempt: string | null;
4008
4133
  completion: string | null;
4009
- state: "excluded" | "unresolved" | "awarded";
4134
+ state: "awarded" | "excluded" | "unresolved";
4010
4135
  };
4011
4136
  };
4012
4137
  items: {
@@ -4015,7 +4140,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
4015
4140
  observation: string;
4016
4141
  observedAt: number;
4017
4142
  metrics: Partial<Record<"likes" | "replies" | "reposts" | "quotes" | "views" | "bookmarks", number>>;
4018
- state: "pending" | "superseded" | "qualified" | "unqualified" | "needs-review" | "failed";
4143
+ state: "needs-review" | "pending" | "failed" | "superseded" | "qualified" | "unqualified";
4019
4144
  reason: string | null;
4020
4145
  }[];
4021
4146
  next: number | null;
@@ -4030,12 +4155,12 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
4030
4155
  revision: string;
4031
4156
  observation: string;
4032
4157
  current: boolean;
4033
- state: "pending" | "superseded" | "qualified" | "unqualified" | "needs-review" | "failed" | "stale" | "blocked" | "unavailable";
4158
+ state: "needs-review" | "pending" | "failed" | "superseded" | "qualified" | "unqualified" | "stale" | "blocked" | "unavailable";
4034
4159
  reason: string | null;
4035
4160
  reward: {
4036
4161
  attempt: string | null;
4037
4162
  completion: string | null;
4038
- state: "excluded" | "unresolved" | "awarded";
4163
+ state: "awarded" | "excluded" | "unresolved";
4039
4164
  };
4040
4165
  }[];
4041
4166
  next: number | null;
@@ -4045,7 +4170,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
4045
4170
  quest: string;
4046
4171
  content: string;
4047
4172
  release: string;
4048
- state: "admitted" | "pending" | "excluded";
4173
+ state: "pending" | "admitted" | "excluded";
4049
4174
  reason: string | null;
4050
4175
  attempt: string | null;
4051
4176
  }[];
@@ -4060,7 +4185,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
4060
4185
  quest: string;
4061
4186
  content: string;
4062
4187
  release: string;
4063
- state: "admitted" | "pending" | "excluded";
4188
+ state: "pending" | "admitted" | "excluded";
4064
4189
  reason: string | null;
4065
4190
  attempt: string | null;
4066
4191
  }>;
@@ -4071,7 +4196,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
4071
4196
  quest: string;
4072
4197
  member: string;
4073
4198
  evidence: string | null;
4074
- status: "needs-review" | "failed" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected";
4199
+ status: "needs-review" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected" | "failed";
4075
4200
  reason: string | null;
4076
4201
  retries: number;
4077
4202
  generation: number;
@@ -4105,17 +4230,17 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
4105
4230
  })[] | null;
4106
4231
  createdAt: number;
4107
4232
  input?: {
4108
- kind: "text";
4109
- value: string;
4110
- } | {
4111
- kind: "url";
4112
- value: string;
4113
- } | {
4114
4233
  kind: "quiz";
4115
4234
  answers: {
4116
4235
  [k: string]: string;
4117
4236
  };
4118
4237
  release?: string | undefined;
4238
+ } | {
4239
+ kind: "text";
4240
+ value: string;
4241
+ } | {
4242
+ kind: "url";
4243
+ value: string;
4119
4244
  } | undefined;
4120
4245
  }>;
4121
4246
  retry: (id: string) => Promise<{
@@ -4124,7 +4249,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
4124
4249
  quest: string;
4125
4250
  member: string;
4126
4251
  evidence: string | null;
4127
- status: "needs-review" | "failed" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected";
4252
+ status: "needs-review" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected" | "failed";
4128
4253
  reason: string | null;
4129
4254
  retries: number;
4130
4255
  generation: number;
@@ -4158,17 +4283,17 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
4158
4283
  })[] | null;
4159
4284
  createdAt: number;
4160
4285
  input?: {
4161
- kind: "text";
4162
- value: string;
4163
- } | {
4164
- kind: "url";
4165
- value: string;
4166
- } | {
4167
4286
  kind: "quiz";
4168
4287
  answers: {
4169
4288
  [k: string]: string;
4170
4289
  };
4171
4290
  release?: string | undefined;
4291
+ } | {
4292
+ kind: "text";
4293
+ value: string;
4294
+ } | {
4295
+ kind: "url";
4296
+ value: string;
4172
4297
  } | undefined;
4173
4298
  }>;
4174
4299
  decide: (id: string, input: {
@@ -4182,7 +4307,7 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
4182
4307
  quest: string;
4183
4308
  member: string;
4184
4309
  evidence: string | null;
4185
- status: "needs-review" | "failed" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected";
4310
+ status: "needs-review" | "queued" | "evaluating" | "accepted" | "progressed" | "rejected" | "failed";
4186
4311
  reason: string | null;
4187
4312
  retries: number;
4188
4313
  generation: number;
@@ -4216,20 +4341,20 @@ declare function createBrowserRelayClient(options: Parameters<typeof createRelay
4216
4341
  })[] | null;
4217
4342
  createdAt: number;
4218
4343
  input?: {
4219
- kind: "text";
4220
- value: string;
4221
- } | {
4222
- kind: "url";
4223
- value: string;
4224
- } | {
4225
4344
  kind: "quiz";
4226
4345
  answers: {
4227
4346
  [k: string]: string;
4228
4347
  };
4229
4348
  release?: string | undefined;
4349
+ } | {
4350
+ kind: "text";
4351
+ value: string;
4352
+ } | {
4353
+ kind: "url";
4354
+ value: string;
4230
4355
  } | undefined;
4231
4356
  }>;
4232
4357
  };
4233
4358
  declare function browserSubmissionStore(): SubmissionStore;
4234
4359
 
4235
- export { type DiscoveredWallet, type Eip1193Provider, type KeplrLike, type SolanaInjectedProvider, type StandardWallet, type StandardWalletAccount, browserSubmissionStore, cosmosSigner, createBrowserRelayClient, discoverCosmosWallets, discoverEvmWallets, discoverSolanaWallets, evmSigner, solanaSigner, walletStandardSolanaSigner };
4360
+ 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 };