@snagsolutions/sdk 0.1.0-alpha.23 → 0.1.0-alpha.231

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 (328) hide show
  1. package/CHANGELOG.md +13 -254
  2. package/LICENSE +1 -1
  3. package/README.md +15 -23
  4. package/core.d.ts +19 -5
  5. package/core.d.ts.map +1 -1
  6. package/core.js +29 -17
  7. package/core.js.map +1 -1
  8. package/core.mjs +29 -17
  9. package/core.mjs.map +1 -1
  10. package/index.d.mts +14 -8
  11. package/index.d.ts +14 -8
  12. package/index.d.ts.map +1 -1
  13. package/index.js +12 -5
  14. package/index.js.map +1 -1
  15. package/index.mjs +13 -6
  16. package/index.mjs.map +1 -1
  17. package/package.json +4 -5
  18. package/resource.d.ts +1 -1
  19. package/resource.d.ts.map +1 -1
  20. package/resource.js.map +1 -1
  21. package/resource.mjs.map +1 -1
  22. package/resources/assets.d.ts +16 -2
  23. package/resources/assets.d.ts.map +1 -1
  24. package/resources/assets.js +8 -0
  25. package/resources/assets.js.map +1 -1
  26. package/resources/assets.mjs +8 -0
  27. package/resources/assets.mjs.map +1 -1
  28. package/resources/auctions/auctions.d.ts +368 -0
  29. package/resources/auctions/auctions.d.ts.map +1 -0
  30. package/resources/auctions/auctions.js +72 -0
  31. package/resources/auctions/auctions.js.map +1 -0
  32. package/resources/auctions/auctions.mjs +45 -0
  33. package/resources/auctions/auctions.mjs.map +1 -0
  34. package/resources/auctions/index.d.ts +3 -0
  35. package/resources/auctions/index.d.ts.map +1 -0
  36. package/resources/auctions/index.js +9 -0
  37. package/resources/auctions/index.js.map +1 -0
  38. package/resources/auctions/index.mjs +4 -0
  39. package/resources/auctions/index.mjs.map +1 -0
  40. package/resources/auctions/website-user-attributes/index.d.ts +3 -0
  41. package/resources/auctions/website-user-attributes/index.d.ts.map +1 -0
  42. package/resources/auctions/website-user-attributes/index.js +9 -0
  43. package/resources/auctions/website-user-attributes/index.js.map +1 -0
  44. package/resources/auctions/website-user-attributes/index.mjs +4 -0
  45. package/resources/auctions/website-user-attributes/index.mjs.map +1 -0
  46. package/resources/auctions/website-user-attributes/values.d.ts +126 -0
  47. package/resources/auctions/website-user-attributes/values.d.ts.map +1 -0
  48. package/resources/auctions/website-user-attributes/values.js +49 -0
  49. package/resources/auctions/website-user-attributes/values.js.map +1 -0
  50. package/resources/auctions/website-user-attributes/values.mjs +45 -0
  51. package/resources/auctions/website-user-attributes/values.mjs.map +1 -0
  52. package/resources/auctions/website-user-attributes/website-user-attributes.d.ts +136 -0
  53. package/resources/auctions/website-user-attributes/website-user-attributes.d.ts.map +1 -0
  54. package/resources/auctions/website-user-attributes/website-user-attributes.js +76 -0
  55. package/resources/auctions/website-user-attributes/website-user-attributes.js.map +1 -0
  56. package/resources/auctions/website-user-attributes/website-user-attributes.mjs +49 -0
  57. package/resources/auctions/website-user-attributes/website-user-attributes.mjs.map +1 -0
  58. package/resources/auctions/website-user-attributes.d.ts +2 -0
  59. package/resources/auctions/website-user-attributes.d.ts.map +1 -0
  60. package/resources/auctions/website-user-attributes.js +19 -0
  61. package/resources/auctions/website-user-attributes.js.map +1 -0
  62. package/resources/auctions/website-user-attributes.mjs +3 -0
  63. package/resources/auctions/website-user-attributes.mjs.map +1 -0
  64. package/resources/auctions.d.ts +1 -133
  65. package/resources/auctions.d.ts.map +1 -1
  66. package/resources/auctions.js +15 -22
  67. package/resources/auctions.js.map +1 -1
  68. package/resources/auctions.mjs +1 -20
  69. package/resources/auctions.mjs.map +1 -1
  70. package/resources/auth.d.ts +66 -6
  71. package/resources/auth.d.ts.map +1 -1
  72. package/resources/auth.js +6 -0
  73. package/resources/auth.js.map +1 -1
  74. package/resources/auth.mjs +6 -0
  75. package/resources/auth.mjs.map +1 -1
  76. package/resources/index.d.ts +5 -4
  77. package/resources/index.d.ts.map +1 -1
  78. package/resources/index.js +5 -3
  79. package/resources/index.js.map +1 -1
  80. package/resources/index.mjs +4 -3
  81. package/resources/index.mjs.map +1 -1
  82. package/resources/loyalty/account-streaks.d.ts +96 -0
  83. package/resources/loyalty/account-streaks.d.ts.map +1 -0
  84. package/resources/loyalty/account-streaks.js +24 -0
  85. package/resources/loyalty/account-streaks.js.map +1 -0
  86. package/resources/loyalty/account-streaks.mjs +20 -0
  87. package/resources/loyalty/account-streaks.mjs.map +1 -0
  88. package/resources/loyalty/accounts.d.ts +60 -16
  89. package/resources/loyalty/accounts.d.ts.map +1 -1
  90. package/resources/loyalty/accounts.js +14 -0
  91. package/resources/loyalty/accounts.js.map +1 -1
  92. package/resources/loyalty/accounts.mjs +14 -0
  93. package/resources/loyalty/accounts.mjs.map +1 -1
  94. package/resources/loyalty/badges.d.ts +666 -135
  95. package/resources/loyalty/badges.d.ts.map +1 -1
  96. package/resources/loyalty/badges.js +19 -1
  97. package/resources/loyalty/badges.js.map +1 -1
  98. package/resources/loyalty/badges.mjs +19 -1
  99. package/resources/loyalty/badges.mjs.map +1 -1
  100. package/resources/loyalty/currencies.d.ts +19 -0
  101. package/resources/loyalty/currencies.d.ts.map +1 -1
  102. package/resources/loyalty/currencies.js +19 -0
  103. package/resources/loyalty/currencies.js.map +1 -1
  104. package/resources/loyalty/currencies.mjs +19 -0
  105. package/resources/loyalty/currencies.mjs.map +1 -1
  106. package/resources/loyalty/index.d.ts +3 -3
  107. package/resources/loyalty/index.d.ts.map +1 -1
  108. package/resources/loyalty/index.js +5 -5
  109. package/resources/loyalty/index.js.map +1 -1
  110. package/resources/loyalty/index.mjs +2 -2
  111. package/resources/loyalty/index.mjs.map +1 -1
  112. package/resources/loyalty/loyalty.d.ts +9 -9
  113. package/resources/loyalty/loyalty.d.ts.map +1 -1
  114. package/resources/loyalty/loyalty.js +6 -6
  115. package/resources/loyalty/loyalty.js.map +1 -1
  116. package/resources/loyalty/loyalty.mjs +6 -6
  117. package/resources/loyalty/loyalty.mjs.map +1 -1
  118. package/resources/loyalty/multipliers.d.ts +39 -2
  119. package/resources/loyalty/multipliers.d.ts.map +1 -1
  120. package/resources/loyalty/multipliers.js +23 -0
  121. package/resources/loyalty/multipliers.js.map +1 -1
  122. package/resources/loyalty/multipliers.mjs +23 -0
  123. package/resources/loyalty/multipliers.mjs.map +1 -1
  124. package/resources/loyalty/questions-responses.d.ts +55 -4
  125. package/resources/loyalty/questions-responses.d.ts.map +1 -1
  126. package/resources/loyalty/questions-responses.js +9 -0
  127. package/resources/loyalty/questions-responses.js.map +1 -1
  128. package/resources/loyalty/questions-responses.mjs +9 -0
  129. package/resources/loyalty/questions-responses.mjs.map +1 -1
  130. package/resources/loyalty/questions.d.ts +60 -6
  131. package/resources/loyalty/questions.d.ts.map +1 -1
  132. package/resources/loyalty/questions.js +39 -0
  133. package/resources/loyalty/questions.js.map +1 -1
  134. package/resources/loyalty/questions.mjs +39 -0
  135. package/resources/loyalty/questions.mjs.map +1 -1
  136. package/resources/loyalty/rule-edits.d.ts +2842 -8
  137. package/resources/loyalty/rule-edits.d.ts.map +1 -1
  138. package/resources/loyalty/rule-edits.js +14 -0
  139. package/resources/loyalty/rule-edits.js.map +1 -1
  140. package/resources/loyalty/rule-edits.mjs +14 -0
  141. package/resources/loyalty/rule-edits.mjs.map +1 -1
  142. package/resources/loyalty/rule-groups.d.ts +279 -56
  143. package/resources/loyalty/rule-groups.d.ts.map +1 -1
  144. package/resources/loyalty/rule-groups.js +18 -0
  145. package/resources/loyalty/rule-groups.js.map +1 -1
  146. package/resources/loyalty/rule-groups.mjs +18 -0
  147. package/resources/loyalty/rule-groups.mjs.map +1 -1
  148. package/resources/loyalty/rules.d.ts +2299 -365
  149. package/resources/loyalty/rules.d.ts.map +1 -1
  150. package/resources/loyalty/rules.js +40 -9
  151. package/resources/loyalty/rules.js.map +1 -1
  152. package/resources/loyalty/rules.mjs +40 -9
  153. package/resources/loyalty/rules.mjs.map +1 -1
  154. package/resources/loyalty/transactions/index.d.ts +4 -0
  155. package/resources/loyalty/transactions/index.d.ts.map +1 -0
  156. package/resources/loyalty/transactions/index.js +11 -0
  157. package/resources/loyalty/transactions/index.js.map +1 -0
  158. package/resources/loyalty/transactions/index.mjs +5 -0
  159. package/resources/loyalty/transactions/index.mjs.map +1 -0
  160. package/resources/loyalty/transactions/posts.d.ts +145 -0
  161. package/resources/loyalty/transactions/posts.d.ts.map +1 -0
  162. package/resources/loyalty/transactions/posts.js +32 -0
  163. package/resources/loyalty/transactions/posts.js.map +1 -0
  164. package/resources/loyalty/transactions/posts.mjs +28 -0
  165. package/resources/loyalty/transactions/posts.mjs.map +1 -0
  166. package/resources/loyalty/transactions/rule-statuses.d.ts +121 -0
  167. package/resources/loyalty/transactions/rule-statuses.d.ts.map +1 -0
  168. package/resources/loyalty/transactions/rule-statuses.js +30 -0
  169. package/resources/loyalty/transactions/rule-statuses.js.map +1 -0
  170. package/resources/loyalty/transactions/rule-statuses.mjs +26 -0
  171. package/resources/loyalty/transactions/rule-statuses.mjs.map +1 -0
  172. package/resources/loyalty/transactions/transactions.d.ts +564 -0
  173. package/resources/loyalty/transactions/transactions.d.ts.map +1 -0
  174. package/resources/loyalty/transactions/transactions.js +110 -0
  175. package/resources/loyalty/transactions/transactions.js.map +1 -0
  176. package/resources/loyalty/transactions/transactions.mjs +83 -0
  177. package/resources/loyalty/transactions/transactions.mjs.map +1 -0
  178. package/resources/loyalty/transactions.d.ts +1 -248
  179. package/resources/loyalty/transactions.d.ts.map +1 -1
  180. package/resources/loyalty/transactions.js +15 -18
  181. package/resources/loyalty/transactions.js.map +1 -1
  182. package/resources/loyalty/transactions.mjs +1 -16
  183. package/resources/loyalty/transactions.mjs.map +1 -1
  184. package/resources/minting/allowlist.d.ts +84 -0
  185. package/resources/minting/allowlist.d.ts.map +1 -0
  186. package/resources/minting/allowlist.js +42 -0
  187. package/resources/minting/allowlist.js.map +1 -0
  188. package/resources/minting/allowlist.mjs +38 -0
  189. package/resources/minting/allowlist.mjs.map +1 -0
  190. package/resources/minting/contracts.d.ts +165 -0
  191. package/resources/minting/contracts.d.ts.map +1 -0
  192. package/resources/minting/contracts.js +30 -0
  193. package/resources/minting/contracts.js.map +1 -0
  194. package/resources/minting/contracts.mjs +26 -0
  195. package/resources/minting/contracts.mjs.map +1 -0
  196. package/resources/minting/index.d.ts +5 -0
  197. package/resources/minting/index.d.ts.map +1 -0
  198. package/resources/minting/index.js +13 -0
  199. package/resources/minting/index.js.map +1 -0
  200. package/resources/minting/index.mjs +6 -0
  201. package/resources/minting/index.mjs.map +1 -0
  202. package/resources/minting/minting.d.ts +142 -0
  203. package/resources/minting/minting.d.ts.map +1 -0
  204. package/resources/minting/minting.js +79 -0
  205. package/resources/minting/minting.js.map +1 -0
  206. package/resources/minting/minting.mjs +52 -0
  207. package/resources/minting/minting.mjs.map +1 -0
  208. package/resources/minting/status.d.ts +44 -0
  209. package/resources/minting/status.d.ts.map +1 -0
  210. package/resources/minting/status.js +33 -0
  211. package/resources/minting/status.js.map +1 -0
  212. package/resources/minting/status.mjs +29 -0
  213. package/resources/minting/status.mjs.map +1 -0
  214. package/resources/minting.d.ts +1 -94
  215. package/resources/minting.d.ts.map +1 -1
  216. package/resources/minting.js +15 -11
  217. package/resources/minting.js.map +1 -1
  218. package/resources/minting.mjs +1 -9
  219. package/resources/minting.mjs.map +1 -1
  220. package/resources/referral/referral.d.ts +12 -3
  221. package/resources/referral/referral.d.ts.map +1 -1
  222. package/resources/referral/referral.js +11 -5
  223. package/resources/referral/referral.js.map +1 -1
  224. package/resources/referral/referral.mjs +11 -5
  225. package/resources/referral/referral.mjs.map +1 -1
  226. package/resources/referral/users.d.ts +30 -3
  227. package/resources/referral/users.d.ts.map +1 -1
  228. package/resources/referral/users.js +12 -4
  229. package/resources/referral/users.js.map +1 -1
  230. package/resources/referral/users.mjs +12 -4
  231. package/resources/referral/users.mjs.map +1 -1
  232. package/resources/token-claims.d.ts +160 -0
  233. package/resources/token-claims.d.ts.map +1 -0
  234. package/resources/token-claims.js +46 -0
  235. package/resources/token-claims.js.map +1 -0
  236. package/resources/token-claims.mjs +42 -0
  237. package/resources/token-claims.mjs.map +1 -0
  238. package/resources/users/index.d.ts +1 -1
  239. package/resources/users/index.d.ts.map +1 -1
  240. package/resources/users/index.js.map +1 -1
  241. package/resources/users/index.mjs.map +1 -1
  242. package/resources/users/metadatas.d.ts +36 -3
  243. package/resources/users/metadatas.d.ts.map +1 -1
  244. package/resources/users/metadatas.js.map +1 -1
  245. package/resources/users/metadatas.mjs.map +1 -1
  246. package/resources/users/users.d.ts +196 -35
  247. package/resources/users/users.d.ts.map +1 -1
  248. package/resources/users/users.js +58 -1
  249. package/resources/users/users.js.map +1 -1
  250. package/resources/users/users.mjs +58 -1
  251. package/resources/users/users.mjs.map +1 -1
  252. package/resources/websites/website-collections.d.ts +22 -1
  253. package/resources/websites/website-collections.d.ts.map +1 -1
  254. package/resources/websites/website-collections.js +21 -0
  255. package/resources/websites/website-collections.js.map +1 -1
  256. package/resources/websites/website-collections.mjs +21 -0
  257. package/resources/websites/website-collections.mjs.map +1 -1
  258. package/resources/websites/website-user-roles.d.ts +24 -1
  259. package/resources/websites/website-user-roles.d.ts.map +1 -1
  260. package/resources/websites/website-user-roles.js +23 -0
  261. package/resources/websites/website-user-roles.js.map +1 -1
  262. package/resources/websites/website-user-roles.mjs +23 -0
  263. package/resources/websites/website-user-roles.mjs.map +1 -1
  264. package/resources/websites/websites.d.ts +118 -0
  265. package/resources/websites/websites.d.ts.map +1 -1
  266. package/resources/websites/websites.js +7 -0
  267. package/resources/websites/websites.js.map +1 -1
  268. package/resources/websites/websites.mjs +7 -0
  269. package/resources/websites/websites.mjs.map +1 -1
  270. package/src/core.ts +45 -16
  271. package/src/index.ts +82 -4
  272. package/src/resource.ts +1 -1
  273. package/src/resources/assets.ts +18 -3
  274. package/src/resources/auctions/auctions.ts +561 -0
  275. package/src/resources/auctions/index.ts +19 -0
  276. package/src/resources/auctions/website-user-attributes/index.ts +18 -0
  277. package/src/resources/auctions/website-user-attributes/values.ts +170 -0
  278. package/src/resources/auctions/website-user-attributes/website-user-attributes.ts +212 -0
  279. package/src/resources/auctions/website-user-attributes.ts +3 -0
  280. package/src/resources/auctions.ts +1 -207
  281. package/src/resources/auth.ts +121 -6
  282. package/src/resources/index.ts +41 -3
  283. package/src/resources/loyalty/account-streaks.ts +128 -0
  284. package/src/resources/loyalty/accounts.ts +65 -18
  285. package/src/resources/loyalty/badges.ts +790 -146
  286. package/src/resources/loyalty/currencies.ts +19 -0
  287. package/src/resources/loyalty/index.ts +13 -2
  288. package/src/resources/loyalty/loyalty.ts +30 -12
  289. package/src/resources/loyalty/multipliers.ts +43 -4
  290. package/src/resources/loyalty/questions-responses.ts +64 -4
  291. package/src/resources/loyalty/questions.ts +64 -6
  292. package/src/resources/loyalty/rule-edits.ts +4118 -100
  293. package/src/resources/loyalty/rule-groups.ts +454 -64
  294. package/src/resources/loyalty/rules.ts +3499 -372
  295. package/src/resources/loyalty/transactions/index.ts +29 -0
  296. package/src/resources/loyalty/transactions/posts.ts +221 -0
  297. package/src/resources/loyalty/transactions/rule-statuses.ts +179 -0
  298. package/src/resources/loyalty/transactions/transactions.ts +914 -0
  299. package/src/resources/loyalty/transactions.ts +1 -440
  300. package/src/resources/minting/allowlist.ts +116 -0
  301. package/src/resources/minting/contracts.ts +408 -0
  302. package/src/resources/minting/index.ts +29 -0
  303. package/src/resources/minting/minting.ts +277 -0
  304. package/src/resources/minting/status.ts +70 -0
  305. package/src/resources/minting.ts +1 -157
  306. package/src/resources/referral/referral.ts +15 -11
  307. package/src/resources/referral/users.ts +45 -5
  308. package/src/resources/token-claims.ts +307 -0
  309. package/src/resources/users/index.ts +4 -0
  310. package/src/resources/users/metadatas.ts +61 -3
  311. package/src/resources/users/users.ts +264 -38
  312. package/src/resources/websites/website-collections.ts +41 -1
  313. package/src/resources/websites/website-user-roles.ts +26 -1
  314. package/src/resources/websites/websites.ts +142 -0
  315. package/src/version.ts +1 -1
  316. package/version.d.ts +1 -1
  317. package/version.d.ts.map +1 -1
  318. package/version.js +1 -1
  319. package/version.js.map +1 -1
  320. package/version.mjs +1 -1
  321. package/version.mjs.map +1 -1
  322. package/resources/loyalty/rule-chains.d.ts +0 -34
  323. package/resources/loyalty/rule-chains.d.ts.map +0 -1
  324. package/resources/loyalty/rule-chains.js +0 -15
  325. package/resources/loyalty/rule-chains.js.map +0 -1
  326. package/resources/loyalty/rule-chains.mjs +0 -11
  327. package/resources/loyalty/rule-chains.mjs.map +0 -1
  328. package/src/resources/loyalty/rule-chains.ts +0 -45
@@ -3,34 +3,92 @@ 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
54
+ *
55
+ * @example
56
+ * ```ts
57
+ * const rule = await client.loyalty.rules.delete(
58
+ * '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
59
+ * );
60
+ * ```
19
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, discord_role_grant
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
- * This will return the processing status of quests for a specific user
82
+ * This will return the processing status of quests for a specific user and also
83
+ * the progress of the loyalty rule
84
+ *
85
+ * @example
86
+ * ```ts
87
+ * const response = await client.loyalty.rules.getStatus();
88
+ * ```
32
89
  */
33
- getStatus(query: RuleGetStatusParams, options?: Core.RequestOptions): Core.APIPromise<RuleGetStatusResponse>;
90
+ getStatus(query?: RuleGetStatusParams, options?: Core.RequestOptions): Core.APIPromise<RuleGetStatusResponse>;
91
+ getStatus(options?: Core.RequestOptions): Core.APIPromise<RuleGetStatusResponse>;
34
92
  }
35
93
  export interface RuleCreateResponse {
36
94
  id: string;
@@ -53,7 +111,7 @@ export interface RuleCreateResponse {
53
111
  /**
54
112
  * Execution frequency of the loyalty rule
55
113
  */
56
- frequency: 'none' | 'once' | 'daily' | 'weekly' | 'monthly' | 'immediately';
114
+ frequency: 'none' | 'once' | 'hourly' | 'daily' | 'weekly' | 'monthly' | 'immediately';
57
115
  /**
58
116
  * Unique identifier for the loyalty currency
59
117
  */
@@ -77,7 +135,7 @@ export interface RuleCreateResponse {
77
135
  /**
78
136
  * Type of loyalty rule being created
79
137
  */
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';
138
+ 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_github' | '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' | 'stratus_function' | 'connected_tiktok' | 'tiktok_follow' | 'github_repo_star' | 'github_repo_fork' | 'github_repo_collaborator' | 'github_merge_PR' | 'discord_role_grant' | 'connected_reddit' | 'reddit_comment' | 'robinhood_token_hold' | 'connected_instagram' | 'instagram_post';
81
139
  /**
82
140
  * Unique identifier for the associated website
83
141
  */
@@ -86,6 +144,10 @@ export interface RuleCreateResponse {
86
144
  * URL of the background asset to be displayed
87
145
  */
88
146
  backgroundAssetUrl?: string;
147
+ /**
148
+ * The type of claim for the reward
149
+ */
150
+ claimType?: 'manual' | 'auto' | null;
89
151
  /**
90
152
  * Blockchain address of the associated collection
91
153
  */
@@ -94,6 +156,10 @@ export interface RuleCreateResponse {
94
156
  * List of associated collections
95
157
  */
96
158
  collections?: Array<RuleCreateResponse.Collection> | null;
159
+ /**
160
+ * The IDs of the contracts
161
+ */
162
+ contractIds?: Array<string> | null;
97
163
  /**
98
164
  * URL for fetching custom rewards
99
165
  */
@@ -106,6 +172,15 @@ export interface RuleCreateResponse {
106
172
  * Optional detailed description of the rule
107
173
  */
108
174
  description?: string;
175
+ duplicatedFromId?: string | null;
176
+ /**
177
+ * ID of the external integration
178
+ */
179
+ externalIntegrationId?: string | null;
180
+ /**
181
+ * Optional stratus function id for the rule
182
+ */
183
+ functionId?: string | null;
109
184
  /**
110
185
  * Whether to hide this rule in the user interface
111
186
  */
@@ -113,15 +188,33 @@ export interface RuleCreateResponse {
113
188
  /**
114
189
  * Interval between rule executions
115
190
  */
116
- interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | null;
191
+ interval?: 'hourly' | 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | 'unlimited' | null;
117
192
  /**
118
193
  * Whether this rule is mandatory
119
194
  */
120
195
  isRequired?: boolean;
196
+ /**
197
+ * Unique identifier for the loyalty badge
198
+ */
199
+ loyaltyBadgeId?: string | null;
121
200
  /**
122
201
  * Unique identifier for the loyalty rule group
123
202
  */
124
203
  loyaltyRuleGroupId?: 'no-section' | (string & {}) | null;
204
+ /**
205
+ * URL for uploading loyalty user allotment via CSV
206
+ */
207
+ loyaltyUserAllotmentCsvUrl?: string;
208
+ /**
209
+ * The interval for the max amount. Available for the smart contract and external
210
+ * rules.
211
+ */
212
+ maxAmountInterval?: 'daily' | 'weekly' | 'monthly' | 'lifetime' | null;
213
+ /**
214
+ * The maximum amount of points a user can earn per interval. Available for the
215
+ * smart contract and external rules.
216
+ */
217
+ maxAmountPerInterval?: number | null;
125
218
  /**
126
219
  * URL of the media to be displayed
127
220
  */
@@ -129,25 +222,51 @@ export interface RuleCreateResponse {
129
222
  /**
130
223
  * Blockchain network where the rule will apply
131
224
  */
132
- network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachainArtio' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp';
225
+ 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' | 'skaleEuropa' | 'skaleCalypso' | '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' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
133
226
  /**
134
227
  * OAuth credentials associated with the rule
135
228
  */
136
229
  oauthCredentialsId?: string | null;
230
+ /**
231
+ * The lifetime of the reward
232
+ */
233
+ rewardLifetime?: 'permanent' | 'dynamic' | null;
137
234
  /**
138
235
  * Type of reward issued by the rule
139
236
  */
140
- rewardType?: 'points' | 'multiplier';
237
+ rewardType?: 'points' | 'multiplier' | 'badge';
238
+ /**
239
+ * URL of the Shopify store
240
+ */
241
+ shopifyStoreUrl?: string | null;
141
242
  /**
142
- * Identifier for associated subscriptions
243
+ * Whether to show this rule before the start time
143
244
  */
144
- subscriptionIdentifier?: string | null;
245
+ showBeforeStart?: boolean;
246
+ /**
247
+ * Optional stratus subscription id for the rule
248
+ */
249
+ subscriptionId?: string | null;
145
250
  }
146
251
  export declare namespace RuleCreateResponse {
147
252
  /**
148
253
  * Additional metadata for the loyalty rule
149
254
  */
150
255
  interface Metadata {
256
+ /**
257
+ * Flag indicating if the rule allows multiple redemptions. Applies to Enter a Code
258
+ * only.
259
+ */
260
+ allowMultipleRedemptions?: boolean;
261
+ /**
262
+ * Array of loyalty rule IDs that count as check-in when completed. If ["any"] then
263
+ * any rule completions count as check-in.
264
+ */
265
+ autoCheckInRuleIds?: Array<(string & {}) | 'any'> | null;
266
+ /**
267
+ * Number of tokens per batch.
268
+ */
269
+ batchSize?: number | null;
151
270
  /**
152
271
  * Text displayed on the action button.
153
272
  */
@@ -167,7 +286,7 @@ export declare namespace RuleCreateResponse {
167
286
  /**
168
287
  * Text to check in the Twitter post, username, or bio.
169
288
  */
170
- checkText?: string | null;
289
+ checkText?: string | Array<string> | null;
171
290
  /**
172
291
  * Array of collections associated with the rule.
173
292
  */
@@ -175,7 +294,13 @@ export declare namespace RuleCreateResponse {
175
294
  /**
176
295
  * Conditions for completing the profile.
177
296
  */
178
- completeProfileConditions?: Record<string, boolean> | null;
297
+ completeProfileConditions?: {
298
+ [key: string]: boolean;
299
+ } | null;
300
+ /**
301
+ * Description of the external rule condition (only for external rules)
302
+ */
303
+ conditionDescription?: string;
179
304
  /**
180
305
  * Object containing details for the call-to-action.
181
306
  */
@@ -184,6 +309,10 @@ export declare namespace RuleCreateResponse {
184
309
  * API key for custom rewards integration.
185
310
  */
186
311
  customRewardsApiKey?: string;
312
+ /**
313
+ * Flag indicating if the rule should use direct RPC to get the balance of tokens.
314
+ */
315
+ directRpc?: boolean;
187
316
  /**
188
317
  * Array of Discord servers, channels, and roles to join.
189
318
  */
@@ -204,6 +333,10 @@ export declare namespace RuleCreateResponse {
204
333
  * Flag indicating whether the verified multiplier is enabled.
205
334
  */
206
335
  enableVerifiedMultiplier?: boolean;
336
+ /**
337
+ * Type of ERC20 token for the loyalty rule.
338
+ */
339
+ erc20Type?: 'erc20' | 'native';
207
340
  /**
208
341
  * Fill source of the order for the token sale
209
342
  */
@@ -212,6 +345,14 @@ export declare namespace RuleCreateResponse {
212
345
  * Percentage reward given to a user for their first referral.
213
346
  */
214
347
  firstReferralReward?: number | null;
348
+ /**
349
+ * Name of the GitHub branch to check for PR merge.
350
+ */
351
+ githubBranchName?: string | null;
352
+ /**
353
+ * URL of the GitHub repository to check for star.
354
+ */
355
+ githubRepoUrl?: string | null;
215
356
  /**
216
357
  * Flag indicating whether the fill source is included.
217
358
  */
@@ -220,10 +361,6 @@ export declare namespace RuleCreateResponse {
220
361
  * Indicates if the item has never been sold.
221
362
  */
222
363
  hasNeverSold?: boolean;
223
- /**
224
- * Flag indicating whether the order source is included.
225
- */
226
- hasOrderSource?: boolean;
227
364
  /**
228
365
  * Indicates if the full royalty has been paid for items.
229
366
  */
@@ -240,10 +377,18 @@ export declare namespace RuleCreateResponse {
240
377
  * URL of the image associated with the rule.
241
378
  */
242
379
  imageUrl?: string | null;
380
+ /**
381
+ * If enabled, the first transaction done on the platform will complete this rule
382
+ */
383
+ isCheckInOnEveryTxn?: boolean;
243
384
  /**
244
385
  * Indicates if the multiplier has been applied to rewards.
245
386
  */
246
387
  isMultiplierApplied?: boolean;
388
+ /**
389
+ * Flag indicating if the rule is restricted to new users.
390
+ */
391
+ isRestrictedToNewUsers?: boolean;
247
392
  /**
248
393
  * Flag indicating if rewards are applied retroactively.
249
394
  */
@@ -256,10 +401,18 @@ export declare namespace RuleCreateResponse {
256
401
  * Optional link associated with the metadata.
257
402
  */
258
403
  link?: string | null;
404
+ /**
405
+ * Liquidity pool details.
406
+ */
407
+ liquidity?: Metadata.Liquidity;
259
408
  /**
260
409
  * Maximum quantity constraint for token holding.
261
410
  */
262
411
  maxQty?: number | null;
412
+ /**
413
+ * Minimum follower count for the rule. Accepts both number and string values.
414
+ */
415
+ minimumFollowerCount?: number | null;
263
416
  /**
264
417
  * Minimum quantity constraint for token holding.
265
418
  */
@@ -289,17 +442,33 @@ export declare namespace RuleCreateResponse {
289
442
  */
290
443
  onlyRewardSingleTokenOwnership?: boolean | null;
291
444
  /**
292
- * Order source of the order for the token sale
445
+ * Pre-generated text template that will be used to prefill the post content.
293
446
  */
294
- orderSource?: string;
447
+ preGeneratedPostText?: string | null;
295
448
  /**
296
449
  * Promotional code associated with the rule.
297
450
  */
298
451
  promoCode?: string;
452
+ /**
453
+ * URL of the CSV file containing promo codes.
454
+ */
455
+ promoCodeCsvUrl?: string;
456
+ /**
457
+ * Numbers of the promotional code to be generated.
458
+ */
459
+ promoCodeLength?: number | null;
460
+ /**
461
+ * Type of the promotional code.
462
+ */
463
+ promoCodeType?: 'code' | 'csv' | 'generate';
299
464
  /**
300
465
  * Array defining ranges and corresponding rewards.
301
466
  */
302
467
  range?: Array<Metadata.Range>;
468
+ /**
469
+ * ID of the Reddit post.
470
+ */
471
+ redditPostId?: string | null;
303
472
  /**
304
473
  * Object defining referral requirements.
305
474
  */
@@ -308,10 +477,56 @@ export declare namespace RuleCreateResponse {
308
477
  * Lump sum reward given to a referrer.
309
478
  */
310
479
  referrerReward?: number | null;
480
+ /**
481
+ * Loyalty currency ID of the referrer reward.
482
+ */
483
+ referrerRewardLoyaltyCurrencyId?: string | null;
484
+ /**
485
+ * Flag indicating if the post link is required.
486
+ */
487
+ requirePostLink?: boolean | null;
488
+ /**
489
+ * Flag indicating if media metadata is required.
490
+ */
491
+ requirePostMediaLink?: boolean | null;
492
+ /**
493
+ * Flag indicating if the rule can also reward badges per range.
494
+ */
495
+ rewardBadgePerRange?: boolean;
496
+ /**
497
+ * Flag indicating if the reward is rewarded by batch.
498
+ */
499
+ rewardByBatch?: boolean | null;
500
+ /**
501
+ * Criteria to evaluate the reward.
502
+ */
503
+ rewardCriteria?: 'IMPRESSIONS_COUNT' | 'ELIGIBLE_POST' | null;
504
+ /**
505
+ * Flag indicating if the reward is rewarded per action.
506
+ */
507
+ rewardPerAction?: boolean | null;
311
508
  /**
312
509
  * Flag indicating if rewards are given per impression.
313
510
  */
314
511
  rewardPerImpression?: boolean | null;
512
+ /**
513
+ * Flag indicating if the rule should reward based on value of traded tokens
514
+ * instead of count.
515
+ */
516
+ rewardPerValue?: boolean;
517
+ /**
518
+ * Flag indicating if the rule should reward quality posts.
519
+ */
520
+ rewardQualityPosts?: boolean;
521
+ robinhoodSymbols?: Array<string> | null;
522
+ /**
523
+ * Wallet address of the user can only be used if userId is not provided
524
+ */
525
+ royaltyAddress?: string;
526
+ /**
527
+ * Royalty percentage of the item.
528
+ */
529
+ royaltyPercentage?: number;
315
530
  /**
316
531
  * Currency associated with sales.
317
532
  */
@@ -335,7 +550,7 @@ export declare namespace RuleCreateResponse {
335
550
  /**
336
551
  * Social media platform associated with the rule.
337
552
  */
338
- socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | null;
553
+ socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | 'Google' | 'GitHub' | 'Reddit' | null;
339
554
  /**
340
555
  * URL of the social platform's logo.
341
556
  */
@@ -344,10 +559,18 @@ export declare namespace RuleCreateResponse {
344
559
  * Name of the social platform.
345
560
  */
346
561
  socialPlatformName?: string | null;
562
+ /**
563
+ * ID of the Steam app.
564
+ */
565
+ steamAppId?: string | null;
347
566
  /**
348
567
  * Array of streak milestones and corresponding rewards.
349
568
  */
350
569
  streakArray?: Array<Metadata.StreakArray> | null;
570
+ /**
571
+ * Metadata for swap loyalty rules
572
+ */
573
+ swap?: Metadata.Swap;
351
574
  /**
352
575
  * ID of the Telegram channel.
353
576
  */
@@ -360,6 +583,11 @@ export declare namespace RuleCreateResponse {
360
583
  * Flag indicating if all contracts are tracked.
361
584
  */
362
585
  trackAllContracts?: boolean | null;
586
+ /**
587
+ * Flag indicating if the progress is tracked. If enabled, the rule can only be
588
+ * completed once the progress is 100%.
589
+ */
590
+ trackProgress?: boolean | null;
363
591
  /**
364
592
  * URL of the associated Twitter account.
365
593
  */
@@ -395,7 +623,15 @@ export declare namespace RuleCreateResponse {
395
623
  /**
396
624
  * Type of wallet associated with the rule.
397
625
  */
398
- walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | null;
626
+ walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | 'cosmos' | 'ultra' | 'agw' | 'flow_cadence' | 'substrate' | null;
627
+ /**
628
+ * ID of the Youtube channel.
629
+ */
630
+ youtubeChannelId?: string | null;
631
+ /**
632
+ * ID of the Youtube video.
633
+ */
634
+ youtubeVideoId?: string | null;
399
635
  }
400
636
  namespace Metadata {
401
637
  interface Collection {
@@ -410,7 +646,7 @@ export declare namespace RuleCreateResponse {
410
646
  /**
411
647
  * Blockchain network of the collection.
412
648
  */
413
- network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachainArtio' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp';
649
+ 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' | 'skaleEuropa' | 'skaleCalypso' | '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' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
414
650
  }
415
651
  /**
416
652
  * Object containing details for the call-to-action.
@@ -475,6 +711,49 @@ export declare namespace RuleCreateResponse {
475
711
  */
476
712
  id: string;
477
713
  }
714
+ /**
715
+ * Liquidity pool details.
716
+ */
717
+ interface Liquidity {
718
+ /**
719
+ * Calculation type of the liquidity pool.
720
+ */
721
+ calculationType?: 'fixed' | 'custom';
722
+ /**
723
+ * Custom function to calculate the the reward amount based on the liquidity
724
+ * provided per day. X is the reward amount, Y is the liquidity provided per day in
725
+ * USD.
726
+ */
727
+ customFunction?: string;
728
+ /**
729
+ * Liquidity provided per day in USD
730
+ */
731
+ liquidityPerDay?: number;
732
+ /**
733
+ * Blockchain network of the liquidity pool.
734
+ */
735
+ 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' | 'skaleEuropa' | 'skaleCalypso' | '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' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
736
+ /**
737
+ * Indicates if only in-range liquidity is rewarded.
738
+ */
739
+ onlyRewardInRangeLiquidity?: boolean;
740
+ /**
741
+ * Array of liquidity pools associated with the rule.
742
+ */
743
+ pools?: Array<Liquidity.Pool>;
744
+ /**
745
+ * Protocol of the liquidity pool.
746
+ */
747
+ protocol?: string;
748
+ }
749
+ namespace Liquidity {
750
+ interface Pool {
751
+ /**
752
+ * Unique identifier of the liquidity pool.
753
+ */
754
+ id: string;
755
+ }
756
+ }
478
757
  interface Range {
479
758
  /**
480
759
  * Reward amount for this range.
@@ -488,6 +767,14 @@ export declare namespace RuleCreateResponse {
488
767
  * Start value of the range.
489
768
  */
490
769
  startRange: number;
770
+ /**
771
+ * ID of the loyalty badge for this range.
772
+ */
773
+ loyaltyBadgeId?: string;
774
+ /**
775
+ * Amount of the loyalty multiplier for this range.
776
+ */
777
+ loyaltyMultiplierAmount?: number;
491
778
  }
492
779
  /**
493
780
  * Object defining referral requirements.
@@ -531,18 +818,14 @@ export declare namespace RuleCreateResponse {
531
818
  * Object containing details of the associated smart contract.
532
819
  */
533
820
  interface SmartContract {
534
- /**
535
- * ABI of the smart contract.
536
- */
537
- abi?: string | null;
538
821
  /**
539
822
  * Mapping of addresses for the smart contract.
540
823
  */
541
824
  addressMapping?: string | null;
542
825
  /**
543
- * Array of bonus details applied to the rule.
826
+ * Object containing details of the amount multiplier from the event.
544
827
  */
545
- bonus?: Array<SmartContract.Bonus> | null;
828
+ amountMultiplier?: SmartContract.AmountMultiplier | null;
546
829
  /**
547
830
  * ID of the smart contract.
548
831
  */
@@ -551,58 +834,28 @@ export declare namespace RuleCreateResponse {
551
834
  * Criteria to evaluate the smart contract event.
552
835
  */
553
836
  criteria?: 'everyEvent' | 'byParameter' | null;
554
- /**
555
- * Time range applied to the rule.
556
- */
557
- customRange?: SmartContract.CustomRange | null;
558
837
  /**
559
838
  * Event emitted by the smart contract.
560
839
  */
561
840
  event?: string | null;
562
- /**
563
- * Maximum value allowed for the parameter.
564
- */
565
- max?: number | null;
566
841
  /**
567
842
  * Array of parameters for the smart contract.
568
843
  */
569
844
  params?: Array<SmartContract.Param> | null;
570
845
  /**
571
- * Flag indicating if a bonus is applied.
846
+ * Type of the smart contract interaction.
572
847
  */
573
- withBonus?: boolean | null;
574
- /**
575
- * Flag indicating if a custom range is applied.
576
- */
577
- withCustomRange?: boolean | null;
578
- /**
579
- * Flag indicating if a maximum limit is applied.
580
- */
581
- withMax?: boolean | null;
848
+ type?: 'function' | 'event' | null;
582
849
  }
583
850
  namespace SmartContract {
584
- interface Bonus {
585
- /**
586
- * Amount of the bonus.
587
- */
588
- amount?: number | null;
589
- /**
590
- * Number of times the bonus is applied.
591
- */
592
- count?: number | null;
593
- }
594
851
  /**
595
- * Time range applied to the rule.
852
+ * Object containing details of the amount multiplier from the event.
596
853
  */
597
- interface CustomRange {
598
- /**
599
- * End time of the custom range.
600
- */
601
- endsAt?: string | null;
854
+ interface AmountMultiplier {
602
855
  /**
603
- * Start time of the custom range.
856
+ * Mapping of the value for the smart contract.
604
857
  */
605
- startsAt?: string | null;
858
+ valueMapping?: string | null;
606
859
  }
607
860
  interface Param {
608
861
  /**
@@ -639,6 +892,42 @@ export declare namespace RuleCreateResponse {
639
892
  */
640
893
  streakMilestone: number;
641
894
  }
895
+ /**
896
+ * Metadata for swap loyalty rules
897
+ */
898
+ interface Swap {
899
+ from?: Swap.From;
900
+ provider?: 'any' | 'relay' | 'lifi';
901
+ relayReferrerId?: string;
902
+ requireCrossChainSwap?: boolean;
903
+ to?: Swap.To;
904
+ }
905
+ namespace Swap {
906
+ interface From {
907
+ chain?: 'any' | number | string;
908
+ mode?: 'any' | 'specific';
909
+ tokens?: Array<From.Token>;
910
+ trackAmount?: boolean;
911
+ }
912
+ namespace From {
913
+ interface Token {
914
+ address: string;
915
+ chainId: string;
916
+ }
917
+ }
918
+ interface To {
919
+ chain?: 'any' | number | string;
920
+ mode?: 'any' | 'specific';
921
+ tokens?: Array<To.Token>;
922
+ trackAmount?: boolean;
923
+ }
924
+ namespace To {
925
+ interface Token {
926
+ address: string;
927
+ chainId: string;
928
+ }
929
+ }
930
+ }
642
931
  }
643
932
  interface Collection {
644
933
  /**
@@ -648,7 +937,11 @@ export declare namespace RuleCreateResponse {
648
937
  /**
649
938
  * Blockchain network for the collection
650
939
  */
651
- network: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachainArtio' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp';
940
+ 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' | 'skaleEuropa' | 'skaleCalypso' | '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' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
941
+ /**
942
+ * Symbol of the collection.
943
+ */
944
+ symbol?: string;
652
945
  }
653
946
  }
654
947
  export interface RuleUpdateResponse {
@@ -665,14 +958,22 @@ export interface RuleUpdateResponse {
665
958
  * Name of the loyalty rule
666
959
  */
667
960
  name: string;
961
+ /**
962
+ * The type of claim for the reward
963
+ */
964
+ claimType?: 'manual' | 'auto' | null;
668
965
  /**
669
966
  * Blockchain address of the associated collection
670
967
  */
671
- collectionAddress?: string;
968
+ collectionAddress?: string | null;
672
969
  /**
673
970
  * List of associated collections
674
971
  */
675
972
  collections?: Array<RuleUpdateResponse.Collection> | null;
973
+ /**
974
+ * The IDs of the contracts
975
+ */
976
+ contractIds?: Array<string> | null;
676
977
  /**
677
978
  * API URL for custom rewards integration
678
979
  */
@@ -693,10 +994,18 @@ export interface RuleUpdateResponse {
693
994
  * Effective start time of the rule
694
995
  */
695
996
  effectiveStartTime?: string | null;
997
+ /**
998
+ * ID of the external integration
999
+ */
1000
+ externalIntegrationId?: string | null;
696
1001
  /**
697
1002
  * Frequency of the rule execution
698
1003
  */
699
- frequency?: 'none' | 'once' | 'daily' | 'weekly' | 'monthly' | 'immediately';
1004
+ frequency?: 'none' | 'once' | 'hourly' | 'daily' | 'weekly' | 'monthly' | 'immediately';
1005
+ /**
1006
+ * Optional stratus function id for the rule
1007
+ */
1008
+ functionId?: string | null;
700
1009
  /**
701
1010
  * Whether to hide this rule in the user interface
702
1011
  */
@@ -704,7 +1013,7 @@ export interface RuleUpdateResponse {
704
1013
  /**
705
1014
  * Time interval for recurring rule execution
706
1015
  */
707
- interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | null;
1016
+ interval?: 'hourly' | 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | 'unlimited' | null;
708
1017
  /**
709
1018
  * Whether this rule is required for participation
710
1019
  */
@@ -713,6 +1022,16 @@ export interface RuleUpdateResponse {
713
1022
  * ID of the rule group section to associate with the rule
714
1023
  */
715
1024
  loyaltyRuleGroupId?: (string & {}) | 'no-section' | null;
1025
+ /**
1026
+ * The interval for the max amount. Available for the smart contract and external
1027
+ * rules.
1028
+ */
1029
+ maxAmountInterval?: 'daily' | 'weekly' | 'monthly' | 'lifetime' | null;
1030
+ /**
1031
+ * The maximum amount of points a user can earn per interval. Available for the
1032
+ * smart contract and external rules.
1033
+ */
1034
+ maxAmountPerInterval?: number | null;
716
1035
  /**
717
1036
  * URL of the media to be displayed
718
1037
  */
@@ -724,23 +1043,35 @@ export interface RuleUpdateResponse {
724
1043
  /**
725
1044
  * Blockchain network where the rule will apply
726
1045
  */
727
- network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachainArtio' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp';
1046
+ 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' | 'skaleEuropa' | 'skaleCalypso' | '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' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
728
1047
  /**
729
1048
  * ID for associated OAuth credentials
730
1049
  */
731
1050
  oauthCredentialsId?: string | null;
1051
+ /**
1052
+ * The lifetime of the reward
1053
+ */
1054
+ rewardLifetime?: 'permanent' | 'dynamic' | null;
732
1055
  /**
733
1056
  * Type of reward issued by this rule
734
1057
  */
735
- rewardType?: 'points' | 'multiplier';
1058
+ rewardType?: 'points' | 'multiplier' | 'badge';
1059
+ /**
1060
+ * URL of the Shopify store
1061
+ */
1062
+ shopifyStoreUrl?: string | null;
1063
+ /**
1064
+ * Whether to show this rule before the start time
1065
+ */
1066
+ showBeforeStart?: boolean;
736
1067
  /**
737
1068
  * Start time for the loyalty rule
738
1069
  */
739
1070
  startTime?: string | null;
740
1071
  /**
741
- * Optional subscription identifier for the rule
1072
+ * Optional stratus subscription id for the rule
742
1073
  */
743
- subscriptionIdentifier?: string | null;
1074
+ subscriptionId?: string | null;
744
1075
  }
745
1076
  export declare namespace RuleUpdateResponse {
746
1077
  interface Collection {
@@ -751,12 +1082,30 @@ export declare namespace RuleUpdateResponse {
751
1082
  /**
752
1083
  * Blockchain network for the collection
753
1084
  */
754
- network: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachainArtio' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp';
1085
+ 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' | 'skaleEuropa' | 'skaleCalypso' | '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' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
1086
+ /**
1087
+ * Symbol of the collection.
1088
+ */
1089
+ symbol?: string;
755
1090
  }
756
1091
  /**
757
1092
  * Additional metadata for the loyalty rule
758
1093
  */
759
1094
  interface Metadata {
1095
+ /**
1096
+ * Flag indicating if the rule allows multiple redemptions. Applies to Enter a Code
1097
+ * only.
1098
+ */
1099
+ allowMultipleRedemptions?: boolean;
1100
+ /**
1101
+ * Array of loyalty rule IDs that count as check-in when completed. If ["any"] then
1102
+ * any rule completions count as check-in.
1103
+ */
1104
+ autoCheckInRuleIds?: Array<(string & {}) | 'any'> | null;
1105
+ /**
1106
+ * Number of tokens per batch.
1107
+ */
1108
+ batchSize?: number | null;
760
1109
  /**
761
1110
  * Text displayed on the action button.
762
1111
  */
@@ -776,7 +1125,7 @@ export declare namespace RuleUpdateResponse {
776
1125
  /**
777
1126
  * Text to check in the Twitter post, username, or bio.
778
1127
  */
779
- checkText?: string | null;
1128
+ checkText?: string | Array<string> | null;
780
1129
  /**
781
1130
  * Array of collections associated with the rule.
782
1131
  */
@@ -784,7 +1133,13 @@ export declare namespace RuleUpdateResponse {
784
1133
  /**
785
1134
  * Conditions for completing the profile.
786
1135
  */
787
- completeProfileConditions?: Record<string, boolean> | null;
1136
+ completeProfileConditions?: {
1137
+ [key: string]: boolean;
1138
+ } | null;
1139
+ /**
1140
+ * Description of the external rule condition (only for external rules)
1141
+ */
1142
+ conditionDescription?: string;
788
1143
  /**
789
1144
  * Object containing details for the call-to-action.
790
1145
  */
@@ -793,6 +1148,10 @@ export declare namespace RuleUpdateResponse {
793
1148
  * API key for custom rewards integration.
794
1149
  */
795
1150
  customRewardsApiKey?: string;
1151
+ /**
1152
+ * Flag indicating if the rule should use direct RPC to get the balance of tokens.
1153
+ */
1154
+ directRpc?: boolean;
796
1155
  /**
797
1156
  * Array of Discord servers, channels, and roles to join.
798
1157
  */
@@ -813,6 +1172,10 @@ export declare namespace RuleUpdateResponse {
813
1172
  * Flag indicating whether the verified multiplier is enabled.
814
1173
  */
815
1174
  enableVerifiedMultiplier?: boolean;
1175
+ /**
1176
+ * Type of ERC20 token for the loyalty rule.
1177
+ */
1178
+ erc20Type?: 'erc20' | 'native';
816
1179
  /**
817
1180
  * Fill source of the order for the token sale
818
1181
  */
@@ -821,6 +1184,14 @@ export declare namespace RuleUpdateResponse {
821
1184
  * Percentage reward given to a user for their first referral.
822
1185
  */
823
1186
  firstReferralReward?: number | null;
1187
+ /**
1188
+ * Name of the GitHub branch to check for PR merge.
1189
+ */
1190
+ githubBranchName?: string | null;
1191
+ /**
1192
+ * URL of the GitHub repository to check for star.
1193
+ */
1194
+ githubRepoUrl?: string | null;
824
1195
  /**
825
1196
  * Flag indicating whether the fill source is included.
826
1197
  */
@@ -829,10 +1200,6 @@ export declare namespace RuleUpdateResponse {
829
1200
  * Indicates if the item has never been sold.
830
1201
  */
831
1202
  hasNeverSold?: boolean;
832
- /**
833
- * Flag indicating whether the order source is included.
834
- */
835
- hasOrderSource?: boolean;
836
1203
  /**
837
1204
  * Indicates if the full royalty has been paid for items.
838
1205
  */
@@ -849,10 +1216,18 @@ export declare namespace RuleUpdateResponse {
849
1216
  * URL of the image associated with the rule.
850
1217
  */
851
1218
  imageUrl?: string | null;
1219
+ /**
1220
+ * If enabled, the first transaction done on the platform will complete this rule
1221
+ */
1222
+ isCheckInOnEveryTxn?: boolean;
852
1223
  /**
853
1224
  * Indicates if the multiplier has been applied to rewards.
854
1225
  */
855
1226
  isMultiplierApplied?: boolean;
1227
+ /**
1228
+ * Flag indicating if the rule is restricted to new users.
1229
+ */
1230
+ isRestrictedToNewUsers?: boolean;
856
1231
  /**
857
1232
  * Flag indicating if rewards are applied retroactively.
858
1233
  */
@@ -865,10 +1240,18 @@ export declare namespace RuleUpdateResponse {
865
1240
  * Optional link associated with the metadata.
866
1241
  */
867
1242
  link?: string | null;
1243
+ /**
1244
+ * Liquidity pool details.
1245
+ */
1246
+ liquidity?: Metadata.Liquidity;
868
1247
  /**
869
1248
  * Maximum quantity constraint for token holding.
870
1249
  */
871
1250
  maxQty?: number | null;
1251
+ /**
1252
+ * Minimum follower count for the rule. Accepts both number and string values.
1253
+ */
1254
+ minimumFollowerCount?: number | null;
872
1255
  /**
873
1256
  * Minimum quantity constraint for token holding.
874
1257
  */
@@ -898,17 +1281,33 @@ export declare namespace RuleUpdateResponse {
898
1281
  */
899
1282
  onlyRewardSingleTokenOwnership?: boolean | null;
900
1283
  /**
901
- * Order source of the order for the token sale
1284
+ * Pre-generated text template that will be used to prefill the post content.
902
1285
  */
903
- orderSource?: string;
1286
+ preGeneratedPostText?: string | null;
904
1287
  /**
905
1288
  * Promotional code associated with the rule.
906
1289
  */
907
1290
  promoCode?: string;
1291
+ /**
1292
+ * URL of the CSV file containing promo codes.
1293
+ */
1294
+ promoCodeCsvUrl?: string;
1295
+ /**
1296
+ * Numbers of the promotional code to be generated.
1297
+ */
1298
+ promoCodeLength?: number | null;
1299
+ /**
1300
+ * Type of the promotional code.
1301
+ */
1302
+ promoCodeType?: 'code' | 'csv' | 'generate';
908
1303
  /**
909
1304
  * Array defining ranges and corresponding rewards.
910
1305
  */
911
1306
  range?: Array<Metadata.Range>;
1307
+ /**
1308
+ * ID of the Reddit post.
1309
+ */
1310
+ redditPostId?: string | null;
912
1311
  /**
913
1312
  * Object defining referral requirements.
914
1313
  */
@@ -917,10 +1316,56 @@ export declare namespace RuleUpdateResponse {
917
1316
  * Lump sum reward given to a referrer.
918
1317
  */
919
1318
  referrerReward?: number | null;
1319
+ /**
1320
+ * Loyalty currency ID of the referrer reward.
1321
+ */
1322
+ referrerRewardLoyaltyCurrencyId?: string | null;
1323
+ /**
1324
+ * Flag indicating if the post link is required.
1325
+ */
1326
+ requirePostLink?: boolean | null;
1327
+ /**
1328
+ * Flag indicating if media metadata is required.
1329
+ */
1330
+ requirePostMediaLink?: boolean | null;
1331
+ /**
1332
+ * Flag indicating if the rule can also reward badges per range.
1333
+ */
1334
+ rewardBadgePerRange?: boolean;
1335
+ /**
1336
+ * Flag indicating if the reward is rewarded by batch.
1337
+ */
1338
+ rewardByBatch?: boolean | null;
1339
+ /**
1340
+ * Criteria to evaluate the reward.
1341
+ */
1342
+ rewardCriteria?: 'IMPRESSIONS_COUNT' | 'ELIGIBLE_POST' | null;
1343
+ /**
1344
+ * Flag indicating if the reward is rewarded per action.
1345
+ */
1346
+ rewardPerAction?: boolean | null;
920
1347
  /**
921
1348
  * Flag indicating if rewards are given per impression.
922
1349
  */
923
1350
  rewardPerImpression?: boolean | null;
1351
+ /**
1352
+ * Flag indicating if the rule should reward based on value of traded tokens
1353
+ * instead of count.
1354
+ */
1355
+ rewardPerValue?: boolean;
1356
+ /**
1357
+ * Flag indicating if the rule should reward quality posts.
1358
+ */
1359
+ rewardQualityPosts?: boolean;
1360
+ robinhoodSymbols?: Array<string> | null;
1361
+ /**
1362
+ * Wallet address of the user can only be used if userId is not provided
1363
+ */
1364
+ royaltyAddress?: string;
1365
+ /**
1366
+ * Royalty percentage of the item.
1367
+ */
1368
+ royaltyPercentage?: number;
924
1369
  /**
925
1370
  * Currency associated with sales.
926
1371
  */
@@ -944,7 +1389,7 @@ export declare namespace RuleUpdateResponse {
944
1389
  /**
945
1390
  * Social media platform associated with the rule.
946
1391
  */
947
- socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | null;
1392
+ socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | 'Google' | 'GitHub' | 'Reddit' | null;
948
1393
  /**
949
1394
  * URL of the social platform's logo.
950
1395
  */
@@ -953,10 +1398,18 @@ export declare namespace RuleUpdateResponse {
953
1398
  * Name of the social platform.
954
1399
  */
955
1400
  socialPlatformName?: string | null;
1401
+ /**
1402
+ * ID of the Steam app.
1403
+ */
1404
+ steamAppId?: string | null;
956
1405
  /**
957
1406
  * Array of streak milestones and corresponding rewards.
958
1407
  */
959
1408
  streakArray?: Array<Metadata.StreakArray> | null;
1409
+ /**
1410
+ * Metadata for swap loyalty rules
1411
+ */
1412
+ swap?: Metadata.Swap;
960
1413
  /**
961
1414
  * ID of the Telegram channel.
962
1415
  */
@@ -969,6 +1422,11 @@ export declare namespace RuleUpdateResponse {
969
1422
  * Flag indicating if all contracts are tracked.
970
1423
  */
971
1424
  trackAllContracts?: boolean | null;
1425
+ /**
1426
+ * Flag indicating if the progress is tracked. If enabled, the rule can only be
1427
+ * completed once the progress is 100%.
1428
+ */
1429
+ trackProgress?: boolean | null;
972
1430
  /**
973
1431
  * URL of the associated Twitter account.
974
1432
  */
@@ -1004,7 +1462,15 @@ export declare namespace RuleUpdateResponse {
1004
1462
  /**
1005
1463
  * Type of wallet associated with the rule.
1006
1464
  */
1007
- walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | null;
1465
+ walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | 'cosmos' | 'ultra' | 'agw' | 'flow_cadence' | 'substrate' | null;
1466
+ /**
1467
+ * ID of the Youtube channel.
1468
+ */
1469
+ youtubeChannelId?: string | null;
1470
+ /**
1471
+ * ID of the Youtube video.
1472
+ */
1473
+ youtubeVideoId?: string | null;
1008
1474
  }
1009
1475
  namespace Metadata {
1010
1476
  interface Collection {
@@ -1019,7 +1485,7 @@ export declare namespace RuleUpdateResponse {
1019
1485
  /**
1020
1486
  * Blockchain network of the collection.
1021
1487
  */
1022
- network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachainArtio' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp';
1488
+ 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' | 'skaleEuropa' | 'skaleCalypso' | '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' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
1023
1489
  }
1024
1490
  /**
1025
1491
  * Object containing details for the call-to-action.
@@ -1084,42 +1550,93 @@ export declare namespace RuleUpdateResponse {
1084
1550
  */
1085
1551
  id: string;
1086
1552
  }
1087
- interface Range {
1088
- /**
1089
- * Reward amount for this range.
1090
- */
1091
- amount: number;
1553
+ /**
1554
+ * Liquidity pool details.
1555
+ */
1556
+ interface Liquidity {
1092
1557
  /**
1093
- * End value of the range.
1558
+ * Calculation type of the liquidity pool.
1094
1559
  */
1095
- endRange: number;
1560
+ calculationType?: 'fixed' | 'custom';
1096
1561
  /**
1097
- * Start value of the range.
1562
+ * Custom function to calculate the the reward amount based on the liquidity
1563
+ * provided per day. X is the reward amount, Y is the liquidity provided per day in
1564
+ * USD.
1098
1565
  */
1099
- startRange: number;
1100
- }
1101
- /**
1102
- * Object defining referral requirements.
1103
- */
1104
- interface ReferralRequirements {
1566
+ customFunction?: string;
1105
1567
  /**
1106
- * Flag indicating if achieving points is required.
1568
+ * Liquidity provided per day in USD
1107
1569
  */
1108
- achievePoints?: boolean | null;
1570
+ liquidityPerDay?: number;
1109
1571
  /**
1110
- * Flag indicating if completing the profile is required.
1572
+ * Blockchain network of the liquidity pool.
1111
1573
  */
1112
- completeProfile?: boolean | null;
1574
+ 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' | 'skaleEuropa' | 'skaleCalypso' | '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' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
1113
1575
  /**
1114
- * Flag indicating if connecting Discord is required.
1576
+ * Indicates if only in-range liquidity is rewarded.
1115
1577
  */
1116
- connectDiscord?: boolean | null;
1578
+ onlyRewardInRangeLiquidity?: boolean;
1117
1579
  /**
1118
- * Flag indicating if connecting email is required.
1580
+ * Array of liquidity pools associated with the rule.
1119
1581
  */
1120
- connectEmail?: boolean | null;
1582
+ pools?: Array<Liquidity.Pool>;
1121
1583
  /**
1122
- * Flag indicating if connecting Twitter is required.
1584
+ * Protocol of the liquidity pool.
1585
+ */
1586
+ protocol?: string;
1587
+ }
1588
+ namespace Liquidity {
1589
+ interface Pool {
1590
+ /**
1591
+ * Unique identifier of the liquidity pool.
1592
+ */
1593
+ id: string;
1594
+ }
1595
+ }
1596
+ interface Range {
1597
+ /**
1598
+ * Reward amount for this range.
1599
+ */
1600
+ amount: number;
1601
+ /**
1602
+ * End value of the range.
1603
+ */
1604
+ endRange: number;
1605
+ /**
1606
+ * Start value of the range.
1607
+ */
1608
+ startRange: number;
1609
+ /**
1610
+ * ID of the loyalty badge for this range.
1611
+ */
1612
+ loyaltyBadgeId?: string;
1613
+ /**
1614
+ * Amount of the loyalty multiplier for this range.
1615
+ */
1616
+ loyaltyMultiplierAmount?: number;
1617
+ }
1618
+ /**
1619
+ * Object defining referral requirements.
1620
+ */
1621
+ interface ReferralRequirements {
1622
+ /**
1623
+ * Flag indicating if achieving points is required.
1624
+ */
1625
+ achievePoints?: boolean | null;
1626
+ /**
1627
+ * Flag indicating if completing the profile is required.
1628
+ */
1629
+ completeProfile?: boolean | null;
1630
+ /**
1631
+ * Flag indicating if connecting Discord is required.
1632
+ */
1633
+ connectDiscord?: boolean | null;
1634
+ /**
1635
+ * Flag indicating if connecting email is required.
1636
+ */
1637
+ connectEmail?: boolean | null;
1638
+ /**
1639
+ * Flag indicating if connecting Twitter is required.
1123
1640
  */
1124
1641
  connectTwitter?: boolean | null;
1125
1642
  points?: ReferralRequirements.Points | null;
@@ -1140,18 +1657,14 @@ export declare namespace RuleUpdateResponse {
1140
1657
  * Object containing details of the associated smart contract.
1141
1658
  */
1142
1659
  interface SmartContract {
1143
- /**
1144
- * ABI of the smart contract.
1145
- */
1146
- abi?: string | null;
1147
1660
  /**
1148
1661
  * Mapping of addresses for the smart contract.
1149
1662
  */
1150
1663
  addressMapping?: string | null;
1151
1664
  /**
1152
- * Array of bonus details applied to the rule.
1665
+ * Object containing details of the amount multiplier from the event.
1153
1666
  */
1154
- bonus?: Array<SmartContract.Bonus> | null;
1667
+ amountMultiplier?: SmartContract.AmountMultiplier | null;
1155
1668
  /**
1156
1669
  * ID of the smart contract.
1157
1670
  */
@@ -1160,157 +1673,962 @@ export declare namespace RuleUpdateResponse {
1160
1673
  * Criteria to evaluate the smart contract event.
1161
1674
  */
1162
1675
  criteria?: 'everyEvent' | 'byParameter' | null;
1163
- /**
1164
- * Time range applied to the rule.
1165
- */
1166
- customRange?: SmartContract.CustomRange | null;
1167
1676
  /**
1168
1677
  * Event emitted by the smart contract.
1169
1678
  */
1170
1679
  event?: string | null;
1171
- /**
1172
- * Maximum value allowed for the parameter.
1173
- */
1174
- max?: number | null;
1175
1680
  /**
1176
1681
  * Array of parameters for the smart contract.
1177
1682
  */
1178
1683
  params?: Array<SmartContract.Param> | null;
1179
1684
  /**
1180
- * Flag indicating if a bonus is applied.
1685
+ * Type of the smart contract interaction.
1686
+ */
1687
+ type?: 'function' | 'event' | null;
1688
+ }
1689
+ namespace SmartContract {
1690
+ /**
1691
+ * Object containing details of the amount multiplier from the event.
1692
+ */
1693
+ interface AmountMultiplier {
1694
+ /**
1695
+ * Mapping of the value for the smart contract.
1696
+ */
1697
+ valueMapping?: string | null;
1698
+ }
1699
+ interface Param {
1700
+ /**
1701
+ * Condition to check for the parameter.
1702
+ */
1703
+ condition?: string | null;
1704
+ /**
1705
+ * Name of the smart contract parameter.
1706
+ */
1707
+ name?: string | null;
1708
+ /**
1709
+ * Value of the parameter.
1710
+ */
1711
+ value?: string | null;
1712
+ }
1713
+ }
1714
+ interface SnapshotProposal {
1715
+ /**
1716
+ * ID of the snapshot proposal.
1717
+ */
1718
+ id: string;
1719
+ /**
1720
+ * Space associated with the snapshot proposal.
1721
+ */
1722
+ space: string;
1723
+ }
1724
+ interface StreakArray {
1725
+ /**
1726
+ * Reward amount for achieving the streak milestone.
1727
+ */
1728
+ streakAmount: number;
1729
+ /**
1730
+ * Milestone required to achieve the streak.
1731
+ */
1732
+ streakMilestone: number;
1733
+ }
1734
+ /**
1735
+ * Metadata for swap loyalty rules
1736
+ */
1737
+ interface Swap {
1738
+ from?: Swap.From;
1739
+ provider?: 'any' | 'relay' | 'lifi';
1740
+ relayReferrerId?: string;
1741
+ requireCrossChainSwap?: boolean;
1742
+ to?: Swap.To;
1743
+ }
1744
+ namespace Swap {
1745
+ interface From {
1746
+ chain?: 'any' | number | string;
1747
+ mode?: 'any' | 'specific';
1748
+ tokens?: Array<From.Token>;
1749
+ trackAmount?: boolean;
1750
+ }
1751
+ namespace From {
1752
+ interface Token {
1753
+ address: string;
1754
+ chainId: string;
1755
+ }
1756
+ }
1757
+ interface To {
1758
+ chain?: 'any' | number | string;
1759
+ mode?: 'any' | 'specific';
1760
+ tokens?: Array<To.Token>;
1761
+ trackAmount?: boolean;
1762
+ }
1763
+ namespace To {
1764
+ interface Token {
1765
+ address: string;
1766
+ chainId: string;
1767
+ }
1768
+ }
1769
+ }
1770
+ }
1771
+ }
1772
+ export interface RuleListResponse {
1773
+ data: Array<RuleListResponse.Data>;
1774
+ hasNextPage: boolean;
1775
+ }
1776
+ export declare namespace RuleListResponse {
1777
+ interface Data {
1778
+ /**
1779
+ * Unique identifier for the loyalty rule
1780
+ */
1781
+ id: string;
1782
+ /**
1783
+ * Amount associated with the loyalty rule
1784
+ */
1785
+ amount: number | null;
1786
+ /**
1787
+ * Timestamp when the loyalty rule was created
1788
+ */
1789
+ createdAt: string;
1790
+ /**
1791
+ * Timestamp when the loyalty rule was deleted (if applicable)
1792
+ */
1793
+ deletedAt: string | null;
1794
+ /**
1795
+ * Description of the loyalty rule
1796
+ */
1797
+ description: string;
1798
+ /**
1799
+ * End time of the loyalty rule
1800
+ */
1801
+ endTime: string | null;
1802
+ /**
1803
+ * Frequency of the loyalty rule
1804
+ */
1805
+ frequency: string;
1806
+ /**
1807
+ * Chains attached to the loyalty rule
1808
+ */
1809
+ loyaltyRuleChain: Array<Data.LoyaltyRuleChain>;
1810
+ /**
1811
+ * Name of the loyalty rule
1812
+ */
1813
+ name: string;
1814
+ /**
1815
+ * Unique identifier for the organization
1816
+ */
1817
+ organizationId: string;
1818
+ /**
1819
+ * Type of the reward
1820
+ */
1821
+ rewardType: 'points' | 'multiplier' | 'badge';
1822
+ /**
1823
+ * Start time of the loyalty rule
1824
+ */
1825
+ startTime: string | null;
1826
+ /**
1827
+ * Type of the loyalty rule
1828
+ */
1829
+ type: string;
1830
+ /**
1831
+ * Timestamp when the loyalty rule was last updated
1832
+ */
1833
+ updatedAt: string;
1834
+ /**
1835
+ * Unique identifier for the website
1836
+ */
1837
+ websiteId: string;
1838
+ /**
1839
+ * Optional address of the collection
1840
+ */
1841
+ collectionAddress?: string;
1842
+ /**
1843
+ * URL of the media associated with the loyalty rule
1844
+ */
1845
+ mediaUrl?: string | null;
1846
+ /**
1847
+ * Optional metadata for the loyalty rule
1848
+ */
1849
+ metadata?: {
1850
+ [key: string]: Data.Metadata;
1851
+ };
1852
+ }
1853
+ namespace Data {
1854
+ interface LoyaltyRuleChain {
1855
+ /**
1856
+ * Unique identifier for the rule chain
1857
+ */
1858
+ id: string;
1859
+ loyaltyConditions: Array<LoyaltyRuleChain.LoyaltyCondition>;
1860
+ /**
1861
+ * Unique identifier for the loyalty rule
1862
+ */
1863
+ loyaltyRuleId: string;
1864
+ /**
1865
+ * Name of the rule chain
1866
+ */
1867
+ name: string;
1868
+ /**
1869
+ * Type of the operator. AND if all conditions must be met, OR if any condition can
1870
+ * be met.
1871
+ */
1872
+ operatorType?: 'AND' | 'OR';
1873
+ }
1874
+ namespace LoyaltyRuleChain {
1875
+ interface LoyaltyCondition {
1876
+ /**
1877
+ * Unique identifier for the condition
1878
+ */
1879
+ id: string;
1880
+ /**
1881
+ * Amount of the condition
1882
+ */
1883
+ amount: number | null;
1884
+ association: Array<LoyaltyCondition.Association>;
1885
+ /**
1886
+ * URL of the CSV file
1887
+ */
1888
+ csvUrl: string | null;
1889
+ /**
1890
+ * Description of the condition
1891
+ */
1892
+ description: string | null;
1893
+ /**
1894
+ * Number of times the condition must be met
1895
+ */
1896
+ repeatCount: number | null;
1897
+ /**
1898
+ * Number of times the condition must be met
1899
+ */
1900
+ requiredCount: number | null;
1901
+ /**
1902
+ * Type of the condition
1903
+ */
1904
+ type: 'rule' | 'rules' | 'points' | 'section' | 'level' | 'api' | 'badge' | 'badges' | 'csv';
1905
+ }
1906
+ namespace LoyaltyCondition {
1907
+ interface Association {
1908
+ /**
1909
+ * Unique identifier for the association
1910
+ */
1911
+ id: string;
1912
+ /**
1913
+ * Unique identifier for the loyalty badge
1914
+ */
1915
+ loyaltyBadgeId: string | null;
1916
+ loyaltyCurrency: Association.LoyaltyCurrency | null;
1917
+ /**
1918
+ * Unique identifier for the loyalty currency
1919
+ */
1920
+ loyaltyCurrencyId: string | null;
1921
+ loyaltyRule: Association.LoyaltyRule | null;
1922
+ /**
1923
+ * Unique identifier for the loyalty rule group
1924
+ */
1925
+ loyaltyRuleGroupId: string | null;
1926
+ /**
1927
+ * Unique identifier for the loyalty rule
1928
+ */
1929
+ loyaltyRuleId: string | null;
1930
+ }
1931
+ namespace Association {
1932
+ interface LoyaltyCurrency {
1933
+ /**
1934
+ * Name of the loyalty currency
1935
+ */
1936
+ name: string;
1937
+ }
1938
+ interface LoyaltyRule {
1939
+ /**
1940
+ * Name of the loyalty rule
1941
+ */
1942
+ name: string;
1943
+ }
1944
+ }
1945
+ }
1946
+ }
1947
+ interface Metadata {
1948
+ /**
1949
+ * Flag indicating if the rule allows multiple redemptions. Applies to Enter a Code
1950
+ * only.
1951
+ */
1952
+ allowMultipleRedemptions?: boolean;
1953
+ /**
1954
+ * Array of loyalty rule IDs that count as check-in when completed. If ["any"] then
1955
+ * any rule completions count as check-in.
1956
+ */
1957
+ autoCheckInRuleIds?: Array<(string & {}) | 'any'> | null;
1958
+ /**
1959
+ * Number of tokens per batch.
1181
1960
  */
1182
- withBonus?: boolean | null;
1961
+ batchSize?: number | null;
1962
+ /**
1963
+ * Text displayed on the action button.
1964
+ */
1965
+ buttonText?: string | null;
1966
+ /**
1967
+ * Flag indicating if commenting is required.
1968
+ */
1969
+ checkComment?: boolean | null;
1970
+ /**
1971
+ * Flag indicating if liking the post is required.
1972
+ */
1973
+ checkLike?: boolean | null;
1974
+ /**
1975
+ * Flag indicating if reposting is required.
1976
+ */
1977
+ checkRepost?: boolean | null;
1978
+ /**
1979
+ * Text to check in the Twitter post, username, or bio.
1980
+ */
1981
+ checkText?: string | Array<string> | null;
1982
+ /**
1983
+ * Array of collections associated with the rule.
1984
+ */
1985
+ collection?: Array<Metadata.Collection>;
1986
+ /**
1987
+ * Conditions for completing the profile.
1988
+ */
1989
+ completeProfileConditions?: {
1990
+ [key: string]: boolean;
1991
+ } | null;
1992
+ /**
1993
+ * Description of the external rule condition (only for external rules)
1994
+ */
1995
+ conditionDescription?: string;
1996
+ /**
1997
+ * Object containing details for the call-to-action.
1998
+ */
1999
+ cta?: Metadata.Cta | null;
2000
+ /**
2001
+ * API key for custom rewards integration.
2002
+ */
2003
+ customRewardsApiKey?: string;
2004
+ /**
2005
+ * Flag indicating if the rule should use direct RPC to get the balance of tokens.
2006
+ */
2007
+ directRpc?: boolean;
2008
+ /**
2009
+ * Array of Discord servers, channels, and roles to join.
2010
+ */
2011
+ discordServersToJoin?: Array<Metadata.DiscordServersToJoin> | null;
2012
+ /**
2013
+ * Array of drip quests required to complete the rule.
2014
+ */
2015
+ dripQuestsToComplete?: Array<Metadata.DripQuestsToComplete> | null;
2016
+ /**
2017
+ * Flag indicating whether joining Discord servers is required.
2018
+ */
2019
+ enableJoinDiscordServers?: boolean | null;
2020
+ /**
2021
+ * Flag indicating whether streaks are enabled.
2022
+ */
2023
+ enableStreaks?: boolean | null;
2024
+ /**
2025
+ * Flag indicating whether the verified multiplier is enabled.
2026
+ */
2027
+ enableVerifiedMultiplier?: boolean;
2028
+ /**
2029
+ * Type of ERC20 token for the loyalty rule.
2030
+ */
2031
+ erc20Type?: 'erc20' | 'native';
2032
+ /**
2033
+ * Fill source of the order for the token sale
2034
+ */
2035
+ fillSource?: string;
2036
+ /**
2037
+ * Percentage reward given to a user for their first referral.
2038
+ */
2039
+ firstReferralReward?: number | null;
2040
+ /**
2041
+ * Name of the GitHub branch to check for PR merge.
2042
+ */
2043
+ githubBranchName?: string | null;
2044
+ /**
2045
+ * URL of the GitHub repository to check for star.
2046
+ */
2047
+ githubRepoUrl?: string | null;
2048
+ /**
2049
+ * Flag indicating whether the fill source is included.
2050
+ */
2051
+ hasFillSource?: boolean;
2052
+ /**
2053
+ * Indicates if the item has never been sold.
2054
+ */
2055
+ hasNeverSold?: boolean;
2056
+ /**
2057
+ * Indicates if the full royalty has been paid for items.
2058
+ */
2059
+ hasPaidFullRoyalty?: boolean;
2060
+ /**
2061
+ * Flag indicating if the sale currency is included.
2062
+ */
2063
+ hasSaleCurrency?: boolean;
2064
+ /**
2065
+ * Indicates if the user has a verified Twitter account.
2066
+ */
2067
+ hasVerifiedTwitter?: boolean;
2068
+ /**
2069
+ * URL of the image associated with the rule.
2070
+ */
2071
+ imageUrl?: string | null;
2072
+ /**
2073
+ * If enabled, the first transaction done on the platform will complete this rule
2074
+ */
2075
+ isCheckInOnEveryTxn?: boolean;
2076
+ /**
2077
+ * Indicates if the multiplier has been applied to rewards.
2078
+ */
2079
+ isMultiplierApplied?: boolean;
2080
+ /**
2081
+ * Flag indicating if the rule is restricted to new users.
2082
+ */
2083
+ isRestrictedToNewUsers?: boolean;
2084
+ /**
2085
+ * Flag indicating if rewards are applied retroactively.
2086
+ */
2087
+ isRetroactive?: boolean | null;
2088
+ /**
2089
+ * Flag indicating if the token hold multiplier is applied.
2090
+ */
2091
+ isTokenHoldMultiplier?: boolean;
2092
+ /**
2093
+ * Optional link associated with the metadata.
2094
+ */
2095
+ link?: string | null;
2096
+ /**
2097
+ * Liquidity pool details.
2098
+ */
2099
+ liquidity?: Metadata.Liquidity;
2100
+ /**
2101
+ * Maximum quantity constraint for token holding.
2102
+ */
2103
+ maxQty?: number | null;
2104
+ /**
2105
+ * Minimum follower count for the rule. Accepts both number and string values.
2106
+ */
2107
+ minimumFollowerCount?: number | null;
2108
+ /**
2109
+ * Minimum quantity constraint for token holding.
2110
+ */
2111
+ minQty?: number | null;
2112
+ /**
2113
+ * Array of loyalty currency IDs used for multipliers.
2114
+ */
2115
+ multiplierLoyaltyCurrencyIds?: Array<string> | null;
2116
+ /**
2117
+ * Flag indicating whether to include only known users.
2118
+ */
2119
+ onlyKnownUsers?: boolean;
2120
+ /**
2121
+ * Flag indicating whether to include only native tokens.
2122
+ */
2123
+ onlyNative?: boolean;
2124
+ /**
2125
+ * Flag indicating whether to include only non-listed items.
2126
+ */
2127
+ onlyNonListed?: boolean;
2128
+ /**
2129
+ * Indicates if only existing users are rewarded.
2130
+ */
2131
+ onlyRewardExistingUser?: boolean;
2132
+ /**
2133
+ * give points for only one token ownership per contract
2134
+ */
2135
+ onlyRewardSingleTokenOwnership?: boolean | null;
2136
+ /**
2137
+ * Pre-generated text template that will be used to prefill the post content.
2138
+ */
2139
+ preGeneratedPostText?: string | null;
2140
+ /**
2141
+ * Promotional code associated with the rule.
2142
+ */
2143
+ promoCode?: string;
2144
+ /**
2145
+ * URL of the CSV file containing promo codes.
2146
+ */
2147
+ promoCodeCsvUrl?: string;
2148
+ /**
2149
+ * Numbers of the promotional code to be generated.
2150
+ */
2151
+ promoCodeLength?: number | null;
2152
+ /**
2153
+ * Type of the promotional code.
2154
+ */
2155
+ promoCodeType?: 'code' | 'csv' | 'generate';
2156
+ /**
2157
+ * Array defining ranges and corresponding rewards.
2158
+ */
2159
+ range?: Array<Metadata.Range>;
2160
+ /**
2161
+ * ID of the Reddit post.
2162
+ */
2163
+ redditPostId?: string | null;
2164
+ /**
2165
+ * Object defining referral requirements.
2166
+ */
2167
+ referralRequirements?: Metadata.ReferralRequirements | null;
2168
+ /**
2169
+ * Lump sum reward given to a referrer.
2170
+ */
2171
+ referrerReward?: number | null;
2172
+ /**
2173
+ * Loyalty currency ID of the referrer reward.
2174
+ */
2175
+ referrerRewardLoyaltyCurrencyId?: string | null;
2176
+ /**
2177
+ * Flag indicating if the post link is required.
2178
+ */
2179
+ requirePostLink?: boolean | null;
2180
+ /**
2181
+ * Flag indicating if media metadata is required.
2182
+ */
2183
+ requirePostMediaLink?: boolean | null;
2184
+ /**
2185
+ * Flag indicating if the rule can also reward badges per range.
2186
+ */
2187
+ rewardBadgePerRange?: boolean;
2188
+ /**
2189
+ * Flag indicating if the reward is rewarded by batch.
2190
+ */
2191
+ rewardByBatch?: boolean | null;
2192
+ /**
2193
+ * Criteria to evaluate the reward.
2194
+ */
2195
+ rewardCriteria?: 'IMPRESSIONS_COUNT' | 'ELIGIBLE_POST' | null;
2196
+ /**
2197
+ * Flag indicating if the reward is rewarded per action.
2198
+ */
2199
+ rewardPerAction?: boolean | null;
2200
+ /**
2201
+ * Flag indicating if rewards are given per impression.
2202
+ */
2203
+ rewardPerImpression?: boolean | null;
2204
+ /**
2205
+ * Flag indicating if the rule should reward based on value of traded tokens
2206
+ * instead of count.
2207
+ */
2208
+ rewardPerValue?: boolean;
2209
+ /**
2210
+ * Flag indicating if the rule should reward quality posts.
2211
+ */
2212
+ rewardQualityPosts?: boolean;
2213
+ robinhoodSymbols?: Array<string> | null;
2214
+ /**
2215
+ * Wallet address of the user can only be used if userId is not provided
2216
+ */
2217
+ royaltyAddress?: string;
2218
+ /**
2219
+ * Royalty percentage of the item.
2220
+ */
2221
+ royaltyPercentage?: number;
2222
+ /**
2223
+ * Currency associated with sales.
2224
+ */
2225
+ saleCurrency?: string;
2226
+ /**
2227
+ * Percentage reward given for a second-level referral.
2228
+ */
2229
+ secondReferralReward?: number | null;
2230
+ /**
2231
+ * Flag indicating if the multiplier is skipped.
2232
+ */
2233
+ skipMultiplier?: boolean | null;
2234
+ /**
2235
+ * Object containing details of the associated smart contract.
2236
+ */
2237
+ smartContract?: Metadata.SmartContract;
2238
+ /**
2239
+ * Array of snapshot proposals for the rule.
2240
+ */
2241
+ snapshotProposals?: Array<Metadata.SnapshotProposal> | null;
2242
+ /**
2243
+ * Social media platform associated with the rule.
2244
+ */
2245
+ socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | 'Google' | 'GitHub' | 'Reddit' | null;
2246
+ /**
2247
+ * URL of the social platform's logo.
2248
+ */
2249
+ socialPlatformLogo?: string | null;
2250
+ /**
2251
+ * Name of the social platform.
2252
+ */
2253
+ socialPlatformName?: string | null;
2254
+ /**
2255
+ * ID of the Steam app.
2256
+ */
2257
+ steamAppId?: string | null;
2258
+ /**
2259
+ * Array of streak milestones and corresponding rewards.
2260
+ */
2261
+ streakArray?: Array<Metadata.StreakArray> | null;
2262
+ /**
2263
+ * Metadata for swap loyalty rules
2264
+ */
2265
+ swap?: Metadata.Swap;
2266
+ /**
2267
+ * ID of the Telegram channel.
2268
+ */
2269
+ telegramChannelId?: string | null;
2270
+ /**
2271
+ * Time delay in seconds to verify actions.
2272
+ */
2273
+ timeDelayToVerifySeconds?: string | number | null;
2274
+ /**
2275
+ * Flag indicating if all contracts are tracked.
2276
+ */
2277
+ trackAllContracts?: boolean | null;
2278
+ /**
2279
+ * Flag indicating if the progress is tracked. If enabled, the rule can only be
2280
+ * completed once the progress is 100%.
2281
+ */
2282
+ trackProgress?: boolean | null;
2283
+ /**
2284
+ * URL of the associated Twitter account.
2285
+ */
2286
+ twitterAccountUrl?: string;
2287
+ /**
2288
+ * Hashtag associated with the Twitter post.
2289
+ */
2290
+ twitterHashtag?: string;
2291
+ /**
2292
+ * URL of the associated Twitter post.
2293
+ */
2294
+ twitterPostUrl?: string;
2295
+ /**
2296
+ * Unique identifier of the Twitter user.
2297
+ */
2298
+ twitterUserId?: string;
2299
+ /**
2300
+ * Twitter username of the user.
2301
+ */
2302
+ twitterUsername?: string;
2303
+ /**
2304
+ * Minimum length of the verification text.
2305
+ */
2306
+ verificationTextMinimumLength?: number | null;
2307
+ /**
2308
+ * Multiplier applied to rewards for verified users.
2309
+ */
2310
+ verifiedMultiplier?: number | null;
2311
+ /**
2312
+ * Placeholder text for verification input fields.
2313
+ */
2314
+ verifyPlaceHolderText?: string | null;
2315
+ /**
2316
+ * Type of wallet associated with the rule.
2317
+ */
2318
+ walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | 'cosmos' | 'ultra' | 'agw' | 'flow_cadence' | 'substrate' | null;
2319
+ /**
2320
+ * ID of the Youtube channel.
2321
+ */
2322
+ youtubeChannelId?: string | null;
2323
+ /**
2324
+ * ID of the Youtube video.
2325
+ */
2326
+ youtubeVideoId?: string | null;
2327
+ }
2328
+ namespace Metadata {
2329
+ interface Collection {
2330
+ /**
2331
+ * Blockchain address of the collection.
2332
+ */
2333
+ address?: string;
2334
+ /**
2335
+ * Multiplier applied to the rewards for this collection.
2336
+ */
2337
+ multiplier?: number;
2338
+ /**
2339
+ * Blockchain network of the collection.
2340
+ */
2341
+ 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' | 'skaleEuropa' | 'skaleCalypso' | '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' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
2342
+ }
2343
+ /**
2344
+ * Object containing details for the call-to-action.
2345
+ */
2346
+ interface Cta {
2347
+ /**
2348
+ * Link for the call-to-action.
2349
+ */
2350
+ href?: string | null;
2351
+ /**
2352
+ * Label for the call-to-action.
2353
+ */
2354
+ label?: string | null;
2355
+ }
2356
+ interface DiscordServersToJoin {
2357
+ /**
2358
+ * ID of the Discord server to join.
2359
+ */
2360
+ id?: string;
2361
+ /**
2362
+ * Array of Discord channels to join.
2363
+ */
2364
+ channels?: Array<DiscordServersToJoin.Channel>;
2365
+ /**
2366
+ * Array of roles to assign in the Discord server.
2367
+ */
2368
+ roles?: Array<DiscordServersToJoin.Role>;
2369
+ }
2370
+ namespace DiscordServersToJoin {
2371
+ interface Channel {
2372
+ /**
2373
+ * ID of the Discord channel.
2374
+ */
2375
+ id?: string;
2376
+ /**
2377
+ * Array of emojis used in the channel.
2378
+ */
2379
+ emojis?: Array<Channel.Emoji>;
2380
+ /**
2381
+ * Phrase of text to be present in the discord message
2382
+ */
2383
+ text?: string;
2384
+ }
2385
+ namespace Channel {
2386
+ interface Emoji {
2387
+ /**
2388
+ * ID of the emoji used in the channel.
2389
+ */
2390
+ id?: string;
2391
+ }
2392
+ }
2393
+ interface Role {
2394
+ /**
2395
+ * ID of the role in the Discord server.
2396
+ */
2397
+ id: string;
2398
+ }
2399
+ }
2400
+ interface DripQuestsToComplete {
2401
+ /**
2402
+ * ID of the drip quest to complete.
2403
+ */
2404
+ id: string;
2405
+ }
1183
2406
  /**
1184
- * Flag indicating if a custom range is applied.
2407
+ * Liquidity pool details.
1185
2408
  */
1186
- withCustomRange?: boolean | null;
2409
+ interface Liquidity {
2410
+ /**
2411
+ * Calculation type of the liquidity pool.
2412
+ */
2413
+ calculationType?: 'fixed' | 'custom';
2414
+ /**
2415
+ * Custom function to calculate the the reward amount based on the liquidity
2416
+ * provided per day. X is the reward amount, Y is the liquidity provided per day in
2417
+ * USD.
2418
+ */
2419
+ customFunction?: string;
2420
+ /**
2421
+ * Liquidity provided per day in USD
2422
+ */
2423
+ liquidityPerDay?: number;
2424
+ /**
2425
+ * Blockchain network of the liquidity pool.
2426
+ */
2427
+ 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' | 'skaleEuropa' | 'skaleCalypso' | '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' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
2428
+ /**
2429
+ * Indicates if only in-range liquidity is rewarded.
2430
+ */
2431
+ onlyRewardInRangeLiquidity?: boolean;
2432
+ /**
2433
+ * Array of liquidity pools associated with the rule.
2434
+ */
2435
+ pools?: Array<Liquidity.Pool>;
2436
+ /**
2437
+ * Protocol of the liquidity pool.
2438
+ */
2439
+ protocol?: string;
2440
+ }
2441
+ namespace Liquidity {
2442
+ interface Pool {
2443
+ /**
2444
+ * Unique identifier of the liquidity pool.
2445
+ */
2446
+ id: string;
2447
+ }
2448
+ }
2449
+ interface Range {
2450
+ /**
2451
+ * Reward amount for this range.
2452
+ */
2453
+ amount: number;
2454
+ /**
2455
+ * End value of the range.
2456
+ */
2457
+ endRange: number;
2458
+ /**
2459
+ * Start value of the range.
2460
+ */
2461
+ startRange: number;
2462
+ /**
2463
+ * ID of the loyalty badge for this range.
2464
+ */
2465
+ loyaltyBadgeId?: string;
2466
+ /**
2467
+ * Amount of the loyalty multiplier for this range.
2468
+ */
2469
+ loyaltyMultiplierAmount?: number;
2470
+ }
1187
2471
  /**
1188
- * Flag indicating if a maximum limit is applied.
2472
+ * Object defining referral requirements.
1189
2473
  */
1190
- withMax?: boolean | null;
1191
- }
1192
- namespace SmartContract {
1193
- interface Bonus {
2474
+ interface ReferralRequirements {
1194
2475
  /**
1195
- * Amount of the bonus.
2476
+ * Flag indicating if achieving points is required.
1196
2477
  */
1197
- amount?: number | null;
2478
+ achievePoints?: boolean | null;
2479
+ /**
2480
+ * Flag indicating if completing the profile is required.
2481
+ */
2482
+ completeProfile?: boolean | null;
2483
+ /**
2484
+ * Flag indicating if connecting Discord is required.
2485
+ */
2486
+ connectDiscord?: boolean | null;
2487
+ /**
2488
+ * Flag indicating if connecting email is required.
2489
+ */
2490
+ connectEmail?: boolean | null;
1198
2491
  /**
1199
- * Number of times the bonus is applied.
2492
+ * Flag indicating if connecting Twitter is required.
1200
2493
  */
1201
- count?: number | null;
2494
+ connectTwitter?: boolean | null;
2495
+ points?: ReferralRequirements.Points | null;
2496
+ }
2497
+ namespace ReferralRequirements {
2498
+ interface Points {
2499
+ /**
2500
+ * Points required for referral.
2501
+ */
2502
+ amount?: number | null;
2503
+ /**
2504
+ * ID of the loyalty currency for referral.
2505
+ */
2506
+ loyaltyCurrecyId?: string | null;
2507
+ }
1202
2508
  }
1203
2509
  /**
1204
- * Time range applied to the rule.
2510
+ * Object containing details of the associated smart contract.
1205
2511
  */
1206
- interface CustomRange {
2512
+ interface SmartContract {
2513
+ /**
2514
+ * Mapping of addresses for the smart contract.
2515
+ */
2516
+ addressMapping?: string | null;
2517
+ /**
2518
+ * Object containing details of the amount multiplier from the event.
2519
+ */
2520
+ amountMultiplier?: SmartContract.AmountMultiplier | null;
2521
+ /**
2522
+ * ID of the smart contract.
2523
+ */
2524
+ contractId?: string | null;
2525
+ /**
2526
+ * Criteria to evaluate the smart contract event.
2527
+ */
2528
+ criteria?: 'everyEvent' | 'byParameter' | null;
2529
+ /**
2530
+ * Event emitted by the smart contract.
2531
+ */
2532
+ event?: string | null;
1207
2533
  /**
1208
- * End time of the custom range.
2534
+ * Array of parameters for the smart contract.
1209
2535
  */
1210
- endsAt?: string | null;
2536
+ params?: Array<SmartContract.Param> | null;
1211
2537
  /**
1212
- * Start time of the custom range.
2538
+ * Type of the smart contract interaction.
1213
2539
  */
1214
- startsAt?: string | null;
2540
+ type?: 'function' | 'event' | null;
1215
2541
  }
1216
- interface Param {
2542
+ namespace SmartContract {
1217
2543
  /**
1218
- * Condition to check for the parameter.
2544
+ * Object containing details of the amount multiplier from the event.
1219
2545
  */
1220
- condition?: string | null;
2546
+ interface AmountMultiplier {
2547
+ /**
2548
+ * Mapping of the value for the smart contract.
2549
+ */
2550
+ valueMapping?: string | null;
2551
+ }
2552
+ interface Param {
2553
+ /**
2554
+ * Condition to check for the parameter.
2555
+ */
2556
+ condition?: string | null;
2557
+ /**
2558
+ * Name of the smart contract parameter.
2559
+ */
2560
+ name?: string | null;
2561
+ /**
2562
+ * Value of the parameter.
2563
+ */
2564
+ value?: string | null;
2565
+ }
2566
+ }
2567
+ interface SnapshotProposal {
1221
2568
  /**
1222
- * Name of the smart contract parameter.
2569
+ * ID of the snapshot proposal.
1223
2570
  */
1224
- name?: string | null;
2571
+ id: string;
1225
2572
  /**
1226
- * Value of the parameter.
2573
+ * Space associated with the snapshot proposal.
1227
2574
  */
1228
- value?: string | null;
2575
+ space: string;
2576
+ }
2577
+ interface StreakArray {
2578
+ /**
2579
+ * Reward amount for achieving the streak milestone.
2580
+ */
2581
+ streakAmount: number;
2582
+ /**
2583
+ * Milestone required to achieve the streak.
2584
+ */
2585
+ streakMilestone: number;
1229
2586
  }
1230
- }
1231
- interface SnapshotProposal {
1232
- /**
1233
- * ID of the snapshot proposal.
1234
- */
1235
- id: string;
1236
- /**
1237
- * Space associated with the snapshot proposal.
1238
- */
1239
- space: string;
1240
- }
1241
- interface StreakArray {
1242
- /**
1243
- * Reward amount for achieving the streak milestone.
1244
- */
1245
- streakAmount: number;
1246
2587
  /**
1247
- * Milestone required to achieve the streak.
2588
+ * Metadata for swap loyalty rules
1248
2589
  */
1249
- streakMilestone: number;
2590
+ interface Swap {
2591
+ from?: Swap.From;
2592
+ provider?: 'any' | 'relay' | 'lifi';
2593
+ relayReferrerId?: string;
2594
+ requireCrossChainSwap?: boolean;
2595
+ to?: Swap.To;
2596
+ }
2597
+ namespace Swap {
2598
+ interface From {
2599
+ chain?: 'any' | number | string;
2600
+ mode?: 'any' | 'specific';
2601
+ tokens?: Array<From.Token>;
2602
+ trackAmount?: boolean;
2603
+ }
2604
+ namespace From {
2605
+ interface Token {
2606
+ address: string;
2607
+ chainId: string;
2608
+ }
2609
+ }
2610
+ interface To {
2611
+ chain?: 'any' | number | string;
2612
+ mode?: 'any' | 'specific';
2613
+ tokens?: Array<To.Token>;
2614
+ trackAmount?: boolean;
2615
+ }
2616
+ namespace To {
2617
+ interface Token {
2618
+ address: string;
2619
+ chainId: string;
2620
+ }
2621
+ }
2622
+ }
1250
2623
  }
1251
2624
  }
1252
2625
  }
1253
- export interface RuleListResponse {
1254
- data: Array<RuleListResponse.Data>;
1255
- hasNextPage: boolean;
1256
- }
1257
- export declare namespace RuleListResponse {
1258
- /**
1259
- * Schema for a loyalty rule
1260
- */
1261
- interface Data {
1262
- /**
1263
- * Unique identifier for the loyalty rule
1264
- */
1265
- id: string;
1266
- /**
1267
- * Amount associated with the loyalty rule
1268
- */
1269
- amount: number;
1270
- /**
1271
- * Timestamp when the loyalty rule was created
1272
- */
1273
- createdAt: string;
1274
- /**
1275
- * Timestamp when the loyalty rule was deleted (if applicable)
1276
- */
1277
- deletedAt: string | null;
1278
- /**
1279
- * Frequency of the loyalty rule
1280
- */
1281
- frequency: string;
1282
- /**
1283
- * Unique identifier for the organization
1284
- */
1285
- organizationId: string;
1286
- /**
1287
- * Type of the loyalty rule
1288
- */
1289
- type: string;
1290
- /**
1291
- * Timestamp when the loyalty rule was last updated
1292
- */
1293
- updatedAt: string;
1294
- /**
1295
- * Unique identifier for the website
1296
- */
1297
- websiteId: string;
1298
- /**
1299
- * Optional address of the collection
1300
- */
1301
- collectionAddress?: string;
1302
- /**
1303
- * Optional metadata for the loyalty rule
1304
- */
1305
- metadata?: Record<string, unknown>;
1306
- }
1307
- }
1308
2626
  export interface RuleDeleteResponse {
1309
2627
  id: string;
1310
2628
  deletedAt: string;
1311
2629
  }
1312
2630
  export interface RuleCompleteResponse {
1313
- message: string;
2631
+ message: 'Completion request added to queue' | 'Link click being verified, come back later to check the status';
1314
2632
  }
1315
2633
  export interface RuleGetStatusResponse {
1316
2634
  data: Array<RuleGetStatusResponse.Data>;
@@ -1318,9 +2636,110 @@ export interface RuleGetStatusResponse {
1318
2636
  export declare namespace RuleGetStatusResponse {
1319
2637
  interface Data {
1320
2638
  loyaltyRuleId: string;
1321
- status: 'pending' | 'processing' | 'completed' | 'failed';
1322
2639
  userId: string;
2640
+ /**
2641
+ * The ID of the loyalty rule status for the Progress object
2642
+ */
2643
+ id?: string;
2644
+ createdAt?: string;
2645
+ fulfilledAt?: string | null;
2646
+ /**
2647
+ * Categorized examples of messages that may be returned for a loyalty rule's
2648
+ * processing result.
2649
+ *
2650
+ * User Onboarding
2651
+ *
2652
+ * - Check In: "Streak successful"
2653
+ * - Complete Profile Details: "Profile not complete"
2654
+ *
2655
+ * Connect Accounts
2656
+ *
2657
+ * - Connect TikTok: "TikTok not connected"
2658
+ * - Connect Discord: "Discord not connected", "Discord request timeout"
2659
+ * - Connect X: "Twitter not connected", "Twitter not connected or content url is
2660
+ * required"
2661
+ * - Connect Email: "Email address not connected"
2662
+ * - Connect Telegram: "Telegram not connected", "user has not setup telegram (no
2663
+ * telegramUsername), please setup username in telegram and reconnect.",
2664
+ * "Telegram request rate-limited"
2665
+ * - Connect Steam: "Steam not connected"
2666
+ * - Connect Youtube: "Youtube not connected"
2667
+ *
2668
+ * Social Quests
2669
+ *
2670
+ * - Join Telegram Group: "Telegram Channel not joined", "Telegram Channel joined
2671
+ * successfully"
2672
+ * - Post on TikTok: "TikTok post not verified"
2673
+ * - Comment on an X Post: "Quest Completed: You have commented on the tweet",
2674
+ * "Quest Not Completed: Comment not found for the specified tweet"
2675
+ * - Repost an X Post: "Quest Completed: You have retweeted the tweet", "Quest Not
2676
+ * Completed: Retweet not found for the specified tweet", "Quest Completed: You
2677
+ * have retweeted and commented on the tweet", "Quest Not Completed: You have not
2678
+ * retweeted or commented on the tweet"
2679
+ * - Follow an X Account: "Missing required parameters: twitterUserId,
2680
+ * targetUsername", "Quest Completed: You are a follower of
2681
+ * @${targetUsername}", "Quest Not Completed: Please follow @${targetUsername}
2682
+ * and try again in few minutes"
2683
+ * - React to an X Post: "Missing required parameters: texts, twitterUserId,
2684
+ * userTweetId", "No text provided", "Quest Completed: You have posted {tweetId}
2685
+ * a tweet with the text {text}", "Quest Not Completed: Your all previous {COUNT}
2686
+ * posts are already claimed. Please post a new tweet and try again in a few
2687
+ * minutes.", "Tweet is already claimed", "Tweet does not belong to the user",
2688
+ * "Text not found in tweet", "Tweet is before the quest start time", "Tweet does
2689
+ * not have media", "Text found in tweet"
2690
+ * - Add Text to X Bio: "Missing required parameters: texts, twitterUserId", "User
2691
+ * not found", "Text found in bio", "Text not found in bio"
2692
+ * - Add Text to X Username: "Missing required parameters: texts, twitterUserId",
2693
+ * "User not found", "Text found in username", "Text not found in username"
2694
+ * - Comment on an X Post with Text: "Missing required parameters: texts,
2695
+ * twitterUserId", "Comment is already claimed", "Text found in comment", "Text
2696
+ * not found in comment", "Tweet not found or could not be retrieved"
2697
+ * - Comment on a YouTube Video: "Youtube comment added", "Youtube comment not
2698
+ * added"
2699
+ * - Subscribe to a YouTube Channel: "Youtube channel subscribed", "Quest failed,
2700
+ * please make sure you have made your subscriptions public in youtube"
2701
+ * - Get X post impressions: "You've already claimed the reward for this impression
2702
+ * range."
2703
+ * - Add an Item to Steam Wishlist: "Steam Wishlist item added", "Steam Wishlist
2704
+ * item not added"
2705
+ *
2706
+ * Complex Onchain Logic
2707
+ *
2708
+ * - Token Swap: "Swap rewards calculated successfully", "Swap rule failed"
2709
+ *
2710
+ * Other
2711
+ *
2712
+ * - Answer a Quiz: "Quiz question not configured", "No question response found",
2713
+ * "Incorrect answer", "Correct answer"
2714
+ * - Answer a Poll: "Poll question not configured", "Poll response recorded"
2715
+ * - Spend in Shopify Store: "Shopify not connected"
2716
+ * - Points Airdrop: "Seems like you're not eligible for this points airdrop."
2717
+ *
2718
+ * General
2719
+ *
2720
+ * - "Quest already completed"
2721
+ * - "Quest already completed using the same social account (${socialAccountName}),
2722
+ * with the different user."
2723
+ * - "You've already claimed the reward for this quest."
2724
+ * - "Quest not achieved, please try again."
2725
+ * - "Rule is not setup"
2726
+ * - "Request aborted due to timeout"
2727
+ * - "Google account not connected"
2728
+ * - "Claim failed: Multiplier is already active"
2729
+ */
1323
2730
  message?: string;
2731
+ organizationId?: string;
2732
+ /**
2733
+ * The progress of the loyalty rule from 0 to 100
2734
+ */
2735
+ progress?: number;
2736
+ /**
2737
+ * Status of the queued job, this is only returned if the job is queued and being
2738
+ * processed, this wil be retained for 10 minutes after the job is completed
2739
+ */
2740
+ status?: 'pending' | 'processing' | 'completed' | 'failed';
2741
+ updatedAt?: string;
2742
+ websiteId?: string;
1324
2743
  }
1325
2744
  }
1326
2745
  export interface RuleCreateParams {
@@ -1343,7 +2762,7 @@ export interface RuleCreateParams {
1343
2762
  /**
1344
2763
  * Execution frequency of the loyalty rule
1345
2764
  */
1346
- frequency: 'none' | 'once' | 'daily' | 'weekly' | 'monthly' | 'immediately';
2765
+ frequency: 'none' | 'once' | 'hourly' | 'daily' | 'weekly' | 'monthly' | 'immediately';
1347
2766
  /**
1348
2767
  * Unique identifier for the loyalty currency
1349
2768
  */
@@ -1367,7 +2786,7 @@ export interface RuleCreateParams {
1367
2786
  /**
1368
2787
  * Type of loyalty rule being created
1369
2788
  */
1370
- 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';
2789
+ 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_github' | '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' | 'stratus_function' | 'connected_tiktok' | 'tiktok_follow' | 'github_repo_star' | 'github_repo_fork' | 'github_repo_collaborator' | 'github_merge_PR' | 'discord_role_grant' | 'connected_reddit' | 'reddit_comment' | 'robinhood_token_hold' | 'connected_instagram' | 'instagram_post';
1371
2790
  /**
1372
2791
  * Unique identifier for the associated website
1373
2792
  */
@@ -1376,6 +2795,10 @@ export interface RuleCreateParams {
1376
2795
  * URL of the background asset to be displayed
1377
2796
  */
1378
2797
  backgroundAssetUrl?: string;
2798
+ /**
2799
+ * The type of claim for the reward
2800
+ */
2801
+ claimType?: 'manual' | 'auto' | null;
1379
2802
  /**
1380
2803
  * Blockchain address of the associated collection
1381
2804
  */
@@ -1384,6 +2807,10 @@ export interface RuleCreateParams {
1384
2807
  * List of associated collections
1385
2808
  */
1386
2809
  collections?: Array<RuleCreateParams.Collection> | null;
2810
+ /**
2811
+ * The IDs of the contracts
2812
+ */
2813
+ contractIds?: Array<string> | null;
1387
2814
  /**
1388
2815
  * URL for fetching custom rewards
1389
2816
  */
@@ -1396,6 +2823,15 @@ export interface RuleCreateParams {
1396
2823
  * Optional detailed description of the rule
1397
2824
  */
1398
2825
  description?: string;
2826
+ duplicatedFromId?: string | null;
2827
+ /**
2828
+ * ID of the external integration
2829
+ */
2830
+ externalIntegrationId?: string | null;
2831
+ /**
2832
+ * Optional stratus function id for the rule
2833
+ */
2834
+ functionId?: string | null;
1399
2835
  /**
1400
2836
  * Whether to hide this rule in the user interface
1401
2837
  */
@@ -1403,15 +2839,33 @@ export interface RuleCreateParams {
1403
2839
  /**
1404
2840
  * Interval between rule executions
1405
2841
  */
1406
- interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | null;
2842
+ interval?: 'hourly' | 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | 'unlimited' | null;
1407
2843
  /**
1408
2844
  * Whether this rule is mandatory
1409
2845
  */
1410
2846
  isRequired?: boolean;
2847
+ /**
2848
+ * Unique identifier for the loyalty badge
2849
+ */
2850
+ loyaltyBadgeId?: string | null;
1411
2851
  /**
1412
2852
  * Unique identifier for the loyalty rule group
1413
2853
  */
1414
2854
  loyaltyRuleGroupId?: 'no-section' | (string & {}) | null;
2855
+ /**
2856
+ * URL for uploading loyalty user allotment via CSV
2857
+ */
2858
+ loyaltyUserAllotmentCsvUrl?: string;
2859
+ /**
2860
+ * The interval for the max amount. Available for the smart contract and external
2861
+ * rules.
2862
+ */
2863
+ maxAmountInterval?: 'daily' | 'weekly' | 'monthly' | 'lifetime' | null;
2864
+ /**
2865
+ * The maximum amount of points a user can earn per interval. Available for the
2866
+ * smart contract and external rules.
2867
+ */
2868
+ maxAmountPerInterval?: number | null;
1415
2869
  /**
1416
2870
  * URL of the media to be displayed
1417
2871
  */
@@ -1419,25 +2873,51 @@ export interface RuleCreateParams {
1419
2873
  /**
1420
2874
  * Blockchain network where the rule will apply
1421
2875
  */
1422
- network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachainArtio' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp';
2876
+ 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' | 'skaleEuropa' | 'skaleCalypso' | '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' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
1423
2877
  /**
1424
2878
  * OAuth credentials associated with the rule
1425
2879
  */
1426
2880
  oauthCredentialsId?: string | null;
2881
+ /**
2882
+ * The lifetime of the reward
2883
+ */
2884
+ rewardLifetime?: 'permanent' | 'dynamic' | null;
1427
2885
  /**
1428
2886
  * Type of reward issued by the rule
1429
2887
  */
1430
- rewardType?: 'points' | 'multiplier';
2888
+ rewardType?: 'points' | 'multiplier' | 'badge';
2889
+ /**
2890
+ * URL of the Shopify store
2891
+ */
2892
+ shopifyStoreUrl?: string | null;
2893
+ /**
2894
+ * Whether to show this rule before the start time
2895
+ */
2896
+ showBeforeStart?: boolean;
1431
2897
  /**
1432
- * Identifier for associated subscriptions
2898
+ * Optional stratus subscription id for the rule
1433
2899
  */
1434
- subscriptionIdentifier?: string | null;
2900
+ subscriptionId?: string | null;
1435
2901
  }
1436
2902
  export declare namespace RuleCreateParams {
1437
2903
  /**
1438
2904
  * Additional metadata for the loyalty rule
1439
2905
  */
1440
2906
  interface Metadata {
2907
+ /**
2908
+ * Flag indicating if the rule allows multiple redemptions. Applies to Enter a Code
2909
+ * only.
2910
+ */
2911
+ allowMultipleRedemptions?: boolean;
2912
+ /**
2913
+ * Array of loyalty rule IDs that count as check-in when completed. If ["any"] then
2914
+ * any rule completions count as check-in.
2915
+ */
2916
+ autoCheckInRuleIds?: Array<(string & {}) | 'any'> | null;
2917
+ /**
2918
+ * Number of tokens per batch.
2919
+ */
2920
+ batchSize?: number | null;
1441
2921
  /**
1442
2922
  * Text displayed on the action button.
1443
2923
  */
@@ -1457,7 +2937,7 @@ export declare namespace RuleCreateParams {
1457
2937
  /**
1458
2938
  * Text to check in the Twitter post, username, or bio.
1459
2939
  */
1460
- checkText?: string | null;
2940
+ checkText?: string | Array<string> | null;
1461
2941
  /**
1462
2942
  * Array of collections associated with the rule.
1463
2943
  */
@@ -1465,7 +2945,13 @@ export declare namespace RuleCreateParams {
1465
2945
  /**
1466
2946
  * Conditions for completing the profile.
1467
2947
  */
1468
- completeProfileConditions?: Record<string, boolean> | null;
2948
+ completeProfileConditions?: {
2949
+ [key: string]: boolean;
2950
+ } | null;
2951
+ /**
2952
+ * Description of the external rule condition (only for external rules)
2953
+ */
2954
+ conditionDescription?: string;
1469
2955
  /**
1470
2956
  * Object containing details for the call-to-action.
1471
2957
  */
@@ -1474,6 +2960,10 @@ export declare namespace RuleCreateParams {
1474
2960
  * API key for custom rewards integration.
1475
2961
  */
1476
2962
  customRewardsApiKey?: string;
2963
+ /**
2964
+ * Flag indicating if the rule should use direct RPC to get the balance of tokens.
2965
+ */
2966
+ directRpc?: boolean;
1477
2967
  /**
1478
2968
  * Array of Discord servers, channels, and roles to join.
1479
2969
  */
@@ -1494,6 +2984,10 @@ export declare namespace RuleCreateParams {
1494
2984
  * Flag indicating whether the verified multiplier is enabled.
1495
2985
  */
1496
2986
  enableVerifiedMultiplier?: boolean;
2987
+ /**
2988
+ * Type of ERC20 token for the loyalty rule.
2989
+ */
2990
+ erc20Type?: 'erc20' | 'native';
1497
2991
  /**
1498
2992
  * Fill source of the order for the token sale
1499
2993
  */
@@ -1502,6 +2996,14 @@ export declare namespace RuleCreateParams {
1502
2996
  * Percentage reward given to a user for their first referral.
1503
2997
  */
1504
2998
  firstReferralReward?: number | null;
2999
+ /**
3000
+ * Name of the GitHub branch to check for PR merge.
3001
+ */
3002
+ githubBranchName?: string | null;
3003
+ /**
3004
+ * URL of the GitHub repository to check for star.
3005
+ */
3006
+ githubRepoUrl?: string | null;
1505
3007
  /**
1506
3008
  * Flag indicating whether the fill source is included.
1507
3009
  */
@@ -1510,10 +3012,6 @@ export declare namespace RuleCreateParams {
1510
3012
  * Indicates if the item has never been sold.
1511
3013
  */
1512
3014
  hasNeverSold?: boolean;
1513
- /**
1514
- * Flag indicating whether the order source is included.
1515
- */
1516
- hasOrderSource?: boolean;
1517
3015
  /**
1518
3016
  * Indicates if the full royalty has been paid for items.
1519
3017
  */
@@ -1530,10 +3028,18 @@ export declare namespace RuleCreateParams {
1530
3028
  * URL of the image associated with the rule.
1531
3029
  */
1532
3030
  imageUrl?: string | null;
3031
+ /**
3032
+ * If enabled, the first transaction done on the platform will complete this rule
3033
+ */
3034
+ isCheckInOnEveryTxn?: boolean;
1533
3035
  /**
1534
3036
  * Indicates if the multiplier has been applied to rewards.
1535
3037
  */
1536
3038
  isMultiplierApplied?: boolean;
3039
+ /**
3040
+ * Flag indicating if the rule is restricted to new users.
3041
+ */
3042
+ isRestrictedToNewUsers?: boolean;
1537
3043
  /**
1538
3044
  * Flag indicating if rewards are applied retroactively.
1539
3045
  */
@@ -1546,10 +3052,18 @@ export declare namespace RuleCreateParams {
1546
3052
  * Optional link associated with the metadata.
1547
3053
  */
1548
3054
  link?: string | null;
3055
+ /**
3056
+ * Liquidity pool details.
3057
+ */
3058
+ liquidity?: Metadata.Liquidity;
1549
3059
  /**
1550
3060
  * Maximum quantity constraint for token holding.
1551
3061
  */
1552
3062
  maxQty?: number | null;
3063
+ /**
3064
+ * Minimum follower count for the rule. Accepts both number and string values.
3065
+ */
3066
+ minimumFollowerCount?: number | null;
1553
3067
  /**
1554
3068
  * Minimum quantity constraint for token holding.
1555
3069
  */
@@ -1569,39 +3083,101 @@ export declare namespace RuleCreateParams {
1569
3083
  /**
1570
3084
  * Flag indicating whether to include only non-listed items.
1571
3085
  */
1572
- onlyNonListed?: boolean;
3086
+ onlyNonListed?: boolean;
3087
+ /**
3088
+ * Indicates if only existing users are rewarded.
3089
+ */
3090
+ onlyRewardExistingUser?: boolean;
3091
+ /**
3092
+ * give points for only one token ownership per contract
3093
+ */
3094
+ onlyRewardSingleTokenOwnership?: boolean | null;
3095
+ /**
3096
+ * Pre-generated text template that will be used to prefill the post content.
3097
+ */
3098
+ preGeneratedPostText?: string | null;
3099
+ /**
3100
+ * Promotional code associated with the rule.
3101
+ */
3102
+ promoCode?: string;
3103
+ /**
3104
+ * URL of the CSV file containing promo codes.
3105
+ */
3106
+ promoCodeCsvUrl?: string;
3107
+ /**
3108
+ * Numbers of the promotional code to be generated.
3109
+ */
3110
+ promoCodeLength?: number | null;
3111
+ /**
3112
+ * Type of the promotional code.
3113
+ */
3114
+ promoCodeType?: 'code' | 'csv' | 'generate';
3115
+ /**
3116
+ * Array defining ranges and corresponding rewards.
3117
+ */
3118
+ range?: Array<Metadata.Range>;
3119
+ /**
3120
+ * ID of the Reddit post.
3121
+ */
3122
+ redditPostId?: string | null;
3123
+ /**
3124
+ * Object defining referral requirements.
3125
+ */
3126
+ referralRequirements?: Metadata.ReferralRequirements | null;
3127
+ /**
3128
+ * Lump sum reward given to a referrer.
3129
+ */
3130
+ referrerReward?: number | null;
3131
+ /**
3132
+ * Loyalty currency ID of the referrer reward.
3133
+ */
3134
+ referrerRewardLoyaltyCurrencyId?: string | null;
3135
+ /**
3136
+ * Flag indicating if the post link is required.
3137
+ */
3138
+ requirePostLink?: boolean | null;
3139
+ /**
3140
+ * Flag indicating if media metadata is required.
3141
+ */
3142
+ requirePostMediaLink?: boolean | null;
3143
+ /**
3144
+ * Flag indicating if the rule can also reward badges per range.
3145
+ */
3146
+ rewardBadgePerRange?: boolean;
1573
3147
  /**
1574
- * Indicates if only existing users are rewarded.
3148
+ * Flag indicating if the reward is rewarded by batch.
1575
3149
  */
1576
- onlyRewardExistingUser?: boolean;
3150
+ rewardByBatch?: boolean | null;
1577
3151
  /**
1578
- * give points for only one token ownership per contract
3152
+ * Criteria to evaluate the reward.
1579
3153
  */
1580
- onlyRewardSingleTokenOwnership?: boolean | null;
3154
+ rewardCriteria?: 'IMPRESSIONS_COUNT' | 'ELIGIBLE_POST' | null;
1581
3155
  /**
1582
- * Order source of the order for the token sale
3156
+ * Flag indicating if the reward is rewarded per action.
1583
3157
  */
1584
- orderSource?: string;
3158
+ rewardPerAction?: boolean | null;
1585
3159
  /**
1586
- * Promotional code associated with the rule.
3160
+ * Flag indicating if rewards are given per impression.
1587
3161
  */
1588
- promoCode?: string;
3162
+ rewardPerImpression?: boolean | null;
1589
3163
  /**
1590
- * Array defining ranges and corresponding rewards.
3164
+ * Flag indicating if the rule should reward based on value of traded tokens
3165
+ * instead of count.
1591
3166
  */
1592
- range?: Array<Metadata.Range>;
3167
+ rewardPerValue?: boolean;
1593
3168
  /**
1594
- * Object defining referral requirements.
3169
+ * Flag indicating if the rule should reward quality posts.
1595
3170
  */
1596
- referralRequirements?: Metadata.ReferralRequirements | null;
3171
+ rewardQualityPosts?: boolean;
3172
+ robinhoodSymbols?: Array<string> | null;
1597
3173
  /**
1598
- * Lump sum reward given to a referrer.
3174
+ * Wallet address of the user can only be used if userId is not provided
1599
3175
  */
1600
- referrerReward?: number | null;
3176
+ royaltyAddress?: string;
1601
3177
  /**
1602
- * Flag indicating if rewards are given per impression.
3178
+ * Royalty percentage of the item.
1603
3179
  */
1604
- rewardPerImpression?: boolean | null;
3180
+ royaltyPercentage?: number;
1605
3181
  /**
1606
3182
  * Currency associated with sales.
1607
3183
  */
@@ -1625,7 +3201,7 @@ export declare namespace RuleCreateParams {
1625
3201
  /**
1626
3202
  * Social media platform associated with the rule.
1627
3203
  */
1628
- socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | null;
3204
+ socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | 'Google' | 'GitHub' | 'Reddit' | null;
1629
3205
  /**
1630
3206
  * URL of the social platform's logo.
1631
3207
  */
@@ -1634,10 +3210,18 @@ export declare namespace RuleCreateParams {
1634
3210
  * Name of the social platform.
1635
3211
  */
1636
3212
  socialPlatformName?: string | null;
3213
+ /**
3214
+ * ID of the Steam app.
3215
+ */
3216
+ steamAppId?: string | null;
1637
3217
  /**
1638
3218
  * Array of streak milestones and corresponding rewards.
1639
3219
  */
1640
3220
  streakArray?: Array<Metadata.StreakArray> | null;
3221
+ /**
3222
+ * Metadata for swap loyalty rules
3223
+ */
3224
+ swap?: Metadata.Swap;
1641
3225
  /**
1642
3226
  * ID of the Telegram channel.
1643
3227
  */
@@ -1650,6 +3234,11 @@ export declare namespace RuleCreateParams {
1650
3234
  * Flag indicating if all contracts are tracked.
1651
3235
  */
1652
3236
  trackAllContracts?: boolean | null;
3237
+ /**
3238
+ * Flag indicating if the progress is tracked. If enabled, the rule can only be
3239
+ * completed once the progress is 100%.
3240
+ */
3241
+ trackProgress?: boolean | null;
1653
3242
  /**
1654
3243
  * URL of the associated Twitter account.
1655
3244
  */
@@ -1685,7 +3274,15 @@ export declare namespace RuleCreateParams {
1685
3274
  /**
1686
3275
  * Type of wallet associated with the rule.
1687
3276
  */
1688
- walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | null;
3277
+ walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | 'cosmos' | 'ultra' | 'agw' | 'flow_cadence' | 'substrate' | null;
3278
+ /**
3279
+ * ID of the Youtube channel.
3280
+ */
3281
+ youtubeChannelId?: string | null;
3282
+ /**
3283
+ * ID of the Youtube video.
3284
+ */
3285
+ youtubeVideoId?: string | null;
1689
3286
  }
1690
3287
  namespace Metadata {
1691
3288
  interface Collection {
@@ -1700,7 +3297,7 @@ export declare namespace RuleCreateParams {
1700
3297
  /**
1701
3298
  * Blockchain network of the collection.
1702
3299
  */
1703
- network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachainArtio' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp';
3300
+ 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' | 'skaleEuropa' | 'skaleCalypso' | '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' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
1704
3301
  }
1705
3302
  /**
1706
3303
  * Object containing details for the call-to-action.
@@ -1765,6 +3362,49 @@ export declare namespace RuleCreateParams {
1765
3362
  */
1766
3363
  id: string;
1767
3364
  }
3365
+ /**
3366
+ * Liquidity pool details.
3367
+ */
3368
+ interface Liquidity {
3369
+ /**
3370
+ * Calculation type of the liquidity pool.
3371
+ */
3372
+ calculationType?: 'fixed' | 'custom';
3373
+ /**
3374
+ * Custom function to calculate the the reward amount based on the liquidity
3375
+ * provided per day. X is the reward amount, Y is the liquidity provided per day in
3376
+ * USD.
3377
+ */
3378
+ customFunction?: string;
3379
+ /**
3380
+ * Liquidity provided per day in USD
3381
+ */
3382
+ liquidityPerDay?: number;
3383
+ /**
3384
+ * Blockchain network of the liquidity pool.
3385
+ */
3386
+ 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' | 'skaleEuropa' | 'skaleCalypso' | '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' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
3387
+ /**
3388
+ * Indicates if only in-range liquidity is rewarded.
3389
+ */
3390
+ onlyRewardInRangeLiquidity?: boolean;
3391
+ /**
3392
+ * Array of liquidity pools associated with the rule.
3393
+ */
3394
+ pools?: Array<Liquidity.Pool>;
3395
+ /**
3396
+ * Protocol of the liquidity pool.
3397
+ */
3398
+ protocol?: string;
3399
+ }
3400
+ namespace Liquidity {
3401
+ interface Pool {
3402
+ /**
3403
+ * Unique identifier of the liquidity pool.
3404
+ */
3405
+ id: string;
3406
+ }
3407
+ }
1768
3408
  interface Range {
1769
3409
  /**
1770
3410
  * Reward amount for this range.
@@ -1778,6 +3418,14 @@ export declare namespace RuleCreateParams {
1778
3418
  * Start value of the range.
1779
3419
  */
1780
3420
  startRange: number;
3421
+ /**
3422
+ * ID of the loyalty badge for this range.
3423
+ */
3424
+ loyaltyBadgeId?: string;
3425
+ /**
3426
+ * Amount of the loyalty multiplier for this range.
3427
+ */
3428
+ loyaltyMultiplierAmount?: number;
1781
3429
  }
1782
3430
  /**
1783
3431
  * Object defining referral requirements.
@@ -1821,18 +3469,14 @@ export declare namespace RuleCreateParams {
1821
3469
  * Object containing details of the associated smart contract.
1822
3470
  */
1823
3471
  interface SmartContract {
1824
- /**
1825
- * ABI of the smart contract.
1826
- */
1827
- abi?: string | null;
1828
3472
  /**
1829
3473
  * Mapping of addresses for the smart contract.
1830
3474
  */
1831
3475
  addressMapping?: string | null;
1832
3476
  /**
1833
- * Array of bonus details applied to the rule.
3477
+ * Object containing details of the amount multiplier from the event.
1834
3478
  */
1835
- bonus?: Array<SmartContract.Bonus> | null;
3479
+ amountMultiplier?: SmartContract.AmountMultiplier | null;
1836
3480
  /**
1837
3481
  * ID of the smart contract.
1838
3482
  */
@@ -1841,58 +3485,28 @@ export declare namespace RuleCreateParams {
1841
3485
  * Criteria to evaluate the smart contract event.
1842
3486
  */
1843
3487
  criteria?: 'everyEvent' | 'byParameter' | null;
1844
- /**
1845
- * Time range applied to the rule.
1846
- */
1847
- customRange?: SmartContract.CustomRange | null;
1848
3488
  /**
1849
3489
  * Event emitted by the smart contract.
1850
3490
  */
1851
3491
  event?: string | null;
1852
- /**
1853
- * Maximum value allowed for the parameter.
1854
- */
1855
- max?: number | null;
1856
3492
  /**
1857
3493
  * Array of parameters for the smart contract.
1858
3494
  */
1859
3495
  params?: Array<SmartContract.Param> | null;
1860
3496
  /**
1861
- * Flag indicating if a bonus is applied.
1862
- */
1863
- withBonus?: boolean | null;
1864
- /**
1865
- * Flag indicating if a custom range is applied.
1866
- */
1867
- withCustomRange?: boolean | null;
1868
- /**
1869
- * Flag indicating if a maximum limit is applied.
3497
+ * Type of the smart contract interaction.
1870
3498
  */
1871
- withMax?: boolean | null;
3499
+ type?: 'function' | 'event' | null;
1872
3500
  }
1873
3501
  namespace SmartContract {
1874
- interface Bonus {
1875
- /**
1876
- * Amount of the bonus.
1877
- */
1878
- amount?: number | null;
1879
- /**
1880
- * Number of times the bonus is applied.
1881
- */
1882
- count?: number | null;
1883
- }
1884
3502
  /**
1885
- * Time range applied to the rule.
3503
+ * Object containing details of the amount multiplier from the event.
1886
3504
  */
1887
- interface CustomRange {
1888
- /**
1889
- * End time of the custom range.
1890
- */
1891
- endsAt?: string | null;
3505
+ interface AmountMultiplier {
1892
3506
  /**
1893
- * Start time of the custom range.
3507
+ * Mapping of the value for the smart contract.
1894
3508
  */
1895
- startsAt?: string | null;
3509
+ valueMapping?: string | null;
1896
3510
  }
1897
3511
  interface Param {
1898
3512
  /**
@@ -1929,6 +3543,42 @@ export declare namespace RuleCreateParams {
1929
3543
  */
1930
3544
  streakMilestone: number;
1931
3545
  }
3546
+ /**
3547
+ * Metadata for swap loyalty rules
3548
+ */
3549
+ interface Swap {
3550
+ from?: Swap.From;
3551
+ provider?: 'any' | 'relay' | 'lifi';
3552
+ relayReferrerId?: string;
3553
+ requireCrossChainSwap?: boolean;
3554
+ to?: Swap.To;
3555
+ }
3556
+ namespace Swap {
3557
+ interface From {
3558
+ chain?: 'any' | number | string;
3559
+ mode?: 'any' | 'specific';
3560
+ tokens?: Array<From.Token>;
3561
+ trackAmount?: boolean;
3562
+ }
3563
+ namespace From {
3564
+ interface Token {
3565
+ address: string;
3566
+ chainId: string;
3567
+ }
3568
+ }
3569
+ interface To {
3570
+ chain?: 'any' | number | string;
3571
+ mode?: 'any' | 'specific';
3572
+ tokens?: Array<To.Token>;
3573
+ trackAmount?: boolean;
3574
+ }
3575
+ namespace To {
3576
+ interface Token {
3577
+ address: string;
3578
+ chainId: string;
3579
+ }
3580
+ }
3581
+ }
1932
3582
  }
1933
3583
  interface Collection {
1934
3584
  /**
@@ -1938,7 +3588,11 @@ export declare namespace RuleCreateParams {
1938
3588
  /**
1939
3589
  * Blockchain network for the collection
1940
3590
  */
1941
- network: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachainArtio' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp';
3591
+ 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' | 'skaleEuropa' | 'skaleCalypso' | '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' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
3592
+ /**
3593
+ * Symbol of the collection.
3594
+ */
3595
+ symbol?: string;
1942
3596
  }
1943
3597
  }
1944
3598
  export interface RuleUpdateParams {
@@ -1954,14 +3608,22 @@ export interface RuleUpdateParams {
1954
3608
  * Name of the loyalty rule
1955
3609
  */
1956
3610
  name: string;
3611
+ /**
3612
+ * The type of claim for the reward
3613
+ */
3614
+ claimType?: 'manual' | 'auto' | null;
1957
3615
  /**
1958
3616
  * Blockchain address of the associated collection
1959
3617
  */
1960
- collectionAddress?: string;
3618
+ collectionAddress?: string | null;
1961
3619
  /**
1962
3620
  * List of associated collections
1963
3621
  */
1964
3622
  collections?: Array<RuleUpdateParams.Collection> | null;
3623
+ /**
3624
+ * The IDs of the contracts
3625
+ */
3626
+ contractIds?: Array<string> | null;
1965
3627
  /**
1966
3628
  * API URL for custom rewards integration
1967
3629
  */
@@ -1982,10 +3644,18 @@ export interface RuleUpdateParams {
1982
3644
  * Effective start time of the rule
1983
3645
  */
1984
3646
  effectiveStartTime?: string | null;
3647
+ /**
3648
+ * ID of the external integration
3649
+ */
3650
+ externalIntegrationId?: string | null;
1985
3651
  /**
1986
3652
  * Frequency of the rule execution
1987
3653
  */
1988
- frequency?: 'none' | 'once' | 'daily' | 'weekly' | 'monthly' | 'immediately';
3654
+ frequency?: 'none' | 'once' | 'hourly' | 'daily' | 'weekly' | 'monthly' | 'immediately';
3655
+ /**
3656
+ * Optional stratus function id for the rule
3657
+ */
3658
+ functionId?: string | null;
1989
3659
  /**
1990
3660
  * Whether to hide this rule in the user interface
1991
3661
  */
@@ -1993,7 +3663,7 @@ export interface RuleUpdateParams {
1993
3663
  /**
1994
3664
  * Time interval for recurring rule execution
1995
3665
  */
1996
- interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | null;
3666
+ interval?: 'hourly' | 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | 'unlimited' | null;
1997
3667
  /**
1998
3668
  * Whether this rule is required for participation
1999
3669
  */
@@ -2002,6 +3672,16 @@ export interface RuleUpdateParams {
2002
3672
  * ID of the rule group section to associate with the rule
2003
3673
  */
2004
3674
  loyaltyRuleGroupId?: (string & {}) | 'no-section' | null;
3675
+ /**
3676
+ * The interval for the max amount. Available for the smart contract and external
3677
+ * rules.
3678
+ */
3679
+ maxAmountInterval?: 'daily' | 'weekly' | 'monthly' | 'lifetime' | null;
3680
+ /**
3681
+ * The maximum amount of points a user can earn per interval. Available for the
3682
+ * smart contract and external rules.
3683
+ */
3684
+ maxAmountPerInterval?: number | null;
2005
3685
  /**
2006
3686
  * URL of the media to be displayed
2007
3687
  */
@@ -2013,23 +3693,35 @@ export interface RuleUpdateParams {
2013
3693
  /**
2014
3694
  * Blockchain network where the rule will apply
2015
3695
  */
2016
- network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachainArtio' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp';
3696
+ 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' | 'skaleEuropa' | 'skaleCalypso' | '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' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
2017
3697
  /**
2018
3698
  * ID for associated OAuth credentials
2019
3699
  */
2020
3700
  oauthCredentialsId?: string | null;
3701
+ /**
3702
+ * The lifetime of the reward
3703
+ */
3704
+ rewardLifetime?: 'permanent' | 'dynamic' | null;
2021
3705
  /**
2022
3706
  * Type of reward issued by this rule
2023
3707
  */
2024
- rewardType?: 'points' | 'multiplier';
3708
+ rewardType?: 'points' | 'multiplier' | 'badge';
3709
+ /**
3710
+ * URL of the Shopify store
3711
+ */
3712
+ shopifyStoreUrl?: string | null;
3713
+ /**
3714
+ * Whether to show this rule before the start time
3715
+ */
3716
+ showBeforeStart?: boolean;
2025
3717
  /**
2026
3718
  * Start time for the loyalty rule
2027
3719
  */
2028
3720
  startTime?: string | null;
2029
3721
  /**
2030
- * Optional subscription identifier for the rule
3722
+ * Optional stratus subscription id for the rule
2031
3723
  */
2032
- subscriptionIdentifier?: string | null;
3724
+ subscriptionId?: string | null;
2033
3725
  }
2034
3726
  export declare namespace RuleUpdateParams {
2035
3727
  interface Collection {
@@ -2040,12 +3732,30 @@ export declare namespace RuleUpdateParams {
2040
3732
  /**
2041
3733
  * Blockchain network for the collection
2042
3734
  */
2043
- network: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachainArtio' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp';
3735
+ 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' | 'skaleEuropa' | 'skaleCalypso' | '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' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
3736
+ /**
3737
+ * Symbol of the collection.
3738
+ */
3739
+ symbol?: string;
2044
3740
  }
2045
3741
  /**
2046
3742
  * Additional metadata for the loyalty rule
2047
3743
  */
2048
3744
  interface Metadata {
3745
+ /**
3746
+ * Flag indicating if the rule allows multiple redemptions. Applies to Enter a Code
3747
+ * only.
3748
+ */
3749
+ allowMultipleRedemptions?: boolean;
3750
+ /**
3751
+ * Array of loyalty rule IDs that count as check-in when completed. If ["any"] then
3752
+ * any rule completions count as check-in.
3753
+ */
3754
+ autoCheckInRuleIds?: Array<(string & {}) | 'any'> | null;
3755
+ /**
3756
+ * Number of tokens per batch.
3757
+ */
3758
+ batchSize?: number | null;
2049
3759
  /**
2050
3760
  * Text displayed on the action button.
2051
3761
  */
@@ -2065,7 +3775,7 @@ export declare namespace RuleUpdateParams {
2065
3775
  /**
2066
3776
  * Text to check in the Twitter post, username, or bio.
2067
3777
  */
2068
- checkText?: string | null;
3778
+ checkText?: string | Array<string> | null;
2069
3779
  /**
2070
3780
  * Array of collections associated with the rule.
2071
3781
  */
@@ -2073,7 +3783,13 @@ export declare namespace RuleUpdateParams {
2073
3783
  /**
2074
3784
  * Conditions for completing the profile.
2075
3785
  */
2076
- completeProfileConditions?: Record<string, boolean> | null;
3786
+ completeProfileConditions?: {
3787
+ [key: string]: boolean;
3788
+ } | null;
3789
+ /**
3790
+ * Description of the external rule condition (only for external rules)
3791
+ */
3792
+ conditionDescription?: string;
2077
3793
  /**
2078
3794
  * Object containing details for the call-to-action.
2079
3795
  */
@@ -2082,6 +3798,10 @@ export declare namespace RuleUpdateParams {
2082
3798
  * API key for custom rewards integration.
2083
3799
  */
2084
3800
  customRewardsApiKey?: string;
3801
+ /**
3802
+ * Flag indicating if the rule should use direct RPC to get the balance of tokens.
3803
+ */
3804
+ directRpc?: boolean;
2085
3805
  /**
2086
3806
  * Array of Discord servers, channels, and roles to join.
2087
3807
  */
@@ -2102,6 +3822,10 @@ export declare namespace RuleUpdateParams {
2102
3822
  * Flag indicating whether the verified multiplier is enabled.
2103
3823
  */
2104
3824
  enableVerifiedMultiplier?: boolean;
3825
+ /**
3826
+ * Type of ERC20 token for the loyalty rule.
3827
+ */
3828
+ erc20Type?: 'erc20' | 'native';
2105
3829
  /**
2106
3830
  * Fill source of the order for the token sale
2107
3831
  */
@@ -2110,6 +3834,14 @@ export declare namespace RuleUpdateParams {
2110
3834
  * Percentage reward given to a user for their first referral.
2111
3835
  */
2112
3836
  firstReferralReward?: number | null;
3837
+ /**
3838
+ * Name of the GitHub branch to check for PR merge.
3839
+ */
3840
+ githubBranchName?: string | null;
3841
+ /**
3842
+ * URL of the GitHub repository to check for star.
3843
+ */
3844
+ githubRepoUrl?: string | null;
2113
3845
  /**
2114
3846
  * Flag indicating whether the fill source is included.
2115
3847
  */
@@ -2118,10 +3850,6 @@ export declare namespace RuleUpdateParams {
2118
3850
  * Indicates if the item has never been sold.
2119
3851
  */
2120
3852
  hasNeverSold?: boolean;
2121
- /**
2122
- * Flag indicating whether the order source is included.
2123
- */
2124
- hasOrderSource?: boolean;
2125
3853
  /**
2126
3854
  * Indicates if the full royalty has been paid for items.
2127
3855
  */
@@ -2138,10 +3866,18 @@ export declare namespace RuleUpdateParams {
2138
3866
  * URL of the image associated with the rule.
2139
3867
  */
2140
3868
  imageUrl?: string | null;
3869
+ /**
3870
+ * If enabled, the first transaction done on the platform will complete this rule
3871
+ */
3872
+ isCheckInOnEveryTxn?: boolean;
2141
3873
  /**
2142
3874
  * Indicates if the multiplier has been applied to rewards.
2143
3875
  */
2144
3876
  isMultiplierApplied?: boolean;
3877
+ /**
3878
+ * Flag indicating if the rule is restricted to new users.
3879
+ */
3880
+ isRestrictedToNewUsers?: boolean;
2145
3881
  /**
2146
3882
  * Flag indicating if rewards are applied retroactively.
2147
3883
  */
@@ -2154,10 +3890,18 @@ export declare namespace RuleUpdateParams {
2154
3890
  * Optional link associated with the metadata.
2155
3891
  */
2156
3892
  link?: string | null;
3893
+ /**
3894
+ * Liquidity pool details.
3895
+ */
3896
+ liquidity?: Metadata.Liquidity;
2157
3897
  /**
2158
3898
  * Maximum quantity constraint for token holding.
2159
3899
  */
2160
3900
  maxQty?: number | null;
3901
+ /**
3902
+ * Minimum follower count for the rule. Accepts both number and string values.
3903
+ */
3904
+ minimumFollowerCount?: number | null;
2161
3905
  /**
2162
3906
  * Minimum quantity constraint for token holding.
2163
3907
  */
@@ -2187,17 +3931,33 @@ export declare namespace RuleUpdateParams {
2187
3931
  */
2188
3932
  onlyRewardSingleTokenOwnership?: boolean | null;
2189
3933
  /**
2190
- * Order source of the order for the token sale
3934
+ * Pre-generated text template that will be used to prefill the post content.
2191
3935
  */
2192
- orderSource?: string;
3936
+ preGeneratedPostText?: string | null;
2193
3937
  /**
2194
3938
  * Promotional code associated with the rule.
2195
3939
  */
2196
3940
  promoCode?: string;
3941
+ /**
3942
+ * URL of the CSV file containing promo codes.
3943
+ */
3944
+ promoCodeCsvUrl?: string;
3945
+ /**
3946
+ * Numbers of the promotional code to be generated.
3947
+ */
3948
+ promoCodeLength?: number | null;
3949
+ /**
3950
+ * Type of the promotional code.
3951
+ */
3952
+ promoCodeType?: 'code' | 'csv' | 'generate';
2197
3953
  /**
2198
3954
  * Array defining ranges and corresponding rewards.
2199
3955
  */
2200
3956
  range?: Array<Metadata.Range>;
3957
+ /**
3958
+ * ID of the Reddit post.
3959
+ */
3960
+ redditPostId?: string | null;
2201
3961
  /**
2202
3962
  * Object defining referral requirements.
2203
3963
  */
@@ -2206,10 +3966,56 @@ export declare namespace RuleUpdateParams {
2206
3966
  * Lump sum reward given to a referrer.
2207
3967
  */
2208
3968
  referrerReward?: number | null;
3969
+ /**
3970
+ * Loyalty currency ID of the referrer reward.
3971
+ */
3972
+ referrerRewardLoyaltyCurrencyId?: string | null;
3973
+ /**
3974
+ * Flag indicating if the post link is required.
3975
+ */
3976
+ requirePostLink?: boolean | null;
3977
+ /**
3978
+ * Flag indicating if media metadata is required.
3979
+ */
3980
+ requirePostMediaLink?: boolean | null;
3981
+ /**
3982
+ * Flag indicating if the rule can also reward badges per range.
3983
+ */
3984
+ rewardBadgePerRange?: boolean;
3985
+ /**
3986
+ * Flag indicating if the reward is rewarded by batch.
3987
+ */
3988
+ rewardByBatch?: boolean | null;
3989
+ /**
3990
+ * Criteria to evaluate the reward.
3991
+ */
3992
+ rewardCriteria?: 'IMPRESSIONS_COUNT' | 'ELIGIBLE_POST' | null;
3993
+ /**
3994
+ * Flag indicating if the reward is rewarded per action.
3995
+ */
3996
+ rewardPerAction?: boolean | null;
2209
3997
  /**
2210
3998
  * Flag indicating if rewards are given per impression.
2211
3999
  */
2212
4000
  rewardPerImpression?: boolean | null;
4001
+ /**
4002
+ * Flag indicating if the rule should reward based on value of traded tokens
4003
+ * instead of count.
4004
+ */
4005
+ rewardPerValue?: boolean;
4006
+ /**
4007
+ * Flag indicating if the rule should reward quality posts.
4008
+ */
4009
+ rewardQualityPosts?: boolean;
4010
+ robinhoodSymbols?: Array<string> | null;
4011
+ /**
4012
+ * Wallet address of the user can only be used if userId is not provided
4013
+ */
4014
+ royaltyAddress?: string;
4015
+ /**
4016
+ * Royalty percentage of the item.
4017
+ */
4018
+ royaltyPercentage?: number;
2213
4019
  /**
2214
4020
  * Currency associated with sales.
2215
4021
  */
@@ -2233,7 +4039,7 @@ export declare namespace RuleUpdateParams {
2233
4039
  /**
2234
4040
  * Social media platform associated with the rule.
2235
4041
  */
2236
- socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | null;
4042
+ socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | 'Google' | 'GitHub' | 'Reddit' | null;
2237
4043
  /**
2238
4044
  * URL of the social platform's logo.
2239
4045
  */
@@ -2242,10 +4048,18 @@ export declare namespace RuleUpdateParams {
2242
4048
  * Name of the social platform.
2243
4049
  */
2244
4050
  socialPlatformName?: string | null;
4051
+ /**
4052
+ * ID of the Steam app.
4053
+ */
4054
+ steamAppId?: string | null;
2245
4055
  /**
2246
4056
  * Array of streak milestones and corresponding rewards.
2247
4057
  */
2248
4058
  streakArray?: Array<Metadata.StreakArray> | null;
4059
+ /**
4060
+ * Metadata for swap loyalty rules
4061
+ */
4062
+ swap?: Metadata.Swap;
2249
4063
  /**
2250
4064
  * ID of the Telegram channel.
2251
4065
  */
@@ -2258,6 +4072,11 @@ export declare namespace RuleUpdateParams {
2258
4072
  * Flag indicating if all contracts are tracked.
2259
4073
  */
2260
4074
  trackAllContracts?: boolean | null;
4075
+ /**
4076
+ * Flag indicating if the progress is tracked. If enabled, the rule can only be
4077
+ * completed once the progress is 100%.
4078
+ */
4079
+ trackProgress?: boolean | null;
2261
4080
  /**
2262
4081
  * URL of the associated Twitter account.
2263
4082
  */
@@ -2293,7 +4112,15 @@ export declare namespace RuleUpdateParams {
2293
4112
  /**
2294
4113
  * Type of wallet associated with the rule.
2295
4114
  */
2296
- walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | null;
4115
+ walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | 'cosmos' | 'ultra' | 'agw' | 'flow_cadence' | 'substrate' | null;
4116
+ /**
4117
+ * ID of the Youtube channel.
4118
+ */
4119
+ youtubeChannelId?: string | null;
4120
+ /**
4121
+ * ID of the Youtube video.
4122
+ */
4123
+ youtubeVideoId?: string | null;
2297
4124
  }
2298
4125
  namespace Metadata {
2299
4126
  interface Collection {
@@ -2308,7 +4135,7 @@ export declare namespace RuleUpdateParams {
2308
4135
  /**
2309
4136
  * Blockchain network of the collection.
2310
4137
  */
2311
- network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachainArtio' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp';
4138
+ 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' | 'skaleEuropa' | 'skaleCalypso' | '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' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
2312
4139
  }
2313
4140
  /**
2314
4141
  * Object containing details for the call-to-action.
@@ -2373,6 +4200,49 @@ export declare namespace RuleUpdateParams {
2373
4200
  */
2374
4201
  id: string;
2375
4202
  }
4203
+ /**
4204
+ * Liquidity pool details.
4205
+ */
4206
+ interface Liquidity {
4207
+ /**
4208
+ * Calculation type of the liquidity pool.
4209
+ */
4210
+ calculationType?: 'fixed' | 'custom';
4211
+ /**
4212
+ * Custom function to calculate the the reward amount based on the liquidity
4213
+ * provided per day. X is the reward amount, Y is the liquidity provided per day in
4214
+ * USD.
4215
+ */
4216
+ customFunction?: string;
4217
+ /**
4218
+ * Liquidity provided per day in USD
4219
+ */
4220
+ liquidityPerDay?: number;
4221
+ /**
4222
+ * Blockchain network of the liquidity pool.
4223
+ */
4224
+ 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' | 'skaleEuropa' | 'skaleCalypso' | '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' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
4225
+ /**
4226
+ * Indicates if only in-range liquidity is rewarded.
4227
+ */
4228
+ onlyRewardInRangeLiquidity?: boolean;
4229
+ /**
4230
+ * Array of liquidity pools associated with the rule.
4231
+ */
4232
+ pools?: Array<Liquidity.Pool>;
4233
+ /**
4234
+ * Protocol of the liquidity pool.
4235
+ */
4236
+ protocol?: string;
4237
+ }
4238
+ namespace Liquidity {
4239
+ interface Pool {
4240
+ /**
4241
+ * Unique identifier of the liquidity pool.
4242
+ */
4243
+ id: string;
4244
+ }
4245
+ }
2376
4246
  interface Range {
2377
4247
  /**
2378
4248
  * Reward amount for this range.
@@ -2386,6 +4256,14 @@ export declare namespace RuleUpdateParams {
2386
4256
  * Start value of the range.
2387
4257
  */
2388
4258
  startRange: number;
4259
+ /**
4260
+ * ID of the loyalty badge for this range.
4261
+ */
4262
+ loyaltyBadgeId?: string;
4263
+ /**
4264
+ * Amount of the loyalty multiplier for this range.
4265
+ */
4266
+ loyaltyMultiplierAmount?: number;
2389
4267
  }
2390
4268
  /**
2391
4269
  * Object defining referral requirements.
@@ -2429,18 +4307,14 @@ export declare namespace RuleUpdateParams {
2429
4307
  * Object containing details of the associated smart contract.
2430
4308
  */
2431
4309
  interface SmartContract {
2432
- /**
2433
- * ABI of the smart contract.
2434
- */
2435
- abi?: string | null;
2436
4310
  /**
2437
4311
  * Mapping of addresses for the smart contract.
2438
4312
  */
2439
4313
  addressMapping?: string | null;
2440
4314
  /**
2441
- * Array of bonus details applied to the rule.
4315
+ * Object containing details of the amount multiplier from the event.
2442
4316
  */
2443
- bonus?: Array<SmartContract.Bonus> | null;
4317
+ amountMultiplier?: SmartContract.AmountMultiplier | null;
2444
4318
  /**
2445
4319
  * ID of the smart contract.
2446
4320
  */
@@ -2449,58 +4323,28 @@ export declare namespace RuleUpdateParams {
2449
4323
  * Criteria to evaluate the smart contract event.
2450
4324
  */
2451
4325
  criteria?: 'everyEvent' | 'byParameter' | null;
2452
- /**
2453
- * Time range applied to the rule.
2454
- */
2455
- customRange?: SmartContract.CustomRange | null;
2456
4326
  /**
2457
4327
  * Event emitted by the smart contract.
2458
4328
  */
2459
4329
  event?: string | null;
2460
- /**
2461
- * Maximum value allowed for the parameter.
2462
- */
2463
- max?: number | null;
2464
4330
  /**
2465
4331
  * Array of parameters for the smart contract.
2466
4332
  */
2467
4333
  params?: Array<SmartContract.Param> | null;
2468
4334
  /**
2469
- * Flag indicating if a bonus is applied.
2470
- */
2471
- withBonus?: boolean | null;
2472
- /**
2473
- * Flag indicating if a custom range is applied.
4335
+ * Type of the smart contract interaction.
2474
4336
  */
2475
- withCustomRange?: boolean | null;
2476
- /**
2477
- * Flag indicating if a maximum limit is applied.
2478
- */
2479
- withMax?: boolean | null;
4337
+ type?: 'function' | 'event' | null;
2480
4338
  }
2481
4339
  namespace SmartContract {
2482
- interface Bonus {
2483
- /**
2484
- * Amount of the bonus.
2485
- */
2486
- amount?: number | null;
2487
- /**
2488
- * Number of times the bonus is applied.
2489
- */
2490
- count?: number | null;
2491
- }
2492
4340
  /**
2493
- * Time range applied to the rule.
4341
+ * Object containing details of the amount multiplier from the event.
2494
4342
  */
2495
- interface CustomRange {
4343
+ interface AmountMultiplier {
2496
4344
  /**
2497
- * End time of the custom range.
4345
+ * Mapping of the value for the smart contract.
2498
4346
  */
2499
- endsAt?: string | null;
2500
- /**
2501
- * Start time of the custom range.
2502
- */
2503
- startsAt?: string | null;
4347
+ valueMapping?: string | null;
2504
4348
  }
2505
4349
  interface Param {
2506
4350
  /**
@@ -2537,15 +4381,73 @@ export declare namespace RuleUpdateParams {
2537
4381
  */
2538
4382
  streakMilestone: number;
2539
4383
  }
4384
+ /**
4385
+ * Metadata for swap loyalty rules
4386
+ */
4387
+ interface Swap {
4388
+ from?: Swap.From;
4389
+ provider?: 'any' | 'relay' | 'lifi';
4390
+ relayReferrerId?: string;
4391
+ requireCrossChainSwap?: boolean;
4392
+ to?: Swap.To;
4393
+ }
4394
+ namespace Swap {
4395
+ interface From {
4396
+ chain?: 'any' | number | string;
4397
+ mode?: 'any' | 'specific';
4398
+ tokens?: Array<From.Token>;
4399
+ trackAmount?: boolean;
4400
+ }
4401
+ namespace From {
4402
+ interface Token {
4403
+ address: string;
4404
+ chainId: string;
4405
+ }
4406
+ }
4407
+ interface To {
4408
+ chain?: 'any' | number | string;
4409
+ mode?: 'any' | 'specific';
4410
+ tokens?: Array<To.Token>;
4411
+ trackAmount?: boolean;
4412
+ }
4413
+ namespace To {
4414
+ interface Token {
4415
+ address: string;
4416
+ chainId: string;
4417
+ }
4418
+ }
4419
+ }
2540
4420
  }
2541
4421
  }
2542
4422
  export interface RuleListParams {
4423
+ /**
4424
+ * IDs of the users to filter results by
4425
+ */
4426
+ allotedToUserId?: string | Array<string>;
4427
+ /**
4428
+ * ID of the user group to filter results by
4429
+ */
4430
+ allotedUserGroupId?: string;
2543
4431
  /**
2544
4432
  * Address of the collection to filter by
2545
4433
  */
2546
4434
  collectionAddress?: string;
2547
4435
  /**
2548
- * Maximum number of records to return (max 1000)
4436
+ * Whether to include deleted/archived records
4437
+ */
4438
+ includeDeleted?: boolean | null;
4439
+ /**
4440
+ * If true this will only return active rules, the rules for which the startTime is
4441
+ * in the past and the endTime is in the future
4442
+ */
4443
+ isActive?: 'true' | 'false';
4444
+ /**
4445
+ * If true this will only return special rules, special rules are the rules that
4446
+ * are used for anti sybil as honey pot
4447
+ */
4448
+ isSpecial?: 'true' | 'false';
4449
+ /**
4450
+ * Maximum number of records to return (max 100)
2549
4451
  */
2550
4452
  limit?: number;
2551
4453
  /**
@@ -2569,6 +4471,12 @@ export interface RuleListParams {
2569
4471
  */
2570
4472
  websiteId?: string;
2571
4473
  }
4474
+ export interface RuleDeleteParams {
4475
+ /**
4476
+ * Whether to debit loyalty points
4477
+ */
4478
+ debitLoyaltyPoints?: string;
4479
+ }
2572
4480
  export interface RuleCompleteParams {
2573
4481
  /**
2574
4482
  * Override amount for the reward (rounded to nearest whole number). This will
@@ -2576,13 +4484,25 @@ export interface RuleCompleteParams {
2576
4484
  */
2577
4485
  amount?: number | null;
2578
4486
  /**
2579
- * Link to the comment made by user
4487
+ * Link to the post/comment made by user
4488
+ */
4489
+ contentUrl?: string;
4490
+ /**
4491
+ * Unique key to ensure idempotent requests.
2580
4492
  */
2581
- commentLink?: string;
4493
+ idempotencyKey?: string;
2582
4494
  /**
2583
4495
  * ID of the choice selected by the user
2584
4496
  */
2585
4497
  loyaltyQuestionChoiceId?: string;
4498
+ /**
4499
+ * Value to compare with the range
4500
+ */
4501
+ rangeValue?: number | null;
4502
+ /**
4503
+ * Flag indicating if the chain or required check should be skipped.
4504
+ */
4505
+ skipChainOrRequiredCheck?: boolean;
2586
4506
  /**
2587
4507
  * Unique identifier for the user
2588
4508
  */
@@ -2593,7 +4513,7 @@ export interface RuleCompleteParams {
2593
4513
  verificationCode?: string;
2594
4514
  /**
2595
4515
  * Flag indicating if only verification is required, this will not create a
2596
- * transaction and reward the user
4516
+ * transaction and reward the user.
2597
4517
  */
2598
4518
  verifyOnly?: string;
2599
4519
  /**
@@ -2602,11 +4522,25 @@ export interface RuleCompleteParams {
2602
4522
  walletAddress?: string;
2603
4523
  }
2604
4524
  export interface RuleGetStatusParams {
2605
- organizationId: string;
2606
- websiteId: string;
4525
+ /**
4526
+ * Number of items to return
4527
+ */
4528
+ limit?: number | null;
4529
+ /**
4530
+ * Unique identifier for the loyalty rule[s]
4531
+ */
4532
+ loyaltyRuleId?: string | Array<string>;
4533
+ organizationId?: string;
4534
+ /**
4535
+ * Starting after item
4536
+ */
4537
+ startingAfter?: string;
4538
+ userGroupId?: string;
2607
4539
  userId?: string;
4540
+ walletAddress?: string;
4541
+ websiteId?: string;
2608
4542
  }
2609
4543
  export declare namespace Rules {
2610
- 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, };
4544
+ 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, };
2611
4545
  }
2612
4546
  //# sourceMappingURL=rules.d.ts.map