@misonetwork/sdk 0.6.0 → 0.8.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 (296) hide show
  1. package/README.md +181 -124
  2. package/dist/client.d.ts +1229 -15
  3. package/dist/client.d.ts.map +1 -1
  4. package/dist/client.js +43 -21
  5. package/dist/client.js.map +1 -1
  6. package/dist/contracts/composition_credits/composition_credits.d.ts +181 -0
  7. package/dist/contracts/composition_credits/composition_credits.d.ts.map +1 -0
  8. package/dist/contracts/composition_credits/composition_credits.js +109 -0
  9. package/dist/contracts/composition_credits/composition_credits.js.map +1 -0
  10. package/dist/contracts/composition_credits/composition_party_role.d.ts +119 -0
  11. package/dist/contracts/composition_credits/composition_party_role.d.ts.map +1 -0
  12. package/dist/contracts/composition_credits/composition_party_role.js +139 -0
  13. package/dist/contracts/composition_credits/composition_party_role.js.map +1 -0
  14. package/dist/contracts/composition_credits/deps/miso_credit/credit.d.ts +24 -0
  15. package/dist/contracts/composition_credits/deps/miso_credit/credit.d.ts.map +1 -0
  16. package/dist/contracts/composition_credits/deps/miso_credit/credit.js +23 -0
  17. package/dist/contracts/composition_credits/deps/miso_credit/credit.js.map +1 -0
  18. package/dist/contracts/composition_credits/deps/sui/vec_map.d.ts +37 -0
  19. package/dist/contracts/composition_credits/deps/sui/vec_map.d.ts.map +1 -0
  20. package/dist/contracts/composition_credits/deps/sui/vec_map.js +28 -0
  21. package/dist/contracts/composition_credits/deps/sui/vec_map.js.map +1 -0
  22. package/dist/contracts/miso/composition.d.ts +17 -39
  23. package/dist/contracts/miso/composition.d.ts.map +1 -1
  24. package/dist/contracts/miso/composition.js +18 -39
  25. package/dist/contracts/miso/composition.js.map +1 -1
  26. package/dist/contracts/miso/deps/bps/bps.d.ts +1 -1
  27. package/dist/contracts/miso/deps/bps/bps.js +1 -1
  28. package/dist/contracts/miso/recording.d.ts +44 -19
  29. package/dist/contracts/miso/recording.d.ts.map +1 -1
  30. package/dist/contracts/miso/recording.js +46 -20
  31. package/dist/contracts/miso/recording.js.map +1 -1
  32. package/dist/contracts/miso/release.d.ts +63 -37
  33. package/dist/contracts/miso/release.d.ts.map +1 -1
  34. package/dist/contracts/miso/release.js +65 -38
  35. package/dist/contracts/miso/release.js.map +1 -1
  36. package/dist/contracts/miso/track.d.ts +41 -10
  37. package/dist/contracts/miso/track.d.ts.map +1 -1
  38. package/dist/contracts/miso/track.js +44 -10
  39. package/dist/contracts/miso/track.js.map +1 -1
  40. package/dist/contracts/recording_advisory/recording_advisory.d.ts +194 -0
  41. package/dist/contracts/recording_advisory/recording_advisory.d.ts.map +1 -0
  42. package/dist/contracts/recording_advisory/recording_advisory.js +204 -0
  43. package/dist/contracts/recording_advisory/recording_advisory.js.map +1 -0
  44. package/dist/contracts/recording_credits/deps/miso_credit/credit.d.ts +24 -0
  45. package/dist/contracts/recording_credits/deps/miso_credit/credit.d.ts.map +1 -0
  46. package/dist/contracts/recording_credits/deps/miso_credit/credit.js +23 -0
  47. package/dist/contracts/recording_credits/deps/miso_credit/credit.js.map +1 -0
  48. package/dist/contracts/recording_credits/deps/sui/vec_map.d.ts +37 -0
  49. package/dist/contracts/recording_credits/deps/sui/vec_map.d.ts.map +1 -0
  50. package/dist/contracts/recording_credits/deps/sui/vec_map.js +28 -0
  51. package/dist/contracts/recording_credits/deps/sui/vec_map.js.map +1 -0
  52. package/dist/contracts/recording_credits/deps/sui/vec_set.d.ts +21 -0
  53. package/dist/contracts/recording_credits/deps/sui/vec_set.d.ts.map +1 -0
  54. package/dist/contracts/recording_credits/deps/sui/vec_set.js +20 -0
  55. package/dist/contracts/recording_credits/deps/sui/vec_set.js.map +1 -0
  56. package/dist/contracts/recording_credits/recording_credits.d.ts +2313 -0
  57. package/dist/contracts/recording_credits/recording_credits.d.ts.map +1 -0
  58. package/dist/contracts/recording_credits/recording_credits.js +270 -0
  59. package/dist/contracts/recording_credits/recording_credits.js.map +1 -0
  60. package/dist/contracts/recording_credits/recording_party_role.d.ts +1174 -0
  61. package/dist/contracts/recording_credits/recording_party_role.d.ts.map +1 -0
  62. package/dist/contracts/recording_credits/recording_party_role.js +692 -0
  63. package/dist/contracts/recording_credits/recording_party_role.js.map +1 -0
  64. package/dist/contracts/recording_language/deps/language_code/language_code.d.ts +6 -0
  65. package/dist/contracts/recording_language/deps/language_code/language_code.d.ts.map +1 -0
  66. package/dist/contracts/recording_language/deps/language_code/language_code.js +8 -0
  67. package/dist/contracts/recording_language/deps/language_code/language_code.js.map +1 -0
  68. package/dist/contracts/recording_language/recording_language.d.ts +152 -0
  69. package/dist/contracts/recording_language/recording_language.d.ts.map +1 -0
  70. package/dist/contracts/recording_language/recording_language.js +149 -0
  71. package/dist/contracts/recording_language/recording_language.js.map +1 -0
  72. package/dist/contracts/recording_master_reference/deps/ori/walrus_data.d.ts +52 -0
  73. package/dist/contracts/recording_master_reference/deps/ori/walrus_data.d.ts.map +1 -0
  74. package/dist/contracts/recording_master_reference/deps/ori/walrus_data.js +37 -0
  75. package/dist/contracts/recording_master_reference/deps/ori/walrus_data.js.map +1 -0
  76. package/dist/contracts/recording_master_reference/recording_master_reference.d.ts +131 -0
  77. package/dist/contracts/recording_master_reference/recording_master_reference.d.ts.map +1 -0
  78. package/dist/contracts/recording_master_reference/recording_master_reference.js +121 -0
  79. package/dist/contracts/recording_master_reference/recording_master_reference.js.map +1 -0
  80. package/dist/contracts/recording_preview/deps/ori/walrus_data.d.ts +52 -0
  81. package/dist/contracts/recording_preview/deps/ori/walrus_data.d.ts.map +1 -0
  82. package/dist/contracts/recording_preview/deps/ori/walrus_data.js +37 -0
  83. package/dist/contracts/recording_preview/deps/ori/walrus_data.js.map +1 -0
  84. package/dist/contracts/recording_preview/recording_preview.d.ts +104 -0
  85. package/dist/contracts/recording_preview/recording_preview.d.ts.map +1 -0
  86. package/dist/contracts/recording_preview/recording_preview.js +94 -0
  87. package/dist/contracts/recording_preview/recording_preview.js.map +1 -0
  88. package/dist/contracts/release_cover_art/deps/0x340057f2174fb59e4626742dd2b46c662237837b6187450cb59e4976ce7eac78/walrus_data.d.ts +52 -0
  89. package/dist/contracts/release_cover_art/deps/0x340057f2174fb59e4626742dd2b46c662237837b6187450cb59e4976ce7eac78/walrus_data.d.ts.map +1 -0
  90. package/dist/contracts/release_cover_art/deps/0x340057f2174fb59e4626742dd2b46c662237837b6187450cb59e4976ce7eac78/walrus_data.js +37 -0
  91. package/dist/contracts/release_cover_art/deps/0x340057f2174fb59e4626742dd2b46c662237837b6187450cb59e4976ce7eac78/walrus_data.js.map +1 -0
  92. package/dist/contracts/release_cover_art/deps/cover_art/cover_art.d.ts +46 -0
  93. package/dist/contracts/release_cover_art/deps/cover_art/cover_art.d.ts.map +1 -0
  94. package/dist/contracts/release_cover_art/deps/cover_art/cover_art.js +21 -0
  95. package/dist/contracts/release_cover_art/deps/cover_art/cover_art.js.map +1 -0
  96. package/dist/contracts/release_cover_art/deps/per_track/per_track.d.ts +33 -0
  97. package/dist/contracts/release_cover_art/deps/per_track/per_track.d.ts.map +1 -0
  98. package/dist/contracts/release_cover_art/deps/per_track/per_track.js +32 -0
  99. package/dist/contracts/release_cover_art/deps/per_track/per_track.js.map +1 -0
  100. package/dist/contracts/release_cover_art/release_cover_art.d.ts +300 -0
  101. package/dist/contracts/release_cover_art/release_cover_art.d.ts.map +1 -0
  102. package/dist/contracts/release_cover_art/release_cover_art.js +168 -0
  103. package/dist/contracts/release_cover_art/release_cover_art.js.map +1 -0
  104. package/dist/contracts/release_credits/deps/miso_credit/credit.d.ts +24 -0
  105. package/dist/contracts/release_credits/deps/miso_credit/credit.d.ts.map +1 -0
  106. package/dist/contracts/release_credits/deps/miso_credit/credit.js +23 -0
  107. package/dist/contracts/release_credits/deps/miso_credit/credit.js.map +1 -0
  108. package/dist/contracts/release_credits/deps/sui/vec_map.d.ts +37 -0
  109. package/dist/contracts/release_credits/deps/sui/vec_map.d.ts.map +1 -0
  110. package/dist/contracts/release_credits/deps/sui/vec_map.js +28 -0
  111. package/dist/contracts/release_credits/deps/sui/vec_map.js.map +1 -0
  112. package/dist/contracts/release_credits/release_credits.d.ts +142 -0
  113. package/dist/contracts/release_credits/release_credits.d.ts.map +1 -0
  114. package/dist/contracts/release_credits/release_credits.js +108 -0
  115. package/dist/contracts/release_credits/release_credits.js.map +1 -0
  116. package/dist/contracts/release_credits/release_party_role.d.ts +58 -0
  117. package/dist/contracts/release_credits/release_party_role.d.ts.map +1 -0
  118. package/dist/contracts/release_credits/release_party_role.js +66 -0
  119. package/dist/contracts/release_credits/release_party_role.js.map +1 -0
  120. package/dist/contracts/release_description/release_description.d.ts +112 -0
  121. package/dist/contracts/release_description/release_description.d.ts.map +1 -0
  122. package/dist/contracts/release_description/release_description.js +123 -0
  123. package/dist/contracts/release_description/release_description.js.map +1 -0
  124. package/dist/contracts/release_dsp_link/release_dsp_link.d.ts +644 -0
  125. package/dist/contracts/release_dsp_link/release_dsp_link.d.ts.map +1 -0
  126. package/dist/contracts/release_dsp_link/release_dsp_link.js +556 -0
  127. package/dist/contracts/release_dsp_link/release_dsp_link.js.map +1 -0
  128. package/dist/contracts/release_genre/deps/per_track/per_track.d.ts +33 -0
  129. package/dist/contracts/release_genre/deps/per_track/per_track.d.ts.map +1 -0
  130. package/dist/contracts/release_genre/deps/per_track/per_track.js +32 -0
  131. package/dist/contracts/release_genre/deps/per_track/per_track.js.map +1 -0
  132. package/dist/contracts/release_genre/release_genre.d.ts +193 -0
  133. package/dist/contracts/release_genre/release_genre.d.ts.map +1 -0
  134. package/dist/contracts/release_genre/release_genre.js +207 -0
  135. package/dist/contracts/release_genre/release_genre.js.map +1 -0
  136. package/dist/contracts/release_kind/release_kind.d.ts +98 -0
  137. package/dist/contracts/release_kind/release_kind.d.ts.map +1 -0
  138. package/dist/contracts/release_kind/release_kind.js +109 -0
  139. package/dist/contracts/release_kind/release_kind.js.map +1 -0
  140. package/dist/contracts/release_snapshot_bundle/deps/ori/walrus_data.d.ts +52 -0
  141. package/dist/contracts/release_snapshot_bundle/deps/ori/walrus_data.d.ts.map +1 -0
  142. package/dist/contracts/release_snapshot_bundle/deps/ori/walrus_data.js +37 -0
  143. package/dist/contracts/release_snapshot_bundle/deps/ori/walrus_data.js.map +1 -0
  144. package/dist/contracts/release_snapshot_bundle/release_snapshot_bundle.d.ts +91 -0
  145. package/dist/contracts/release_snapshot_bundle/release_snapshot_bundle.d.ts.map +1 -0
  146. package/dist/contracts/release_snapshot_bundle/release_snapshot_bundle.js +91 -0
  147. package/dist/contracts/release_snapshot_bundle/release_snapshot_bundle.js.map +1 -0
  148. package/dist/contracts/routed_stake/deps/royalty_pool/stake.d.ts +54 -0
  149. package/dist/contracts/routed_stake/deps/royalty_pool/stake.d.ts.map +1 -0
  150. package/dist/contracts/routed_stake/deps/royalty_pool/stake.js +37 -0
  151. package/dist/contracts/routed_stake/deps/royalty_pool/stake.js.map +1 -0
  152. package/dist/contracts/routed_stake/deps/std/type_name.d.ts +18 -0
  153. package/dist/contracts/routed_stake/deps/std/type_name.d.ts.map +1 -0
  154. package/dist/contracts/routed_stake/deps/std/type_name.js +20 -0
  155. package/dist/contracts/routed_stake/deps/std/type_name.js.map +1 -0
  156. package/dist/contracts/routed_stake/deps/sui/balance.d.ts +13 -0
  157. package/dist/contracts/routed_stake/deps/sui/balance.d.ts.map +1 -0
  158. package/dist/contracts/routed_stake/deps/sui/balance.js +15 -0
  159. package/dist/contracts/routed_stake/deps/sui/balance.js.map +1 -0
  160. package/dist/contracts/routed_stake/deps/sui/vec_map.d.ts +37 -0
  161. package/dist/contracts/routed_stake/deps/sui/vec_map.d.ts.map +1 -0
  162. package/dist/contracts/routed_stake/deps/sui/vec_map.js +28 -0
  163. package/dist/contracts/routed_stake/deps/sui/vec_map.js.map +1 -0
  164. package/dist/contracts/routed_stake/routed_stake.d.ts +356 -0
  165. package/dist/contracts/routed_stake/routed_stake.d.ts.map +1 -0
  166. package/dist/contracts/routed_stake/routed_stake.js +311 -0
  167. package/dist/contracts/routed_stake/routed_stake.js.map +1 -0
  168. package/dist/contracts/royalty_pool/deps/std/type_name.d.ts +18 -0
  169. package/dist/contracts/royalty_pool/deps/std/type_name.d.ts.map +1 -0
  170. package/dist/contracts/royalty_pool/deps/std/type_name.js +20 -0
  171. package/dist/contracts/royalty_pool/deps/std/type_name.js.map +1 -0
  172. package/dist/contracts/royalty_pool/deps/sui/balance.d.ts +13 -0
  173. package/dist/contracts/royalty_pool/deps/sui/balance.d.ts.map +1 -0
  174. package/dist/contracts/royalty_pool/deps/sui/balance.js +15 -0
  175. package/dist/contracts/royalty_pool/deps/sui/balance.js.map +1 -0
  176. package/dist/contracts/royalty_pool/deps/sui/vec_map.d.ts +37 -0
  177. package/dist/contracts/royalty_pool/deps/sui/vec_map.d.ts.map +1 -0
  178. package/dist/contracts/royalty_pool/deps/sui/vec_map.js +28 -0
  179. package/dist/contracts/royalty_pool/deps/sui/vec_map.js.map +1 -0
  180. package/dist/contracts/royalty_pool/pool.d.ts +394 -0
  181. package/dist/contracts/royalty_pool/pool.d.ts.map +1 -0
  182. package/dist/contracts/royalty_pool/pool.js +387 -0
  183. package/dist/contracts/royalty_pool/pool.js.map +1 -0
  184. package/dist/contracts/royalty_pool/stake.d.ts +202 -0
  185. package/dist/contracts/royalty_pool/stake.d.ts.map +1 -0
  186. package/dist/contracts/royalty_pool/stake.js +197 -0
  187. package/dist/contracts/royalty_pool/stake.js.map +1 -0
  188. package/dist/contracts.d.ts +37 -3
  189. package/dist/contracts.d.ts.map +1 -1
  190. package/dist/contracts.js +42 -8
  191. package/dist/contracts.js.map +1 -1
  192. package/dist/deployments.d.ts +46 -12
  193. package/dist/deployments.d.ts.map +1 -1
  194. package/dist/deployments.js +119 -11
  195. package/dist/deployments.js.map +1 -1
  196. package/dist/events.d.ts +1081 -0
  197. package/dist/events.d.ts.map +1 -0
  198. package/dist/events.js +124 -0
  199. package/dist/events.js.map +1 -0
  200. package/dist/execute.d.ts.map +1 -1
  201. package/dist/execute.js +0 -4
  202. package/dist/execute.js.map +1 -1
  203. package/dist/index.d.ts +3 -0
  204. package/dist/index.d.ts.map +1 -1
  205. package/dist/index.js +6 -3
  206. package/dist/index.js.map +1 -1
  207. package/dist/internal.d.ts.map +1 -1
  208. package/dist/internal.js +2 -0
  209. package/dist/internal.js.map +1 -1
  210. package/dist/numeric.d.ts +5 -0
  211. package/dist/numeric.d.ts.map +1 -0
  212. package/dist/numeric.js +21 -0
  213. package/dist/numeric.js.map +1 -0
  214. package/dist/packages.d.ts +159 -0
  215. package/dist/packages.d.ts.map +1 -0
  216. package/dist/packages.js +179 -0
  217. package/dist/packages.js.map +1 -0
  218. package/dist/parsers.d.ts +5 -2
  219. package/dist/parsers.d.ts.map +1 -1
  220. package/dist/parsers.js +19 -7
  221. package/dist/parsers.js.map +1 -1
  222. package/dist/queries.d.ts +92 -0
  223. package/dist/queries.d.ts.map +1 -1
  224. package/dist/queries.js +132 -23
  225. package/dist/queries.js.map +1 -1
  226. package/dist/transactions.d.ts +96 -12
  227. package/dist/transactions.d.ts.map +1 -1
  228. package/dist/transactions.js +124 -14
  229. package/dist/transactions.js.map +1 -1
  230. package/dist/types.d.ts +35 -8
  231. package/dist/types.d.ts.map +1 -1
  232. package/dist/view.d.ts +6 -5
  233. package/dist/view.d.ts.map +1 -1
  234. package/dist/view.js +8 -2
  235. package/dist/view.js.map +1 -1
  236. package/package.json +14 -4
  237. package/src/client.ts +57 -25
  238. package/src/contracts/composition_credits/composition_credits.ts +169 -0
  239. package/src/contracts/composition_credits/composition_party_role.ts +189 -0
  240. package/src/contracts/composition_credits/deps/miso_credit/credit.ts +27 -0
  241. package/src/contracts/composition_credits/deps/sui/vec_map.ts +33 -0
  242. package/src/contracts/miso/composition.ts +24 -61
  243. package/src/contracts/miso/deps/bps/bps.ts +3 -3
  244. package/src/contracts/miso/recording.ts +69 -32
  245. package/src/contracts/miso/release.ts +103 -67
  246. package/src/contracts/miso/track.ts +56 -13
  247. package/src/contracts/recording_advisory/recording_advisory.ts +315 -0
  248. package/src/contracts/recording_credits/deps/miso_credit/credit.ts +27 -0
  249. package/src/contracts/recording_credits/deps/sui/vec_map.ts +33 -0
  250. package/src/contracts/recording_credits/deps/sui/vec_set.ts +21 -0
  251. package/src/contracts/recording_credits/recording_credits.ts +458 -0
  252. package/src/contracts/recording_credits/recording_party_role.ts +1041 -0
  253. package/src/contracts/recording_language/deps/language_code/language_code.ts +7 -0
  254. package/src/contracts/recording_language/recording_language.ts +237 -0
  255. package/src/contracts/recording_master_reference/deps/ori/walrus_data.ts +36 -0
  256. package/src/contracts/recording_master_reference/recording_master_reference.ts +181 -0
  257. package/src/contracts/recording_preview/deps/ori/walrus_data.ts +36 -0
  258. package/src/contracts/recording_preview/recording_preview.ts +154 -0
  259. package/src/contracts/release_cover_art/deps/0x340057f2174fb59e4626742dd2b46c662237837b6187450cb59e4976ce7eac78/walrus_data.ts +36 -0
  260. package/src/contracts/release_cover_art/deps/cover_art/cover_art.ts +23 -0
  261. package/src/contracts/release_cover_art/deps/per_track/per_track.ts +36 -0
  262. package/src/contracts/release_cover_art/release_cover_art.ts +251 -0
  263. package/src/contracts/release_credits/deps/miso_credit/credit.ts +27 -0
  264. package/src/contracts/release_credits/deps/sui/vec_map.ts +33 -0
  265. package/src/contracts/release_credits/release_credits.ts +156 -0
  266. package/src/contracts/release_credits/release_party_role.ts +87 -0
  267. package/src/contracts/release_description/release_description.ts +167 -0
  268. package/src/contracts/release_dsp_link/release_dsp_link.ts +813 -0
  269. package/src/contracts/release_genre/deps/per_track/per_track.ts +36 -0
  270. package/src/contracts/release_genre/release_genre.ts +314 -0
  271. package/src/contracts/release_kind/release_kind.ts +153 -0
  272. package/src/contracts/release_snapshot_bundle/deps/ori/walrus_data.ts +36 -0
  273. package/src/contracts/release_snapshot_bundle/release_snapshot_bundle.ts +124 -0
  274. package/src/contracts/routed_stake/deps/royalty_pool/stake.ts +39 -0
  275. package/src/contracts/routed_stake/deps/std/type_name.ts +22 -0
  276. package/src/contracts/routed_stake/deps/sui/balance.ts +17 -0
  277. package/src/contracts/routed_stake/deps/sui/vec_map.ts +33 -0
  278. package/src/contracts/routed_stake/routed_stake.ts +508 -0
  279. package/src/contracts/royalty_pool/deps/std/type_name.ts +22 -0
  280. package/src/contracts/royalty_pool/deps/sui/balance.ts +17 -0
  281. package/src/contracts/royalty_pool/deps/sui/vec_map.ts +33 -0
  282. package/src/contracts/royalty_pool/pool.ts +613 -0
  283. package/src/contracts/royalty_pool/stake.ts +317 -0
  284. package/src/contracts.ts +59 -6
  285. package/src/deployments.ts +160 -22
  286. package/src/events.ts +129 -0
  287. package/src/execute.ts +0 -4
  288. package/src/index.ts +6 -3
  289. package/src/internal.ts +2 -4
  290. package/src/numeric.ts +25 -0
  291. package/src/packages.ts +251 -0
  292. package/src/parsers.ts +32 -11
  293. package/src/queries.ts +227 -25
  294. package/src/transactions.ts +255 -23
  295. package/src/types.ts +37 -9
  296. package/src/view.ts +12 -6
@@ -0,0 +1,1041 @@
1
+ /**************************************************************
2
+ * THIS FILE IS GENERATED AND SHOULD NOT BE MANUALLY MODIFIED *
3
+ **************************************************************/
4
+
5
+
6
+ /**
7
+ * Defines the roles that parties can hold on a recording. Recordings are audio
8
+ * performances of compositions, and these roles represent the various production
9
+ * and performance contributions.
10
+ *
11
+ * ### Design
12
+ *
13
+ * `RecordingPartyRole` is a closed enum: variants can only be constructed and
14
+ * matched inside this module, so the `new_*_role` constructors are the external
15
+ * write-API and `name()` is the external read-API.
16
+ *
17
+ * - **Seniority is a separate axis.** Most roles carry an optional
18
+ * `RecordingPartyRoleLevel` (Lead, Assistant, Additional, …). Industry variants
19
+ * like "Second Engineer" or "Additional Producer" are expressed as a base role
20
+ * plus a level, not as their own variants — this keeps the role set compact
21
+ * without losing the distinction.
22
+ * - **`Custom` is the escape hatch.** The canonical variants cover the common
23
+ * vocabulary; anything outside it is a `Custom(name, level)` whose name is
24
+ * validated like an instrument name. Prefer a canonical variant when one fits.
25
+ * - **`name()` is the canonical identifier**, returned as a stable PascalCase
26
+ * token (e.g. `"MixingEngineer"`). It doubles as an on-chain match key and as
27
+ * the seed for off-chain display/localization. For `Custom`, `name()` returns
28
+ * the user-supplied string; for `Instrumentalist`, it returns
29
+ * `"Instrumentalist"` (the instrument itself is read off-chain).
30
+ *
31
+ * These identifiers are Miso's own canonical vocabulary; any overlap with an
32
+ * external standard (e.g. DDEX) is coincidental, not a reproduction of it.
33
+ */
34
+
35
+ import { MoveEnum, MoveTuple, normalizeMoveArguments, type RawTransactionArgument } from '../utils/index.ts';
36
+ import { bcs } from '@mysten/sui/bcs';
37
+ import { type Transaction, type TransactionArgument } from '@mysten/sui/transactions';
38
+ const $moduleName = '@local-pkg/recording_credits::recording_party_role';
39
+ /** Indicates the seniority or prominence level of a party. */
40
+ export const RecordingPartyRoleLevel = new MoveEnum({ name: `${$moduleName}::RecordingPartyRoleLevel`, fields: {
41
+ /** Additional/supplementary party. */
42
+ Additional: null,
43
+ /** Assistant to the primary party. */
44
+ Assistant: null,
45
+ /** Associate-level party. */
46
+ Associate: null,
47
+ /** Backing/support role (e.g., backing vocals). */
48
+ Backing: null,
49
+ /** Executive-level oversight role. */
50
+ Executive: null,
51
+ /** Featured prominently on the recording. */
52
+ Featured: null,
53
+ /** Lead/primary party in this role. */
54
+ Lead: null,
55
+ /** Primary artist on the recording. */
56
+ Primary: null,
57
+ /** Principal party with primary responsibility. */
58
+ Principal: null
59
+ } });
60
+ /**
61
+ * Represents a party's role on a recording. Most roles carry an optional level to
62
+ * indicate seniority/prominence; `ArtistsAndRepertoire` and `Copyist` are
63
+ * clerical/business roles that do not.
64
+ */
65
+ export const RecordingPartyRole = new MoveEnum({ name: `${$moduleName}::RecordingPartyRole`, fields: {
66
+ /** Performed voice acting or spoken-word performance. */
67
+ Actor: bcs.option(RecordingPartyRoleLevel),
68
+ /** Arranged the musical parts for the recording. */
69
+ Arranger: bcs.option(RecordingPartyRoleLevel),
70
+ /** A&R representative who discovered or developed the artist. */
71
+ ArtistsAndRepertoire: null,
72
+ /** Led the band or backing ensemble. */
73
+ BandLeader: bcs.option(RecordingPartyRoleLevel),
74
+ /** Performed as part of a choir. */
75
+ Choir: bcs.option(RecordingPartyRoleLevel),
76
+ /** Directed the choir performance. */
77
+ ChoirMaster: bcs.option(RecordingPartyRoleLevel),
78
+ /** Lead performer of an orchestra/ensemble (e.g. first-chair). */
79
+ ConcertMaster: bcs.option(RecordingPartyRoleLevel),
80
+ /** Conducted the orchestra or ensemble. */
81
+ Conductor: bcs.option(RecordingPartyRoleLevel),
82
+ /** Hired and managed session musicians. */
83
+ Contractor: bcs.option(RecordingPartyRoleLevel),
84
+ /** Prepared written music parts for performers. */
85
+ Copyist: null,
86
+ /** Performed/assembled the recording as a disc jockey. */
87
+ DJ: bcs.option(RecordingPartyRoleLevel),
88
+ /** Edited and compiled audio takes. */
89
+ Editor: bcs.option(RecordingPartyRoleLevel),
90
+ /** General engineering contribution not covered by a specific engineer role. */
91
+ Engineer: bcs.option(RecordingPartyRoleLevel),
92
+ /** Performed as part of a musical ensemble. */
93
+ Ensemble: bcs.option(RecordingPartyRoleLevel),
94
+ /** Played an instrument on the recording. Carries the instrument name. */
95
+ Instrumentalist: new MoveTuple({ name: `RecordingPartyRole.Instrumentalist`, fields: [bcs.string(), bcs.option(RecordingPartyRoleLevel)] }),
96
+ /** Mastered the final audio for distribution. */
97
+ MasteringEngineer: bcs.option(RecordingPartyRoleLevel),
98
+ /** Mixed the multitrack recording into stereo/surround. */
99
+ MixingEngineer: bcs.option(RecordingPartyRoleLevel),
100
+ /** Directed the musical performance. */
101
+ MusicDirector: bcs.option(RecordingPartyRoleLevel),
102
+ /** Oversaw music selection and licensing. */
103
+ MusicSupervisor: bcs.option(RecordingPartyRoleLevel),
104
+ /** Narrated spoken content. */
105
+ Narrator: bcs.option(RecordingPartyRoleLevel),
106
+ /** Performed as part of an orchestra. */
107
+ Orchestra: bcs.option(RecordingPartyRoleLevel),
108
+ /** Created orchestral arrangements. */
109
+ Orchestrator: bcs.option(RecordingPartyRoleLevel),
110
+ /** Performed on the recording (general performer). */
111
+ Performer: bcs.option(RecordingPartyRoleLevel),
112
+ /** Oversaw the creative and technical aspects of the recording. */
113
+ Producer: bcs.option(RecordingPartyRoleLevel),
114
+ /** Programmed beats, synths, or electronic elements. */
115
+ Programmer: bcs.option(RecordingPartyRoleLevel),
116
+ /** Operated recording equipment during sessions. */
117
+ RecordingEngineer: bcs.option(RecordingPartyRoleLevel),
118
+ /** Created a remix of the recording. */
119
+ RemixingEngineer: bcs.option(RecordingPartyRoleLevel),
120
+ /** Performed a solo part. */
121
+ Soloist: bcs.option(RecordingPartyRoleLevel),
122
+ /** Created sound effects or sonic textures. */
123
+ SoundDesigner: bcs.option(RecordingPartyRoleLevel),
124
+ /** Delivered spoken-word or presentation content. */
125
+ Speaker: bcs.option(RecordingPartyRoleLevel),
126
+ /** Provided vocals on the recording. */
127
+ Vocalist: bcs.option(RecordingPartyRoleLevel),
128
+ /**
129
+ * A user-defined role not covered by a canonical variant. Carries the role name
130
+ * (validated like an instrument name) and an optional level. An escape hatch —
131
+ * prefer a canonical variant when one fits.
132
+ */
133
+ Custom: new MoveTuple({ name: `RecordingPartyRole.Custom`, fields: [bcs.string(), bcs.option(RecordingPartyRoleLevel)] })
134
+ } });
135
+ export interface NewActorRoleArguments {
136
+ level: TransactionArgument;
137
+ }
138
+ export interface NewActorRoleOptions {
139
+ package?: string;
140
+ arguments: NewActorRoleArguments | [
141
+ level: TransactionArgument
142
+ ];
143
+ }
144
+ /** Creates a new Actor role with optional level. */
145
+ export function newActorRole(options: NewActorRoleOptions) {
146
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
147
+ const argumentsTypes = [
148
+ null
149
+ ] satisfies (string | null)[];
150
+ const parameterNames = ["level"];
151
+ return (tx: Transaction) => tx.moveCall({
152
+ package: packageAddress,
153
+ module: 'recording_party_role',
154
+ function: 'new_actor_role',
155
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
156
+ });
157
+ }
158
+ export interface NewArrangerRoleArguments {
159
+ level: TransactionArgument;
160
+ }
161
+ export interface NewArrangerRoleOptions {
162
+ package?: string;
163
+ arguments: NewArrangerRoleArguments | [
164
+ level: TransactionArgument
165
+ ];
166
+ }
167
+ /** Creates a new Arranger role with optional level. */
168
+ export function newArrangerRole(options: NewArrangerRoleOptions) {
169
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
170
+ const argumentsTypes = [
171
+ null
172
+ ] satisfies (string | null)[];
173
+ const parameterNames = ["level"];
174
+ return (tx: Transaction) => tx.moveCall({
175
+ package: packageAddress,
176
+ module: 'recording_party_role',
177
+ function: 'new_arranger_role',
178
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
179
+ });
180
+ }
181
+ export interface NewArtistsAndRepertoireRoleOptions {
182
+ package?: string;
183
+ arguments?: [
184
+ ];
185
+ }
186
+ /** Creates a new Artists & Repertoire role. */
187
+ export function newArtistsAndRepertoireRole(options: NewArtistsAndRepertoireRoleOptions = {}) {
188
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
189
+ return (tx: Transaction) => tx.moveCall({
190
+ package: packageAddress,
191
+ module: 'recording_party_role',
192
+ function: 'new_artists_and_repertoire_role',
193
+ });
194
+ }
195
+ export interface NewBandLeaderRoleArguments {
196
+ level: TransactionArgument;
197
+ }
198
+ export interface NewBandLeaderRoleOptions {
199
+ package?: string;
200
+ arguments: NewBandLeaderRoleArguments | [
201
+ level: TransactionArgument
202
+ ];
203
+ }
204
+ /** Creates a new Band Leader role with optional level. */
205
+ export function newBandLeaderRole(options: NewBandLeaderRoleOptions) {
206
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
207
+ const argumentsTypes = [
208
+ null
209
+ ] satisfies (string | null)[];
210
+ const parameterNames = ["level"];
211
+ return (tx: Transaction) => tx.moveCall({
212
+ package: packageAddress,
213
+ module: 'recording_party_role',
214
+ function: 'new_band_leader_role',
215
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
216
+ });
217
+ }
218
+ export interface NewChoirRoleArguments {
219
+ level: TransactionArgument;
220
+ }
221
+ export interface NewChoirRoleOptions {
222
+ package?: string;
223
+ arguments: NewChoirRoleArguments | [
224
+ level: TransactionArgument
225
+ ];
226
+ }
227
+ /** Creates a new Choir role with optional level. */
228
+ export function newChoirRole(options: NewChoirRoleOptions) {
229
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
230
+ const argumentsTypes = [
231
+ null
232
+ ] satisfies (string | null)[];
233
+ const parameterNames = ["level"];
234
+ return (tx: Transaction) => tx.moveCall({
235
+ package: packageAddress,
236
+ module: 'recording_party_role',
237
+ function: 'new_choir_role',
238
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
239
+ });
240
+ }
241
+ export interface NewChoirMasterRoleArguments {
242
+ level: TransactionArgument;
243
+ }
244
+ export interface NewChoirMasterRoleOptions {
245
+ package?: string;
246
+ arguments: NewChoirMasterRoleArguments | [
247
+ level: TransactionArgument
248
+ ];
249
+ }
250
+ /** Creates a new Choir Master role with optional level. */
251
+ export function newChoirMasterRole(options: NewChoirMasterRoleOptions) {
252
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
253
+ const argumentsTypes = [
254
+ null
255
+ ] satisfies (string | null)[];
256
+ const parameterNames = ["level"];
257
+ return (tx: Transaction) => tx.moveCall({
258
+ package: packageAddress,
259
+ module: 'recording_party_role',
260
+ function: 'new_choir_master_role',
261
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
262
+ });
263
+ }
264
+ export interface NewConcertMasterRoleArguments {
265
+ level: TransactionArgument;
266
+ }
267
+ export interface NewConcertMasterRoleOptions {
268
+ package?: string;
269
+ arguments: NewConcertMasterRoleArguments | [
270
+ level: TransactionArgument
271
+ ];
272
+ }
273
+ /** Creates a new Concert Master role with optional level. */
274
+ export function newConcertMasterRole(options: NewConcertMasterRoleOptions) {
275
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
276
+ const argumentsTypes = [
277
+ null
278
+ ] satisfies (string | null)[];
279
+ const parameterNames = ["level"];
280
+ return (tx: Transaction) => tx.moveCall({
281
+ package: packageAddress,
282
+ module: 'recording_party_role',
283
+ function: 'new_concert_master_role',
284
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
285
+ });
286
+ }
287
+ export interface NewConductorRoleArguments {
288
+ level: TransactionArgument;
289
+ }
290
+ export interface NewConductorRoleOptions {
291
+ package?: string;
292
+ arguments: NewConductorRoleArguments | [
293
+ level: TransactionArgument
294
+ ];
295
+ }
296
+ /** Creates a new Conductor role with optional level. */
297
+ export function newConductorRole(options: NewConductorRoleOptions) {
298
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
299
+ const argumentsTypes = [
300
+ null
301
+ ] satisfies (string | null)[];
302
+ const parameterNames = ["level"];
303
+ return (tx: Transaction) => tx.moveCall({
304
+ package: packageAddress,
305
+ module: 'recording_party_role',
306
+ function: 'new_conductor_role',
307
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
308
+ });
309
+ }
310
+ export interface NewContractorRoleArguments {
311
+ level: TransactionArgument;
312
+ }
313
+ export interface NewContractorRoleOptions {
314
+ package?: string;
315
+ arguments: NewContractorRoleArguments | [
316
+ level: TransactionArgument
317
+ ];
318
+ }
319
+ /** Creates a new Contractor role with optional level. */
320
+ export function newContractorRole(options: NewContractorRoleOptions) {
321
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
322
+ const argumentsTypes = [
323
+ null
324
+ ] satisfies (string | null)[];
325
+ const parameterNames = ["level"];
326
+ return (tx: Transaction) => tx.moveCall({
327
+ package: packageAddress,
328
+ module: 'recording_party_role',
329
+ function: 'new_contractor_role',
330
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
331
+ });
332
+ }
333
+ export interface NewCopyistRoleOptions {
334
+ package?: string;
335
+ arguments?: [
336
+ ];
337
+ }
338
+ /** Creates a new Copyist role. */
339
+ export function newCopyistRole(options: NewCopyistRoleOptions = {}) {
340
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
341
+ return (tx: Transaction) => tx.moveCall({
342
+ package: packageAddress,
343
+ module: 'recording_party_role',
344
+ function: 'new_copyist_role',
345
+ });
346
+ }
347
+ export interface NewDjRoleArguments {
348
+ level: TransactionArgument;
349
+ }
350
+ export interface NewDjRoleOptions {
351
+ package?: string;
352
+ arguments: NewDjRoleArguments | [
353
+ level: TransactionArgument
354
+ ];
355
+ }
356
+ /** Creates a new DJ role with optional level. */
357
+ export function newDjRole(options: NewDjRoleOptions) {
358
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
359
+ const argumentsTypes = [
360
+ null
361
+ ] satisfies (string | null)[];
362
+ const parameterNames = ["level"];
363
+ return (tx: Transaction) => tx.moveCall({
364
+ package: packageAddress,
365
+ module: 'recording_party_role',
366
+ function: 'new_dj_role',
367
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
368
+ });
369
+ }
370
+ export interface NewEditorRoleArguments {
371
+ level: TransactionArgument;
372
+ }
373
+ export interface NewEditorRoleOptions {
374
+ package?: string;
375
+ arguments: NewEditorRoleArguments | [
376
+ level: TransactionArgument
377
+ ];
378
+ }
379
+ /** Creates a new Editor role with optional level. */
380
+ export function newEditorRole(options: NewEditorRoleOptions) {
381
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
382
+ const argumentsTypes = [
383
+ null
384
+ ] satisfies (string | null)[];
385
+ const parameterNames = ["level"];
386
+ return (tx: Transaction) => tx.moveCall({
387
+ package: packageAddress,
388
+ module: 'recording_party_role',
389
+ function: 'new_editor_role',
390
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
391
+ });
392
+ }
393
+ export interface NewEngineerRoleArguments {
394
+ level: TransactionArgument;
395
+ }
396
+ export interface NewEngineerRoleOptions {
397
+ package?: string;
398
+ arguments: NewEngineerRoleArguments | [
399
+ level: TransactionArgument
400
+ ];
401
+ }
402
+ /** Creates a new (general) Engineer role with optional level. */
403
+ export function newEngineerRole(options: NewEngineerRoleOptions) {
404
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
405
+ const argumentsTypes = [
406
+ null
407
+ ] satisfies (string | null)[];
408
+ const parameterNames = ["level"];
409
+ return (tx: Transaction) => tx.moveCall({
410
+ package: packageAddress,
411
+ module: 'recording_party_role',
412
+ function: 'new_engineer_role',
413
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
414
+ });
415
+ }
416
+ export interface NewEnsembleRoleArguments {
417
+ level: TransactionArgument;
418
+ }
419
+ export interface NewEnsembleRoleOptions {
420
+ package?: string;
421
+ arguments: NewEnsembleRoleArguments | [
422
+ level: TransactionArgument
423
+ ];
424
+ }
425
+ /** Creates a new Ensemble role with optional level. */
426
+ export function newEnsembleRole(options: NewEnsembleRoleOptions) {
427
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
428
+ const argumentsTypes = [
429
+ null
430
+ ] satisfies (string | null)[];
431
+ const parameterNames = ["level"];
432
+ return (tx: Transaction) => tx.moveCall({
433
+ package: packageAddress,
434
+ module: 'recording_party_role',
435
+ function: 'new_ensemble_role',
436
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
437
+ });
438
+ }
439
+ export interface NewInstrumentalistRoleArguments {
440
+ instrument: RawTransactionArgument<string>;
441
+ level: TransactionArgument;
442
+ }
443
+ export interface NewInstrumentalistRoleOptions {
444
+ package?: string;
445
+ arguments: NewInstrumentalistRoleArguments | [
446
+ instrument: RawTransactionArgument<string>,
447
+ level: TransactionArgument
448
+ ];
449
+ }
450
+ /**
451
+ * Creates a new Instrumentalist role with instrument name and optional level. The
452
+ * instrument name freezes into credits, so it is validated here.
453
+ */
454
+ export function newInstrumentalistRole(options: NewInstrumentalistRoleOptions) {
455
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
456
+ const argumentsTypes = [
457
+ '0x1::string::String',
458
+ null
459
+ ] satisfies (string | null)[];
460
+ const parameterNames = ["instrument", "level"];
461
+ return (tx: Transaction) => tx.moveCall({
462
+ package: packageAddress,
463
+ module: 'recording_party_role',
464
+ function: 'new_instrumentalist_role',
465
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
466
+ });
467
+ }
468
+ export interface NewMasteringEngineerRoleArguments {
469
+ level: TransactionArgument;
470
+ }
471
+ export interface NewMasteringEngineerRoleOptions {
472
+ package?: string;
473
+ arguments: NewMasteringEngineerRoleArguments | [
474
+ level: TransactionArgument
475
+ ];
476
+ }
477
+ /** Creates a new Mastering Engineer role with optional level. */
478
+ export function newMasteringEngineerRole(options: NewMasteringEngineerRoleOptions) {
479
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
480
+ const argumentsTypes = [
481
+ null
482
+ ] satisfies (string | null)[];
483
+ const parameterNames = ["level"];
484
+ return (tx: Transaction) => tx.moveCall({
485
+ package: packageAddress,
486
+ module: 'recording_party_role',
487
+ function: 'new_mastering_engineer_role',
488
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
489
+ });
490
+ }
491
+ export interface NewMixingEngineerRoleArguments {
492
+ level: TransactionArgument;
493
+ }
494
+ export interface NewMixingEngineerRoleOptions {
495
+ package?: string;
496
+ arguments: NewMixingEngineerRoleArguments | [
497
+ level: TransactionArgument
498
+ ];
499
+ }
500
+ /** Creates a new Mixing Engineer role with optional level. */
501
+ export function newMixingEngineerRole(options: NewMixingEngineerRoleOptions) {
502
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
503
+ const argumentsTypes = [
504
+ null
505
+ ] satisfies (string | null)[];
506
+ const parameterNames = ["level"];
507
+ return (tx: Transaction) => tx.moveCall({
508
+ package: packageAddress,
509
+ module: 'recording_party_role',
510
+ function: 'new_mixing_engineer_role',
511
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
512
+ });
513
+ }
514
+ export interface NewMusicDirectorRoleArguments {
515
+ level: TransactionArgument;
516
+ }
517
+ export interface NewMusicDirectorRoleOptions {
518
+ package?: string;
519
+ arguments: NewMusicDirectorRoleArguments | [
520
+ level: TransactionArgument
521
+ ];
522
+ }
523
+ /** Creates a new Music Director role with optional level. */
524
+ export function newMusicDirectorRole(options: NewMusicDirectorRoleOptions) {
525
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
526
+ const argumentsTypes = [
527
+ null
528
+ ] satisfies (string | null)[];
529
+ const parameterNames = ["level"];
530
+ return (tx: Transaction) => tx.moveCall({
531
+ package: packageAddress,
532
+ module: 'recording_party_role',
533
+ function: 'new_music_director_role',
534
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
535
+ });
536
+ }
537
+ export interface NewMusicSupervisorRoleArguments {
538
+ level: TransactionArgument;
539
+ }
540
+ export interface NewMusicSupervisorRoleOptions {
541
+ package?: string;
542
+ arguments: NewMusicSupervisorRoleArguments | [
543
+ level: TransactionArgument
544
+ ];
545
+ }
546
+ /** Creates a new Music Supervisor role with optional level. */
547
+ export function newMusicSupervisorRole(options: NewMusicSupervisorRoleOptions) {
548
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
549
+ const argumentsTypes = [
550
+ null
551
+ ] satisfies (string | null)[];
552
+ const parameterNames = ["level"];
553
+ return (tx: Transaction) => tx.moveCall({
554
+ package: packageAddress,
555
+ module: 'recording_party_role',
556
+ function: 'new_music_supervisor_role',
557
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
558
+ });
559
+ }
560
+ export interface NewNarratorRoleArguments {
561
+ level: TransactionArgument;
562
+ }
563
+ export interface NewNarratorRoleOptions {
564
+ package?: string;
565
+ arguments: NewNarratorRoleArguments | [
566
+ level: TransactionArgument
567
+ ];
568
+ }
569
+ /** Creates a new Narrator role with optional level. */
570
+ export function newNarratorRole(options: NewNarratorRoleOptions) {
571
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
572
+ const argumentsTypes = [
573
+ null
574
+ ] satisfies (string | null)[];
575
+ const parameterNames = ["level"];
576
+ return (tx: Transaction) => tx.moveCall({
577
+ package: packageAddress,
578
+ module: 'recording_party_role',
579
+ function: 'new_narrator_role',
580
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
581
+ });
582
+ }
583
+ export interface NewOrchestraRoleArguments {
584
+ level: TransactionArgument;
585
+ }
586
+ export interface NewOrchestraRoleOptions {
587
+ package?: string;
588
+ arguments: NewOrchestraRoleArguments | [
589
+ level: TransactionArgument
590
+ ];
591
+ }
592
+ /** Creates a new Orchestra role with optional level. */
593
+ export function newOrchestraRole(options: NewOrchestraRoleOptions) {
594
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
595
+ const argumentsTypes = [
596
+ null
597
+ ] satisfies (string | null)[];
598
+ const parameterNames = ["level"];
599
+ return (tx: Transaction) => tx.moveCall({
600
+ package: packageAddress,
601
+ module: 'recording_party_role',
602
+ function: 'new_orchestra_role',
603
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
604
+ });
605
+ }
606
+ export interface NewOrchestratorRoleArguments {
607
+ level: TransactionArgument;
608
+ }
609
+ export interface NewOrchestratorRoleOptions {
610
+ package?: string;
611
+ arguments: NewOrchestratorRoleArguments | [
612
+ level: TransactionArgument
613
+ ];
614
+ }
615
+ /** Creates a new Orchestrator role with optional level. */
616
+ export function newOrchestratorRole(options: NewOrchestratorRoleOptions) {
617
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
618
+ const argumentsTypes = [
619
+ null
620
+ ] satisfies (string | null)[];
621
+ const parameterNames = ["level"];
622
+ return (tx: Transaction) => tx.moveCall({
623
+ package: packageAddress,
624
+ module: 'recording_party_role',
625
+ function: 'new_orchestrator_role',
626
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
627
+ });
628
+ }
629
+ export interface NewPerformerRoleArguments {
630
+ level: TransactionArgument;
631
+ }
632
+ export interface NewPerformerRoleOptions {
633
+ package?: string;
634
+ arguments: NewPerformerRoleArguments | [
635
+ level: TransactionArgument
636
+ ];
637
+ }
638
+ /** Creates a new Performer role with optional level. */
639
+ export function newPerformerRole(options: NewPerformerRoleOptions) {
640
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
641
+ const argumentsTypes = [
642
+ null
643
+ ] satisfies (string | null)[];
644
+ const parameterNames = ["level"];
645
+ return (tx: Transaction) => tx.moveCall({
646
+ package: packageAddress,
647
+ module: 'recording_party_role',
648
+ function: 'new_performer_role',
649
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
650
+ });
651
+ }
652
+ export interface NewProducerRoleArguments {
653
+ level: TransactionArgument;
654
+ }
655
+ export interface NewProducerRoleOptions {
656
+ package?: string;
657
+ arguments: NewProducerRoleArguments | [
658
+ level: TransactionArgument
659
+ ];
660
+ }
661
+ /** Creates a new Producer role with optional level. */
662
+ export function newProducerRole(options: NewProducerRoleOptions) {
663
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
664
+ const argumentsTypes = [
665
+ null
666
+ ] satisfies (string | null)[];
667
+ const parameterNames = ["level"];
668
+ return (tx: Transaction) => tx.moveCall({
669
+ package: packageAddress,
670
+ module: 'recording_party_role',
671
+ function: 'new_producer_role',
672
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
673
+ });
674
+ }
675
+ export interface NewProgrammerRoleArguments {
676
+ level: TransactionArgument;
677
+ }
678
+ export interface NewProgrammerRoleOptions {
679
+ package?: string;
680
+ arguments: NewProgrammerRoleArguments | [
681
+ level: TransactionArgument
682
+ ];
683
+ }
684
+ /** Creates a new Programmer role with optional level. */
685
+ export function newProgrammerRole(options: NewProgrammerRoleOptions) {
686
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
687
+ const argumentsTypes = [
688
+ null
689
+ ] satisfies (string | null)[];
690
+ const parameterNames = ["level"];
691
+ return (tx: Transaction) => tx.moveCall({
692
+ package: packageAddress,
693
+ module: 'recording_party_role',
694
+ function: 'new_programmer_role',
695
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
696
+ });
697
+ }
698
+ export interface NewRecordingEngineerRoleArguments {
699
+ level: TransactionArgument;
700
+ }
701
+ export interface NewRecordingEngineerRoleOptions {
702
+ package?: string;
703
+ arguments: NewRecordingEngineerRoleArguments | [
704
+ level: TransactionArgument
705
+ ];
706
+ }
707
+ /** Creates a new Recording Engineer role with optional level. */
708
+ export function newRecordingEngineerRole(options: NewRecordingEngineerRoleOptions) {
709
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
710
+ const argumentsTypes = [
711
+ null
712
+ ] satisfies (string | null)[];
713
+ const parameterNames = ["level"];
714
+ return (tx: Transaction) => tx.moveCall({
715
+ package: packageAddress,
716
+ module: 'recording_party_role',
717
+ function: 'new_recording_engineer_role',
718
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
719
+ });
720
+ }
721
+ export interface NewRemixingEngineerRoleArguments {
722
+ level: TransactionArgument;
723
+ }
724
+ export interface NewRemixingEngineerRoleOptions {
725
+ package?: string;
726
+ arguments: NewRemixingEngineerRoleArguments | [
727
+ level: TransactionArgument
728
+ ];
729
+ }
730
+ /** Creates a new Remixing Engineer role with optional level. */
731
+ export function newRemixingEngineerRole(options: NewRemixingEngineerRoleOptions) {
732
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
733
+ const argumentsTypes = [
734
+ null
735
+ ] satisfies (string | null)[];
736
+ const parameterNames = ["level"];
737
+ return (tx: Transaction) => tx.moveCall({
738
+ package: packageAddress,
739
+ module: 'recording_party_role',
740
+ function: 'new_remixing_engineer_role',
741
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
742
+ });
743
+ }
744
+ export interface NewSoloistRoleArguments {
745
+ level: TransactionArgument;
746
+ }
747
+ export interface NewSoloistRoleOptions {
748
+ package?: string;
749
+ arguments: NewSoloistRoleArguments | [
750
+ level: TransactionArgument
751
+ ];
752
+ }
753
+ /** Creates a new Soloist role with optional level. */
754
+ export function newSoloistRole(options: NewSoloistRoleOptions) {
755
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
756
+ const argumentsTypes = [
757
+ null
758
+ ] satisfies (string | null)[];
759
+ const parameterNames = ["level"];
760
+ return (tx: Transaction) => tx.moveCall({
761
+ package: packageAddress,
762
+ module: 'recording_party_role',
763
+ function: 'new_soloist_role',
764
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
765
+ });
766
+ }
767
+ export interface NewSoundDesignerRoleArguments {
768
+ level: TransactionArgument;
769
+ }
770
+ export interface NewSoundDesignerRoleOptions {
771
+ package?: string;
772
+ arguments: NewSoundDesignerRoleArguments | [
773
+ level: TransactionArgument
774
+ ];
775
+ }
776
+ /** Creates a new Sound Designer role with optional level. */
777
+ export function newSoundDesignerRole(options: NewSoundDesignerRoleOptions) {
778
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
779
+ const argumentsTypes = [
780
+ null
781
+ ] satisfies (string | null)[];
782
+ const parameterNames = ["level"];
783
+ return (tx: Transaction) => tx.moveCall({
784
+ package: packageAddress,
785
+ module: 'recording_party_role',
786
+ function: 'new_sound_designer_role',
787
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
788
+ });
789
+ }
790
+ export interface NewSpeakerRoleArguments {
791
+ level: TransactionArgument;
792
+ }
793
+ export interface NewSpeakerRoleOptions {
794
+ package?: string;
795
+ arguments: NewSpeakerRoleArguments | [
796
+ level: TransactionArgument
797
+ ];
798
+ }
799
+ /** Creates a new Speaker role with optional level. */
800
+ export function newSpeakerRole(options: NewSpeakerRoleOptions) {
801
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
802
+ const argumentsTypes = [
803
+ null
804
+ ] satisfies (string | null)[];
805
+ const parameterNames = ["level"];
806
+ return (tx: Transaction) => tx.moveCall({
807
+ package: packageAddress,
808
+ module: 'recording_party_role',
809
+ function: 'new_speaker_role',
810
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
811
+ });
812
+ }
813
+ export interface NewVocalistRoleArguments {
814
+ level: TransactionArgument;
815
+ }
816
+ export interface NewVocalistRoleOptions {
817
+ package?: string;
818
+ arguments: NewVocalistRoleArguments | [
819
+ level: TransactionArgument
820
+ ];
821
+ }
822
+ /** Creates a new Vocalist role with optional level. */
823
+ export function newVocalistRole(options: NewVocalistRoleOptions) {
824
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
825
+ const argumentsTypes = [
826
+ null
827
+ ] satisfies (string | null)[];
828
+ const parameterNames = ["level"];
829
+ return (tx: Transaction) => tx.moveCall({
830
+ package: packageAddress,
831
+ module: 'recording_party_role',
832
+ function: 'new_vocalist_role',
833
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
834
+ });
835
+ }
836
+ export interface NewCustomRoleArguments {
837
+ roleName: RawTransactionArgument<string>;
838
+ level: TransactionArgument;
839
+ }
840
+ export interface NewCustomRoleOptions {
841
+ package?: string;
842
+ arguments: NewCustomRoleArguments | [
843
+ roleName: RawTransactionArgument<string>,
844
+ level: TransactionArgument
845
+ ];
846
+ }
847
+ /**
848
+ * Creates a new Custom role with a user-defined name and optional level. The name
849
+ * freezes into credits, so it is validated like an instrument name. Prefer a
850
+ * canonical variant when one fits.
851
+ */
852
+ export function newCustomRole(options: NewCustomRoleOptions) {
853
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
854
+ const argumentsTypes = [
855
+ '0x1::string::String',
856
+ null
857
+ ] satisfies (string | null)[];
858
+ const parameterNames = ["roleName", "level"];
859
+ return (tx: Transaction) => tx.moveCall({
860
+ package: packageAddress,
861
+ module: 'recording_party_role',
862
+ function: 'new_custom_role',
863
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
864
+ });
865
+ }
866
+ export interface NewAdditionalRoleLevelOptions {
867
+ package?: string;
868
+ arguments?: [
869
+ ];
870
+ }
871
+ /** Creates an Additional level. */
872
+ export function newAdditionalRoleLevel(options: NewAdditionalRoleLevelOptions = {}) {
873
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
874
+ return (tx: Transaction) => tx.moveCall({
875
+ package: packageAddress,
876
+ module: 'recording_party_role',
877
+ function: 'new_additional_role_level',
878
+ });
879
+ }
880
+ export interface NewAssistantRoleLevelOptions {
881
+ package?: string;
882
+ arguments?: [
883
+ ];
884
+ }
885
+ /** Creates an Assistant level. */
886
+ export function newAssistantRoleLevel(options: NewAssistantRoleLevelOptions = {}) {
887
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
888
+ return (tx: Transaction) => tx.moveCall({
889
+ package: packageAddress,
890
+ module: 'recording_party_role',
891
+ function: 'new_assistant_role_level',
892
+ });
893
+ }
894
+ export interface NewAssociateRoleLevelOptions {
895
+ package?: string;
896
+ arguments?: [
897
+ ];
898
+ }
899
+ /** Creates an Associate level. */
900
+ export function newAssociateRoleLevel(options: NewAssociateRoleLevelOptions = {}) {
901
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
902
+ return (tx: Transaction) => tx.moveCall({
903
+ package: packageAddress,
904
+ module: 'recording_party_role',
905
+ function: 'new_associate_role_level',
906
+ });
907
+ }
908
+ export interface NewBackingRoleLevelOptions {
909
+ package?: string;
910
+ arguments?: [
911
+ ];
912
+ }
913
+ /** Creates a Backing level. */
914
+ export function newBackingRoleLevel(options: NewBackingRoleLevelOptions = {}) {
915
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
916
+ return (tx: Transaction) => tx.moveCall({
917
+ package: packageAddress,
918
+ module: 'recording_party_role',
919
+ function: 'new_backing_role_level',
920
+ });
921
+ }
922
+ export interface NewExecutiveRoleLevelOptions {
923
+ package?: string;
924
+ arguments?: [
925
+ ];
926
+ }
927
+ /** Creates an Executive level. */
928
+ export function newExecutiveRoleLevel(options: NewExecutiveRoleLevelOptions = {}) {
929
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
930
+ return (tx: Transaction) => tx.moveCall({
931
+ package: packageAddress,
932
+ module: 'recording_party_role',
933
+ function: 'new_executive_role_level',
934
+ });
935
+ }
936
+ export interface NewFeaturedRoleLevelOptions {
937
+ package?: string;
938
+ arguments?: [
939
+ ];
940
+ }
941
+ /** Creates a Featured level. */
942
+ export function newFeaturedRoleLevel(options: NewFeaturedRoleLevelOptions = {}) {
943
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
944
+ return (tx: Transaction) => tx.moveCall({
945
+ package: packageAddress,
946
+ module: 'recording_party_role',
947
+ function: 'new_featured_role_level',
948
+ });
949
+ }
950
+ export interface NewLeadRoleLevelOptions {
951
+ package?: string;
952
+ arguments?: [
953
+ ];
954
+ }
955
+ /** Creates a Lead level. */
956
+ export function newLeadRoleLevel(options: NewLeadRoleLevelOptions = {}) {
957
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
958
+ return (tx: Transaction) => tx.moveCall({
959
+ package: packageAddress,
960
+ module: 'recording_party_role',
961
+ function: 'new_lead_role_level',
962
+ });
963
+ }
964
+ export interface NewPrimaryRoleLevelOptions {
965
+ package?: string;
966
+ arguments?: [
967
+ ];
968
+ }
969
+ /** Creates a Primary level. */
970
+ export function newPrimaryRoleLevel(options: NewPrimaryRoleLevelOptions = {}) {
971
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
972
+ return (tx: Transaction) => tx.moveCall({
973
+ package: packageAddress,
974
+ module: 'recording_party_role',
975
+ function: 'new_primary_role_level',
976
+ });
977
+ }
978
+ export interface NewPrincipalRoleLevelOptions {
979
+ package?: string;
980
+ arguments?: [
981
+ ];
982
+ }
983
+ /** Creates a Principal level. */
984
+ export function newPrincipalRoleLevel(options: NewPrincipalRoleLevelOptions = {}) {
985
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
986
+ return (tx: Transaction) => tx.moveCall({
987
+ package: packageAddress,
988
+ module: 'recording_party_role',
989
+ function: 'new_principal_role_level',
990
+ });
991
+ }
992
+ export interface LevelArguments {
993
+ self: TransactionArgument;
994
+ }
995
+ export interface LevelOptions {
996
+ package?: string;
997
+ arguments: LevelArguments | [
998
+ self: TransactionArgument
999
+ ];
1000
+ }
1001
+ /** Returns the optional level associated with this role. */
1002
+ export function level(options: LevelOptions) {
1003
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
1004
+ const argumentsTypes = [
1005
+ null
1006
+ ] satisfies (string | null)[];
1007
+ const parameterNames = ["self"];
1008
+ return (tx: Transaction) => tx.moveCall({
1009
+ package: packageAddress,
1010
+ module: 'recording_party_role',
1011
+ function: 'level',
1012
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1013
+ });
1014
+ }
1015
+ export interface NameArguments {
1016
+ self: TransactionArgument;
1017
+ }
1018
+ export interface NameOptions {
1019
+ package?: string;
1020
+ arguments: NameArguments | [
1021
+ self: TransactionArgument
1022
+ ];
1023
+ }
1024
+ /**
1025
+ * Returns the canonical identifier of the role as a stable PascalCase token. For
1026
+ * `Custom`, returns the user-supplied name; for `Instrumentalist`, returns
1027
+ * `"Instrumentalist"` (the instrument is read off-chain).
1028
+ */
1029
+ export function name(options: NameOptions) {
1030
+ const packageAddress = options.package ?? '@local-pkg/recording_credits';
1031
+ const argumentsTypes = [
1032
+ null
1033
+ ] satisfies (string | null)[];
1034
+ const parameterNames = ["self"];
1035
+ return (tx: Transaction) => tx.moveCall({
1036
+ package: packageAddress,
1037
+ module: 'recording_party_role',
1038
+ function: 'name',
1039
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1040
+ });
1041
+ }