@bosonprotocol/core-sdk 1.44.0-alpha.0 → 1.44.0-alpha.10

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 (327) hide show
  1. package/dist/cjs/accounts/handler.d.ts +115 -1
  2. package/dist/cjs/accounts/handler.d.ts.map +1 -1
  3. package/dist/cjs/accounts/handler.js +126 -28
  4. package/dist/cjs/accounts/handler.js.map +1 -1
  5. package/dist/cjs/accounts/mixin.d.ts +105 -8
  6. package/dist/cjs/accounts/mixin.d.ts.map +1 -1
  7. package/dist/cjs/accounts/mixin.js +162 -122
  8. package/dist/cjs/accounts/mixin.js.map +1 -1
  9. package/dist/cjs/core-sdk.d.ts +6 -6
  10. package/dist/cjs/core-sdk.d.ts.map +1 -1
  11. package/dist/cjs/core-sdk.js.map +1 -1
  12. package/dist/cjs/disputes/handler.d.ts +88 -7
  13. package/dist/cjs/disputes/handler.d.ts.map +1 -1
  14. package/dist/cjs/disputes/handler.js +98 -22
  15. package/dist/cjs/disputes/handler.js.map +1 -1
  16. package/dist/cjs/disputes/mixin.d.ts +37 -17
  17. package/dist/cjs/disputes/mixin.d.ts.map +1 -1
  18. package/dist/cjs/disputes/mixin.js +116 -96
  19. package/dist/cjs/disputes/mixin.js.map +1 -1
  20. package/dist/cjs/erc1155/mixin.d.ts +2 -1
  21. package/dist/cjs/erc1155/mixin.d.ts.map +1 -1
  22. package/dist/cjs/erc1155/mixin.js.map +1 -1
  23. package/dist/cjs/erc165/mixin.d.ts +2 -1
  24. package/dist/cjs/erc165/mixin.d.ts.map +1 -1
  25. package/dist/cjs/erc165/mixin.js.map +1 -1
  26. package/dist/cjs/erc20/handler.d.ts +11 -2
  27. package/dist/cjs/erc20/handler.d.ts.map +1 -1
  28. package/dist/cjs/erc20/handler.js +8 -1
  29. package/dist/cjs/erc20/handler.js.map +1 -1
  30. package/dist/cjs/erc20/mixin.d.ts +20 -3
  31. package/dist/cjs/erc20/mixin.d.ts.map +1 -1
  32. package/dist/cjs/erc20/mixin.js +15 -10
  33. package/dist/cjs/erc20/mixin.js.map +1 -1
  34. package/dist/cjs/erc721/handler.d.ts +11 -2
  35. package/dist/cjs/erc721/handler.d.ts.map +1 -1
  36. package/dist/cjs/erc721/handler.js +8 -2
  37. package/dist/cjs/erc721/handler.js.map +1 -1
  38. package/dist/cjs/erc721/mixin.d.ts +2 -1
  39. package/dist/cjs/erc721/mixin.d.ts.map +1 -1
  40. package/dist/cjs/erc721/mixin.js.map +1 -1
  41. package/dist/cjs/errors/mixin.d.ts +2 -1
  42. package/dist/cjs/errors/mixin.d.ts.map +1 -1
  43. package/dist/cjs/errors/mixin.js.map +1 -1
  44. package/dist/cjs/event-logs/mixin.d.ts +2 -1
  45. package/dist/cjs/event-logs/mixin.d.ts.map +1 -1
  46. package/dist/cjs/event-logs/mixin.js.map +1 -1
  47. package/dist/cjs/exchanges/handler.d.ts +44 -1
  48. package/dist/cjs/exchanges/handler.d.ts.map +1 -1
  49. package/dist/cjs/exchanges/handler.js +76 -17
  50. package/dist/cjs/exchanges/handler.js.map +1 -1
  51. package/dist/cjs/exchanges/mixin.d.ts +24 -8
  52. package/dist/cjs/exchanges/mixin.d.ts.map +1 -1
  53. package/dist/cjs/exchanges/mixin.js +72 -72
  54. package/dist/cjs/exchanges/mixin.js.map +1 -1
  55. package/dist/cjs/funds/handler.d.ts +27 -1
  56. package/dist/cjs/funds/handler.d.ts.map +1 -1
  57. package/dist/cjs/funds/handler.js +28 -7
  58. package/dist/cjs/funds/handler.js.map +1 -1
  59. package/dist/cjs/funds/mixin.d.ts +50 -17
  60. package/dist/cjs/funds/mixin.d.ts.map +1 -1
  61. package/dist/cjs/funds/mixin.js +48 -46
  62. package/dist/cjs/funds/mixin.js.map +1 -1
  63. package/dist/cjs/groups/handler.d.ts +8 -1
  64. package/dist/cjs/groups/handler.d.ts.map +1 -1
  65. package/dist/cjs/groups/handler.js +9 -2
  66. package/dist/cjs/groups/handler.js.map +1 -1
  67. package/dist/cjs/groups/mixin.d.ts +12 -4
  68. package/dist/cjs/groups/mixin.d.ts.map +1 -1
  69. package/dist/cjs/groups/mixin.js +10 -8
  70. package/dist/cjs/groups/mixin.js.map +1 -1
  71. package/dist/cjs/index.d.ts +1 -1
  72. package/dist/cjs/index.d.ts.map +1 -1
  73. package/dist/cjs/index.js +2 -1
  74. package/dist/cjs/index.js.map +1 -1
  75. package/dist/cjs/marketplaces/mixin.d.ts +2 -1
  76. package/dist/cjs/marketplaces/mixin.d.ts.map +1 -1
  77. package/dist/cjs/marketplaces/mixin.js.map +1 -1
  78. package/dist/cjs/meta-tx/handler.d.ts.map +1 -1
  79. package/dist/cjs/meta-tx/handler.js +12 -10
  80. package/dist/cjs/meta-tx/handler.js.map +1 -1
  81. package/dist/cjs/meta-tx/mixin.d.ts +5 -3
  82. package/dist/cjs/meta-tx/mixin.d.ts.map +1 -1
  83. package/dist/cjs/meta-tx/mixin.js +1 -1
  84. package/dist/cjs/meta-tx/mixin.js.map +1 -1
  85. package/dist/cjs/metadata/mixin.d.ts +2 -1
  86. package/dist/cjs/metadata/mixin.d.ts.map +1 -1
  87. package/dist/cjs/metadata/mixin.js.map +1 -1
  88. package/dist/cjs/mixins/base-core-sdk.d.ts +4 -4
  89. package/dist/cjs/mixins/base-core-sdk.d.ts.map +1 -1
  90. package/dist/cjs/mixins/base-core-sdk.js.map +1 -1
  91. package/dist/cjs/native-meta-tx/handler.d.ts.map +1 -1
  92. package/dist/cjs/native-meta-tx/handler.js +3 -2
  93. package/dist/cjs/native-meta-tx/handler.js.map +1 -1
  94. package/dist/cjs/native-meta-tx/mixin.d.ts +2 -2
  95. package/dist/cjs/native-meta-tx/mixin.d.ts.map +1 -1
  96. package/dist/cjs/native-meta-tx/mixin.js.map +1 -1
  97. package/dist/cjs/native-meta-tx/tokenSpecifics.d.ts.map +1 -1
  98. package/dist/cjs/offers/handler.d.ts +81 -0
  99. package/dist/cjs/offers/handler.d.ts.map +1 -1
  100. package/dist/cjs/offers/handler.js +90 -17
  101. package/dist/cjs/offers/handler.js.map +1 -1
  102. package/dist/cjs/offers/mixin.d.ts +53 -2
  103. package/dist/cjs/offers/mixin.d.ts.map +1 -1
  104. package/dist/cjs/offers/mixin.js +102 -97
  105. package/dist/cjs/offers/mixin.js.map +1 -1
  106. package/dist/cjs/orchestration/handler.d.ts +86 -1
  107. package/dist/cjs/orchestration/handler.d.ts.map +1 -1
  108. package/dist/cjs/orchestration/handler.js +64 -16
  109. package/dist/cjs/orchestration/handler.js.map +1 -1
  110. package/dist/cjs/orchestration/mixin.d.ts +2 -2
  111. package/dist/cjs/orchestration/mixin.d.ts.map +1 -1
  112. package/dist/cjs/orchestration/mixin.js.map +1 -1
  113. package/dist/cjs/price-discovery/handler.d.ts +11 -1
  114. package/dist/cjs/price-discovery/handler.d.ts.map +1 -1
  115. package/dist/cjs/price-discovery/handler.js +9 -2
  116. package/dist/cjs/price-discovery/handler.js.map +1 -1
  117. package/dist/cjs/price-discovery/mixin.d.ts +16 -4
  118. package/dist/cjs/price-discovery/mixin.d.ts.map +1 -1
  119. package/dist/cjs/price-discovery/mixin.js +14 -12
  120. package/dist/cjs/price-discovery/mixin.js.map +1 -1
  121. package/dist/cjs/protocol-config/handler.d.ts +9 -0
  122. package/dist/cjs/protocol-config/handler.d.ts.map +1 -1
  123. package/dist/cjs/protocol-config/handler.js +10 -3
  124. package/dist/cjs/protocol-config/handler.js.map +1 -1
  125. package/dist/cjs/protocol-config/mixin.d.ts +2 -1
  126. package/dist/cjs/protocol-config/mixin.d.ts.map +1 -1
  127. package/dist/cjs/protocol-config/mixin.js.map +1 -1
  128. package/dist/cjs/subgraph/mixin.d.ts +2 -2
  129. package/dist/cjs/subgraph/mixin.d.ts.map +1 -1
  130. package/dist/cjs/subgraph/mixin.js.map +1 -1
  131. package/dist/cjs/utils/promises.d.ts.map +1 -1
  132. package/dist/cjs/utils/signature.d.ts +20 -7
  133. package/dist/cjs/utils/signature.d.ts.map +1 -1
  134. package/dist/cjs/utils/signature.js +6 -2
  135. package/dist/cjs/utils/signature.js.map +1 -1
  136. package/dist/cjs/voucher/handler.d.ts +56 -1
  137. package/dist/cjs/voucher/handler.d.ts.map +1 -1
  138. package/dist/cjs/voucher/handler.js +56 -14
  139. package/dist/cjs/voucher/handler.js.map +1 -1
  140. package/dist/cjs/voucher/mixin.d.ts +66 -22
  141. package/dist/cjs/voucher/mixin.d.ts.map +1 -1
  142. package/dist/cjs/voucher/mixin.js +75 -61
  143. package/dist/cjs/voucher/mixin.js.map +1 -1
  144. package/dist/esm/accounts/handler.d.ts +115 -1
  145. package/dist/esm/accounts/handler.d.ts.map +1 -1
  146. package/dist/esm/accounts/handler.js +126 -28
  147. package/dist/esm/accounts/handler.js.map +1 -1
  148. package/dist/esm/accounts/mixin.d.ts +105 -8
  149. package/dist/esm/accounts/mixin.d.ts.map +1 -1
  150. package/dist/esm/accounts/mixin.js +249 -116
  151. package/dist/esm/accounts/mixin.js.map +1 -1
  152. package/dist/esm/core-sdk.d.ts +6 -6
  153. package/dist/esm/core-sdk.d.ts.map +1 -1
  154. package/dist/esm/core-sdk.js.map +1 -1
  155. package/dist/esm/disputes/handler.d.ts +88 -7
  156. package/dist/esm/disputes/handler.d.ts.map +1 -1
  157. package/dist/esm/disputes/handler.js +104 -22
  158. package/dist/esm/disputes/handler.js.map +1 -1
  159. package/dist/esm/disputes/mixin.d.ts +37 -17
  160. package/dist/esm/disputes/mixin.d.ts.map +1 -1
  161. package/dist/esm/disputes/mixin.js +171 -100
  162. package/dist/esm/disputes/mixin.js.map +1 -1
  163. package/dist/esm/erc1155/mixin.d.ts +2 -1
  164. package/dist/esm/erc1155/mixin.d.ts.map +1 -1
  165. package/dist/esm/erc1155/mixin.js.map +1 -1
  166. package/dist/esm/erc165/mixin.d.ts +2 -1
  167. package/dist/esm/erc165/mixin.d.ts.map +1 -1
  168. package/dist/esm/erc165/mixin.js.map +1 -1
  169. package/dist/esm/erc20/handler.d.ts +11 -2
  170. package/dist/esm/erc20/handler.d.ts.map +1 -1
  171. package/dist/esm/erc20/handler.js +9 -2
  172. package/dist/esm/erc20/handler.js.map +1 -1
  173. package/dist/esm/erc20/mixin.d.ts +20 -3
  174. package/dist/esm/erc20/mixin.d.ts.map +1 -1
  175. package/dist/esm/erc20/mixin.js +24 -8
  176. package/dist/esm/erc20/mixin.js.map +1 -1
  177. package/dist/esm/erc721/handler.d.ts +11 -2
  178. package/dist/esm/erc721/handler.d.ts.map +1 -1
  179. package/dist/esm/erc721/handler.js +8 -2
  180. package/dist/esm/erc721/handler.js.map +1 -1
  181. package/dist/esm/erc721/mixin.d.ts +2 -1
  182. package/dist/esm/erc721/mixin.d.ts.map +1 -1
  183. package/dist/esm/erc721/mixin.js.map +1 -1
  184. package/dist/esm/errors/mixin.d.ts +2 -1
  185. package/dist/esm/errors/mixin.d.ts.map +1 -1
  186. package/dist/esm/errors/mixin.js.map +1 -1
  187. package/dist/esm/event-logs/mixin.d.ts +2 -1
  188. package/dist/esm/event-logs/mixin.d.ts.map +1 -1
  189. package/dist/esm/event-logs/mixin.js.map +1 -1
  190. package/dist/esm/exchanges/handler.d.ts +44 -1
  191. package/dist/esm/exchanges/handler.d.ts.map +1 -1
  192. package/dist/esm/exchanges/handler.js +80 -16
  193. package/dist/esm/exchanges/handler.js.map +1 -1
  194. package/dist/esm/exchanges/mixin.d.ts +24 -8
  195. package/dist/esm/exchanges/mixin.d.ts.map +1 -1
  196. package/dist/esm/exchanges/mixin.js +120 -72
  197. package/dist/esm/exchanges/mixin.js.map +1 -1
  198. package/dist/esm/funds/handler.d.ts +27 -1
  199. package/dist/esm/funds/handler.d.ts.map +1 -1
  200. package/dist/esm/funds/handler.js +28 -7
  201. package/dist/esm/funds/handler.js.map +1 -1
  202. package/dist/esm/funds/mixin.d.ts +50 -17
  203. package/dist/esm/funds/mixin.d.ts.map +1 -1
  204. package/dist/esm/funds/mixin.js +62 -42
  205. package/dist/esm/funds/mixin.js.map +1 -1
  206. package/dist/esm/groups/handler.d.ts +8 -1
  207. package/dist/esm/groups/handler.d.ts.map +1 -1
  208. package/dist/esm/groups/handler.js +9 -2
  209. package/dist/esm/groups/handler.js.map +1 -1
  210. package/dist/esm/groups/mixin.d.ts +12 -4
  211. package/dist/esm/groups/mixin.d.ts.map +1 -1
  212. package/dist/esm/groups/mixin.js +16 -8
  213. package/dist/esm/groups/mixin.js.map +1 -1
  214. package/dist/esm/index.d.ts +1 -1
  215. package/dist/esm/index.d.ts.map +1 -1
  216. package/dist/esm/index.js +1 -1
  217. package/dist/esm/index.js.map +1 -1
  218. package/dist/esm/marketplaces/mixin.d.ts +2 -1
  219. package/dist/esm/marketplaces/mixin.d.ts.map +1 -1
  220. package/dist/esm/marketplaces/mixin.js.map +1 -1
  221. package/dist/esm/meta-tx/handler.d.ts.map +1 -1
  222. package/dist/esm/meta-tx/handler.js +20 -10
  223. package/dist/esm/meta-tx/handler.js.map +1 -1
  224. package/dist/esm/meta-tx/mixin.d.ts +5 -3
  225. package/dist/esm/meta-tx/mixin.d.ts.map +1 -1
  226. package/dist/esm/meta-tx/mixin.js +1 -1
  227. package/dist/esm/meta-tx/mixin.js.map +1 -1
  228. package/dist/esm/metadata/mixin.d.ts +2 -1
  229. package/dist/esm/metadata/mixin.d.ts.map +1 -1
  230. package/dist/esm/metadata/mixin.js.map +1 -1
  231. package/dist/esm/mixins/base-core-sdk.d.ts +4 -4
  232. package/dist/esm/mixins/base-core-sdk.d.ts.map +1 -1
  233. package/dist/esm/mixins/base-core-sdk.js.map +1 -1
  234. package/dist/esm/native-meta-tx/handler.d.ts.map +1 -1
  235. package/dist/esm/native-meta-tx/handler.js +4 -2
  236. package/dist/esm/native-meta-tx/handler.js.map +1 -1
  237. package/dist/esm/native-meta-tx/mixin.d.ts +2 -2
  238. package/dist/esm/native-meta-tx/mixin.d.ts.map +1 -1
  239. package/dist/esm/native-meta-tx/mixin.js.map +1 -1
  240. package/dist/esm/native-meta-tx/tokenSpecifics.d.ts.map +1 -1
  241. package/dist/esm/offers/handler.d.ts +81 -0
  242. package/dist/esm/offers/handler.d.ts.map +1 -1
  243. package/dist/esm/offers/handler.js +91 -18
  244. package/dist/esm/offers/handler.js.map +1 -1
  245. package/dist/esm/offers/mixin.d.ts +53 -2
  246. package/dist/esm/offers/mixin.d.ts.map +1 -1
  247. package/dist/esm/offers/mixin.js +162 -97
  248. package/dist/esm/offers/mixin.js.map +1 -1
  249. package/dist/esm/orchestration/handler.d.ts +86 -1
  250. package/dist/esm/orchestration/handler.d.ts.map +1 -1
  251. package/dist/esm/orchestration/handler.js +64 -16
  252. package/dist/esm/orchestration/handler.js.map +1 -1
  253. package/dist/esm/orchestration/mixin.d.ts +2 -2
  254. package/dist/esm/orchestration/mixin.d.ts.map +1 -1
  255. package/dist/esm/orchestration/mixin.js.map +1 -1
  256. package/dist/esm/price-discovery/handler.d.ts +11 -1
  257. package/dist/esm/price-discovery/handler.d.ts.map +1 -1
  258. package/dist/esm/price-discovery/handler.js +9 -2
  259. package/dist/esm/price-discovery/handler.js.map +1 -1
  260. package/dist/esm/price-discovery/mixin.d.ts +16 -4
  261. package/dist/esm/price-discovery/mixin.d.ts.map +1 -1
  262. package/dist/esm/price-discovery/mixin.js +19 -11
  263. package/dist/esm/price-discovery/mixin.js.map +1 -1
  264. package/dist/esm/protocol-config/handler.d.ts +9 -0
  265. package/dist/esm/protocol-config/handler.d.ts.map +1 -1
  266. package/dist/esm/protocol-config/handler.js +10 -3
  267. package/dist/esm/protocol-config/handler.js.map +1 -1
  268. package/dist/esm/protocol-config/mixin.d.ts +2 -1
  269. package/dist/esm/protocol-config/mixin.d.ts.map +1 -1
  270. package/dist/esm/protocol-config/mixin.js.map +1 -1
  271. package/dist/esm/subgraph/mixin.d.ts +2 -2
  272. package/dist/esm/subgraph/mixin.d.ts.map +1 -1
  273. package/dist/esm/subgraph/mixin.js.map +1 -1
  274. package/dist/esm/utils/promises.d.ts.map +1 -1
  275. package/dist/esm/utils/signature.d.ts +20 -7
  276. package/dist/esm/utils/signature.d.ts.map +1 -1
  277. package/dist/esm/utils/signature.js +6 -2
  278. package/dist/esm/utils/signature.js.map +1 -1
  279. package/dist/esm/voucher/handler.d.ts +56 -1
  280. package/dist/esm/voucher/handler.d.ts.map +1 -1
  281. package/dist/esm/voucher/handler.js +56 -14
  282. package/dist/esm/voucher/handler.js.map +1 -1
  283. package/dist/esm/voucher/mixin.d.ts +66 -22
  284. package/dist/esm/voucher/mixin.d.ts.map +1 -1
  285. package/dist/esm/voucher/mixin.js +93 -55
  286. package/dist/esm/voucher/mixin.js.map +1 -1
  287. package/dist/tsconfig.cjs.tsbuildinfo +1 -1
  288. package/package.json +3 -3
  289. package/src/accounts/handler.ts +369 -42
  290. package/src/accounts/mixin.ts +644 -57
  291. package/src/core-sdk.ts +26 -26
  292. package/src/disputes/handler.ts +294 -35
  293. package/src/disputes/mixin.ts +301 -46
  294. package/src/erc1155/mixin.ts +2 -1
  295. package/src/erc165/mixin.ts +2 -1
  296. package/src/erc20/handler.ts +36 -4
  297. package/src/erc20/mixin.ts +77 -10
  298. package/src/erc721/handler.ts +34 -4
  299. package/src/erc721/mixin.ts +2 -1
  300. package/src/errors/mixin.ts +2 -2
  301. package/src/event-logs/mixin.ts +2 -1
  302. package/src/exchanges/handler.ts +235 -25
  303. package/src/exchanges/mixin.ts +223 -32
  304. package/src/funds/handler.ts +99 -13
  305. package/src/funds/mixin.ts +177 -39
  306. package/src/groups/handler.ts +28 -3
  307. package/src/groups/mixin.ts +50 -7
  308. package/src/index.ts +1 -0
  309. package/src/marketplaces/mixin.ts +2 -1
  310. package/src/meta-tx/handler.ts +20 -10
  311. package/src/meta-tx/mixin.ts +8 -4
  312. package/src/metadata/mixin.ts +2 -1
  313. package/src/mixins/base-core-sdk.ts +5 -5
  314. package/src/native-meta-tx/handler.ts +4 -2
  315. package/src/native-meta-tx/mixin.ts +8 -2
  316. package/src/offers/handler.ts +300 -27
  317. package/src/offers/mixin.ts +399 -35
  318. package/src/orchestration/handler.ts +259 -24
  319. package/src/orchestration/mixin.ts +8 -2
  320. package/src/price-discovery/handler.ts +35 -4
  321. package/src/price-discovery/mixin.ts +60 -9
  322. package/src/protocol-config/handler.ts +26 -4
  323. package/src/protocol-config/mixin.ts +4 -1
  324. package/src/subgraph/mixin.ts +6 -2
  325. package/src/utils/signature.ts +46 -5
  326. package/src/voucher/handler.ts +192 -22
  327. package/src/voucher/mixin.ts +244 -66
package/src/core-sdk.ts CHANGED
@@ -30,7 +30,7 @@ import { SubgraphMixin } from "./subgraph/mixin";
30
30
  import { PriceDiscoveryMixin } from "./price-discovery/mixin";
31
31
  import { MarketplaceMixin } from "./marketplaces/mixin";
32
32
 
33
- export class CoreSDK extends BaseCoreSDK {
33
+ export class CoreSDK<T extends Web3LibAdapter> extends BaseCoreSDK<T> {
34
34
  /**
35
35
  * Creates an instance of `CoreSDK` by using default values derived either from
36
36
  * `args.envName` or `args.chainId`.
@@ -47,8 +47,8 @@ export class CoreSDK extends BaseCoreSDK {
47
47
  * @param args - Constructor args.
48
48
  * @returns CoreSDK instance with default values.
49
49
  */
50
- static fromDefaultConfig(args: {
51
- web3Lib: Web3LibAdapter;
50
+ static fromDefaultConfig<T extends Web3LibAdapter>(args: {
51
+ web3Lib: T;
52
52
  envName: EnvironmentType;
53
53
  configId: ConfigId;
54
54
  metadataStorage?: MetadataStorage;
@@ -57,7 +57,7 @@ export class CoreSDK extends BaseCoreSDK {
57
57
  }) {
58
58
  const defaultConfig = getEnvConfigById(args.envName, args.configId);
59
59
 
60
- return new CoreSDK({
60
+ return new CoreSDK<T>({
61
61
  web3Lib: args.web3Lib,
62
62
  metadataStorage: args.metadataStorage,
63
63
  theGraphStorage: args.theGraphStorage,
@@ -132,28 +132,28 @@ export class CoreSDK extends BaseCoreSDK {
132
132
 
133
133
  // Doc: https://www.typescriptlang.org/docs/handbook/mixins.html#alternative-pattern
134
134
  // eslint-disable-next-line @typescript-eslint/no-empty-interface
135
- export interface CoreSDK
136
- extends MetadataMixin,
137
- AccountsMixin,
138
- OfferMixin,
139
- FundsMixin,
140
- ExchangesMixin,
141
- DisputesMixin,
142
- MetaTxMixin,
143
- NativeMetaTxMixin,
144
- GroupsMixin,
145
- OrchestrationMixin,
146
- EventLogsMixin,
147
- VoucherMixin,
148
- ERC20Mixin,
149
- ERC721Mixin,
150
- ERC1155Mixin,
151
- ERC165Mixin,
152
- ProtocolConfigMixin,
153
- ErrorMixin,
154
- SubgraphMixin,
155
- PriceDiscoveryMixin,
156
- MarketplaceMixin {}
135
+ export interface CoreSDK<T extends Web3LibAdapter = Web3LibAdapter>
136
+ extends MetadataMixin<T>,
137
+ AccountsMixin<T>,
138
+ OfferMixin<T>,
139
+ FundsMixin<T>,
140
+ ExchangesMixin<T>,
141
+ DisputesMixin<T>,
142
+ MetaTxMixin<T>,
143
+ NativeMetaTxMixin<T>,
144
+ GroupsMixin<T>,
145
+ OrchestrationMixin<T>,
146
+ EventLogsMixin<T>,
147
+ VoucherMixin<T>,
148
+ ERC20Mixin<T>,
149
+ ERC721Mixin<T>,
150
+ ERC1155Mixin<T>,
151
+ ERC165Mixin<T>,
152
+ ProtocolConfigMixin<T>,
153
+ ErrorMixin<T>,
154
+ SubgraphMixin<T>,
155
+ PriceDiscoveryMixin<T>,
156
+ MarketplaceMixin<T> {}
157
157
  applyMixins(CoreSDK, [
158
158
  MetadataMixin,
159
159
  AccountsMixin,
@@ -1,4 +1,8 @@
1
- import { Web3LibAdapter, TransactionResponse } from "@bosonprotocol/common";
1
+ import {
2
+ Web3LibAdapter,
3
+ TransactionResponse,
4
+ TransactionRequest
5
+ } from "@bosonprotocol/common";
2
6
  import { BigNumberish } from "@ethersproject/bignumber";
3
7
  import { BytesLike } from "@ethersproject/bytes";
4
8
 
@@ -14,64 +18,176 @@ import {
14
18
  encodeResolveDispute,
15
19
  encodeRetractDispute
16
20
  } from "./interface";
17
- import { prepareDataSignatureParameters } from "../utils/signature";
21
+ import {
22
+ getSignatureParameters,
23
+ prepareDataSignatureParameters,
24
+ StructuredData
25
+ } from "../utils/signature";
18
26
 
27
+ // Overload: returnTxInfo is true → returns TransactionRequest
28
+ export async function raiseDispute(args: {
29
+ exchangeId: BigNumberish;
30
+ contractAddress: string;
31
+ web3Lib: Web3LibAdapter;
32
+ returnTxInfo: true;
33
+ }): Promise<TransactionRequest>;
34
+ // Overload: returnTxInfo is false or undefined → returns TransactionResponse
35
+ export async function raiseDispute(args: {
36
+ exchangeId: BigNumberish;
37
+ contractAddress: string;
38
+ web3Lib: Web3LibAdapter;
39
+ returnTxInfo?: false | undefined;
40
+ }): Promise<TransactionResponse>;
41
+ // Implementation
19
42
  export async function raiseDispute(args: {
20
43
  exchangeId: BigNumberish;
21
44
  contractAddress: string;
22
45
  web3Lib: Web3LibAdapter;
23
- }): Promise<TransactionResponse> {
24
- return args.web3Lib.sendTransaction({
46
+ returnTxInfo?: boolean;
47
+ }): Promise<TransactionResponse | TransactionRequest> {
48
+ const transactionRequest = {
25
49
  to: args.contractAddress,
26
50
  data: encodeRaiseDispute(args)
27
- });
51
+ } satisfies TransactionRequest;
52
+ if (args.returnTxInfo) {
53
+ return transactionRequest;
54
+ } else {
55
+ return args.web3Lib.sendTransaction(transactionRequest);
56
+ }
28
57
  }
29
58
 
59
+ // Overload: returnTxInfo is true → returns TransactionRequest
60
+ export async function retractDispute(args: {
61
+ exchangeId: BigNumberish;
62
+ contractAddress: string;
63
+ web3Lib: Web3LibAdapter;
64
+ returnTxInfo: true;
65
+ }): Promise<TransactionRequest>;
66
+ // Overload: returnTxInfo is false or undefined → returns TransactionResponse
30
67
  export async function retractDispute(args: {
31
68
  exchangeId: BigNumberish;
32
69
  contractAddress: string;
33
70
  web3Lib: Web3LibAdapter;
34
- }): Promise<TransactionResponse> {
35
- return args.web3Lib.sendTransaction({
71
+ returnTxInfo?: false | undefined;
72
+ }): Promise<TransactionResponse>;
73
+ // Implementation
74
+ export async function retractDispute(args: {
75
+ exchangeId: BigNumberish;
76
+ contractAddress: string;
77
+ web3Lib: Web3LibAdapter;
78
+ returnTxInfo?: boolean;
79
+ }): Promise<TransactionResponse | TransactionRequest> {
80
+ const transactionRequest = {
36
81
  to: args.contractAddress,
37
82
  data: encodeRetractDispute(args.exchangeId)
38
- });
83
+ } satisfies TransactionRequest;
84
+ if (args.returnTxInfo) {
85
+ return transactionRequest;
86
+ } else {
87
+ return args.web3Lib.sendTransaction(transactionRequest);
88
+ }
39
89
  }
40
90
 
91
+ // Overload: returnTxInfo is true → returns TransactionRequest
92
+ export async function extendDisputeTimeout(args: {
93
+ exchangeId: BigNumberish;
94
+ newDisputeTimeout: BigNumberish;
95
+ contractAddress: string;
96
+ web3Lib: Web3LibAdapter;
97
+ returnTxInfo: true;
98
+ }): Promise<TransactionRequest>;
99
+ // Overload: returnTxInfo is false or undefined → returns TransactionResponse
100
+ export async function extendDisputeTimeout(args: {
101
+ exchangeId: BigNumberish;
102
+ newDisputeTimeout: BigNumberish;
103
+ contractAddress: string;
104
+ web3Lib: Web3LibAdapter;
105
+ returnTxInfo?: false | undefined;
106
+ }): Promise<TransactionResponse>;
107
+ // Implementation
41
108
  export async function extendDisputeTimeout(args: {
42
109
  exchangeId: BigNumberish;
43
110
  newDisputeTimeout: BigNumberish;
44
111
  contractAddress: string;
45
112
  web3Lib: Web3LibAdapter;
46
- }): Promise<TransactionResponse> {
47
- return args.web3Lib.sendTransaction({
113
+ returnTxInfo?: boolean;
114
+ }): Promise<TransactionResponse | TransactionRequest> {
115
+ const transactionRequest = {
48
116
  to: args.contractAddress,
49
117
  data: encodeExtendDisputeTimeout(args)
50
- });
118
+ } satisfies TransactionRequest;
119
+ if (args.returnTxInfo) {
120
+ return transactionRequest;
121
+ } else {
122
+ return args.web3Lib.sendTransaction(transactionRequest);
123
+ }
51
124
  }
52
125
 
126
+ // Overload: returnTxInfo is true → returns TransactionRequest
127
+ export async function expireDispute(args: {
128
+ exchangeId: BigNumberish;
129
+ contractAddress: string;
130
+ web3Lib: Web3LibAdapter;
131
+ returnTxInfo: true;
132
+ }): Promise<TransactionRequest>;
133
+ // Overload: returnTxInfo is false or undefined → returns TransactionResponse
134
+ export async function expireDispute(args: {
135
+ exchangeId: BigNumberish;
136
+ contractAddress: string;
137
+ web3Lib: Web3LibAdapter;
138
+ returnTxInfo?: false | undefined;
139
+ }): Promise<TransactionResponse>;
140
+ // Implementation
53
141
  export async function expireDispute(args: {
54
142
  exchangeId: BigNumberish;
55
143
  contractAddress: string;
56
144
  web3Lib: Web3LibAdapter;
57
- }): Promise<TransactionResponse> {
58
- return args.web3Lib.sendTransaction({
145
+ returnTxInfo?: boolean;
146
+ }): Promise<TransactionResponse | TransactionRequest> {
147
+ const transactionRequest = {
59
148
  to: args.contractAddress,
60
149
  data: encodeExpireDispute(args.exchangeId)
61
- });
150
+ } satisfies TransactionRequest;
151
+ if (args.returnTxInfo) {
152
+ return transactionRequest;
153
+ } else {
154
+ return args.web3Lib.sendTransaction(transactionRequest);
155
+ }
62
156
  }
63
157
 
158
+ // Overload: returnTxInfo is true → returns TransactionRequest
64
159
  export async function expireDisputeBatch(args: {
65
160
  exchangeIds: BigNumberish[];
66
161
  contractAddress: string;
67
162
  web3Lib: Web3LibAdapter;
68
- }): Promise<TransactionResponse> {
69
- return args.web3Lib.sendTransaction({
163
+ returnTxInfo: true;
164
+ }): Promise<TransactionRequest>;
165
+ // Overload: returnTxInfo is false or undefined → returns TransactionResponse
166
+ export async function expireDisputeBatch(args: {
167
+ exchangeIds: BigNumberish[];
168
+ contractAddress: string;
169
+ web3Lib: Web3LibAdapter;
170
+ returnTxInfo?: false | undefined;
171
+ }): Promise<TransactionResponse>;
172
+ // Implementation
173
+ export async function expireDisputeBatch(args: {
174
+ exchangeIds: BigNumberish[];
175
+ contractAddress: string;
176
+ web3Lib: Web3LibAdapter;
177
+ returnTxInfo?: boolean;
178
+ }): Promise<TransactionResponse | TransactionRequest> {
179
+ const transactionRequest = {
70
180
  to: args.contractAddress,
71
181
  data: encodeExpireDisputeBatch(args.exchangeIds)
72
- });
182
+ } satisfies TransactionRequest;
183
+ if (args.returnTxInfo) {
184
+ return transactionRequest;
185
+ } else {
186
+ return args.web3Lib.sendTransaction(transactionRequest);
187
+ }
73
188
  }
74
189
 
190
+ // Overload: returnTxInfo is true → returns TransactionRequest
75
191
  export async function resolveDispute(args: {
76
192
  exchangeId: BigNumberish;
77
193
  buyerPercentBasisPoints: BigNumberish;
@@ -80,56 +196,170 @@ export async function resolveDispute(args: {
80
196
  sigV: BigNumberish;
81
197
  contractAddress: string;
82
198
  web3Lib: Web3LibAdapter;
83
- }): Promise<TransactionResponse> {
84
- return args.web3Lib.sendTransaction({
199
+ returnTxInfo: true;
200
+ }): Promise<TransactionRequest>;
201
+ // Overload: returnTxInfo is false or undefined → returns TransactionResponse
202
+ export async function resolveDispute(args: {
203
+ exchangeId: BigNumberish;
204
+ buyerPercentBasisPoints: BigNumberish;
205
+ sigR: BytesLike;
206
+ sigS: BytesLike;
207
+ sigV: BigNumberish;
208
+ contractAddress: string;
209
+ web3Lib: Web3LibAdapter;
210
+ returnTxInfo?: false | undefined;
211
+ }): Promise<TransactionResponse>;
212
+ // Implementation
213
+ export async function resolveDispute(args: {
214
+ exchangeId: BigNumberish;
215
+ buyerPercentBasisPoints: BigNumberish;
216
+ sigR: BytesLike;
217
+ sigS: BytesLike;
218
+ sigV: BigNumberish;
219
+ contractAddress: string;
220
+ web3Lib: Web3LibAdapter;
221
+ returnTxInfo?: boolean;
222
+ }): Promise<TransactionResponse | TransactionRequest> {
223
+ const transactionRequest = {
85
224
  to: args.contractAddress,
86
225
  data: encodeResolveDispute(args)
87
- });
226
+ } satisfies TransactionRequest;
227
+ if (args.returnTxInfo) {
228
+ return transactionRequest;
229
+ } else {
230
+ return args.web3Lib.sendTransaction(transactionRequest);
231
+ }
88
232
  }
89
233
 
234
+ // Overload: returnTxInfo is true → returns TransactionRequest
235
+ export async function escalateDispute(args: {
236
+ exchangeId: BigNumberish;
237
+ contractAddress: string;
238
+ web3Lib: Web3LibAdapter;
239
+ returnTxInfo: true;
240
+ }): Promise<TransactionRequest>;
241
+ // Overload: returnTxInfo is false or undefined → returns TransactionResponse
242
+ export async function escalateDispute(args: {
243
+ exchangeId: BigNumberish;
244
+ contractAddress: string;
245
+ web3Lib: Web3LibAdapter;
246
+ returnTxInfo?: false | undefined;
247
+ }): Promise<TransactionResponse>;
248
+ // Implementation
90
249
  export async function escalateDispute(args: {
91
250
  exchangeId: BigNumberish;
92
251
  contractAddress: string;
93
252
  web3Lib: Web3LibAdapter;
94
- }): Promise<TransactionResponse> {
95
- return args.web3Lib.sendTransaction({
253
+ returnTxInfo?: boolean;
254
+ }): Promise<TransactionResponse | TransactionRequest> {
255
+ const transactionRequest = {
96
256
  to: args.contractAddress,
97
257
  data: encodeEscalateDispute(args.exchangeId)
98
- });
258
+ } satisfies TransactionRequest;
259
+ if (args.returnTxInfo) {
260
+ return transactionRequest;
261
+ } else {
262
+ return args.web3Lib.sendTransaction(transactionRequest);
263
+ }
99
264
  }
100
265
 
266
+ // Overload: returnTxInfo is true → returns TransactionRequest
101
267
  export async function decideDispute(args: {
102
268
  exchangeId: BigNumberish;
103
269
  buyerPercent: BigNumberish;
104
270
  contractAddress: string;
105
271
  web3Lib: Web3LibAdapter;
106
- }): Promise<TransactionResponse> {
107
- return args.web3Lib.sendTransaction({
272
+ returnTxInfo: true;
273
+ }): Promise<TransactionRequest>;
274
+ // Overload: returnTxInfo is false or undefined → returns TransactionResponse
275
+ export async function decideDispute(args: {
276
+ exchangeId: BigNumberish;
277
+ buyerPercent: BigNumberish;
278
+ contractAddress: string;
279
+ web3Lib: Web3LibAdapter;
280
+ returnTxInfo?: false | undefined;
281
+ }): Promise<TransactionResponse>;
282
+ // Implementation
283
+ export async function decideDispute(args: {
284
+ exchangeId: BigNumberish;
285
+ buyerPercent: BigNumberish;
286
+ contractAddress: string;
287
+ web3Lib: Web3LibAdapter;
288
+ returnTxInfo?: boolean;
289
+ }): Promise<TransactionResponse | TransactionRequest> {
290
+ const transactionRequest = {
108
291
  to: args.contractAddress,
109
292
  data: encodeDecideDispute(args)
110
- });
293
+ } satisfies TransactionRequest;
294
+ if (args.returnTxInfo) {
295
+ return transactionRequest;
296
+ } else {
297
+ return args.web3Lib.sendTransaction(transactionRequest);
298
+ }
111
299
  }
112
300
 
301
+ // Overload: returnTxInfo is true → returns TransactionRequest
113
302
  export async function refuseEscalatedDispute(args: {
114
303
  exchangeId: BigNumberish;
115
304
  contractAddress: string;
116
305
  web3Lib: Web3LibAdapter;
117
- }): Promise<TransactionResponse> {
118
- return args.web3Lib.sendTransaction({
306
+ returnTxInfo: true;
307
+ }): Promise<TransactionRequest>;
308
+ // Overload: returnTxInfo is false or undefined → returns TransactionResponse
309
+ export async function refuseEscalatedDispute(args: {
310
+ exchangeId: BigNumberish;
311
+ contractAddress: string;
312
+ web3Lib: Web3LibAdapter;
313
+ returnTxInfo?: false | undefined;
314
+ }): Promise<TransactionResponse>;
315
+ // Implementation
316
+ export async function refuseEscalatedDispute(args: {
317
+ exchangeId: BigNumberish;
318
+ contractAddress: string;
319
+ web3Lib: Web3LibAdapter;
320
+ returnTxInfo?: boolean;
321
+ }): Promise<TransactionResponse | TransactionRequest> {
322
+ const transactionRequest = {
119
323
  to: args.contractAddress,
120
324
  data: encodeRefuseEscalatedDispute(args.exchangeId)
121
- });
325
+ } satisfies TransactionRequest;
326
+ if (args.returnTxInfo) {
327
+ return transactionRequest;
328
+ } else {
329
+ return args.web3Lib.sendTransaction(transactionRequest);
330
+ }
122
331
  }
123
332
 
333
+ // Overload: returnTxInfo is true → returns TransactionRequest
334
+ export async function expireEscalatedDispute(args: {
335
+ exchangeId: BigNumberish;
336
+ contractAddress: string;
337
+ web3Lib: Web3LibAdapter;
338
+ returnTxInfo: true;
339
+ }): Promise<TransactionRequest>;
340
+ // Overload: returnTxInfo is false or undefined → returns TransactionResponse
341
+ export async function expireEscalatedDispute(args: {
342
+ exchangeId: BigNumberish;
343
+ contractAddress: string;
344
+ web3Lib: Web3LibAdapter;
345
+ returnTxInfo?: false | undefined;
346
+ }): Promise<TransactionResponse>;
347
+ // Implementation
124
348
  export async function expireEscalatedDispute(args: {
125
349
  exchangeId: BigNumberish;
126
350
  contractAddress: string;
127
351
  web3Lib: Web3LibAdapter;
128
- }): Promise<TransactionResponse> {
129
- return args.web3Lib.sendTransaction({
352
+ returnTxInfo?: boolean;
353
+ }): Promise<TransactionResponse | TransactionRequest> {
354
+ const transactionRequest = {
130
355
  to: args.contractAddress,
131
356
  data: encodeExpireEscalatedDispute(args.exchangeId)
132
- });
357
+ } satisfies TransactionRequest;
358
+ if (args.returnTxInfo) {
359
+ return transactionRequest;
360
+ } else {
361
+ return args.web3Lib.sendTransaction(transactionRequest);
362
+ }
133
363
  }
134
364
 
135
365
  export async function signResolutionProposal(args: {
@@ -138,7 +368,24 @@ export async function signResolutionProposal(args: {
138
368
  contractAddress: string;
139
369
  web3Lib: Web3LibAdapter;
140
370
  chainId: number;
141
- }) {
371
+ returnTypedDataToSign: true;
372
+ }): Promise<StructuredData>;
373
+ export async function signResolutionProposal(args: {
374
+ exchangeId: BigNumberish;
375
+ buyerPercentBasisPoints: BigNumberish;
376
+ contractAddress: string;
377
+ web3Lib: Web3LibAdapter;
378
+ chainId: number;
379
+ returnTypedDataToSign?: false;
380
+ }): Promise<ReturnType<typeof getSignatureParameters>>;
381
+ export async function signResolutionProposal(args: {
382
+ exchangeId: BigNumberish;
383
+ buyerPercentBasisPoints: BigNumberish;
384
+ contractAddress: string;
385
+ web3Lib: Web3LibAdapter;
386
+ chainId: number;
387
+ returnTypedDataToSign?: boolean;
388
+ }): Promise<StructuredData | ReturnType<typeof getSignatureParameters>> {
142
389
  const customSignatureType = {
143
390
  Resolution: [
144
391
  { name: "exchangeId", type: "uint256" },
@@ -151,12 +398,24 @@ export async function signResolutionProposal(args: {
151
398
  buyerPercentBasisPoints: args.buyerPercentBasisPoints.toString()
152
399
  };
153
400
 
154
- return prepareDataSignatureParameters({
401
+ const signatureArgs = {
155
402
  message,
156
403
  customSignatureType,
157
404
  web3Lib: args.web3Lib,
158
405
  verifyingContractAddress: args.contractAddress,
159
406
  chainId: args.chainId,
160
407
  primaryType: "Resolution"
161
- });
408
+ } as const;
409
+
410
+ if (args.returnTypedDataToSign) {
411
+ return prepareDataSignatureParameters({
412
+ ...signatureArgs,
413
+ returnTypedDataToSign: true
414
+ });
415
+ } else {
416
+ return prepareDataSignatureParameters({
417
+ ...signatureArgs,
418
+ returnTypedDataToSign: false
419
+ });
420
+ }
162
421
  }