viem 1.4.1 → 1.5.0

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 (246) hide show
  1. package/README.md +6 -0
  2. package/dist/cjs/accounts/index.js +1 -1
  3. package/dist/cjs/accounts/index.js.map +1 -1
  4. package/dist/cjs/accounts/utils/signMessage.js +1 -1
  5. package/dist/cjs/accounts/utils/signMessage.js.map +1 -1
  6. package/dist/cjs/accounts/utils/signTypedData.js +1 -1
  7. package/dist/cjs/accounts/utils/signTypedData.js.map +1 -1
  8. package/dist/cjs/actions/index.js.map +1 -1
  9. package/dist/cjs/actions/public/createContractEventFilter.js.map +1 -1
  10. package/dist/cjs/actions/public/createEventFilter.js +16 -8
  11. package/dist/cjs/actions/public/createEventFilter.js.map +1 -1
  12. package/dist/cjs/actions/public/getBlock.js +3 -1
  13. package/dist/cjs/actions/public/getBlock.js.map +1 -1
  14. package/dist/cjs/actions/public/getBlockNumber.js +2 -2
  15. package/dist/cjs/actions/public/getBlockNumber.js.map +1 -1
  16. package/dist/cjs/actions/public/getFilterChanges.js.map +1 -1
  17. package/dist/cjs/actions/public/getFilterLogs.js +1 -1
  18. package/dist/cjs/actions/public/getFilterLogs.js.map +1 -1
  19. package/dist/cjs/actions/public/getLogs.js +16 -10
  20. package/dist/cjs/actions/public/getLogs.js.map +1 -1
  21. package/dist/cjs/actions/public/getTransaction.js +2 -1
  22. package/dist/cjs/actions/public/getTransaction.js.map +1 -1
  23. package/dist/cjs/actions/public/watchBlockNumber.js +1 -1
  24. package/dist/cjs/actions/public/watchBlockNumber.js.map +1 -1
  25. package/dist/cjs/actions/public/watchBlocks.js +2 -1
  26. package/dist/cjs/actions/public/watchBlocks.js.map +1 -1
  27. package/dist/cjs/actions/public/watchContractEvent.js.map +1 -1
  28. package/dist/cjs/actions/public/watchEvent.js +4 -2
  29. package/dist/cjs/actions/public/watchEvent.js.map +1 -1
  30. package/dist/cjs/clients/createClient.js +2 -1
  31. package/dist/cjs/clients/createClient.js.map +1 -1
  32. package/dist/cjs/clients/createPublicClient.js.map +1 -1
  33. package/dist/cjs/clients/createTestClient.js.map +1 -1
  34. package/dist/cjs/clients/createWalletClient.js.map +1 -1
  35. package/dist/cjs/clients/decorators/public.js.map +1 -1
  36. package/dist/cjs/constants/number.js +101 -0
  37. package/dist/cjs/constants/number.js.map +1 -0
  38. package/dist/cjs/contract.js.map +1 -1
  39. package/dist/cjs/errors/abi.js +8 -1
  40. package/dist/cjs/errors/abi.js.map +1 -1
  41. package/dist/cjs/errors/contract.js +56 -32
  42. package/dist/cjs/errors/contract.js.map +1 -1
  43. package/dist/cjs/errors/version.js +1 -1
  44. package/dist/cjs/index.js +110 -7
  45. package/dist/cjs/index.js.map +1 -1
  46. package/dist/cjs/public.js.map +1 -1
  47. package/dist/cjs/utils/formatters/block.js.map +1 -1
  48. package/dist/cjs/utils/formatters/formatter.js +1 -0
  49. package/dist/cjs/utils/formatters/formatter.js.map +1 -1
  50. package/dist/cjs/utils/formatters/transaction.js.map +1 -1
  51. package/dist/cjs/utils/promise/withCache.js +3 -3
  52. package/dist/cjs/utils/promise/withCache.js.map +1 -1
  53. package/dist/cjs/utils/signature/hexToSignature.js +12 -0
  54. package/dist/cjs/utils/signature/hexToSignature.js.map +1 -0
  55. package/dist/cjs/utils/signature/signatureToHex.js.map +1 -0
  56. package/dist/esm/accounts/index.js +1 -1
  57. package/dist/esm/accounts/index.js.map +1 -1
  58. package/dist/esm/accounts/utils/signMessage.js +1 -1
  59. package/dist/esm/accounts/utils/signMessage.js.map +1 -1
  60. package/dist/esm/accounts/utils/signTypedData.js +1 -1
  61. package/dist/esm/accounts/utils/signTypedData.js.map +1 -1
  62. package/dist/esm/actions/index.js.map +1 -1
  63. package/dist/esm/actions/public/createContractEventFilter.js.map +1 -1
  64. package/dist/esm/actions/public/createEventFilter.js +16 -8
  65. package/dist/esm/actions/public/createEventFilter.js.map +1 -1
  66. package/dist/esm/actions/public/getBlock.js +3 -1
  67. package/dist/esm/actions/public/getBlock.js.map +1 -1
  68. package/dist/esm/actions/public/getBlockNumber.js +2 -2
  69. package/dist/esm/actions/public/getBlockNumber.js.map +1 -1
  70. package/dist/esm/actions/public/getFilterChanges.js.map +1 -1
  71. package/dist/esm/actions/public/getFilterLogs.js +1 -1
  72. package/dist/esm/actions/public/getFilterLogs.js.map +1 -1
  73. package/dist/esm/actions/public/getLogs.js +16 -10
  74. package/dist/esm/actions/public/getLogs.js.map +1 -1
  75. package/dist/esm/actions/public/getTransaction.js +2 -1
  76. package/dist/esm/actions/public/getTransaction.js.map +1 -1
  77. package/dist/esm/actions/public/watchBlockNumber.js +1 -1
  78. package/dist/esm/actions/public/watchBlockNumber.js.map +1 -1
  79. package/dist/esm/actions/public/watchBlocks.js +2 -1
  80. package/dist/esm/actions/public/watchBlocks.js.map +1 -1
  81. package/dist/esm/actions/public/watchContractEvent.js.map +1 -1
  82. package/dist/esm/actions/public/watchEvent.js +4 -2
  83. package/dist/esm/actions/public/watchEvent.js.map +1 -1
  84. package/dist/esm/clients/createClient.js +2 -1
  85. package/dist/esm/clients/createClient.js.map +1 -1
  86. package/dist/esm/clients/createPublicClient.js.map +1 -1
  87. package/dist/esm/clients/createTestClient.js.map +1 -1
  88. package/dist/esm/clients/createWalletClient.js.map +1 -1
  89. package/dist/esm/clients/decorators/public.js.map +1 -1
  90. package/dist/esm/constants/number.js +97 -0
  91. package/dist/esm/constants/number.js.map +1 -0
  92. package/dist/esm/contract.js.map +1 -1
  93. package/dist/esm/errors/abi.js +8 -1
  94. package/dist/esm/errors/abi.js.map +1 -1
  95. package/dist/esm/errors/contract.js +56 -32
  96. package/dist/esm/errors/contract.js.map +1 -1
  97. package/dist/esm/errors/version.js +1 -1
  98. package/dist/esm/index.js +4 -1
  99. package/dist/esm/index.js.map +1 -1
  100. package/dist/esm/public.js.map +1 -1
  101. package/dist/esm/utils/formatters/block.js.map +1 -1
  102. package/dist/esm/utils/formatters/formatter.js +1 -0
  103. package/dist/esm/utils/formatters/formatter.js.map +1 -1
  104. package/dist/esm/utils/formatters/transaction.js.map +1 -1
  105. package/dist/esm/utils/promise/withCache.js +3 -3
  106. package/dist/esm/utils/promise/withCache.js.map +1 -1
  107. package/dist/esm/utils/signature/hexToSignature.js +18 -0
  108. package/dist/esm/utils/signature/hexToSignature.js.map +1 -0
  109. package/dist/esm/utils/signature/signatureToHex.js +21 -0
  110. package/dist/esm/utils/signature/signatureToHex.js.map +1 -0
  111. package/dist/types/accounts/index.d.ts +1 -1
  112. package/dist/types/accounts/index.d.ts.map +1 -1
  113. package/dist/types/actions/index.d.ts +5 -1
  114. package/dist/types/actions/index.d.ts.map +1 -1
  115. package/dist/types/actions/public/createContractEventFilter.d.ts +5 -5
  116. package/dist/types/actions/public/createContractEventFilter.d.ts.map +1 -1
  117. package/dist/types/actions/public/createEventFilter.d.ts +20 -7
  118. package/dist/types/actions/public/createEventFilter.d.ts.map +1 -1
  119. package/dist/types/actions/public/getBlock.d.ts +5 -5
  120. package/dist/types/actions/public/getBlock.d.ts.map +1 -1
  121. package/dist/types/actions/public/getBlockNumber.d.ts +4 -2
  122. package/dist/types/actions/public/getBlockNumber.d.ts.map +1 -1
  123. package/dist/types/actions/public/getFilterChanges.d.ts +5 -8
  124. package/dist/types/actions/public/getFilterChanges.d.ts.map +1 -1
  125. package/dist/types/actions/public/getFilterLogs.d.ts +5 -4
  126. package/dist/types/actions/public/getFilterLogs.d.ts.map +1 -1
  127. package/dist/types/actions/public/getLogs.d.ts +17 -6
  128. package/dist/types/actions/public/getLogs.d.ts.map +1 -1
  129. package/dist/types/actions/public/getTransaction.d.ts +4 -4
  130. package/dist/types/actions/public/getTransaction.d.ts.map +1 -1
  131. package/dist/types/actions/public/watchBlocks.d.ts +10 -10
  132. package/dist/types/actions/public/watchBlocks.d.ts.map +1 -1
  133. package/dist/types/actions/public/watchContractEvent.d.ts +3 -3
  134. package/dist/types/actions/public/watchContractEvent.d.ts.map +1 -1
  135. package/dist/types/actions/public/watchEvent.d.ts +19 -8
  136. package/dist/types/actions/public/watchEvent.d.ts.map +1 -1
  137. package/dist/types/chains/formatters/celo.d.ts +4 -0
  138. package/dist/types/chains/formatters/celo.d.ts.map +1 -1
  139. package/dist/types/chains/formatters/optimism.d.ts +5 -3
  140. package/dist/types/chains/formatters/optimism.d.ts.map +1 -1
  141. package/dist/types/chains/index.d.ts +44 -12
  142. package/dist/types/chains/index.d.ts.map +1 -1
  143. package/dist/types/clients/createClient.d.ts +7 -0
  144. package/dist/types/clients/createClient.d.ts.map +1 -1
  145. package/dist/types/clients/createPublicClient.d.ts +1 -1
  146. package/dist/types/clients/createPublicClient.d.ts.map +1 -1
  147. package/dist/types/clients/createTestClient.d.ts +1 -1
  148. package/dist/types/clients/createTestClient.d.ts.map +1 -1
  149. package/dist/types/clients/createWalletClient.d.ts +1 -1
  150. package/dist/types/clients/createWalletClient.d.ts.map +1 -1
  151. package/dist/types/clients/decorators/public.d.ts +10 -9
  152. package/dist/types/clients/decorators/public.d.ts.map +1 -1
  153. package/dist/types/constants/number.d.ts +97 -0
  154. package/dist/types/constants/number.d.ts.map +1 -0
  155. package/dist/types/contract.d.ts +5 -1
  156. package/dist/types/contract.d.ts.map +1 -1
  157. package/dist/types/errors/abi.d.ts +1 -0
  158. package/dist/types/errors/abi.d.ts.map +1 -1
  159. package/dist/types/errors/contract.d.ts +1 -0
  160. package/dist/types/errors/contract.d.ts.map +1 -1
  161. package/dist/types/errors/version.d.ts +1 -1
  162. package/dist/types/index.d.ts +10 -3
  163. package/dist/types/index.d.ts.map +1 -1
  164. package/dist/types/public.d.ts +5 -1
  165. package/dist/types/public.d.ts.map +1 -1
  166. package/dist/types/types/block.d.ts +7 -7
  167. package/dist/types/types/block.d.ts.map +1 -1
  168. package/dist/types/types/contract.d.ts +1 -1
  169. package/dist/types/types/contract.d.ts.map +1 -1
  170. package/dist/types/types/filter.d.ts +7 -3
  171. package/dist/types/types/filter.d.ts.map +1 -1
  172. package/dist/types/types/formatter.d.ts +3 -0
  173. package/dist/types/types/formatter.d.ts.map +1 -1
  174. package/dist/types/types/log.d.ts +8 -8
  175. package/dist/types/types/log.d.ts.map +1 -1
  176. package/dist/types/types/misc.d.ts.map +1 -1
  177. package/dist/types/types/rpc.d.ts +3 -3
  178. package/dist/types/types/rpc.d.ts.map +1 -1
  179. package/dist/types/types/transaction.d.ts +8 -8
  180. package/dist/types/types/transaction.d.ts.map +1 -1
  181. package/dist/types/utils/formatters/block.d.ts +13 -3
  182. package/dist/types/utils/formatters/block.d.ts.map +1 -1
  183. package/dist/types/utils/formatters/formatter.d.ts +1 -0
  184. package/dist/types/utils/formatters/formatter.d.ts.map +1 -1
  185. package/dist/types/utils/formatters/transaction.d.ts +10 -3
  186. package/dist/types/utils/formatters/transaction.d.ts.map +1 -1
  187. package/dist/types/utils/formatters/transactionReceipt.d.ts +1 -0
  188. package/dist/types/utils/formatters/transactionReceipt.d.ts.map +1 -1
  189. package/dist/types/utils/formatters/transactionRequest.d.ts +1 -0
  190. package/dist/types/utils/formatters/transactionRequest.d.ts.map +1 -1
  191. package/dist/types/utils/promise/withCache.d.ts +3 -3
  192. package/dist/types/utils/promise/withCache.d.ts.map +1 -1
  193. package/dist/types/utils/signature/hexToSignature.d.ts +13 -0
  194. package/dist/types/utils/signature/hexToSignature.d.ts.map +1 -0
  195. package/dist/types/utils/signature/signatureToHex.d.ts +17 -0
  196. package/dist/types/utils/signature/signatureToHex.d.ts.map +1 -0
  197. package/package.json +1 -1
  198. package/src/accounts/index.ts +1 -1
  199. package/src/accounts/utils/signMessage.ts +1 -1
  200. package/src/accounts/utils/signTypedData.ts +1 -1
  201. package/src/actions/index.ts +6 -2
  202. package/src/actions/public/createContractEventFilter.ts +30 -7
  203. package/src/actions/public/createEventFilter.ts +78 -24
  204. package/src/actions/public/getBlock.ts +18 -8
  205. package/src/actions/public/getBlockNumber.ts +5 -3
  206. package/src/actions/public/getFilterChanges.ts +46 -10
  207. package/src/actions/public/getFilterLogs.ts +26 -10
  208. package/src/actions/public/getLogs.ts +73 -18
  209. package/src/actions/public/getTransaction.ts +15 -8
  210. package/src/actions/public/watchBlockNumber.ts +1 -1
  211. package/src/actions/public/watchBlocks.ts +37 -18
  212. package/src/actions/public/watchContractEvent.ts +9 -9
  213. package/src/actions/public/watchEvent.ts +52 -19
  214. package/src/clients/createClient.ts +9 -0
  215. package/src/clients/createPublicClient.ts +7 -1
  216. package/src/clients/createTestClient.ts +7 -1
  217. package/src/clients/createWalletClient.ts +7 -1
  218. package/src/clients/decorators/public.ts +114 -25
  219. package/src/constants/number.ts +98 -0
  220. package/src/contract.ts +6 -2
  221. package/src/errors/abi.ts +5 -1
  222. package/src/errors/contract.ts +52 -31
  223. package/src/errors/version.ts +1 -1
  224. package/src/index.ts +108 -3
  225. package/src/public.ts +6 -2
  226. package/src/types/block.ts +25 -10
  227. package/src/types/contract.ts +7 -3
  228. package/src/types/filter.ts +32 -26
  229. package/src/types/formatter.ts +9 -0
  230. package/src/types/log.ts +13 -8
  231. package/src/types/misc.ts +3 -0
  232. package/src/types/rpc.ts +20 -6
  233. package/src/types/transaction.ts +22 -11
  234. package/src/utils/formatters/block.ts +31 -4
  235. package/src/utils/formatters/formatter.ts +1 -0
  236. package/src/utils/formatters/transaction.ts +25 -2
  237. package/src/utils/promise/withCache.ts +5 -5
  238. package/src/utils/signature/hexToSignature.ts +20 -0
  239. package/src/utils/signature/signatureToHex.ts +26 -0
  240. package/dist/cjs/accounts/utils/signatureToHex.js.map +0 -1
  241. package/dist/esm/accounts/utils/signatureToHex.js +0 -7
  242. package/dist/esm/accounts/utils/signatureToHex.js.map +0 -1
  243. package/dist/types/accounts/utils/signatureToHex.d.ts +0 -3
  244. package/dist/types/accounts/utils/signatureToHex.d.ts.map +0 -1
  245. package/src/accounts/utils/signatureToHex.ts +0 -12
  246. /package/dist/cjs/{accounts/utils → utils/signature}/signatureToHex.js +0 -0
@@ -1,4 +1,4 @@
1
- import type { Block, BlockIdentifier, BlockNumber, Uncle } from './block.js';
1
+ import type { Block, BlockIdentifier, BlockNumber, BlockTag, Uncle } from './block.js';
2
2
  import type { FeeHistory, FeeValues } from './fee.js';
3
3
  import type { Log } from './log.js';
4
4
  import type { TransactionEIP1559, TransactionEIP2930, TransactionLegacy, TransactionReceipt, TransactionRequestEIP1559, TransactionRequestEIP2930, TransactionRequestLegacy } from './transaction.js';
@@ -7,7 +7,7 @@ export type Index = `0x${string}`;
7
7
  export type Quantity = `0x${string}`;
8
8
  export type Status = '0x0' | '0x1';
9
9
  export type TransactionType = '0x0' | '0x1' | '0x2' | (string & {});
10
- export type RpcBlock = Block<Quantity, RpcTransaction>;
10
+ export type RpcBlock<TBlockTag extends BlockTag = BlockTag, TIncludeTransactions extends boolean = boolean> = Block<Quantity, TIncludeTransactions, TBlockTag, RpcTransaction<TBlockTag extends 'pending' ? true : false>>;
11
11
  export type RpcBlockNumber = BlockNumber<Quantity>;
12
12
  export type RpcBlockIdentifier = BlockIdentifier<Quantity>;
13
13
  export type RpcUncle = Uncle<Quantity>;
@@ -16,5 +16,5 @@ export type RpcFeeValues = FeeValues<Quantity>;
16
16
  export type RpcLog = Log<Quantity, Index>;
17
17
  export type RpcTransactionReceipt = TransactionReceipt<Quantity, Index, Status, TransactionType>;
18
18
  export type RpcTransactionRequest = TransactionRequestLegacy<Quantity, Index, '0x0'> | TransactionRequestEIP2930<Quantity, Index, '0x1'> | TransactionRequestEIP1559<Quantity, Index, '0x2'>;
19
- export type RpcTransaction = UnionOmit<TransactionLegacy<Quantity, Index, '0x0'> | TransactionEIP2930<Quantity, Index, '0x1'> | TransactionEIP1559<Quantity, Index, '0x2'>, 'typeHex'>;
19
+ export type RpcTransaction<TPending extends boolean = boolean> = UnionOmit<TransactionLegacy<Quantity, Index, TPending, '0x0'> | TransactionEIP2930<Quantity, Index, TPending, '0x1'> | TransactionEIP1559<Quantity, Index, TPending, '0x2'>, 'typeHex'>;
20
20
  //# sourceMappingURL=rpc.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"rpc.d.ts","sourceRoot":"","sources":["../../../src/types/rpc.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAC5E,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AACrD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AACnC,OAAO,KAAK,EACV,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,yBAAyB,EACzB,yBAAyB,EACzB,wBAAwB,EACzB,MAAM,kBAAkB,CAAA;AACzB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAE3C,MAAM,MAAM,KAAK,GAAG,KAAK,MAAM,EAAE,CAAA;AACjC,MAAM,MAAM,QAAQ,GAAG,KAAK,MAAM,EAAE,CAAA;AACpC,MAAM,MAAM,MAAM,GAAG,KAAK,GAAG,KAAK,CAAA;AAClC,MAAM,MAAM,eAAe,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAA;AAEnE,MAAM,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAA;AACtD,MAAM,MAAM,cAAc,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAA;AAClD,MAAM,MAAM,kBAAkB,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAA;AAC1D,MAAM,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAA;AACtC,MAAM,MAAM,aAAa,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAA;AAChD,MAAM,MAAM,YAAY,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAA;AAC9C,MAAM,MAAM,MAAM,GAAG,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;AACzC,MAAM,MAAM,qBAAqB,GAAG,kBAAkB,CACpD,QAAQ,EACR,KAAK,EACL,MAAM,EACN,eAAe,CAChB,CAAA;AACD,MAAM,MAAM,qBAAqB,GAC7B,wBAAwB,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,GAChD,yBAAyB,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,GACjD,yBAAyB,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;AACrD,MAAM,MAAM,cAAc,GAAG,SAAS,CAClC,iBAAiB,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,GACzC,kBAAkB,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,GAC1C,kBAAkB,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,EAC5C,SAAS,CACV,CAAA"}
1
+ {"version":3,"file":"rpc.d.ts","sourceRoot":"","sources":["../../../src/types/rpc.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,KAAK,EACL,eAAe,EACf,WAAW,EACX,QAAQ,EACR,KAAK,EACN,MAAM,YAAY,CAAA;AACnB,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AACrD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AACnC,OAAO,KAAK,EACV,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,yBAAyB,EACzB,yBAAyB,EACzB,wBAAwB,EACzB,MAAM,kBAAkB,CAAA;AACzB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAE3C,MAAM,MAAM,KAAK,GAAG,KAAK,MAAM,EAAE,CAAA;AACjC,MAAM,MAAM,QAAQ,GAAG,KAAK,MAAM,EAAE,CAAA;AACpC,MAAM,MAAM,MAAM,GAAG,KAAK,GAAG,KAAK,CAAA;AAClC,MAAM,MAAM,eAAe,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAA;AAEnE,MAAM,MAAM,QAAQ,CAClB,SAAS,SAAS,QAAQ,GAAG,QAAQ,EACrC,oBAAoB,SAAS,OAAO,GAAG,OAAO,IAC5C,KAAK,CACP,QAAQ,EACR,oBAAoB,EACpB,SAAS,EACT,cAAc,CAAC,SAAS,SAAS,SAAS,GAAG,IAAI,GAAG,KAAK,CAAC,CAC3D,CAAA;AACD,MAAM,MAAM,cAAc,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAA;AAClD,MAAM,MAAM,kBAAkB,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAA;AAC1D,MAAM,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAA;AACtC,MAAM,MAAM,aAAa,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAA;AAChD,MAAM,MAAM,YAAY,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAA;AAC9C,MAAM,MAAM,MAAM,GAAG,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;AACzC,MAAM,MAAM,qBAAqB,GAAG,kBAAkB,CACpD,QAAQ,EACR,KAAK,EACL,MAAM,EACN,eAAe,CAChB,CAAA;AACD,MAAM,MAAM,qBAAqB,GAC7B,wBAAwB,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,GAChD,yBAAyB,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,GACjD,yBAAyB,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;AACrD,MAAM,MAAM,cAAc,CAAC,QAAQ,SAAS,OAAO,GAAG,OAAO,IAAI,SAAS,CACtE,iBAAiB,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAC,GACnD,kBAAkB,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAC,GACpD,kBAAkB,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAC,EACtD,SAAS,CACV,CAAA"}
@@ -39,11 +39,11 @@ export type TransactionReceipt<TQuantity = bigint, TIndex = number, TStatus = 's
39
39
  /** Transaction type */
40
40
  type: TType;
41
41
  };
42
- export type TransactionBase<TQuantity = bigint, TIndex = number> = {
42
+ export type TransactionBase<TQuantity = bigint, TIndex = number, TPending extends boolean = boolean> = {
43
43
  /** Hash of block containing this transaction or `null` if pending */
44
- blockHash: Hash | null;
44
+ blockHash: TPending extends true ? null : Hash;
45
45
  /** Number of block containing this transaction or `null` if pending */
46
- blockNumber: TQuantity | null;
46
+ blockNumber: TPending extends true ? null : TQuantity;
47
47
  /** Transaction sender */
48
48
  from: Address;
49
49
  /** Gas provided for transaction execution */
@@ -61,7 +61,7 @@ export type TransactionBase<TQuantity = bigint, TIndex = number> = {
61
61
  /** Transaction recipient or `null` if deploying a contract */
62
62
  to: Address | null;
63
63
  /** Index of this transaction in the block or `null` if pending */
64
- transactionIndex: TIndex | null;
64
+ transactionIndex: TPending extends true ? null : TIndex;
65
65
  /** The type represented as hex. */
66
66
  typeHex: Hex | null;
67
67
  /** ECDSA recovery ID */
@@ -69,22 +69,22 @@ export type TransactionBase<TQuantity = bigint, TIndex = number> = {
69
69
  /** Value in wei sent with this transaction */
70
70
  value: TQuantity;
71
71
  };
72
- export type TransactionLegacy<TQuantity = bigint, TIndex = number, TType = 'legacy'> = TransactionBase<TQuantity, TIndex> & FeeValuesLegacy<TQuantity> & {
72
+ export type TransactionLegacy<TQuantity = bigint, TIndex = number, TPending extends boolean = boolean, TType = 'legacy'> = TransactionBase<TQuantity, TIndex, TPending> & FeeValuesLegacy<TQuantity> & {
73
73
  accessList?: never;
74
74
  chainId?: TIndex;
75
75
  type: TType;
76
76
  };
77
- export type TransactionEIP2930<TQuantity = bigint, TIndex = number, TType = 'eip2930'> = TransactionBase<TQuantity, TIndex> & FeeValuesLegacy<TQuantity> & {
77
+ export type TransactionEIP2930<TQuantity = bigint, TIndex = number, TPending extends boolean = boolean, TType = 'eip2930'> = TransactionBase<TQuantity, TIndex, TPending> & FeeValuesLegacy<TQuantity> & {
78
78
  accessList: AccessList;
79
79
  chainId: TIndex;
80
80
  type: TType;
81
81
  };
82
- export type TransactionEIP1559<TQuantity = bigint, TIndex = number, TType = 'eip1559'> = TransactionBase<TQuantity, TIndex> & FeeValuesEIP1559<TQuantity> & {
82
+ export type TransactionEIP1559<TQuantity = bigint, TIndex = number, TPending extends boolean = boolean, TType = 'eip1559'> = TransactionBase<TQuantity, TIndex, TPending> & FeeValuesEIP1559<TQuantity> & {
83
83
  accessList: AccessList;
84
84
  chainId: TIndex;
85
85
  type: TType;
86
86
  };
87
- export type Transaction<TQuantity = bigint, TIndex = number> = TransactionLegacy<TQuantity, TIndex> | TransactionEIP2930<TQuantity, TIndex> | TransactionEIP1559<TQuantity, TIndex>;
87
+ export type Transaction<TQuantity = bigint, TIndex = number, TPending extends boolean = boolean> = TransactionLegacy<TQuantity, TIndex, TPending> | TransactionEIP2930<TQuantity, TIndex, TPending> | TransactionEIP1559<TQuantity, TIndex, TPending>;
88
88
  export type TransactionRequestBase<TQuantity = bigint, TIndex = number> = {
89
89
  /** Contract code or a hashed method call with encoded args */
90
90
  data?: Hex;
@@ -1 +1 @@
1
- {"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../../src/types/transaction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../../src/types/transaction.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,24 @@
1
- import type { Block } from '../../types/block.js';
1
+ import type { Block, BlockTag } from '../../types/block.js';
2
2
  import type { Chain } from '../../types/chain.js';
3
- import type { ExtractFormatterReturnType } from '../../types/formatter.js';
3
+ import type { ExtractFormatterExclude, ExtractFormatterReturnType } from '../../types/formatter.js';
4
+ import type { Hash } from '../../types/misc.js';
4
5
  import type { RpcBlock } from '../../types/rpc.js';
5
- export type FormattedBlock<TChain extends Chain | undefined = Chain | undefined> = ExtractFormatterReturnType<TChain, 'block', Block>;
6
+ import type { Prettify } from '../../types/utils.js';
7
+ import { type FormattedTransaction } from './transaction.js';
8
+ type BlockPendingDependencies = 'hash' | 'logsBloom' | 'nonce' | 'number';
9
+ export type FormattedBlock<TChain extends Chain | undefined = Chain | undefined, TIncludeTransactions extends boolean = boolean, TBlockTag extends BlockTag = BlockTag, _FormatterReturnType = ExtractFormatterReturnType<TChain, 'block', Block<bigint, TIncludeTransactions>>, _ExcludedPendingDependencies extends string = BlockPendingDependencies & ExtractFormatterExclude<TChain, 'block'>, _Formatted = Omit<_FormatterReturnType, BlockPendingDependencies> & {
10
+ [K in _ExcludedPendingDependencies]: never;
11
+ } & Pick<Block<bigint, TIncludeTransactions, TBlockTag>, BlockPendingDependencies>, _Transactions = TIncludeTransactions extends true ? Prettify<FormattedTransaction<TChain, TBlockTag>>[] : Hash[]> = Omit<_Formatted, 'transactions'> & {
12
+ transactions: _Transactions;
13
+ };
6
14
  export declare function formatBlock(block: Partial<RpcBlock>): Block;
7
15
  export declare const defineBlock: <TOverrideParameters, TOverrideReturnType, TExclude extends (keyof RpcBlock)[] = []>({ exclude, format: overrides, }: {
8
16
  exclude?: TExclude | undefined;
9
17
  format: (_: TOverrideParameters) => TOverrideReturnType;
10
18
  }) => {
19
+ exclude: TExclude | undefined;
11
20
  format: (args: Partial<RpcBlock> & TOverrideParameters) => (import("../../types/utils.js").Assign<Block, TOverrideReturnType> extends infer T ? { [K in keyof T]: import("../../types/utils.js").Assign<Block, TOverrideReturnType>[K]; } : never) & { [K_1 in TExclude[number]]: never; };
12
21
  type: "block";
13
22
  };
23
+ export {};
14
24
  //# sourceMappingURL=block.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"block.d.ts","sourceRoot":"","sources":["../../../../src/utils/formatters/block.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAA;AAC1E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAKlD,MAAM,MAAM,cAAc,CACxB,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,IAClD,0BAA0B,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;AAEtD,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,SAsBnD;AAED,eAAO,MAAM,WAAW;;;;;;CAAsD,CAAA"}
1
+ {"version":3,"file":"block.d.ts","sourceRoot":"","sources":["../../../../src/utils/formatters/block.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC3D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,KAAK,EACV,uBAAuB,EACvB,0BAA0B,EAC3B,MAAM,0BAA0B,CAAA;AACjC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAC/C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAGpD,OAAO,EAAE,KAAK,oBAAoB,EAAqB,MAAM,kBAAkB,CAAA;AAE/E,KAAK,wBAAwB,GAAG,MAAM,GAAG,WAAW,GAAG,OAAO,GAAG,QAAQ,CAAA;AAEzE,MAAM,MAAM,cAAc,CACxB,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACpD,oBAAoB,SAAS,OAAO,GAAG,OAAO,EAC9C,SAAS,SAAS,QAAQ,GAAG,QAAQ,EACrC,oBAAoB,GAAG,0BAA0B,CAC/C,MAAM,EACN,OAAO,EACP,KAAK,CAAC,MAAM,EAAE,oBAAoB,CAAC,CACpC,EACD,4BAA4B,SAAS,MAAM,GAAG,wBAAwB,GACpE,uBAAuB,CAAC,MAAM,EAAE,OAAO,CAAC,EAC1C,UAAU,GAAG,IAAI,CAAC,oBAAoB,EAAE,wBAAwB,CAAC,GAAG;KACjE,CAAC,IAAI,4BAA4B,GAAG,KAAK;CAC3C,GAAG,IAAI,CACJ,KAAK,CAAC,MAAM,EAAE,oBAAoB,EAAE,SAAS,CAAC,EAC9C,wBAAwB,CACzB,EACH,aAAa,GAAG,oBAAoB,SAAS,IAAI,GAC7C,QAAQ,CAAC,oBAAoB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,EAAE,GACnD,IAAI,EAAE,IACR,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,GAAG;IACrC,YAAY,EAAE,aAAa,CAAA;CAC5B,CAAA;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,SAsBnD;AAED,eAAO,MAAM,WAAW;;;;;;;CAAsD,CAAA"}
@@ -3,6 +3,7 @@ export declare function defineFormatter<TType extends string, TParameters, TRetu
3
3
  exclude?: TExclude | undefined;
4
4
  format: (_: TOverrideParameters) => TOverrideReturnType;
5
5
  }) => {
6
+ exclude: TExclude | undefined;
6
7
  format: (args: TParameters & TOverrideParameters) => (Assign<TReturnType, TOverrideReturnType> extends infer T ? { [K in keyof T]: Assign<TReturnType, TOverrideReturnType>[K]; } : never) & { [K_1 in TExclude[number]]: never; };
7
8
  type: TType;
8
9
  };
@@ -1 +1 @@
1
- {"version":3,"file":"formatter.d.ts","sourceRoot":"","sources":["../../../../src/utils/formatters/formatter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAY,MAAM,sBAAsB,CAAA;AAE5D,wBAAgB,eAAe,CAAC,KAAK,SAAS,MAAM,EAAE,WAAW,EAAE,WAAW,EAC5E,IAAI,EAAE,KAAK,EACX,MAAM,EAAE,CAAC,CAAC,EAAE,WAAW,KAAK,WAAW;;;;;;EA+BxC"}
1
+ {"version":3,"file":"formatter.d.ts","sourceRoot":"","sources":["../../../../src/utils/formatters/formatter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAY,MAAM,sBAAsB,CAAA;AAE5D,wBAAgB,eAAe,CAAC,KAAK,SAAS,MAAM,EAAE,WAAW,EAAE,WAAW,EAC5E,IAAI,EAAE,KAAK,EACX,MAAM,EAAE,CAAC,CAAC,EAAE,WAAW,KAAK,WAAW;;;;;;;EAgCxC"}
@@ -1,8 +1,13 @@
1
+ import type { BlockTag } from '../../types/block.js';
1
2
  import type { Chain } from '../../types/chain.js';
2
- import type { ExtractFormatterReturnType } from '../../types/formatter.js';
3
+ import type { ExtractFormatterExclude, ExtractFormatterReturnType } from '../../types/formatter.js';
3
4
  import type { RpcTransaction } from '../../types/rpc.js';
4
5
  import type { Transaction } from '../../types/transaction.js';
5
- export type FormattedTransaction<TChain extends Chain | undefined = Chain | undefined> = ExtractFormatterReturnType<TChain, 'transaction', Transaction>;
6
+ import type { UnionOmit } from '../../types/utils.js';
7
+ type TransactionPendingDependencies = 'blockHash' | 'blockNumber' | 'transactionIndex';
8
+ export type FormattedTransaction<TChain extends Chain | undefined = Chain | undefined, TBlockTag extends BlockTag = BlockTag, _FormatterReturnType = ExtractFormatterReturnType<TChain, 'transaction', Transaction>, _ExcludedPendingDependencies extends string = TransactionPendingDependencies & ExtractFormatterExclude<TChain, 'transaction'>> = UnionOmit<_FormatterReturnType, TransactionPendingDependencies> & {
9
+ [K in _ExcludedPendingDependencies]: never;
10
+ } & Pick<Transaction<bigint, number, TBlockTag extends 'pending' ? true : false>, TransactionPendingDependencies>;
6
11
  export declare const transactionType: {
7
12
  readonly '0x0': "legacy";
8
13
  readonly '0x1': "eip2930";
@@ -13,7 +18,9 @@ export declare const defineTransaction: <TOverrideParameters, TOverrideReturnTyp
13
18
  exclude?: TExclude | undefined;
14
19
  format: (_: TOverrideParameters) => TOverrideReturnType;
15
20
  }) => {
16
- format: (args: Partial<RpcTransaction> & TOverrideParameters) => ((import("../../types/utils.js").Assign_<import("../../types/transaction.js").TransactionLegacy<bigint, number, "legacy">, TOverrideReturnType> & TOverrideReturnType extends infer T ? { [K in keyof T]: (import("../../types/utils.js").Assign_<import("../../types/transaction.js").TransactionLegacy<bigint, number, "legacy">, TOverrideReturnType> & TOverrideReturnType)[K]; } : never) | (import("../../types/utils.js").Assign_<import("../../types/transaction.js").TransactionEIP2930<bigint, number, "eip2930">, TOverrideReturnType> & TOverrideReturnType extends infer T_1 ? { [K_1 in keyof T_1]: (import("../../types/utils.js").Assign_<import("../../types/transaction.js").TransactionEIP2930<bigint, number, "eip2930">, TOverrideReturnType> & TOverrideReturnType)[K_1]; } : never) | (import("../../types/utils.js").Assign_<import("../../types/transaction.js").TransactionEIP1559<bigint, number, "eip1559">, TOverrideReturnType> & TOverrideReturnType extends infer T_2 ? { [K_2 in keyof T_2]: (import("../../types/utils.js").Assign_<import("../../types/transaction.js").TransactionEIP1559<bigint, number, "eip1559">, TOverrideReturnType> & TOverrideReturnType)[K_2]; } : never)) & { [K_3 in TExclude[number]]: never; };
21
+ exclude: TExclude | undefined;
22
+ format: (args: Partial<RpcTransaction> & TOverrideParameters) => ((import("../../types/utils.js").Assign_<import("../../types/transaction.js").TransactionLegacy<bigint, number, boolean, "legacy">, TOverrideReturnType> & TOverrideReturnType extends infer T ? { [K in keyof T]: (import("../../types/utils.js").Assign_<import("../../types/transaction.js").TransactionLegacy<bigint, number, boolean, "legacy">, TOverrideReturnType> & TOverrideReturnType)[K]; } : never) | (import("../../types/utils.js").Assign_<import("../../types/transaction.js").TransactionEIP2930<bigint, number, boolean, "eip2930">, TOverrideReturnType> & TOverrideReturnType extends infer T_1 ? { [K_1 in keyof T_1]: (import("../../types/utils.js").Assign_<import("../../types/transaction.js").TransactionEIP2930<bigint, number, boolean, "eip2930">, TOverrideReturnType> & TOverrideReturnType)[K_1]; } : never) | (import("../../types/utils.js").Assign_<import("../../types/transaction.js").TransactionEIP1559<bigint, number, boolean, "eip1559">, TOverrideReturnType> & TOverrideReturnType extends infer T_2 ? { [K_2 in keyof T_2]: (import("../../types/utils.js").Assign_<import("../../types/transaction.js").TransactionEIP1559<bigint, number, boolean, "eip1559">, TOverrideReturnType> & TOverrideReturnType)[K_2]; } : never)) & { [K_3 in TExclude[number]]: never; };
17
23
  type: "transaction";
18
24
  };
25
+ export {};
19
26
  //# sourceMappingURL=transaction.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../../../src/utils/formatters/transaction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAA;AAC1E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AAI7D,MAAM,MAAM,oBAAoB,CAC9B,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,IAClD,0BAA0B,CAAC,MAAM,EAAE,aAAa,EAAE,WAAW,CAAC,CAAA;AAElE,eAAO,MAAM,eAAe;;;;CAIlB,CAAA;AAEV,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,OAAO,CAAC,cAAc,CAAC,eAqCrE;AAED,eAAO,MAAM,iBAAiB;;;;;;CAG7B,CAAA"}
1
+ {"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../../../src/utils/formatters/transaction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AACpD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,KAAK,EACV,uBAAuB,EACvB,0BAA0B,EAC3B,MAAM,0BAA0B,CAAA;AACjC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AAC7D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAIrD,KAAK,8BAA8B,GAC/B,WAAW,GACX,aAAa,GACb,kBAAkB,CAAA;AAEtB,MAAM,MAAM,oBAAoB,CAC9B,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACpD,SAAS,SAAS,QAAQ,GAAG,QAAQ,EACrC,oBAAoB,GAAG,0BAA0B,CAC/C,MAAM,EACN,aAAa,EACb,WAAW,CACZ,EACD,4BAA4B,SAAS,MAAM,GAAG,8BAA8B,GAC1E,uBAAuB,CAAC,MAAM,EAAE,aAAa,CAAC,IAC9C,SAAS,CAAC,oBAAoB,EAAE,8BAA8B,CAAC,GAAG;KACnE,CAAC,IAAI,4BAA4B,GAAG,KAAK;CAC3C,GAAG,IAAI,CACJ,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,SAAS,SAAS,GAAG,IAAI,GAAG,KAAK,CAAC,EACvE,8BAA8B,CAC/B,CAAA;AAEH,eAAO,MAAM,eAAe;;;;CAIlB,CAAA;AAEV,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,OAAO,CAAC,cAAc,CAAC,eAqCrE;AAED,eAAO,MAAM,iBAAiB;;;;;;;CAG7B,CAAA"}
@@ -8,6 +8,7 @@ export declare const defineTransactionReceipt: <TOverrideParameters, TOverrideRe
8
8
  exclude?: TExclude | undefined;
9
9
  format: (_: TOverrideParameters) => TOverrideReturnType;
10
10
  }) => {
11
+ exclude: TExclude | undefined;
11
12
  format: (args: Partial<RpcTransactionReceipt> & TOverrideParameters) => (import("../../types/utils.js").Assign<TransactionReceipt, TOverrideReturnType> extends infer T ? { [K in keyof T]: import("../../types/utils.js").Assign<TransactionReceipt, TOverrideReturnType>[K]; } : never) & { [K_1 in TExclude[number]]: never; };
12
13
  type: "transactionReceipt";
13
14
  };
@@ -1 +1 @@
1
- {"version":3,"file":"transactionReceipt.d.ts","sourceRoot":"","sources":["../../../../src/utils/formatters/transactionReceipt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAA;AAC1E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AAC/D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAA;AAOpE,MAAM,MAAM,2BAA2B,CACrC,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,IAClD,0BAA0B,CAAC,MAAM,EAAE,oBAAoB,EAAE,kBAAkB,CAAC,CAAA;AAOhF,wBAAgB,wBAAwB,CACtC,kBAAkB,EAAE,OAAO,CAAC,qBAAqB,CAAC,sBAmCnD;AAED,eAAO,MAAM,wBAAwB;;;;;;CAGpC,CAAA"}
1
+ {"version":3,"file":"transactionReceipt.d.ts","sourceRoot":"","sources":["../../../../src/utils/formatters/transactionReceipt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAA;AAC1E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AAC/D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAA;AAOpE,MAAM,MAAM,2BAA2B,CACrC,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,IAClD,0BAA0B,CAAC,MAAM,EAAE,oBAAoB,EAAE,kBAAkB,CAAC,CAAA;AAOhF,wBAAgB,wBAAwB,CACtC,kBAAkB,EAAE,OAAO,CAAC,qBAAqB,CAAC,sBAmCnD;AAED,eAAO,MAAM,wBAAwB;;;;;;;CAGpC,CAAA"}
@@ -8,6 +8,7 @@ export declare const defineTransactionRequest: <TOverrideParameters, TOverrideRe
8
8
  exclude?: TExclude | undefined;
9
9
  format: (_: TOverrideParameters) => TOverrideReturnType;
10
10
  }) => {
11
+ exclude: TExclude | undefined;
11
12
  format: (args: Partial<TransactionRequest> & TOverrideParameters) => ((import("../../types/utils.js").Assign_<import("../../types/transaction.js").TransactionRequestLegacy<`0x${string}`, `0x${string}`, "0x0">, TOverrideReturnType> & TOverrideReturnType extends infer T ? { [K in keyof T]: (import("../../types/utils.js").Assign_<import("../../types/transaction.js").TransactionRequestLegacy<`0x${string}`, `0x${string}`, "0x0">, TOverrideReturnType> & TOverrideReturnType)[K]; } : never) | (import("../../types/utils.js").Assign_<import("../../types/transaction.js").TransactionRequestEIP2930<`0x${string}`, `0x${string}`, "0x1">, TOverrideReturnType> & TOverrideReturnType extends infer T_1 ? { [K_1 in keyof T_1]: (import("../../types/utils.js").Assign_<import("../../types/transaction.js").TransactionRequestEIP2930<`0x${string}`, `0x${string}`, "0x1">, TOverrideReturnType> & TOverrideReturnType)[K_1]; } : never) | (import("../../types/utils.js").Assign_<import("../../types/transaction.js").TransactionRequestEIP1559<`0x${string}`, `0x${string}`, "0x2">, TOverrideReturnType> & TOverrideReturnType extends infer T_2 ? { [K_2 in keyof T_2]: (import("../../types/utils.js").Assign_<import("../../types/transaction.js").TransactionRequestEIP1559<`0x${string}`, `0x${string}`, "0x2">, TOverrideReturnType> & TOverrideReturnType)[K_2]; } : never)) & { [K_3 in TExclude[number]]: never; };
12
13
  type: "transactionRequest";
13
14
  };
@@ -1 +1 @@
1
- {"version":3,"file":"transactionRequest.d.ts","sourceRoot":"","sources":["../../../../src/utils/formatters/transactionRequest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAA;AAC1E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AAC/D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAA;AAIpE,MAAM,MAAM,2BAA2B,CACrC,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,IAClD,0BAA0B,CAAC,MAAM,EAAE,oBAAoB,EAAE,kBAAkB,CAAC,CAAA;AAEhF,wBAAgB,wBAAwB,CACtC,kBAAkB,EAAE,OAAO,CAAC,kBAAkB,CAAC,yBA6BhD;AAED,eAAO,MAAM,wBAAwB;;;;;;CAGpC,CAAA"}
1
+ {"version":3,"file":"transactionRequest.d.ts","sourceRoot":"","sources":["../../../../src/utils/formatters/transactionRequest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAA;AAC1E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AAC/D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAA;AAIpE,MAAM,MAAM,2BAA2B,CACrC,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,IAClD,0BAA0B,CAAC,MAAM,EAAE,oBAAoB,EAAE,kBAAkB,CAAC,CAAA;AAEhF,wBAAgB,wBAAwB,CACtC,kBAAkB,EAAE,OAAO,CAAC,kBAAkB,CAAC,yBA6BhD;AAED,eAAO,MAAM,wBAAwB;;;;;;;CAGpC,CAAA"}
@@ -25,12 +25,12 @@ export declare function getCache<TData>(cacheKey: string): {
25
25
  export type WithCacheParameters = {
26
26
  /** The key to cache the data against. */
27
27
  cacheKey: string;
28
- /** The maximum age (in ms) of the cached value. Default: Infinity (no expiry) */
29
- maxAge?: number;
28
+ /** The time that cached data will remain in memory. Default: Infinity (no expiry) */
29
+ cacheTime?: number;
30
30
  };
31
31
  /**
32
32
  * @description Returns the result of a given promise, and caches the result for
33
33
  * subsequent invocations against a provided cache key.
34
34
  */
35
- export declare function withCache<TData>(fn: () => Promise<TData>, { cacheKey, maxAge }: WithCacheParameters): Promise<TData>;
35
+ export declare function withCache<TData>(fn: () => Promise<TData>, { cacheKey, cacheTime }: WithCacheParameters): Promise<TData>;
36
36
  //# sourceMappingURL=withCache.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"withCache.d.ts","sourceRoot":"","sources":["../../../../src/utils/promise/withCache.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,eAA0B,CAAA;AACnD,eAAO,MAAM,aAAa,eAA0B,CAAA;AAEpD,wBAAgB,QAAQ,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM;;;;;;;;;;qBAQP,IAAI;kBAAQ,KAAK;;;qBAAjB,IAAI;kBAAQ,KAAK;;qBAAjB,IAAI;kBAAQ,KAAK;;;EAazD;AAED,MAAM,MAAM,mBAAmB,GAAG;IAChC,yCAAyC;IACzC,QAAQ,EAAE,MAAM,CAAA;IAChB,iFAAiF;IACjF,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB,CAAA;AAED;;;GAGG;AACH,wBAAsB,SAAS,CAAC,KAAK,EACnC,EAAE,EAAE,MAAM,OAAO,CAAC,KAAK,CAAC,EACxB,EAAE,QAAQ,EAAE,MAAiB,EAAE,EAAE,mBAAmB,kBAmCrD"}
1
+ {"version":3,"file":"withCache.d.ts","sourceRoot":"","sources":["../../../../src/utils/promise/withCache.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,eAA0B,CAAA;AACnD,eAAO,MAAM,aAAa,eAA0B,CAAA;AAEpD,wBAAgB,QAAQ,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM;;;;;;;;;;qBAQP,IAAI;kBAAQ,KAAK;;;qBAAjB,IAAI;kBAAQ,KAAK;;qBAAjB,IAAI;kBAAQ,KAAK;;;EAazD;AAED,MAAM,MAAM,mBAAmB,GAAG;IAChC,yCAAyC;IACzC,QAAQ,EAAE,MAAM,CAAA;IAChB,qFAAqF;IACrF,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED;;;GAGG;AACH,wBAAsB,SAAS,CAAC,KAAK,EACnC,EAAE,EAAE,MAAM,OAAO,CAAC,KAAK,CAAC,EACxB,EAAE,QAAQ,EAAE,SAAoB,EAAE,EAAE,mBAAmB,kBAmCxD"}
@@ -0,0 +1,13 @@
1
+ import type { Hex, Signature } from '../../types/misc.js';
2
+ /**
3
+ * @description Parses a hex formatted signature into a structured signature.
4
+ *
5
+ * @param signatureHex Signature in hex format.
6
+ * @returns The structured signature.
7
+ *
8
+ * @example
9
+ * hexToSignature('0x6e100a352ec6ad1b70802290e18aeed190704973570f3b8ed42cb9808e2ea6bf4a90a229a244495b41890987806fcbd2d5d23fc0dbe5f5256c2613c039d76db81c')
10
+ * // { r: '0x...', s: '0x...', v: 28n }
11
+ */
12
+ export declare function hexToSignature(signatureHex: Hex): Signature;
13
+ //# sourceMappingURL=hexToSignature.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hexToSignature.d.ts","sourceRoot":"","sources":["../../../../src/utils/signature/hexToSignature.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAGzD;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAAC,YAAY,EAAE,GAAG,GAAG,SAAS,CAI3D"}
@@ -0,0 +1,17 @@
1
+ import type { Hex, Signature } from '../../types/misc.js';
2
+ /**
3
+ * @description Converts a signature into hex format.
4
+ *
5
+ * @param signature The signature to convert.
6
+ * @returns The signature in hex format.
7
+ *
8
+ * @example
9
+ * signatureToHex({
10
+ * r: '0x6e100a352ec6ad1b70802290e18aeed190704973570f3b8ed42cb9808e2ea6bf',
11
+ * s: '0x4a90a229a244495b41890987806fcbd2d5d23fc0dbe5f5256c2613c039d76db8',
12
+ * v: 28n
13
+ * })
14
+ * // "0x6e100a352ec6ad1b70802290e18aeed190704973570f3b8ed42cb9808e2ea6bf4a90a229a244495b41890987806fcbd2d5d23fc0dbe5f5256c2613c039d76db81c"
15
+ */
16
+ export declare function signatureToHex({ r, s, v }: Signature): Hex;
17
+ //# sourceMappingURL=signatureToHex.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signatureToHex.d.ts","sourceRoot":"","sources":["../../../../src/utils/signature/signatureToHex.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAIzD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,cAAc,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,SAAS,GAAG,GAAG,CAK1D"}
package/package.json CHANGED
@@ -20,7 +20,7 @@
20
20
  "optional": true
21
21
  }
22
22
  },
23
- "version": "1.4.1",
23
+ "version": "1.5.0",
24
24
  "files": [
25
25
  "dist",
26
26
  "!dist/**/*.tsbuildinfo",
@@ -17,7 +17,7 @@ export type {
17
17
  PrivateKeyAccount,
18
18
  } from './types.js'
19
19
  export { type SignParameters, type SignReturnType, sign } from './utils/sign.js'
20
- export { signatureToHex } from './utils/signatureToHex.js'
20
+ export { signatureToHex } from '../utils/signature/signatureToHex.js'
21
21
  export {
22
22
  type SignMessageParameters,
23
23
  type SignMessageReturnType,
@@ -1,8 +1,8 @@
1
1
  import type { Hex, SignableMessage } from '../../types/misc.js'
2
2
  import { hashMessage } from '../../utils/signature/hashMessage.js'
3
+ import { signatureToHex } from '../../utils/signature/signatureToHex.js'
3
4
 
4
5
  import { sign } from './sign.js'
5
- import { signatureToHex } from './signatureToHex.js'
6
6
 
7
7
  export type SignMessageParameters = {
8
8
  /** The message to sign. */
@@ -6,9 +6,9 @@ import {
6
6
  type HashTypedDataParameters,
7
7
  hashTypedData,
8
8
  } from '../../utils/signature/hashTypedData.js'
9
+ import { signatureToHex } from '../../utils/signature/signatureToHex.js'
9
10
 
10
11
  import { sign } from './sign.js'
11
- import { signatureToHex } from './signatureToHex.js'
12
12
 
13
13
  export type SignTypedDataParameters<
14
14
  TTypedData extends TypedData | { [key: string]: unknown } = TypedData,
@@ -160,8 +160,12 @@ export {
160
160
  watchBlockNumber,
161
161
  } from './public/watchBlockNumber.js'
162
162
  export {
163
- type OnLogsFn,
164
- type OnLogsParameter,
163
+ type WatchEventOnLogsFn,
164
+ /** @deprecated - use `WatchEventOnLogsFn` instead. */
165
+ type WatchEventOnLogsFn as OnLogsFn,
166
+ type WatchEventOnLogsParameter,
167
+ /** @deprecated - use `WatchEventOnLogsParameter` instead. */
168
+ type WatchEventOnLogsParameter as OnLogsParameter,
165
169
  type WatchEventParameters,
166
170
  type WatchEventReturnType,
167
171
  watchEvent,
@@ -9,6 +9,7 @@ import type {
9
9
  MaybeExtractEventArgsFromAbi,
10
10
  } from '../../types/contract.js'
11
11
  import type { Filter } from '../../types/filter.js'
12
+ import type { Hex } from '../../types/misc.js'
12
13
  import {
13
14
  type EncodeEventTopicsParameters,
14
15
  encodeEventTopics,
@@ -23,17 +24,19 @@ export type CreateContractEventFilterParameters<
23
24
  | MaybeExtractEventArgsFromAbi<TAbi, TEventName>
24
25
  | undefined = undefined,
25
26
  TStrict extends boolean | undefined = undefined,
27
+ TFromBlock extends BlockNumber | BlockTag | undefined = undefined,
28
+ TToBlock extends BlockNumber | BlockTag | undefined = undefined,
26
29
  > = {
27
30
  address?: Address | Address[]
28
31
  abi: Narrow<TAbi>
29
32
  eventName?: InferEventName<TAbi, TEventName>
30
- fromBlock?: BlockNumber | BlockTag
33
+ fromBlock?: TFromBlock | BlockNumber | BlockTag
31
34
  /**
32
35
  * Whether or not the logs must match the indexed/non-indexed arguments in the event ABI item.
33
36
  * @default false
34
37
  */
35
38
  strict?: TStrict
36
- toBlock?: BlockNumber | BlockTag
39
+ toBlock?: TToBlock | BlockNumber | BlockTag
37
40
  } & (undefined extends TEventName
38
41
  ? {
39
42
  args?: never
@@ -56,7 +59,9 @@ export type CreateContractEventFilterReturnType<
56
59
  | MaybeExtractEventArgsFromAbi<TAbi, TEventName>
57
60
  | undefined = undefined,
58
61
  TStrict extends boolean | undefined = undefined,
59
- > = Filter<'event', TAbi, TEventName, TArgs, TStrict>
62
+ TFromBlock extends BlockNumber | BlockTag | undefined = undefined,
63
+ TToBlock extends BlockNumber | BlockTag | undefined = undefined,
64
+ > = Filter<'event', TAbi, TEventName, TArgs, TStrict, TFromBlock, TToBlock>
60
65
 
61
66
  /**
62
67
  * Creates a Filter to retrieve event logs that can be used with [`getFilterChanges`](https://viem.sh/docs/actions/public/getFilterChanges.html) or [`getFilterLogs`](https://viem.sh/docs/actions/public/getFilterLogs.html).
@@ -86,6 +91,8 @@ export async function createContractEventFilter<
86
91
  TEventName extends string | undefined,
87
92
  TArgs extends MaybeExtractEventArgsFromAbi<TAbi, TEventName> | undefined,
88
93
  TStrict extends boolean | undefined = undefined,
94
+ TFromBlock extends BlockNumber | BlockTag | undefined = undefined,
95
+ TToBlock extends BlockNumber | BlockTag | undefined = undefined,
89
96
  >(
90
97
  client: Client<Transport, TChain>,
91
98
  {
@@ -96,9 +103,23 @@ export async function createContractEventFilter<
96
103
  fromBlock,
97
104
  strict,
98
105
  toBlock,
99
- }: CreateContractEventFilterParameters<TAbi, TEventName, TArgs, TStrict>,
106
+ }: CreateContractEventFilterParameters<
107
+ TAbi,
108
+ TEventName,
109
+ TArgs,
110
+ TStrict,
111
+ TFromBlock,
112
+ TToBlock
113
+ >,
100
114
  ): Promise<
101
- CreateContractEventFilterReturnType<TAbi, TEventName, TArgs, TStrict>
115
+ CreateContractEventFilterReturnType<
116
+ TAbi,
117
+ TEventName,
118
+ TArgs,
119
+ TStrict,
120
+ TFromBlock,
121
+ TToBlock
122
+ >
102
123
  > {
103
124
  const getRequest = createFilterRequestScope(client, {
104
125
  method: 'eth_newFilter',
@@ -111,7 +132,7 @@ export async function createContractEventFilter<
111
132
  eventName,
112
133
  } as unknown as EncodeEventTopicsParameters)
113
134
  : undefined
114
- const id = await client.request({
135
+ const id: Hex = await client.request({
115
136
  method: 'eth_newFilter',
116
137
  params: [
117
138
  {
@@ -136,6 +157,8 @@ export async function createContractEventFilter<
136
157
  TAbi,
137
158
  TEventName,
138
159
  TArgs,
139
- TStrict
160
+ TStrict,
161
+ TFromBlock,
162
+ TToBlock
140
163
  >
141
164
  }