@snagsolutions/sdk 0.1.0-alpha.19 → 0.1.0-alpha.191

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 +1552 -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 +343 -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 +2630 -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 +279 -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 +1902 -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 -248
  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 +34 -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 +528 -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 +3830 -100
  244. package/src/resources/loyalty/rule-groups.ts +491 -76
  245. package/src/resources/loyalty/rules.ts +2986 -310
  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 +683 -0
  249. package/src/resources/loyalty/transactions.ts +1 -440
  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 +57 -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
 
@@ -139,11 +240,41 @@ export namespace RuleGroupGetResponse {
139
240
  | 'twitter_like'
140
241
  | 'twitter_post_hashtag'
141
242
  | 'quiz'
142
- | 'poll';
243
+ | 'poll'
244
+ | 'steam_wishlist'
245
+ | 'liquidity_uniswap_v2'
246
+ | 'liquidity_uniswap_v3'
247
+ | 'points_airdrop'
248
+ | 'youtube_subscribers'
249
+ | 'youtube_comment'
250
+ | 'shopify_spend'
251
+ | 'swap'
252
+ | 'tiktok_post'
253
+ | 'post_impressions'
254
+ | 'discord_join'
255
+ | 'connected_youtube'
256
+ | 'stratus_function'
257
+ | 'connected_tiktok'
258
+ | 'tiktok_follow';
143
259
  }
144
260
 
145
261
  export namespace LoyaltyRule {
262
+ export interface LoyaltyBadge {
263
+ id: string;
264
+
265
+ description: string | null;
266
+
267
+ imageUrl: string | null;
268
+
269
+ name: string;
270
+ }
271
+
146
272
  export interface Metadata {
273
+ /**
274
+ * Number of tokens per batch.
275
+ */
276
+ batchSize?: number | null;
277
+
147
278
  /**
148
279
  * Text displayed on the action button.
149
280
  */
@@ -167,7 +298,7 @@ export namespace RuleGroupGetResponse {
167
298
  /**
168
299
  * Text to check in the Twitter post, username, or bio.
169
300
  */
170
- checkText?: string | null;
301
+ checkText?: string | Array<string> | null;
171
302
 
172
303
  /**
173
304
  * Array of collections associated with the rule.
@@ -177,7 +308,12 @@ export namespace RuleGroupGetResponse {
177
308
  /**
178
309
  * Conditions for completing the profile.
179
310
  */
180
- completeProfileConditions?: Record<string, boolean> | null;
311
+ completeProfileConditions?: { [key: string]: boolean } | null;
312
+
313
+ /**
314
+ * Description of the external rule condition (only for external rules)
315
+ */
316
+ conditionDescription?: string;
181
317
 
182
318
  /**
183
319
  * Object containing details for the call-to-action.
@@ -189,6 +325,11 @@ export namespace RuleGroupGetResponse {
189
325
  */
190
326
  customRewardsApiKey?: string;
191
327
 
328
+ /**
329
+ * Flag indicating if the rule should use direct RPC to get the balance of tokens.
330
+ */
331
+ directRpc?: boolean;
332
+
192
333
  /**
193
334
  * Array of Discord servers, channels, and roles to join.
194
335
  */
@@ -214,6 +355,11 @@ export namespace RuleGroupGetResponse {
214
355
  */
215
356
  enableVerifiedMultiplier?: boolean;
216
357
 
358
+ /**
359
+ * Type of ERC20 token for the loyalty rule.
360
+ */
361
+ erc20Type?: 'erc20' | 'native';
362
+
217
363
  /**
218
364
  * Fill source of the order for the token sale
219
365
  */
@@ -234,11 +380,6 @@ export namespace RuleGroupGetResponse {
234
380
  */
235
381
  hasNeverSold?: boolean;
236
382
 
237
- /**
238
- * Flag indicating whether the order source is included.
239
- */
240
- hasOrderSource?: boolean;
241
-
242
383
  /**
243
384
  * Indicates if the full royalty has been paid for items.
244
385
  */
@@ -259,11 +400,21 @@ export namespace RuleGroupGetResponse {
259
400
  */
260
401
  imageUrl?: string | null;
261
402
 
403
+ /**
404
+ * If enabled, the first transaction done on the platform will complete this rule
405
+ */
406
+ isCheckInOnEveryTxn?: boolean;
407
+
262
408
  /**
263
409
  * Indicates if the multiplier has been applied to rewards.
264
410
  */
265
411
  isMultiplierApplied?: boolean;
266
412
 
413
+ /**
414
+ * Flag indicating if the rule is restricted to new users.
415
+ */
416
+ isRestrictedToNewUsers?: boolean;
417
+
267
418
  /**
268
419
  * Flag indicating if rewards are applied retroactively.
269
420
  */
@@ -279,6 +430,11 @@ export namespace RuleGroupGetResponse {
279
430
  */
280
431
  link?: string | null;
281
432
 
433
+ /**
434
+ * Liquidity pool details.
435
+ */
436
+ liquidity?: Metadata.Liquidity;
437
+
282
438
  /**
283
439
  * Maximum quantity constraint for token holding.
284
440
  */
@@ -320,14 +476,24 @@ export namespace RuleGroupGetResponse {
320
476
  onlyRewardSingleTokenOwnership?: boolean | null;
321
477
 
322
478
  /**
323
- * Order source of the order for the token sale
479
+ * Promotional code associated with the rule.
324
480
  */
325
- orderSource?: string;
481
+ promoCode?: string;
326
482
 
327
483
  /**
328
- * Promotional code associated with the rule.
484
+ * URL of the CSV file containing promo codes.
329
485
  */
330
- promoCode?: string;
486
+ promoCodeCsvUrl?: string;
487
+
488
+ /**
489
+ * Numbers of the promotional code to be generated.
490
+ */
491
+ promoCodeLength?: number | null;
492
+
493
+ /**
494
+ * Type of the promotional code.
495
+ */
496
+ promoCodeType?: 'code' | 'csv' | 'generate';
331
497
 
332
498
  /**
333
499
  * Array defining ranges and corresponding rewards.
@@ -344,11 +510,62 @@ export namespace RuleGroupGetResponse {
344
510
  */
345
511
  referrerReward?: number | null;
346
512
 
513
+ /**
514
+ * Loyalty currency ID of the referrer reward.
515
+ */
516
+ referrerRewardLoyaltyCurrencyId?: string | null;
517
+
518
+ /**
519
+ * Flag indicating if the post link is required.
520
+ */
521
+ requirePostLink?: boolean | null;
522
+
523
+ /**
524
+ * Flag indicating if media metadata is required.
525
+ */
526
+ requirePostMediaLink?: boolean | null;
527
+
528
+ /**
529
+ * Flag indicating if the rule can also reward badges per range.
530
+ */
531
+ rewardBadgePerRange?: boolean;
532
+
533
+ /**
534
+ * Flag indicating if the reward is rewarded by batch.
535
+ */
536
+ rewardByBatch?: boolean | null;
537
+
538
+ /**
539
+ * Criteria to evaluate the reward.
540
+ */
541
+ rewardCriteria?: 'IMPRESSIONS_COUNT' | 'ELIGIBLE_POST' | null;
542
+
543
+ /**
544
+ * Flag indicating if the reward is rewarded per action.
545
+ */
546
+ rewardPerAction?: boolean | null;
547
+
347
548
  /**
348
549
  * Flag indicating if rewards are given per impression.
349
550
  */
350
551
  rewardPerImpression?: boolean | null;
351
552
 
553
+ /**
554
+ * Flag indicating if the rule should reward based on value of traded tokens
555
+ * instead of count.
556
+ */
557
+ rewardPerValue?: boolean;
558
+
559
+ /**
560
+ * Wallet address of the user can only be used if userId is not provided
561
+ */
562
+ royaltyAddress?: string;
563
+
564
+ /**
565
+ * Royalty percentage of the item.
566
+ */
567
+ royaltyPercentage?: number;
568
+
352
569
  /**
353
570
  * Currency associated with sales.
354
571
  */
@@ -388,6 +605,7 @@ export namespace RuleGroupGetResponse {
388
605
  | 'Twitch'
389
606
  | 'X(Twitter)'
390
607
  | 'YouTube'
608
+ | 'Google'
391
609
  | null;
392
610
 
393
611
  /**
@@ -400,11 +618,21 @@ export namespace RuleGroupGetResponse {
400
618
  */
401
619
  socialPlatformName?: string | null;
402
620
 
621
+ /**
622
+ * ID of the Steam app.
623
+ */
624
+ steamAppId?: string | null;
625
+
403
626
  /**
404
627
  * Array of streak milestones and corresponding rewards.
405
628
  */
406
629
  streakArray?: Array<Metadata.StreakArray> | null;
407
630
 
631
+ /**
632
+ * Metadata for swap loyalty rules
633
+ */
634
+ swap?: Metadata.Swap;
635
+
408
636
  /**
409
637
  * ID of the Telegram channel.
410
638
  */
@@ -420,6 +648,12 @@ export namespace RuleGroupGetResponse {
420
648
  */
421
649
  trackAllContracts?: boolean | null;
422
650
 
651
+ /**
652
+ * Flag indicating if the progress is tracked. If enabled, the rule can only be
653
+ * completed once the progress is 100%.
654
+ */
655
+ trackProgress?: boolean | null;
656
+
423
657
  /**
424
658
  * URL of the associated Twitter account.
425
659
  */
@@ -463,7 +697,28 @@ export namespace RuleGroupGetResponse {
463
697
  /**
464
698
  * Type of wallet associated with the rule.
465
699
  */
466
- walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | null;
700
+ walletType?:
701
+ | 'evm'
702
+ | 'solana'
703
+ | 'imx'
704
+ | 'sui'
705
+ | 'ton'
706
+ | 'cosmos'
707
+ | 'ultra'
708
+ | 'agw'
709
+ | 'flow_cadence'
710
+ | 'substrate'
711
+ | null;
712
+
713
+ /**
714
+ * ID of the Youtube channel.
715
+ */
716
+ youtubeChannelId?: string | null;
717
+
718
+ /**
719
+ * ID of the Youtube video.
720
+ */
721
+ youtubeVideoId?: string | null;
467
722
  }
468
723
 
469
724
  export namespace Metadata {
@@ -482,13 +737,17 @@ export namespace RuleGroupGetResponse {
482
737
  * Blockchain network of the collection.
483
738
  */
484
739
  network?:
740
+ | 'abstract'
741
+ | 'abstractTestnet'
485
742
  | 'apechain'
486
743
  | 'arbitrum'
487
744
  | 'avalanche'
488
745
  | 'avalancheFuji'
489
746
  | 'base'
490
747
  | 'baseSepolia'
748
+ | 'berachain'
491
749
  | 'berachainArtio'
750
+ | 'berachainBepolia'
492
751
  | 'binance'
493
752
  | 'bscTestnet'
494
753
  | 'campTestnet'
@@ -496,18 +755,30 @@ export namespace RuleGroupGetResponse {
496
755
  | 'fantomTestnet'
497
756
  | 'flowMainnet'
498
757
  | 'mainnet'
758
+ | 'nexusTestnet'
499
759
  | 'optimism'
500
760
  | 'polygon'
501
761
  | 'polygon_mumbai'
502
762
  | 'skaleNebula'
763
+ | 'skaleEuropa'
764
+ | 'skaleCalypso'
503
765
  | 'solana'
504
766
  | 'sophon'
767
+ | 'sophonTestnet'
505
768
  | 'sui'
506
769
  | 'superseed'
507
770
  | 'superseedSepolia'
508
771
  | 'vanar'
509
772
  | 'xai'
510
773
  | 'zksync'
774
+ | 'coti'
775
+ | 'cotiTestnet'
776
+ | 'morph'
777
+ | 'morphTestnet'
778
+ | 'morphHolesky'
779
+ | 'ultra'
780
+ | 'ultraTestnet'
781
+ | 'nitrograph'
511
782
  | 'sepolia'
512
783
  | 'optimism_sepolia'
513
784
  | 'arbitrumSepolia'
@@ -515,7 +786,11 @@ export namespace RuleGroupGetResponse {
515
786
  | 'optimism_goerli'
516
787
  | 'arbitrumGoerli'
517
788
  | 'basecamp'
518
- | 'abstract';
789
+ | 'somnia'
790
+ | 'zkverify'
791
+ | 'polkadot'
792
+ | 'kusama'
793
+ | 'flow_cadence';
519
794
  }
520
795
 
521
796
  /**
@@ -592,6 +867,111 @@ export namespace RuleGroupGetResponse {
592
867
  id: string;
593
868
  }
594
869
 
870
+ /**
871
+ * Liquidity pool details.
872
+ */
873
+ export interface Liquidity {
874
+ /**
875
+ * Calculation type of the liquidity pool.
876
+ */
877
+ calculationType?: 'fixed' | 'custom';
878
+
879
+ /**
880
+ * Custom function to calculate the the reward amount based on the liquidity
881
+ * provided per day. X is the reward amount, Y is the liquidity provided per day in
882
+ * USD.
883
+ */
884
+ customFunction?: string;
885
+
886
+ /**
887
+ * Liquidity provided per day in USD
888
+ */
889
+ liquidityPerDay?: number;
890
+
891
+ /**
892
+ * Blockchain network of the liquidity pool.
893
+ */
894
+ network?:
895
+ | 'abstract'
896
+ | 'abstractTestnet'
897
+ | 'apechain'
898
+ | 'arbitrum'
899
+ | 'avalanche'
900
+ | 'avalancheFuji'
901
+ | 'base'
902
+ | 'baseSepolia'
903
+ | 'berachain'
904
+ | 'berachainArtio'
905
+ | 'berachainBepolia'
906
+ | 'binance'
907
+ | 'bscTestnet'
908
+ | 'campTestnet'
909
+ | 'fantom'
910
+ | 'fantomTestnet'
911
+ | 'flowMainnet'
912
+ | 'mainnet'
913
+ | 'nexusTestnet'
914
+ | 'optimism'
915
+ | 'polygon'
916
+ | 'polygon_mumbai'
917
+ | 'skaleNebula'
918
+ | 'skaleEuropa'
919
+ | 'skaleCalypso'
920
+ | 'solana'
921
+ | 'sophon'
922
+ | 'sophonTestnet'
923
+ | 'sui'
924
+ | 'superseed'
925
+ | 'superseedSepolia'
926
+ | 'vanar'
927
+ | 'xai'
928
+ | 'zksync'
929
+ | 'coti'
930
+ | 'cotiTestnet'
931
+ | 'morph'
932
+ | 'morphTestnet'
933
+ | 'morphHolesky'
934
+ | 'ultra'
935
+ | 'ultraTestnet'
936
+ | 'nitrograph'
937
+ | 'sepolia'
938
+ | 'optimism_sepolia'
939
+ | 'arbitrumSepolia'
940
+ | 'goerli'
941
+ | 'optimism_goerli'
942
+ | 'arbitrumGoerli'
943
+ | 'basecamp'
944
+ | 'somnia'
945
+ | 'zkverify'
946
+ | 'polkadot'
947
+ | 'kusama'
948
+ | 'flow_cadence';
949
+
950
+ /**
951
+ * Indicates if only in-range liquidity is rewarded.
952
+ */
953
+ onlyRewardInRangeLiquidity?: boolean;
954
+
955
+ /**
956
+ * Array of liquidity pools associated with the rule.
957
+ */
958
+ pools?: Array<Liquidity.Pool>;
959
+
960
+ /**
961
+ * Protocol of the liquidity pool.
962
+ */
963
+ protocol?: string;
964
+ }
965
+
966
+ export namespace Liquidity {
967
+ export interface Pool {
968
+ /**
969
+ * Unique identifier of the liquidity pool.
970
+ */
971
+ id: string;
972
+ }
973
+ }
974
+
595
975
  export interface Range {
596
976
  /**
597
977
  * Reward amount for this range.
@@ -607,6 +987,16 @@ export namespace RuleGroupGetResponse {
607
987
  * Start value of the range.
608
988
  */
609
989
  startRange: number;
990
+
991
+ /**
992
+ * ID of the loyalty badge for this range.
993
+ */
994
+ loyaltyBadgeId?: string;
995
+
996
+ /**
997
+ * Amount of the loyalty multiplier for this range.
998
+ */
999
+ loyaltyMultiplierAmount?: number;
610
1000
  }
611
1001
 
612
1002
  /**
@@ -659,20 +1049,15 @@ export namespace RuleGroupGetResponse {
659
1049
  * Object containing details of the associated smart contract.
660
1050
  */
661
1051
  export interface SmartContract {
662
- /**
663
- * ABI of the smart contract.
664
- */
665
- abi?: string | null;
666
-
667
1052
  /**
668
1053
  * Mapping of addresses for the smart contract.
669
1054
  */
670
1055
  addressMapping?: string | null;
671
1056
 
672
1057
  /**
673
- * Array of bonus details applied to the rule.
1058
+ * Object containing details of the amount multiplier from the event.
674
1059
  */
675
- bonus?: Array<SmartContract.Bonus> | null;
1060
+ amountMultiplier?: SmartContract.AmountMultiplier | null;
676
1061
 
677
1062
  /**
678
1063
  * ID of the smart contract.
@@ -684,68 +1069,31 @@ export namespace RuleGroupGetResponse {
684
1069
  */
685
1070
  criteria?: 'everyEvent' | 'byParameter' | null;
686
1071
 
687
- /**
688
- * Time range applied to the rule.
689
- */
690
- customRange?: SmartContract.CustomRange | null;
691
-
692
1072
  /**
693
1073
  * Event emitted by the smart contract.
694
1074
  */
695
1075
  event?: string | null;
696
1076
 
697
- /**
698
- * Maximum value allowed for the parameter.
699
- */
700
- max?: number | null;
701
-
702
1077
  /**
703
1078
  * Array of parameters for the smart contract.
704
1079
  */
705
1080
  params?: Array<SmartContract.Param> | null;
706
1081
 
707
1082
  /**
708
- * Flag indicating if a bonus is applied.
709
- */
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.
1083
+ * Type of the smart contract interaction.
719
1084
  */
720
- withMax?: boolean | null;
1085
+ type?: 'function' | 'event' | null;
721
1086
  }
722
1087
 
723
1088
  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
1089
  /**
737
- * Time range applied to the rule.
1090
+ * Object containing details of the amount multiplier from the event.
738
1091
  */
739
- export interface CustomRange {
740
- /**
741
- * End time of the custom range.
742
- */
743
- endsAt?: string | null;
744
-
1092
+ export interface AmountMultiplier {
745
1093
  /**
746
- * Start time of the custom range.
1094
+ * Mapping of the value for the smart contract.
747
1095
  */
748
- startsAt?: string | null;
1096
+ valueMapping?: string | null;
749
1097
  }
750
1098
 
751
1099
  export interface Param {
@@ -789,13 +1137,64 @@ export namespace RuleGroupGetResponse {
789
1137
  */
790
1138
  streakMilestone: number;
791
1139
  }
1140
+
1141
+ /**
1142
+ * Metadata for swap loyalty rules
1143
+ */
1144
+ export interface Swap {
1145
+ provider?: 'any' | 'relay' | 'lifi';
1146
+
1147
+ relayReferrerId?: string;
1148
+
1149
+ requireCrossChainSwap?: boolean;
1150
+
1151
+ swappedToChain?: 'any' | number | string;
1152
+
1153
+ swappedToTokens?: Array<Swap.SwappedToToken>;
1154
+
1155
+ tokenMode?: 'any' | 'specific';
1156
+
1157
+ trackTokenAmount?: boolean;
1158
+ }
1159
+
1160
+ export namespace Swap {
1161
+ export interface SwappedToToken {
1162
+ address: string;
1163
+
1164
+ chainId: string;
1165
+ }
1166
+ }
792
1167
  }
793
1168
  }
794
1169
  }
795
1170
  }
796
1171
  }
797
1172
 
798
- export interface RuleGroupGetParams {
1173
+ export interface RuleGroupUpdateRuleGroupResponse {
1174
+ isCollapsible?: boolean;
1175
+
1176
+ name?: string;
1177
+
1178
+ subTitle?: string;
1179
+ }
1180
+
1181
+ export interface RuleGroupCreateRuleGroupParams {
1182
+ name: string;
1183
+
1184
+ organizationId: string;
1185
+
1186
+ websiteId: string;
1187
+
1188
+ isCollapsible?: boolean;
1189
+
1190
+ isRequired?: boolean;
1191
+
1192
+ sortId?: number;
1193
+
1194
+ subTitle?: string;
1195
+ }
1196
+
1197
+ export interface RuleGroupGetRuleGroupsParams {
799
1198
  excludeHidden?: string;
800
1199
 
801
1200
  limit?: number;
@@ -807,6 +1206,22 @@ export interface RuleGroupGetParams {
807
1206
  websiteId?: string;
808
1207
  }
809
1208
 
1209
+ export interface RuleGroupUpdateRuleGroupParams {
1210
+ isCollapsible?: boolean;
1211
+
1212
+ name?: string | null;
1213
+
1214
+ subtitle?: string | null;
1215
+ }
1216
+
810
1217
  export declare namespace RuleGroups {
811
- export { type RuleGroupGetResponse as RuleGroupGetResponse, type RuleGroupGetParams as RuleGroupGetParams };
1218
+ export {
1219
+ type RuleGroupCreateRuleGroupResponse as RuleGroupCreateRuleGroupResponse,
1220
+ type RuleGroupDeleteRuleGroupResponse as RuleGroupDeleteRuleGroupResponse,
1221
+ type RuleGroupGetRuleGroupsResponse as RuleGroupGetRuleGroupsResponse,
1222
+ type RuleGroupUpdateRuleGroupResponse as RuleGroupUpdateRuleGroupResponse,
1223
+ type RuleGroupCreateRuleGroupParams as RuleGroupCreateRuleGroupParams,
1224
+ type RuleGroupGetRuleGroupsParams as RuleGroupGetRuleGroupsParams,
1225
+ type RuleGroupUpdateRuleGroupParams as RuleGroupUpdateRuleGroupParams,
1226
+ };
812
1227
  }