@joclaim/attestor-core 0.2.0 → 0.2.3

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 (420) hide show
  1. package/README.md +21 -15
  2. package/lib/avs/abis/avsDirectoryABI.d.ts +60 -0
  3. package/lib/avs/abis/avsDirectoryABI.js +340 -0
  4. package/lib/avs/abis/delegationABI.d.ts +126 -0
  5. package/lib/avs/abis/delegationABI.js +1 -0
  6. package/lib/avs/abis/registryABI.d.ts +136 -0
  7. package/lib/avs/abis/registryABI.js +725 -0
  8. package/lib/avs/client/create-claim-on-avs.d.ts +12 -0
  9. package/lib/avs/client/create-claim-on-avs.js +138 -0
  10. package/lib/avs/config.d.ts +7 -0
  11. package/lib/avs/config.js +20 -0
  12. package/lib/avs/contracts/ReclaimServiceManager.d.ts +697 -0
  13. package/lib/avs/contracts/ReclaimServiceManager.js +1 -0
  14. package/lib/avs/contracts/common.d.ts +21 -0
  15. package/lib/avs/contracts/common.js +1 -0
  16. package/lib/avs/contracts/factories/ReclaimServiceManager__factory.d.ts +888 -0
  17. package/lib/avs/contracts/factories/ReclaimServiceManager__factory.js +1169 -0
  18. package/lib/avs/contracts/factories/index.d.ts +1 -0
  19. package/{src/avs/contracts/factories/index.ts → lib/avs/contracts/factories/index.js} +1 -1
  20. package/{src/avs/contracts/index.ts → lib/avs/contracts/index.d.ts} +0 -3
  21. package/lib/avs/contracts/index.js +2 -0
  22. package/lib/avs/types/index.d.ts +55 -0
  23. package/lib/avs/types/index.js +1 -0
  24. package/lib/avs/utils/contracts.d.ts +21 -0
  25. package/lib/avs/utils/contracts.js +33 -0
  26. package/lib/avs/utils/register.d.ts +27 -0
  27. package/lib/avs/utils/register.js +78 -0
  28. package/lib/avs/utils/tasks.d.ts +22 -0
  29. package/lib/avs/utils/tasks.js +40 -0
  30. package/lib/client/create-claim.d.ts +5 -0
  31. package/lib/client/create-claim.js +437 -0
  32. package/lib/client/index.d.ts +3 -0
  33. package/lib/client/index.js +3 -0
  34. package/lib/client/tunnels/make-rpc-tcp-tunnel.d.ts +16 -0
  35. package/lib/client/tunnels/make-rpc-tcp-tunnel.js +51 -0
  36. package/lib/client/tunnels/make-rpc-tls-tunnel.d.ts +26 -0
  37. package/lib/client/tunnels/make-rpc-tls-tunnel.js +131 -0
  38. package/lib/client/utils/attestor-pool.d.ts +8 -0
  39. package/lib/client/utils/attestor-pool.js +25 -0
  40. package/lib/client/utils/client-socket.d.ts +11 -0
  41. package/lib/client/utils/client-socket.js +98 -0
  42. package/lib/client/utils/message-handler.d.ts +4 -0
  43. package/lib/client/utils/message-handler.js +87 -0
  44. package/lib/config/index.d.ts +30 -0
  45. package/lib/config/index.js +43 -0
  46. package/lib/external-rpc/benchmark.d.ts +1 -0
  47. package/lib/external-rpc/benchmark.js +69 -0
  48. package/lib/external-rpc/event-bus.d.ts +7 -0
  49. package/lib/external-rpc/event-bus.js +14 -0
  50. package/lib/external-rpc/handle-incoming-msg.d.ts +2 -0
  51. package/lib/external-rpc/handle-incoming-msg.js +233 -0
  52. package/lib/external-rpc/index.d.ts +3 -0
  53. package/lib/external-rpc/index.js +3 -0
  54. package/lib/external-rpc/jsc-polyfills/1.d.ts +14 -0
  55. package/lib/external-rpc/jsc-polyfills/1.js +82 -0
  56. package/lib/external-rpc/jsc-polyfills/2.d.ts +1 -0
  57. package/lib/external-rpc/jsc-polyfills/2.js +20 -0
  58. package/lib/external-rpc/jsc-polyfills/event.d.ts +10 -0
  59. package/lib/external-rpc/jsc-polyfills/event.js +14 -0
  60. package/lib/external-rpc/jsc-polyfills/index.d.ts +2 -0
  61. package/lib/external-rpc/jsc-polyfills/index.js +2 -0
  62. package/lib/external-rpc/jsc-polyfills/ws.d.ts +21 -0
  63. package/lib/external-rpc/jsc-polyfills/ws.js +81 -0
  64. package/lib/external-rpc/setup-browser.d.ts +6 -0
  65. package/lib/external-rpc/setup-browser.js +33 -0
  66. package/lib/external-rpc/setup-jsc.d.ts +24 -0
  67. package/lib/external-rpc/setup-jsc.js +22 -0
  68. package/lib/external-rpc/types.d.ts +213 -0
  69. package/lib/external-rpc/types.js +1 -0
  70. package/lib/external-rpc/utils.d.ts +20 -0
  71. package/lib/external-rpc/utils.js +100 -0
  72. package/lib/external-rpc/zk.d.ts +14 -0
  73. package/lib/external-rpc/zk.js +63 -0
  74. package/lib/index.d.ts +9 -0
  75. package/lib/index.js +9 -0
  76. package/lib/mechain/abis/governanceABI.d.ts +50 -0
  77. package/lib/mechain/abis/governanceABI.js +458 -0
  78. package/lib/mechain/abis/taskABI.d.ts +157 -0
  79. package/lib/mechain/abis/taskABI.js +509 -0
  80. package/lib/mechain/client/create-claim-on-mechain.d.ts +10 -0
  81. package/lib/mechain/client/create-claim-on-mechain.js +28 -0
  82. package/lib/mechain/client/index.d.ts +1 -0
  83. package/lib/mechain/client/index.js +1 -0
  84. package/lib/mechain/constants/index.d.ts +3 -0
  85. package/{src/mechain/constants/index.ts → lib/mechain/constants/index.js} +3 -5
  86. package/lib/mechain/index.d.ts +2 -0
  87. package/lib/mechain/index.js +2 -0
  88. package/lib/mechain/types/index.d.ts +23 -0
  89. package/lib/mechain/types/index.js +1 -0
  90. package/lib/proto/api.d.ts +633 -0
  91. package/lib/proto/api.js +4258 -0
  92. package/lib/proto/tee-bundle.d.ts +135 -0
  93. package/lib/proto/tee-bundle.js +1161 -0
  94. package/lib/providers/http/index.d.ts +18 -0
  95. package/lib/providers/http/index.js +658 -0
  96. package/lib/providers/http/patch-parse5-tree.d.ts +6 -0
  97. package/lib/providers/http/patch-parse5-tree.js +33 -0
  98. package/lib/providers/http/utils.d.ts +77 -0
  99. package/lib/providers/http/utils.js +324 -0
  100. package/lib/providers/index.d.ts +4 -0
  101. package/lib/providers/index.js +4 -0
  102. package/lib/scripts/build-browser.d.ts +1 -0
  103. package/lib/scripts/build-browser.js +37 -0
  104. package/lib/scripts/build-jsc.d.ts +1 -0
  105. package/lib/scripts/build-jsc.js +49 -0
  106. package/lib/scripts/check-avs-registration.d.ts +1 -0
  107. package/lib/scripts/check-avs-registration.js +26 -0
  108. package/lib/scripts/fallbacks/crypto.d.ts +1 -0
  109. package/lib/scripts/fallbacks/crypto.js +1 -0
  110. package/lib/scripts/fallbacks/empty.d.ts +3 -0
  111. package/lib/scripts/fallbacks/empty.js +1 -0
  112. package/lib/scripts/fallbacks/re2.d.ts +1 -0
  113. package/lib/scripts/fallbacks/re2.js +4 -0
  114. package/lib/scripts/fallbacks/snarkjs.d.ts +1 -0
  115. package/lib/scripts/fallbacks/snarkjs.js +1 -0
  116. package/lib/scripts/generate-provider-types.d.ts +5 -0
  117. package/lib/scripts/generate-provider-types.js +78 -0
  118. package/lib/scripts/generate-receipt.d.ts +9 -0
  119. package/lib/scripts/generate-receipt.js +90 -0
  120. package/lib/scripts/generate-toprf-keys.d.ts +1 -0
  121. package/lib/scripts/generate-toprf-keys.js +20 -0
  122. package/lib/scripts/jsc-cli-rpc.d.ts +1 -0
  123. package/lib/scripts/jsc-cli-rpc.js +37 -0
  124. package/lib/scripts/register-avs-operator.d.ts +1 -0
  125. package/lib/scripts/register-avs-operator.js +4 -0
  126. package/lib/scripts/start-server.d.ts +1 -0
  127. package/lib/scripts/start-server.js +13 -0
  128. package/lib/scripts/update-avs-metadata.d.ts +1 -0
  129. package/lib/scripts/update-avs-metadata.js +19 -0
  130. package/lib/scripts/utils.d.ts +1 -0
  131. package/lib/scripts/utils.js +7 -0
  132. package/lib/scripts/whitelist-operator.d.ts +1 -0
  133. package/lib/scripts/whitelist-operator.js +15 -0
  134. package/lib/server/create-server.d.ts +7 -0
  135. package/lib/server/create-server.js +122 -0
  136. package/lib/server/handlers/claimTeeBundle.d.ts +6 -0
  137. package/lib/server/handlers/claimTeeBundle.js +206 -0
  138. package/lib/server/handlers/claimTunnel.d.ts +2 -0
  139. package/lib/server/handlers/claimTunnel.js +73 -0
  140. package/lib/server/handlers/completeClaimOnChain.d.ts +2 -0
  141. package/lib/server/handlers/completeClaimOnChain.js +22 -0
  142. package/lib/server/handlers/createClaimOnChain.d.ts +2 -0
  143. package/lib/server/handlers/createClaimOnChain.js +26 -0
  144. package/lib/server/handlers/createTaskOnMechain.d.ts +2 -0
  145. package/lib/server/handlers/createTaskOnMechain.js +47 -0
  146. package/lib/server/handlers/createTunnel.d.ts +2 -0
  147. package/lib/server/handlers/createTunnel.js +93 -0
  148. package/lib/server/handlers/disconnectTunnel.d.ts +2 -0
  149. package/lib/server/handlers/disconnectTunnel.js +5 -0
  150. package/lib/server/handlers/fetchCertificateBytes.d.ts +2 -0
  151. package/lib/server/handlers/fetchCertificateBytes.js +41 -0
  152. package/lib/server/handlers/index.d.ts +4 -0
  153. package/lib/server/handlers/index.js +22 -0
  154. package/lib/server/handlers/init.d.ts +2 -0
  155. package/lib/server/handlers/init.js +30 -0
  156. package/lib/server/handlers/toprf.d.ts +2 -0
  157. package/lib/server/handlers/toprf.js +16 -0
  158. package/lib/server/index.d.ts +4 -0
  159. package/lib/server/index.js +4 -0
  160. package/lib/server/provider-api.d.ts +9 -0
  161. package/lib/server/provider-api.js +98 -0
  162. package/lib/server/provider-store.d.ts +53 -0
  163. package/lib/server/provider-store.js +80 -0
  164. package/lib/server/session-api.d.ts +9 -0
  165. package/lib/server/session-api.js +95 -0
  166. package/lib/server/session-store.d.ts +14 -0
  167. package/lib/server/session-store.js +36 -0
  168. package/lib/server/socket.d.ts +13 -0
  169. package/lib/server/socket.js +109 -0
  170. package/lib/server/tunnels/make-tcp-tunnel.d.ts +22 -0
  171. package/lib/server/tunnels/make-tcp-tunnel.js +177 -0
  172. package/lib/server/utils/apm.d.ts +11 -0
  173. package/lib/server/utils/apm.js +36 -0
  174. package/lib/server/utils/assert-valid-claim-request.d.ts +31 -0
  175. package/lib/server/utils/assert-valid-claim-request.js +229 -0
  176. package/lib/server/utils/config-env.d.ts +1 -0
  177. package/lib/server/utils/config-env.js +4 -0
  178. package/lib/server/utils/dns.d.ts +1 -0
  179. package/lib/server/utils/dns.js +18 -0
  180. package/lib/server/utils/gcp-attestation.d.ts +17 -0
  181. package/lib/server/utils/gcp-attestation.js +289 -0
  182. package/lib/server/utils/generics.d.ts +22 -0
  183. package/lib/server/utils/generics.js +51 -0
  184. package/lib/server/utils/iso.d.ts +1 -0
  185. package/lib/server/utils/iso.js +256 -0
  186. package/lib/server/utils/keep-alive.d.ts +7 -0
  187. package/lib/server/utils/keep-alive.js +38 -0
  188. package/lib/server/utils/nitro-attestation.d.ts +33 -0
  189. package/lib/server/utils/nitro-attestation.js +325 -0
  190. package/lib/server/utils/process-handshake.d.ts +13 -0
  191. package/lib/server/utils/process-handshake.js +214 -0
  192. package/lib/server/utils/proxy-session.d.ts +1 -0
  193. package/lib/server/utils/proxy-session.js +6 -0
  194. package/lib/server/utils/tee-oprf-verification.d.ts +22 -0
  195. package/lib/server/utils/tee-oprf-verification.js +160 -0
  196. package/lib/server/utils/tee-transcript-reconstruction.d.ts +24 -0
  197. package/lib/server/utils/tee-transcript-reconstruction.js +187 -0
  198. package/lib/server/utils/tee-verification.d.ts +27 -0
  199. package/lib/server/utils/tee-verification.js +365 -0
  200. package/lib/server/utils/validation.d.ts +2 -0
  201. package/lib/server/utils/validation.js +38 -0
  202. package/lib/types/bgp.d.ts +11 -0
  203. package/lib/types/bgp.js +1 -0
  204. package/lib/types/claims.d.ts +73 -0
  205. package/lib/types/claims.js +1 -0
  206. package/lib/types/client.d.ts +163 -0
  207. package/lib/types/client.js +1 -0
  208. package/lib/types/general.d.ts +54 -0
  209. package/lib/types/general.js +1 -0
  210. package/lib/types/handlers.d.ts +10 -0
  211. package/lib/types/handlers.js +1 -0
  212. package/lib/types/index.d.ts +10 -0
  213. package/lib/types/index.js +10 -0
  214. package/lib/types/providers.d.ts +161 -0
  215. package/lib/types/providers.gen.d.ts +443 -0
  216. package/lib/types/providers.gen.js +10 -0
  217. package/lib/types/providers.js +1 -0
  218. package/lib/types/rpc.d.ts +35 -0
  219. package/lib/types/rpc.js +1 -0
  220. package/lib/types/signatures.d.ts +28 -0
  221. package/lib/types/signatures.js +1 -0
  222. package/lib/types/tunnel.d.ts +18 -0
  223. package/lib/types/tunnel.js +1 -0
  224. package/lib/types/zk.d.ts +28 -0
  225. package/lib/types/zk.js +1 -0
  226. package/lib/utils/auth.d.ts +8 -0
  227. package/lib/utils/auth.js +59 -0
  228. package/lib/utils/b64-json.d.ts +2 -0
  229. package/lib/utils/b64-json.js +17 -0
  230. package/lib/utils/bgp-listener.d.ts +7 -0
  231. package/lib/utils/bgp-listener.js +119 -0
  232. package/lib/utils/claims.d.ts +33 -0
  233. package/lib/utils/claims.js +101 -0
  234. package/lib/utils/env.d.ts +3 -0
  235. package/lib/utils/env.js +15 -0
  236. package/lib/utils/error.d.ts +26 -0
  237. package/lib/utils/error.js +50 -0
  238. package/lib/utils/generics.d.ts +114 -0
  239. package/lib/utils/generics.js +317 -0
  240. package/lib/utils/http-parser.d.ts +59 -0
  241. package/lib/utils/http-parser.js +246 -0
  242. package/lib/utils/index.d.ts +13 -0
  243. package/lib/utils/index.js +13 -0
  244. package/lib/utils/logger.d.ts +13 -0
  245. package/lib/utils/logger.js +91 -0
  246. package/lib/utils/prepare-packets.d.ts +16 -0
  247. package/lib/utils/prepare-packets.js +62 -0
  248. package/lib/utils/redactions.d.ts +62 -0
  249. package/lib/utils/redactions.js +148 -0
  250. package/lib/utils/retries.d.ts +12 -0
  251. package/lib/utils/retries.js +24 -0
  252. package/lib/utils/signatures/eth.d.ts +2 -0
  253. package/lib/utils/signatures/eth.js +29 -0
  254. package/lib/utils/signatures/index.d.ts +5 -0
  255. package/lib/utils/signatures/index.js +7 -0
  256. package/lib/utils/socket-base.d.ts +23 -0
  257. package/lib/utils/socket-base.js +90 -0
  258. package/lib/utils/tls.d.ts +2 -0
  259. package/{src/utils/tls.ts → lib/utils/tls.js} +28 -35
  260. package/lib/utils/ws.d.ts +7 -0
  261. package/lib/utils/ws.js +22 -0
  262. package/lib/utils/zk.d.ts +70 -0
  263. package/lib/utils/zk.js +572 -0
  264. package/package.json +19 -12
  265. package/src/avs/abis/avsDirectoryABI.ts +0 -340
  266. package/src/avs/abis/delegationABI.ts +0 -1
  267. package/src/avs/abis/registryABI.ts +0 -725
  268. package/src/avs/client/create-claim-on-avs.ts +0 -206
  269. package/src/avs/config.ts +0 -25
  270. package/src/avs/contracts/ReclaimServiceManager.ts +0 -1457
  271. package/src/avs/contracts/common.ts +0 -44
  272. package/src/avs/contracts/factories/ReclaimServiceManager__factory.ts +0 -1213
  273. package/src/avs/tests/test.operator.ts +0 -413
  274. package/src/avs/tests/utils.ts +0 -51
  275. package/src/avs/types/index.ts +0 -60
  276. package/src/avs/utils/contracts.ts +0 -66
  277. package/src/avs/utils/register.ts +0 -125
  278. package/src/avs/utils/tasks.ts +0 -76
  279. package/src/client/create-claim.ts +0 -626
  280. package/src/client/index.ts +0 -3
  281. package/src/client/tunnels/make-rpc-tcp-tunnel.ts +0 -78
  282. package/src/client/tunnels/make-rpc-tls-tunnel.ts +0 -172
  283. package/src/client/utils/attestor-pool.ts +0 -35
  284. package/src/client/utils/client-socket.ts +0 -160
  285. package/src/client/utils/message-handler.ts +0 -116
  286. package/src/config/index.ts +0 -65
  287. package/src/external-rpc/benchmark.ts +0 -102
  288. package/src/external-rpc/event-bus.ts +0 -19
  289. package/src/external-rpc/global.d.ts +0 -20
  290. package/src/external-rpc/handle-incoming-msg.ts +0 -308
  291. package/src/external-rpc/index.ts +0 -3
  292. package/src/external-rpc/jsc-polyfills/1.ts +0 -117
  293. package/src/external-rpc/jsc-polyfills/2.ts +0 -24
  294. package/src/external-rpc/jsc-polyfills/event.ts +0 -16
  295. package/src/external-rpc/jsc-polyfills/index.ts +0 -2
  296. package/src/external-rpc/jsc-polyfills/ws.ts +0 -105
  297. package/src/external-rpc/setup-browser.ts +0 -42
  298. package/src/external-rpc/setup-jsc.ts +0 -48
  299. package/src/external-rpc/types.ts +0 -289
  300. package/src/external-rpc/utils.ts +0 -126
  301. package/src/external-rpc/zk.ts +0 -79
  302. package/src/index.ts +0 -9
  303. package/src/mechain/abis/governanceABI.ts +0 -458
  304. package/src/mechain/abis/taskABI.ts +0 -509
  305. package/src/mechain/client/create-claim-on-mechain.ts +0 -52
  306. package/src/mechain/client/index.ts +0 -1
  307. package/src/mechain/index.ts +0 -2
  308. package/src/mechain/types/index.ts +0 -29
  309. package/src/proto/api.ts +0 -5285
  310. package/src/proto/tee-bundle.ts +0 -1413
  311. package/src/providers/http/index.ts +0 -873
  312. package/src/providers/http/patch-parse5-tree.ts +0 -49
  313. package/src/providers/http/utils.ts +0 -439
  314. package/src/providers/index.ts +0 -8
  315. package/src/scripts/build-browser.sh +0 -9
  316. package/src/scripts/build-browser.ts +0 -40
  317. package/src/scripts/build-jsc.ts +0 -55
  318. package/src/scripts/check-avs-registration.ts +0 -38
  319. package/src/scripts/contract-data-gen.sh +0 -8
  320. package/src/scripts/fallbacks/crypto.ts +0 -1
  321. package/src/scripts/fallbacks/empty.ts +0 -2
  322. package/src/scripts/fallbacks/re2.ts +0 -5
  323. package/src/scripts/fallbacks/snarkjs.ts +0 -5
  324. package/src/scripts/generate-certs.sh +0 -11
  325. package/src/scripts/generate-proto.sh +0 -5
  326. package/src/scripts/generate-provider-types.ts +0 -121
  327. package/src/scripts/generate-receipt.ts +0 -138
  328. package/src/scripts/generate-toprf-keys.ts +0 -30
  329. package/src/scripts/jsc-cli-rpc.ts +0 -48
  330. package/src/scripts/register-avs-operator.ts +0 -5
  331. package/src/scripts/start-server.ts +0 -17
  332. package/src/scripts/update-avs-metadata.ts +0 -26
  333. package/src/scripts/utils.ts +0 -8
  334. package/src/scripts/whitelist-operator.ts +0 -22
  335. package/src/server/create-server.ts +0 -169
  336. package/src/server/handlers/claimTeeBundle.ts +0 -308
  337. package/src/server/handlers/claimTunnel.ts +0 -106
  338. package/src/server/handlers/completeClaimOnChain.ts +0 -36
  339. package/src/server/handlers/createClaimOnChain.ts +0 -39
  340. package/src/server/handlers/createTaskOnMechain.ts +0 -80
  341. package/src/server/handlers/createTunnel.ts +0 -128
  342. package/src/server/handlers/disconnectTunnel.ts +0 -11
  343. package/src/server/handlers/fetchCertificateBytes.ts +0 -66
  344. package/src/server/handlers/index.ts +0 -24
  345. package/src/server/handlers/init.ts +0 -46
  346. package/src/server/handlers/toprf.ts +0 -25
  347. package/src/server/index.ts +0 -4
  348. package/src/server/provider-api.ts +0 -118
  349. package/src/server/provider-store.ts +0 -117
  350. package/src/server/session-api.ts +0 -115
  351. package/src/server/session-store.ts +0 -60
  352. package/src/server/socket.ts +0 -156
  353. package/src/server/tunnels/make-tcp-tunnel.ts +0 -275
  354. package/src/server/utils/apm.ts +0 -49
  355. package/src/server/utils/assert-valid-claim-request.ts +0 -375
  356. package/src/server/utils/config-env.ts +0 -6
  357. package/src/server/utils/dns.ts +0 -25
  358. package/src/server/utils/gcp-attestation.ts +0 -415
  359. package/src/server/utils/generics.ts +0 -68
  360. package/src/server/utils/iso.ts +0 -258
  361. package/src/server/utils/keep-alive.ts +0 -50
  362. package/src/server/utils/nitro-attestation.ts +0 -396
  363. package/src/server/utils/process-handshake.ts +0 -311
  364. package/src/server/utils/proxy-session.ts +0 -6
  365. package/src/server/utils/tee-oprf-verification.ts +0 -231
  366. package/src/server/utils/tee-transcript-reconstruction.ts +0 -254
  367. package/src/server/utils/tee-verification.ts +0 -513
  368. package/src/server/utils/validation.ts +0 -57
  369. package/src/tests/auth.test.ts +0 -105
  370. package/src/tests/bgp-listener.test.ts +0 -193
  371. package/src/tests/claim-creation.test.ts +0 -415
  372. package/src/tests/describe-with-server.ts +0 -94
  373. package/src/tests/gcp-attestation.test.ts +0 -206
  374. package/src/tests/http-parser.test.ts +0 -135
  375. package/src/tests/http-provider-utils.test.ts +0 -3306
  376. package/src/tests/http-provider.test.ts +0 -125
  377. package/src/tests/jsc.test_mac.ts +0 -296
  378. package/src/tests/mock-provider-server.ts +0 -106
  379. package/src/tests/mocks.ts +0 -25
  380. package/src/tests/proof_bundle.bin +0 -0
  381. package/src/tests/rpc-communication.test.ts +0 -115
  382. package/src/tests/rpc-tunnel.test.ts +0 -239
  383. package/src/tests/signatures.test.ts +0 -37
  384. package/src/tests/tcp-tunnel.test.ts +0 -154
  385. package/src/tests/tee-bundle.test.ts +0 -321
  386. package/src/tests/tee-signatures.test.ts +0 -81
  387. package/src/tests/utils.ts +0 -108
  388. package/src/tests/verification_bundle.pb +0 -0
  389. package/src/tests/verification_bundle_tee.pb +0 -0
  390. package/src/tests/zk.test.ts +0 -453
  391. package/src/types/bgp.ts +0 -17
  392. package/src/types/claims.ts +0 -79
  393. package/src/types/client.ts +0 -205
  394. package/src/types/general.ts +0 -61
  395. package/src/types/handlers.ts +0 -16
  396. package/src/types/index.ts +0 -10
  397. package/src/types/providers.gen.ts +0 -135
  398. package/src/types/providers.ts +0 -203
  399. package/src/types/rpc.ts +0 -46
  400. package/src/types/signatures.ts +0 -29
  401. package/src/types/tunnel.ts +0 -25
  402. package/src/types/zk.ts +0 -31
  403. package/src/utils/auth.ts +0 -92
  404. package/src/utils/b64-json.ts +0 -25
  405. package/src/utils/bgp-listener.ts +0 -159
  406. package/src/utils/claims.ts +0 -132
  407. package/src/utils/env.ts +0 -21
  408. package/src/utils/error.ts +0 -76
  409. package/src/utils/generics.ts +0 -429
  410. package/src/utils/http-parser.ts +0 -312
  411. package/src/utils/index.ts +0 -13
  412. package/src/utils/logger.ts +0 -114
  413. package/src/utils/prepare-packets.ts +0 -98
  414. package/src/utils/redactions.ts +0 -203
  415. package/src/utils/retries.ts +0 -41
  416. package/src/utils/signatures/eth.ts +0 -35
  417. package/src/utils/signatures/index.ts +0 -11
  418. package/src/utils/socket-base.ts +0 -132
  419. package/src/utils/ws.ts +0 -30
  420. package/src/utils/zk.ts +0 -908
@@ -0,0 +1,1169 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import { utils, Contract, ContractFactory } from "ethers";
5
+ const _abi = [
6
+ {
7
+ type: "constructor",
8
+ inputs: [
9
+ {
10
+ name: "_avsDirectory",
11
+ type: "address",
12
+ internalType: "address",
13
+ },
14
+ {
15
+ name: "_stakeRegistry",
16
+ type: "address",
17
+ internalType: "address",
18
+ },
19
+ {
20
+ name: "_delegationManager",
21
+ type: "address",
22
+ internalType: "address",
23
+ },
24
+ ],
25
+ stateMutability: "nonpayable",
26
+ },
27
+ {
28
+ type: "function",
29
+ name: "admins",
30
+ inputs: [
31
+ {
32
+ name: "",
33
+ type: "uint256",
34
+ internalType: "uint256",
35
+ },
36
+ ],
37
+ outputs: [
38
+ {
39
+ name: "",
40
+ type: "address",
41
+ internalType: "address",
42
+ },
43
+ ],
44
+ stateMutability: "view",
45
+ },
46
+ {
47
+ type: "function",
48
+ name: "allTaskHashes",
49
+ inputs: [
50
+ {
51
+ name: "",
52
+ type: "uint32",
53
+ internalType: "uint32",
54
+ },
55
+ ],
56
+ outputs: [
57
+ {
58
+ name: "",
59
+ type: "bytes32",
60
+ internalType: "bytes32",
61
+ },
62
+ ],
63
+ stateMutability: "view",
64
+ },
65
+ {
66
+ type: "function",
67
+ name: "avsDirectory",
68
+ inputs: [],
69
+ outputs: [
70
+ {
71
+ name: "",
72
+ type: "address",
73
+ internalType: "address",
74
+ },
75
+ ],
76
+ stateMutability: "view",
77
+ },
78
+ {
79
+ type: "function",
80
+ name: "checkSignerAddress",
81
+ inputs: [
82
+ {
83
+ name: "request",
84
+ type: "tuple",
85
+ internalType: "struct IReclaimServiceManager.ClaimRequest",
86
+ components: [
87
+ {
88
+ name: "provider",
89
+ type: "string",
90
+ internalType: "string",
91
+ },
92
+ {
93
+ name: "claimUserId",
94
+ type: "bytes32",
95
+ internalType: "bytes32",
96
+ },
97
+ {
98
+ name: "claimHash",
99
+ type: "bytes32",
100
+ internalType: "bytes32",
101
+ },
102
+ {
103
+ name: "requestedAt",
104
+ type: "uint32",
105
+ internalType: "uint32",
106
+ },
107
+ {
108
+ name: "owner",
109
+ type: "address",
110
+ internalType: "address",
111
+ },
112
+ ],
113
+ },
114
+ {
115
+ name: "requestSignature",
116
+ type: "bytes",
117
+ internalType: "bytes",
118
+ },
119
+ ],
120
+ outputs: [
121
+ {
122
+ name: "",
123
+ type: "address",
124
+ internalType: "address",
125
+ },
126
+ ],
127
+ stateMutability: "pure",
128
+ },
129
+ {
130
+ type: "function",
131
+ name: "createNewTask",
132
+ inputs: [
133
+ {
134
+ name: "request",
135
+ type: "tuple",
136
+ internalType: "struct IReclaimServiceManager.ClaimRequest",
137
+ components: [
138
+ {
139
+ name: "provider",
140
+ type: "string",
141
+ internalType: "string",
142
+ },
143
+ {
144
+ name: "claimUserId",
145
+ type: "bytes32",
146
+ internalType: "bytes32",
147
+ },
148
+ {
149
+ name: "claimHash",
150
+ type: "bytes32",
151
+ internalType: "bytes32",
152
+ },
153
+ {
154
+ name: "requestedAt",
155
+ type: "uint32",
156
+ internalType: "uint32",
157
+ },
158
+ {
159
+ name: "owner",
160
+ type: "address",
161
+ internalType: "address",
162
+ },
163
+ ],
164
+ },
165
+ {
166
+ name: "requestSignature",
167
+ type: "bytes",
168
+ internalType: "bytes",
169
+ },
170
+ ],
171
+ outputs: [],
172
+ stateMutability: "nonpayable",
173
+ },
174
+ {
175
+ type: "function",
176
+ name: "deregisterOperatorFromAVS",
177
+ inputs: [
178
+ {
179
+ name: "operator",
180
+ type: "address",
181
+ internalType: "address",
182
+ },
183
+ ],
184
+ outputs: [],
185
+ stateMutability: "nonpayable",
186
+ },
187
+ {
188
+ type: "function",
189
+ name: "encodeClaimRequest",
190
+ inputs: [
191
+ {
192
+ name: "request",
193
+ type: "tuple",
194
+ internalType: "struct IReclaimServiceManager.ClaimRequest",
195
+ components: [
196
+ {
197
+ name: "provider",
198
+ type: "string",
199
+ internalType: "string",
200
+ },
201
+ {
202
+ name: "claimUserId",
203
+ type: "bytes32",
204
+ internalType: "bytes32",
205
+ },
206
+ {
207
+ name: "claimHash",
208
+ type: "bytes32",
209
+ internalType: "bytes32",
210
+ },
211
+ {
212
+ name: "requestedAt",
213
+ type: "uint32",
214
+ internalType: "uint32",
215
+ },
216
+ {
217
+ name: "owner",
218
+ type: "address",
219
+ internalType: "address",
220
+ },
221
+ ],
222
+ },
223
+ ],
224
+ outputs: [
225
+ {
226
+ name: "",
227
+ type: "bytes",
228
+ internalType: "bytes",
229
+ },
230
+ ],
231
+ stateMutability: "pure",
232
+ },
233
+ {
234
+ type: "function",
235
+ name: "getMetadataForOperator",
236
+ inputs: [
237
+ {
238
+ name: "operator",
239
+ type: "address",
240
+ internalType: "address",
241
+ },
242
+ ],
243
+ outputs: [
244
+ {
245
+ name: "",
246
+ type: "tuple",
247
+ internalType: "struct IReclaimServiceManager.OperatorMetadata",
248
+ components: [
249
+ {
250
+ name: "addr",
251
+ type: "address",
252
+ internalType: "address",
253
+ },
254
+ {
255
+ name: "url",
256
+ type: "string",
257
+ internalType: "string",
258
+ },
259
+ ],
260
+ },
261
+ ],
262
+ stateMutability: "view",
263
+ },
264
+ {
265
+ type: "function",
266
+ name: "getOperatorRestakedStrategies",
267
+ inputs: [
268
+ {
269
+ name: "_operator",
270
+ type: "address",
271
+ internalType: "address",
272
+ },
273
+ ],
274
+ outputs: [
275
+ {
276
+ name: "",
277
+ type: "address[]",
278
+ internalType: "address[]",
279
+ },
280
+ ],
281
+ stateMutability: "view",
282
+ },
283
+ {
284
+ type: "function",
285
+ name: "getRestakeableStrategies",
286
+ inputs: [],
287
+ outputs: [
288
+ {
289
+ name: "",
290
+ type: "address[]",
291
+ internalType: "address[]",
292
+ },
293
+ ],
294
+ stateMutability: "view",
295
+ },
296
+ {
297
+ type: "function",
298
+ name: "isAdmin",
299
+ inputs: [
300
+ {
301
+ name: "_admin",
302
+ type: "address",
303
+ internalType: "address",
304
+ },
305
+ ],
306
+ outputs: [
307
+ {
308
+ name: "",
309
+ type: "bool",
310
+ internalType: "bool",
311
+ },
312
+ ],
313
+ stateMutability: "view",
314
+ },
315
+ {
316
+ type: "function",
317
+ name: "isOperatorWhitelisted",
318
+ inputs: [
319
+ {
320
+ name: "operator",
321
+ type: "address",
322
+ internalType: "address",
323
+ },
324
+ ],
325
+ outputs: [
326
+ {
327
+ name: "",
328
+ type: "bool",
329
+ internalType: "bool",
330
+ },
331
+ ],
332
+ stateMutability: "view",
333
+ },
334
+ {
335
+ type: "function",
336
+ name: "latestTaskNum",
337
+ inputs: [],
338
+ outputs: [
339
+ {
340
+ name: "",
341
+ type: "uint32",
342
+ internalType: "uint32",
343
+ },
344
+ ],
345
+ stateMutability: "view",
346
+ },
347
+ {
348
+ type: "function",
349
+ name: "operatorHasMinimumWeight",
350
+ inputs: [
351
+ {
352
+ name: "operator",
353
+ type: "address",
354
+ internalType: "address",
355
+ },
356
+ ],
357
+ outputs: [
358
+ {
359
+ name: "",
360
+ type: "bool",
361
+ internalType: "bool",
362
+ },
363
+ ],
364
+ stateMutability: "view",
365
+ },
366
+ {
367
+ type: "function",
368
+ name: "owner",
369
+ inputs: [],
370
+ outputs: [
371
+ {
372
+ name: "",
373
+ type: "address",
374
+ internalType: "address",
375
+ },
376
+ ],
377
+ stateMutability: "view",
378
+ },
379
+ {
380
+ type: "function",
381
+ name: "pause",
382
+ inputs: [
383
+ {
384
+ name: "newPausedStatus",
385
+ type: "uint256",
386
+ internalType: "uint256",
387
+ },
388
+ ],
389
+ outputs: [],
390
+ stateMutability: "nonpayable",
391
+ },
392
+ {
393
+ type: "function",
394
+ name: "pauseAll",
395
+ inputs: [],
396
+ outputs: [],
397
+ stateMutability: "nonpayable",
398
+ },
399
+ {
400
+ type: "function",
401
+ name: "paused",
402
+ inputs: [
403
+ {
404
+ name: "index",
405
+ type: "uint8",
406
+ internalType: "uint8",
407
+ },
408
+ ],
409
+ outputs: [
410
+ {
411
+ name: "",
412
+ type: "bool",
413
+ internalType: "bool",
414
+ },
415
+ ],
416
+ stateMutability: "view",
417
+ },
418
+ {
419
+ type: "function",
420
+ name: "paused",
421
+ inputs: [],
422
+ outputs: [
423
+ {
424
+ name: "",
425
+ type: "uint256",
426
+ internalType: "uint256",
427
+ },
428
+ ],
429
+ stateMutability: "view",
430
+ },
431
+ {
432
+ type: "function",
433
+ name: "pauserRegistry",
434
+ inputs: [],
435
+ outputs: [
436
+ {
437
+ name: "",
438
+ type: "address",
439
+ internalType: "contract IPauserRegistry",
440
+ },
441
+ ],
442
+ stateMutability: "view",
443
+ },
444
+ {
445
+ type: "function",
446
+ name: "payForRange",
447
+ inputs: [
448
+ {
449
+ name: "rangePayments",
450
+ type: "tuple[]",
451
+ internalType: "struct IPaymentCoordinator.RangePayment[]",
452
+ components: [
453
+ {
454
+ name: "strategiesAndMultipliers",
455
+ type: "tuple[]",
456
+ internalType: "struct IPaymentCoordinator.StrategyAndMultiplier[]",
457
+ components: [
458
+ {
459
+ name: "strategy",
460
+ type: "address",
461
+ internalType: "contract IStrategy",
462
+ },
463
+ {
464
+ name: "multiplier",
465
+ type: "uint96",
466
+ internalType: "uint96",
467
+ },
468
+ ],
469
+ },
470
+ {
471
+ name: "token",
472
+ type: "address",
473
+ internalType: "contract IERC20",
474
+ },
475
+ {
476
+ name: "amount",
477
+ type: "uint256",
478
+ internalType: "uint256",
479
+ },
480
+ {
481
+ name: "startTimestamp",
482
+ type: "uint32",
483
+ internalType: "uint32",
484
+ },
485
+ {
486
+ name: "duration",
487
+ type: "uint32",
488
+ internalType: "uint32",
489
+ },
490
+ ],
491
+ },
492
+ ],
493
+ outputs: [],
494
+ stateMutability: "nonpayable",
495
+ },
496
+ {
497
+ type: "function",
498
+ name: "registerOperatorToAVS",
499
+ inputs: [
500
+ {
501
+ name: "operator",
502
+ type: "address",
503
+ internalType: "address",
504
+ },
505
+ {
506
+ name: "operatorSignature",
507
+ type: "tuple",
508
+ internalType: "struct ISignatureUtils.SignatureWithSaltAndExpiry",
509
+ components: [
510
+ {
511
+ name: "signature",
512
+ type: "bytes",
513
+ internalType: "bytes",
514
+ },
515
+ {
516
+ name: "salt",
517
+ type: "bytes32",
518
+ internalType: "bytes32",
519
+ },
520
+ {
521
+ name: "expiry",
522
+ type: "uint256",
523
+ internalType: "uint256",
524
+ },
525
+ ],
526
+ },
527
+ ],
528
+ outputs: [],
529
+ stateMutability: "nonpayable",
530
+ },
531
+ {
532
+ type: "function",
533
+ name: "registeredOperators",
534
+ inputs: [
535
+ {
536
+ name: "",
537
+ type: "uint256",
538
+ internalType: "uint256",
539
+ },
540
+ ],
541
+ outputs: [
542
+ {
543
+ name: "addr",
544
+ type: "address",
545
+ internalType: "address",
546
+ },
547
+ {
548
+ name: "url",
549
+ type: "string",
550
+ internalType: "string",
551
+ },
552
+ ],
553
+ stateMutability: "view",
554
+ },
555
+ {
556
+ type: "function",
557
+ name: "renounceOwnership",
558
+ inputs: [],
559
+ outputs: [],
560
+ stateMutability: "nonpayable",
561
+ },
562
+ {
563
+ type: "function",
564
+ name: "setPauserRegistry",
565
+ inputs: [
566
+ {
567
+ name: "newPauserRegistry",
568
+ type: "address",
569
+ internalType: "contract IPauserRegistry",
570
+ },
571
+ ],
572
+ outputs: [],
573
+ stateMutability: "nonpayable",
574
+ },
575
+ {
576
+ type: "function",
577
+ name: "setup",
578
+ inputs: [
579
+ {
580
+ name: "initialAdmin",
581
+ type: "address",
582
+ internalType: "address",
583
+ },
584
+ ],
585
+ outputs: [],
586
+ stateMutability: "nonpayable",
587
+ },
588
+ {
589
+ type: "function",
590
+ name: "stakeRegistry",
591
+ inputs: [],
592
+ outputs: [
593
+ {
594
+ name: "",
595
+ type: "address",
596
+ internalType: "address",
597
+ },
598
+ ],
599
+ stateMutability: "view",
600
+ },
601
+ {
602
+ type: "function",
603
+ name: "taskCompleted",
604
+ inputs: [
605
+ {
606
+ name: "completedTask",
607
+ type: "tuple",
608
+ internalType: "struct IReclaimServiceManager.CompletedTask",
609
+ components: [
610
+ {
611
+ name: "task",
612
+ type: "tuple",
613
+ internalType: "struct IReclaimServiceManager.Task",
614
+ components: [
615
+ {
616
+ name: "request",
617
+ type: "tuple",
618
+ internalType: "struct IReclaimServiceManager.ClaimRequest",
619
+ components: [
620
+ {
621
+ name: "provider",
622
+ type: "string",
623
+ internalType: "string",
624
+ },
625
+ {
626
+ name: "claimUserId",
627
+ type: "bytes32",
628
+ internalType: "bytes32",
629
+ },
630
+ {
631
+ name: "claimHash",
632
+ type: "bytes32",
633
+ internalType: "bytes32",
634
+ },
635
+ {
636
+ name: "requestedAt",
637
+ type: "uint32",
638
+ internalType: "uint32",
639
+ },
640
+ {
641
+ name: "owner",
642
+ type: "address",
643
+ internalType: "address",
644
+ },
645
+ ],
646
+ },
647
+ {
648
+ name: "createdAt",
649
+ type: "uint32",
650
+ internalType: "uint32",
651
+ },
652
+ {
653
+ name: "expiresAt",
654
+ type: "uint32",
655
+ internalType: "uint32",
656
+ },
657
+ {
658
+ name: "minimumSignatures",
659
+ type: "uint8",
660
+ internalType: "uint8",
661
+ },
662
+ {
663
+ name: "operators",
664
+ type: "tuple[]",
665
+ internalType: "struct IReclaimServiceManager.Operator[]",
666
+ components: [
667
+ {
668
+ name: "addr",
669
+ type: "address",
670
+ internalType: "address",
671
+ },
672
+ {
673
+ name: "url",
674
+ type: "string",
675
+ internalType: "string",
676
+ },
677
+ ],
678
+ },
679
+ {
680
+ name: "feePaid",
681
+ type: "uint256",
682
+ internalType: "uint256",
683
+ },
684
+ ],
685
+ },
686
+ {
687
+ name: "signatures",
688
+ type: "bytes[]",
689
+ internalType: "bytes[]",
690
+ },
691
+ ],
692
+ },
693
+ {
694
+ name: "referenceTaskIndex",
695
+ type: "uint32",
696
+ internalType: "uint32",
697
+ },
698
+ ],
699
+ outputs: [],
700
+ stateMutability: "nonpayable",
701
+ },
702
+ {
703
+ type: "function",
704
+ name: "taskCreationMetadata",
705
+ inputs: [],
706
+ outputs: [
707
+ {
708
+ name: "maxTaskLifetimeS",
709
+ type: "uint32",
710
+ internalType: "uint32",
711
+ },
712
+ {
713
+ name: "minSignaturesPerTask",
714
+ type: "uint8",
715
+ internalType: "uint8",
716
+ },
717
+ {
718
+ name: "maxTaskCreationDelayS",
719
+ type: "uint32",
720
+ internalType: "uint32",
721
+ },
722
+ ],
723
+ stateMutability: "view",
724
+ },
725
+ {
726
+ type: "function",
727
+ name: "transferOwnership",
728
+ inputs: [
729
+ {
730
+ name: "newOwner",
731
+ type: "address",
732
+ internalType: "address",
733
+ },
734
+ ],
735
+ outputs: [],
736
+ stateMutability: "nonpayable",
737
+ },
738
+ {
739
+ type: "function",
740
+ name: "unpause",
741
+ inputs: [
742
+ {
743
+ name: "newPausedStatus",
744
+ type: "uint256",
745
+ internalType: "uint256",
746
+ },
747
+ ],
748
+ outputs: [],
749
+ stateMutability: "nonpayable",
750
+ },
751
+ {
752
+ type: "function",
753
+ name: "updateAVSMetadataURI",
754
+ inputs: [
755
+ {
756
+ name: "_metadataURI",
757
+ type: "string",
758
+ internalType: "string",
759
+ },
760
+ ],
761
+ outputs: [],
762
+ stateMutability: "nonpayable",
763
+ },
764
+ {
765
+ type: "function",
766
+ name: "updateOperatorMetadata",
767
+ inputs: [
768
+ {
769
+ name: "metadata",
770
+ type: "tuple",
771
+ internalType: "struct IReclaimServiceManager.OperatorMetadata",
772
+ components: [
773
+ {
774
+ name: "addr",
775
+ type: "address",
776
+ internalType: "address",
777
+ },
778
+ {
779
+ name: "url",
780
+ type: "string",
781
+ internalType: "string",
782
+ },
783
+ ],
784
+ },
785
+ ],
786
+ outputs: [],
787
+ stateMutability: "nonpayable",
788
+ },
789
+ {
790
+ type: "function",
791
+ name: "updateTaskCreationMetadata",
792
+ inputs: [
793
+ {
794
+ name: "newMetadata",
795
+ type: "tuple",
796
+ internalType: "struct IReclaimServiceManager.TaskCreationMetadata",
797
+ components: [
798
+ {
799
+ name: "maxTaskLifetimeS",
800
+ type: "uint32",
801
+ internalType: "uint32",
802
+ },
803
+ {
804
+ name: "minSignaturesPerTask",
805
+ type: "uint8",
806
+ internalType: "uint8",
807
+ },
808
+ {
809
+ name: "maxTaskCreationDelayS",
810
+ type: "uint32",
811
+ internalType: "uint32",
812
+ },
813
+ ],
814
+ },
815
+ ],
816
+ outputs: [],
817
+ stateMutability: "nonpayable",
818
+ },
819
+ {
820
+ type: "function",
821
+ name: "whitelistAddressAsOperator",
822
+ inputs: [
823
+ {
824
+ name: "operator",
825
+ type: "address",
826
+ internalType: "address",
827
+ },
828
+ {
829
+ name: "isWhitelisted",
830
+ type: "bool",
831
+ internalType: "bool",
832
+ },
833
+ ],
834
+ outputs: [],
835
+ stateMutability: "nonpayable",
836
+ },
837
+ {
838
+ type: "function",
839
+ name: "whitelistedOperators",
840
+ inputs: [
841
+ {
842
+ name: "",
843
+ type: "uint256",
844
+ internalType: "uint256",
845
+ },
846
+ ],
847
+ outputs: [
848
+ {
849
+ name: "",
850
+ type: "address",
851
+ internalType: "address",
852
+ },
853
+ ],
854
+ stateMutability: "view",
855
+ },
856
+ {
857
+ type: "event",
858
+ name: "Initialized",
859
+ inputs: [
860
+ {
861
+ name: "version",
862
+ type: "uint8",
863
+ indexed: false,
864
+ internalType: "uint8",
865
+ },
866
+ ],
867
+ anonymous: false,
868
+ },
869
+ {
870
+ type: "event",
871
+ name: "NewTaskCreated",
872
+ inputs: [
873
+ {
874
+ name: "taskIndex",
875
+ type: "uint32",
876
+ indexed: true,
877
+ internalType: "uint32",
878
+ },
879
+ {
880
+ name: "task",
881
+ type: "tuple",
882
+ indexed: false,
883
+ internalType: "struct IReclaimServiceManager.Task",
884
+ components: [
885
+ {
886
+ name: "request",
887
+ type: "tuple",
888
+ internalType: "struct IReclaimServiceManager.ClaimRequest",
889
+ components: [
890
+ {
891
+ name: "provider",
892
+ type: "string",
893
+ internalType: "string",
894
+ },
895
+ {
896
+ name: "claimUserId",
897
+ type: "bytes32",
898
+ internalType: "bytes32",
899
+ },
900
+ {
901
+ name: "claimHash",
902
+ type: "bytes32",
903
+ internalType: "bytes32",
904
+ },
905
+ {
906
+ name: "requestedAt",
907
+ type: "uint32",
908
+ internalType: "uint32",
909
+ },
910
+ {
911
+ name: "owner",
912
+ type: "address",
913
+ internalType: "address",
914
+ },
915
+ ],
916
+ },
917
+ {
918
+ name: "createdAt",
919
+ type: "uint32",
920
+ internalType: "uint32",
921
+ },
922
+ {
923
+ name: "expiresAt",
924
+ type: "uint32",
925
+ internalType: "uint32",
926
+ },
927
+ {
928
+ name: "minimumSignatures",
929
+ type: "uint8",
930
+ internalType: "uint8",
931
+ },
932
+ {
933
+ name: "operators",
934
+ type: "tuple[]",
935
+ internalType: "struct IReclaimServiceManager.Operator[]",
936
+ components: [
937
+ {
938
+ name: "addr",
939
+ type: "address",
940
+ internalType: "address",
941
+ },
942
+ {
943
+ name: "url",
944
+ type: "string",
945
+ internalType: "string",
946
+ },
947
+ ],
948
+ },
949
+ {
950
+ name: "feePaid",
951
+ type: "uint256",
952
+ internalType: "uint256",
953
+ },
954
+ ],
955
+ },
956
+ ],
957
+ anonymous: false,
958
+ },
959
+ {
960
+ type: "event",
961
+ name: "OwnershipTransferred",
962
+ inputs: [
963
+ {
964
+ name: "previousOwner",
965
+ type: "address",
966
+ indexed: true,
967
+ internalType: "address",
968
+ },
969
+ {
970
+ name: "newOwner",
971
+ type: "address",
972
+ indexed: true,
973
+ internalType: "address",
974
+ },
975
+ ],
976
+ anonymous: false,
977
+ },
978
+ {
979
+ type: "event",
980
+ name: "Paused",
981
+ inputs: [
982
+ {
983
+ name: "account",
984
+ type: "address",
985
+ indexed: true,
986
+ internalType: "address",
987
+ },
988
+ {
989
+ name: "newPausedStatus",
990
+ type: "uint256",
991
+ indexed: false,
992
+ internalType: "uint256",
993
+ },
994
+ ],
995
+ anonymous: false,
996
+ },
997
+ {
998
+ type: "event",
999
+ name: "PauserRegistrySet",
1000
+ inputs: [
1001
+ {
1002
+ name: "pauserRegistry",
1003
+ type: "address",
1004
+ indexed: false,
1005
+ internalType: "contract IPauserRegistry",
1006
+ },
1007
+ {
1008
+ name: "newPauserRegistry",
1009
+ type: "address",
1010
+ indexed: false,
1011
+ internalType: "contract IPauserRegistry",
1012
+ },
1013
+ ],
1014
+ anonymous: false,
1015
+ },
1016
+ {
1017
+ type: "event",
1018
+ name: "TaskCompleted",
1019
+ inputs: [
1020
+ {
1021
+ name: "taskIndex",
1022
+ type: "uint32",
1023
+ indexed: true,
1024
+ internalType: "uint32",
1025
+ },
1026
+ {
1027
+ name: "task",
1028
+ type: "tuple",
1029
+ indexed: false,
1030
+ internalType: "struct IReclaimServiceManager.CompletedTask",
1031
+ components: [
1032
+ {
1033
+ name: "task",
1034
+ type: "tuple",
1035
+ internalType: "struct IReclaimServiceManager.Task",
1036
+ components: [
1037
+ {
1038
+ name: "request",
1039
+ type: "tuple",
1040
+ internalType: "struct IReclaimServiceManager.ClaimRequest",
1041
+ components: [
1042
+ {
1043
+ name: "provider",
1044
+ type: "string",
1045
+ internalType: "string",
1046
+ },
1047
+ {
1048
+ name: "claimUserId",
1049
+ type: "bytes32",
1050
+ internalType: "bytes32",
1051
+ },
1052
+ {
1053
+ name: "claimHash",
1054
+ type: "bytes32",
1055
+ internalType: "bytes32",
1056
+ },
1057
+ {
1058
+ name: "requestedAt",
1059
+ type: "uint32",
1060
+ internalType: "uint32",
1061
+ },
1062
+ {
1063
+ name: "owner",
1064
+ type: "address",
1065
+ internalType: "address",
1066
+ },
1067
+ ],
1068
+ },
1069
+ {
1070
+ name: "createdAt",
1071
+ type: "uint32",
1072
+ internalType: "uint32",
1073
+ },
1074
+ {
1075
+ name: "expiresAt",
1076
+ type: "uint32",
1077
+ internalType: "uint32",
1078
+ },
1079
+ {
1080
+ name: "minimumSignatures",
1081
+ type: "uint8",
1082
+ internalType: "uint8",
1083
+ },
1084
+ {
1085
+ name: "operators",
1086
+ type: "tuple[]",
1087
+ internalType: "struct IReclaimServiceManager.Operator[]",
1088
+ components: [
1089
+ {
1090
+ name: "addr",
1091
+ type: "address",
1092
+ internalType: "address",
1093
+ },
1094
+ {
1095
+ name: "url",
1096
+ type: "string",
1097
+ internalType: "string",
1098
+ },
1099
+ ],
1100
+ },
1101
+ {
1102
+ name: "feePaid",
1103
+ type: "uint256",
1104
+ internalType: "uint256",
1105
+ },
1106
+ ],
1107
+ },
1108
+ {
1109
+ name: "signatures",
1110
+ type: "bytes[]",
1111
+ internalType: "bytes[]",
1112
+ },
1113
+ ],
1114
+ },
1115
+ ],
1116
+ anonymous: false,
1117
+ },
1118
+ {
1119
+ type: "event",
1120
+ name: "Unpaused",
1121
+ inputs: [
1122
+ {
1123
+ name: "account",
1124
+ type: "address",
1125
+ indexed: true,
1126
+ internalType: "address",
1127
+ },
1128
+ {
1129
+ name: "newPausedStatus",
1130
+ type: "uint256",
1131
+ indexed: false,
1132
+ internalType: "uint256",
1133
+ },
1134
+ ],
1135
+ anonymous: false,
1136
+ },
1137
+ ];
1138
+ const _bytecode = "0x61010060405234801561001157600080fd5b50604051614c04380380614c0483398101604081905261003091610146565b6001600160a01b0380841660a052808316608052600060c081905290821660e052839083908361005e61006a565b50505050505050610189565b600054610100900460ff16156100d65760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015610128576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b80516001600160a01b038116811461014157600080fd5b919050565b60008060006060848603121561015b57600080fd5b6101648461012a565b92506101726020850161012a565b91506101806040850161012a565b90509250925092565b60805160a05160c05160e0516149f561020f600039600061214c015260008181611ec30152611f990152600081816103ce015281816123930152818161250d015261257d0152600081816103a7015281816107e2015281816111cd015281816114dd01528181611960015281816119d10152818161200401526129d901526149f56000f3fe608060405234801561001057600080fd5b506004361061021c5760003560e01c8063715018a611610125578063a98fb355116100ad578063d5dba76d1161007c578063d5dba76d14610514578063e481af9d14610527578063f289a7fb1461052f578063f2fde38b14610582578063fabc1cbc1461059557600080fd5b8063a98fb355146104bb578063aa5b9cad146104ce578063abd3b6bd146104e1578063b224b9791461050157600080fd5b806394bb371b116100f457806394bb371b146104415780639926ee7d14610461578063a3524f9514610474578063a364f4da14610487578063a551c1b81461049a57600080fd5b8063715018a6146103f0578063886f1195146103f85780638b00ce7c1461040b5780638da5cb5b1461043057600080fd5b80632e8da829116101a85780635c975abb116101775780635c975abb14610374578063630868dc1461037c57806366d382031461038f57806368304835146103a25780636b3aa72e146103c957600080fd5b80632e8da8291461031657806333cfb7b714610329578063595c6a67146103495780635ac86ab71461035157600080fd5b80631b445516116101ef5780631b4455161461028c5780631be785ac1461029f5780631ee3ca10146102b257806324d7806c146102c55780632d89f6fc146102e857600080fd5b806310d67a2f14610221578063136439dd1461023657806314bfd6d01461024957806316bd83c314610279575b600080fd5b61023461022f36600461349a565b6105a8565b005b6102346102443660046134b7565b610664565b61025c6102573660046134b7565b6107a3565b6040516001600160a01b0390911681526020015b60405180910390f35b610234610287366004613674565b6107cd565b61023461029a3660046136a8565b610b35565b6102346102ad36600461372b565b610b4b565b6102346102c0366004613789565b610c44565b6102d86102d336600461349a565b610d03565b6040519015158152602001610270565b6103086102f63660046137d9565b60cb6020526000908152604090205481565b604051908152602001610270565b6102d861032436600461349a565b610d8c565b61033c61033736600461349a565b610df9565b60405161027091906137f4565b610234610e0a565b6102d861035f366004613840565b609854600160ff9092169190911b9081161490565b609854610308565b61025c61038a3660046134b7565b610ed1565b61023461039d36600461349a565b610ee1565b61025c7f000000000000000000000000000000000000000000000000000000000000000081565b61025c7f000000000000000000000000000000000000000000000000000000000000000081565b61023461106c565b60975461025c906001600160a01b031681565b60c95461041b9063ffffffff1681565b60405163ffffffff9091168152602001610270565b6033546001600160a01b031661025c565b61045461044f36600461349a565b611080565b60405161027091906138d2565b61023461046f3660046138e5565b6111c2565b610234610482366004613b4a565b611269565b61023461049536600461349a565b6114d2565b6104ad6104a83660046134b7565b611523565b604051610270929190613c94565b6102346104c9366004613cb8565b6115e5565b61025c6104dc366004613cec565b611613565b6104f46104ef366004613d53565b61164a565b6040516102709190613d87565b61023461050f366004613cec565b611673565b6102d861052236600461349a565b61193c565b61033c611a5c565b60ca546105599063ffffffff8082169160ff64010000000082041691650100000000009091041683565b6040805163ffffffff948516815260ff9093166020840152921691810191909152606001610270565b61023461059036600461349a565b611a6b565b6102346105a33660046134b7565b611ae1565b609760009054906101000a90046001600160a01b03166001600160a01b031663eab66d7a6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105fb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061061f9190613d9a565b6001600160a01b0316336001600160a01b0316146106585760405162461bcd60e51b815260040161064f90613db7565b60405180910390fd5b61066181611c3d565b50565b60975460405163237dfb4760e11b81523360048201526001600160a01b03909116906346fbf68e90602401602060405180830381865afa1580156106ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106d09190613e01565b6106ec5760405162461bcd60e51b815260040161064f90613e1e565b609854818116146107655760405162461bcd60e51b815260206004820152603860248201527f5061757361626c652e70617573653a20696e76616c696420617474656d70742060448201527f746f20756e70617573652066756e6374696f6e616c6974790000000000000000606482015260840161064f565b609881905560405181815233907fab40a374bc51de372200a8bc981af8c9ecdc08dfdaef0bb6e09f88f3c616ef3d906020015b60405180910390a250565b60cd81815481106107b357600080fd5b6000918252602090912001546001600160a01b0316905081565b60405163ec7fbb3160e01b81523360048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063ec7fbb3190602401602060405180830381865afa158015610831573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108559190613e01565b15156001146108a65760405162461bcd60e51b815260206004820152601b60248201527f4f70657261746f72206d757374206265207468652063616c6c65720000000000604482015260640161064f565b80516001600160a01b0316331461090e5760405162461bcd60e51b815260206004820152602660248201527f4d657461646174612061646472657373206d757374206d61746368207468652060448201526531b0b63632b960d11b606482015260840161064f565b6020810151511580156109f35760005b60ce548110156109b55782600001516001600160a01b031660ce828154811061094957610949613e66565b60009182526020909120600290910201546001600160a01b0316036109ad5760ce818154811061097b5761097b613e66565b60009182526020822060029091020180546001600160a01b0319168155906109a66001830182613437565b5050505050565b60010161091e565b5060405162461bcd60e51b815260206004820152601260248201527113dc195c985d1bdc881b9bdd08199bdd5b9960721b604482015260640161064f565b60005b60ce54811015610aa85782600001516001600160a01b031660ce8281548110610a2157610a21613e66565b60009182526020909120600290910201546001600160a01b031603610aa0578260ce8281548110610a5457610a54613e66565b600091825260209182902083516002929092020180546001600160a01b0319166001600160a01b03909216919091178155908201516001820190610a989082613f02565b505050505050565b6001016109f6565b5060ce805460018101825560009190915282517fd36cd1c74ef8d7326d8021b776c18fb5a5724b7f7bc93c2f42e43e10ef27d12a600290920291820180546001600160a01b0319166001600160a01b03909216919091178155602084015184927fd36cd1c74ef8d7326d8021b776c18fb5a5724b7f7bc93c2f42e43e10ef27d12b01906109a69082613f02565b610b3d611d34565b610b478282611d8e565b5050565b610b5433610d03565b610b705760405162461bcd60e51b815260040161064f90613fc0565b8015610bc75760cc80546001810182556000919091527f47197230e1e4b29fc0bd84d7d78966c0925452aff72a2a121538b102457e9ebe0180546001600160a01b0384166001600160a01b03199091161790555050565b60005b60cc548110156109b557826001600160a01b031660cc8281548110610bf157610bf1613e66565b6000918252602090912001546001600160a01b031603610c3c5760cc8181548110610c1e57610c1e613e66565b600091825260209091200180546001600160a01b0319169055505050565b600101610bca565b610c4d33610d03565b610c695760405162461bcd60e51b815260040161064f90613fc0565b805163ffffffff1615610c9257805160ca805463ffffffff191663ffffffff9092169190911790555b602081015160ff1615610cc557602081015160ca805460ff9092166401000000000264ff00000000199092169190911790555b604081015163ffffffff1615610661576040015160ca805463ffffffff909216650100000000000268ffffffff000000000019909216919091179055565b6000610d176033546001600160a01b031690565b6001600160a01b03163303610d2e57506001919050565b60005b60cd54811015610d8357826001600160a01b031660cd8281548110610d5857610d58613e66565b6000918252602090912001546001600160a01b031603610d7b5750600192915050565b600101610d31565b50600092915050565b6000610d9782610d03565b15610da457506001919050565b60005b60cc54811015610d8357826001600160a01b031660cc8281548110610dce57610dce613e66565b6000918252602090912001546001600160a01b031603610df15750600192915050565b600101610da7565b6060610e0482611ffe565b92915050565b60975460405163237dfb4760e11b81523360048201526001600160a01b03909116906346fbf68e90602401602060405180830381865afa158015610e52573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e769190613e01565b610e925760405162461bcd60e51b815260040161064f90613e1e565b600019609881905560405190815233907fab40a374bc51de372200a8bc981af8c9ecdc08dfdaef0bb6e09f88f3c616ef3d9060200160405180910390a2565b60cc81815481106107b357600080fd5b600054610100900460ff1615808015610f015750600054600160ff909116105b80610f1b5750303b158015610f1b575060005460ff166001145b610f7e5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161064f565b6000805460ff191660011790558015610fa1576000805461ff0019166101001790555b60408051606081018252610708815260016020820181905261012c919092015260ca805468ffffffffffffffffff191666012c010000070817905560cd805491820181556000527f83978b4c69c48dd978ab43fe30f077615294f938fb7f936d9eb340e51ea7db2e0180546001600160a01b0319166001600160a01b0384161790558015610b47576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b611074611d34565b61107e600061232a565b565b60408051808201909152600081526060602082015260005b60ce548110156109b557826001600160a01b031660ce82815481106110bf576110bf613e66565b60009182526020909120600290910201546001600160a01b0316036111ba5760ce81815481106110f1576110f1613e66565b60009182526020918290206040805180820190915260029092020180546001600160a01b03168252600181018054929391929184019161113090613e7c565b80601f016020809104026020016040519081016040528092919081815260200182805461115c90613e7c565b80156111a95780601f1061117e576101008083540402835291602001916111a9565b820191906000526020600020905b81548152906001019060200180831161118c57829003601f168201915b505050505081525050915050919050565b600101611098565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461120a5760405162461bcd60e51b815260040161064f90613fed565b61121382610d8c565b61125f5760405162461bcd60e51b815260206004820152601860248201527f4f70657261746f72206e6f742077686974656c69737465640000000000000000604482015260640161064f565b610b47828261237c565b63ffffffff8116600090815260cb6020908152604091829020548451925190926112959290910161416d565b604051602081830303815290604052805190602001201461131e5760405162461bcd60e51b815260206004820152603d60248201527f737570706c696564207461736b20646f6573206e6f74206d617463682074686560448201527f206f6e65207265636f7264656420696e2074686520636f6e7472616374000000606482015260840161064f565b81516040015163ffffffff42811691161161136e5760405162461bcd60e51b815260206004820152601060248201526f15185cdac81a185cc8195e1c1a5c995960821b604482015260640161064f565b6040805160c0810182528351518201519181019182528351516080908101516001600160a01b03166060830152845160209081015163ffffffff1682840152600160a08401529282528285015192820192909252835190910151516000906001600160401b038111156113e3576113e36134d0565b60405190808252806020026020018201604052801561140c578160200160208202803683370190505b50905060005b81518110156114715784516080015180518290811061143357611433613e66565b60200260200101516000015182828151811061145157611451613e66565b6001600160a01b0390921660209283029190910190910152600101611412565b5061147c82826123ca565b63ffffffff8316600081815260cb602052604080822091909155517fa5be567caa88ff11b6da2cf017f9cefffcafa24111a9ecbf0b0bc476944f0f09906114c4908790614180565b60405180910390a250505050565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461151a5760405162461bcd60e51b815260040161064f90613fed565b610661816124ee565b60ce818154811061153357600080fd5b6000918252602090912060029091020180546001820180546001600160a01b0390921693509061156290613e7c565b80601f016020809104026020016040519081016040528092919081815260200182805461158e90613e7c565b80156115db5780601f106115b0576101008083540402835291602001916115db565b820191906000526020600020905b8154815290600101906020018083116115be57829003601f168201915b5050505050905082565b6115ee33610d03565b61160a5760405162461bcd60e51b815260040161064f90613fc0565b61066181612566565b600080836040516020016116279190614205565b604051602081830303815290604052905061164281846125b2565b949350505050565b60608160405160200161165d9190614205565b6040516020818303038152906040529050919050565b60808201516001600160a01b031633146117395760008260405160200161169a9190614205565b604051602081830303815290604052905060006116b782846125b2565b905083608001516001600160a01b0316816001600160a01b0316146117365760405162461bcd60e51b815260206004820152602f60248201527f5369676e6572206f6620726571756573745369676e6174757265206973206e6f60448201526e3a103932b8bab2b9ba1737bbb732b960891b606482015260840161064f565b50505b60006117498360600151426125f3565b60ca5490915063ffffffff65010000000000909104811690821611156117b15760405162461bcd60e51b815260206004820152601e60248201527f526571756573742074696d657374616d7020746f6f2066617220617761790000604482015260640161064f565b6040805161016081018252606060c08201819052600060e08301819052610100830181905261012083018190526101408301819052928201839052808201839052608082015260a081019190915283815263ffffffff4281166020830181905260ca5461181f92169061422e565b63ffffffff1660408281019190915260ca54640100000000900460ff1660608301525160009061185390839060200161416d565b60408051808303601f19018152919052805160209091012060ca5490915061188690640100000000900460ff1682612628565b608083015260405161189c90839060200161416d565b60408051601f19818403018152828252805160209182012060c9805463ffffffff908116600090815260cb90945293909220555416907f7738d1b30deac7824a0580de02efde3bb766c7b7b5ea79da34869ebd887cebf3906118ff90859061416d565b60405180910390a260c95461191b9063ffffffff16600161422e565b60c9805463ffffffff191663ffffffff929092169190911790555050505050565b6040516398ec1ac960e01b81526001600160a01b03828116600483015260009182917f000000000000000000000000000000000000000000000000000000000000000016906398ec1ac990602401602060405180830381865afa1580156119a7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119cb919061424a565b905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166340bf2fb76040518163ffffffff1660e01b8152600401602060405180830381865afa158015611a2d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a51919061424a565b909110159392505050565b6060611a666129d3565b905090565b611a73611d34565b6001600160a01b038116611ad85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161064f565b6106618161232a565b609760009054906101000a90046001600160a01b03166001600160a01b031663eab66d7a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611b34573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b589190613d9a565b6001600160a01b0316336001600160a01b031614611b885760405162461bcd60e51b815260040161064f90613db7565b609854198119609854191614611c065760405162461bcd60e51b815260206004820152603860248201527f5061757361626c652e756e70617573653a20696e76616c696420617474656d7060448201527f7420746f2070617573652066756e6374696f6e616c6974790000000000000000606482015260840161064f565b609881905560405181815233907f3582d1828e26bf56bd801502bc021ac0bc8afb57c826e4986b45593c8fad389c90602001610798565b6001600160a01b038116611ccb5760405162461bcd60e51b815260206004820152604960248201527f5061757361626c652e5f73657450617573657252656769737472793a206e657760448201527f50617573657252656769737472792063616e6e6f7420626520746865207a65726064820152686f206164647265737360b81b608482015260a40161064f565b609754604080516001600160a01b03928316815291831660208301527f6e9fcd539896fca60e8b0f01dd580233e48a6b0f7df013b89ba7f565869acdb6910160405180910390a1609780546001600160a01b0319166001600160a01b0392909216919091179055565b6033546001600160a01b0316331461107e5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161064f565b60005b81811015611f8157828282818110611dab57611dab613e66565b9050602002810190611dbd9190614263565b611dce90604081019060200161349a565b6001600160a01b03166323b872dd3330868686818110611df057611df0613e66565b9050602002810190611e029190614263565b604080516001600160e01b031960e087901b1681526001600160a01b039485166004820152939092166024840152013560448201526064016020604051808303816000875af1158015611e59573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e7d9190613e01565b50828282818110611e9057611e90613e66565b9050602002810190611ea29190614263565b611eb390604081019060200161349a565b6001600160a01b031663095ea7b37f0000000000000000000000000000000000000000000000000000000000000000858585818110611ef457611ef4613e66565b9050602002810190611f069190614263565b604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152013560248201526044016020604051808303816000875af1158015611f54573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f789190613e01565b50600101611d91565b50604051630da22a8b60e11b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631b44551690611fd09085908590600401614313565b600060405180830381600087803b158015611fea57600080fd5b505af1158015610a98573d6000803e3d6000fd5b606060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316631703a0186040518163ffffffff1660e01b8152600401600060405180830381865afa158015612060573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612088919081019061442d565b8051519091506000816001600160401b038111156120a8576120a86134d0565b6040519080825280602002602001820160405280156120d1578160200160208202803683370190505b50905060005b828110156121315783518051829081106120f3576120f3613e66565b60200260200101516000015182828151811061211157612111613e66565b6001600160a01b03909216602092830291909101909101526001016120d7565b50604051639004134760e01b81526000906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906390041347906121839089908690600401614535565b600060405180830381865afa1580156121a0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526121c89190810190614594565b90506000836001600160401b038111156121e4576121e46134d0565b60405190808252806020026020018201604052801561220d578160200160208202803683370190505b5090506000805b8581101561225457600084828151811061223057612230613e66565b6020026020010151111561224c578161224881614629565b9250505b600101612214565b506000816001600160401b0381111561226f5761226f6134d0565b604051908082528060200260200182016040528015612298578160200160208202803683370190505b50905060005b8681101561231d5760008582815181106122ba576122ba613e66565b60200260200101511115612315578381815181106122da576122da613e66565b60200260200101518282815181106122f4576122f4613e66565b60200260200101906001600160a01b031690816001600160a01b0316815250505b60010161229e565b5098975050505050505050565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b604051639926ee7d60e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690639926ee7d90611fd09085908590600401614642565b60008260200151511161240f5760405162461bcd60e51b815260206004820152600d60248201526c4e6f207369676e61747572657360981b604482015260640161064f565b600061241a83612b10565b905060005b82518110156124e8576000805b83518110156124915784838151811061244757612447613e66565b60200260200101516001600160a01b031684828151811061246a5761246a613e66565b60200260200101516001600160a01b0316036124895760019150612491565b60010161242c565b50806124df5760405162461bcd60e51b815260206004820152601960248201527f4d697373696e67207769746e657373207369676e617475726500000000000000604482015260640161064f565b5060010161241f565b50505050565b6040516351b27a6d60e11b81526001600160a01b0382811660048301527f0000000000000000000000000000000000000000000000000000000000000000169063a364f4da906024015b600060405180830381600087803b15801561255257600080fd5b505af11580156109a6573d6000803e3d6000fd5b60405163a98fb35560e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063a98fb35590612538908490600401613d87565b6000806125bf8451612bdf565b846040516020016125d192919061468d565b6040516020818303038152906040528051906020012090506116428184612d0a565b60008163ffffffff168363ffffffff16116126175761261283836146e8565b612621565b61262182846146e8565b9392505050565b60ce5460609060ff841611156126805760405162461bcd60e51b815260206004820152601e60248201527f496e7465726e616c3a204e6f7420656e6f756768206f70657261746f72730000604482015260640161064f565b600060ce805480602002602001604051908101604052809291908181526020016000905b8282101561277d576000848152602090819020604080518082019091526002850290910180546001600160a01b0316825260018101805492939192918401916126ec90613e7c565b80601f016020809104026020016040519081016040528092919081815260200182805461271890613e7c565b80156127655780601f1061273a57610100808354040283529160200191612765565b820191906000526020600020905b81548152906001019060200180831161274857829003601f168201915b505050505081525050815260200190600101906126a4565b50508251929350600091505060ff86166001600160401b038111156127a4576127a46134d0565b6040519080825280602002602001820160405280156127ea57816020015b6040805180820190915260008152606060208201528152602001906001900390816127c25790505b50905060005b81518160ff1610156129c957600083116128725760405162461bcd60e51b815260206004820152603760248201527f496e7465726e616c3a204665657320746f6f206c6f772e204e6f206f7065726160448201527f746f7273206c65667420746f207069636b2066726f6d2e000000000000000000606482015260840161064f565b6000836128bb61288560ff85168a614704565b60408051446020808301919091524282840152606080830194909452825180830390940184526080909101909152815191012090565b6128c5919061472d565b905060008582815181106128db576128db613e66565b60200260200101519050856001866128f39190614741565b8151811061290357612903613e66565b602002602001015186838151811061291d5761291d613e66565b6020908102919091010152612933600186614741565b9450612942816000015161193c565b61294d5750506127f0565b8060000151848460ff168151811061296757612967613e66565b6020026020010151600001906001600160a01b031690816001600160a01b0316815250508060200151848460ff16815181106129a5576129a5613e66565b60200260200101516020018190525082806129bf90614754565b93505050506127f0565b5095945050505050565b606060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316631703a0186040518163ffffffff1660e01b8152600401600060405180830381865afa158015612a35573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612a5d919081019061442d565b905060008160000151516001600160401b03811115612a7e57612a7e6134d0565b604051908082528060200260200182016040528015612aa7578160200160208202803683370190505b50905060005b825151811015612b09578251805182908110612acb57612acb613e66565b602002602001015160000151828281518110612ae957612ae9613e66565b6001600160a01b0390921660209283029190910190910152600101612aad565b5092915050565b60606000612b218360000151612d26565b905060008360200151516001600160401b03811115612b4257612b426134d0565b604051908082528060200260200182016040528015612b6b578160200160208202803683370190505b50905060005b846020015151811015612bd757612ba58386602001518381518110612b9857612b98613e66565b60200260200101516125b2565b828281518110612bb757612bb7613e66565b6001600160a01b0390921660209283029190910190910152600101612b71565b509392505050565b606081600003612c065750506040805180820190915260018152600360fc1b602082015290565b8160005b8115612c305780612c1a81614629565b9150612c299050600a83614773565b9150612c0a565b6000816001600160401b03811115612c4a57612c4a6134d0565b6040519080825280601f01601f191660200182016040528015612c74576020820181803683370190505b509050815b8515612d0157612c8a600182614741565b90506000612c99600a88614773565b612ca490600a614787565b612cae9088614741565b612cb990603061479e565b905060008160f81b905080848481518110612cd657612cd6613e66565b60200101906001600160f81b031916908160001a905350612cf8600a89614773565b97505050612c79565b50949350505050565b6000806000612d198585612d96565b91509150612bd781612e04565b6060612d568260000151604051602001612d4291815260200190565b604051602081830303815290604052612fba565b612d638360200151613173565b612d76846040015163ffffffff16612bdf565b612d838560600151612bdf565b60405160200161165d94939291906147b7565b6000808251604103612dcc5760208301516040840151606085015160001a612dc0878285856132d5565b94509450505050612dfd565b8251604003612df55760208301516040840151612dea8683836133c2565b935093505050612dfd565b506000905060025b9250929050565b6000816004811115612e1857612e1861483d565b03612e205750565b6001816004811115612e3457612e3461483d565b03612e815760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e61747572650000000000000000604482015260640161064f565b6002816004811115612e9557612e9561483d565b03612ee25760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e67746800604482015260640161064f565b6003816004811115612ef657612ef661483d565b03612f4e5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b606482015260840161064f565b6004816004811115612f6257612f6261483d565b036106615760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b606482015260840161064f565b6060600082516002612fcc9190614787565b6001600160401b03811115612fe357612fe36134d0565b6040519080825280601f01601f19166020018201604052801561300d576020820181803683370190505b5060408051808201909152601081526f181899199a1a9b1b9c1cb0b131b232b360811b602082015290915060005b84518110156131495781825186838151811061305957613059613e66565b016020015161306b919060f81c614773565b8151811061307b5761307b613e66565b01602001516001600160f81b03191683613096836002614787565b815181106130a6576130a6613e66565b60200101906001600160f81b031916908160001a9053508182518683815181106130d2576130d2613e66565b01602001516130e4919060f81c61472d565b815181106130f4576130f4613e66565b01602001516001600160f81b0319168361310f836002614787565b61311a906001614704565b8151811061312a5761312a613e66565b60200101906001600160f81b031916908160001a90535060010161303b565b508160405160200161315b9190614853565b60405160208183030381529060405292505050919050565b60408051602880825260608281019093526000919060208201818036833701905050905060005b60148110156132ac5760006131b0826013614741565b6131bb906008614787565b6131c690600261495c565b6131d9906001600160a01b038716614773565b60f81b9050600060108260f81c6131f09190614968565b60f81b905060008160f81c6010613207919061498a565b8360f81c61321591906149a6565b60f81b9050613223826133fc565b8561322f866002614787565b8151811061323f5761323f613e66565b60200101906001600160f81b031916908160001a90535061325f816133fc565b8561326b866002614787565b613276906001614704565b8151811061328657613286613e66565b60200101906001600160f81b031916908160001a905350506001909201915061319a9050565b50806040516020016132be9190614853565b604051602081830303815290604052915050919050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561330c57506000905060036133b9565b8460ff16601b1415801561332457508460ff16601c14155b1561333557506000905060046133b9565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613389573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166133b2576000600192509250506133b9565b9150600090505b94509492505050565b6000806001600160ff1b038316816133df60ff86901c601b614704565b90506133ed878288856132d5565b9350935050505b935093915050565b6000600a60f883901c10156134235761341a60f883901c603061479e565b60f81b92915050565b61341a60f883901c605761479e565b919050565b50805461344390613e7c565b6000825580601f10613453575050565b601f01602090049060005260206000209081019061066191905b80821115613481576000815560010161346d565b5090565b6001600160a01b038116811461066157600080fd5b6000602082840312156134ac57600080fd5b813561262181613485565b6000602082840312156134c957600080fd5b5035919050565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b0381118282101715613508576135086134d0565b60405290565b604051606081016001600160401b0381118282101715613508576135086134d0565b60405160c081016001600160401b0381118282101715613508576135086134d0565b604051602081016001600160401b0381118282101715613508576135086134d0565b604051601f8201601f191681016001600160401b038111828210171561359c5761359c6134d0565b604052919050565b600082601f8301126135b557600080fd5b8135602083016000806001600160401b038411156135d5576135d56134d0565b50601f8301601f19166020016135ea81613574565b9150508281528583830111156135ff57600080fd5b82826020830137600092810160200192909252509392505050565b60006040828403121561362c57600080fd5b6136346134e6565b9050813561364181613485565b815260208201356001600160401b0381111561365c57600080fd5b613668848285016135a4565b60208301525092915050565b60006020828403121561368657600080fd5b81356001600160401b0381111561369c57600080fd5b6116428482850161361a565b600080602083850312156136bb57600080fd5b82356001600160401b038111156136d157600080fd5b8301601f810185136136e257600080fd5b80356001600160401b038111156136f857600080fd5b8560208260051b840101111561370d57600080fd5b6020919091019590945092505050565b801515811461066157600080fd5b6000806040838503121561373e57600080fd5b823561374981613485565b915060208301356137598161371d565b809150509250929050565b803563ffffffff8116811461343257600080fd5b803560ff8116811461343257600080fd5b6000606082840312801561379c57600080fd5b506137a561350e565b6137ae83613764565b81526137bc60208401613778565b60208201526137cd60408401613764565b60408201529392505050565b6000602082840312156137eb57600080fd5b61262182613764565b602080825282518282018190526000918401906040840190835b818110156138355783516001600160a01b031683526020938401939092019160010161380e565b509095945050505050565b60006020828403121561385257600080fd5b61262182613778565b60005b8381101561387657818101518382015260200161385e565b50506000910152565b6000815180845261389781602086016020860161385b565b601f01601f19169290920160200192915050565b60018060a01b0381511682526000602082015160406020850152611642604085018261387f565b60208152600061262160208301846138ab565b600080604083850312156138f857600080fd5b823561390381613485565b915060208301356001600160401b0381111561391e57600080fd5b83016060818603121561393057600080fd5b61393861350e565b81356001600160401b0381111561394e57600080fd5b61395a878285016135a4565b8252506020828101359082015260409182013591810191909152919491935090915050565b600060a0828403121561399157600080fd5b60405160a081016001600160401b03811182821017156139b3576139b36134d0565b60405290508082356001600160401b038111156139cf57600080fd5b6139db858286016135a4565b82525060208381013590820152604080840135908201526139fe60608401613764565b60608201526080830135613a1181613485565b6080919091015292915050565b60006001600160401b03821115613a3757613a376134d0565b5060051b60200190565b600082601f830112613a5257600080fd5b8135613a65613a6082613a1e565b613574565b8082825260208201915060208360051b860101925085831115613a8757600080fd5b602085015b838110156129c95780356001600160401b03811115613aaa57600080fd5b613ab9886020838a010161361a565b84525060209283019201613a8c565b600082601f830112613ad957600080fd5b8135613ae7613a6082613a1e565b8082825260208201915060208360051b860101925085831115613b0957600080fd5b602085015b838110156129c95780356001600160401b03811115613b2c57600080fd5b613b3b886020838a01016135a4565b84525060209283019201613b0e565b60008060408385031215613b5d57600080fd5b82356001600160401b03811115613b7357600080fd5b830160408186031215613b8557600080fd5b613b8d6134e6565b81356001600160401b03811115613ba357600080fd5b820160c08188031215613bb557600080fd5b613bbd613530565b81356001600160401b03811115613bd357600080fd5b613bdf8982850161397f565b825250613bee60208301613764565b6020820152613bff60408301613764565b6040820152613c1060608301613778565b606082015260808201356001600160401b03811115613c2e57600080fd5b613c3a89828501613a41565b60808301525060a09182013591810191909152815260208201356001600160401b03811115613c6857600080fd5b613c7487828501613ac8565b6020830152508093505050613c8b60208401613764565b90509250929050565b6001600160a01b03831681526040602082018190526000906116429083018461387f565b600060208284031215613cca57600080fd5b81356001600160401b03811115613ce057600080fd5b611642848285016135a4565b60008060408385031215613cff57600080fd5b82356001600160401b03811115613d1557600080fd5b613d218582860161397f565b92505060208301356001600160401b03811115613d3d57600080fd5b613d49858286016135a4565b9150509250929050565b600060208284031215613d6557600080fd5b81356001600160401b03811115613d7b57600080fd5b6116428482850161397f565b602081526000612621602083018461387f565b600060208284031215613dac57600080fd5b815161262181613485565b6020808252602a908201527f6d73672e73656e646572206973206e6f74207065726d697373696f6e6564206160408201526939903ab73830bab9b2b960b11b606082015260800190565b600060208284031215613e1357600080fd5b81516126218161371d565b60208082526028908201527f6d73672e73656e646572206973206e6f74207065726d697373696f6e6564206160408201526739903830bab9b2b960c11b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b600181811c90821680613e9057607f821691505b602082108103613eb057634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115613efd57806000526020600020601f840160051c81016020851015613edd5750805b601f840160051c820191505b818110156109a65760008155600101613ee9565b505050565b81516001600160401b03811115613f1b57613f1b6134d0565b613f2f81613f298454613e7c565b84613eb6565b6020601f821160018114613f635760008315613f4b5750848201515b600019600385901b1c1916600184901b1784556109a6565b600084815260208120601f198516915b82811015613f935787850151825560209485019460019092019101613f73565b5084821015613fb15786840151600019600387901b60f8161c191681555b50505050600190811b01905550565b60208082526013908201527221b0b63632b91034b9903737ba1030b236b4b760691b604082015260600190565b6020808252604a908201527f4543445341536572766963654d616e61676572426173652e6f6e6c795374616b60408201527f6552656769737472793a2063616c6c6572206973206e6f7420746865207374616060820152696b65526567697374727960b01b608082015260a00190565b6000815160a0845261407260a085018261387f565b602084810151908601526040808501519086015260608085015163ffffffff16908601526080938401516001600160a01b031693909401929092525090919050565b6000815160c084526140c960c085018261405d565b905063ffffffff602084015116602085015263ffffffff604084015116604085015260ff60608401511660608501526080830151848203608086015281815180845260208401915060208160051b85010160208401935060005b8281101561415457601f1986830301845261413f8286516138ab565b60209586019594909401939150600101614123565b5060a087015160a0890152809550505050505092915050565b60208152600061262160208301846140b4565b60208152600082516040602084015261419c60608401826140b4565b602085810151858303601f19016040870152805180845292935081019181840191600582901b85010160005b828110156141f957601f198683030184526141e482865161387f565b602095860195949094019391506001016141c8565b50979650505050505050565b602081526000612621602083018461405d565b634e487b7160e01b600052601160045260246000fd5b63ffffffff8181168382160190811115610e0457610e04614218565b60006020828403121561425c57600080fd5b5051919050565b60008235609e1983360301811261427957600080fd5b9190910192915050565b803561343281613485565b6bffffffffffffffffffffffff8116811461066157600080fd5b81835260208301925060008160005b848110156143095781356142ca81613485565b6001600160a01b0316865260208201356142e38161428e565b6bffffffffffffffffffffffff16602087015260409586019591909101906001016142b7565b5093949350505050565b6020808252810182905260006040600584901b830181019083018583609e1936839003015b8782101561442057868503603f19018452823581811261435757600080fd5b8901803536829003601e1901811261436e57600080fd5b81016020810190356001600160401b0381111561438a57600080fd5b8060061b360382131561439c57600080fd5b60a088526143ae60a0890182846142a8565b9150506143bd60208301614283565b6001600160a01b03166020880152604082810135908801526143e160608301613764565b63ffffffff1660608801526143f860808301613764565b63ffffffff811660808901529150955050602093840193929092019160019190910190614338565b5092979650505050505050565b60006020828403121561443f57600080fd5b81516001600160401b0381111561445557600080fd5b82016020818503121561446757600080fd5b61446f613552565b81516001600160401b0381111561448557600080fd5b80830192505084601f83011261449a57600080fd5b81516144a8613a6082613a1e565b8082825260208201915060208360061b8601019250878311156144ca57600080fd5b6020850194505b8285101561452857604085890312156144e957600080fd5b6144f16134e6565b85516144fc81613485565b8152602086015161450c8161428e565b80602083015250808352506020820191506040850194506144d1565b8352509095945050505050565b6001600160a01b0383168152604060208083018290528351918301829052600091908401906060840190835b818110156145885783516001600160a01b0316835260209384019390920191600101614561565b50909695505050505050565b6000602082840312156145a657600080fd5b81516001600160401b038111156145bc57600080fd5b8201601f810184136145cd57600080fd5b80516145db613a6082613a1e565b8082825260208201915060208360051b8501019250868311156145fd57600080fd5b6020840193505b8284101561461f578351825260209384019390910190614604565b9695505050505050565b60006001820161463b5761463b614218565b5060010190565b60018060a01b038316815260406020820152600082516060604084015261466c60a084018261387f565b90506020840151606084015260408401516080840152809150509392505050565b7f19457468657265756d205369676e6564204d6573736167653a0a0000000000008152600083516146c581601a85016020880161385b565b8351908301906146dc81601a84016020880161385b565b01601a01949350505050565b63ffffffff8281168282160390811115610e0457610e04614218565b80820180821115610e0457610e04614218565b634e487b7160e01b600052601260045260246000fd5b60008261473c5761473c614717565b500690565b81810381811115610e0457610e04614218565b600060ff821660ff810361476a5761476a614218565b60010192915050565b60008261478257614782614717565b500490565b8082028115828204841417610e0457610e04614218565b60ff8181168382160190811115610e0457610e04614218565b600085516147c9818460208a0161385b565b600560f91b90830190815285516147e7816001840160208a0161385b565b600560f91b60019290910191820152845161480981600284016020890161385b565b600181830101915050600560f91b6001820152835161482f81600284016020880161385b565b016002019695505050505050565b634e487b7160e01b600052602160045260246000fd5b61060f60f31b81526000825161487081600285016020870161385b565b9190910160020192915050565b6001815b60018411156133f45780850481111561489c5761489c614218565b60018416156148aa57908102905b60019390931c928002614881565b6000826148c757506001610e04565b816148d457506000610e04565b81600181146148ea57600281146148f457614910565b6001915050610e04565b60ff84111561490557614905614218565b50506001821b610e04565b5060208310610133831016604e8410600b8410161715614933575081810a610e04565b614940600019848461487d565b806000190482111561495457614954614218565b029392505050565b600061262183836148b8565b600060ff83168061497b5761497b614717565b8060ff84160491505092915050565b60ff8181168382160290811690818114612b0957612b09614218565b60ff8281168282160390811115610e0457610e0461421856fea26469706673582212205b54d39db01ec87955542a63c3a53e876a29b21585e12d554ae6989e796dedf764736f6c634300081a0033";
1139
+ const isSuperArgs = (xs) => xs.length > 1;
1140
+ export class ReclaimServiceManager__factory extends ContractFactory {
1141
+ constructor(...args) {
1142
+ if (isSuperArgs(args)) {
1143
+ super(...args);
1144
+ }
1145
+ else {
1146
+ super(_abi, _bytecode, args[0]);
1147
+ }
1148
+ }
1149
+ deploy(_avsDirectory, _stakeRegistry, _delegationManager, overrides) {
1150
+ return super.deploy(_avsDirectory, _stakeRegistry, _delegationManager, overrides || {});
1151
+ }
1152
+ getDeployTransaction(_avsDirectory, _stakeRegistry, _delegationManager, overrides) {
1153
+ return super.getDeployTransaction(_avsDirectory, _stakeRegistry, _delegationManager, overrides || {});
1154
+ }
1155
+ attach(address) {
1156
+ return super.attach(address);
1157
+ }
1158
+ connect(signer) {
1159
+ return super.connect(signer);
1160
+ }
1161
+ static bytecode = _bytecode;
1162
+ static abi = _abi;
1163
+ static createInterface() {
1164
+ return new utils.Interface(_abi);
1165
+ }
1166
+ static connect(address, signerOrProvider) {
1167
+ return new Contract(address, _abi, signerOrProvider);
1168
+ }
1169
+ }