@account-kit/infra 4.0.0-alpha.0 → 4.0.0-alpha.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 (101) hide show
  1. package/dist/cjs/actions/simulateUserOperationChanges.js.map +1 -1
  2. package/dist/cjs/chains.d.ts +23 -0
  3. package/dist/cjs/chains.js +166 -1
  4. package/dist/cjs/chains.js.map +1 -1
  5. package/dist/cjs/client/decorators/alchemyEnhancedApis.d.ts +5537 -1
  6. package/dist/cjs/client/decorators/alchemyEnhancedApis.js.map +1 -1
  7. package/dist/cjs/client/decorators/smartAccount.js.map +1 -1
  8. package/dist/cjs/client/internal/smartAccountClientFromRpc.d.ts +2 -2
  9. package/dist/cjs/client/internal/smartAccountClientFromRpc.js +2 -1
  10. package/dist/cjs/client/internal/smartAccountClientFromRpc.js.map +1 -1
  11. package/dist/cjs/client/isAlchemySmartAccountClient.d.ts +128 -128
  12. package/dist/cjs/client/isAlchemySmartAccountClient.js.map +1 -1
  13. package/dist/cjs/client/rpcClient.js.map +1 -1
  14. package/dist/cjs/client/smartAccountClient.js.map +1 -1
  15. package/dist/cjs/defaults.js +7 -7
  16. package/dist/cjs/defaults.js.map +1 -1
  17. package/dist/cjs/gas-manager.js +16 -16
  18. package/dist/cjs/gas-manager.js.map +1 -1
  19. package/dist/cjs/index.d.ts +2 -1
  20. package/dist/cjs/index.js +20 -1
  21. package/dist/cjs/index.js.map +1 -1
  22. package/dist/cjs/middleware/feeEstimator.js.map +1 -1
  23. package/dist/cjs/middleware/gasManager.js.map +1 -1
  24. package/dist/cjs/middleware/userOperationSimulator.js.map +1 -1
  25. package/dist/cjs/schema.js +2 -9
  26. package/dist/cjs/schema.js.map +1 -1
  27. package/dist/cjs/version.d.ts +1 -1
  28. package/dist/cjs/version.js +1 -1
  29. package/dist/cjs/version.js.map +1 -1
  30. package/dist/esm/actions/simulateUserOperationChanges.js.map +1 -1
  31. package/dist/esm/chains.d.ts +23 -0
  32. package/dist/esm/chains.js +165 -0
  33. package/dist/esm/chains.js.map +1 -1
  34. package/dist/esm/client/decorators/alchemyEnhancedApis.d.ts +5537 -1
  35. package/dist/esm/client/decorators/alchemyEnhancedApis.js.map +1 -1
  36. package/dist/esm/client/decorators/smartAccount.js.map +1 -1
  37. package/dist/esm/client/internal/smartAccountClientFromRpc.d.ts +2 -2
  38. package/dist/esm/client/internal/smartAccountClientFromRpc.js +2 -1
  39. package/dist/esm/client/internal/smartAccountClientFromRpc.js.map +1 -1
  40. package/dist/esm/client/isAlchemySmartAccountClient.d.ts +128 -128
  41. package/dist/esm/client/isAlchemySmartAccountClient.js.map +1 -1
  42. package/dist/esm/client/rpcClient.js.map +1 -1
  43. package/dist/esm/client/smartAccountClient.js.map +1 -1
  44. package/dist/esm/defaults.js +2 -1
  45. package/dist/esm/defaults.js.map +1 -1
  46. package/dist/esm/gas-manager.js +1 -1
  47. package/dist/esm/gas-manager.js.map +1 -1
  48. package/dist/esm/index.d.ts +2 -1
  49. package/dist/esm/index.js +1 -1
  50. package/dist/esm/index.js.map +1 -1
  51. package/dist/esm/middleware/feeEstimator.js.map +1 -1
  52. package/dist/esm/middleware/gasManager.js.map +1 -1
  53. package/dist/esm/middleware/userOperationSimulator.js.map +1 -1
  54. package/dist/esm/schema.js +3 -10
  55. package/dist/esm/schema.js.map +1 -1
  56. package/dist/esm/version.d.ts +1 -1
  57. package/dist/esm/version.js +1 -1
  58. package/dist/esm/version.js.map +1 -1
  59. package/dist/types/actions/simulateUserOperationChanges.d.ts +17 -0
  60. package/dist/types/actions/simulateUserOperationChanges.d.ts.map +1 -1
  61. package/dist/types/chains.d.ts +42 -0
  62. package/dist/types/chains.d.ts.map +1 -1
  63. package/dist/types/client/decorators/alchemyEnhancedApis.d.ts +5554 -1
  64. package/dist/types/client/decorators/alchemyEnhancedApis.d.ts.map +1 -1
  65. package/dist/types/client/decorators/smartAccount.d.ts +15 -0
  66. package/dist/types/client/decorators/smartAccount.d.ts.map +1 -1
  67. package/dist/types/client/internal/smartAccountClientFromRpc.d.ts +2 -2
  68. package/dist/types/client/internal/smartAccountClientFromRpc.d.ts.map +1 -1
  69. package/dist/types/client/isAlchemySmartAccountClient.d.ts +143 -128
  70. package/dist/types/client/isAlchemySmartAccountClient.d.ts.map +1 -1
  71. package/dist/types/client/rpcClient.d.ts +22 -0
  72. package/dist/types/client/rpcClient.d.ts.map +1 -1
  73. package/dist/types/defaults.d.ts +14 -0
  74. package/dist/types/defaults.d.ts.map +1 -1
  75. package/dist/types/gas-manager.d.ts +13 -0
  76. package/dist/types/gas-manager.d.ts.map +1 -1
  77. package/dist/types/index.d.ts +2 -1
  78. package/dist/types/index.d.ts.map +1 -1
  79. package/dist/types/middleware/feeEstimator.d.ts +19 -0
  80. package/dist/types/middleware/feeEstimator.d.ts.map +1 -1
  81. package/dist/types/middleware/userOperationSimulator.d.ts +19 -0
  82. package/dist/types/middleware/userOperationSimulator.d.ts.map +1 -1
  83. package/dist/types/schema.d.ts.map +1 -1
  84. package/dist/types/version.d.ts +1 -1
  85. package/package.json +3 -3
  86. package/src/actions/simulateUserOperationChanges.ts +17 -0
  87. package/src/chains.ts +219 -0
  88. package/src/client/decorators/alchemyEnhancedApis.ts +50 -33
  89. package/src/client/decorators/smartAccount.ts +15 -0
  90. package/src/client/internal/smartAccountClientFromRpc.ts +33 -13
  91. package/src/client/isAlchemySmartAccountClient.ts +15 -0
  92. package/src/client/rpcClient.ts +22 -0
  93. package/src/client/smartAccountClient.ts +17 -0
  94. package/src/defaults.ts +17 -3
  95. package/src/gas-manager.ts +17 -4
  96. package/src/index.ts +23 -1
  97. package/src/middleware/feeEstimator.ts +19 -0
  98. package/src/middleware/gasManager.ts +1 -1
  99. package/src/middleware/userOperationSimulator.ts +19 -0
  100. package/src/schema.ts +2 -10
  101. package/src/version.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"simulateUserOperationChanges.js","sourceRoot":"","sources":["../../../src/actions/simulateUserOperationChanges.ts"],"names":[],"mappings":";;;AAAA,uCAMsB;AAEtB,6FAAuF;AAIhF,MAAM,4BAA4B,GAQiB,KAAK,EAC7D,MAAM,EACN,EAAE,OAAO,GAAG,MAAM,CAAC,OAAO,EAAE,SAAS,EAAE,GAAG,MAAM,EAAE,EAClD,EAAE;IACF,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,2BAAoB,EAAE,CAAC;IACnC,CAAC;IAED,IAAI,CAAC,IAAA,4DAA2B,EAAC,MAAM,CAAC,EAAE,CAAC;QACzC,MAAM,IAAI,8BAAuB,CAC/B,2BAA2B,EAC3B,mCAAmC,EACnC,MAAM,CACP,CAAC;IACJ,CAAC;IAED,MAAM,QAAQ,GAAG,IAAA,kBAAW,EAC1B,MAAM,MAAM,CAAC,kBAAkB,CAAC;QAC9B,GAAG,MAAM;QACT,OAAO;QACP,SAAS;KACV,CAAC,CACH,CAAC;IAEF,OAAO,MAAM,CAAC,OAAO,CAAC;QACpB,MAAM,EAAE,2CAA2C;QACnD,MAAM,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,aAAa,EAAE,CAAC,OAAO,CAAC;KACpD,CAAC,CAAC;AACL,CAAC,CAAC;AApCW,QAAA,4BAA4B,gCAoCvC","sourcesContent":["import {\n AccountNotFoundError,\n IncompatibleClientError,\n deepHexlify,\n type SendUserOperationParameters,\n type SmartContractAccount,\n} from \"@aa-sdk/core\";\nimport type { Chain, Client, Transport } from \"viem\";\nimport { isAlchemySmartAccountClient } from \"../client/isAlchemySmartAccountClient.js\";\nimport type { AlchemyRpcSchema } from \"../client/types.js\";\nimport type { SimulateUserOperationAssetChangesResponse } from \"./types.js\";\n\nexport const simulateUserOperationChanges: <\n TChain extends Chain | undefined = Chain | undefined,\n TAccount extends SmartContractAccount | undefined =\n | SmartContractAccount\n | undefined\n>(\n client: Client<Transport, TChain, TAccount, AlchemyRpcSchema>,\n args: SendUserOperationParameters<TAccount>\n) => Promise<SimulateUserOperationAssetChangesResponse> = async (\n client,\n { account = client.account, overrides, ...params }\n) => {\n if (!account) {\n throw new AccountNotFoundError();\n }\n\n if (!isAlchemySmartAccountClient(client)) {\n throw new IncompatibleClientError(\n \"AlchemySmartAccountClient\",\n \"SimulateUserOperationAssetChanges\",\n client\n );\n }\n\n const uoStruct = deepHexlify(\n await client.buildUserOperation({\n ...params,\n account,\n overrides,\n })\n );\n\n return client.request({\n method: \"alchemy_simulateUserOperationAssetChanges\",\n params: [uoStruct, account.getEntryPoint().address],\n });\n};\n"]}
1
+ {"version":3,"file":"simulateUserOperationChanges.js","sourceRoot":"","sources":["../../../src/actions/simulateUserOperationChanges.ts"],"names":[],"mappings":";;;AAAA,uCAMsB;AAEtB,6FAAuF;AAqBhF,MAAM,4BAA4B,GAQiB,KAAK,EAC7D,MAAM,EACN,EAAE,OAAO,GAAG,MAAM,CAAC,OAAO,EAAE,SAAS,EAAE,GAAG,MAAM,EAAE,EAClD,EAAE;IACF,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,2BAAoB,EAAE,CAAC;IACnC,CAAC;IAED,IAAI,CAAC,IAAA,4DAA2B,EAAC,MAAM,CAAC,EAAE,CAAC;QACzC,MAAM,IAAI,8BAAuB,CAC/B,2BAA2B,EAC3B,mCAAmC,EACnC,MAAM,CACP,CAAC;IACJ,CAAC;IAED,MAAM,QAAQ,GAAG,IAAA,kBAAW,EAC1B,MAAM,MAAM,CAAC,kBAAkB,CAAC;QAC9B,GAAG,MAAM;QACT,OAAO;QACP,SAAS;KACV,CAAC,CACH,CAAC;IAEF,OAAO,MAAM,CAAC,OAAO,CAAC;QACpB,MAAM,EAAE,2CAA2C;QACnD,MAAM,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,aAAa,EAAE,CAAC,OAAO,CAAC;KACpD,CAAC,CAAC;AACL,CAAC,CAAC;AApCW,QAAA,4BAA4B,gCAoCvC","sourcesContent":["import {\n AccountNotFoundError,\n IncompatibleClientError,\n deepHexlify,\n type SendUserOperationParameters,\n type SmartContractAccount,\n} from \"@aa-sdk/core\";\nimport type { Chain, Client, Transport } from \"viem\";\nimport { isAlchemySmartAccountClient } from \"../client/isAlchemySmartAccountClient.js\";\nimport type { AlchemyRpcSchema } from \"../client/types.js\";\nimport type { SimulateUserOperationAssetChangesResponse } from \"./types.js\";\n\n/**\n * Simulates user operation changes including asset changes for a specified user operation and returns the resulting state changes.\n *\n * @example\n * ```ts\n * import { simulateUserOperationChanges, createAlchemyPublicRpcClient } from \"@account-kit/infra\";\n *\n * const client = createAlchemyPublicRpcClient(...);\n * const response = await simulateUserOperationChanges(client, {\n * uo: ...\n * });\n * ```\n *\n * @param {Client<Transport, TChain, TAccount, AlchemyRpcSchema>} client The client instance used to send the simulation request\n * @param {SendUserOperationParameters<TAccount>} args The parameters of the user operation including the account and other overrides\n * @returns {Promise<SimulateUserOperationAssetChangesResponse>} A promise that resolves to the response of the simulation showing the asset changes\n */\nexport const simulateUserOperationChanges: <\n TChain extends Chain | undefined = Chain | undefined,\n TAccount extends SmartContractAccount | undefined =\n | SmartContractAccount\n | undefined\n>(\n client: Client<Transport, TChain, TAccount, AlchemyRpcSchema>,\n args: SendUserOperationParameters<TAccount>\n) => Promise<SimulateUserOperationAssetChangesResponse> = async (\n client,\n { account = client.account, overrides, ...params }\n) => {\n if (!account) {\n throw new AccountNotFoundError();\n }\n\n if (!isAlchemySmartAccountClient(client)) {\n throw new IncompatibleClientError(\n \"AlchemySmartAccountClient\",\n \"SimulateUserOperationAssetChanges\",\n client\n );\n }\n\n const uoStruct = deepHexlify(\n await client.buildUserOperation({\n ...params,\n account,\n overrides,\n })\n );\n\n return client.request({\n method: \"alchemy_simulateUserOperationAssetChanges\",\n params: [uoStruct, account.getEntryPoint().address],\n });\n};\n"]}
@@ -1,5 +1,28 @@
1
1
  import type { Chain } from "viem";
2
+ export type AlchemyChainConfig = {
3
+ chain: Chain;
4
+ rpcBaseUrl: string;
5
+ };
2
6
  export declare const defineAlchemyChain: ({ chain, rpcBaseUrl, }: {
3
7
  chain: Chain;
4
8
  rpcBaseUrl: string;
5
9
  }) => Chain;
10
+ export declare const arbitrum: Chain;
11
+ export declare const arbitrumGoerli: Chain;
12
+ export declare const arbitrumSepolia: Chain;
13
+ export declare const goerli: Chain;
14
+ export declare const mainnet: Chain;
15
+ export declare const optimism: Chain;
16
+ export declare const optimismGoerli: Chain;
17
+ export declare const optimismSepolia: Chain;
18
+ export declare const sepolia: Chain;
19
+ export declare const base: Chain;
20
+ export declare const baseGoerli: Chain;
21
+ export declare const baseSepolia: Chain;
22
+ export declare const polygonMumbai: Chain;
23
+ export declare const polygonAmoy: Chain;
24
+ export declare const polygon: Chain;
25
+ export declare const fraxtal: Chain;
26
+ export declare const fraxtalSepolia: Chain;
27
+ export declare const zora: Chain;
28
+ export declare const zoraSepolia: Chain;
@@ -1,6 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.defineAlchemyChain = void 0;
3
+ exports.zoraSepolia = exports.zora = exports.fraxtalSepolia = exports.fraxtal = exports.polygon = exports.polygonAmoy = exports.polygonMumbai = exports.baseSepolia = exports.baseGoerli = exports.base = exports.sepolia = exports.optimismSepolia = exports.optimismGoerli = exports.optimism = exports.mainnet = exports.goerli = exports.arbitrumSepolia = exports.arbitrumGoerli = exports.arbitrum = exports.defineAlchemyChain = void 0;
4
+ const viem_1 = require("viem");
5
+ const chains_1 = require("viem/chains");
4
6
  const defineAlchemyChain = ({ chain, rpcBaseUrl, }) => {
5
7
  return {
6
8
  ...chain,
@@ -13,4 +15,167 @@ const defineAlchemyChain = ({ chain, rpcBaseUrl, }) => {
13
15
  };
14
16
  };
15
17
  exports.defineAlchemyChain = defineAlchemyChain;
18
+ exports.arbitrum = {
19
+ ...chains_1.arbitrum,
20
+ rpcUrls: {
21
+ ...chains_1.arbitrum.rpcUrls,
22
+ alchemy: {
23
+ http: ["https://arb-mainnet.g.alchemy.com/v2"],
24
+ },
25
+ },
26
+ };
27
+ exports.arbitrumGoerli = {
28
+ ...chains_1.arbitrumGoerli,
29
+ rpcUrls: {
30
+ ...chains_1.arbitrumGoerli.rpcUrls,
31
+ alchemy: {
32
+ http: ["https://arb-goerli.g.alchemy.com/v2"],
33
+ },
34
+ },
35
+ };
36
+ exports.arbitrumSepolia = {
37
+ ...chains_1.arbitrumSepolia,
38
+ rpcUrls: {
39
+ ...chains_1.arbitrumSepolia.rpcUrls,
40
+ alchemy: {
41
+ http: ["https://arb-sepolia.g.alchemy.com/v2"],
42
+ },
43
+ },
44
+ };
45
+ exports.goerli = {
46
+ ...chains_1.goerli,
47
+ rpcUrls: {
48
+ ...chains_1.goerli.rpcUrls,
49
+ alchemy: {
50
+ http: ["https://eth-goerli.g.alchemy.com/v2"],
51
+ },
52
+ },
53
+ };
54
+ exports.mainnet = {
55
+ ...chains_1.mainnet,
56
+ rpcUrls: {
57
+ ...chains_1.mainnet.rpcUrls,
58
+ alchemy: {
59
+ http: ["https://eth-mainnet.g.alchemy.com/v2"],
60
+ },
61
+ },
62
+ };
63
+ exports.optimism = {
64
+ ...chains_1.optimism,
65
+ rpcUrls: {
66
+ ...chains_1.optimism.rpcUrls,
67
+ alchemy: {
68
+ http: ["https://opt-mainnet.g.alchemy.com/v2"],
69
+ },
70
+ },
71
+ };
72
+ exports.optimismGoerli = {
73
+ ...chains_1.optimismGoerli,
74
+ rpcUrls: {
75
+ ...chains_1.optimismGoerli.rpcUrls,
76
+ alchemy: {
77
+ http: ["https://opt-goerli.g.alchemy.com/v2"],
78
+ },
79
+ },
80
+ };
81
+ exports.optimismSepolia = {
82
+ ...chains_1.optimismSepolia,
83
+ rpcUrls: {
84
+ ...chains_1.optimismSepolia.rpcUrls,
85
+ alchemy: {
86
+ http: ["https://opt-sepolia.g.alchemy.com/v2"],
87
+ },
88
+ },
89
+ };
90
+ exports.sepolia = {
91
+ ...chains_1.sepolia,
92
+ rpcUrls: {
93
+ ...chains_1.sepolia.rpcUrls,
94
+ alchemy: {
95
+ http: ["https://eth-sepolia.g.alchemy.com/v2"],
96
+ },
97
+ },
98
+ };
99
+ exports.base = {
100
+ ...chains_1.base,
101
+ rpcUrls: {
102
+ ...chains_1.base.rpcUrls,
103
+ alchemy: {
104
+ http: ["https://base-mainnet.g.alchemy.com/v2"],
105
+ },
106
+ },
107
+ };
108
+ exports.baseGoerli = {
109
+ ...chains_1.baseGoerli,
110
+ rpcUrls: {
111
+ ...chains_1.baseGoerli.rpcUrls,
112
+ alchemy: {
113
+ http: ["https://base-goerli.g.alchemy.com/v2"],
114
+ },
115
+ },
116
+ };
117
+ exports.baseSepolia = {
118
+ ...chains_1.baseSepolia,
119
+ rpcUrls: {
120
+ ...chains_1.baseSepolia.rpcUrls,
121
+ alchemy: {
122
+ http: ["https://base-sepolia.g.alchemy.com/v2"],
123
+ },
124
+ },
125
+ };
126
+ exports.polygonMumbai = {
127
+ ...chains_1.polygonMumbai,
128
+ rpcUrls: {
129
+ ...chains_1.polygonMumbai.rpcUrls,
130
+ alchemy: {
131
+ http: ["https://polygon-mumbai.g.alchemy.com/v2"],
132
+ },
133
+ },
134
+ };
135
+ exports.polygonAmoy = {
136
+ ...chains_1.polygonAmoy,
137
+ rpcUrls: {
138
+ ...chains_1.polygonAmoy.rpcUrls,
139
+ alchemy: {
140
+ http: ["https://polygon-amoy.g.alchemy.com/v2"],
141
+ },
142
+ },
143
+ };
144
+ exports.polygon = {
145
+ ...chains_1.polygon,
146
+ rpcUrls: {
147
+ ...chains_1.polygon.rpcUrls,
148
+ alchemy: {
149
+ http: ["https://polygon-mainnet.g.alchemy.com/v2"],
150
+ },
151
+ },
152
+ };
153
+ exports.fraxtal = {
154
+ ...chains_1.fraxtal,
155
+ rpcUrls: {
156
+ ...chains_1.fraxtal.rpcUrls,
157
+ },
158
+ };
159
+ exports.fraxtalSepolia = (0, viem_1.defineChain)({
160
+ id: 2523,
161
+ name: "Fraxtal Sepolia",
162
+ nativeCurrency: { name: "Frax Ether", symbol: "frxETH", decimals: 18 },
163
+ rpcUrls: {
164
+ default: {
165
+ http: ["https://rpc.testnet-sepolia.frax.com"],
166
+ },
167
+ },
168
+ });
169
+ exports.zora = {
170
+ ...chains_1.zora,
171
+ rpcUrls: {
172
+ ...chains_1.zora.rpcUrls,
173
+ },
174
+ };
175
+ exports.zoraSepolia = {
176
+ ...chains_1.zoraSepolia,
177
+ rpcUrls: {
178
+ ...chains_1.zoraSepolia.rpcUrls,
179
+ },
180
+ };
16
181
  //# sourceMappingURL=chains.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chains.js","sourceRoot":"","sources":["../../src/chains.ts"],"names":[],"mappings":";;;AAEO,MAAM,kBAAkB,GAAG,CAAC,EACjC,KAAK,EACL,UAAU,GAIX,EAAS,EAAE;IACV,OAAO;QACL,GAAG,KAAK;QACR,OAAO,EAAE;YACP,GAAG,KAAK,CAAC,OAAO;YAChB,OAAO,EAAE;gBACP,IAAI,EAAE,CAAC,UAAU,CAAC;aACnB;SACF;KACF,CAAC;AACJ,CAAC,CAAC;AAhBW,QAAA,kBAAkB,sBAgB7B","sourcesContent":["import type { Chain } from \"viem\";\n\nexport const defineAlchemyChain = ({\n chain,\n rpcBaseUrl,\n}: {\n chain: Chain;\n rpcBaseUrl: string;\n}): Chain => {\n return {\n ...chain,\n rpcUrls: {\n ...chain.rpcUrls,\n alchemy: {\n http: [rpcBaseUrl],\n },\n },\n };\n};\n"]}
1
+ {"version":3,"file":"chains.js","sourceRoot":"","sources":["../../src/chains.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Chain } from \"viem\";\n\nimport { defineChain } from \"viem\";\nimport {\n arbitrum as vab,\n arbitrumGoerli as vabg,\n arbitrumSepolia as vabs,\n base as vbase,\n baseGoerli as vbaseg,\n baseSepolia as vbases,\n fraxtal as vfrax,\n goerli as vgo,\n mainnet as vmain,\n optimism as vop,\n optimismGoerli as vopg,\n optimismSepolia as vops,\n polygon as vpg,\n polygonAmoy as vpga,\n polygonMumbai as vpgm,\n sepolia as vsep,\n zora as vzora,\n zoraSepolia as vzoras,\n} from \"viem/chains\";\n\nexport type AlchemyChainConfig = {\n chain: Chain;\n rpcBaseUrl: string;\n};\n\n/**\n * Defines an Alchemy chain configuration by adding an Alchemy-specific RPC base URL to the chain's RPC URLs.\n *\n * @example\n * ```ts\n * import { defineAlchemyChain } from \"@account-kit/infra\";\n * import { sepolia } from \"viem/chains\";\n *\n * const chain = defineAlchemyChain({\n * chain: sepolia,\n * rpcBaseUrl: \"https://eth-sepolia.g.alchemy.com/v2\"\n * });\n * ```\n *\n * @param {AlchemyChainConfig} params The parameters for defining the Alchemy chain\n * @param {Chain} params.chain The original chain configuration\n * @param {string} params.rpcBaseUrl The Alchemy-specific RPC base URL\n * @returns {Chain} The updated chain configuration with the Alchemy RPC URL added\n */\nexport const defineAlchemyChain = ({\n chain,\n rpcBaseUrl,\n}: {\n chain: Chain;\n rpcBaseUrl: string;\n}): Chain => {\n return {\n ...chain,\n rpcUrls: {\n ...chain.rpcUrls,\n alchemy: {\n http: [rpcBaseUrl],\n },\n },\n };\n};\n\nexport const arbitrum: Chain = {\n ...vab,\n rpcUrls: {\n ...vab.rpcUrls,\n alchemy: {\n http: [\"https://arb-mainnet.g.alchemy.com/v2\"],\n },\n },\n};\n\nexport const arbitrumGoerli: Chain = {\n ...vabg,\n rpcUrls: {\n ...vabg.rpcUrls,\n alchemy: {\n http: [\"https://arb-goerli.g.alchemy.com/v2\"],\n },\n },\n};\n\nexport const arbitrumSepolia: Chain = {\n ...vabs,\n rpcUrls: {\n ...vabs.rpcUrls,\n alchemy: {\n http: [\"https://arb-sepolia.g.alchemy.com/v2\"],\n },\n },\n};\nexport const goerli: Chain = {\n ...vgo,\n rpcUrls: {\n ...vgo.rpcUrls,\n alchemy: {\n http: [\"https://eth-goerli.g.alchemy.com/v2\"],\n },\n },\n};\nexport const mainnet: Chain = {\n ...vmain,\n rpcUrls: {\n ...vmain.rpcUrls,\n alchemy: {\n http: [\"https://eth-mainnet.g.alchemy.com/v2\"],\n },\n },\n};\nexport const optimism: Chain = {\n ...vop,\n rpcUrls: {\n ...vop.rpcUrls,\n alchemy: {\n http: [\"https://opt-mainnet.g.alchemy.com/v2\"],\n },\n },\n};\nexport const optimismGoerli: Chain = {\n ...vopg,\n rpcUrls: {\n ...vopg.rpcUrls,\n alchemy: {\n http: [\"https://opt-goerli.g.alchemy.com/v2\"],\n },\n },\n};\nexport const optimismSepolia: Chain = {\n ...vops,\n rpcUrls: {\n ...vops.rpcUrls,\n alchemy: {\n http: [\"https://opt-sepolia.g.alchemy.com/v2\"],\n },\n },\n};\nexport const sepolia: Chain = {\n ...vsep,\n rpcUrls: {\n ...vsep.rpcUrls,\n alchemy: {\n http: [\"https://eth-sepolia.g.alchemy.com/v2\"],\n },\n },\n};\nexport const base: Chain = {\n ...vbase,\n rpcUrls: {\n ...vbase.rpcUrls,\n alchemy: {\n http: [\"https://base-mainnet.g.alchemy.com/v2\"],\n },\n },\n};\nexport const baseGoerli: Chain = {\n ...vbaseg,\n rpcUrls: {\n ...vbaseg.rpcUrls,\n alchemy: {\n http: [\"https://base-goerli.g.alchemy.com/v2\"],\n },\n },\n};\nexport const baseSepolia: Chain = {\n ...vbases,\n rpcUrls: {\n ...vbases.rpcUrls,\n alchemy: {\n http: [\"https://base-sepolia.g.alchemy.com/v2\"],\n },\n },\n};\n\nexport const polygonMumbai: Chain = {\n ...vpgm,\n rpcUrls: {\n ...vpgm.rpcUrls,\n alchemy: {\n http: [\"https://polygon-mumbai.g.alchemy.com/v2\"],\n },\n },\n};\n\nexport const polygonAmoy: Chain = {\n ...vpga,\n rpcUrls: {\n ...vpga.rpcUrls,\n alchemy: {\n http: [\"https://polygon-amoy.g.alchemy.com/v2\"],\n },\n },\n};\n\nexport const polygon: Chain = {\n ...vpg,\n rpcUrls: {\n ...vpg.rpcUrls,\n alchemy: {\n http: [\"https://polygon-mainnet.g.alchemy.com/v2\"],\n },\n },\n};\n\nexport const fraxtal: Chain = {\n ...vfrax,\n rpcUrls: {\n ...vfrax.rpcUrls,\n },\n};\n\nexport const fraxtalSepolia: Chain = defineChain({\n id: 2523,\n name: \"Fraxtal Sepolia\",\n nativeCurrency: { name: \"Frax Ether\", symbol: \"frxETH\", decimals: 18 },\n rpcUrls: {\n default: {\n http: [\"https://rpc.testnet-sepolia.frax.com\"],\n },\n },\n});\n\nexport const zora: Chain = {\n ...vzora,\n rpcUrls: {\n ...vzora.rpcUrls,\n },\n};\n\nexport const zoraSepolia: Chain = {\n ...vzoras,\n rpcUrls: {\n ...vzoras.rpcUrls,\n },\n};\n"]}