sf-x402x 0.6.6-patch.3

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 (92) hide show
  1. package/README.md +60 -0
  2. package/dist/cjs/client/index.d.ts +64 -0
  3. package/dist/cjs/client/index.js +811 -0
  4. package/dist/cjs/client/index.js.map +1 -0
  5. package/dist/cjs/config-CFBSAuxW.d.ts +10 -0
  6. package/dist/cjs/config-Dfuvno71.d.ts +19 -0
  7. package/dist/cjs/facilitator/index.d.ts +42 -0
  8. package/dist/cjs/facilitator/index.js +1827 -0
  9. package/dist/cjs/facilitator/index.js.map +1 -0
  10. package/dist/cjs/index.d.ts +16 -0
  11. package/dist/cjs/index.js +2207 -0
  12. package/dist/cjs/index.js.map +1 -0
  13. package/dist/cjs/middleware-BcYD9vqv.d.ts +93 -0
  14. package/dist/cjs/middleware-DagbDyNz.d.ts +93 -0
  15. package/dist/cjs/network--RYzQfBg.d.ts +11 -0
  16. package/dist/cjs/network-BGTUrx-D.d.ts +11 -0
  17. package/dist/cjs/paywall/index.d.ts +30 -0
  18. package/dist/cjs/paywall/index.js +141 -0
  19. package/dist/cjs/paywall/index.js.map +1 -0
  20. package/dist/cjs/rpc-De2c0oKR.d.ts +35 -0
  21. package/dist/cjs/rpc-TVntAK7V.d.ts +35 -0
  22. package/dist/cjs/schemes/index.d.ts +298 -0
  23. package/dist/cjs/schemes/index.js +2121 -0
  24. package/dist/cjs/schemes/index.js.map +1 -0
  25. package/dist/cjs/shared/evm/index.d.ts +55 -0
  26. package/dist/cjs/shared/evm/index.js +910 -0
  27. package/dist/cjs/shared/evm/index.js.map +1 -0
  28. package/dist/cjs/shared/index.d.ts +181 -0
  29. package/dist/cjs/shared/index.js +667 -0
  30. package/dist/cjs/shared/index.js.map +1 -0
  31. package/dist/cjs/types/index.d.ts +1214 -0
  32. package/dist/cjs/types/index.js +1408 -0
  33. package/dist/cjs/types/index.js.map +1 -0
  34. package/dist/cjs/verify/index.d.ts +7 -0
  35. package/dist/cjs/verify/index.js +427 -0
  36. package/dist/cjs/verify/index.js.map +1 -0
  37. package/dist/cjs/wallet-BReyvAJs.d.ts +151 -0
  38. package/dist/cjs/wallet-BTqCm9Zp.d.ts +27 -0
  39. package/dist/cjs/wallet-DndoTf1_.d.ts +48 -0
  40. package/dist/cjs/x402Specs-7OH8g851.d.ts +1306 -0
  41. package/dist/cjs/x402Specs-CFX8TBKR.d.ts +1306 -0
  42. package/dist/esm/chunk-5UPAZUO6.mjs +90 -0
  43. package/dist/esm/chunk-5UPAZUO6.mjs.map +1 -0
  44. package/dist/esm/chunk-7CWEZNFA.mjs +812 -0
  45. package/dist/esm/chunk-7CWEZNFA.mjs.map +1 -0
  46. package/dist/esm/chunk-MWDK4RSB.mjs +620 -0
  47. package/dist/esm/chunk-MWDK4RSB.mjs.map +1 -0
  48. package/dist/esm/chunk-R2NI44QI.mjs +327 -0
  49. package/dist/esm/chunk-R2NI44QI.mjs.map +1 -0
  50. package/dist/esm/chunk-WS2W5DJT.mjs +58 -0
  51. package/dist/esm/chunk-WS2W5DJT.mjs.map +1 -0
  52. package/dist/esm/chunk-XZA3USQF.mjs +784 -0
  53. package/dist/esm/chunk-XZA3USQF.mjs.map +1 -0
  54. package/dist/esm/chunk-Z3INM7T4.mjs +106 -0
  55. package/dist/esm/chunk-Z3INM7T4.mjs.map +1 -0
  56. package/dist/esm/client/index.d.mts +64 -0
  57. package/dist/esm/client/index.mjs +17 -0
  58. package/dist/esm/client/index.mjs.map +1 -0
  59. package/dist/esm/config-CFBSAuxW.d.mts +10 -0
  60. package/dist/esm/config-Dfuvno71.d.mts +19 -0
  61. package/dist/esm/facilitator/index.d.mts +42 -0
  62. package/dist/esm/facilitator/index.mjs +14 -0
  63. package/dist/esm/facilitator/index.mjs.map +1 -0
  64. package/dist/esm/index.d.mts +16 -0
  65. package/dist/esm/index.mjs +28 -0
  66. package/dist/esm/index.mjs.map +1 -0
  67. package/dist/esm/middleware-CAOp-bv4.d.mts +93 -0
  68. package/dist/esm/network--RYzQfBg.d.mts +11 -0
  69. package/dist/esm/paywall/index.d.mts +30 -0
  70. package/dist/esm/paywall/index.mjs +46 -0
  71. package/dist/esm/paywall/index.mjs.map +1 -0
  72. package/dist/esm/rpc-22QIQWIu.d.mts +35 -0
  73. package/dist/esm/schemes/index.d.mts +298 -0
  74. package/dist/esm/schemes/index.mjs +16 -0
  75. package/dist/esm/schemes/index.mjs.map +1 -0
  76. package/dist/esm/shared/evm/index.d.mts +55 -0
  77. package/dist/esm/shared/evm/index.mjs +18 -0
  78. package/dist/esm/shared/evm/index.mjs.map +1 -0
  79. package/dist/esm/shared/index.d.mts +181 -0
  80. package/dist/esm/shared/index.mjs +31 -0
  81. package/dist/esm/shared/index.mjs.map +1 -0
  82. package/dist/esm/types/index.d.mts +1214 -0
  83. package/dist/esm/types/index.mjs +81 -0
  84. package/dist/esm/types/index.mjs.map +1 -0
  85. package/dist/esm/verify/index.d.mts +7 -0
  86. package/dist/esm/verify/index.mjs +105 -0
  87. package/dist/esm/verify/index.mjs.map +1 -0
  88. package/dist/esm/wallet-BReyvAJs.d.mts +151 -0
  89. package/dist/esm/wallet-BTqCm9Zp.d.mts +27 -0
  90. package/dist/esm/wallet-C9iHSQbd.d.mts +48 -0
  91. package/dist/esm/x402Specs-7OH8g851.d.mts +1306 -0
  92. package/package.json +152 -0
@@ -0,0 +1,81 @@
1
+ import {
2
+ ChainIdToNetwork,
3
+ DiscoveredResourceSchema,
4
+ ErrorReasons,
5
+ EvmNetworkToChainId,
6
+ ExactEvmPayloadAuthorizationSchema,
7
+ ExactEvmPayloadSchema,
8
+ ExactSvmPayloadSchema,
9
+ HTTPRequestStructureSchema,
10
+ ListDiscoveryResourcesRequestSchema,
11
+ ListDiscoveryResourcesResponseSchema,
12
+ NetworkSchema,
13
+ PaymentPayloadSchema,
14
+ PaymentRequirementsSchema,
15
+ RequestStructureSchema,
16
+ SettleRequestSchema,
17
+ SettleResponseSchema,
18
+ SupportedEVMNetworks,
19
+ SupportedPaymentKindSchema,
20
+ SupportedPaymentKindsResponseSchema,
21
+ SupportedSVMNetworks,
22
+ SvmNetworkToChainId,
23
+ VerifyRequestSchema,
24
+ VerifyResponseSchema,
25
+ createConnectedClient,
26
+ createSigner,
27
+ evm_exports,
28
+ facilitatorRequestSchema,
29
+ isEvmSignerWallet,
30
+ isMultiNetworkSigner,
31
+ isSvmSignerWallet,
32
+ moneySchema,
33
+ schemes,
34
+ settleResponseFromHeader,
35
+ settleResponseHeader,
36
+ svm_exports,
37
+ x402ResponseSchema,
38
+ x402Versions
39
+ } from "../chunk-XZA3USQF.mjs";
40
+ import "../chunk-7CWEZNFA.mjs";
41
+ import "../chunk-5UPAZUO6.mjs";
42
+ export {
43
+ ChainIdToNetwork,
44
+ DiscoveredResourceSchema,
45
+ ErrorReasons,
46
+ EvmNetworkToChainId,
47
+ ExactEvmPayloadAuthorizationSchema,
48
+ ExactEvmPayloadSchema,
49
+ ExactSvmPayloadSchema,
50
+ HTTPRequestStructureSchema,
51
+ ListDiscoveryResourcesRequestSchema,
52
+ ListDiscoveryResourcesResponseSchema,
53
+ NetworkSchema,
54
+ PaymentPayloadSchema,
55
+ PaymentRequirementsSchema,
56
+ RequestStructureSchema,
57
+ SettleRequestSchema,
58
+ SettleResponseSchema,
59
+ SupportedEVMNetworks,
60
+ SupportedPaymentKindSchema,
61
+ SupportedPaymentKindsResponseSchema,
62
+ SupportedSVMNetworks,
63
+ SvmNetworkToChainId,
64
+ VerifyRequestSchema,
65
+ VerifyResponseSchema,
66
+ createConnectedClient,
67
+ createSigner,
68
+ evm_exports as evm,
69
+ facilitatorRequestSchema,
70
+ isEvmSignerWallet,
71
+ isMultiNetworkSigner,
72
+ isSvmSignerWallet,
73
+ moneySchema,
74
+ schemes,
75
+ settleResponseFromHeader,
76
+ settleResponseHeader,
77
+ svm_exports as svm,
78
+ x402ResponseSchema,
79
+ x402Versions
80
+ };
81
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,7 @@
1
+ export { C as CreateHeaders, l as list, s as settle, f as supported, u as useFacilitator, v as verify } from '../middleware-CAOp-bv4.mjs';
2
+ import 'zod';
3
+ import '../network--RYzQfBg.mjs';
4
+ import '../wallet-BReyvAJs.mjs';
5
+ import 'viem';
6
+ import 'viem/chains';
7
+ import '../x402Specs-7OH8g851.mjs';
@@ -0,0 +1,105 @@
1
+ import {
2
+ toJsonSafe
3
+ } from "../chunk-XZA3USQF.mjs";
4
+ import "../chunk-7CWEZNFA.mjs";
5
+ import "../chunk-5UPAZUO6.mjs";
6
+
7
+ // src/verify/useFacilitator.ts
8
+ var DEFAULT_FACILITATOR_URL = "https://x402.org/facilitator";
9
+ function useFacilitator(facilitator) {
10
+ async function verify2(payload, paymentRequirements) {
11
+ const url = facilitator?.url || DEFAULT_FACILITATOR_URL;
12
+ let headers = { "Content-Type": "application/json" };
13
+ if (facilitator?.createAuthHeaders) {
14
+ const authHeaders = await facilitator.createAuthHeaders();
15
+ headers = { ...headers, ...authHeaders.verify };
16
+ }
17
+ const res = await fetch(`${url}/verify`, {
18
+ method: "POST",
19
+ headers,
20
+ body: JSON.stringify({
21
+ x402Version: payload.x402Version,
22
+ paymentPayload: toJsonSafe(payload),
23
+ paymentRequirements: toJsonSafe(paymentRequirements)
24
+ })
25
+ });
26
+ if (res.status !== 200) {
27
+ throw new Error(`Failed to verify payment: ${res.statusText}`);
28
+ }
29
+ const data = await res.json();
30
+ return data;
31
+ }
32
+ async function settle2(payload, paymentRequirements) {
33
+ const url = facilitator?.url || DEFAULT_FACILITATOR_URL;
34
+ let headers = { "Content-Type": "application/json" };
35
+ if (facilitator?.createAuthHeaders) {
36
+ const authHeaders = await facilitator.createAuthHeaders();
37
+ headers = { ...headers, ...authHeaders.settle };
38
+ }
39
+ const res = await fetch(`${url}/settle`, {
40
+ method: "POST",
41
+ headers,
42
+ body: JSON.stringify({
43
+ x402Version: payload.x402Version,
44
+ paymentPayload: toJsonSafe(payload),
45
+ paymentRequirements: toJsonSafe(paymentRequirements)
46
+ })
47
+ });
48
+ if (res.status !== 200) {
49
+ const text = res.statusText;
50
+ throw new Error(`Failed to settle payment: ${res.status} ${text}`);
51
+ }
52
+ const data = await res.json();
53
+ return data;
54
+ }
55
+ async function supported2() {
56
+ const url = facilitator?.url || DEFAULT_FACILITATOR_URL;
57
+ let headers = { "Content-Type": "application/json" };
58
+ if (facilitator?.createAuthHeaders) {
59
+ const authHeaders = await facilitator.createAuthHeaders();
60
+ headers = { ...headers, ...authHeaders.supported };
61
+ }
62
+ const res = await fetch(`${url}/supported`, {
63
+ method: "GET",
64
+ headers
65
+ });
66
+ if (res.status !== 200) {
67
+ throw new Error(`Failed to get supported payment kinds: ${res.statusText}`);
68
+ }
69
+ const data = await res.json();
70
+ return data;
71
+ }
72
+ async function list2(config = {}) {
73
+ const url = facilitator?.url || DEFAULT_FACILITATOR_URL;
74
+ let headers = { "Content-Type": "application/json" };
75
+ if (facilitator?.createAuthHeaders) {
76
+ const authHeaders = await facilitator.createAuthHeaders();
77
+ if (authHeaders.list) {
78
+ headers = { ...headers, ...authHeaders.list };
79
+ }
80
+ }
81
+ const urlParams = new URLSearchParams(
82
+ Object.entries(config).filter(([_, value]) => value !== void 0).map(([key, value]) => [key, value.toString()])
83
+ );
84
+ const res = await fetch(`${url}/discovery/resources?${urlParams.toString()}`, {
85
+ method: "GET",
86
+ headers
87
+ });
88
+ if (res.status !== 200) {
89
+ const text = res.statusText;
90
+ throw new Error(`Failed to list discovery: ${res.status} ${text}`);
91
+ }
92
+ const data = await res.json();
93
+ return data;
94
+ }
95
+ return { verify: verify2, settle: settle2, supported: supported2, list: list2 };
96
+ }
97
+ var { verify, settle, supported, list } = useFacilitator();
98
+ export {
99
+ list,
100
+ settle,
101
+ supported,
102
+ useFacilitator,
103
+ verify
104
+ };
105
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/verify/useFacilitator.ts"],"sourcesContent":["import { toJsonSafe } from \"../shared\";\nimport {\n ListDiscoveryResourcesRequest,\n ListDiscoveryResourcesResponse,\n FacilitatorConfig,\n SupportedPaymentKindsResponse,\n} from \"../types\";\nimport {\n PaymentPayload,\n PaymentRequirements,\n SettleResponse,\n VerifyResponse,\n} from \"../types/verify\";\n\nconst DEFAULT_FACILITATOR_URL = \"https://x402.org/facilitator\";\n\nexport type CreateHeaders = () => Promise<{\n verify: Record<string, string>;\n settle: Record<string, string>;\n supported: Record<string, string>;\n list?: Record<string, string>;\n}>;\n\n/**\n * Creates a facilitator client for interacting with the X402 payment facilitator service\n *\n * @param facilitator - The facilitator config to use. If not provided, the default facilitator will be used.\n * @returns An object containing verify and settle functions for interacting with the facilitator\n */\nexport function useFacilitator(facilitator?: FacilitatorConfig) {\n /**\n * Verifies a payment payload with the facilitator service\n *\n * @param payload - The payment payload to verify\n * @param paymentRequirements - The payment requirements to verify against\n * @returns A promise that resolves to the verification response\n */\n async function verify(\n payload: PaymentPayload,\n paymentRequirements: PaymentRequirements,\n ): Promise<VerifyResponse> {\n const url = facilitator?.url || DEFAULT_FACILITATOR_URL;\n\n let headers = { \"Content-Type\": \"application/json\" };\n if (facilitator?.createAuthHeaders) {\n const authHeaders = await facilitator.createAuthHeaders();\n headers = { ...headers, ...authHeaders.verify };\n }\n\n const res = await fetch(`${url}/verify`, {\n method: \"POST\",\n headers,\n body: JSON.stringify({\n x402Version: payload.x402Version,\n paymentPayload: toJsonSafe(payload),\n paymentRequirements: toJsonSafe(paymentRequirements),\n }),\n });\n\n if (res.status !== 200) {\n throw new Error(`Failed to verify payment: ${res.statusText}`);\n }\n\n const data = await res.json();\n return data as VerifyResponse;\n }\n\n /**\n * Settles a payment with the facilitator service\n *\n * @param payload - The payment payload to settle\n * @param paymentRequirements - The payment requirements for the settlement\n * @returns A promise that resolves to the settlement response\n */\n async function settle(\n payload: PaymentPayload,\n paymentRequirements: PaymentRequirements,\n ): Promise<SettleResponse> {\n const url = facilitator?.url || DEFAULT_FACILITATOR_URL;\n\n let headers = { \"Content-Type\": \"application/json\" };\n if (facilitator?.createAuthHeaders) {\n const authHeaders = await facilitator.createAuthHeaders();\n headers = { ...headers, ...authHeaders.settle };\n }\n\n const res = await fetch(`${url}/settle`, {\n method: \"POST\",\n headers,\n body: JSON.stringify({\n x402Version: payload.x402Version,\n paymentPayload: toJsonSafe(payload),\n paymentRequirements: toJsonSafe(paymentRequirements),\n }),\n });\n\n if (res.status !== 200) {\n const text = res.statusText;\n throw new Error(`Failed to settle payment: ${res.status} ${text}`);\n }\n\n const data = await res.json();\n return data as SettleResponse;\n }\n\n /**\n * Gets the supported payment kinds from the facilitator service.\n *\n * @returns A promise that resolves to the supported payment kinds\n */\n async function supported(): Promise<SupportedPaymentKindsResponse> {\n const url = facilitator?.url || DEFAULT_FACILITATOR_URL;\n\n let headers = { \"Content-Type\": \"application/json\" };\n if (facilitator?.createAuthHeaders) {\n const authHeaders = await facilitator.createAuthHeaders();\n headers = { ...headers, ...authHeaders.supported };\n }\n\n const res = await fetch(`${url}/supported`, {\n method: \"GET\",\n headers,\n });\n\n if (res.status !== 200) {\n throw new Error(`Failed to get supported payment kinds: ${res.statusText}`);\n }\n\n const data = await res.json();\n return data as SupportedPaymentKindsResponse;\n }\n\n /**\n * Lists the discovery items with the facilitator service\n *\n * @param config - The configuration for the discovery list request\n * @returns A promise that resolves to the discovery list response\n */\n async function list(\n config: ListDiscoveryResourcesRequest = {},\n ): Promise<ListDiscoveryResourcesResponse> {\n const url = facilitator?.url || DEFAULT_FACILITATOR_URL;\n\n let headers = { \"Content-Type\": \"application/json\" };\n if (facilitator?.createAuthHeaders) {\n const authHeaders = await facilitator.createAuthHeaders();\n if (authHeaders.list) {\n headers = { ...headers, ...authHeaders.list };\n }\n }\n\n const urlParams = new URLSearchParams(\n Object.entries(config)\n .filter(([_, value]) => value !== undefined)\n .map(([key, value]) => [key, value.toString()]),\n );\n\n const res = await fetch(`${url}/discovery/resources?${urlParams.toString()}`, {\n method: \"GET\",\n headers,\n });\n\n if (res.status !== 200) {\n const text = res.statusText;\n throw new Error(`Failed to list discovery: ${res.status} ${text}`);\n }\n\n const data = await res.json();\n return data as ListDiscoveryResourcesResponse;\n }\n\n return { verify, settle, supported, list };\n}\n\nexport const { verify, settle, supported, list } = useFacilitator();\n"],"mappings":"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","names":["verify","settle","supported","list"]}
@@ -0,0 +1,151 @@
1
+ import * as viem from 'viem';
2
+ import { Chain, Transport, Account, Client, RpcSchema, PublicActions, WalletActions, LocalAccount, PublicClient, Hex } from 'viem';
3
+ import { baseSepolia, avalancheFuji } from 'viem/chains';
4
+
5
+ declare const xLayer: {
6
+ blockExplorers: {
7
+ readonly default: {
8
+ readonly name: "OKLink";
9
+ readonly url: "https://www.oklink.com/xlayer";
10
+ };
11
+ };
12
+ blockTime?: number | undefined | undefined;
13
+ contracts?: {
14
+ [x: string]: viem.ChainContract | {
15
+ [sourceId: number]: viem.ChainContract | undefined;
16
+ } | undefined;
17
+ ensRegistry?: viem.ChainContract | undefined;
18
+ ensUniversalResolver?: viem.ChainContract | undefined;
19
+ multicall3?: viem.ChainContract | undefined;
20
+ erc6492Verifier?: viem.ChainContract | undefined;
21
+ } | undefined;
22
+ ensTlds?: readonly string[] | undefined;
23
+ id: 196;
24
+ name: "X Layer";
25
+ nativeCurrency: {
26
+ readonly name: "OKB";
27
+ readonly symbol: "OKB";
28
+ readonly decimals: 18;
29
+ };
30
+ experimental_preconfirmationTime?: number | undefined | undefined;
31
+ rpcUrls: {
32
+ readonly default: {
33
+ readonly http: readonly ["https://rpc.xlayer.tech"];
34
+ };
35
+ };
36
+ sourceId?: number | undefined | undefined;
37
+ testnet?: boolean | undefined | undefined;
38
+ custom?: Record<string, unknown> | undefined;
39
+ fees?: viem.ChainFees<undefined> | undefined;
40
+ formatters?: undefined;
41
+ serializers?: viem.ChainSerializers<undefined, viem.TransactionSerializable> | undefined;
42
+ };
43
+ declare const xLayerTestnet: {
44
+ blockExplorers: {
45
+ readonly default: {
46
+ readonly name: "OKLink";
47
+ readonly url: "https://www.oklink.com/xlayer-test";
48
+ };
49
+ };
50
+ blockTime?: number | undefined | undefined;
51
+ contracts?: {
52
+ [x: string]: viem.ChainContract | {
53
+ [sourceId: number]: viem.ChainContract | undefined;
54
+ } | undefined;
55
+ ensRegistry?: viem.ChainContract | undefined;
56
+ ensUniversalResolver?: viem.ChainContract | undefined;
57
+ multicall3?: viem.ChainContract | undefined;
58
+ erc6492Verifier?: viem.ChainContract | undefined;
59
+ } | undefined;
60
+ ensTlds?: readonly string[] | undefined;
61
+ id: 1952;
62
+ name: "X Layer Testnet";
63
+ nativeCurrency: {
64
+ readonly name: "OKB";
65
+ readonly symbol: "OKB";
66
+ readonly decimals: 18;
67
+ };
68
+ experimental_preconfirmationTime?: number | undefined | undefined;
69
+ rpcUrls: {
70
+ readonly default: {
71
+ readonly http: readonly ["https://testrpc.xlayer.tech/terigon"];
72
+ };
73
+ };
74
+ sourceId?: number | undefined | undefined;
75
+ testnet: true;
76
+ custom?: Record<string, unknown> | undefined;
77
+ fees?: viem.ChainFees<undefined> | undefined;
78
+ formatters?: undefined;
79
+ serializers?: viem.ChainSerializers<undefined, viem.TransactionSerializable> | undefined;
80
+ };
81
+ type SignerWallet<chain extends Chain = Chain, transport extends Transport = Transport, account extends Account = Account> = Client<transport, chain, account, RpcSchema, PublicActions<transport, chain, account> & WalletActions<chain, account>>;
82
+ type ConnectedClient<transport extends Transport = Transport, chain extends Chain | undefined = Chain, account extends Account | undefined = undefined> = PublicClient<transport, chain, account>;
83
+ type EvmSigner = SignerWallet<Chain, Transport, Account> | LocalAccount;
84
+ /**
85
+ * Creates a public client configured for the specified network
86
+ *
87
+ * @param network - The network to connect to
88
+ * @returns A public client instance connected to the specified chain
89
+ */
90
+ declare function createConnectedClient(network: string): ConnectedClient<Transport, Chain, undefined>;
91
+ /**
92
+ * Creates a public client configured for the Base Sepolia testnet
93
+ *
94
+ * @deprecated Use `createConnectedClient("base-sepolia")` instead
95
+ * @returns A public client instance connected to Base Sepolia
96
+ */
97
+ declare function createClientSepolia(): ConnectedClient<Transport, typeof baseSepolia, undefined>;
98
+ /**
99
+ * Creates a public client configured for the Avalanche Fuji testnet
100
+ *
101
+ * @deprecated Use `createConnectedClient("avalanche-fuji")` instead
102
+ * @returns A public client instance connected to Avalanche Fuji
103
+ */
104
+ declare function createClientAvalancheFuji(): ConnectedClient<Transport, typeof avalancheFuji, undefined>;
105
+ /**
106
+ * Creates a wallet client configured for the specified chain with a private key
107
+ *
108
+ * @param network - The network to connect to
109
+ * @param privateKey - The private key to use for signing transactions
110
+ * @returns A wallet client instance connected to the specified chain with the provided private key
111
+ */
112
+ declare function createSigner(network: string, privateKey: Hex): SignerWallet<Chain>;
113
+ /**
114
+ * Creates a wallet client configured for the Base Sepolia testnet with a private key
115
+ *
116
+ * @deprecated Use `createSigner("base-sepolia", privateKey)` instead
117
+ * @param privateKey - The private key to use for signing transactions
118
+ * @returns A wallet client instance connected to Base Sepolia with the provided private key
119
+ */
120
+ declare function createSignerSepolia(privateKey: Hex): SignerWallet<typeof baseSepolia>;
121
+ /**
122
+ * Creates a wallet client configured for the Avalanche Fuji testnet with a private key
123
+ *
124
+ * @deprecated Use `createSigner("avalanche-fuji", privateKey)` instead
125
+ * @param privateKey - The private key to use for signing transactions
126
+ * @returns A wallet client instance connected to Avalanche Fuji with the provided private key
127
+ */
128
+ declare function createSignerAvalancheFuji(privateKey: Hex): SignerWallet<typeof avalancheFuji>;
129
+ /**
130
+ * Checks if a wallet is a signer wallet
131
+ *
132
+ * @param wallet - The wallet to check
133
+ * @returns True if the wallet is a signer wallet, false otherwise
134
+ */
135
+ declare function isSignerWallet<TChain extends Chain = Chain, TTransport extends Transport = Transport, TAccount extends Account = Account>(wallet: SignerWallet<TChain, TTransport, TAccount> | LocalAccount): wallet is SignerWallet<TChain, TTransport, TAccount>;
136
+ /**
137
+ * Checks if a wallet is an account
138
+ *
139
+ * @param wallet - The wallet to check
140
+ * @returns True if the wallet is an account, false otherwise
141
+ */
142
+ declare function isAccount<TChain extends Chain = Chain, TTransport extends Transport = Transport, TAccount extends Account = Account>(wallet: SignerWallet<TChain, TTransport, TAccount> | LocalAccount): wallet is LocalAccount;
143
+ /**
144
+ * Maps network strings to Chain objects
145
+ *
146
+ * @param network - The network string to convert to a Chain object
147
+ * @returns The corresponding Chain object
148
+ */
149
+ declare function getChainFromNetwork(network: string | undefined): Chain;
150
+
151
+ export { type ConnectedClient as C, type EvmSigner as E, type SignerWallet as S, createClientSepolia as a, createConnectedClient as b, createClientAvalancheFuji as c, createSigner as d, createSignerAvalancheFuji as e, createSignerSepolia as f, getChainFromNetwork as g, isSignerWallet as h, isAccount as i, xLayerTestnet as j, xLayer as x };
@@ -0,0 +1,27 @@
1
+ import { KeyPairSigner, RpcDevnet, SolanaRpcApiDevnet, RpcMainnet, SolanaRpcApiMainnet } from '@solana/kit';
2
+
3
+ type SvmConnectedClient = RpcDevnet<SolanaRpcApiDevnet> | RpcMainnet<SolanaRpcApiMainnet>;
4
+ type SvmSigner = KeyPairSigner;
5
+ /**
6
+ * Creates a public client configured for the specified SVM network
7
+ *
8
+ * @param network - The network to connect to
9
+ * @returns A public client instance connected to the specified chain
10
+ */
11
+ declare function createSvmConnectedClient(network: string): SvmConnectedClient;
12
+ /**
13
+ * Creates a Solana signer from a private key.
14
+ *
15
+ * @param privateKey - The base58 encoded private key to create a signer from.
16
+ * @returns A Solana signer.
17
+ */
18
+ declare function createSignerFromBase58(privateKey: string): Promise<KeyPairSigner>;
19
+ /**
20
+ * Checks if the given wallet is a solana KeyPairSigner wallet.
21
+ *
22
+ * @param wallet - The object wallet to check.
23
+ * @returns True if the wallet is a solana KeyPairSigner wallet, false otherwise.
24
+ */
25
+ declare function isSignerWallet(wallet: SvmSigner): wallet is SvmSigner;
26
+
27
+ export { type SvmSigner as S, type SvmConnectedClient as a, createSvmConnectedClient as b, createSignerFromBase58 as c, isSignerWallet as i };
@@ -0,0 +1,48 @@
1
+ import { E as EvmSigner, C as ConnectedClient$1 } from './wallet-BReyvAJs.mjs';
2
+ import { S as SvmSigner, a as SvmConnectedClient } from './wallet-BTqCm9Zp.mjs';
3
+ import { Hex } from 'viem';
4
+
5
+ type ConnectedClient = ConnectedClient$1 | SvmConnectedClient;
6
+ type Signer = EvmSigner | SvmSigner;
7
+ type MultiNetworkSigner = {
8
+ evm: EvmSigner;
9
+ svm: SvmSigner;
10
+ };
11
+ /**
12
+ * Creates a public client configured for the specified network.
13
+ *
14
+ * @param network - The network to connect to.
15
+ * @returns A public client instance connected to the specified chain.
16
+ */
17
+ declare function createConnectedClient(network: string): ConnectedClient;
18
+ /**
19
+ * Creates a wallet client configured for the specified chain with a private key.
20
+ *
21
+ * @param network - The network to connect to.
22
+ * @param privateKey - The private key to use for signing transactions. This should be a hex string for EVM or a base58 encoded string for SVM.
23
+ * @returns A wallet client instance connected to the specified chain with the provided private key.
24
+ */
25
+ declare function createSigner(network: string, privateKey: Hex | string): Promise<Signer>;
26
+ /**
27
+ * Checks if the given wallet is an EVM signer wallet.
28
+ *
29
+ * @param wallet - The object wallet to check.
30
+ * @returns True if the wallet is an EVM signer wallet, false otherwise.
31
+ */
32
+ declare function isEvmSignerWallet(wallet: Signer): wallet is EvmSigner;
33
+ /**
34
+ * Checks if the given wallet is an SVM signer wallet
35
+ *
36
+ * @param wallet - The object wallet to check
37
+ * @returns True if the wallet is an SVM signer wallet, false otherwise
38
+ */
39
+ declare function isSvmSignerWallet(wallet: Signer): wallet is SvmSigner;
40
+ /**
41
+ * Checks if the given wallet is a multi network signer wallet
42
+ *
43
+ * @param wallet - The object wallet to check
44
+ * @returns True if the wallet is a multi network signer wallet, false otherwise
45
+ */
46
+ declare function isMultiNetworkSigner(wallet: object): wallet is MultiNetworkSigner;
47
+
48
+ export { type ConnectedClient as C, type MultiNetworkSigner as M, type Signer as S, createSigner as a, isSvmSignerWallet as b, createConnectedClient as c, isMultiNetworkSigner as d, isEvmSignerWallet as i };