accounts 0.14.0 → 0.14.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/core/AccessKey.d.ts +1 -1
  3. package/dist/core/AccessKey.d.ts.map +1 -1
  4. package/dist/core/Adapter.d.ts +2 -2
  5. package/dist/core/Adapter.d.ts.map +1 -1
  6. package/dist/core/Provider.d.ts.map +1 -1
  7. package/dist/core/Provider.js +3 -0
  8. package/dist/core/Provider.js.map +1 -1
  9. package/dist/core/Schema.d.ts +14 -0
  10. package/dist/core/Schema.d.ts.map +1 -1
  11. package/dist/core/adapters/privy.d.ts.map +1 -1
  12. package/dist/core/adapters/privy.js +112 -155
  13. package/dist/core/adapters/privy.js.map +1 -1
  14. package/dist/core/zod/rpc.d.ts +67 -4
  15. package/dist/core/zod/rpc.d.ts.map +1 -1
  16. package/dist/core/zod/rpc.js +9 -4
  17. package/dist/core/zod/rpc.js.map +1 -1
  18. package/dist/react-native/adapter.d.ts.map +1 -1
  19. package/dist/react-native/adapter.js +3 -0
  20. package/dist/react-native/adapter.js.map +1 -1
  21. package/dist/server/CliAuth.d.ts +11 -0
  22. package/dist/server/CliAuth.d.ts.map +1 -1
  23. package/dist/server/CliAuth.js +1 -0
  24. package/dist/server/CliAuth.js.map +1 -1
  25. package/package.json +1 -1
  26. package/src/cli/Provider.localnet.test.ts +46 -2
  27. package/src/core/AccessKey.ts +1 -1
  28. package/src/core/Adapter.ts +2 -2
  29. package/src/core/Provider.ts +3 -0
  30. package/src/core/Schema.test-d.ts +3 -1
  31. package/src/core/adapters/privy.test.ts +150 -10
  32. package/src/core/adapters/privy.ts +148 -192
  33. package/src/core/zod/rpc.test.ts +91 -4
  34. package/src/core/zod/rpc.ts +9 -4
  35. package/src/react-native/Provider.localnet.test.ts +25 -0
  36. package/src/react-native/adapter.ts +3 -0
  37. package/src/server/CliAuth.test-d.ts +2 -0
  38. package/src/server/CliAuth.test.ts +2 -0
  39. package/src/server/CliAuth.ts +1 -0
@@ -1,5 +1,5 @@
1
- import { Address as core_Address, Hex, Provider as ox_Provider, PublicKey, RpcResponse, Secp256k1, Signature, WebCryptoP256, } from 'ox';
2
- import { KeyAuthorization, SignatureEnvelope } from 'ox/tempo';
1
+ import { Address as core_Address, Hex, Provider as ox_Provider, Secp256k1, Signature } from 'ox';
2
+ import { SignatureEnvelope } from 'ox/tempo';
3
3
  import { hashMessage, hashTypedData, isAddressEqual, keccak256 } from 'viem';
4
4
  import { prepareTransactionRequest } from 'viem/actions';
5
5
  import { Actions, Transaction as TempoTransaction } from 'viem/tempo';
@@ -63,7 +63,7 @@ export function privy(options) {
63
63
  return Adapter.define({ icon, name, rdns }, ({ getClient, store }) => {
64
64
  let privyClient_promise;
65
65
  let restore_promise;
66
- let walletAccounts = [];
66
+ let walletAccounts;
67
67
  async function getPrivyClient() {
68
68
  privyClient_promise ??= (async () => {
69
69
  await options.client.initialize?.();
@@ -77,9 +77,25 @@ export function privy(options) {
77
77
  ...(label ? { label } : {}),
78
78
  };
79
79
  }
80
+ function toTempoAccount(account) {
81
+ const address = core_Address.from(account.address);
82
+ async function sign(parameters) {
83
+ return await signPayload({
84
+ payload: parameters.hash,
85
+ walletAccount: account,
86
+ });
87
+ }
88
+ return {
89
+ address,
90
+ sign,
91
+ signTransaction: async (transaction) => await privySignTransaction({ sign, transaction }),
92
+ source: 'privy',
93
+ type: 'local',
94
+ };
95
+ }
80
96
  function clear() {
81
97
  restore_promise = undefined;
82
- walletAccounts = [];
98
+ walletAccounts = undefined;
83
99
  store.setState({ accessKeys: [], accounts: [], activeAccount: 0 });
84
100
  }
85
101
  async function hasValidSession() {
@@ -144,7 +160,7 @@ export function privy(options) {
144
160
  }
145
161
  async function restore() {
146
162
  await Store.waitForHydration(store);
147
- if (walletAccounts.length > 0)
163
+ if (walletAccounts)
148
164
  return;
149
165
  if (restore_promise)
150
166
  return await restore_promise;
@@ -163,21 +179,22 @@ export function privy(options) {
163
179
  clear();
164
180
  throw new ox_Provider.DisconnectedError({ message: 'Privy session expired.' });
165
181
  });
166
- walletAccounts = persisted
182
+ walletAccounts = restored;
183
+ const accounts = persisted
167
184
  .map((account) => restored.find((walletAccount) => isAddressEqual(core_Address.from(walletAccount.address), account.address)))
168
185
  .filter((account) => !!account);
169
186
  // If the persisted accounts no longer exist in Privy (different user
170
187
  // signed in, wallets removed), wipe the stale state so callers see a
171
188
  // clean disconnected state instead of ghost accounts without providers.
172
- if (walletAccounts.length === 0) {
189
+ if (accounts.length === 0) {
173
190
  clear();
174
191
  throw new ox_Provider.DisconnectedError({
175
192
  message: 'Privy session no longer matches persisted accounts.',
176
193
  });
177
194
  }
178
195
  store.setState({
179
- accounts: walletAccounts.map((account) => toStoreAccount(account)),
180
- activeAccount: Math.min(state.activeAccount, walletAccounts.length - 1),
196
+ accounts: accounts.map((account) => toStoreAccount(account)),
197
+ activeAccount: Math.min(state.activeAccount, accounts.length - 1),
181
198
  });
182
199
  })();
183
200
  try {
@@ -193,20 +210,26 @@ export function privy(options) {
193
210
  clear();
194
211
  throw new ox_Provider.DisconnectedError({ message: 'Privy session expired.' });
195
212
  }
196
- async function accountForSigning(address) {
213
+ async function getTempoAccount(address) {
197
214
  await restore();
198
215
  await requireSession();
199
- const address_ = address ?? store.getState().accounts[store.getState().activeAccount]?.address;
216
+ const state = store.getState();
217
+ const address_ = address ?? state.accounts[state.activeAccount]?.address;
200
218
  if (!address_)
201
219
  throw new ox_Provider.DisconnectedError({ message: 'No accounts connected.' });
202
- const account = walletAccounts.find((account) => isAddressEqual(core_Address.from(account.address), address_));
203
- if (account)
204
- return account;
205
- if (walletAccounts.length === 0)
220
+ if (state.accounts.length === 0)
206
221
  throw new ox_Provider.DisconnectedError({
207
222
  message: 'No Privy account connected.',
208
223
  });
209
- throw new ox_Provider.UnauthorizedError({ message: `Account "${address_}" not found.` });
224
+ const connected = state.accounts.some((account) => isAddressEqual(account.address, address_));
225
+ if (!connected)
226
+ throw new ox_Provider.UnauthorizedError({ message: `Account "${address_}" not found.` });
227
+ const account = (walletAccounts ?? []).find((account) => isAddressEqual(core_Address.from(account.address), address_));
228
+ if (account)
229
+ return toTempoAccount(account);
230
+ throw new ox_Provider.DisconnectedError({
231
+ message: 'Privy session no longer matches persisted accounts.',
232
+ });
210
233
  }
211
234
  async function signPayload(parameters) {
212
235
  const { payload, walletAccount } = parameters;
@@ -248,90 +271,63 @@ export function privy(options) {
248
271
  });
249
272
  return signature;
250
273
  }
251
- /**
252
- * Builds, signs, and saves an access key authorization for the given Privy
253
- * wallet. Generates a local P256 key pair when no external key is provided.
254
- */
255
- async function authorizeAccessKeyFor(account, options) {
256
- const { expiry, limits, scopes } = options;
257
- const chainId = options.chainId ?? getClient().chain.id;
258
- const prepared = await (async () => {
259
- if (options.publicKey || options.address) {
260
- const address = options.address ?? core_Address.fromPublicKey(PublicKey.from(options.publicKey));
261
- return {
262
- keyAuthorization: KeyAuthorization.from({
263
- address,
264
- chainId: BigInt(chainId),
265
- expiry,
266
- limits,
267
- scopes,
268
- type: options.keyType ?? 'secp256k1',
269
- }),
270
- };
271
- }
272
- if (options.keyType && options.keyType !== 'p256')
273
- throw new RpcResponse.InvalidParamsError({
274
- message: `\`keyType: "${options.keyType}"\` requires externally generated key material; provide \`publicKey\` or \`address\`.`,
275
- });
276
- const keyPair = await WebCryptoP256.createKeyPair();
277
- const address = core_Address.fromPublicKey(PublicKey.from(keyPair.publicKey));
278
- return {
279
- keyAuthorization: KeyAuthorization.from({
280
- address,
281
- chainId: BigInt(chainId),
282
- expiry,
283
- limits,
284
- scopes,
285
- type: 'p256',
286
- }),
287
- keyPair,
288
- };
289
- })();
290
- const signature = await signPayload({
291
- payload: KeyAuthorization.getSignPayload(prepared.keyAuthorization),
292
- walletAccount: account,
293
- });
294
- const keyAuthorization = KeyAuthorization.from(prepared.keyAuthorization, {
295
- signature: SignatureEnvelope.from(signature),
296
- });
297
- AccessKey.add({
298
- account: core_Address.from(account.address),
299
- authorization: keyAuthorization,
300
- ...(prepared.keyPair ? { keyPair: prepared.keyPair } : {}),
301
- store,
302
- });
303
- return KeyAuthorization.toRpc(keyAuthorization);
304
- }
305
274
  async function signTransaction(parameters) {
306
- const account = await accountForSigning(parameters.from);
275
+ const account = await getTempoAccount(parameters.from);
307
276
  const { feePayer, ...rest } = parameters;
308
277
  const viemClient = getClient({
309
278
  chainId: parameters.chainId,
310
279
  feePayer: feePayer === true ? undefined : feePayer,
311
280
  });
312
281
  const prepared = await prepareTransactionRequest(viemClient, {
313
- account: core_Address.from(account.address),
282
+ account: account.address,
314
283
  ...rest,
315
284
  ...(feePayer ? { feePayer: true } : {}),
316
285
  type: 'tempo',
317
286
  });
318
- return await signPreparedTransaction(account, prepared);
287
+ return await account.signTransaction(prepared);
319
288
  }
320
- async function signPreparedTransaction(account, prepared) {
289
+ async function privySignTransaction(parameters) {
290
+ const { sign, transaction } = parameters;
321
291
  const presign = (() => {
322
- if (prepared &&
323
- typeof prepared === 'object' &&
324
- 'feePayerSignature' in prepared &&
325
- prepared.feePayerSignature)
326
- return { ...prepared, feePayerSignature: null };
327
- return prepared;
292
+ if (transaction &&
293
+ typeof transaction === 'object' &&
294
+ 'feePayerSignature' in transaction &&
295
+ transaction.feePayerSignature)
296
+ return { ...transaction, feePayerSignature: null };
297
+ return transaction;
328
298
  })();
329
299
  const unsignedTransaction = await TempoTransaction.serialize(presign);
330
- const signature = await signPayload({
331
- payload: keccak256(unsignedTransaction),
332
- walletAccount: account,
333
- });
334
- return await TempoTransaction.serialize(prepared, SignatureEnvelope.from(Signature.fromHex(signature)));
300
+ const signature = await sign({ hash: keccak256(unsignedTransaction) });
301
+ return await TempoTransaction.serialize(transaction, SignatureEnvelope.from(Signature.fromHex(signature)));
302
+ }
303
+ async function connectAccounts(parameters) {
304
+ const { addresses, authorizeAccessKey, label, personalSign, privyClient } = parameters;
305
+ await requireSession();
306
+ const wallets = await loadEthereumWallets(privyClient);
307
+ const selected = selectWalletAccounts(wallets, addresses);
308
+ const account = selected[0] ? toTempoAccount(selected[0]) : undefined;
309
+ if (!account && parameters.noAccountsMessage)
310
+ throw new ox_Provider.DisconnectedError({
311
+ message: parameters.noAccountsMessage,
312
+ });
313
+ const digest = personalSign ? hashMessage(personalSign.message) : parameters.digest;
314
+ const keyAuthorization = authorizeAccessKey && account
315
+ ? await AccessKey.authorize({
316
+ account,
317
+ chainId: getClient().chain.id,
318
+ parameters: authorizeAccessKey,
319
+ store,
320
+ })
321
+ : undefined;
322
+ const signature = digest && account ? await account.sign({ hash: digest }) : undefined;
323
+ walletAccounts = wallets;
324
+ restore_promise = undefined;
325
+ return {
326
+ accounts: selected.map((account, index) => toStoreAccount(account, index === 0 ? label : undefined)),
327
+ ...(personalSign ? { personalSign: { message: personalSign.message } } : {}),
328
+ ...(keyAuthorization ? { keyAuthorization } : {}),
329
+ signature,
330
+ };
335
331
  }
336
332
  async function prepareTransaction(parameters) {
337
333
  const viemClient = getClient({
@@ -446,33 +442,15 @@ export function privy(options) {
446
442
  ...(personalSign ? { personalSign } : {}),
447
443
  },
448
444
  });
449
- await requireSession();
450
- walletAccounts = selectWalletAccounts(await loadEthereumWallets(privyClient), addresses);
451
- // Drop any in-flight `restore()` (from a concurrent `accountForSigning`)
452
- // so re-entrant `restore()` calls don't `await` a stale IIFE that would
453
- // later overwrite `walletAccounts` with the intersection against
454
- // now-replaced persisted accounts.
455
- restore_promise = undefined;
456
- const account = walletAccounts[0];
457
- if (!account)
458
- throw new ox_Provider.DisconnectedError({
459
- message: 'Privy returned no wallet.',
460
- });
461
- const digest = personalSign ? hashMessage(personalSign.message) : parameters.digest;
462
- const keyAuthorization = authorizeAccessKey
463
- ? await authorizeAccessKeyFor(account, authorizeAccessKey)
464
- : undefined;
465
- return {
466
- accounts: walletAccounts.map((wallet, index) => toStoreAccount(wallet, index === 0 ? parameters.name : undefined)),
467
- ...(personalSign ? { personalSign: { message: personalSign.message } } : {}),
468
- ...(keyAuthorization ? { keyAuthorization } : {}),
469
- signature: digest
470
- ? await signPayload({
471
- payload: digest,
472
- walletAccount: account,
473
- })
474
- : undefined,
475
- };
445
+ return await connectAccounts({
446
+ addresses,
447
+ ...(authorizeAccessKey ? { authorizeAccessKey } : {}),
448
+ ...(parameters.digest ? { digest: parameters.digest } : {}),
449
+ label: parameters.name,
450
+ ...(personalSign ? { personalSign } : {}),
451
+ privyClient,
452
+ noAccountsMessage: 'Privy returned no wallet.',
453
+ });
476
454
  },
477
455
  async loadAccounts(parameters) {
478
456
  const { authorizeAccessKey, personalSign } = parameters ?? {};
@@ -480,46 +458,29 @@ export function privy(options) {
480
458
  throw new ox_Provider.ProviderRpcError(-32602, '`digest` and `personalSign` cannot both be set on `wallet_connect`.');
481
459
  const privyClient = await getPrivyClient();
482
460
  const addresses = await options.loadAccounts({ client: privyClient, parameters });
483
- await requireSession();
484
- walletAccounts = selectWalletAccounts(await loadEthereumWallets(privyClient), addresses);
485
- // Drop any in-flight `restore()` (from a concurrent `accountForSigning`)
486
- // so re-entrant `restore()` calls don't `await` a stale IIFE that would
487
- // later overwrite `walletAccounts` with the intersection against
488
- // now-replaced persisted accounts.
489
- restore_promise = undefined;
490
- const digest = personalSign ? hashMessage(personalSign.message) : parameters?.digest;
491
- const account = walletAccounts[0];
492
- const keyAuthorization = authorizeAccessKey && account
493
- ? await authorizeAccessKeyFor(account, authorizeAccessKey)
494
- : undefined;
495
- return {
496
- accounts: walletAccounts.map((account) => toStoreAccount(account)),
497
- ...(personalSign ? { personalSign: { message: personalSign.message } } : {}),
498
- ...(keyAuthorization ? { keyAuthorization } : {}),
499
- signature: digest && account
500
- ? await signPayload({
501
- payload: digest,
502
- walletAccount: account,
503
- })
504
- : undefined,
505
- };
461
+ return await connectAccounts({
462
+ addresses,
463
+ ...(authorizeAccessKey ? { authorizeAccessKey } : {}),
464
+ ...(parameters?.digest ? { digest: parameters.digest } : {}),
465
+ ...(personalSign ? { personalSign } : {}),
466
+ privyClient,
467
+ });
506
468
  },
507
469
  async authorizeAccessKey(parameters) {
508
- const account = await accountForSigning(undefined);
509
- const keyAuthorization = await authorizeAccessKeyFor(account, parameters);
510
- return { keyAuthorization, rootAddress: core_Address.from(account.address) };
470
+ const account = await getTempoAccount(undefined);
471
+ const keyAuthorization = await AccessKey.authorize({
472
+ account,
473
+ chainId: getClient().chain.id,
474
+ parameters,
475
+ store,
476
+ });
477
+ return { keyAuthorization, rootAddress: account.address };
511
478
  },
512
479
  async revokeAccessKey(parameters) {
513
- const account = await accountForSigning(parameters.address);
514
- const account_tempo = {
515
- address: core_Address.from(account.address),
516
- source: 'privy',
517
- signTransaction: async (request) => await signPreparedTransaction(account, request),
518
- type: 'local',
519
- };
480
+ const account = await getTempoAccount(parameters.address);
520
481
  try {
521
482
  await Actions.accessKey.revoke(getClient(), {
522
- account: account_tempo,
483
+ account: account,
523
484
  accessKey: parameters.accessKeyAddress,
524
485
  });
525
486
  }
@@ -529,27 +490,23 @@ export function privy(options) {
529
490
  }
530
491
  AccessKey.remove({
531
492
  accessKey: parameters.accessKeyAddress,
532
- account: core_Address.from(account.address),
493
+ account: account.address,
533
494
  chainId: store.getState().chainId,
534
495
  store,
535
496
  });
536
497
  },
537
498
  async signPersonalMessage(parameters) {
538
- const account = await accountForSigning(parameters.address);
539
- return await signPayload({
540
- payload: hashMessage({ raw: parameters.data }),
541
- walletAccount: account,
499
+ return await (await getTempoAccount(parameters.address)).sign({
500
+ hash: hashMessage({ raw: parameters.data }),
542
501
  });
543
502
  },
544
503
  async signTransaction(parameters) {
545
504
  return await (await prepareTransaction(parameters)).sign();
546
505
  },
547
506
  async signTypedData(parameters) {
548
- const account = await accountForSigning(parameters.address);
549
507
  const typedData = JSON.parse(parameters.data);
550
- return await signPayload({
551
- payload: hashTypedData(typedData),
552
- walletAccount: account,
508
+ return await (await getTempoAccount(parameters.address)).sign({
509
+ hash: hashTypedData(typedData),
553
510
  });
554
511
  },
555
512
  async sendTransaction(parameters) {
@@ -1 +1 @@
1
- {"version":3,"file":"privy.js","sourceRoot":"","sources":["../../../src/core/adapters/privy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"privy.js","sourceRoot":"","sources":["../../../src/core/adapters/privy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,GAAG,EAAE,QAAQ,IAAI,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,IAAI,CAAA;AAChG,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAA;AAC5C,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,MAAM,CAAA;AAE5E,OAAO,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAA;AACxD,OAAO,EAAE,OAAO,EAAE,WAAW,IAAI,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAErE,OAAO,KAAK,SAAS,MAAM,iBAAiB,CAAA;AAC5C,OAAO,KAAK,OAAO,MAAM,eAAe,CAAA;AACxC,OAAO,KAAK,oBAAoB,MAAM,qCAAqC,CAAA;AAC3E,OAAO,KAAK,KAAK,MAAM,aAAa,CAAA;AAEpC,MAAM,sBAAsB,GAAG,IAAI,GAAG,CAAC;IACrC,qCAAqC;IACrC,qDAAqD;IACrD,kCAAkC;IAClC,gCAAgC;IAChC,+BAA+B;IAC/B,oBAAoB;IACpB,qBAAqB;IACrB,sBAAsB;IACtB,uBAAuB;IACvB,iBAAiB;IACjB,iBAAiB;IACjB,cAAc;CACf,CAAC,CAAA;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,MAAM,UAAU,KAAK,CACnB,OAA8B;IAE9B,MAAM,EAAE,IAAI,EAAE,IAAI,GAAG,OAAO,EAAE,IAAI,GAAG,UAAU,EAAE,GAAG,OAAO,CAAA;IAE3D,OAAO,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,EAAE;QACnE,IAAI,mBAAgD,CAAA;QACpD,IAAI,eAA0C,CAAA;QAC9C,IAAI,cAA2D,CAAA;QAE/D,KAAK,UAAU,cAAc;YAC3B,mBAAmB,KAAK,CAAC,KAAK,IAAI,EAAE;gBAClC,MAAM,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,CAAA;gBACnC,OAAO,OAAO,CAAC,MAAM,CAAA;YACvB,CAAC,CAAC,EAAE,CAAA;YACJ,OAAO,MAAM,mBAAmB,CAAA;QAClC,CAAC;QAED,SAAS,cAAc,CAAC,OAA6B,EAAE,KAA0B;YAC/E,OAAO;gBACL,OAAO,EAAE,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;gBAC3C,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC5B,CAAA;QACH,CAAC;QAED,SAAS,cAAc,CAAC,OAA6B;YACnD,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;YAElD,KAAK,UAAU,IAAI,CAAC,UAA6B;gBAC/C,OAAO,MAAM,WAAW,CAAC;oBACvB,OAAO,EAAE,UAAU,CAAC,IAAI;oBACxB,aAAa,EAAE,OAAO;iBACvB,CAAC,CAAA;YACJ,CAAC;YAED,OAAO;gBACL,OAAO;gBACP,IAAI;gBACJ,eAAe,EAAE,KAAK,EAAE,WAAoB,EAAE,EAAE,CAC9C,MAAM,oBAAoB,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;gBACnD,MAAM,EAAE,OAAO;gBACf,IAAI,EAAE,OAAO;aAOd,CAAA;QACH,CAAC;QAED,SAAS,KAAK;YACZ,eAAe,GAAG,SAAS,CAAA;YAC3B,cAAc,GAAG,SAAS,CAAA;YAC1B,KAAK,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC,CAAA;QACpE,CAAC;QAED,KAAK,UAAU,eAAe;YAC5B,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,cAAc,EAAE,CAAC,CAAC,cAAc,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBAC5E,IAAI,cAAc,CAAC,KAAK,CAAC;oBAAE,OAAO,IAAI,CAAA;gBACtC,MAAM,KAAK,CAAA;YACb,CAAC,CAAC,CAAA;YACF,OAAO,CAAC,CAAC,KAAK,CAAA;QAChB,CAAC;QAED;;;;;;;WAOG;QACH,KAAK,UAAU,mBAAmB,CAChC,WAAyB;YAEzB,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,CAAA;YAC7C,MAAM,OAAO,GAAG,CAAC,IAAI,EAAE,eAAe,IAAI,EAAE,CAAC;iBAC1C,MAAM,CACL,CAAC,OAAO,EAAE,EAAE,CACV,OAAO,CAAC,IAAI,KAAK,QAAQ;gBACzB,OAAO,CAAC,kBAAkB,KAAK,OAAO;gBACtC,OAAO,CAAC,cAAc,KAAK,UAAU;gBACrC,OAAO,CAAC,UAAU,KAAK,UAAU;gBACjC,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,CACtC;iBACA,KAAK,EAAE;iBACP,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;gBACb,iEAAiE;gBACjE,iEAAiE;gBACjE,MAAM,OAAO,GAAG,CAAC,CAAC,YAAY,IAAI,MAAM,CAAC,iBAAiB,CAAA;gBAC1D,MAAM,OAAO,GAAG,CAAC,CAAC,YAAY,IAAI,MAAM,CAAC,iBAAiB,CAAA;gBAC1D,OAAO,OAAO,GAAG,OAAO,CAAA;YAC1B,CAAC,CAAC,CAAA;YAEJ,oEAAoE;YACpE,8DAA8D;YAC9D,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,YAAY,KAAK,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,CAAA;YACjF,IAAI,CAAC,OAAO;gBAAE,OAAO,EAAE,CAAA;YACvB,MAAM,SAAS,GAAG,OAAO,CAAC,OAAiB,CAAA;YAE3C,OAAO,MAAM,OAAO,CAAC,GAAG,CACtB,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;gBAC7B,OAAO,EAAE,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,OAAiB,CAAC;gBACpD,QAAQ,EAAE,MAAM,WAAW,CAAC,cAAc,CAAC,mBAAmB,CAAC;oBAC7D,MAAM;oBACN,SAAS;oBACT,iBAAiB,EAAE,2BAA2B;iBAC/C,CAAC;aACH,CAAC,CAAC,CACJ,CAAA;QACH,CAAC;QAED,SAAS,oBAAoB,CAC3B,QAAyC,EACzC,SAAiC;YAEjC,IAAI,CAAC,SAAS;gBAAE,OAAO,QAAQ,CAAA;YAE/B,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC/B,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;gBAC3C,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CACxC,cAAc,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,CAC7D,CAAA;gBACD,IAAI,OAAO;oBAAE,OAAO,OAAO,CAAA;gBAE3B,MAAM,IAAI,WAAW,CAAC,iBAAiB,CAAC;oBACtC,OAAO,EAAE,oCAAoC,QAAQ,sDAAsD;iBAC5G,CAAC,CAAA;YACJ,CAAC,CAAC,CAAA;QACJ,CAAC;QAED,KAAK,UAAU,OAAO;YACpB,MAAM,KAAK,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAA;YACnC,IAAI,cAAc;gBAAE,OAAM;YAC1B,IAAI,eAAe;gBAAE,OAAO,MAAM,eAAe,CAAA;YAEjD,eAAe,GAAG,CAAC,KAAK,IAAI,EAAE;gBAC5B,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAA;gBAC9B,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAA;gBAChC,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;oBAAE,OAAM;gBAElC,IAAI,CAAC,CAAC,MAAM,eAAe,EAAE,CAAC,EAAE,CAAC;oBAC/B,KAAK,EAAE,CAAA;oBACP,MAAM,IAAI,WAAW,CAAC,iBAAiB,CAAC,EAAE,OAAO,EAAE,wBAAwB,EAAE,CAAC,CAAA;gBAChF,CAAC;gBAED,MAAM,QAAQ,GAAG,MAAM,mBAAmB,CAAC,MAAM,cAAc,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;oBACjF,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC;wBAAE,MAAM,KAAK,CAAA;oBACvC,KAAK,EAAE,CAAA;oBACP,MAAM,IAAI,WAAW,CAAC,iBAAiB,CAAC,EAAE,OAAO,EAAE,wBAAwB,EAAE,CAAC,CAAA;gBAChF,CAAC,CAAC,CAAA;gBACF,cAAc,GAAG,QAAQ,CAAA;gBACzB,MAAM,QAAQ,GAAG,SAAS;qBACvB,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CACf,QAAQ,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,EAAE,CAC9B,cAAc,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,CAC1E,CACF;qBACA,MAAM,CAAC,CAAC,OAAO,EAAmC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;gBAElE,qEAAqE;gBACrE,qEAAqE;gBACrE,wEAAwE;gBACxE,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC1B,KAAK,EAAE,CAAA;oBACP,MAAM,IAAI,WAAW,CAAC,iBAAiB,CAAC;wBACtC,OAAO,EAAE,qDAAqD;qBAC/D,CAAC,CAAA;gBACJ,CAAC;gBAED,KAAK,CAAC,QAAQ,CAAC;oBACb,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;oBAC5D,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,aAAa,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;iBAClE,CAAC,CAAA;YACJ,CAAC,CAAC,EAAE,CAAA;YAEJ,IAAI,CAAC;gBACH,MAAM,eAAe,CAAA;YACvB,CAAC;oBAAS,CAAC;gBACT,eAAe,GAAG,SAAS,CAAA;YAC7B,CAAC;QACH,CAAC;QAED,KAAK,UAAU,cAAc;YAC3B,IAAI,MAAM,eAAe,EAAE;gBAAE,OAAM;YACnC,KAAK,EAAE,CAAA;YACP,MAAM,IAAI,WAAW,CAAC,iBAAiB,CAAC,EAAE,OAAO,EAAE,wBAAwB,EAAE,CAAC,CAAA;QAChF,CAAC;QAED,KAAK,UAAU,eAAe,CAAC,OAA4B;YACzD,MAAM,OAAO,EAAE,CAAA;YACf,MAAM,cAAc,EAAE,CAAA;YAEtB,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAA;YAC9B,MAAM,QAAQ,GAAG,OAAO,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,OAAO,CAAA;YACxE,IAAI,CAAC,QAAQ;gBAAE,MAAM,IAAI,WAAW,CAAC,iBAAiB,CAAC,EAAE,OAAO,EAAE,wBAAwB,EAAE,CAAC,CAAA;YAE7F,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;gBAC7B,MAAM,IAAI,WAAW,CAAC,iBAAiB,CAAC;oBACtC,OAAO,EAAE,6BAA6B;iBACvC,CAAC,CAAA;YAEJ,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAA;YAC7F,IAAI,CAAC,SAAS;gBACZ,MAAM,IAAI,WAAW,CAAC,iBAAiB,CAAC,EAAE,OAAO,EAAE,YAAY,QAAQ,cAAc,EAAE,CAAC,CAAA;YAE1F,MAAM,OAAO,GAAG,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CACtD,cAAc,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,CAC7D,CAAA;YACD,IAAI,OAAO;gBAAE,OAAO,cAAc,CAAC,OAAO,CAAC,CAAA;YAE3C,MAAM,IAAI,WAAW,CAAC,iBAAiB,CAAC;gBACtC,OAAO,EAAE,qDAAqD;aAC/D,CAAC,CAAA;QACJ,CAAC;QAED,KAAK,UAAU,WAAW,CAAC,UAG1B;YACC,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,GAAG,UAAU,CAAA;YAC7C,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,QAAQ;iBACxC,OAAO,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;iBACxD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBACf,MAAM,IAAI,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAA;gBACrC,MAAM,OAAO,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAA;gBACzD,MAAM,WAAW,GACf,CAAC,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC;oBAChE,CAAC,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;oBACxE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC;oBAC/B,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAA;gBACtC,IAAI,WAAW;oBACb,MAAM,IAAI,WAAW,CAAC,sBAAsB,CAAC;wBAC3C,OAAO,EACL,gHAAgH;qBACnH,CAAC,CAAA;gBACJ,IAAI,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;oBAC1B,KAAK,EAAE,CAAA;oBACP,MAAM,IAAI,WAAW,CAAC,iBAAiB,CAAC,EAAE,OAAO,EAAE,wBAAwB,EAAE,CAAC,CAAA;gBAChF,CAAC;gBACD,MAAM,KAAK,CAAA;YACb,CAAC,CAAC,CAAA;YACJ,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC;gBACrD,MAAM,IAAI,WAAW,CAAC,gBAAgB,CACpC,CAAC,KAAK,EACN,0DAA0D,CAC3D,CAAA;YACH,MAAM,SAAS,GAAY,MAAM,CAAA;YAEjC,6DAA6D;YAC7D,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;YACzD,MAAM,SAAS,GAAG,CAAC,GAAG,EAAE;gBACtB,IAAI,CAAC;oBACH,OAAO,SAAS,CAAC,cAAc,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;gBACvF,CAAC;gBAAC,MAAM,CAAC;oBACP,OAAO,SAAS,CAAA;gBAClB,CAAC;YACH,CAAC,CAAC,EAAE,CAAA;YACJ,IAAI,CAAC,SAAS,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,QAAQ,CAAC;gBACpD,MAAM,IAAI,WAAW,CAAC,iBAAiB,CAAC;oBACtC,OAAO,EAAE,4CAA4C,SAAS,IAAI,SAAS,+CAA+C,QAAQ,IAAI;iBACvI,CAAC,CAAA;YACJ,OAAO,SAAS,CAAA;QAClB,CAAC;QAED,KAAK,UAAU,eAAe,CAAC,UAA8C;YAC3E,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;YACtD,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,GAAG,UAAU,CAAA;YACxC,MAAM,UAAU,GAAG,SAAS,CAAC;gBAC3B,OAAO,EAAE,UAAU,CAAC,OAAO;gBAC3B,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ;aACnD,CAAC,CAAA;YACF,MAAM,QAAQ,GAAG,MAAM,yBAAyB,CAAC,UAAU,EAAE;gBAC3D,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,GAAG,IAAI;gBACP,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvC,IAAI,EAAE,OAAO;aACL,CAAC,CAAA;YACX,OAAO,MAAM,OAAO,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAA;QAChD,CAAC;QAED,KAAK,UAAU,oBAAoB,CAAC,UAGnC;YACC,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,UAAU,CAAA;YACxC,MAAM,OAAO,GAAG,CAAC,GAAG,EAAE;gBACpB,IACE,WAAW;oBACX,OAAO,WAAW,KAAK,QAAQ;oBAC/B,mBAAmB,IAAI,WAAW;oBAClC,WAAW,CAAC,iBAAiB;oBAE7B,OAAO,EAAE,GAAG,WAAW,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAA;gBACpD,OAAO,WAAW,CAAA;YACpB,CAAC,CAAC,EAAE,CAAA;YACJ,MAAM,mBAAmB,GAAG,MAAM,gBAAgB,CAAC,SAAS,CAAC,OAAgB,CAAC,CAAA;YAE9E,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAA;YACtE,OAAO,MAAM,gBAAgB,CAAC,SAAS,CACrC,WAAoB,EACpB,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,CAAU,CAC9D,CAAA;QACH,CAAC;QAED,KAAK,UAAU,eAAe,CAAC,UAQ9B;YACC,MAAM,EAAE,SAAS,EAAE,kBAAkB,EAAE,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,UAAU,CAAA;YACtF,MAAM,cAAc,EAAE,CAAA;YACtB,MAAM,OAAO,GAAG,MAAM,mBAAmB,CAAC,WAAW,CAAC,CAAA;YACtD,MAAM,QAAQ,GAAG,oBAAoB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;YAEzD,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;YACrE,IAAI,CAAC,OAAO,IAAI,UAAU,CAAC,iBAAiB;gBAC1C,MAAM,IAAI,WAAW,CAAC,iBAAiB,CAAC;oBACtC,OAAO,EAAE,UAAU,CAAC,iBAAiB;iBACtC,CAAC,CAAA;YAEJ,MAAM,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,WAAW,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAA;YACnF,MAAM,gBAAgB,GACpB,kBAAkB,IAAI,OAAO;gBAC3B,CAAC,CAAC,MAAM,SAAS,CAAC,SAAS,CAAC;oBACxB,OAAO;oBACP,OAAO,EAAE,SAAS,EAAE,CAAC,KAAK,CAAC,EAAE;oBAC7B,UAAU,EAAE,kBAAkB;oBAC9B,KAAK;iBACN,CAAC;gBACJ,CAAC,CAAC,SAAS,CAAA;YAEf,MAAM,SAAS,GAAG,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;YACtF,cAAc,GAAG,OAAO,CAAA;YACxB,eAAe,GAAG,SAAS,CAAA;YAE3B,OAAO;gBACL,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CACxC,cAAc,CAAC,OAAO,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CACzD;gBACD,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,EAAE,OAAO,EAAE,YAAY,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC5E,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjD,SAAS;aACV,CAAA;QACH,CAAC;QAED,KAAK,UAAU,kBAAkB,CAAC,UAA8C;YAC9E,MAAM,UAAU,GAAG,SAAS,CAAC;gBAC3B,OAAO,EAAE,UAAU,CAAC,OAAO;gBAC3B,QAAQ,EAAE,UAAU,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ;aACzE,CAAC,CAAA;YAEF,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAA;YAC9B,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,OAAO,CAAA;YAC/E,MAAM,WAAW,GAAG,OAAO;gBACzB,CAAC,CAAC,MAAM,oBAAoB,CAAC,MAAM,CAAC;oBAChC,OAAO;oBACP,KAAK,EAAE,UAAU,CAAC,KAAK;oBACvB,OAAO,EAAE,UAAU,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO;oBAC5C,MAAM,EAAE,UAAU;oBAClB,KAAK;iBACN,CAAC;gBACJ,CAAC,CAAC,SAAS,CAAA;YACb,IAAI,WAAW,EAAE,CAAC;gBAChB,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,GAAG,UAAU,CAAA;gBACxC,IAAI,CAAC;oBACH,OAAO,MAAM,WAAW,CAAC,OAAO,CAAC;wBAC/B,GAAG,IAAI;wBACP,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;qBACxC,CAAC,CAAA;gBACJ,CAAC;gBAAC,MAAM,CAAC,CAAA,CAAC;YACZ,CAAC;YAED,KAAK,UAAU,IAAI;gBACjB,OAAO,MAAM,eAAe,CAAC,UAAU,CAAC,CAAA;YAC1C,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,SAAkB;gBAC3B,IAAI;gBACJ,KAAK,CAAC,IAAI;oBACR,MAAM,MAAM,GAAG,MAAM,IAAI,EAAE,CAAA;oBAC3B,OAAO,MAAM,UAAU,CAAC,OAAO,CAAC;wBAC9B,MAAM,EAAE,wBAAiC;wBACzC,MAAM,EAAE,CAAC,MAAM,CAAC;qBACjB,CAAC,CAAA;gBACJ,CAAC;gBACD,KAAK,CAAC,QAAQ;oBACZ,MAAM,MAAM,GAAG,MAAM,IAAI,EAAE,CAAA;oBAC3B,OAAO,MAAM,UAAU,CAAC,OAAO,CAAC;wBAC9B,MAAM,EAAE,4BAAqC;wBAC7C,MAAM,EAAE,CAAC,MAAM,CAAC;qBACjB,CAAC,CAAA;gBACJ,CAAC;aACF,CAAA;QACH,CAAC;QAED,SAAS,cAAc,CAAC,KAAc;YACpC,MAAM,IAAI,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAA;YACrC,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC7B,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;gBACrC,IAAI,sBAAsB,CAAC,GAAG,CAAC,UAAU,CAAC;oBAAE,OAAO,IAAI,CAAA;gBACvD,IAAI,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC;oBAAE,OAAO,IAAI,CAAA;gBAC/C,IAAI,UAAU,CAAC,QAAQ,CAAC,kBAAkB,CAAC;oBAAE,OAAO,IAAI,CAAA;YAC1D,CAAC;YAED,MAAM,OAAO,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAA;YACzD,OAAO,CACL,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAC;gBACvC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC;gBACrC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC;gBACrC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC;gBACjC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CACpC,CAAA;QACH,CAAC;QAED,SAAS,iBAAiB,CAAC,KAAc;YACvC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;gBAAE,OAAO,SAAS,CAAA;YAEtC,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ;gBAAE,OAAO,KAAK,CAAC,IAAI,CAAA;YACvF,IAAI,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ,IAAI,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ;gBAC9E,OAAO,KAAK,CAAC,UAAU,CAAA;YACzB,IAAI,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ,IAAI,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ;gBAC5E,OAAO,KAAK,CAAC,SAAS,CAAA;YAExB,OAAO,iBAAiB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QACvC,CAAC;QAED,SAAS,oBAAoB,CAAC,KAAc;YAC1C,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;gBAC3B,MAAM,MAAM,GAAG,oBAAoB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;gBAChD,OAAO,MAAM,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAA;YAC9D,CAAC;YACD,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;gBAAE,OAAO,EAAE,CAAA;YAC/B,MAAM,GAAG,GACP,CAAC,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC;gBACpD,CAAC,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,KAAK,CAAC;gBAChD,EAAE,CAAA;YACJ,MAAM,MAAM,GAAG,oBAAoB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;YAChD,IAAI,GAAG,IAAI,MAAM;gBAAE,OAAO,GAAG,GAAG,IAAI,MAAM,EAAE,CAAA;YAC5C,OAAO,GAAG,IAAI,MAAM,CAAA;QACtB,CAAC;QAED,SAAS,QAAQ,CAAC,KAAc;YAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAA;QACpD,CAAC;QAED,OAAO;YACL,OAAO,KAAI,CAAC;YACZ,OAAO,EAAE;gBACP,KAAK,CAAC,aAAa,CAAC,UAAU;oBAC5B,MAAM,EAAE,kBAAkB,EAAE,YAAY,EAAE,GAAG,UAAU,CAAA;oBACvD,IAAI,YAAY,IAAI,UAAU,CAAC,MAAM;wBACnC,MAAM,IAAI,WAAW,CAAC,gBAAgB,CACpC,CAAC,KAAK,EACN,qEAAqE,CACtE,CAAA;oBAEH,MAAM,WAAW,GAAG,MAAM,cAAc,EAAE,CAAA;oBAC1C,MAAM,SAAS,GAAG,OAAO,CAAC,aAAa;wBACrC,CAAC,CAAC,MAAM,OAAO,CAAC,aAAa,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC;wBAClE,CAAC,CAAC,MAAM,OAAO,CAAC,YAAY,CAAC;4BACzB,MAAM,EAAE,WAAW;4BACnB,UAAU,EAAE;gCACV,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gCACrD,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gCAC3D,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;6BAC1C;yBACF,CAAC,CAAA;oBACN,OAAO,MAAM,eAAe,CAAC;wBAC3B,SAAS;wBACT,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACrD,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC3D,KAAK,EAAE,UAAU,CAAC,IAAI;wBACtB,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACzC,WAAW;wBACX,iBAAiB,EAAE,2BAA2B;qBAC/C,CAAC,CAAA;gBACJ,CAAC;gBACD,KAAK,CAAC,YAAY,CAAC,UAAU;oBAC3B,MAAM,EAAE,kBAAkB,EAAE,YAAY,EAAE,GACxC,UAAU,IAAK,EAAsC,CAAA;oBACvD,IAAI,YAAY,IAAI,UAAU,EAAE,MAAM;wBACpC,MAAM,IAAI,WAAW,CAAC,gBAAgB,CACpC,CAAC,KAAK,EACN,qEAAqE,CACtE,CAAA;oBAEH,MAAM,WAAW,GAAG,MAAM,cAAc,EAAE,CAAA;oBAC1C,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,CAAA;oBACjF,OAAO,MAAM,eAAe,CAAC;wBAC3B,SAAS;wBACT,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACrD,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC5D,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACzC,WAAW;qBACZ,CAAC,CAAA;gBACJ,CAAC;gBACD,KAAK,CAAC,kBAAkB,CAAC,UAAU;oBACjC,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,SAAS,CAAC,CAAA;oBAChD,MAAM,gBAAgB,GAAG,MAAM,SAAS,CAAC,SAAS,CAAC;wBACjD,OAAO;wBACP,OAAO,EAAE,SAAS,EAAE,CAAC,KAAK,CAAC,EAAE;wBAC7B,UAAU;wBACV,KAAK;qBACN,CAAC,CAAA;oBACF,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,OAAO,CAAC,OAAO,EAAE,CAAA;gBAC3D,CAAC;gBACD,KAAK,CAAC,eAAe,CAAC,UAAU;oBAC9B,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;oBACzD,IAAI,CAAC;wBACH,MAAM,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,EAAE,EAAE;4BAC1C,OAAO,EAAE,OAAgC;4BACzC,SAAS,EAAE,UAAU,CAAC,gBAAgB;yBACvC,CAAC,CAAA;oBACJ,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,KAAK,CAAC;4BAAE,MAAM,KAAK,CAAA;oBACvD,CAAC;oBACD,SAAS,CAAC,MAAM,CAAC;wBACf,SAAS,EAAE,UAAU,CAAC,gBAAgB;wBACtC,OAAO,EAAE,OAAO,CAAC,OAAO;wBACxB,OAAO,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,OAAO;wBACjC,KAAK;qBACN,CAAC,CAAA;gBACJ,CAAC;gBACD,KAAK,CAAC,mBAAmB,CAAC,UAAU;oBAClC,OAAO,MAAM,CACX,MAAM,eAAe,CAAC,UAAU,CAAC,OAAO,CAAC,CAC1C,CAAC,IAAI,CAAC;wBACL,IAAI,EAAE,WAAW,CAAC,EAAE,GAAG,EAAE,UAAU,CAAC,IAAI,EAAE,CAAC;qBAC5C,CAAC,CAAA;gBACJ,CAAC;gBACD,KAAK,CAAC,eAAe,CAAC,UAAU;oBAC9B,OAAO,MAAM,CAAC,MAAM,kBAAkB,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;gBAC5D,CAAC;gBACD,KAAK,CAAC,aAAa,CAAC,UAAU;oBAC5B,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAK3C,CAAA;oBACD,OAAO,MAAM,CACX,MAAM,eAAe,CAAC,UAAU,CAAC,OAAO,CAAC,CAC1C,CAAC,IAAI,CAAC;wBACL,IAAI,EAAE,aAAa,CAAC,SAAkB,CAAC;qBACxC,CAAC,CAAA;gBACJ,CAAC;gBACD,KAAK,CAAC,eAAe,CAAC,UAAU;oBAC9B,OAAO,MAAM,CAAC,MAAM,kBAAkB,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;gBAC5D,CAAC;gBACD,KAAK,CAAC,mBAAmB,CAAC,UAAU;oBAClC,OAAO,MAAM,CAAC,MAAM,kBAAkB,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;gBAChE,CAAC;gBACD,KAAK,CAAC,UAAU;oBACd,IAAI,CAAC;wBACH,MAAM,WAAW,GAAG,MAAM,cAAc,EAAE,CAAA;wBAC1C,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,IAAI;6BAClC,GAAG,EAAE;6BACL,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;6BAC3B,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;wBACzB,MAAM,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;oBAChE,CAAC;4BAAS,CAAC;wBACT,KAAK,EAAE,CAAA;oBACT,CAAC;gBACH,CAAC;aACF;SACF,CAAA;IACH,CAAC,CAAC,CAAA;AACJ,CAAC"}
@@ -675,17 +675,20 @@ export declare namespace wallet_connect {
675
675
  }, z.core.$strip>>>>;
676
676
  }, z.core.$strip>>;
677
677
  /**
678
- * Shows an optional funding prompt after `wallet_connect` registration succeeds.
678
+ * Shows an optional funding prompt after `wallet_connect` succeeds.
679
679
  *
680
- * `true` uses the connected account as the deposit target. Object form
681
- * pre-fills deposit UI hints. The deposit chain comes from the surrounding
682
- * `wallet_connect` chain context.
680
+ * `true` prompts after both registration and login. Object form pre-fills
681
+ * deposit UI hints and can scope the prompt to a specific connect method
682
+ * with `on`. The deposit chain comes from the surrounding `wallet_connect`
683
+ * chain context.
683
684
  */
684
685
  const showDeposit: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniBoolean<boolean>, z.ZodMiniObject<{
685
686
  /** Human-readable amount to pre-fill (e.g. `"50"`). */
686
687
  amount: z.ZodMiniOptional<z.ZodMiniString<string>>;
687
688
  /** Display name shown in the deposit UI (e.g. the app name). */
688
689
  displayName: z.ZodMiniOptional<z.ZodMiniString<string>>;
690
+ /** Connect method that should show the deposit prompt. Defaults to both methods. */
691
+ on: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniLiteral<"login">, z.ZodMiniLiteral<"register">]>>;
689
692
  /**
690
693
  * Token to pre-fill, accepted as either a contract address or a
691
694
  * supported deposit token symbol (case-insensitive, e.g. `"USDC"`).
@@ -776,6 +779,8 @@ export declare namespace wallet_connect {
776
779
  amount: z.ZodMiniOptional<z.ZodMiniString<string>>;
777
780
  /** Display name shown in the deposit UI (e.g. the app name). */
778
781
  displayName: z.ZodMiniOptional<z.ZodMiniString<string>>;
782
+ /** Connect method that should show the deposit prompt. Defaults to both methods. */
783
+ on: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniLiteral<"login">, z.ZodMiniLiteral<"register">]>>;
779
784
  /**
780
785
  * Token to pre-fill, accepted as either a contract address or a
781
786
  * supported deposit token symbol (case-insensitive, e.g. `"USDC"`).
@@ -824,6 +829,19 @@ export declare namespace wallet_connect {
824
829
  message: z.ZodMiniString<string>;
825
830
  }, z.core.$strip>>;
826
831
  selectAccount: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
832
+ showDeposit: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniBoolean<boolean>, z.ZodMiniObject<{
833
+ /** Human-readable amount to pre-fill (e.g. `"50"`). */
834
+ amount: z.ZodMiniOptional<z.ZodMiniString<string>>;
835
+ /** Display name shown in the deposit UI (e.g. the app name). */
836
+ displayName: z.ZodMiniOptional<z.ZodMiniString<string>>;
837
+ /** Connect method that should show the deposit prompt. Defaults to both methods. */
838
+ on: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniLiteral<"login">, z.ZodMiniLiteral<"register">]>>;
839
+ /**
840
+ * Token to pre-fill, accepted as either a contract address or a
841
+ * supported deposit token symbol (case-insensitive, e.g. `"USDC"`).
842
+ */
843
+ token: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniTemplateLiteral<`0x${string}`>, z.ZodMiniString<string>]>>;
844
+ }, z.core.$strip>]>>;
827
845
  }, z.core.$strip>]>>;
828
846
  result: z.ZodMiniObject<{
829
847
  email: z.ZodMiniOptional<z.ZodMiniNullable<z.ZodMiniString<string>>>;
@@ -909,6 +927,8 @@ export declare namespace wallet_connect {
909
927
  amount: z.ZodMiniOptional<z.ZodMiniString<string>>;
910
928
  /** Display name shown in the deposit UI (e.g. the app name). */
911
929
  displayName: z.ZodMiniOptional<z.ZodMiniString<string>>;
930
+ /** Connect method that should show the deposit prompt. Defaults to both methods. */
931
+ on: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniLiteral<"login">, z.ZodMiniLiteral<"register">]>>;
912
932
  /**
913
933
  * Token to pre-fill, accepted as either a contract address or a
914
934
  * supported deposit token symbol (case-insensitive, e.g. `"USDC"`).
@@ -957,6 +977,19 @@ export declare namespace wallet_connect {
957
977
  message: z.ZodMiniString<string>;
958
978
  }, z.core.$strip>>;
959
979
  selectAccount: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
980
+ showDeposit: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniBoolean<boolean>, z.ZodMiniObject<{
981
+ /** Human-readable amount to pre-fill (e.g. `"50"`). */
982
+ amount: z.ZodMiniOptional<z.ZodMiniString<string>>;
983
+ /** Display name shown in the deposit UI (e.g. the app name). */
984
+ displayName: z.ZodMiniOptional<z.ZodMiniString<string>>;
985
+ /** Connect method that should show the deposit prompt. Defaults to both methods. */
986
+ on: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniLiteral<"login">, z.ZodMiniLiteral<"register">]>>;
987
+ /**
988
+ * Token to pre-fill, accepted as either a contract address or a
989
+ * supported deposit token symbol (case-insensitive, e.g. `"USDC"`).
990
+ */
991
+ token: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniTemplateLiteral<`0x${string}`>, z.ZodMiniString<string>]>>;
992
+ }, z.core.$strip>]>>;
960
993
  }, z.core.$strip>]>>;
961
994
  chainId: z.ZodMiniOptional<z.ZodMiniCodec<z.ZodMiniTemplateLiteral<`0x${string}`>, z.ZodMiniNumber<number>>>;
962
995
  version: z.ZodMiniOptional<z.ZodMiniString<string>>;
@@ -1051,6 +1084,8 @@ export declare namespace wallet_connect_strict {
1051
1084
  amount: z.ZodMiniOptional<z.ZodMiniString<string>>;
1052
1085
  /** Display name shown in the deposit UI (e.g. the app name). */
1053
1086
  displayName: z.ZodMiniOptional<z.ZodMiniString<string>>;
1087
+ /** Connect method that should show the deposit prompt. Defaults to both methods. */
1088
+ on: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniLiteral<"login">, z.ZodMiniLiteral<"register">]>>;
1054
1089
  /**
1055
1090
  * Token to pre-fill, accepted as either a contract address or a
1056
1091
  * supported deposit token symbol (case-insensitive, e.g. `"USDC"`).
@@ -1098,6 +1133,19 @@ export declare namespace wallet_connect_strict {
1098
1133
  message: z.ZodMiniString<string>;
1099
1134
  }, z.core.$strip>>;
1100
1135
  selectAccount: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1136
+ showDeposit: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniBoolean<boolean>, z.ZodMiniObject<{
1137
+ /** Human-readable amount to pre-fill (e.g. `"50"`). */
1138
+ amount: z.ZodMiniOptional<z.ZodMiniString<string>>;
1139
+ /** Display name shown in the deposit UI (e.g. the app name). */
1140
+ displayName: z.ZodMiniOptional<z.ZodMiniString<string>>;
1141
+ /** Connect method that should show the deposit prompt. Defaults to both methods. */
1142
+ on: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniLiteral<"login">, z.ZodMiniLiteral<"register">]>>;
1143
+ /**
1144
+ * Token to pre-fill, accepted as either a contract address or a
1145
+ * supported deposit token symbol (case-insensitive, e.g. `"USDC"`).
1146
+ */
1147
+ token: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniTemplateLiteral<`0x${string}`>, z.ZodMiniString<string>]>>;
1148
+ }, z.core.$strip>]>>;
1101
1149
  }, z.core.$strip>]>>;
1102
1150
  chainId: z.ZodMiniOptional<z.ZodMiniCodec<z.ZodMiniTemplateLiteral<`0x${string}`>, z.ZodMiniNumber<number>>>;
1103
1151
  version: z.ZodMiniOptional<z.ZodMiniString<string>>;
@@ -1665,6 +1713,8 @@ export declare const strictParameters: {
1665
1713
  amount: z.ZodMiniOptional<z.ZodMiniString<string>>;
1666
1714
  /** Display name shown in the deposit UI (e.g. the app name). */
1667
1715
  displayName: z.ZodMiniOptional<z.ZodMiniString<string>>;
1716
+ /** Connect method that should show the deposit prompt. Defaults to both methods. */
1717
+ on: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniLiteral<"login">, z.ZodMiniLiteral<"register">]>>;
1668
1718
  /**
1669
1719
  * Token to pre-fill, accepted as either a contract address or a
1670
1720
  * supported deposit token symbol (case-insensitive, e.g. `"USDC"`).
@@ -1712,6 +1762,19 @@ export declare const strictParameters: {
1712
1762
  message: z.ZodMiniString<string>;
1713
1763
  }, z.core.$strip>>;
1714
1764
  selectAccount: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1765
+ showDeposit: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniBoolean<boolean>, z.ZodMiniObject<{
1766
+ /** Human-readable amount to pre-fill (e.g. `"50"`). */
1767
+ amount: z.ZodMiniOptional<z.ZodMiniString<string>>;
1768
+ /** Display name shown in the deposit UI (e.g. the app name). */
1769
+ displayName: z.ZodMiniOptional<z.ZodMiniString<string>>;
1770
+ /** Connect method that should show the deposit prompt. Defaults to both methods. */
1771
+ on: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniLiteral<"login">, z.ZodMiniLiteral<"register">]>>;
1772
+ /**
1773
+ * Token to pre-fill, accepted as either a contract address or a
1774
+ * supported deposit token symbol (case-insensitive, e.g. `"USDC"`).
1775
+ */
1776
+ token: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniTemplateLiteral<`0x${string}`>, z.ZodMiniString<string>]>>;
1777
+ }, z.core.$strip>]>>;
1715
1778
  }, z.core.$strip>]>>;
1716
1779
  chainId: z.ZodMiniOptional<z.ZodMiniCodec<z.ZodMiniTemplateLiteral<`0x${string}`>, z.ZodMiniNumber<number>>>;
1717
1780
  version: z.ZodMiniOptional<z.ZodMiniString<string>>;