@snagsolutions/sdk 0.1.0-alpha.15 → 0.1.0-alpha.151

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 (426) hide show
  1. package/CHANGELOG.md +1261 -45
  2. package/README.md +17 -29
  3. package/_shims/index.d.ts +2 -0
  4. package/_shims/index.js +5 -1
  5. package/_shims/index.mjs +5 -1
  6. package/core.d.ts +19 -5
  7. package/core.d.ts.map +1 -1
  8. package/core.js +26 -17
  9. package/core.js.map +1 -1
  10. package/core.mjs +27 -18
  11. package/core.mjs.map +1 -1
  12. package/index.d.mts +30 -6
  13. package/index.d.ts +30 -6
  14. package/index.d.ts.map +1 -1
  15. package/index.js +36 -11
  16. package/index.js.map +1 -1
  17. package/index.mjs +36 -11
  18. package/index.mjs.map +1 -1
  19. package/package.json +4 -5
  20. package/resource.d.ts +1 -1
  21. package/resource.d.ts.map +1 -1
  22. package/resource.js.map +1 -1
  23. package/resource.mjs.map +1 -1
  24. package/resources/assets.d.ts +64 -0
  25. package/resources/assets.d.ts.map +1 -0
  26. package/resources/assets.js +25 -0
  27. package/resources/assets.js.map +1 -0
  28. package/resources/assets.mjs +21 -0
  29. package/resources/assets.mjs.map +1 -0
  30. package/resources/auctions/auctions.d.ts +285 -0
  31. package/resources/auctions/auctions.d.ts.map +1 -0
  32. package/resources/auctions/auctions.js +76 -0
  33. package/resources/auctions/auctions.js.map +1 -0
  34. package/resources/auctions/auctions.mjs +49 -0
  35. package/resources/auctions/auctions.mjs.map +1 -0
  36. package/resources/auctions/index.d.ts +3 -0
  37. package/resources/auctions/index.d.ts.map +1 -0
  38. package/resources/auctions/index.js +9 -0
  39. package/resources/auctions/index.js.map +1 -0
  40. package/resources/auctions/index.mjs +4 -0
  41. package/resources/auctions/index.mjs.map +1 -0
  42. package/resources/auctions/website-user-attributes/index.d.ts +3 -0
  43. package/resources/auctions/website-user-attributes/index.d.ts.map +1 -0
  44. package/resources/auctions/website-user-attributes/index.js +9 -0
  45. package/resources/auctions/website-user-attributes/index.js.map +1 -0
  46. package/resources/auctions/website-user-attributes/index.mjs +4 -0
  47. package/resources/auctions/website-user-attributes/index.mjs.map +1 -0
  48. package/resources/auctions/website-user-attributes/values.d.ts +122 -0
  49. package/resources/auctions/website-user-attributes/values.d.ts.map +1 -0
  50. package/resources/auctions/website-user-attributes/values.js +49 -0
  51. package/resources/auctions/website-user-attributes/values.js.map +1 -0
  52. package/resources/auctions/website-user-attributes/values.mjs +45 -0
  53. package/resources/auctions/website-user-attributes/values.mjs.map +1 -0
  54. package/resources/auctions/website-user-attributes/website-user-attributes.d.ts +132 -0
  55. package/resources/auctions/website-user-attributes/website-user-attributes.d.ts.map +1 -0
  56. package/resources/auctions/website-user-attributes/website-user-attributes.js +76 -0
  57. package/resources/auctions/website-user-attributes/website-user-attributes.js.map +1 -0
  58. package/resources/auctions/website-user-attributes/website-user-attributes.mjs +49 -0
  59. package/resources/auctions/website-user-attributes/website-user-attributes.mjs.map +1 -0
  60. package/resources/auctions/website-user-attributes.d.ts +2 -0
  61. package/resources/auctions/website-user-attributes.d.ts.map +1 -0
  62. package/resources/auctions/website-user-attributes.js +19 -0
  63. package/resources/auctions/website-user-attributes.js.map +1 -0
  64. package/resources/auctions/website-user-attributes.mjs +3 -0
  65. package/resources/auctions/website-user-attributes.mjs.map +1 -0
  66. package/resources/auctions.d.ts +2 -0
  67. package/resources/auctions.d.ts.map +1 -0
  68. package/resources/{api.js → auctions.js} +2 -2
  69. package/resources/auctions.js.map +1 -0
  70. package/resources/{api.mjs → auctions.mjs} +2 -2
  71. package/resources/auctions.mjs.map +1 -0
  72. package/resources/auth.d.ts +48 -0
  73. package/resources/auth.d.ts.map +1 -0
  74. package/resources/auth.js +16 -0
  75. package/resources/auth.js.map +1 -0
  76. package/resources/auth.mjs +12 -0
  77. package/resources/auth.mjs.map +1 -0
  78. package/resources/index.d.ts +8 -1
  79. package/resources/index.d.ts.map +1 -1
  80. package/resources/index.js +17 -3
  81. package/resources/index.js.map +1 -1
  82. package/resources/index.mjs +8 -1
  83. package/resources/index.mjs.map +1 -1
  84. package/resources/loyalty/account-streaks.d.ts +81 -0
  85. package/resources/loyalty/account-streaks.d.ts.map +1 -0
  86. package/resources/loyalty/account-streaks.js +24 -0
  87. package/resources/loyalty/account-streaks.js.map +1 -0
  88. package/resources/loyalty/account-streaks.mjs +20 -0
  89. package/resources/loyalty/account-streaks.mjs.map +1 -0
  90. package/resources/{api/loyalty → loyalty}/accounts.d.ts +36 -27
  91. package/resources/loyalty/accounts.d.ts.map +1 -0
  92. package/resources/{api/loyalty → loyalty}/accounts.js +17 -4
  93. package/resources/loyalty/accounts.js.map +1 -0
  94. package/resources/loyalty/accounts.mjs +33 -0
  95. package/resources/loyalty/accounts.mjs.map +1 -0
  96. package/resources/{api/loyalty → loyalty}/badges.d.ts +474 -24
  97. package/resources/loyalty/badges.d.ts.map +1 -0
  98. package/resources/{api/loyalty → loyalty}/badges.js +21 -3
  99. package/resources/loyalty/badges.js.map +1 -0
  100. package/resources/{api/loyalty → loyalty}/badges.mjs +21 -3
  101. package/resources/loyalty/badges.mjs.map +1 -0
  102. package/resources/{api/loyalty → loyalty}/currencies.d.ts +27 -2
  103. package/resources/loyalty/currencies.d.ts.map +1 -0
  104. package/resources/loyalty/currencies.js +40 -0
  105. package/resources/loyalty/currencies.js.map +1 -0
  106. package/resources/loyalty/currencies.mjs +36 -0
  107. package/resources/loyalty/currencies.mjs.map +1 -0
  108. package/resources/{api/loyalty → loyalty}/index.d.ts +6 -3
  109. package/resources/loyalty/index.d.ts.map +1 -0
  110. package/resources/{api/loyalty → loyalty}/index.js +7 -1
  111. package/resources/loyalty/index.js.map +1 -0
  112. package/resources/{api/loyalty → loyalty}/index.mjs +4 -1
  113. package/resources/loyalty/index.mjs.map +1 -0
  114. package/resources/loyalty/loyalty.d.ts +50 -0
  115. package/resources/loyalty/loyalty.d.ts.map +1 -0
  116. package/resources/{api/loyalty → loyalty}/loyalty.js +13 -20
  117. package/resources/loyalty/loyalty.js.map +1 -0
  118. package/resources/{api/loyalty → loyalty}/loyalty.mjs +13 -20
  119. package/resources/loyalty/loyalty.mjs.map +1 -0
  120. package/resources/{api/loyalty → loyalty}/multipliers.d.ts +65 -4
  121. package/resources/loyalty/multipliers.d.ts.map +1 -0
  122. package/resources/{api/loyalty → loyalty}/multipliers.js +25 -2
  123. package/resources/loyalty/multipliers.js.map +1 -0
  124. package/resources/{api/loyalty → loyalty}/multipliers.mjs +25 -2
  125. package/resources/loyalty/multipliers.mjs.map +1 -0
  126. package/resources/{api/loyalty → loyalty}/questions-responses.d.ts +41 -2
  127. package/resources/loyalty/questions-responses.d.ts.map +1 -0
  128. package/resources/{api/loyalty → loyalty}/questions-responses.js +11 -2
  129. package/resources/loyalty/questions-responses.js.map +1 -0
  130. package/resources/{api/loyalty → loyalty}/questions-responses.mjs +11 -2
  131. package/resources/loyalty/questions-responses.mjs.map +1 -0
  132. package/resources/{api/loyalty → loyalty}/questions.d.ts +39 -4
  133. package/resources/loyalty/questions.d.ts.map +1 -0
  134. package/resources/loyalty/questions.js +58 -0
  135. package/resources/loyalty/questions.js.map +1 -0
  136. package/resources/loyalty/questions.mjs +54 -0
  137. package/resources/loyalty/questions.mjs.map +1 -0
  138. package/resources/loyalty/rule-edits.d.ts +2920 -0
  139. package/resources/loyalty/rule-edits.d.ts.map +1 -0
  140. package/resources/{api/loyalty → loyalty}/rule-edits.js +15 -1
  141. package/resources/loyalty/rule-edits.js.map +1 -0
  142. package/resources/{api/loyalty → loyalty}/rule-edits.mjs +15 -1
  143. package/resources/loyalty/rule-edits.mjs.map +1 -0
  144. package/resources/{api/loyalty/loyalty.d.ts → loyalty/rule-groups.d.ts} +280 -321
  145. package/resources/loyalty/rule-groups.d.ts.map +1 -0
  146. package/resources/loyalty/rule-groups.js +52 -0
  147. package/resources/loyalty/rule-groups.js.map +1 -0
  148. package/resources/loyalty/rule-groups.mjs +48 -0
  149. package/resources/loyalty/rule-groups.mjs.map +1 -0
  150. package/resources/{api/loyalty → loyalty}/rules.d.ts +1778 -239
  151. package/resources/loyalty/rules.d.ts.map +1 -0
  152. package/resources/loyalty/rules.js +77 -0
  153. package/resources/loyalty/rules.js.map +1 -0
  154. package/resources/loyalty/rules.mjs +73 -0
  155. package/resources/loyalty/rules.mjs.map +1 -0
  156. package/resources/loyalty/transactions/index.d.ts +3 -0
  157. package/resources/loyalty/transactions/index.d.ts.map +1 -0
  158. package/resources/loyalty/transactions/index.js +9 -0
  159. package/resources/loyalty/transactions/index.js.map +1 -0
  160. package/resources/loyalty/transactions/index.mjs +4 -0
  161. package/resources/loyalty/transactions/index.mjs.map +1 -0
  162. package/resources/loyalty/transactions/rule-statuses.d.ts +120 -0
  163. package/resources/loyalty/transactions/rule-statuses.d.ts.map +1 -0
  164. package/resources/loyalty/transactions/rule-statuses.js +30 -0
  165. package/resources/loyalty/transactions/rule-statuses.js.map +1 -0
  166. package/resources/loyalty/transactions/rule-statuses.mjs +26 -0
  167. package/resources/loyalty/transactions/rule-statuses.mjs.map +1 -0
  168. package/resources/loyalty/transactions/transactions.d.ts +410 -0
  169. package/resources/loyalty/transactions/transactions.d.ts.map +1 -0
  170. package/resources/loyalty/transactions/transactions.js +76 -0
  171. package/resources/loyalty/transactions/transactions.js.map +1 -0
  172. package/resources/loyalty/transactions/transactions.mjs +49 -0
  173. package/resources/loyalty/transactions/transactions.mjs.map +1 -0
  174. package/resources/loyalty/transactions.d.ts +2 -0
  175. package/resources/loyalty/transactions.d.ts.map +1 -0
  176. package/resources/loyalty/transactions.js +19 -0
  177. package/resources/loyalty/transactions.js.map +1 -0
  178. package/resources/loyalty/transactions.mjs +3 -0
  179. package/resources/loyalty/transactions.mjs.map +1 -0
  180. package/resources/loyalty.d.ts.map +1 -0
  181. package/resources/loyalty.js.map +1 -0
  182. package/resources/loyalty.mjs.map +1 -0
  183. package/resources/{api/minting.d.ts → minting.d.ts} +7 -7
  184. package/resources/minting.d.ts.map +1 -0
  185. package/resources/{api/minting.js → minting.js} +1 -1
  186. package/resources/minting.js.map +1 -0
  187. package/resources/{api/minting.mjs → minting.mjs} +1 -1
  188. package/resources/minting.mjs.map +1 -0
  189. package/resources/referral/index.d.ts.map +1 -0
  190. package/resources/referral/index.js.map +1 -0
  191. package/resources/referral/index.mjs.map +1 -0
  192. package/resources/{api/referral → referral}/referral.d.ts +13 -5
  193. package/resources/referral/referral.d.ts.map +1 -0
  194. package/resources/{api/referral → referral}/referral.js +12 -6
  195. package/resources/referral/referral.js.map +1 -0
  196. package/resources/{api/referral → referral}/referral.mjs +12 -6
  197. package/resources/referral/referral.mjs.map +1 -0
  198. package/resources/{api/referral → referral}/users.d.ts +30 -3
  199. package/resources/referral/users.d.ts.map +1 -0
  200. package/resources/{api/referral → referral}/users.js +15 -1
  201. package/resources/referral/users.js.map +1 -0
  202. package/resources/{api/referral → referral}/users.mjs +15 -1
  203. package/resources/referral/users.mjs.map +1 -0
  204. package/resources/referral.d.ts.map +1 -0
  205. package/resources/referral.js.map +1 -0
  206. package/resources/referral.mjs.map +1 -0
  207. package/resources/users/index.d.ts +3 -0
  208. package/resources/users/index.d.ts.map +1 -0
  209. package/resources/users/index.js.map +1 -0
  210. package/resources/users/index.mjs.map +1 -0
  211. package/resources/{api/users → users}/metadatas.d.ts +34 -2
  212. package/resources/users/metadatas.d.ts.map +1 -0
  213. package/resources/{api/users → users}/metadatas.js +2 -2
  214. package/resources/users/metadatas.js.map +1 -0
  215. package/resources/{api/users → users}/metadatas.mjs +2 -2
  216. package/resources/users/metadatas.mjs.map +1 -0
  217. package/resources/users/users.d.ts +422 -0
  218. package/resources/users/users.d.ts.map +1 -0
  219. package/resources/{api/users → users}/users.js +61 -2
  220. package/resources/users/users.js.map +1 -0
  221. package/resources/users/users.mjs +89 -0
  222. package/resources/users/users.mjs.map +1 -0
  223. package/resources/users.d.ts.map +1 -0
  224. package/resources/users.js.map +1 -0
  225. package/resources/users.mjs.map +1 -0
  226. package/resources/websites/index.d.ts +4 -0
  227. package/resources/websites/index.d.ts.map +1 -0
  228. package/resources/websites/index.js +11 -0
  229. package/resources/websites/index.js.map +1 -0
  230. package/resources/{api → websites}/index.mjs +0 -5
  231. package/resources/websites/index.mjs.map +1 -0
  232. package/resources/{api → websites}/website-collections.d.ts +22 -1
  233. package/resources/websites/website-collections.d.ts.map +1 -0
  234. package/resources/{api → websites}/website-collections.js +21 -0
  235. package/resources/websites/website-collections.js.map +1 -0
  236. package/resources/websites/website-collections.mjs +42 -0
  237. package/resources/websites/website-collections.mjs.map +1 -0
  238. package/resources/{api → websites}/website-user-roles.d.ts +23 -0
  239. package/resources/websites/website-user-roles.d.ts.map +1 -0
  240. package/resources/{api → websites}/website-user-roles.js +23 -0
  241. package/resources/websites/website-user-roles.js.map +1 -0
  242. package/resources/websites/website-user-roles.mjs +41 -0
  243. package/resources/websites/website-user-roles.mjs.map +1 -0
  244. package/resources/{api → websites}/websites.d.ts +20 -0
  245. package/resources/websites/websites.d.ts.map +1 -0
  246. package/resources/websites/websites.js +63 -0
  247. package/resources/websites/websites.js.map +1 -0
  248. package/resources/websites/websites.mjs +36 -0
  249. package/resources/websites/websites.mjs.map +1 -0
  250. package/resources/websites.d.ts +2 -0
  251. package/resources/websites.d.ts.map +1 -0
  252. package/resources/websites.js +19 -0
  253. package/resources/websites.js.map +1 -0
  254. package/resources/websites.mjs +3 -0
  255. package/resources/websites.mjs.map +1 -0
  256. package/src/_shims/index.d.ts +2 -0
  257. package/src/_shims/index.js +5 -1
  258. package/src/_shims/index.mjs +5 -1
  259. package/src/core.ts +45 -17
  260. package/src/index.ts +126 -24
  261. package/src/resource.ts +1 -1
  262. package/src/resources/assets.ts +93 -0
  263. package/src/resources/auctions/auctions.ts +436 -0
  264. package/src/resources/auctions/index.ts +18 -0
  265. package/src/resources/auctions/website-user-attributes/index.ts +18 -0
  266. package/src/resources/auctions/website-user-attributes/values.ts +165 -0
  267. package/src/resources/auctions/website-user-attributes/website-user-attributes.ts +207 -0
  268. package/src/resources/auctions/website-user-attributes.ts +3 -0
  269. package/src/resources/{api.ts → auctions.ts} +1 -1
  270. package/src/resources/auth.ts +79 -0
  271. package/src/resources/index.ts +37 -8
  272. package/src/resources/loyalty/account-streaks.ts +110 -0
  273. package/src/resources/{api/loyalty → loyalty}/accounts.ts +41 -35
  274. package/src/resources/{api/loyalty → loyalty}/badges.ts +570 -27
  275. package/src/resources/{api/loyalty → loyalty}/currencies.ts +27 -2
  276. package/src/resources/{api/loyalty → loyalty}/index.ts +28 -11
  277. package/src/resources/loyalty/loyalty.ts +259 -0
  278. package/src/resources/{api/loyalty → loyalty}/multipliers.ts +70 -7
  279. package/src/resources/{api/loyalty → loyalty}/questions-responses.ts +48 -3
  280. package/src/resources/{api/loyalty → loyalty}/questions.ts +40 -4
  281. package/src/resources/loyalty/rule-edits.ts +4008 -0
  282. package/src/resources/{api/loyalty/loyalty.ts → loyalty/rule-groups.ts} +443 -551
  283. package/src/resources/{api/loyalty → loyalty}/rules.ts +2927 -526
  284. package/src/resources/loyalty/transactions/index.ts +18 -0
  285. package/src/resources/loyalty/transactions/rule-statuses.ts +178 -0
  286. package/src/resources/loyalty/transactions/transactions.ts +677 -0
  287. package/src/resources/loyalty/transactions.ts +3 -0
  288. package/src/resources/{api/minting.ts → minting.ts} +37 -23
  289. package/src/resources/{api/referral → referral}/referral.ts +15 -13
  290. package/src/resources/{api/referral → referral}/users.ts +35 -4
  291. package/src/resources/{api/users → users}/index.ts +6 -0
  292. package/src/resources/{api/users → users}/metadatas.ts +62 -3
  293. package/src/resources/users/users.ts +603 -0
  294. package/src/resources/websites/index.ts +22 -0
  295. package/src/resources/{api → websites}/website-collections.ts +52 -17
  296. package/src/resources/{api → websites}/website-user-roles.ts +23 -0
  297. package/src/resources/{api → websites}/websites.ts +52 -0
  298. package/src/resources/websites.ts +3 -0
  299. package/src/version.ts +1 -1
  300. package/version.d.ts +1 -1
  301. package/version.d.ts.map +1 -1
  302. package/version.js +1 -1
  303. package/version.js.map +1 -1
  304. package/version.mjs +1 -1
  305. package/version.mjs.map +1 -1
  306. package/resources/api/api.d.ts +0 -365
  307. package/resources/api/api.d.ts.map +0 -1
  308. package/resources/api/api.js +0 -94
  309. package/resources/api/api.js.map +0 -1
  310. package/resources/api/api.mjs +0 -67
  311. package/resources/api/api.mjs.map +0 -1
  312. package/resources/api/index.d.ts +0 -9
  313. package/resources/api/index.d.ts.map +0 -1
  314. package/resources/api/index.js +0 -21
  315. package/resources/api/index.js.map +0 -1
  316. package/resources/api/index.mjs.map +0 -1
  317. package/resources/api/loyalty/accounts.d.ts.map +0 -1
  318. package/resources/api/loyalty/accounts.js.map +0 -1
  319. package/resources/api/loyalty/accounts.mjs +0 -20
  320. package/resources/api/loyalty/accounts.mjs.map +0 -1
  321. package/resources/api/loyalty/badges.d.ts.map +0 -1
  322. package/resources/api/loyalty/badges.js.map +0 -1
  323. package/resources/api/loyalty/badges.mjs.map +0 -1
  324. package/resources/api/loyalty/currencies.d.ts.map +0 -1
  325. package/resources/api/loyalty/currencies.js +0 -21
  326. package/resources/api/loyalty/currencies.js.map +0 -1
  327. package/resources/api/loyalty/currencies.mjs +0 -17
  328. package/resources/api/loyalty/currencies.mjs.map +0 -1
  329. package/resources/api/loyalty/index.d.ts.map +0 -1
  330. package/resources/api/loyalty/index.js.map +0 -1
  331. package/resources/api/loyalty/index.mjs.map +0 -1
  332. package/resources/api/loyalty/loyalty.d.ts.map +0 -1
  333. package/resources/api/loyalty/loyalty.js.map +0 -1
  334. package/resources/api/loyalty/loyalty.mjs.map +0 -1
  335. package/resources/api/loyalty/multipliers.d.ts.map +0 -1
  336. package/resources/api/loyalty/multipliers.js.map +0 -1
  337. package/resources/api/loyalty/multipliers.mjs.map +0 -1
  338. package/resources/api/loyalty/questions-responses.d.ts.map +0 -1
  339. package/resources/api/loyalty/questions-responses.js.map +0 -1
  340. package/resources/api/loyalty/questions-responses.mjs.map +0 -1
  341. package/resources/api/loyalty/questions.d.ts.map +0 -1
  342. package/resources/api/loyalty/questions.js +0 -27
  343. package/resources/api/loyalty/questions.js.map +0 -1
  344. package/resources/api/loyalty/questions.mjs +0 -23
  345. package/resources/api/loyalty/questions.mjs.map +0 -1
  346. package/resources/api/loyalty/rule-edits.d.ts +0 -330
  347. package/resources/api/loyalty/rule-edits.d.ts.map +0 -1
  348. package/resources/api/loyalty/rule-edits.js.map +0 -1
  349. package/resources/api/loyalty/rule-edits.mjs.map +0 -1
  350. package/resources/api/loyalty/rules.d.ts.map +0 -1
  351. package/resources/api/loyalty/rules.js +0 -46
  352. package/resources/api/loyalty/rules.js.map +0 -1
  353. package/resources/api/loyalty/rules.mjs +0 -42
  354. package/resources/api/loyalty/rules.mjs.map +0 -1
  355. package/resources/api/loyalty.d.ts.map +0 -1
  356. package/resources/api/loyalty.js.map +0 -1
  357. package/resources/api/loyalty.mjs.map +0 -1
  358. package/resources/api/minting.d.ts.map +0 -1
  359. package/resources/api/minting.js.map +0 -1
  360. package/resources/api/minting.mjs.map +0 -1
  361. package/resources/api/referral/index.d.ts.map +0 -1
  362. package/resources/api/referral/index.js.map +0 -1
  363. package/resources/api/referral/index.mjs.map +0 -1
  364. package/resources/api/referral/referral.d.ts.map +0 -1
  365. package/resources/api/referral/referral.js.map +0 -1
  366. package/resources/api/referral/referral.mjs.map +0 -1
  367. package/resources/api/referral/users.d.ts.map +0 -1
  368. package/resources/api/referral/users.js.map +0 -1
  369. package/resources/api/referral/users.mjs.map +0 -1
  370. package/resources/api/referral.d.ts.map +0 -1
  371. package/resources/api/referral.js.map +0 -1
  372. package/resources/api/referral.mjs.map +0 -1
  373. package/resources/api/users/index.d.ts +0 -3
  374. package/resources/api/users/index.d.ts.map +0 -1
  375. package/resources/api/users/index.js.map +0 -1
  376. package/resources/api/users/index.mjs.map +0 -1
  377. package/resources/api/users/metadatas.d.ts.map +0 -1
  378. package/resources/api/users/metadatas.js.map +0 -1
  379. package/resources/api/users/metadatas.mjs.map +0 -1
  380. package/resources/api/users/users.d.ts +0 -133
  381. package/resources/api/users/users.d.ts.map +0 -1
  382. package/resources/api/users/users.js.map +0 -1
  383. package/resources/api/users/users.mjs +0 -30
  384. package/resources/api/users/users.mjs.map +0 -1
  385. package/resources/api/users.d.ts.map +0 -1
  386. package/resources/api/users.js.map +0 -1
  387. package/resources/api/users.mjs.map +0 -1
  388. package/resources/api/website-collections.d.ts.map +0 -1
  389. package/resources/api/website-collections.js.map +0 -1
  390. package/resources/api/website-collections.mjs +0 -21
  391. package/resources/api/website-collections.mjs.map +0 -1
  392. package/resources/api/website-user-roles.d.ts.map +0 -1
  393. package/resources/api/website-user-roles.js.map +0 -1
  394. package/resources/api/website-user-roles.mjs +0 -18
  395. package/resources/api/website-user-roles.mjs.map +0 -1
  396. package/resources/api/websites.d.ts.map +0 -1
  397. package/resources/api/websites.js +0 -22
  398. package/resources/api/websites.js.map +0 -1
  399. package/resources/api/websites.mjs +0 -18
  400. package/resources/api/websites.mjs.map +0 -1
  401. package/resources/api.d.ts +0 -2
  402. package/resources/api.d.ts.map +0 -1
  403. package/resources/api.js.map +0 -1
  404. package/resources/api.mjs.map +0 -1
  405. package/src/resources/api/api.ts +0 -629
  406. package/src/resources/api/index.ts +0 -51
  407. package/src/resources/api/loyalty/rule-edits.ts +0 -418
  408. package/src/resources/api/users/users.ts +0 -203
  409. /package/resources/{api/loyalty.d.ts → loyalty.d.ts} +0 -0
  410. /package/resources/{api/loyalty.js → loyalty.js} +0 -0
  411. /package/resources/{api/loyalty.mjs → loyalty.mjs} +0 -0
  412. /package/resources/{api/referral → referral}/index.d.ts +0 -0
  413. /package/resources/{api/referral → referral}/index.js +0 -0
  414. /package/resources/{api/referral → referral}/index.mjs +0 -0
  415. /package/resources/{api/referral.d.ts → referral.d.ts} +0 -0
  416. /package/resources/{api/referral.js → referral.js} +0 -0
  417. /package/resources/{api/referral.mjs → referral.mjs} +0 -0
  418. /package/resources/{api/users → users}/index.js +0 -0
  419. /package/resources/{api/users → users}/index.mjs +0 -0
  420. /package/resources/{api/users.d.ts → users.d.ts} +0 -0
  421. /package/resources/{api/users.js → users.js} +0 -0
  422. /package/resources/{api/users.mjs → users.mjs} +0 -0
  423. /package/src/resources/{api/loyalty.ts → loyalty.ts} +0 -0
  424. /package/src/resources/{api/referral → referral}/index.ts +0 -0
  425. /package/src/resources/{api/referral.ts → referral.ts} +0 -0
  426. /package/src/resources/{api/users.ts → users.ts} +0 -0
@@ -1,36 +1,93 @@
1
- import { APIResource } from "../../../resource.js";
2
- import * as Core from "../../../core.js";
1
+ import { APIResource } from "../../resource.js";
2
+ import * as Core from "../../core.js";
3
3
  export declare class Rules extends APIResource {
4
4
  /**
5
5
  * Create a new Loyalty Rule
6
+ *
7
+ * @example
8
+ * ```ts
9
+ * const rule = await client.loyalty.rules.create({
10
+ * amount: '10.5',
11
+ * effectiveEndTime: '2024-12-31T23:59:00Z',
12
+ * effectiveStartTime: '2024-01-01T00:00:00Z',
13
+ * endTime: '2024-12-31T23:59:00Z',
14
+ * frequency: 'daily',
15
+ * loyaltyCurrencyId: '456e1234-e89b-12d3-a456-426614174003',
16
+ * metadata: {},
17
+ * name: 'Referral Bonus Rule',
18
+ * organizationId: '123e4567-e89b-12d3-a456-426614174001',
19
+ * startTime: '2024-01-01T00:00:00Z',
20
+ * type: 'Bonus',
21
+ * websiteId: '123e4567-e89b-12d3-a456-426614174002',
22
+ * });
23
+ * ```
6
24
  */
7
25
  create(body: RuleCreateParams, options?: Core.RequestOptions): Core.APIPromise<RuleCreateResponse>;
8
26
  /**
9
27
  * Update an existing Loyalty Rule
28
+ *
29
+ * @example
30
+ * ```ts
31
+ * const rule = await client.loyalty.rules.update(
32
+ * '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
33
+ * {
34
+ * amount: '10.5',
35
+ * endTime: '2024-12-31T23:59:00Z',
36
+ * name: 'Daily Rewards Program',
37
+ * },
38
+ * );
39
+ * ```
10
40
  */
11
41
  update(id: string, body: RuleUpdateParams, options?: Core.RequestOptions): Core.APIPromise<RuleUpdateResponse>;
12
42
  /**
13
43
  * Retrieve configured loyalty rules with optional pagination and filters
44
+ *
45
+ * @example
46
+ * ```ts
47
+ * const rules = await client.loyalty.rules.list();
48
+ * ```
14
49
  */
15
50
  list(query?: RuleListParams, options?: Core.RequestOptions): Core.APIPromise<RuleListResponse>;
16
51
  list(options?: Core.RequestOptions): Core.APIPromise<RuleListResponse>;
17
52
  /**
18
53
  * Delete an existing Loyalty Rule
19
- */
54
+ *
55
+ * @example
56
+ * ```ts
57
+ * const rule = await client.loyalty.rules.delete(
58
+ * '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
59
+ * );
60
+ * ```
61
+ */
62
+ delete(id: string, params?: RuleDeleteParams, options?: Core.RequestOptions): Core.APIPromise<RuleDeleteResponse>;
20
63
  delete(id: string, options?: Core.RequestOptions): Core.APIPromise<RuleDeleteResponse>;
21
64
  /**
22
65
  * Verify a loyalty rule based on user action and reward them if applicable. This
23
66
  * endpoint currently only supports following rule types code_entry, text_input,
24
67
  * link_click, discord_member, connect_wallet, check_in, external_rule,
25
68
  * drip_x_follow, drip_x_new_tweet, drip_x_text_in_bio, drip_x_text_in_name,
26
- * drip_x_text_in_comment, drip_x_tweet, telegram_join, DiscordMessages
69
+ * drip_x_text_in_comment, drip_x_tweet, telegram_join, DiscordMessages,
70
+ * youtube_subscribers, youtube_comment, steam_wishlist
71
+ *
72
+ * @example
73
+ * ```ts
74
+ * const response = await client.loyalty.rules.complete(
75
+ * '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
76
+ * );
77
+ * ```
27
78
  */
28
79
  complete(id: string, body?: RuleCompleteParams, options?: Core.RequestOptions): Core.APIPromise<RuleCompleteResponse>;
29
80
  complete(id: string, options?: Core.RequestOptions): Core.APIPromise<RuleCompleteResponse>;
30
81
  /**
31
82
  * This will return the processing status of quests for a specific user
32
- */
33
- getStatus(query: RuleGetStatusParams, options?: Core.RequestOptions): Core.APIPromise<RuleGetStatusResponse>;
83
+ *
84
+ * @example
85
+ * ```ts
86
+ * const response = await client.loyalty.rules.getStatus();
87
+ * ```
88
+ */
89
+ getStatus(query?: RuleGetStatusParams, options?: Core.RequestOptions): Core.APIPromise<RuleGetStatusResponse>;
90
+ getStatus(options?: Core.RequestOptions): Core.APIPromise<RuleGetStatusResponse>;
34
91
  }
35
92
  export interface RuleCreateResponse {
36
93
  id: string;
@@ -77,7 +134,7 @@ export interface RuleCreateResponse {
77
134
  /**
78
135
  * Type of loyalty rule being created
79
136
  */
80
- type: 'Bonus' | 'BoughtOn' | 'BoughtWithRoyalties' | 'DiscordMessages' | 'Listing' | 'Lodging' | 'MintOn' | 'PoapClaim' | 'SnagSocialsConnected' | 'SnapshotFullset' | 'SnapshotHold' | 'SoldOn' | 'SoldWithRoyalties' | 'TokenHold' | 'TwitterBio' | 'TwitterHashTagPost' | 'Retweet' | 'check_in' | 'code_entry' | 'connect_wallet' | 'connected_discord' | 'connected_email' | 'connected_epic' | 'connected_steam' | 'connected_telegram' | 'connected_twitter' | 'create_partner_account' | 'discord_member' | 'drip_x_follow' | 'drip_x_new_tweet' | 'drip_x_text_in_bio' | 'drip_x_text_in_comment' | 'drip_x_text_in_name' | 'drip_x_tweet' | 'external_rule' | 'link_click' | 'manual_upload' | 'profile_completed' | 'referred_user' | 'smart_contract_event' | 'snapshot_governance' | 'telegram_join' | 'telegram_messages' | 'text_input' | 'token_hold_erc20' | 'tweet_liked_by_project' | 'twitter_comment' | 'twitter_follow' | 'twitter_followers' | 'twitter_like' | 'twitter_post_hashtag' | 'quiz' | 'poll';
137
+ type: 'Bonus' | 'BoughtOn' | 'BoughtWithRoyalties' | 'DiscordMessages' | 'Listing' | 'Lodging' | 'MintOn' | 'PoapClaim' | 'SnagSocialsConnected' | 'SnapshotFullset' | 'SnapshotHold' | 'SoldOn' | 'SoldWithRoyalties' | 'TokenHold' | 'TwitterBio' | 'TwitterHashTagPost' | 'Retweet' | 'check_in' | 'code_entry' | 'connect_wallet' | 'connected_discord' | 'connected_email' | 'connected_epic' | 'connected_steam' | 'connected_telegram' | 'connected_twitter' | 'create_partner_account' | 'discord_member' | 'drip_x_follow' | 'drip_x_new_tweet' | 'drip_x_text_in_bio' | 'drip_x_text_in_comment' | 'drip_x_text_in_name' | 'drip_x_tweet' | 'external_rule' | 'link_click' | 'manual_upload' | 'profile_completed' | 'referred_user' | 'smart_contract_event' | 'snapshot_governance' | 'telegram_join' | 'telegram_messages' | 'text_input' | 'token_hold_erc20' | 'tweet_liked_by_project' | 'twitter_comment' | 'twitter_follow' | 'twitter_followers' | 'twitter_like' | 'twitter_post_hashtag' | 'quiz' | 'poll' | 'steam_wishlist' | 'liquidity_uniswap_v2' | 'liquidity_uniswap_v3' | 'points_airdrop' | 'youtube_subscribers' | 'youtube_comment' | 'shopify_spend' | 'swap' | 'tiktok_post' | 'post_impressions' | 'discord_join' | 'connected_youtube';
81
138
  /**
82
139
  * Unique identifier for the associated website
83
140
  */
@@ -106,6 +163,11 @@ export interface RuleCreateResponse {
106
163
  * Optional detailed description of the rule
107
164
  */
108
165
  description?: string;
166
+ duplicatedFromId?: string | null;
167
+ /**
168
+ * ID of the external integration
169
+ */
170
+ externalIntegrationId?: string | null;
109
171
  /**
110
172
  * Whether to hide this rule in the user interface
111
173
  */
@@ -113,19 +175,41 @@ export interface RuleCreateResponse {
113
175
  /**
114
176
  * Interval between rule executions
115
177
  */
116
- interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | null;
178
+ interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | 'unlimited' | null;
117
179
  /**
118
180
  * Whether this rule is mandatory
119
181
  */
120
182
  isRequired?: boolean;
183
+ /**
184
+ * Unique identifier for the loyalty badge
185
+ */
186
+ loyaltyBadgeId?: string | null;
121
187
  /**
122
188
  * Unique identifier for the loyalty rule group
123
189
  */
124
190
  loyaltyRuleGroupId?: 'no-section' | (string & {}) | null;
191
+ /**
192
+ * URL for uploading loyalty user allotment via CSV
193
+ */
194
+ loyaltyUserAllotmentCsvUrl?: string;
195
+ /**
196
+ * The interval for the max amount. Available for the smart contract and external
197
+ * rules.
198
+ */
199
+ maxAmountInterval?: 'daily' | 'weekly' | 'monthly' | 'lifetime' | null;
200
+ /**
201
+ * The maximum amount of points a user can earn per interval. Available for the
202
+ * smart contract and external rules.
203
+ */
204
+ maxAmountPerInterval?: number | null;
205
+ /**
206
+ * URL of the media to be displayed
207
+ */
208
+ mediaUrl?: string | null;
125
209
  /**
126
210
  * Blockchain network where the rule will apply
127
211
  */
128
- network?: 'mainnet' | 'polygon' | 'polygon_mumbai' | 'optimism' | 'arbitrum' | 'binance' | 'bscTestnet' | 'avalanche' | 'avalancheFuji' | 'zksync' | 'fantom' | 'fantomTestnet' | 'base' | 'baseSepolia' | 'skaleNebula' | 'xai' | 'berachainArtio' | 'solana' | 'apechain' | 'flowMainnet' | 'campTestnet' | 'sui' | 'vanar' | 'superseed' | 'superseedSepolia' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'abstract';
212
+ network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp';
129
213
  /**
130
214
  * OAuth credentials associated with the rule
131
215
  */
@@ -133,17 +217,29 @@ export interface RuleCreateResponse {
133
217
  /**
134
218
  * Type of reward issued by the rule
135
219
  */
136
- rewardType?: 'points' | 'multiplier';
220
+ rewardType?: 'points' | 'multiplier' | 'badge';
221
+ /**
222
+ * URL of the Shopify store
223
+ */
224
+ shopifyStoreUrl?: string | null;
137
225
  /**
138
- * Identifier for associated subscriptions
226
+ * Whether to show this rule before the start time
139
227
  */
140
- subscriptionIdentifier?: string | null;
228
+ showBeforeStart?: boolean;
229
+ /**
230
+ * Optional subscription id for the rule
231
+ */
232
+ subscriptionId?: string | null;
141
233
  }
142
234
  export declare namespace RuleCreateResponse {
143
235
  /**
144
236
  * Additional metadata for the loyalty rule
145
237
  */
146
238
  interface Metadata {
239
+ /**
240
+ * Number of tokens per batch.
241
+ */
242
+ batchSize?: number | null;
147
243
  /**
148
244
  * Text displayed on the action button.
149
245
  */
@@ -163,11 +259,21 @@ export declare namespace RuleCreateResponse {
163
259
  /**
164
260
  * Text to check in the Twitter post, username, or bio.
165
261
  */
166
- checkText?: string | null;
262
+ checkText?: string | Array<string> | null;
167
263
  /**
168
264
  * Array of collections associated with the rule.
169
265
  */
170
266
  collection?: Array<Metadata.Collection>;
267
+ /**
268
+ * Conditions for completing the profile.
269
+ */
270
+ completeProfileConditions?: {
271
+ [key: string]: boolean;
272
+ } | null;
273
+ /**
274
+ * Description of the external rule condition (only for external rules)
275
+ */
276
+ conditionDescription?: string;
171
277
  /**
172
278
  * Object containing details for the call-to-action.
173
279
  */
@@ -176,6 +282,10 @@ export declare namespace RuleCreateResponse {
176
282
  * API key for custom rewards integration.
177
283
  */
178
284
  customRewardsApiKey?: string;
285
+ /**
286
+ * Flag indicating if the rule should use direct RPC to get the balance of tokens.
287
+ */
288
+ directRpc?: boolean;
179
289
  /**
180
290
  * Array of Discord servers, channels, and roles to join.
181
291
  */
@@ -196,10 +306,18 @@ export declare namespace RuleCreateResponse {
196
306
  * Flag indicating whether the verified multiplier is enabled.
197
307
  */
198
308
  enableVerifiedMultiplier?: boolean;
309
+ /**
310
+ * Fill source of the order for the token sale
311
+ */
312
+ fillSource?: string;
199
313
  /**
200
314
  * Percentage reward given to a user for their first referral.
201
315
  */
202
316
  firstReferralReward?: number | null;
317
+ /**
318
+ * Flag indicating whether the fill source is included.
319
+ */
320
+ hasFillSource?: boolean;
203
321
  /**
204
322
  * Indicates if the item has never been sold.
205
323
  */
@@ -220,10 +338,18 @@ export declare namespace RuleCreateResponse {
220
338
  * URL of the image associated with the rule.
221
339
  */
222
340
  imageUrl?: string | null;
341
+ /**
342
+ * If enabled, the first transaction done on the platform will complete this rule
343
+ */
344
+ isCheckInOnEveryTxn?: boolean;
223
345
  /**
224
346
  * Indicates if the multiplier has been applied to rewards.
225
347
  */
226
348
  isMultiplierApplied?: boolean;
349
+ /**
350
+ * Flag indicating if the rule is restricted to new users.
351
+ */
352
+ isRestrictedToNewUsers?: boolean;
227
353
  /**
228
354
  * Flag indicating if rewards are applied retroactively.
229
355
  */
@@ -236,6 +362,10 @@ export declare namespace RuleCreateResponse {
236
362
  * Optional link associated with the metadata.
237
363
  */
238
364
  link?: string | null;
365
+ /**
366
+ * Liquidity pool details.
367
+ */
368
+ liquidity?: Metadata.Liquidity;
239
369
  /**
240
370
  * Maximum quantity constraint for token holding.
241
371
  */
@@ -272,6 +402,18 @@ export declare namespace RuleCreateResponse {
272
402
  * Promotional code associated with the rule.
273
403
  */
274
404
  promoCode?: string;
405
+ /**
406
+ * URL of the CSV file containing promo codes.
407
+ */
408
+ promoCodeCsvUrl?: string;
409
+ /**
410
+ * Numbers of the promotional code to be generated.
411
+ */
412
+ promoCodeLength?: number | null;
413
+ /**
414
+ * Type of the promotional code.
415
+ */
416
+ promoCodeType?: 'code' | 'csv' | 'generate';
275
417
  /**
276
418
  * Array defining ranges and corresponding rewards.
277
419
  */
@@ -284,10 +426,47 @@ export declare namespace RuleCreateResponse {
284
426
  * Lump sum reward given to a referrer.
285
427
  */
286
428
  referrerReward?: number | null;
429
+ /**
430
+ * Loyalty currency ID of the referrer reward.
431
+ */
432
+ referrerRewardLoyaltyCurrencyId?: string | null;
433
+ /**
434
+ * Flag indicating if the post link is required.
435
+ */
436
+ requirePostLink?: boolean | null;
437
+ /**
438
+ * Flag indicating if media metadata is required.
439
+ */
440
+ requirePostMediaLink?: boolean | null;
441
+ /**
442
+ * Flag indicating if the rule can also reward badges per range.
443
+ */
444
+ rewardBadgePerRange?: boolean;
445
+ /**
446
+ * Flag indicating if the reward is rewarded by batch.
447
+ */
448
+ rewardByBatch?: boolean | null;
449
+ /**
450
+ * Flag indicating if the reward is rewarded per action.
451
+ */
452
+ rewardPerAction?: boolean | null;
287
453
  /**
288
454
  * Flag indicating if rewards are given per impression.
289
455
  */
290
456
  rewardPerImpression?: boolean | null;
457
+ /**
458
+ * Flag indicating if the rule should reward based on value of traded tokens
459
+ * instead of count.
460
+ */
461
+ rewardPerValue?: boolean;
462
+ /**
463
+ * Wallet address of the user can only be used if userId is not provided
464
+ */
465
+ royaltyAddress?: string;
466
+ /**
467
+ * Royalty percentage of the item.
468
+ */
469
+ royaltyPercentage?: number;
291
470
  /**
292
471
  * Currency associated with sales.
293
472
  */
@@ -311,7 +490,7 @@ export declare namespace RuleCreateResponse {
311
490
  /**
312
491
  * Social media platform associated with the rule.
313
492
  */
314
- socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | null;
493
+ socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | 'Google' | null;
315
494
  /**
316
495
  * URL of the social platform's logo.
317
496
  */
@@ -320,10 +499,18 @@ export declare namespace RuleCreateResponse {
320
499
  * Name of the social platform.
321
500
  */
322
501
  socialPlatformName?: string | null;
502
+ /**
503
+ * ID of the Steam app.
504
+ */
505
+ steamAppId?: string | null;
323
506
  /**
324
507
  * Array of streak milestones and corresponding rewards.
325
508
  */
326
509
  streakArray?: Array<Metadata.StreakArray> | null;
510
+ /**
511
+ * Metadata for swap loyalty rules
512
+ */
513
+ swap?: Metadata.Swap;
327
514
  /**
328
515
  * ID of the Telegram channel.
329
516
  */
@@ -336,6 +523,11 @@ export declare namespace RuleCreateResponse {
336
523
  * Flag indicating if all contracts are tracked.
337
524
  */
338
525
  trackAllContracts?: boolean | null;
526
+ /**
527
+ * Flag indicating if the progress is tracked. If enabled, the rule can only be
528
+ * completed once the progress is 100%.
529
+ */
530
+ trackProgress?: boolean | null;
339
531
  /**
340
532
  * URL of the associated Twitter account.
341
533
  */
@@ -371,7 +563,15 @@ export declare namespace RuleCreateResponse {
371
563
  /**
372
564
  * Type of wallet associated with the rule.
373
565
  */
374
- walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | null;
566
+ walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | 'cosmos' | 'ultra' | 'agw' | null;
567
+ /**
568
+ * ID of the Youtube channel.
569
+ */
570
+ youtubeChannelId?: string | null;
571
+ /**
572
+ * ID of the Youtube video.
573
+ */
574
+ youtubeVideoId?: string | null;
375
575
  }
376
576
  namespace Metadata {
377
577
  interface Collection {
@@ -386,7 +586,7 @@ export declare namespace RuleCreateResponse {
386
586
  /**
387
587
  * Blockchain network of the collection.
388
588
  */
389
- network?: 'mainnet' | 'polygon' | 'polygon_mumbai' | 'optimism' | 'arbitrum' | 'binance' | 'bscTestnet' | 'avalanche' | 'avalancheFuji' | 'zksync' | 'fantom' | 'fantomTestnet' | 'base' | 'baseSepolia' | 'skaleNebula' | 'xai' | 'berachainArtio' | 'solana' | 'apechain' | 'flowMainnet' | 'campTestnet' | 'sui' | 'vanar' | 'superseed' | 'superseedSepolia' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'abstract';
589
+ network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp';
390
590
  }
391
591
  /**
392
592
  * Object containing details for the call-to-action.
@@ -451,6 +651,49 @@ export declare namespace RuleCreateResponse {
451
651
  */
452
652
  id: string;
453
653
  }
654
+ /**
655
+ * Liquidity pool details.
656
+ */
657
+ interface Liquidity {
658
+ /**
659
+ * Calculation type of the liquidity pool.
660
+ */
661
+ calculationType?: 'fixed' | 'custom';
662
+ /**
663
+ * Custom function to calculate the the reward amount based on the liquidity
664
+ * provided per day. X is the reward amount, Y is the liquidity provided per day in
665
+ * USD.
666
+ */
667
+ customFunction?: string;
668
+ /**
669
+ * Liquidity provided per day in USD
670
+ */
671
+ liquidityPerDay?: number;
672
+ /**
673
+ * Blockchain network of the liquidity pool.
674
+ */
675
+ network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp';
676
+ /**
677
+ * Indicates if only in-range liquidity is rewarded.
678
+ */
679
+ onlyRewardInRangeLiquidity?: boolean;
680
+ /**
681
+ * Array of liquidity pools associated with the rule.
682
+ */
683
+ pools?: Array<Liquidity.Pool>;
684
+ /**
685
+ * Protocol of the liquidity pool.
686
+ */
687
+ protocol?: string;
688
+ }
689
+ namespace Liquidity {
690
+ interface Pool {
691
+ /**
692
+ * Unique identifier of the liquidity pool.
693
+ */
694
+ id: string;
695
+ }
696
+ }
454
697
  interface Range {
455
698
  /**
456
699
  * Reward amount for this range.
@@ -464,6 +707,14 @@ export declare namespace RuleCreateResponse {
464
707
  * Start value of the range.
465
708
  */
466
709
  startRange: number;
710
+ /**
711
+ * ID of the loyalty badge for this range.
712
+ */
713
+ loyaltyBadgeId?: string;
714
+ /**
715
+ * Amount of the loyalty multiplier for this range.
716
+ */
717
+ loyaltyMultiplierAmount?: number;
467
718
  }
468
719
  /**
469
720
  * Object defining referral requirements.
@@ -507,18 +758,14 @@ export declare namespace RuleCreateResponse {
507
758
  * Object containing details of the associated smart contract.
508
759
  */
509
760
  interface SmartContract {
510
- /**
511
- * ABI of the smart contract.
512
- */
513
- abi?: string | null;
514
761
  /**
515
762
  * Mapping of addresses for the smart contract.
516
763
  */
517
764
  addressMapping?: string | null;
518
765
  /**
519
- * Array of bonus details applied to the rule.
766
+ * Object containing details of the amount multiplier from the event.
520
767
  */
521
- bonus?: Array<SmartContract.Bonus> | null;
768
+ amountMultiplier?: SmartContract.AmountMultiplier | null;
522
769
  /**
523
770
  * ID of the smart contract.
524
771
  */
@@ -527,58 +774,28 @@ export declare namespace RuleCreateResponse {
527
774
  * Criteria to evaluate the smart contract event.
528
775
  */
529
776
  criteria?: 'everyEvent' | 'byParameter' | null;
530
- /**
531
- * Time range applied to the rule.
532
- */
533
- customRange?: SmartContract.CustomRange | null;
534
777
  /**
535
778
  * Event emitted by the smart contract.
536
779
  */
537
780
  event?: string | null;
538
- /**
539
- * Maximum value allowed for the parameter.
540
- */
541
- max?: number | null;
542
781
  /**
543
782
  * Array of parameters for the smart contract.
544
783
  */
545
784
  params?: Array<SmartContract.Param> | null;
546
785
  /**
547
- * Flag indicating if a bonus is applied.
548
- */
549
- withBonus?: boolean | null;
550
- /**
551
- * Flag indicating if a custom range is applied.
786
+ * Type of the smart contract interaction.
552
787
  */
553
- withCustomRange?: boolean | null;
554
- /**
555
- * Flag indicating if a maximum limit is applied.
556
- */
557
- withMax?: boolean | null;
788
+ type?: 'function' | 'event' | null;
558
789
  }
559
790
  namespace SmartContract {
560
- interface Bonus {
561
- /**
562
- * Amount of the bonus.
563
- */
564
- amount?: number | null;
565
- /**
566
- * Number of times the bonus is applied.
567
- */
568
- count?: number | null;
569
- }
570
791
  /**
571
- * Time range applied to the rule.
792
+ * Object containing details of the amount multiplier from the event.
572
793
  */
573
- interface CustomRange {
794
+ interface AmountMultiplier {
574
795
  /**
575
- * End time of the custom range.
796
+ * Mapping of the value for the smart contract.
576
797
  */
577
- endsAt?: string | null;
578
- /**
579
- * Start time of the custom range.
580
- */
581
- startsAt?: string | null;
798
+ valueMapping?: string | null;
582
799
  }
583
800
  interface Param {
584
801
  /**
@@ -615,6 +832,24 @@ export declare namespace RuleCreateResponse {
615
832
  */
616
833
  streakMilestone: number;
617
834
  }
835
+ /**
836
+ * Metadata for swap loyalty rules
837
+ */
838
+ interface Swap {
839
+ provider?: 'any' | 'relay' | 'lifi';
840
+ relayReferrerId?: string;
841
+ requireCrossChainSwap?: boolean;
842
+ swappedToChain?: 'any' | number | string;
843
+ swappedToTokens?: Array<Swap.SwappedToToken>;
844
+ tokenMode?: 'any' | 'specific';
845
+ trackTokenAmount?: boolean;
846
+ }
847
+ namespace Swap {
848
+ interface SwappedToToken {
849
+ address: string;
850
+ chainId: string;
851
+ }
852
+ }
618
853
  }
619
854
  interface Collection {
620
855
  /**
@@ -624,7 +859,11 @@ export declare namespace RuleCreateResponse {
624
859
  /**
625
860
  * Blockchain network for the collection
626
861
  */
627
- network: 'mainnet' | 'polygon' | 'polygon_mumbai' | 'optimism' | 'arbitrum' | 'binance' | 'bscTestnet' | 'avalanche' | 'avalancheFuji' | 'zksync' | 'fantom' | 'fantomTestnet' | 'base' | 'baseSepolia' | 'skaleNebula' | 'xai' | 'berachainArtio' | 'solana' | 'apechain' | 'flowMainnet' | 'campTestnet' | 'sui' | 'vanar' | 'superseed' | 'superseedSepolia' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'abstract';
862
+ network: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp';
863
+ /**
864
+ * Symbol of the collection.
865
+ */
866
+ symbol?: string;
628
867
  }
629
868
  }
630
869
  export interface RuleUpdateResponse {
@@ -669,6 +908,10 @@ export interface RuleUpdateResponse {
669
908
  * Effective start time of the rule
670
909
  */
671
910
  effectiveStartTime?: string | null;
911
+ /**
912
+ * ID of the external integration
913
+ */
914
+ externalIntegrationId?: string | null;
672
915
  /**
673
916
  * Frequency of the rule execution
674
917
  */
@@ -680,7 +923,7 @@ export interface RuleUpdateResponse {
680
923
  /**
681
924
  * Time interval for recurring rule execution
682
925
  */
683
- interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | null;
926
+ interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | 'unlimited' | null;
684
927
  /**
685
928
  * Whether this rule is required for participation
686
929
  */
@@ -689,6 +932,20 @@ export interface RuleUpdateResponse {
689
932
  * ID of the rule group section to associate with the rule
690
933
  */
691
934
  loyaltyRuleGroupId?: (string & {}) | 'no-section' | null;
935
+ /**
936
+ * The interval for the max amount. Available for the smart contract and external
937
+ * rules.
938
+ */
939
+ maxAmountInterval?: 'daily' | 'weekly' | 'monthly' | 'lifetime' | null;
940
+ /**
941
+ * The maximum amount of points a user can earn per interval. Available for the
942
+ * smart contract and external rules.
943
+ */
944
+ maxAmountPerInterval?: number | null;
945
+ /**
946
+ * URL of the media to be displayed
947
+ */
948
+ mediaUrl?: string | null;
692
949
  /**
693
950
  * Additional metadata for the loyalty rule
694
951
  */
@@ -696,7 +953,7 @@ export interface RuleUpdateResponse {
696
953
  /**
697
954
  * Blockchain network where the rule will apply
698
955
  */
699
- network?: 'mainnet' | 'polygon' | 'polygon_mumbai' | 'optimism' | 'arbitrum' | 'binance' | 'bscTestnet' | 'avalanche' | 'avalancheFuji' | 'zksync' | 'fantom' | 'fantomTestnet' | 'base' | 'baseSepolia' | 'skaleNebula' | 'xai' | 'berachainArtio' | 'solana' | 'apechain' | 'flowMainnet' | 'campTestnet' | 'sui' | 'vanar' | 'superseed' | 'superseedSepolia' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'abstract';
956
+ network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp';
700
957
  /**
701
958
  * ID for associated OAuth credentials
702
959
  */
@@ -704,15 +961,23 @@ export interface RuleUpdateResponse {
704
961
  /**
705
962
  * Type of reward issued by this rule
706
963
  */
707
- rewardType?: 'points' | 'multiplier';
964
+ rewardType?: 'points' | 'multiplier' | 'badge';
965
+ /**
966
+ * URL of the Shopify store
967
+ */
968
+ shopifyStoreUrl?: string | null;
969
+ /**
970
+ * Whether to show this rule before the start time
971
+ */
972
+ showBeforeStart?: boolean;
708
973
  /**
709
974
  * Start time for the loyalty rule
710
975
  */
711
976
  startTime?: string | null;
712
977
  /**
713
- * Optional subscription identifier for the rule
978
+ * Optional subscription id for the rule
714
979
  */
715
- subscriptionIdentifier?: string | null;
980
+ subscriptionId?: string | null;
716
981
  }
717
982
  export declare namespace RuleUpdateResponse {
718
983
  interface Collection {
@@ -723,12 +988,20 @@ export declare namespace RuleUpdateResponse {
723
988
  /**
724
989
  * Blockchain network for the collection
725
990
  */
726
- network: 'mainnet' | 'polygon' | 'polygon_mumbai' | 'optimism' | 'arbitrum' | 'binance' | 'bscTestnet' | 'avalanche' | 'avalancheFuji' | 'zksync' | 'fantom' | 'fantomTestnet' | 'base' | 'baseSepolia' | 'skaleNebula' | 'xai' | 'berachainArtio' | 'solana' | 'apechain' | 'flowMainnet' | 'campTestnet' | 'sui' | 'vanar' | 'superseed' | 'superseedSepolia' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'abstract';
991
+ network: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp';
992
+ /**
993
+ * Symbol of the collection.
994
+ */
995
+ symbol?: string;
727
996
  }
728
997
  /**
729
998
  * Additional metadata for the loyalty rule
730
999
  */
731
1000
  interface Metadata {
1001
+ /**
1002
+ * Number of tokens per batch.
1003
+ */
1004
+ batchSize?: number | null;
732
1005
  /**
733
1006
  * Text displayed on the action button.
734
1007
  */
@@ -748,11 +1021,21 @@ export declare namespace RuleUpdateResponse {
748
1021
  /**
749
1022
  * Text to check in the Twitter post, username, or bio.
750
1023
  */
751
- checkText?: string | null;
1024
+ checkText?: string | Array<string> | null;
752
1025
  /**
753
1026
  * Array of collections associated with the rule.
754
1027
  */
755
1028
  collection?: Array<Metadata.Collection>;
1029
+ /**
1030
+ * Conditions for completing the profile.
1031
+ */
1032
+ completeProfileConditions?: {
1033
+ [key: string]: boolean;
1034
+ } | null;
1035
+ /**
1036
+ * Description of the external rule condition (only for external rules)
1037
+ */
1038
+ conditionDescription?: string;
756
1039
  /**
757
1040
  * Object containing details for the call-to-action.
758
1041
  */
@@ -761,6 +1044,10 @@ export declare namespace RuleUpdateResponse {
761
1044
  * API key for custom rewards integration.
762
1045
  */
763
1046
  customRewardsApiKey?: string;
1047
+ /**
1048
+ * Flag indicating if the rule should use direct RPC to get the balance of tokens.
1049
+ */
1050
+ directRpc?: boolean;
764
1051
  /**
765
1052
  * Array of Discord servers, channels, and roles to join.
766
1053
  */
@@ -781,10 +1068,18 @@ export declare namespace RuleUpdateResponse {
781
1068
  * Flag indicating whether the verified multiplier is enabled.
782
1069
  */
783
1070
  enableVerifiedMultiplier?: boolean;
1071
+ /**
1072
+ * Fill source of the order for the token sale
1073
+ */
1074
+ fillSource?: string;
784
1075
  /**
785
1076
  * Percentage reward given to a user for their first referral.
786
1077
  */
787
1078
  firstReferralReward?: number | null;
1079
+ /**
1080
+ * Flag indicating whether the fill source is included.
1081
+ */
1082
+ hasFillSource?: boolean;
788
1083
  /**
789
1084
  * Indicates if the item has never been sold.
790
1085
  */
@@ -805,10 +1100,18 @@ export declare namespace RuleUpdateResponse {
805
1100
  * URL of the image associated with the rule.
806
1101
  */
807
1102
  imageUrl?: string | null;
1103
+ /**
1104
+ * If enabled, the first transaction done on the platform will complete this rule
1105
+ */
1106
+ isCheckInOnEveryTxn?: boolean;
808
1107
  /**
809
1108
  * Indicates if the multiplier has been applied to rewards.
810
1109
  */
811
1110
  isMultiplierApplied?: boolean;
1111
+ /**
1112
+ * Flag indicating if the rule is restricted to new users.
1113
+ */
1114
+ isRestrictedToNewUsers?: boolean;
812
1115
  /**
813
1116
  * Flag indicating if rewards are applied retroactively.
814
1117
  */
@@ -821,6 +1124,10 @@ export declare namespace RuleUpdateResponse {
821
1124
  * Optional link associated with the metadata.
822
1125
  */
823
1126
  link?: string | null;
1127
+ /**
1128
+ * Liquidity pool details.
1129
+ */
1130
+ liquidity?: Metadata.Liquidity;
824
1131
  /**
825
1132
  * Maximum quantity constraint for token holding.
826
1133
  */
@@ -857,6 +1164,18 @@ export declare namespace RuleUpdateResponse {
857
1164
  * Promotional code associated with the rule.
858
1165
  */
859
1166
  promoCode?: string;
1167
+ /**
1168
+ * URL of the CSV file containing promo codes.
1169
+ */
1170
+ promoCodeCsvUrl?: string;
1171
+ /**
1172
+ * Numbers of the promotional code to be generated.
1173
+ */
1174
+ promoCodeLength?: number | null;
1175
+ /**
1176
+ * Type of the promotional code.
1177
+ */
1178
+ promoCodeType?: 'code' | 'csv' | 'generate';
860
1179
  /**
861
1180
  * Array defining ranges and corresponding rewards.
862
1181
  */
@@ -869,10 +1188,47 @@ export declare namespace RuleUpdateResponse {
869
1188
  * Lump sum reward given to a referrer.
870
1189
  */
871
1190
  referrerReward?: number | null;
1191
+ /**
1192
+ * Loyalty currency ID of the referrer reward.
1193
+ */
1194
+ referrerRewardLoyaltyCurrencyId?: string | null;
1195
+ /**
1196
+ * Flag indicating if the post link is required.
1197
+ */
1198
+ requirePostLink?: boolean | null;
1199
+ /**
1200
+ * Flag indicating if media metadata is required.
1201
+ */
1202
+ requirePostMediaLink?: boolean | null;
1203
+ /**
1204
+ * Flag indicating if the rule can also reward badges per range.
1205
+ */
1206
+ rewardBadgePerRange?: boolean;
1207
+ /**
1208
+ * Flag indicating if the reward is rewarded by batch.
1209
+ */
1210
+ rewardByBatch?: boolean | null;
1211
+ /**
1212
+ * Flag indicating if the reward is rewarded per action.
1213
+ */
1214
+ rewardPerAction?: boolean | null;
872
1215
  /**
873
1216
  * Flag indicating if rewards are given per impression.
874
1217
  */
875
1218
  rewardPerImpression?: boolean | null;
1219
+ /**
1220
+ * Flag indicating if the rule should reward based on value of traded tokens
1221
+ * instead of count.
1222
+ */
1223
+ rewardPerValue?: boolean;
1224
+ /**
1225
+ * Wallet address of the user can only be used if userId is not provided
1226
+ */
1227
+ royaltyAddress?: string;
1228
+ /**
1229
+ * Royalty percentage of the item.
1230
+ */
1231
+ royaltyPercentage?: number;
876
1232
  /**
877
1233
  * Currency associated with sales.
878
1234
  */
@@ -896,7 +1252,7 @@ export declare namespace RuleUpdateResponse {
896
1252
  /**
897
1253
  * Social media platform associated with the rule.
898
1254
  */
899
- socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | null;
1255
+ socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | 'Google' | null;
900
1256
  /**
901
1257
  * URL of the social platform's logo.
902
1258
  */
@@ -905,10 +1261,18 @@ export declare namespace RuleUpdateResponse {
905
1261
  * Name of the social platform.
906
1262
  */
907
1263
  socialPlatformName?: string | null;
1264
+ /**
1265
+ * ID of the Steam app.
1266
+ */
1267
+ steamAppId?: string | null;
908
1268
  /**
909
1269
  * Array of streak milestones and corresponding rewards.
910
1270
  */
911
1271
  streakArray?: Array<Metadata.StreakArray> | null;
1272
+ /**
1273
+ * Metadata for swap loyalty rules
1274
+ */
1275
+ swap?: Metadata.Swap;
912
1276
  /**
913
1277
  * ID of the Telegram channel.
914
1278
  */
@@ -921,6 +1285,11 @@ export declare namespace RuleUpdateResponse {
921
1285
  * Flag indicating if all contracts are tracked.
922
1286
  */
923
1287
  trackAllContracts?: boolean | null;
1288
+ /**
1289
+ * Flag indicating if the progress is tracked. If enabled, the rule can only be
1290
+ * completed once the progress is 100%.
1291
+ */
1292
+ trackProgress?: boolean | null;
924
1293
  /**
925
1294
  * URL of the associated Twitter account.
926
1295
  */
@@ -956,7 +1325,15 @@ export declare namespace RuleUpdateResponse {
956
1325
  /**
957
1326
  * Type of wallet associated with the rule.
958
1327
  */
959
- walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | null;
1328
+ walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | 'cosmos' | 'ultra' | 'agw' | null;
1329
+ /**
1330
+ * ID of the Youtube channel.
1331
+ */
1332
+ youtubeChannelId?: string | null;
1333
+ /**
1334
+ * ID of the Youtube video.
1335
+ */
1336
+ youtubeVideoId?: string | null;
960
1337
  }
961
1338
  namespace Metadata {
962
1339
  interface Collection {
@@ -971,7 +1348,7 @@ export declare namespace RuleUpdateResponse {
971
1348
  /**
972
1349
  * Blockchain network of the collection.
973
1350
  */
974
- network?: 'mainnet' | 'polygon' | 'polygon_mumbai' | 'optimism' | 'arbitrum' | 'binance' | 'bscTestnet' | 'avalanche' | 'avalancheFuji' | 'zksync' | 'fantom' | 'fantomTestnet' | 'base' | 'baseSepolia' | 'skaleNebula' | 'xai' | 'berachainArtio' | 'solana' | 'apechain' | 'flowMainnet' | 'campTestnet' | 'sui' | 'vanar' | 'superseed' | 'superseedSepolia' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'abstract';
1351
+ network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp';
975
1352
  }
976
1353
  /**
977
1354
  * Object containing details for the call-to-action.
@@ -1036,6 +1413,49 @@ export declare namespace RuleUpdateResponse {
1036
1413
  */
1037
1414
  id: string;
1038
1415
  }
1416
+ /**
1417
+ * Liquidity pool details.
1418
+ */
1419
+ interface Liquidity {
1420
+ /**
1421
+ * Calculation type of the liquidity pool.
1422
+ */
1423
+ calculationType?: 'fixed' | 'custom';
1424
+ /**
1425
+ * Custom function to calculate the the reward amount based on the liquidity
1426
+ * provided per day. X is the reward amount, Y is the liquidity provided per day in
1427
+ * USD.
1428
+ */
1429
+ customFunction?: string;
1430
+ /**
1431
+ * Liquidity provided per day in USD
1432
+ */
1433
+ liquidityPerDay?: number;
1434
+ /**
1435
+ * Blockchain network of the liquidity pool.
1436
+ */
1437
+ network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp';
1438
+ /**
1439
+ * Indicates if only in-range liquidity is rewarded.
1440
+ */
1441
+ onlyRewardInRangeLiquidity?: boolean;
1442
+ /**
1443
+ * Array of liquidity pools associated with the rule.
1444
+ */
1445
+ pools?: Array<Liquidity.Pool>;
1446
+ /**
1447
+ * Protocol of the liquidity pool.
1448
+ */
1449
+ protocol?: string;
1450
+ }
1451
+ namespace Liquidity {
1452
+ interface Pool {
1453
+ /**
1454
+ * Unique identifier of the liquidity pool.
1455
+ */
1456
+ id: string;
1457
+ }
1458
+ }
1039
1459
  interface Range {
1040
1460
  /**
1041
1461
  * Reward amount for this range.
@@ -1049,6 +1469,14 @@ export declare namespace RuleUpdateResponse {
1049
1469
  * Start value of the range.
1050
1470
  */
1051
1471
  startRange: number;
1472
+ /**
1473
+ * ID of the loyalty badge for this range.
1474
+ */
1475
+ loyaltyBadgeId?: string;
1476
+ /**
1477
+ * Amount of the loyalty multiplier for this range.
1478
+ */
1479
+ loyaltyMultiplierAmount?: number;
1052
1480
  }
1053
1481
  /**
1054
1482
  * Object defining referral requirements.
@@ -1092,18 +1520,14 @@ export declare namespace RuleUpdateResponse {
1092
1520
  * Object containing details of the associated smart contract.
1093
1521
  */
1094
1522
  interface SmartContract {
1095
- /**
1096
- * ABI of the smart contract.
1097
- */
1098
- abi?: string | null;
1099
1523
  /**
1100
1524
  * Mapping of addresses for the smart contract.
1101
1525
  */
1102
1526
  addressMapping?: string | null;
1103
1527
  /**
1104
- * Array of bonus details applied to the rule.
1528
+ * Object containing details of the amount multiplier from the event.
1105
1529
  */
1106
- bonus?: Array<SmartContract.Bonus> | null;
1530
+ amountMultiplier?: SmartContract.AmountMultiplier | null;
1107
1531
  /**
1108
1532
  * ID of the smart contract.
1109
1533
  */
@@ -1112,58 +1536,28 @@ export declare namespace RuleUpdateResponse {
1112
1536
  * Criteria to evaluate the smart contract event.
1113
1537
  */
1114
1538
  criteria?: 'everyEvent' | 'byParameter' | null;
1115
- /**
1116
- * Time range applied to the rule.
1117
- */
1118
- customRange?: SmartContract.CustomRange | null;
1119
1539
  /**
1120
1540
  * Event emitted by the smart contract.
1121
1541
  */
1122
1542
  event?: string | null;
1123
- /**
1124
- * Maximum value allowed for the parameter.
1125
- */
1126
- max?: number | null;
1127
1543
  /**
1128
1544
  * Array of parameters for the smart contract.
1129
1545
  */
1130
1546
  params?: Array<SmartContract.Param> | null;
1131
1547
  /**
1132
- * Flag indicating if a bonus is applied.
1133
- */
1134
- withBonus?: boolean | null;
1135
- /**
1136
- * Flag indicating if a custom range is applied.
1137
- */
1138
- withCustomRange?: boolean | null;
1139
- /**
1140
- * Flag indicating if a maximum limit is applied.
1548
+ * Type of the smart contract interaction.
1141
1549
  */
1142
- withMax?: boolean | null;
1550
+ type?: 'function' | 'event' | null;
1143
1551
  }
1144
1552
  namespace SmartContract {
1145
- interface Bonus {
1146
- /**
1147
- * Amount of the bonus.
1148
- */
1149
- amount?: number | null;
1150
- /**
1151
- * Number of times the bonus is applied.
1152
- */
1153
- count?: number | null;
1154
- }
1155
1553
  /**
1156
- * Time range applied to the rule.
1554
+ * Object containing details of the amount multiplier from the event.
1157
1555
  */
1158
- interface CustomRange {
1159
- /**
1160
- * End time of the custom range.
1161
- */
1162
- endsAt?: string | null;
1556
+ interface AmountMultiplier {
1163
1557
  /**
1164
- * Start time of the custom range.
1558
+ * Mapping of the value for the smart contract.
1165
1559
  */
1166
- startsAt?: string | null;
1560
+ valueMapping?: string | null;
1167
1561
  }
1168
1562
  interface Param {
1169
1563
  /**
@@ -1200,6 +1594,24 @@ export declare namespace RuleUpdateResponse {
1200
1594
  */
1201
1595
  streakMilestone: number;
1202
1596
  }
1597
+ /**
1598
+ * Metadata for swap loyalty rules
1599
+ */
1600
+ interface Swap {
1601
+ provider?: 'any' | 'relay' | 'lifi';
1602
+ relayReferrerId?: string;
1603
+ requireCrossChainSwap?: boolean;
1604
+ swappedToChain?: 'any' | number | string;
1605
+ swappedToTokens?: Array<Swap.SwappedToToken>;
1606
+ tokenMode?: 'any' | 'specific';
1607
+ trackTokenAmount?: boolean;
1608
+ }
1609
+ namespace Swap {
1610
+ interface SwappedToToken {
1611
+ address: string;
1612
+ chainId: string;
1613
+ }
1614
+ }
1203
1615
  }
1204
1616
  }
1205
1617
  export interface RuleListResponse {
@@ -1207,9 +1619,6 @@ export interface RuleListResponse {
1207
1619
  hasNextPage: boolean;
1208
1620
  }
1209
1621
  export declare namespace RuleListResponse {
1210
- /**
1211
- * Schema for a loyalty rule
1212
- */
1213
1622
  interface Data {
1214
1623
  /**
1215
1624
  * Unique identifier for the loyalty rule
@@ -1227,14 +1636,38 @@ export declare namespace RuleListResponse {
1227
1636
  * Timestamp when the loyalty rule was deleted (if applicable)
1228
1637
  */
1229
1638
  deletedAt: string | null;
1639
+ /**
1640
+ * Description of the loyalty rule
1641
+ */
1642
+ description: string;
1643
+ /**
1644
+ * End time of the loyalty rule
1645
+ */
1646
+ endTime: string;
1230
1647
  /**
1231
1648
  * Frequency of the loyalty rule
1232
1649
  */
1233
1650
  frequency: string;
1651
+ /**
1652
+ * Chains attached to the loyalty rule
1653
+ */
1654
+ loyaltyRuleChain: Array<Data.LoyaltyRuleChain>;
1655
+ /**
1656
+ * Name of the loyalty rule
1657
+ */
1658
+ name: string;
1234
1659
  /**
1235
1660
  * Unique identifier for the organization
1236
1661
  */
1237
1662
  organizationId: string;
1663
+ /**
1664
+ * Type of the reward
1665
+ */
1666
+ rewardType: 'points' | 'multiplier' | 'badge';
1667
+ /**
1668
+ * Start time of the loyalty rule
1669
+ */
1670
+ startTime: string;
1238
1671
  /**
1239
1672
  * Type of the loyalty rule
1240
1673
  */
@@ -1251,18 +1684,723 @@ export declare namespace RuleListResponse {
1251
1684
  * Optional address of the collection
1252
1685
  */
1253
1686
  collectionAddress?: string;
1687
+ /**
1688
+ * URL of the media associated with the loyalty rule
1689
+ */
1690
+ mediaUrl?: string | null;
1254
1691
  /**
1255
1692
  * Optional metadata for the loyalty rule
1256
1693
  */
1257
- metadata?: Record<string, unknown>;
1694
+ metadata?: {
1695
+ [key: string]: Data.Metadata;
1696
+ };
1697
+ }
1698
+ namespace Data {
1699
+ interface LoyaltyRuleChain {
1700
+ /**
1701
+ * Unique identifier for the rule chain
1702
+ */
1703
+ id: string;
1704
+ loyaltyConditions: Array<LoyaltyRuleChain.LoyaltyCondition>;
1705
+ /**
1706
+ * Unique identifier for the loyalty rule
1707
+ */
1708
+ loyaltyRuleId: string;
1709
+ /**
1710
+ * Name of the rule chain
1711
+ */
1712
+ name: string;
1713
+ }
1714
+ namespace LoyaltyRuleChain {
1715
+ interface LoyaltyCondition {
1716
+ /**
1717
+ * Unique identifier for the condition
1718
+ */
1719
+ id: string;
1720
+ /**
1721
+ * Amount of the condition
1722
+ */
1723
+ amount: number | null;
1724
+ association: Array<LoyaltyCondition.Association>;
1725
+ /**
1726
+ * URL of the CSV file
1727
+ */
1728
+ csvUrl: string | null;
1729
+ /**
1730
+ * Description of the condition
1731
+ */
1732
+ description: string | null;
1733
+ /**
1734
+ * Number of times the condition must be met
1735
+ */
1736
+ repeatCount: number | null;
1737
+ /**
1738
+ * Number of times the condition must be met
1739
+ */
1740
+ requiredCount: number | null;
1741
+ /**
1742
+ * Type of the condition
1743
+ */
1744
+ type: 'rule' | 'rules' | 'points' | 'section' | 'level' | 'api' | 'badge' | 'badges' | 'csv';
1745
+ }
1746
+ namespace LoyaltyCondition {
1747
+ interface Association {
1748
+ /**
1749
+ * Unique identifier for the association
1750
+ */
1751
+ id: string;
1752
+ /**
1753
+ * Unique identifier for the loyalty badge
1754
+ */
1755
+ loyaltyBadgeId: string | null;
1756
+ /**
1757
+ * Unique identifier for the loyalty currency
1758
+ */
1759
+ loyaltyCurrencyId: string | null;
1760
+ loyaltyRule: Association.LoyaltyRule | null;
1761
+ /**
1762
+ * Unique identifier for the loyalty rule group
1763
+ */
1764
+ loyaltyRuleGroupId: string | null;
1765
+ /**
1766
+ * Unique identifier for the loyalty rule
1767
+ */
1768
+ loyaltyRuleId: string | null;
1769
+ }
1770
+ namespace Association {
1771
+ interface LoyaltyRule {
1772
+ /**
1773
+ * Name of the loyalty rule
1774
+ */
1775
+ name: string;
1776
+ }
1777
+ }
1778
+ }
1779
+ }
1780
+ interface Metadata {
1781
+ /**
1782
+ * Number of tokens per batch.
1783
+ */
1784
+ batchSize?: number | null;
1785
+ /**
1786
+ * Text displayed on the action button.
1787
+ */
1788
+ buttonText?: string | null;
1789
+ /**
1790
+ * Flag indicating if commenting is required.
1791
+ */
1792
+ checkComment?: boolean | null;
1793
+ /**
1794
+ * Flag indicating if liking the post is required.
1795
+ */
1796
+ checkLike?: boolean | null;
1797
+ /**
1798
+ * Flag indicating if reposting is required.
1799
+ */
1800
+ checkRepost?: boolean | null;
1801
+ /**
1802
+ * Text to check in the Twitter post, username, or bio.
1803
+ */
1804
+ checkText?: string | Array<string> | null;
1805
+ /**
1806
+ * Array of collections associated with the rule.
1807
+ */
1808
+ collection?: Array<Metadata.Collection>;
1809
+ /**
1810
+ * Conditions for completing the profile.
1811
+ */
1812
+ completeProfileConditions?: {
1813
+ [key: string]: boolean;
1814
+ } | null;
1815
+ /**
1816
+ * Description of the external rule condition (only for external rules)
1817
+ */
1818
+ conditionDescription?: string;
1819
+ /**
1820
+ * Object containing details for the call-to-action.
1821
+ */
1822
+ cta?: Metadata.Cta | null;
1823
+ /**
1824
+ * API key for custom rewards integration.
1825
+ */
1826
+ customRewardsApiKey?: string;
1827
+ /**
1828
+ * Flag indicating if the rule should use direct RPC to get the balance of tokens.
1829
+ */
1830
+ directRpc?: boolean;
1831
+ /**
1832
+ * Array of Discord servers, channels, and roles to join.
1833
+ */
1834
+ discordServersToJoin?: Array<Metadata.DiscordServersToJoin> | null;
1835
+ /**
1836
+ * Array of drip quests required to complete the rule.
1837
+ */
1838
+ dripQuestsToComplete?: Array<Metadata.DripQuestsToComplete> | null;
1839
+ /**
1840
+ * Flag indicating whether joining Discord servers is required.
1841
+ */
1842
+ enableJoinDiscordServers?: boolean | null;
1843
+ /**
1844
+ * Flag indicating whether streaks are enabled.
1845
+ */
1846
+ enableStreaks?: boolean | null;
1847
+ /**
1848
+ * Flag indicating whether the verified multiplier is enabled.
1849
+ */
1850
+ enableVerifiedMultiplier?: boolean;
1851
+ /**
1852
+ * Fill source of the order for the token sale
1853
+ */
1854
+ fillSource?: string;
1855
+ /**
1856
+ * Percentage reward given to a user for their first referral.
1857
+ */
1858
+ firstReferralReward?: number | null;
1859
+ /**
1860
+ * Flag indicating whether the fill source is included.
1861
+ */
1862
+ hasFillSource?: boolean;
1863
+ /**
1864
+ * Indicates if the item has never been sold.
1865
+ */
1866
+ hasNeverSold?: boolean;
1867
+ /**
1868
+ * Indicates if the full royalty has been paid for items.
1869
+ */
1870
+ hasPaidFullRoyalty?: boolean;
1871
+ /**
1872
+ * Flag indicating if the sale currency is included.
1873
+ */
1874
+ hasSaleCurrency?: boolean;
1875
+ /**
1876
+ * Indicates if the user has a verified Twitter account.
1877
+ */
1878
+ hasVerifiedTwitter?: boolean;
1879
+ /**
1880
+ * URL of the image associated with the rule.
1881
+ */
1882
+ imageUrl?: string | null;
1883
+ /**
1884
+ * If enabled, the first transaction done on the platform will complete this rule
1885
+ */
1886
+ isCheckInOnEveryTxn?: boolean;
1887
+ /**
1888
+ * Indicates if the multiplier has been applied to rewards.
1889
+ */
1890
+ isMultiplierApplied?: boolean;
1891
+ /**
1892
+ * Flag indicating if the rule is restricted to new users.
1893
+ */
1894
+ isRestrictedToNewUsers?: boolean;
1895
+ /**
1896
+ * Flag indicating if rewards are applied retroactively.
1897
+ */
1898
+ isRetroactive?: boolean | null;
1899
+ /**
1900
+ * Flag indicating if the token hold multiplier is applied.
1901
+ */
1902
+ isTokenHoldMultiplier?: boolean;
1903
+ /**
1904
+ * Optional link associated with the metadata.
1905
+ */
1906
+ link?: string | null;
1907
+ /**
1908
+ * Liquidity pool details.
1909
+ */
1910
+ liquidity?: Metadata.Liquidity;
1911
+ /**
1912
+ * Maximum quantity constraint for token holding.
1913
+ */
1914
+ maxQty?: number | null;
1915
+ /**
1916
+ * Minimum quantity constraint for token holding.
1917
+ */
1918
+ minQty?: number | null;
1919
+ /**
1920
+ * Array of loyalty currency IDs used for multipliers.
1921
+ */
1922
+ multiplierLoyaltyCurrencyIds?: Array<string> | null;
1923
+ /**
1924
+ * Flag indicating whether to include only known users.
1925
+ */
1926
+ onlyKnownUsers?: boolean;
1927
+ /**
1928
+ * Flag indicating whether to include only native tokens.
1929
+ */
1930
+ onlyNative?: boolean;
1931
+ /**
1932
+ * Flag indicating whether to include only non-listed items.
1933
+ */
1934
+ onlyNonListed?: boolean;
1935
+ /**
1936
+ * Indicates if only existing users are rewarded.
1937
+ */
1938
+ onlyRewardExistingUser?: boolean;
1939
+ /**
1940
+ * give points for only one token ownership per contract
1941
+ */
1942
+ onlyRewardSingleTokenOwnership?: boolean | null;
1943
+ /**
1944
+ * Promotional code associated with the rule.
1945
+ */
1946
+ promoCode?: string;
1947
+ /**
1948
+ * URL of the CSV file containing promo codes.
1949
+ */
1950
+ promoCodeCsvUrl?: string;
1951
+ /**
1952
+ * Numbers of the promotional code to be generated.
1953
+ */
1954
+ promoCodeLength?: number | null;
1955
+ /**
1956
+ * Type of the promotional code.
1957
+ */
1958
+ promoCodeType?: 'code' | 'csv' | 'generate';
1959
+ /**
1960
+ * Array defining ranges and corresponding rewards.
1961
+ */
1962
+ range?: Array<Metadata.Range>;
1963
+ /**
1964
+ * Object defining referral requirements.
1965
+ */
1966
+ referralRequirements?: Metadata.ReferralRequirements | null;
1967
+ /**
1968
+ * Lump sum reward given to a referrer.
1969
+ */
1970
+ referrerReward?: number | null;
1971
+ /**
1972
+ * Loyalty currency ID of the referrer reward.
1973
+ */
1974
+ referrerRewardLoyaltyCurrencyId?: string | null;
1975
+ /**
1976
+ * Flag indicating if the post link is required.
1977
+ */
1978
+ requirePostLink?: boolean | null;
1979
+ /**
1980
+ * Flag indicating if media metadata is required.
1981
+ */
1982
+ requirePostMediaLink?: boolean | null;
1983
+ /**
1984
+ * Flag indicating if the rule can also reward badges per range.
1985
+ */
1986
+ rewardBadgePerRange?: boolean;
1987
+ /**
1988
+ * Flag indicating if the reward is rewarded by batch.
1989
+ */
1990
+ rewardByBatch?: boolean | null;
1991
+ /**
1992
+ * Flag indicating if the reward is rewarded per action.
1993
+ */
1994
+ rewardPerAction?: boolean | null;
1995
+ /**
1996
+ * Flag indicating if rewards are given per impression.
1997
+ */
1998
+ rewardPerImpression?: boolean | null;
1999
+ /**
2000
+ * Flag indicating if the rule should reward based on value of traded tokens
2001
+ * instead of count.
2002
+ */
2003
+ rewardPerValue?: boolean;
2004
+ /**
2005
+ * Wallet address of the user can only be used if userId is not provided
2006
+ */
2007
+ royaltyAddress?: string;
2008
+ /**
2009
+ * Royalty percentage of the item.
2010
+ */
2011
+ royaltyPercentage?: number;
2012
+ /**
2013
+ * Currency associated with sales.
2014
+ */
2015
+ saleCurrency?: string;
2016
+ /**
2017
+ * Percentage reward given for a second-level referral.
2018
+ */
2019
+ secondReferralReward?: number | null;
2020
+ /**
2021
+ * Flag indicating if the multiplier is skipped.
2022
+ */
2023
+ skipMultiplier?: boolean | null;
2024
+ /**
2025
+ * Object containing details of the associated smart contract.
2026
+ */
2027
+ smartContract?: Metadata.SmartContract;
2028
+ /**
2029
+ * Array of snapshot proposals for the rule.
2030
+ */
2031
+ snapshotProposals?: Array<Metadata.SnapshotProposal> | null;
2032
+ /**
2033
+ * Social media platform associated with the rule.
2034
+ */
2035
+ socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | 'Google' | null;
2036
+ /**
2037
+ * URL of the social platform's logo.
2038
+ */
2039
+ socialPlatformLogo?: string | null;
2040
+ /**
2041
+ * Name of the social platform.
2042
+ */
2043
+ socialPlatformName?: string | null;
2044
+ /**
2045
+ * ID of the Steam app.
2046
+ */
2047
+ steamAppId?: string | null;
2048
+ /**
2049
+ * Array of streak milestones and corresponding rewards.
2050
+ */
2051
+ streakArray?: Array<Metadata.StreakArray> | null;
2052
+ /**
2053
+ * Metadata for swap loyalty rules
2054
+ */
2055
+ swap?: Metadata.Swap;
2056
+ /**
2057
+ * ID of the Telegram channel.
2058
+ */
2059
+ telegramChannelId?: string | null;
2060
+ /**
2061
+ * Time delay in seconds to verify actions.
2062
+ */
2063
+ timeDelayToVerifySeconds?: string | number | null;
2064
+ /**
2065
+ * Flag indicating if all contracts are tracked.
2066
+ */
2067
+ trackAllContracts?: boolean | null;
2068
+ /**
2069
+ * Flag indicating if the progress is tracked. If enabled, the rule can only be
2070
+ * completed once the progress is 100%.
2071
+ */
2072
+ trackProgress?: boolean | null;
2073
+ /**
2074
+ * URL of the associated Twitter account.
2075
+ */
2076
+ twitterAccountUrl?: string;
2077
+ /**
2078
+ * Hashtag associated with the Twitter post.
2079
+ */
2080
+ twitterHashtag?: string;
2081
+ /**
2082
+ * URL of the associated Twitter post.
2083
+ */
2084
+ twitterPostUrl?: string;
2085
+ /**
2086
+ * Unique identifier of the Twitter user.
2087
+ */
2088
+ twitterUserId?: string;
2089
+ /**
2090
+ * Twitter username of the user.
2091
+ */
2092
+ twitterUsername?: string;
2093
+ /**
2094
+ * Minimum length of the verification text.
2095
+ */
2096
+ verificationTextMinimumLength?: number | null;
2097
+ /**
2098
+ * Multiplier applied to rewards for verified users.
2099
+ */
2100
+ verifiedMultiplier?: number | null;
2101
+ /**
2102
+ * Placeholder text for verification input fields.
2103
+ */
2104
+ verifyPlaceHolderText?: string | null;
2105
+ /**
2106
+ * Type of wallet associated with the rule.
2107
+ */
2108
+ walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | 'cosmos' | 'ultra' | 'agw' | null;
2109
+ /**
2110
+ * ID of the Youtube channel.
2111
+ */
2112
+ youtubeChannelId?: string | null;
2113
+ /**
2114
+ * ID of the Youtube video.
2115
+ */
2116
+ youtubeVideoId?: string | null;
2117
+ }
2118
+ namespace Metadata {
2119
+ interface Collection {
2120
+ /**
2121
+ * Blockchain address of the collection.
2122
+ */
2123
+ address?: string;
2124
+ /**
2125
+ * Multiplier applied to the rewards for this collection.
2126
+ */
2127
+ multiplier?: number;
2128
+ /**
2129
+ * Blockchain network of the collection.
2130
+ */
2131
+ network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp';
2132
+ }
2133
+ /**
2134
+ * Object containing details for the call-to-action.
2135
+ */
2136
+ interface Cta {
2137
+ /**
2138
+ * Link for the call-to-action.
2139
+ */
2140
+ href?: string | null;
2141
+ /**
2142
+ * Label for the call-to-action.
2143
+ */
2144
+ label?: string | null;
2145
+ }
2146
+ interface DiscordServersToJoin {
2147
+ /**
2148
+ * ID of the Discord server to join.
2149
+ */
2150
+ id?: string;
2151
+ /**
2152
+ * Array of Discord channels to join.
2153
+ */
2154
+ channels?: Array<DiscordServersToJoin.Channel>;
2155
+ /**
2156
+ * Array of roles to assign in the Discord server.
2157
+ */
2158
+ roles?: Array<DiscordServersToJoin.Role>;
2159
+ }
2160
+ namespace DiscordServersToJoin {
2161
+ interface Channel {
2162
+ /**
2163
+ * ID of the Discord channel.
2164
+ */
2165
+ id?: string;
2166
+ /**
2167
+ * Array of emojis used in the channel.
2168
+ */
2169
+ emojis?: Array<Channel.Emoji>;
2170
+ /**
2171
+ * Phrase of text to be present in the discord message
2172
+ */
2173
+ text?: string;
2174
+ }
2175
+ namespace Channel {
2176
+ interface Emoji {
2177
+ /**
2178
+ * ID of the emoji used in the channel.
2179
+ */
2180
+ id?: string;
2181
+ }
2182
+ }
2183
+ interface Role {
2184
+ /**
2185
+ * ID of the role in the Discord server.
2186
+ */
2187
+ id: string;
2188
+ }
2189
+ }
2190
+ interface DripQuestsToComplete {
2191
+ /**
2192
+ * ID of the drip quest to complete.
2193
+ */
2194
+ id: string;
2195
+ }
2196
+ /**
2197
+ * Liquidity pool details.
2198
+ */
2199
+ interface Liquidity {
2200
+ /**
2201
+ * Calculation type of the liquidity pool.
2202
+ */
2203
+ calculationType?: 'fixed' | 'custom';
2204
+ /**
2205
+ * Custom function to calculate the the reward amount based on the liquidity
2206
+ * provided per day. X is the reward amount, Y is the liquidity provided per day in
2207
+ * USD.
2208
+ */
2209
+ customFunction?: string;
2210
+ /**
2211
+ * Liquidity provided per day in USD
2212
+ */
2213
+ liquidityPerDay?: number;
2214
+ /**
2215
+ * Blockchain network of the liquidity pool.
2216
+ */
2217
+ network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp';
2218
+ /**
2219
+ * Indicates if only in-range liquidity is rewarded.
2220
+ */
2221
+ onlyRewardInRangeLiquidity?: boolean;
2222
+ /**
2223
+ * Array of liquidity pools associated with the rule.
2224
+ */
2225
+ pools?: Array<Liquidity.Pool>;
2226
+ /**
2227
+ * Protocol of the liquidity pool.
2228
+ */
2229
+ protocol?: string;
2230
+ }
2231
+ namespace Liquidity {
2232
+ interface Pool {
2233
+ /**
2234
+ * Unique identifier of the liquidity pool.
2235
+ */
2236
+ id: string;
2237
+ }
2238
+ }
2239
+ interface Range {
2240
+ /**
2241
+ * Reward amount for this range.
2242
+ */
2243
+ amount: number;
2244
+ /**
2245
+ * End value of the range.
2246
+ */
2247
+ endRange: number;
2248
+ /**
2249
+ * Start value of the range.
2250
+ */
2251
+ startRange: number;
2252
+ /**
2253
+ * ID of the loyalty badge for this range.
2254
+ */
2255
+ loyaltyBadgeId?: string;
2256
+ /**
2257
+ * Amount of the loyalty multiplier for this range.
2258
+ */
2259
+ loyaltyMultiplierAmount?: number;
2260
+ }
2261
+ /**
2262
+ * Object defining referral requirements.
2263
+ */
2264
+ interface ReferralRequirements {
2265
+ /**
2266
+ * Flag indicating if achieving points is required.
2267
+ */
2268
+ achievePoints?: boolean | null;
2269
+ /**
2270
+ * Flag indicating if completing the profile is required.
2271
+ */
2272
+ completeProfile?: boolean | null;
2273
+ /**
2274
+ * Flag indicating if connecting Discord is required.
2275
+ */
2276
+ connectDiscord?: boolean | null;
2277
+ /**
2278
+ * Flag indicating if connecting email is required.
2279
+ */
2280
+ connectEmail?: boolean | null;
2281
+ /**
2282
+ * Flag indicating if connecting Twitter is required.
2283
+ */
2284
+ connectTwitter?: boolean | null;
2285
+ points?: ReferralRequirements.Points | null;
2286
+ }
2287
+ namespace ReferralRequirements {
2288
+ interface Points {
2289
+ /**
2290
+ * Points required for referral.
2291
+ */
2292
+ amount?: number | null;
2293
+ /**
2294
+ * ID of the loyalty currency for referral.
2295
+ */
2296
+ loyaltyCurrecyId?: string | null;
2297
+ }
2298
+ }
2299
+ /**
2300
+ * Object containing details of the associated smart contract.
2301
+ */
2302
+ interface SmartContract {
2303
+ /**
2304
+ * Mapping of addresses for the smart contract.
2305
+ */
2306
+ addressMapping?: string | null;
2307
+ /**
2308
+ * Object containing details of the amount multiplier from the event.
2309
+ */
2310
+ amountMultiplier?: SmartContract.AmountMultiplier | null;
2311
+ /**
2312
+ * ID of the smart contract.
2313
+ */
2314
+ contractId?: string | null;
2315
+ /**
2316
+ * Criteria to evaluate the smart contract event.
2317
+ */
2318
+ criteria?: 'everyEvent' | 'byParameter' | null;
2319
+ /**
2320
+ * Event emitted by the smart contract.
2321
+ */
2322
+ event?: string | null;
2323
+ /**
2324
+ * Array of parameters for the smart contract.
2325
+ */
2326
+ params?: Array<SmartContract.Param> | null;
2327
+ /**
2328
+ * Type of the smart contract interaction.
2329
+ */
2330
+ type?: 'function' | 'event' | null;
2331
+ }
2332
+ namespace SmartContract {
2333
+ /**
2334
+ * Object containing details of the amount multiplier from the event.
2335
+ */
2336
+ interface AmountMultiplier {
2337
+ /**
2338
+ * Mapping of the value for the smart contract.
2339
+ */
2340
+ valueMapping?: string | null;
2341
+ }
2342
+ interface Param {
2343
+ /**
2344
+ * Condition to check for the parameter.
2345
+ */
2346
+ condition?: string | null;
2347
+ /**
2348
+ * Name of the smart contract parameter.
2349
+ */
2350
+ name?: string | null;
2351
+ /**
2352
+ * Value of the parameter.
2353
+ */
2354
+ value?: string | null;
2355
+ }
2356
+ }
2357
+ interface SnapshotProposal {
2358
+ /**
2359
+ * ID of the snapshot proposal.
2360
+ */
2361
+ id: string;
2362
+ /**
2363
+ * Space associated with the snapshot proposal.
2364
+ */
2365
+ space: string;
2366
+ }
2367
+ interface StreakArray {
2368
+ /**
2369
+ * Reward amount for achieving the streak milestone.
2370
+ */
2371
+ streakAmount: number;
2372
+ /**
2373
+ * Milestone required to achieve the streak.
2374
+ */
2375
+ streakMilestone: number;
2376
+ }
2377
+ /**
2378
+ * Metadata for swap loyalty rules
2379
+ */
2380
+ interface Swap {
2381
+ provider?: 'any' | 'relay' | 'lifi';
2382
+ relayReferrerId?: string;
2383
+ requireCrossChainSwap?: boolean;
2384
+ swappedToChain?: 'any' | number | string;
2385
+ swappedToTokens?: Array<Swap.SwappedToToken>;
2386
+ tokenMode?: 'any' | 'specific';
2387
+ trackTokenAmount?: boolean;
2388
+ }
2389
+ namespace Swap {
2390
+ interface SwappedToToken {
2391
+ address: string;
2392
+ chainId: string;
2393
+ }
2394
+ }
2395
+ }
1258
2396
  }
1259
2397
  }
1260
- export interface RuleDeleteResponse {
1261
- id: string;
1262
- deletedAt: string;
1263
- }
2398
+ export interface RuleDeleteResponse {
2399
+ id: string;
2400
+ deletedAt: string;
2401
+ }
1264
2402
  export interface RuleCompleteResponse {
1265
- message: string;
2403
+ message: 'Completion request added to queue' | 'Link click being verified, come back later to check the status';
1266
2404
  }
1267
2405
  export interface RuleGetStatusResponse {
1268
2406
  data: Array<RuleGetStatusResponse.Data>;
@@ -1319,7 +2457,7 @@ export interface RuleCreateParams {
1319
2457
  /**
1320
2458
  * Type of loyalty rule being created
1321
2459
  */
1322
- type: 'Bonus' | 'BoughtOn' | 'BoughtWithRoyalties' | 'DiscordMessages' | 'Listing' | 'Lodging' | 'MintOn' | 'PoapClaim' | 'SnagSocialsConnected' | 'SnapshotFullset' | 'SnapshotHold' | 'SoldOn' | 'SoldWithRoyalties' | 'TokenHold' | 'TwitterBio' | 'TwitterHashTagPost' | 'Retweet' | 'check_in' | 'code_entry' | 'connect_wallet' | 'connected_discord' | 'connected_email' | 'connected_epic' | 'connected_steam' | 'connected_telegram' | 'connected_twitter' | 'create_partner_account' | 'discord_member' | 'drip_x_follow' | 'drip_x_new_tweet' | 'drip_x_text_in_bio' | 'drip_x_text_in_comment' | 'drip_x_text_in_name' | 'drip_x_tweet' | 'external_rule' | 'link_click' | 'manual_upload' | 'profile_completed' | 'referred_user' | 'smart_contract_event' | 'snapshot_governance' | 'telegram_join' | 'telegram_messages' | 'text_input' | 'token_hold_erc20' | 'tweet_liked_by_project' | 'twitter_comment' | 'twitter_follow' | 'twitter_followers' | 'twitter_like' | 'twitter_post_hashtag' | 'quiz' | 'poll';
2460
+ type: 'Bonus' | 'BoughtOn' | 'BoughtWithRoyalties' | 'DiscordMessages' | 'Listing' | 'Lodging' | 'MintOn' | 'PoapClaim' | 'SnagSocialsConnected' | 'SnapshotFullset' | 'SnapshotHold' | 'SoldOn' | 'SoldWithRoyalties' | 'TokenHold' | 'TwitterBio' | 'TwitterHashTagPost' | 'Retweet' | 'check_in' | 'code_entry' | 'connect_wallet' | 'connected_discord' | 'connected_email' | 'connected_epic' | 'connected_steam' | 'connected_telegram' | 'connected_twitter' | 'create_partner_account' | 'discord_member' | 'drip_x_follow' | 'drip_x_new_tweet' | 'drip_x_text_in_bio' | 'drip_x_text_in_comment' | 'drip_x_text_in_name' | 'drip_x_tweet' | 'external_rule' | 'link_click' | 'manual_upload' | 'profile_completed' | 'referred_user' | 'smart_contract_event' | 'snapshot_governance' | 'telegram_join' | 'telegram_messages' | 'text_input' | 'token_hold_erc20' | 'tweet_liked_by_project' | 'twitter_comment' | 'twitter_follow' | 'twitter_followers' | 'twitter_like' | 'twitter_post_hashtag' | 'quiz' | 'poll' | 'steam_wishlist' | 'liquidity_uniswap_v2' | 'liquidity_uniswap_v3' | 'points_airdrop' | 'youtube_subscribers' | 'youtube_comment' | 'shopify_spend' | 'swap' | 'tiktok_post' | 'post_impressions' | 'discord_join' | 'connected_youtube';
1323
2461
  /**
1324
2462
  * Unique identifier for the associated website
1325
2463
  */
@@ -1348,26 +2486,53 @@ export interface RuleCreateParams {
1348
2486
  * Optional detailed description of the rule
1349
2487
  */
1350
2488
  description?: string;
2489
+ duplicatedFromId?: string | null;
2490
+ /**
2491
+ * ID of the external integration
2492
+ */
2493
+ externalIntegrationId?: string | null;
2494
+ /**
2495
+ * Whether to hide this rule in the user interface
2496
+ */
2497
+ hideInUi?: boolean;
2498
+ /**
2499
+ * Interval between rule executions
2500
+ */
2501
+ interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | 'unlimited' | null;
2502
+ /**
2503
+ * Whether this rule is mandatory
2504
+ */
2505
+ isRequired?: boolean;
2506
+ /**
2507
+ * Unique identifier for the loyalty badge
2508
+ */
2509
+ loyaltyBadgeId?: string | null;
2510
+ /**
2511
+ * Unique identifier for the loyalty rule group
2512
+ */
2513
+ loyaltyRuleGroupId?: 'no-section' | (string & {}) | null;
1351
2514
  /**
1352
- * Whether to hide this rule in the user interface
2515
+ * URL for uploading loyalty user allotment via CSV
1353
2516
  */
1354
- hideInUi?: boolean;
2517
+ loyaltyUserAllotmentCsvUrl?: string;
1355
2518
  /**
1356
- * Interval between rule executions
2519
+ * The interval for the max amount. Available for the smart contract and external
2520
+ * rules.
1357
2521
  */
1358
- interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | null;
2522
+ maxAmountInterval?: 'daily' | 'weekly' | 'monthly' | 'lifetime' | null;
1359
2523
  /**
1360
- * Whether this rule is mandatory
2524
+ * The maximum amount of points a user can earn per interval. Available for the
2525
+ * smart contract and external rules.
1361
2526
  */
1362
- isRequired?: boolean;
2527
+ maxAmountPerInterval?: number | null;
1363
2528
  /**
1364
- * Unique identifier for the loyalty rule group
2529
+ * URL of the media to be displayed
1365
2530
  */
1366
- loyaltyRuleGroupId?: 'no-section' | (string & {}) | null;
2531
+ mediaUrl?: string | null;
1367
2532
  /**
1368
2533
  * Blockchain network where the rule will apply
1369
2534
  */
1370
- network?: 'mainnet' | 'polygon' | 'polygon_mumbai' | 'optimism' | 'arbitrum' | 'binance' | 'bscTestnet' | 'avalanche' | 'avalancheFuji' | 'zksync' | 'fantom' | 'fantomTestnet' | 'base' | 'baseSepolia' | 'skaleNebula' | 'xai' | 'berachainArtio' | 'solana' | 'apechain' | 'flowMainnet' | 'campTestnet' | 'sui' | 'vanar' | 'superseed' | 'superseedSepolia' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'abstract';
2535
+ network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp';
1371
2536
  /**
1372
2537
  * OAuth credentials associated with the rule
1373
2538
  */
@@ -1375,17 +2540,29 @@ export interface RuleCreateParams {
1375
2540
  /**
1376
2541
  * Type of reward issued by the rule
1377
2542
  */
1378
- rewardType?: 'points' | 'multiplier';
2543
+ rewardType?: 'points' | 'multiplier' | 'badge';
1379
2544
  /**
1380
- * Identifier for associated subscriptions
2545
+ * URL of the Shopify store
1381
2546
  */
1382
- subscriptionIdentifier?: string | null;
2547
+ shopifyStoreUrl?: string | null;
2548
+ /**
2549
+ * Whether to show this rule before the start time
2550
+ */
2551
+ showBeforeStart?: boolean;
2552
+ /**
2553
+ * Optional subscription id for the rule
2554
+ */
2555
+ subscriptionId?: string | null;
1383
2556
  }
1384
2557
  export declare namespace RuleCreateParams {
1385
2558
  /**
1386
2559
  * Additional metadata for the loyalty rule
1387
2560
  */
1388
2561
  interface Metadata {
2562
+ /**
2563
+ * Number of tokens per batch.
2564
+ */
2565
+ batchSize?: number | null;
1389
2566
  /**
1390
2567
  * Text displayed on the action button.
1391
2568
  */
@@ -1405,11 +2582,21 @@ export declare namespace RuleCreateParams {
1405
2582
  /**
1406
2583
  * Text to check in the Twitter post, username, or bio.
1407
2584
  */
1408
- checkText?: string | null;
2585
+ checkText?: string | Array<string> | null;
1409
2586
  /**
1410
2587
  * Array of collections associated with the rule.
1411
2588
  */
1412
2589
  collection?: Array<Metadata.Collection>;
2590
+ /**
2591
+ * Conditions for completing the profile.
2592
+ */
2593
+ completeProfileConditions?: {
2594
+ [key: string]: boolean;
2595
+ } | null;
2596
+ /**
2597
+ * Description of the external rule condition (only for external rules)
2598
+ */
2599
+ conditionDescription?: string;
1413
2600
  /**
1414
2601
  * Object containing details for the call-to-action.
1415
2602
  */
@@ -1418,6 +2605,10 @@ export declare namespace RuleCreateParams {
1418
2605
  * API key for custom rewards integration.
1419
2606
  */
1420
2607
  customRewardsApiKey?: string;
2608
+ /**
2609
+ * Flag indicating if the rule should use direct RPC to get the balance of tokens.
2610
+ */
2611
+ directRpc?: boolean;
1421
2612
  /**
1422
2613
  * Array of Discord servers, channels, and roles to join.
1423
2614
  */
@@ -1438,10 +2629,18 @@ export declare namespace RuleCreateParams {
1438
2629
  * Flag indicating whether the verified multiplier is enabled.
1439
2630
  */
1440
2631
  enableVerifiedMultiplier?: boolean;
2632
+ /**
2633
+ * Fill source of the order for the token sale
2634
+ */
2635
+ fillSource?: string;
1441
2636
  /**
1442
2637
  * Percentage reward given to a user for their first referral.
1443
2638
  */
1444
2639
  firstReferralReward?: number | null;
2640
+ /**
2641
+ * Flag indicating whether the fill source is included.
2642
+ */
2643
+ hasFillSource?: boolean;
1445
2644
  /**
1446
2645
  * Indicates if the item has never been sold.
1447
2646
  */
@@ -1462,10 +2661,18 @@ export declare namespace RuleCreateParams {
1462
2661
  * URL of the image associated with the rule.
1463
2662
  */
1464
2663
  imageUrl?: string | null;
2664
+ /**
2665
+ * If enabled, the first transaction done on the platform will complete this rule
2666
+ */
2667
+ isCheckInOnEveryTxn?: boolean;
1465
2668
  /**
1466
2669
  * Indicates if the multiplier has been applied to rewards.
1467
2670
  */
1468
2671
  isMultiplierApplied?: boolean;
2672
+ /**
2673
+ * Flag indicating if the rule is restricted to new users.
2674
+ */
2675
+ isRestrictedToNewUsers?: boolean;
1469
2676
  /**
1470
2677
  * Flag indicating if rewards are applied retroactively.
1471
2678
  */
@@ -1478,6 +2685,10 @@ export declare namespace RuleCreateParams {
1478
2685
  * Optional link associated with the metadata.
1479
2686
  */
1480
2687
  link?: string | null;
2688
+ /**
2689
+ * Liquidity pool details.
2690
+ */
2691
+ liquidity?: Metadata.Liquidity;
1481
2692
  /**
1482
2693
  * Maximum quantity constraint for token holding.
1483
2694
  */
@@ -1514,6 +2725,18 @@ export declare namespace RuleCreateParams {
1514
2725
  * Promotional code associated with the rule.
1515
2726
  */
1516
2727
  promoCode?: string;
2728
+ /**
2729
+ * URL of the CSV file containing promo codes.
2730
+ */
2731
+ promoCodeCsvUrl?: string;
2732
+ /**
2733
+ * Numbers of the promotional code to be generated.
2734
+ */
2735
+ promoCodeLength?: number | null;
2736
+ /**
2737
+ * Type of the promotional code.
2738
+ */
2739
+ promoCodeType?: 'code' | 'csv' | 'generate';
1517
2740
  /**
1518
2741
  * Array defining ranges and corresponding rewards.
1519
2742
  */
@@ -1526,10 +2749,47 @@ export declare namespace RuleCreateParams {
1526
2749
  * Lump sum reward given to a referrer.
1527
2750
  */
1528
2751
  referrerReward?: number | null;
2752
+ /**
2753
+ * Loyalty currency ID of the referrer reward.
2754
+ */
2755
+ referrerRewardLoyaltyCurrencyId?: string | null;
2756
+ /**
2757
+ * Flag indicating if the post link is required.
2758
+ */
2759
+ requirePostLink?: boolean | null;
2760
+ /**
2761
+ * Flag indicating if media metadata is required.
2762
+ */
2763
+ requirePostMediaLink?: boolean | null;
2764
+ /**
2765
+ * Flag indicating if the rule can also reward badges per range.
2766
+ */
2767
+ rewardBadgePerRange?: boolean;
2768
+ /**
2769
+ * Flag indicating if the reward is rewarded by batch.
2770
+ */
2771
+ rewardByBatch?: boolean | null;
2772
+ /**
2773
+ * Flag indicating if the reward is rewarded per action.
2774
+ */
2775
+ rewardPerAction?: boolean | null;
1529
2776
  /**
1530
2777
  * Flag indicating if rewards are given per impression.
1531
2778
  */
1532
2779
  rewardPerImpression?: boolean | null;
2780
+ /**
2781
+ * Flag indicating if the rule should reward based on value of traded tokens
2782
+ * instead of count.
2783
+ */
2784
+ rewardPerValue?: boolean;
2785
+ /**
2786
+ * Wallet address of the user can only be used if userId is not provided
2787
+ */
2788
+ royaltyAddress?: string;
2789
+ /**
2790
+ * Royalty percentage of the item.
2791
+ */
2792
+ royaltyPercentage?: number;
1533
2793
  /**
1534
2794
  * Currency associated with sales.
1535
2795
  */
@@ -1553,7 +2813,7 @@ export declare namespace RuleCreateParams {
1553
2813
  /**
1554
2814
  * Social media platform associated with the rule.
1555
2815
  */
1556
- socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | null;
2816
+ socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | 'Google' | null;
1557
2817
  /**
1558
2818
  * URL of the social platform's logo.
1559
2819
  */
@@ -1562,10 +2822,18 @@ export declare namespace RuleCreateParams {
1562
2822
  * Name of the social platform.
1563
2823
  */
1564
2824
  socialPlatformName?: string | null;
2825
+ /**
2826
+ * ID of the Steam app.
2827
+ */
2828
+ steamAppId?: string | null;
1565
2829
  /**
1566
2830
  * Array of streak milestones and corresponding rewards.
1567
2831
  */
1568
2832
  streakArray?: Array<Metadata.StreakArray> | null;
2833
+ /**
2834
+ * Metadata for swap loyalty rules
2835
+ */
2836
+ swap?: Metadata.Swap;
1569
2837
  /**
1570
2838
  * ID of the Telegram channel.
1571
2839
  */
@@ -1578,6 +2846,11 @@ export declare namespace RuleCreateParams {
1578
2846
  * Flag indicating if all contracts are tracked.
1579
2847
  */
1580
2848
  trackAllContracts?: boolean | null;
2849
+ /**
2850
+ * Flag indicating if the progress is tracked. If enabled, the rule can only be
2851
+ * completed once the progress is 100%.
2852
+ */
2853
+ trackProgress?: boolean | null;
1581
2854
  /**
1582
2855
  * URL of the associated Twitter account.
1583
2856
  */
@@ -1613,7 +2886,15 @@ export declare namespace RuleCreateParams {
1613
2886
  /**
1614
2887
  * Type of wallet associated with the rule.
1615
2888
  */
1616
- walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | null;
2889
+ walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | 'cosmos' | 'ultra' | 'agw' | null;
2890
+ /**
2891
+ * ID of the Youtube channel.
2892
+ */
2893
+ youtubeChannelId?: string | null;
2894
+ /**
2895
+ * ID of the Youtube video.
2896
+ */
2897
+ youtubeVideoId?: string | null;
1617
2898
  }
1618
2899
  namespace Metadata {
1619
2900
  interface Collection {
@@ -1628,7 +2909,7 @@ export declare namespace RuleCreateParams {
1628
2909
  /**
1629
2910
  * Blockchain network of the collection.
1630
2911
  */
1631
- network?: 'mainnet' | 'polygon' | 'polygon_mumbai' | 'optimism' | 'arbitrum' | 'binance' | 'bscTestnet' | 'avalanche' | 'avalancheFuji' | 'zksync' | 'fantom' | 'fantomTestnet' | 'base' | 'baseSepolia' | 'skaleNebula' | 'xai' | 'berachainArtio' | 'solana' | 'apechain' | 'flowMainnet' | 'campTestnet' | 'sui' | 'vanar' | 'superseed' | 'superseedSepolia' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'abstract';
2912
+ network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp';
1632
2913
  }
1633
2914
  /**
1634
2915
  * Object containing details for the call-to-action.
@@ -1693,6 +2974,49 @@ export declare namespace RuleCreateParams {
1693
2974
  */
1694
2975
  id: string;
1695
2976
  }
2977
+ /**
2978
+ * Liquidity pool details.
2979
+ */
2980
+ interface Liquidity {
2981
+ /**
2982
+ * Calculation type of the liquidity pool.
2983
+ */
2984
+ calculationType?: 'fixed' | 'custom';
2985
+ /**
2986
+ * Custom function to calculate the the reward amount based on the liquidity
2987
+ * provided per day. X is the reward amount, Y is the liquidity provided per day in
2988
+ * USD.
2989
+ */
2990
+ customFunction?: string;
2991
+ /**
2992
+ * Liquidity provided per day in USD
2993
+ */
2994
+ liquidityPerDay?: number;
2995
+ /**
2996
+ * Blockchain network of the liquidity pool.
2997
+ */
2998
+ network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp';
2999
+ /**
3000
+ * Indicates if only in-range liquidity is rewarded.
3001
+ */
3002
+ onlyRewardInRangeLiquidity?: boolean;
3003
+ /**
3004
+ * Array of liquidity pools associated with the rule.
3005
+ */
3006
+ pools?: Array<Liquidity.Pool>;
3007
+ /**
3008
+ * Protocol of the liquidity pool.
3009
+ */
3010
+ protocol?: string;
3011
+ }
3012
+ namespace Liquidity {
3013
+ interface Pool {
3014
+ /**
3015
+ * Unique identifier of the liquidity pool.
3016
+ */
3017
+ id: string;
3018
+ }
3019
+ }
1696
3020
  interface Range {
1697
3021
  /**
1698
3022
  * Reward amount for this range.
@@ -1706,6 +3030,14 @@ export declare namespace RuleCreateParams {
1706
3030
  * Start value of the range.
1707
3031
  */
1708
3032
  startRange: number;
3033
+ /**
3034
+ * ID of the loyalty badge for this range.
3035
+ */
3036
+ loyaltyBadgeId?: string;
3037
+ /**
3038
+ * Amount of the loyalty multiplier for this range.
3039
+ */
3040
+ loyaltyMultiplierAmount?: number;
1709
3041
  }
1710
3042
  /**
1711
3043
  * Object defining referral requirements.
@@ -1749,18 +3081,14 @@ export declare namespace RuleCreateParams {
1749
3081
  * Object containing details of the associated smart contract.
1750
3082
  */
1751
3083
  interface SmartContract {
1752
- /**
1753
- * ABI of the smart contract.
1754
- */
1755
- abi?: string | null;
1756
3084
  /**
1757
3085
  * Mapping of addresses for the smart contract.
1758
3086
  */
1759
3087
  addressMapping?: string | null;
1760
3088
  /**
1761
- * Array of bonus details applied to the rule.
3089
+ * Object containing details of the amount multiplier from the event.
1762
3090
  */
1763
- bonus?: Array<SmartContract.Bonus> | null;
3091
+ amountMultiplier?: SmartContract.AmountMultiplier | null;
1764
3092
  /**
1765
3093
  * ID of the smart contract.
1766
3094
  */
@@ -1769,58 +3097,28 @@ export declare namespace RuleCreateParams {
1769
3097
  * Criteria to evaluate the smart contract event.
1770
3098
  */
1771
3099
  criteria?: 'everyEvent' | 'byParameter' | null;
1772
- /**
1773
- * Time range applied to the rule.
1774
- */
1775
- customRange?: SmartContract.CustomRange | null;
1776
3100
  /**
1777
3101
  * Event emitted by the smart contract.
1778
3102
  */
1779
3103
  event?: string | null;
1780
- /**
1781
- * Maximum value allowed for the parameter.
1782
- */
1783
- max?: number | null;
1784
3104
  /**
1785
3105
  * Array of parameters for the smart contract.
1786
3106
  */
1787
3107
  params?: Array<SmartContract.Param> | null;
1788
3108
  /**
1789
- * Flag indicating if a bonus is applied.
3109
+ * Type of the smart contract interaction.
1790
3110
  */
1791
- withBonus?: boolean | null;
1792
- /**
1793
- * Flag indicating if a custom range is applied.
1794
- */
1795
- withCustomRange?: boolean | null;
1796
- /**
1797
- * Flag indicating if a maximum limit is applied.
1798
- */
1799
- withMax?: boolean | null;
3111
+ type?: 'function' | 'event' | null;
1800
3112
  }
1801
3113
  namespace SmartContract {
1802
- interface Bonus {
1803
- /**
1804
- * Amount of the bonus.
1805
- */
1806
- amount?: number | null;
1807
- /**
1808
- * Number of times the bonus is applied.
1809
- */
1810
- count?: number | null;
1811
- }
1812
3114
  /**
1813
- * Time range applied to the rule.
3115
+ * Object containing details of the amount multiplier from the event.
1814
3116
  */
1815
- interface CustomRange {
1816
- /**
1817
- * End time of the custom range.
1818
- */
1819
- endsAt?: string | null;
3117
+ interface AmountMultiplier {
1820
3118
  /**
1821
- * Start time of the custom range.
3119
+ * Mapping of the value for the smart contract.
1822
3120
  */
1823
- startsAt?: string | null;
3121
+ valueMapping?: string | null;
1824
3122
  }
1825
3123
  interface Param {
1826
3124
  /**
@@ -1857,6 +3155,24 @@ export declare namespace RuleCreateParams {
1857
3155
  */
1858
3156
  streakMilestone: number;
1859
3157
  }
3158
+ /**
3159
+ * Metadata for swap loyalty rules
3160
+ */
3161
+ interface Swap {
3162
+ provider?: 'any' | 'relay' | 'lifi';
3163
+ relayReferrerId?: string;
3164
+ requireCrossChainSwap?: boolean;
3165
+ swappedToChain?: 'any' | number | string;
3166
+ swappedToTokens?: Array<Swap.SwappedToToken>;
3167
+ tokenMode?: 'any' | 'specific';
3168
+ trackTokenAmount?: boolean;
3169
+ }
3170
+ namespace Swap {
3171
+ interface SwappedToToken {
3172
+ address: string;
3173
+ chainId: string;
3174
+ }
3175
+ }
1860
3176
  }
1861
3177
  interface Collection {
1862
3178
  /**
@@ -1866,7 +3182,11 @@ export declare namespace RuleCreateParams {
1866
3182
  /**
1867
3183
  * Blockchain network for the collection
1868
3184
  */
1869
- network: 'mainnet' | 'polygon' | 'polygon_mumbai' | 'optimism' | 'arbitrum' | 'binance' | 'bscTestnet' | 'avalanche' | 'avalancheFuji' | 'zksync' | 'fantom' | 'fantomTestnet' | 'base' | 'baseSepolia' | 'skaleNebula' | 'xai' | 'berachainArtio' | 'solana' | 'apechain' | 'flowMainnet' | 'campTestnet' | 'sui' | 'vanar' | 'superseed' | 'superseedSepolia' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'abstract';
3185
+ network: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp';
3186
+ /**
3187
+ * Symbol of the collection.
3188
+ */
3189
+ symbol?: string;
1870
3190
  }
1871
3191
  }
1872
3192
  export interface RuleUpdateParams {
@@ -1910,6 +3230,10 @@ export interface RuleUpdateParams {
1910
3230
  * Effective start time of the rule
1911
3231
  */
1912
3232
  effectiveStartTime?: string | null;
3233
+ /**
3234
+ * ID of the external integration
3235
+ */
3236
+ externalIntegrationId?: string | null;
1913
3237
  /**
1914
3238
  * Frequency of the rule execution
1915
3239
  */
@@ -1921,7 +3245,7 @@ export interface RuleUpdateParams {
1921
3245
  /**
1922
3246
  * Time interval for recurring rule execution
1923
3247
  */
1924
- interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | null;
3248
+ interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | 'unlimited' | null;
1925
3249
  /**
1926
3250
  * Whether this rule is required for participation
1927
3251
  */
@@ -1930,6 +3254,20 @@ export interface RuleUpdateParams {
1930
3254
  * ID of the rule group section to associate with the rule
1931
3255
  */
1932
3256
  loyaltyRuleGroupId?: (string & {}) | 'no-section' | null;
3257
+ /**
3258
+ * The interval for the max amount. Available for the smart contract and external
3259
+ * rules.
3260
+ */
3261
+ maxAmountInterval?: 'daily' | 'weekly' | 'monthly' | 'lifetime' | null;
3262
+ /**
3263
+ * The maximum amount of points a user can earn per interval. Available for the
3264
+ * smart contract and external rules.
3265
+ */
3266
+ maxAmountPerInterval?: number | null;
3267
+ /**
3268
+ * URL of the media to be displayed
3269
+ */
3270
+ mediaUrl?: string | null;
1933
3271
  /**
1934
3272
  * Additional metadata for the loyalty rule
1935
3273
  */
@@ -1937,7 +3275,7 @@ export interface RuleUpdateParams {
1937
3275
  /**
1938
3276
  * Blockchain network where the rule will apply
1939
3277
  */
1940
- network?: 'mainnet' | 'polygon' | 'polygon_mumbai' | 'optimism' | 'arbitrum' | 'binance' | 'bscTestnet' | 'avalanche' | 'avalancheFuji' | 'zksync' | 'fantom' | 'fantomTestnet' | 'base' | 'baseSepolia' | 'skaleNebula' | 'xai' | 'berachainArtio' | 'solana' | 'apechain' | 'flowMainnet' | 'campTestnet' | 'sui' | 'vanar' | 'superseed' | 'superseedSepolia' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'abstract';
3278
+ network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp';
1941
3279
  /**
1942
3280
  * ID for associated OAuth credentials
1943
3281
  */
@@ -1945,15 +3283,23 @@ export interface RuleUpdateParams {
1945
3283
  /**
1946
3284
  * Type of reward issued by this rule
1947
3285
  */
1948
- rewardType?: 'points' | 'multiplier';
3286
+ rewardType?: 'points' | 'multiplier' | 'badge';
3287
+ /**
3288
+ * URL of the Shopify store
3289
+ */
3290
+ shopifyStoreUrl?: string | null;
3291
+ /**
3292
+ * Whether to show this rule before the start time
3293
+ */
3294
+ showBeforeStart?: boolean;
1949
3295
  /**
1950
3296
  * Start time for the loyalty rule
1951
3297
  */
1952
3298
  startTime?: string | null;
1953
3299
  /**
1954
- * Optional subscription identifier for the rule
3300
+ * Optional subscription id for the rule
1955
3301
  */
1956
- subscriptionIdentifier?: string | null;
3302
+ subscriptionId?: string | null;
1957
3303
  }
1958
3304
  export declare namespace RuleUpdateParams {
1959
3305
  interface Collection {
@@ -1964,12 +3310,20 @@ export declare namespace RuleUpdateParams {
1964
3310
  /**
1965
3311
  * Blockchain network for the collection
1966
3312
  */
1967
- network: 'mainnet' | 'polygon' | 'polygon_mumbai' | 'optimism' | 'arbitrum' | 'binance' | 'bscTestnet' | 'avalanche' | 'avalancheFuji' | 'zksync' | 'fantom' | 'fantomTestnet' | 'base' | 'baseSepolia' | 'skaleNebula' | 'xai' | 'berachainArtio' | 'solana' | 'apechain' | 'flowMainnet' | 'campTestnet' | 'sui' | 'vanar' | 'superseed' | 'superseedSepolia' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'abstract';
3313
+ network: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp';
3314
+ /**
3315
+ * Symbol of the collection.
3316
+ */
3317
+ symbol?: string;
1968
3318
  }
1969
3319
  /**
1970
3320
  * Additional metadata for the loyalty rule
1971
3321
  */
1972
3322
  interface Metadata {
3323
+ /**
3324
+ * Number of tokens per batch.
3325
+ */
3326
+ batchSize?: number | null;
1973
3327
  /**
1974
3328
  * Text displayed on the action button.
1975
3329
  */
@@ -1989,11 +3343,21 @@ export declare namespace RuleUpdateParams {
1989
3343
  /**
1990
3344
  * Text to check in the Twitter post, username, or bio.
1991
3345
  */
1992
- checkText?: string | null;
3346
+ checkText?: string | Array<string> | null;
1993
3347
  /**
1994
3348
  * Array of collections associated with the rule.
1995
3349
  */
1996
3350
  collection?: Array<Metadata.Collection>;
3351
+ /**
3352
+ * Conditions for completing the profile.
3353
+ */
3354
+ completeProfileConditions?: {
3355
+ [key: string]: boolean;
3356
+ } | null;
3357
+ /**
3358
+ * Description of the external rule condition (only for external rules)
3359
+ */
3360
+ conditionDescription?: string;
1997
3361
  /**
1998
3362
  * Object containing details for the call-to-action.
1999
3363
  */
@@ -2002,6 +3366,10 @@ export declare namespace RuleUpdateParams {
2002
3366
  * API key for custom rewards integration.
2003
3367
  */
2004
3368
  customRewardsApiKey?: string;
3369
+ /**
3370
+ * Flag indicating if the rule should use direct RPC to get the balance of tokens.
3371
+ */
3372
+ directRpc?: boolean;
2005
3373
  /**
2006
3374
  * Array of Discord servers, channels, and roles to join.
2007
3375
  */
@@ -2022,10 +3390,18 @@ export declare namespace RuleUpdateParams {
2022
3390
  * Flag indicating whether the verified multiplier is enabled.
2023
3391
  */
2024
3392
  enableVerifiedMultiplier?: boolean;
3393
+ /**
3394
+ * Fill source of the order for the token sale
3395
+ */
3396
+ fillSource?: string;
2025
3397
  /**
2026
3398
  * Percentage reward given to a user for their first referral.
2027
3399
  */
2028
3400
  firstReferralReward?: number | null;
3401
+ /**
3402
+ * Flag indicating whether the fill source is included.
3403
+ */
3404
+ hasFillSource?: boolean;
2029
3405
  /**
2030
3406
  * Indicates if the item has never been sold.
2031
3407
  */
@@ -2046,10 +3422,18 @@ export declare namespace RuleUpdateParams {
2046
3422
  * URL of the image associated with the rule.
2047
3423
  */
2048
3424
  imageUrl?: string | null;
3425
+ /**
3426
+ * If enabled, the first transaction done on the platform will complete this rule
3427
+ */
3428
+ isCheckInOnEveryTxn?: boolean;
2049
3429
  /**
2050
3430
  * Indicates if the multiplier has been applied to rewards.
2051
3431
  */
2052
3432
  isMultiplierApplied?: boolean;
3433
+ /**
3434
+ * Flag indicating if the rule is restricted to new users.
3435
+ */
3436
+ isRestrictedToNewUsers?: boolean;
2053
3437
  /**
2054
3438
  * Flag indicating if rewards are applied retroactively.
2055
3439
  */
@@ -2062,6 +3446,10 @@ export declare namespace RuleUpdateParams {
2062
3446
  * Optional link associated with the metadata.
2063
3447
  */
2064
3448
  link?: string | null;
3449
+ /**
3450
+ * Liquidity pool details.
3451
+ */
3452
+ liquidity?: Metadata.Liquidity;
2065
3453
  /**
2066
3454
  * Maximum quantity constraint for token holding.
2067
3455
  */
@@ -2098,6 +3486,18 @@ export declare namespace RuleUpdateParams {
2098
3486
  * Promotional code associated with the rule.
2099
3487
  */
2100
3488
  promoCode?: string;
3489
+ /**
3490
+ * URL of the CSV file containing promo codes.
3491
+ */
3492
+ promoCodeCsvUrl?: string;
3493
+ /**
3494
+ * Numbers of the promotional code to be generated.
3495
+ */
3496
+ promoCodeLength?: number | null;
3497
+ /**
3498
+ * Type of the promotional code.
3499
+ */
3500
+ promoCodeType?: 'code' | 'csv' | 'generate';
2101
3501
  /**
2102
3502
  * Array defining ranges and corresponding rewards.
2103
3503
  */
@@ -2110,10 +3510,47 @@ export declare namespace RuleUpdateParams {
2110
3510
  * Lump sum reward given to a referrer.
2111
3511
  */
2112
3512
  referrerReward?: number | null;
3513
+ /**
3514
+ * Loyalty currency ID of the referrer reward.
3515
+ */
3516
+ referrerRewardLoyaltyCurrencyId?: string | null;
3517
+ /**
3518
+ * Flag indicating if the post link is required.
3519
+ */
3520
+ requirePostLink?: boolean | null;
3521
+ /**
3522
+ * Flag indicating if media metadata is required.
3523
+ */
3524
+ requirePostMediaLink?: boolean | null;
3525
+ /**
3526
+ * Flag indicating if the rule can also reward badges per range.
3527
+ */
3528
+ rewardBadgePerRange?: boolean;
3529
+ /**
3530
+ * Flag indicating if the reward is rewarded by batch.
3531
+ */
3532
+ rewardByBatch?: boolean | null;
3533
+ /**
3534
+ * Flag indicating if the reward is rewarded per action.
3535
+ */
3536
+ rewardPerAction?: boolean | null;
2113
3537
  /**
2114
3538
  * Flag indicating if rewards are given per impression.
2115
3539
  */
2116
3540
  rewardPerImpression?: boolean | null;
3541
+ /**
3542
+ * Flag indicating if the rule should reward based on value of traded tokens
3543
+ * instead of count.
3544
+ */
3545
+ rewardPerValue?: boolean;
3546
+ /**
3547
+ * Wallet address of the user can only be used if userId is not provided
3548
+ */
3549
+ royaltyAddress?: string;
3550
+ /**
3551
+ * Royalty percentage of the item.
3552
+ */
3553
+ royaltyPercentage?: number;
2117
3554
  /**
2118
3555
  * Currency associated with sales.
2119
3556
  */
@@ -2137,7 +3574,7 @@ export declare namespace RuleUpdateParams {
2137
3574
  /**
2138
3575
  * Social media platform associated with the rule.
2139
3576
  */
2140
- socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | null;
3577
+ socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | 'Google' | null;
2141
3578
  /**
2142
3579
  * URL of the social platform's logo.
2143
3580
  */
@@ -2146,10 +3583,18 @@ export declare namespace RuleUpdateParams {
2146
3583
  * Name of the social platform.
2147
3584
  */
2148
3585
  socialPlatformName?: string | null;
3586
+ /**
3587
+ * ID of the Steam app.
3588
+ */
3589
+ steamAppId?: string | null;
2149
3590
  /**
2150
3591
  * Array of streak milestones and corresponding rewards.
2151
3592
  */
2152
3593
  streakArray?: Array<Metadata.StreakArray> | null;
3594
+ /**
3595
+ * Metadata for swap loyalty rules
3596
+ */
3597
+ swap?: Metadata.Swap;
2153
3598
  /**
2154
3599
  * ID of the Telegram channel.
2155
3600
  */
@@ -2162,6 +3607,11 @@ export declare namespace RuleUpdateParams {
2162
3607
  * Flag indicating if all contracts are tracked.
2163
3608
  */
2164
3609
  trackAllContracts?: boolean | null;
3610
+ /**
3611
+ * Flag indicating if the progress is tracked. If enabled, the rule can only be
3612
+ * completed once the progress is 100%.
3613
+ */
3614
+ trackProgress?: boolean | null;
2165
3615
  /**
2166
3616
  * URL of the associated Twitter account.
2167
3617
  */
@@ -2197,7 +3647,15 @@ export declare namespace RuleUpdateParams {
2197
3647
  /**
2198
3648
  * Type of wallet associated with the rule.
2199
3649
  */
2200
- walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | null;
3650
+ walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | 'cosmos' | 'ultra' | 'agw' | null;
3651
+ /**
3652
+ * ID of the Youtube channel.
3653
+ */
3654
+ youtubeChannelId?: string | null;
3655
+ /**
3656
+ * ID of the Youtube video.
3657
+ */
3658
+ youtubeVideoId?: string | null;
2201
3659
  }
2202
3660
  namespace Metadata {
2203
3661
  interface Collection {
@@ -2212,7 +3670,7 @@ export declare namespace RuleUpdateParams {
2212
3670
  /**
2213
3671
  * Blockchain network of the collection.
2214
3672
  */
2215
- network?: 'mainnet' | 'polygon' | 'polygon_mumbai' | 'optimism' | 'arbitrum' | 'binance' | 'bscTestnet' | 'avalanche' | 'avalancheFuji' | 'zksync' | 'fantom' | 'fantomTestnet' | 'base' | 'baseSepolia' | 'skaleNebula' | 'xai' | 'berachainArtio' | 'solana' | 'apechain' | 'flowMainnet' | 'campTestnet' | 'sui' | 'vanar' | 'superseed' | 'superseedSepolia' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'abstract';
3673
+ network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp';
2216
3674
  }
2217
3675
  /**
2218
3676
  * Object containing details for the call-to-action.
@@ -2277,6 +3735,49 @@ export declare namespace RuleUpdateParams {
2277
3735
  */
2278
3736
  id: string;
2279
3737
  }
3738
+ /**
3739
+ * Liquidity pool details.
3740
+ */
3741
+ interface Liquidity {
3742
+ /**
3743
+ * Calculation type of the liquidity pool.
3744
+ */
3745
+ calculationType?: 'fixed' | 'custom';
3746
+ /**
3747
+ * Custom function to calculate the the reward amount based on the liquidity
3748
+ * provided per day. X is the reward amount, Y is the liquidity provided per day in
3749
+ * USD.
3750
+ */
3751
+ customFunction?: string;
3752
+ /**
3753
+ * Liquidity provided per day in USD
3754
+ */
3755
+ liquidityPerDay?: number;
3756
+ /**
3757
+ * Blockchain network of the liquidity pool.
3758
+ */
3759
+ network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp';
3760
+ /**
3761
+ * Indicates if only in-range liquidity is rewarded.
3762
+ */
3763
+ onlyRewardInRangeLiquidity?: boolean;
3764
+ /**
3765
+ * Array of liquidity pools associated with the rule.
3766
+ */
3767
+ pools?: Array<Liquidity.Pool>;
3768
+ /**
3769
+ * Protocol of the liquidity pool.
3770
+ */
3771
+ protocol?: string;
3772
+ }
3773
+ namespace Liquidity {
3774
+ interface Pool {
3775
+ /**
3776
+ * Unique identifier of the liquidity pool.
3777
+ */
3778
+ id: string;
3779
+ }
3780
+ }
2280
3781
  interface Range {
2281
3782
  /**
2282
3783
  * Reward amount for this range.
@@ -2290,6 +3791,14 @@ export declare namespace RuleUpdateParams {
2290
3791
  * Start value of the range.
2291
3792
  */
2292
3793
  startRange: number;
3794
+ /**
3795
+ * ID of the loyalty badge for this range.
3796
+ */
3797
+ loyaltyBadgeId?: string;
3798
+ /**
3799
+ * Amount of the loyalty multiplier for this range.
3800
+ */
3801
+ loyaltyMultiplierAmount?: number;
2293
3802
  }
2294
3803
  /**
2295
3804
  * Object defining referral requirements.
@@ -2333,18 +3842,14 @@ export declare namespace RuleUpdateParams {
2333
3842
  * Object containing details of the associated smart contract.
2334
3843
  */
2335
3844
  interface SmartContract {
2336
- /**
2337
- * ABI of the smart contract.
2338
- */
2339
- abi?: string | null;
2340
3845
  /**
2341
3846
  * Mapping of addresses for the smart contract.
2342
3847
  */
2343
3848
  addressMapping?: string | null;
2344
3849
  /**
2345
- * Array of bonus details applied to the rule.
3850
+ * Object containing details of the amount multiplier from the event.
2346
3851
  */
2347
- bonus?: Array<SmartContract.Bonus> | null;
3852
+ amountMultiplier?: SmartContract.AmountMultiplier | null;
2348
3853
  /**
2349
3854
  * ID of the smart contract.
2350
3855
  */
@@ -2353,58 +3858,28 @@ export declare namespace RuleUpdateParams {
2353
3858
  * Criteria to evaluate the smart contract event.
2354
3859
  */
2355
3860
  criteria?: 'everyEvent' | 'byParameter' | null;
2356
- /**
2357
- * Time range applied to the rule.
2358
- */
2359
- customRange?: SmartContract.CustomRange | null;
2360
3861
  /**
2361
3862
  * Event emitted by the smart contract.
2362
3863
  */
2363
3864
  event?: string | null;
2364
- /**
2365
- * Maximum value allowed for the parameter.
2366
- */
2367
- max?: number | null;
2368
3865
  /**
2369
3866
  * Array of parameters for the smart contract.
2370
3867
  */
2371
3868
  params?: Array<SmartContract.Param> | null;
2372
3869
  /**
2373
- * Flag indicating if a bonus is applied.
2374
- */
2375
- withBonus?: boolean | null;
2376
- /**
2377
- * Flag indicating if a custom range is applied.
2378
- */
2379
- withCustomRange?: boolean | null;
2380
- /**
2381
- * Flag indicating if a maximum limit is applied.
3870
+ * Type of the smart contract interaction.
2382
3871
  */
2383
- withMax?: boolean | null;
3872
+ type?: 'function' | 'event' | null;
2384
3873
  }
2385
3874
  namespace SmartContract {
2386
- interface Bonus {
2387
- /**
2388
- * Amount of the bonus.
2389
- */
2390
- amount?: number | null;
2391
- /**
2392
- * Number of times the bonus is applied.
2393
- */
2394
- count?: number | null;
2395
- }
2396
3875
  /**
2397
- * Time range applied to the rule.
3876
+ * Object containing details of the amount multiplier from the event.
2398
3877
  */
2399
- interface CustomRange {
2400
- /**
2401
- * End time of the custom range.
2402
- */
2403
- endsAt?: string | null;
3878
+ interface AmountMultiplier {
2404
3879
  /**
2405
- * Start time of the custom range.
3880
+ * Mapping of the value for the smart contract.
2406
3881
  */
2407
- startsAt?: string | null;
3882
+ valueMapping?: string | null;
2408
3883
  }
2409
3884
  interface Param {
2410
3885
  /**
@@ -2441,21 +3916,65 @@ export declare namespace RuleUpdateParams {
2441
3916
  */
2442
3917
  streakMilestone: number;
2443
3918
  }
3919
+ /**
3920
+ * Metadata for swap loyalty rules
3921
+ */
3922
+ interface Swap {
3923
+ provider?: 'any' | 'relay' | 'lifi';
3924
+ relayReferrerId?: string;
3925
+ requireCrossChainSwap?: boolean;
3926
+ swappedToChain?: 'any' | number | string;
3927
+ swappedToTokens?: Array<Swap.SwappedToToken>;
3928
+ tokenMode?: 'any' | 'specific';
3929
+ trackTokenAmount?: boolean;
3930
+ }
3931
+ namespace Swap {
3932
+ interface SwappedToToken {
3933
+ address: string;
3934
+ chainId: string;
3935
+ }
3936
+ }
2444
3937
  }
2445
3938
  }
2446
3939
  export interface RuleListParams {
3940
+ /**
3941
+ * IDs of the users to filter results by
3942
+ */
3943
+ allotedToUserId?: string | Array<string>;
3944
+ /**
3945
+ * ID of the user group to filter results by
3946
+ */
3947
+ allotedUserGroupId?: string;
2447
3948
  /**
2448
3949
  * Address of the collection to filter by
2449
3950
  */
2450
3951
  collectionAddress?: string;
2451
3952
  /**
2452
- * Maximum number of records to return (max 1000)
3953
+ * If true this will only return loyalty rule chains
3954
+ */
3955
+ includeLoyaltyRuleChains?: 'true' | 'false';
3956
+ /**
3957
+ * If true this will only return active rules, the rules for which the startTime is
3958
+ * in the past and the endTime is in the future
3959
+ */
3960
+ isActive?: 'true' | 'false';
3961
+ /**
3962
+ * If true this will only return special rules, special rules are the rules that
3963
+ * are used for anti sybil as honey pot
3964
+ */
3965
+ isSpecial?: 'true' | 'false';
3966
+ /**
3967
+ * Maximum number of records to return (max 100)
2453
3968
  */
2454
3969
  limit?: number;
2455
3970
  /**
2456
3971
  * ID of the loyalty rule group to filter results
2457
3972
  */
2458
3973
  loyaltyRuleGroupId?: string;
3974
+ /**
3975
+ * The IDs of the loyalty rule
3976
+ */
3977
+ loyaltyRuleId?: string | Array<string>;
2459
3978
  /**
2460
3979
  * Unique identifier for the organization to filter by
2461
3980
  */
@@ -2469,15 +3988,34 @@ export interface RuleListParams {
2469
3988
  */
2470
3989
  websiteId?: string;
2471
3990
  }
3991
+ export interface RuleDeleteParams {
3992
+ /**
3993
+ * Whether to debit loyalty points
3994
+ */
3995
+ debitLoyaltyPoints?: string;
3996
+ }
2472
3997
  export interface RuleCompleteParams {
2473
3998
  /**
2474
- * Link to the comment made by user
3999
+ * Override amount for the reward (rounded to nearest whole number). This will
4000
+ * override the rule amount and reward the integer passed.
4001
+ */
4002
+ amount?: number | null;
4003
+ /**
4004
+ * Link to the post/comment made by user
4005
+ */
4006
+ contentUrl?: string;
4007
+ /**
4008
+ * Unique key to ensure idempotent requests.
2475
4009
  */
2476
- commentLink?: string;
4010
+ idempotencyKey?: string;
2477
4011
  /**
2478
4012
  * ID of the choice selected by the user
2479
4013
  */
2480
4014
  loyaltyQuestionChoiceId?: string;
4015
+ /**
4016
+ * Value to compare with the range
4017
+ */
4018
+ rangeValue?: number | null;
2481
4019
  /**
2482
4020
  * Unique identifier for the user
2483
4021
  */
@@ -2488,7 +4026,7 @@ export interface RuleCompleteParams {
2488
4026
  verificationCode?: string;
2489
4027
  /**
2490
4028
  * Flag indicating if only verification is required, this will not create a
2491
- * transaction and reward the user
4029
+ * transaction and reward the user.
2492
4030
  */
2493
4031
  verifyOnly?: string;
2494
4032
  /**
@@ -2497,11 +4035,12 @@ export interface RuleCompleteParams {
2497
4035
  walletAddress?: string;
2498
4036
  }
2499
4037
  export interface RuleGetStatusParams {
2500
- organizationId: string;
2501
- websiteId: string;
4038
+ organizationId?: string;
2502
4039
  userId?: string;
4040
+ walletAddress?: string;
4041
+ websiteId?: string;
2503
4042
  }
2504
4043
  export declare namespace Rules {
2505
- export { type RuleCreateResponse as RuleCreateResponse, type RuleUpdateResponse as RuleUpdateResponse, type RuleListResponse as RuleListResponse, type RuleDeleteResponse as RuleDeleteResponse, type RuleCompleteResponse as RuleCompleteResponse, type RuleGetStatusResponse as RuleGetStatusResponse, type RuleCreateParams as RuleCreateParams, type RuleUpdateParams as RuleUpdateParams, type RuleListParams as RuleListParams, type RuleCompleteParams as RuleCompleteParams, type RuleGetStatusParams as RuleGetStatusParams, };
4044
+ export { type RuleCreateResponse as RuleCreateResponse, type RuleUpdateResponse as RuleUpdateResponse, type RuleListResponse as RuleListResponse, type RuleDeleteResponse as RuleDeleteResponse, type RuleCompleteResponse as RuleCompleteResponse, type RuleGetStatusResponse as RuleGetStatusResponse, type RuleCreateParams as RuleCreateParams, type RuleUpdateParams as RuleUpdateParams, type RuleListParams as RuleListParams, type RuleDeleteParams as RuleDeleteParams, type RuleCompleteParams as RuleCompleteParams, type RuleGetStatusParams as RuleGetStatusParams, };
2506
4045
  }
2507
4046
  //# sourceMappingURL=rules.d.ts.map