viem 2.56.9 → 2.57.1

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 (281) hide show
  1. package/CHANGELOG.md +46 -0
  2. package/_cjs/actions/public/waitForTransactionReceipt.js +12 -1
  3. package/_cjs/actions/public/waitForTransactionReceipt.js.map +1 -1
  4. package/_cjs/chains/definitions/blockdag.js +23 -0
  5. package/_cjs/chains/definitions/blockdag.js.map +1 -0
  6. package/_cjs/chains/definitions/candyChain.js +29 -0
  7. package/_cjs/chains/definitions/candyChain.js.map +1 -0
  8. package/_cjs/chains/definitions/creditCoin3Devnet.js +6 -0
  9. package/_cjs/chains/definitions/creditCoin3Devnet.js.map +1 -1
  10. package/_cjs/chains/definitions/creditCoin3Mainnet.js +6 -0
  11. package/_cjs/chains/definitions/creditCoin3Mainnet.js.map +1 -1
  12. package/_cjs/chains/definitions/creditCoin3Testnet.js +6 -0
  13. package/_cjs/chains/definitions/creditCoin3Testnet.js.map +1 -1
  14. package/_cjs/chains/definitions/kortana.js +23 -0
  15. package/_cjs/chains/definitions/kortana.js.map +1 -0
  16. package/_cjs/chains/index.js +20 -14
  17. package/_cjs/chains/index.js.map +1 -1
  18. package/_cjs/clients/createClientResolver.js +45 -0
  19. package/_cjs/clients/createClientResolver.js.map +1 -0
  20. package/_cjs/errors/version.js +1 -1
  21. package/_cjs/index.js +13 -9
  22. package/_cjs/index.js.map +1 -1
  23. package/_cjs/op-stack/actions/getGame.js +1 -1
  24. package/_cjs/op-stack/actions/getGame.js.map +1 -1
  25. package/_cjs/op-stack/actions/getGames.js +1 -1
  26. package/_cjs/op-stack/actions/getGames.js.map +1 -1
  27. package/_cjs/op-stack/actions/getTimeToNextGame.js +1 -1
  28. package/_cjs/op-stack/actions/getTimeToNextGame.js.map +1 -1
  29. package/_cjs/op-stack/actions/getTimeToNextL2Output.js +1 -1
  30. package/_cjs/op-stack/actions/getTimeToNextL2Output.js.map +1 -1
  31. package/_cjs/tempo/Client.js +2 -10
  32. package/_cjs/tempo/Client.js.map +1 -1
  33. package/_cjs/tempo/ExecutionError.js +290 -0
  34. package/_cjs/tempo/ExecutionError.js.map +1 -0
  35. package/_cjs/tempo/Relay.js +88 -0
  36. package/_cjs/tempo/Relay.js.map +1 -0
  37. package/_cjs/tempo/Transaction.js.map +1 -1
  38. package/_cjs/tempo/Transport.js +21 -12
  39. package/_cjs/tempo/Transport.js.map +1 -1
  40. package/_cjs/tempo/chainConfig.js +3 -0
  41. package/_cjs/tempo/chainConfig.js.map +1 -1
  42. package/_cjs/tempo/index.js +3 -3
  43. package/_cjs/tempo/index.js.map +1 -1
  44. package/_cjs/tempo/internal/relay/cache.js +74 -0
  45. package/_cjs/tempo/internal/relay/cache.js.map +1 -0
  46. package/_cjs/tempo/internal/relay/deadline.js +35 -0
  47. package/_cjs/tempo/internal/relay/deadline.js.map +1 -0
  48. package/_cjs/tempo/internal/relay/error.js +102 -0
  49. package/_cjs/tempo/internal/relay/error.js.map +1 -0
  50. package/_cjs/tempo/internal/relay/feePayer.js +426 -0
  51. package/_cjs/tempo/internal/relay/feePayer.js.map +1 -0
  52. package/_cjs/tempo/internal/relay/feeToken.js +143 -0
  53. package/_cjs/tempo/internal/relay/feeToken.js.map +1 -0
  54. package/_cjs/tempo/{Multisig.js → internal/relay/multisig.js} +132 -122
  55. package/_cjs/tempo/internal/relay/multisig.js.map +1 -0
  56. package/_cjs/tempo/internal/relay/plugin.js +13 -0
  57. package/_cjs/tempo/internal/relay/plugin.js.map +1 -0
  58. package/_cjs/tempo/internal/relay/preflight.js +58 -0
  59. package/_cjs/tempo/internal/relay/preflight.js.map +1 -0
  60. package/_cjs/tempo/internal/relay/request.js +319 -0
  61. package/_cjs/tempo/internal/relay/request.js.map +1 -0
  62. package/_cjs/tempo/internal/relay/simulate.js +267 -0
  63. package/_cjs/tempo/internal/relay/simulate.js.map +1 -0
  64. package/_cjs/tempo/internal/relay/utils.js +174 -0
  65. package/_cjs/tempo/internal/relay/utils.js.map +1 -0
  66. package/_cjs/tempo/internal/relay/virtualAddress.js +78 -0
  67. package/_cjs/tempo/internal/relay/virtualAddress.js.map +1 -0
  68. package/_cjs/tempo/internal/relay.js +139 -0
  69. package/_cjs/tempo/internal/relay.js.map +1 -0
  70. package/_cjs/tempo/multisig/Config.js +0 -2
  71. package/_cjs/tempo/multisig/Config.js.map +1 -1
  72. package/_cjs/tempo/multisig/Operation.js +1 -2
  73. package/_cjs/tempo/multisig/Operation.js.map +1 -1
  74. package/_cjs/tokens/definitions/ousd.js +16 -0
  75. package/_cjs/tokens/definitions/ousd.js.map +1 -0
  76. package/_cjs/tokens/index.js +3 -1
  77. package/_cjs/tokens/index.js.map +1 -1
  78. package/_cjs/tokens/sets.js +3 -0
  79. package/_cjs/tokens/sets.js.map +1 -1
  80. package/_cjs/utils/siwe/parseSiweMessage.js +3 -3
  81. package/_cjs/utils/siwe/parseSiweMessage.js.map +1 -1
  82. package/_esm/actions/public/waitForTransactionReceipt.js +15 -1
  83. package/_esm/actions/public/waitForTransactionReceipt.js.map +1 -1
  84. package/_esm/chains/definitions/blockdag.js +20 -0
  85. package/_esm/chains/definitions/blockdag.js.map +1 -0
  86. package/_esm/chains/definitions/candyChain.js +26 -0
  87. package/_esm/chains/definitions/candyChain.js.map +1 -0
  88. package/_esm/chains/definitions/creditCoin3Devnet.js +6 -0
  89. package/_esm/chains/definitions/creditCoin3Devnet.js.map +1 -1
  90. package/_esm/chains/definitions/creditCoin3Mainnet.js +6 -0
  91. package/_esm/chains/definitions/creditCoin3Mainnet.js.map +1 -1
  92. package/_esm/chains/definitions/creditCoin3Testnet.js +6 -0
  93. package/_esm/chains/definitions/creditCoin3Testnet.js.map +1 -1
  94. package/_esm/chains/definitions/kortana.js +20 -0
  95. package/_esm/chains/definitions/kortana.js.map +1 -0
  96. package/_esm/chains/index.js +3 -0
  97. package/_esm/chains/index.js.map +1 -1
  98. package/_esm/clients/createClientResolver.js +64 -0
  99. package/_esm/clients/createClientResolver.js.map +1 -0
  100. package/_esm/errors/version.js +1 -1
  101. package/_esm/index.js +2 -0
  102. package/_esm/index.js.map +1 -1
  103. package/_esm/op-stack/actions/getGame.js +1 -1
  104. package/_esm/op-stack/actions/getGame.js.map +1 -1
  105. package/_esm/op-stack/actions/getGames.js +1 -1
  106. package/_esm/op-stack/actions/getGames.js.map +1 -1
  107. package/_esm/op-stack/actions/getTimeToNextGame.js +2 -2
  108. package/_esm/op-stack/actions/getTimeToNextGame.js.map +1 -1
  109. package/_esm/op-stack/actions/getTimeToNextL2Output.js +2 -2
  110. package/_esm/op-stack/actions/getTimeToNextL2Output.js.map +1 -1
  111. package/_esm/tempo/Client.js +8 -14
  112. package/_esm/tempo/Client.js.map +1 -1
  113. package/_esm/tempo/ExecutionError.js +306 -0
  114. package/_esm/tempo/ExecutionError.js.map +1 -0
  115. package/_esm/tempo/Relay.js +170 -0
  116. package/_esm/tempo/Relay.js.map +1 -0
  117. package/_esm/tempo/Transaction.js.map +1 -1
  118. package/_esm/tempo/Transport.js +21 -46
  119. package/_esm/tempo/Transport.js.map +1 -1
  120. package/_esm/tempo/chainConfig.js +4 -0
  121. package/_esm/tempo/chainConfig.js.map +1 -1
  122. package/_esm/tempo/index.js +8 -3
  123. package/_esm/tempo/index.js.map +1 -1
  124. package/_esm/tempo/internal/relay/cache.js +72 -0
  125. package/_esm/tempo/internal/relay/cache.js.map +1 -0
  126. package/_esm/tempo/internal/relay/deadline.js +34 -0
  127. package/_esm/tempo/internal/relay/deadline.js.map +1 -0
  128. package/_esm/tempo/internal/relay/error.js +101 -0
  129. package/_esm/tempo/internal/relay/error.js.map +1 -0
  130. package/_esm/tempo/internal/relay/feePayer.js +442 -0
  131. package/_esm/tempo/internal/relay/feePayer.js.map +1 -0
  132. package/_esm/tempo/internal/relay/feeToken.js +143 -0
  133. package/_esm/tempo/internal/relay/feeToken.js.map +1 -0
  134. package/_esm/tempo/{Multisig.js → internal/relay/multisig.js} +133 -129
  135. package/_esm/tempo/internal/relay/multisig.js.map +1 -0
  136. package/_esm/tempo/internal/relay/plugin.js +10 -0
  137. package/_esm/tempo/internal/relay/plugin.js.map +1 -0
  138. package/_esm/tempo/internal/relay/preflight.js +57 -0
  139. package/_esm/tempo/internal/relay/preflight.js.map +1 -0
  140. package/_esm/tempo/internal/relay/request.js +321 -0
  141. package/_esm/tempo/internal/relay/request.js.map +1 -0
  142. package/_esm/tempo/internal/relay/simulate.js +277 -0
  143. package/_esm/tempo/internal/relay/simulate.js.map +1 -0
  144. package/_esm/tempo/internal/relay/utils.js +174 -0
  145. package/_esm/tempo/internal/relay/utils.js.map +1 -0
  146. package/_esm/tempo/internal/relay/virtualAddress.js +73 -0
  147. package/_esm/tempo/internal/relay/virtualAddress.js.map +1 -0
  148. package/_esm/tempo/internal/relay.js +138 -0
  149. package/_esm/tempo/internal/relay.js.map +1 -0
  150. package/_esm/tempo/multisig/Config.js +2 -1
  151. package/_esm/tempo/multisig/Config.js.map +1 -1
  152. package/_esm/tempo/multisig/Operation.js +1 -1
  153. package/_esm/tempo/multisig/Operation.js.map +1 -1
  154. package/_esm/tokens/definitions/ousd.js +25 -0
  155. package/_esm/tokens/definitions/ousd.js.map +1 -0
  156. package/_esm/tokens/index.js +1 -0
  157. package/_esm/tokens/index.js.map +1 -1
  158. package/_esm/tokens/sets.js +3 -0
  159. package/_esm/tokens/sets.js.map +1 -1
  160. package/_esm/utils/siwe/parseSiweMessage.js +3 -3
  161. package/_esm/utils/siwe/parseSiweMessage.js.map +1 -1
  162. package/_types/actions/public/waitForTransactionReceipt.d.ts.map +1 -1
  163. package/_types/chains/definitions/blockdag.d.ts +51 -0
  164. package/_types/chains/definitions/blockdag.d.ts.map +1 -0
  165. package/_types/chains/definitions/candyChain.d.ts +48 -0
  166. package/_types/chains/definitions/candyChain.d.ts.map +1 -0
  167. package/_types/chains/definitions/creditCoin3Devnet.d.ts +6 -9
  168. package/_types/chains/definitions/creditCoin3Devnet.d.ts.map +1 -1
  169. package/_types/chains/definitions/creditCoin3Mainnet.d.ts +6 -9
  170. package/_types/chains/definitions/creditCoin3Mainnet.d.ts.map +1 -1
  171. package/_types/chains/definitions/creditCoin3Testnet.d.ts +6 -9
  172. package/_types/chains/definitions/creditCoin3Testnet.d.ts.map +1 -1
  173. package/_types/chains/definitions/kortana.d.ts +51 -0
  174. package/_types/chains/definitions/kortana.d.ts.map +1 -0
  175. package/_types/chains/index.d.ts +3 -0
  176. package/_types/chains/index.d.ts.map +1 -1
  177. package/_types/clients/createClientResolver.d.ts +76 -0
  178. package/_types/clients/createClientResolver.d.ts.map +1 -0
  179. package/_types/errors/version.d.ts +1 -1
  180. package/_types/index.d.ts +2 -0
  181. package/_types/index.d.ts.map +1 -1
  182. package/_types/op-stack/actions/getGame.d.ts.map +1 -1
  183. package/_types/tempo/Capabilities.d.ts +7 -28
  184. package/_types/tempo/Capabilities.d.ts.map +1 -1
  185. package/_types/tempo/Client.d.ts +6 -15
  186. package/_types/tempo/Client.d.ts.map +1 -1
  187. package/_types/tempo/ExecutionError.d.ts +79 -0
  188. package/_types/tempo/ExecutionError.d.ts.map +1 -0
  189. package/_types/tempo/Relay.d.ts +302 -0
  190. package/_types/tempo/Relay.d.ts.map +1 -0
  191. package/_types/tempo/Transaction.d.ts +2 -1
  192. package/_types/tempo/Transaction.d.ts.map +1 -1
  193. package/_types/tempo/Transport.d.ts +15 -29
  194. package/_types/tempo/Transport.d.ts.map +1 -1
  195. package/_types/tempo/chainConfig.d.ts.map +1 -1
  196. package/_types/tempo/index.d.ts +8 -3
  197. package/_types/tempo/index.d.ts.map +1 -1
  198. package/_types/tempo/internal/relay/cache.d.ts +9 -0
  199. package/_types/tempo/internal/relay/cache.d.ts.map +1 -0
  200. package/_types/tempo/internal/relay/deadline.d.ts +4 -0
  201. package/_types/tempo/internal/relay/deadline.d.ts.map +1 -0
  202. package/_types/tempo/internal/relay/error.d.ts +47 -0
  203. package/_types/tempo/internal/relay/error.d.ts.map +1 -0
  204. package/_types/tempo/internal/relay/feePayer.d.ts +70 -0
  205. package/_types/tempo/internal/relay/feePayer.d.ts.map +1 -0
  206. package/_types/tempo/internal/relay/feeToken.d.ts +38 -0
  207. package/_types/tempo/internal/relay/feeToken.d.ts.map +1 -0
  208. package/_types/tempo/internal/relay/multisig.d.ts +4 -0
  209. package/_types/tempo/internal/relay/multisig.d.ts.map +1 -0
  210. package/_types/tempo/internal/relay/plugin.d.ts +5 -0
  211. package/_types/tempo/internal/relay/plugin.d.ts.map +1 -0
  212. package/_types/tempo/internal/relay/preflight.d.ts +17 -0
  213. package/_types/tempo/internal/relay/preflight.d.ts.map +1 -0
  214. package/_types/tempo/internal/relay/request.d.ts +16 -0
  215. package/_types/tempo/internal/relay/request.d.ts.map +1 -0
  216. package/_types/tempo/internal/relay/simulate.d.ts +59 -0
  217. package/_types/tempo/internal/relay/simulate.d.ts.map +1 -0
  218. package/_types/tempo/internal/relay/utils.d.ts +294 -0
  219. package/_types/tempo/internal/relay/utils.d.ts.map +1 -0
  220. package/_types/tempo/internal/relay/virtualAddress.d.ts +9 -0
  221. package/_types/tempo/internal/relay/virtualAddress.d.ts.map +1 -0
  222. package/_types/tempo/internal/relay.d.ts +4 -0
  223. package/_types/tempo/internal/relay.d.ts.map +1 -0
  224. package/_types/tempo/multisig/Config.d.ts +0 -13
  225. package/_types/tempo/multisig/Config.d.ts.map +1 -1
  226. package/_types/tempo/multisig/Operation.d.ts +0 -5
  227. package/_types/tempo/multisig/Operation.d.ts.map +1 -1
  228. package/_types/tokens/definitions/ousd.d.ts +25 -0
  229. package/_types/tokens/definitions/ousd.d.ts.map +1 -0
  230. package/_types/tokens/index.d.ts +1 -0
  231. package/_types/tokens/index.d.ts.map +1 -1
  232. package/_types/tokens/sets.d.ts +20 -0
  233. package/_types/tokens/sets.d.ts.map +1 -1
  234. package/_types/utils/siwe/parseSiweMessage.d.ts.map +1 -1
  235. package/actions/public/waitForTransactionReceipt.ts +16 -2
  236. package/chains/definitions/blockdag.ts +20 -0
  237. package/chains/definitions/candyChain.ts +26 -0
  238. package/chains/definitions/creditCoin3Devnet.ts +6 -0
  239. package/chains/definitions/creditCoin3Mainnet.ts +6 -0
  240. package/chains/definitions/creditCoin3Testnet.ts +6 -0
  241. package/chains/definitions/kortana.ts +20 -0
  242. package/chains/index.ts +3 -0
  243. package/clients/createClientResolver.ts +191 -0
  244. package/errors/version.ts +1 -1
  245. package/index.ts +6 -0
  246. package/op-stack/actions/getGame.ts +3 -1
  247. package/op-stack/actions/getGames.ts +1 -1
  248. package/op-stack/actions/getTimeToNextGame.ts +2 -2
  249. package/op-stack/actions/getTimeToNextL2Output.ts +2 -2
  250. package/package.json +1 -1
  251. package/tempo/Capabilities.ts +7 -29
  252. package/tempo/Client.ts +8 -38
  253. package/tempo/ExecutionError.ts +418 -0
  254. package/tempo/Relay.ts +428 -0
  255. package/tempo/Transaction.ts +2 -1
  256. package/tempo/Transport.ts +69 -60
  257. package/tempo/chainConfig.ts +4 -0
  258. package/tempo/index.ts +7 -3
  259. package/tempo/internal/relay/cache.ts +82 -0
  260. package/tempo/internal/relay/deadline.ts +45 -0
  261. package/tempo/internal/relay/error.ts +128 -0
  262. package/tempo/internal/relay/feePayer.ts +692 -0
  263. package/tempo/internal/relay/feeToken.ts +190 -0
  264. package/tempo/{Multisig.ts → internal/relay/multisig.ts} +162 -193
  265. package/tempo/internal/relay/plugin.ts +13 -0
  266. package/tempo/internal/relay/preflight.ts +81 -0
  267. package/tempo/internal/relay/request.ts +391 -0
  268. package/tempo/internal/relay/simulate.ts +367 -0
  269. package/tempo/internal/relay/utils.ts +202 -0
  270. package/tempo/internal/relay/virtualAddress.ts +95 -0
  271. package/tempo/internal/relay.ts +158 -0
  272. package/tempo/multisig/Config.ts +3 -2
  273. package/tempo/multisig/Operation.ts +1 -1
  274. package/tokens/definitions/ousd.ts +25 -0
  275. package/tokens/index.ts +1 -0
  276. package/tokens/sets.ts +3 -0
  277. package/utils/siwe/parseSiweMessage.ts +21 -13
  278. package/_cjs/tempo/Multisig.js.map +0 -1
  279. package/_esm/tempo/Multisig.js.map +0 -1
  280. package/_types/tempo/Multisig.d.ts +0 -37
  281. package/_types/tempo/Multisig.d.ts.map +0 -1
@@ -0,0 +1,302 @@
1
+ import type { Address } from 'abitype';
2
+ import type { LocalAccount } from '../accounts/types.js';
3
+ import type { Client as Client_ } from '../clients/createClient.js';
4
+ import type { EIP1193RequestOptions } from '../types/eip1193.js';
5
+ import * as Sponsorship from './internal/relay/feePayer.js';
6
+ import type * as Store from './Store.js';
7
+ /**
8
+ * Creates a relay with RPC and Fetch handlers backed by a client or chain resolver.
9
+ *
10
+ * Pass a chain-configured `client` for a single chain, or `getClient` for multiple
11
+ * chains. Plugins may resolve the chain before forwarding to the selected client.
12
+ *
13
+ * @example
14
+ * ```ts
15
+ * import { createClient, http } from 'viem'
16
+ * import { tempo } from 'viem/chains'
17
+ * import { Relay } from 'viem/tempo'
18
+ *
19
+ * const relay = Relay.create({
20
+ * client: createClient({ chain: tempo, transport: http() }),
21
+ * })
22
+ * export default { fetch: relay.fetch }
23
+ * ```
24
+ *
25
+ * @param options - Client selection and relay plugins.
26
+ * @returns RPC and Fetch handlers sharing the same plugins.
27
+ */
28
+ export declare function create<const chainId extends number>(options: handleRequest.Options & {
29
+ client: Client & {
30
+ chain: {
31
+ id: chainId;
32
+ };
33
+ };
34
+ getClient?: never;
35
+ }): create.ReturnType<chainId>;
36
+ export declare function create<const chainId extends number = number>(options: handleRequest.Options & {
37
+ client?: never;
38
+ getClient: (options: {
39
+ chainId: chainId;
40
+ }) => Client;
41
+ }): create.ReturnType<chainId>;
42
+ export declare function create<getClient extends (options: never) => Client>(options: handleRequest.Options & {
43
+ client?: never;
44
+ getClient: getClient;
45
+ }): create.ReturnType<Parameters<getClient>[0] extends {
46
+ chainId: infer chainId extends number;
47
+ } ? chainId : number>;
48
+ export declare namespace create {
49
+ /** Client selection and middleware for a relay. */
50
+ type Options<chainId extends number = number> = handleRequest.Options & ({
51
+ /** Chain-configured client used for every forwarded request. */
52
+ client: Client & {
53
+ chain: {
54
+ id: chainId;
55
+ };
56
+ };
57
+ getClient?: never;
58
+ } | {
59
+ client?: never;
60
+ /** Resolves the client after plugins have selected the request's chain. */
61
+ getClient: (options: {
62
+ chainId: chainId;
63
+ }) => Client & {
64
+ chain: {
65
+ id: number;
66
+ };
67
+ };
68
+ });
69
+ /** Optional chain selection and RPC request options. */
70
+ type RequestOptions<chainId extends number = number> = Omit<handleRequest.RequestOptions, 'chainId'> & {
71
+ chainId?: chainId | undefined;
72
+ };
73
+ /** Handlers sharing one composed relay pipeline. */
74
+ type ReturnType<chainId extends number = number> = {
75
+ /** Handles a POST JSON-RPC request, returning JSON or an empty 204 for notifications. */
76
+ fetch: {
77
+ (request: Request): Promise<Response>;
78
+ (request: Request, options?: RequestOptions<chainId> | undefined): Promise<Response>;
79
+ };
80
+ /** Handles a parsed RPC call and returns its result. */
81
+ request: (request: handleRequest.Request, options?: RequestOptions<chainId> | undefined) => Promise<unknown>;
82
+ };
83
+ }
84
+ /**
85
+ * Creates an RPC request handler by composing relay plugins around a downstream handler.
86
+ *
87
+ * Requests enter plugins in array order, and responses return in reverse order.
88
+ * Post-fill hooks run concurrently after middleware finishes. Middleware sees
89
+ * the downstream result before post-fill enrichment and signing.
90
+ * Without plugins, the downstream handler is returned unchanged. Plugins decide
91
+ * whether to forward, transform, or handle a request. Errors propagate unchanged
92
+ * unless a plugin handles them.
93
+ *
94
+ * @example
95
+ * ```ts
96
+ * import { http } from 'viem'
97
+ * import { Relay } from 'viem/tempo'
98
+ *
99
+ * const rpc = http('https://rpc.tempo.xyz')({})
100
+ * const handle = Relay.handleRequest(rpc.request, {
101
+ * plugins: [
102
+ * {
103
+ * async handleRequest(context, next) {
104
+ * context.options.retryCount = 0
105
+ * await next()
106
+ * },
107
+ * },
108
+ * ],
109
+ * })
110
+ * const chainId = await handle({ method: 'eth_chainId' })
111
+ * // @log: '0x1079'
112
+ * ```
113
+ *
114
+ * @param next - Downstream RPC request handler, typically forwarding to the Tempo (Execution) RPC.
115
+ * @param options - Relay options.
116
+ * @returns The composed RPC request handler.
117
+ */
118
+ export declare function handleRequest(next: handleRequest.Handler, options?: handleRequest.Options): handleRequest.Handler;
119
+ export declare namespace handleRequest {
120
+ /** RPC request handler shared by relay plugins and the downstream execution RPC. */
121
+ type Handler = (request: Request, options?: RequestOptions | undefined) => Promise<unknown>;
122
+ /** Options for {@link handleRequest}. */
123
+ type Options = {
124
+ /** Plugins in request execution order. Defaults to an empty list. */
125
+ plugins?: readonly Plugin[] | undefined;
126
+ /** Fee-token candidates shared by all plugins, memoized per request and chain. */
127
+ resolveTokens?: ((chainId: number) => readonly Address[] | Promise<readonly Address[]>) | undefined;
128
+ /** Deadline in milliseconds for a plugin-handled fill, including callbacks. Defaults to 10,000. */
129
+ timeout?: number | undefined;
130
+ };
131
+ /** RPC request passed to a handler. */
132
+ type Request = {
133
+ /** RPC method name. */
134
+ method: string;
135
+ /** RPC method parameters. */
136
+ params?: readonly unknown[] | undefined;
137
+ };
138
+ /** Options for one handled request. */
139
+ type RequestOptions = EIP1193RequestOptions & {
140
+ /** Chain selected by the caller or resolved by a plugin. */
141
+ chainId?: number | undefined;
142
+ /** Response metadata collected by the Fetch adapter. */
143
+ response?: {
144
+ sponsorship_details?: Sponsorship.SponsorshipDetails | undefined;
145
+ } | undefined;
146
+ };
147
+ }
148
+ /** Hooks extending relay request processing and filled transaction responses. */
149
+ export type Plugin = {
150
+ /** Processes an RPC request. Await next(), then read or replace context.result. */
151
+ handleRequest?: ((context: Plugin.Context, next: () => Promise<void>) => Promise<unknown>) | undefined;
152
+ /** Runs concurrently after the final fill. Returns capability fields to merge. */
153
+ afterFill?: ((filled: Plugin.FillResult, context: Plugin.Context) => Promise<Plugin.Enrichment | undefined>) | undefined;
154
+ /** Signs the final fill concurrently with enrichment. Only one signer may be registered. */
155
+ signTransaction?: ((filled: Plugin.FillResult, context: Plugin.Context) => Promise<Plugin.Signature | undefined>) | undefined;
156
+ };
157
+ export declare namespace Plugin {
158
+ /** State and services isolated to one RPC invocation. */
159
+ type Context = {
160
+ /** Current RPC request. Changes are passed to next(). */
161
+ request: handleRequest.Request;
162
+ /** Downstream result, populated by next(). */
163
+ result: unknown;
164
+ /** Transport options and selected chain. */
165
+ options: handleRequest.RequestOptions;
166
+ /** Downstream client for the selected chain. */
167
+ readonly client: Client_;
168
+ /** Gets a downstream client for the selected or specified chain. */
169
+ getClient: (chainId?: number) => Client_;
170
+ /** Gets the shared token candidates for the selected or specified chain. */
171
+ resolveTokens: (chainId?: number) => Promise<readonly Address[]>;
172
+ /** Scopes a configured store to this invocation. */
173
+ getStore: (store: Store.Store | undefined) => Store.Store | undefined;
174
+ };
175
+ /** Immutable RPC fill supplied to post-fill hooks. */
176
+ type FillResult = {
177
+ readonly tx: Readonly<Record<string, unknown>>;
178
+ readonly capabilities?: Readonly<Record<string, unknown>> | undefined;
179
+ readonly sponsor?: unknown;
180
+ };
181
+ /** Additional response capabilities. Duplicate keys from hooks are rejected. */
182
+ type Enrichment = {
183
+ capabilities?: Record<string, unknown> | undefined;
184
+ };
185
+ /** Fee-payer signature in RPC format. */
186
+ type Signature = {
187
+ r: `0x${string}`;
188
+ s: `0x${string}`;
189
+ yParity: `0x${string}`;
190
+ };
191
+ }
192
+ declare const multisigBrand: unique symbol;
193
+ /**
194
+ * Coordinates native multisig approvals using shared atomic storage.
195
+ *
196
+ * Memory storage is process-local. Independent clients and multiple server
197
+ * instances must use the same persistent store to share pending approvals.
198
+ *
199
+ * @example
200
+ * ```ts
201
+ * import { http } from 'viem'
202
+ * import { Relay, Store, withRelay } from 'viem/tempo'
203
+ *
204
+ * const transport = withRelay(http(), {
205
+ * plugins: [Relay.multisig({ store: Store.memory() })],
206
+ * })
207
+ * ```
208
+ *
209
+ * @param options - Shared atomic storage.
210
+ * @returns A plugin that coordinates multisig requests and forwards other calls.
211
+ */
212
+ export declare function multisig(options: multisig.Options): multisig.ReturnType;
213
+ export declare namespace multisig {
214
+ /** Multisig coordination options. */
215
+ type Options = {
216
+ /** Store shared by multisig coordinators, with atomic compare-and-set support. */
217
+ store: Store.Atomic;
218
+ };
219
+ /** Middleware advertising native multisig coordination. */
220
+ type ReturnType = Plugin & {
221
+ readonly [multisigBrand]: true;
222
+ };
223
+ }
224
+ /**
225
+ * Sponsors transactions with a local account or an external fee-payer relay.
226
+ *
227
+ * Place multisig before this plugin and fee-token selection after it.
228
+ *
229
+ * @example
230
+ * ```ts
231
+ * import { privateKeyToAccount } from 'viem/accounts'
232
+ * import { Relay } from 'viem/tempo'
233
+ * const plugin = Relay.feePayer({ account: privateKeyToAccount('0x...') })
234
+ * ```
235
+ * @param options - Sponsor account, policy, and display metadata.
236
+ * @returns A fee-payer relay plugin.
237
+ */
238
+ export declare function feePayer(options?: feePayer.Options): Plugin;
239
+ export declare namespace feePayer {
240
+ /** Fee sponsorship configuration. */
241
+ type Options = {
242
+ /** Local sponsor. Omit when requests use an external fee-payer URL. */
243
+ account?: LocalAccount | undefined;
244
+ /** Trusted external fee-payer URLs. Matches the normalized full URL, including path and query. Defaults to none. */
245
+ allowedFeePayers?: readonly string[] | undefined;
246
+ /** Sponsor's preferred fee token. Overrides the request token on sponsored fills. */
247
+ feeToken?: Address | undefined;
248
+ /** Allow HTTP and private external relay hosts in trusted development environments. @default false */
249
+ internal_allowUnsafeUrls?: boolean | undefined;
250
+ /** Display name returned in sponsor capabilities. */
251
+ name?: string | undefined;
252
+ /** Called after signing and before returning or broadcasting. A thrown error aborts sponsorship. */
253
+ onSponsored?: Sponsorship.sign.Options['onSponsored'] | undefined;
254
+ /** Sponsor display URL. */
255
+ url?: string | undefined;
256
+ /** Only `true` authorizes sponsorship. Rejected fills fall back to sender-paid transactions. */
257
+ validate?: Sponsorship.Validate | undefined;
258
+ };
259
+ /** Result of a sponsorship policy check. */
260
+ type Validation = Sponsorship.Validation;
261
+ /** Facts passed to the sponsorship callback. */
262
+ type SponsoredEvent = Sponsorship.SponsoredEvent;
263
+ }
264
+ /**
265
+ * Resolves fee tokens from user preferences and token balances.
266
+ *
267
+ * @example
268
+ * ```ts
269
+ * import { Relay } from 'viem/tempo'
270
+ * const plugin = Relay.feeToken()
271
+ * ```
272
+ * @returns A fee-token relay plugin.
273
+ */
274
+ export declare function feeToken(): Plugin;
275
+ /**
276
+ * Adds balance changes, estimated fees, and execution errors to fill capabilities.
277
+ *
278
+ * Runs after transaction middleware to simulate the final filled result.
279
+ *
280
+ * @example
281
+ * ```ts
282
+ * import { Relay } from 'viem/tempo'
283
+ * const plugin = Relay.simulate()
284
+ * ```
285
+ * @param options - Optional metadata store.
286
+ * @returns A simulation relay plugin.
287
+ */
288
+ export declare function simulate(options?: simulate.Options): Plugin;
289
+ export declare namespace simulate {
290
+ /** Simulation configuration. */
291
+ type Options = {
292
+ /** Store for cached metadata. Omit to read metadata for each request. */
293
+ store?: Store.Store | undefined;
294
+ };
295
+ }
296
+ type Client = Pick<Client_, 'request'> & {
297
+ chain: {
298
+ id: number;
299
+ };
300
+ };
301
+ export {};
302
+ //# sourceMappingURL=Relay.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Relay.d.ts","sourceRoot":"","sources":["../../tempo/Relay.ts"],"names":[],"mappings":"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"}
@@ -44,7 +44,8 @@ export type TransactionRequestTempo<quantity = bigint, index = number, type = 't
44
44
  accessList?: AccessList | undefined;
45
45
  calls?: readonly TxTempo.Call<quantity, TempoAddress.Address>[] | undefined;
46
46
  capabilities?: ExtractCapabilities<'fillTransaction', 'Request'> | undefined;
47
- feePayer?: Account | true | undefined;
47
+ /** Fee-payer account, external relay URL, or sponsorship preference. */
48
+ feePayer?: Account | boolean | string | undefined;
48
49
  feeToken?: TempoAddress.Address | bigint | undefined;
49
50
  hash?: Hex.Hex | undefined;
50
51
  keyAuthorization?: KeyAuthorization.Signed<quantity, index> | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"Transaction.d.ts","sourceRoot":"","sources":["../../tempo/Transaction.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,KAAK,GAAG,MAAM,QAAQ,CAAA;AAE7B,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EAErB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,IAAI,qBAAqB,EAChD,iBAAiB,EACjB,KAAK,YAAY,EACjB,eAAe,IAAI,OAAO,EAC3B,MAAM,UAAU,CAAA;AACjB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AACnE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AACvD,OAAO,KAAK,EAAE,SAAS,IAAI,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACnE,OAAO,KAAK,EACV,cAAc,IAAI,mBAAmB,EACrC,qBAAqB,IAAI,0BAA0B,EACpD,MAAM,iBAAiB,CAAA;AACxB,OAAO,KAAK,EACV,UAAU,EACV,eAAe,EACf,sBAAsB,EACtB,2BAA2B,EAC3B,4BAA4B,EAC5B,WAAW,IAAI,gBAAgB,EAC/B,kBAAkB,IAAI,uBAAuB,EAC7C,kBAAkB,IAAI,uBAAuB,EAC7C,uBAAuB,IAAI,4BAA4B,EACvD,qBAAqB,IAAI,0BAA0B,EACnD,eAAe,IAAI,oBAAoB,EACxC,MAAM,yBAAyB,CAAA;AAChC,OAAO,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAEvE,OAAO,EACL,KAAK,0BAA0B,EAEhC,MAAM,0CAA0C,CAAA;AAEjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAG/C,MAAM,MAAM,WAAW,CACrB,UAAU,GAAG,MAAM,EACnB,UAAU,GAAG,MAAM,EACnB,OAAO,SAAS,OAAO,GAAG,KAAK,IAC7B,KAAK,CACL,gBAAgB,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC,GACjD,gBAAgB,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC,CACpD,CAAA;AACD,MAAM,MAAM,cAAc,CAAC,OAAO,SAAS,OAAO,GAAG,KAAK,IAAI,KAAK,CAC/D,mBAAmB,CAAC,OAAO,CAAC,GAC5B,CAAC,IAAI,CACH,gBAAgB,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,CAAC,EACnD,mBAAmB,GAAG,kBAAkB,GAAG,WAAW,CACvD,GAAG;IACF,iBAAiB,CAAC,EAAE,kBAAkB,CAAC,OAAO,GAAG,SAAS,CAAA;IAC1D,gBAAgB,CAAC,EAAE,gBAAgB,CAAC,GAAG,GAAG,IAAI,GAAG,SAAS,CAAA;IAC1D,QAAQ,CAAC,EAAE,iBAAiB,CAAC,cAAc,GAAG,SAAS,CAAA;IACvD,SAAS,EAAE,iBAAiB,CAAC,oBAAoB,CAAA;CAClD,CAAC,CACL,CAAA;AAED,MAAM,MAAM,gBAAgB,CAC1B,QAAQ,GAAG,MAAM,EACjB,KAAK,GAAG,MAAM,EACd,SAAS,SAAS,OAAO,GAAG,OAAO,EACnC,IAAI,GAAG,OAAO,IACZ,SAAS,CACX,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,IAAI,CAAC,EAC3E,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,SAAS,CAC5B,GAAG;IACF,UAAU,EAAE,UAAU,CAAA;IACtB,iBAAiB,CAAC,EAAE,kBAAkB,CAAC,UAAU,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,SAAS,CAAA;IAC9E,KAAK,EAAE,SAAS,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAA;IACxC,OAAO,EAAE,KAAK,CAAA;IACd,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAC9B,iBAAiB,CAAC,EAAE,cAAc,GAAG,SAAS,CAAA;IAC9C,gBAAgB,CAAC,EAAE,gBAAgB,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,IAAI,GAAG,SAAS,CAAA;IAC9E,QAAQ,CAAC,EAAE,iBAAiB,CAAC,oBAAoB,GAAG,SAAS,CAAA;IAC7D,QAAQ,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAA;IAC/B,SAAS,EAAE,iBAAiB,CAAC,iBAAiB,CAAA;IAC9C,IAAI,EAAE,IAAI,CAAA;IACV,WAAW,CAAC,EAAE,KAAK,GAAG,SAAS,CAAA;IAC/B,UAAU,CAAC,EAAE,KAAK,GAAG,SAAS,CAAA;CAC/B,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAA;AAE9B,MAAM,MAAM,kBAAkB,CAC5B,UAAU,GAAG,MAAM,EACnB,UAAU,GAAG,MAAM,IACjB,KAAK,CACL,uBAAuB,CAAC,UAAU,EAAE,UAAU,CAAC,GAC/C,uBAAuB,CAAC,UAAU,EAAE,UAAU,CAAC,CAClD,CAAA;AACD,MAAM,MAAM,qBAAqB,GAAG,KAAK,CACvC,0BAA0B,GAAG,uBAAuB,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAC/E,CAAA;AAED,MAAM,MAAM,kBAAkB,CAC5B,QAAQ,GAAG,MAAM,EACjB,KAAK,GAAG,MAAM,EACd,MAAM,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,EAC3C,IAAI,GAAG,eAAe,EACtB,QAAQ,GAAG,iBAAiB,CAAC,oBAAoB,IAC/C,uBAAuB,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG;IAC3D,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAC9B,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAC9B,QAAQ,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAA;CAChC,CAAA;AAED,MAAM,MAAM,qBAAqB,GAAG,kBAAkB,CACpD,GAAG,CAAC,GAAG,EACP,GAAG,CAAC,GAAG,EACP,qBAAqB,CAAC,SAAS,GAAG,SAAS,EAC3C,qBAAqB,CAAC,OAAO,EAC7B,iBAAiB,CAAC,cAAc,CACjC,CAAA;AAED,MAAM,MAAM,uBAAuB,CACjC,QAAQ,GAAG,MAAM,EACjB,KAAK,GAAG,MAAM,EACd,IAAI,GAAG,OAAO,IACZ,sBAAsB,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,GAC/C,YAAY,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,GAAG;IACzC,UAAU,CAAC,EAAE,UAAU,GAAG,SAAS,CAAA;IACnC,KAAK,CAAC,EAAE,SAAS,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,OAAO,CAAC,EAAE,GAAG,SAAS,CAAA;IAC3E,YAAY,CAAC,EAAE,mBAAmB,CAAC,iBAAiB,EAAE,SAAS,CAAC,GAAG,SAAS,CAAA;IAC5E,QAAQ,CAAC,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,CAAA;IACrC,QAAQ,CAAC,EAAE,YAAY,CAAC,OAAO,GAAG,MAAM,GAAG,SAAS,CAAA;IACpD,IAAI,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,SAAS,CAAA;IAC1B,gBAAgB,CAAC,EAAE,gBAAgB,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,SAAS,CAAA;IACvE,kBAAkB,CAAC,EAAE,kBAAkB,CAAC,IAAI,GAAG,SAAS,CAAA;IACxD,QAAQ,CAAC,EAAE,UAAU,GAAG,QAAQ,GAAG,SAAS,CAAA;IAC5C,KAAK,CAAC,EAAE,WAAW,GAAG,SAAS,CAAA;IAC/B,UAAU,CAAC,EAAE,SAAS,iBAAiB,CAAC,UAAU,EAAE,GAAG,SAAS,CAAA;IAChE,WAAW,CAAC,EAAE,KAAK,GAAG,SAAS,CAAA;IAC/B,UAAU,CAAC,EAAE,KAAK,GAAG,SAAS,CAAA;CAC/B,CAAA;AAEH,MAAM,MAAM,uBAAuB,GAAG,KAAK,CACzC,4BAA4B,GAAG,4BAA4B,CAC5D,CAAA;AAED,MAAM,MAAM,4BAA4B,CACtC,QAAQ,GAAG,MAAM,EACjB,KAAK,GAAG,MAAM,IACZ,2BAA2B,CAAC,QAAQ,EAAE,KAAK,CAAC,GAC9C,YAAY,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,GAAG;IACzC,UAAU,CAAC,EAAE,UAAU,GAAG,SAAS,CAAA;IACnC,KAAK,EAAE,SAAS,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAA;IACxC,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAAA;IACvC,iBAAiB,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,SAAS,CAAA;IACrD,gBAAgB,CAAC,EAAE,gBAAgB,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,SAAS,CAAA;IACvE,QAAQ,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAA;IAC/B,KAAK,CAAC,EAAE,WAAW,GAAG,SAAS,CAAA;IAC/B,SAAS,CAAC,EAAE,iBAAiB,CAAC,iBAAiB,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,SAAS,CAAA;IAC5E,WAAW,CAAC,EAAE,KAAK,GAAG,SAAS,CAAA;IAC/B,UAAU,CAAC,EAAE,KAAK,GAAG,SAAS,CAAA;IAC9B,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CAC3B,GAAG,CACA;IACE,IAAI,EAAE,OAAO,CAAA;IACb,kBAAkB,CAAC,EAAE,kBAAkB,CAAC,IAAI,GAAG,SAAS,CAAA;IACxD,UAAU,CAAC,EAAE,SAAS,iBAAiB,CAAC,UAAU,EAAE,GAAG,SAAS,CAAA;CACjE,GACD;IACE,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAC1B,kBAAkB,CAAC,EAAE,SAAS,CAAA;IAC9B,UAAU,CAAC,EAAE,SAAS,iBAAiB,CAAC,UAAU,EAAE,GAAG,SAAS,CAAA;CACjE,GACD;IACE,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAC1B,kBAAkB,CAAC,EAAE,kBAAkB,CAAC,IAAI,GAAG,SAAS,CAAA;IACxD,UAAU,CAAC,EAAE,SAAS,CAAA;CACvB,CACJ,CAAA;AAEH,MAAM,MAAM,qBAAqB,CAC/B,IAAI,SAAS,eAAe,GAAG,eAAe,IAC5C,0BAA0B,CAAC,IAAI,CAAC,GAAG,0BAA0B,CAAA;AAEjE,MAAM,MAAM,0BAA0B,GAAG,OAAO,MAAM,EAAE,CAAA;AACxD,MAAM,MAAM,6BAA6B,GAAG,OAAO,MAAM,EAAE,CAAA;AAE3D,MAAM,MAAM,eAAe,GAAG,oBAAoB,GAAG,OAAO,CAAA;AAE5D,wBAAgB,OAAO,CACrB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACnC,WAAW,CAAC,MAAM,CAAC,CAwBrB;AAED,wBAAgB,OAAO,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,WAO3D;AAED,wBAAgB,WAAW,CACzB,KAAK,CAAC,UAAU,SAAS,4BAA4B,EACrD,qBAAqB,EAAE,UAAU,GAAG,WAAW,CAAC,WAAW,CAAC,UAAU,CAAC,CAKxE;AAED,MAAM,CAAC,OAAO,WAAW,WAAW,CAAC;IACnC,KAAY,WAAW,CACrB,UAAU,SACR,4BAA4B,GAAG,4BAA4B,IAC3D,UAAU,SAAS,0BAA0B,GAC7C,4BAA4B,GAC5B,UAAU,SAAS,6BAA6B,GAC9C,4BAA4B,GAC5B,0BAA0B,CAAC,UAAU,CAAC,CAAA;CAC7C;AAED,wBAAsB,SAAS,CAC7B,WAAW,EAAE,uBAAuB,GAAG;IACrC,QAAQ,CAAC,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,CAAA;IACrC,IAAI,CAAC,EAAE,YAAY,CAAC,OAAO,GAAG,SAAS,CAAA;CACxC,EACD,SAAS,CAAC,EACN,KAAK,CAAC,iBAAiB,CAAC,iBAAiB,GAAG,cAAc,CAAC,GAC3D,SAAS,0BAyBd;AAgMD,OAAO;AACL,kBAAkB;AAClB,gBAAgB,IAAI,kBAAkB;AACtC,kBAAkB;AAClB,iBAAiB,IAAI,mBAAmB;AACxC,kBAAkB;AAClB,eAAe,IAAI,iBAAiB,GACrC,MAAM,UAAU,CAAA"}
1
+ {"version":3,"file":"Transaction.d.ts","sourceRoot":"","sources":["../../tempo/Transaction.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,KAAK,GAAG,MAAM,QAAQ,CAAA;AAE7B,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EAErB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,IAAI,qBAAqB,EAChD,iBAAiB,EACjB,KAAK,YAAY,EACjB,eAAe,IAAI,OAAO,EAC3B,MAAM,UAAU,CAAA;AACjB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AACnE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AACvD,OAAO,KAAK,EAAE,SAAS,IAAI,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACnE,OAAO,KAAK,EACV,cAAc,IAAI,mBAAmB,EACrC,qBAAqB,IAAI,0BAA0B,EACpD,MAAM,iBAAiB,CAAA;AACxB,OAAO,KAAK,EACV,UAAU,EACV,eAAe,EACf,sBAAsB,EACtB,2BAA2B,EAC3B,4BAA4B,EAC5B,WAAW,IAAI,gBAAgB,EAC/B,kBAAkB,IAAI,uBAAuB,EAC7C,kBAAkB,IAAI,uBAAuB,EAC7C,uBAAuB,IAAI,4BAA4B,EACvD,qBAAqB,IAAI,0BAA0B,EACnD,eAAe,IAAI,oBAAoB,EACxC,MAAM,yBAAyB,CAAA;AAChC,OAAO,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAEvE,OAAO,EACL,KAAK,0BAA0B,EAEhC,MAAM,0CAA0C,CAAA;AAEjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAG/C,MAAM,MAAM,WAAW,CACrB,UAAU,GAAG,MAAM,EACnB,UAAU,GAAG,MAAM,EACnB,OAAO,SAAS,OAAO,GAAG,KAAK,IAC7B,KAAK,CACL,gBAAgB,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC,GACjD,gBAAgB,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC,CACpD,CAAA;AACD,MAAM,MAAM,cAAc,CAAC,OAAO,SAAS,OAAO,GAAG,KAAK,IAAI,KAAK,CAC/D,mBAAmB,CAAC,OAAO,CAAC,GAC5B,CAAC,IAAI,CACH,gBAAgB,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,CAAC,EACnD,mBAAmB,GAAG,kBAAkB,GAAG,WAAW,CACvD,GAAG;IACF,iBAAiB,CAAC,EAAE,kBAAkB,CAAC,OAAO,GAAG,SAAS,CAAA;IAC1D,gBAAgB,CAAC,EAAE,gBAAgB,CAAC,GAAG,GAAG,IAAI,GAAG,SAAS,CAAA;IAC1D,QAAQ,CAAC,EAAE,iBAAiB,CAAC,cAAc,GAAG,SAAS,CAAA;IACvD,SAAS,EAAE,iBAAiB,CAAC,oBAAoB,CAAA;CAClD,CAAC,CACL,CAAA;AAED,MAAM,MAAM,gBAAgB,CAC1B,QAAQ,GAAG,MAAM,EACjB,KAAK,GAAG,MAAM,EACd,SAAS,SAAS,OAAO,GAAG,OAAO,EACnC,IAAI,GAAG,OAAO,IACZ,SAAS,CACX,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,IAAI,CAAC,EAC3E,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,SAAS,CAC5B,GAAG;IACF,UAAU,EAAE,UAAU,CAAA;IACtB,iBAAiB,CAAC,EAAE,kBAAkB,CAAC,UAAU,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,SAAS,CAAA;IAC9E,KAAK,EAAE,SAAS,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAA;IACxC,OAAO,EAAE,KAAK,CAAA;IACd,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAC9B,iBAAiB,CAAC,EAAE,cAAc,GAAG,SAAS,CAAA;IAC9C,gBAAgB,CAAC,EAAE,gBAAgB,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,IAAI,GAAG,SAAS,CAAA;IAC9E,QAAQ,CAAC,EAAE,iBAAiB,CAAC,oBAAoB,GAAG,SAAS,CAAA;IAC7D,QAAQ,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAA;IAC/B,SAAS,EAAE,iBAAiB,CAAC,iBAAiB,CAAA;IAC9C,IAAI,EAAE,IAAI,CAAA;IACV,WAAW,CAAC,EAAE,KAAK,GAAG,SAAS,CAAA;IAC/B,UAAU,CAAC,EAAE,KAAK,GAAG,SAAS,CAAA;CAC/B,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAA;AAE9B,MAAM,MAAM,kBAAkB,CAC5B,UAAU,GAAG,MAAM,EACnB,UAAU,GAAG,MAAM,IACjB,KAAK,CACL,uBAAuB,CAAC,UAAU,EAAE,UAAU,CAAC,GAC/C,uBAAuB,CAAC,UAAU,EAAE,UAAU,CAAC,CAClD,CAAA;AACD,MAAM,MAAM,qBAAqB,GAAG,KAAK,CACvC,0BAA0B,GAAG,uBAAuB,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAC/E,CAAA;AAED,MAAM,MAAM,kBAAkB,CAC5B,QAAQ,GAAG,MAAM,EACjB,KAAK,GAAG,MAAM,EACd,MAAM,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,EAC3C,IAAI,GAAG,eAAe,EACtB,QAAQ,GAAG,iBAAiB,CAAC,oBAAoB,IAC/C,uBAAuB,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG;IAC3D,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAC9B,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAC9B,QAAQ,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAA;CAChC,CAAA;AAED,MAAM,MAAM,qBAAqB,GAAG,kBAAkB,CACpD,GAAG,CAAC,GAAG,EACP,GAAG,CAAC,GAAG,EACP,qBAAqB,CAAC,SAAS,GAAG,SAAS,EAC3C,qBAAqB,CAAC,OAAO,EAC7B,iBAAiB,CAAC,cAAc,CACjC,CAAA;AAED,MAAM,MAAM,uBAAuB,CACjC,QAAQ,GAAG,MAAM,EACjB,KAAK,GAAG,MAAM,EACd,IAAI,GAAG,OAAO,IACZ,sBAAsB,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,GAC/C,YAAY,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,GAAG;IACzC,UAAU,CAAC,EAAE,UAAU,GAAG,SAAS,CAAA;IACnC,KAAK,CAAC,EAAE,SAAS,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,OAAO,CAAC,EAAE,GAAG,SAAS,CAAA;IAC3E,YAAY,CAAC,EAAE,mBAAmB,CAAC,iBAAiB,EAAE,SAAS,CAAC,GAAG,SAAS,CAAA;IAC5E,wEAAwE;IACxE,QAAQ,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,CAAA;IACjD,QAAQ,CAAC,EAAE,YAAY,CAAC,OAAO,GAAG,MAAM,GAAG,SAAS,CAAA;IACpD,IAAI,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,SAAS,CAAA;IAC1B,gBAAgB,CAAC,EAAE,gBAAgB,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,SAAS,CAAA;IACvE,kBAAkB,CAAC,EAAE,kBAAkB,CAAC,IAAI,GAAG,SAAS,CAAA;IACxD,QAAQ,CAAC,EAAE,UAAU,GAAG,QAAQ,GAAG,SAAS,CAAA;IAC5C,KAAK,CAAC,EAAE,WAAW,GAAG,SAAS,CAAA;IAC/B,UAAU,CAAC,EAAE,SAAS,iBAAiB,CAAC,UAAU,EAAE,GAAG,SAAS,CAAA;IAChE,WAAW,CAAC,EAAE,KAAK,GAAG,SAAS,CAAA;IAC/B,UAAU,CAAC,EAAE,KAAK,GAAG,SAAS,CAAA;CAC/B,CAAA;AAEH,MAAM,MAAM,uBAAuB,GAAG,KAAK,CACzC,4BAA4B,GAAG,4BAA4B,CAC5D,CAAA;AAED,MAAM,MAAM,4BAA4B,CACtC,QAAQ,GAAG,MAAM,EACjB,KAAK,GAAG,MAAM,IACZ,2BAA2B,CAAC,QAAQ,EAAE,KAAK,CAAC,GAC9C,YAAY,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,GAAG;IACzC,UAAU,CAAC,EAAE,UAAU,GAAG,SAAS,CAAA;IACnC,KAAK,EAAE,SAAS,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAA;IACxC,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAAA;IACvC,iBAAiB,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,SAAS,CAAA;IACrD,gBAAgB,CAAC,EAAE,gBAAgB,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,SAAS,CAAA;IACvE,QAAQ,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAA;IAC/B,KAAK,CAAC,EAAE,WAAW,GAAG,SAAS,CAAA;IAC/B,SAAS,CAAC,EAAE,iBAAiB,CAAC,iBAAiB,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,SAAS,CAAA;IAC5E,WAAW,CAAC,EAAE,KAAK,GAAG,SAAS,CAAA;IAC/B,UAAU,CAAC,EAAE,KAAK,GAAG,SAAS,CAAA;IAC9B,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CAC3B,GAAG,CACA;IACE,IAAI,EAAE,OAAO,CAAA;IACb,kBAAkB,CAAC,EAAE,kBAAkB,CAAC,IAAI,GAAG,SAAS,CAAA;IACxD,UAAU,CAAC,EAAE,SAAS,iBAAiB,CAAC,UAAU,EAAE,GAAG,SAAS,CAAA;CACjE,GACD;IACE,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAC1B,kBAAkB,CAAC,EAAE,SAAS,CAAA;IAC9B,UAAU,CAAC,EAAE,SAAS,iBAAiB,CAAC,UAAU,EAAE,GAAG,SAAS,CAAA;CACjE,GACD;IACE,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAC1B,kBAAkB,CAAC,EAAE,kBAAkB,CAAC,IAAI,GAAG,SAAS,CAAA;IACxD,UAAU,CAAC,EAAE,SAAS,CAAA;CACvB,CACJ,CAAA;AAEH,MAAM,MAAM,qBAAqB,CAC/B,IAAI,SAAS,eAAe,GAAG,eAAe,IAC5C,0BAA0B,CAAC,IAAI,CAAC,GAAG,0BAA0B,CAAA;AAEjE,MAAM,MAAM,0BAA0B,GAAG,OAAO,MAAM,EAAE,CAAA;AACxD,MAAM,MAAM,6BAA6B,GAAG,OAAO,MAAM,EAAE,CAAA;AAE3D,MAAM,MAAM,eAAe,GAAG,oBAAoB,GAAG,OAAO,CAAA;AAE5D,wBAAgB,OAAO,CACrB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACnC,WAAW,CAAC,MAAM,CAAC,CAwBrB;AAED,wBAAgB,OAAO,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,WAO3D;AAED,wBAAgB,WAAW,CACzB,KAAK,CAAC,UAAU,SAAS,4BAA4B,EACrD,qBAAqB,EAAE,UAAU,GAAG,WAAW,CAAC,WAAW,CAAC,UAAU,CAAC,CAKxE;AAED,MAAM,CAAC,OAAO,WAAW,WAAW,CAAC;IACnC,KAAY,WAAW,CACrB,UAAU,SACR,4BAA4B,GAAG,4BAA4B,IAC3D,UAAU,SAAS,0BAA0B,GAC7C,4BAA4B,GAC5B,UAAU,SAAS,6BAA6B,GAC9C,4BAA4B,GAC5B,0BAA0B,CAAC,UAAU,CAAC,CAAA;CAC7C;AAED,wBAAsB,SAAS,CAC7B,WAAW,EAAE,uBAAuB,GAAG;IACrC,QAAQ,CAAC,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,CAAA;IACrC,IAAI,CAAC,EAAE,YAAY,CAAC,OAAO,GAAG,SAAS,CAAA;CACxC,EACD,SAAS,CAAC,EACN,KAAK,CAAC,iBAAiB,CAAC,iBAAiB,GAAG,cAAc,CAAC,GAC3D,SAAS,0BAyBd;AAgMD,OAAO;AACL,kBAAkB;AAClB,gBAAgB,IAAI,kBAAkB;AACtC,kBAAkB;AAClB,iBAAiB,IAAI,mBAAmB;AACxC,kBAAkB;AAClB,eAAe,IAAI,iBAAiB,GACrC,MAAM,UAAU,CAAA"}
@@ -1,7 +1,7 @@
1
1
  import type { LocalAccount } from '../accounts/types.js';
2
2
  import { type Transport } from '../clients/transports/createTransport.js';
3
3
  import { type HttpTransport, type HttpTransportConfig } from '../clients/transports/http.js';
4
- import * as Multisig from './Multisig.js';
4
+ import type * as Relay_ from './Relay.js';
5
5
  import type { Store } from './Store.js';
6
6
  export type HttpConfig = Omit<HttpTransportConfig, 'batch' | 'raw' | 'rpcSchema'> & {
7
7
  /** Store for reading Zone authorization tokens. Defaults to sessionStorage (web) or memory (server). */
@@ -33,33 +33,6 @@ export type FeePayer = Transport<typeof withFeePayer.type>;
33
33
  export type Relay = Transport<typeof withRelay.type, {
34
34
  multisig: true;
35
35
  }>;
36
- /**
37
- * Wraps a transport with native multisig request handling.
38
- *
39
- * @example
40
- * ```ts
41
- * import { http, Store, withMultisig } from 'viem/tempo'
42
- *
43
- * const transport = withMultisig(http(), {
44
- * store: Store.memory(),
45
- * })
46
- * ```
47
- *
48
- * @param transport - Transport to wrap.
49
- * @param parameters - Multisig request handler parameters.
50
- * @returns The wrapped transport.
51
- * @experimental
52
- */
53
- export declare function withMultisig<transport extends Transport>(transport: transport, parameters: withMultisig.Parameters): withMultisig.ReturnValue<transport>;
54
- export declare namespace withMultisig {
55
- /** Multisig transport parameters. */
56
- type Parameters = Multisig.handleRequest.Parameters;
57
- /** Multisig transport return type. */
58
- type ReturnValue<transport extends Transport = Transport> = transport extends Transport<infer type, infer rpcAttributes, infer eip1193RequestFn> ? Transport<type, rpcAttributes & {
59
- /** Whether the transport coordinates native multisig approvals. */
60
- multisig: true;
61
- }, eip1193RequestFn> : never;
62
- }
63
36
  /**
64
37
  * Creates a relay transport that routes requests between
65
38
  * the default transport or the relay transport.
@@ -73,15 +46,28 @@ export declare namespace withMultisig {
73
46
  * - `'sign-only'`: Relay co-signs the transaction and returns it to the client transport, which then broadcasts it via the default transport
74
47
  * - `'sign-and-broadcast'`: Relay co-signs and broadcasts the transaction directly
75
48
  *
49
+ * Local plugin options wrap the default transport directly, preserving its attributes.
50
+ * Local mode enables fee sponsorship only when a `Relay.feePayer` plugin is configured.
51
+ *
76
52
  * @param defaultTransport - The default transport to use.
77
- * @param relayTransport - The relay transport to use.
53
+ * @param relayTransport - The remote relay transport or local plugin options.
78
54
  * @param parameters - Configuration parameters.
79
55
  * @returns A relay transport.
80
56
  */
57
+ export declare function withRelay<transport extends Transport, const plugins extends readonly Relay_.Plugin[] = readonly []>(defaultTransport: transport, options: withRelay.LocalOptions<plugins>): withRelay.LocalReturnValue<transport, plugins>;
81
58
  export declare function withRelay(defaultTransport: Transport, relayTransport: Transport, parameters?: withRelay.Parameters): withRelay.ReturnValue;
82
59
  export declare namespace withRelay {
83
60
  const type = "relay";
84
61
  type Parameters = RelayProxyParameters;
62
+ /** Plugins applied directly to the default transport. */
63
+ type LocalOptions<plugins extends readonly Relay_.Plugin[] = readonly Relay_.Plugin[]> = Pick<Relay_.handleRequest.Options, 'resolveTokens'> & {
64
+ /** Ordered relay plugins. Defaults to an empty list. */
65
+ plugins?: plugins | undefined;
66
+ };
67
+ /** Wrapped transport preserving its attributes and RPC request schema. */
68
+ type LocalReturnValue<transport extends Transport, plugins extends readonly Relay_.Plugin[] = readonly []> = transport extends Transport<infer type, infer attributes, infer request> ? Transport<type, attributes & (Extract<plugins[number], Relay_.multisig.ReturnType> extends never ? {} : {
69
+ multisig: true;
70
+ }), request> : never;
85
71
  type ReturnValue = Relay;
86
72
  }
87
73
  /** @deprecated Use `withRelay` instead. */
@@ -1 +1 @@
1
- {"version":3,"file":"Transport.d.ts","sourceRoot":"","sources":["../../tempo/Transport.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAKxD,OAAO,EAEL,KAAK,SAAS,EACf,MAAM,0CAA0C,CAAA;AACjD,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,mBAAmB,EAEzB,MAAM,+BAA+B,CAAA;AAOtC,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AACzC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAIvC,MAAM,MAAM,UAAU,GAAG,IAAI,CAC3B,mBAAmB,EACnB,OAAO,GAAG,KAAK,GAAG,WAAW,CAC9B,GAAG;IACF,wGAAwG;IACxG,KAAK,CAAC,EAAE,KAAK,GAAG,SAAS,CAAA;CAC1B,CAAA;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,IAAI,CAClB,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,EACxB,MAAM,GAAE,UAAe,GACtB,aAAa,CAoBf;AAED,KAAK,oBAAoB,GAAG;IAC1B,gGAAgG;IAChG,MAAM,CAAC,EAAE,WAAW,GAAG,oBAAoB,GAAG,SAAS,CAAA;CACxD,CAAA;AAED,MAAM,MAAM,QAAQ,GAAG,SAAS,CAAC,OAAO,YAAY,CAAC,IAAI,CAAC,CAAA;AAC1D,MAAM,MAAM,KAAK,GAAG,SAAS,CAAC,OAAO,SAAS,CAAC,IAAI,EAAE;IAAE,QAAQ,EAAE,IAAI,CAAA;CAAE,CAAC,CAAA;AAExE;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,YAAY,CAAC,SAAS,SAAS,SAAS,EACtD,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,YAAY,CAAC,UAAU,GAClC,YAAY,CAAC,WAAW,CAAC,SAAS,CAAC,CAarC;AAED,MAAM,CAAC,OAAO,WAAW,YAAY,CAAC;IACpC,qCAAqC;IACrC,KAAY,UAAU,GAAG,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAA;IAE1D,sCAAsC;IACtC,KAAY,WAAW,CAAC,SAAS,SAAS,SAAS,GAAG,SAAS,IAC7D,SAAS,SAAS,SAAS,CACzB,MAAM,IAAI,EACV,MAAM,aAAa,EACnB,MAAM,gBAAgB,CACvB,GACG,SAAS,CACP,IAAI,EACJ,aAAa,GAAG;QACd,mEAAmE;QACnE,QAAQ,EAAE,IAAI,CAAA;KACf,EACD,gBAAgB,CACjB,GACD,KAAK,CAAA;CACZ;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,SAAS,CACvB,gBAAgB,EAAE,SAAS,EAC3B,cAAc,EAAE,SAAS,EACzB,UAAU,CAAC,EAAE,SAAS,CAAC,UAAU,GAChC,SAAS,CAAC,WAAW,CA8GvB;AAED,MAAM,CAAC,OAAO,WAAW,SAAS,CAAC;IAC1B,MAAM,IAAI,UAAU,CAAA;IAE3B,KAAY,UAAU,GAAG,oBAAoB,CAAA;IAE7C,KAAY,WAAW,GAAG,KAAK,CAAA;CAChC;AAED,2CAA2C;AAC3C,wBAAgB,YAAY,CAC1B,gBAAgB,EAAE,SAAS,EAC3B,cAAc,EAAE,SAAS,EACzB,UAAU,CAAC,EAAE,YAAY,CAAC,UAAU,GACnC,YAAY,CAAC,WAAW,CAiE1B;AAED,MAAM,CAAC,OAAO,WAAW,YAAY,CAAC;IAC7B,MAAM,IAAI,aAAa,CAAA;IAE9B,KAAY,UAAU,GAAG;QACvB,0FAA0F;QAC1F,MAAM,CAAC,EAAE,WAAW,GAAG,oBAAoB,GAAG,SAAS,CAAA;KACxD,CAAA;IAED,KAAY,WAAW,GAAG,QAAQ,CAAA;CACnC;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,qBAAqB,CAAC,UAAU,GACxC,SAAS,CAsFX;AAED,MAAM,CAAC,OAAO,WAAW,qBAAqB,CAAC;IAC7C,KAAY,UAAU,GAAG;QACvB,OAAO,EAAE,YAAY,CAAA;KACtB,CAAA;CACF"}
1
+ {"version":3,"file":"Transport.d.ts","sourceRoot":"","sources":["../../tempo/Transport.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAKxD,OAAO,EAEL,KAAK,SAAS,EACf,MAAM,0CAA0C,CAAA;AACjD,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,mBAAmB,EAEzB,MAAM,+BAA+B,CAAA;AAStC,OAAO,KAAK,KAAK,MAAM,MAAM,YAAY,CAAA;AACzC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAIvC,MAAM,MAAM,UAAU,GAAG,IAAI,CAC3B,mBAAmB,EACnB,OAAO,GAAG,KAAK,GAAG,WAAW,CAC9B,GAAG;IACF,wGAAwG;IACxG,KAAK,CAAC,EAAE,KAAK,GAAG,SAAS,CAAA;CAC1B,CAAA;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,IAAI,CAClB,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,EACxB,MAAM,GAAE,UAAe,GACtB,aAAa,CAoBf;AAED,KAAK,oBAAoB,GAAG;IAC1B,gGAAgG;IAChG,MAAM,CAAC,EAAE,WAAW,GAAG,oBAAoB,GAAG,SAAS,CAAA;CACxD,CAAA;AAED,MAAM,MAAM,QAAQ,GAAG,SAAS,CAAC,OAAO,YAAY,CAAC,IAAI,CAAC,CAAA;AAC1D,MAAM,MAAM,KAAK,GAAG,SAAS,CAAC,OAAO,SAAS,CAAC,IAAI,EAAE;IAAE,QAAQ,EAAE,IAAI,CAAA;CAAE,CAAC,CAAA;AAExE;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,SAAS,CACvB,SAAS,SAAS,SAAS,EAC3B,KAAK,CAAC,OAAO,SAAS,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,SAAS,EAAE,EAE5D,gBAAgB,EAAE,SAAS,EAC3B,OAAO,EAAE,SAAS,CAAC,YAAY,CAAC,OAAO,CAAC,GACvC,SAAS,CAAC,gBAAgB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;AACjD,wBAAgB,SAAS,CACvB,gBAAgB,EAAE,SAAS,EAC3B,cAAc,EAAE,SAAS,EACzB,UAAU,CAAC,EAAE,SAAS,CAAC,UAAU,GAChC,SAAS,CAAC,WAAW,CAAA;AA+IxB,MAAM,CAAC,OAAO,WAAW,SAAS,CAAC;IAC1B,MAAM,IAAI,UAAU,CAAA;IAE3B,KAAY,UAAU,GAAG,oBAAoB,CAAA;IAE7C,yDAAyD;IACzD,KAAY,YAAY,CACtB,OAAO,SAAS,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,SAAS,MAAM,CAAC,MAAM,EAAE,IACjE,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE,eAAe,CAAC,GAAG;QACxD,wDAAwD;QACxD,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;KAC9B,CAAA;IAED,0EAA0E;IAC1E,KAAY,gBAAgB,CAC1B,SAAS,SAAS,SAAS,EAC3B,OAAO,SAAS,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,SAAS,EAAE,IACpD,SAAS,SAAS,SAAS,CAAC,MAAM,IAAI,EAAE,MAAM,UAAU,EAAE,MAAM,OAAO,CAAC,GACxE,SAAS,CACP,IAAI,EACJ,UAAU,GACR,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,SAAS,KAAK,GAC/D,EAAE,GACF;QAAE,QAAQ,EAAE,IAAI,CAAA;KAAE,CAAC,EACzB,OAAO,CACR,GACD,KAAK,CAAA;IAET,KAAY,WAAW,GAAG,KAAK,CAAA;CAChC;AAED,2CAA2C;AAC3C,wBAAgB,YAAY,CAC1B,gBAAgB,EAAE,SAAS,EAC3B,cAAc,EAAE,SAAS,EACzB,UAAU,CAAC,EAAE,YAAY,CAAC,UAAU,GACnC,YAAY,CAAC,WAAW,CAiE1B;AAED,MAAM,CAAC,OAAO,WAAW,YAAY,CAAC;IAC7B,MAAM,IAAI,aAAa,CAAA;IAE9B,KAAY,UAAU,GAAG;QACvB,0FAA0F;QAC1F,MAAM,CAAC,EAAE,WAAW,GAAG,oBAAoB,GAAG,SAAS,CAAA;KACxD,CAAA;IAED,KAAY,WAAW,GAAG,QAAQ,CAAA;CACnC;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,qBAAqB,CAAC,UAAU,GACxC,SAAS,CAsFX;AAED,MAAM,CAAC,OAAO,WAAW,qBAAqB,CAAC;IAC7C,KAAY,UAAU,GAAG;QACvB,OAAO,EAAE,YAAY,CAAA;KACtB,CAAA;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"chainConfig.d.ts","sourceRoot":"","sources":["../../tempo/chainConfig.ts"],"names":[],"mappings":"AAEA,OAAO,EAKL,KAAK,OAAO,EACb,MAAM,UAAU,CAAA;AAajB,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAA;AAK1F,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAE7C,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAQ/C,eAAO,MAAM,WAAW;;;mBAGT,OAAO,CAAC,gBAAgB,GAAG,SAAS;mBACpC,QAAQ,GAAG,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoW0B,CAAA;AAE7D,MAAM,MAAM,WAAW,GAAG,OAAO,WAAW,CAAA"}
1
+ {"version":3,"file":"chainConfig.d.ts","sourceRoot":"","sources":["../../tempo/chainConfig.ts"],"names":[],"mappings":"AAEA,OAAO,EAKL,KAAK,OAAO,EACb,MAAM,UAAU,CAAA;AAajB,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAA;AAK1F,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAE7C,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAQ/C,eAAO,MAAM,WAAW;;;mBAGT,OAAO,CAAC,gBAAgB,GAAG,SAAS;mBACpC,QAAQ,GAAG,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwW0B,CAAA;AAE7D,MAAM,MAAM,WAAW,GAAG,OAAO,WAAW,CAAA"}
@@ -24,14 +24,19 @@ export * as Capabilities from './Capabilities.js';
24
24
  export * as Chain from './Chain.js';
25
25
  export { type Client, type ClientConfig, type CreateClientErrorType, createClient, } from './Client.js';
26
26
  export { type Decorator as TempoActions, decorator as tempoActions, } from './Decorator.js';
27
+ /** Decodes Tempo precompile reverts into readable execution errors. */
28
+ export * as ExecutionError from './ExecutionError.js';
27
29
  export * as Expiry from './Expiry.js';
28
30
  export * from './errors.js';
29
31
  export * as Formatters from './Formatters.js';
30
32
  export * as Hardfork from './Hardfork.js';
31
33
  export * as KeyAuthorizationManager from './KeyAuthorizationManager.js';
32
- /** @experimental */
33
- export * as Multisig from './Multisig.js';
34
34
  export * as P256 from './P256.js';
35
+ /**
36
+ * Composable relay request handlers alongside the Tempo (Execution) RPC.
37
+ * @experimental
38
+ */
39
+ export * as Relay from './Relay.js';
35
40
  /** @experimental */
36
41
  export * as Scopes from './Scopes.js';
37
42
  /** @experimental */
@@ -67,7 +72,7 @@ TransactionTempo as z_TransactionTempo,
67
72
  TransactionType as z_TransactionType, } from './Transaction.js';
68
73
  export * as Transaction from './Transaction.js';
69
74
  export * as Transport from './Transport.js';
70
- export { type HttpConfig, http, walletNamespaceCompat, withFeePayer, withMultisig, withRelay, } from './Transport.js';
75
+ export { type HttpConfig, http, walletNamespaceCompat, withFeePayer, withRelay, } from './Transport.js';
71
76
  export * as WebAuthnP256 from './WebAuthnP256.js';
72
77
  export * as WebCryptoP256 from './WebCryptoP256.js';
73
78
  export * as Zone from './Zone.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../tempo/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../tempo/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import type * as Store_ from '../../Store.js';
2
+ export type Store = Store_.Store;
3
+ export declare function scoped(store: Store | undefined): Store | undefined;
4
+ export declare function memoize<value>(fetch: () => Promise<value>, options: {
5
+ key: string;
6
+ store: Store;
7
+ ttl: number;
8
+ }): Promise<value>;
9
+ //# sourceMappingURL=cache.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../../../tempo/internal/relay/cache.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,MAAM,gBAAgB,CAAA;AAE7C,MAAM,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAA;AAMhC,wBAAgB,MAAM,CAAC,KAAK,EAAE,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,CAOlE;AAED,wBAAsB,OAAO,CAAC,KAAK,EACjC,KAAK,EAAE,MAAM,OAAO,CAAC,KAAK,CAAC,EAC3B,OAAO,EAAE;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,KAAK,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GAClD,OAAO,CAAC,KAAK,CAAC,CA4DhB"}
@@ -0,0 +1,4 @@
1
+ import type * as Relay from '../../Relay.js';
2
+ /** Bounds the complete fill, including callbacks that do not observe abort signals. */
3
+ export declare function run(handler: Relay.handleRequest.Handler, request: Relay.handleRequest.Request, options: Relay.handleRequest.RequestOptions, config: Relay.handleRequest.Options): Promise<unknown>;
4
+ //# sourceMappingURL=deadline.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deadline.d.ts","sourceRoot":"","sources":["../../../../tempo/internal/relay/deadline.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,KAAK,MAAM,gBAAgB,CAAA;AAE5C,uFAAuF;AACvF,wBAAsB,GAAG,CACvB,OAAO,EAAE,KAAK,CAAC,aAAa,CAAC,OAAO,EACpC,OAAO,EAAE,KAAK,CAAC,aAAa,CAAC,OAAO,EACpC,OAAO,EAAE,KAAK,CAAC,aAAa,CAAC,cAAc,EAC3C,MAAM,EAAE,KAAK,CAAC,aAAa,CAAC,OAAO,oBAoCpC"}
@@ -0,0 +1,47 @@
1
+ import type { Client } from '../../../clients/createClient.js';
2
+ import * as ExecutionError from '../../ExecutionError.js';
3
+ import type * as Store from './cache.js';
4
+ /** Distinguishes execution reverts from transport and plugin failures. */
5
+ export declare function isExecutionError(error: unknown): error is Error;
6
+ export declare function formatError(error: Error, parameters: Record<string, unknown>, client: Client, simulateStore?: Store.Store): Promise<{
7
+ tx: {
8
+ from: unknown;
9
+ to: {} | null;
10
+ gas: string;
11
+ nonce: string;
12
+ value: string;
13
+ maxFeePerGas: string;
14
+ maxPriorityFeePerGas: string;
15
+ };
16
+ capabilities: {
17
+ virtualAddresses?: Record<`0x${string}`, `0x${string}` | null>;
18
+ balanceDiffs: {
19
+ [x: string]: import("../../Capabilities.js").BalanceDiff[];
20
+ } | undefined;
21
+ error: ExecutionError.Rpc;
22
+ insufficientFunds: {
23
+ amount: `0x${string}`;
24
+ decimals: number;
25
+ formatted: string;
26
+ token: `0x${string}`;
27
+ symbol: string;
28
+ } | undefined;
29
+ sponsored: boolean;
30
+ };
31
+ } | {
32
+ tx: {
33
+ from: unknown;
34
+ to: {} | null;
35
+ gas: string;
36
+ nonce: string;
37
+ value: string;
38
+ maxFeePerGas: string;
39
+ maxPriorityFeePerGas: string;
40
+ };
41
+ capabilities: {
42
+ virtualAddresses?: Record<`0x${string}`, `0x${string}` | null>;
43
+ error: ExecutionError.Rpc;
44
+ sponsored: boolean;
45
+ };
46
+ }>;
47
+ //# sourceMappingURL=error.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../../../tempo/internal/relay/error.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAA;AAG9D,OAAO,KAAK,cAAc,MAAM,yBAAyB,CAAA;AACzD,OAAO,KAAK,KAAK,KAAK,MAAM,YAAY,CAAA;AAMxC,0EAA0E;AAC1E,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,KAAK,CA0B/D;AAED,wBAAsB,WAAW,CAC/B,KAAK,EAAE,KAAK,EACZ,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnC,MAAM,EAAE,MAAM,EACd,aAAa,CAAC,EAAE,KAAK,CAAC,KAAK;;;;;;;;;;;;;;;;;oBAsDoB,KAAK,MAAM,EAAE;;;;;;;;;;;;;;;;;;;;;;;GA4B7D"}