@symmio/trading-core 3.0.0 → 3.1.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 (650) hide show
  1. package/dist/core/chains/types.d.ts +197 -0
  2. package/dist/core/chains/types.d.ts.map +1 -1
  3. package/dist/core/chains/types.js.map +1 -1
  4. package/dist/core/config/merge-chain-config.d.ts.map +1 -1
  5. package/dist/core/config/merge-chain-config.js +49 -19
  6. package/dist/core/config/merge-chain-config.js.map +1 -1
  7. package/dist/gasless/abortable-sleep.d.ts +17 -0
  8. package/dist/gasless/abortable-sleep.d.ts.map +1 -0
  9. package/dist/gasless/abortable-sleep.js +21 -0
  10. package/dist/gasless/abortable-sleep.js.map +1 -0
  11. package/dist/gasless/assert-gateway-coherence.d.ts +20 -0
  12. package/dist/gasless/assert-gateway-coherence.d.ts.map +1 -0
  13. package/dist/gasless/assert-gateway-coherence.js +26 -0
  14. package/dist/gasless/assert-gateway-coherence.js.map +1 -0
  15. package/dist/gasless/batch/calls.d.ts +121 -0
  16. package/dist/gasless/batch/calls.d.ts.map +1 -0
  17. package/dist/gasless/batch/calls.js +36 -0
  18. package/dist/gasless/batch/calls.js.map +1 -0
  19. package/dist/gasless/batch/index.d.ts +2 -0
  20. package/dist/gasless/batch/index.d.ts.map +1 -0
  21. package/dist/gasless/batch/resolve-gasless-batch.d.ts +118 -0
  22. package/dist/gasless/batch/resolve-gasless-batch.d.ts.map +1 -0
  23. package/dist/gasless/batch/resolve-gasless-batch.js +89 -0
  24. package/dist/gasless/batch/resolve-gasless-batch.js.map +1 -0
  25. package/dist/gasless/classify-gasless-failure.d.ts +99 -0
  26. package/dist/gasless/classify-gasless-failure.d.ts.map +1 -0
  27. package/dist/gasless/classify-gasless-failure.js +60 -0
  28. package/dist/gasless/classify-gasless-failure.js.map +1 -0
  29. package/dist/gasless/confirm-gasless-request/confirm-gasless-request.d.ts +121 -0
  30. package/dist/gasless/confirm-gasless-request/confirm-gasless-request.d.ts.map +1 -0
  31. package/dist/gasless/confirm-gasless-request/confirm-gasless-request.js +73 -0
  32. package/dist/gasless/confirm-gasless-request/confirm-gasless-request.js.map +1 -0
  33. package/dist/gasless/confirm-gasless-request/index.d.ts +2 -0
  34. package/dist/gasless/confirm-gasless-request/index.d.ts.map +1 -0
  35. package/dist/gasless/constants.d.ts +24 -0
  36. package/dist/gasless/constants.d.ts.map +1 -0
  37. package/dist/gasless/constants.js +6 -0
  38. package/dist/gasless/constants.js.map +1 -0
  39. package/dist/gasless/delegation-preflight.d.ts +39 -0
  40. package/dist/gasless/delegation-preflight.d.ts.map +1 -0
  41. package/dist/gasless/delegation-preflight.js +33 -0
  42. package/dist/gasless/delegation-preflight.js.map +1 -0
  43. package/dist/gasless/dispatch/maybe-relay-as-gasless.d.ts +73 -0
  44. package/dist/gasless/dispatch/maybe-relay-as-gasless.d.ts.map +1 -0
  45. package/dist/gasless/dispatch/maybe-relay-as-gasless.js +189 -0
  46. package/dist/gasless/dispatch/maybe-relay-as-gasless.js.map +1 -0
  47. package/dist/gasless/eip712.d.ts +79 -0
  48. package/dist/gasless/eip712.d.ts.map +1 -0
  49. package/dist/gasless/eip712.js +60 -0
  50. package/dist/gasless/eip712.js.map +1 -0
  51. package/dist/gasless/errors.d.ts +132 -0
  52. package/dist/gasless/errors.d.ts.map +1 -0
  53. package/dist/gasless/errors.js +110 -0
  54. package/dist/gasless/errors.js.map +1 -0
  55. package/dist/gasless/events.d.ts +37 -0
  56. package/dist/gasless/events.d.ts.map +1 -0
  57. package/dist/gasless/events.js +34 -0
  58. package/dist/gasless/events.js.map +1 -0
  59. package/dist/gasless/fallback.d.ts +58 -0
  60. package/dist/gasless/fallback.d.ts.map +1 -0
  61. package/dist/gasless/fallback.js +34 -0
  62. package/dist/gasless/fallback.js.map +1 -0
  63. package/dist/gasless/format-gasless-operation.d.ts +37 -0
  64. package/dist/gasless/format-gasless-operation.d.ts.map +1 -0
  65. package/dist/gasless/format-gasless-operation.js +33 -0
  66. package/dist/gasless/format-gasless-operation.js.map +1 -0
  67. package/dist/gasless/gasless-url.d.ts +82 -0
  68. package/dist/gasless/gasless-url.d.ts.map +1 -0
  69. package/dist/gasless/gasless-url.js +70 -0
  70. package/dist/gasless/gasless-url.js.map +1 -0
  71. package/dist/gasless/gasless-wallet-execute/calls.d.ts +73 -0
  72. package/dist/gasless/gasless-wallet-execute/calls.d.ts.map +1 -0
  73. package/dist/gasless/gasless-wallet-execute/calls.js +24 -0
  74. package/dist/gasless/gasless-wallet-execute/calls.js.map +1 -0
  75. package/dist/gasless/gasless-wallet-execute/gasless-wallet-execute.d.ts +148 -0
  76. package/dist/gasless/gasless-wallet-execute/gasless-wallet-execute.d.ts.map +1 -0
  77. package/dist/gasless/gasless-wallet-execute/gasless-wallet-execute.js +120 -0
  78. package/dist/gasless/gasless-wallet-execute/gasless-wallet-execute.js.map +1 -0
  79. package/dist/gasless/gasless-wallet-execute/index.d.ts +5 -0
  80. package/dist/gasless/gasless-wallet-execute/index.d.ts.map +1 -0
  81. package/dist/gasless/gasless-wallet-execute/query.d.ts +18 -0
  82. package/dist/gasless/gasless-wallet-execute/query.d.ts.map +1 -0
  83. package/dist/gasless/gasless-wallet-execute/query.js +12 -0
  84. package/dist/gasless/gasless-wallet-execute/query.js.map +1 -0
  85. package/dist/gasless/gasless-wallet-execute/selectors.d.ts +38 -0
  86. package/dist/gasless/gasless-wallet-execute/selectors.d.ts.map +1 -0
  87. package/dist/gasless/gasless-wallet-execute/selectors.js +15 -0
  88. package/dist/gasless/gasless-wallet-execute/selectors.js.map +1 -0
  89. package/dist/gasless/get-gasless-batch-fee-quote/get-gasless-batch-fee-quote.d.ts +72 -0
  90. package/dist/gasless/get-gasless-batch-fee-quote/get-gasless-batch-fee-quote.d.ts.map +1 -0
  91. package/dist/gasless/get-gasless-batch-fee-quote/get-gasless-batch-fee-quote.js +42 -0
  92. package/dist/gasless/get-gasless-batch-fee-quote/get-gasless-batch-fee-quote.js.map +1 -0
  93. package/dist/gasless/get-gasless-batch-fee-quote/index.d.ts +3 -0
  94. package/dist/gasless/get-gasless-batch-fee-quote/index.d.ts.map +1 -0
  95. package/dist/gasless/get-gasless-batch-fee-quote/query.d.ts +47 -0
  96. package/dist/gasless/get-gasless-batch-fee-quote/query.d.ts.map +1 -0
  97. package/dist/gasless/get-gasless-batch-fee-quote/query.js +50 -0
  98. package/dist/gasless/get-gasless-batch-fee-quote/query.js.map +1 -0
  99. package/dist/gasless/get-gasless-deposit-policy/get-gasless-deposit-policy.d.ts +80 -0
  100. package/dist/gasless/get-gasless-deposit-policy/get-gasless-deposit-policy.d.ts.map +1 -0
  101. package/dist/gasless/get-gasless-deposit-policy/get-gasless-deposit-policy.js +61 -0
  102. package/dist/gasless/get-gasless-deposit-policy/get-gasless-deposit-policy.js.map +1 -0
  103. package/dist/gasless/get-gasless-deposit-policy/index.d.ts +3 -0
  104. package/dist/gasless/get-gasless-deposit-policy/index.d.ts.map +1 -0
  105. package/dist/gasless/get-gasless-deposit-policy/query.d.ts +51 -0
  106. package/dist/gasless/get-gasless-deposit-policy/query.d.ts.map +1 -0
  107. package/dist/gasless/get-gasless-deposit-policy/query.js +25 -0
  108. package/dist/gasless/get-gasless-deposit-policy/query.js.map +1 -0
  109. package/dist/gasless/get-gasless-fee-quote/encode-relay-batch-call-data.d.ts +27 -0
  110. package/dist/gasless/get-gasless-fee-quote/encode-relay-batch-call-data.d.ts.map +1 -0
  111. package/dist/gasless/get-gasless-fee-quote/encode-relay-batch-call-data.js +22 -0
  112. package/dist/gasless/get-gasless-fee-quote/encode-relay-batch-call-data.js.map +1 -0
  113. package/dist/gasless/get-gasless-fee-quote/fee-quote-errors.d.ts +61 -0
  114. package/dist/gasless/get-gasless-fee-quote/fee-quote-errors.d.ts.map +1 -0
  115. package/dist/gasless/get-gasless-fee-quote/fee-quote-errors.js +59 -0
  116. package/dist/gasless/get-gasless-fee-quote/fee-quote-errors.js.map +1 -0
  117. package/dist/gasless/get-gasless-fee-quote/get-gasless-fee-quote.d.ts +79 -0
  118. package/dist/gasless/get-gasless-fee-quote/get-gasless-fee-quote.d.ts.map +1 -0
  119. package/dist/gasless/get-gasless-fee-quote/get-gasless-fee-quote.js +53 -0
  120. package/dist/gasless/get-gasless-fee-quote/get-gasless-fee-quote.js.map +1 -0
  121. package/dist/gasless/get-gasless-fee-quote/index.d.ts +4 -0
  122. package/dist/gasless/get-gasless-fee-quote/index.d.ts.map +1 -0
  123. package/dist/gasless/get-gasless-fee-quote/query.d.ts +41 -0
  124. package/dist/gasless/get-gasless-fee-quote/query.d.ts.map +1 -0
  125. package/dist/gasless/get-gasless-fee-quote/query.js +31 -0
  126. package/dist/gasless/get-gasless-fee-quote/query.js.map +1 -0
  127. package/dist/gasless/get-gasless-request/get-gasless-request.d.ts +51 -0
  128. package/dist/gasless/get-gasless-request/get-gasless-request.d.ts.map +1 -0
  129. package/dist/gasless/get-gasless-request/get-gasless-request.js +15 -0
  130. package/dist/gasless/get-gasless-request/get-gasless-request.js.map +1 -0
  131. package/dist/gasless/get-gasless-request/index.d.ts +4 -0
  132. package/dist/gasless/get-gasless-request/index.d.ts.map +1 -0
  133. package/dist/gasless/get-gasless-request/query.d.ts +64 -0
  134. package/dist/gasless/get-gasless-request/query.d.ts.map +1 -0
  135. package/dist/gasless/get-gasless-request/query.js +42 -0
  136. package/dist/gasless/get-gasless-request/query.js.map +1 -0
  137. package/dist/gasless/get-gasless-request/to-gasless-request.d.ts +26 -0
  138. package/dist/gasless/get-gasless-request/to-gasless-request.d.ts.map +1 -0
  139. package/dist/gasless/get-gasless-request/to-gasless-request.js +62 -0
  140. package/dist/gasless/get-gasless-request/to-gasless-request.js.map +1 -0
  141. package/dist/gasless/get-gasless-request-transactions/get-gasless-request-transactions.d.ts +40 -0
  142. package/dist/gasless/get-gasless-request-transactions/get-gasless-request-transactions.d.ts.map +1 -0
  143. package/dist/gasless/get-gasless-request-transactions/get-gasless-request-transactions.js +15 -0
  144. package/dist/gasless/get-gasless-request-transactions/get-gasless-request-transactions.js.map +1 -0
  145. package/dist/gasless/get-gasless-request-transactions/index.d.ts +4 -0
  146. package/dist/gasless/get-gasless-request-transactions/index.d.ts.map +1 -0
  147. package/dist/gasless/get-gasless-request-transactions/query.d.ts +75 -0
  148. package/dist/gasless/get-gasless-request-transactions/query.d.ts.map +1 -0
  149. package/dist/gasless/get-gasless-request-transactions/query.js +37 -0
  150. package/dist/gasless/get-gasless-request-transactions/query.js.map +1 -0
  151. package/dist/gasless/get-gasless-request-transactions/to-gasless-request-transaction.d.ts +21 -0
  152. package/dist/gasless/get-gasless-request-transactions/to-gasless-request-transaction.d.ts.map +1 -0
  153. package/dist/gasless/get-gasless-request-transactions/to-gasless-request-transaction.js +27 -0
  154. package/dist/gasless/get-gasless-request-transactions/to-gasless-request-transaction.js.map +1 -0
  155. package/dist/gasless/get-gasless-wallet-address/get-gasless-wallet-address.d.ts +48 -0
  156. package/dist/gasless/get-gasless-wallet-address/get-gasless-wallet-address.d.ts.map +1 -0
  157. package/dist/gasless/get-gasless-wallet-address/get-gasless-wallet-address.js +20 -0
  158. package/dist/gasless/get-gasless-wallet-address/get-gasless-wallet-address.js.map +1 -0
  159. package/dist/gasless/get-gasless-wallet-address/index.d.ts +3 -0
  160. package/dist/gasless/get-gasless-wallet-address/index.d.ts.map +1 -0
  161. package/dist/gasless/get-gasless-wallet-address/query.d.ts +46 -0
  162. package/dist/gasless/get-gasless-wallet-address/query.d.ts.map +1 -0
  163. package/dist/gasless/get-gasless-wallet-address/query.js +25 -0
  164. package/dist/gasless/get-gasless-wallet-address/query.js.map +1 -0
  165. package/dist/gasless/get-gasless-wallet-creation-fee/get-gasless-wallet-creation-fee.d.ts +57 -0
  166. package/dist/gasless/get-gasless-wallet-creation-fee/get-gasless-wallet-creation-fee.d.ts.map +1 -0
  167. package/dist/gasless/get-gasless-wallet-creation-fee/get-gasless-wallet-creation-fee.js +17 -0
  168. package/dist/gasless/get-gasless-wallet-creation-fee/get-gasless-wallet-creation-fee.js.map +1 -0
  169. package/dist/gasless/get-gasless-wallet-creation-fee/index.d.ts +3 -0
  170. package/dist/gasless/get-gasless-wallet-creation-fee/index.d.ts.map +1 -0
  171. package/dist/gasless/get-gasless-wallet-creation-fee/query.d.ts +51 -0
  172. package/dist/gasless/get-gasless-wallet-creation-fee/query.d.ts.map +1 -0
  173. package/dist/gasless/get-gasless-wallet-creation-fee/query.js +25 -0
  174. package/dist/gasless/get-gasless-wallet-creation-fee/query.js.map +1 -0
  175. package/dist/gasless/get-gasless-wallet-nonce/get-gasless-wallet-nonce.d.ts +51 -0
  176. package/dist/gasless/get-gasless-wallet-nonce/get-gasless-wallet-nonce.d.ts.map +1 -0
  177. package/dist/gasless/get-gasless-wallet-nonce/get-gasless-wallet-nonce.js +21 -0
  178. package/dist/gasless/get-gasless-wallet-nonce/get-gasless-wallet-nonce.js.map +1 -0
  179. package/dist/gasless/get-gasless-wallet-nonce/index.d.ts +3 -0
  180. package/dist/gasless/get-gasless-wallet-nonce/index.d.ts.map +1 -0
  181. package/dist/gasless/get-gasless-wallet-nonce/query.d.ts +47 -0
  182. package/dist/gasless/get-gasless-wallet-nonce/query.d.ts.map +1 -0
  183. package/dist/gasless/get-gasless-wallet-nonce/query.js +25 -0
  184. package/dist/gasless/get-gasless-wallet-nonce/query.js.map +1 -0
  185. package/dist/gasless/get-session-key-selectors.d.ts +83 -0
  186. package/dist/gasless/get-session-key-selectors.d.ts.map +1 -0
  187. package/dist/gasless/get-session-key-selectors.js +25 -0
  188. package/dist/gasless/get-session-key-selectors.js.map +1 -0
  189. package/dist/gasless/http.d.ts +229 -0
  190. package/dist/gasless/http.d.ts.map +1 -0
  191. package/dist/gasless/http.js +165 -0
  192. package/dist/gasless/http.js.map +1 -0
  193. package/dist/gasless/index.d.ts +34 -0
  194. package/dist/gasless/index.d.ts.map +1 -0
  195. package/dist/gasless/is-newer-gasless-request.d.ts +32 -0
  196. package/dist/gasless/is-newer-gasless-request.d.ts.map +1 -0
  197. package/dist/gasless/is-newer-gasless-request.js +21 -0
  198. package/dist/gasless/is-newer-gasless-request.js.map +1 -0
  199. package/dist/gasless/nonce-lock.d.ts +180 -0
  200. package/dist/gasless/nonce-lock.d.ts.map +1 -0
  201. package/dist/gasless/nonce-lock.js +102 -0
  202. package/dist/gasless/nonce-lock.js.map +1 -0
  203. package/dist/gasless/observe-gasless-request.d.ts +65 -0
  204. package/dist/gasless/observe-gasless-request.d.ts.map +1 -0
  205. package/dist/gasless/observe-gasless-request.js +56 -0
  206. package/dist/gasless/observe-gasless-request.js.map +1 -0
  207. package/dist/gasless/query-poll-delay.d.ts +39 -0
  208. package/dist/gasless/query-poll-delay.d.ts.map +1 -0
  209. package/dist/gasless/query-poll-delay.js +14 -0
  210. package/dist/gasless/query-poll-delay.js.map +1 -0
  211. package/dist/gasless/relay-gasless-batch/index.d.ts +3 -0
  212. package/dist/gasless/relay-gasless-batch/index.d.ts.map +1 -0
  213. package/dist/gasless/relay-gasless-batch/query.d.ts +18 -0
  214. package/dist/gasless/relay-gasless-batch/query.d.ts.map +1 -0
  215. package/dist/gasless/relay-gasless-batch/query.js +12 -0
  216. package/dist/gasless/relay-gasless-batch/query.js.map +1 -0
  217. package/dist/gasless/relay-gasless-batch/relay-gasless-batch.d.ts +106 -0
  218. package/dist/gasless/relay-gasless-batch/relay-gasless-batch.d.ts.map +1 -0
  219. package/dist/gasless/relay-gasless-batch/relay-gasless-batch.js +145 -0
  220. package/dist/gasless/relay-gasless-batch/relay-gasless-batch.js.map +1 -0
  221. package/dist/gasless/relay-gasless-batch/sign-gasless-batch.d.ts +36 -0
  222. package/dist/gasless/relay-gasless-batch/sign-gasless-batch.d.ts.map +1 -0
  223. package/dist/gasless/relay-gasless-batch/sign-gasless-batch.js +24 -0
  224. package/dist/gasless/relay-gasless-batch/sign-gasless-batch.js.map +1 -0
  225. package/dist/gasless/relay-grant-delegation/index.d.ts +3 -0
  226. package/dist/gasless/relay-grant-delegation/index.d.ts.map +1 -0
  227. package/dist/gasless/relay-grant-delegation/query.d.ts +18 -0
  228. package/dist/gasless/relay-grant-delegation/query.d.ts.map +1 -0
  229. package/dist/gasless/relay-grant-delegation/query.js +12 -0
  230. package/dist/gasless/relay-grant-delegation/query.js.map +1 -0
  231. package/dist/gasless/relay-grant-delegation/relay-grant-delegation.d.ts +69 -0
  232. package/dist/gasless/relay-grant-delegation/relay-grant-delegation.d.ts.map +1 -0
  233. package/dist/gasless/relay-grant-delegation/relay-grant-delegation.js +57 -0
  234. package/dist/gasless/relay-grant-delegation/relay-grant-delegation.js.map +1 -0
  235. package/dist/gasless/relay-instant-operations/index.d.ts +3 -0
  236. package/dist/gasless/relay-instant-operations/index.d.ts.map +1 -0
  237. package/dist/gasless/relay-instant-operations/query.d.ts +18 -0
  238. package/dist/gasless/relay-instant-operations/query.d.ts.map +1 -0
  239. package/dist/gasless/relay-instant-operations/query.js +12 -0
  240. package/dist/gasless/relay-instant-operations/query.js.map +1 -0
  241. package/dist/gasless/relay-instant-operations/relay-instant-operations.d.ts +127 -0
  242. package/dist/gasless/relay-instant-operations/relay-instant-operations.d.ts.map +1 -0
  243. package/dist/gasless/relay-instant-operations/relay-instant-operations.js +42 -0
  244. package/dist/gasless/relay-instant-operations/relay-instant-operations.js.map +1 -0
  245. package/dist/gasless/relayable-writes.d.ts +163 -0
  246. package/dist/gasless/relayable-writes.d.ts.map +1 -0
  247. package/dist/gasless/relayable-writes.js +113 -0
  248. package/dist/gasless/relayable-writes.js.map +1 -0
  249. package/dist/gasless/resolve-gasless.d.ts +52 -0
  250. package/dist/gasless/resolve-gasless.d.ts.map +1 -0
  251. package/dist/gasless/resolve-gasless.js +19 -0
  252. package/dist/gasless/resolve-gasless.js.map +1 -0
  253. package/dist/gasless/resolve-wallet-identities.d.ts +30 -0
  254. package/dist/gasless/resolve-wallet-identities.d.ts.map +1 -0
  255. package/dist/gasless/resolve-wallet-identities.js +21 -0
  256. package/dist/gasless/resolve-wallet-identities.js.map +1 -0
  257. package/dist/gasless/resubmit-gasless-request/index.d.ts +3 -0
  258. package/dist/gasless/resubmit-gasless-request/index.d.ts.map +1 -0
  259. package/dist/gasless/resubmit-gasless-request/query.d.ts +19 -0
  260. package/dist/gasless/resubmit-gasless-request/query.d.ts.map +1 -0
  261. package/dist/gasless/resubmit-gasless-request/query.js +12 -0
  262. package/dist/gasless/resubmit-gasless-request/query.js.map +1 -0
  263. package/dist/gasless/resubmit-gasless-request/resubmit-gasless-request.d.ts +50 -0
  264. package/dist/gasless/resubmit-gasless-request/resubmit-gasless-request.d.ts.map +1 -0
  265. package/dist/gasless/resubmit-gasless-request/resubmit-gasless-request.js +52 -0
  266. package/dist/gasless/resubmit-gasless-request/resubmit-gasless-request.js.map +1 -0
  267. package/dist/gasless/settle-gasless-deposit-existing-account/index.d.ts +3 -0
  268. package/dist/gasless/settle-gasless-deposit-existing-account/index.d.ts.map +1 -0
  269. package/dist/gasless/settle-gasless-deposit-existing-account/query.d.ts +18 -0
  270. package/dist/gasless/settle-gasless-deposit-existing-account/query.d.ts.map +1 -0
  271. package/dist/gasless/settle-gasless-deposit-existing-account/query.js +12 -0
  272. package/dist/gasless/settle-gasless-deposit-existing-account/query.js.map +1 -0
  273. package/dist/gasless/settle-gasless-deposit-existing-account/settle-gasless-deposit-existing-account.d.ts +66 -0
  274. package/dist/gasless/settle-gasless-deposit-existing-account/settle-gasless-deposit-existing-account.d.ts.map +1 -0
  275. package/dist/gasless/settle-gasless-deposit-existing-account/settle-gasless-deposit-existing-account.js +36 -0
  276. package/dist/gasless/settle-gasless-deposit-existing-account/settle-gasless-deposit-existing-account.js.map +1 -0
  277. package/dist/gasless/settle-gasless-deposit-new-account/index.d.ts +3 -0
  278. package/dist/gasless/settle-gasless-deposit-new-account/index.d.ts.map +1 -0
  279. package/dist/gasless/settle-gasless-deposit-new-account/query.d.ts +18 -0
  280. package/dist/gasless/settle-gasless-deposit-new-account/query.d.ts.map +1 -0
  281. package/dist/gasless/settle-gasless-deposit-new-account/query.js +12 -0
  282. package/dist/gasless/settle-gasless-deposit-new-account/query.js.map +1 -0
  283. package/dist/gasless/settle-gasless-deposit-new-account/settle-gasless-deposit-new-account.d.ts +106 -0
  284. package/dist/gasless/settle-gasless-deposit-new-account/settle-gasless-deposit-new-account.d.ts.map +1 -0
  285. package/dist/gasless/settle-gasless-deposit-new-account/settle-gasless-deposit-new-account.js +43 -0
  286. package/dist/gasless/settle-gasless-deposit-new-account/settle-gasless-deposit-new-account.js.map +1 -0
  287. package/dist/gasless/status-read-limiter.d.ts +44 -0
  288. package/dist/gasless/status-read-limiter.d.ts.map +1 -0
  289. package/dist/gasless/status-read-limiter.js +28 -0
  290. package/dist/gasless/status-read-limiter.js.map +1 -0
  291. package/dist/gasless/to-gasless-deposit-receipt.d.ts +61 -0
  292. package/dist/gasless/to-gasless-deposit-receipt.d.ts.map +1 -0
  293. package/dist/gasless/to-gasless-deposit-receipt.js +36 -0
  294. package/dist/gasless/to-gasless-deposit-receipt.js.map +1 -0
  295. package/dist/gasless/to-gasless-submit-receipt.d.ts +60 -0
  296. package/dist/gasless/to-gasless-submit-receipt.d.ts.map +1 -0
  297. package/dist/gasless/to-gasless-submit-receipt.js +26 -0
  298. package/dist/gasless/to-gasless-submit-receipt.js.map +1 -0
  299. package/dist/gasless/transient-read.d.ts +32 -0
  300. package/dist/gasless/transient-read.d.ts.map +1 -0
  301. package/dist/gasless/transient-read.js +28 -0
  302. package/dist/gasless/transient-read.js.map +1 -0
  303. package/dist/gasless/types/generated/gasless-deposits.d.ts +170 -0
  304. package/dist/gasless/types/generated/gasless-deposits.d.ts.map +1 -0
  305. package/dist/gasless/types/generated/gasless-operations.d.ts +260 -0
  306. package/dist/gasless/types/generated/gasless-operations.d.ts.map +1 -0
  307. package/dist/gasless/types.d.ts +493 -0
  308. package/dist/gasless/types.d.ts.map +1 -0
  309. package/dist/gasless/types.js +33 -0
  310. package/dist/gasless/types.js.map +1 -0
  311. package/dist/gasless/unconfirmed-submit.d.ts +132 -0
  312. package/dist/gasless/unconfirmed-submit.d.ts.map +1 -0
  313. package/dist/gasless/unconfirmed-submit.js +49 -0
  314. package/dist/gasless/unconfirmed-submit.js.map +1 -0
  315. package/dist/gasless/wait-for-gasless-request/index.d.ts +2 -0
  316. package/dist/gasless/wait-for-gasless-request/index.d.ts.map +1 -0
  317. package/dist/gasless/wait-for-gasless-request/wait-for-gasless-request.d.ts +114 -0
  318. package/dist/gasless/wait-for-gasless-request/wait-for-gasless-request.d.ts.map +1 -0
  319. package/dist/gasless/wait-for-gasless-request/wait-for-gasless-request.js +77 -0
  320. package/dist/gasless/wait-for-gasless-request/wait-for-gasless-request.js.map +1 -0
  321. package/dist/gasless/wallet-id.d.ts +42 -0
  322. package/dist/gasless/wallet-id.d.ts.map +1 -0
  323. package/dist/gasless/wallet-id.js +25 -0
  324. package/dist/gasless/wallet-id.js.map +1 -0
  325. package/dist/gasless/wire-parse.d.ts +33 -0
  326. package/dist/gasless/wire-parse.d.ts.map +1 -0
  327. package/dist/gasless/wire-parse.js +14 -0
  328. package/dist/gasless/wire-parse.js.map +1 -0
  329. package/dist/gasless/wire-types.d.ts +73 -0
  330. package/dist/gasless/wire-types.d.ts.map +1 -0
  331. package/dist/gasless/write-request-registry.d.ts +56 -0
  332. package/dist/gasless/write-request-registry.d.ts.map +1 -0
  333. package/dist/gasless/write-request-registry.js +22 -0
  334. package/dist/gasless/write-request-registry.js.map +1 -0
  335. package/dist/index.d.ts +82 -17
  336. package/dist/index.d.ts.map +1 -1
  337. package/dist/index.js +568 -497
  338. package/dist/pools/listing-config/to-listing-config.js +2 -2
  339. package/dist/pools/listing-config/to-listing-config.js.map +1 -1
  340. package/dist/pools/market-detail/to-listing-market-detail.d.ts.map +1 -1
  341. package/dist/pools/market-detail/to-listing-market-detail.js +46 -40
  342. package/dist/pools/market-detail/to-listing-market-detail.js.map +1 -1
  343. package/dist/pools/markets/to-listing-market.d.ts.map +1 -1
  344. package/dist/pools/markets/to-listing-market.js +2 -1
  345. package/dist/pools/markets/to-listing-market.js.map +1 -1
  346. package/dist/pools/types/generated/listing-backend.d.ts +163 -16
  347. package/dist/pools/types/generated/listing-backend.d.ts.map +1 -1
  348. package/dist/pools/types/generated/listing-backend.js.map +1 -1
  349. package/dist/pools/types.d.ts +52 -2
  350. package/dist/pools/types.d.ts.map +1 -1
  351. package/dist/pools/types.js +6 -4
  352. package/dist/pools/types.js.map +1 -1
  353. package/dist/quotes/get-quote-funding/get-quote-funding.d.ts +3 -2
  354. package/dist/quotes/get-quote-funding/get-quote-funding.d.ts.map +1 -1
  355. package/dist/quotes/get-quote-funding/get-quote-funding.js.map +1 -1
  356. package/dist/quotes/get-quote-funding/types.d.ts +4 -2
  357. package/dist/quotes/get-quote-funding/types.d.ts.map +1 -1
  358. package/dist/quotes/get-quote-pending-funding/get-quote-pending-funding.d.ts +68 -0
  359. package/dist/quotes/get-quote-pending-funding/get-quote-pending-funding.d.ts.map +1 -0
  360. package/dist/quotes/get-quote-pending-funding/get-quote-pending-funding.js +34 -0
  361. package/dist/quotes/get-quote-pending-funding/get-quote-pending-funding.js.map +1 -0
  362. package/dist/quotes/get-quote-pending-funding/index.d.ts +4 -0
  363. package/dist/quotes/get-quote-pending-funding/index.d.ts.map +1 -0
  364. package/dist/quotes/get-quote-pending-funding/query.d.ts +58 -0
  365. package/dist/quotes/get-quote-pending-funding/query.d.ts.map +1 -0
  366. package/dist/quotes/get-quote-pending-funding/query.js +27 -0
  367. package/dist/quotes/get-quote-pending-funding/query.js.map +1 -0
  368. package/dist/quotes/get-quote-pending-funding/types.d.ts +19 -0
  369. package/dist/quotes/get-quote-pending-funding/types.d.ts.map +1 -0
  370. package/dist/quotes/get-quotes-events-by-type/get-quotes-events-by-type.d.ts +2 -1
  371. package/dist/quotes/get-quotes-events-by-type/get-quotes-events-by-type.d.ts.map +1 -1
  372. package/dist/quotes/get-quotes-events-by-type/get-quotes-events-by-type.js.map +1 -1
  373. package/dist/quotes/grouping/aggregate-group-funding.d.ts +9 -8
  374. package/dist/quotes/grouping/aggregate-group-funding.d.ts.map +1 -1
  375. package/dist/quotes/grouping/aggregate-group-funding.js.map +1 -1
  376. package/dist/quotes/grouping/partition-quotes.d.ts +30 -0
  377. package/dist/quotes/grouping/partition-quotes.d.ts.map +1 -1
  378. package/dist/quotes/grouping/partition-quotes.js +9 -6
  379. package/dist/quotes/grouping/partition-quotes.js.map +1 -1
  380. package/dist/quotes/index.d.ts +1 -0
  381. package/dist/quotes/index.d.ts.map +1 -1
  382. package/dist/quotes/unified-quote.d.ts +6 -6
  383. package/dist/quotes/unified-quote.js.map +1 -1
  384. package/dist/shared/errors/redact-url.d.ts +15 -0
  385. package/dist/shared/errors/redact-url.d.ts.map +1 -0
  386. package/dist/shared/errors/redact-url.js +9 -0
  387. package/dist/shared/errors/redact-url.js.map +1 -0
  388. package/dist/shared/errors/retry-after.d.ts +17 -0
  389. package/dist/shared/errors/retry-after.d.ts.map +1 -0
  390. package/dist/shared/errors/retry-after.js +16 -0
  391. package/dist/shared/errors/retry-after.js.map +1 -0
  392. package/dist/shared/errors/sanitized-api-error.d.ts +32 -0
  393. package/dist/shared/errors/sanitized-api-error.d.ts.map +1 -0
  394. package/dist/shared/errors/sanitized-api-error.js +41 -0
  395. package/dist/shared/errors/sanitized-api-error.js.map +1 -0
  396. package/dist/shared/errors/symm-error.d.ts +39 -4
  397. package/dist/shared/errors/symm-error.d.ts.map +1 -1
  398. package/dist/shared/errors/symm-error.js +29 -15
  399. package/dist/shared/errors/symm-error.js.map +1 -1
  400. package/dist/shared/types/properties.d.ts +53 -5
  401. package/dist/shared/types/properties.d.ts.map +1 -1
  402. package/dist/shared/utils/core-units.d.ts +82 -0
  403. package/dist/shared/utils/core-units.d.ts.map +1 -0
  404. package/dist/shared/utils/core-units.js +21 -0
  405. package/dist/shared/utils/core-units.js.map +1 -0
  406. package/dist/shared/utils/http-header.d.ts +16 -0
  407. package/dist/shared/utils/http-header.d.ts.map +1 -0
  408. package/dist/shared/utils/http-header.js +14 -0
  409. package/dist/shared/utils/http-header.js.map +1 -0
  410. package/dist/shared/utils/query.js +2 -1
  411. package/dist/shared/utils/query.js.map +1 -1
  412. package/dist/solvers/force-close/force-close-auto.d.ts +6 -2
  413. package/dist/solvers/force-close/force-close-auto.d.ts.map +1 -1
  414. package/dist/solvers/force-close/force-close-auto.js +2 -1
  415. package/dist/solvers/force-close/force-close-auto.js.map +1 -1
  416. package/dist/solvers/force-close/force-close-position.d.ts +9 -3
  417. package/dist/solvers/force-close/force-close-position.d.ts.map +1 -1
  418. package/dist/solvers/force-close/force-close-position.js +2 -1
  419. package/dist/solvers/force-close/force-close-position.js.map +1 -1
  420. package/dist/solvers/instant-open/instant-open/adapters/enigma-instant-open.js +12 -12
  421. package/dist/solvers/instant-open/instant-open/adapters/rasa-instant-open.js +7 -7
  422. package/dist/symmio-contracts/abi/index.d.ts +2 -0
  423. package/dist/symmio-contracts/abi/index.d.ts.map +1 -1
  424. package/dist/symmio-contracts/abi/v0.8.6/gasless-layer.d.ts +2323 -0
  425. package/dist/symmio-contracts/abi/v0.8.6/gasless-layer.d.ts.map +1 -0
  426. package/dist/symmio-contracts/abi/v0.8.6/gasless-layer.js +2706 -0
  427. package/dist/symmio-contracts/abi/v0.8.6/gasless-layer.js.map +1 -0
  428. package/dist/symmio-contracts/abi/v0.8.6/gasless-wallet.d.ts +137 -0
  429. package/dist/symmio-contracts/abi/v0.8.6/gasless-wallet.d.ts.map +1 -0
  430. package/dist/symmio-contracts/abi/v0.8.6/gasless-wallet.js +145 -0
  431. package/dist/symmio-contracts/abi/v0.8.6/gasless-wallet.js.map +1 -0
  432. package/dist/symmio-contracts/abi/v0.8.6/index.d.ts +2 -0
  433. package/dist/symmio-contracts/abi/v0.8.6/index.d.ts.map +1 -1
  434. package/dist/symmio-contracts/abi/v0.8.6/instant-layer.d.ts +1879 -37
  435. package/dist/symmio-contracts/abi/v0.8.6/instant-layer.d.ts.map +1 -1
  436. package/dist/symmio-contracts/abi/v0.8.6/instant-layer.js +2180 -50
  437. package/dist/symmio-contracts/abi/v0.8.6/instant-layer.js.map +1 -1
  438. package/dist/symmio-contracts/account-layer/actions/add-margin.d.ts +2 -2
  439. package/dist/symmio-contracts/account-layer/actions/add-margin.d.ts.map +1 -1
  440. package/dist/symmio-contracts/account-layer/actions/add-margin.js +34 -17
  441. package/dist/symmio-contracts/account-layer/actions/add-margin.js.map +1 -1
  442. package/dist/symmio-contracts/account-layer/actions/create-sub-accounts.d.ts +11 -2
  443. package/dist/symmio-contracts/account-layer/actions/create-sub-accounts.d.ts.map +1 -1
  444. package/dist/symmio-contracts/account-layer/actions/create-sub-accounts.js +33 -17
  445. package/dist/symmio-contracts/account-layer/actions/create-sub-accounts.js.map +1 -1
  446. package/dist/symmio-contracts/account-layer/actions/delete-sub-account.d.ts +9 -2
  447. package/dist/symmio-contracts/account-layer/actions/delete-sub-account.d.ts.map +1 -1
  448. package/dist/symmio-contracts/account-layer/actions/delete-sub-account.js +33 -16
  449. package/dist/symmio-contracts/account-layer/actions/delete-sub-account.js.map +1 -1
  450. package/dist/symmio-contracts/account-layer/actions/deposit-and-allocate-for-account.d.ts +8 -2
  451. package/dist/symmio-contracts/account-layer/actions/deposit-and-allocate-for-account.d.ts.map +1 -1
  452. package/dist/symmio-contracts/account-layer/actions/deposit-and-allocate-for-account.js +34 -17
  453. package/dist/symmio-contracts/account-layer/actions/deposit-and-allocate-for-account.js.map +1 -1
  454. package/dist/symmio-contracts/account-layer/actions/deposit-for-account.d.ts +8 -2
  455. package/dist/symmio-contracts/account-layer/actions/deposit-for-account.d.ts.map +1 -1
  456. package/dist/symmio-contracts/account-layer/actions/deposit-for-account.js +34 -17
  457. package/dist/symmio-contracts/account-layer/actions/deposit-for-account.js.map +1 -1
  458. package/dist/symmio-contracts/account-layer/actions/edit-account-name.d.ts +7 -2
  459. package/dist/symmio-contracts/account-layer/actions/edit-account-name.d.ts.map +1 -1
  460. package/dist/symmio-contracts/account-layer/actions/edit-account-name.js +34 -17
  461. package/dist/symmio-contracts/account-layer/actions/edit-account-name.js.map +1 -1
  462. package/dist/symmio-contracts/account-layer/actions/get-account-balance-info.d.ts +1 -1
  463. package/dist/symmio-contracts/account-layer/actions/get-account-balance-info.js.map +1 -1
  464. package/dist/symmio-contracts/account-layer/actions/get-account-balance-of.d.ts +9 -3
  465. package/dist/symmio-contracts/account-layer/actions/get-account-balance-of.d.ts.map +1 -1
  466. package/dist/symmio-contracts/account-layer/actions/get-account-balance-of.js.map +1 -1
  467. package/dist/symmio-contracts/account-layer/actions/remove-margin.d.ts +2 -2
  468. package/dist/symmio-contracts/account-layer/actions/remove-margin.d.ts.map +1 -1
  469. package/dist/symmio-contracts/account-layer/actions/remove-margin.js +41 -20
  470. package/dist/symmio-contracts/account-layer/actions/remove-margin.js.map +1 -1
  471. package/dist/symmio-contracts/account-layer/types.d.ts +3 -1
  472. package/dist/symmio-contracts/account-layer/types.d.ts.map +1 -1
  473. package/dist/symmio-contracts/account-layer/types.js.map +1 -1
  474. package/dist/symmio-contracts/instant-layer/actions/finalize-revoke-delegation.d.ts +60 -0
  475. package/dist/symmio-contracts/instant-layer/actions/finalize-revoke-delegation.d.ts.map +1 -0
  476. package/dist/symmio-contracts/instant-layer/actions/finalize-revoke-delegation.js +35 -0
  477. package/dist/symmio-contracts/instant-layer/actions/finalize-revoke-delegation.js.map +1 -0
  478. package/dist/symmio-contracts/instant-layer/actions/get-active-delegations.d.ts +91 -0
  479. package/dist/symmio-contracts/instant-layer/actions/get-active-delegations.d.ts.map +1 -0
  480. package/dist/symmio-contracts/instant-layer/actions/get-active-delegations.js +19 -0
  481. package/dist/symmio-contracts/instant-layer/actions/get-active-delegations.js.map +1 -0
  482. package/dist/symmio-contracts/instant-layer/actions/get-instant-layer-nonce.d.ts +36 -0
  483. package/dist/symmio-contracts/instant-layer/actions/get-instant-layer-nonce.d.ts.map +1 -0
  484. package/dist/symmio-contracts/instant-layer/actions/get-instant-layer-nonce.js +15 -0
  485. package/dist/symmio-contracts/instant-layer/actions/get-instant-layer-nonce.js.map +1 -0
  486. package/dist/symmio-contracts/instant-layer/actions/get-pending-revocation-etas.d.ts +79 -0
  487. package/dist/symmio-contracts/instant-layer/actions/get-pending-revocation-etas.d.ts.map +1 -0
  488. package/dist/symmio-contracts/instant-layer/actions/get-pending-revocation-etas.js +32 -0
  489. package/dist/symmio-contracts/instant-layer/actions/get-pending-revocation-etas.js.map +1 -0
  490. package/dist/symmio-contracts/instant-layer/actions/get-revocation-cooldown.d.ts +43 -0
  491. package/dist/symmio-contracts/instant-layer/actions/get-revocation-cooldown.d.ts.map +1 -0
  492. package/dist/symmio-contracts/instant-layer/actions/get-revocation-cooldown.js +14 -0
  493. package/dist/symmio-contracts/instant-layer/actions/get-revocation-cooldown.js.map +1 -0
  494. package/dist/symmio-contracts/instant-layer/actions/grant-delegation.d.ts +24 -3
  495. package/dist/symmio-contracts/instant-layer/actions/grant-delegation.d.ts.map +1 -1
  496. package/dist/symmio-contracts/instant-layer/actions/grant-delegation.js +48 -22
  497. package/dist/symmio-contracts/instant-layer/actions/grant-delegation.js.map +1 -1
  498. package/dist/symmio-contracts/instant-layer/actions/initiate-revoke-delegation.d.ts +62 -0
  499. package/dist/symmio-contracts/instant-layer/actions/initiate-revoke-delegation.d.ts.map +1 -0
  500. package/dist/symmio-contracts/instant-layer/actions/initiate-revoke-delegation.js +35 -0
  501. package/dist/symmio-contracts/instant-layer/actions/initiate-revoke-delegation.js.map +1 -0
  502. package/dist/symmio-contracts/instant-layer/index.d.ts +12 -0
  503. package/dist/symmio-contracts/instant-layer/index.d.ts.map +1 -1
  504. package/dist/symmio-contracts/instant-layer/query/finalize-revoke-delegation.d.ts +22 -0
  505. package/dist/symmio-contracts/instant-layer/query/finalize-revoke-delegation.d.ts.map +1 -0
  506. package/dist/symmio-contracts/instant-layer/query/finalize-revoke-delegation.js +12 -0
  507. package/dist/symmio-contracts/instant-layer/query/finalize-revoke-delegation.js.map +1 -0
  508. package/dist/symmio-contracts/instant-layer/query/get-active-delegations.d.ts +36 -0
  509. package/dist/symmio-contracts/instant-layer/query/get-active-delegations.d.ts.map +1 -0
  510. package/dist/symmio-contracts/instant-layer/query/get-active-delegations.js +29 -0
  511. package/dist/symmio-contracts/instant-layer/query/get-active-delegations.js.map +1 -0
  512. package/dist/symmio-contracts/instant-layer/query/get-instant-layer-nonce.d.ts +39 -0
  513. package/dist/symmio-contracts/instant-layer/query/get-instant-layer-nonce.d.ts.map +1 -0
  514. package/dist/symmio-contracts/instant-layer/query/get-instant-layer-nonce.js +27 -0
  515. package/dist/symmio-contracts/instant-layer/query/get-instant-layer-nonce.js.map +1 -0
  516. package/dist/symmio-contracts/instant-layer/query/get-is-delegation-active.js +7 -7
  517. package/dist/symmio-contracts/instant-layer/query/get-pending-revocation-etas.d.ts +42 -0
  518. package/dist/symmio-contracts/instant-layer/query/get-pending-revocation-etas.d.ts.map +1 -0
  519. package/dist/symmio-contracts/instant-layer/query/get-pending-revocation-etas.js +30 -0
  520. package/dist/symmio-contracts/instant-layer/query/get-pending-revocation-etas.js.map +1 -0
  521. package/dist/symmio-contracts/instant-layer/query/get-revocation-cooldown.d.ts +36 -0
  522. package/dist/symmio-contracts/instant-layer/query/get-revocation-cooldown.d.ts.map +1 -0
  523. package/dist/symmio-contracts/instant-layer/query/get-revocation-cooldown.js +21 -0
  524. package/dist/symmio-contracts/instant-layer/query/get-revocation-cooldown.js.map +1 -0
  525. package/dist/symmio-contracts/instant-layer/query/initiate-revoke-delegation.d.ts +22 -0
  526. package/dist/symmio-contracts/instant-layer/query/initiate-revoke-delegation.d.ts.map +1 -0
  527. package/dist/symmio-contracts/instant-layer/query/initiate-revoke-delegation.js +12 -0
  528. package/dist/symmio-contracts/instant-layer/query/initiate-revoke-delegation.js.map +1 -0
  529. package/dist/symmio-contracts/symmio/actions/allocate.d.ts +2 -2
  530. package/dist/symmio-contracts/symmio/actions/allocate.d.ts.map +1 -1
  531. package/dist/symmio-contracts/symmio/actions/allocate.js +2 -1
  532. package/dist/symmio-contracts/symmio/actions/allocate.js.map +1 -1
  533. package/dist/symmio-contracts/symmio/actions/approve-operational-fee.d.ts +87 -0
  534. package/dist/symmio-contracts/symmio/actions/approve-operational-fee.d.ts.map +1 -0
  535. package/dist/symmio-contracts/symmio/actions/approve-operational-fee.js +38 -0
  536. package/dist/symmio-contracts/symmio/actions/approve-operational-fee.js.map +1 -0
  537. package/dist/symmio-contracts/symmio/actions/deallocate-and-initiate-withdraw.d.ts +2 -2
  538. package/dist/symmio-contracts/symmio/actions/deallocate-and-initiate-withdraw.d.ts.map +1 -1
  539. package/dist/symmio-contracts/symmio/actions/deallocate-and-initiate-withdraw.js +2 -1
  540. package/dist/symmio-contracts/symmio/actions/deallocate-and-initiate-withdraw.js.map +1 -1
  541. package/dist/symmio-contracts/symmio/actions/deallocate.d.ts +2 -2
  542. package/dist/symmio-contracts/symmio/actions/deallocate.d.ts.map +1 -1
  543. package/dist/symmio-contracts/symmio/actions/deallocate.js +2 -1
  544. package/dist/symmio-contracts/symmio/actions/deallocate.js.map +1 -1
  545. package/dist/symmio-contracts/symmio/actions/finalize-withdraw-request.d.ts +15 -3
  546. package/dist/symmio-contracts/symmio/actions/finalize-withdraw-request.d.ts.map +1 -1
  547. package/dist/symmio-contracts/symmio/actions/finalize-withdraw-request.js +34 -17
  548. package/dist/symmio-contracts/symmio/actions/finalize-withdraw-request.js.map +1 -1
  549. package/dist/symmio-contracts/symmio/actions/force-cancel-close-request.d.ts +2 -2
  550. package/dist/symmio-contracts/symmio/actions/force-cancel-close-request.d.ts.map +1 -1
  551. package/dist/symmio-contracts/symmio/actions/force-cancel-close-request.js +2 -1
  552. package/dist/symmio-contracts/symmio/actions/force-cancel-close-request.js.map +1 -1
  553. package/dist/symmio-contracts/symmio/actions/force-cancel-quote.d.ts +2 -2
  554. package/dist/symmio-contracts/symmio/actions/force-cancel-quote.d.ts.map +1 -1
  555. package/dist/symmio-contracts/symmio/actions/force-cancel-quote.js +2 -1
  556. package/dist/symmio-contracts/symmio/actions/force-cancel-quote.js.map +1 -1
  557. package/dist/symmio-contracts/symmio/actions/get-operational-fee-allowance.d.ts +85 -0
  558. package/dist/symmio-contracts/symmio/actions/get-operational-fee-allowance.d.ts.map +1 -0
  559. package/dist/symmio-contracts/symmio/actions/get-operational-fee-allowance.js +29 -0
  560. package/dist/symmio-contracts/symmio/actions/get-operational-fee-allowance.js.map +1 -0
  561. package/dist/symmio-contracts/symmio/actions/initiate-withdraw.d.ts +2 -2
  562. package/dist/symmio-contracts/symmio/actions/initiate-withdraw.d.ts.map +1 -1
  563. package/dist/symmio-contracts/symmio/actions/initiate-withdraw.js +2 -1
  564. package/dist/symmio-contracts/symmio/actions/initiate-withdraw.js.map +1 -1
  565. package/dist/symmio-contracts/symmio/actions/request-cancel-withdraw.d.ts +2 -2
  566. package/dist/symmio-contracts/symmio/actions/request-cancel-withdraw.d.ts.map +1 -1
  567. package/dist/symmio-contracts/symmio/actions/request-cancel-withdraw.js +2 -1
  568. package/dist/symmio-contracts/symmio/actions/request-cancel-withdraw.js.map +1 -1
  569. package/dist/symmio-contracts/symmio/actions/request-to-cancel-close-request.d.ts +2 -2
  570. package/dist/symmio-contracts/symmio/actions/request-to-cancel-close-request.d.ts.map +1 -1
  571. package/dist/symmio-contracts/symmio/actions/request-to-cancel-close-request.js +2 -1
  572. package/dist/symmio-contracts/symmio/actions/request-to-cancel-close-request.js.map +1 -1
  573. package/dist/symmio-contracts/symmio/actions/request-to-cancel-quote.d.ts +2 -2
  574. package/dist/symmio-contracts/symmio/actions/request-to-cancel-quote.d.ts.map +1 -1
  575. package/dist/symmio-contracts/symmio/actions/request-to-cancel-quote.js +2 -1
  576. package/dist/symmio-contracts/symmio/actions/request-to-cancel-quote.js.map +1 -1
  577. package/dist/symmio-contracts/symmio/actions/withdraw-auto.d.ts +9 -7
  578. package/dist/symmio-contracts/symmio/actions/withdraw-auto.d.ts.map +1 -1
  579. package/dist/symmio-contracts/symmio/actions/withdraw-auto.js +24 -22
  580. package/dist/symmio-contracts/symmio/actions/withdraw-auto.js.map +1 -1
  581. package/dist/symmio-contracts/symmio/actions/withdraw.d.ts +2 -2
  582. package/dist/symmio-contracts/symmio/actions/withdraw.d.ts.map +1 -1
  583. package/dist/symmio-contracts/symmio/actions/withdraw.js +4 -2
  584. package/dist/symmio-contracts/symmio/actions/withdraw.js.map +1 -1
  585. package/dist/symmio-contracts/symmio/get-funding-fees-of-party-b/get-funding-fees-of-party-b.d.ts +43 -0
  586. package/dist/symmio-contracts/symmio/get-funding-fees-of-party-b/get-funding-fees-of-party-b.d.ts.map +1 -0
  587. package/dist/symmio-contracts/symmio/get-funding-fees-of-party-b/get-funding-fees-of-party-b.js +15 -0
  588. package/dist/symmio-contracts/symmio/get-funding-fees-of-party-b/get-funding-fees-of-party-b.js.map +1 -0
  589. package/dist/symmio-contracts/symmio/get-funding-fees-of-party-b/index.d.ts +4 -0
  590. package/dist/symmio-contracts/symmio/get-funding-fees-of-party-b/index.d.ts.map +1 -0
  591. package/dist/symmio-contracts/symmio/get-funding-fees-of-party-b/query.d.ts +43 -0
  592. package/dist/symmio-contracts/symmio/get-funding-fees-of-party-b/query.d.ts.map +1 -0
  593. package/dist/symmio-contracts/symmio/get-funding-fees-of-party-b/query.js +25 -0
  594. package/dist/symmio-contracts/symmio/get-funding-fees-of-party-b/query.js.map +1 -0
  595. package/dist/symmio-contracts/symmio/get-funding-fees-of-party-b/types.d.ts +85 -0
  596. package/dist/symmio-contracts/symmio/get-funding-fees-of-party-b/types.d.ts.map +1 -0
  597. package/dist/symmio-contracts/symmio/index.d.ts +5 -0
  598. package/dist/symmio-contracts/symmio/index.d.ts.map +1 -1
  599. package/dist/symmio-contracts/symmio/internal/call-as-sub-account.d.ts +2 -1
  600. package/dist/symmio-contracts/symmio/internal/call-as-sub-account.d.ts.map +1 -1
  601. package/dist/symmio-contracts/symmio/internal/call-as-sub-account.js +46 -17
  602. package/dist/symmio-contracts/symmio/internal/call-as-sub-account.js.map +1 -1
  603. package/dist/symmio-contracts/symmio/query/approve-operational-fee.d.ts +18 -0
  604. package/dist/symmio-contracts/symmio/query/approve-operational-fee.d.ts.map +1 -0
  605. package/dist/symmio-contracts/symmio/query/approve-operational-fee.js +12 -0
  606. package/dist/symmio-contracts/symmio/query/approve-operational-fee.js.map +1 -0
  607. package/dist/symmio-contracts/symmio/query/get-operational-fee-allowance.d.ts +35 -0
  608. package/dist/symmio-contracts/symmio/query/get-operational-fee-allowance.d.ts.map +1 -0
  609. package/dist/symmio-contracts/symmio/query/get-operational-fee-allowance.js +28 -0
  610. package/dist/symmio-contracts/symmio/query/get-operational-fee-allowance.js.map +1 -0
  611. package/dist/symmio-contracts/symmio/types.d.ts +6 -6
  612. package/dist/symmio-contracts/symmio/types.js.map +1 -1
  613. package/dist/symmio-subgraph/executeSubgraphRequest.d.ts +2 -1
  614. package/dist/symmio-subgraph/executeSubgraphRequest.d.ts.map +1 -1
  615. package/dist/symmio-subgraph/executeSubgraphRequest.js +24 -21
  616. package/dist/symmio-subgraph/executeSubgraphRequest.js.map +1 -1
  617. package/dist/websocket/gasless/close-code-policy.d.ts +51 -0
  618. package/dist/websocket/gasless/close-code-policy.d.ts.map +1 -0
  619. package/dist/websocket/gasless/close-code-policy.js +75 -0
  620. package/dist/websocket/gasless/close-code-policy.js.map +1 -0
  621. package/dist/websocket/gasless/gasless-stream-hub.d.ts +61 -0
  622. package/dist/websocket/gasless/gasless-stream-hub.d.ts.map +1 -0
  623. package/dist/websocket/gasless/gasless-stream-hub.js +311 -0
  624. package/dist/websocket/gasless/gasless-stream-hub.js.map +1 -0
  625. package/dist/websocket/gasless/index.d.ts +7 -0
  626. package/dist/websocket/gasless/index.d.ts.map +1 -0
  627. package/dist/websocket/gasless/parse-gasless-stream-message.d.ts +82 -0
  628. package/dist/websocket/gasless/parse-gasless-stream-message.d.ts.map +1 -0
  629. package/dist/websocket/gasless/parse-gasless-stream-message.js +136 -0
  630. package/dist/websocket/gasless/parse-gasless-stream-message.js.map +1 -0
  631. package/dist/websocket/gasless/resolve-gasless-stream-url.d.ts +58 -0
  632. package/dist/websocket/gasless/resolve-gasless-stream-url.d.ts.map +1 -0
  633. package/dist/websocket/gasless/resolve-gasless-stream-url.js +59 -0
  634. package/dist/websocket/gasless/resolve-gasless-stream-url.js.map +1 -0
  635. package/dist/websocket/gasless/types.d.ts +48 -0
  636. package/dist/websocket/gasless/types.d.ts.map +1 -0
  637. package/dist/websocket/gasless/watch-gasless-request.d.ts +72 -0
  638. package/dist/websocket/gasless/watch-gasless-request.d.ts.map +1 -0
  639. package/dist/websocket/gasless/watch-gasless-request.js +35 -0
  640. package/dist/websocket/gasless/watch-gasless-request.js.map +1 -0
  641. package/dist/websocket/index.d.ts +1 -0
  642. package/dist/websocket/index.d.ts.map +1 -1
  643. package/dist/websocket/socket/create-reconnecting-socket.d.ts +39 -6
  644. package/dist/websocket/socket/create-reconnecting-socket.d.ts.map +1 -1
  645. package/dist/websocket/socket/create-reconnecting-socket.js +92 -53
  646. package/dist/websocket/socket/create-reconnecting-socket.js.map +1 -1
  647. package/dist/websocket/socket/socket-status.d.ts +7 -2
  648. package/dist/websocket/socket/socket-status.d.ts.map +1 -1
  649. package/dist/websocket/socket/socket-status.js.map +1 -1
  650. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"instant-layer.js","names":[],"sources":["../../../../src/symmio-contracts/abi/v0.8.6/instant-layer.ts"],"sourcesContent":["/**\n * ABI fragment for the SYMMIO `InstantLayer` contract at version **0.8.6**.\n *\n * @remarks\n * This fragment contains the delegation methods currently wrapped by the SDK.\n *\n * @see Source of truth — the SYMMIO `perps-core` repo, pinned to the matching\n * version tag: {@link https://github.com/SYMM-IO/perps-core/blob/version_0.8.6/abis/instantLayer.json}.\n */\nexport const instantLayerAbi = [\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"\",\n type: \"address\",\n },\n {\n internalType: \"address\",\n name: \"\",\n type: \"address\",\n },\n {\n internalType: \"bytes4\",\n name: \"\",\n type: \"bytes4\",\n },\n ],\n name: \"delegations\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n components: [\n {\n components: [\n {\n internalType: \"address\",\n name: \"addr\",\n type: \"address\",\n },\n {\n internalType: \"bool\",\n name: \"isPartyB\",\n type: \"bool\",\n },\n ],\n internalType: \"struct InstantLayer.Account\",\n name: \"account\",\n type: \"tuple\",\n },\n {\n internalType: \"address\",\n name: \"delegatedSigner\",\n type: \"address\",\n },\n {\n internalType: \"bytes4[]\",\n name: \"selectors\",\n type: \"bytes4[]\",\n },\n {\n internalType: \"uint256\",\n name: \"expiryTimestamp\",\n type: \"uint256\",\n },\n ],\n internalType: \"struct InstantLayer.DelegationInfo\",\n name: \"info\",\n type: \"tuple\",\n },\n ],\n name: \"grantDelegation\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"delegator\",\n type: \"address\",\n },\n {\n internalType: \"address\",\n name: \"delegate\",\n type: \"address\",\n },\n {\n internalType: \"bytes4\",\n name: \"selector\",\n type: \"bytes4\",\n },\n ],\n name: \"isDelegationActive\",\n outputs: [\n {\n internalType: \"bool\",\n name: \"\",\n type: \"bool\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n] as const;\n"],"mappings":";AASA,IAAa,IAAkB;CAC7B;EACE,QAAQ;GACN;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;EACF;EACA,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,YAAY;IACV;KACE,YAAY,CACV;MACE,cAAc;MACd,MAAM;MACN,MAAM;KACR,GACA;MACE,cAAc;MACd,MAAM;MACN,MAAM;KACR,CACF;KACA,cAAc;KACd,MAAM;KACN,MAAM;IACR;IACA;KACE,cAAc;KACd,MAAM;KACN,MAAM;IACR;IACA;KACE,cAAc;KACd,MAAM;KACN,MAAM;IACR;IACA;KACE,cAAc;KACd,MAAM;KACN,MAAM;IACR;GACF;GACA,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,SAAS,CAAC;EACV,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ;GACN;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;EACF;EACA,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;AACF"}
1
+ {"version":3,"file":"instant-layer.js","names":[],"sources":["../../../../src/symmio-contracts/abi/v0.8.6/instant-layer.ts"],"sourcesContent":["/**\n * Full ABI for the SYMMIO `InstantLayer` contract at version **0.8.6**.\n *\n * @remarks\n * Complete, unabridged copy of the source artifact — never trim it to the\n * methods the SDK currently wraps.\n *\n * @see Source of truth — the SYMMIO `perps-core` repo, pinned to the matching\n * version tag: {@link https://github.com/SYMM-IO/perps-core/blob/version_0.8.6/abis/instantLayer.json}.\n */\nexport const instantLayerAbi = [\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"_symmio\",\n type: \"address\",\n },\n {\n internalType: \"address\",\n name: \"_admin\",\n type: \"address\",\n },\n ],\n stateMutability: \"nonpayable\",\n type: \"constructor\",\n },\n {\n inputs: [],\n name: \"AccessControlBadConfirmation\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"account\",\n type: \"address\",\n },\n {\n internalType: \"bytes32\",\n name: \"neededRole\",\n type: \"bytes32\",\n },\n ],\n name: \"AccessControlUnauthorizedAccount\",\n type: \"error\",\n },\n {\n inputs: [],\n name: \"AccountLayerNotSet\",\n type: \"error\",\n },\n {\n inputs: [],\n name: \"ArrayLengthMismatch\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"bytes\",\n name: \"res\",\n type: \"bytes\",\n },\n {\n internalType: \"uint256\",\n name: \"length\",\n type: \"uint256\",\n },\n ],\n name: \"BadSourceResultLength\",\n type: \"error\",\n },\n {\n inputs: [],\n name: \"CallDataLengthMismatch\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"uint256\",\n name: \"deadline\",\n type: \"uint256\",\n },\n ],\n name: \"DeadlineExpired\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"bytes32\",\n name: \"hash\",\n type: \"bytes32\",\n },\n ],\n name: \"DelegationAlreadyExecuted\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"uint256\",\n name: \"expiryTimestamp\",\n type: \"uint256\",\n },\n ],\n name: \"DelegationExpired\",\n type: \"error\",\n },\n {\n inputs: [],\n name: \"EmptyArray\",\n type: \"error\",\n },\n {\n inputs: [],\n name: \"EmptyBatch\",\n type: \"error\",\n },\n {\n inputs: [],\n name: \"EmptyTemplate\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"uint256\",\n name: \"offset\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"length\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"callDataLength\",\n type: \"uint256\",\n },\n ],\n name: \"FlexFieldOutOfBounds\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"uint256\",\n name: \"offset\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"length\",\n type: \"uint256\",\n },\n ],\n name: \"InsertionPointOutOfBounds\",\n type: \"error\",\n },\n {\n inputs: [],\n name: \"InvalidCallData\",\n type: \"error\",\n },\n {\n inputs: [],\n name: \"InvalidDelegation\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"uint256\",\n name: \"expected\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"provided\",\n type: \"uint256\",\n },\n ],\n name: \"InvalidFlexFillLength\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"uint256\",\n name: \"fieldIndex\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"expected\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"provided\",\n type: \"uint256\",\n },\n ],\n name: \"InvalidFlexFillValueLength\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"uint256\",\n name: \"fieldIndex\",\n type: \"uint256\",\n },\n ],\n name: \"InvalidFlexFillerSignature\",\n type: \"error\",\n },\n {\n inputs: [],\n name: \"InvalidGrantOperation\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"user\",\n type: \"address\",\n },\n {\n internalType: \"uint256\",\n name: \"expected\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"provided\",\n type: \"uint256\",\n },\n ],\n name: \"InvalidNonce\",\n type: \"error\",\n },\n {\n inputs: [],\n name: \"InvalidShortString\",\n type: \"error\",\n },\n {\n inputs: [],\n name: \"InvalidSignature\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"uint256\",\n name: \"sourceIndex\",\n type: \"uint256\",\n },\n ],\n name: \"InvalidSourceIndex\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"uint256\",\n name: \"templateId\",\n type: \"uint256\",\n },\n ],\n name: \"InvalidTemplate\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"bytes32\",\n name: \"hash\",\n type: \"bytes32\",\n },\n {\n internalType: \"uint256\",\n name: \"maxUses\",\n type: \"uint256\",\n },\n ],\n name: \"MaxUsesExceeded\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"signer\",\n type: \"address\",\n },\n {\n internalType: \"address\",\n name: \"account\",\n type: \"address\",\n },\n ],\n name: \"MismatchSignerAndAccount\",\n type: \"error\",\n },\n {\n inputs: [],\n name: \"MissingSourceResult\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"sender\",\n type: \"address\",\n },\n {\n internalType: \"address\",\n name: \"account\",\n type: \"address\",\n },\n ],\n name: \"NotOwnerOfAccount\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"uint256\",\n name: \"operationIndex\",\n type: \"uint256\",\n },\n {\n internalType: \"bytes\",\n name: \"revertData\",\n type: \"bytes\",\n },\n ],\n name: \"OperationFailed\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"partyB\",\n type: \"address\",\n },\n ],\n name: \"PartyBAlreadyRegistered\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"partyB\",\n type: \"address\",\n },\n ],\n name: \"PartyBNotRegistered\",\n type: \"error\",\n },\n {\n inputs: [],\n name: \"ReentrancyGuardReentrantCall\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"uint256\",\n name: \"eta\",\n type: \"uint256\",\n },\n ],\n name: \"RevocationCooldownNotOver\",\n type: \"error\",\n },\n {\n inputs: [],\n name: \"SelfDelegation\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"string\",\n name: \"str\",\n type: \"string\",\n },\n ],\n name: \"StringTooLong\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"target\",\n type: \"address\",\n },\n ],\n name: \"TargetNotWhitelisted\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"uint256\",\n name: \"templateId\",\n type: \"uint256\",\n },\n ],\n name: \"TemplateNotActive\",\n type: \"error\",\n },\n {\n inputs: [],\n name: \"TemplateOperationLengthMismatch\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"accountLayer\",\n type: \"address\",\n },\n ],\n name: \"UnregisteredAccountLayer\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"partyB\",\n type: \"address\",\n },\n ],\n name: \"UnregisteredPartyB\",\n type: \"error\",\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: \"address\",\n name: \"oldAccountLayer\",\n type: \"address\",\n },\n {\n indexed: true,\n internalType: \"address\",\n name: \"newAccountLayer\",\n type: \"address\",\n },\n ],\n name: \"AccountLayerUpdated\",\n type: \"event\",\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: \"address\",\n name: \"delegator\",\n type: \"address\",\n },\n {\n indexed: true,\n internalType: \"address\",\n name: \"delegate\",\n type: \"address\",\n },\n {\n indexed: false,\n internalType: \"bytes4\",\n name: \"selector\",\n type: \"bytes4\",\n },\n {\n indexed: false,\n internalType: \"uint256\",\n name: \"expiryTimestamp\",\n type: \"uint256\",\n },\n ],\n name: \"DelegationGranted\",\n type: \"event\",\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: \"address\",\n name: \"delegator\",\n type: \"address\",\n },\n {\n indexed: false,\n internalType: \"uint256\",\n name: \"newNonce\",\n type: \"uint256\",\n },\n ],\n name: \"DelegationNonceIncremented\",\n type: \"event\",\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: \"address\",\n name: \"delegator\",\n type: \"address\",\n },\n {\n indexed: true,\n internalType: \"address\",\n name: \"delegate\",\n type: \"address\",\n },\n {\n indexed: false,\n internalType: \"bytes4\",\n name: \"selector\",\n type: \"bytes4\",\n },\n ],\n name: \"DelegationSelectorRevoked\",\n type: \"event\",\n },\n {\n anonymous: false,\n inputs: [],\n name: \"EIP712DomainChanged\",\n type: \"event\",\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: \"address\",\n name: \"user\",\n type: \"address\",\n },\n {\n indexed: false,\n internalType: \"uint256\",\n name: \"newNonce\",\n type: \"uint256\",\n },\n ],\n name: \"NonceIncremented\",\n type: \"event\",\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: \"address\",\n name: \"partyB\",\n type: \"address\",\n },\n ],\n name: \"PartyBRegistered\",\n type: \"event\",\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: \"address\",\n name: \"partyB\",\n type: \"address\",\n },\n ],\n name: \"PartyBUnregistered\",\n type: \"event\",\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: false,\n internalType: \"uint256\",\n name: \"oldCooldown\",\n type: \"uint256\",\n },\n {\n indexed: false,\n internalType: \"uint256\",\n name: \"newCooldown\",\n type: \"uint256\",\n },\n ],\n name: \"RevocationCooldownUpdated\",\n type: \"event\",\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: \"address\",\n name: \"delegator\",\n type: \"address\",\n },\n {\n indexed: true,\n internalType: \"address\",\n name: \"delegate\",\n type: \"address\",\n },\n {\n indexed: false,\n internalType: \"bytes4\",\n name: \"selector\",\n type: \"bytes4\",\n },\n {\n indexed: false,\n internalType: \"uint256\",\n name: \"eta\",\n type: \"uint256\",\n },\n ],\n name: \"RevocationScheduled\",\n type: \"event\",\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: \"bytes32\",\n name: \"role\",\n type: \"bytes32\",\n },\n {\n indexed: true,\n internalType: \"bytes32\",\n name: \"previousAdminRole\",\n type: \"bytes32\",\n },\n {\n indexed: true,\n internalType: \"bytes32\",\n name: \"newAdminRole\",\n type: \"bytes32\",\n },\n ],\n name: \"RoleAdminChanged\",\n type: \"event\",\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: \"bytes32\",\n name: \"role\",\n type: \"bytes32\",\n },\n {\n indexed: true,\n internalType: \"address\",\n name: \"account\",\n type: \"address\",\n },\n {\n indexed: true,\n internalType: \"address\",\n name: \"sender\",\n type: \"address\",\n },\n ],\n name: \"RoleGranted\",\n type: \"event\",\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: \"bytes32\",\n name: \"role\",\n type: \"bytes32\",\n },\n {\n indexed: true,\n internalType: \"address\",\n name: \"account\",\n type: \"address\",\n },\n {\n indexed: true,\n internalType: \"address\",\n name: \"sender\",\n type: \"address\",\n },\n ],\n name: \"RoleRevoked\",\n type: \"event\",\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: \"address\",\n name: \"target\",\n type: \"address\",\n },\n {\n indexed: false,\n internalType: \"bool\",\n name: \"allowed\",\n type: \"bool\",\n },\n ],\n name: \"TargetWhitelistUpdated\",\n type: \"event\",\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: \"uint256\",\n name: \"templateId\",\n type: \"uint256\",\n },\n {\n indexed: false,\n internalType: \"string\",\n name: \"name\",\n type: \"string\",\n },\n ],\n name: \"TemplateAdded\",\n type: \"event\",\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: \"uint256\",\n name: \"templateId\",\n type: \"uint256\",\n },\n {\n indexed: false,\n internalType: \"bool\",\n name: \"active\",\n type: \"bool\",\n },\n ],\n name: \"TemplateUpdated\",\n type: \"event\",\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: false,\n internalType: \"bool\",\n name: \"enabled\",\n type: \"bool\",\n },\n ],\n name: \"TransientContextEnabledUpdated\",\n type: \"event\",\n },\n {\n inputs: [],\n name: \"ACCOUNT_TYPEHASH\",\n outputs: [\n {\n internalType: \"bytes32\",\n name: \"\",\n type: \"bytes32\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"DEFAULT_ADMIN_ROLE\",\n outputs: [\n {\n internalType: \"bytes32\",\n name: \"\",\n type: \"bytes32\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"DELEGATION_INFO_TYPEHASH\",\n outputs: [\n {\n internalType: \"bytes32\",\n name: \"\",\n type: \"bytes32\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"FLEX_FIELD_TYPEHASH\",\n outputs: [\n {\n internalType: \"bytes32\",\n name: \"\",\n type: \"bytes32\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"FLEX_FILL_AUTH_TYPEHASH\",\n outputs: [\n {\n internalType: \"bytes32\",\n name: \"\",\n type: \"bytes32\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"OPERATOR_ROLE\",\n outputs: [\n {\n internalType: \"bytes32\",\n name: \"\",\n type: \"bytes32\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"REPLAY_HEADER_TYPEHASH\",\n outputs: [\n {\n internalType: \"bytes32\",\n name: \"\",\n type: \"bytes32\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"REVOKER_ROLE\",\n outputs: [\n {\n internalType: \"bytes32\",\n name: \"\",\n type: \"bytes32\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"SETTER_ROLE\",\n outputs: [\n {\n internalType: \"bytes32\",\n name: \"\",\n type: \"bytes32\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"SIGNED_DELEGATION_TYPEHASH\",\n outputs: [\n {\n internalType: \"bytes32\",\n name: \"\",\n type: \"bytes32\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"accountLayer\",\n outputs: [\n {\n internalType: \"address\",\n name: \"\",\n type: \"address\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"string\",\n name: \"name\",\n type: \"string\",\n },\n {\n components: [\n {\n internalType: \"uint256[]\",\n name: \"insertionPoints\",\n type: \"uint256[]\",\n },\n {\n internalType: \"uint256[]\",\n name: \"sourceIndices\",\n type: \"uint256[]\",\n },\n {\n internalType: \"uint256[]\",\n name: \"sourceOffsets\",\n type: \"uint256[]\",\n },\n ],\n internalType: \"struct InstantLayer.Operation[]\",\n name: \"operations\",\n type: \"tuple[]\",\n },\n ],\n name: \"addTemplate\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"\",\n type: \"address\",\n },\n ],\n name: \"delegationNonces\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"\",\n type: \"address\",\n },\n {\n internalType: \"address\",\n name: \"\",\n type: \"address\",\n },\n {\n internalType: \"bytes4\",\n name: \"\",\n type: \"bytes4\",\n },\n ],\n name: \"delegations\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"domainSeparator\",\n outputs: [\n {\n internalType: \"bytes32\",\n name: \"\",\n type: \"bytes32\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"eip712Domain\",\n outputs: [\n {\n internalType: \"bytes1\",\n name: \"fields\",\n type: \"bytes1\",\n },\n {\n internalType: \"string\",\n name: \"name\",\n type: \"string\",\n },\n {\n internalType: \"string\",\n name: \"version\",\n type: \"string\",\n },\n {\n internalType: \"uint256\",\n name: \"chainId\",\n type: \"uint256\",\n },\n {\n internalType: \"address\",\n name: \"verifyingContract\",\n type: \"address\",\n },\n {\n internalType: \"bytes32\",\n name: \"salt\",\n type: \"bytes32\",\n },\n {\n internalType: \"uint256[]\",\n name: \"extensions\",\n type: \"uint256[]\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n components: [\n {\n internalType: \"address\",\n name: \"signer\",\n type: \"address\",\n },\n {\n internalType: \"address\",\n name: \"target\",\n type: \"address\",\n },\n {\n internalType: \"bytes\",\n name: \"callData\",\n type: \"bytes\",\n },\n {\n components: [\n {\n internalType: \"address\",\n name: \"addr\",\n type: \"address\",\n },\n {\n internalType: \"bool\",\n name: \"isPartyB\",\n type: \"bool\",\n },\n ],\n internalType: \"struct InstantLayer.Account\",\n name: \"signerAccount\",\n type: \"tuple\",\n },\n {\n components: [\n {\n internalType: \"uint256\",\n name: \"offset\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"length\",\n type: \"uint256\",\n },\n {\n internalType: \"address\",\n name: \"authorizedFlexFiller\",\n type: \"address\",\n },\n ],\n internalType: \"struct InstantLayer.FlexField[]\",\n name: \"flexFields\",\n type: \"tuple[]\",\n },\n {\n internalType: \"uint256\",\n name: \"maxUses\",\n type: \"uint256\",\n },\n {\n components: [\n {\n internalType: \"uint256\",\n name: \"nonce\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"deadline\",\n type: \"uint256\",\n },\n {\n internalType: \"bytes32\",\n name: \"salt\",\n type: \"bytes32\",\n },\n ],\n internalType: \"struct InstantLayer.ReplayAttackHeader\",\n name: \"replayAttackHeader\",\n type: \"tuple\",\n },\n ],\n internalType: \"struct InstantLayer.SignedOperation[]\",\n name: \"signedOps\",\n type: \"tuple[]\",\n },\n {\n internalType: \"bytes[]\",\n name: \"signatures\",\n type: \"bytes[]\",\n },\n {\n internalType: \"bytes[][]\",\n name: \"fills\",\n type: \"bytes[][]\",\n },\n {\n internalType: \"bytes[][]\",\n name: \"flexFillerSignatures\",\n type: \"bytes[][]\",\n },\n ],\n name: \"executeBatch\",\n outputs: [\n {\n internalType: \"bytes[]\",\n name: \"results\",\n type: \"bytes[]\",\n },\n ],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"uint256\",\n name: \"templateId\",\n type: \"uint256\",\n },\n {\n components: [\n {\n internalType: \"address\",\n name: \"signer\",\n type: \"address\",\n },\n {\n internalType: \"address\",\n name: \"target\",\n type: \"address\",\n },\n {\n internalType: \"bytes\",\n name: \"callData\",\n type: \"bytes\",\n },\n {\n components: [\n {\n internalType: \"address\",\n name: \"addr\",\n type: \"address\",\n },\n {\n internalType: \"bool\",\n name: \"isPartyB\",\n type: \"bool\",\n },\n ],\n internalType: \"struct InstantLayer.Account\",\n name: \"signerAccount\",\n type: \"tuple\",\n },\n {\n components: [\n {\n internalType: \"uint256\",\n name: \"offset\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"length\",\n type: \"uint256\",\n },\n {\n internalType: \"address\",\n name: \"authorizedFlexFiller\",\n type: \"address\",\n },\n ],\n internalType: \"struct InstantLayer.FlexField[]\",\n name: \"flexFields\",\n type: \"tuple[]\",\n },\n {\n internalType: \"uint256\",\n name: \"maxUses\",\n type: \"uint256\",\n },\n {\n components: [\n {\n internalType: \"uint256\",\n name: \"nonce\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"deadline\",\n type: \"uint256\",\n },\n {\n internalType: \"bytes32\",\n name: \"salt\",\n type: \"bytes32\",\n },\n ],\n internalType: \"struct InstantLayer.ReplayAttackHeader\",\n name: \"replayAttackHeader\",\n type: \"tuple\",\n },\n ],\n internalType: \"struct InstantLayer.SignedOperation[]\",\n name: \"signedOps\",\n type: \"tuple[]\",\n },\n {\n internalType: \"bytes[]\",\n name: \"signatures\",\n type: \"bytes[]\",\n },\n {\n internalType: \"bytes[][]\",\n name: \"fills\",\n type: \"bytes[][]\",\n },\n {\n internalType: \"bytes[][]\",\n name: \"flexFillerSignatures\",\n type: \"bytes[][]\",\n },\n ],\n name: \"executeTemplate\",\n outputs: [\n {\n internalType: \"bytes[]\",\n name: \"results\",\n type: \"bytes[]\",\n },\n ],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n components: [\n {\n internalType: \"address\",\n name: \"addr\",\n type: \"address\",\n },\n {\n internalType: \"bool\",\n name: \"isPartyB\",\n type: \"bool\",\n },\n ],\n internalType: \"struct InstantLayer.Account\",\n name: \"account\",\n type: \"tuple\",\n },\n {\n internalType: \"address\",\n name: \"delegate\",\n type: \"address\",\n },\n {\n internalType: \"bytes4[]\",\n name: \"selectors\",\n type: \"bytes4[]\",\n },\n ],\n name: \"finalizeRevokeDelegation\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n components: [\n {\n internalType: \"address\",\n name: \"addr\",\n type: \"address\",\n },\n {\n internalType: \"bool\",\n name: \"isPartyB\",\n type: \"bool\",\n },\n ],\n internalType: \"struct InstantLayer.Account\",\n name: \"_delegator\",\n type: \"tuple\",\n },\n {\n internalType: \"address[]\",\n name: \"delegates\",\n type: \"address[]\",\n },\n {\n internalType: \"bytes4[][]\",\n name: \"selectors\",\n type: \"bytes4[][]\",\n },\n ],\n name: \"getActiveDelegations\",\n outputs: [\n {\n components: [\n {\n components: [\n {\n internalType: \"address\",\n name: \"addr\",\n type: \"address\",\n },\n {\n internalType: \"bool\",\n name: \"isPartyB\",\n type: \"bool\",\n },\n ],\n internalType: \"struct InstantLayer.Account\",\n name: \"account\",\n type: \"tuple\",\n },\n {\n internalType: \"address\",\n name: \"delegatedSigner\",\n type: \"address\",\n },\n {\n internalType: \"bytes4[]\",\n name: \"selectors\",\n type: \"bytes4[]\",\n },\n {\n internalType: \"uint256\",\n name: \"expiryTimestamp\",\n type: \"uint256\",\n },\n ],\n internalType: \"struct InstantLayer.DelegationInfo[]\",\n name: \"activeDelegates\",\n type: \"tuple[]\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n components: [\n {\n components: [\n {\n components: [\n {\n internalType: \"address\",\n name: \"addr\",\n type: \"address\",\n },\n {\n internalType: \"bool\",\n name: \"isPartyB\",\n type: \"bool\",\n },\n ],\n internalType: \"struct InstantLayer.Account\",\n name: \"account\",\n type: \"tuple\",\n },\n {\n internalType: \"address\",\n name: \"delegatedSigner\",\n type: \"address\",\n },\n {\n internalType: \"bytes4[]\",\n name: \"selectors\",\n type: \"bytes4[]\",\n },\n {\n internalType: \"uint256\",\n name: \"expiryTimestamp\",\n type: \"uint256\",\n },\n ],\n internalType: \"struct InstantLayer.DelegationInfo\",\n name: \"delegationInfo\",\n type: \"tuple\",\n },\n {\n components: [\n {\n internalType: \"uint256\",\n name: \"nonce\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"deadline\",\n type: \"uint256\",\n },\n {\n internalType: \"bytes32\",\n name: \"salt\",\n type: \"bytes32\",\n },\n ],\n internalType: \"struct InstantLayer.ReplayAttackHeader\",\n name: \"replayAttackHeader\",\n type: \"tuple\",\n },\n ],\n internalType: \"struct InstantLayer.SignedDelegation\",\n name: \"signedDelegation\",\n type: \"tuple\",\n },\n ],\n name: \"getDelegationHash\",\n outputs: [\n {\n internalType: \"bytes32\",\n name: \"msgDigest\",\n type: \"bytes32\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"bytes32\",\n name: \"opHash\",\n type: \"bytes32\",\n },\n {\n internalType: \"uint256\",\n name: \"fieldIndex\",\n type: \"uint256\",\n },\n {\n internalType: \"bytes\",\n name: \"value\",\n type: \"bytes\",\n },\n ],\n name: \"getFlexFillAuthHash\",\n outputs: [\n {\n internalType: \"bytes32\",\n name: \"msgDigest\",\n type: \"bytes32\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"getNextTemplateId\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n components: [\n {\n internalType: \"address\",\n name: \"signer\",\n type: \"address\",\n },\n {\n internalType: \"address\",\n name: \"target\",\n type: \"address\",\n },\n {\n internalType: \"bytes\",\n name: \"callData\",\n type: \"bytes\",\n },\n {\n components: [\n {\n internalType: \"address\",\n name: \"addr\",\n type: \"address\",\n },\n {\n internalType: \"bool\",\n name: \"isPartyB\",\n type: \"bool\",\n },\n ],\n internalType: \"struct InstantLayer.Account\",\n name: \"signerAccount\",\n type: \"tuple\",\n },\n {\n components: [\n {\n internalType: \"uint256\",\n name: \"offset\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"length\",\n type: \"uint256\",\n },\n {\n internalType: \"address\",\n name: \"authorizedFlexFiller\",\n type: \"address\",\n },\n ],\n internalType: \"struct InstantLayer.FlexField[]\",\n name: \"flexFields\",\n type: \"tuple[]\",\n },\n {\n internalType: \"uint256\",\n name: \"maxUses\",\n type: \"uint256\",\n },\n {\n components: [\n {\n internalType: \"uint256\",\n name: \"nonce\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"deadline\",\n type: \"uint256\",\n },\n {\n internalType: \"bytes32\",\n name: \"salt\",\n type: \"bytes32\",\n },\n ],\n internalType: \"struct InstantLayer.ReplayAttackHeader\",\n name: \"replayAttackHeader\",\n type: \"tuple\",\n },\n ],\n internalType: \"struct InstantLayer.SignedOperation\",\n name: \"signedOp\",\n type: \"tuple\",\n },\n ],\n name: \"getOperationHash\",\n outputs: [\n {\n internalType: \"bytes32\",\n name: \"msgDigest\",\n type: \"bytes32\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"bytes32\",\n name: \"role\",\n type: \"bytes32\",\n },\n ],\n name: \"getRoleAdmin\",\n outputs: [\n {\n internalType: \"bytes32\",\n name: \"\",\n type: \"bytes32\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"bytes32\",\n name: \"role\",\n type: \"bytes32\",\n },\n {\n internalType: \"uint256\",\n name: \"index\",\n type: \"uint256\",\n },\n ],\n name: \"getRoleMember\",\n outputs: [\n {\n internalType: \"address\",\n name: \"\",\n type: \"address\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"bytes32\",\n name: \"role\",\n type: \"bytes32\",\n },\n ],\n name: \"getRoleMemberCount\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"bytes32\",\n name: \"role\",\n type: \"bytes32\",\n },\n ],\n name: \"getRoleMembers\",\n outputs: [\n {\n internalType: \"address[]\",\n name: \"\",\n type: \"address[]\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"uint256\",\n name: \"templateId\",\n type: \"uint256\",\n },\n ],\n name: \"getTemplate\",\n outputs: [\n {\n components: [\n {\n internalType: \"string\",\n name: \"name\",\n type: \"string\",\n },\n {\n components: [\n {\n internalType: \"uint256[]\",\n name: \"insertionPoints\",\n type: \"uint256[]\",\n },\n {\n internalType: \"uint256[]\",\n name: \"sourceIndices\",\n type: \"uint256[]\",\n },\n {\n internalType: \"uint256[]\",\n name: \"sourceOffsets\",\n type: \"uint256[]\",\n },\n ],\n internalType: \"struct InstantLayer.Operation[]\",\n name: \"operations\",\n type: \"tuple[]\",\n },\n {\n internalType: \"bool\",\n name: \"active\",\n type: \"bool\",\n },\n ],\n internalType: \"struct InstantLayer.Template\",\n name: \"\",\n type: \"tuple\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"uint256\",\n name: \"templateId\",\n type: \"uint256\",\n },\n ],\n name: \"getTemplateOperations\",\n outputs: [\n {\n components: [\n {\n internalType: \"uint256[]\",\n name: \"insertionPoints\",\n type: \"uint256[]\",\n },\n {\n internalType: \"uint256[]\",\n name: \"sourceIndices\",\n type: \"uint256[]\",\n },\n {\n internalType: \"uint256[]\",\n name: \"sourceOffsets\",\n type: \"uint256[]\",\n },\n ],\n internalType: \"struct InstantLayer.Operation[]\",\n name: \"\",\n type: \"tuple[]\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"uint256\",\n name: \"startId\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"limit\",\n type: \"uint256\",\n },\n ],\n name: \"getTemplates\",\n outputs: [\n {\n components: [\n {\n internalType: \"string\",\n name: \"name\",\n type: \"string\",\n },\n {\n components: [\n {\n internalType: \"uint256[]\",\n name: \"insertionPoints\",\n type: \"uint256[]\",\n },\n {\n internalType: \"uint256[]\",\n name: \"sourceIndices\",\n type: \"uint256[]\",\n },\n {\n internalType: \"uint256[]\",\n name: \"sourceOffsets\",\n type: \"uint256[]\",\n },\n ],\n internalType: \"struct InstantLayer.Operation[]\",\n name: \"operations\",\n type: \"tuple[]\",\n },\n {\n internalType: \"bool\",\n name: \"active\",\n type: \"bool\",\n },\n ],\n internalType: \"struct InstantLayer.Template[]\",\n name: \"\",\n type: \"tuple[]\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n components: [\n {\n components: [\n {\n components: [\n {\n internalType: \"address\",\n name: \"addr\",\n type: \"address\",\n },\n {\n internalType: \"bool\",\n name: \"isPartyB\",\n type: \"bool\",\n },\n ],\n internalType: \"struct InstantLayer.Account\",\n name: \"account\",\n type: \"tuple\",\n },\n {\n internalType: \"address\",\n name: \"delegatedSigner\",\n type: \"address\",\n },\n {\n internalType: \"bytes4[]\",\n name: \"selectors\",\n type: \"bytes4[]\",\n },\n {\n internalType: \"uint256\",\n name: \"expiryTimestamp\",\n type: \"uint256\",\n },\n ],\n internalType: \"struct InstantLayer.DelegationInfo\",\n name: \"delegationInfo\",\n type: \"tuple\",\n },\n {\n components: [\n {\n internalType: \"uint256\",\n name: \"nonce\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"deadline\",\n type: \"uint256\",\n },\n {\n internalType: \"bytes32\",\n name: \"salt\",\n type: \"bytes32\",\n },\n ],\n internalType: \"struct InstantLayer.ReplayAttackHeader\",\n name: \"replayAttackHeader\",\n type: \"tuple\",\n },\n ],\n internalType: \"struct InstantLayer.SignedDelegation\",\n name: \"signedDelegation\",\n type: \"tuple\",\n },\n {\n internalType: \"bytes\",\n name: \"signature\",\n type: \"bytes\",\n },\n ],\n name: \"grantBatchDelegationBySig\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n components: [\n {\n components: [\n {\n internalType: \"address\",\n name: \"addr\",\n type: \"address\",\n },\n {\n internalType: \"bool\",\n name: \"isPartyB\",\n type: \"bool\",\n },\n ],\n internalType: \"struct InstantLayer.Account\",\n name: \"account\",\n type: \"tuple\",\n },\n {\n internalType: \"address\",\n name: \"delegatedSigner\",\n type: \"address\",\n },\n {\n internalType: \"bytes4[]\",\n name: \"selectors\",\n type: \"bytes4[]\",\n },\n {\n internalType: \"uint256\",\n name: \"expiryTimestamp\",\n type: \"uint256\",\n },\n ],\n internalType: \"struct InstantLayer.DelegationInfo\",\n name: \"info\",\n type: \"tuple\",\n },\n ],\n name: \"grantDelegation\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"bytes32\",\n name: \"role\",\n type: \"bytes32\",\n },\n {\n internalType: \"address\",\n name: \"account\",\n type: \"address\",\n },\n ],\n name: \"grantRole\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"bytes32\",\n name: \"role\",\n type: \"bytes32\",\n },\n {\n internalType: \"address\",\n name: \"account\",\n type: \"address\",\n },\n ],\n name: \"hasRole\",\n outputs: [\n {\n internalType: \"bool\",\n name: \"\",\n type: \"bool\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n components: [\n {\n internalType: \"address\",\n name: \"addr\",\n type: \"address\",\n },\n {\n internalType: \"bool\",\n name: \"isPartyB\",\n type: \"bool\",\n },\n ],\n internalType: \"struct InstantLayer.Account\",\n name: \"account\",\n type: \"tuple\",\n },\n {\n internalType: \"address\",\n name: \"delegate\",\n type: \"address\",\n },\n {\n internalType: \"bytes4[]\",\n name: \"selectors\",\n type: \"bytes4[]\",\n },\n ],\n name: \"initiateRevokeDelegation\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"delegator\",\n type: \"address\",\n },\n {\n internalType: \"address\",\n name: \"delegate\",\n type: \"address\",\n },\n {\n internalType: \"bytes4\",\n name: \"selector\",\n type: \"bytes4\",\n },\n ],\n name: \"isDelegationActive\",\n outputs: [\n {\n internalType: \"bool\",\n name: \"\",\n type: \"bool\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"addr\",\n type: \"address\",\n },\n ],\n name: \"isPartyBRegistered\",\n outputs: [\n {\n internalType: \"bool\",\n name: \"\",\n type: \"bool\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"nextTemplateId\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"\",\n type: \"address\",\n },\n ],\n name: \"nonces\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"bytes32\",\n name: \"\",\n type: \"bytes32\",\n },\n ],\n name: \"operationUsageCount\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"\",\n type: \"address\",\n },\n {\n internalType: \"address\",\n name: \"\",\n type: \"address\",\n },\n {\n internalType: \"bytes4\",\n name: \"\",\n type: \"bytes4\",\n },\n ],\n name: \"pendingRevocationEta\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address[]\",\n name: \"partyBs\",\n type: \"address[]\",\n },\n ],\n name: \"registerPartyBs\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"\",\n type: \"address\",\n },\n ],\n name: \"registeredPartyBs\",\n outputs: [\n {\n internalType: \"bool\",\n name: \"\",\n type: \"bool\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"bytes32\",\n name: \"role\",\n type: \"bytes32\",\n },\n {\n internalType: \"address\",\n name: \"callerConfirmation\",\n type: \"address\",\n },\n ],\n name: \"renounceRole\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"revocationCooldown\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"bytes32\",\n name: \"role\",\n type: \"bytes32\",\n },\n {\n internalType: \"address\",\n name: \"account\",\n type: \"address\",\n },\n ],\n name: \"revokeRole\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"_accountLayer\",\n type: \"address\",\n },\n ],\n name: \"setAccountLayer\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"uint256\",\n name: \"newCooldown\",\n type: \"uint256\",\n },\n ],\n name: \"setRevocationCooldown\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"target\",\n type: \"address\",\n },\n {\n internalType: \"bool\",\n name: \"allowed\",\n type: \"bool\",\n },\n ],\n name: \"setTargetWhitelist\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"uint256\",\n name: \"templateId\",\n type: \"uint256\",\n },\n {\n internalType: \"bool\",\n name: \"active\",\n type: \"bool\",\n },\n ],\n name: \"setTemplateActive\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"uint256\",\n name: \"templateId\",\n type: \"uint256\",\n },\n {\n internalType: \"bool\",\n name: \"mode\",\n type: \"bool\",\n },\n ],\n name: \"setTemplateInstantOpenMode\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"bool\",\n name: \"enabled\",\n type: \"bool\",\n },\n ],\n name: \"setTransientContextEnabled\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"bytes4\",\n name: \"interfaceId\",\n type: \"bytes4\",\n },\n ],\n name: \"supportsInterface\",\n outputs: [\n {\n internalType: \"bool\",\n name: \"\",\n type: \"bool\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"symmio\",\n outputs: [\n {\n internalType: \"contract ISymmio\",\n name: \"\",\n type: \"address\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n name: \"templateInstantOpenMode\",\n outputs: [\n {\n internalType: \"bool\",\n name: \"\",\n type: \"bool\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n name: \"templates\",\n outputs: [\n {\n internalType: \"string\",\n name: \"name\",\n type: \"string\",\n },\n {\n internalType: \"bool\",\n name: \"active\",\n type: \"bool\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"transientContextEnabled\",\n outputs: [\n {\n internalType: \"bool\",\n name: \"\",\n type: \"bool\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"partyB\",\n type: \"address\",\n },\n ],\n name: \"unregisterPartyB\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"bytes32\",\n name: \"\",\n type: \"bytes32\",\n },\n ],\n name: \"usedDelegationHashes\",\n outputs: [\n {\n internalType: \"bool\",\n name: \"\",\n type: \"bool\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"\",\n type: \"address\",\n },\n ],\n name: \"whitelistedTargets\",\n outputs: [\n {\n internalType: \"bool\",\n name: \"\",\n type: \"bool\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n] as const;\n"],"mappings":";AAUA,IAAa,IAAkB;CAC7B;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,GACA;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CAAC;EACT,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,GACA;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ,CAAC;EACT,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ,CAAC;EACT,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,GACA;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ,CAAC;EACT,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ,CAAC;EACT,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ,CAAC;EACT,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ,CAAC;EACT,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ;GACN;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;EACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,GACA;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ,CAAC;EACT,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ,CAAC;EACT,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,GACA;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ;GACN;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;EACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ,CAAC;EACT,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ;GACN;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;EACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ,CAAC;EACT,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ,CAAC;EACT,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,GACA;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,GACA;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ,CAAC;EACT,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,GACA;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,GACA;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ,CAAC;EACT,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ,CAAC;EACT,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ,CAAC;EACT,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,WAAW;EACX,QAAQ,CACN;GACE,SAAS;GACT,cAAc;GACd,MAAM;GACN,MAAM;EACR,GACA;GACE,SAAS;GACT,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,WAAW;EACX,QAAQ;GACN;IACE,SAAS;IACT,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,SAAS;IACT,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,SAAS;IACT,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,SAAS;IACT,cAAc;IACd,MAAM;IACN,MAAM;GACR;EACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,WAAW;EACX,QAAQ,CACN;GACE,SAAS;GACT,cAAc;GACd,MAAM;GACN,MAAM;EACR,GACA;GACE,SAAS;GACT,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,WAAW;EACX,QAAQ;GACN;IACE,SAAS;IACT,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,SAAS;IACT,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,SAAS;IACT,cAAc;IACd,MAAM;IACN,MAAM;GACR;EACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,WAAW;EACX,QAAQ,CAAC;EACT,MAAM;EACN,MAAM;CACR;CACA;EACE,WAAW;EACX,QAAQ,CACN;GACE,SAAS;GACT,cAAc;GACd,MAAM;GACN,MAAM;EACR,GACA;GACE,SAAS;GACT,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,WAAW;EACX,QAAQ,CACN;GACE,SAAS;GACT,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,WAAW;EACX,QAAQ,CACN;GACE,SAAS;GACT,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,WAAW;EACX,QAAQ,CACN;GACE,SAAS;GACT,cAAc;GACd,MAAM;GACN,MAAM;EACR,GACA;GACE,SAAS;GACT,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,WAAW;EACX,QAAQ;GACN;IACE,SAAS;IACT,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,SAAS;IACT,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,SAAS;IACT,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,SAAS;IACT,cAAc;IACd,MAAM;IACN,MAAM;GACR;EACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,WAAW;EACX,QAAQ;GACN;IACE,SAAS;IACT,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,SAAS;IACT,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,SAAS;IACT,cAAc;IACd,MAAM;IACN,MAAM;GACR;EACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,WAAW;EACX,QAAQ;GACN;IACE,SAAS;IACT,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,SAAS;IACT,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,SAAS;IACT,cAAc;IACd,MAAM;IACN,MAAM;GACR;EACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,WAAW;EACX,QAAQ;GACN;IACE,SAAS;IACT,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,SAAS;IACT,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,SAAS;IACT,cAAc;IACd,MAAM;IACN,MAAM;GACR;EACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,WAAW;EACX,QAAQ,CACN;GACE,SAAS;GACT,cAAc;GACd,MAAM;GACN,MAAM;EACR,GACA;GACE,SAAS;GACT,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,WAAW;EACX,QAAQ,CACN;GACE,SAAS;GACT,cAAc;GACd,MAAM;GACN,MAAM;EACR,GACA;GACE,SAAS;GACT,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,WAAW;EACX,QAAQ,CACN;GACE,SAAS;GACT,cAAc;GACd,MAAM;GACN,MAAM;EACR,GACA;GACE,SAAS;GACT,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,WAAW;EACX,QAAQ,CACN;GACE,SAAS;GACT,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,MAAM;CACR;CACA;EACE,QAAQ,CAAC;EACT,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CAAC;EACT,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CAAC;EACT,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CAAC;EACT,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CAAC;EACT,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CAAC;EACT,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CAAC;EACT,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CAAC;EACT,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CAAC;EACT,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CAAC;EACT,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CAAC;EACT,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,GACA;GACE,YAAY;IACV;KACE,cAAc;KACd,MAAM;KACN,MAAM;IACR;IACA;KACE,cAAc;KACd,MAAM;KACN,MAAM;IACR;IACA;KACE,cAAc;KACd,MAAM;KACN,MAAM;IACR;GACF;GACA,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,SAAS,CAAC;EACV,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ;GACN;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;EACF;EACA,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CAAC;EACT,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CAAC;EACT,MAAM;EACN,SAAS;GACP;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;EACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ;GACN;IACE,YAAY;KACV;MACE,cAAc;MACd,MAAM;MACN,MAAM;KACR;KACA;MACE,cAAc;MACd,MAAM;MACN,MAAM;KACR;KACA;MACE,cAAc;MACd,MAAM;MACN,MAAM;KACR;KACA;MACE,YAAY,CACV;OACE,cAAc;OACd,MAAM;OACN,MAAM;MACR,GACA;OACE,cAAc;OACd,MAAM;OACN,MAAM;MACR,CACF;MACA,cAAc;MACd,MAAM;MACN,MAAM;KACR;KACA;MACE,YAAY;OACV;QACE,cAAc;QACd,MAAM;QACN,MAAM;OACR;OACA;QACE,cAAc;QACd,MAAM;QACN,MAAM;OACR;OACA;QACE,cAAc;QACd,MAAM;QACN,MAAM;OACR;MACF;MACA,cAAc;MACd,MAAM;MACN,MAAM;KACR;KACA;MACE,cAAc;MACd,MAAM;MACN,MAAM;KACR;KACA;MACE,YAAY;OACV;QACE,cAAc;QACd,MAAM;QACN,MAAM;OACR;OACA;QACE,cAAc;QACd,MAAM;QACN,MAAM;OACR;OACA;QACE,cAAc;QACd,MAAM;QACN,MAAM;OACR;MACF;MACA,cAAc;MACd,MAAM;MACN,MAAM;KACR;IACF;IACA,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;EACF;EACA,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ;GACN;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,YAAY;KACV;MACE,cAAc;MACd,MAAM;MACN,MAAM;KACR;KACA;MACE,cAAc;MACd,MAAM;MACN,MAAM;KACR;KACA;MACE,cAAc;MACd,MAAM;MACN,MAAM;KACR;KACA;MACE,YAAY,CACV;OACE,cAAc;OACd,MAAM;OACN,MAAM;MACR,GACA;OACE,cAAc;OACd,MAAM;OACN,MAAM;MACR,CACF;MACA,cAAc;MACd,MAAM;MACN,MAAM;KACR;KACA;MACE,YAAY;OACV;QACE,cAAc;QACd,MAAM;QACN,MAAM;OACR;OACA;QACE,cAAc;QACd,MAAM;QACN,MAAM;OACR;OACA;QACE,cAAc;QACd,MAAM;QACN,MAAM;OACR;MACF;MACA,cAAc;MACd,MAAM;MACN,MAAM;KACR;KACA;MACE,cAAc;MACd,MAAM;MACN,MAAM;KACR;KACA;MACE,YAAY;OACV;QACE,cAAc;QACd,MAAM;QACN,MAAM;OACR;OACA;QACE,cAAc;QACd,MAAM;QACN,MAAM;OACR;OACA;QACE,cAAc;QACd,MAAM;QACN,MAAM;OACR;MACF;MACA,cAAc;MACd,MAAM;MACN,MAAM;KACR;IACF;IACA,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;EACF;EACA,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ;GACN;IACE,YAAY,CACV;KACE,cAAc;KACd,MAAM;KACN,MAAM;IACR,GACA;KACE,cAAc;KACd,MAAM;KACN,MAAM;IACR,CACF;IACA,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;EACF;EACA,MAAM;EACN,SAAS,CAAC;EACV,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ;GACN;IACE,YAAY,CACV;KACE,cAAc;KACd,MAAM;KACN,MAAM;IACR,GACA;KACE,cAAc;KACd,MAAM;KACN,MAAM;IACR,CACF;IACA,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;EACF;EACA,MAAM;EACN,SAAS,CACP;GACE,YAAY;IACV;KACE,YAAY,CACV;MACE,cAAc;MACd,MAAM;MACN,MAAM;KACR,GACA;MACE,cAAc;MACd,MAAM;MACN,MAAM;KACR,CACF;KACA,cAAc;KACd,MAAM;KACN,MAAM;IACR;IACA;KACE,cAAc;KACd,MAAM;KACN,MAAM;IACR;IACA;KACE,cAAc;KACd,MAAM;KACN,MAAM;IACR;IACA;KACE,cAAc;KACd,MAAM;KACN,MAAM;IACR;GACF;GACA,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,YAAY,CACV;IACE,YAAY;KACV;MACE,YAAY,CACV;OACE,cAAc;OACd,MAAM;OACN,MAAM;MACR,GACA;OACE,cAAc;OACd,MAAM;OACN,MAAM;MACR,CACF;MACA,cAAc;MACd,MAAM;MACN,MAAM;KACR;KACA;MACE,cAAc;MACd,MAAM;MACN,MAAM;KACR;KACA;MACE,cAAc;MACd,MAAM;MACN,MAAM;KACR;KACA;MACE,cAAc;MACd,MAAM;MACN,MAAM;KACR;IACF;IACA,cAAc;IACd,MAAM;IACN,MAAM;GACR,GACA;IACE,YAAY;KACV;MACE,cAAc;MACd,MAAM;MACN,MAAM;KACR;KACA;MACE,cAAc;MACd,MAAM;MACN,MAAM;KACR;KACA;MACE,cAAc;MACd,MAAM;MACN,MAAM;KACR;IACF;IACA,cAAc;IACd,MAAM;IACN,MAAM;GACR,CACF;GACA,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ;GACN;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;EACF;EACA,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CAAC;EACT,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,YAAY;IACV;KACE,cAAc;KACd,MAAM;KACN,MAAM;IACR;IACA;KACE,cAAc;KACd,MAAM;KACN,MAAM;IACR;IACA;KACE,cAAc;KACd,MAAM;KACN,MAAM;IACR;IACA;KACE,YAAY,CACV;MACE,cAAc;MACd,MAAM;MACN,MAAM;KACR,GACA;MACE,cAAc;MACd,MAAM;MACN,MAAM;KACR,CACF;KACA,cAAc;KACd,MAAM;KACN,MAAM;IACR;IACA;KACE,YAAY;MACV;OACE,cAAc;OACd,MAAM;OACN,MAAM;MACR;MACA;OACE,cAAc;OACd,MAAM;OACN,MAAM;MACR;MACA;OACE,cAAc;OACd,MAAM;OACN,MAAM;MACR;KACF;KACA,cAAc;KACd,MAAM;KACN,MAAM;IACR;IACA;KACE,cAAc;KACd,MAAM;KACN,MAAM;IACR;IACA;KACE,YAAY;MACV;OACE,cAAc;OACd,MAAM;OACN,MAAM;MACR;MACA;OACE,cAAc;OACd,MAAM;OACN,MAAM;MACR;MACA;OACE,cAAc;OACd,MAAM;OACN,MAAM;MACR;KACF;KACA,cAAc;KACd,MAAM;KACN,MAAM;IACR;GACF;GACA,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,GACA;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,SAAS,CACP;GACE,YAAY;IACV;KACE,cAAc;KACd,MAAM;KACN,MAAM;IACR;IACA;KACE,YAAY;MACV;OACE,cAAc;OACd,MAAM;OACN,MAAM;MACR;MACA;OACE,cAAc;OACd,MAAM;OACN,MAAM;MACR;MACA;OACE,cAAc;OACd,MAAM;OACN,MAAM;MACR;KACF;KACA,cAAc;KACd,MAAM;KACN,MAAM;IACR;IACA;KACE,cAAc;KACd,MAAM;KACN,MAAM;IACR;GACF;GACA,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,SAAS,CACP;GACE,YAAY;IACV;KACE,cAAc;KACd,MAAM;KACN,MAAM;IACR;IACA;KACE,cAAc;KACd,MAAM;KACN,MAAM;IACR;IACA;KACE,cAAc;KACd,MAAM;KACN,MAAM;IACR;GACF;GACA,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,GACA;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,SAAS,CACP;GACE,YAAY;IACV;KACE,cAAc;KACd,MAAM;KACN,MAAM;IACR;IACA;KACE,YAAY;MACV;OACE,cAAc;OACd,MAAM;OACN,MAAM;MACR;MACA;OACE,cAAc;OACd,MAAM;OACN,MAAM;MACR;MACA;OACE,cAAc;OACd,MAAM;OACN,MAAM;MACR;KACF;KACA,cAAc;KACd,MAAM;KACN,MAAM;IACR;IACA;KACE,cAAc;KACd,MAAM;KACN,MAAM;IACR;GACF;GACA,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,YAAY,CACV;IACE,YAAY;KACV;MACE,YAAY,CACV;OACE,cAAc;OACd,MAAM;OACN,MAAM;MACR,GACA;OACE,cAAc;OACd,MAAM;OACN,MAAM;MACR,CACF;MACA,cAAc;MACd,MAAM;MACN,MAAM;KACR;KACA;MACE,cAAc;MACd,MAAM;MACN,MAAM;KACR;KACA;MACE,cAAc;MACd,MAAM;MACN,MAAM;KACR;KACA;MACE,cAAc;MACd,MAAM;MACN,MAAM;KACR;IACF;IACA,cAAc;IACd,MAAM;IACN,MAAM;GACR,GACA;IACE,YAAY;KACV;MACE,cAAc;MACd,MAAM;MACN,MAAM;KACR;KACA;MACE,cAAc;MACd,MAAM;MACN,MAAM;KACR;KACA;MACE,cAAc;MACd,MAAM;MACN,MAAM;KACR;IACF;IACA,cAAc;IACd,MAAM;IACN,MAAM;GACR,CACF;GACA,cAAc;GACd,MAAM;GACN,MAAM;EACR,GACA;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,SAAS,CAAC;EACV,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,YAAY;IACV;KACE,YAAY,CACV;MACE,cAAc;MACd,MAAM;MACN,MAAM;KACR,GACA;MACE,cAAc;MACd,MAAM;MACN,MAAM;KACR,CACF;KACA,cAAc;KACd,MAAM;KACN,MAAM;IACR;IACA;KACE,cAAc;KACd,MAAM;KACN,MAAM;IACR;IACA;KACE,cAAc;KACd,MAAM;KACN,MAAM;IACR;IACA;KACE,cAAc;KACd,MAAM;KACN,MAAM;IACR;GACF;GACA,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,SAAS,CAAC;EACV,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,GACA;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,SAAS,CAAC;EACV,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,GACA;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ;GACN;IACE,YAAY,CACV;KACE,cAAc;KACd,MAAM;KACN,MAAM;IACR,GACA;KACE,cAAc;KACd,MAAM;KACN,MAAM;IACR,CACF;IACA,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;EACF;EACA,MAAM;EACN,SAAS,CAAC;EACV,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ;GACN;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;EACF;EACA,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CAAC;EACT,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ;GACN;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;GACA;IACE,cAAc;IACd,MAAM;IACN,MAAM;GACR;EACF;EACA,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,SAAS,CAAC;EACV,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,GACA;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,SAAS,CAAC;EACV,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CAAC;EACT,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,GACA;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,SAAS,CAAC;EACV,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,SAAS,CAAC;EACV,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,SAAS,CAAC;EACV,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,GACA;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,SAAS,CAAC;EACV,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,GACA;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,SAAS,CAAC;EACV,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,GACA;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,SAAS,CAAC;EACV,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,SAAS,CAAC;EACV,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CAAC;EACT,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,GACA;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CAAC;EACT,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,SAAS,CAAC;EACV,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;CACA;EACE,QAAQ,CACN;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,MAAM;EACN,SAAS,CACP;GACE,cAAc;GACd,MAAM;GACN,MAAM;EACR,CACF;EACA,iBAAiB;EACjB,MAAM;CACR;AACF"}
@@ -1,10 +1,10 @@
1
1
  import { Address, Hash } from 'viem';
2
2
  import { Config } from '../../../core/config/index.js';
3
- import { Compute, WriteContractParameter } from '../../../shared/types/properties.js';
3
+ import { Compute, GaslessWriteParameter, WriteContractParameter } from '../../../shared/types/properties.js';
4
4
  /**
5
5
  * Parameters for {@link addMargin}.
6
6
  */
7
- export type AddMarginParameters = Compute<WriteContractParameter & {
7
+ export type AddMarginParameters = Compute<WriteContractParameter & GaslessWriteParameter & {
8
8
  /**
9
9
  * The virtual account (VA) to add margin to. The connected wallet must be
10
10
  * the VA's on-chain owner; the contract reverts (`onlyAccountOwner`) otherwise.
@@ -1 +1 @@
1
- {"version":3,"file":"add-margin.d.ts","sourceRoot":"","sources":["../../../../src/symmio-contracts/account-layer/actions/add-margin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC1C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,KAAK,EAAE,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAKxF;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG,OAAO,CACvC,sBAAsB,GAAG;IACvB;;;OAGG;IACH,cAAc,EAAE,OAAO,CAAC;IACxB;;;;OAIG;IACH,MAAM,EAAE,MAAM,CAAC;CAChB,CACF,CAAC;AAEF,wEAAwE;AACxE,MAAM,MAAM,mBAAmB,GAAG,IAAI,CAAC;AAEvC;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAsB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAkB7G"}
1
+ {"version":3,"file":"add-margin.d.ts","sourceRoot":"","sources":["../../../../src/symmio-contracts/account-layer/actions/add-margin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE1C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAEnD,OAAO,KAAK,EAAE,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAK/G;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG,OAAO,CACvC,sBAAsB,GACpB,qBAAqB,GAAG;IACtB;;;OAGG;IACH,cAAc,EAAE,OAAO,CAAC;IACxB;;;;OAIG;IACH,MAAM,EAAE,MAAM,CAAC;CAChB,CACJ,CAAC;AAEF,wEAAwE;AACxE,MAAM,MAAM,mBAAmB,GAAG,IAAI,CAAC;AAEvC;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAsB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CA2C7G"}
@@ -1,27 +1,44 @@
1
1
  import { accountLayerAbi as e } from "../../abi/v0.8.6/account-layer.js";
2
- import { shouldSimulateBeforeWrite as t } from "../../../shared/utils/simulate-before-write.js";
3
- import { simulateAddMargin as n } from "./simulate-add-margin.js";
2
+ import { maybeRelayAsGasless as t } from "../../../gasless/dispatch/maybe-relay-as-gasless.js";
3
+ import { shouldSimulateBeforeWrite as n } from "../../../shared/utils/simulate-before-write.js";
4
+ import { simulateAddMargin as r } from "./simulate-add-margin.js";
5
+ import { encodeFunctionData as i } from "viem";
4
6
  //#region src/symmio-contracts/account-layer/actions/add-margin.ts
5
- async function r(r, i) {
6
- let { chainId: a, virtualAccount: o, amount: s, from: c } = i, { addresses: l } = r.getChainConfig(a), u = await r.getWalletClient({
7
- chainId: a,
8
- from: c
7
+ async function a(a, o) {
8
+ let { chainId: s, virtualAccount: c, amount: l, from: u } = o, { addresses: d } = a.getChainConfig(s), f = await t(a, {
9
+ chainId: s,
10
+ from: u,
11
+ gasless: o.gasless,
12
+ virtualAccount: c,
13
+ calls: [{
14
+ target: d.accountLayerAddress,
15
+ callData: i({
16
+ abi: e,
17
+ functionName: "addMargin",
18
+ args: [c, l]
19
+ })
20
+ }]
9
21
  });
10
- return t(r, i) && await n(r, {
11
- chainId: a,
12
- virtualAccount: o,
13
- amount: s,
14
- from: u.account.address
15
- }), u.writeContract({
16
- address: l.accountLayerAddress,
22
+ if (f !== null) return f;
23
+ let p = await a.getWalletClient({
24
+ chainId: s,
25
+ from: u
26
+ });
27
+ return n(a, o) && await r(a, {
28
+ chainId: s,
29
+ virtualAccount: c,
30
+ amount: l,
31
+ from: p.account.address
32
+ }), p.writeContract({
33
+ address: d.accountLayerAddress,
17
34
  abi: e,
18
35
  functionName: "addMargin",
19
- args: [o, s],
20
- account: u.account,
21
- chain: u.chain
36
+ args: [c, l],
37
+ account: p.account,
38
+ chain: p.chain
22
39
  });
23
40
  }
24
41
  //#endregion
25
- export { r as addMargin };
42
+ export { a as addMargin };
26
43
 
27
44
  //# sourceMappingURL=add-margin.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"add-margin.js","names":[],"sources":["../../../../src/symmio-contracts/account-layer/actions/add-margin.ts"],"sourcesContent":["import type { Address, Hash } from \"viem\";\nimport type { Config } from \"../../../core/config\";\nimport type { Compute, WriteContractParameter } from \"../../../shared/types/properties\";\nimport { shouldSimulateBeforeWrite } from \"../../../shared/utils/simulate-before-write\";\nimport { accountLayerAbi } from \"../../abi/v0.8.6/account-layer\";\nimport { simulateAddMargin } from \"./simulate-add-margin\";\n\n/**\n * Parameters for {@link addMargin}.\n */\nexport type AddMarginParameters = Compute<\n WriteContractParameter & {\n /**\n * The virtual account (VA) to add margin to. The connected wallet must be\n * the VA's on-chain owner; the contract reverts (`onlyAccountOwner`) otherwise.\n */\n virtualAccount: Address;\n /**\n * Amount to add, in **18 decimals** (the internal allocated-balance unit,\n * not the collateral token's decimals). Moved from the parent subaccount's\n * already-deposited balance into the VA; reverts with `ZeroAmount` when `0`.\n */\n amount: bigint;\n }\n>;\n\n/** Return type of {@link addMargin}: the submitted transaction hash. */\nexport type AddMarginReturnType = Hash;\n\n/**\n * Add margin to a virtual account (VA) by moving collateral from the parent\n * subaccount's available balance into the VA, on the AccountLayer.\n *\n * Calls `AccountLayer.addMargin(virtualAccount, amount)`, which internally\n * transfers `amount` from the parent subaccount into the VA. This increases the\n * VA's margin (and lowers its liquidation risk). No signature is required.\n *\n * Dry-runs the call with {@link simulateAddMargin} first unless\n * `simulateBeforeWrite` is `false` (per-call, falling back to the config default).\n *\n * @param config - The SDK config (must have a `getWalletClient` resolver).\n * @param parameters - Virtual account address, amount (18 decimals), optional chain id.\n * @returns The submitted transaction hash. The caller waits on the receipt.\n * @throws {SymmError} when the chain is unsupported or no wallet is available.\n * @throws Viem's write errors (`ContractFunctionExecutionError`, ...).\n *\n * @example\n * ```ts\n * const hash = await addMargin(config, { virtualAccount: \"0xva…\", amount: 50_000000000000000000n });\n * ```\n */\nexport async function addMargin(config: Config, parameters: AddMarginParameters): Promise<AddMarginReturnType> {\n const { chainId, virtualAccount, amount, from } = parameters;\n\n const { addresses } = config.getChainConfig(chainId);\n const walletClient = await config.getWalletClient({ chainId, from });\n\n if (shouldSimulateBeforeWrite(config, parameters)) {\n await simulateAddMargin(config, { chainId, virtualAccount, amount, from: walletClient.account.address });\n }\n\n return walletClient.writeContract({\n address: addresses.accountLayerAddress,\n abi: accountLayerAbi,\n functionName: \"addMargin\",\n args: [virtualAccount, amount],\n account: walletClient.account,\n chain: walletClient.chain,\n });\n}\n"],"mappings":";;;;AAmDA,eAAsB,EAAU,GAAgB,GAA+D;CAC7G,IAAM,EAAE,YAAS,mBAAgB,WAAQ,YAAS,GAE5C,EAAE,iBAAc,EAAO,eAAe,CAAO,GAC7C,IAAe,MAAM,EAAO,gBAAgB;EAAE;EAAS;CAAK,CAAC;CAMnE,OAJI,EAA0B,GAAQ,CAAU,KAC9C,MAAM,EAAkB,GAAQ;EAAE;EAAS;EAAgB;EAAQ,MAAM,EAAa,QAAQ;CAAQ,CAAC,GAGlG,EAAa,cAAc;EAChC,SAAS,EAAU;EACnB,KAAK;EACL,cAAc;EACd,MAAM,CAAC,GAAgB,CAAM;EAC7B,SAAS,EAAa;EACtB,OAAO,EAAa;CACtB,CAAC;AACH"}
1
+ {"version":3,"file":"add-margin.js","names":[],"sources":["../../../../src/symmio-contracts/account-layer/actions/add-margin.ts"],"sourcesContent":["import type { Address, Hash } from \"viem\";\nimport { encodeFunctionData } from \"viem\";\nimport type { Config } from \"../../../core/config\";\nimport { maybeRelayAsGasless } from \"../../../gasless/dispatch/maybe-relay-as-gasless\";\nimport type { Compute, GaslessWriteParameter, WriteContractParameter } from \"../../../shared/types/properties\";\nimport { shouldSimulateBeforeWrite } from \"../../../shared/utils/simulate-before-write\";\nimport { accountLayerAbi } from \"../../abi/v0.8.6/account-layer\";\nimport { simulateAddMargin } from \"./simulate-add-margin\";\n\n/**\n * Parameters for {@link addMargin}.\n */\nexport type AddMarginParameters = Compute<\n WriteContractParameter &\n GaslessWriteParameter & {\n /**\n * The virtual account (VA) to add margin to. The connected wallet must be\n * the VA's on-chain owner; the contract reverts (`onlyAccountOwner`) otherwise.\n */\n virtualAccount: Address;\n /**\n * Amount to add, in **18 decimals** (the internal allocated-balance unit,\n * not the collateral token's decimals). Moved from the parent subaccount's\n * already-deposited balance into the VA; reverts with `ZeroAmount` when `0`.\n */\n amount: bigint;\n }\n>;\n\n/** Return type of {@link addMargin}: the submitted transaction hash. */\nexport type AddMarginReturnType = Hash;\n\n/**\n * Add margin to a virtual account (VA) by moving collateral from the parent\n * subaccount's available balance into the VA, on the AccountLayer.\n *\n * Calls `AccountLayer.addMargin(virtualAccount, amount)`, which internally\n * transfers `amount` from the parent subaccount into the VA. This increases the\n * VA's margin (and lowers its liquidation risk). No signature is required.\n *\n * Dry-runs the call with {@link simulateAddMargin} first unless\n * `simulateBeforeWrite` is `false` (per-call, falling back to the config default).\n *\n * @param config - The SDK config (must have a `getWalletClient` resolver).\n * @param parameters - Virtual account address, amount (18 decimals), optional chain id.\n * @returns The submitted transaction hash. The caller waits on the receipt.\n * @throws {SymmError} when the chain is unsupported or no wallet is available.\n * @throws Viem's write errors (`ContractFunctionExecutionError`, ...).\n *\n * @example\n * ```ts\n * const hash = await addMargin(config, { virtualAccount: \"0xva…\", amount: 50_000000000000000000n });\n * ```\n */\nexport async function addMargin(config: Config, parameters: AddMarginParameters): Promise<AddMarginReturnType> {\n const { chainId, virtualAccount, amount, from } = parameters;\n\n const { addresses } = config.getChainConfig(chainId);\n\n /**\n * Transparent gasless seam: the same AccountLayer calldata is signed as an\n * InstantLayer operation and relayed; the VA's parent sub-account (resolved\n * on-chain, or passed as `gasless.account`) is the billing/authority\n * account. `null` means: proceed on the wallet path below, unchanged.\n */\n const relayed = await maybeRelayAsGasless(config, {\n chainId,\n from,\n gasless: parameters.gasless,\n virtualAccount,\n calls: [\n {\n target: addresses.accountLayerAddress,\n callData: encodeFunctionData({\n abi: accountLayerAbi,\n functionName: \"addMargin\",\n args: [virtualAccount, amount],\n }),\n },\n ],\n });\n if (relayed !== null) return relayed;\n\n const walletClient = await config.getWalletClient({ chainId, from });\n\n if (shouldSimulateBeforeWrite(config, parameters)) {\n await simulateAddMargin(config, { chainId, virtualAccount, amount, from: walletClient.account.address });\n }\n\n return walletClient.writeContract({\n address: addresses.accountLayerAddress,\n abi: accountLayerAbi,\n functionName: \"addMargin\",\n args: [virtualAccount, amount],\n account: walletClient.account,\n chain: walletClient.chain,\n });\n}\n"],"mappings":";;;;;;AAsDA,eAAsB,EAAU,GAAgB,GAA+D;CAC7G,IAAM,EAAE,YAAS,mBAAgB,WAAQ,YAAS,GAE5C,EAAE,iBAAc,EAAO,eAAe,CAAO,GAQ7C,IAAU,MAAM,EAAoB,GAAQ;EAChD;EACA;EACA,SAAS,EAAW;EACpB;EACA,OAAO,CACL;GACE,QAAQ,EAAU;GAClB,UAAU,EAAmB;IAC3B,KAAK;IACL,cAAc;IACd,MAAM,CAAC,GAAgB,CAAM;GAC/B,CAAC;EACH,CACF;CACF,CAAC;CACD,IAAI,MAAY,MAAM,OAAO;CAE7B,IAAM,IAAe,MAAM,EAAO,gBAAgB;EAAE;EAAS;CAAK,CAAC;CAMnE,OAJI,EAA0B,GAAQ,CAAU,KAC9C,MAAM,EAAkB,GAAQ;EAAE;EAAS;EAAgB;EAAQ,MAAM,EAAa,QAAQ;CAAQ,CAAC,GAGlG,EAAa,cAAc;EAChC,SAAS,EAAU;EACnB,KAAK;EACL,cAAc;EACd,MAAM,CAAC,GAAgB,CAAM;EAC7B,SAAS,EAAa;EACtB,OAAO,EAAa;CACtB,CAAC;AACH"}
@@ -1,11 +1,11 @@
1
1
  import { Address, Hash } from 'viem';
2
2
  import { Config } from '../../../core/config/index.js';
3
- import { Compute, WriteContractParameter } from '../../../shared/types/properties.js';
3
+ import { Compute, GaslessWriteParameter, WriteContractParameter } from '../../../shared/types/properties.js';
4
4
  import { SubAccountCreationData } from '../types.js';
5
5
  /**
6
6
  * Parameters for {@link createSubAccounts}.
7
7
  */
8
- export type CreateSubAccountsParameters = Compute<WriteContractParameter & {
8
+ export type CreateSubAccountsParameters = Compute<WriteContractParameter & GaslessWriteParameter & {
9
9
  /**
10
10
  * Affiliate that custodies the new subaccounts. Must be `ACTIVE` on-chain,
11
11
  * and each entry's `symmioCore` must be whitelisted and registered for it.
@@ -34,6 +34,15 @@ export type CreateSubAccountsReturnType = Hash;
34
34
  *
35
35
  * Resolves the bound wallet client and `AccountLayer` address from `config`.
36
36
  *
37
+ * Relayable, with one condition of its own: pass `gasless` (or run the chain in
38
+ * `gasless.execution.mode`) to sign the same calldata as an InstantLayer
39
+ * operation instead of sending a transaction, and the created subaccounts still
40
+ * belong to the signing wallet. Because the subaccounts do not exist yet there
41
+ * is no account to sign under, so a relayed call **requires** `gasless.account`
42
+ * naming an existing owned subaccount (which pays the operational fee) and
43
+ * throws `GASLESS_ACCOUNT_UNRESOLVED` without it. A wallet with no subaccount at
44
+ * all bootstraps through {@link settleGaslessDepositNewAccount} instead.
45
+ *
37
46
  * Dry-runs the call with {@link simulateCreateSubAccounts} first unless
38
47
  * `simulateBeforeWrite` is `false` (per-call, falling back to the config default).
39
48
  *
@@ -1 +1 @@
1
- {"version":3,"file":"create-sub-accounts.d.ts","sourceRoot":"","sources":["../../../../src/symmio-contracts/account-layer/actions/create-sub-accounts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC1C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,KAAK,EAAE,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAGxF,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAGvD;;GAEG;AACH,MAAM,MAAM,2BAA2B,GAAG,OAAO,CAC/C,sBAAsB,GAAG;IACvB;;;OAGG;IACH,SAAS,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,YAAY,EAAE,SAAS,sBAAsB,EAAE,CAAC;CACjD,CACF,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,MAAM,2BAA2B,GAAG,IAAI,CAAC;AAE/C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,2BAA2B,GACtC,OAAO,CAAC,2BAA2B,CAAC,CAkBtC"}
1
+ {"version":3,"file":"create-sub-accounts.d.ts","sourceRoot":"","sources":["../../../../src/symmio-contracts/account-layer/actions/create-sub-accounts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,KAAK,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,MAAM,CAAC;AACnE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAEnD,OAAO,KAAK,EAAE,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAG/G,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAGvD;;GAEG;AACH,MAAM,MAAM,2BAA2B,GAAG,OAAO,CAC/C,sBAAsB,GACpB,qBAAqB,GAAG;IACtB;;;OAGG;IACH,SAAS,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,YAAY,EAAE,SAAS,sBAAsB,EAAE,CAAC;CACjD,CACJ,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,MAAM,2BAA2B,GAAG,IAAI,CAAC;AAE/C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,2BAA2B,GACtC,OAAO,CAAC,2BAA2B,CAAC,CAmDtC"}
@@ -1,27 +1,43 @@
1
1
  import { accountLayerAbi as e } from "../../abi/v0.8.6/account-layer.js";
2
- import { shouldSimulateBeforeWrite as t } from "../../../shared/utils/simulate-before-write.js";
3
- import { simulateCreateSubAccounts as n } from "./simulate-create-sub-accounts.js";
2
+ import { maybeRelayAsGasless as t } from "../../../gasless/dispatch/maybe-relay-as-gasless.js";
3
+ import { shouldSimulateBeforeWrite as n } from "../../../shared/utils/simulate-before-write.js";
4
+ import { simulateCreateSubAccounts as r } from "./simulate-create-sub-accounts.js";
5
+ import { encodeFunctionData as i } from "viem";
4
6
  //#region src/symmio-contracts/account-layer/actions/create-sub-accounts.ts
5
- async function r(r, i) {
6
- let { chainId: a, affiliate: o, accountsData: s, from: c } = i, { addresses: l } = r.getChainConfig(a), u = await r.getWalletClient({
7
- chainId: a,
8
- from: c
7
+ async function a(a, o) {
8
+ let { chainId: s, affiliate: c, accountsData: l, from: u } = o, { addresses: d } = a.getChainConfig(s), f = await t(a, {
9
+ chainId: s,
10
+ from: u,
11
+ gasless: o.gasless,
12
+ calls: [{
13
+ target: d.accountLayerAddress,
14
+ callData: i({
15
+ abi: e,
16
+ functionName: "createSubAccounts",
17
+ args: [c, l]
18
+ })
19
+ }]
9
20
  });
10
- return t(r, i) && await n(r, {
11
- chainId: a,
12
- affiliate: o,
13
- accountsData: s,
14
- from: u.account.address
15
- }), u.writeContract({
16
- address: l.accountLayerAddress,
21
+ if (f !== null) return f;
22
+ let p = await a.getWalletClient({
23
+ chainId: s,
24
+ from: u
25
+ });
26
+ return n(a, o) && await r(a, {
27
+ chainId: s,
28
+ affiliate: c,
29
+ accountsData: l,
30
+ from: p.account.address
31
+ }), p.writeContract({
32
+ address: d.accountLayerAddress,
17
33
  abi: e,
18
34
  functionName: "createSubAccounts",
19
- args: [o, s],
20
- account: u.account,
21
- chain: u.chain
35
+ args: [c, l],
36
+ account: p.account,
37
+ chain: p.chain
22
38
  });
23
39
  }
24
40
  //#endregion
25
- export { r as createSubAccounts };
41
+ export { a as createSubAccounts };
26
42
 
27
43
  //# sourceMappingURL=create-sub-accounts.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"create-sub-accounts.js","names":[],"sources":["../../../../src/symmio-contracts/account-layer/actions/create-sub-accounts.ts"],"sourcesContent":["import type { Address, Hash } from \"viem\";\nimport type { Config } from \"../../../core/config\";\nimport type { Compute, WriteContractParameter } from \"../../../shared/types/properties\";\nimport { shouldSimulateBeforeWrite } from \"../../../shared/utils/simulate-before-write\";\nimport { accountLayerAbi } from \"../../abi/v0.8.6/account-layer\";\nimport type { SubAccountCreationData } from \"../types\";\nimport { simulateCreateSubAccounts } from \"./simulate-create-sub-accounts\";\n\n/**\n * Parameters for {@link createSubAccounts}.\n */\nexport type CreateSubAccountsParameters = Compute<\n WriteContractParameter & {\n /**\n * Affiliate that custodies the new subaccounts. Must be `ACTIVE` on-chain,\n * and each entry's `symmioCore` must be whitelisted and registered for it.\n */\n affiliate: Address;\n /**\n * One entry per subaccount to create. The returned addresses are in this\n * same order.\n */\n accountsData: readonly SubAccountCreationData[];\n }\n>;\n\n/**\n * Return type of {@link createSubAccounts}: the submitted transaction hash.\n *\n * @remarks\n * The contract call returns the created subaccount addresses, but those are only\n * available once the transaction is mined - read them from the `SubAccountCreated`\n * events on the receipt. This action returns the hash so the caller controls how\n * it waits.\n */\nexport type CreateSubAccountsReturnType = Hash;\n\n/**\n * Send the on-chain transaction that creates one or more SYMMIO subaccounts under\n * an affiliate. The bound wallet's account becomes the `owner` of every created\n * subaccount.\n *\n * Resolves the bound wallet client and `AccountLayer` address from `config`.\n *\n * Dry-runs the call with {@link simulateCreateSubAccounts} first unless\n * `simulateBeforeWrite` is `false` (per-call, falling back to the config default).\n *\n * @param config - The SDK config (must have a `getWalletClient` resolver).\n * @param parameters - Affiliate, per-subaccount creation data, optional chain id.\n * @returns The submitted transaction hash. The caller waits on the receipt.\n * @throws {SymmError} when the chain is unsupported or no wallet is available.\n * @throws Viem's write errors (`ContractFunctionExecutionError`, ...).\n *\n * @example\n * ```ts\n * const hash = await createSubAccounts(config, {\n * affiliate: \"0xaff…\",\n * accountsData: [\n * {\n * name: \"Main\",\n * metadata: \"0x\",\n * symmioCore: \"0xcore…\",\n * isolationType: SubAccountIsolationType.MARKET,\n * singleVAMode: true,\n * },\n * ],\n * });\n * ```\n */\nexport async function createSubAccounts(\n config: Config,\n parameters: CreateSubAccountsParameters,\n): Promise<CreateSubAccountsReturnType> {\n const { chainId, affiliate, accountsData, from } = parameters;\n\n const { addresses } = config.getChainConfig(chainId);\n const walletClient = await config.getWalletClient({ chainId, from });\n\n if (shouldSimulateBeforeWrite(config, parameters)) {\n await simulateCreateSubAccounts(config, { chainId, affiliate, accountsData, from: walletClient.account.address });\n }\n\n return walletClient.writeContract({\n address: addresses.accountLayerAddress,\n abi: accountLayerAbi,\n functionName: \"createSubAccounts\",\n args: [affiliate, accountsData],\n account: walletClient.account,\n chain: walletClient.chain,\n });\n}\n"],"mappings":";;;;AAqEA,eAAsB,EACpB,GACA,GACsC;CACtC,IAAM,EAAE,YAAS,cAAW,iBAAc,YAAS,GAE7C,EAAE,iBAAc,EAAO,eAAe,CAAO,GAC7C,IAAe,MAAM,EAAO,gBAAgB;EAAE;EAAS;CAAK,CAAC;CAMnE,OAJI,EAA0B,GAAQ,CAAU,KAC9C,MAAM,EAA0B,GAAQ;EAAE;EAAS;EAAW;EAAc,MAAM,EAAa,QAAQ;CAAQ,CAAC,GAG3G,EAAa,cAAc;EAChC,SAAS,EAAU;EACnB,KAAK;EACL,cAAc;EACd,MAAM,CAAC,GAAW,CAAY;EAC9B,SAAS,EAAa;EACtB,OAAO,EAAa;CACtB,CAAC;AACH"}
1
+ {"version":3,"file":"create-sub-accounts.js","names":[],"sources":["../../../../src/symmio-contracts/account-layer/actions/create-sub-accounts.ts"],"sourcesContent":["import { encodeFunctionData, type Address, type Hash } from \"viem\";\nimport type { Config } from \"../../../core/config\";\nimport { maybeRelayAsGasless } from \"../../../gasless/dispatch/maybe-relay-as-gasless\";\nimport type { Compute, GaslessWriteParameter, WriteContractParameter } from \"../../../shared/types/properties\";\nimport { shouldSimulateBeforeWrite } from \"../../../shared/utils/simulate-before-write\";\nimport { accountLayerAbi } from \"../../abi/v0.8.6/account-layer\";\nimport type { SubAccountCreationData } from \"../types\";\nimport { simulateCreateSubAccounts } from \"./simulate-create-sub-accounts\";\n\n/**\n * Parameters for {@link createSubAccounts}.\n */\nexport type CreateSubAccountsParameters = Compute<\n WriteContractParameter &\n GaslessWriteParameter & {\n /**\n * Affiliate that custodies the new subaccounts. Must be `ACTIVE` on-chain,\n * and each entry's `symmioCore` must be whitelisted and registered for it.\n */\n affiliate: Address;\n /**\n * One entry per subaccount to create. The returned addresses are in this\n * same order.\n */\n accountsData: readonly SubAccountCreationData[];\n }\n>;\n\n/**\n * Return type of {@link createSubAccounts}: the submitted transaction hash.\n *\n * @remarks\n * The contract call returns the created subaccount addresses, but those are only\n * available once the transaction is mined - read them from the `SubAccountCreated`\n * events on the receipt. This action returns the hash so the caller controls how\n * it waits.\n */\nexport type CreateSubAccountsReturnType = Hash;\n\n/**\n * Send the on-chain transaction that creates one or more SYMMIO subaccounts under\n * an affiliate. The bound wallet's account becomes the `owner` of every created\n * subaccount.\n *\n * Resolves the bound wallet client and `AccountLayer` address from `config`.\n *\n * Relayable, with one condition of its own: pass `gasless` (or run the chain in\n * `gasless.execution.mode`) to sign the same calldata as an InstantLayer\n * operation instead of sending a transaction, and the created subaccounts still\n * belong to the signing wallet. Because the subaccounts do not exist yet there\n * is no account to sign under, so a relayed call **requires** `gasless.account`\n * naming an existing owned subaccount (which pays the operational fee) and\n * throws `GASLESS_ACCOUNT_UNRESOLVED` without it. A wallet with no subaccount at\n * all bootstraps through {@link settleGaslessDepositNewAccount} instead.\n *\n * Dry-runs the call with {@link simulateCreateSubAccounts} first unless\n * `simulateBeforeWrite` is `false` (per-call, falling back to the config default).\n *\n * @param config - The SDK config (must have a `getWalletClient` resolver).\n * @param parameters - Affiliate, per-subaccount creation data, optional chain id.\n * @returns The submitted transaction hash. The caller waits on the receipt.\n * @throws {SymmError} when the chain is unsupported or no wallet is available.\n * @throws Viem's write errors (`ContractFunctionExecutionError`, ...).\n *\n * @example\n * ```ts\n * const hash = await createSubAccounts(config, {\n * affiliate: \"0xaff…\",\n * accountsData: [\n * {\n * name: \"Main\",\n * metadata: \"0x\",\n * symmioCore: \"0xcore…\",\n * isolationType: SubAccountIsolationType.MARKET,\n * singleVAMode: true,\n * },\n * ],\n * });\n * ```\n */\nexport async function createSubAccounts(\n config: Config,\n parameters: CreateSubAccountsParameters,\n): Promise<CreateSubAccountsReturnType> {\n const { chainId, affiliate, accountsData, from } = parameters;\n\n const { addresses } = config.getChainConfig(chainId);\n\n /**\n * Transparent gasless seam: the same AccountLayer calldata is signed as an\n * InstantLayer operation and relayed, and the created subaccounts still belong\n * to the signing wallet — the relayer scopes the AccountLayer call to the\n * owner, so the contract's signer resolves to the EOA rather than the relayer.\n *\n * Unlike every other relayable write this one has no account of its own to\n * relay under: the InstantLayer resolves the operation's `signerAccount` on\n * chain, and the subaccounts being created do not exist yet. So `gasless`\n * requires `gasless.account` naming an **existing** owned subaccount, which\n * pays the operational fee. A wallet with no subaccount at all cannot bootstrap\n * this way — that is what the gasless deposit settlement is for.\n *\n * `null` means: proceed on the wallet path below, unchanged.\n */\n const relayed = await maybeRelayAsGasless(config, {\n chainId,\n from,\n gasless: parameters.gasless,\n calls: [\n {\n target: addresses.accountLayerAddress,\n callData: encodeFunctionData({\n abi: accountLayerAbi,\n functionName: \"createSubAccounts\",\n args: [affiliate, accountsData],\n }),\n },\n ],\n });\n if (relayed !== null) return relayed;\n\n const walletClient = await config.getWalletClient({ chainId, from });\n\n if (shouldSimulateBeforeWrite(config, parameters)) {\n await simulateCreateSubAccounts(config, { chainId, affiliate, accountsData, from: walletClient.account.address });\n }\n\n return walletClient.writeContract({\n address: addresses.accountLayerAddress,\n abi: accountLayerAbi,\n functionName: \"createSubAccounts\",\n args: [affiliate, accountsData],\n account: walletClient.account,\n chain: walletClient.chain,\n });\n}\n"],"mappings":";;;;;;AAgFA,eAAsB,EACpB,GACA,GACsC;CACtC,IAAM,EAAE,YAAS,cAAW,iBAAc,YAAS,GAE7C,EAAE,iBAAc,EAAO,eAAe,CAAO,GAiB7C,IAAU,MAAM,EAAoB,GAAQ;EAChD;EACA;EACA,SAAS,EAAW;EACpB,OAAO,CACL;GACE,QAAQ,EAAU;GAClB,UAAU,EAAmB;IAC3B,KAAK;IACL,cAAc;IACd,MAAM,CAAC,GAAW,CAAY;GAChC,CAAC;EACH,CACF;CACF,CAAC;CACD,IAAI,MAAY,MAAM,OAAO;CAE7B,IAAM,IAAe,MAAM,EAAO,gBAAgB;EAAE;EAAS;CAAK,CAAC;CAMnE,OAJI,EAA0B,GAAQ,CAAU,KAC9C,MAAM,EAA0B,GAAQ;EAAE;EAAS;EAAW;EAAc,MAAM,EAAa,QAAQ;CAAQ,CAAC,GAG3G,EAAa,cAAc;EAChC,SAAS,EAAU;EACnB,KAAK;EACL,cAAc;EACd,MAAM,CAAC,GAAW,CAAY;EAC9B,SAAS,EAAa;EACtB,OAAO,EAAa;CACtB,CAAC;AACH"}
@@ -1,10 +1,10 @@
1
1
  import { Address, Hash } from 'viem';
2
2
  import { Config } from '../../../core/config/index.js';
3
- import { Compute, WriteContractParameter } from '../../../shared/types/properties.js';
3
+ import { Compute, GaslessWriteParameter, WriteContractParameter } from '../../../shared/types/properties.js';
4
4
  /**
5
5
  * Parameters for {@link deleteSubAccount}.
6
6
  */
7
- export type DeleteSubAccountParameters = Compute<WriteContractParameter & {
7
+ export type DeleteSubAccountParameters = Compute<WriteContractParameter & GaslessWriteParameter & {
8
8
  /**
9
9
  * The subaccount to delete. The bound wallet's signing account must be the
10
10
  * subaccount's on-chain `owner`; the contract reverts (`onlyAccountOwner`)
@@ -33,6 +33,13 @@ export type DeleteSubAccountReturnType = Hash;
33
33
  * Dry-runs the call with {@link simulateDeleteSubAccount} first unless
34
34
  * `simulateBeforeWrite` is `false` (per-call, falling back to the config default).
35
35
  *
36
+ * Relayable: pass `gasless` (or run the chain in `gasless.execution.mode`) to
37
+ * sign the same calldata as an InstantLayer operation instead of sending a
38
+ * transaction. The operation is signed under `subAccount` itself, which is
39
+ * therefore the account charged the operational fee — unless `gasless.account`
40
+ * names another. Note that a deletable subaccount is empty by definition, so it
41
+ * can usually only pay through the daily free-ops quota.
42
+ *
36
43
  * @param config - The SDK config (must have a `getWalletClient` resolver).
37
44
  * @param parameters - Subaccount address, optional chain id.
38
45
  * @returns The submitted transaction hash. The caller waits on the receipt.
@@ -1 +1 @@
1
- {"version":3,"file":"delete-sub-account.d.ts","sourceRoot":"","sources":["../../../../src/symmio-contracts/account-layer/actions/delete-sub-account.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC1C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,KAAK,EAAE,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAKxF;;GAEG;AACH,MAAM,MAAM,0BAA0B,GAAG,OAAO,CAC9C,sBAAsB,GAAG;IACvB;;;;OAIG;IACH,UAAU,EAAE,OAAO,CAAC;CACrB,CACF,CAAC;AAEF,+EAA+E;AAC/E,MAAM,MAAM,0BAA0B,GAAG,IAAI,CAAC;AAE9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,0BAA0B,GACrC,OAAO,CAAC,0BAA0B,CAAC,CAkBrC"}
1
+ {"version":3,"file":"delete-sub-account.d.ts","sourceRoot":"","sources":["../../../../src/symmio-contracts/account-layer/actions/delete-sub-account.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,KAAK,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,MAAM,CAAC;AACnE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAEnD,OAAO,KAAK,EAAE,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAK/G;;GAEG;AACH,MAAM,MAAM,0BAA0B,GAAG,OAAO,CAC9C,sBAAsB,GACpB,qBAAqB,GAAG;IACtB;;;;OAIG;IACH,UAAU,EAAE,OAAO,CAAC;CACrB,CACJ,CAAC;AAEF,+EAA+E;AAC/E,MAAM,MAAM,0BAA0B,GAAG,IAAI,CAAC;AAE9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,0BAA0B,GACrC,OAAO,CAAC,0BAA0B,CAAC,CA4CrC"}
@@ -1,26 +1,43 @@
1
1
  import { accountLayerAbi as e } from "../../abi/v0.8.6/account-layer.js";
2
- import { shouldSimulateBeforeWrite as t } from "../../../shared/utils/simulate-before-write.js";
3
- import { simulateDeleteSubAccount as n } from "./simulate-delete-sub-account.js";
2
+ import { maybeRelayAsGasless as t } from "../../../gasless/dispatch/maybe-relay-as-gasless.js";
3
+ import { shouldSimulateBeforeWrite as n } from "../../../shared/utils/simulate-before-write.js";
4
+ import { simulateDeleteSubAccount as r } from "./simulate-delete-sub-account.js";
5
+ import { encodeFunctionData as i } from "viem";
4
6
  //#region src/symmio-contracts/account-layer/actions/delete-sub-account.ts
5
- async function r(r, i) {
6
- let { chainId: a, subAccount: o, from: s } = i, { addresses: c } = r.getChainConfig(a), l = await r.getWalletClient({
7
- chainId: a,
8
- from: s
7
+ async function a(a, o) {
8
+ let { chainId: s, subAccount: c, from: l } = o, { addresses: u } = a.getChainConfig(s), d = await t(a, {
9
+ chainId: s,
10
+ from: l,
11
+ gasless: o.gasless,
12
+ signerAccount: c,
13
+ calls: [{
14
+ target: u.accountLayerAddress,
15
+ callData: i({
16
+ abi: e,
17
+ functionName: "deleteSubAccount",
18
+ args: [c]
19
+ })
20
+ }]
9
21
  });
10
- return t(r, i) && await n(r, {
11
- chainId: a,
12
- subAccount: o,
13
- from: l.account.address
14
- }), l.writeContract({
15
- address: c.accountLayerAddress,
22
+ if (d !== null) return d;
23
+ let f = await a.getWalletClient({
24
+ chainId: s,
25
+ from: l
26
+ });
27
+ return n(a, o) && await r(a, {
28
+ chainId: s,
29
+ subAccount: c,
30
+ from: f.account.address
31
+ }), f.writeContract({
32
+ address: u.accountLayerAddress,
16
33
  abi: e,
17
34
  functionName: "deleteSubAccount",
18
- args: [o],
19
- account: l.account,
20
- chain: l.chain
35
+ args: [c],
36
+ account: f.account,
37
+ chain: f.chain
21
38
  });
22
39
  }
23
40
  //#endregion
24
- export { r as deleteSubAccount };
41
+ export { a as deleteSubAccount };
25
42
 
26
43
  //# sourceMappingURL=delete-sub-account.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"delete-sub-account.js","names":[],"sources":["../../../../src/symmio-contracts/account-layer/actions/delete-sub-account.ts"],"sourcesContent":["import type { Address, Hash } from \"viem\";\nimport type { Config } from \"../../../core/config\";\nimport type { Compute, WriteContractParameter } from \"../../../shared/types/properties\";\nimport { shouldSimulateBeforeWrite } from \"../../../shared/utils/simulate-before-write\";\nimport { accountLayerAbi } from \"../../abi/v0.8.6/account-layer\";\nimport { simulateDeleteSubAccount } from \"./simulate-delete-sub-account\";\n\n/**\n * Parameters for {@link deleteSubAccount}.\n */\nexport type DeleteSubAccountParameters = Compute<\n WriteContractParameter & {\n /**\n * The subaccount to delete. The bound wallet's signing account must be the\n * subaccount's on-chain `owner`; the contract reverts (`onlyAccountOwner`)\n * otherwise.\n */\n subAccount: Address;\n }\n>;\n\n/** Return type of {@link deleteSubAccount}: the submitted transaction hash. */\nexport type DeleteSubAccountReturnType = Hash;\n\n/**\n * Send the on-chain transaction that deletes a SYMMIO subaccount on the\n * AccountLayer. Calls `AccountLayer.deleteSubAccount(subAccount)`.\n *\n * Resolves the bound wallet client and `AccountLayer` address from `config`. The\n * bound EOA must equal the subaccount's on-chain `owner`.\n *\n * @remarks\n * Deletion is irreversible and the contract only allows it once the subaccount is\n * fully wound down. It reverts when the subaccount still has any virtual accounts\n * (`HasActiveVirtualAccounts`), a non-zero free or allocated balance\n * (`SubAccountNotEmpty`), open positions (`OpenPositionsExist`), or pending quotes\n * (`PendingQuotesExist`) — and when it does not exist (`AccountDoesNotExist`) or\n * the caller is not its owner. Clear those first. On success it emits\n * `SubAccountDeleted(subAccount, owner, affiliate)`.\n *\n * Dry-runs the call with {@link simulateDeleteSubAccount} first unless\n * `simulateBeforeWrite` is `false` (per-call, falling back to the config default).\n *\n * @param config - The SDK config (must have a `getWalletClient` resolver).\n * @param parameters - Subaccount address, optional chain id.\n * @returns The submitted transaction hash. The caller waits on the receipt.\n * @throws {SymmError} when the chain is unsupported or no wallet is available.\n * @throws Viem's write errors (`ContractFunctionExecutionError`, ...).\n *\n * @example\n * ```ts\n * const hash = await deleteSubAccount(config, { subAccount: \"0xsub…\" });\n * ```\n */\nexport async function deleteSubAccount(\n config: Config,\n parameters: DeleteSubAccountParameters,\n): Promise<DeleteSubAccountReturnType> {\n const { chainId, subAccount, from } = parameters;\n\n const { addresses } = config.getChainConfig(chainId);\n const walletClient = await config.getWalletClient({ chainId, from });\n\n if (shouldSimulateBeforeWrite(config, parameters)) {\n await simulateDeleteSubAccount(config, { chainId, subAccount, from: walletClient.account.address });\n }\n\n return walletClient.writeContract({\n address: addresses.accountLayerAddress,\n abi: accountLayerAbi,\n functionName: \"deleteSubAccount\",\n args: [subAccount],\n account: walletClient.account,\n chain: walletClient.chain,\n });\n}\n"],"mappings":";;;;AAsDA,eAAsB,EACpB,GACA,GACqC;CACrC,IAAM,EAAE,YAAS,eAAY,YAAS,GAEhC,EAAE,iBAAc,EAAO,eAAe,CAAO,GAC7C,IAAe,MAAM,EAAO,gBAAgB;EAAE;EAAS;CAAK,CAAC;CAMnE,OAJI,EAA0B,GAAQ,CAAU,KAC9C,MAAM,EAAyB,GAAQ;EAAE;EAAS;EAAY,MAAM,EAAa,QAAQ;CAAQ,CAAC,GAG7F,EAAa,cAAc;EAChC,SAAS,EAAU;EACnB,KAAK;EACL,cAAc;EACd,MAAM,CAAC,CAAU;EACjB,SAAS,EAAa;EACtB,OAAO,EAAa;CACtB,CAAC;AACH"}
1
+ {"version":3,"file":"delete-sub-account.js","names":[],"sources":["../../../../src/symmio-contracts/account-layer/actions/delete-sub-account.ts"],"sourcesContent":["import { encodeFunctionData, type Address, type Hash } from \"viem\";\nimport type { Config } from \"../../../core/config\";\nimport { maybeRelayAsGasless } from \"../../../gasless/dispatch/maybe-relay-as-gasless\";\nimport type { Compute, GaslessWriteParameter, WriteContractParameter } from \"../../../shared/types/properties\";\nimport { shouldSimulateBeforeWrite } from \"../../../shared/utils/simulate-before-write\";\nimport { accountLayerAbi } from \"../../abi/v0.8.6/account-layer\";\nimport { simulateDeleteSubAccount } from \"./simulate-delete-sub-account\";\n\n/**\n * Parameters for {@link deleteSubAccount}.\n */\nexport type DeleteSubAccountParameters = Compute<\n WriteContractParameter &\n GaslessWriteParameter & {\n /**\n * The subaccount to delete. The bound wallet's signing account must be the\n * subaccount's on-chain `owner`; the contract reverts (`onlyAccountOwner`)\n * otherwise.\n */\n subAccount: Address;\n }\n>;\n\n/** Return type of {@link deleteSubAccount}: the submitted transaction hash. */\nexport type DeleteSubAccountReturnType = Hash;\n\n/**\n * Send the on-chain transaction that deletes a SYMMIO subaccount on the\n * AccountLayer. Calls `AccountLayer.deleteSubAccount(subAccount)`.\n *\n * Resolves the bound wallet client and `AccountLayer` address from `config`. The\n * bound EOA must equal the subaccount's on-chain `owner`.\n *\n * @remarks\n * Deletion is irreversible and the contract only allows it once the subaccount is\n * fully wound down. It reverts when the subaccount still has any virtual accounts\n * (`HasActiveVirtualAccounts`), a non-zero free or allocated balance\n * (`SubAccountNotEmpty`), open positions (`OpenPositionsExist`), or pending quotes\n * (`PendingQuotesExist`) — and when it does not exist (`AccountDoesNotExist`) or\n * the caller is not its owner. Clear those first. On success it emits\n * `SubAccountDeleted(subAccount, owner, affiliate)`.\n *\n * Dry-runs the call with {@link simulateDeleteSubAccount} first unless\n * `simulateBeforeWrite` is `false` (per-call, falling back to the config default).\n *\n * Relayable: pass `gasless` (or run the chain in `gasless.execution.mode`) to\n * sign the same calldata as an InstantLayer operation instead of sending a\n * transaction. The operation is signed under `subAccount` itself, which is\n * therefore the account charged the operational fee — unless `gasless.account`\n * names another. Note that a deletable subaccount is empty by definition, so it\n * can usually only pay through the daily free-ops quota.\n *\n * @param config - The SDK config (must have a `getWalletClient` resolver).\n * @param parameters - Subaccount address, optional chain id.\n * @returns The submitted transaction hash. The caller waits on the receipt.\n * @throws {SymmError} when the chain is unsupported or no wallet is available.\n * @throws Viem's write errors (`ContractFunctionExecutionError`, ...).\n *\n * @example\n * ```ts\n * const hash = await deleteSubAccount(config, { subAccount: \"0xsub…\" });\n * ```\n */\nexport async function deleteSubAccount(\n config: Config,\n parameters: DeleteSubAccountParameters,\n): Promise<DeleteSubAccountReturnType> {\n const { chainId, subAccount, from } = parameters;\n\n const { addresses } = config.getChainConfig(chainId);\n\n /**\n * Transparent gasless seam: the same AccountLayer calldata is signed as an\n * InstantLayer operation and relayed. The sub-account being deleted is its own\n * billing/authority account — it is the account the contract's\n * `onlyAccountOwner` check resolves against. `null` means: proceed on the\n * wallet path below, unchanged.\n */\n const relayed = await maybeRelayAsGasless(config, {\n chainId,\n from,\n gasless: parameters.gasless,\n signerAccount: subAccount,\n calls: [\n {\n target: addresses.accountLayerAddress,\n callData: encodeFunctionData({\n abi: accountLayerAbi,\n functionName: \"deleteSubAccount\",\n args: [subAccount],\n }),\n },\n ],\n });\n if (relayed !== null) return relayed;\n\n const walletClient = await config.getWalletClient({ chainId, from });\n\n if (shouldSimulateBeforeWrite(config, parameters)) {\n await simulateDeleteSubAccount(config, { chainId, subAccount, from: walletClient.account.address });\n }\n\n return walletClient.writeContract({\n address: addresses.accountLayerAddress,\n abi: accountLayerAbi,\n functionName: \"deleteSubAccount\",\n args: [subAccount],\n account: walletClient.account,\n chain: walletClient.chain,\n });\n}\n"],"mappings":";;;;;;AA+DA,eAAsB,EACpB,GACA,GACqC;CACrC,IAAM,EAAE,YAAS,eAAY,YAAS,GAEhC,EAAE,iBAAc,EAAO,eAAe,CAAO,GAS7C,IAAU,MAAM,EAAoB,GAAQ;EAChD;EACA;EACA,SAAS,EAAW;EACpB,eAAe;EACf,OAAO,CACL;GACE,QAAQ,EAAU;GAClB,UAAU,EAAmB;IAC3B,KAAK;IACL,cAAc;IACd,MAAM,CAAC,CAAU;GACnB,CAAC;EACH,CACF;CACF,CAAC;CACD,IAAI,MAAY,MAAM,OAAO;CAE7B,IAAM,IAAe,MAAM,EAAO,gBAAgB;EAAE;EAAS;CAAK,CAAC;CAMnE,OAJI,EAA0B,GAAQ,CAAU,KAC9C,MAAM,EAAyB,GAAQ;EAAE;EAAS;EAAY,MAAM,EAAa,QAAQ;CAAQ,CAAC,GAG7F,EAAa,cAAc;EAChC,SAAS,EAAU;EACnB,KAAK;EACL,cAAc;EACd,MAAM,CAAC,CAAU;EACjB,SAAS,EAAa;EACtB,OAAO,EAAa;CACtB,CAAC;AACH"}
@@ -1,10 +1,10 @@
1
1
  import { Address, Hash } from 'viem';
2
2
  import { Config } from '../../../core/config/index.js';
3
- import { Compute, WriteContractParameter } from '../../../shared/types/properties.js';
3
+ import { Compute, GaslessWriteParameter, WriteContractParameter } from '../../../shared/types/properties.js';
4
4
  /**
5
5
  * Parameters for {@link depositAndAllocateForAccount}.
6
6
  */
7
- export type DepositAndAllocateForAccountParameters = Compute<WriteContractParameter & {
7
+ export type DepositAndAllocateForAccountParameters = Compute<WriteContractParameter & GaslessWriteParameter & {
8
8
  /**
9
9
  * The subaccount (or virtual account) to credit and allocate for. The wallet's
10
10
  * signing account must be the subaccount's on-chain `owner`; the contract
@@ -34,6 +34,12 @@ export type DepositAndAllocateForAccountReturnType = Hash;
34
34
  * Dry-runs the call with {@link simulateDepositAndAllocateForAccount} first unless
35
35
  * `simulateBeforeWrite` is `false` (per-call, falling back to the config default).
36
36
  *
37
+ * Relayable: pass `gasless` (or run the chain in `gasless.execution.mode`) to
38
+ * sign the same calldata as an InstantLayer operation instead of sending a
39
+ * transaction. That removes the gas, **not** the approval below — the collateral
40
+ * is still pulled from the owner's wallet. A wallet holding no native token at
41
+ * all should deposit through {@link settleGaslessDepositNewAccount} instead.
42
+ *
37
43
  * @remarks
38
44
  * Requires a prior ERC20 approval of the collateral token to the **SYMMIO core**
39
45
  * (`symmioAddress`), which is the contract that pulls the funds. See