@snagsolutions/sdk 0.1.0-alpha.20 → 0.1.0-alpha.200

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 (272) hide show
  1. package/CHANGELOG.md +1626 -0
  2. package/README.md +13 -23
  3. package/core.d.ts +19 -5
  4. package/core.d.ts.map +1 -1
  5. package/core.js +24 -17
  6. package/core.js.map +1 -1
  7. package/core.mjs +24 -17
  8. package/core.mjs.map +1 -1
  9. package/index.d.mts +7 -4
  10. package/index.d.ts +7 -4
  11. package/index.d.ts.map +1 -1
  12. package/index.js +8 -4
  13. package/index.js.map +1 -1
  14. package/index.mjs +8 -4
  15. package/index.mjs.map +1 -1
  16. package/package.json +4 -5
  17. package/resource.d.ts +1 -1
  18. package/resource.d.ts.map +1 -1
  19. package/resource.js.map +1 -1
  20. package/resource.mjs.map +1 -1
  21. package/resources/assets.d.ts +16 -2
  22. package/resources/assets.d.ts.map +1 -1
  23. package/resources/assets.js +8 -0
  24. package/resources/assets.js.map +1 -1
  25. package/resources/assets.mjs +8 -0
  26. package/resources/assets.mjs.map +1 -1
  27. package/resources/auctions/auctions.d.ts +368 -0
  28. package/resources/auctions/auctions.d.ts.map +1 -0
  29. package/resources/auctions/auctions.js +72 -0
  30. package/resources/auctions/auctions.js.map +1 -0
  31. package/resources/auctions/auctions.mjs +45 -0
  32. package/resources/auctions/auctions.mjs.map +1 -0
  33. package/resources/auctions/index.d.ts +3 -0
  34. package/resources/auctions/index.d.ts.map +1 -0
  35. package/resources/auctions/index.js +9 -0
  36. package/resources/auctions/index.js.map +1 -0
  37. package/resources/auctions/index.mjs +4 -0
  38. package/resources/auctions/index.mjs.map +1 -0
  39. package/resources/auctions/website-user-attributes/index.d.ts +3 -0
  40. package/resources/auctions/website-user-attributes/index.d.ts.map +1 -0
  41. package/resources/auctions/website-user-attributes/index.js +9 -0
  42. package/resources/auctions/website-user-attributes/index.js.map +1 -0
  43. package/resources/auctions/website-user-attributes/index.mjs +4 -0
  44. package/resources/auctions/website-user-attributes/index.mjs.map +1 -0
  45. package/resources/auctions/website-user-attributes/values.d.ts +126 -0
  46. package/resources/auctions/website-user-attributes/values.d.ts.map +1 -0
  47. package/resources/auctions/website-user-attributes/values.js +49 -0
  48. package/resources/auctions/website-user-attributes/values.js.map +1 -0
  49. package/resources/auctions/website-user-attributes/values.mjs +45 -0
  50. package/resources/auctions/website-user-attributes/values.mjs.map +1 -0
  51. package/resources/auctions/website-user-attributes/website-user-attributes.d.ts +136 -0
  52. package/resources/auctions/website-user-attributes/website-user-attributes.d.ts.map +1 -0
  53. package/resources/auctions/website-user-attributes/website-user-attributes.js +76 -0
  54. package/resources/auctions/website-user-attributes/website-user-attributes.js.map +1 -0
  55. package/resources/auctions/website-user-attributes/website-user-attributes.mjs +49 -0
  56. package/resources/auctions/website-user-attributes/website-user-attributes.mjs.map +1 -0
  57. package/resources/auctions/website-user-attributes.d.ts +2 -0
  58. package/resources/auctions/website-user-attributes.d.ts.map +1 -0
  59. package/resources/auctions/website-user-attributes.js +19 -0
  60. package/resources/auctions/website-user-attributes.js.map +1 -0
  61. package/resources/auctions/website-user-attributes.mjs +3 -0
  62. package/resources/auctions/website-user-attributes.mjs.map +1 -0
  63. package/resources/auctions.d.ts +1 -133
  64. package/resources/auctions.d.ts.map +1 -1
  65. package/resources/auctions.js +15 -22
  66. package/resources/auctions.js.map +1 -1
  67. package/resources/auctions.mjs +1 -20
  68. package/resources/auctions.mjs.map +1 -1
  69. package/resources/auth.d.ts +17 -4
  70. package/resources/auth.d.ts.map +1 -1
  71. package/resources/auth.js.map +1 -1
  72. package/resources/auth.mjs.map +1 -1
  73. package/resources/index.d.ts +2 -2
  74. package/resources/index.d.ts.map +1 -1
  75. package/resources/index.js +1 -1
  76. package/resources/index.js.map +1 -1
  77. package/resources/index.mjs +1 -1
  78. package/resources/index.mjs.map +1 -1
  79. package/resources/loyalty/account-streaks.d.ts +81 -0
  80. package/resources/loyalty/account-streaks.d.ts.map +1 -0
  81. package/resources/loyalty/account-streaks.js +24 -0
  82. package/resources/loyalty/account-streaks.js.map +1 -0
  83. package/resources/loyalty/account-streaks.mjs +20 -0
  84. package/resources/loyalty/account-streaks.mjs.map +1 -0
  85. package/resources/loyalty/accounts.d.ts +60 -16
  86. package/resources/loyalty/accounts.d.ts.map +1 -1
  87. package/resources/loyalty/accounts.js +14 -0
  88. package/resources/loyalty/accounts.js.map +1 -1
  89. package/resources/loyalty/accounts.mjs +14 -0
  90. package/resources/loyalty/accounts.mjs.map +1 -1
  91. package/resources/loyalty/badges.d.ts +666 -135
  92. package/resources/loyalty/badges.d.ts.map +1 -1
  93. package/resources/loyalty/badges.js +19 -1
  94. package/resources/loyalty/badges.js.map +1 -1
  95. package/resources/loyalty/badges.mjs +19 -1
  96. package/resources/loyalty/badges.mjs.map +1 -1
  97. package/resources/loyalty/currencies.d.ts +19 -0
  98. package/resources/loyalty/currencies.d.ts.map +1 -1
  99. package/resources/loyalty/currencies.js +19 -0
  100. package/resources/loyalty/currencies.js.map +1 -1
  101. package/resources/loyalty/currencies.mjs +19 -0
  102. package/resources/loyalty/currencies.mjs.map +1 -1
  103. package/resources/loyalty/index.d.ts +4 -4
  104. package/resources/loyalty/index.d.ts.map +1 -1
  105. package/resources/loyalty/index.js +5 -5
  106. package/resources/loyalty/index.js.map +1 -1
  107. package/resources/loyalty/index.mjs +3 -3
  108. package/resources/loyalty/index.mjs.map +1 -1
  109. package/resources/loyalty/loyalty.d.ts +11 -11
  110. package/resources/loyalty/loyalty.d.ts.map +1 -1
  111. package/resources/loyalty/loyalty.js +6 -6
  112. package/resources/loyalty/loyalty.js.map +1 -1
  113. package/resources/loyalty/loyalty.mjs +7 -7
  114. package/resources/loyalty/loyalty.mjs.map +1 -1
  115. package/resources/loyalty/multipliers.d.ts +39 -2
  116. package/resources/loyalty/multipliers.d.ts.map +1 -1
  117. package/resources/loyalty/multipliers.js +23 -0
  118. package/resources/loyalty/multipliers.js.map +1 -1
  119. package/resources/loyalty/multipliers.mjs +23 -0
  120. package/resources/loyalty/multipliers.mjs.map +1 -1
  121. package/resources/loyalty/questions-responses.d.ts +55 -4
  122. package/resources/loyalty/questions-responses.d.ts.map +1 -1
  123. package/resources/loyalty/questions-responses.js +9 -0
  124. package/resources/loyalty/questions-responses.js.map +1 -1
  125. package/resources/loyalty/questions-responses.mjs +9 -0
  126. package/resources/loyalty/questions-responses.mjs.map +1 -1
  127. package/resources/loyalty/questions.d.ts +52 -6
  128. package/resources/loyalty/questions.d.ts.map +1 -1
  129. package/resources/loyalty/questions.js +31 -0
  130. package/resources/loyalty/questions.js.map +1 -1
  131. package/resources/loyalty/questions.mjs +31 -0
  132. package/resources/loyalty/questions.mjs.map +1 -1
  133. package/resources/loyalty/rule-edits.d.ts +2646 -8
  134. package/resources/loyalty/rule-edits.d.ts.map +1 -1
  135. package/resources/loyalty/rule-edits.js +14 -0
  136. package/resources/loyalty/rule-edits.js.map +1 -1
  137. package/resources/loyalty/rule-edits.mjs +14 -0
  138. package/resources/loyalty/rule-edits.mjs.map +1 -1
  139. package/resources/loyalty/rule-groups.d.ts +283 -64
  140. package/resources/loyalty/rule-groups.d.ts.map +1 -1
  141. package/resources/loyalty/rule-groups.js +38 -2
  142. package/resources/loyalty/rule-groups.js.map +1 -1
  143. package/resources/loyalty/rule-groups.mjs +38 -2
  144. package/resources/loyalty/rule-groups.mjs.map +1 -1
  145. package/resources/loyalty/rules.d.ts +1930 -269
  146. package/resources/loyalty/rules.d.ts.map +1 -1
  147. package/resources/loyalty/rules.js +40 -9
  148. package/resources/loyalty/rules.js.map +1 -1
  149. package/resources/loyalty/rules.mjs +40 -9
  150. package/resources/loyalty/rules.mjs.map +1 -1
  151. package/resources/loyalty/transactions/index.d.ts +3 -0
  152. package/resources/loyalty/transactions/index.d.ts.map +1 -0
  153. package/resources/loyalty/transactions/index.js +9 -0
  154. package/resources/loyalty/transactions/index.js.map +1 -0
  155. package/resources/loyalty/transactions/index.mjs +4 -0
  156. package/resources/loyalty/transactions/index.mjs.map +1 -0
  157. package/resources/loyalty/transactions/rule-statuses.d.ts +120 -0
  158. package/resources/loyalty/transactions/rule-statuses.d.ts.map +1 -0
  159. package/resources/loyalty/transactions/rule-statuses.js +30 -0
  160. package/resources/loyalty/transactions/rule-statuses.js.map +1 -0
  161. package/resources/loyalty/transactions/rule-statuses.mjs +26 -0
  162. package/resources/loyalty/transactions/rule-statuses.mjs.map +1 -0
  163. package/resources/loyalty/transactions/transactions.d.ts +410 -0
  164. package/resources/loyalty/transactions/transactions.d.ts.map +1 -0
  165. package/resources/loyalty/transactions/transactions.js +76 -0
  166. package/resources/loyalty/transactions/transactions.js.map +1 -0
  167. package/resources/loyalty/transactions/transactions.mjs +49 -0
  168. package/resources/loyalty/transactions/transactions.mjs.map +1 -0
  169. package/resources/loyalty/transactions.d.ts +1 -247
  170. package/resources/loyalty/transactions.d.ts.map +1 -1
  171. package/resources/loyalty/transactions.js +15 -18
  172. package/resources/loyalty/transactions.js.map +1 -1
  173. package/resources/loyalty/transactions.mjs +1 -16
  174. package/resources/loyalty/transactions.mjs.map +1 -1
  175. package/resources/minting.d.ts +5 -5
  176. package/resources/minting.d.ts.map +1 -1
  177. package/resources/referral/referral.d.ts +11 -3
  178. package/resources/referral/referral.d.ts.map +1 -1
  179. package/resources/referral/referral.js +11 -5
  180. package/resources/referral/referral.js.map +1 -1
  181. package/resources/referral/referral.mjs +11 -5
  182. package/resources/referral/referral.mjs.map +1 -1
  183. package/resources/referral/users.d.ts +29 -3
  184. package/resources/referral/users.d.ts.map +1 -1
  185. package/resources/referral/users.js +12 -4
  186. package/resources/referral/users.js.map +1 -1
  187. package/resources/referral/users.mjs +12 -4
  188. package/resources/referral/users.mjs.map +1 -1
  189. package/resources/users/index.d.ts +1 -1
  190. package/resources/users/index.d.ts.map +1 -1
  191. package/resources/users/index.js.map +1 -1
  192. package/resources/users/index.mjs.map +1 -1
  193. package/resources/users/metadatas.d.ts +36 -3
  194. package/resources/users/metadatas.d.ts.map +1 -1
  195. package/resources/users/metadatas.js.map +1 -1
  196. package/resources/users/metadatas.mjs.map +1 -1
  197. package/resources/users/users.d.ts +184 -35
  198. package/resources/users/users.d.ts.map +1 -1
  199. package/resources/users/users.js +58 -1
  200. package/resources/users/users.js.map +1 -1
  201. package/resources/users/users.mjs +58 -1
  202. package/resources/users/users.mjs.map +1 -1
  203. package/resources/websites/website-collections.d.ts +22 -1
  204. package/resources/websites/website-collections.d.ts.map +1 -1
  205. package/resources/websites/website-collections.js +21 -0
  206. package/resources/websites/website-collections.js.map +1 -1
  207. package/resources/websites/website-collections.mjs +21 -0
  208. package/resources/websites/website-collections.mjs.map +1 -1
  209. package/resources/websites/website-user-roles.d.ts +24 -1
  210. package/resources/websites/website-user-roles.d.ts.map +1 -1
  211. package/resources/websites/website-user-roles.js +23 -0
  212. package/resources/websites/website-user-roles.js.map +1 -1
  213. package/resources/websites/website-user-roles.mjs +23 -0
  214. package/resources/websites/website-user-roles.mjs.map +1 -1
  215. package/resources/websites/websites.d.ts +12 -0
  216. package/resources/websites/websites.d.ts.map +1 -1
  217. package/resources/websites/websites.js +7 -0
  218. package/resources/websites/websites.js.map +1 -1
  219. package/resources/websites/websites.mjs +7 -0
  220. package/resources/websites/websites.mjs.map +1 -1
  221. package/src/core.ts +39 -16
  222. package/src/index.ts +31 -2
  223. package/src/resource.ts +1 -1
  224. package/src/resources/assets.ts +18 -3
  225. package/src/resources/auctions/auctions.ts +561 -0
  226. package/src/resources/auctions/index.ts +19 -0
  227. package/src/resources/auctions/website-user-attributes/index.ts +18 -0
  228. package/src/resources/auctions/website-user-attributes/values.ts +170 -0
  229. package/src/resources/auctions/website-user-attributes/website-user-attributes.ts +212 -0
  230. package/src/resources/auctions/website-user-attributes.ts +3 -0
  231. package/src/resources/auctions.ts +1 -207
  232. package/src/resources/auth.ts +21 -5
  233. package/src/resources/index.ts +12 -1
  234. package/src/resources/loyalty/account-streaks.ts +110 -0
  235. package/src/resources/loyalty/accounts.ts +65 -18
  236. package/src/resources/loyalty/badges.ts +790 -146
  237. package/src/resources/loyalty/currencies.ts +19 -0
  238. package/src/resources/loyalty/index.ts +19 -3
  239. package/src/resources/loyalty/loyalty.ts +39 -15
  240. package/src/resources/loyalty/multipliers.ts +43 -4
  241. package/src/resources/loyalty/questions-responses.ts +64 -4
  242. package/src/resources/loyalty/questions.ts +56 -6
  243. package/src/resources/loyalty/rule-edits.ts +3854 -100
  244. package/src/resources/loyalty/rule-groups.ts +499 -76
  245. package/src/resources/loyalty/rules.ts +3038 -318
  246. package/src/resources/loyalty/transactions/index.ts +18 -0
  247. package/src/resources/loyalty/transactions/rule-statuses.ts +178 -0
  248. package/src/resources/loyalty/transactions/transactions.ts +687 -0
  249. package/src/resources/loyalty/transactions.ts +1 -330
  250. package/src/resources/minting.ts +25 -5
  251. package/src/resources/referral/referral.ts +13 -11
  252. package/src/resources/referral/users.ts +43 -5
  253. package/src/resources/users/index.ts +4 -0
  254. package/src/resources/users/metadatas.ts +61 -3
  255. package/src/resources/users/users.ts +249 -38
  256. package/src/resources/websites/website-collections.ts +42 -1
  257. package/src/resources/websites/website-user-roles.ts +25 -1
  258. package/src/resources/websites/websites.ts +12 -0
  259. package/src/version.ts +1 -1
  260. package/version.d.ts +1 -1
  261. package/version.d.ts.map +1 -1
  262. package/version.js +1 -1
  263. package/version.js.map +1 -1
  264. package/version.mjs +1 -1
  265. package/version.mjs.map +1 -1
  266. package/resources/loyalty/rule-chains.d.ts +0 -34
  267. package/resources/loyalty/rule-chains.d.ts.map +0 -1
  268. package/resources/loyalty/rule-chains.js +0 -15
  269. package/resources/loyalty/rule-chains.js.map +0 -1
  270. package/resources/loyalty/rule-chains.mjs +0 -11
  271. package/resources/loyalty/rule-chains.mjs.map +0 -1
  272. package/src/resources/loyalty/rule-chains.ts +0 -45
@@ -5,29 +5,128 @@ import { isRequestOptions } from '../../core';
5
5
  import * as Core from '../../core';
6
6
 
7
7
  export class RuleGroups extends APIResource {
8
+ /**
9
+ * Create a new loyalty rule groups
10
+ *
11
+ * @example
12
+ * ```ts
13
+ * const response =
14
+ * await client.loyalty.ruleGroups.createRuleGroup({
15
+ * name: 'name',
16
+ * organizationId: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
17
+ * websiteId: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
18
+ * });
19
+ * ```
20
+ */
21
+ createRuleGroup(
22
+ body: RuleGroupCreateRuleGroupParams,
23
+ options?: Core.RequestOptions,
24
+ ): Core.APIPromise<RuleGroupCreateRuleGroupResponse> {
25
+ return this._client.post('/api/loyalty/rule_groups/create', { body, ...options });
26
+ }
27
+
28
+ /**
29
+ * Delete loyalty rule group by ID
30
+ *
31
+ * @example
32
+ * ```ts
33
+ * const response =
34
+ * await client.loyalty.ruleGroups.deleteRuleGroup(
35
+ * '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
36
+ * );
37
+ * ```
38
+ */
39
+ deleteRuleGroup(id: string, options?: Core.RequestOptions): Core.APIPromise<unknown> {
40
+ return this._client.delete(`/api/loyalty/rule_groups/${id}`, options);
41
+ }
42
+
8
43
  /**
9
44
  * Retrieve configured loyalty rule groups
45
+ *
46
+ * @example
47
+ * ```ts
48
+ * const response =
49
+ * await client.loyalty.ruleGroups.getRuleGroups();
50
+ * ```
10
51
  */
11
- get(query?: RuleGroupGetParams, options?: Core.RequestOptions): Core.APIPromise<RuleGroupGetResponse>;
12
- get(options?: Core.RequestOptions): Core.APIPromise<RuleGroupGetResponse>;
13
- get(
14
- query: RuleGroupGetParams | Core.RequestOptions = {},
52
+ getRuleGroups(
53
+ query?: RuleGroupGetRuleGroupsParams,
54
+ options?: Core.RequestOptions,
55
+ ): Core.APIPromise<RuleGroupGetRuleGroupsResponse>;
56
+ getRuleGroups(options?: Core.RequestOptions): Core.APIPromise<RuleGroupGetRuleGroupsResponse>;
57
+ getRuleGroups(
58
+ query: RuleGroupGetRuleGroupsParams | Core.RequestOptions = {},
15
59
  options?: Core.RequestOptions,
16
- ): Core.APIPromise<RuleGroupGetResponse> {
60
+ ): Core.APIPromise<RuleGroupGetRuleGroupsResponse> {
17
61
  if (isRequestOptions(query)) {
18
- return this.get({}, query);
62
+ return this.getRuleGroups({}, query);
19
63
  }
20
64
  return this._client.get('/api/loyalty/rule_groups', { query, ...options });
21
65
  }
66
+
67
+ /**
68
+ * Update loyalty rule group by ID
69
+ *
70
+ * @example
71
+ * ```ts
72
+ * const response =
73
+ * await client.loyalty.ruleGroups.updateRuleGroup(
74
+ * '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
75
+ * );
76
+ * ```
77
+ */
78
+ updateRuleGroup(
79
+ id: string,
80
+ body?: RuleGroupUpdateRuleGroupParams,
81
+ options?: Core.RequestOptions,
82
+ ): Core.APIPromise<RuleGroupUpdateRuleGroupResponse>;
83
+ updateRuleGroup(
84
+ id: string,
85
+ options?: Core.RequestOptions,
86
+ ): Core.APIPromise<RuleGroupUpdateRuleGroupResponse>;
87
+ updateRuleGroup(
88
+ id: string,
89
+ body: RuleGroupUpdateRuleGroupParams | Core.RequestOptions = {},
90
+ options?: Core.RequestOptions,
91
+ ): Core.APIPromise<RuleGroupUpdateRuleGroupResponse> {
92
+ if (isRequestOptions(body)) {
93
+ return this.updateRuleGroup(id, {}, body);
94
+ }
95
+ return this._client.post(`/api/loyalty/rule_groups/${id}`, { body, ...options });
96
+ }
22
97
  }
23
98
 
24
- export interface RuleGroupGetResponse {
25
- data: Array<RuleGroupGetResponse.Data>;
99
+ export interface RuleGroupCreateRuleGroupResponse {
100
+ id: string;
101
+
102
+ createdAt: string;
103
+
104
+ isCollapsible: boolean;
105
+
106
+ isRequired: boolean;
107
+
108
+ name: string;
109
+
110
+ organizationId: string;
111
+
112
+ sortId: number;
113
+
114
+ subTitle: string | null;
115
+
116
+ updatedAt: string;
117
+
118
+ websiteId: string;
119
+ }
120
+
121
+ export type RuleGroupDeleteRuleGroupResponse = unknown;
122
+
123
+ export interface RuleGroupGetRuleGroupsResponse {
124
+ data: Array<RuleGroupGetRuleGroupsResponse.Data>;
26
125
 
27
126
  hasNextPage: boolean;
28
127
  }
29
128
 
30
- export namespace RuleGroupGetResponse {
129
+ export namespace RuleGroupGetRuleGroupsResponse {
31
130
  /**
32
131
  * Schema for a get loyalty rule groups response
33
132
  */
@@ -74,6 +173,8 @@ export namespace RuleGroupGetResponse {
74
173
 
75
174
  isRequired: boolean;
76
175
 
176
+ loyaltyBadge: LoyaltyRule.LoyaltyBadge;
177
+
77
178
  loyaltyCurrencyId: string;
78
179
 
79
180
  mediaUrl: string | null;
@@ -82,7 +183,7 @@ export namespace RuleGroupGetResponse {
82
183
 
83
184
  name: string;
84
185
 
85
- rewardType: 'points' | 'multiplier';
186
+ rewardType: 'points' | 'multiplier' | 'badge';
86
187
 
87
188
  startTime: string | null;
88
189
 
@@ -110,6 +211,7 @@ export namespace RuleGroupGetResponse {
110
211
  | 'connected_discord'
111
212
  | 'connected_email'
112
213
  | 'connected_epic'
214
+ | 'connected_github'
113
215
  | 'connected_steam'
114
216
  | 'connected_telegram'
115
217
  | 'connected_twitter'
@@ -139,11 +241,42 @@ export namespace RuleGroupGetResponse {
139
241
  | 'twitter_like'
140
242
  | 'twitter_post_hashtag'
141
243
  | 'quiz'
142
- | 'poll';
244
+ | 'poll'
245
+ | 'steam_wishlist'
246
+ | 'liquidity_uniswap_v2'
247
+ | 'liquidity_uniswap_v3'
248
+ | 'points_airdrop'
249
+ | 'youtube_subscribers'
250
+ | 'youtube_comment'
251
+ | 'shopify_spend'
252
+ | 'swap'
253
+ | 'tiktok_post'
254
+ | 'post_impressions'
255
+ | 'discord_join'
256
+ | 'connected_youtube'
257
+ | 'stratus_function'
258
+ | 'connected_tiktok'
259
+ | 'tiktok_follow'
260
+ | 'github_repo_star';
143
261
  }
144
262
 
145
263
  export namespace LoyaltyRule {
264
+ export interface LoyaltyBadge {
265
+ id: string;
266
+
267
+ description: string | null;
268
+
269
+ imageUrl: string | null;
270
+
271
+ name: string;
272
+ }
273
+
146
274
  export interface Metadata {
275
+ /**
276
+ * Number of tokens per batch.
277
+ */
278
+ batchSize?: number | null;
279
+
147
280
  /**
148
281
  * Text displayed on the action button.
149
282
  */
@@ -167,7 +300,7 @@ export namespace RuleGroupGetResponse {
167
300
  /**
168
301
  * Text to check in the Twitter post, username, or bio.
169
302
  */
170
- checkText?: string | null;
303
+ checkText?: string | Array<string> | null;
171
304
 
172
305
  /**
173
306
  * Array of collections associated with the rule.
@@ -177,7 +310,12 @@ export namespace RuleGroupGetResponse {
177
310
  /**
178
311
  * Conditions for completing the profile.
179
312
  */
180
- completeProfileConditions?: Record<string, boolean> | null;
313
+ completeProfileConditions?: { [key: string]: boolean } | null;
314
+
315
+ /**
316
+ * Description of the external rule condition (only for external rules)
317
+ */
318
+ conditionDescription?: string;
181
319
 
182
320
  /**
183
321
  * Object containing details for the call-to-action.
@@ -189,6 +327,11 @@ export namespace RuleGroupGetResponse {
189
327
  */
190
328
  customRewardsApiKey?: string;
191
329
 
330
+ /**
331
+ * Flag indicating if the rule should use direct RPC to get the balance of tokens.
332
+ */
333
+ directRpc?: boolean;
334
+
192
335
  /**
193
336
  * Array of Discord servers, channels, and roles to join.
194
337
  */
@@ -214,6 +357,11 @@ export namespace RuleGroupGetResponse {
214
357
  */
215
358
  enableVerifiedMultiplier?: boolean;
216
359
 
360
+ /**
361
+ * Type of ERC20 token for the loyalty rule.
362
+ */
363
+ erc20Type?: 'erc20' | 'native';
364
+
217
365
  /**
218
366
  * Fill source of the order for the token sale
219
367
  */
@@ -224,6 +372,11 @@ export namespace RuleGroupGetResponse {
224
372
  */
225
373
  firstReferralReward?: number | null;
226
374
 
375
+ /**
376
+ * URL of the GitHub repository to check for star.
377
+ */
378
+ githubRepoUrl?: string | null;
379
+
227
380
  /**
228
381
  * Flag indicating whether the fill source is included.
229
382
  */
@@ -234,11 +387,6 @@ export namespace RuleGroupGetResponse {
234
387
  */
235
388
  hasNeverSold?: boolean;
236
389
 
237
- /**
238
- * Flag indicating whether the order source is included.
239
- */
240
- hasOrderSource?: boolean;
241
-
242
390
  /**
243
391
  * Indicates if the full royalty has been paid for items.
244
392
  */
@@ -259,11 +407,21 @@ export namespace RuleGroupGetResponse {
259
407
  */
260
408
  imageUrl?: string | null;
261
409
 
410
+ /**
411
+ * If enabled, the first transaction done on the platform will complete this rule
412
+ */
413
+ isCheckInOnEveryTxn?: boolean;
414
+
262
415
  /**
263
416
  * Indicates if the multiplier has been applied to rewards.
264
417
  */
265
418
  isMultiplierApplied?: boolean;
266
419
 
420
+ /**
421
+ * Flag indicating if the rule is restricted to new users.
422
+ */
423
+ isRestrictedToNewUsers?: boolean;
424
+
267
425
  /**
268
426
  * Flag indicating if rewards are applied retroactively.
269
427
  */
@@ -279,6 +437,11 @@ export namespace RuleGroupGetResponse {
279
437
  */
280
438
  link?: string | null;
281
439
 
440
+ /**
441
+ * Liquidity pool details.
442
+ */
443
+ liquidity?: Metadata.Liquidity;
444
+
282
445
  /**
283
446
  * Maximum quantity constraint for token holding.
284
447
  */
@@ -320,14 +483,24 @@ export namespace RuleGroupGetResponse {
320
483
  onlyRewardSingleTokenOwnership?: boolean | null;
321
484
 
322
485
  /**
323
- * Order source of the order for the token sale
486
+ * Promotional code associated with the rule.
324
487
  */
325
- orderSource?: string;
488
+ promoCode?: string;
326
489
 
327
490
  /**
328
- * Promotional code associated with the rule.
491
+ * URL of the CSV file containing promo codes.
329
492
  */
330
- promoCode?: string;
493
+ promoCodeCsvUrl?: string;
494
+
495
+ /**
496
+ * Numbers of the promotional code to be generated.
497
+ */
498
+ promoCodeLength?: number | null;
499
+
500
+ /**
501
+ * Type of the promotional code.
502
+ */
503
+ promoCodeType?: 'code' | 'csv' | 'generate';
331
504
 
332
505
  /**
333
506
  * Array defining ranges and corresponding rewards.
@@ -344,11 +517,62 @@ export namespace RuleGroupGetResponse {
344
517
  */
345
518
  referrerReward?: number | null;
346
519
 
520
+ /**
521
+ * Loyalty currency ID of the referrer reward.
522
+ */
523
+ referrerRewardLoyaltyCurrencyId?: string | null;
524
+
525
+ /**
526
+ * Flag indicating if the post link is required.
527
+ */
528
+ requirePostLink?: boolean | null;
529
+
530
+ /**
531
+ * Flag indicating if media metadata is required.
532
+ */
533
+ requirePostMediaLink?: boolean | null;
534
+
535
+ /**
536
+ * Flag indicating if the rule can also reward badges per range.
537
+ */
538
+ rewardBadgePerRange?: boolean;
539
+
540
+ /**
541
+ * Flag indicating if the reward is rewarded by batch.
542
+ */
543
+ rewardByBatch?: boolean | null;
544
+
545
+ /**
546
+ * Criteria to evaluate the reward.
547
+ */
548
+ rewardCriteria?: 'IMPRESSIONS_COUNT' | 'ELIGIBLE_POST' | null;
549
+
550
+ /**
551
+ * Flag indicating if the reward is rewarded per action.
552
+ */
553
+ rewardPerAction?: boolean | null;
554
+
347
555
  /**
348
556
  * Flag indicating if rewards are given per impression.
349
557
  */
350
558
  rewardPerImpression?: boolean | null;
351
559
 
560
+ /**
561
+ * Flag indicating if the rule should reward based on value of traded tokens
562
+ * instead of count.
563
+ */
564
+ rewardPerValue?: boolean;
565
+
566
+ /**
567
+ * Wallet address of the user can only be used if userId is not provided
568
+ */
569
+ royaltyAddress?: string;
570
+
571
+ /**
572
+ * Royalty percentage of the item.
573
+ */
574
+ royaltyPercentage?: number;
575
+
352
576
  /**
353
577
  * Currency associated with sales.
354
578
  */
@@ -388,6 +612,8 @@ export namespace RuleGroupGetResponse {
388
612
  | 'Twitch'
389
613
  | 'X(Twitter)'
390
614
  | 'YouTube'
615
+ | 'Google'
616
+ | 'GitHub'
391
617
  | null;
392
618
 
393
619
  /**
@@ -400,11 +626,21 @@ export namespace RuleGroupGetResponse {
400
626
  */
401
627
  socialPlatformName?: string | null;
402
628
 
629
+ /**
630
+ * ID of the Steam app.
631
+ */
632
+ steamAppId?: string | null;
633
+
403
634
  /**
404
635
  * Array of streak milestones and corresponding rewards.
405
636
  */
406
637
  streakArray?: Array<Metadata.StreakArray> | null;
407
638
 
639
+ /**
640
+ * Metadata for swap loyalty rules
641
+ */
642
+ swap?: Metadata.Swap;
643
+
408
644
  /**
409
645
  * ID of the Telegram channel.
410
646
  */
@@ -420,6 +656,12 @@ export namespace RuleGroupGetResponse {
420
656
  */
421
657
  trackAllContracts?: boolean | null;
422
658
 
659
+ /**
660
+ * Flag indicating if the progress is tracked. If enabled, the rule can only be
661
+ * completed once the progress is 100%.
662
+ */
663
+ trackProgress?: boolean | null;
664
+
423
665
  /**
424
666
  * URL of the associated Twitter account.
425
667
  */
@@ -463,7 +705,28 @@ export namespace RuleGroupGetResponse {
463
705
  /**
464
706
  * Type of wallet associated with the rule.
465
707
  */
466
- walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | null;
708
+ walletType?:
709
+ | 'evm'
710
+ | 'solana'
711
+ | 'imx'
712
+ | 'sui'
713
+ | 'ton'
714
+ | 'cosmos'
715
+ | 'ultra'
716
+ | 'agw'
717
+ | 'flow_cadence'
718
+ | 'substrate'
719
+ | null;
720
+
721
+ /**
722
+ * ID of the Youtube channel.
723
+ */
724
+ youtubeChannelId?: string | null;
725
+
726
+ /**
727
+ * ID of the Youtube video.
728
+ */
729
+ youtubeVideoId?: string | null;
467
730
  }
468
731
 
469
732
  export namespace Metadata {
@@ -482,13 +745,17 @@ export namespace RuleGroupGetResponse {
482
745
  * Blockchain network of the collection.
483
746
  */
484
747
  network?:
748
+ | 'abstract'
749
+ | 'abstractTestnet'
485
750
  | 'apechain'
486
751
  | 'arbitrum'
487
752
  | 'avalanche'
488
753
  | 'avalancheFuji'
489
754
  | 'base'
490
755
  | 'baseSepolia'
756
+ | 'berachain'
491
757
  | 'berachainArtio'
758
+ | 'berachainBepolia'
492
759
  | 'binance'
493
760
  | 'bscTestnet'
494
761
  | 'campTestnet'
@@ -496,18 +763,30 @@ export namespace RuleGroupGetResponse {
496
763
  | 'fantomTestnet'
497
764
  | 'flowMainnet'
498
765
  | 'mainnet'
766
+ | 'nexusTestnet'
499
767
  | 'optimism'
500
768
  | 'polygon'
501
769
  | 'polygon_mumbai'
502
770
  | 'skaleNebula'
771
+ | 'skaleEuropa'
772
+ | 'skaleCalypso'
503
773
  | 'solana'
504
774
  | 'sophon'
775
+ | 'sophonTestnet'
505
776
  | 'sui'
506
777
  | 'superseed'
507
778
  | 'superseedSepolia'
508
779
  | 'vanar'
509
780
  | 'xai'
510
781
  | 'zksync'
782
+ | 'coti'
783
+ | 'cotiTestnet'
784
+ | 'morph'
785
+ | 'morphTestnet'
786
+ | 'morphHolesky'
787
+ | 'ultra'
788
+ | 'ultraTestnet'
789
+ | 'nitrograph'
511
790
  | 'sepolia'
512
791
  | 'optimism_sepolia'
513
792
  | 'arbitrumSepolia'
@@ -515,7 +794,11 @@ export namespace RuleGroupGetResponse {
515
794
  | 'optimism_goerli'
516
795
  | 'arbitrumGoerli'
517
796
  | 'basecamp'
518
- | 'abstract';
797
+ | 'somnia'
798
+ | 'zkverify'
799
+ | 'polkadot'
800
+ | 'kusama'
801
+ | 'flow_cadence';
519
802
  }
520
803
 
521
804
  /**
@@ -592,6 +875,111 @@ export namespace RuleGroupGetResponse {
592
875
  id: string;
593
876
  }
594
877
 
878
+ /**
879
+ * Liquidity pool details.
880
+ */
881
+ export interface Liquidity {
882
+ /**
883
+ * Calculation type of the liquidity pool.
884
+ */
885
+ calculationType?: 'fixed' | 'custom';
886
+
887
+ /**
888
+ * Custom function to calculate the the reward amount based on the liquidity
889
+ * provided per day. X is the reward amount, Y is the liquidity provided per day in
890
+ * USD.
891
+ */
892
+ customFunction?: string;
893
+
894
+ /**
895
+ * Liquidity provided per day in USD
896
+ */
897
+ liquidityPerDay?: number;
898
+
899
+ /**
900
+ * Blockchain network of the liquidity pool.
901
+ */
902
+ network?:
903
+ | 'abstract'
904
+ | 'abstractTestnet'
905
+ | 'apechain'
906
+ | 'arbitrum'
907
+ | 'avalanche'
908
+ | 'avalancheFuji'
909
+ | 'base'
910
+ | 'baseSepolia'
911
+ | 'berachain'
912
+ | 'berachainArtio'
913
+ | 'berachainBepolia'
914
+ | 'binance'
915
+ | 'bscTestnet'
916
+ | 'campTestnet'
917
+ | 'fantom'
918
+ | 'fantomTestnet'
919
+ | 'flowMainnet'
920
+ | 'mainnet'
921
+ | 'nexusTestnet'
922
+ | 'optimism'
923
+ | 'polygon'
924
+ | 'polygon_mumbai'
925
+ | 'skaleNebula'
926
+ | 'skaleEuropa'
927
+ | 'skaleCalypso'
928
+ | 'solana'
929
+ | 'sophon'
930
+ | 'sophonTestnet'
931
+ | 'sui'
932
+ | 'superseed'
933
+ | 'superseedSepolia'
934
+ | 'vanar'
935
+ | 'xai'
936
+ | 'zksync'
937
+ | 'coti'
938
+ | 'cotiTestnet'
939
+ | 'morph'
940
+ | 'morphTestnet'
941
+ | 'morphHolesky'
942
+ | 'ultra'
943
+ | 'ultraTestnet'
944
+ | 'nitrograph'
945
+ | 'sepolia'
946
+ | 'optimism_sepolia'
947
+ | 'arbitrumSepolia'
948
+ | 'goerli'
949
+ | 'optimism_goerli'
950
+ | 'arbitrumGoerli'
951
+ | 'basecamp'
952
+ | 'somnia'
953
+ | 'zkverify'
954
+ | 'polkadot'
955
+ | 'kusama'
956
+ | 'flow_cadence';
957
+
958
+ /**
959
+ * Indicates if only in-range liquidity is rewarded.
960
+ */
961
+ onlyRewardInRangeLiquidity?: boolean;
962
+
963
+ /**
964
+ * Array of liquidity pools associated with the rule.
965
+ */
966
+ pools?: Array<Liquidity.Pool>;
967
+
968
+ /**
969
+ * Protocol of the liquidity pool.
970
+ */
971
+ protocol?: string;
972
+ }
973
+
974
+ export namespace Liquidity {
975
+ export interface Pool {
976
+ /**
977
+ * Unique identifier of the liquidity pool.
978
+ */
979
+ id: string;
980
+ }
981
+ }
982
+
595
983
  export interface Range {
596
984
  /**
597
985
  * Reward amount for this range.
@@ -607,6 +995,16 @@ export namespace RuleGroupGetResponse {
607
995
  * Start value of the range.
608
996
  */
609
997
  startRange: number;
998
+
999
+ /**
1000
+ * ID of the loyalty badge for this range.
1001
+ */
1002
+ loyaltyBadgeId?: string;
1003
+
1004
+ /**
1005
+ * Amount of the loyalty multiplier for this range.
1006
+ */
1007
+ loyaltyMultiplierAmount?: number;
610
1008
  }
611
1009
 
612
1010
  /**
@@ -659,20 +1057,15 @@ export namespace RuleGroupGetResponse {
659
1057
  * Object containing details of the associated smart contract.
660
1058
  */
661
1059
  export interface SmartContract {
662
- /**
663
- * ABI of the smart contract.
664
- */
665
- abi?: string | null;
666
-
667
1060
  /**
668
1061
  * Mapping of addresses for the smart contract.
669
1062
  */
670
1063
  addressMapping?: string | null;
671
1064
 
672
1065
  /**
673
- * Array of bonus details applied to the rule.
1066
+ * Object containing details of the amount multiplier from the event.
674
1067
  */
675
- bonus?: Array<SmartContract.Bonus> | null;
1068
+ amountMultiplier?: SmartContract.AmountMultiplier | null;
676
1069
 
677
1070
  /**
678
1071
  * ID of the smart contract.
@@ -684,68 +1077,31 @@ export namespace RuleGroupGetResponse {
684
1077
  */
685
1078
  criteria?: 'everyEvent' | 'byParameter' | null;
686
1079
 
687
- /**
688
- * Time range applied to the rule.
689
- */
690
- customRange?: SmartContract.CustomRange | null;
691
-
692
1080
  /**
693
1081
  * Event emitted by the smart contract.
694
1082
  */
695
1083
  event?: string | null;
696
1084
 
697
- /**
698
- * Maximum value allowed for the parameter.
699
- */
700
- max?: number | null;
701
-
702
1085
  /**
703
1086
  * Array of parameters for the smart contract.
704
1087
  */
705
1088
  params?: Array<SmartContract.Param> | null;
706
1089
 
707
1090
  /**
708
- * Flag indicating if a bonus is applied.
1091
+ * Type of the smart contract interaction.
709
1092
  */
710
- withBonus?: boolean | null;
711
-
712
- /**
713
- * Flag indicating if a custom range is applied.
714
- */
715
- withCustomRange?: boolean | null;
716
-
717
- /**
718
- * Flag indicating if a maximum limit is applied.
719
- */
720
- withMax?: boolean | null;
1093
+ type?: 'function' | 'event' | null;
721
1094
  }
722
1095
 
723
1096
  export namespace SmartContract {
724
- export interface Bonus {
725
- /**
726
- * Amount of the bonus.
727
- */
728
- amount?: number | null;
729
-
730
- /**
731
- * Number of times the bonus is applied.
732
- */
733
- count?: number | null;
734
- }
735
-
736
1097
  /**
737
- * Time range applied to the rule.
1098
+ * Object containing details of the amount multiplier from the event.
738
1099
  */
739
- export interface CustomRange {
740
- /**
741
- * End time of the custom range.
742
- */
743
- endsAt?: string | null;
744
-
1100
+ export interface AmountMultiplier {
745
1101
  /**
746
- * Start time of the custom range.
1102
+ * Mapping of the value for the smart contract.
747
1103
  */
748
- startsAt?: string | null;
1104
+ valueMapping?: string | null;
749
1105
  }
750
1106
 
751
1107
  export interface Param {
@@ -789,13 +1145,64 @@ export namespace RuleGroupGetResponse {
789
1145
  */
790
1146
  streakMilestone: number;
791
1147
  }
1148
+
1149
+ /**
1150
+ * Metadata for swap loyalty rules
1151
+ */
1152
+ export interface Swap {
1153
+ provider?: 'any' | 'relay' | 'lifi';
1154
+
1155
+ relayReferrerId?: string;
1156
+
1157
+ requireCrossChainSwap?: boolean;
1158
+
1159
+ swappedToChain?: 'any' | number | string;
1160
+
1161
+ swappedToTokens?: Array<Swap.SwappedToToken>;
1162
+
1163
+ tokenMode?: 'any' | 'specific';
1164
+
1165
+ trackTokenAmount?: boolean;
1166
+ }
1167
+
1168
+ export namespace Swap {
1169
+ export interface SwappedToToken {
1170
+ address: string;
1171
+
1172
+ chainId: string;
1173
+ }
1174
+ }
792
1175
  }
793
1176
  }
794
1177
  }
795
1178
  }
796
1179
  }
797
1180
 
798
- export interface RuleGroupGetParams {
1181
+ export interface RuleGroupUpdateRuleGroupResponse {
1182
+ isCollapsible?: boolean;
1183
+
1184
+ name?: string;
1185
+
1186
+ subTitle?: string;
1187
+ }
1188
+
1189
+ export interface RuleGroupCreateRuleGroupParams {
1190
+ name: string;
1191
+
1192
+ organizationId: string;
1193
+
1194
+ websiteId: string;
1195
+
1196
+ isCollapsible?: boolean;
1197
+
1198
+ isRequired?: boolean;
1199
+
1200
+ sortId?: number;
1201
+
1202
+ subTitle?: string;
1203
+ }
1204
+
1205
+ export interface RuleGroupGetRuleGroupsParams {
799
1206
  excludeHidden?: string;
800
1207
 
801
1208
  limit?: number;
@@ -807,6 +1214,22 @@ export interface RuleGroupGetParams {
807
1214
  websiteId?: string;
808
1215
  }
809
1216
 
1217
+ export interface RuleGroupUpdateRuleGroupParams {
1218
+ isCollapsible?: boolean;
1219
+
1220
+ name?: string | null;
1221
+
1222
+ subtitle?: string | null;
1223
+ }
1224
+
810
1225
  export declare namespace RuleGroups {
811
- export { type RuleGroupGetResponse as RuleGroupGetResponse, type RuleGroupGetParams as RuleGroupGetParams };
1226
+ export {
1227
+ type RuleGroupCreateRuleGroupResponse as RuleGroupCreateRuleGroupResponse,
1228
+ type RuleGroupDeleteRuleGroupResponse as RuleGroupDeleteRuleGroupResponse,
1229
+ type RuleGroupGetRuleGroupsResponse as RuleGroupGetRuleGroupsResponse,
1230
+ type RuleGroupUpdateRuleGroupResponse as RuleGroupUpdateRuleGroupResponse,
1231
+ type RuleGroupCreateRuleGroupParams as RuleGroupCreateRuleGroupParams,
1232
+ type RuleGroupGetRuleGroupsParams as RuleGroupGetRuleGroupsParams,
1233
+ type RuleGroupUpdateRuleGroupParams as RuleGroupUpdateRuleGroupParams,
1234
+ };
812
1235
  }