@solana/connector 0.2.0 → 0.2.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 (79) hide show
  1. package/README.md +11 -11
  2. package/dist/{chunk-HPQ5T32K.mjs → chunk-3623Z2QL.mjs} +4 -4
  3. package/dist/{chunk-HPQ5T32K.mjs.map → chunk-3623Z2QL.mjs.map} +1 -1
  4. package/dist/{chunk-UCISIAOG.mjs → chunk-A7WQ3K75.mjs} +3 -3
  5. package/dist/{chunk-UCISIAOG.mjs.map → chunk-A7WQ3K75.mjs.map} +1 -1
  6. package/dist/{chunk-SITQ4JWM.js → chunk-BF67LVVM.js} +17 -21
  7. package/dist/chunk-BF67LVVM.js.map +1 -0
  8. package/dist/{chunk-RTXUS5KG.mjs → chunk-DFHJYZKZ.mjs} +84 -71
  9. package/dist/chunk-DFHJYZKZ.mjs.map +1 -0
  10. package/dist/chunk-E3DAIOYS.mjs +22 -0
  11. package/dist/chunk-E3DAIOYS.mjs.map +1 -0
  12. package/dist/chunk-FG7HTQTV.mjs +7 -0
  13. package/dist/chunk-FG7HTQTV.mjs.map +1 -0
  14. package/dist/{chunk-BJAVJQLK.js → chunk-I2XX5FUG.js} +6 -6
  15. package/dist/{chunk-BJAVJQLK.js.map → chunk-I2XX5FUG.js.map} +1 -1
  16. package/dist/chunk-L5FWMNWO.js +9 -0
  17. package/dist/chunk-L5FWMNWO.js.map +1 -0
  18. package/dist/{chunk-HN5AJF7F.js → chunk-NLPEO5GT.js} +5 -5
  19. package/dist/{chunk-HN5AJF7F.js.map → chunk-NLPEO5GT.js.map} +1 -1
  20. package/dist/chunk-QST7XLMB.js +26 -0
  21. package/dist/chunk-QST7XLMB.js.map +1 -0
  22. package/dist/{chunk-ZZTY3O4N.mjs → chunk-SJCQ3KZE.mjs} +4 -7
  23. package/dist/chunk-SJCQ3KZE.mjs.map +1 -0
  24. package/dist/{chunk-IDTUFDNB.mjs → chunk-SQ2JEA2M.mjs} +58 -11
  25. package/dist/chunk-SQ2JEA2M.mjs.map +1 -0
  26. package/dist/{chunk-BZ2VBJCZ.js → chunk-TRSJSU33.js} +141 -94
  27. package/dist/chunk-TRSJSU33.js.map +1 -0
  28. package/dist/{chunk-EM4KNOKG.js → chunk-VVLY6QPI.js} +202 -189
  29. package/dist/chunk-VVLY6QPI.js.map +1 -0
  30. package/dist/compat.js +2 -2
  31. package/dist/compat.mjs +1 -1
  32. package/dist/fireblocks-FLKRTJU3.js +67 -0
  33. package/dist/fireblocks-FLKRTJU3.js.map +1 -0
  34. package/dist/fireblocks-KCJV3GEK.mjs +65 -0
  35. package/dist/fireblocks-KCJV3GEK.mjs.map +1 -0
  36. package/dist/headless.d.mts +6 -11
  37. package/dist/headless.d.ts +6 -11
  38. package/dist/headless.js +147 -147
  39. package/dist/headless.mjs +4 -4
  40. package/dist/index.d.mts +1 -1
  41. package/dist/index.d.ts +1 -1
  42. package/dist/index.js +188 -188
  43. package/dist/index.mjs +5 -5
  44. package/dist/privy-6LYDE24Z.mjs +64 -0
  45. package/dist/privy-6LYDE24Z.mjs.map +1 -0
  46. package/dist/privy-ID4YFTKR.js +66 -0
  47. package/dist/privy-ID4YFTKR.js.map +1 -0
  48. package/dist/protocol-G-z1lRqo.d.mts +166 -0
  49. package/dist/protocol-G-z1lRqo.d.ts +166 -0
  50. package/dist/react.d.mts +18 -6
  51. package/dist/react.d.ts +18 -6
  52. package/dist/react.js +49 -49
  53. package/dist/react.mjs +2 -2
  54. package/dist/remote.d.mts +46 -0
  55. package/dist/remote.d.ts +46 -0
  56. package/dist/remote.js +212 -0
  57. package/dist/remote.js.map +1 -0
  58. package/dist/remote.mjs +198 -0
  59. package/dist/remote.mjs.map +1 -0
  60. package/dist/server.d.mts +141 -0
  61. package/dist/server.d.ts +141 -0
  62. package/dist/server.js +189 -0
  63. package/dist/server.js.map +1 -0
  64. package/dist/server.mjs +187 -0
  65. package/dist/server.mjs.map +1 -0
  66. package/dist/{standard-shim-tmnQelaJ.d.ts → standard-shim-Cg6fmjK_.d.ts} +10 -0
  67. package/dist/{standard-shim-CGB88PPO.d.mts → standard-shim-Cz4UNS7t.d.mts} +10 -0
  68. package/dist/{walletconnect-447EY3OJ.js → walletconnect-F2M3PAAN.js} +8 -8
  69. package/dist/{walletconnect-447EY3OJ.js.map → walletconnect-F2M3PAAN.js.map} +1 -1
  70. package/dist/walletconnect-Z6LPGALR.mjs +3 -0
  71. package/dist/{walletconnect-U455PO4I.mjs.map → walletconnect-Z6LPGALR.mjs.map} +1 -1
  72. package/package.json +27 -2
  73. package/dist/chunk-BZ2VBJCZ.js.map +0 -1
  74. package/dist/chunk-EM4KNOKG.js.map +0 -1
  75. package/dist/chunk-IDTUFDNB.mjs.map +0 -1
  76. package/dist/chunk-RTXUS5KG.mjs.map +0 -1
  77. package/dist/chunk-SITQ4JWM.js.map +0 -1
  78. package/dist/chunk-ZZTY3O4N.mjs.map +0 -1
  79. package/dist/walletconnect-U455PO4I.mjs +0 -3
package/dist/compat.js CHANGED
@@ -1,10 +1,10 @@
1
1
  'use strict';
2
2
 
3
3
  var chunk4KD6HQQG_js = require('./chunk-4KD6HQQG.js');
4
- var chunkSITQ4JWM_js = require('./chunk-SITQ4JWM.js');
4
+ var chunkBF67LVVM_js = require('./chunk-BF67LVVM.js');
5
5
  var react = require('react');
6
6
 
7
- var logger = chunkSITQ4JWM_js.createLogger("WalletAdapterCompat");
7
+ var logger = chunkBF67LVVM_js.createLogger("WalletAdapterCompat");
8
8
  function createWalletAdapterCompat(signer, options) {
9
9
  let { disconnect, transformTransaction, onError } = options, handleError = (error, operation) => {
10
10
  onError ? onError(error, operation) : logger.error("Wallet adapter compat error", { operation, error });
package/dist/compat.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  import { tryCatch, isWeb3jsTransaction } from './chunk-HO6QNKFM.mjs';
2
- import { createLogger } from './chunk-ZZTY3O4N.mjs';
2
+ import { createLogger } from './chunk-SJCQ3KZE.mjs';
3
3
  import { useMemo } from 'react';
4
4
 
5
5
  var logger = createLogger("WalletAdapterCompat");
@@ -0,0 +1,67 @@
1
+ 'use strict';
2
+
3
+ // src/server/providers/fireblocks.ts
4
+ async function loadFireblocksSigner(config) {
5
+ let FireblocksSigner;
6
+ try {
7
+ FireblocksSigner = (await import('@solana/keychain-fireblocks')).FireblocksSigner;
8
+ } catch {
9
+ throw new Error(
10
+ "@solana/keychain-fireblocks is not installed. Install it with: npm install @solana/keychain-fireblocks"
11
+ );
12
+ }
13
+ if (!FireblocksSigner)
14
+ throw new Error("@solana/keychain-fireblocks does not export FireblocksSigner");
15
+ let signer = new FireblocksSigner({
16
+ apiKey: config.apiKey,
17
+ privateKeyPem: config.privateKeyPem,
18
+ vaultAccountId: config.vaultAccountId,
19
+ assetId: config.assetId,
20
+ apiBaseUrl: config.apiBaseUrl
21
+ });
22
+ return await signer.init(), {
23
+ get address() {
24
+ return signer.address;
25
+ },
26
+ async signTransaction(transactionBytes) {
27
+ return await signWithFireblocks(signer, transactionBytes);
28
+ },
29
+ async signAllTransactions(transactions) {
30
+ let results = [];
31
+ for (let txBytes of transactions) {
32
+ let signed = await signWithFireblocks(signer, txBytes);
33
+ results.push(signed);
34
+ }
35
+ return results;
36
+ },
37
+ async signMessage(message) {
38
+ let signableMessage = {
39
+ content: message,
40
+ signatures: {}
41
+ }, signature = (await signer.signMessages([signableMessage]))[0][signer.address];
42
+ if (!signature)
43
+ throw new Error("No signature returned from Fireblocks");
44
+ return signature;
45
+ },
46
+ async isAvailable() {
47
+ return signer.isAvailable();
48
+ }
49
+ };
50
+ }
51
+ async function signWithFireblocks(signer, transactionBytes) {
52
+ let { getTransactionDecoder, getTransactionEncoder } = await import('@solana/transactions'), transaction = getTransactionDecoder().decode(transactionBytes), signature = (await signer.signTransactions([transaction]))[0][signer.address];
53
+ if (!signature)
54
+ throw new Error("No signature returned from Fireblocks");
55
+ let encoder = getTransactionEncoder(), signedTx = {
56
+ ...transaction,
57
+ signatures: {
58
+ ...transaction.signatures,
59
+ [signer.address]: signature
60
+ }
61
+ }, encoded = encoder.encode(signedTx);
62
+ return new Uint8Array(encoded);
63
+ }
64
+
65
+ exports.loadFireblocksSigner = loadFireblocksSigner;
66
+ //# sourceMappingURL=fireblocks-FLKRTJU3.js.map
67
+ //# sourceMappingURL=fireblocks-FLKRTJU3.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/server/providers/fireblocks.ts"],"names":[],"mappings":";;;AA2BA,eAAsB,qBAAqB,MAAA,EAAyD;AAGhG,EAAA,IAAI,gBAAA;AAEJ,EAAA,IAAI;AAEA,IAAA,gBAAA,GAAA,CADgB,MAAM,OAAO,6BAA6B,CAAA,EAChC,gBAAA;AAAA,EAC9B,CAAA,CAAA,MAAgB;AACZ,IAAA,MAAM,IAAI,KAAA;AAAA,MACN;AAAA,KAEJ;AAAA,EACJ;AAEA,EAAA,IAAI,CAAC,gBAAA;AACD,IAAA,MAAM,IAAI,MAAM,8DAA8D,CAAA;AAIlF,EAAA,IAAM,MAAA,GAAS,IAAI,gBAAA,CAAiB;AAAA,IAChC,QAAQ,MAAA,CAAO,MAAA;AAAA,IACf,eAAe,MAAA,CAAO,aAAA;AAAA,IACtB,gBAAgB,MAAA,CAAO,cAAA;AAAA,IACvB,SAAS,MAAA,CAAO,OAAA;AAAA,IAChB,YAAY,MAAA,CAAO;AAAA,GACtB,CAAA;AAGD,EAAA,OAAA,MAAM,MAAA,CAAO,MAAK,EAGX;AAAA,IACH,IAAI,OAAA,GAAU;AACV,MAAA,OAAO,MAAA,CAAO,OAAA;AAAA,IAClB,CAAA;AAAA,IAEA,MAAM,gBAAgB,gBAAA,EAAmD;AAQrE,MAAA,OADe,MAAM,kBAAA,CAAmB,MAAA,EAAQ,gBAAgB,CAAA;AAAA,IAEpE,CAAA;AAAA,IAEA,MAAM,oBAAoB,YAAA,EAAmD;AAEzE,MAAA,IAAM,UAAwB,EAAC;AAC/B,MAAA,KAAA,IAAW,WAAW,YAAA,EAAc;AAChC,QAAA,IAAM,MAAA,GAAS,MAAM,kBAAA,CAAmB,MAAA,EAAQ,OAAO,CAAA;AACvD,QAAA,OAAA,CAAQ,KAAK,MAAM,CAAA;AAAA,MACvB;AACA,MAAA,OAAO,OAAA;AAAA,IACX,CAAA;AAAA,IAEA,MAAM,YAAY,OAAA,EAA0C;AAGxD,MAAA,IAAM,eAAA,GAAkB;AAAA,QACpB,OAAA,EAAS,OAAA;AAAA,QACT,YAAY;AAAC,OACjB,EAMM,SAAA,GAAA,CAJU,MAAM,MAAA,CAAO,YAAA,CAAa,CAAC,eAA6C,CAAC,CAAA,EAGjE,CAAC,CAAA,CACC,MAAA,CAAO,OAAO,CAAA;AAExC,MAAA,IAAI,CAAC,SAAA;AACD,QAAA,MAAM,IAAI,MAAM,uCAAuC,CAAA;AAG3D,MAAA,OAAO,SAAA;AAAA,IACX,CAAA;AAAA,IAEA,MAAM,WAAA,GAAgC;AAClC,MAAA,OAAO,OAAO,WAAA,EAAY;AAAA,IAC9B;AAAA,GACJ;AACJ;AAKA,eAAe,kBAAA,CAAmB,QAA8B,gBAAA,EAAmD;AAE/G,EAAA,IAAM,EAAE,qBAAA,EAAuB,qBAAA,EAAsB,GAAI,MAAM,OAAO,sBAAsB,CAAA,EAItF,WAAA,GADU,qBAAA,EAAsB,CACV,MAAA,CAAO,gBAAgB,CAAA,EAO7C,SAAA,GAAA,CAJU,MAAM,MAAA,CAAO,gBAAA,CAAiB,CAAC,WAAsB,CAAC,CAAA,EAG9C,CAAC,CAAA,CACC,MAAA,CAAO,OAAO,CAAA;AAExC,EAAA,IAAI,CAAC,SAAA;AACD,IAAA,MAAM,IAAI,MAAM,uCAAuC,CAAA;AAI3D,EAAA,IAAM,OAAA,GAAU,qBAAA,EAAsB,EAChC,QAAA,GAAW;AAAA,IACb,GAAG,WAAA;AAAA,IACH,UAAA,EAAY;AAAA,MACR,GAAG,WAAA,CAAY,UAAA;AAAA,MACf,CAAC,MAAA,CAAO,OAAO,GAAG;AAAA;AACtB,GACJ,EAEM,OAAA,GAAU,OAAA,CAAQ,MAAA,CAAO,QAAgD,CAAA;AAC/E,EAAA,OAAO,IAAI,WAAW,OAAO,CAAA;AACjC","file":"fireblocks-FLKRTJU3.js","sourcesContent":["/**\n * @solana/connector/server - Fireblocks Provider\n *\n * Dynamically loads @solana/keychain and adapts the Fireblocks signer to the RemoteSigner interface.\n * This file is only imported server-side when Fireblocks is configured.\n */\n\nimport type { RemoteSigner, FireblocksProviderConfig } from '../route-handlers';\nimport type { SignableMessage } from '@solana/signers';\n\ninterface KeychainSignerLike {\n address: string;\n isAvailable: () => Promise<boolean>;\n signMessages: (messages: SignableMessage[]) => Promise<Record<string, Uint8Array>[]>;\n signTransactions: (transactions: unknown[]) => Promise<Record<string, Uint8Array>[]>;\n}\n\ninterface FireblocksSignerLike extends KeychainSignerLike {\n init: () => Promise<void>;\n}\n\n/**\n * Load and initialize a Fireblocks signer\n *\n * @param config - Fireblocks provider configuration\n * @returns RemoteSigner implementation backed by Fireblocks\n */\nexport async function loadFireblocksSigner(config: FireblocksProviderConfig): Promise<RemoteSigner> {\n // Dynamically import @solana/keychain\n // This keeps the dependency optional and only loaded when needed\n let FireblocksSigner: (new (args: unknown) => FireblocksSignerLike) | undefined;\n\n try {\n const module = (await import('@solana/keychain-fireblocks')) as unknown as { FireblocksSigner?: unknown };\n FireblocksSigner = module.FireblocksSigner as (new (args: unknown) => FireblocksSignerLike) | undefined;\n } catch (error) {\n throw new Error(\n '@solana/keychain-fireblocks is not installed. ' +\n 'Install it with: npm install @solana/keychain-fireblocks',\n );\n }\n\n if (!FireblocksSigner) {\n throw new Error('@solana/keychain-fireblocks does not export FireblocksSigner');\n }\n\n // Create and initialize the Fireblocks signer\n const signer = new FireblocksSigner({\n apiKey: config.apiKey,\n privateKeyPem: config.privateKeyPem,\n vaultAccountId: config.vaultAccountId,\n assetId: config.assetId,\n apiBaseUrl: config.apiBaseUrl,\n });\n\n // Initialize to fetch the public key\n await signer.init();\n\n // Adapt to RemoteSigner interface\n return {\n get address() {\n return signer.address;\n },\n\n async signTransaction(transactionBytes: Uint8Array): Promise<Uint8Array> {\n // Fireblocks signer expects Kit transactions, but we have raw bytes\n // We need to decode, sign, and re-encode\n // For now, use the raw signing approach\n\n // The keychain signer's signTransactions expects Transaction objects\n // We'll use a workaround: create a minimal transaction-like object\n const result = await signWithFireblocks(signer, transactionBytes);\n return result;\n },\n\n async signAllTransactions(transactions: Uint8Array[]): Promise<Uint8Array[]> {\n // Sign each transaction sequentially\n const results: Uint8Array[] = [];\n for (const txBytes of transactions) {\n const signed = await signWithFireblocks(signer, txBytes);\n results.push(signed);\n }\n return results;\n },\n\n async signMessage(message: Uint8Array): Promise<Uint8Array> {\n // Use the signer's signMessages method\n // Create a SignableMessage\n const signableMessage = {\n content: message,\n signatures: {} as Record<string, Uint8Array>,\n };\n\n const results = await signer.signMessages([signableMessage as unknown as SignableMessage]);\n\n // Extract the signature from the first result\n const sigDict = results[0];\n const signature = sigDict[signer.address];\n\n if (!signature) {\n throw new Error('No signature returned from Fireblocks');\n }\n\n return signature;\n },\n\n async isAvailable(): Promise<boolean> {\n return signer.isAvailable();\n },\n };\n}\n\n/**\n * Sign transaction bytes using the Fireblocks signer\n */\nasync function signWithFireblocks(signer: FireblocksSignerLike, transactionBytes: Uint8Array): Promise<Uint8Array> {\n // Import transaction utilities\n const { getTransactionDecoder, getTransactionEncoder } = await import('@solana/transactions');\n\n // Decode the transaction\n const decoder = getTransactionDecoder();\n const transaction = decoder.decode(transactionBytes);\n\n // Sign the transaction\n const results = await signer.signTransactions([transaction as unknown]);\n\n // Get the signature\n const sigDict = results[0];\n const signature = sigDict[signer.address];\n\n if (!signature) {\n throw new Error('No signature returned from Fireblocks');\n }\n\n // Re-encode the transaction with the signature\n const encoder = getTransactionEncoder();\n const signedTx = {\n ...transaction,\n signatures: {\n ...transaction.signatures,\n [signer.address]: signature,\n },\n };\n\n const encoded = encoder.encode(signedTx as Parameters<typeof encoder.encode>[0]);\n return new Uint8Array(encoded);\n}\n"]}
@@ -0,0 +1,65 @@
1
+ // src/server/providers/fireblocks.ts
2
+ async function loadFireblocksSigner(config) {
3
+ let FireblocksSigner;
4
+ try {
5
+ FireblocksSigner = (await import('@solana/keychain-fireblocks')).FireblocksSigner;
6
+ } catch {
7
+ throw new Error(
8
+ "@solana/keychain-fireblocks is not installed. Install it with: npm install @solana/keychain-fireblocks"
9
+ );
10
+ }
11
+ if (!FireblocksSigner)
12
+ throw new Error("@solana/keychain-fireblocks does not export FireblocksSigner");
13
+ let signer = new FireblocksSigner({
14
+ apiKey: config.apiKey,
15
+ privateKeyPem: config.privateKeyPem,
16
+ vaultAccountId: config.vaultAccountId,
17
+ assetId: config.assetId,
18
+ apiBaseUrl: config.apiBaseUrl
19
+ });
20
+ return await signer.init(), {
21
+ get address() {
22
+ return signer.address;
23
+ },
24
+ async signTransaction(transactionBytes) {
25
+ return await signWithFireblocks(signer, transactionBytes);
26
+ },
27
+ async signAllTransactions(transactions) {
28
+ let results = [];
29
+ for (let txBytes of transactions) {
30
+ let signed = await signWithFireblocks(signer, txBytes);
31
+ results.push(signed);
32
+ }
33
+ return results;
34
+ },
35
+ async signMessage(message) {
36
+ let signableMessage = {
37
+ content: message,
38
+ signatures: {}
39
+ }, signature = (await signer.signMessages([signableMessage]))[0][signer.address];
40
+ if (!signature)
41
+ throw new Error("No signature returned from Fireblocks");
42
+ return signature;
43
+ },
44
+ async isAvailable() {
45
+ return signer.isAvailable();
46
+ }
47
+ };
48
+ }
49
+ async function signWithFireblocks(signer, transactionBytes) {
50
+ let { getTransactionDecoder, getTransactionEncoder } = await import('@solana/transactions'), transaction = getTransactionDecoder().decode(transactionBytes), signature = (await signer.signTransactions([transaction]))[0][signer.address];
51
+ if (!signature)
52
+ throw new Error("No signature returned from Fireblocks");
53
+ let encoder = getTransactionEncoder(), signedTx = {
54
+ ...transaction,
55
+ signatures: {
56
+ ...transaction.signatures,
57
+ [signer.address]: signature
58
+ }
59
+ }, encoded = encoder.encode(signedTx);
60
+ return new Uint8Array(encoded);
61
+ }
62
+
63
+ export { loadFireblocksSigner };
64
+ //# sourceMappingURL=fireblocks-KCJV3GEK.mjs.map
65
+ //# sourceMappingURL=fireblocks-KCJV3GEK.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/server/providers/fireblocks.ts"],"names":[],"mappings":";AA2BA,eAAsB,qBAAqB,MAAA,EAAyD;AAGhG,EAAA,IAAI,gBAAA;AAEJ,EAAA,IAAI;AAEA,IAAA,gBAAA,GAAA,CADgB,MAAM,OAAO,6BAA6B,CAAA,EAChC,gBAAA;AAAA,EAC9B,CAAA,CAAA,MAAgB;AACZ,IAAA,MAAM,IAAI,KAAA;AAAA,MACN;AAAA,KAEJ;AAAA,EACJ;AAEA,EAAA,IAAI,CAAC,gBAAA;AACD,IAAA,MAAM,IAAI,MAAM,8DAA8D,CAAA;AAIlF,EAAA,IAAM,MAAA,GAAS,IAAI,gBAAA,CAAiB;AAAA,IAChC,QAAQ,MAAA,CAAO,MAAA;AAAA,IACf,eAAe,MAAA,CAAO,aAAA;AAAA,IACtB,gBAAgB,MAAA,CAAO,cAAA;AAAA,IACvB,SAAS,MAAA,CAAO,OAAA;AAAA,IAChB,YAAY,MAAA,CAAO;AAAA,GACtB,CAAA;AAGD,EAAA,OAAA,MAAM,MAAA,CAAO,MAAK,EAGX;AAAA,IACH,IAAI,OAAA,GAAU;AACV,MAAA,OAAO,MAAA,CAAO,OAAA;AAAA,IAClB,CAAA;AAAA,IAEA,MAAM,gBAAgB,gBAAA,EAAmD;AAQrE,MAAA,OADe,MAAM,kBAAA,CAAmB,MAAA,EAAQ,gBAAgB,CAAA;AAAA,IAEpE,CAAA;AAAA,IAEA,MAAM,oBAAoB,YAAA,EAAmD;AAEzE,MAAA,IAAM,UAAwB,EAAC;AAC/B,MAAA,KAAA,IAAW,WAAW,YAAA,EAAc;AAChC,QAAA,IAAM,MAAA,GAAS,MAAM,kBAAA,CAAmB,MAAA,EAAQ,OAAO,CAAA;AACvD,QAAA,OAAA,CAAQ,KAAK,MAAM,CAAA;AAAA,MACvB;AACA,MAAA,OAAO,OAAA;AAAA,IACX,CAAA;AAAA,IAEA,MAAM,YAAY,OAAA,EAA0C;AAGxD,MAAA,IAAM,eAAA,GAAkB;AAAA,QACpB,OAAA,EAAS,OAAA;AAAA,QACT,YAAY;AAAC,OACjB,EAMM,SAAA,GAAA,CAJU,MAAM,MAAA,CAAO,YAAA,CAAa,CAAC,eAA6C,CAAC,CAAA,EAGjE,CAAC,CAAA,CACC,MAAA,CAAO,OAAO,CAAA;AAExC,MAAA,IAAI,CAAC,SAAA;AACD,QAAA,MAAM,IAAI,MAAM,uCAAuC,CAAA;AAG3D,MAAA,OAAO,SAAA;AAAA,IACX,CAAA;AAAA,IAEA,MAAM,WAAA,GAAgC;AAClC,MAAA,OAAO,OAAO,WAAA,EAAY;AAAA,IAC9B;AAAA,GACJ;AACJ;AAKA,eAAe,kBAAA,CAAmB,QAA8B,gBAAA,EAAmD;AAE/G,EAAA,IAAM,EAAE,qBAAA,EAAuB,qBAAA,EAAsB,GAAI,MAAM,OAAO,sBAAsB,CAAA,EAItF,WAAA,GADU,qBAAA,EAAsB,CACV,MAAA,CAAO,gBAAgB,CAAA,EAO7C,SAAA,GAAA,CAJU,MAAM,MAAA,CAAO,gBAAA,CAAiB,CAAC,WAAsB,CAAC,CAAA,EAG9C,CAAC,CAAA,CACC,MAAA,CAAO,OAAO,CAAA;AAExC,EAAA,IAAI,CAAC,SAAA;AACD,IAAA,MAAM,IAAI,MAAM,uCAAuC,CAAA;AAI3D,EAAA,IAAM,OAAA,GAAU,qBAAA,EAAsB,EAChC,QAAA,GAAW;AAAA,IACb,GAAG,WAAA;AAAA,IACH,UAAA,EAAY;AAAA,MACR,GAAG,WAAA,CAAY,UAAA;AAAA,MACf,CAAC,MAAA,CAAO,OAAO,GAAG;AAAA;AACtB,GACJ,EAEM,OAAA,GAAU,OAAA,CAAQ,MAAA,CAAO,QAAgD,CAAA;AAC/E,EAAA,OAAO,IAAI,WAAW,OAAO,CAAA;AACjC","file":"fireblocks-KCJV3GEK.mjs","sourcesContent":["/**\n * @solana/connector/server - Fireblocks Provider\n *\n * Dynamically loads @solana/keychain and adapts the Fireblocks signer to the RemoteSigner interface.\n * This file is only imported server-side when Fireblocks is configured.\n */\n\nimport type { RemoteSigner, FireblocksProviderConfig } from '../route-handlers';\nimport type { SignableMessage } from '@solana/signers';\n\ninterface KeychainSignerLike {\n address: string;\n isAvailable: () => Promise<boolean>;\n signMessages: (messages: SignableMessage[]) => Promise<Record<string, Uint8Array>[]>;\n signTransactions: (transactions: unknown[]) => Promise<Record<string, Uint8Array>[]>;\n}\n\ninterface FireblocksSignerLike extends KeychainSignerLike {\n init: () => Promise<void>;\n}\n\n/**\n * Load and initialize a Fireblocks signer\n *\n * @param config - Fireblocks provider configuration\n * @returns RemoteSigner implementation backed by Fireblocks\n */\nexport async function loadFireblocksSigner(config: FireblocksProviderConfig): Promise<RemoteSigner> {\n // Dynamically import @solana/keychain\n // This keeps the dependency optional and only loaded when needed\n let FireblocksSigner: (new (args: unknown) => FireblocksSignerLike) | undefined;\n\n try {\n const module = (await import('@solana/keychain-fireblocks')) as unknown as { FireblocksSigner?: unknown };\n FireblocksSigner = module.FireblocksSigner as (new (args: unknown) => FireblocksSignerLike) | undefined;\n } catch (error) {\n throw new Error(\n '@solana/keychain-fireblocks is not installed. ' +\n 'Install it with: npm install @solana/keychain-fireblocks',\n );\n }\n\n if (!FireblocksSigner) {\n throw new Error('@solana/keychain-fireblocks does not export FireblocksSigner');\n }\n\n // Create and initialize the Fireblocks signer\n const signer = new FireblocksSigner({\n apiKey: config.apiKey,\n privateKeyPem: config.privateKeyPem,\n vaultAccountId: config.vaultAccountId,\n assetId: config.assetId,\n apiBaseUrl: config.apiBaseUrl,\n });\n\n // Initialize to fetch the public key\n await signer.init();\n\n // Adapt to RemoteSigner interface\n return {\n get address() {\n return signer.address;\n },\n\n async signTransaction(transactionBytes: Uint8Array): Promise<Uint8Array> {\n // Fireblocks signer expects Kit transactions, but we have raw bytes\n // We need to decode, sign, and re-encode\n // For now, use the raw signing approach\n\n // The keychain signer's signTransactions expects Transaction objects\n // We'll use a workaround: create a minimal transaction-like object\n const result = await signWithFireblocks(signer, transactionBytes);\n return result;\n },\n\n async signAllTransactions(transactions: Uint8Array[]): Promise<Uint8Array[]> {\n // Sign each transaction sequentially\n const results: Uint8Array[] = [];\n for (const txBytes of transactions) {\n const signed = await signWithFireblocks(signer, txBytes);\n results.push(signed);\n }\n return results;\n },\n\n async signMessage(message: Uint8Array): Promise<Uint8Array> {\n // Use the signer's signMessages method\n // Create a SignableMessage\n const signableMessage = {\n content: message,\n signatures: {} as Record<string, Uint8Array>,\n };\n\n const results = await signer.signMessages([signableMessage as unknown as SignableMessage]);\n\n // Extract the signature from the first result\n const sigDict = results[0];\n const signature = sigDict[signer.address];\n\n if (!signature) {\n throw new Error('No signature returned from Fireblocks');\n }\n\n return signature;\n },\n\n async isAvailable(): Promise<boolean> {\n return signer.isAvailable();\n },\n };\n}\n\n/**\n * Sign transaction bytes using the Fireblocks signer\n */\nasync function signWithFireblocks(signer: FireblocksSignerLike, transactionBytes: Uint8Array): Promise<Uint8Array> {\n // Import transaction utilities\n const { getTransactionDecoder, getTransactionEncoder } = await import('@solana/transactions');\n\n // Decode the transaction\n const decoder = getTransactionDecoder();\n const transaction = decoder.decode(transactionBytes);\n\n // Sign the transaction\n const results = await signer.signTransactions([transaction as unknown]);\n\n // Get the signature\n const sigDict = results[0];\n const signature = sigDict[signer.address];\n\n if (!signature) {\n throw new Error('No signature returned from Fireblocks');\n }\n\n // Re-encode the transaction with the signature\n const encoder = getTransactionEncoder();\n const signedTx = {\n ...transaction,\n signatures: {\n ...transaction.signatures,\n [signer.address]: signature,\n },\n };\n\n const encoded = encoder.encode(signedTx as Parameters<typeof encoder.encode>[0]);\n return new Uint8Array(encoded);\n}\n"]}
@@ -1,5 +1,8 @@
1
- import { t as ClusterType, ad as StorageOptions, ac as StorageAdapter, ae as EnhancedStorageAccountOptions, af as EnhancedStorageClusterOptions, ag as EnhancedStorageWalletOptions, ah as EnhancedStorageWalletStateOptions, ai as PersistedWalletState, _ as WalletConnectConfig, a0 as WalletConnectTransport } from './standard-shim-CGB88PPO.mjs';
2
- export { a2 as AccountAddress, A as AccountInfo, as as ClipboardErrorType, at as ClipboardResult, a5 as CoinGeckoConfig, n as ConnectOptions, v as ConnectorClient, d as ConnectorConfig, a7 as ConnectorDebugMetrics, a8 as ConnectorDebugState, aa as ConnectorEvent, ab as ConnectorEventListener, a6 as ConnectorHealth, e as ConnectorState, au as CopyOptions, Z as CreateSolanaClientArgs, D as DefaultConfigOptions, E as ExtendedConnectorConfig, I as INITIAL_WALLET_STATUS, a9 as Listener, M as MobileWalletAdapterConfig, X as ModifiedClusterUrl, R as RegisterMwaConfig, m as SessionAccount, Y as SolanaClient, V as SolanaClusterMoniker, $ as WalletConnectMetadata, ao as WalletConnectSignAllTransactionsParams, ap as WalletConnectSignAllTransactionsResult, aq as WalletConnectSignAndSendTransactionParams, ar as WalletConnectSignAndSendTransactionResult, ak as WalletConnectSignMessageParams, al as WalletConnectSignMessageResult, am as WalletConnectSignTransactionParams, an as WalletConnectSignTransactionResult, aj as WalletConnectSolanaAccount, G as WalletConnector, i as WalletConnectorId, j as WalletConnectorMetadata, Q as WalletError, N as WalletErrorType, W as WalletInfo, a1 as WalletName, k as WalletSession, h as WalletStandardAccount, f as WalletStandardWallet, l as WalletStatus, K as WalletStatusConnected, J as WalletStatusConnecting, H as WalletStatusDisconnected, L as WalletStatusError, ax as copyAddressToClipboard, ay as copySignatureToClipboard, aw as copyToClipboard, o as createConnectorId, U as createSolanaClient, P as createWalletError, aC as getAddressUrl, aE as getBlockUrl, aM as getChainIdForWalletStandard, aL as getClusterChainId, aA as getClusterExplorerUrl, aJ as getClusterName, az as getClusterRpcUrl, aK as getClusterType, g as getDefaultConfig, b as getDefaultMobileConfig, T as getPublicSolanaRpcUrl, aD as getTokenUrl, aB as getTransactionUrl, y as getWalletNameFromConnectorId, w as getWalletsRegistry, a4 as isAccountAddress, av as isClipboardAvailable, q as isConnected, r as isConnecting, aG as isDevnetCluster, s as isDisconnected, aI as isLocalCluster, aF as isMainnetCluster, z as isStatusError, aH as isTestnetCluster, p as isWalletConnectorId, O as isWalletError, a3 as isWalletName, B as isWalletStatusError, x as ready, F as toLegacyWalletState } from './standard-shim-CGB88PPO.mjs';
1
+ import { t as ClusterType, ad as StorageOptions, ac as StorageAdapter, ae as EnhancedStorageAccountOptions, af as EnhancedStorageClusterOptions, ag as EnhancedStorageWalletOptions, ah as EnhancedStorageWalletStateOptions, ai as PersistedWalletState, _ as WalletConnectConfig, a0 as WalletConnectTransport } from './standard-shim-Cz4UNS7t.mjs';
2
+ export { a2 as AccountAddress, A as AccountInfo, as as ClipboardErrorType, at as ClipboardResult, a5 as CoinGeckoConfig, n as ConnectOptions, v as ConnectorClient, d as ConnectorConfig, a7 as ConnectorDebugMetrics, a8 as ConnectorDebugState, aa as ConnectorEvent, ab as ConnectorEventListener, a6 as ConnectorHealth, e as ConnectorState, au as CopyOptions, Z as CreateSolanaClientArgs, D as DefaultConfigOptions, E as ExtendedConnectorConfig, I as INITIAL_WALLET_STATUS, a9 as Listener, M as MobileWalletAdapterConfig, X as ModifiedClusterUrl, R as RegisterMwaConfig, m as SessionAccount, Y as SolanaClient, V as SolanaClusterMoniker, $ as WalletConnectMetadata, ao as WalletConnectSignAllTransactionsParams, ap as WalletConnectSignAllTransactionsResult, aq as WalletConnectSignAndSendTransactionParams, ar as WalletConnectSignAndSendTransactionResult, ak as WalletConnectSignMessageParams, al as WalletConnectSignMessageResult, am as WalletConnectSignTransactionParams, an as WalletConnectSignTransactionResult, aj as WalletConnectSolanaAccount, G as WalletConnector, i as WalletConnectorId, j as WalletConnectorMetadata, Q as WalletError, N as WalletErrorType, W as WalletInfo, a1 as WalletName, k as WalletSession, h as WalletStandardAccount, f as WalletStandardWallet, l as WalletStatus, K as WalletStatusConnected, J as WalletStatusConnecting, H as WalletStatusDisconnected, L as WalletStatusError, ax as copyAddressToClipboard, ay as copySignatureToClipboard, aw as copyToClipboard, o as createConnectorId, U as createSolanaClient, P as createWalletError, aC as getAddressUrl, aE as getBlockUrl, aM as getChainIdForWalletStandard, aL as getClusterChainId, aA as getClusterExplorerUrl, aJ as getClusterName, az as getClusterRpcUrl, aK as getClusterType, g as getDefaultConfig, b as getDefaultMobileConfig, T as getPublicSolanaRpcUrl, aD as getTokenUrl, aB as getTransactionUrl, y as getWalletNameFromConnectorId, w as getWalletsRegistry, a4 as isAccountAddress, av as isClipboardAvailable, q as isConnected, r as isConnecting, aG as isDevnetCluster, s as isDisconnected, aI as isLocalCluster, aF as isMainnetCluster, z as isStatusError, aH as isTestnetCluster, p as isWalletConnectorId, O as isWalletError, a3 as isWalletName, B as isWalletStatusError, x as ready, F as toLegacyWalletState } from './standard-shim-Cz4UNS7t.mjs';
3
+ import * as _wallet_standard_base from '@wallet-standard/base';
4
+ import { Wallet, WalletAccount } from '@wallet-standard/base';
5
+ export { Wallet, WalletAccount } from '@wallet-standard/base';
3
6
  import { z } from 'zod/v4';
4
7
  import { a as TransactionSigner } from './transaction-signer-7NaYmP5w.mjs';
5
8
  export { d as ConfigurationError, p as ConfigurationErrorCode, b as ConnectionError, n as ConnectionErrorCode, C as ConnectorError, E as Errors, N as NetworkError, q as NetworkErrorCode, u as SignedTransaction, S as SolanaTransaction, w as TransactionActivity, x as TransactionActivityStatus, e as TransactionError, r as TransactionErrorCode, z as TransactionMetadata, y as TransactionMethod, v as TransactionSignerCapabilities, s as TransactionSignerConfig, T as TransactionSignerError, V as ValidationError, o as ValidationErrorCode, c as createTransactionSigner, m as getUserFriendlyMessage, j as isConfigurationError, g as isConnectionError, f as isConnectorError, k as isNetworkError, l as isTransactionError, i as isTransactionSignerError, h as isValidationError, t as toConnectorError } from './transaction-signer-7NaYmP5w.mjs';
@@ -15,20 +18,11 @@ import { SignatureBytes } from '@solana/keys';
15
18
  export { SignatureBytes } from '@solana/keys';
16
19
  import { Transaction } from '@solana/transactions';
17
20
  export { Transaction } from '@solana/transactions';
18
- import { Wallet, WalletAccount } from '@wallet-standard/base';
19
- export { Wallet, WalletAccount } from '@wallet-standard/base';
20
21
  import 'react/jsx-runtime';
21
22
  import 'react';
22
23
  import '@solana-mobile/wallet-standard-mobile';
23
24
  import '@solana/transaction-messages';
24
25
 
25
- /**
26
- * @solana/connector - Configuration Schemas
27
- *
28
- * Zod schemas for runtime validation of configuration options.
29
- * These schemas provide type-safe validation with helpful error messages.
30
- */
31
-
32
26
  declare const defaultConfigOptionsSchema: z.ZodObject<{
33
27
  appName: z.ZodString;
34
28
  appUrl: z.ZodOptional<z.ZodString>;
@@ -100,6 +94,7 @@ declare const defaultConfigOptionsSchema: z.ZodObject<{
100
94
  onSessionDisconnected: z.ZodOptional<z.ZodCustom<() => void, () => void>>;
101
95
  relayUrl: z.ZodOptional<z.ZodString>;
102
96
  }, z.core.$strip>]>>;
97
+ additionalWallets: z.ZodOptional<z.ZodArray<z.ZodCustom<_wallet_standard_base.Wallet, _wallet_standard_base.Wallet>>>;
103
98
  onError: z.ZodOptional<z.ZodCustom<(...args: unknown[]) => unknown, (...args: unknown[]) => unknown>>;
104
99
  }, z.core.$strip>;
105
100
  type DefaultConfigOptionsInput = z.input<typeof defaultConfigOptionsSchema>;
@@ -1,5 +1,8 @@
1
- import { t as ClusterType, ad as StorageOptions, ac as StorageAdapter, ae as EnhancedStorageAccountOptions, af as EnhancedStorageClusterOptions, ag as EnhancedStorageWalletOptions, ah as EnhancedStorageWalletStateOptions, ai as PersistedWalletState, _ as WalletConnectConfig, a0 as WalletConnectTransport } from './standard-shim-tmnQelaJ.js';
2
- export { a2 as AccountAddress, A as AccountInfo, as as ClipboardErrorType, at as ClipboardResult, a5 as CoinGeckoConfig, n as ConnectOptions, v as ConnectorClient, d as ConnectorConfig, a7 as ConnectorDebugMetrics, a8 as ConnectorDebugState, aa as ConnectorEvent, ab as ConnectorEventListener, a6 as ConnectorHealth, e as ConnectorState, au as CopyOptions, Z as CreateSolanaClientArgs, D as DefaultConfigOptions, E as ExtendedConnectorConfig, I as INITIAL_WALLET_STATUS, a9 as Listener, M as MobileWalletAdapterConfig, X as ModifiedClusterUrl, R as RegisterMwaConfig, m as SessionAccount, Y as SolanaClient, V as SolanaClusterMoniker, $ as WalletConnectMetadata, ao as WalletConnectSignAllTransactionsParams, ap as WalletConnectSignAllTransactionsResult, aq as WalletConnectSignAndSendTransactionParams, ar as WalletConnectSignAndSendTransactionResult, ak as WalletConnectSignMessageParams, al as WalletConnectSignMessageResult, am as WalletConnectSignTransactionParams, an as WalletConnectSignTransactionResult, aj as WalletConnectSolanaAccount, G as WalletConnector, i as WalletConnectorId, j as WalletConnectorMetadata, Q as WalletError, N as WalletErrorType, W as WalletInfo, a1 as WalletName, k as WalletSession, h as WalletStandardAccount, f as WalletStandardWallet, l as WalletStatus, K as WalletStatusConnected, J as WalletStatusConnecting, H as WalletStatusDisconnected, L as WalletStatusError, ax as copyAddressToClipboard, ay as copySignatureToClipboard, aw as copyToClipboard, o as createConnectorId, U as createSolanaClient, P as createWalletError, aC as getAddressUrl, aE as getBlockUrl, aM as getChainIdForWalletStandard, aL as getClusterChainId, aA as getClusterExplorerUrl, aJ as getClusterName, az as getClusterRpcUrl, aK as getClusterType, g as getDefaultConfig, b as getDefaultMobileConfig, T as getPublicSolanaRpcUrl, aD as getTokenUrl, aB as getTransactionUrl, y as getWalletNameFromConnectorId, w as getWalletsRegistry, a4 as isAccountAddress, av as isClipboardAvailable, q as isConnected, r as isConnecting, aG as isDevnetCluster, s as isDisconnected, aI as isLocalCluster, aF as isMainnetCluster, z as isStatusError, aH as isTestnetCluster, p as isWalletConnectorId, O as isWalletError, a3 as isWalletName, B as isWalletStatusError, x as ready, F as toLegacyWalletState } from './standard-shim-tmnQelaJ.js';
1
+ import { t as ClusterType, ad as StorageOptions, ac as StorageAdapter, ae as EnhancedStorageAccountOptions, af as EnhancedStorageClusterOptions, ag as EnhancedStorageWalletOptions, ah as EnhancedStorageWalletStateOptions, ai as PersistedWalletState, _ as WalletConnectConfig, a0 as WalletConnectTransport } from './standard-shim-Cg6fmjK_.js';
2
+ export { a2 as AccountAddress, A as AccountInfo, as as ClipboardErrorType, at as ClipboardResult, a5 as CoinGeckoConfig, n as ConnectOptions, v as ConnectorClient, d as ConnectorConfig, a7 as ConnectorDebugMetrics, a8 as ConnectorDebugState, aa as ConnectorEvent, ab as ConnectorEventListener, a6 as ConnectorHealth, e as ConnectorState, au as CopyOptions, Z as CreateSolanaClientArgs, D as DefaultConfigOptions, E as ExtendedConnectorConfig, I as INITIAL_WALLET_STATUS, a9 as Listener, M as MobileWalletAdapterConfig, X as ModifiedClusterUrl, R as RegisterMwaConfig, m as SessionAccount, Y as SolanaClient, V as SolanaClusterMoniker, $ as WalletConnectMetadata, ao as WalletConnectSignAllTransactionsParams, ap as WalletConnectSignAllTransactionsResult, aq as WalletConnectSignAndSendTransactionParams, ar as WalletConnectSignAndSendTransactionResult, ak as WalletConnectSignMessageParams, al as WalletConnectSignMessageResult, am as WalletConnectSignTransactionParams, an as WalletConnectSignTransactionResult, aj as WalletConnectSolanaAccount, G as WalletConnector, i as WalletConnectorId, j as WalletConnectorMetadata, Q as WalletError, N as WalletErrorType, W as WalletInfo, a1 as WalletName, k as WalletSession, h as WalletStandardAccount, f as WalletStandardWallet, l as WalletStatus, K as WalletStatusConnected, J as WalletStatusConnecting, H as WalletStatusDisconnected, L as WalletStatusError, ax as copyAddressToClipboard, ay as copySignatureToClipboard, aw as copyToClipboard, o as createConnectorId, U as createSolanaClient, P as createWalletError, aC as getAddressUrl, aE as getBlockUrl, aM as getChainIdForWalletStandard, aL as getClusterChainId, aA as getClusterExplorerUrl, aJ as getClusterName, az as getClusterRpcUrl, aK as getClusterType, g as getDefaultConfig, b as getDefaultMobileConfig, T as getPublicSolanaRpcUrl, aD as getTokenUrl, aB as getTransactionUrl, y as getWalletNameFromConnectorId, w as getWalletsRegistry, a4 as isAccountAddress, av as isClipboardAvailable, q as isConnected, r as isConnecting, aG as isDevnetCluster, s as isDisconnected, aI as isLocalCluster, aF as isMainnetCluster, z as isStatusError, aH as isTestnetCluster, p as isWalletConnectorId, O as isWalletError, a3 as isWalletName, B as isWalletStatusError, x as ready, F as toLegacyWalletState } from './standard-shim-Cg6fmjK_.js';
3
+ import * as _wallet_standard_base from '@wallet-standard/base';
4
+ import { Wallet, WalletAccount } from '@wallet-standard/base';
5
+ export { Wallet, WalletAccount } from '@wallet-standard/base';
3
6
  import { z } from 'zod/v4';
4
7
  import { a as TransactionSigner } from './transaction-signer-7NaYmP5w.js';
5
8
  export { d as ConfigurationError, p as ConfigurationErrorCode, b as ConnectionError, n as ConnectionErrorCode, C as ConnectorError, E as Errors, N as NetworkError, q as NetworkErrorCode, u as SignedTransaction, S as SolanaTransaction, w as TransactionActivity, x as TransactionActivityStatus, e as TransactionError, r as TransactionErrorCode, z as TransactionMetadata, y as TransactionMethod, v as TransactionSignerCapabilities, s as TransactionSignerConfig, T as TransactionSignerError, V as ValidationError, o as ValidationErrorCode, c as createTransactionSigner, m as getUserFriendlyMessage, j as isConfigurationError, g as isConnectionError, f as isConnectorError, k as isNetworkError, l as isTransactionError, i as isTransactionSignerError, h as isValidationError, t as toConnectorError } from './transaction-signer-7NaYmP5w.js';
@@ -15,20 +18,11 @@ import { SignatureBytes } from '@solana/keys';
15
18
  export { SignatureBytes } from '@solana/keys';
16
19
  import { Transaction } from '@solana/transactions';
17
20
  export { Transaction } from '@solana/transactions';
18
- import { Wallet, WalletAccount } from '@wallet-standard/base';
19
- export { Wallet, WalletAccount } from '@wallet-standard/base';
20
21
  import 'react/jsx-runtime';
21
22
  import 'react';
22
23
  import '@solana-mobile/wallet-standard-mobile';
23
24
  import '@solana/transaction-messages';
24
25
 
25
- /**
26
- * @solana/connector - Configuration Schemas
27
- *
28
- * Zod schemas for runtime validation of configuration options.
29
- * These schemas provide type-safe validation with helpful error messages.
30
- */
31
-
32
26
  declare const defaultConfigOptionsSchema: z.ZodObject<{
33
27
  appName: z.ZodString;
34
28
  appUrl: z.ZodOptional<z.ZodString>;
@@ -100,6 +94,7 @@ declare const defaultConfigOptionsSchema: z.ZodObject<{
100
94
  onSessionDisconnected: z.ZodOptional<z.ZodCustom<() => void, () => void>>;
101
95
  relayUrl: z.ZodOptional<z.ZodString>;
102
96
  }, z.core.$strip>]>>;
97
+ additionalWallets: z.ZodOptional<z.ZodArray<z.ZodCustom<_wallet_standard_base.Wallet, _wallet_standard_base.Wallet>>>;
103
98
  onError: z.ZodOptional<z.ZodCustom<(...args: unknown[]) => unknown, (...args: unknown[]) => unknown>>;
104
99
  }, z.core.$strip>;
105
100
  type DefaultConfigOptionsInput = z.input<typeof defaultConfigOptionsSchema>;