@ensforge/core 0.0.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 (1033) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +61 -0
  3. package/dist/action/action.d.ts +13 -0
  4. package/dist/action/action.d.ts.map +1 -0
  5. package/dist/action/action.js +18 -0
  6. package/dist/action/action.js.map +1 -0
  7. package/dist/action/block.d.ts +12 -0
  8. package/dist/action/block.d.ts.map +1 -0
  9. package/dist/action/block.js +10 -0
  10. package/dist/action/block.js.map +1 -0
  11. package/dist/action/index.d.ts +5 -0
  12. package/dist/action/read-request.d.ts +19 -0
  13. package/dist/action/read-request.d.ts.map +1 -0
  14. package/dist/action/read-request.js +23 -0
  15. package/dist/action/read-request.js.map +1 -0
  16. package/dist/action/write-intent.d.ts +34 -0
  17. package/dist/action/write-intent.d.ts.map +1 -0
  18. package/dist/action/write-intent.js +41 -0
  19. package/dist/action/write-intent.js.map +1 -0
  20. package/dist/actions/batch/estimate-calls.d.ts +8 -0
  21. package/dist/actions/batch/estimate-calls.d.ts.map +1 -0
  22. package/dist/actions/batch/estimate-calls.js +68 -0
  23. package/dist/actions/batch/estimate-calls.js.map +1 -0
  24. package/dist/actions/batch/execute-write-plan.d.ts +8 -0
  25. package/dist/actions/batch/execute-write-plan.d.ts.map +1 -0
  26. package/dist/actions/batch/execute-write-plan.js +145 -0
  27. package/dist/actions/batch/execute-write-plan.js.map +1 -0
  28. package/dist/actions/batch/get-calls-status.d.ts +8 -0
  29. package/dist/actions/batch/get-calls-status.d.ts.map +1 -0
  30. package/dist/actions/batch/get-calls-status.js +33 -0
  31. package/dist/actions/batch/get-calls-status.js.map +1 -0
  32. package/dist/actions/batch/get-wallet-capabilities.d.ts +10 -0
  33. package/dist/actions/batch/get-wallet-capabilities.d.ts.map +1 -0
  34. package/dist/actions/batch/get-wallet-capabilities.js +60 -0
  35. package/dist/actions/batch/get-wallet-capabilities.js.map +1 -0
  36. package/dist/actions/batch/index.d.ts +10 -0
  37. package/dist/actions/batch/prepare-calls.d.ts +8 -0
  38. package/dist/actions/batch/prepare-calls.d.ts.map +1 -0
  39. package/dist/actions/batch/prepare-calls.js +11 -0
  40. package/dist/actions/batch/prepare-calls.js.map +1 -0
  41. package/dist/actions/batch/read-batch.d.ts +33 -0
  42. package/dist/actions/batch/read-batch.d.ts.map +1 -0
  43. package/dist/actions/batch/read-batch.js +55 -0
  44. package/dist/actions/batch/read-batch.js.map +1 -0
  45. package/dist/actions/batch/resume-calls.d.ts +8 -0
  46. package/dist/actions/batch/resume-calls.d.ts.map +1 -0
  47. package/dist/actions/batch/resume-calls.js +17 -0
  48. package/dist/actions/batch/resume-calls.js.map +1 -0
  49. package/dist/actions/batch/send-calls.d.ts +8 -0
  50. package/dist/actions/batch/send-calls.d.ts.map +1 -0
  51. package/dist/actions/batch/send-calls.js +28 -0
  52. package/dist/actions/batch/send-calls.js.map +1 -0
  53. package/dist/actions/batch/simulate-calls.d.ts +8 -0
  54. package/dist/actions/batch/simulate-calls.d.ts.map +1 -0
  55. package/dist/actions/batch/simulate-calls.js +22 -0
  56. package/dist/actions/batch/simulate-calls.js.map +1 -0
  57. package/dist/actions/capabilities/get-name-capabilities/index.d.ts +127 -0
  58. package/dist/actions/capabilities/get-name-capabilities/index.d.ts.map +1 -0
  59. package/dist/actions/capabilities/get-name-capabilities/index.js +65 -0
  60. package/dist/actions/capabilities/get-name-capabilities/index.js.map +1 -0
  61. package/dist/actions/capabilities/get-operator-approval/index.d.ts +24 -0
  62. package/dist/actions/capabilities/get-operator-approval/index.d.ts.map +1 -0
  63. package/dist/actions/capabilities/get-operator-approval/index.js +108 -0
  64. package/dist/actions/capabilities/get-operator-approval/index.js.map +1 -0
  65. package/dist/actions/capabilities/get-record-permissions/index.d.ts +86 -0
  66. package/dist/actions/capabilities/get-record-permissions/index.d.ts.map +1 -0
  67. package/dist/actions/capabilities/get-record-permissions/index.js +160 -0
  68. package/dist/actions/capabilities/get-record-permissions/index.js.map +1 -0
  69. package/dist/actions/capabilities/get-registry-capabilities/index.d.ts +24 -0
  70. package/dist/actions/capabilities/get-registry-capabilities/index.d.ts.map +1 -0
  71. package/dist/actions/capabilities/get-registry-capabilities/index.js +64 -0
  72. package/dist/actions/capabilities/get-registry-capabilities/index.js.map +1 -0
  73. package/dist/actions/capabilities/get-registry-roles/index.d.ts +21 -0
  74. package/dist/actions/capabilities/get-registry-roles/index.d.ts.map +1 -0
  75. package/dist/actions/capabilities/get-registry-roles/index.js +32 -0
  76. package/dist/actions/capabilities/get-registry-roles/index.js.map +1 -0
  77. package/dist/actions/capabilities/get-required-authorization/index.d.ts +148 -0
  78. package/dist/actions/capabilities/get-required-authorization/index.d.ts.map +1 -0
  79. package/dist/actions/capabilities/get-required-authorization/index.js +183 -0
  80. package/dist/actions/capabilities/get-required-authorization/index.js.map +1 -0
  81. package/dist/actions/capabilities/get-resolver-capabilities/index.d.ts +29 -0
  82. package/dist/actions/capabilities/get-resolver-capabilities/index.d.ts.map +1 -0
  83. package/dist/actions/capabilities/get-resolver-capabilities/index.js +71 -0
  84. package/dist/actions/capabilities/get-resolver-capabilities/index.js.map +1 -0
  85. package/dist/actions/capabilities/get-resolver-delegate-approval/index.d.ts +26 -0
  86. package/dist/actions/capabilities/get-resolver-delegate-approval/index.d.ts.map +1 -0
  87. package/dist/actions/capabilities/get-resolver-delegate-approval/index.js +50 -0
  88. package/dist/actions/capabilities/get-resolver-delegate-approval/index.js.map +1 -0
  89. package/dist/actions/capabilities/get-resolver-roles/index.d.ts +25 -0
  90. package/dist/actions/capabilities/get-resolver-roles/index.d.ts.map +1 -0
  91. package/dist/actions/capabilities/get-resolver-roles/index.js +35 -0
  92. package/dist/actions/capabilities/get-resolver-roles/index.js.map +1 -0
  93. package/dist/actions/capabilities/get-token-approval/index.d.ts +21 -0
  94. package/dist/actions/capabilities/get-token-approval/index.d.ts.map +1 -0
  95. package/dist/actions/capabilities/get-token-approval/index.js +73 -0
  96. package/dist/actions/capabilities/get-token-approval/index.js.map +1 -0
  97. package/dist/actions/capabilities/get-wrapper-permissions/index.d.ts +41 -0
  98. package/dist/actions/capabilities/get-wrapper-permissions/index.d.ts.map +1 -0
  99. package/dist/actions/capabilities/get-wrapper-permissions/index.js +131 -0
  100. package/dist/actions/capabilities/get-wrapper-permissions/index.js.map +1 -0
  101. package/dist/actions/capabilities/get-write-target/index.d.ts +68 -0
  102. package/dist/actions/capabilities/get-write-target/index.d.ts.map +1 -0
  103. package/dist/actions/capabilities/get-write-target/index.js +94 -0
  104. package/dist/actions/capabilities/get-write-target/index.js.map +1 -0
  105. package/dist/actions/capabilities/has-registry-roles/index.d.ts +25 -0
  106. package/dist/actions/capabilities/has-registry-roles/index.d.ts.map +1 -0
  107. package/dist/actions/capabilities/has-registry-roles/index.js +37 -0
  108. package/dist/actions/capabilities/has-registry-roles/index.js.map +1 -0
  109. package/dist/actions/capabilities/has-resolver-roles/index.d.ts +27 -0
  110. package/dist/actions/capabilities/has-resolver-roles/index.d.ts.map +1 -0
  111. package/dist/actions/capabilities/has-resolver-roles/index.js +49 -0
  112. package/dist/actions/capabilities/has-resolver-roles/index.js.map +1 -0
  113. package/dist/actions/capabilities/index.d.ts +16 -0
  114. package/dist/actions/capabilities/types.d.ts +790 -0
  115. package/dist/actions/capabilities/types.d.ts.map +1 -0
  116. package/dist/actions/capabilities/types.js +320 -0
  117. package/dist/actions/capabilities/types.js.map +1 -0
  118. package/dist/actions/dns/claim-dns-name/index.d.ts +9 -0
  119. package/dist/actions/dns/claim-dns-name/index.d.ts.map +1 -0
  120. package/dist/actions/dns/claim-dns-name/index.js +63 -0
  121. package/dist/actions/dns/claim-dns-name/index.js.map +1 -0
  122. package/dist/actions/dns/get-dns-claim-status/index.d.ts +26 -0
  123. package/dist/actions/dns/get-dns-claim-status/index.d.ts.map +1 -0
  124. package/dist/actions/dns/get-dns-claim-status/index.js +62 -0
  125. package/dist/actions/dns/get-dns-claim-status/index.js.map +1 -0
  126. package/dist/actions/dns/get-dns-import-plan/index.d.ts +32 -0
  127. package/dist/actions/dns/get-dns-import-plan/index.d.ts.map +1 -0
  128. package/dist/actions/dns/get-dns-import-plan/index.js +53 -0
  129. package/dist/actions/dns/get-dns-import-plan/index.js.map +1 -0
  130. package/dist/actions/dns/get-dns-record/index.d.ts +14 -0
  131. package/dist/actions/dns/get-dns-record/index.d.ts.map +1 -0
  132. package/dist/actions/dns/get-dns-record/index.js +30 -0
  133. package/dist/actions/dns/get-dns-record/index.js.map +1 -0
  134. package/dist/actions/dns/get-dns-records/index.d.ts +18 -0
  135. package/dist/actions/dns/get-dns-records/index.d.ts.map +1 -0
  136. package/dist/actions/dns/get-dns-records/index.js +34 -0
  137. package/dist/actions/dns/get-dns-records/index.js.map +1 -0
  138. package/dist/actions/dns/get-zone-hash/index.d.ts +16 -0
  139. package/dist/actions/dns/get-zone-hash/index.d.ts.map +1 -0
  140. package/dist/actions/dns/get-zone-hash/index.js +58 -0
  141. package/dist/actions/dns/get-zone-hash/index.js.map +1 -0
  142. package/dist/actions/dns/has-dns-records/index.d.ts +18 -0
  143. package/dist/actions/dns/has-dns-records/index.d.ts.map +1 -0
  144. package/dist/actions/dns/has-dns-records/index.js +61 -0
  145. package/dist/actions/dns/has-dns-records/index.js.map +1 -0
  146. package/dist/actions/dns/import-dns-name/index.d.ts +9 -0
  147. package/dist/actions/dns/import-dns-name/index.d.ts.map +1 -0
  148. package/dist/actions/dns/import-dns-name/index.js +82 -0
  149. package/dist/actions/dns/import-dns-name/index.js.map +1 -0
  150. package/dist/actions/dns/index.d.ts +14 -0
  151. package/dist/actions/dns/set-dns-records/index.d.ts +9 -0
  152. package/dist/actions/dns/set-dns-records/index.d.ts.map +1 -0
  153. package/dist/actions/dns/set-dns-records/index.js +35 -0
  154. package/dist/actions/dns/set-dns-records/index.js.map +1 -0
  155. package/dist/actions/dns/set-dns-records/types.d.ts +12 -0
  156. package/dist/actions/dns/set-dns-records/types.d.ts.map +1 -0
  157. package/dist/actions/dns/set-zone-hash/index.d.ts +9 -0
  158. package/dist/actions/dns/set-zone-hash/index.d.ts.map +1 -0
  159. package/dist/actions/dns/set-zone-hash/index.js +35 -0
  160. package/dist/actions/dns/set-zone-hash/index.js.map +1 -0
  161. package/dist/actions/dns/set-zone-hash/types.d.ts +12 -0
  162. package/dist/actions/dns/set-zone-hash/types.d.ts.map +1 -0
  163. package/dist/actions/dns/types.d.ts +145 -0
  164. package/dist/actions/dns/types.d.ts.map +1 -0
  165. package/dist/actions/dns/types.js +87 -0
  166. package/dist/actions/dns/types.js.map +1 -0
  167. package/dist/actions/events/get-ens-events/index.d.ts +33 -0
  168. package/dist/actions/events/get-ens-events/index.d.ts.map +1 -0
  169. package/dist/actions/events/get-ens-events/index.js +30 -0
  170. package/dist/actions/events/get-ens-events/index.js.map +1 -0
  171. package/dist/actions/events/get-name-history/index.d.ts +36 -0
  172. package/dist/actions/events/get-name-history/index.d.ts.map +1 -0
  173. package/dist/actions/events/get-name-history/index.js +17 -0
  174. package/dist/actions/events/get-name-history/index.js.map +1 -0
  175. package/dist/actions/events/index.d.ts +5 -0
  176. package/dist/actions/events/types.d.ts +89 -0
  177. package/dist/actions/events/types.d.ts.map +1 -0
  178. package/dist/actions/events/types.js +61 -0
  179. package/dist/actions/events/types.js.map +1 -0
  180. package/dist/actions/events/watch-ens-events/index.d.ts +12 -0
  181. package/dist/actions/events/watch-ens-events/index.d.ts.map +1 -0
  182. package/dist/actions/events/watch-ens-events/index.js +59 -0
  183. package/dist/actions/events/watch-ens-events/index.js.map +1 -0
  184. package/dist/actions/index.d.ts +199 -0
  185. package/dist/actions/migration/get-migration-eligibility/index.d.ts +71 -0
  186. package/dist/actions/migration/get-migration-eligibility/index.d.ts.map +1 -0
  187. package/dist/actions/migration/get-migration-eligibility/index.js +88 -0
  188. package/dist/actions/migration/get-migration-eligibility/index.js.map +1 -0
  189. package/dist/actions/migration/get-migration-plan/index.d.ts +70 -0
  190. package/dist/actions/migration/get-migration-plan/index.d.ts.map +1 -0
  191. package/dist/actions/migration/get-migration-plan/index.js +73 -0
  192. package/dist/actions/migration/get-migration-plan/index.js.map +1 -0
  193. package/dist/actions/migration/get-migration-status/index.d.ts +46 -0
  194. package/dist/actions/migration/get-migration-status/index.d.ts.map +1 -0
  195. package/dist/actions/migration/get-migration-status/index.js +124 -0
  196. package/dist/actions/migration/get-migration-status/index.js.map +1 -0
  197. package/dist/actions/migration/get-migration-target/index.d.ts +22 -0
  198. package/dist/actions/migration/get-migration-target/index.d.ts.map +1 -0
  199. package/dist/actions/migration/get-migration-target/index.js +65 -0
  200. package/dist/actions/migration/get-migration-target/index.js.map +1 -0
  201. package/dist/actions/migration/index.d.ts +9 -0
  202. package/dist/actions/migration/migrate-name/index.d.ts +9 -0
  203. package/dist/actions/migration/migrate-name/index.d.ts.map +1 -0
  204. package/dist/actions/migration/migrate-name/index.js +145 -0
  205. package/dist/actions/migration/migrate-name/index.js.map +1 -0
  206. package/dist/actions/migration/migrate-names/index.d.ts +9 -0
  207. package/dist/actions/migration/migrate-names/index.d.ts.map +1 -0
  208. package/dist/actions/migration/migrate-names/index.js +210 -0
  209. package/dist/actions/migration/migrate-names/index.js.map +1 -0
  210. package/dist/actions/migration/mutation.d.ts +10 -0
  211. package/dist/actions/migration/mutation.d.ts.map +1 -0
  212. package/dist/actions/migration/mutation.js +210 -0
  213. package/dist/actions/migration/mutation.js.map +1 -0
  214. package/dist/actions/migration/types.d.ts +267 -0
  215. package/dist/actions/migration/types.d.ts.map +1 -0
  216. package/dist/actions/migration/types.js +145 -0
  217. package/dist/actions/migration/types.js.map +1 -0
  218. package/dist/actions/name/get-canonical-resource/index.d.ts +9 -0
  219. package/dist/actions/name/get-canonical-resource/index.d.ts.map +1 -0
  220. package/dist/actions/name/get-canonical-resource/index.js +20 -0
  221. package/dist/actions/name/get-canonical-resource/index.js.map +1 -0
  222. package/dist/actions/name/get-expiry/index.d.ts +15 -0
  223. package/dist/actions/name/get-expiry/index.d.ts.map +1 -0
  224. package/dist/actions/name/get-expiry/index.js +34 -0
  225. package/dist/actions/name/get-expiry/index.js.map +1 -0
  226. package/dist/actions/name/get-expiry/route.js +131 -0
  227. package/dist/actions/name/get-expiry/route.js.map +1 -0
  228. package/dist/actions/name/get-expiry/types.d.ts +25 -0
  229. package/dist/actions/name/get-expiry/types.d.ts.map +1 -0
  230. package/dist/actions/name/get-expiry/types.js +22 -0
  231. package/dist/actions/name/get-expiry/types.js.map +1 -0
  232. package/dist/actions/name/get-expiry/v1.js +49 -0
  233. package/dist/actions/name/get-expiry/v1.js.map +1 -0
  234. package/dist/actions/name/get-expiry/v2.js +60 -0
  235. package/dist/actions/name/get-expiry/v2.js.map +1 -0
  236. package/dist/actions/name/get-manager/index.d.ts +10 -0
  237. package/dist/actions/name/get-manager/index.d.ts.map +1 -0
  238. package/dist/actions/name/get-manager/index.js +21 -0
  239. package/dist/actions/name/get-manager/index.js.map +1 -0
  240. package/dist/actions/name/get-name-state/index.d.ts +116 -0
  241. package/dist/actions/name/get-name-state/index.d.ts.map +1 -0
  242. package/dist/actions/name/get-name-state/index.js +104 -0
  243. package/dist/actions/name/get-name-state/index.js.map +1 -0
  244. package/dist/actions/name/get-name-state/types.d.ts +240 -0
  245. package/dist/actions/name/get-name-state/types.d.ts.map +1 -0
  246. package/dist/actions/name/get-name-state/types.js +83 -0
  247. package/dist/actions/name/get-name-state/types.js.map +1 -0
  248. package/dist/actions/name/get-name-status/index.d.ts +8 -0
  249. package/dist/actions/name/get-name-status/index.d.ts.map +1 -0
  250. package/dist/actions/name/get-name-status/index.js +41 -0
  251. package/dist/actions/name/get-name-status/index.js.map +1 -0
  252. package/dist/actions/name/get-owner/index.d.ts +14 -0
  253. package/dist/actions/name/get-owner/index.d.ts.map +1 -0
  254. package/dist/actions/name/get-owner/index.js +34 -0
  255. package/dist/actions/name/get-owner/index.js.map +1 -0
  256. package/dist/actions/name/get-owner/route.js +105 -0
  257. package/dist/actions/name/get-owner/route.js.map +1 -0
  258. package/dist/actions/name/get-owner/types.d.ts +25 -0
  259. package/dist/actions/name/get-owner/types.d.ts.map +1 -0
  260. package/dist/actions/name/get-owner/types.js +22 -0
  261. package/dist/actions/name/get-owner/types.js.map +1 -0
  262. package/dist/actions/name/get-owner/v1.js +124 -0
  263. package/dist/actions/name/get-owner/v1.js.map +1 -0
  264. package/dist/actions/name/get-owner/v2.js +28 -0
  265. package/dist/actions/name/get-owner/v2.js.map +1 -0
  266. package/dist/actions/name/get-protocol/index.d.ts +10 -0
  267. package/dist/actions/name/get-protocol/index.d.ts.map +1 -0
  268. package/dist/actions/name/get-protocol/index.js +16 -0
  269. package/dist/actions/name/get-protocol/index.js.map +1 -0
  270. package/dist/actions/name/get-registrant/index.d.ts +10 -0
  271. package/dist/actions/name/get-registrant/index.d.ts.map +1 -0
  272. package/dist/actions/name/get-registrant/index.js +37 -0
  273. package/dist/actions/name/get-registrant/index.js.map +1 -0
  274. package/dist/actions/name/get-registry/index.d.ts +10 -0
  275. package/dist/actions/name/get-registry/index.d.ts.map +1 -0
  276. package/dist/actions/name/get-registry/index.js +20 -0
  277. package/dist/actions/name/get-registry/index.js.map +1 -0
  278. package/dist/actions/name/get-token-id/index.d.ts +9 -0
  279. package/dist/actions/name/get-token-id/index.d.ts.map +1 -0
  280. package/dist/actions/name/get-token-id/index.js +42 -0
  281. package/dist/actions/name/get-token-id/index.js.map +1 -0
  282. package/dist/actions/name/index.d.ts +19 -0
  283. package/dist/actions/name/is-available/index.d.ts +8 -0
  284. package/dist/actions/name/is-available/index.d.ts.map +1 -0
  285. package/dist/actions/name/is-available/index.js +46 -0
  286. package/dist/actions/name/is-available/index.js.map +1 -0
  287. package/dist/actions/name/is-migrated/index.d.ts +8 -0
  288. package/dist/actions/name/is-migrated/index.d.ts.map +1 -0
  289. package/dist/actions/name/is-migrated/index.js +28 -0
  290. package/dist/actions/name/is-migrated/index.js.map +1 -0
  291. package/dist/actions/name/is-renewable/index.d.ts +8 -0
  292. package/dist/actions/name/is-renewable/index.d.ts.map +1 -0
  293. package/dist/actions/name/is-renewable/index.js +44 -0
  294. package/dist/actions/name/is-renewable/index.js.map +1 -0
  295. package/dist/actions/name/is-reserved/index.d.ts +8 -0
  296. package/dist/actions/name/is-reserved/index.d.ts.map +1 -0
  297. package/dist/actions/name/is-reserved/index.js +16 -0
  298. package/dist/actions/name/is-reserved/index.js.map +1 -0
  299. package/dist/actions/name/is-wrapped/index.d.ts +8 -0
  300. package/dist/actions/name/is-wrapped/index.d.ts.map +1 -0
  301. package/dist/actions/name/is-wrapped/index.js +48 -0
  302. package/dist/actions/name/is-wrapped/index.js.map +1 -0
  303. package/dist/actions/ownership/address.js +25 -0
  304. package/dist/actions/ownership/address.js.map +1 -0
  305. package/dist/actions/ownership/authorization.js +25 -0
  306. package/dist/actions/ownership/authorization.js.map +1 -0
  307. package/dist/actions/ownership/get-ttl/index.d.ts +9 -0
  308. package/dist/actions/ownership/get-ttl/index.d.ts.map +1 -0
  309. package/dist/actions/ownership/get-ttl/index.js +38 -0
  310. package/dist/actions/ownership/get-ttl/index.js.map +1 -0
  311. package/dist/actions/ownership/index.d.ts +9 -0
  312. package/dist/actions/ownership/reclaim-name/index.d.ts +9 -0
  313. package/dist/actions/ownership/reclaim-name/index.d.ts.map +1 -0
  314. package/dist/actions/ownership/reclaim-name/index.js +40 -0
  315. package/dist/actions/ownership/reclaim-name/index.js.map +1 -0
  316. package/dist/actions/ownership/registrar-target.js +26 -0
  317. package/dist/actions/ownership/registrar-target.js.map +1 -0
  318. package/dist/actions/ownership/set-manager/index.d.ts +9 -0
  319. package/dist/actions/ownership/set-manager/index.d.ts.map +1 -0
  320. package/dist/actions/ownership/set-manager/index.js +49 -0
  321. package/dist/actions/ownership/set-manager/index.js.map +1 -0
  322. package/dist/actions/ownership/set-ttl/index.d.ts +9 -0
  323. package/dist/actions/ownership/set-ttl/index.d.ts.map +1 -0
  324. package/dist/actions/ownership/set-ttl/index.js +52 -0
  325. package/dist/actions/ownership/set-ttl/index.js.map +1 -0
  326. package/dist/actions/ownership/transfer-name/index.d.ts +10 -0
  327. package/dist/actions/ownership/transfer-name/index.d.ts.map +1 -0
  328. package/dist/actions/ownership/transfer-name/index.js +111 -0
  329. package/dist/actions/ownership/transfer-name/index.js.map +1 -0
  330. package/dist/actions/ownership/transfer-registrant/index.d.ts +9 -0
  331. package/dist/actions/ownership/transfer-registrant/index.d.ts.map +1 -0
  332. package/dist/actions/ownership/transfer-registrant/index.js +44 -0
  333. package/dist/actions/ownership/transfer-registrant/index.js.map +1 -0
  334. package/dist/actions/ownership/transfer-token.js +51 -0
  335. package/dist/actions/ownership/transfer-token.js.map +1 -0
  336. package/dist/actions/ownership/types.d.ts +58 -0
  337. package/dist/actions/ownership/types.d.ts.map +1 -0
  338. package/dist/actions/permissions/address.js +16 -0
  339. package/dist/actions/permissions/address.js.map +1 -0
  340. package/dist/actions/permissions/index.d.ts +13 -0
  341. package/dist/actions/permissions/name-approval/index.d.ts +10 -0
  342. package/dist/actions/permissions/name-approval/index.d.ts.map +1 -0
  343. package/dist/actions/permissions/name-approval/index.js +52 -0
  344. package/dist/actions/permissions/name-approval/index.js.map +1 -0
  345. package/dist/actions/permissions/name-approval/types.d.ts +19 -0
  346. package/dist/actions/permissions/name-approval/types.d.ts.map +1 -0
  347. package/dist/actions/permissions/operator-approval/index.d.ts +9 -0
  348. package/dist/actions/permissions/operator-approval/index.d.ts.map +1 -0
  349. package/dist/actions/permissions/operator-approval/index.js +48 -0
  350. package/dist/actions/permissions/operator-approval/index.js.map +1 -0
  351. package/dist/actions/permissions/operator-approval/types.d.ts +16 -0
  352. package/dist/actions/permissions/operator-approval/types.d.ts.map +1 -0
  353. package/dist/actions/permissions/registry-roles/index.d.ts +10 -0
  354. package/dist/actions/permissions/registry-roles/index.d.ts.map +1 -0
  355. package/dist/actions/permissions/registry-roles/index.js +51 -0
  356. package/dist/actions/permissions/registry-roles/index.js.map +1 -0
  357. package/dist/actions/permissions/registry-roles/types.d.ts +19 -0
  358. package/dist/actions/permissions/registry-roles/types.d.ts.map +1 -0
  359. package/dist/actions/permissions/resolver-delegate-approval/index.d.ts +9 -0
  360. package/dist/actions/permissions/resolver-delegate-approval/index.d.ts.map +1 -0
  361. package/dist/actions/permissions/resolver-delegate-approval/index.js +53 -0
  362. package/dist/actions/permissions/resolver-delegate-approval/index.js.map +1 -0
  363. package/dist/actions/permissions/resolver-delegate-approval/types.d.ts +14 -0
  364. package/dist/actions/permissions/resolver-delegate-approval/types.d.ts.map +1 -0
  365. package/dist/actions/permissions/resolver-roles/index.d.ts +12 -0
  366. package/dist/actions/permissions/resolver-roles/index.d.ts.map +1 -0
  367. package/dist/actions/permissions/resolver-roles/index.js +125 -0
  368. package/dist/actions/permissions/resolver-roles/index.js.map +1 -0
  369. package/dist/actions/permissions/resolver-roles/types.d.ts +34 -0
  370. package/dist/actions/permissions/resolver-roles/types.d.ts.map +1 -0
  371. package/dist/actions/permissions/roles.js +13 -0
  372. package/dist/actions/permissions/roles.js.map +1 -0
  373. package/dist/actions/permissions/set-record-permissions/index.d.ts +9 -0
  374. package/dist/actions/permissions/set-record-permissions/index.d.ts.map +1 -0
  375. package/dist/actions/permissions/set-record-permissions/index.js +122 -0
  376. package/dist/actions/permissions/set-record-permissions/index.js.map +1 -0
  377. package/dist/actions/permissions/set-record-permissions/types.d.ts +48 -0
  378. package/dist/actions/permissions/set-record-permissions/types.d.ts.map +1 -0
  379. package/dist/actions/records/clear-records/index.d.ts +9 -0
  380. package/dist/actions/records/clear-records/index.d.ts.map +1 -0
  381. package/dist/actions/records/clear-records/index.js +27 -0
  382. package/dist/actions/records/clear-records/index.js.map +1 -0
  383. package/dist/actions/records/clear-records/types.d.ts +10 -0
  384. package/dist/actions/records/clear-records/types.d.ts.map +1 -0
  385. package/dist/actions/records/get-abi/index.d.ts +20 -0
  386. package/dist/actions/records/get-abi/index.d.ts.map +1 -0
  387. package/dist/actions/records/get-abi/index.js +23 -0
  388. package/dist/actions/records/get-abi/index.js.map +1 -0
  389. package/dist/actions/records/get-abi/resolve.js +116 -0
  390. package/dist/actions/records/get-abi/resolve.js.map +1 -0
  391. package/dist/actions/records/get-abi/types.d.ts +30 -0
  392. package/dist/actions/records/get-abi/types.d.ts.map +1 -0
  393. package/dist/actions/records/get-abi/types.js +32 -0
  394. package/dist/actions/records/get-abi/types.js.map +1 -0
  395. package/dist/actions/records/get-address/index.d.ts +25 -0
  396. package/dist/actions/records/get-address/index.d.ts.map +1 -0
  397. package/dist/actions/records/get-address/index.js +31 -0
  398. package/dist/actions/records/get-address/index.js.map +1 -0
  399. package/dist/actions/records/get-address/resolve.js +107 -0
  400. package/dist/actions/records/get-address/resolve.js.map +1 -0
  401. package/dist/actions/records/get-address/types.d.ts +30 -0
  402. package/dist/actions/records/get-address/types.d.ts.map +1 -0
  403. package/dist/actions/records/get-address/types.js +20 -0
  404. package/dist/actions/records/get-address/types.js.map +1 -0
  405. package/dist/actions/records/get-avatar/index.d.ts +16 -0
  406. package/dist/actions/records/get-avatar/index.d.ts.map +1 -0
  407. package/dist/actions/records/get-avatar/index.js +20 -0
  408. package/dist/actions/records/get-avatar/index.js.map +1 -0
  409. package/dist/actions/records/get-avatar/resolve.js +39 -0
  410. package/dist/actions/records/get-avatar/resolve.js.map +1 -0
  411. package/dist/actions/records/get-avatar/types.d.ts +27 -0
  412. package/dist/actions/records/get-avatar/types.d.ts.map +1 -0
  413. package/dist/actions/records/get-avatar/types.js +16 -0
  414. package/dist/actions/records/get-avatar/types.js.map +1 -0
  415. package/dist/actions/records/get-content-hash/index.d.ts +16 -0
  416. package/dist/actions/records/get-content-hash/index.d.ts.map +1 -0
  417. package/dist/actions/records/get-content-hash/index.js +17 -0
  418. package/dist/actions/records/get-content-hash/index.js.map +1 -0
  419. package/dist/actions/records/get-content-hash/resolve.js +69 -0
  420. package/dist/actions/records/get-content-hash/resolve.js.map +1 -0
  421. package/dist/actions/records/get-content-hash/types.d.ts +24 -0
  422. package/dist/actions/records/get-content-hash/types.d.ts.map +1 -0
  423. package/dist/actions/records/get-content-hash/types.js +19 -0
  424. package/dist/actions/records/get-content-hash/types.js.map +1 -0
  425. package/dist/actions/records/get-data/index.d.ts +11 -0
  426. package/dist/actions/records/get-data/index.d.ts.map +1 -0
  427. package/dist/actions/records/get-data/index.js +17 -0
  428. package/dist/actions/records/get-data/index.js.map +1 -0
  429. package/dist/actions/records/get-data/resolve.js +57 -0
  430. package/dist/actions/records/get-data/resolve.js.map +1 -0
  431. package/dist/actions/records/get-data/types.d.ts +20 -0
  432. package/dist/actions/records/get-data/types.d.ts.map +1 -0
  433. package/dist/actions/records/get-data/types.js +12 -0
  434. package/dist/actions/records/get-data/types.js.map +1 -0
  435. package/dist/actions/records/get-interface/index.d.ts +11 -0
  436. package/dist/actions/records/get-interface/index.d.ts.map +1 -0
  437. package/dist/actions/records/get-interface/index.js +17 -0
  438. package/dist/actions/records/get-interface/index.js.map +1 -0
  439. package/dist/actions/records/get-interface/resolve.js +66 -0
  440. package/dist/actions/records/get-interface/resolve.js.map +1 -0
  441. package/dist/actions/records/get-interface/types.d.ts +20 -0
  442. package/dist/actions/records/get-interface/types.d.ts.map +1 -0
  443. package/dist/actions/records/get-interface/types.js +13 -0
  444. package/dist/actions/records/get-interface/types.js.map +1 -0
  445. package/dist/actions/records/get-name/index.d.ts +10 -0
  446. package/dist/actions/records/get-name/index.d.ts.map +1 -0
  447. package/dist/actions/records/get-name/index.js +17 -0
  448. package/dist/actions/records/get-name/index.js.map +1 -0
  449. package/dist/actions/records/get-name/resolve.js +47 -0
  450. package/dist/actions/records/get-name/resolve.js.map +1 -0
  451. package/dist/actions/records/get-name/types.d.ts +18 -0
  452. package/dist/actions/records/get-name/types.d.ts.map +1 -0
  453. package/dist/actions/records/get-name/types.js +8 -0
  454. package/dist/actions/records/get-name/types.js.map +1 -0
  455. package/dist/actions/records/get-pubkey/index.d.ts +11 -0
  456. package/dist/actions/records/get-pubkey/index.d.ts.map +1 -0
  457. package/dist/actions/records/get-pubkey/index.js +17 -0
  458. package/dist/actions/records/get-pubkey/index.js.map +1 -0
  459. package/dist/actions/records/get-pubkey/resolve.js +60 -0
  460. package/dist/actions/records/get-pubkey/resolve.js.map +1 -0
  461. package/dist/actions/records/get-pubkey/types.d.ts +19 -0
  462. package/dist/actions/records/get-pubkey/types.d.ts.map +1 -0
  463. package/dist/actions/records/get-pubkey/types.js +12 -0
  464. package/dist/actions/records/get-pubkey/types.js.map +1 -0
  465. package/dist/actions/records/get-records/index.d.ts +6 -0
  466. package/dist/actions/records/get-records/index.d.ts.map +1 -0
  467. package/dist/actions/records/get-records/index.js +16 -0
  468. package/dist/actions/records/get-records/index.js.map +1 -0
  469. package/dist/actions/records/get-records/resolve.js +562 -0
  470. package/dist/actions/records/get-records/resolve.js.map +1 -0
  471. package/dist/actions/records/get-records/types.d.ts +54 -0
  472. package/dist/actions/records/get-records/types.d.ts.map +1 -0
  473. package/dist/actions/records/get-text/index.d.ts +15 -0
  474. package/dist/actions/records/get-text/index.d.ts.map +1 -0
  475. package/dist/actions/records/get-text/index.js +31 -0
  476. package/dist/actions/records/get-text/index.js.map +1 -0
  477. package/dist/actions/records/get-text/resolve.js +72 -0
  478. package/dist/actions/records/get-text/resolve.js.map +1 -0
  479. package/dist/actions/records/get-text/types.d.ts +25 -0
  480. package/dist/actions/records/get-text/types.d.ts.map +1 -0
  481. package/dist/actions/records/get-text/types.js +11 -0
  482. package/dist/actions/records/get-text/types.js.map +1 -0
  483. package/dist/actions/records/index.d.ts +47 -0
  484. package/dist/actions/records/set-abi/index.d.ts +9 -0
  485. package/dist/actions/records/set-abi/index.d.ts.map +1 -0
  486. package/dist/actions/records/set-abi/index.js +57 -0
  487. package/dist/actions/records/set-abi/index.js.map +1 -0
  488. package/dist/actions/records/set-abi/types.d.ts +17 -0
  489. package/dist/actions/records/set-abi/types.d.ts.map +1 -0
  490. package/dist/actions/records/set-address/index.d.ts +10 -0
  491. package/dist/actions/records/set-address/index.d.ts.map +1 -0
  492. package/dist/actions/records/set-address/index.js +63 -0
  493. package/dist/actions/records/set-address/index.js.map +1 -0
  494. package/dist/actions/records/set-address/types.d.ts +22 -0
  495. package/dist/actions/records/set-address/types.d.ts.map +1 -0
  496. package/dist/actions/records/set-alias/index.d.ts +9 -0
  497. package/dist/actions/records/set-alias/index.d.ts.map +1 -0
  498. package/dist/actions/records/set-alias/index.js +32 -0
  499. package/dist/actions/records/set-alias/index.js.map +1 -0
  500. package/dist/actions/records/set-alias/types.d.ts +11 -0
  501. package/dist/actions/records/set-alias/types.d.ts.map +1 -0
  502. package/dist/actions/records/set-avatar/index.d.ts +10 -0
  503. package/dist/actions/records/set-avatar/index.d.ts.map +1 -0
  504. package/dist/actions/records/set-avatar/index.js +43 -0
  505. package/dist/actions/records/set-avatar/index.js.map +1 -0
  506. package/dist/actions/records/set-avatar/types.d.ts +16 -0
  507. package/dist/actions/records/set-avatar/types.d.ts.map +1 -0
  508. package/dist/actions/records/set-content-hash/index.d.ts +9 -0
  509. package/dist/actions/records/set-content-hash/index.d.ts.map +1 -0
  510. package/dist/actions/records/set-content-hash/index.js +32 -0
  511. package/dist/actions/records/set-content-hash/index.js.map +1 -0
  512. package/dist/actions/records/set-content-hash/types.d.ts +13 -0
  513. package/dist/actions/records/set-content-hash/types.d.ts.map +1 -0
  514. package/dist/actions/records/set-data/index.d.ts +9 -0
  515. package/dist/actions/records/set-data/index.d.ts.map +1 -0
  516. package/dist/actions/records/set-data/index.js +42 -0
  517. package/dist/actions/records/set-data/index.js.map +1 -0
  518. package/dist/actions/records/set-data/types.d.ts +13 -0
  519. package/dist/actions/records/set-data/types.d.ts.map +1 -0
  520. package/dist/actions/records/set-interface/index.d.ts +9 -0
  521. package/dist/actions/records/set-interface/index.d.ts.map +1 -0
  522. package/dist/actions/records/set-interface/index.js +50 -0
  523. package/dist/actions/records/set-interface/index.js.map +1 -0
  524. package/dist/actions/records/set-interface/types.d.ts +12 -0
  525. package/dist/actions/records/set-interface/types.d.ts.map +1 -0
  526. package/dist/actions/records/set-name/index.d.ts +9 -0
  527. package/dist/actions/records/set-name/index.d.ts.map +1 -0
  528. package/dist/actions/records/set-name/index.js +31 -0
  529. package/dist/actions/records/set-name/index.js.map +1 -0
  530. package/dist/actions/records/set-name/types.d.ts +11 -0
  531. package/dist/actions/records/set-name/types.d.ts.map +1 -0
  532. package/dist/actions/records/set-pubkey/index.d.ts +9 -0
  533. package/dist/actions/records/set-pubkey/index.d.ts.map +1 -0
  534. package/dist/actions/records/set-pubkey/index.js +39 -0
  535. package/dist/actions/records/set-pubkey/index.js.map +1 -0
  536. package/dist/actions/records/set-pubkey/types.d.ts +13 -0
  537. package/dist/actions/records/set-pubkey/types.d.ts.map +1 -0
  538. package/dist/actions/records/set-records/index.d.ts +8 -0
  539. package/dist/actions/records/set-records/index.d.ts.map +1 -0
  540. package/dist/actions/records/set-records/index.js +177 -0
  541. package/dist/actions/records/set-records/index.js.map +1 -0
  542. package/dist/actions/records/set-records/types.d.ts +70 -0
  543. package/dist/actions/records/set-records/types.d.ts.map +1 -0
  544. package/dist/actions/records/set-text/index.d.ts +9 -0
  545. package/dist/actions/records/set-text/index.d.ts.map +1 -0
  546. package/dist/actions/records/set-text/index.js +34 -0
  547. package/dist/actions/records/set-text/index.js.map +1 -0
  548. package/dist/actions/records/set-text/types.d.ts +12 -0
  549. package/dist/actions/records/set-text/types.d.ts.map +1 -0
  550. package/dist/actions/records/set-texts/index.d.ts +9 -0
  551. package/dist/actions/records/set-texts/index.d.ts.map +1 -0
  552. package/dist/actions/records/set-texts/index.js +41 -0
  553. package/dist/actions/records/set-texts/index.js.map +1 -0
  554. package/dist/actions/records/set-texts/types.d.ts +15 -0
  555. package/dist/actions/records/set-texts/types.d.ts.map +1 -0
  556. package/dist/actions/registration/get-commitment-status/index.d.ts +36 -0
  557. package/dist/actions/registration/get-commitment-status/index.d.ts.map +1 -0
  558. package/dist/actions/registration/get-commitment-status/index.js +66 -0
  559. package/dist/actions/registration/get-commitment-status/index.js.map +1 -0
  560. package/dist/actions/registration/get-registration-parameters/index.d.ts +33 -0
  561. package/dist/actions/registration/get-registration-parameters/index.d.ts.map +1 -0
  562. package/dist/actions/registration/get-registration-parameters/index.js +96 -0
  563. package/dist/actions/registration/get-registration-parameters/index.js.map +1 -0
  564. package/dist/actions/registration/get-registration-plan/index.d.ts +113 -0
  565. package/dist/actions/registration/get-registration-plan/index.d.ts.map +1 -0
  566. package/dist/actions/registration/get-registration-plan/index.js +47 -0
  567. package/dist/actions/registration/get-registration-plan/index.js.map +1 -0
  568. package/dist/actions/registration/get-registration-price/index.d.ts +41 -0
  569. package/dist/actions/registration/get-registration-price/index.d.ts.map +1 -0
  570. package/dist/actions/registration/get-registration-price/index.js +98 -0
  571. package/dist/actions/registration/get-registration-price/index.js.map +1 -0
  572. package/dist/actions/registration/get-renewal-price/index.d.ts +40 -0
  573. package/dist/actions/registration/get-renewal-price/index.d.ts.map +1 -0
  574. package/dist/actions/registration/get-renewal-price/index.js +99 -0
  575. package/dist/actions/registration/get-renewal-price/index.js.map +1 -0
  576. package/dist/actions/registration/index.d.ts +15 -0
  577. package/dist/actions/registration/is-payment-token-supported/index.d.ts +28 -0
  578. package/dist/actions/registration/is-payment-token-supported/index.d.ts.map +1 -0
  579. package/dist/actions/registration/is-payment-token-supported/index.js +35 -0
  580. package/dist/actions/registration/is-payment-token-supported/index.js.map +1 -0
  581. package/dist/actions/registration/make-registration-commitment/index.d.ts +13 -0
  582. package/dist/actions/registration/make-registration-commitment/index.d.ts.map +1 -0
  583. package/dist/actions/registration/make-registration-commitment/index.js +70 -0
  584. package/dist/actions/registration/make-registration-commitment/index.js.map +1 -0
  585. package/dist/actions/registration/mutation.d.ts +11 -0
  586. package/dist/actions/registration/mutation.d.ts.map +1 -0
  587. package/dist/actions/registration/mutation.js +162 -0
  588. package/dist/actions/registration/mutation.js.map +1 -0
  589. package/dist/actions/registration/register-name/index.d.ts +9 -0
  590. package/dist/actions/registration/register-name/index.d.ts.map +1 -0
  591. package/dist/actions/registration/register-name/index.js +252 -0
  592. package/dist/actions/registration/register-name/index.js.map +1 -0
  593. package/dist/actions/registration/register-names/index.d.ts +9 -0
  594. package/dist/actions/registration/register-names/index.d.ts.map +1 -0
  595. package/dist/actions/registration/register-names/index.js +36 -0
  596. package/dist/actions/registration/register-names/index.js.map +1 -0
  597. package/dist/actions/registration/renew-name/index.d.ts +6 -0
  598. package/dist/actions/registration/renew-name/index.d.ts.map +1 -0
  599. package/dist/actions/registration/renew-name/index.js +139 -0
  600. package/dist/actions/registration/renew-name/index.js.map +1 -0
  601. package/dist/actions/registration/renew-names/index.d.ts +9 -0
  602. package/dist/actions/registration/renew-names/index.d.ts.map +1 -0
  603. package/dist/actions/registration/renew-names/index.js +207 -0
  604. package/dist/actions/registration/renew-names/index.js.map +1 -0
  605. package/dist/actions/registration/renewal-mutation.d.ts +10 -0
  606. package/dist/actions/registration/renewal-mutation.d.ts.map +1 -0
  607. package/dist/actions/registration/renewal-mutation.js +220 -0
  608. package/dist/actions/registration/renewal-mutation.js.map +1 -0
  609. package/dist/actions/registration/types.d.ts +418 -0
  610. package/dist/actions/registration/types.d.ts.map +1 -0
  611. package/dist/actions/registration/types.js +185 -0
  612. package/dist/actions/registration/types.js.map +1 -0
  613. package/dist/actions/resolution/create-resolver/index.d.ts +16 -0
  614. package/dist/actions/resolution/create-resolver/index.d.ts.map +1 -0
  615. package/dist/actions/resolution/create-resolver/index.js +77 -0
  616. package/dist/actions/resolution/create-resolver/index.js.map +1 -0
  617. package/dist/actions/resolution/create-resolver/prepare.d.ts +9 -0
  618. package/dist/actions/resolution/create-resolver/prepare.d.ts.map +1 -0
  619. package/dist/actions/resolution/create-resolver/prepare.js +69 -0
  620. package/dist/actions/resolution/create-resolver/prepare.js.map +1 -0
  621. package/dist/actions/resolution/create-resolver/types.d.ts +28 -0
  622. package/dist/actions/resolution/create-resolver/types.d.ts.map +1 -0
  623. package/dist/actions/resolution/get-alias/index.d.ts +19 -0
  624. package/dist/actions/resolution/get-alias/index.d.ts.map +1 -0
  625. package/dist/actions/resolution/get-alias/index.js +56 -0
  626. package/dist/actions/resolution/get-alias/index.js.map +1 -0
  627. package/dist/actions/resolution/get-alias/types.d.ts +25 -0
  628. package/dist/actions/resolution/get-alias/types.d.ts.map +1 -0
  629. package/dist/actions/resolution/get-alias/types.js +22 -0
  630. package/dist/actions/resolution/get-alias/types.js.map +1 -0
  631. package/dist/actions/resolution/get-or-create-resolver/index.d.ts +9 -0
  632. package/dist/actions/resolution/get-or-create-resolver/index.d.ts.map +1 -0
  633. package/dist/actions/resolution/get-or-create-resolver/index.js +51 -0
  634. package/dist/actions/resolution/get-or-create-resolver/index.js.map +1 -0
  635. package/dist/actions/resolution/get-or-create-resolver/types.d.ts +33 -0
  636. package/dist/actions/resolution/get-or-create-resolver/types.d.ts.map +1 -0
  637. package/dist/actions/resolution/get-resolver/find.js +34 -0
  638. package/dist/actions/resolution/get-resolver/find.js.map +1 -0
  639. package/dist/actions/resolution/get-resolver/index.d.ts +8 -0
  640. package/dist/actions/resolution/get-resolver/index.d.ts.map +1 -0
  641. package/dist/actions/resolution/get-resolver/index.js +16 -0
  642. package/dist/actions/resolution/get-resolver/index.js.map +1 -0
  643. package/dist/actions/resolution/get-resolver/types.d.ts +15 -0
  644. package/dist/actions/resolution/get-resolver/types.d.ts.map +1 -0
  645. package/dist/actions/resolution/get-resolver-version/index.d.ts +20 -0
  646. package/dist/actions/resolution/get-resolver-version/index.d.ts.map +1 -0
  647. package/dist/actions/resolution/get-resolver-version/index.js +45 -0
  648. package/dist/actions/resolution/get-resolver-version/index.js.map +1 -0
  649. package/dist/actions/resolution/get-resolver-version/types.d.ts +23 -0
  650. package/dist/actions/resolution/get-resolver-version/types.d.ts.map +1 -0
  651. package/dist/actions/resolution/get-resolver-version/types.js +20 -0
  652. package/dist/actions/resolution/get-resolver-version/types.js.map +1 -0
  653. package/dist/actions/resolution/index.d.ts +21 -0
  654. package/dist/actions/resolution/resolve/execute.js +66 -0
  655. package/dist/actions/resolution/resolve/execute.js.map +1 -0
  656. package/dist/actions/resolution/resolve/index.d.ts +15 -0
  657. package/dist/actions/resolution/resolve/index.d.ts.map +1 -0
  658. package/dist/actions/resolution/resolve/index.js +28 -0
  659. package/dist/actions/resolution/resolve/index.js.map +1 -0
  660. package/dist/actions/resolution/resolve/types.d.ts +33 -0
  661. package/dist/actions/resolution/resolve/types.d.ts.map +1 -0
  662. package/dist/actions/resolution/resolve/types.js +17 -0
  663. package/dist/actions/resolution/resolve/types.js.map +1 -0
  664. package/dist/actions/resolution/resolve-batch/index.d.ts +10 -0
  665. package/dist/actions/resolution/resolve-batch/index.d.ts.map +1 -0
  666. package/dist/actions/resolution/resolve-batch/index.js +15 -0
  667. package/dist/actions/resolution/resolve-batch/index.js.map +1 -0
  668. package/dist/actions/resolution/resolve-batch/types.d.ts +22 -0
  669. package/dist/actions/resolution/resolve-batch/types.d.ts.map +1 -0
  670. package/dist/actions/resolution/set-resolver/index.d.ts +9 -0
  671. package/dist/actions/resolution/set-resolver/index.d.ts.map +1 -0
  672. package/dist/actions/resolution/set-resolver/index.js +85 -0
  673. package/dist/actions/resolution/set-resolver/index.js.map +1 -0
  674. package/dist/actions/resolution/set-resolver/types.d.ts +11 -0
  675. package/dist/actions/resolution/set-resolver/types.d.ts.map +1 -0
  676. package/dist/actions/resolution/set-resolver-and-records/index.d.ts +9 -0
  677. package/dist/actions/resolution/set-resolver-and-records/index.d.ts.map +1 -0
  678. package/dist/actions/resolution/set-resolver-and-records/index.js +160 -0
  679. package/dist/actions/resolution/set-resolver-and-records/index.js.map +1 -0
  680. package/dist/actions/resolution/set-resolver-and-records/types.d.ts +33 -0
  681. package/dist/actions/resolution/set-resolver-and-records/types.d.ts.map +1 -0
  682. package/dist/actions/resolution/upgrade-resolver/index.d.ts +14 -0
  683. package/dist/actions/resolution/upgrade-resolver/index.d.ts.map +1 -0
  684. package/dist/actions/resolution/upgrade-resolver/index.js +152 -0
  685. package/dist/actions/resolution/upgrade-resolver/index.js.map +1 -0
  686. package/dist/actions/resolution/upgrade-resolver/types.d.ts +33 -0
  687. package/dist/actions/resolution/upgrade-resolver/types.d.ts.map +1 -0
  688. package/dist/actions/reverse/authorization.js +70 -0
  689. package/dist/actions/reverse/authorization.js.map +1 -0
  690. package/dist/actions/reverse/clear-primary-name/index.d.ts +9 -0
  691. package/dist/actions/reverse/clear-primary-name/index.d.ts.map +1 -0
  692. package/dist/actions/reverse/clear-primary-name/index.js +8 -0
  693. package/dist/actions/reverse/clear-primary-name/index.js.map +1 -0
  694. package/dist/actions/reverse/get-primary-name/index.d.ts +11 -0
  695. package/dist/actions/reverse/get-primary-name/index.d.ts.map +1 -0
  696. package/dist/actions/reverse/get-primary-name/index.js +51 -0
  697. package/dist/actions/reverse/get-primary-name/index.js.map +1 -0
  698. package/dist/actions/reverse/get-primary-name/types.d.ts +20 -0
  699. package/dist/actions/reverse/get-primary-name/types.d.ts.map +1 -0
  700. package/dist/actions/reverse/get-primary-name/types.js +12 -0
  701. package/dist/actions/reverse/get-primary-name/types.js.map +1 -0
  702. package/dist/actions/reverse/index.d.ts +8 -0
  703. package/dist/actions/reverse/mutation.js +89 -0
  704. package/dist/actions/reverse/mutation.js.map +1 -0
  705. package/dist/actions/reverse/set-contract-primary-name/index.d.ts +9 -0
  706. package/dist/actions/reverse/set-contract-primary-name/index.d.ts.map +1 -0
  707. package/dist/actions/reverse/set-contract-primary-name/index.js +13 -0
  708. package/dist/actions/reverse/set-contract-primary-name/index.js.map +1 -0
  709. package/dist/actions/reverse/set-primary-name/index.d.ts +9 -0
  710. package/dist/actions/reverse/set-primary-name/index.d.ts.map +1 -0
  711. package/dist/actions/reverse/set-primary-name/index.js +11 -0
  712. package/dist/actions/reverse/set-primary-name/index.js.map +1 -0
  713. package/dist/actions/reverse/set-primary-name-for-address/index.d.ts +9 -0
  714. package/dist/actions/reverse/set-primary-name-for-address/index.d.ts.map +1 -0
  715. package/dist/actions/reverse/set-primary-name-for-address/index.js +12 -0
  716. package/dist/actions/reverse/set-primary-name-for-address/index.js.map +1 -0
  717. package/dist/actions/reverse/types.d.ts +18 -0
  718. package/dist/actions/reverse/types.d.ts.map +1 -0
  719. package/dist/actions/subnames/create-subname/index.d.ts +9 -0
  720. package/dist/actions/subnames/create-subname/index.d.ts.map +1 -0
  721. package/dist/actions/subnames/create-subname/index.js +165 -0
  722. package/dist/actions/subnames/create-subname/index.js.map +1 -0
  723. package/dist/actions/subnames/index.d.ts +6 -0
  724. package/dist/actions/subnames/intents.js +148 -0
  725. package/dist/actions/subnames/intents.js.map +1 -0
  726. package/dist/actions/subnames/mutation.d.ts +12 -0
  727. package/dist/actions/subnames/mutation.d.ts.map +1 -0
  728. package/dist/actions/subnames/mutation.js +214 -0
  729. package/dist/actions/subnames/mutation.js.map +1 -0
  730. package/dist/actions/subnames/route.js +105 -0
  731. package/dist/actions/subnames/route.js.map +1 -0
  732. package/dist/actions/subnames/set-subname-record/index.d.ts +9 -0
  733. package/dist/actions/subnames/set-subname-record/index.d.ts.map +1 -0
  734. package/dist/actions/subnames/set-subname-record/index.js +72 -0
  735. package/dist/actions/subnames/set-subname-record/index.js.map +1 -0
  736. package/dist/actions/subnames/transfer-subname/index.d.ts +11 -0
  737. package/dist/actions/subnames/transfer-subname/index.d.ts.map +1 -0
  738. package/dist/actions/subnames/transfer-subname/index.js +15 -0
  739. package/dist/actions/subnames/transfer-subname/index.js.map +1 -0
  740. package/dist/actions/subnames/types.d.ts +70 -0
  741. package/dist/actions/subnames/types.d.ts.map +1 -0
  742. package/dist/actions/wrapping/extend-subname-expiry/index.d.ts +3 -0
  743. package/dist/actions/wrapping/fuse-mask.d.ts +14 -0
  744. package/dist/actions/wrapping/fuse-mask.d.ts.map +1 -0
  745. package/dist/actions/wrapping/fuse-mask.js +36 -0
  746. package/dist/actions/wrapping/fuse-mask.js.map +1 -0
  747. package/dist/actions/wrapping/get-fuses/index.d.ts +10 -0
  748. package/dist/actions/wrapping/get-fuses/index.d.ts.map +1 -0
  749. package/dist/actions/wrapping/get-fuses/index.js +28 -0
  750. package/dist/actions/wrapping/get-fuses/index.js.map +1 -0
  751. package/dist/actions/wrapping/get-wrapper-expiry/index.d.ts +10 -0
  752. package/dist/actions/wrapping/get-wrapper-expiry/index.d.ts.map +1 -0
  753. package/dist/actions/wrapping/get-wrapper-expiry/index.js +24 -0
  754. package/dist/actions/wrapping/get-wrapper-expiry/index.js.map +1 -0
  755. package/dist/actions/wrapping/index.d.ts +11 -0
  756. package/dist/actions/wrapping/intents.js +71 -0
  757. package/dist/actions/wrapping/intents.js.map +1 -0
  758. package/dist/actions/wrapping/mutation.d.ts +12 -0
  759. package/dist/actions/wrapping/mutation.d.ts.map +1 -0
  760. package/dist/actions/wrapping/mutation.js +174 -0
  761. package/dist/actions/wrapping/mutation.js.map +1 -0
  762. package/dist/actions/wrapping/route.js +63 -0
  763. package/dist/actions/wrapping/route.js.map +1 -0
  764. package/dist/actions/wrapping/set-child-fuses/index.d.ts +3 -0
  765. package/dist/actions/wrapping/set-fuses/index.d.ts +3 -0
  766. package/dist/actions/wrapping/types.d.ts +84 -0
  767. package/dist/actions/wrapping/types.d.ts.map +1 -0
  768. package/dist/actions/wrapping/unwrap-name/index.d.ts +3 -0
  769. package/dist/actions/wrapping/wrap-name/index.d.ts +9 -0
  770. package/dist/actions/wrapping/wrap-name/index.d.ts.map +1 -0
  771. package/dist/actions/wrapping/wrap-name/index.js +147 -0
  772. package/dist/actions/wrapping/wrap-name/index.js.map +1 -0
  773. package/dist/config/config.d.ts +52 -0
  774. package/dist/config/config.d.ts.map +1 -0
  775. package/dist/config/config.js +6 -0
  776. package/dist/config/config.js.map +1 -0
  777. package/dist/config/create-config.d.ts +6 -0
  778. package/dist/config/create-config.d.ts.map +1 -0
  779. package/dist/config/create-config.js +67 -0
  780. package/dist/config/create-config.js.map +1 -0
  781. package/dist/config/gateway-options.d.ts +19 -0
  782. package/dist/config/gateway-options.d.ts.map +1 -0
  783. package/dist/config/gateway-options.js +37 -0
  784. package/dist/config/gateway-options.js.map +1 -0
  785. package/dist/config/index.d.ts +7 -0
  786. package/dist/config/network.d.ts +8 -0
  787. package/dist/config/network.d.ts.map +1 -0
  788. package/dist/config/network.js +13 -0
  789. package/dist/config/network.js.map +1 -0
  790. package/dist/config/read-options.d.ts +13 -0
  791. package/dist/config/read-options.d.ts.map +1 -0
  792. package/dist/config/read-options.js +27 -0
  793. package/dist/config/read-options.js.map +1 -0
  794. package/dist/config/write-options.d.ts +26 -0
  795. package/dist/config/write-options.d.ts.map +1 -0
  796. package/dist/config/write-options.js +37 -0
  797. package/dist/config/write-options.js.map +1 -0
  798. package/dist/errors/authorization-error.d.ts +12 -0
  799. package/dist/errors/authorization-error.d.ts.map +1 -0
  800. package/dist/errors/authorization-error.js +17 -0
  801. package/dist/errors/authorization-error.js.map +1 -0
  802. package/dist/errors/codec-error.d.ts +12 -0
  803. package/dist/errors/codec-error.d.ts.map +1 -0
  804. package/dist/errors/codec-error.js +26 -0
  805. package/dist/errors/codec-error.js.map +1 -0
  806. package/dist/errors/config-error.d.ts +12 -0
  807. package/dist/errors/config-error.d.ts.map +1 -0
  808. package/dist/errors/config-error.js +25 -0
  809. package/dist/errors/config-error.js.map +1 -0
  810. package/dist/errors/contract-error.d.ts +18 -0
  811. package/dist/errors/contract-error.d.ts.map +1 -0
  812. package/dist/errors/contract-error.js +27 -0
  813. package/dist/errors/contract-error.js.map +1 -0
  814. package/dist/errors/dns-import-error.d.ts +12 -0
  815. package/dist/errors/dns-import-error.d.ts.map +1 -0
  816. package/dist/errors/dns-import-error.js +18 -0
  817. package/dist/errors/dns-import-error.js.map +1 -0
  818. package/dist/errors/gateway-error.d.ts +13 -0
  819. package/dist/errors/gateway-error.d.ts.map +1 -0
  820. package/dist/errors/gateway-error.js +17 -0
  821. package/dist/errors/gateway-error.js.map +1 -0
  822. package/dist/errors/index.d.ts +16 -0
  823. package/dist/errors/migration-error.d.ts +12 -0
  824. package/dist/errors/migration-error.d.ts.map +1 -0
  825. package/dist/errors/migration-error.js +21 -0
  826. package/dist/errors/migration-error.js.map +1 -0
  827. package/dist/errors/name-error.d.ts +12 -0
  828. package/dist/errors/name-error.d.ts.map +1 -0
  829. package/dist/errors/name-error.js +12 -0
  830. package/dist/errors/name-error.js.map +1 -0
  831. package/dist/errors/registration-error.d.ts +12 -0
  832. package/dist/errors/registration-error.d.ts.map +1 -0
  833. package/dist/errors/registration-error.js +22 -0
  834. package/dist/errors/registration-error.js.map +1 -0
  835. package/dist/errors/renewal-error.d.ts +12 -0
  836. package/dist/errors/renewal-error.d.ts.map +1 -0
  837. package/dist/errors/renewal-error.js +21 -0
  838. package/dist/errors/renewal-error.js.map +1 -0
  839. package/dist/errors/reverse-name-error.d.ts +12 -0
  840. package/dist/errors/reverse-name-error.d.ts.map +1 -0
  841. package/dist/errors/reverse-name-error.js +12 -0
  842. package/dist/errors/reverse-name-error.js.map +1 -0
  843. package/dist/errors/rpc-error.d.ts +13 -0
  844. package/dist/errors/rpc-error.d.ts.map +1 -0
  845. package/dist/errors/rpc-error.js +17 -0
  846. package/dist/errors/rpc-error.js.map +1 -0
  847. package/dist/errors/transaction-error.d.ts +15 -0
  848. package/dist/errors/transaction-error.d.ts.map +1 -0
  849. package/dist/errors/transaction-error.js +21 -0
  850. package/dist/errors/transaction-error.js.map +1 -0
  851. package/dist/errors/wallet-error.d.ts +13 -0
  852. package/dist/errors/wallet-error.d.ts.map +1 -0
  853. package/dist/errors/wallet-error.js +21 -0
  854. package/dist/errors/wallet-error.js.map +1 -0
  855. package/dist/errors/write-plan-error.d.ts +13 -0
  856. package/dist/errors/write-plan-error.d.ts.map +1 -0
  857. package/dist/errors/write-plan-error.js +19 -0
  858. package/dist/errors/write-plan-error.js.map +1 -0
  859. package/dist/index.d.ts +233 -0
  860. package/dist/index.js +192 -0
  861. package/dist/internal/capabilities/interface-support.js +22 -0
  862. package/dist/internal/capabilities/interface-support.js.map +1 -0
  863. package/dist/internal/capabilities/registry-permissions.js +40 -0
  864. package/dist/internal/capabilities/registry-permissions.js.map +1 -0
  865. package/dist/internal/capabilities/resolver-authorization.js +9 -0
  866. package/dist/internal/capabilities/resolver-authorization.js.map +1 -0
  867. package/dist/internal/capabilities/resolver-permissions.js +32 -0
  868. package/dist/internal/capabilities/resolver-permissions.js.map +1 -0
  869. package/dist/internal/capabilities/resolver-resource.d.ts +36 -0
  870. package/dist/internal/capabilities/resolver-resource.d.ts.map +1 -0
  871. package/dist/internal/capabilities/resolver-resource.js +45 -0
  872. package/dist/internal/capabilities/resolver-resource.js.map +1 -0
  873. package/dist/internal/client/ethereum-client.js +35 -0
  874. package/dist/internal/client/ethereum-client.js.map +1 -0
  875. package/dist/internal/config/context.js +16 -0
  876. package/dist/internal/config/context.js.map +1 -0
  877. package/dist/internal/config/network-profile.js +21 -0
  878. package/dist/internal/config/network-profile.js.map +1 -0
  879. package/dist/internal/config/validation.js +37 -0
  880. package/dist/internal/config/validation.js.map +1 -0
  881. package/dist/internal/config/wagmi-clients.js +26 -0
  882. package/dist/internal/config/wagmi-clients.js.map +1 -0
  883. package/dist/internal/dns/resolve-dns-records.js +45 -0
  884. package/dist/internal/dns/resolve-dns-records.js.map +1 -0
  885. package/dist/internal/errors/viem-error.d.ts +3 -0
  886. package/dist/internal/errors/viem-error.js +88 -0
  887. package/dist/internal/errors/viem-error.js.map +1 -0
  888. package/dist/internal/errors/write-error.js +52 -0
  889. package/dist/internal/errors/write-error.js.map +1 -0
  890. package/dist/internal/events/contracts.js +70 -0
  891. package/dist/internal/events/contracts.js.map +1 -0
  892. package/dist/internal/events/normalize-event.js +139 -0
  893. package/dist/internal/events/normalize-event.js.map +1 -0
  894. package/dist/internal/gateway/ccip-request.js +103 -0
  895. package/dist/internal/gateway/ccip-request.js.map +1 -0
  896. package/dist/internal/gateway/validate-url.js +19 -0
  897. package/dist/internal/gateway/validate-url.js.map +1 -0
  898. package/dist/internal/name/name-route.js +120 -0
  899. package/dist/internal/name/name-route.js.map +1 -0
  900. package/dist/internal/read/block-timestamp.js +18 -0
  901. package/dist/internal/read/block-timestamp.js.map +1 -0
  902. package/dist/internal/read/contract-read-resolver.d.ts +4 -0
  903. package/dist/internal/read/contract-read-resolver.js +82 -0
  904. package/dist/internal/read/contract-read-resolver.js.map +1 -0
  905. package/dist/internal/read/contract-read.d.ts +4 -0
  906. package/dist/internal/read/contract-read.js +32 -0
  907. package/dist/internal/read/contract-read.js.map +1 -0
  908. package/dist/internal/read/execute-read.js +21 -0
  909. package/dist/internal/read/execute-read.js.map +1 -0
  910. package/dist/internal/read/execution-context.d.ts +13 -0
  911. package/dist/internal/read/execution-context.d.ts.map +1 -0
  912. package/dist/internal/read/execution-context.js +66 -0
  913. package/dist/internal/read/execution-context.js.map +1 -0
  914. package/dist/internal/registration/commitment-status.js +36 -0
  915. package/dist/internal/registration/commitment-status.js.map +1 -0
  916. package/dist/internal/registration/payment-token.js +33 -0
  917. package/dist/internal/registration/payment-token.js.map +1 -0
  918. package/dist/internal/registration/second-level-eth.js +18 -0
  919. package/dist/internal/registration/second-level-eth.js.map +1 -0
  920. package/dist/internal/resolver/resolve-name.js +52 -0
  921. package/dist/internal/resolver/resolve-name.js.map +1 -0
  922. package/dist/internal/resolver/resolve-records.js +64 -0
  923. package/dist/internal/resolver/resolve-records.js.map +1 -0
  924. package/dist/internal/resolver/reverse-address.js +33 -0
  925. package/dist/internal/resolver/reverse-address.js.map +1 -0
  926. package/dist/internal/services/context.js +30 -0
  927. package/dist/internal/services/context.js.map +1 -0
  928. package/dist/internal/services/deployment.js +8 -0
  929. package/dist/internal/services/deployment.js.map +1 -0
  930. package/dist/internal/services/network.js +8 -0
  931. package/dist/internal/services/network.js.map +1 -0
  932. package/dist/internal/services/public-client.js +8 -0
  933. package/dist/internal/services/public-client.js.map +1 -0
  934. package/dist/internal/services/wallet-client.js +45 -0
  935. package/dist/internal/services/wallet-client.js.map +1 -0
  936. package/dist/internal/sync-function.d.ts +9 -0
  937. package/dist/internal/sync-function.d.ts.map +1 -0
  938. package/dist/internal/sync-function.js +20 -0
  939. package/dist/internal/sync-function.js.map +1 -0
  940. package/dist/internal/write/confirm-native-batch.js +52 -0
  941. package/dist/internal/write/confirm-native-batch.js.map +1 -0
  942. package/dist/internal/write/execute-native-batch.js +39 -0
  943. package/dist/internal/write/execute-native-batch.js.map +1 -0
  944. package/dist/internal/write/execute-sequential.js +88 -0
  945. package/dist/internal/write/execute-sequential.js.map +1 -0
  946. package/dist/internal/write/prepare-resolver-write.js +50 -0
  947. package/dist/internal/write/prepare-resolver-write.js.map +1 -0
  948. package/dist/internal/write/prepare-write-intents.js +49 -0
  949. package/dist/internal/write/prepare-write-intents.js.map +1 -0
  950. package/dist/internal/write/redact-sensitive-error.js +12 -0
  951. package/dist/internal/write/redact-sensitive-error.js.map +1 -0
  952. package/dist/internal/write/resolver-write-action.js +42 -0
  953. package/dist/internal/write/resolver-write-action.js.map +1 -0
  954. package/dist/internal/write/simulate-prepared-calls.js +15 -0
  955. package/dist/internal/write/simulate-prepared-calls.js.map +1 -0
  956. package/dist/internal/write/single-write-action.js +24 -0
  957. package/dist/internal/write/single-write-action.js.map +1 -0
  958. package/dist/internal/write/write-client.js +104 -0
  959. package/dist/internal/write/write-client.js.map +1 -0
  960. package/dist/names/address-record.d.ts +16 -0
  961. package/dist/names/address-record.d.ts.map +1 -0
  962. package/dist/names/address-record.js +57 -0
  963. package/dist/names/address-record.js.map +1 -0
  964. package/dist/names/analyze.d.ts +20 -0
  965. package/dist/names/analyze.d.ts.map +1 -0
  966. package/dist/names/analyze.js +28 -0
  967. package/dist/names/analyze.js.map +1 -0
  968. package/dist/names/coin-type.d.ts +14 -0
  969. package/dist/names/coin-type.d.ts.map +1 -0
  970. package/dist/names/coin-type.js +52 -0
  971. package/dist/names/coin-type.js.map +1 -0
  972. package/dist/names/content-hash.d.ts +15 -0
  973. package/dist/names/content-hash.d.ts.map +1 -0
  974. package/dist/names/content-hash.js +54 -0
  975. package/dist/names/content-hash.js.map +1 -0
  976. package/dist/names/dns.d.ts +10 -0
  977. package/dist/names/dns.d.ts.map +1 -0
  978. package/dist/names/dns.js +66 -0
  979. package/dist/names/dns.js.map +1 -0
  980. package/dist/names/hashes.d.ts +8 -0
  981. package/dist/names/hashes.d.ts.map +1 -0
  982. package/dist/names/hashes.js +12 -0
  983. package/dist/names/hashes.js.map +1 -0
  984. package/dist/names/index.d.ts +8 -0
  985. package/dist/names/normalize.d.ts +8 -0
  986. package/dist/names/normalize.d.ts.map +1 -0
  987. package/dist/names/normalize.js +33 -0
  988. package/dist/names/normalize.js.map +1 -0
  989. package/dist/schemas/coin-type.d.ts +7 -0
  990. package/dist/schemas/coin-type.d.ts.map +1 -0
  991. package/dist/schemas/coin-type.js +9 -0
  992. package/dist/schemas/coin-type.js.map +1 -0
  993. package/dist/schemas/dns.d.ts +7 -0
  994. package/dist/schemas/dns.d.ts.map +1 -0
  995. package/dist/schemas/dns.js +24 -0
  996. package/dist/schemas/dns.js.map +1 -0
  997. package/dist/schemas/hash.d.ts +11 -0
  998. package/dist/schemas/hash.d.ts.map +1 -0
  999. package/dist/schemas/hash.js +11 -0
  1000. package/dist/schemas/hash.js.map +1 -0
  1001. package/dist/schemas/hex.d.ts +7 -0
  1002. package/dist/schemas/hex.d.ts.map +1 -0
  1003. package/dist/schemas/hex.js +8 -0
  1004. package/dist/schemas/hex.js.map +1 -0
  1005. package/dist/schemas/identity.d.ts +18 -0
  1006. package/dist/schemas/identity.d.ts.map +1 -0
  1007. package/dist/schemas/identity.js +25 -0
  1008. package/dist/schemas/identity.js.map +1 -0
  1009. package/dist/schemas/index.d.ts +9 -0
  1010. package/dist/schemas/name.d.ts +9 -0
  1011. package/dist/schemas/name.d.ts.map +1 -0
  1012. package/dist/schemas/name.js +28 -0
  1013. package/dist/schemas/name.js.map +1 -0
  1014. package/dist/schemas/protocol.d.ts +7 -0
  1015. package/dist/schemas/protocol.d.ts.map +1 -0
  1016. package/dist/schemas/protocol.js +8 -0
  1017. package/dist/schemas/protocol.js.map +1 -0
  1018. package/dist/schemas/records.d.ts +20 -0
  1019. package/dist/schemas/records.d.ts.map +1 -0
  1020. package/dist/schemas/records.js +32 -0
  1021. package/dist/schemas/records.js.map +1 -0
  1022. package/dist/testing/create-test-config.d.ts +19 -0
  1023. package/dist/testing/create-test-config.d.ts.map +1 -0
  1024. package/dist/testing/create-test-config.js +37 -0
  1025. package/dist/testing/create-test-config.js.map +1 -0
  1026. package/dist/testing.d.ts +2 -0
  1027. package/dist/testing.js +3 -0
  1028. package/dist/write/index.d.ts +3 -0
  1029. package/dist/write/types.d.ts +188 -0
  1030. package/dist/write/types.d.ts.map +1 -0
  1031. package/dist/write/types.js +17 -0
  1032. package/dist/write/types.js.map +1 -0
  1033. package/package.json +62 -0
@@ -0,0 +1,148 @@
1
+ import { makeWriteIntent } from "../../action/write-intent.js";
2
+ import { ContractError } from "../../errors/contract-error.js";
3
+ import { Effect } from "effect";
4
+ import { encodeFunctionData } from "viem";
5
+ import { ensRegistryV1SetSubnodeRecordAbi, nameWrapperV1SetSubnodeRecordAbi } from "@ensforge/contracts/v1";
6
+ import { permissionedRegistryV2InterfaceRegisterAbi, permissionedRegistryV2InterfaceSetSubregistryAbi, userRegistryV2SetParentAbi, verifiableFactoryV2DeployProxyAbi } from "@ensforge/contracts/v2";
7
+
8
+ //#region src/actions/subnames/intents.ts
9
+ const prepareEncoded = Effect.fn("ensforge.subname.prepareEncoded")((_config, parameters) => Effect.succeed({
10
+ to: parameters.to,
11
+ data: parameters.data,
12
+ value: 0n,
13
+ protocol: parameters.protocol
14
+ }));
15
+ const encodedIntent = (parameters) => makeWriteIntent(parameters.operation, parameters, prepareEncoded);
16
+ const encode = (operation, thunk) => Effect.try({
17
+ try: thunk,
18
+ catch: (cause) => new ContractError({
19
+ code: "ENCODE_FAILED",
20
+ message: `Unable to encode ${operation}`,
21
+ cause
22
+ })
23
+ });
24
+ const v1CreateSubnameIntent = Effect.fn("ensforge.v1CreateSubnameIntent")(function* (parameters) {
25
+ const data = yield* encode("the V1 subname creation", () => parameters.parentWrapped ? encodeFunctionData({
26
+ abi: nameWrapperV1SetSubnodeRecordAbi,
27
+ functionName: "setSubnodeRecord",
28
+ args: [
29
+ parameters.parentNode,
30
+ parameters.label,
31
+ parameters.owner,
32
+ parameters.resolver,
33
+ parameters.ttl,
34
+ parameters.fuses,
35
+ parameters.expiry
36
+ ]
37
+ }) : encodeFunctionData({
38
+ abi: ensRegistryV1SetSubnodeRecordAbi,
39
+ functionName: "setSubnodeRecord",
40
+ args: [
41
+ parameters.parentNode,
42
+ parameters.labelhash,
43
+ parameters.owner,
44
+ parameters.resolver,
45
+ parameters.ttl
46
+ ]
47
+ }));
48
+ return encodedIntent({
49
+ operation: "createSubname",
50
+ protocol: "v1",
51
+ to: parameters.parentWrapped ? parameters.wrapper : parameters.registry,
52
+ data
53
+ });
54
+ });
55
+ const deployUserRegistryIntent = Effect.fn("ensforge.deployUserRegistryIntent")(function* (parameters) {
56
+ const initializeAbi = [{
57
+ type: "function",
58
+ name: "initialize",
59
+ stateMutability: "nonpayable",
60
+ inputs: [{
61
+ name: "grants",
62
+ type: "tuple[]",
63
+ components: [{
64
+ name: "account",
65
+ type: "address"
66
+ }, {
67
+ name: "roleBitmap",
68
+ type: "uint256"
69
+ }]
70
+ }],
71
+ outputs: []
72
+ }];
73
+ const data = yield* encode("the ENSv2 User Registry deployment", () => {
74
+ const initialization = encodeFunctionData({
75
+ abi: initializeAbi,
76
+ functionName: "initialize",
77
+ args: [[{
78
+ account: parameters.owner,
79
+ roleBitmap: parameters.roles
80
+ }]]
81
+ });
82
+ return encodeFunctionData({
83
+ abi: verifiableFactoryV2DeployProxyAbi,
84
+ functionName: "deployProxy",
85
+ args: [
86
+ parameters.implementation,
87
+ parameters.salt,
88
+ initialization
89
+ ]
90
+ });
91
+ });
92
+ return encodedIntent({
93
+ operation: "createSubregistry",
94
+ protocol: "v2",
95
+ to: parameters.factory,
96
+ data
97
+ });
98
+ });
99
+ const setRegistryParentIntent = Effect.fn("ensforge.setRegistryParentIntent")(function* (parameters) {
100
+ const data = yield* encode("the ENSv2 registry parent update", () => encodeFunctionData({
101
+ abi: userRegistryV2SetParentAbi,
102
+ functionName: "setParent",
103
+ args: [parameters.parentRegistry, parameters.parentLabel]
104
+ }));
105
+ return encodedIntent({
106
+ operation: "setSubregistryParent",
107
+ protocol: "v2",
108
+ to: parameters.registry,
109
+ data
110
+ });
111
+ });
112
+ const attachSubregistryIntent = Effect.fn("ensforge.attachSubregistryIntent")(function* (parameters) {
113
+ const data = yield* encode("the ENSv2 subregistry attachment", () => encodeFunctionData({
114
+ abi: permissionedRegistryV2InterfaceSetSubregistryAbi,
115
+ functionName: "setSubregistry",
116
+ args: [parameters.parentTokenId, parameters.subregistry]
117
+ }));
118
+ return encodedIntent({
119
+ operation: "attachSubregistry",
120
+ protocol: "v2",
121
+ to: parameters.parentRegistry,
122
+ data
123
+ });
124
+ });
125
+ const registerV2SubnameIntent = Effect.fn("ensforge.registerV2SubnameIntent")(function* (parameters) {
126
+ const data = yield* encode("the ENSv2 subname registration", () => encodeFunctionData({
127
+ abi: permissionedRegistryV2InterfaceRegisterAbi,
128
+ functionName: "register",
129
+ args: [
130
+ parameters.label,
131
+ parameters.owner,
132
+ "0x0000000000000000000000000000000000000000",
133
+ parameters.resolver,
134
+ parameters.roles,
135
+ parameters.expiry
136
+ ]
137
+ }));
138
+ return encodedIntent({
139
+ operation: "createSubname",
140
+ protocol: "v2",
141
+ to: parameters.registry,
142
+ data
143
+ });
144
+ });
145
+
146
+ //#endregion
147
+ export { attachSubregistryIntent, deployUserRegistryIntent, registerV2SubnameIntent, setRegistryParentIntent, v1CreateSubnameIntent };
148
+ //# sourceMappingURL=intents.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"intents.js","names":[],"sources":["../../../src/actions/subnames/intents.ts"],"sourcesContent":["import { Effect } from \"effect\";\n\nimport {\n ensRegistryV1SetSubnodeRecordAbi,\n nameWrapperV1SetSubnodeRecordAbi,\n} from \"@ensforge/contracts/v1\";\nimport {\n permissionedRegistryV2InterfaceRegisterAbi,\n permissionedRegistryV2InterfaceSetSubregistryAbi,\n userRegistryV2SetParentAbi,\n verifiableFactoryV2DeployProxyAbi,\n} from \"@ensforge/contracts/v2\";\nimport { encodeFunctionData } from \"viem\";\n\nimport { makeWriteIntent, type EnsWriteIntentPreparer } from \"../../action/write-intent.js\";\nimport { ContractError } from \"../../errors/contract-error.js\";\nimport type { EthereumAddress } from \"../../schemas/identity.js\";\nimport type { EnsProtocol } from \"../../schemas/protocol.js\";\nimport type { CallExecutionResult, WriteError } from \"../../write/types.js\";\n\ninterface EncodedIntentParameters {\n readonly operation: string;\n readonly protocol: EnsProtocol;\n readonly to: EthereumAddress;\n readonly data: `0x${string}`;\n}\n\nconst prepareEncoded: EnsWriteIntentPreparer<EncodedIntentParameters, WriteError> = Effect.fn(\n \"ensforge.subname.prepareEncoded\",\n)((_config, parameters) =>\n Effect.succeed({\n to: parameters.to,\n data: parameters.data,\n value: 0n,\n protocol: parameters.protocol,\n }),\n);\n\nconst encodedIntent = (parameters: EncodedIntentParameters) =>\n makeWriteIntent<EncodedIntentParameters, CallExecutionResult, WriteError>(\n parameters.operation,\n parameters,\n prepareEncoded,\n );\n\nconst encode = (operation: string, thunk: () => `0x${string}`) =>\n Effect.try({\n try: thunk,\n catch: (cause) =>\n new ContractError({\n code: \"ENCODE_FAILED\",\n message: `Unable to encode ${operation}`,\n cause,\n }),\n });\n\nexport const v1CreateSubnameIntent = Effect.fn(\"ensforge.v1CreateSubnameIntent\")(\n function* (parameters: {\n readonly registry: EthereumAddress;\n readonly wrapper: EthereumAddress;\n readonly parentWrapped: boolean;\n readonly parentNode: `0x${string}`;\n readonly label: string;\n readonly labelhash: `0x${string}`;\n readonly owner: EthereumAddress;\n readonly resolver: EthereumAddress;\n readonly ttl: bigint;\n readonly fuses: number;\n readonly expiry: bigint;\n }) {\n const data = yield* encode(\"the V1 subname creation\", () =>\n parameters.parentWrapped\n ? encodeFunctionData({\n abi: nameWrapperV1SetSubnodeRecordAbi,\n functionName: \"setSubnodeRecord\",\n args: [\n parameters.parentNode,\n parameters.label,\n parameters.owner,\n parameters.resolver,\n parameters.ttl,\n parameters.fuses,\n parameters.expiry,\n ],\n })\n : encodeFunctionData({\n abi: ensRegistryV1SetSubnodeRecordAbi,\n functionName: \"setSubnodeRecord\",\n args: [\n parameters.parentNode,\n parameters.labelhash,\n parameters.owner,\n parameters.resolver,\n parameters.ttl,\n ],\n }),\n );\n return encodedIntent({\n operation: \"createSubname\",\n protocol: \"v1\",\n to: parameters.parentWrapped ? parameters.wrapper : parameters.registry,\n data,\n });\n },\n);\n\nexport const deployUserRegistryIntent = Effect.fn(\"ensforge.deployUserRegistryIntent\")(\n function* (parameters: {\n readonly factory: EthereumAddress;\n readonly implementation: EthereumAddress;\n readonly owner: EthereumAddress;\n readonly roles: bigint;\n readonly salt: bigint;\n }) {\n const initializeAbi = [\n {\n type: \"function\",\n name: \"initialize\",\n stateMutability: \"nonpayable\",\n inputs: [\n {\n name: \"grants\",\n type: \"tuple[]\",\n components: [\n { name: \"account\", type: \"address\" },\n { name: \"roleBitmap\", type: \"uint256\" },\n ],\n },\n ],\n outputs: [],\n },\n ] as const;\n const data = yield* encode(\"the ENSv2 User Registry deployment\", () => {\n const initialization = encodeFunctionData({\n abi: initializeAbi,\n functionName: \"initialize\",\n args: [[{ account: parameters.owner, roleBitmap: parameters.roles }]],\n });\n return encodeFunctionData({\n abi: verifiableFactoryV2DeployProxyAbi,\n functionName: \"deployProxy\",\n args: [parameters.implementation, parameters.salt, initialization],\n });\n });\n return encodedIntent({\n operation: \"createSubregistry\",\n protocol: \"v2\",\n to: parameters.factory,\n data,\n });\n },\n);\n\nexport const setRegistryParentIntent = Effect.fn(\"ensforge.setRegistryParentIntent\")(\n function* (parameters: {\n readonly registry: EthereumAddress;\n readonly parentRegistry: EthereumAddress;\n readonly parentLabel: string;\n }) {\n const data = yield* encode(\"the ENSv2 registry parent update\", () =>\n encodeFunctionData({\n abi: userRegistryV2SetParentAbi,\n functionName: \"setParent\",\n args: [parameters.parentRegistry, parameters.parentLabel],\n }),\n );\n return encodedIntent({\n operation: \"setSubregistryParent\",\n protocol: \"v2\",\n to: parameters.registry,\n data,\n });\n },\n);\n\nexport const attachSubregistryIntent = Effect.fn(\"ensforge.attachSubregistryIntent\")(\n function* (parameters: {\n readonly parentRegistry: EthereumAddress;\n readonly parentTokenId: bigint;\n readonly subregistry: EthereumAddress;\n }) {\n const data = yield* encode(\"the ENSv2 subregistry attachment\", () =>\n encodeFunctionData({\n abi: permissionedRegistryV2InterfaceSetSubregistryAbi,\n functionName: \"setSubregistry\",\n args: [parameters.parentTokenId, parameters.subregistry],\n }),\n );\n return encodedIntent({\n operation: \"attachSubregistry\",\n protocol: \"v2\",\n to: parameters.parentRegistry,\n data,\n });\n },\n);\n\nexport const registerV2SubnameIntent = Effect.fn(\"ensforge.registerV2SubnameIntent\")(\n function* (parameters: {\n readonly registry: EthereumAddress;\n readonly label: string;\n readonly owner: EthereumAddress;\n readonly resolver: EthereumAddress;\n readonly roles: bigint;\n readonly expiry: bigint;\n }) {\n const data = yield* encode(\"the ENSv2 subname registration\", () =>\n encodeFunctionData({\n abi: permissionedRegistryV2InterfaceRegisterAbi,\n functionName: \"register\",\n args: [\n parameters.label,\n parameters.owner,\n \"0x0000000000000000000000000000000000000000\",\n parameters.resolver,\n parameters.roles,\n parameters.expiry,\n ],\n }),\n );\n return encodedIntent({\n operation: \"createSubname\",\n protocol: \"v2\",\n to: parameters.registry,\n data,\n });\n },\n);\n"],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import { CallExecutionResult, WriteError } from "../../write/types.js";
2
+ import { EnsWriteAction } from "../../action/write-intent.js";
3
+ import { SetSubnameExpiryParameters, SetSubnameManagerParameters, SetSubnameResolverParameters, SubnameParameters } from "./types.js";
4
+ import "../../index.js";
5
+ //#region src/actions/subnames/mutation.d.ts
6
+ declare const deleteSubname: EnsWriteAction<SubnameParameters, CallExecutionResult, WriteError>;
7
+ declare const setSubnameManager: EnsWriteAction<SetSubnameManagerParameters, CallExecutionResult, WriteError>;
8
+ declare const setSubnameResolver: EnsWriteAction<SetSubnameResolverParameters, CallExecutionResult, WriteError>;
9
+ declare const setSubnameExpiry: EnsWriteAction<SetSubnameExpiryParameters, CallExecutionResult, WriteError>;
10
+ //#endregion
11
+ export { deleteSubname, setSubnameExpiry, setSubnameManager, setSubnameResolver };
12
+ //# sourceMappingURL=mutation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mutation.d.ts","names":[],"sources":["../../../src/actions/subnames/mutation.ts"],"mappings":";;;;;cA8Pa,eAAa,eAAA,mBAAA,qBAAA;cACb,mBAAiB,eAAA,6BAAA,qBAAA;cACjB,oBAAkB,eAAA,8BAAA,qBAAA;cAClB,kBAAgB,eAAA,4BAAA,qBAAA"}
@@ -0,0 +1,214 @@
1
+ import { ContractError } from "../../errors/contract-error.js";
2
+ import { makeSingleWriteAction } from "../../internal/write/single-write-action.js";
3
+ import { decodeOwnershipAddress } from "../ownership/address.js";
4
+ import { AuthorizationError } from "../../errors/authorization-error.js";
5
+ import { resolveSubnameRoute } from "./route.js";
6
+ import { Effect } from "effect";
7
+ import { encodeFunctionData, zeroAddress } from "viem";
8
+ import { ensRegistryV1SetResolverAbi, ensRegistryV1SetSubnodeOwnerAbi, nameWrapperV1ExtendExpiryAbi, nameWrapperV1SetResolverAbi, nameWrapperV1SetSubnodeOwnerAbi } from "@ensforge/contracts/v1";
9
+ import { permissionedRegistryV2InterfaceRenewAbi, permissionedRegistryV2InterfaceSafeTransferFromAbi, permissionedRegistryV2InterfaceSetResolverAbi, permissionedRegistryV2InterfaceUnregisterAbi } from "@ensforge/contracts/v2";
10
+
11
+ //#region src/actions/subnames/mutation.ts
12
+ const encoded = (operation, thunk) => Effect.try({
13
+ try: thunk,
14
+ catch: (cause) => new ContractError({
15
+ code: "ENCODE_FAILED",
16
+ message: `Unable to encode ${operation}`,
17
+ cause
18
+ })
19
+ });
20
+ const requireV2Child = (route) => {
21
+ if (route.subregistry === null || route.childState === null || route.childState.status !== 2) return new AuthorizationError({
22
+ code: "WRITE_TARGET_UNAVAILABLE",
23
+ message: `Registered subname state is unavailable for ${route.name}`
24
+ });
25
+ return null;
26
+ };
27
+ const deletePreparer = Effect.fn("ensforge.deleteSubname.prepare")(function* (config, parameters) {
28
+ const route = yield* resolveSubnameRoute(config, parameters.name);
29
+ if (route.protocol === "v1") {
30
+ const data = yield* encoded("deleteSubname", () => route.parentWrapped ? encodeFunctionData({
31
+ abi: nameWrapperV1SetSubnodeOwnerAbi,
32
+ functionName: "setSubnodeOwner",
33
+ args: [
34
+ route.parentNode,
35
+ route.label,
36
+ zeroAddress,
37
+ 0,
38
+ route.childExpiry
39
+ ]
40
+ }) : encodeFunctionData({
41
+ abi: ensRegistryV1SetSubnodeOwnerAbi,
42
+ functionName: "setSubnodeOwner",
43
+ args: [
44
+ route.parentNode,
45
+ route.labelhash,
46
+ zeroAddress
47
+ ]
48
+ }));
49
+ return {
50
+ to: route.parentWrapped ? route.deployment.contracts.nameWrapper : route.deployment.contracts.registry,
51
+ data,
52
+ value: 0n,
53
+ protocol: "v1"
54
+ };
55
+ }
56
+ const unavailable = requireV2Child(route);
57
+ if (unavailable !== null || route.subregistry === null || route.childState === null) return yield* unavailable ?? new AuthorizationError({
58
+ code: "WRITE_TARGET_UNAVAILABLE",
59
+ message: `Registered subname state is unavailable for ${route.name}`
60
+ });
61
+ const childState = route.childState;
62
+ return {
63
+ to: route.subregistry,
64
+ data: yield* encoded("deleteSubname", () => encodeFunctionData({
65
+ abi: permissionedRegistryV2InterfaceUnregisterAbi,
66
+ functionName: "unregister",
67
+ args: [childState.tokenId]
68
+ })),
69
+ value: 0n,
70
+ protocol: "v2"
71
+ };
72
+ });
73
+ const managerPreparer = Effect.fn("ensforge.setSubnameManager.prepare")(function* (config, parameters) {
74
+ const route = yield* resolveSubnameRoute(config, parameters.name);
75
+ const manager = yield* decodeOwnershipAddress(parameters.manager, "subname manager");
76
+ if (route.protocol === "v1") {
77
+ const data = yield* encoded("setSubnameManager", () => route.parentWrapped ? encodeFunctionData({
78
+ abi: nameWrapperV1SetSubnodeOwnerAbi,
79
+ functionName: "setSubnodeOwner",
80
+ args: [
81
+ route.parentNode,
82
+ route.label,
83
+ manager,
84
+ 0,
85
+ route.childExpiry
86
+ ]
87
+ }) : encodeFunctionData({
88
+ abi: ensRegistryV1SetSubnodeOwnerAbi,
89
+ functionName: "setSubnodeOwner",
90
+ args: [
91
+ route.parentNode,
92
+ route.labelhash,
93
+ manager
94
+ ]
95
+ }));
96
+ return {
97
+ to: route.parentWrapped ? route.deployment.contracts.nameWrapper : route.deployment.contracts.registry,
98
+ data,
99
+ value: 0n,
100
+ protocol: "v1"
101
+ };
102
+ }
103
+ const unavailable = requireV2Child(route);
104
+ if (unavailable !== null || route.subregistry === null || route.childState === null) return yield* unavailable ?? new AuthorizationError({
105
+ code: "WRITE_TARGET_UNAVAILABLE",
106
+ message: `Registered subname state is unavailable for ${route.name}`
107
+ });
108
+ const childState = route.childState;
109
+ return {
110
+ to: route.subregistry,
111
+ data: yield* encoded("setSubnameManager", () => encodeFunctionData({
112
+ abi: permissionedRegistryV2InterfaceSafeTransferFromAbi,
113
+ functionName: "safeTransferFrom",
114
+ args: [
115
+ childState.latestOwner,
116
+ manager,
117
+ childState.tokenId,
118
+ 1n,
119
+ "0x"
120
+ ]
121
+ })),
122
+ value: 0n,
123
+ protocol: "v2"
124
+ };
125
+ });
126
+ const resolverPreparer = Effect.fn("ensforge.setSubnameResolver.prepare")(function* (config, parameters) {
127
+ const route = yield* resolveSubnameRoute(config, parameters.name);
128
+ const resolver = yield* decodeOwnershipAddress(parameters.resolver, "subname resolver");
129
+ if (route.protocol === "v1") {
130
+ const data = yield* encoded("setSubnameResolver", () => route.childWrapped ? encodeFunctionData({
131
+ abi: nameWrapperV1SetResolverAbi,
132
+ functionName: "setResolver",
133
+ args: [route.node, resolver]
134
+ }) : encodeFunctionData({
135
+ abi: ensRegistryV1SetResolverAbi,
136
+ functionName: "setResolver",
137
+ args: [route.node, resolver]
138
+ }));
139
+ return {
140
+ to: route.childWrapped ? route.deployment.contracts.nameWrapper : route.deployment.contracts.registry,
141
+ data,
142
+ value: 0n,
143
+ protocol: "v1"
144
+ };
145
+ }
146
+ const unavailable = requireV2Child(route);
147
+ if (unavailable !== null || route.subregistry === null || route.childState === null) return yield* unavailable ?? new AuthorizationError({
148
+ code: "WRITE_TARGET_UNAVAILABLE",
149
+ message: `Registered subname state is unavailable for ${route.name}`
150
+ });
151
+ const childState = route.childState;
152
+ return {
153
+ to: route.subregistry,
154
+ data: yield* encoded("setSubnameResolver", () => encodeFunctionData({
155
+ abi: permissionedRegistryV2InterfaceSetResolverAbi,
156
+ functionName: "setResolver",
157
+ args: [childState.tokenId, resolver]
158
+ })),
159
+ value: 0n,
160
+ protocol: "v2"
161
+ };
162
+ });
163
+ const expiryPreparer = Effect.fn("ensforge.setSubnameExpiry.prepare")(function* (config, parameters) {
164
+ const route = yield* resolveSubnameRoute(config, parameters.name);
165
+ if (parameters.expiry > route.parentExpiry && route.parentExpiry !== 0n) return yield* new AuthorizationError({
166
+ code: "WRITE_TARGET_UNAVAILABLE",
167
+ message: `Subname expiry cannot exceed the parent expiry for ${route.name}`
168
+ });
169
+ if (route.protocol === "v1") {
170
+ if (!route.childWrapped) return yield* new AuthorizationError({
171
+ code: "WRITE_TARGET_UNAVAILABLE",
172
+ message: `Expiry is unavailable for unwrapped V1 subname ${route.name}`
173
+ });
174
+ const data = yield* encoded("setSubnameExpiry", () => encodeFunctionData({
175
+ abi: nameWrapperV1ExtendExpiryAbi,
176
+ functionName: "extendExpiry",
177
+ args: [
178
+ route.parentNode,
179
+ route.labelhash,
180
+ parameters.expiry
181
+ ]
182
+ }));
183
+ return {
184
+ to: route.deployment.contracts.nameWrapper,
185
+ data,
186
+ value: 0n,
187
+ protocol: "v1"
188
+ };
189
+ }
190
+ const unavailable = requireV2Child(route);
191
+ if (unavailable !== null || route.subregistry === null || route.childState === null) return yield* unavailable ?? new AuthorizationError({
192
+ code: "WRITE_TARGET_UNAVAILABLE",
193
+ message: `Registered subname state is unavailable for ${route.name}`
194
+ });
195
+ const childState = route.childState;
196
+ return {
197
+ to: route.subregistry,
198
+ data: yield* encoded("setSubnameExpiry", () => encodeFunctionData({
199
+ abi: permissionedRegistryV2InterfaceRenewAbi,
200
+ functionName: "renew",
201
+ args: [childState.tokenId, parameters.expiry]
202
+ })),
203
+ value: 0n,
204
+ protocol: "v2"
205
+ };
206
+ });
207
+ const deleteSubname = makeSingleWriteAction("deleteSubname", deletePreparer);
208
+ const setSubnameManager = makeSingleWriteAction("setSubnameManager", managerPreparer);
209
+ const setSubnameResolver = makeSingleWriteAction("setSubnameResolver", resolverPreparer);
210
+ const setSubnameExpiry = makeSingleWriteAction("setSubnameExpiry", expiryPreparer);
211
+
212
+ //#endregion
213
+ export { deleteSubname, setSubnameExpiry, setSubnameManager, setSubnameResolver };
214
+ //# sourceMappingURL=mutation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mutation.js","names":[],"sources":["../../../src/actions/subnames/mutation.ts"],"sourcesContent":["import { Effect } from \"effect\";\n\nimport {\n ensRegistryV1SetResolverAbi,\n ensRegistryV1SetSubnodeOwnerAbi,\n nameWrapperV1ExtendExpiryAbi,\n nameWrapperV1SetResolverAbi,\n nameWrapperV1SetSubnodeOwnerAbi,\n} from \"@ensforge/contracts/v1\";\nimport {\n permissionedRegistryV2InterfaceRenewAbi,\n permissionedRegistryV2InterfaceSafeTransferFromAbi,\n permissionedRegistryV2InterfaceSetResolverAbi,\n permissionedRegistryV2InterfaceUnregisterAbi,\n} from \"@ensforge/contracts/v2\";\nimport { encodeFunctionData, zeroAddress } from \"viem\";\n\nimport type { EnsWriteIntentPreparer } from \"../../action/write-intent.js\";\nimport { AuthorizationError } from \"../../errors/authorization-error.js\";\nimport { ContractError } from \"../../errors/contract-error.js\";\nimport { makeSingleWriteAction } from \"../../internal/write/single-write-action.js\";\nimport type { WriteError } from \"../../write/types.js\";\nimport { decodeOwnershipAddress } from \"../ownership/address.js\";\nimport { resolveSubnameRoute } from \"./route.js\";\nimport type { V2SubnameRoute } from \"./route.js\";\nimport type {\n SetSubnameExpiryParameters,\n SetSubnameManagerParameters,\n SetSubnameResolverParameters,\n SubnameParameters,\n} from \"./types.js\";\n\nconst encoded = (operation: string, thunk: () => `0x${string}`) =>\n Effect.try({\n try: thunk,\n catch: (cause) =>\n new ContractError({\n code: \"ENCODE_FAILED\",\n message: `Unable to encode ${operation}`,\n cause,\n }),\n });\n\nconst requireV2Child = (route: V2SubnameRoute) => {\n if (route.subregistry === null || route.childState === null || route.childState.status !== 2) {\n return new AuthorizationError({\n code: \"WRITE_TARGET_UNAVAILABLE\",\n message: `Registered subname state is unavailable for ${route.name}`,\n });\n }\n return null;\n};\n\nconst deletePreparer: EnsWriteIntentPreparer<SubnameParameters, WriteError> = Effect.fn(\n \"ensforge.deleteSubname.prepare\",\n)(function* (config, parameters) {\n const route = yield* resolveSubnameRoute(config, parameters.name);\n if (route.protocol === \"v1\") {\n const data = yield* encoded(\"deleteSubname\", () =>\n route.parentWrapped\n ? encodeFunctionData({\n abi: nameWrapperV1SetSubnodeOwnerAbi,\n functionName: \"setSubnodeOwner\",\n args: [route.parentNode, route.label, zeroAddress, 0, route.childExpiry],\n })\n : encodeFunctionData({\n abi: ensRegistryV1SetSubnodeOwnerAbi,\n functionName: \"setSubnodeOwner\",\n args: [route.parentNode, route.labelhash, zeroAddress],\n }),\n );\n return {\n to: route.parentWrapped\n ? route.deployment.contracts.nameWrapper\n : route.deployment.contracts.registry,\n data,\n value: 0n,\n protocol: \"v1\" as const,\n };\n }\n const unavailable = requireV2Child(route);\n if (unavailable !== null || route.subregistry === null || route.childState === null) {\n return yield* (\n unavailable ??\n new AuthorizationError({\n code: \"WRITE_TARGET_UNAVAILABLE\",\n message: `Registered subname state is unavailable for ${route.name}`,\n })\n );\n }\n const childState = route.childState;\n const subregistry = route.subregistry;\n const data = yield* encoded(\"deleteSubname\", () =>\n encodeFunctionData({\n abi: permissionedRegistryV2InterfaceUnregisterAbi,\n functionName: \"unregister\",\n args: [childState.tokenId],\n }),\n );\n return { to: subregistry, data, value: 0n, protocol: \"v2\" as const };\n});\n\nconst managerPreparer: EnsWriteIntentPreparer<SetSubnameManagerParameters, WriteError> = Effect.fn(\n \"ensforge.setSubnameManager.prepare\",\n)(function* (config, parameters) {\n const route = yield* resolveSubnameRoute(config, parameters.name);\n const manager = yield* decodeOwnershipAddress(parameters.manager, \"subname manager\");\n if (route.protocol === \"v1\") {\n const data = yield* encoded(\"setSubnameManager\", () =>\n route.parentWrapped\n ? encodeFunctionData({\n abi: nameWrapperV1SetSubnodeOwnerAbi,\n functionName: \"setSubnodeOwner\",\n args: [route.parentNode, route.label, manager, 0, route.childExpiry],\n })\n : encodeFunctionData({\n abi: ensRegistryV1SetSubnodeOwnerAbi,\n functionName: \"setSubnodeOwner\",\n args: [route.parentNode, route.labelhash, manager],\n }),\n );\n return {\n to: route.parentWrapped\n ? route.deployment.contracts.nameWrapper\n : route.deployment.contracts.registry,\n data,\n value: 0n,\n protocol: \"v1\" as const,\n };\n }\n const unavailable = requireV2Child(route);\n if (unavailable !== null || route.subregistry === null || route.childState === null) {\n return yield* (\n unavailable ??\n new AuthorizationError({\n code: \"WRITE_TARGET_UNAVAILABLE\",\n message: `Registered subname state is unavailable for ${route.name}`,\n })\n );\n }\n const childState = route.childState;\n const subregistry = route.subregistry;\n const data = yield* encoded(\"setSubnameManager\", () =>\n encodeFunctionData({\n abi: permissionedRegistryV2InterfaceSafeTransferFromAbi,\n functionName: \"safeTransferFrom\",\n args: [childState.latestOwner, manager, childState.tokenId, 1n, \"0x\"],\n }),\n );\n return { to: subregistry, data, value: 0n, protocol: \"v2\" as const };\n});\n\nconst resolverPreparer: EnsWriteIntentPreparer<SetSubnameResolverParameters, WriteError> =\n Effect.fn(\"ensforge.setSubnameResolver.prepare\")(function* (config, parameters) {\n const route = yield* resolveSubnameRoute(config, parameters.name);\n const resolver = yield* decodeOwnershipAddress(parameters.resolver, \"subname resolver\");\n if (route.protocol === \"v1\") {\n const data = yield* encoded(\"setSubnameResolver\", () =>\n route.childWrapped\n ? encodeFunctionData({\n abi: nameWrapperV1SetResolverAbi,\n functionName: \"setResolver\",\n args: [route.node, resolver],\n })\n : encodeFunctionData({\n abi: ensRegistryV1SetResolverAbi,\n functionName: \"setResolver\",\n args: [route.node, resolver],\n }),\n );\n return {\n to: route.childWrapped\n ? route.deployment.contracts.nameWrapper\n : route.deployment.contracts.registry,\n data,\n value: 0n,\n protocol: \"v1\" as const,\n };\n }\n const unavailable = requireV2Child(route);\n if (unavailable !== null || route.subregistry === null || route.childState === null) {\n return yield* (\n unavailable ??\n new AuthorizationError({\n code: \"WRITE_TARGET_UNAVAILABLE\",\n message: `Registered subname state is unavailable for ${route.name}`,\n })\n );\n }\n const childState = route.childState;\n const subregistry = route.subregistry;\n const data = yield* encoded(\"setSubnameResolver\", () =>\n encodeFunctionData({\n abi: permissionedRegistryV2InterfaceSetResolverAbi,\n functionName: \"setResolver\",\n args: [childState.tokenId, resolver],\n }),\n );\n return { to: subregistry, data, value: 0n, protocol: \"v2\" as const };\n });\n\nconst expiryPreparer: EnsWriteIntentPreparer<SetSubnameExpiryParameters, WriteError> = Effect.fn(\n \"ensforge.setSubnameExpiry.prepare\",\n)(function* (config, parameters) {\n const route = yield* resolveSubnameRoute(config, parameters.name);\n if (parameters.expiry > route.parentExpiry && route.parentExpiry !== 0n) {\n return yield* new AuthorizationError({\n code: \"WRITE_TARGET_UNAVAILABLE\",\n message: `Subname expiry cannot exceed the parent expiry for ${route.name}`,\n });\n }\n if (route.protocol === \"v1\") {\n if (!route.childWrapped) {\n return yield* new AuthorizationError({\n code: \"WRITE_TARGET_UNAVAILABLE\",\n message: `Expiry is unavailable for unwrapped V1 subname ${route.name}`,\n });\n }\n const data = yield* encoded(\"setSubnameExpiry\", () =>\n encodeFunctionData({\n abi: nameWrapperV1ExtendExpiryAbi,\n functionName: \"extendExpiry\",\n args: [route.parentNode, route.labelhash, parameters.expiry],\n }),\n );\n return {\n to: route.deployment.contracts.nameWrapper,\n data,\n value: 0n,\n protocol: \"v1\" as const,\n };\n }\n const unavailable = requireV2Child(route);\n if (unavailable !== null || route.subregistry === null || route.childState === null) {\n return yield* (\n unavailable ??\n new AuthorizationError({\n code: \"WRITE_TARGET_UNAVAILABLE\",\n message: `Registered subname state is unavailable for ${route.name}`,\n })\n );\n }\n const childState = route.childState;\n const subregistry = route.subregistry;\n const data = yield* encoded(\"setSubnameExpiry\", () =>\n encodeFunctionData({\n abi: permissionedRegistryV2InterfaceRenewAbi,\n functionName: \"renew\",\n args: [childState.tokenId, parameters.expiry],\n }),\n );\n return { to: subregistry, data, value: 0n, protocol: \"v2\" as const };\n});\n\nexport const deleteSubname = makeSingleWriteAction(\"deleteSubname\", deletePreparer);\nexport const setSubnameManager = makeSingleWriteAction(\"setSubnameManager\", managerPreparer);\nexport const setSubnameResolver = makeSingleWriteAction(\"setSubnameResolver\", resolverPreparer);\nexport const setSubnameExpiry = makeSingleWriteAction(\"setSubnameExpiry\", expiryPreparer);\n"],"mappings":"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"}
@@ -0,0 +1,105 @@
1
+ import { executeRead } from "../../internal/read/execute-read.js";
2
+ import { NameError } from "../../errors/name-error.js";
3
+ import { normalizeName } from "../../names/normalize.js";
4
+ import { EthereumClient } from "../../internal/client/ethereum-client.js";
5
+ import { labelhash, namehash } from "../../names/hashes.js";
6
+ import { analyzeName } from "../../names/analyze.js";
7
+ import { readNameRoute } from "../../internal/name/name-route.js";
8
+ import { Effect } from "effect";
9
+ import { zeroAddress } from "viem";
10
+ import { nameWrapperV1GetDataAbi, nameWrapperV1IsWrappedAbi } from "@ensforge/contracts/v1";
11
+ import { permissionedRegistryV2InterfaceGetStateAbi, permissionedRegistryV2InterfaceGetSubregistryAbi } from "@ensforge/contracts/v2";
12
+
13
+ //#region src/actions/subnames/route.ts
14
+ const resolveSubnameRoute = Effect.fn("ensforge.resolveSubnameRoute")(function* (config, input) {
15
+ const name = yield* normalizeName.effect(input);
16
+ const analysis = analyzeName(name);
17
+ if (analysis.kind !== "subname" || analysis.parent === void 0 || analysis.label === void 0) return yield* new NameError({
18
+ code: "INVALID_NAME",
19
+ message: `${name} is not a subname`
20
+ });
21
+ const parent = analysis.parent;
22
+ const label = analysis.label;
23
+ return yield* executeRead(config, {}, Effect.gen(function* () {
24
+ const ethereum = yield* EthereumClient;
25
+ const parentRoute = yield* readNameRoute(parent);
26
+ const shared = {
27
+ name,
28
+ parent,
29
+ label,
30
+ node: namehash(name),
31
+ parentNode: namehash(parent),
32
+ labelhash: labelhash(label)
33
+ };
34
+ if (parentRoute.kind === "v1" || parentRoute.kind === "reserved") {
35
+ const deployment = parentRoute.kind === "reserved" ? parentRoute.v1 : parentRoute.deployment;
36
+ const [parentWrapped, childWrapped, parentData, childData] = yield* Effect.all([
37
+ ethereum.readContract({
38
+ address: deployment.contracts.nameWrapper,
39
+ abi: nameWrapperV1IsWrappedAbi,
40
+ functionName: "isWrapped",
41
+ args: [shared.parentNode]
42
+ }),
43
+ ethereum.readContract({
44
+ address: deployment.contracts.nameWrapper,
45
+ abi: nameWrapperV1IsWrappedAbi,
46
+ functionName: "isWrapped",
47
+ args: [shared.node]
48
+ }),
49
+ ethereum.readContract({
50
+ address: deployment.contracts.nameWrapper,
51
+ abi: nameWrapperV1GetDataAbi,
52
+ functionName: "getData",
53
+ args: [BigInt(shared.parentNode)]
54
+ }),
55
+ ethereum.readContract({
56
+ address: deployment.contracts.nameWrapper,
57
+ abi: nameWrapperV1GetDataAbi,
58
+ functionName: "getData",
59
+ args: [BigInt(shared.node)]
60
+ })
61
+ ], { concurrency: "unbounded" });
62
+ return {
63
+ ...shared,
64
+ protocol: "v1",
65
+ deployment,
66
+ parentWrapped,
67
+ parentExpiry: parentData[2],
68
+ childWrapped,
69
+ childFuses: childData[1],
70
+ childExpiry: childData[2]
71
+ };
72
+ }
73
+ if (parentRoute.kind === "available") return yield* new NameError({
74
+ code: "INVALID_NAME",
75
+ message: `Parent ${parent} is not registered`
76
+ });
77
+ const subregistryAddress = yield* ethereum.readContract({
78
+ address: parentRoute.parentRegistry,
79
+ abi: permissionedRegistryV2InterfaceGetSubregistryAbi,
80
+ functionName: "getSubregistry",
81
+ args: [parentRoute.label]
82
+ });
83
+ const subregistry = subregistryAddress === zeroAddress ? null : subregistryAddress;
84
+ const childState = subregistry === null ? null : yield* ethereum.readContract({
85
+ address: subregistry,
86
+ abi: permissionedRegistryV2InterfaceGetStateAbi,
87
+ functionName: "getState",
88
+ args: [BigInt(shared.labelhash)]
89
+ });
90
+ return {
91
+ ...shared,
92
+ protocol: "v2",
93
+ deployment: parentRoute.deployment,
94
+ parentRegistry: parentRoute.parentRegistry,
95
+ parentTokenId: parentRoute.state.tokenId,
96
+ parentExpiry: parentRoute.state.expiry,
97
+ subregistry,
98
+ childState
99
+ };
100
+ }));
101
+ });
102
+
103
+ //#endregion
104
+ export { resolveSubnameRoute };
105
+ //# sourceMappingURL=route.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"route.js","names":[],"sources":["../../../src/actions/subnames/route.ts"],"sourcesContent":["import { Effect } from \"effect\";\n\nimport type { EnsV1Deployment, EnsV2Deployment } from \"@ensforge/contracts/deployments\";\nimport { nameWrapperV1GetDataAbi, nameWrapperV1IsWrappedAbi } from \"@ensforge/contracts/v1\";\nimport {\n permissionedRegistryV2InterfaceGetStateAbi,\n permissionedRegistryV2InterfaceGetSubregistryAbi,\n} from \"@ensforge/contracts/v2\";\nimport { zeroAddress } from \"viem\";\n\nimport type { EnsforgeConfig } from \"../../config/config.js\";\nimport { NameError } from \"../../errors/name-error.js\";\nimport { EthereumClient } from \"../../internal/client/ethereum-client.js\";\nimport { readNameRoute } from \"../../internal/name/name-route.js\";\nimport { executeRead } from \"../../internal/read/execute-read.js\";\nimport { analyzeName } from \"../../names/analyze.js\";\nimport { labelhash, namehash } from \"../../names/hashes.js\";\nimport { normalizeName } from \"../../names/normalize.js\";\nimport type { EthereumAddress } from \"../../schemas/identity.js\";\nimport type { NormalizedName } from \"../../schemas/name.js\";\nimport type { WriteError } from \"../../write/types.js\";\n\ninterface SharedRoute {\n readonly name: NormalizedName;\n readonly parent: NormalizedName;\n readonly label: string;\n readonly node: `0x${string}`;\n readonly parentNode: `0x${string}`;\n readonly labelhash: `0x${string}`;\n}\n\nexport interface V1SubnameRoute extends SharedRoute {\n readonly protocol: \"v1\";\n readonly deployment: EnsV1Deployment;\n readonly parentWrapped: boolean;\n readonly parentExpiry: bigint;\n readonly childWrapped: boolean;\n readonly childFuses: number;\n readonly childExpiry: bigint;\n}\n\nexport interface V2SubnameRoute extends SharedRoute {\n readonly protocol: \"v2\";\n readonly deployment: EnsV2Deployment;\n readonly parentRegistry: EthereumAddress;\n readonly parentTokenId: bigint;\n readonly parentExpiry: bigint;\n readonly subregistry: EthereumAddress | null;\n readonly childState: {\n readonly status: number;\n readonly expiry: bigint;\n readonly latestOwner: EthereumAddress;\n readonly tokenId: bigint;\n readonly resource: bigint;\n } | null;\n}\n\nexport type SubnameRoute = V1SubnameRoute | V2SubnameRoute;\n\nexport const resolveSubnameRoute = Effect.fn(\"ensforge.resolveSubnameRoute\")(function* (\n config: EnsforgeConfig,\n input: string,\n): Effect.fn.Return<SubnameRoute, WriteError> {\n const name = yield* normalizeName.effect(input);\n const analysis = analyzeName(name);\n if (\n analysis.kind !== \"subname\" ||\n analysis.parent === undefined ||\n analysis.label === undefined\n ) {\n return yield* new NameError({\n code: \"INVALID_NAME\",\n message: `${name} is not a subname`,\n });\n }\n const parent = analysis.parent;\n const label = analysis.label;\n return yield* executeRead(\n config,\n {},\n Effect.gen(function* () {\n const ethereum = yield* EthereumClient;\n const parentRoute = yield* readNameRoute(parent);\n const shared = {\n name,\n parent,\n label,\n node: namehash(name),\n parentNode: namehash(parent),\n labelhash: labelhash(label),\n } as const;\n if (parentRoute.kind === \"v1\" || parentRoute.kind === \"reserved\") {\n const deployment =\n parentRoute.kind === \"reserved\" ? parentRoute.v1 : parentRoute.deployment;\n const [parentWrapped, childWrapped, parentData, childData] = yield* Effect.all(\n [\n ethereum.readContract({\n address: deployment.contracts.nameWrapper,\n abi: nameWrapperV1IsWrappedAbi,\n functionName: \"isWrapped\",\n args: [shared.parentNode],\n }),\n ethereum.readContract({\n address: deployment.contracts.nameWrapper,\n abi: nameWrapperV1IsWrappedAbi,\n functionName: \"isWrapped\",\n args: [shared.node],\n }),\n ethereum.readContract({\n address: deployment.contracts.nameWrapper,\n abi: nameWrapperV1GetDataAbi,\n functionName: \"getData\",\n args: [BigInt(shared.parentNode)],\n }),\n ethereum.readContract({\n address: deployment.contracts.nameWrapper,\n abi: nameWrapperV1GetDataAbi,\n functionName: \"getData\",\n args: [BigInt(shared.node)],\n }),\n ] as const,\n { concurrency: \"unbounded\" },\n );\n return {\n ...shared,\n protocol: \"v1\",\n deployment,\n parentWrapped,\n parentExpiry: parentData[2],\n childWrapped,\n childFuses: childData[1],\n childExpiry: childData[2],\n } as const;\n }\n if (parentRoute.kind === \"available\") {\n return yield* new NameError({\n code: \"INVALID_NAME\",\n message: `Parent ${parent} is not registered`,\n });\n }\n const subregistryAddress = yield* ethereum.readContract({\n address: parentRoute.parentRegistry,\n abi: permissionedRegistryV2InterfaceGetSubregistryAbi,\n functionName: \"getSubregistry\",\n args: [parentRoute.label],\n });\n const subregistry = subregistryAddress === zeroAddress ? null : subregistryAddress;\n const childState =\n subregistry === null\n ? null\n : yield* ethereum.readContract({\n address: subregistry,\n abi: permissionedRegistryV2InterfaceGetStateAbi,\n functionName: \"getState\",\n args: [BigInt(shared.labelhash)],\n });\n return {\n ...shared,\n protocol: \"v2\",\n deployment: parentRoute.deployment,\n parentRegistry: parentRoute.parentRegistry,\n parentTokenId: parentRoute.state.tokenId,\n parentExpiry: parentRoute.state.expiry,\n subregistry,\n childState,\n } as const;\n }),\n );\n});\n"],"mappings":";;;;;;;;;;;;;AA2DA,MAAa,sBAAsB,OAAO,GAAG,8BAA8B,CAAC,CAAC,WAC3E,QACA,OAC4C;CAC5C,MAAM,OAAO,OAAO,cAAc,OAAO,KAAK;CAC9C,MAAM,WAAW,YAAY,IAAI;CACjC,IACE,SAAS,SAAS,aAClB,SAAS,WAAW,UACpB,SAAS,UAAU,QAEnB,OAAO,OAAO,IAAI,UAAU;EAC1B,MAAM;EACN,SAAS,GAAG,KAAK;CACnB,CAAC;CAEH,MAAM,SAAS,SAAS;CACxB,MAAM,QAAQ,SAAS;CACvB,OAAO,OAAO,YACZ,QACA,CAAC,GACD,OAAO,IAAI,aAAa;EACtB,MAAM,WAAW,OAAO;EACxB,MAAM,cAAc,OAAO,cAAc,MAAM;EAC/C,MAAM,SAAS;GACb;GACA;GACA;GACA,MAAM,SAAS,IAAI;GACnB,YAAY,SAAS,MAAM;GAC3B,WAAW,UAAU,KAAK;EAC5B;EACA,IAAI,YAAY,SAAS,QAAQ,YAAY,SAAS,YAAY;GAChE,MAAM,aACJ,YAAY,SAAS,aAAa,YAAY,KAAK,YAAY;GACjE,MAAM,CAAC,eAAe,cAAc,YAAY,aAAa,OAAO,OAAO,IACzE;IACE,SAAS,aAAa;KACpB,SAAS,WAAW,UAAU;KAC9B,KAAK;KACL,cAAc;KACd,MAAM,CAAC,OAAO,UAAU;IAC1B,CAAC;IACD,SAAS,aAAa;KACpB,SAAS,WAAW,UAAU;KAC9B,KAAK;KACL,cAAc;KACd,MAAM,CAAC,OAAO,IAAI;IACpB,CAAC;IACD,SAAS,aAAa;KACpB,SAAS,WAAW,UAAU;KAC9B,KAAK;KACL,cAAc;KACd,MAAM,CAAC,OAAO,OAAO,UAAU,CAAC;IAClC,CAAC;IACD,SAAS,aAAa;KACpB,SAAS,WAAW,UAAU;KAC9B,KAAK;KACL,cAAc;KACd,MAAM,CAAC,OAAO,OAAO,IAAI,CAAC;IAC5B,CAAC;GACH,GACA,EAAE,aAAa,YAAY,CAC7B;GACA,OAAO;IACL,GAAG;IACH,UAAU;IACV;IACA;IACA,cAAc,WAAW;IACzB;IACA,YAAY,UAAU;IACtB,aAAa,UAAU;GACzB;EACF;EACA,IAAI,YAAY,SAAS,aACvB,OAAO,OAAO,IAAI,UAAU;GAC1B,MAAM;GACN,SAAS,UAAU,OAAO;EAC5B,CAAC;EAEH,MAAM,qBAAqB,OAAO,SAAS,aAAa;GACtD,SAAS,YAAY;GACrB,KAAK;GACL,cAAc;GACd,MAAM,CAAC,YAAY,KAAK;EAC1B,CAAC;EACD,MAAM,cAAc,uBAAuB,cAAc,OAAO;EAChE,MAAM,aACJ,gBAAgB,OACZ,OACA,OAAO,SAAS,aAAa;GAC3B,SAAS;GACT,KAAK;GACL,cAAc;GACd,MAAM,CAAC,OAAO,OAAO,SAAS,CAAC;EACjC,CAAC;EACP,OAAO;GACL,GAAG;GACH,UAAU;GACV,YAAY,YAAY;GACxB,gBAAgB,YAAY;GAC5B,eAAe,YAAY,MAAM;GACjC,cAAc,YAAY,MAAM;GAChC;GACA;EACF;CACF,CAAC,CACH;AACF,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { EnsAction } from "../../../action/action.js";
2
+ import { WriteError } from "../../../write/types.js";
3
+ import { SetSubnameRecordParameters, SetSubnameRecordResult, SubnameError } from "../types.js";
4
+ import "../../../index.js";
5
+ //#region src/actions/subnames/set-subname-record/index.d.ts
6
+ declare const setSubnameRecord: EnsAction<SetSubnameRecordParameters, SetSubnameRecordResult, WriteError>;
7
+ //#endregion
8
+ export { type SubnameError as SetSubnameRecordError, type SetSubnameRecordParameters, type SetSubnameRecordResult, setSubnameRecord };
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../../../../src/actions/subnames/set-subname-record/index.ts"],"mappings":";;;;;cAkGa,kBAAgB,UAAA,4BAAA,wBAAA"}
@@ -0,0 +1,72 @@
1
+ import { defineAction } from "../../../action/action.js";
2
+ import { decodeOwnershipAddress } from "../../ownership/address.js";
3
+ import { getNameState } from "../../name/get-name-state/index.js";
4
+ import { setResolverAndRecords } from "../../resolution/set-resolver-and-records/index.js";
5
+ import { resolveSubnameRoute } from "../route.js";
6
+ import { createSubname } from "../create-subname/index.js";
7
+ import { setSubnameExpiry, setSubnameManager, setSubnameResolver } from "../mutation.js";
8
+ import { Effect } from "effect";
9
+ import { isAddressEqual } from "viem";
10
+
11
+ //#region src/actions/subnames/set-subname-record/index.ts
12
+ const setSubnameRecordEffect = Effect.fn("ensforge.setSubnameRecord")(function* (config, parameters) {
13
+ const route = yield* resolveSubnameRoute(config, parameters.name);
14
+ const owner = yield* decodeOwnershipAddress(parameters.owner, "subname owner");
15
+ const resolver = parameters.resolver === void 0 ? null : yield* decodeOwnershipAddress(parameters.resolver, "subname resolver");
16
+ const initial = yield* getNameState.effect(config, { name: route.name });
17
+ const created = initial.available;
18
+ const create = created ? yield* createSubname.effect(config, {
19
+ name: route.name,
20
+ owner: parameters.owner,
21
+ ...parameters.resolver === void 0 ? {} : { resolver: parameters.resolver },
22
+ ...parameters.ttl === void 0 ? {} : { ttl: parameters.ttl },
23
+ ...parameters.expiry === void 0 ? {} : { expiry: parameters.expiry },
24
+ ...parameters.fuses === void 0 ? {} : { fuses: parameters.fuses },
25
+ ...parameters.roles === void 0 ? {} : { roles: parameters.roles },
26
+ ...parameters.salt === void 0 ? {} : { salt: parameters.salt },
27
+ ...parameters.walletClient === void 0 ? {} : { walletClient: parameters.walletClient },
28
+ ...parameters.account === void 0 ? {} : { account: parameters.account },
29
+ ...parameters.mode === void 0 ? {} : { mode: parameters.mode },
30
+ ...parameters.confirmation === void 0 ? {} : { confirmation: parameters.confirmation },
31
+ ...parameters.resume === void 0 ? {} : { resume: parameters.resume }
32
+ }) : null;
33
+ const mutations = [];
34
+ if (!created && parameters.expiry !== void 0 && parameters.expiry !== initial.expiry) mutations.push(yield* setSubnameExpiry.effect(config, {
35
+ name: route.name,
36
+ expiry: parameters.expiry
37
+ }));
38
+ const records = parameters.records ?? [];
39
+ const resolverWrite = records.length > 0 ? yield* setResolverAndRecords.effect(config, {
40
+ name: route.name,
41
+ records,
42
+ ...parameters.resolver === void 0 ? {} : { resolver: parameters.resolver },
43
+ ...parameters.walletClient === void 0 ? {} : { walletClient: parameters.walletClient },
44
+ ...parameters.account === void 0 ? {} : { account: parameters.account },
45
+ ...parameters.confirmation === void 0 ? {} : { confirmation: parameters.confirmation }
46
+ }) : null;
47
+ if (!created && records.length === 0 && parameters.resolver !== void 0 && (initial.resolver === null || resolver === null || !isAddressEqual(initial.resolver, resolver))) mutations.push(yield* setSubnameResolver.effect(config, {
48
+ name: route.name,
49
+ resolver: parameters.resolver
50
+ }));
51
+ if (!created && (initial.manager === null || !isAddressEqual(initial.manager, owner))) mutations.push(yield* setSubnameManager.effect(config, {
52
+ name: route.name,
53
+ manager: parameters.owner
54
+ }));
55
+ const finalState = yield* getNameState.effect(config, { name: route.name });
56
+ return {
57
+ name: route.name,
58
+ protocol: route.protocol,
59
+ created,
60
+ registry: finalState.registry,
61
+ resolver: finalState.resolver,
62
+ resolverWrite,
63
+ create,
64
+ mutations,
65
+ finalState
66
+ };
67
+ });
68
+ const setSubnameRecord = defineAction(setSubnameRecordEffect);
69
+
70
+ //#endregion
71
+ export { setSubnameRecord };
72
+ //# sourceMappingURL=index.js.map