@wagmi/core 2.0.0 → 2.0.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 (569) hide show
  1. package/README.md +13 -0
  2. package/actions/package.json +5 -0
  3. package/chains/package.json +5 -0
  4. package/dist/esm/actions/codegen/createReadContract.js +31 -0
  5. package/dist/esm/actions/codegen/createReadContract.js.map +1 -0
  6. package/dist/esm/actions/codegen/createSimulateContract.js +33 -0
  7. package/dist/esm/actions/codegen/createSimulateContract.js.map +1 -0
  8. package/dist/esm/actions/codegen/createWatchContractEvent.js +31 -0
  9. package/dist/esm/actions/codegen/createWatchContractEvent.js.map +1 -0
  10. package/dist/esm/actions/codegen/createWriteContract.js +43 -0
  11. package/dist/esm/actions/codegen/createWriteContract.js.map +1 -0
  12. package/dist/esm/actions/connect.js +15 -19
  13. package/dist/esm/actions/connect.js.map +1 -1
  14. package/dist/esm/actions/disconnect.js +10 -12
  15. package/dist/esm/actions/disconnect.js.map +1 -1
  16. package/dist/esm/actions/estimateFeesPerGas.js +3 -0
  17. package/dist/esm/actions/estimateFeesPerGas.js.map +1 -1
  18. package/dist/esm/actions/estimateGas.js +2 -2
  19. package/dist/esm/actions/estimateGas.js.map +1 -1
  20. package/dist/esm/actions/estimateMaxPriorityFeePerGas.js +12 -0
  21. package/dist/esm/actions/estimateMaxPriorityFeePerGas.js.map +1 -0
  22. package/dist/esm/actions/getAccount.js +6 -1
  23. package/dist/esm/actions/getAccount.js.map +1 -1
  24. package/dist/esm/actions/getBalance.js +14 -5
  25. package/dist/esm/actions/getBalance.js.map +1 -1
  26. package/dist/esm/actions/getBlock.js +15 -0
  27. package/dist/esm/actions/getBlock.js.map +1 -0
  28. package/dist/esm/actions/getBlockNumber.js +3 -1
  29. package/dist/esm/actions/getBlockNumber.js.map +1 -1
  30. package/dist/esm/actions/getBlockTransactionCount.js +11 -0
  31. package/dist/esm/actions/getBlockTransactionCount.js.map +1 -0
  32. package/dist/esm/actions/getChainId.js +2 -1
  33. package/dist/esm/actions/getChainId.js.map +1 -1
  34. package/dist/esm/actions/getClient.js +3 -0
  35. package/dist/esm/actions/getClient.js.map +1 -1
  36. package/dist/esm/actions/getConnections.js +2 -1
  37. package/dist/esm/actions/getConnections.js.map +1 -1
  38. package/dist/esm/actions/getConnectorClient.js +7 -3
  39. package/dist/esm/actions/getConnectorClient.js.map +1 -1
  40. package/dist/esm/actions/getConnectors.js +11 -0
  41. package/dist/esm/actions/getConnectors.js.map +1 -0
  42. package/dist/esm/actions/getEnsAddress.js +3 -1
  43. package/dist/esm/actions/getEnsAddress.js.map +1 -1
  44. package/dist/esm/actions/getEnsAvatar.js +3 -1
  45. package/dist/esm/actions/getEnsAvatar.js.map +1 -1
  46. package/dist/esm/actions/getEnsName.js +3 -1
  47. package/dist/esm/actions/getEnsName.js.map +1 -1
  48. package/dist/esm/actions/getEnsResolver.js +3 -1
  49. package/dist/esm/actions/getEnsResolver.js.map +1 -1
  50. package/dist/esm/actions/getFeeHistory.js +11 -0
  51. package/dist/esm/actions/getFeeHistory.js.map +1 -0
  52. package/dist/esm/actions/getGasPrice.js +11 -0
  53. package/dist/esm/actions/getGasPrice.js.map +1 -0
  54. package/dist/esm/actions/getPublicClient.js +3 -0
  55. package/dist/esm/actions/getPublicClient.js.map +1 -1
  56. package/dist/esm/actions/getToken.js +5 -0
  57. package/dist/esm/actions/getToken.js.map +1 -1
  58. package/dist/esm/actions/getTransaction.js +2 -1
  59. package/dist/esm/actions/getTransaction.js.map +1 -1
  60. package/dist/esm/actions/getTransactionCount.js +11 -0
  61. package/dist/esm/actions/getTransactionCount.js.map +1 -0
  62. package/dist/esm/actions/getWalletClient.js +4 -0
  63. package/dist/esm/actions/getWalletClient.js.map +1 -1
  64. package/dist/esm/actions/multicall.js +2 -0
  65. package/dist/esm/actions/multicall.js.map +1 -1
  66. package/dist/esm/actions/readContract.js +2 -1
  67. package/dist/esm/actions/readContract.js.map +1 -1
  68. package/dist/esm/actions/readContracts.js.map +1 -1
  69. package/dist/esm/actions/reconnect.js +13 -7
  70. package/dist/esm/actions/reconnect.js.map +1 -1
  71. package/dist/esm/actions/sendTransaction.js +5 -8
  72. package/dist/esm/actions/sendTransaction.js.map +1 -1
  73. package/dist/esm/actions/signMessage.js +4 -2
  74. package/dist/esm/actions/signMessage.js.map +1 -1
  75. package/dist/esm/actions/signTypedData.js +2 -2
  76. package/dist/esm/actions/signTypedData.js.map +1 -1
  77. package/dist/esm/actions/simulateContract.js +6 -7
  78. package/dist/esm/actions/simulateContract.js.map +1 -1
  79. package/dist/esm/actions/switchAccount.js +3 -2
  80. package/dist/esm/actions/switchAccount.js.map +1 -1
  81. package/dist/esm/actions/switchChain.js +5 -5
  82. package/dist/esm/actions/switchChain.js.map +1 -1
  83. package/dist/esm/actions/verifyMessage.js +11 -0
  84. package/dist/esm/actions/verifyMessage.js.map +1 -0
  85. package/dist/esm/actions/verifyTypedData.js +12 -0
  86. package/dist/esm/actions/verifyTypedData.js.map +1 -0
  87. package/dist/esm/actions/waitForTransactionReceipt.js +7 -1
  88. package/dist/esm/actions/waitForTransactionReceipt.js.map +1 -1
  89. package/dist/esm/actions/watchAccount.js +1 -1
  90. package/dist/esm/actions/watchAccount.js.map +1 -1
  91. package/dist/esm/actions/watchBlockNumber.js +2 -4
  92. package/dist/esm/actions/watchBlockNumber.js.map +1 -1
  93. package/dist/esm/actions/watchBlocks.js +26 -0
  94. package/dist/esm/actions/watchBlocks.js.map +1 -0
  95. package/dist/esm/actions/watchChainId.js +2 -1
  96. package/dist/esm/actions/watchChainId.js.map +1 -1
  97. package/dist/esm/actions/watchClient.js +2 -1
  98. package/dist/esm/actions/watchClient.js.map +1 -1
  99. package/dist/esm/actions/watchConnections.js +2 -1
  100. package/dist/esm/actions/watchConnections.js.map +1 -1
  101. package/dist/esm/actions/watchConnectors.js +10 -0
  102. package/dist/esm/actions/watchConnectors.js.map +1 -0
  103. package/dist/esm/actions/watchContractEvent.js +6 -4
  104. package/dist/esm/actions/watchContractEvent.js.map +1 -1
  105. package/dist/esm/actions/watchPendingTransactions.js +3 -4
  106. package/dist/esm/actions/watchPendingTransactions.js.map +1 -1
  107. package/dist/esm/actions/watchPublicClient.js +2 -1
  108. package/dist/esm/actions/watchPublicClient.js.map +1 -1
  109. package/dist/esm/actions/writeContract.js +9 -11
  110. package/dist/esm/actions/writeContract.js.map +1 -1
  111. package/dist/esm/connectors/createConnector.js +8 -0
  112. package/dist/esm/connectors/createConnector.js.map +1 -0
  113. package/dist/esm/connectors/injected.js +402 -0
  114. package/dist/esm/connectors/injected.js.map +1 -0
  115. package/dist/esm/connectors/mock.js +131 -0
  116. package/dist/esm/connectors/mock.js.map +1 -0
  117. package/dist/esm/createConfig.js +65 -23
  118. package/dist/esm/createConfig.js.map +1 -1
  119. package/dist/esm/createStorage.js +4 -2
  120. package/dist/esm/createStorage.js.map +1 -1
  121. package/dist/esm/errors/base.js +1 -1
  122. package/dist/esm/errors/base.js.map +1 -1
  123. package/dist/esm/errors/config.js +3 -15
  124. package/dist/esm/errors/config.js.map +1 -1
  125. package/dist/esm/errors/connector.js.map +1 -1
  126. package/dist/esm/exports/actions.js +43 -11
  127. package/dist/esm/exports/actions.js.map +1 -1
  128. package/dist/esm/exports/chains.js +1 -0
  129. package/dist/esm/exports/chains.js.map +1 -1
  130. package/dist/esm/exports/codegen.js +5 -0
  131. package/dist/esm/exports/codegen.js.map +1 -0
  132. package/dist/esm/exports/index.js +67 -18
  133. package/dist/esm/exports/index.js.map +1 -1
  134. package/dist/esm/exports/internal.js +5 -0
  135. package/dist/esm/exports/internal.js.map +1 -1
  136. package/dist/esm/exports/query.js +10 -0
  137. package/dist/esm/exports/query.js.map +1 -1
  138. package/dist/esm/hydrate.js +34 -0
  139. package/dist/esm/hydrate.js.map +1 -0
  140. package/dist/esm/query/disconnect.js +1 -0
  141. package/dist/esm/query/disconnect.js.map +1 -1
  142. package/dist/esm/query/estimateFeesPerGas.js +1 -0
  143. package/dist/esm/query/estimateFeesPerGas.js.map +1 -1
  144. package/dist/esm/query/estimateGas.js +1 -0
  145. package/dist/esm/query/estimateGas.js.map +1 -1
  146. package/dist/esm/query/estimateMaxPriorityFeePerGas.js +19 -0
  147. package/dist/esm/query/estimateMaxPriorityFeePerGas.js.map +1 -0
  148. package/dist/esm/query/getBalance.js +6 -4
  149. package/dist/esm/query/getBalance.js.map +1 -1
  150. package/dist/esm/query/getBlock.js +18 -0
  151. package/dist/esm/query/getBlock.js.map +1 -0
  152. package/dist/esm/query/getBlockNumber.js +1 -0
  153. package/dist/esm/query/getBlockNumber.js.map +1 -1
  154. package/dist/esm/query/getBlockTransactionCount.js +20 -0
  155. package/dist/esm/query/getBlockTransactionCount.js.map +1 -0
  156. package/dist/esm/query/getConnectorClient.js +2 -0
  157. package/dist/esm/query/getConnectorClient.js.map +1 -1
  158. package/dist/esm/query/getEnsAddress.js +1 -0
  159. package/dist/esm/query/getEnsAddress.js.map +1 -1
  160. package/dist/esm/query/getEnsAvatar.js +1 -0
  161. package/dist/esm/query/getEnsAvatar.js.map +1 -1
  162. package/dist/esm/query/getEnsName.js +1 -0
  163. package/dist/esm/query/getEnsName.js.map +1 -1
  164. package/dist/esm/query/getEnsResolver.js +1 -0
  165. package/dist/esm/query/getEnsResolver.js.map +1 -1
  166. package/dist/esm/query/getFeeHistory.js +27 -0
  167. package/dist/esm/query/getFeeHistory.js.map +1 -0
  168. package/dist/esm/query/getGasPrice.js +20 -0
  169. package/dist/esm/query/getGasPrice.js.map +1 -0
  170. package/dist/esm/query/getToken.js +1 -0
  171. package/dist/esm/query/getToken.js.map +1 -1
  172. package/dist/esm/query/getTransaction.js +4 -2
  173. package/dist/esm/query/getTransaction.js.map +1 -1
  174. package/dist/esm/query/getTransactionCount.js +23 -0
  175. package/dist/esm/query/getTransactionCount.js.map +1 -0
  176. package/dist/esm/query/getWalletClient.js +2 -0
  177. package/dist/esm/query/getWalletClient.js.map +1 -1
  178. package/dist/esm/query/infiniteReadContracts.js +25 -0
  179. package/dist/esm/query/infiniteReadContracts.js.map +1 -0
  180. package/dist/esm/query/readContract.js +7 -2
  181. package/dist/esm/query/readContract.js.map +1 -1
  182. package/dist/esm/query/readContracts.js +5 -3
  183. package/dist/esm/query/readContracts.js.map +1 -1
  184. package/dist/esm/query/reconnect.js +2 -0
  185. package/dist/esm/query/reconnect.js.map +1 -1
  186. package/dist/esm/query/sendTransaction.js +1 -0
  187. package/dist/esm/query/sendTransaction.js.map +1 -1
  188. package/dist/esm/query/signTypedData.js +1 -0
  189. package/dist/esm/query/signTypedData.js.map +1 -1
  190. package/dist/esm/query/simulateContract.js +6 -1
  191. package/dist/esm/query/simulateContract.js.map +1 -1
  192. package/dist/esm/query/switchAccount.js +3 -0
  193. package/dist/esm/query/switchAccount.js.map +1 -1
  194. package/dist/esm/query/switchChain.js +2 -0
  195. package/dist/esm/query/switchChain.js.map +1 -1
  196. package/dist/esm/query/types.js +2 -1
  197. package/dist/esm/query/types.js.map +1 -1
  198. package/dist/esm/query/utils.js +13 -0
  199. package/dist/esm/query/utils.js.map +1 -1
  200. package/dist/esm/query/verifyMessage.js +21 -0
  201. package/dist/esm/query/verifyMessage.js.map +1 -0
  202. package/dist/esm/query/verifyTypedData.js +38 -0
  203. package/dist/esm/query/verifyTypedData.js.map +1 -0
  204. package/dist/esm/query/waitForTransactionReceipt.js +3 -0
  205. package/dist/esm/query/waitForTransactionReceipt.js.map +1 -1
  206. package/dist/esm/query/writeContract.js +3 -0
  207. package/dist/esm/query/writeContract.js.map +1 -1
  208. package/dist/esm/transports/connector.js +37 -0
  209. package/dist/esm/transports/connector.js.map +1 -0
  210. package/dist/esm/transports/fallback.js +6 -0
  211. package/dist/esm/transports/fallback.js.map +1 -0
  212. package/dist/esm/tsconfig.build.tsbuildinfo +1 -1
  213. package/dist/esm/types/chain.js +3 -1
  214. package/dist/esm/types/chain.js.map +1 -1
  215. package/dist/esm/types/properties.js +1 -1
  216. package/dist/esm/types/properties.js.map +1 -1
  217. package/dist/esm/types/register.js +1 -1
  218. package/dist/esm/types/register.js.map +1 -1
  219. package/dist/esm/utils/cookie.js +37 -0
  220. package/dist/esm/utils/cookie.js.map +1 -0
  221. package/dist/esm/version.js +1 -1
  222. package/dist/types/actions/codegen/createReadContract.d.ts +16 -0
  223. package/dist/types/actions/codegen/createReadContract.d.ts.map +1 -0
  224. package/dist/types/actions/codegen/createSimulateContract.d.ts +20 -0
  225. package/dist/types/actions/codegen/createSimulateContract.d.ts.map +1 -0
  226. package/dist/types/actions/codegen/createWatchContractEvent.d.ts +14 -0
  227. package/dist/types/actions/codegen/createWatchContractEvent.d.ts.map +1 -0
  228. package/dist/types/actions/codegen/createWriteContract.d.ts +22 -0
  229. package/dist/types/actions/codegen/createWriteContract.d.ts.map +1 -0
  230. package/dist/types/actions/connect.d.ts +10 -11
  231. package/dist/types/actions/connect.d.ts.map +1 -1
  232. package/dist/types/actions/disconnect.d.ts +7 -6
  233. package/dist/types/actions/disconnect.d.ts.map +1 -1
  234. package/dist/types/actions/estimateFeesPerGas.d.ts +7 -5
  235. package/dist/types/actions/estimateFeesPerGas.d.ts.map +1 -1
  236. package/dist/types/actions/estimateGas.d.ts +7 -5
  237. package/dist/types/actions/estimateGas.d.ts.map +1 -1
  238. package/dist/types/actions/estimateMaxPriorityFeePerGas.d.ts +11 -0
  239. package/dist/types/actions/estimateMaxPriorityFeePerGas.d.ts.map +1 -0
  240. package/dist/types/actions/getAccount.d.ts +6 -2
  241. package/dist/types/actions/getAccount.d.ts.map +1 -1
  242. package/dist/types/actions/getBalance.d.ts +7 -5
  243. package/dist/types/actions/getBalance.d.ts.map +1 -1
  244. package/dist/types/actions/getBlock.d.ts +16 -0
  245. package/dist/types/actions/getBlock.d.ts.map +1 -0
  246. package/dist/types/actions/getBlockNumber.d.ts +7 -7
  247. package/dist/types/actions/getBlockNumber.d.ts.map +1 -1
  248. package/dist/types/actions/getBlockTransactionCount.d.ts +10 -0
  249. package/dist/types/actions/getBlockTransactionCount.d.ts.map +1 -0
  250. package/dist/types/actions/getChainId.d.ts +2 -2
  251. package/dist/types/actions/getChainId.d.ts.map +1 -1
  252. package/dist/types/actions/getClient.d.ts +3 -3
  253. package/dist/types/actions/getClient.d.ts.map +1 -1
  254. package/dist/types/actions/getConnections.d.ts +2 -2
  255. package/dist/types/actions/getConnections.d.ts.map +1 -1
  256. package/dist/types/actions/getConnectorClient.d.ts +6 -5
  257. package/dist/types/actions/getConnectorClient.d.ts.map +1 -1
  258. package/dist/types/actions/getConnectors.d.ts +5 -0
  259. package/dist/types/actions/getConnectors.d.ts.map +1 -0
  260. package/dist/types/actions/getEnsAddress.d.ts +5 -5
  261. package/dist/types/actions/getEnsAddress.d.ts.map +1 -1
  262. package/dist/types/actions/getEnsAvatar.d.ts +5 -5
  263. package/dist/types/actions/getEnsAvatar.d.ts.map +1 -1
  264. package/dist/types/actions/getEnsName.d.ts +5 -5
  265. package/dist/types/actions/getEnsName.d.ts.map +1 -1
  266. package/dist/types/actions/getEnsResolver.d.ts +5 -5
  267. package/dist/types/actions/getEnsResolver.d.ts.map +1 -1
  268. package/dist/types/actions/getFeeHistory.d.ts +10 -0
  269. package/dist/types/actions/getFeeHistory.d.ts.map +1 -0
  270. package/dist/types/actions/getGasPrice.d.ts +10 -0
  271. package/dist/types/actions/getGasPrice.d.ts.map +1 -0
  272. package/dist/types/actions/getPublicClient.d.ts +3 -3
  273. package/dist/types/actions/getPublicClient.d.ts.map +1 -1
  274. package/dist/types/actions/getToken.d.ts +10 -8
  275. package/dist/types/actions/getToken.d.ts.map +1 -1
  276. package/dist/types/actions/getTransaction.d.ts +8 -6
  277. package/dist/types/actions/getTransaction.d.ts.map +1 -1
  278. package/dist/types/actions/getTransactionCount.d.ts +10 -0
  279. package/dist/types/actions/getTransactionCount.d.ts.map +1 -0
  280. package/dist/types/actions/getWalletClient.d.ts +5 -4
  281. package/dist/types/actions/getWalletClient.d.ts.map +1 -1
  282. package/dist/types/actions/multicall.d.ts +5 -4
  283. package/dist/types/actions/multicall.d.ts.map +1 -1
  284. package/dist/types/actions/readContract.d.ts +4 -4
  285. package/dist/types/actions/readContract.d.ts.map +1 -1
  286. package/dist/types/actions/readContracts.d.ts +3 -1
  287. package/dist/types/actions/readContracts.d.ts.map +1 -1
  288. package/dist/types/actions/reconnect.d.ts +5 -4
  289. package/dist/types/actions/reconnect.d.ts.map +1 -1
  290. package/dist/types/actions/sendTransaction.d.ts +7 -5
  291. package/dist/types/actions/sendTransaction.d.ts.map +1 -1
  292. package/dist/types/actions/signMessage.d.ts +7 -5
  293. package/dist/types/actions/signMessage.d.ts.map +1 -1
  294. package/dist/types/actions/signTypedData.d.ts +7 -4
  295. package/dist/types/actions/signTypedData.d.ts.map +1 -1
  296. package/dist/types/actions/simulateContract.d.ts +15 -11
  297. package/dist/types/actions/simulateContract.d.ts.map +1 -1
  298. package/dist/types/actions/switchAccount.d.ts +5 -4
  299. package/dist/types/actions/switchAccount.d.ts.map +1 -1
  300. package/dist/types/actions/switchChain.d.ts +9 -8
  301. package/dist/types/actions/switchChain.d.ts.map +1 -1
  302. package/dist/types/actions/verifyMessage.d.ts +10 -0
  303. package/dist/types/actions/verifyMessage.d.ts.map +1 -0
  304. package/dist/types/actions/verifyTypedData.d.ts +11 -0
  305. package/dist/types/actions/verifyTypedData.d.ts.map +1 -0
  306. package/dist/types/actions/waitForTransactionReceipt.d.ts +9 -6
  307. package/dist/types/actions/waitForTransactionReceipt.d.ts.map +1 -1
  308. package/dist/types/actions/watchAccount.d.ts +1 -1
  309. package/dist/types/actions/watchAccount.d.ts.map +1 -1
  310. package/dist/types/actions/watchBlockNumber.d.ts +1 -1
  311. package/dist/types/actions/watchBlockNumber.d.ts.map +1 -1
  312. package/dist/types/actions/watchBlocks.d.ts +13 -0
  313. package/dist/types/actions/watchBlocks.d.ts.map +1 -0
  314. package/dist/types/actions/watchChainId.d.ts +2 -2
  315. package/dist/types/actions/watchChainId.d.ts.map +1 -1
  316. package/dist/types/actions/watchClient.d.ts +2 -2
  317. package/dist/types/actions/watchClient.d.ts.map +1 -1
  318. package/dist/types/actions/watchConnections.d.ts +2 -2
  319. package/dist/types/actions/watchConnections.d.ts.map +1 -1
  320. package/dist/types/actions/watchConnectors.d.ts +9 -0
  321. package/dist/types/actions/watchConnectors.d.ts.map +1 -0
  322. package/dist/types/actions/watchContractEvent.d.ts +5 -5
  323. package/dist/types/actions/watchContractEvent.d.ts.map +1 -1
  324. package/dist/types/actions/watchPendingTransactions.d.ts +2 -2
  325. package/dist/types/actions/watchPendingTransactions.d.ts.map +1 -1
  326. package/dist/types/actions/watchPublicClient.d.ts +2 -2
  327. package/dist/types/actions/watchPublicClient.d.ts.map +1 -1
  328. package/dist/types/actions/writeContract.d.ts +14 -10
  329. package/dist/types/actions/writeContract.d.ts.map +1 -1
  330. package/dist/types/{createConnector.d.ts → connectors/createConnector.d.ts} +7 -4
  331. package/dist/types/connectors/createConnector.d.ts.map +1 -0
  332. package/dist/types/connectors/injected.d.ts +356 -0
  333. package/dist/types/connectors/injected.d.ts.map +1 -0
  334. package/dist/types/connectors/mock.d.ts +20 -0
  335. package/dist/types/connectors/mock.d.ts.map +1 -0
  336. package/dist/types/createConfig.d.ts +30 -20
  337. package/dist/types/createConfig.d.ts.map +1 -1
  338. package/dist/types/createStorage.d.ts +4 -4
  339. package/dist/types/createStorage.d.ts.map +1 -1
  340. package/dist/types/errors/base.d.ts +13 -7
  341. package/dist/types/errors/base.d.ts.map +1 -1
  342. package/dist/types/errors/config.d.ts +17 -9
  343. package/dist/types/errors/config.d.ts.map +1 -1
  344. package/dist/types/errors/connector.d.ts +6 -0
  345. package/dist/types/errors/connector.d.ts.map +1 -1
  346. package/dist/types/exports/actions.d.ts +56 -25
  347. package/dist/types/exports/actions.d.ts.map +1 -1
  348. package/dist/types/exports/chains.d.ts.map +1 -1
  349. package/dist/types/exports/codegen.d.ts +5 -0
  350. package/dist/types/exports/codegen.d.ts.map +1 -0
  351. package/dist/types/exports/index.d.ts +67 -29
  352. package/dist/types/exports/index.d.ts.map +1 -1
  353. package/dist/types/exports/internal.d.ts +3 -1
  354. package/dist/types/exports/internal.d.ts.map +1 -1
  355. package/dist/types/exports/query.d.ts +9 -0
  356. package/dist/types/exports/query.d.ts.map +1 -1
  357. package/dist/types/hydrate.d.ts +10 -0
  358. package/dist/types/hydrate.d.ts.map +1 -0
  359. package/dist/types/query/connect.d.ts +4 -4
  360. package/dist/types/query/connect.d.ts.map +1 -1
  361. package/dist/types/query/disconnect.d.ts +4 -4
  362. package/dist/types/query/disconnect.d.ts.map +1 -1
  363. package/dist/types/query/estimateFeesPerGas.d.ts +2 -2
  364. package/dist/types/query/estimateFeesPerGas.d.ts.map +1 -1
  365. package/dist/types/query/estimateGas.d.ts +2 -2
  366. package/dist/types/query/estimateGas.d.ts.map +1 -1
  367. package/dist/types/query/estimateMaxPriorityFeePerGas.d.ts +27 -0
  368. package/dist/types/query/estimateMaxPriorityFeePerGas.d.ts.map +1 -0
  369. package/dist/types/query/getBalance.d.ts +2 -2
  370. package/dist/types/query/getBalance.d.ts.map +1 -1
  371. package/dist/types/query/getBlock.d.ts +19 -0
  372. package/dist/types/query/getBlock.d.ts.map +1 -0
  373. package/dist/types/query/getBlockNumber.d.ts +9 -12
  374. package/dist/types/query/getBlockNumber.d.ts.map +1 -1
  375. package/dist/types/query/getBlockTransactionCount.d.ts +18 -0
  376. package/dist/types/query/getBlockTransactionCount.d.ts.map +1 -0
  377. package/dist/types/query/getConnectorClient.d.ts +12 -3
  378. package/dist/types/query/getConnectorClient.d.ts.map +1 -1
  379. package/dist/types/query/getEnsAddress.d.ts +2 -2
  380. package/dist/types/query/getEnsAddress.d.ts.map +1 -1
  381. package/dist/types/query/getEnsAvatar.d.ts +2 -2
  382. package/dist/types/query/getEnsAvatar.d.ts.map +1 -1
  383. package/dist/types/query/getEnsName.d.ts +2 -2
  384. package/dist/types/query/getEnsName.d.ts.map +1 -1
  385. package/dist/types/query/getEnsResolver.d.ts +2 -2
  386. package/dist/types/query/getEnsResolver.d.ts.map +1 -1
  387. package/dist/types/query/getFeeHistory.d.ts +39 -0
  388. package/dist/types/query/getFeeHistory.d.ts.map +1 -0
  389. package/dist/types/query/getGasPrice.d.ts +27 -0
  390. package/dist/types/query/getGasPrice.d.ts.map +1 -0
  391. package/dist/types/query/getToken.d.ts +5 -5
  392. package/dist/types/query/getToken.d.ts.map +1 -1
  393. package/dist/types/query/getTransaction.d.ts +7 -95
  394. package/dist/types/query/getTransaction.d.ts.map +1 -1
  395. package/dist/types/query/getTransactionCount.d.ts +36 -0
  396. package/dist/types/query/getTransactionCount.d.ts.map +1 -0
  397. package/dist/types/query/getWalletClient.d.ts +27 -256
  398. package/dist/types/query/getWalletClient.d.ts.map +1 -1
  399. package/dist/types/query/infiniteReadContracts.d.ts +60 -0
  400. package/dist/types/query/infiniteReadContracts.d.ts.map +1 -0
  401. package/dist/types/query/readContract.d.ts +6 -6
  402. package/dist/types/query/readContract.d.ts.map +1 -1
  403. package/dist/types/query/readContracts.d.ts +15 -15
  404. package/dist/types/query/readContracts.d.ts.map +1 -1
  405. package/dist/types/query/reconnect.d.ts +5 -5
  406. package/dist/types/query/reconnect.d.ts.map +1 -1
  407. package/dist/types/query/sendTransaction.d.ts +4 -4
  408. package/dist/types/query/sendTransaction.d.ts.map +1 -1
  409. package/dist/types/query/signMessage.d.ts +3 -3
  410. package/dist/types/query/signMessage.d.ts.map +1 -1
  411. package/dist/types/query/signTypedData.d.ts +224 -211
  412. package/dist/types/query/signTypedData.d.ts.map +1 -1
  413. package/dist/types/query/simulateContract.d.ts +5 -5
  414. package/dist/types/query/simulateContract.d.ts.map +1 -1
  415. package/dist/types/query/switchAccount.d.ts +5 -5
  416. package/dist/types/query/switchAccount.d.ts.map +1 -1
  417. package/dist/types/query/switchChain.d.ts +6 -6
  418. package/dist/types/query/switchChain.d.ts.map +1 -1
  419. package/dist/types/query/types.d.ts +12 -5
  420. package/dist/types/query/types.d.ts.map +1 -1
  421. package/dist/types/query/utils.d.ts +1 -1
  422. package/dist/types/query/utils.d.ts.map +1 -1
  423. package/dist/types/query/verifyMessage.d.ts +42 -0
  424. package/dist/types/query/verifyMessage.d.ts.map +1 -0
  425. package/dist/types/query/verifyTypedData.d.ts +19 -0
  426. package/dist/types/query/verifyTypedData.d.ts.map +1 -0
  427. package/dist/types/query/waitForTransactionReceipt.d.ts +9 -97
  428. package/dist/types/query/waitForTransactionReceipt.d.ts.map +1 -1
  429. package/dist/types/query/writeContract.d.ts +12 -8
  430. package/dist/types/query/writeContract.d.ts.map +1 -1
  431. package/dist/types/transports/connector.d.ts +15 -0
  432. package/dist/types/transports/connector.d.ts.map +1 -0
  433. package/dist/types/transports/fallback.d.ts +4 -0
  434. package/dist/types/transports/fallback.d.ts.map +1 -0
  435. package/dist/types/types/chain.d.ts +3 -3
  436. package/dist/types/types/chain.d.ts.map +1 -1
  437. package/dist/types/types/properties.d.ts +4 -1
  438. package/dist/types/types/properties.d.ts.map +1 -1
  439. package/dist/types/types/register.d.ts +1 -1
  440. package/dist/types/types/register.d.ts.map +1 -1
  441. package/dist/types/types/utils.d.ts +9 -3
  442. package/dist/types/types/utils.d.ts.map +1 -1
  443. package/dist/types/utils/cookie.d.ts +9 -0
  444. package/dist/types/utils/cookie.d.ts.map +1 -0
  445. package/dist/types/version.d.ts +1 -1
  446. package/internal/package.json +5 -0
  447. package/package.json +25 -27
  448. package/query/package.json +5 -0
  449. package/src/actions/codegen/createReadContract.ts +100 -0
  450. package/src/actions/codegen/createSimulateContract.ts +122 -0
  451. package/src/actions/codegen/createWatchContractEvent.ts +87 -0
  452. package/src/actions/codegen/createWriteContract.ts +142 -0
  453. package/src/actions/connect.ts +32 -32
  454. package/src/actions/disconnect.ts +23 -20
  455. package/src/actions/estimateFeesPerGas.ts +7 -4
  456. package/src/actions/estimateGas.ts +16 -4
  457. package/src/actions/estimateMaxPriorityFeePerGas.ts +41 -0
  458. package/src/actions/getAccount.ts +11 -2
  459. package/src/actions/getBalance.ts +19 -8
  460. package/src/actions/getBlock.ts +71 -0
  461. package/src/actions/getBlockNumber.ts +14 -9
  462. package/src/actions/getBlockTransactionCount.ts +36 -0
  463. package/src/actions/getChainId.ts +2 -2
  464. package/src/actions/getClient.ts +3 -3
  465. package/src/actions/getConnections.ts +2 -2
  466. package/src/actions/getConnectorClient.ts +18 -9
  467. package/src/actions/getConnectors.ts +14 -0
  468. package/src/actions/getEnsAddress.ts +5 -4
  469. package/src/actions/getEnsAvatar.ts +5 -4
  470. package/src/actions/getEnsName.ts +5 -4
  471. package/src/actions/getEnsResolver.ts +5 -4
  472. package/src/actions/getFeeHistory.ts +32 -0
  473. package/src/actions/getGasPrice.ts +31 -0
  474. package/src/actions/getPublicClient.ts +3 -3
  475. package/src/actions/getToken.ts +10 -9
  476. package/src/actions/getTransaction.ts +8 -5
  477. package/src/actions/getTransactionCount.ts +31 -0
  478. package/src/actions/getWalletClient.ts +13 -4
  479. package/src/actions/multicall.ts +6 -3
  480. package/src/actions/readContract.ts +4 -3
  481. package/src/actions/readContracts.ts +4 -4
  482. package/src/actions/reconnect.ts +15 -10
  483. package/src/actions/sendTransaction.ts +20 -13
  484. package/src/actions/signMessage.ts +17 -5
  485. package/src/actions/signTypedData.ts +22 -5
  486. package/src/actions/simulateContract.ts +38 -31
  487. package/src/actions/switchAccount.ts +12 -4
  488. package/src/actions/switchChain.ts +27 -16
  489. package/src/actions/verifyMessage.ts +28 -0
  490. package/src/actions/verifyTypedData.ts +38 -0
  491. package/src/actions/waitForTransactionReceipt.ts +22 -16
  492. package/src/actions/watchAccount.ts +2 -1
  493. package/src/actions/watchBlockNumber.ts +4 -6
  494. package/src/actions/watchBlocks.ts +85 -0
  495. package/src/actions/watchChainId.ts +2 -2
  496. package/src/actions/watchClient.ts +2 -2
  497. package/src/actions/watchConnections.ts +2 -2
  498. package/src/actions/watchConnectors.ts +22 -0
  499. package/src/actions/watchContractEvent.ts +9 -10
  500. package/src/actions/watchPendingTransactions.ts +3 -5
  501. package/src/actions/watchPublicClient.ts +2 -2
  502. package/src/actions/writeContract.ts +52 -44
  503. package/src/{createConnector.ts → connectors/createConnector.ts} +12 -16
  504. package/src/connectors/injected.ts +556 -0
  505. package/src/connectors/mock.ts +176 -0
  506. package/src/createConfig.ts +153 -76
  507. package/src/createStorage.ts +7 -6
  508. package/src/errors/base.ts +9 -6
  509. package/src/errors/config.ts +20 -18
  510. package/src/errors/connector.ts +6 -0
  511. package/src/exports/actions.ts +121 -29
  512. package/src/exports/chains.ts +1 -0
  513. package/src/exports/codegen.ts +7 -0
  514. package/src/exports/index.ts +177 -47
  515. package/src/exports/internal.ts +12 -0
  516. package/src/exports/query.ts +82 -0
  517. package/src/hydrate.ts +42 -0
  518. package/src/query/connect.ts +4 -4
  519. package/src/query/disconnect.ts +5 -5
  520. package/src/query/estimateFeesPerGas.ts +4 -4
  521. package/src/query/estimateGas.ts +5 -5
  522. package/src/query/estimateMaxPriorityFeePerGas.ts +51 -0
  523. package/src/query/getBalance.ts +9 -17
  524. package/src/query/getBlock.ts +84 -0
  525. package/src/query/getBlockNumber.ts +22 -17
  526. package/src/query/getBlockTransactionCount.ts +62 -0
  527. package/src/query/getConnectorClient.ts +5 -4
  528. package/src/query/getEnsAddress.ts +4 -4
  529. package/src/query/getEnsAvatar.ts +4 -4
  530. package/src/query/getEnsName.ts +4 -4
  531. package/src/query/getEnsResolver.ts +4 -4
  532. package/src/query/getFeeHistory.ts +69 -0
  533. package/src/query/getGasPrice.ts +54 -0
  534. package/src/query/getToken.ts +4 -4
  535. package/src/query/getTransaction.ts +7 -13
  536. package/src/query/getTransactionCount.ts +55 -0
  537. package/src/query/getWalletClient.ts +5 -4
  538. package/src/query/infiniteReadContracts.ts +129 -0
  539. package/src/query/readContract.ts +14 -12
  540. package/src/query/readContracts.ts +16 -16
  541. package/src/query/reconnect.ts +6 -6
  542. package/src/query/sendTransaction.ts +5 -5
  543. package/src/query/signMessage.ts +4 -4
  544. package/src/query/signTypedData.ts +20 -8
  545. package/src/query/simulateContract.ts +12 -8
  546. package/src/query/switchAccount.ts +7 -7
  547. package/src/query/switchChain.ts +6 -6
  548. package/src/query/types.ts +63 -34
  549. package/src/query/utils.ts +16 -1
  550. package/src/query/verifyMessage.ts +54 -0
  551. package/src/query/verifyTypedData.ts +81 -0
  552. package/src/query/waitForTransactionReceipt.ts +6 -6
  553. package/src/query/writeContract.ts +39 -10
  554. package/src/transports/connector.ts +87 -0
  555. package/src/transports/fallback.ts +10 -0
  556. package/src/types/chain.ts +5 -4
  557. package/src/types/properties.ts +3 -1
  558. package/src/types/register.ts +1 -1
  559. package/src/types/utils.ts +10 -2
  560. package/src/utils/cookie.ts +34 -0
  561. package/src/version.ts +1 -1
  562. package/dist/esm/createConnector.js +0 -8
  563. package/dist/esm/createConnector.js.map +0 -1
  564. package/dist/esm/utils/assertActiveChain.js +0 -14
  565. package/dist/esm/utils/assertActiveChain.js.map +0 -1
  566. package/dist/types/createConnector.d.ts.map +0 -1
  567. package/dist/types/utils/assertActiveChain.d.ts +0 -8
  568. package/dist/types/utils/assertActiveChain.d.ts.map +0 -1
  569. package/src/utils/assertActiveChain.ts +0 -26
@@ -2,13 +2,13 @@ import type { MutateOptions, MutationOptions } from '@tanstack/query-core'
2
2
 
3
3
  import type { TypedData } from 'viem'
4
4
  import {
5
- type SignTypedDataError,
5
+ type SignTypedDataErrorType,
6
6
  type SignTypedDataParameters,
7
7
  type SignTypedDataReturnType,
8
8
  signTypedData,
9
9
  } from '../actions/signTypedData.js'
10
10
  import { type Config } from '../createConfig.js'
11
- import type { Evaluate } from '../types/utils.js'
11
+ import { type Evaluate } from '../types/utils.js'
12
12
 
13
13
  export function signTypedDataMutationOptions<config extends Config>(
14
14
  config: config,
@@ -20,7 +20,7 @@ export function signTypedDataMutationOptions<config extends Config>(
20
20
  mutationKey: ['signTypedData'],
21
21
  } as const satisfies MutationOptions<
22
22
  SignTypedDataData,
23
- SignTypedDataError,
23
+ SignTypedDataErrorType,
24
24
  SignTypedDataVariables
25
25
  >
26
26
  }
@@ -30,7 +30,9 @@ export type SignTypedDataData = Evaluate<SignTypedDataReturnType>
30
30
  export type SignTypedDataVariables<
31
31
  typedData extends TypedData | Record<string, unknown> = TypedData,
32
32
  primaryType extends keyof typedData | 'EIP712Domain' = keyof typedData,
33
- > = SignTypedDataParameters<typedData, primaryType>
33
+ ///
34
+ primaryTypes = typedData extends TypedData ? keyof typedData : string,
35
+ > = SignTypedDataParameters<typedData, primaryType, primaryTypes>
34
36
 
35
37
  export type SignTypedDataMutate<context = unknown> = <
36
38
  const typedData extends TypedData | Record<string, unknown>,
@@ -40,8 +42,13 @@ export type SignTypedDataMutate<context = unknown> = <
40
42
  options?:
41
43
  | MutateOptions<
42
44
  SignTypedDataData,
43
- SignTypedDataError,
44
- SignTypedDataVariables<typedData, primaryType>,
45
+ SignTypedDataErrorType,
46
+ SignTypedDataVariables<
47
+ typedData,
48
+ primaryType,
49
+ // use `primaryType` to make sure it's not union of all possible primary types
50
+ primaryType
51
+ >,
45
52
  context
46
53
  >
47
54
  | undefined,
@@ -55,8 +62,13 @@ export type SignTypedDataMutateAsync<context = unknown> = <
55
62
  options?:
56
63
  | MutateOptions<
57
64
  SignTypedDataData,
58
- SignTypedDataError,
59
- SignTypedDataVariables<typedData, primaryType>,
65
+ SignTypedDataErrorType,
66
+ SignTypedDataVariables<
67
+ typedData,
68
+ primaryType,
69
+ // use `primaryType` to make sure it's not union of all possible primary types
70
+ primaryType
71
+ >,
60
72
  context
61
73
  >
62
74
  | undefined,
@@ -2,14 +2,14 @@ import { type QueryOptions } from '@tanstack/query-core'
2
2
  import type { Abi, ContractFunctionArgs, ContractFunctionName } from 'viem'
3
3
 
4
4
  import {
5
- type SimulateContractError,
5
+ type SimulateContractErrorType,
6
6
  type SimulateContractParameters,
7
7
  type SimulateContractReturnType,
8
8
  simulateContract,
9
9
  } from '../actions/simulateContract.js'
10
- import type { Config } from '../createConfig.js'
10
+ import { type Config } from '../createConfig.js'
11
+ import type { ScopeKeyParameter } from '../types/properties.js'
11
12
  import type { UnionPartial } from '../types/utils.js'
12
- import type { ScopeKeyParameter } from './types.js'
13
13
  import { filterQueryOptions } from './utils.js'
14
14
 
15
15
  export type SimulateContractOptions<
@@ -28,6 +28,7 @@ export type SimulateContractOptions<
28
28
  ScopeKeyParameter
29
29
 
30
30
  export function simulateContractQueryOptions<
31
+ config extends Config,
31
32
  const abi extends Abi | readonly unknown[],
32
33
  functionName extends ContractFunctionName<abi, 'nonpayable' | 'payable'>,
33
34
  args extends ContractFunctionArgs<
@@ -35,7 +36,6 @@ export function simulateContractQueryOptions<
35
36
  'nonpayable' | 'payable',
36
37
  functionName
37
38
  >,
38
- config extends Config,
39
39
  chainId extends config['chains'][number]['id'] | undefined,
40
40
  >(
41
41
  config: config,
@@ -55,12 +55,16 @@ export function simulateContractQueryOptions<
55
55
  const { address, functionName } = parameters
56
56
  if (!address) throw new Error('address is required')
57
57
  if (!functionName) throw new Error('functionName is required')
58
- return simulateContract(config, { abi, connector, ...parameters } as any)
58
+ return simulateContract(config, {
59
+ abi,
60
+ connector,
61
+ ...(parameters as any),
62
+ })
59
63
  },
60
64
  queryKey: simulateContractQueryKey(options),
61
65
  } as const satisfies QueryOptions<
62
66
  SimulateContractQueryFnData<abi, functionName, args, config, chainId>,
63
- SimulateContractError,
67
+ SimulateContractErrorType,
64
68
  SimulateContractData<abi, functionName, args, config, chainId>,
65
69
  SimulateContractQueryKey<abi, functionName, args, config, chainId>
66
70
  >
@@ -91,6 +95,7 @@ export type SimulateContractData<
91
95
  > = SimulateContractQueryFnData<abi, functionName, args, config, chainId>
92
96
 
93
97
  export function simulateContractQueryKey<
98
+ config extends Config,
94
99
  abi extends Abi | readonly unknown[],
95
100
  functionName extends ContractFunctionName<abi, 'nonpayable' | 'payable'>,
96
101
  args extends ContractFunctionArgs<
@@ -98,7 +103,6 @@ export function simulateContractQueryKey<
98
103
  'nonpayable' | 'payable',
99
104
  functionName
100
105
  >,
101
- config extends Config,
102
106
  chainId extends config['chains'][number]['id'] | undefined,
103
107
  >(
104
108
  options: SimulateContractOptions<
@@ -124,5 +128,5 @@ export type SimulateContractQueryKey<
124
128
  config extends Config,
125
129
  chainId extends config['chains'][number]['id'] | undefined,
126
130
  > = ReturnType<
127
- typeof simulateContractQueryKey<abi, functionName, args, config, chainId>
131
+ typeof simulateContractQueryKey<config, abi, functionName, args, chainId>
128
132
  >
@@ -1,14 +1,14 @@
1
- import type { MutationOptions } from '@tanstack/query-core'
1
+ import { type MutationOptions } from '@tanstack/query-core'
2
2
 
3
3
  import {
4
- type SwitchAccountError,
4
+ type SwitchAccountErrorType,
5
5
  type SwitchAccountParameters,
6
6
  type SwitchAccountReturnType,
7
7
  switchAccount,
8
8
  } from '../actions/switchAccount.js'
9
9
  import { type Config } from '../createConfig.js'
10
- import type { Evaluate } from '../types/utils.js'
11
- import type { Mutate, MutateAsync } from './types.js'
10
+ import { type Evaluate } from '../types/utils.js'
11
+ import { type Mutate, type MutateAsync } from './types.js'
12
12
 
13
13
  export function switchAccountMutationOptions<config extends Config>(
14
14
  config: config,
@@ -20,7 +20,7 @@ export function switchAccountMutationOptions<config extends Config>(
20
20
  mutationKey: ['switchAccount'],
21
21
  } as const satisfies MutationOptions<
22
22
  SwitchAccountData<config>,
23
- SwitchAccountError,
23
+ SwitchAccountErrorType,
24
24
  SwitchAccountVariables
25
25
  >
26
26
  }
@@ -36,7 +36,7 @@ export type SwitchAccountMutate<
36
36
  context = unknown,
37
37
  > = Mutate<
38
38
  SwitchAccountData<config>,
39
- SwitchAccountError,
39
+ SwitchAccountErrorType,
40
40
  SwitchAccountVariables,
41
41
  context
42
42
  >
@@ -46,7 +46,7 @@ export type SwitchAccountMutateAsync<
46
46
  context = unknown,
47
47
  > = MutateAsync<
48
48
  SwitchAccountData<config>,
49
- SwitchAccountError,
49
+ SwitchAccountErrorType,
50
50
  SwitchAccountVariables,
51
51
  context
52
52
  >
@@ -1,13 +1,13 @@
1
- import type { MutateOptions, MutationOptions } from '@tanstack/query-core'
1
+ import { type MutateOptions, type MutationOptions } from '@tanstack/query-core'
2
2
 
3
3
  import {
4
- type SwitchChainError,
4
+ type SwitchChainErrorType,
5
5
  type SwitchChainParameters,
6
6
  type SwitchChainReturnType,
7
7
  switchChain,
8
8
  } from '../actions/switchChain.js'
9
9
  import { type Config } from '../createConfig.js'
10
- import type { Evaluate } from '../types/utils.js'
10
+ import { type Evaluate } from '../types/utils.js'
11
11
 
12
12
  export function switchChainMutationOptions<config extends Config>(
13
13
  config: config,
@@ -19,7 +19,7 @@ export function switchChainMutationOptions<config extends Config>(
19
19
  mutationKey: ['switchChain'],
20
20
  } as const satisfies MutationOptions<
21
21
  SwitchChainData<config, config['chains'][number]['id']>,
22
- SwitchChainError,
22
+ SwitchChainErrorType,
23
23
  SwitchChainVariables<config, config['chains'][number]['id']>
24
24
  >
25
25
  }
@@ -42,7 +42,7 @@ export type SwitchChainMutate<config extends Config, context = unknown> = <
42
42
  | Evaluate<
43
43
  MutateOptions<
44
44
  SwitchChainData<config, chainId>,
45
- SwitchChainError,
45
+ SwitchChainErrorType,
46
46
  Evaluate<SwitchChainVariables<config, chainId>>,
47
47
  context
48
48
  >
@@ -58,7 +58,7 @@ export type SwitchChainMutateAsync<config extends Config, context = unknown> = <
58
58
  | Evaluate<
59
59
  MutateOptions<
60
60
  SwitchChainData<config, chainId>,
61
- SwitchChainError,
61
+ SwitchChainErrorType,
62
62
  Evaluate<SwitchChainVariables<config, chainId>>,
63
63
  context
64
64
  >
@@ -1,39 +1,49 @@
1
- import type { Evaluate } from '../types/utils.js'
1
+ import {
2
+ type DefaultError,
3
+ type InfiniteQueryObserverOptions,
4
+ type MutateOptions,
5
+ type QueryKey,
6
+ type QueryMeta,
7
+ } from '@tanstack/query-core'
2
8
 
3
- export type ScopeKeyParameter = { scopeKey?: string | undefined }
9
+ import { type Evaluate, type Omit } from '../types/utils.js'
4
10
 
5
- type MutateFn<
6
- data = unknown,
7
- error = unknown,
8
- variables = void,
9
- context = unknown,
10
- > = undefined extends variables
11
- ? (
12
- variables?: variables,
13
- options?:
14
- | Evaluate<
15
- import('@tanstack/query-core').MutateOptions<
16
- data,
17
- error,
18
- variables,
19
- context
20
- >
21
- >
22
- | undefined,
23
- ) => Promise<data>
24
- : (
25
- variables: variables,
26
- options?:
27
- | Evaluate<
28
- import('@tanstack/query-core').MutateOptions<
29
- data,
30
- error,
31
- variables,
32
- context
33
- >
34
- >
35
- | undefined,
36
- ) => Promise<data>
11
+ export type InfiniteQueryOptions<
12
+ queryFnData = unknown,
13
+ error = DefaultError,
14
+ data = queryFnData,
15
+ queryData = queryFnData,
16
+ queryKey extends QueryKey = QueryKey,
17
+ pageParam = unknown,
18
+ ///
19
+ options extends InfiniteQueryObserverOptions<
20
+ queryFnData,
21
+ error,
22
+ data,
23
+ queryData,
24
+ queryKey,
25
+ pageParam
26
+ > = InfiniteQueryObserverOptions<
27
+ queryFnData,
28
+ error,
29
+ data,
30
+ queryData,
31
+ queryKey,
32
+ pageParam
33
+ >,
34
+ > = Evaluate<
35
+ // `queryFn` doesn't pass through `pageParam` correctly
36
+ Omit<options, 'queryFn'> & {
37
+ // TS2742: `QueryFunctionContext` not exported from `@tanstack/query-core`
38
+ queryFn?(context: {
39
+ queryKey: queryKey
40
+ signal: AbortSignal
41
+ pageParam: pageParam
42
+ direction: 'forward' | 'backward'
43
+ meta: QueryMeta | undefined
44
+ }): ReturnType<NonNullable<options['queryFn']>>
45
+ }
46
+ >
37
47
 
38
48
  export type Mutate<
39
49
  data = unknown,
@@ -50,3 +60,22 @@ export type MutateAsync<
50
60
  variables = void,
51
61
  context = unknown,
52
62
  > = MutateFn<data, error, Evaluate<variables>, context>
63
+
64
+ type MutateFn<
65
+ data = unknown,
66
+ error = unknown,
67
+ variables = void,
68
+ context = unknown,
69
+ > = undefined extends variables
70
+ ? (
71
+ variables?: variables,
72
+ options?:
73
+ | Evaluate<MutateOptions<data, error, variables, context>>
74
+ | undefined,
75
+ ) => Promise<data>
76
+ : (
77
+ variables: variables,
78
+ options?:
79
+ | Evaluate<MutateOptions<data, error, variables, context>>
80
+ | undefined,
81
+ ) => Promise<data>
@@ -1,4 +1,4 @@
1
- import type { QueryKey } from '@tanstack/query-core'
1
+ import { type QueryKey } from '@tanstack/query-core'
2
2
 
3
3
  export function hashFn(queryKey: QueryKey): string {
4
4
  return JSON.stringify(queryKey, (_, value) => {
@@ -45,6 +45,21 @@ export function filterQueryOptions<type extends Record<string, unknown>>(
45
45
  // destructuring is super fast
46
46
  // biome-ignore format: no formatting
47
47
  const {
48
+ // import('@tanstack/query-core').QueryOptions
49
+ // biome-ignore lint/correctness/noUnusedVariables: remove properties
50
+ _defaulted, behavior, gcTime, initialData, initialDataUpdatedAt, maxPages, meta, networkMode, queryFn, queryHash, queryKey, queryKeyHashFn, retry, retryDelay, structuralSharing,
51
+
52
+ // import('@tanstack/query-core').InfiniteQueryObserverOptions
53
+ // biome-ignore lint/correctness/noUnusedVariables: remove properties
54
+ getPreviousPageParam, getNextPageParam, initialPageParam,
55
+
56
+ // import('@tanstack/react-query').UseQueryOptions
57
+ // biome-ignore lint/correctness/noUnusedVariables: remove properties
58
+ _optimisticResults, enabled, notifyOnChangeProps, placeholderData, refetchInterval, refetchIntervalInBackground, refetchOnMount, refetchOnReconnect, refetchOnWindowFocus, retryOnMount, select, staleTime, suspense, throwOnError,
59
+
60
+ ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
61
+ // wagmi
62
+ ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
48
63
  // biome-ignore lint/correctness/noUnusedVariables: remove properties
49
64
  config, connector, query,
50
65
  ...rest
@@ -0,0 +1,54 @@
1
+ import { type QueryOptions } from '@tanstack/query-core'
2
+
3
+ import {
4
+ type VerifyMessageErrorType,
5
+ type VerifyMessageParameters,
6
+ type VerifyMessageReturnType,
7
+ verifyMessage,
8
+ } from '../actions/verifyMessage.js'
9
+ import { type Config } from '../createConfig.js'
10
+ import type { ScopeKeyParameter } from '../types/properties.js'
11
+ import type { Evaluate, ExactPartial } from '../types/utils.js'
12
+ import { filterQueryOptions } from './utils.js'
13
+
14
+ export type VerifyMessageOptions<config extends Config> = Evaluate<
15
+ ExactPartial<VerifyMessageParameters<config>> & ScopeKeyParameter
16
+ >
17
+
18
+ export function verifyMessageQueryOptions<config extends Config>(
19
+ config: config,
20
+ options: VerifyMessageOptions<config> = {},
21
+ ) {
22
+ return {
23
+ async queryFn({ queryKey }) {
24
+ const { address, message, signature } = queryKey[1]
25
+ if (!address || !message || !signature)
26
+ throw new Error('address, message, and signature are required')
27
+
28
+ const { scopeKey: _, ...parameters } = queryKey[1]
29
+
30
+ const verified = await verifyMessage(
31
+ config,
32
+ parameters as VerifyMessageParameters,
33
+ )
34
+ return verified ?? null
35
+ },
36
+ queryKey: verifyMessageQueryKey(options),
37
+ } as const satisfies QueryOptions<
38
+ VerifyMessageQueryFnData,
39
+ VerifyMessageErrorType,
40
+ VerifyMessageData,
41
+ VerifyMessageQueryKey
42
+ >
43
+ }
44
+ export type VerifyMessageQueryFnData = VerifyMessageReturnType
45
+
46
+ export type VerifyMessageData = VerifyMessageQueryFnData
47
+
48
+ export function verifyMessageQueryKey<config extends Config>(
49
+ options: VerifyMessageOptions<config>,
50
+ ) {
51
+ return ['verifyMessage', filterQueryOptions(options)] as const
52
+ }
53
+
54
+ export type VerifyMessageQueryKey = ReturnType<typeof verifyMessageQueryKey>
@@ -0,0 +1,81 @@
1
+ import { type QueryOptions } from '@tanstack/query-core'
2
+ import { type TypedData } from 'viem'
3
+
4
+ import {
5
+ type VerifyTypedDataErrorType,
6
+ type VerifyTypedDataParameters,
7
+ type VerifyTypedDataReturnType,
8
+ verifyTypedData,
9
+ } from '../actions/verifyTypedData.js'
10
+ import { type Config } from '../createConfig.js'
11
+ import { type ScopeKeyParameter } from '../types/properties.js'
12
+ import { type ExactPartial } from '../types/utils.js'
13
+ import { filterQueryOptions } from './utils.js'
14
+
15
+ export type VerifyTypedDataOptions<
16
+ typedData extends TypedData | Record<string, unknown>,
17
+ primaryType extends keyof typedData | 'EIP712Domain',
18
+ config extends Config,
19
+ > = ExactPartial<VerifyTypedDataParameters<typedData, primaryType, config>> &
20
+ ScopeKeyParameter
21
+
22
+ export function verifyTypedDataQueryOptions<
23
+ config extends Config,
24
+ const typedData extends TypedData | Record<string, unknown>,
25
+ primaryType extends keyof typedData | 'EIP712Domain',
26
+ >(
27
+ config: config,
28
+ options: VerifyTypedDataOptions<typedData, primaryType, config> = {} as any,
29
+ ) {
30
+ return {
31
+ async queryFn({ queryKey }) {
32
+ const {
33
+ address,
34
+ message,
35
+ primaryType,
36
+ signature,
37
+ types,
38
+ scopeKey: _,
39
+ ...parameters
40
+ } = queryKey[1]
41
+ if (!address) throw new Error('address is required')
42
+ if (!message) throw new Error('message is required')
43
+ if (!primaryType) throw new Error('primaryType is required')
44
+ if (!signature) throw new Error('signature is required')
45
+ if (!types) throw new Error('types is required')
46
+
47
+ const verified = await verifyTypedData(config, {
48
+ address,
49
+ message,
50
+ primaryType,
51
+ signature,
52
+ types,
53
+ ...parameters,
54
+ })
55
+ return verified ?? null
56
+ },
57
+ queryKey: verifyTypedDataQueryKey(options),
58
+ } as const satisfies QueryOptions<
59
+ VerifyTypedDataQueryFnData,
60
+ VerifyTypedDataErrorType,
61
+ VerifyTypedDataData,
62
+ VerifyTypedDataQueryKey<typedData, primaryType, config>
63
+ >
64
+ }
65
+ export type VerifyTypedDataQueryFnData = VerifyTypedDataReturnType
66
+
67
+ export type VerifyTypedDataData = VerifyTypedDataQueryFnData
68
+
69
+ export function verifyTypedDataQueryKey<
70
+ config extends Config,
71
+ const typedData extends TypedData | Record<string, unknown>,
72
+ primaryType extends keyof typedData | 'EIP712Domain',
73
+ >(options: VerifyTypedDataOptions<typedData, primaryType, config>) {
74
+ return ['verifyTypedData', filterQueryOptions(options)] as const
75
+ }
76
+
77
+ export type VerifyTypedDataQueryKey<
78
+ typedData extends TypedData | Record<string, unknown>,
79
+ primaryType extends keyof typedData | 'EIP712Domain',
80
+ config extends Config,
81
+ > = ReturnType<typeof verifyTypedDataQueryKey<config, typedData, primaryType>>
@@ -1,14 +1,14 @@
1
1
  import { type QueryOptions } from '@tanstack/query-core'
2
2
 
3
3
  import {
4
- type WaitForTransactionReceiptError,
4
+ type WaitForTransactionReceiptErrorType,
5
5
  type WaitForTransactionReceiptParameters,
6
6
  type WaitForTransactionReceiptReturnType,
7
7
  waitForTransactionReceipt,
8
8
  } from '../actions/waitForTransactionReceipt.js'
9
- import type { Config } from '../createConfig.js'
10
- import type { Evaluate, ExactPartial } from '../types/utils.js'
11
- import type { ScopeKeyParameter } from './types.js'
9
+ import { type Config } from '../createConfig.js'
10
+ import { type ScopeKeyParameter } from '../types/properties.js'
11
+ import { type Evaluate, type ExactPartial } from '../types/utils.js'
12
12
  import { filterQueryOptions } from './utils.js'
13
13
 
14
14
  export type WaitForTransactionReceiptOptions<
@@ -23,7 +23,7 @@ export function waitForTransactionReceiptQueryOptions<
23
23
  config extends Config,
24
24
  chainId extends config['chains'][number]['id'],
25
25
  >(
26
- config: Config,
26
+ config: config,
27
27
  options: WaitForTransactionReceiptOptions<config, chainId> = {},
28
28
  ) {
29
29
  return {
@@ -41,7 +41,7 @@ export function waitForTransactionReceiptQueryOptions<
41
41
  queryKey: waitForTransactionReceiptQueryKey(options),
42
42
  } as const satisfies QueryOptions<
43
43
  WaitForTransactionReceiptQueryFnData<config, chainId>,
44
- WaitForTransactionReceiptError,
44
+ WaitForTransactionReceiptErrorType,
45
45
  WaitForTransactionReceiptData<config, chainId>,
46
46
  WaitForTransactionReceiptQueryKey<config, chainId>
47
47
  >
@@ -1,14 +1,18 @@
1
- import type { MutateOptions, MutationOptions } from '@tanstack/query-core'
2
- import type { Abi, ContractFunctionArgs, ContractFunctionName } from 'viem'
1
+ import { type MutateOptions, type MutationOptions } from '@tanstack/query-core'
2
+ import {
3
+ type Abi,
4
+ type ContractFunctionArgs,
5
+ type ContractFunctionName,
6
+ } from 'viem'
3
7
 
4
8
  import {
5
- type WriteContractError,
9
+ type WriteContractErrorType,
6
10
  type WriteContractParameters,
7
11
  type WriteContractReturnType,
8
12
  writeContract,
9
13
  } from '../actions/writeContract.js'
10
14
  import { type Config } from '../createConfig.js'
11
- import type { Evaluate } from '../types/utils.js'
15
+ import { type Evaluate } from '../types/utils.js'
12
16
 
13
17
  export function writeContractMutationOptions<config extends Config>(
14
18
  config: config,
@@ -20,7 +24,7 @@ export function writeContractMutationOptions<config extends Config>(
20
24
  mutationKey: ['writeContract'],
21
25
  } as const satisfies MutationOptions<
22
26
  WriteContractData,
23
- WriteContractError,
27
+ WriteContractErrorType,
24
28
  WriteContractVariables<
25
29
  Abi,
26
30
  string,
@@ -43,7 +47,16 @@ export type WriteContractVariables<
43
47
  >,
44
48
  config extends Config,
45
49
  chainId extends config['chains'][number]['id'],
46
- > = WriteContractParameters<abi, functionName, args, config, chainId>
50
+ ///
51
+ allFunctionNames = ContractFunctionName<abi, 'nonpayable' | 'payable'>,
52
+ > = WriteContractParameters<
53
+ abi,
54
+ functionName,
55
+ args,
56
+ config,
57
+ chainId,
58
+ allFunctionNames
59
+ >
47
60
 
48
61
  export type WriteContractMutate<config extends Config, context = unknown> = <
49
62
  const abi extends Abi | readonly unknown[],
@@ -59,8 +72,16 @@ export type WriteContractMutate<config extends Config, context = unknown> = <
59
72
  options?:
60
73
  | MutateOptions<
61
74
  WriteContractData,
62
- WriteContractError,
63
- WriteContractVariables<abi, functionName, args, config, chainId>,
75
+ WriteContractErrorType,
76
+ WriteContractVariables<
77
+ abi,
78
+ functionName,
79
+ args,
80
+ config,
81
+ chainId,
82
+ // use `functionName` to make sure it's not union of all possible function names
83
+ functionName
84
+ >,
64
85
  context
65
86
  >
66
87
  | undefined,
@@ -83,8 +104,16 @@ export type WriteContractMutateAsync<
83
104
  options?:
84
105
  | MutateOptions<
85
106
  WriteContractData,
86
- WriteContractError,
87
- WriteContractVariables<abi, functionName, args, config, chainId>,
107
+ WriteContractErrorType,
108
+ WriteContractVariables<
109
+ abi,
110
+ functionName,
111
+ args,
112
+ config,
113
+ chainId,
114
+ // use `functionName` to make sure it's not union of all possible function names
115
+ functionName
116
+ >,
88
117
  context
89
118
  >
90
119
  | undefined,