@snagsolutions/sdk 0.1.0-alpha.16 → 0.1.0-alpha.160
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.
- package/CHANGELOG.md +1328 -0
- package/README.md +13 -23
- package/core.d.ts +19 -5
- package/core.d.ts.map +1 -1
- package/core.js +24 -17
- package/core.js.map +1 -1
- package/core.mjs +24 -17
- package/core.mjs.map +1 -1
- package/index.d.mts +9 -6
- package/index.d.ts +9 -6
- package/index.d.ts.map +1 -1
- package/index.js +8 -4
- package/index.js.map +1 -1
- package/index.mjs +9 -5
- package/index.mjs.map +1 -1
- package/package.json +4 -5
- package/resource.d.ts +1 -1
- package/resource.d.ts.map +1 -1
- package/resource.js.map +1 -1
- package/resource.mjs.map +1 -1
- package/resources/assets.d.ts +16 -2
- package/resources/assets.d.ts.map +1 -1
- package/resources/assets.js +8 -0
- package/resources/assets.js.map +1 -1
- package/resources/assets.mjs +8 -0
- package/resources/assets.mjs.map +1 -1
- package/resources/auctions/auctions.d.ts +285 -0
- package/resources/auctions/auctions.d.ts.map +1 -0
- package/resources/auctions/auctions.js +76 -0
- package/resources/auctions/auctions.js.map +1 -0
- package/resources/auctions/auctions.mjs +49 -0
- package/resources/auctions/auctions.mjs.map +1 -0
- package/resources/auctions/index.d.ts +3 -0
- package/resources/auctions/index.d.ts.map +1 -0
- package/resources/auctions/index.js +9 -0
- package/resources/auctions/index.js.map +1 -0
- package/resources/auctions/index.mjs +4 -0
- package/resources/auctions/index.mjs.map +1 -0
- package/resources/auctions/website-user-attributes/index.d.ts +3 -0
- package/resources/auctions/website-user-attributes/index.d.ts.map +1 -0
- package/resources/auctions/website-user-attributes/index.js +9 -0
- package/resources/auctions/website-user-attributes/index.js.map +1 -0
- package/resources/auctions/website-user-attributes/index.mjs +4 -0
- package/resources/auctions/website-user-attributes/index.mjs.map +1 -0
- package/resources/auctions/website-user-attributes/values.d.ts +76 -0
- package/resources/auctions/website-user-attributes/values.d.ts.map +1 -0
- package/resources/auctions/website-user-attributes/values.js +35 -0
- package/resources/auctions/website-user-attributes/values.js.map +1 -0
- package/resources/auctions/website-user-attributes/values.mjs +31 -0
- package/resources/auctions/website-user-attributes/values.mjs.map +1 -0
- package/resources/auctions/website-user-attributes/website-user-attributes.d.ts +92 -0
- package/resources/auctions/website-user-attributes/website-user-attributes.d.ts.map +1 -0
- package/resources/auctions/website-user-attributes/website-user-attributes.js +69 -0
- package/resources/auctions/website-user-attributes/website-user-attributes.js.map +1 -0
- package/resources/auctions/website-user-attributes/website-user-attributes.mjs +42 -0
- package/resources/auctions/website-user-attributes/website-user-attributes.mjs.map +1 -0
- package/resources/auctions/website-user-attributes.d.ts +2 -0
- package/resources/auctions/website-user-attributes.d.ts.map +1 -0
- package/resources/auctions/website-user-attributes.js +19 -0
- package/resources/auctions/website-user-attributes.js.map +1 -0
- package/resources/auctions/website-user-attributes.mjs +3 -0
- package/resources/auctions/website-user-attributes.mjs.map +1 -0
- package/resources/auctions.d.ts +1 -133
- package/resources/auctions.d.ts.map +1 -1
- package/resources/auctions.js +15 -22
- package/resources/auctions.js.map +1 -1
- package/resources/auctions.mjs +1 -20
- package/resources/auctions.mjs.map +1 -1
- package/resources/auth.d.ts +11 -3
- package/resources/auth.d.ts.map +1 -1
- package/resources/auth.js.map +1 -1
- package/resources/auth.mjs.map +1 -1
- package/resources/index.d.ts +3 -3
- package/resources/index.d.ts.map +1 -1
- package/resources/index.js +1 -1
- package/resources/index.js.map +1 -1
- package/resources/index.mjs +2 -2
- package/resources/index.mjs.map +1 -1
- package/resources/loyalty/account-streaks.d.ts +81 -0
- package/resources/loyalty/account-streaks.d.ts.map +1 -0
- package/resources/loyalty/account-streaks.js +24 -0
- package/resources/loyalty/account-streaks.js.map +1 -0
- package/resources/loyalty/account-streaks.mjs +20 -0
- package/resources/loyalty/account-streaks.mjs.map +1 -0
- package/resources/loyalty/accounts.d.ts +58 -16
- package/resources/loyalty/accounts.d.ts.map +1 -1
- package/resources/loyalty/accounts.js +13 -0
- package/resources/loyalty/accounts.js.map +1 -1
- package/resources/loyalty/accounts.mjs +13 -0
- package/resources/loyalty/accounts.mjs.map +1 -1
- package/resources/loyalty/badges.d.ts +472 -22
- package/resources/loyalty/badges.d.ts.map +1 -1
- package/resources/loyalty/badges.js +19 -1
- package/resources/loyalty/badges.js.map +1 -1
- package/resources/loyalty/badges.mjs +19 -1
- package/resources/loyalty/badges.mjs.map +1 -1
- package/resources/loyalty/currencies.d.ts +19 -0
- package/resources/loyalty/currencies.d.ts.map +1 -1
- package/resources/loyalty/currencies.js +19 -0
- package/resources/loyalty/currencies.js.map +1 -1
- package/resources/loyalty/currencies.mjs +19 -0
- package/resources/loyalty/currencies.mjs.map +1 -1
- package/resources/loyalty/index.d.ts +4 -3
- package/resources/loyalty/index.d.ts.map +1 -1
- package/resources/loyalty/index.js +5 -3
- package/resources/loyalty/index.js.map +1 -1
- package/resources/loyalty/index.mjs +2 -1
- package/resources/loyalty/index.mjs.map +1 -1
- package/resources/loyalty/loyalty.d.ts +10 -6
- package/resources/loyalty/loyalty.d.ts.map +1 -1
- package/resources/loyalty/loyalty.js +6 -2
- package/resources/loyalty/loyalty.js.map +1 -1
- package/resources/loyalty/loyalty.mjs +7 -3
- package/resources/loyalty/loyalty.mjs.map +1 -1
- package/resources/loyalty/multipliers.d.ts +39 -2
- package/resources/loyalty/multipliers.d.ts.map +1 -1
- package/resources/loyalty/multipliers.js +23 -0
- package/resources/loyalty/multipliers.js.map +1 -1
- package/resources/loyalty/multipliers.mjs +23 -0
- package/resources/loyalty/multipliers.mjs.map +1 -1
- package/resources/loyalty/questions-responses.d.ts +39 -0
- package/resources/loyalty/questions-responses.d.ts.map +1 -1
- package/resources/loyalty/questions-responses.js +9 -0
- package/resources/loyalty/questions-responses.js.map +1 -1
- package/resources/loyalty/questions-responses.mjs +9 -0
- package/resources/loyalty/questions-responses.mjs.map +1 -1
- package/resources/loyalty/questions.d.ts +37 -2
- package/resources/loyalty/questions.d.ts.map +1 -1
- package/resources/loyalty/questions.js +31 -0
- package/resources/loyalty/questions.js.map +1 -1
- package/resources/loyalty/questions.mjs +31 -0
- package/resources/loyalty/questions.mjs.map +1 -1
- package/resources/loyalty/rule-edits.d.ts +2610 -4
- package/resources/loyalty/rule-edits.d.ts.map +1 -1
- package/resources/loyalty/rule-edits.js +14 -0
- package/resources/loyalty/rule-edits.js.map +1 -1
- package/resources/loyalty/rule-edits.mjs +14 -0
- package/resources/loyalty/rule-edits.mjs.map +1 -1
- package/resources/loyalty/rule-groups.d.ts +269 -58
- package/resources/loyalty/rule-groups.d.ts.map +1 -1
- package/resources/loyalty/rule-groups.js +36 -0
- package/resources/loyalty/rule-groups.js.map +1 -1
- package/resources/loyalty/rule-groups.mjs +36 -0
- package/resources/loyalty/rule-groups.mjs.map +1 -1
- package/resources/loyalty/rules.d.ts +1848 -265
- package/resources/loyalty/rules.d.ts.map +1 -1
- package/resources/loyalty/rules.js +40 -9
- package/resources/loyalty/rules.js.map +1 -1
- package/resources/loyalty/rules.mjs +40 -9
- package/resources/loyalty/rules.mjs.map +1 -1
- package/resources/loyalty/transactions/index.d.ts +3 -0
- package/resources/loyalty/transactions/index.d.ts.map +1 -0
- package/resources/loyalty/transactions/index.js +9 -0
- package/resources/loyalty/transactions/index.js.map +1 -0
- package/resources/loyalty/transactions/index.mjs +4 -0
- package/resources/loyalty/transactions/index.mjs.map +1 -0
- package/resources/loyalty/transactions/rule-statuses.d.ts +61 -0
- package/resources/loyalty/transactions/rule-statuses.d.ts.map +1 -0
- package/resources/loyalty/transactions/rule-statuses.js +23 -0
- package/resources/loyalty/transactions/rule-statuses.js.map +1 -0
- package/resources/loyalty/transactions/rule-statuses.mjs +19 -0
- package/resources/loyalty/transactions/rule-statuses.mjs.map +1 -0
- package/resources/loyalty/transactions/transactions.d.ts +292 -0
- package/resources/loyalty/transactions/transactions.d.ts.map +1 -0
- package/resources/loyalty/transactions/transactions.js +61 -0
- package/resources/loyalty/transactions/transactions.js.map +1 -0
- package/resources/loyalty/transactions/transactions.mjs +34 -0
- package/resources/loyalty/transactions/transactions.mjs.map +1 -0
- package/resources/loyalty/transactions.d.ts +1 -247
- package/resources/loyalty/transactions.d.ts.map +1 -1
- package/resources/loyalty/transactions.js +15 -18
- package/resources/loyalty/transactions.js.map +1 -1
- package/resources/loyalty/transactions.mjs +1 -16
- package/resources/loyalty/transactions.mjs.map +1 -1
- package/resources/minting.d.ts +5 -5
- package/resources/minting.d.ts.map +1 -1
- package/resources/referral/referral.d.ts +11 -3
- package/resources/referral/referral.d.ts.map +1 -1
- package/resources/referral/referral.js +11 -5
- package/resources/referral/referral.js.map +1 -1
- package/resources/referral/referral.mjs +11 -5
- package/resources/referral/referral.mjs.map +1 -1
- package/resources/referral/users.d.ts +28 -1
- package/resources/referral/users.d.ts.map +1 -1
- package/resources/referral/users.js +14 -0
- package/resources/referral/users.js.map +1 -1
- package/resources/referral/users.mjs +14 -0
- package/resources/referral/users.mjs.map +1 -1
- package/resources/users/index.d.ts +1 -1
- package/resources/users/index.d.ts.map +1 -1
- package/resources/users/index.js.map +1 -1
- package/resources/users/index.mjs.map +1 -1
- package/resources/users/metadatas.d.ts +27 -0
- package/resources/users/metadatas.d.ts.map +1 -1
- package/resources/users/metadatas.js.map +1 -1
- package/resources/users/metadatas.mjs.map +1 -1
- package/resources/users/users.d.ts +144 -6
- package/resources/users/users.d.ts.map +1 -1
- package/resources/users/users.js +53 -1
- package/resources/users/users.js.map +1 -1
- package/resources/users/users.mjs +53 -1
- package/resources/users/users.mjs.map +1 -1
- package/resources/websites/index.d.ts +2 -2
- package/resources/websites/index.d.ts.map +1 -1
- package/resources/websites/index.js.map +1 -1
- package/resources/websites/index.mjs +2 -2
- package/resources/websites/index.mjs.map +1 -1
- package/resources/websites/website-collections.d.ts +0 -69
- package/resources/websites/website-collections.d.ts.map +1 -1
- package/resources/websites/website-collections.js +0 -16
- package/resources/websites/website-collections.js.map +1 -1
- package/resources/websites/website-collections.mjs +0 -16
- package/resources/websites/website-collections.mjs.map +1 -1
- package/resources/websites/website-user-roles.d.ts +23 -0
- package/resources/websites/website-user-roles.d.ts.map +1 -1
- package/resources/websites/website-user-roles.js +23 -0
- package/resources/websites/website-user-roles.js.map +1 -1
- package/resources/websites/website-user-roles.mjs +23 -0
- package/resources/websites/website-user-roles.mjs.map +1 -1
- package/resources/websites/websites.d.ts +8 -98
- package/resources/websites/websites.d.ts.map +1 -1
- package/resources/websites/websites.js +0 -6
- package/resources/websites/websites.js.map +1 -1
- package/resources/websites/websites.mjs +1 -7
- package/resources/websites/websites.mjs.map +1 -1
- package/src/core.ts +39 -16
- package/src/index.ts +30 -11
- package/src/resource.ts +1 -1
- package/src/resources/assets.ts +18 -2
- package/src/resources/auctions/auctions.ts +432 -0
- package/src/resources/auctions/index.ts +16 -0
- package/src/resources/auctions/website-user-attributes/index.ts +10 -0
- package/src/resources/auctions/website-user-attributes/values.ts +97 -0
- package/src/resources/auctions/website-user-attributes/website-user-attributes.ts +137 -0
- package/src/resources/auctions/website-user-attributes.ts +3 -0
- package/src/resources/auctions.ts +1 -207
- package/src/resources/auth.ts +14 -4
- package/src/resources/index.ts +12 -8
- package/src/resources/loyalty/account-streaks.ts +110 -0
- package/src/resources/loyalty/accounts.ts +63 -18
- package/src/resources/loyalty/badges.ts +567 -24
- package/src/resources/loyalty/currencies.ts +19 -0
- package/src/resources/loyalty/index.ts +12 -1
- package/src/resources/loyalty/loyalty.ts +33 -3
- package/src/resources/loyalty/multipliers.ts +43 -4
- package/src/resources/loyalty/questions-responses.ts +45 -0
- package/src/resources/loyalty/questions.ts +38 -2
- package/src/resources/loyalty/rule-edits.ts +3669 -51
- package/src/resources/loyalty/rule-groups.ts +444 -65
- package/src/resources/loyalty/rules.ts +2769 -326
- package/src/resources/loyalty/transactions/index.ts +10 -0
- package/src/resources/loyalty/transactions/rule-statuses.ts +87 -0
- package/src/resources/loyalty/transactions/transactions.ts +520 -0
- package/src/resources/loyalty/transactions.ts +1 -330
- package/src/resources/minting.ts +19 -5
- package/src/resources/referral/referral.ts +13 -11
- package/src/resources/referral/users.ts +33 -2
- package/src/resources/users/index.ts +4 -0
- package/src/resources/users/metadatas.ts +52 -0
- package/src/resources/users/users.ts +192 -5
- package/src/resources/websites/index.ts +2 -13
- package/src/resources/websites/website-collections.ts +1 -145
- package/src/resources/websites/website-user-roles.ts +23 -0
- package/src/resources/websites/websites.ts +8 -134
- package/src/version.ts +1 -1
- package/version.d.ts +1 -1
- package/version.d.ts.map +1 -1
- package/version.js +1 -1
- package/version.js.map +1 -1
- package/version.mjs +1 -1
- package/version.mjs.map +1 -1
|
@@ -3,34 +3,91 @@ 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
|
|
71
|
+
*
|
|
72
|
+
* @example
|
|
73
|
+
* ```ts
|
|
74
|
+
* const response = await client.loyalty.rules.complete(
|
|
75
|
+
* '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
|
|
76
|
+
* );
|
|
77
|
+
* ```
|
|
27
78
|
*/
|
|
28
79
|
complete(id: string, body?: RuleCompleteParams, options?: Core.RequestOptions): Core.APIPromise<RuleCompleteResponse>;
|
|
29
80
|
complete(id: string, options?: Core.RequestOptions): Core.APIPromise<RuleCompleteResponse>;
|
|
30
81
|
/**
|
|
31
82
|
* This will return the processing status of quests for a specific user
|
|
83
|
+
*
|
|
84
|
+
* @example
|
|
85
|
+
* ```ts
|
|
86
|
+
* const response = await client.loyalty.rules.getStatus();
|
|
87
|
+
* ```
|
|
32
88
|
*/
|
|
33
|
-
getStatus(query
|
|
89
|
+
getStatus(query?: RuleGetStatusParams, options?: Core.RequestOptions): Core.APIPromise<RuleGetStatusResponse>;
|
|
90
|
+
getStatus(options?: Core.RequestOptions): Core.APIPromise<RuleGetStatusResponse>;
|
|
34
91
|
}
|
|
35
92
|
export interface RuleCreateResponse {
|
|
36
93
|
id: string;
|
|
@@ -77,7 +134,7 @@ export interface RuleCreateResponse {
|
|
|
77
134
|
/**
|
|
78
135
|
* Type of loyalty rule being created
|
|
79
136
|
*/
|
|
80
|
-
type: 'Bonus' | 'BoughtOn' | 'BoughtWithRoyalties' | 'DiscordMessages' | 'Listing' | 'Lodging' | 'MintOn' | 'PoapClaim' | 'SnagSocialsConnected' | 'SnapshotFullset' | 'SnapshotHold' | 'SoldOn' | 'SoldWithRoyalties' | 'TokenHold' | 'TwitterBio' | 'TwitterHashTagPost' | 'Retweet' | 'check_in' | 'code_entry' | 'connect_wallet' | 'connected_discord' | 'connected_email' | 'connected_epic' | 'connected_steam' | 'connected_telegram' | 'connected_twitter' | 'create_partner_account' | 'discord_member' | 'drip_x_follow' | 'drip_x_new_tweet' | 'drip_x_text_in_bio' | 'drip_x_text_in_comment' | 'drip_x_text_in_name' | 'drip_x_tweet' | 'external_rule' | 'link_click' | 'manual_upload' | 'profile_completed' | 'referred_user' | 'smart_contract_event' | 'snapshot_governance' | 'telegram_join' | 'telegram_messages' | 'text_input' | 'token_hold_erc20' | 'tweet_liked_by_project' | 'twitter_comment' | 'twitter_follow' | 'twitter_followers' | 'twitter_like' | 'twitter_post_hashtag' | 'quiz' | 'poll';
|
|
137
|
+
type: 'Bonus' | 'BoughtOn' | 'BoughtWithRoyalties' | 'DiscordMessages' | 'Listing' | 'Lodging' | 'MintOn' | 'PoapClaim' | 'SnagSocialsConnected' | 'SnapshotFullset' | 'SnapshotHold' | 'SoldOn' | 'SoldWithRoyalties' | 'TokenHold' | 'TwitterBio' | 'TwitterHashTagPost' | 'Retweet' | 'check_in' | 'code_entry' | 'connect_wallet' | 'connected_discord' | 'connected_email' | 'connected_epic' | 'connected_steam' | 'connected_telegram' | 'connected_twitter' | 'create_partner_account' | 'discord_member' | 'drip_x_follow' | 'drip_x_new_tweet' | 'drip_x_text_in_bio' | 'drip_x_text_in_comment' | 'drip_x_text_in_name' | 'drip_x_tweet' | 'external_rule' | 'link_click' | 'manual_upload' | 'profile_completed' | 'referred_user' | 'smart_contract_event' | 'snapshot_governance' | 'telegram_join' | 'telegram_messages' | 'text_input' | 'token_hold_erc20' | 'tweet_liked_by_project' | 'twitter_comment' | 'twitter_follow' | 'twitter_followers' | 'twitter_like' | 'twitter_post_hashtag' | 'quiz' | 'poll' | 'steam_wishlist' | 'liquidity_uniswap_v2' | 'liquidity_uniswap_v3' | 'points_airdrop' | 'youtube_subscribers' | 'youtube_comment' | 'shopify_spend' | 'swap' | 'tiktok_post' | 'post_impressions' | 'discord_join' | 'connected_youtube' | 'connected_tiktok';
|
|
81
138
|
/**
|
|
82
139
|
* Unique identifier for the associated website
|
|
83
140
|
*/
|
|
@@ -86,6 +143,10 @@ export interface RuleCreateResponse {
|
|
|
86
143
|
* URL of the background asset to be displayed
|
|
87
144
|
*/
|
|
88
145
|
backgroundAssetUrl?: string;
|
|
146
|
+
/**
|
|
147
|
+
* The type of claim for the reward
|
|
148
|
+
*/
|
|
149
|
+
claimType?: 'manual' | 'auto' | null;
|
|
89
150
|
/**
|
|
90
151
|
* Blockchain address of the associated collection
|
|
91
152
|
*/
|
|
@@ -106,6 +167,11 @@ export interface RuleCreateResponse {
|
|
|
106
167
|
* Optional detailed description of the rule
|
|
107
168
|
*/
|
|
108
169
|
description?: string;
|
|
170
|
+
duplicatedFromId?: string | null;
|
|
171
|
+
/**
|
|
172
|
+
* ID of the external integration
|
|
173
|
+
*/
|
|
174
|
+
externalIntegrationId?: string | null;
|
|
109
175
|
/**
|
|
110
176
|
* Whether to hide this rule in the user interface
|
|
111
177
|
*/
|
|
@@ -113,15 +179,33 @@ export interface RuleCreateResponse {
|
|
|
113
179
|
/**
|
|
114
180
|
* Interval between rule executions
|
|
115
181
|
*/
|
|
116
|
-
interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | null;
|
|
182
|
+
interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | 'unlimited' | null;
|
|
117
183
|
/**
|
|
118
184
|
* Whether this rule is mandatory
|
|
119
185
|
*/
|
|
120
186
|
isRequired?: boolean;
|
|
187
|
+
/**
|
|
188
|
+
* Unique identifier for the loyalty badge
|
|
189
|
+
*/
|
|
190
|
+
loyaltyBadgeId?: string | null;
|
|
121
191
|
/**
|
|
122
192
|
* Unique identifier for the loyalty rule group
|
|
123
193
|
*/
|
|
124
194
|
loyaltyRuleGroupId?: 'no-section' | (string & {}) | null;
|
|
195
|
+
/**
|
|
196
|
+
* URL for uploading loyalty user allotment via CSV
|
|
197
|
+
*/
|
|
198
|
+
loyaltyUserAllotmentCsvUrl?: string;
|
|
199
|
+
/**
|
|
200
|
+
* The interval for the max amount. Available for the smart contract and external
|
|
201
|
+
* rules.
|
|
202
|
+
*/
|
|
203
|
+
maxAmountInterval?: 'daily' | 'weekly' | 'monthly' | 'lifetime' | null;
|
|
204
|
+
/**
|
|
205
|
+
* The maximum amount of points a user can earn per interval. Available for the
|
|
206
|
+
* smart contract and external rules.
|
|
207
|
+
*/
|
|
208
|
+
maxAmountPerInterval?: number | null;
|
|
125
209
|
/**
|
|
126
210
|
* URL of the media to be displayed
|
|
127
211
|
*/
|
|
@@ -129,25 +213,41 @@ export interface RuleCreateResponse {
|
|
|
129
213
|
/**
|
|
130
214
|
* Blockchain network where the rule will apply
|
|
131
215
|
*/
|
|
132
|
-
network?: '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' | '
|
|
216
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia';
|
|
133
217
|
/**
|
|
134
218
|
* OAuth credentials associated with the rule
|
|
135
219
|
*/
|
|
136
220
|
oauthCredentialsId?: string | null;
|
|
221
|
+
/**
|
|
222
|
+
* The lifetime of the reward
|
|
223
|
+
*/
|
|
224
|
+
rewardLifetime?: 'permanent' | 'dynamic' | null;
|
|
137
225
|
/**
|
|
138
226
|
* Type of reward issued by the rule
|
|
139
227
|
*/
|
|
140
|
-
rewardType?: 'points' | 'multiplier';
|
|
228
|
+
rewardType?: 'points' | 'multiplier' | 'badge';
|
|
229
|
+
/**
|
|
230
|
+
* URL of the Shopify store
|
|
231
|
+
*/
|
|
232
|
+
shopifyStoreUrl?: string | null;
|
|
141
233
|
/**
|
|
142
|
-
*
|
|
234
|
+
* Whether to show this rule before the start time
|
|
143
235
|
*/
|
|
144
|
-
|
|
236
|
+
showBeforeStart?: boolean;
|
|
237
|
+
/**
|
|
238
|
+
* Optional subscription id for the rule
|
|
239
|
+
*/
|
|
240
|
+
subscriptionId?: string | null;
|
|
145
241
|
}
|
|
146
242
|
export declare namespace RuleCreateResponse {
|
|
147
243
|
/**
|
|
148
244
|
* Additional metadata for the loyalty rule
|
|
149
245
|
*/
|
|
150
246
|
interface Metadata {
|
|
247
|
+
/**
|
|
248
|
+
* Number of tokens per batch.
|
|
249
|
+
*/
|
|
250
|
+
batchSize?: number | null;
|
|
151
251
|
/**
|
|
152
252
|
* Text displayed on the action button.
|
|
153
253
|
*/
|
|
@@ -167,7 +267,7 @@ export declare namespace RuleCreateResponse {
|
|
|
167
267
|
/**
|
|
168
268
|
* Text to check in the Twitter post, username, or bio.
|
|
169
269
|
*/
|
|
170
|
-
checkText?: string | null;
|
|
270
|
+
checkText?: string | Array<string> | null;
|
|
171
271
|
/**
|
|
172
272
|
* Array of collections associated with the rule.
|
|
173
273
|
*/
|
|
@@ -175,7 +275,13 @@ export declare namespace RuleCreateResponse {
|
|
|
175
275
|
/**
|
|
176
276
|
* Conditions for completing the profile.
|
|
177
277
|
*/
|
|
178
|
-
completeProfileConditions?:
|
|
278
|
+
completeProfileConditions?: {
|
|
279
|
+
[key: string]: boolean;
|
|
280
|
+
} | null;
|
|
281
|
+
/**
|
|
282
|
+
* Description of the external rule condition (only for external rules)
|
|
283
|
+
*/
|
|
284
|
+
conditionDescription?: string;
|
|
179
285
|
/**
|
|
180
286
|
* Object containing details for the call-to-action.
|
|
181
287
|
*/
|
|
@@ -184,6 +290,10 @@ export declare namespace RuleCreateResponse {
|
|
|
184
290
|
* API key for custom rewards integration.
|
|
185
291
|
*/
|
|
186
292
|
customRewardsApiKey?: string;
|
|
293
|
+
/**
|
|
294
|
+
* Flag indicating if the rule should use direct RPC to get the balance of tokens.
|
|
295
|
+
*/
|
|
296
|
+
directRpc?: boolean;
|
|
187
297
|
/**
|
|
188
298
|
* Array of Discord servers, channels, and roles to join.
|
|
189
299
|
*/
|
|
@@ -220,10 +330,6 @@ export declare namespace RuleCreateResponse {
|
|
|
220
330
|
* Indicates if the item has never been sold.
|
|
221
331
|
*/
|
|
222
332
|
hasNeverSold?: boolean;
|
|
223
|
-
/**
|
|
224
|
-
* Flag indicating whether the order source is included.
|
|
225
|
-
*/
|
|
226
|
-
hasOrderSource?: boolean;
|
|
227
333
|
/**
|
|
228
334
|
* Indicates if the full royalty has been paid for items.
|
|
229
335
|
*/
|
|
@@ -240,10 +346,18 @@ export declare namespace RuleCreateResponse {
|
|
|
240
346
|
* URL of the image associated with the rule.
|
|
241
347
|
*/
|
|
242
348
|
imageUrl?: string | null;
|
|
349
|
+
/**
|
|
350
|
+
* If enabled, the first transaction done on the platform will complete this rule
|
|
351
|
+
*/
|
|
352
|
+
isCheckInOnEveryTxn?: boolean;
|
|
243
353
|
/**
|
|
244
354
|
* Indicates if the multiplier has been applied to rewards.
|
|
245
355
|
*/
|
|
246
356
|
isMultiplierApplied?: boolean;
|
|
357
|
+
/**
|
|
358
|
+
* Flag indicating if the rule is restricted to new users.
|
|
359
|
+
*/
|
|
360
|
+
isRestrictedToNewUsers?: boolean;
|
|
247
361
|
/**
|
|
248
362
|
* Flag indicating if rewards are applied retroactively.
|
|
249
363
|
*/
|
|
@@ -256,6 +370,10 @@ export declare namespace RuleCreateResponse {
|
|
|
256
370
|
* Optional link associated with the metadata.
|
|
257
371
|
*/
|
|
258
372
|
link?: string | null;
|
|
373
|
+
/**
|
|
374
|
+
* Liquidity pool details.
|
|
375
|
+
*/
|
|
376
|
+
liquidity?: Metadata.Liquidity;
|
|
259
377
|
/**
|
|
260
378
|
* Maximum quantity constraint for token holding.
|
|
261
379
|
*/
|
|
@@ -288,14 +406,22 @@ export declare namespace RuleCreateResponse {
|
|
|
288
406
|
* give points for only one token ownership per contract
|
|
289
407
|
*/
|
|
290
408
|
onlyRewardSingleTokenOwnership?: boolean | null;
|
|
291
|
-
/**
|
|
292
|
-
* Order source of the order for the token sale
|
|
293
|
-
*/
|
|
294
|
-
orderSource?: string;
|
|
295
409
|
/**
|
|
296
410
|
* Promotional code associated with the rule.
|
|
297
411
|
*/
|
|
298
412
|
promoCode?: string;
|
|
413
|
+
/**
|
|
414
|
+
* URL of the CSV file containing promo codes.
|
|
415
|
+
*/
|
|
416
|
+
promoCodeCsvUrl?: string;
|
|
417
|
+
/**
|
|
418
|
+
* Numbers of the promotional code to be generated.
|
|
419
|
+
*/
|
|
420
|
+
promoCodeLength?: number | null;
|
|
421
|
+
/**
|
|
422
|
+
* Type of the promotional code.
|
|
423
|
+
*/
|
|
424
|
+
promoCodeType?: 'code' | 'csv' | 'generate';
|
|
299
425
|
/**
|
|
300
426
|
* Array defining ranges and corresponding rewards.
|
|
301
427
|
*/
|
|
@@ -308,10 +434,51 @@ export declare namespace RuleCreateResponse {
|
|
|
308
434
|
* Lump sum reward given to a referrer.
|
|
309
435
|
*/
|
|
310
436
|
referrerReward?: number | null;
|
|
437
|
+
/**
|
|
438
|
+
* Loyalty currency ID of the referrer reward.
|
|
439
|
+
*/
|
|
440
|
+
referrerRewardLoyaltyCurrencyId?: string | null;
|
|
441
|
+
/**
|
|
442
|
+
* Flag indicating if the post link is required.
|
|
443
|
+
*/
|
|
444
|
+
requirePostLink?: boolean | null;
|
|
445
|
+
/**
|
|
446
|
+
* Flag indicating if media metadata is required.
|
|
447
|
+
*/
|
|
448
|
+
requirePostMediaLink?: boolean | null;
|
|
449
|
+
/**
|
|
450
|
+
* Flag indicating if the rule can also reward badges per range.
|
|
451
|
+
*/
|
|
452
|
+
rewardBadgePerRange?: boolean;
|
|
453
|
+
/**
|
|
454
|
+
* Flag indicating if the reward is rewarded by batch.
|
|
455
|
+
*/
|
|
456
|
+
rewardByBatch?: boolean | null;
|
|
457
|
+
/**
|
|
458
|
+
* Criteria to evaluate the reward.
|
|
459
|
+
*/
|
|
460
|
+
rewardCriteria?: 'IMPRESSIONS_COUNT' | 'ELIGIBLE_POST' | null;
|
|
461
|
+
/**
|
|
462
|
+
* Flag indicating if the reward is rewarded per action.
|
|
463
|
+
*/
|
|
464
|
+
rewardPerAction?: boolean | null;
|
|
311
465
|
/**
|
|
312
466
|
* Flag indicating if rewards are given per impression.
|
|
313
467
|
*/
|
|
314
468
|
rewardPerImpression?: boolean | null;
|
|
469
|
+
/**
|
|
470
|
+
* Flag indicating if the rule should reward based on value of traded tokens
|
|
471
|
+
* instead of count.
|
|
472
|
+
*/
|
|
473
|
+
rewardPerValue?: boolean;
|
|
474
|
+
/**
|
|
475
|
+
* Wallet address of the user can only be used if userId is not provided
|
|
476
|
+
*/
|
|
477
|
+
royaltyAddress?: string;
|
|
478
|
+
/**
|
|
479
|
+
* Royalty percentage of the item.
|
|
480
|
+
*/
|
|
481
|
+
royaltyPercentage?: number;
|
|
315
482
|
/**
|
|
316
483
|
* Currency associated with sales.
|
|
317
484
|
*/
|
|
@@ -335,7 +502,7 @@ export declare namespace RuleCreateResponse {
|
|
|
335
502
|
/**
|
|
336
503
|
* Social media platform associated with the rule.
|
|
337
504
|
*/
|
|
338
|
-
socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | null;
|
|
505
|
+
socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | 'Google' | null;
|
|
339
506
|
/**
|
|
340
507
|
* URL of the social platform's logo.
|
|
341
508
|
*/
|
|
@@ -344,10 +511,18 @@ export declare namespace RuleCreateResponse {
|
|
|
344
511
|
* Name of the social platform.
|
|
345
512
|
*/
|
|
346
513
|
socialPlatformName?: string | null;
|
|
514
|
+
/**
|
|
515
|
+
* ID of the Steam app.
|
|
516
|
+
*/
|
|
517
|
+
steamAppId?: string | null;
|
|
347
518
|
/**
|
|
348
519
|
* Array of streak milestones and corresponding rewards.
|
|
349
520
|
*/
|
|
350
521
|
streakArray?: Array<Metadata.StreakArray> | null;
|
|
522
|
+
/**
|
|
523
|
+
* Metadata for swap loyalty rules
|
|
524
|
+
*/
|
|
525
|
+
swap?: Metadata.Swap;
|
|
351
526
|
/**
|
|
352
527
|
* ID of the Telegram channel.
|
|
353
528
|
*/
|
|
@@ -360,6 +535,11 @@ export declare namespace RuleCreateResponse {
|
|
|
360
535
|
* Flag indicating if all contracts are tracked.
|
|
361
536
|
*/
|
|
362
537
|
trackAllContracts?: boolean | null;
|
|
538
|
+
/**
|
|
539
|
+
* Flag indicating if the progress is tracked. If enabled, the rule can only be
|
|
540
|
+
* completed once the progress is 100%.
|
|
541
|
+
*/
|
|
542
|
+
trackProgress?: boolean | null;
|
|
363
543
|
/**
|
|
364
544
|
* URL of the associated Twitter account.
|
|
365
545
|
*/
|
|
@@ -395,7 +575,15 @@ export declare namespace RuleCreateResponse {
|
|
|
395
575
|
/**
|
|
396
576
|
* Type of wallet associated with the rule.
|
|
397
577
|
*/
|
|
398
|
-
walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | null;
|
|
578
|
+
walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | 'cosmos' | 'ultra' | 'agw' | null;
|
|
579
|
+
/**
|
|
580
|
+
* ID of the Youtube channel.
|
|
581
|
+
*/
|
|
582
|
+
youtubeChannelId?: string | null;
|
|
583
|
+
/**
|
|
584
|
+
* ID of the Youtube video.
|
|
585
|
+
*/
|
|
586
|
+
youtubeVideoId?: string | null;
|
|
399
587
|
}
|
|
400
588
|
namespace Metadata {
|
|
401
589
|
interface Collection {
|
|
@@ -410,7 +598,7 @@ export declare namespace RuleCreateResponse {
|
|
|
410
598
|
/**
|
|
411
599
|
* Blockchain network of the collection.
|
|
412
600
|
*/
|
|
413
|
-
network?: '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' | '
|
|
601
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia';
|
|
414
602
|
}
|
|
415
603
|
/**
|
|
416
604
|
* Object containing details for the call-to-action.
|
|
@@ -475,6 +663,49 @@ export declare namespace RuleCreateResponse {
|
|
|
475
663
|
*/
|
|
476
664
|
id: string;
|
|
477
665
|
}
|
|
666
|
+
/**
|
|
667
|
+
* Liquidity pool details.
|
|
668
|
+
*/
|
|
669
|
+
interface Liquidity {
|
|
670
|
+
/**
|
|
671
|
+
* Calculation type of the liquidity pool.
|
|
672
|
+
*/
|
|
673
|
+
calculationType?: 'fixed' | 'custom';
|
|
674
|
+
/**
|
|
675
|
+
* Custom function to calculate the the reward amount based on the liquidity
|
|
676
|
+
* provided per day. X is the reward amount, Y is the liquidity provided per day in
|
|
677
|
+
* USD.
|
|
678
|
+
*/
|
|
679
|
+
customFunction?: string;
|
|
680
|
+
/**
|
|
681
|
+
* Liquidity provided per day in USD
|
|
682
|
+
*/
|
|
683
|
+
liquidityPerDay?: number;
|
|
684
|
+
/**
|
|
685
|
+
* Blockchain network of the liquidity pool.
|
|
686
|
+
*/
|
|
687
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia';
|
|
688
|
+
/**
|
|
689
|
+
* Indicates if only in-range liquidity is rewarded.
|
|
690
|
+
*/
|
|
691
|
+
onlyRewardInRangeLiquidity?: boolean;
|
|
692
|
+
/**
|
|
693
|
+
* Array of liquidity pools associated with the rule.
|
|
694
|
+
*/
|
|
695
|
+
pools?: Array<Liquidity.Pool>;
|
|
696
|
+
/**
|
|
697
|
+
* Protocol of the liquidity pool.
|
|
698
|
+
*/
|
|
699
|
+
protocol?: string;
|
|
700
|
+
}
|
|
701
|
+
namespace Liquidity {
|
|
702
|
+
interface Pool {
|
|
703
|
+
/**
|
|
704
|
+
* Unique identifier of the liquidity pool.
|
|
705
|
+
*/
|
|
706
|
+
id: string;
|
|
707
|
+
}
|
|
708
|
+
}
|
|
478
709
|
interface Range {
|
|
479
710
|
/**
|
|
480
711
|
* Reward amount for this range.
|
|
@@ -488,6 +719,14 @@ export declare namespace RuleCreateResponse {
|
|
|
488
719
|
* Start value of the range.
|
|
489
720
|
*/
|
|
490
721
|
startRange: number;
|
|
722
|
+
/**
|
|
723
|
+
* ID of the loyalty badge for this range.
|
|
724
|
+
*/
|
|
725
|
+
loyaltyBadgeId?: string;
|
|
726
|
+
/**
|
|
727
|
+
* Amount of the loyalty multiplier for this range.
|
|
728
|
+
*/
|
|
729
|
+
loyaltyMultiplierAmount?: number;
|
|
491
730
|
}
|
|
492
731
|
/**
|
|
493
732
|
* Object defining referral requirements.
|
|
@@ -531,18 +770,14 @@ export declare namespace RuleCreateResponse {
|
|
|
531
770
|
* Object containing details of the associated smart contract.
|
|
532
771
|
*/
|
|
533
772
|
interface SmartContract {
|
|
534
|
-
/**
|
|
535
|
-
* ABI of the smart contract.
|
|
536
|
-
*/
|
|
537
|
-
abi?: string | null;
|
|
538
773
|
/**
|
|
539
774
|
* Mapping of addresses for the smart contract.
|
|
540
775
|
*/
|
|
541
776
|
addressMapping?: string | null;
|
|
542
777
|
/**
|
|
543
|
-
*
|
|
778
|
+
* Object containing details of the amount multiplier from the event.
|
|
544
779
|
*/
|
|
545
|
-
|
|
780
|
+
amountMultiplier?: SmartContract.AmountMultiplier | null;
|
|
546
781
|
/**
|
|
547
782
|
* ID of the smart contract.
|
|
548
783
|
*/
|
|
@@ -551,58 +786,28 @@ export declare namespace RuleCreateResponse {
|
|
|
551
786
|
* Criteria to evaluate the smart contract event.
|
|
552
787
|
*/
|
|
553
788
|
criteria?: 'everyEvent' | 'byParameter' | null;
|
|
554
|
-
/**
|
|
555
|
-
* Time range applied to the rule.
|
|
556
|
-
*/
|
|
557
|
-
customRange?: SmartContract.CustomRange | null;
|
|
558
789
|
/**
|
|
559
790
|
* Event emitted by the smart contract.
|
|
560
791
|
*/
|
|
561
792
|
event?: string | null;
|
|
562
|
-
/**
|
|
563
|
-
* Maximum value allowed for the parameter.
|
|
564
|
-
*/
|
|
565
|
-
max?: number | null;
|
|
566
793
|
/**
|
|
567
794
|
* Array of parameters for the smart contract.
|
|
568
795
|
*/
|
|
569
796
|
params?: Array<SmartContract.Param> | null;
|
|
570
797
|
/**
|
|
571
|
-
*
|
|
572
|
-
*/
|
|
573
|
-
withBonus?: boolean | null;
|
|
574
|
-
/**
|
|
575
|
-
* Flag indicating if a custom range is applied.
|
|
798
|
+
* Type of the smart contract interaction.
|
|
576
799
|
*/
|
|
577
|
-
|
|
578
|
-
/**
|
|
579
|
-
* Flag indicating if a maximum limit is applied.
|
|
580
|
-
*/
|
|
581
|
-
withMax?: boolean | null;
|
|
800
|
+
type?: 'function' | 'event' | null;
|
|
582
801
|
}
|
|
583
802
|
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
803
|
/**
|
|
595
|
-
*
|
|
804
|
+
* Object containing details of the amount multiplier from the event.
|
|
596
805
|
*/
|
|
597
|
-
interface
|
|
806
|
+
interface AmountMultiplier {
|
|
598
807
|
/**
|
|
599
|
-
*
|
|
808
|
+
* Mapping of the value for the smart contract.
|
|
600
809
|
*/
|
|
601
|
-
|
|
602
|
-
/**
|
|
603
|
-
* Start time of the custom range.
|
|
604
|
-
*/
|
|
605
|
-
startsAt?: string | null;
|
|
810
|
+
valueMapping?: string | null;
|
|
606
811
|
}
|
|
607
812
|
interface Param {
|
|
608
813
|
/**
|
|
@@ -639,6 +844,24 @@ export declare namespace RuleCreateResponse {
|
|
|
639
844
|
*/
|
|
640
845
|
streakMilestone: number;
|
|
641
846
|
}
|
|
847
|
+
/**
|
|
848
|
+
* Metadata for swap loyalty rules
|
|
849
|
+
*/
|
|
850
|
+
interface Swap {
|
|
851
|
+
provider?: 'any' | 'relay' | 'lifi';
|
|
852
|
+
relayReferrerId?: string;
|
|
853
|
+
requireCrossChainSwap?: boolean;
|
|
854
|
+
swappedToChain?: 'any' | number | string;
|
|
855
|
+
swappedToTokens?: Array<Swap.SwappedToToken>;
|
|
856
|
+
tokenMode?: 'any' | 'specific';
|
|
857
|
+
trackTokenAmount?: boolean;
|
|
858
|
+
}
|
|
859
|
+
namespace Swap {
|
|
860
|
+
interface SwappedToToken {
|
|
861
|
+
address: string;
|
|
862
|
+
chainId: string;
|
|
863
|
+
}
|
|
864
|
+
}
|
|
642
865
|
}
|
|
643
866
|
interface Collection {
|
|
644
867
|
/**
|
|
@@ -648,7 +871,11 @@ export declare namespace RuleCreateResponse {
|
|
|
648
871
|
/**
|
|
649
872
|
* Blockchain network for the collection
|
|
650
873
|
*/
|
|
651
|
-
network: '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' | '
|
|
874
|
+
network: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia';
|
|
875
|
+
/**
|
|
876
|
+
* Symbol of the collection.
|
|
877
|
+
*/
|
|
878
|
+
symbol?: string;
|
|
652
879
|
}
|
|
653
880
|
}
|
|
654
881
|
export interface RuleUpdateResponse {
|
|
@@ -665,6 +892,10 @@ export interface RuleUpdateResponse {
|
|
|
665
892
|
* Name of the loyalty rule
|
|
666
893
|
*/
|
|
667
894
|
name: string;
|
|
895
|
+
/**
|
|
896
|
+
* The type of claim for the reward
|
|
897
|
+
*/
|
|
898
|
+
claimType?: 'manual' | 'auto' | null;
|
|
668
899
|
/**
|
|
669
900
|
* Blockchain address of the associated collection
|
|
670
901
|
*/
|
|
@@ -693,6 +924,10 @@ export interface RuleUpdateResponse {
|
|
|
693
924
|
* Effective start time of the rule
|
|
694
925
|
*/
|
|
695
926
|
effectiveStartTime?: string | null;
|
|
927
|
+
/**
|
|
928
|
+
* ID of the external integration
|
|
929
|
+
*/
|
|
930
|
+
externalIntegrationId?: string | null;
|
|
696
931
|
/**
|
|
697
932
|
* Frequency of the rule execution
|
|
698
933
|
*/
|
|
@@ -704,7 +939,7 @@ export interface RuleUpdateResponse {
|
|
|
704
939
|
/**
|
|
705
940
|
* Time interval for recurring rule execution
|
|
706
941
|
*/
|
|
707
|
-
interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | null;
|
|
942
|
+
interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | 'unlimited' | null;
|
|
708
943
|
/**
|
|
709
944
|
* Whether this rule is required for participation
|
|
710
945
|
*/
|
|
@@ -713,6 +948,16 @@ export interface RuleUpdateResponse {
|
|
|
713
948
|
* ID of the rule group section to associate with the rule
|
|
714
949
|
*/
|
|
715
950
|
loyaltyRuleGroupId?: (string & {}) | 'no-section' | null;
|
|
951
|
+
/**
|
|
952
|
+
* The interval for the max amount. Available for the smart contract and external
|
|
953
|
+
* rules.
|
|
954
|
+
*/
|
|
955
|
+
maxAmountInterval?: 'daily' | 'weekly' | 'monthly' | 'lifetime' | null;
|
|
956
|
+
/**
|
|
957
|
+
* The maximum amount of points a user can earn per interval. Available for the
|
|
958
|
+
* smart contract and external rules.
|
|
959
|
+
*/
|
|
960
|
+
maxAmountPerInterval?: number | null;
|
|
716
961
|
/**
|
|
717
962
|
* URL of the media to be displayed
|
|
718
963
|
*/
|
|
@@ -724,23 +969,35 @@ export interface RuleUpdateResponse {
|
|
|
724
969
|
/**
|
|
725
970
|
* Blockchain network where the rule will apply
|
|
726
971
|
*/
|
|
727
|
-
network?: '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' | '
|
|
972
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia';
|
|
728
973
|
/**
|
|
729
974
|
* ID for associated OAuth credentials
|
|
730
975
|
*/
|
|
731
976
|
oauthCredentialsId?: string | null;
|
|
977
|
+
/**
|
|
978
|
+
* The lifetime of the reward
|
|
979
|
+
*/
|
|
980
|
+
rewardLifetime?: 'permanent' | 'dynamic' | null;
|
|
732
981
|
/**
|
|
733
982
|
* Type of reward issued by this rule
|
|
734
983
|
*/
|
|
735
|
-
rewardType?: 'points' | 'multiplier';
|
|
984
|
+
rewardType?: 'points' | 'multiplier' | 'badge';
|
|
985
|
+
/**
|
|
986
|
+
* URL of the Shopify store
|
|
987
|
+
*/
|
|
988
|
+
shopifyStoreUrl?: string | null;
|
|
989
|
+
/**
|
|
990
|
+
* Whether to show this rule before the start time
|
|
991
|
+
*/
|
|
992
|
+
showBeforeStart?: boolean;
|
|
736
993
|
/**
|
|
737
994
|
* Start time for the loyalty rule
|
|
738
995
|
*/
|
|
739
996
|
startTime?: string | null;
|
|
740
997
|
/**
|
|
741
|
-
* Optional subscription
|
|
998
|
+
* Optional subscription id for the rule
|
|
742
999
|
*/
|
|
743
|
-
|
|
1000
|
+
subscriptionId?: string | null;
|
|
744
1001
|
}
|
|
745
1002
|
export declare namespace RuleUpdateResponse {
|
|
746
1003
|
interface Collection {
|
|
@@ -751,12 +1008,20 @@ export declare namespace RuleUpdateResponse {
|
|
|
751
1008
|
/**
|
|
752
1009
|
* Blockchain network for the collection
|
|
753
1010
|
*/
|
|
754
|
-
network: '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' | '
|
|
1011
|
+
network: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia';
|
|
1012
|
+
/**
|
|
1013
|
+
* Symbol of the collection.
|
|
1014
|
+
*/
|
|
1015
|
+
symbol?: string;
|
|
755
1016
|
}
|
|
756
1017
|
/**
|
|
757
1018
|
* Additional metadata for the loyalty rule
|
|
758
1019
|
*/
|
|
759
1020
|
interface Metadata {
|
|
1021
|
+
/**
|
|
1022
|
+
* Number of tokens per batch.
|
|
1023
|
+
*/
|
|
1024
|
+
batchSize?: number | null;
|
|
760
1025
|
/**
|
|
761
1026
|
* Text displayed on the action button.
|
|
762
1027
|
*/
|
|
@@ -776,7 +1041,7 @@ export declare namespace RuleUpdateResponse {
|
|
|
776
1041
|
/**
|
|
777
1042
|
* Text to check in the Twitter post, username, or bio.
|
|
778
1043
|
*/
|
|
779
|
-
checkText?: string | null;
|
|
1044
|
+
checkText?: string | Array<string> | null;
|
|
780
1045
|
/**
|
|
781
1046
|
* Array of collections associated with the rule.
|
|
782
1047
|
*/
|
|
@@ -784,7 +1049,13 @@ export declare namespace RuleUpdateResponse {
|
|
|
784
1049
|
/**
|
|
785
1050
|
* Conditions for completing the profile.
|
|
786
1051
|
*/
|
|
787
|
-
completeProfileConditions?:
|
|
1052
|
+
completeProfileConditions?: {
|
|
1053
|
+
[key: string]: boolean;
|
|
1054
|
+
} | null;
|
|
1055
|
+
/**
|
|
1056
|
+
* Description of the external rule condition (only for external rules)
|
|
1057
|
+
*/
|
|
1058
|
+
conditionDescription?: string;
|
|
788
1059
|
/**
|
|
789
1060
|
* Object containing details for the call-to-action.
|
|
790
1061
|
*/
|
|
@@ -793,6 +1064,10 @@ export declare namespace RuleUpdateResponse {
|
|
|
793
1064
|
* API key for custom rewards integration.
|
|
794
1065
|
*/
|
|
795
1066
|
customRewardsApiKey?: string;
|
|
1067
|
+
/**
|
|
1068
|
+
* Flag indicating if the rule should use direct RPC to get the balance of tokens.
|
|
1069
|
+
*/
|
|
1070
|
+
directRpc?: boolean;
|
|
796
1071
|
/**
|
|
797
1072
|
* Array of Discord servers, channels, and roles to join.
|
|
798
1073
|
*/
|
|
@@ -829,10 +1104,6 @@ export declare namespace RuleUpdateResponse {
|
|
|
829
1104
|
* Indicates if the item has never been sold.
|
|
830
1105
|
*/
|
|
831
1106
|
hasNeverSold?: boolean;
|
|
832
|
-
/**
|
|
833
|
-
* Flag indicating whether the order source is included.
|
|
834
|
-
*/
|
|
835
|
-
hasOrderSource?: boolean;
|
|
836
1107
|
/**
|
|
837
1108
|
* Indicates if the full royalty has been paid for items.
|
|
838
1109
|
*/
|
|
@@ -849,10 +1120,18 @@ export declare namespace RuleUpdateResponse {
|
|
|
849
1120
|
* URL of the image associated with the rule.
|
|
850
1121
|
*/
|
|
851
1122
|
imageUrl?: string | null;
|
|
1123
|
+
/**
|
|
1124
|
+
* If enabled, the first transaction done on the platform will complete this rule
|
|
1125
|
+
*/
|
|
1126
|
+
isCheckInOnEveryTxn?: boolean;
|
|
852
1127
|
/**
|
|
853
1128
|
* Indicates if the multiplier has been applied to rewards.
|
|
854
1129
|
*/
|
|
855
1130
|
isMultiplierApplied?: boolean;
|
|
1131
|
+
/**
|
|
1132
|
+
* Flag indicating if the rule is restricted to new users.
|
|
1133
|
+
*/
|
|
1134
|
+
isRestrictedToNewUsers?: boolean;
|
|
856
1135
|
/**
|
|
857
1136
|
* Flag indicating if rewards are applied retroactively.
|
|
858
1137
|
*/
|
|
@@ -865,6 +1144,10 @@ export declare namespace RuleUpdateResponse {
|
|
|
865
1144
|
* Optional link associated with the metadata.
|
|
866
1145
|
*/
|
|
867
1146
|
link?: string | null;
|
|
1147
|
+
/**
|
|
1148
|
+
* Liquidity pool details.
|
|
1149
|
+
*/
|
|
1150
|
+
liquidity?: Metadata.Liquidity;
|
|
868
1151
|
/**
|
|
869
1152
|
* Maximum quantity constraint for token holding.
|
|
870
1153
|
*/
|
|
@@ -897,14 +1180,22 @@ export declare namespace RuleUpdateResponse {
|
|
|
897
1180
|
* give points for only one token ownership per contract
|
|
898
1181
|
*/
|
|
899
1182
|
onlyRewardSingleTokenOwnership?: boolean | null;
|
|
900
|
-
/**
|
|
901
|
-
* Order source of the order for the token sale
|
|
902
|
-
*/
|
|
903
|
-
orderSource?: string;
|
|
904
1183
|
/**
|
|
905
1184
|
* Promotional code associated with the rule.
|
|
906
1185
|
*/
|
|
907
1186
|
promoCode?: string;
|
|
1187
|
+
/**
|
|
1188
|
+
* URL of the CSV file containing promo codes.
|
|
1189
|
+
*/
|
|
1190
|
+
promoCodeCsvUrl?: string;
|
|
1191
|
+
/**
|
|
1192
|
+
* Numbers of the promotional code to be generated.
|
|
1193
|
+
*/
|
|
1194
|
+
promoCodeLength?: number | null;
|
|
1195
|
+
/**
|
|
1196
|
+
* Type of the promotional code.
|
|
1197
|
+
*/
|
|
1198
|
+
promoCodeType?: 'code' | 'csv' | 'generate';
|
|
908
1199
|
/**
|
|
909
1200
|
* Array defining ranges and corresponding rewards.
|
|
910
1201
|
*/
|
|
@@ -917,10 +1208,51 @@ export declare namespace RuleUpdateResponse {
|
|
|
917
1208
|
* Lump sum reward given to a referrer.
|
|
918
1209
|
*/
|
|
919
1210
|
referrerReward?: number | null;
|
|
1211
|
+
/**
|
|
1212
|
+
* Loyalty currency ID of the referrer reward.
|
|
1213
|
+
*/
|
|
1214
|
+
referrerRewardLoyaltyCurrencyId?: string | null;
|
|
1215
|
+
/**
|
|
1216
|
+
* Flag indicating if the post link is required.
|
|
1217
|
+
*/
|
|
1218
|
+
requirePostLink?: boolean | null;
|
|
1219
|
+
/**
|
|
1220
|
+
* Flag indicating if media metadata is required.
|
|
1221
|
+
*/
|
|
1222
|
+
requirePostMediaLink?: boolean | null;
|
|
1223
|
+
/**
|
|
1224
|
+
* Flag indicating if the rule can also reward badges per range.
|
|
1225
|
+
*/
|
|
1226
|
+
rewardBadgePerRange?: boolean;
|
|
1227
|
+
/**
|
|
1228
|
+
* Flag indicating if the reward is rewarded by batch.
|
|
1229
|
+
*/
|
|
1230
|
+
rewardByBatch?: boolean | null;
|
|
1231
|
+
/**
|
|
1232
|
+
* Criteria to evaluate the reward.
|
|
1233
|
+
*/
|
|
1234
|
+
rewardCriteria?: 'IMPRESSIONS_COUNT' | 'ELIGIBLE_POST' | null;
|
|
1235
|
+
/**
|
|
1236
|
+
* Flag indicating if the reward is rewarded per action.
|
|
1237
|
+
*/
|
|
1238
|
+
rewardPerAction?: boolean | null;
|
|
920
1239
|
/**
|
|
921
1240
|
* Flag indicating if rewards are given per impression.
|
|
922
1241
|
*/
|
|
923
1242
|
rewardPerImpression?: boolean | null;
|
|
1243
|
+
/**
|
|
1244
|
+
* Flag indicating if the rule should reward based on value of traded tokens
|
|
1245
|
+
* instead of count.
|
|
1246
|
+
*/
|
|
1247
|
+
rewardPerValue?: boolean;
|
|
1248
|
+
/**
|
|
1249
|
+
* Wallet address of the user can only be used if userId is not provided
|
|
1250
|
+
*/
|
|
1251
|
+
royaltyAddress?: string;
|
|
1252
|
+
/**
|
|
1253
|
+
* Royalty percentage of the item.
|
|
1254
|
+
*/
|
|
1255
|
+
royaltyPercentage?: number;
|
|
924
1256
|
/**
|
|
925
1257
|
* Currency associated with sales.
|
|
926
1258
|
*/
|
|
@@ -944,7 +1276,7 @@ export declare namespace RuleUpdateResponse {
|
|
|
944
1276
|
/**
|
|
945
1277
|
* Social media platform associated with the rule.
|
|
946
1278
|
*/
|
|
947
|
-
socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | null;
|
|
1279
|
+
socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | 'Google' | null;
|
|
948
1280
|
/**
|
|
949
1281
|
* URL of the social platform's logo.
|
|
950
1282
|
*/
|
|
@@ -953,10 +1285,18 @@ export declare namespace RuleUpdateResponse {
|
|
|
953
1285
|
* Name of the social platform.
|
|
954
1286
|
*/
|
|
955
1287
|
socialPlatformName?: string | null;
|
|
1288
|
+
/**
|
|
1289
|
+
* ID of the Steam app.
|
|
1290
|
+
*/
|
|
1291
|
+
steamAppId?: string | null;
|
|
956
1292
|
/**
|
|
957
1293
|
* Array of streak milestones and corresponding rewards.
|
|
958
1294
|
*/
|
|
959
1295
|
streakArray?: Array<Metadata.StreakArray> | null;
|
|
1296
|
+
/**
|
|
1297
|
+
* Metadata for swap loyalty rules
|
|
1298
|
+
*/
|
|
1299
|
+
swap?: Metadata.Swap;
|
|
960
1300
|
/**
|
|
961
1301
|
* ID of the Telegram channel.
|
|
962
1302
|
*/
|
|
@@ -969,6 +1309,11 @@ export declare namespace RuleUpdateResponse {
|
|
|
969
1309
|
* Flag indicating if all contracts are tracked.
|
|
970
1310
|
*/
|
|
971
1311
|
trackAllContracts?: boolean | null;
|
|
1312
|
+
/**
|
|
1313
|
+
* Flag indicating if the progress is tracked. If enabled, the rule can only be
|
|
1314
|
+
* completed once the progress is 100%.
|
|
1315
|
+
*/
|
|
1316
|
+
trackProgress?: boolean | null;
|
|
972
1317
|
/**
|
|
973
1318
|
* URL of the associated Twitter account.
|
|
974
1319
|
*/
|
|
@@ -1004,7 +1349,15 @@ export declare namespace RuleUpdateResponse {
|
|
|
1004
1349
|
/**
|
|
1005
1350
|
* Type of wallet associated with the rule.
|
|
1006
1351
|
*/
|
|
1007
|
-
walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | null;
|
|
1352
|
+
walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | 'cosmos' | 'ultra' | 'agw' | null;
|
|
1353
|
+
/**
|
|
1354
|
+
* ID of the Youtube channel.
|
|
1355
|
+
*/
|
|
1356
|
+
youtubeChannelId?: string | null;
|
|
1357
|
+
/**
|
|
1358
|
+
* ID of the Youtube video.
|
|
1359
|
+
*/
|
|
1360
|
+
youtubeVideoId?: string | null;
|
|
1008
1361
|
}
|
|
1009
1362
|
namespace Metadata {
|
|
1010
1363
|
interface Collection {
|
|
@@ -1019,7 +1372,7 @@ export declare namespace RuleUpdateResponse {
|
|
|
1019
1372
|
/**
|
|
1020
1373
|
* Blockchain network of the collection.
|
|
1021
1374
|
*/
|
|
1022
|
-
network?: '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' | '
|
|
1375
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia';
|
|
1023
1376
|
}
|
|
1024
1377
|
/**
|
|
1025
1378
|
* Object containing details for the call-to-action.
|
|
@@ -1084,6 +1437,49 @@ export declare namespace RuleUpdateResponse {
|
|
|
1084
1437
|
*/
|
|
1085
1438
|
id: string;
|
|
1086
1439
|
}
|
|
1440
|
+
/**
|
|
1441
|
+
* Liquidity pool details.
|
|
1442
|
+
*/
|
|
1443
|
+
interface Liquidity {
|
|
1444
|
+
/**
|
|
1445
|
+
* Calculation type of the liquidity pool.
|
|
1446
|
+
*/
|
|
1447
|
+
calculationType?: 'fixed' | 'custom';
|
|
1448
|
+
/**
|
|
1449
|
+
* Custom function to calculate the the reward amount based on the liquidity
|
|
1450
|
+
* provided per day. X is the reward amount, Y is the liquidity provided per day in
|
|
1451
|
+
* USD.
|
|
1452
|
+
*/
|
|
1453
|
+
customFunction?: string;
|
|
1454
|
+
/**
|
|
1455
|
+
* Liquidity provided per day in USD
|
|
1456
|
+
*/
|
|
1457
|
+
liquidityPerDay?: number;
|
|
1458
|
+
/**
|
|
1459
|
+
* Blockchain network of the liquidity pool.
|
|
1460
|
+
*/
|
|
1461
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia';
|
|
1462
|
+
/**
|
|
1463
|
+
* Indicates if only in-range liquidity is rewarded.
|
|
1464
|
+
*/
|
|
1465
|
+
onlyRewardInRangeLiquidity?: boolean;
|
|
1466
|
+
/**
|
|
1467
|
+
* Array of liquidity pools associated with the rule.
|
|
1468
|
+
*/
|
|
1469
|
+
pools?: Array<Liquidity.Pool>;
|
|
1470
|
+
/**
|
|
1471
|
+
* Protocol of the liquidity pool.
|
|
1472
|
+
*/
|
|
1473
|
+
protocol?: string;
|
|
1474
|
+
}
|
|
1475
|
+
namespace Liquidity {
|
|
1476
|
+
interface Pool {
|
|
1477
|
+
/**
|
|
1478
|
+
* Unique identifier of the liquidity pool.
|
|
1479
|
+
*/
|
|
1480
|
+
id: string;
|
|
1481
|
+
}
|
|
1482
|
+
}
|
|
1087
1483
|
interface Range {
|
|
1088
1484
|
/**
|
|
1089
1485
|
* Reward amount for this range.
|
|
@@ -1097,6 +1493,14 @@ export declare namespace RuleUpdateResponse {
|
|
|
1097
1493
|
* Start value of the range.
|
|
1098
1494
|
*/
|
|
1099
1495
|
startRange: number;
|
|
1496
|
+
/**
|
|
1497
|
+
* ID of the loyalty badge for this range.
|
|
1498
|
+
*/
|
|
1499
|
+
loyaltyBadgeId?: string;
|
|
1500
|
+
/**
|
|
1501
|
+
* Amount of the loyalty multiplier for this range.
|
|
1502
|
+
*/
|
|
1503
|
+
loyaltyMultiplierAmount?: number;
|
|
1100
1504
|
}
|
|
1101
1505
|
/**
|
|
1102
1506
|
* Object defining referral requirements.
|
|
@@ -1140,18 +1544,14 @@ export declare namespace RuleUpdateResponse {
|
|
|
1140
1544
|
* Object containing details of the associated smart contract.
|
|
1141
1545
|
*/
|
|
1142
1546
|
interface SmartContract {
|
|
1143
|
-
/**
|
|
1144
|
-
* ABI of the smart contract.
|
|
1145
|
-
*/
|
|
1146
|
-
abi?: string | null;
|
|
1147
1547
|
/**
|
|
1148
1548
|
* Mapping of addresses for the smart contract.
|
|
1149
1549
|
*/
|
|
1150
1550
|
addressMapping?: string | null;
|
|
1151
1551
|
/**
|
|
1152
|
-
*
|
|
1552
|
+
* Object containing details of the amount multiplier from the event.
|
|
1153
1553
|
*/
|
|
1154
|
-
|
|
1554
|
+
amountMultiplier?: SmartContract.AmountMultiplier | null;
|
|
1155
1555
|
/**
|
|
1156
1556
|
* ID of the smart contract.
|
|
1157
1557
|
*/
|
|
@@ -1160,58 +1560,28 @@ export declare namespace RuleUpdateResponse {
|
|
|
1160
1560
|
* Criteria to evaluate the smart contract event.
|
|
1161
1561
|
*/
|
|
1162
1562
|
criteria?: 'everyEvent' | 'byParameter' | null;
|
|
1163
|
-
/**
|
|
1164
|
-
* Time range applied to the rule.
|
|
1165
|
-
*/
|
|
1166
|
-
customRange?: SmartContract.CustomRange | null;
|
|
1167
1563
|
/**
|
|
1168
1564
|
* Event emitted by the smart contract.
|
|
1169
1565
|
*/
|
|
1170
1566
|
event?: string | null;
|
|
1171
|
-
/**
|
|
1172
|
-
* Maximum value allowed for the parameter.
|
|
1173
|
-
*/
|
|
1174
|
-
max?: number | null;
|
|
1175
1567
|
/**
|
|
1176
1568
|
* Array of parameters for the smart contract.
|
|
1177
1569
|
*/
|
|
1178
1570
|
params?: Array<SmartContract.Param> | null;
|
|
1179
1571
|
/**
|
|
1180
|
-
*
|
|
1181
|
-
*/
|
|
1182
|
-
withBonus?: boolean | null;
|
|
1183
|
-
/**
|
|
1184
|
-
* Flag indicating if a custom range is applied.
|
|
1185
|
-
*/
|
|
1186
|
-
withCustomRange?: boolean | null;
|
|
1187
|
-
/**
|
|
1188
|
-
* Flag indicating if a maximum limit is applied.
|
|
1572
|
+
* Type of the smart contract interaction.
|
|
1189
1573
|
*/
|
|
1190
|
-
|
|
1574
|
+
type?: 'function' | 'event' | null;
|
|
1191
1575
|
}
|
|
1192
1576
|
namespace SmartContract {
|
|
1193
|
-
interface Bonus {
|
|
1194
|
-
/**
|
|
1195
|
-
* Amount of the bonus.
|
|
1196
|
-
*/
|
|
1197
|
-
amount?: number | null;
|
|
1198
|
-
/**
|
|
1199
|
-
* Number of times the bonus is applied.
|
|
1200
|
-
*/
|
|
1201
|
-
count?: number | null;
|
|
1202
|
-
}
|
|
1203
1577
|
/**
|
|
1204
|
-
*
|
|
1578
|
+
* Object containing details of the amount multiplier from the event.
|
|
1205
1579
|
*/
|
|
1206
|
-
interface
|
|
1207
|
-
/**
|
|
1208
|
-
* End time of the custom range.
|
|
1209
|
-
*/
|
|
1210
|
-
endsAt?: string | null;
|
|
1580
|
+
interface AmountMultiplier {
|
|
1211
1581
|
/**
|
|
1212
|
-
*
|
|
1582
|
+
* Mapping of the value for the smart contract.
|
|
1213
1583
|
*/
|
|
1214
|
-
|
|
1584
|
+
valueMapping?: string | null;
|
|
1215
1585
|
}
|
|
1216
1586
|
interface Param {
|
|
1217
1587
|
/**
|
|
@@ -1248,6 +1618,24 @@ export declare namespace RuleUpdateResponse {
|
|
|
1248
1618
|
*/
|
|
1249
1619
|
streakMilestone: number;
|
|
1250
1620
|
}
|
|
1621
|
+
/**
|
|
1622
|
+
* Metadata for swap loyalty rules
|
|
1623
|
+
*/
|
|
1624
|
+
interface Swap {
|
|
1625
|
+
provider?: 'any' | 'relay' | 'lifi';
|
|
1626
|
+
relayReferrerId?: string;
|
|
1627
|
+
requireCrossChainSwap?: boolean;
|
|
1628
|
+
swappedToChain?: 'any' | number | string;
|
|
1629
|
+
swappedToTokens?: Array<Swap.SwappedToToken>;
|
|
1630
|
+
tokenMode?: 'any' | 'specific';
|
|
1631
|
+
trackTokenAmount?: boolean;
|
|
1632
|
+
}
|
|
1633
|
+
namespace Swap {
|
|
1634
|
+
interface SwappedToToken {
|
|
1635
|
+
address: string;
|
|
1636
|
+
chainId: string;
|
|
1637
|
+
}
|
|
1638
|
+
}
|
|
1251
1639
|
}
|
|
1252
1640
|
}
|
|
1253
1641
|
export interface RuleListResponse {
|
|
@@ -1255,9 +1643,6 @@ export interface RuleListResponse {
|
|
|
1255
1643
|
hasNextPage: boolean;
|
|
1256
1644
|
}
|
|
1257
1645
|
export declare namespace RuleListResponse {
|
|
1258
|
-
/**
|
|
1259
|
-
* Schema for a loyalty rule
|
|
1260
|
-
*/
|
|
1261
1646
|
interface Data {
|
|
1262
1647
|
/**
|
|
1263
1648
|
* Unique identifier for the loyalty rule
|
|
@@ -1275,14 +1660,38 @@ export declare namespace RuleListResponse {
|
|
|
1275
1660
|
* Timestamp when the loyalty rule was deleted (if applicable)
|
|
1276
1661
|
*/
|
|
1277
1662
|
deletedAt: string | null;
|
|
1663
|
+
/**
|
|
1664
|
+
* Description of the loyalty rule
|
|
1665
|
+
*/
|
|
1666
|
+
description: string;
|
|
1667
|
+
/**
|
|
1668
|
+
* End time of the loyalty rule
|
|
1669
|
+
*/
|
|
1670
|
+
endTime: string;
|
|
1278
1671
|
/**
|
|
1279
1672
|
* Frequency of the loyalty rule
|
|
1280
1673
|
*/
|
|
1281
1674
|
frequency: string;
|
|
1675
|
+
/**
|
|
1676
|
+
* Chains attached to the loyalty rule
|
|
1677
|
+
*/
|
|
1678
|
+
loyaltyRuleChain: Array<Data.LoyaltyRuleChain>;
|
|
1679
|
+
/**
|
|
1680
|
+
* Name of the loyalty rule
|
|
1681
|
+
*/
|
|
1682
|
+
name: string;
|
|
1282
1683
|
/**
|
|
1283
1684
|
* Unique identifier for the organization
|
|
1284
1685
|
*/
|
|
1285
1686
|
organizationId: string;
|
|
1687
|
+
/**
|
|
1688
|
+
* Type of the reward
|
|
1689
|
+
*/
|
|
1690
|
+
rewardType: 'points' | 'multiplier' | 'badge';
|
|
1691
|
+
/**
|
|
1692
|
+
* Start time of the loyalty rule
|
|
1693
|
+
*/
|
|
1694
|
+
startTime: string;
|
|
1286
1695
|
/**
|
|
1287
1696
|
* Type of the loyalty rule
|
|
1288
1697
|
*/
|
|
@@ -1299,18 +1708,727 @@ export declare namespace RuleListResponse {
|
|
|
1299
1708
|
* Optional address of the collection
|
|
1300
1709
|
*/
|
|
1301
1710
|
collectionAddress?: string;
|
|
1711
|
+
/**
|
|
1712
|
+
* URL of the media associated with the loyalty rule
|
|
1713
|
+
*/
|
|
1714
|
+
mediaUrl?: string | null;
|
|
1302
1715
|
/**
|
|
1303
1716
|
* Optional metadata for the loyalty rule
|
|
1304
1717
|
*/
|
|
1305
|
-
metadata?:
|
|
1718
|
+
metadata?: {
|
|
1719
|
+
[key: string]: Data.Metadata;
|
|
1720
|
+
};
|
|
1306
1721
|
}
|
|
1307
|
-
|
|
1308
|
-
|
|
1722
|
+
namespace Data {
|
|
1723
|
+
interface LoyaltyRuleChain {
|
|
1724
|
+
/**
|
|
1725
|
+
* Unique identifier for the rule chain
|
|
1726
|
+
*/
|
|
1727
|
+
id: string;
|
|
1728
|
+
loyaltyConditions: Array<LoyaltyRuleChain.LoyaltyCondition>;
|
|
1729
|
+
/**
|
|
1730
|
+
* Unique identifier for the loyalty rule
|
|
1731
|
+
*/
|
|
1732
|
+
loyaltyRuleId: string;
|
|
1733
|
+
/**
|
|
1734
|
+
* Name of the rule chain
|
|
1735
|
+
*/
|
|
1736
|
+
name: string;
|
|
1737
|
+
}
|
|
1738
|
+
namespace LoyaltyRuleChain {
|
|
1739
|
+
interface LoyaltyCondition {
|
|
1740
|
+
/**
|
|
1741
|
+
* Unique identifier for the condition
|
|
1742
|
+
*/
|
|
1743
|
+
id: string;
|
|
1744
|
+
/**
|
|
1745
|
+
* Amount of the condition
|
|
1746
|
+
*/
|
|
1747
|
+
amount: number | null;
|
|
1748
|
+
association: Array<LoyaltyCondition.Association>;
|
|
1749
|
+
/**
|
|
1750
|
+
* URL of the CSV file
|
|
1751
|
+
*/
|
|
1752
|
+
csvUrl: string | null;
|
|
1753
|
+
/**
|
|
1754
|
+
* Description of the condition
|
|
1755
|
+
*/
|
|
1756
|
+
description: string | null;
|
|
1757
|
+
/**
|
|
1758
|
+
* Number of times the condition must be met
|
|
1759
|
+
*/
|
|
1760
|
+
repeatCount: number | null;
|
|
1761
|
+
/**
|
|
1762
|
+
* Number of times the condition must be met
|
|
1763
|
+
*/
|
|
1764
|
+
requiredCount: number | null;
|
|
1765
|
+
/**
|
|
1766
|
+
* Type of the condition
|
|
1767
|
+
*/
|
|
1768
|
+
type: 'rule' | 'rules' | 'points' | 'section' | 'level' | 'api' | 'badge' | 'badges' | 'csv';
|
|
1769
|
+
}
|
|
1770
|
+
namespace LoyaltyCondition {
|
|
1771
|
+
interface Association {
|
|
1772
|
+
/**
|
|
1773
|
+
* Unique identifier for the association
|
|
1774
|
+
*/
|
|
1775
|
+
id: string;
|
|
1776
|
+
/**
|
|
1777
|
+
* Unique identifier for the loyalty badge
|
|
1778
|
+
*/
|
|
1779
|
+
loyaltyBadgeId: string | null;
|
|
1780
|
+
/**
|
|
1781
|
+
* Unique identifier for the loyalty currency
|
|
1782
|
+
*/
|
|
1783
|
+
loyaltyCurrencyId: string | null;
|
|
1784
|
+
loyaltyRule: Association.LoyaltyRule | null;
|
|
1785
|
+
/**
|
|
1786
|
+
* Unique identifier for the loyalty rule group
|
|
1787
|
+
*/
|
|
1788
|
+
loyaltyRuleGroupId: string | null;
|
|
1789
|
+
/**
|
|
1790
|
+
* Unique identifier for the loyalty rule
|
|
1791
|
+
*/
|
|
1792
|
+
loyaltyRuleId: string | null;
|
|
1793
|
+
}
|
|
1794
|
+
namespace Association {
|
|
1795
|
+
interface LoyaltyRule {
|
|
1796
|
+
/**
|
|
1797
|
+
* Name of the loyalty rule
|
|
1798
|
+
*/
|
|
1799
|
+
name: string;
|
|
1800
|
+
}
|
|
1801
|
+
}
|
|
1802
|
+
}
|
|
1803
|
+
}
|
|
1804
|
+
interface Metadata {
|
|
1805
|
+
/**
|
|
1806
|
+
* Number of tokens per batch.
|
|
1807
|
+
*/
|
|
1808
|
+
batchSize?: number | null;
|
|
1809
|
+
/**
|
|
1810
|
+
* Text displayed on the action button.
|
|
1811
|
+
*/
|
|
1812
|
+
buttonText?: string | null;
|
|
1813
|
+
/**
|
|
1814
|
+
* Flag indicating if commenting is required.
|
|
1815
|
+
*/
|
|
1816
|
+
checkComment?: boolean | null;
|
|
1817
|
+
/**
|
|
1818
|
+
* Flag indicating if liking the post is required.
|
|
1819
|
+
*/
|
|
1820
|
+
checkLike?: boolean | null;
|
|
1821
|
+
/**
|
|
1822
|
+
* Flag indicating if reposting is required.
|
|
1823
|
+
*/
|
|
1824
|
+
checkRepost?: boolean | null;
|
|
1825
|
+
/**
|
|
1826
|
+
* Text to check in the Twitter post, username, or bio.
|
|
1827
|
+
*/
|
|
1828
|
+
checkText?: string | Array<string> | null;
|
|
1829
|
+
/**
|
|
1830
|
+
* Array of collections associated with the rule.
|
|
1831
|
+
*/
|
|
1832
|
+
collection?: Array<Metadata.Collection>;
|
|
1833
|
+
/**
|
|
1834
|
+
* Conditions for completing the profile.
|
|
1835
|
+
*/
|
|
1836
|
+
completeProfileConditions?: {
|
|
1837
|
+
[key: string]: boolean;
|
|
1838
|
+
} | null;
|
|
1839
|
+
/**
|
|
1840
|
+
* Description of the external rule condition (only for external rules)
|
|
1841
|
+
*/
|
|
1842
|
+
conditionDescription?: string;
|
|
1843
|
+
/**
|
|
1844
|
+
* Object containing details for the call-to-action.
|
|
1845
|
+
*/
|
|
1846
|
+
cta?: Metadata.Cta | null;
|
|
1847
|
+
/**
|
|
1848
|
+
* API key for custom rewards integration.
|
|
1849
|
+
*/
|
|
1850
|
+
customRewardsApiKey?: string;
|
|
1851
|
+
/**
|
|
1852
|
+
* Flag indicating if the rule should use direct RPC to get the balance of tokens.
|
|
1853
|
+
*/
|
|
1854
|
+
directRpc?: boolean;
|
|
1855
|
+
/**
|
|
1856
|
+
* Array of Discord servers, channels, and roles to join.
|
|
1857
|
+
*/
|
|
1858
|
+
discordServersToJoin?: Array<Metadata.DiscordServersToJoin> | null;
|
|
1859
|
+
/**
|
|
1860
|
+
* Array of drip quests required to complete the rule.
|
|
1861
|
+
*/
|
|
1862
|
+
dripQuestsToComplete?: Array<Metadata.DripQuestsToComplete> | null;
|
|
1863
|
+
/**
|
|
1864
|
+
* Flag indicating whether joining Discord servers is required.
|
|
1865
|
+
*/
|
|
1866
|
+
enableJoinDiscordServers?: boolean | null;
|
|
1867
|
+
/**
|
|
1868
|
+
* Flag indicating whether streaks are enabled.
|
|
1869
|
+
*/
|
|
1870
|
+
enableStreaks?: boolean | null;
|
|
1871
|
+
/**
|
|
1872
|
+
* Flag indicating whether the verified multiplier is enabled.
|
|
1873
|
+
*/
|
|
1874
|
+
enableVerifiedMultiplier?: boolean;
|
|
1875
|
+
/**
|
|
1876
|
+
* Fill source of the order for the token sale
|
|
1877
|
+
*/
|
|
1878
|
+
fillSource?: string;
|
|
1879
|
+
/**
|
|
1880
|
+
* Percentage reward given to a user for their first referral.
|
|
1881
|
+
*/
|
|
1882
|
+
firstReferralReward?: number | null;
|
|
1883
|
+
/**
|
|
1884
|
+
* Flag indicating whether the fill source is included.
|
|
1885
|
+
*/
|
|
1886
|
+
hasFillSource?: boolean;
|
|
1887
|
+
/**
|
|
1888
|
+
* Indicates if the item has never been sold.
|
|
1889
|
+
*/
|
|
1890
|
+
hasNeverSold?: boolean;
|
|
1891
|
+
/**
|
|
1892
|
+
* Indicates if the full royalty has been paid for items.
|
|
1893
|
+
*/
|
|
1894
|
+
hasPaidFullRoyalty?: boolean;
|
|
1895
|
+
/**
|
|
1896
|
+
* Flag indicating if the sale currency is included.
|
|
1897
|
+
*/
|
|
1898
|
+
hasSaleCurrency?: boolean;
|
|
1899
|
+
/**
|
|
1900
|
+
* Indicates if the user has a verified Twitter account.
|
|
1901
|
+
*/
|
|
1902
|
+
hasVerifiedTwitter?: boolean;
|
|
1903
|
+
/**
|
|
1904
|
+
* URL of the image associated with the rule.
|
|
1905
|
+
*/
|
|
1906
|
+
imageUrl?: string | null;
|
|
1907
|
+
/**
|
|
1908
|
+
* If enabled, the first transaction done on the platform will complete this rule
|
|
1909
|
+
*/
|
|
1910
|
+
isCheckInOnEveryTxn?: boolean;
|
|
1911
|
+
/**
|
|
1912
|
+
* Indicates if the multiplier has been applied to rewards.
|
|
1913
|
+
*/
|
|
1914
|
+
isMultiplierApplied?: boolean;
|
|
1915
|
+
/**
|
|
1916
|
+
* Flag indicating if the rule is restricted to new users.
|
|
1917
|
+
*/
|
|
1918
|
+
isRestrictedToNewUsers?: boolean;
|
|
1919
|
+
/**
|
|
1920
|
+
* Flag indicating if rewards are applied retroactively.
|
|
1921
|
+
*/
|
|
1922
|
+
isRetroactive?: boolean | null;
|
|
1923
|
+
/**
|
|
1924
|
+
* Flag indicating if the token hold multiplier is applied.
|
|
1925
|
+
*/
|
|
1926
|
+
isTokenHoldMultiplier?: boolean;
|
|
1927
|
+
/**
|
|
1928
|
+
* Optional link associated with the metadata.
|
|
1929
|
+
*/
|
|
1930
|
+
link?: string | null;
|
|
1931
|
+
/**
|
|
1932
|
+
* Liquidity pool details.
|
|
1933
|
+
*/
|
|
1934
|
+
liquidity?: Metadata.Liquidity;
|
|
1935
|
+
/**
|
|
1936
|
+
* Maximum quantity constraint for token holding.
|
|
1937
|
+
*/
|
|
1938
|
+
maxQty?: number | null;
|
|
1939
|
+
/**
|
|
1940
|
+
* Minimum quantity constraint for token holding.
|
|
1941
|
+
*/
|
|
1942
|
+
minQty?: number | null;
|
|
1943
|
+
/**
|
|
1944
|
+
* Array of loyalty currency IDs used for multipliers.
|
|
1945
|
+
*/
|
|
1946
|
+
multiplierLoyaltyCurrencyIds?: Array<string> | null;
|
|
1947
|
+
/**
|
|
1948
|
+
* Flag indicating whether to include only known users.
|
|
1949
|
+
*/
|
|
1950
|
+
onlyKnownUsers?: boolean;
|
|
1951
|
+
/**
|
|
1952
|
+
* Flag indicating whether to include only native tokens.
|
|
1953
|
+
*/
|
|
1954
|
+
onlyNative?: boolean;
|
|
1955
|
+
/**
|
|
1956
|
+
* Flag indicating whether to include only non-listed items.
|
|
1957
|
+
*/
|
|
1958
|
+
onlyNonListed?: boolean;
|
|
1959
|
+
/**
|
|
1960
|
+
* Indicates if only existing users are rewarded.
|
|
1961
|
+
*/
|
|
1962
|
+
onlyRewardExistingUser?: boolean;
|
|
1963
|
+
/**
|
|
1964
|
+
* give points for only one token ownership per contract
|
|
1965
|
+
*/
|
|
1966
|
+
onlyRewardSingleTokenOwnership?: boolean | null;
|
|
1967
|
+
/**
|
|
1968
|
+
* Promotional code associated with the rule.
|
|
1969
|
+
*/
|
|
1970
|
+
promoCode?: string;
|
|
1971
|
+
/**
|
|
1972
|
+
* URL of the CSV file containing promo codes.
|
|
1973
|
+
*/
|
|
1974
|
+
promoCodeCsvUrl?: string;
|
|
1975
|
+
/**
|
|
1976
|
+
* Numbers of the promotional code to be generated.
|
|
1977
|
+
*/
|
|
1978
|
+
promoCodeLength?: number | null;
|
|
1979
|
+
/**
|
|
1980
|
+
* Type of the promotional code.
|
|
1981
|
+
*/
|
|
1982
|
+
promoCodeType?: 'code' | 'csv' | 'generate';
|
|
1983
|
+
/**
|
|
1984
|
+
* Array defining ranges and corresponding rewards.
|
|
1985
|
+
*/
|
|
1986
|
+
range?: Array<Metadata.Range>;
|
|
1987
|
+
/**
|
|
1988
|
+
* Object defining referral requirements.
|
|
1989
|
+
*/
|
|
1990
|
+
referralRequirements?: Metadata.ReferralRequirements | null;
|
|
1991
|
+
/**
|
|
1992
|
+
* Lump sum reward given to a referrer.
|
|
1993
|
+
*/
|
|
1994
|
+
referrerReward?: number | null;
|
|
1995
|
+
/**
|
|
1996
|
+
* Loyalty currency ID of the referrer reward.
|
|
1997
|
+
*/
|
|
1998
|
+
referrerRewardLoyaltyCurrencyId?: string | null;
|
|
1999
|
+
/**
|
|
2000
|
+
* Flag indicating if the post link is required.
|
|
2001
|
+
*/
|
|
2002
|
+
requirePostLink?: boolean | null;
|
|
2003
|
+
/**
|
|
2004
|
+
* Flag indicating if media metadata is required.
|
|
2005
|
+
*/
|
|
2006
|
+
requirePostMediaLink?: boolean | null;
|
|
2007
|
+
/**
|
|
2008
|
+
* Flag indicating if the rule can also reward badges per range.
|
|
2009
|
+
*/
|
|
2010
|
+
rewardBadgePerRange?: boolean;
|
|
2011
|
+
/**
|
|
2012
|
+
* Flag indicating if the reward is rewarded by batch.
|
|
2013
|
+
*/
|
|
2014
|
+
rewardByBatch?: boolean | null;
|
|
2015
|
+
/**
|
|
2016
|
+
* Criteria to evaluate the reward.
|
|
2017
|
+
*/
|
|
2018
|
+
rewardCriteria?: 'IMPRESSIONS_COUNT' | 'ELIGIBLE_POST' | null;
|
|
2019
|
+
/**
|
|
2020
|
+
* Flag indicating if the reward is rewarded per action.
|
|
2021
|
+
*/
|
|
2022
|
+
rewardPerAction?: boolean | null;
|
|
2023
|
+
/**
|
|
2024
|
+
* Flag indicating if rewards are given per impression.
|
|
2025
|
+
*/
|
|
2026
|
+
rewardPerImpression?: boolean | null;
|
|
2027
|
+
/**
|
|
2028
|
+
* Flag indicating if the rule should reward based on value of traded tokens
|
|
2029
|
+
* instead of count.
|
|
2030
|
+
*/
|
|
2031
|
+
rewardPerValue?: boolean;
|
|
2032
|
+
/**
|
|
2033
|
+
* Wallet address of the user can only be used if userId is not provided
|
|
2034
|
+
*/
|
|
2035
|
+
royaltyAddress?: string;
|
|
2036
|
+
/**
|
|
2037
|
+
* Royalty percentage of the item.
|
|
2038
|
+
*/
|
|
2039
|
+
royaltyPercentage?: number;
|
|
2040
|
+
/**
|
|
2041
|
+
* Currency associated with sales.
|
|
2042
|
+
*/
|
|
2043
|
+
saleCurrency?: string;
|
|
2044
|
+
/**
|
|
2045
|
+
* Percentage reward given for a second-level referral.
|
|
2046
|
+
*/
|
|
2047
|
+
secondReferralReward?: number | null;
|
|
2048
|
+
/**
|
|
2049
|
+
* Flag indicating if the multiplier is skipped.
|
|
2050
|
+
*/
|
|
2051
|
+
skipMultiplier?: boolean | null;
|
|
2052
|
+
/**
|
|
2053
|
+
* Object containing details of the associated smart contract.
|
|
2054
|
+
*/
|
|
2055
|
+
smartContract?: Metadata.SmartContract;
|
|
2056
|
+
/**
|
|
2057
|
+
* Array of snapshot proposals for the rule.
|
|
2058
|
+
*/
|
|
2059
|
+
snapshotProposals?: Array<Metadata.SnapshotProposal> | null;
|
|
2060
|
+
/**
|
|
2061
|
+
* Social media platform associated with the rule.
|
|
2062
|
+
*/
|
|
2063
|
+
socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | 'Google' | null;
|
|
2064
|
+
/**
|
|
2065
|
+
* URL of the social platform's logo.
|
|
2066
|
+
*/
|
|
2067
|
+
socialPlatformLogo?: string | null;
|
|
2068
|
+
/**
|
|
2069
|
+
* Name of the social platform.
|
|
2070
|
+
*/
|
|
2071
|
+
socialPlatformName?: string | null;
|
|
2072
|
+
/**
|
|
2073
|
+
* ID of the Steam app.
|
|
2074
|
+
*/
|
|
2075
|
+
steamAppId?: string | null;
|
|
2076
|
+
/**
|
|
2077
|
+
* Array of streak milestones and corresponding rewards.
|
|
2078
|
+
*/
|
|
2079
|
+
streakArray?: Array<Metadata.StreakArray> | null;
|
|
2080
|
+
/**
|
|
2081
|
+
* Metadata for swap loyalty rules
|
|
2082
|
+
*/
|
|
2083
|
+
swap?: Metadata.Swap;
|
|
2084
|
+
/**
|
|
2085
|
+
* ID of the Telegram channel.
|
|
2086
|
+
*/
|
|
2087
|
+
telegramChannelId?: string | null;
|
|
2088
|
+
/**
|
|
2089
|
+
* Time delay in seconds to verify actions.
|
|
2090
|
+
*/
|
|
2091
|
+
timeDelayToVerifySeconds?: string | number | null;
|
|
2092
|
+
/**
|
|
2093
|
+
* Flag indicating if all contracts are tracked.
|
|
2094
|
+
*/
|
|
2095
|
+
trackAllContracts?: boolean | null;
|
|
2096
|
+
/**
|
|
2097
|
+
* Flag indicating if the progress is tracked. If enabled, the rule can only be
|
|
2098
|
+
* completed once the progress is 100%.
|
|
2099
|
+
*/
|
|
2100
|
+
trackProgress?: boolean | null;
|
|
2101
|
+
/**
|
|
2102
|
+
* URL of the associated Twitter account.
|
|
2103
|
+
*/
|
|
2104
|
+
twitterAccountUrl?: string;
|
|
2105
|
+
/**
|
|
2106
|
+
* Hashtag associated with the Twitter post.
|
|
2107
|
+
*/
|
|
2108
|
+
twitterHashtag?: string;
|
|
2109
|
+
/**
|
|
2110
|
+
* URL of the associated Twitter post.
|
|
2111
|
+
*/
|
|
2112
|
+
twitterPostUrl?: string;
|
|
2113
|
+
/**
|
|
2114
|
+
* Unique identifier of the Twitter user.
|
|
2115
|
+
*/
|
|
2116
|
+
twitterUserId?: string;
|
|
2117
|
+
/**
|
|
2118
|
+
* Twitter username of the user.
|
|
2119
|
+
*/
|
|
2120
|
+
twitterUsername?: string;
|
|
2121
|
+
/**
|
|
2122
|
+
* Minimum length of the verification text.
|
|
2123
|
+
*/
|
|
2124
|
+
verificationTextMinimumLength?: number | null;
|
|
2125
|
+
/**
|
|
2126
|
+
* Multiplier applied to rewards for verified users.
|
|
2127
|
+
*/
|
|
2128
|
+
verifiedMultiplier?: number | null;
|
|
2129
|
+
/**
|
|
2130
|
+
* Placeholder text for verification input fields.
|
|
2131
|
+
*/
|
|
2132
|
+
verifyPlaceHolderText?: string | null;
|
|
2133
|
+
/**
|
|
2134
|
+
* Type of wallet associated with the rule.
|
|
2135
|
+
*/
|
|
2136
|
+
walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | 'cosmos' | 'ultra' | 'agw' | null;
|
|
2137
|
+
/**
|
|
2138
|
+
* ID of the Youtube channel.
|
|
2139
|
+
*/
|
|
2140
|
+
youtubeChannelId?: string | null;
|
|
2141
|
+
/**
|
|
2142
|
+
* ID of the Youtube video.
|
|
2143
|
+
*/
|
|
2144
|
+
youtubeVideoId?: string | null;
|
|
2145
|
+
}
|
|
2146
|
+
namespace Metadata {
|
|
2147
|
+
interface Collection {
|
|
2148
|
+
/**
|
|
2149
|
+
* Blockchain address of the collection.
|
|
2150
|
+
*/
|
|
2151
|
+
address?: string;
|
|
2152
|
+
/**
|
|
2153
|
+
* Multiplier applied to the rewards for this collection.
|
|
2154
|
+
*/
|
|
2155
|
+
multiplier?: number;
|
|
2156
|
+
/**
|
|
2157
|
+
* Blockchain network of the collection.
|
|
2158
|
+
*/
|
|
2159
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia';
|
|
2160
|
+
}
|
|
2161
|
+
/**
|
|
2162
|
+
* Object containing details for the call-to-action.
|
|
2163
|
+
*/
|
|
2164
|
+
interface Cta {
|
|
2165
|
+
/**
|
|
2166
|
+
* Link for the call-to-action.
|
|
2167
|
+
*/
|
|
2168
|
+
href?: string | null;
|
|
2169
|
+
/**
|
|
2170
|
+
* Label for the call-to-action.
|
|
2171
|
+
*/
|
|
2172
|
+
label?: string | null;
|
|
2173
|
+
}
|
|
2174
|
+
interface DiscordServersToJoin {
|
|
2175
|
+
/**
|
|
2176
|
+
* ID of the Discord server to join.
|
|
2177
|
+
*/
|
|
2178
|
+
id?: string;
|
|
2179
|
+
/**
|
|
2180
|
+
* Array of Discord channels to join.
|
|
2181
|
+
*/
|
|
2182
|
+
channels?: Array<DiscordServersToJoin.Channel>;
|
|
2183
|
+
/**
|
|
2184
|
+
* Array of roles to assign in the Discord server.
|
|
2185
|
+
*/
|
|
2186
|
+
roles?: Array<DiscordServersToJoin.Role>;
|
|
2187
|
+
}
|
|
2188
|
+
namespace DiscordServersToJoin {
|
|
2189
|
+
interface Channel {
|
|
2190
|
+
/**
|
|
2191
|
+
* ID of the Discord channel.
|
|
2192
|
+
*/
|
|
2193
|
+
id?: string;
|
|
2194
|
+
/**
|
|
2195
|
+
* Array of emojis used in the channel.
|
|
2196
|
+
*/
|
|
2197
|
+
emojis?: Array<Channel.Emoji>;
|
|
2198
|
+
/**
|
|
2199
|
+
* Phrase of text to be present in the discord message
|
|
2200
|
+
*/
|
|
2201
|
+
text?: string;
|
|
2202
|
+
}
|
|
2203
|
+
namespace Channel {
|
|
2204
|
+
interface Emoji {
|
|
2205
|
+
/**
|
|
2206
|
+
* ID of the emoji used in the channel.
|
|
2207
|
+
*/
|
|
2208
|
+
id?: string;
|
|
2209
|
+
}
|
|
2210
|
+
}
|
|
2211
|
+
interface Role {
|
|
2212
|
+
/**
|
|
2213
|
+
* ID of the role in the Discord server.
|
|
2214
|
+
*/
|
|
2215
|
+
id: string;
|
|
2216
|
+
}
|
|
2217
|
+
}
|
|
2218
|
+
interface DripQuestsToComplete {
|
|
2219
|
+
/**
|
|
2220
|
+
* ID of the drip quest to complete.
|
|
2221
|
+
*/
|
|
2222
|
+
id: string;
|
|
2223
|
+
}
|
|
2224
|
+
/**
|
|
2225
|
+
* Liquidity pool details.
|
|
2226
|
+
*/
|
|
2227
|
+
interface Liquidity {
|
|
2228
|
+
/**
|
|
2229
|
+
* Calculation type of the liquidity pool.
|
|
2230
|
+
*/
|
|
2231
|
+
calculationType?: 'fixed' | 'custom';
|
|
2232
|
+
/**
|
|
2233
|
+
* Custom function to calculate the the reward amount based on the liquidity
|
|
2234
|
+
* provided per day. X is the reward amount, Y is the liquidity provided per day in
|
|
2235
|
+
* USD.
|
|
2236
|
+
*/
|
|
2237
|
+
customFunction?: string;
|
|
2238
|
+
/**
|
|
2239
|
+
* Liquidity provided per day in USD
|
|
2240
|
+
*/
|
|
2241
|
+
liquidityPerDay?: number;
|
|
2242
|
+
/**
|
|
2243
|
+
* Blockchain network of the liquidity pool.
|
|
2244
|
+
*/
|
|
2245
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia';
|
|
2246
|
+
/**
|
|
2247
|
+
* Indicates if only in-range liquidity is rewarded.
|
|
2248
|
+
*/
|
|
2249
|
+
onlyRewardInRangeLiquidity?: boolean;
|
|
2250
|
+
/**
|
|
2251
|
+
* Array of liquidity pools associated with the rule.
|
|
2252
|
+
*/
|
|
2253
|
+
pools?: Array<Liquidity.Pool>;
|
|
2254
|
+
/**
|
|
2255
|
+
* Protocol of the liquidity pool.
|
|
2256
|
+
*/
|
|
2257
|
+
protocol?: string;
|
|
2258
|
+
}
|
|
2259
|
+
namespace Liquidity {
|
|
2260
|
+
interface Pool {
|
|
2261
|
+
/**
|
|
2262
|
+
* Unique identifier of the liquidity pool.
|
|
2263
|
+
*/
|
|
2264
|
+
id: string;
|
|
2265
|
+
}
|
|
2266
|
+
}
|
|
2267
|
+
interface Range {
|
|
2268
|
+
/**
|
|
2269
|
+
* Reward amount for this range.
|
|
2270
|
+
*/
|
|
2271
|
+
amount: number;
|
|
2272
|
+
/**
|
|
2273
|
+
* End value of the range.
|
|
2274
|
+
*/
|
|
2275
|
+
endRange: number;
|
|
2276
|
+
/**
|
|
2277
|
+
* Start value of the range.
|
|
2278
|
+
*/
|
|
2279
|
+
startRange: number;
|
|
2280
|
+
/**
|
|
2281
|
+
* ID of the loyalty badge for this range.
|
|
2282
|
+
*/
|
|
2283
|
+
loyaltyBadgeId?: string;
|
|
2284
|
+
/**
|
|
2285
|
+
* Amount of the loyalty multiplier for this range.
|
|
2286
|
+
*/
|
|
2287
|
+
loyaltyMultiplierAmount?: number;
|
|
2288
|
+
}
|
|
2289
|
+
/**
|
|
2290
|
+
* Object defining referral requirements.
|
|
2291
|
+
*/
|
|
2292
|
+
interface ReferralRequirements {
|
|
2293
|
+
/**
|
|
2294
|
+
* Flag indicating if achieving points is required.
|
|
2295
|
+
*/
|
|
2296
|
+
achievePoints?: boolean | null;
|
|
2297
|
+
/**
|
|
2298
|
+
* Flag indicating if completing the profile is required.
|
|
2299
|
+
*/
|
|
2300
|
+
completeProfile?: boolean | null;
|
|
2301
|
+
/**
|
|
2302
|
+
* Flag indicating if connecting Discord is required.
|
|
2303
|
+
*/
|
|
2304
|
+
connectDiscord?: boolean | null;
|
|
2305
|
+
/**
|
|
2306
|
+
* Flag indicating if connecting email is required.
|
|
2307
|
+
*/
|
|
2308
|
+
connectEmail?: boolean | null;
|
|
2309
|
+
/**
|
|
2310
|
+
* Flag indicating if connecting Twitter is required.
|
|
2311
|
+
*/
|
|
2312
|
+
connectTwitter?: boolean | null;
|
|
2313
|
+
points?: ReferralRequirements.Points | null;
|
|
2314
|
+
}
|
|
2315
|
+
namespace ReferralRequirements {
|
|
2316
|
+
interface Points {
|
|
2317
|
+
/**
|
|
2318
|
+
* Points required for referral.
|
|
2319
|
+
*/
|
|
2320
|
+
amount?: number | null;
|
|
2321
|
+
/**
|
|
2322
|
+
* ID of the loyalty currency for referral.
|
|
2323
|
+
*/
|
|
2324
|
+
loyaltyCurrecyId?: string | null;
|
|
2325
|
+
}
|
|
2326
|
+
}
|
|
2327
|
+
/**
|
|
2328
|
+
* Object containing details of the associated smart contract.
|
|
2329
|
+
*/
|
|
2330
|
+
interface SmartContract {
|
|
2331
|
+
/**
|
|
2332
|
+
* Mapping of addresses for the smart contract.
|
|
2333
|
+
*/
|
|
2334
|
+
addressMapping?: string | null;
|
|
2335
|
+
/**
|
|
2336
|
+
* Object containing details of the amount multiplier from the event.
|
|
2337
|
+
*/
|
|
2338
|
+
amountMultiplier?: SmartContract.AmountMultiplier | null;
|
|
2339
|
+
/**
|
|
2340
|
+
* ID of the smart contract.
|
|
2341
|
+
*/
|
|
2342
|
+
contractId?: string | null;
|
|
2343
|
+
/**
|
|
2344
|
+
* Criteria to evaluate the smart contract event.
|
|
2345
|
+
*/
|
|
2346
|
+
criteria?: 'everyEvent' | 'byParameter' | null;
|
|
2347
|
+
/**
|
|
2348
|
+
* Event emitted by the smart contract.
|
|
2349
|
+
*/
|
|
2350
|
+
event?: string | null;
|
|
2351
|
+
/**
|
|
2352
|
+
* Array of parameters for the smart contract.
|
|
2353
|
+
*/
|
|
2354
|
+
params?: Array<SmartContract.Param> | null;
|
|
2355
|
+
/**
|
|
2356
|
+
* Type of the smart contract interaction.
|
|
2357
|
+
*/
|
|
2358
|
+
type?: 'function' | 'event' | null;
|
|
2359
|
+
}
|
|
2360
|
+
namespace SmartContract {
|
|
2361
|
+
/**
|
|
2362
|
+
* Object containing details of the amount multiplier from the event.
|
|
2363
|
+
*/
|
|
2364
|
+
interface AmountMultiplier {
|
|
2365
|
+
/**
|
|
2366
|
+
* Mapping of the value for the smart contract.
|
|
2367
|
+
*/
|
|
2368
|
+
valueMapping?: string | null;
|
|
2369
|
+
}
|
|
2370
|
+
interface Param {
|
|
2371
|
+
/**
|
|
2372
|
+
* Condition to check for the parameter.
|
|
2373
|
+
*/
|
|
2374
|
+
condition?: string | null;
|
|
2375
|
+
/**
|
|
2376
|
+
* Name of the smart contract parameter.
|
|
2377
|
+
*/
|
|
2378
|
+
name?: string | null;
|
|
2379
|
+
/**
|
|
2380
|
+
* Value of the parameter.
|
|
2381
|
+
*/
|
|
2382
|
+
value?: string | null;
|
|
2383
|
+
}
|
|
2384
|
+
}
|
|
2385
|
+
interface SnapshotProposal {
|
|
2386
|
+
/**
|
|
2387
|
+
* ID of the snapshot proposal.
|
|
2388
|
+
*/
|
|
2389
|
+
id: string;
|
|
2390
|
+
/**
|
|
2391
|
+
* Space associated with the snapshot proposal.
|
|
2392
|
+
*/
|
|
2393
|
+
space: string;
|
|
2394
|
+
}
|
|
2395
|
+
interface StreakArray {
|
|
2396
|
+
/**
|
|
2397
|
+
* Reward amount for achieving the streak milestone.
|
|
2398
|
+
*/
|
|
2399
|
+
streakAmount: number;
|
|
2400
|
+
/**
|
|
2401
|
+
* Milestone required to achieve the streak.
|
|
2402
|
+
*/
|
|
2403
|
+
streakMilestone: number;
|
|
2404
|
+
}
|
|
2405
|
+
/**
|
|
2406
|
+
* Metadata for swap loyalty rules
|
|
2407
|
+
*/
|
|
2408
|
+
interface Swap {
|
|
2409
|
+
provider?: 'any' | 'relay' | 'lifi';
|
|
2410
|
+
relayReferrerId?: string;
|
|
2411
|
+
requireCrossChainSwap?: boolean;
|
|
2412
|
+
swappedToChain?: 'any' | number | string;
|
|
2413
|
+
swappedToTokens?: Array<Swap.SwappedToToken>;
|
|
2414
|
+
tokenMode?: 'any' | 'specific';
|
|
2415
|
+
trackTokenAmount?: boolean;
|
|
2416
|
+
}
|
|
2417
|
+
namespace Swap {
|
|
2418
|
+
interface SwappedToToken {
|
|
2419
|
+
address: string;
|
|
2420
|
+
chainId: string;
|
|
2421
|
+
}
|
|
2422
|
+
}
|
|
2423
|
+
}
|
|
2424
|
+
}
|
|
2425
|
+
}
|
|
2426
|
+
export interface RuleDeleteResponse {
|
|
1309
2427
|
id: string;
|
|
1310
2428
|
deletedAt: string;
|
|
1311
2429
|
}
|
|
1312
2430
|
export interface RuleCompleteResponse {
|
|
1313
|
-
message:
|
|
2431
|
+
message: 'Completion request added to queue' | 'Link click being verified, come back later to check the status';
|
|
1314
2432
|
}
|
|
1315
2433
|
export interface RuleGetStatusResponse {
|
|
1316
2434
|
data: Array<RuleGetStatusResponse.Data>;
|
|
@@ -1318,9 +2436,97 @@ export interface RuleGetStatusResponse {
|
|
|
1318
2436
|
export declare namespace RuleGetStatusResponse {
|
|
1319
2437
|
interface Data {
|
|
1320
2438
|
loyaltyRuleId: string;
|
|
1321
|
-
status: 'pending' | 'processing' | 'completed' | 'failed';
|
|
1322
2439
|
userId: string;
|
|
2440
|
+
/**
|
|
2441
|
+
* Categorized examples of messages that may be returned for a loyalty rule's
|
|
2442
|
+
* processing result.
|
|
2443
|
+
*
|
|
2444
|
+
* User Onboarding
|
|
2445
|
+
*
|
|
2446
|
+
* - Check In: "Streak successful"
|
|
2447
|
+
* - Complete Profile Details: "Profile not complete"
|
|
2448
|
+
*
|
|
2449
|
+
* Connect Accounts
|
|
2450
|
+
*
|
|
2451
|
+
* - Connect TikTok: "TikTok not connected"
|
|
2452
|
+
* - Connect Discord: "Discord not connected", "Discord request timeout"
|
|
2453
|
+
* - Connect X: "Twitter not connected", "Twitter not connected or content url is
|
|
2454
|
+
* required"
|
|
2455
|
+
* - Connect Email: "Email address not connected"
|
|
2456
|
+
* - Connect Telegram: "Telegram not connected", "user has not setup telegram (no
|
|
2457
|
+
* telegramUsername), please setup username in telegram and reconnect.",
|
|
2458
|
+
* "Telegram request rate-limited"
|
|
2459
|
+
* - Connect Steam: "Steam not connected"
|
|
2460
|
+
* - Connect Youtube: "Youtube not connected"
|
|
2461
|
+
*
|
|
2462
|
+
* Social Quests
|
|
2463
|
+
*
|
|
2464
|
+
* - Join Telegram Group: "Telegram Channel not joined", "Telegram Channel joined
|
|
2465
|
+
* successfully"
|
|
2466
|
+
* - Post on TikTok: "TikTok post not verified"
|
|
2467
|
+
* - Comment on an X Post: "Quest Completed: You have commented on the tweet",
|
|
2468
|
+
* "Quest Not Completed: Comment not found for the specified tweet"
|
|
2469
|
+
* - Repost an X Post: "Quest Completed: You have retweeted the tweet", "Quest Not
|
|
2470
|
+
* Completed: Retweet not found for the specified tweet", "Quest Completed: You
|
|
2471
|
+
* have retweeted and commented on the tweet", "Quest Not Completed: You have not
|
|
2472
|
+
* retweeted or commented on the tweet"
|
|
2473
|
+
* - Follow an X Account: "Missing required parameters: twitterUserId,
|
|
2474
|
+
* targetUsername", "Quest Completed: You are a follower of
|
|
2475
|
+
* @${targetUsername}", "Quest Not Completed: Please follow @${targetUsername}
|
|
2476
|
+
* and try again in few minutes"
|
|
2477
|
+
* - React to an X Post: "Missing required parameters: texts, twitterUserId,
|
|
2478
|
+
* userTweetId", "No text provided", "Quest Completed: You have posted {tweetId}
|
|
2479
|
+
* a tweet with the text {text}", "Quest Not Completed: Your all previous {COUNT}
|
|
2480
|
+
* posts are already claimed. Please post a new tweet and try again in a few
|
|
2481
|
+
* minutes.", "Tweet is already claimed", "Tweet does not belong to the user",
|
|
2482
|
+
* "Text not found in tweet", "Tweet is before the quest start time", "Tweet does
|
|
2483
|
+
* not have media", "Text found in tweet"
|
|
2484
|
+
* - Add Text to X Bio: "Missing required parameters: texts, twitterUserId", "User
|
|
2485
|
+
* not found", "Text found in bio", "Text not found in bio"
|
|
2486
|
+
* - Add Text to X Username: "Missing required parameters: texts, twitterUserId",
|
|
2487
|
+
* "User not found", "Text found in username", "Text not found in username"
|
|
2488
|
+
* - Comment on an X Post with Text: "Missing required parameters: texts,
|
|
2489
|
+
* twitterUserId", "Comment is already claimed", "Text found in comment", "Text
|
|
2490
|
+
* not found in comment", "Tweet not found or could not be retrieved"
|
|
2491
|
+
* - Comment on a YouTube Video: "Youtube comment added", "Youtube comment not
|
|
2492
|
+
* added"
|
|
2493
|
+
* - Subscribe to a YouTube Channel: "Youtube channel subscribed", "Quest failed,
|
|
2494
|
+
* please make sure you have made your subscriptions public in youtube"
|
|
2495
|
+
* - Get X post impressions: "You've already claimed the reward for this impression
|
|
2496
|
+
* range."
|
|
2497
|
+
* - Add an Item to Steam Wishlist: "Steam Wishlist item added", "Steam Wishlist
|
|
2498
|
+
* item not added"
|
|
2499
|
+
*
|
|
2500
|
+
* Complex Onchain Logic
|
|
2501
|
+
*
|
|
2502
|
+
* - Token Swap: "Swap rewards calculated successfully", "Swap rule failed"
|
|
2503
|
+
*
|
|
2504
|
+
* Other
|
|
2505
|
+
*
|
|
2506
|
+
* - Answer a Quiz: "Quiz question not configured", "No question response found",
|
|
2507
|
+
* "Incorrect answer", "Correct answer"
|
|
2508
|
+
* - Answer a Poll: "Poll question not configured", "Poll response recorded"
|
|
2509
|
+
* - Spend in Shopify Store: "Shopify not connected"
|
|
2510
|
+
* - Points Airdrop: "Seems like you're not eligible for this points airdrop."
|
|
2511
|
+
*
|
|
2512
|
+
* General / Unmatched
|
|
2513
|
+
*
|
|
2514
|
+
* - "Quest already completed"
|
|
2515
|
+
* - "Quest already completed using the same social account (${socialAccountName}),
|
|
2516
|
+
* with the different user."
|
|
2517
|
+
* - "You've already claimed the reward for this quest."
|
|
2518
|
+
* - "Quest not achieved, please try again."
|
|
2519
|
+
* - "Rule is not setup"
|
|
2520
|
+
* - "Request aborted due to timeout"
|
|
2521
|
+
* - "Google account not connected"
|
|
2522
|
+
* - "Claim failed: Multiplier is already active"
|
|
2523
|
+
*/
|
|
1323
2524
|
message?: string;
|
|
2525
|
+
/**
|
|
2526
|
+
* Status of the queued job, this is only returned if the job is queued and being
|
|
2527
|
+
* processed, this wil be retained for 10 minutes after the job is completed
|
|
2528
|
+
*/
|
|
2529
|
+
status?: 'pending' | 'processing' | 'completed' | 'failed';
|
|
1324
2530
|
}
|
|
1325
2531
|
}
|
|
1326
2532
|
export interface RuleCreateParams {
|
|
@@ -1367,7 +2573,7 @@ export interface RuleCreateParams {
|
|
|
1367
2573
|
/**
|
|
1368
2574
|
* Type of loyalty rule being created
|
|
1369
2575
|
*/
|
|
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';
|
|
2576
|
+
type: 'Bonus' | 'BoughtOn' | 'BoughtWithRoyalties' | 'DiscordMessages' | 'Listing' | 'Lodging' | 'MintOn' | 'PoapClaim' | 'SnagSocialsConnected' | 'SnapshotFullset' | 'SnapshotHold' | 'SoldOn' | 'SoldWithRoyalties' | 'TokenHold' | 'TwitterBio' | 'TwitterHashTagPost' | 'Retweet' | 'check_in' | 'code_entry' | 'connect_wallet' | 'connected_discord' | 'connected_email' | 'connected_epic' | 'connected_steam' | 'connected_telegram' | 'connected_twitter' | 'create_partner_account' | 'discord_member' | 'drip_x_follow' | 'drip_x_new_tweet' | 'drip_x_text_in_bio' | 'drip_x_text_in_comment' | 'drip_x_text_in_name' | 'drip_x_tweet' | 'external_rule' | 'link_click' | 'manual_upload' | 'profile_completed' | 'referred_user' | 'smart_contract_event' | 'snapshot_governance' | 'telegram_join' | 'telegram_messages' | 'text_input' | 'token_hold_erc20' | 'tweet_liked_by_project' | 'twitter_comment' | 'twitter_follow' | 'twitter_followers' | 'twitter_like' | 'twitter_post_hashtag' | 'quiz' | 'poll' | 'steam_wishlist' | 'liquidity_uniswap_v2' | 'liquidity_uniswap_v3' | 'points_airdrop' | 'youtube_subscribers' | 'youtube_comment' | 'shopify_spend' | 'swap' | 'tiktok_post' | 'post_impressions' | 'discord_join' | 'connected_youtube' | 'connected_tiktok';
|
|
1371
2577
|
/**
|
|
1372
2578
|
* Unique identifier for the associated website
|
|
1373
2579
|
*/
|
|
@@ -1376,6 +2582,10 @@ export interface RuleCreateParams {
|
|
|
1376
2582
|
* URL of the background asset to be displayed
|
|
1377
2583
|
*/
|
|
1378
2584
|
backgroundAssetUrl?: string;
|
|
2585
|
+
/**
|
|
2586
|
+
* The type of claim for the reward
|
|
2587
|
+
*/
|
|
2588
|
+
claimType?: 'manual' | 'auto' | null;
|
|
1379
2589
|
/**
|
|
1380
2590
|
* Blockchain address of the associated collection
|
|
1381
2591
|
*/
|
|
@@ -1396,6 +2606,11 @@ export interface RuleCreateParams {
|
|
|
1396
2606
|
* Optional detailed description of the rule
|
|
1397
2607
|
*/
|
|
1398
2608
|
description?: string;
|
|
2609
|
+
duplicatedFromId?: string | null;
|
|
2610
|
+
/**
|
|
2611
|
+
* ID of the external integration
|
|
2612
|
+
*/
|
|
2613
|
+
externalIntegrationId?: string | null;
|
|
1399
2614
|
/**
|
|
1400
2615
|
* Whether to hide this rule in the user interface
|
|
1401
2616
|
*/
|
|
@@ -1403,15 +2618,33 @@ export interface RuleCreateParams {
|
|
|
1403
2618
|
/**
|
|
1404
2619
|
* Interval between rule executions
|
|
1405
2620
|
*/
|
|
1406
|
-
interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | null;
|
|
2621
|
+
interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | 'unlimited' | null;
|
|
1407
2622
|
/**
|
|
1408
2623
|
* Whether this rule is mandatory
|
|
1409
2624
|
*/
|
|
1410
2625
|
isRequired?: boolean;
|
|
1411
2626
|
/**
|
|
1412
|
-
* Unique identifier for the loyalty
|
|
2627
|
+
* Unique identifier for the loyalty badge
|
|
2628
|
+
*/
|
|
2629
|
+
loyaltyBadgeId?: string | null;
|
|
2630
|
+
/**
|
|
2631
|
+
* Unique identifier for the loyalty rule group
|
|
2632
|
+
*/
|
|
2633
|
+
loyaltyRuleGroupId?: 'no-section' | (string & {}) | null;
|
|
2634
|
+
/**
|
|
2635
|
+
* URL for uploading loyalty user allotment via CSV
|
|
2636
|
+
*/
|
|
2637
|
+
loyaltyUserAllotmentCsvUrl?: string;
|
|
2638
|
+
/**
|
|
2639
|
+
* The interval for the max amount. Available for the smart contract and external
|
|
2640
|
+
* rules.
|
|
2641
|
+
*/
|
|
2642
|
+
maxAmountInterval?: 'daily' | 'weekly' | 'monthly' | 'lifetime' | null;
|
|
2643
|
+
/**
|
|
2644
|
+
* The maximum amount of points a user can earn per interval. Available for the
|
|
2645
|
+
* smart contract and external rules.
|
|
1413
2646
|
*/
|
|
1414
|
-
|
|
2647
|
+
maxAmountPerInterval?: number | null;
|
|
1415
2648
|
/**
|
|
1416
2649
|
* URL of the media to be displayed
|
|
1417
2650
|
*/
|
|
@@ -1419,25 +2652,41 @@ export interface RuleCreateParams {
|
|
|
1419
2652
|
/**
|
|
1420
2653
|
* Blockchain network where the rule will apply
|
|
1421
2654
|
*/
|
|
1422
|
-
network?: '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' | '
|
|
2655
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia';
|
|
1423
2656
|
/**
|
|
1424
2657
|
* OAuth credentials associated with the rule
|
|
1425
2658
|
*/
|
|
1426
2659
|
oauthCredentialsId?: string | null;
|
|
2660
|
+
/**
|
|
2661
|
+
* The lifetime of the reward
|
|
2662
|
+
*/
|
|
2663
|
+
rewardLifetime?: 'permanent' | 'dynamic' | null;
|
|
1427
2664
|
/**
|
|
1428
2665
|
* Type of reward issued by the rule
|
|
1429
2666
|
*/
|
|
1430
|
-
rewardType?: 'points' | 'multiplier';
|
|
2667
|
+
rewardType?: 'points' | 'multiplier' | 'badge';
|
|
2668
|
+
/**
|
|
2669
|
+
* URL of the Shopify store
|
|
2670
|
+
*/
|
|
2671
|
+
shopifyStoreUrl?: string | null;
|
|
2672
|
+
/**
|
|
2673
|
+
* Whether to show this rule before the start time
|
|
2674
|
+
*/
|
|
2675
|
+
showBeforeStart?: boolean;
|
|
1431
2676
|
/**
|
|
1432
|
-
*
|
|
2677
|
+
* Optional subscription id for the rule
|
|
1433
2678
|
*/
|
|
1434
|
-
|
|
2679
|
+
subscriptionId?: string | null;
|
|
1435
2680
|
}
|
|
1436
2681
|
export declare namespace RuleCreateParams {
|
|
1437
2682
|
/**
|
|
1438
2683
|
* Additional metadata for the loyalty rule
|
|
1439
2684
|
*/
|
|
1440
2685
|
interface Metadata {
|
|
2686
|
+
/**
|
|
2687
|
+
* Number of tokens per batch.
|
|
2688
|
+
*/
|
|
2689
|
+
batchSize?: number | null;
|
|
1441
2690
|
/**
|
|
1442
2691
|
* Text displayed on the action button.
|
|
1443
2692
|
*/
|
|
@@ -1457,7 +2706,7 @@ export declare namespace RuleCreateParams {
|
|
|
1457
2706
|
/**
|
|
1458
2707
|
* Text to check in the Twitter post, username, or bio.
|
|
1459
2708
|
*/
|
|
1460
|
-
checkText?: string | null;
|
|
2709
|
+
checkText?: string | Array<string> | null;
|
|
1461
2710
|
/**
|
|
1462
2711
|
* Array of collections associated with the rule.
|
|
1463
2712
|
*/
|
|
@@ -1465,7 +2714,13 @@ export declare namespace RuleCreateParams {
|
|
|
1465
2714
|
/**
|
|
1466
2715
|
* Conditions for completing the profile.
|
|
1467
2716
|
*/
|
|
1468
|
-
completeProfileConditions?:
|
|
2717
|
+
completeProfileConditions?: {
|
|
2718
|
+
[key: string]: boolean;
|
|
2719
|
+
} | null;
|
|
2720
|
+
/**
|
|
2721
|
+
* Description of the external rule condition (only for external rules)
|
|
2722
|
+
*/
|
|
2723
|
+
conditionDescription?: string;
|
|
1469
2724
|
/**
|
|
1470
2725
|
* Object containing details for the call-to-action.
|
|
1471
2726
|
*/
|
|
@@ -1474,6 +2729,10 @@ export declare namespace RuleCreateParams {
|
|
|
1474
2729
|
* API key for custom rewards integration.
|
|
1475
2730
|
*/
|
|
1476
2731
|
customRewardsApiKey?: string;
|
|
2732
|
+
/**
|
|
2733
|
+
* Flag indicating if the rule should use direct RPC to get the balance of tokens.
|
|
2734
|
+
*/
|
|
2735
|
+
directRpc?: boolean;
|
|
1477
2736
|
/**
|
|
1478
2737
|
* Array of Discord servers, channels, and roles to join.
|
|
1479
2738
|
*/
|
|
@@ -1510,10 +2769,6 @@ export declare namespace RuleCreateParams {
|
|
|
1510
2769
|
* Indicates if the item has never been sold.
|
|
1511
2770
|
*/
|
|
1512
2771
|
hasNeverSold?: boolean;
|
|
1513
|
-
/**
|
|
1514
|
-
* Flag indicating whether the order source is included.
|
|
1515
|
-
*/
|
|
1516
|
-
hasOrderSource?: boolean;
|
|
1517
2772
|
/**
|
|
1518
2773
|
* Indicates if the full royalty has been paid for items.
|
|
1519
2774
|
*/
|
|
@@ -1530,10 +2785,18 @@ export declare namespace RuleCreateParams {
|
|
|
1530
2785
|
* URL of the image associated with the rule.
|
|
1531
2786
|
*/
|
|
1532
2787
|
imageUrl?: string | null;
|
|
2788
|
+
/**
|
|
2789
|
+
* If enabled, the first transaction done on the platform will complete this rule
|
|
2790
|
+
*/
|
|
2791
|
+
isCheckInOnEveryTxn?: boolean;
|
|
1533
2792
|
/**
|
|
1534
2793
|
* Indicates if the multiplier has been applied to rewards.
|
|
1535
2794
|
*/
|
|
1536
2795
|
isMultiplierApplied?: boolean;
|
|
2796
|
+
/**
|
|
2797
|
+
* Flag indicating if the rule is restricted to new users.
|
|
2798
|
+
*/
|
|
2799
|
+
isRestrictedToNewUsers?: boolean;
|
|
1537
2800
|
/**
|
|
1538
2801
|
* Flag indicating if rewards are applied retroactively.
|
|
1539
2802
|
*/
|
|
@@ -1546,6 +2809,10 @@ export declare namespace RuleCreateParams {
|
|
|
1546
2809
|
* Optional link associated with the metadata.
|
|
1547
2810
|
*/
|
|
1548
2811
|
link?: string | null;
|
|
2812
|
+
/**
|
|
2813
|
+
* Liquidity pool details.
|
|
2814
|
+
*/
|
|
2815
|
+
liquidity?: Metadata.Liquidity;
|
|
1549
2816
|
/**
|
|
1550
2817
|
* Maximum quantity constraint for token holding.
|
|
1551
2818
|
*/
|
|
@@ -1578,14 +2845,22 @@ export declare namespace RuleCreateParams {
|
|
|
1578
2845
|
* give points for only one token ownership per contract
|
|
1579
2846
|
*/
|
|
1580
2847
|
onlyRewardSingleTokenOwnership?: boolean | null;
|
|
1581
|
-
/**
|
|
1582
|
-
* Order source of the order for the token sale
|
|
1583
|
-
*/
|
|
1584
|
-
orderSource?: string;
|
|
1585
2848
|
/**
|
|
1586
2849
|
* Promotional code associated with the rule.
|
|
1587
2850
|
*/
|
|
1588
2851
|
promoCode?: string;
|
|
2852
|
+
/**
|
|
2853
|
+
* URL of the CSV file containing promo codes.
|
|
2854
|
+
*/
|
|
2855
|
+
promoCodeCsvUrl?: string;
|
|
2856
|
+
/**
|
|
2857
|
+
* Numbers of the promotional code to be generated.
|
|
2858
|
+
*/
|
|
2859
|
+
promoCodeLength?: number | null;
|
|
2860
|
+
/**
|
|
2861
|
+
* Type of the promotional code.
|
|
2862
|
+
*/
|
|
2863
|
+
promoCodeType?: 'code' | 'csv' | 'generate';
|
|
1589
2864
|
/**
|
|
1590
2865
|
* Array defining ranges and corresponding rewards.
|
|
1591
2866
|
*/
|
|
@@ -1598,10 +2873,51 @@ export declare namespace RuleCreateParams {
|
|
|
1598
2873
|
* Lump sum reward given to a referrer.
|
|
1599
2874
|
*/
|
|
1600
2875
|
referrerReward?: number | null;
|
|
2876
|
+
/**
|
|
2877
|
+
* Loyalty currency ID of the referrer reward.
|
|
2878
|
+
*/
|
|
2879
|
+
referrerRewardLoyaltyCurrencyId?: string | null;
|
|
2880
|
+
/**
|
|
2881
|
+
* Flag indicating if the post link is required.
|
|
2882
|
+
*/
|
|
2883
|
+
requirePostLink?: boolean | null;
|
|
2884
|
+
/**
|
|
2885
|
+
* Flag indicating if media metadata is required.
|
|
2886
|
+
*/
|
|
2887
|
+
requirePostMediaLink?: boolean | null;
|
|
2888
|
+
/**
|
|
2889
|
+
* Flag indicating if the rule can also reward badges per range.
|
|
2890
|
+
*/
|
|
2891
|
+
rewardBadgePerRange?: boolean;
|
|
2892
|
+
/**
|
|
2893
|
+
* Flag indicating if the reward is rewarded by batch.
|
|
2894
|
+
*/
|
|
2895
|
+
rewardByBatch?: boolean | null;
|
|
2896
|
+
/**
|
|
2897
|
+
* Criteria to evaluate the reward.
|
|
2898
|
+
*/
|
|
2899
|
+
rewardCriteria?: 'IMPRESSIONS_COUNT' | 'ELIGIBLE_POST' | null;
|
|
2900
|
+
/**
|
|
2901
|
+
* Flag indicating if the reward is rewarded per action.
|
|
2902
|
+
*/
|
|
2903
|
+
rewardPerAction?: boolean | null;
|
|
1601
2904
|
/**
|
|
1602
2905
|
* Flag indicating if rewards are given per impression.
|
|
1603
2906
|
*/
|
|
1604
2907
|
rewardPerImpression?: boolean | null;
|
|
2908
|
+
/**
|
|
2909
|
+
* Flag indicating if the rule should reward based on value of traded tokens
|
|
2910
|
+
* instead of count.
|
|
2911
|
+
*/
|
|
2912
|
+
rewardPerValue?: boolean;
|
|
2913
|
+
/**
|
|
2914
|
+
* Wallet address of the user can only be used if userId is not provided
|
|
2915
|
+
*/
|
|
2916
|
+
royaltyAddress?: string;
|
|
2917
|
+
/**
|
|
2918
|
+
* Royalty percentage of the item.
|
|
2919
|
+
*/
|
|
2920
|
+
royaltyPercentage?: number;
|
|
1605
2921
|
/**
|
|
1606
2922
|
* Currency associated with sales.
|
|
1607
2923
|
*/
|
|
@@ -1625,7 +2941,7 @@ export declare namespace RuleCreateParams {
|
|
|
1625
2941
|
/**
|
|
1626
2942
|
* Social media platform associated with the rule.
|
|
1627
2943
|
*/
|
|
1628
|
-
socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | null;
|
|
2944
|
+
socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | 'Google' | null;
|
|
1629
2945
|
/**
|
|
1630
2946
|
* URL of the social platform's logo.
|
|
1631
2947
|
*/
|
|
@@ -1634,10 +2950,18 @@ export declare namespace RuleCreateParams {
|
|
|
1634
2950
|
* Name of the social platform.
|
|
1635
2951
|
*/
|
|
1636
2952
|
socialPlatformName?: string | null;
|
|
2953
|
+
/**
|
|
2954
|
+
* ID of the Steam app.
|
|
2955
|
+
*/
|
|
2956
|
+
steamAppId?: string | null;
|
|
1637
2957
|
/**
|
|
1638
2958
|
* Array of streak milestones and corresponding rewards.
|
|
1639
2959
|
*/
|
|
1640
2960
|
streakArray?: Array<Metadata.StreakArray> | null;
|
|
2961
|
+
/**
|
|
2962
|
+
* Metadata for swap loyalty rules
|
|
2963
|
+
*/
|
|
2964
|
+
swap?: Metadata.Swap;
|
|
1641
2965
|
/**
|
|
1642
2966
|
* ID of the Telegram channel.
|
|
1643
2967
|
*/
|
|
@@ -1650,6 +2974,11 @@ export declare namespace RuleCreateParams {
|
|
|
1650
2974
|
* Flag indicating if all contracts are tracked.
|
|
1651
2975
|
*/
|
|
1652
2976
|
trackAllContracts?: boolean | null;
|
|
2977
|
+
/**
|
|
2978
|
+
* Flag indicating if the progress is tracked. If enabled, the rule can only be
|
|
2979
|
+
* completed once the progress is 100%.
|
|
2980
|
+
*/
|
|
2981
|
+
trackProgress?: boolean | null;
|
|
1653
2982
|
/**
|
|
1654
2983
|
* URL of the associated Twitter account.
|
|
1655
2984
|
*/
|
|
@@ -1685,7 +3014,15 @@ export declare namespace RuleCreateParams {
|
|
|
1685
3014
|
/**
|
|
1686
3015
|
* Type of wallet associated with the rule.
|
|
1687
3016
|
*/
|
|
1688
|
-
walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | null;
|
|
3017
|
+
walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | 'cosmos' | 'ultra' | 'agw' | null;
|
|
3018
|
+
/**
|
|
3019
|
+
* ID of the Youtube channel.
|
|
3020
|
+
*/
|
|
3021
|
+
youtubeChannelId?: string | null;
|
|
3022
|
+
/**
|
|
3023
|
+
* ID of the Youtube video.
|
|
3024
|
+
*/
|
|
3025
|
+
youtubeVideoId?: string | null;
|
|
1689
3026
|
}
|
|
1690
3027
|
namespace Metadata {
|
|
1691
3028
|
interface Collection {
|
|
@@ -1700,7 +3037,7 @@ export declare namespace RuleCreateParams {
|
|
|
1700
3037
|
/**
|
|
1701
3038
|
* Blockchain network of the collection.
|
|
1702
3039
|
*/
|
|
1703
|
-
network?: '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' | '
|
|
3040
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia';
|
|
1704
3041
|
}
|
|
1705
3042
|
/**
|
|
1706
3043
|
* Object containing details for the call-to-action.
|
|
@@ -1765,6 +3102,49 @@ export declare namespace RuleCreateParams {
|
|
|
1765
3102
|
*/
|
|
1766
3103
|
id: string;
|
|
1767
3104
|
}
|
|
3105
|
+
/**
|
|
3106
|
+
* Liquidity pool details.
|
|
3107
|
+
*/
|
|
3108
|
+
interface Liquidity {
|
|
3109
|
+
/**
|
|
3110
|
+
* Calculation type of the liquidity pool.
|
|
3111
|
+
*/
|
|
3112
|
+
calculationType?: 'fixed' | 'custom';
|
|
3113
|
+
/**
|
|
3114
|
+
* Custom function to calculate the the reward amount based on the liquidity
|
|
3115
|
+
* provided per day. X is the reward amount, Y is the liquidity provided per day in
|
|
3116
|
+
* USD.
|
|
3117
|
+
*/
|
|
3118
|
+
customFunction?: string;
|
|
3119
|
+
/**
|
|
3120
|
+
* Liquidity provided per day in USD
|
|
3121
|
+
*/
|
|
3122
|
+
liquidityPerDay?: number;
|
|
3123
|
+
/**
|
|
3124
|
+
* Blockchain network of the liquidity pool.
|
|
3125
|
+
*/
|
|
3126
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia';
|
|
3127
|
+
/**
|
|
3128
|
+
* Indicates if only in-range liquidity is rewarded.
|
|
3129
|
+
*/
|
|
3130
|
+
onlyRewardInRangeLiquidity?: boolean;
|
|
3131
|
+
/**
|
|
3132
|
+
* Array of liquidity pools associated with the rule.
|
|
3133
|
+
*/
|
|
3134
|
+
pools?: Array<Liquidity.Pool>;
|
|
3135
|
+
/**
|
|
3136
|
+
* Protocol of the liquidity pool.
|
|
3137
|
+
*/
|
|
3138
|
+
protocol?: string;
|
|
3139
|
+
}
|
|
3140
|
+
namespace Liquidity {
|
|
3141
|
+
interface Pool {
|
|
3142
|
+
/**
|
|
3143
|
+
* Unique identifier of the liquidity pool.
|
|
3144
|
+
*/
|
|
3145
|
+
id: string;
|
|
3146
|
+
}
|
|
3147
|
+
}
|
|
1768
3148
|
interface Range {
|
|
1769
3149
|
/**
|
|
1770
3150
|
* Reward amount for this range.
|
|
@@ -1778,6 +3158,14 @@ export declare namespace RuleCreateParams {
|
|
|
1778
3158
|
* Start value of the range.
|
|
1779
3159
|
*/
|
|
1780
3160
|
startRange: number;
|
|
3161
|
+
/**
|
|
3162
|
+
* ID of the loyalty badge for this range.
|
|
3163
|
+
*/
|
|
3164
|
+
loyaltyBadgeId?: string;
|
|
3165
|
+
/**
|
|
3166
|
+
* Amount of the loyalty multiplier for this range.
|
|
3167
|
+
*/
|
|
3168
|
+
loyaltyMultiplierAmount?: number;
|
|
1781
3169
|
}
|
|
1782
3170
|
/**
|
|
1783
3171
|
* Object defining referral requirements.
|
|
@@ -1821,18 +3209,14 @@ export declare namespace RuleCreateParams {
|
|
|
1821
3209
|
* Object containing details of the associated smart contract.
|
|
1822
3210
|
*/
|
|
1823
3211
|
interface SmartContract {
|
|
1824
|
-
/**
|
|
1825
|
-
* ABI of the smart contract.
|
|
1826
|
-
*/
|
|
1827
|
-
abi?: string | null;
|
|
1828
3212
|
/**
|
|
1829
3213
|
* Mapping of addresses for the smart contract.
|
|
1830
3214
|
*/
|
|
1831
3215
|
addressMapping?: string | null;
|
|
1832
3216
|
/**
|
|
1833
|
-
*
|
|
3217
|
+
* Object containing details of the amount multiplier from the event.
|
|
1834
3218
|
*/
|
|
1835
|
-
|
|
3219
|
+
amountMultiplier?: SmartContract.AmountMultiplier | null;
|
|
1836
3220
|
/**
|
|
1837
3221
|
* ID of the smart contract.
|
|
1838
3222
|
*/
|
|
@@ -1841,58 +3225,28 @@ export declare namespace RuleCreateParams {
|
|
|
1841
3225
|
* Criteria to evaluate the smart contract event.
|
|
1842
3226
|
*/
|
|
1843
3227
|
criteria?: 'everyEvent' | 'byParameter' | null;
|
|
1844
|
-
/**
|
|
1845
|
-
* Time range applied to the rule.
|
|
1846
|
-
*/
|
|
1847
|
-
customRange?: SmartContract.CustomRange | null;
|
|
1848
3228
|
/**
|
|
1849
3229
|
* Event emitted by the smart contract.
|
|
1850
3230
|
*/
|
|
1851
3231
|
event?: string | null;
|
|
1852
|
-
/**
|
|
1853
|
-
* Maximum value allowed for the parameter.
|
|
1854
|
-
*/
|
|
1855
|
-
max?: number | null;
|
|
1856
3232
|
/**
|
|
1857
3233
|
* Array of parameters for the smart contract.
|
|
1858
3234
|
*/
|
|
1859
3235
|
params?: Array<SmartContract.Param> | null;
|
|
1860
3236
|
/**
|
|
1861
|
-
*
|
|
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.
|
|
3237
|
+
* Type of the smart contract interaction.
|
|
1870
3238
|
*/
|
|
1871
|
-
|
|
3239
|
+
type?: 'function' | 'event' | null;
|
|
1872
3240
|
}
|
|
1873
3241
|
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
3242
|
/**
|
|
1885
|
-
*
|
|
3243
|
+
* Object containing details of the amount multiplier from the event.
|
|
1886
3244
|
*/
|
|
1887
|
-
interface
|
|
1888
|
-
/**
|
|
1889
|
-
* End time of the custom range.
|
|
1890
|
-
*/
|
|
1891
|
-
endsAt?: string | null;
|
|
3245
|
+
interface AmountMultiplier {
|
|
1892
3246
|
/**
|
|
1893
|
-
*
|
|
3247
|
+
* Mapping of the value for the smart contract.
|
|
1894
3248
|
*/
|
|
1895
|
-
|
|
3249
|
+
valueMapping?: string | null;
|
|
1896
3250
|
}
|
|
1897
3251
|
interface Param {
|
|
1898
3252
|
/**
|
|
@@ -1929,6 +3283,24 @@ export declare namespace RuleCreateParams {
|
|
|
1929
3283
|
*/
|
|
1930
3284
|
streakMilestone: number;
|
|
1931
3285
|
}
|
|
3286
|
+
/**
|
|
3287
|
+
* Metadata for swap loyalty rules
|
|
3288
|
+
*/
|
|
3289
|
+
interface Swap {
|
|
3290
|
+
provider?: 'any' | 'relay' | 'lifi';
|
|
3291
|
+
relayReferrerId?: string;
|
|
3292
|
+
requireCrossChainSwap?: boolean;
|
|
3293
|
+
swappedToChain?: 'any' | number | string;
|
|
3294
|
+
swappedToTokens?: Array<Swap.SwappedToToken>;
|
|
3295
|
+
tokenMode?: 'any' | 'specific';
|
|
3296
|
+
trackTokenAmount?: boolean;
|
|
3297
|
+
}
|
|
3298
|
+
namespace Swap {
|
|
3299
|
+
interface SwappedToToken {
|
|
3300
|
+
address: string;
|
|
3301
|
+
chainId: string;
|
|
3302
|
+
}
|
|
3303
|
+
}
|
|
1932
3304
|
}
|
|
1933
3305
|
interface Collection {
|
|
1934
3306
|
/**
|
|
@@ -1938,7 +3310,11 @@ export declare namespace RuleCreateParams {
|
|
|
1938
3310
|
/**
|
|
1939
3311
|
* Blockchain network for the collection
|
|
1940
3312
|
*/
|
|
1941
|
-
network: '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' | '
|
|
3313
|
+
network: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia';
|
|
3314
|
+
/**
|
|
3315
|
+
* Symbol of the collection.
|
|
3316
|
+
*/
|
|
3317
|
+
symbol?: string;
|
|
1942
3318
|
}
|
|
1943
3319
|
}
|
|
1944
3320
|
export interface RuleUpdateParams {
|
|
@@ -1954,6 +3330,10 @@ export interface RuleUpdateParams {
|
|
|
1954
3330
|
* Name of the loyalty rule
|
|
1955
3331
|
*/
|
|
1956
3332
|
name: string;
|
|
3333
|
+
/**
|
|
3334
|
+
* The type of claim for the reward
|
|
3335
|
+
*/
|
|
3336
|
+
claimType?: 'manual' | 'auto' | null;
|
|
1957
3337
|
/**
|
|
1958
3338
|
* Blockchain address of the associated collection
|
|
1959
3339
|
*/
|
|
@@ -1982,6 +3362,10 @@ export interface RuleUpdateParams {
|
|
|
1982
3362
|
* Effective start time of the rule
|
|
1983
3363
|
*/
|
|
1984
3364
|
effectiveStartTime?: string | null;
|
|
3365
|
+
/**
|
|
3366
|
+
* ID of the external integration
|
|
3367
|
+
*/
|
|
3368
|
+
externalIntegrationId?: string | null;
|
|
1985
3369
|
/**
|
|
1986
3370
|
* Frequency of the rule execution
|
|
1987
3371
|
*/
|
|
@@ -1993,7 +3377,7 @@ export interface RuleUpdateParams {
|
|
|
1993
3377
|
/**
|
|
1994
3378
|
* Time interval for recurring rule execution
|
|
1995
3379
|
*/
|
|
1996
|
-
interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | null;
|
|
3380
|
+
interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | 'unlimited' | null;
|
|
1997
3381
|
/**
|
|
1998
3382
|
* Whether this rule is required for participation
|
|
1999
3383
|
*/
|
|
@@ -2002,6 +3386,16 @@ export interface RuleUpdateParams {
|
|
|
2002
3386
|
* ID of the rule group section to associate with the rule
|
|
2003
3387
|
*/
|
|
2004
3388
|
loyaltyRuleGroupId?: (string & {}) | 'no-section' | null;
|
|
3389
|
+
/**
|
|
3390
|
+
* The interval for the max amount. Available for the smart contract and external
|
|
3391
|
+
* rules.
|
|
3392
|
+
*/
|
|
3393
|
+
maxAmountInterval?: 'daily' | 'weekly' | 'monthly' | 'lifetime' | null;
|
|
3394
|
+
/**
|
|
3395
|
+
* The maximum amount of points a user can earn per interval. Available for the
|
|
3396
|
+
* smart contract and external rules.
|
|
3397
|
+
*/
|
|
3398
|
+
maxAmountPerInterval?: number | null;
|
|
2005
3399
|
/**
|
|
2006
3400
|
* URL of the media to be displayed
|
|
2007
3401
|
*/
|
|
@@ -2013,23 +3407,35 @@ export interface RuleUpdateParams {
|
|
|
2013
3407
|
/**
|
|
2014
3408
|
* Blockchain network where the rule will apply
|
|
2015
3409
|
*/
|
|
2016
|
-
network?: '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' | '
|
|
3410
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia';
|
|
2017
3411
|
/**
|
|
2018
3412
|
* ID for associated OAuth credentials
|
|
2019
3413
|
*/
|
|
2020
3414
|
oauthCredentialsId?: string | null;
|
|
3415
|
+
/**
|
|
3416
|
+
* The lifetime of the reward
|
|
3417
|
+
*/
|
|
3418
|
+
rewardLifetime?: 'permanent' | 'dynamic' | null;
|
|
2021
3419
|
/**
|
|
2022
3420
|
* Type of reward issued by this rule
|
|
2023
3421
|
*/
|
|
2024
|
-
rewardType?: 'points' | 'multiplier';
|
|
3422
|
+
rewardType?: 'points' | 'multiplier' | 'badge';
|
|
3423
|
+
/**
|
|
3424
|
+
* URL of the Shopify store
|
|
3425
|
+
*/
|
|
3426
|
+
shopifyStoreUrl?: string | null;
|
|
3427
|
+
/**
|
|
3428
|
+
* Whether to show this rule before the start time
|
|
3429
|
+
*/
|
|
3430
|
+
showBeforeStart?: boolean;
|
|
2025
3431
|
/**
|
|
2026
3432
|
* Start time for the loyalty rule
|
|
2027
3433
|
*/
|
|
2028
3434
|
startTime?: string | null;
|
|
2029
3435
|
/**
|
|
2030
|
-
* Optional subscription
|
|
3436
|
+
* Optional subscription id for the rule
|
|
2031
3437
|
*/
|
|
2032
|
-
|
|
3438
|
+
subscriptionId?: string | null;
|
|
2033
3439
|
}
|
|
2034
3440
|
export declare namespace RuleUpdateParams {
|
|
2035
3441
|
interface Collection {
|
|
@@ -2040,12 +3446,20 @@ export declare namespace RuleUpdateParams {
|
|
|
2040
3446
|
/**
|
|
2041
3447
|
* Blockchain network for the collection
|
|
2042
3448
|
*/
|
|
2043
|
-
network: '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' | '
|
|
3449
|
+
network: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia';
|
|
3450
|
+
/**
|
|
3451
|
+
* Symbol of the collection.
|
|
3452
|
+
*/
|
|
3453
|
+
symbol?: string;
|
|
2044
3454
|
}
|
|
2045
3455
|
/**
|
|
2046
3456
|
* Additional metadata for the loyalty rule
|
|
2047
3457
|
*/
|
|
2048
3458
|
interface Metadata {
|
|
3459
|
+
/**
|
|
3460
|
+
* Number of tokens per batch.
|
|
3461
|
+
*/
|
|
3462
|
+
batchSize?: number | null;
|
|
2049
3463
|
/**
|
|
2050
3464
|
* Text displayed on the action button.
|
|
2051
3465
|
*/
|
|
@@ -2065,7 +3479,7 @@ export declare namespace RuleUpdateParams {
|
|
|
2065
3479
|
/**
|
|
2066
3480
|
* Text to check in the Twitter post, username, or bio.
|
|
2067
3481
|
*/
|
|
2068
|
-
checkText?: string | null;
|
|
3482
|
+
checkText?: string | Array<string> | null;
|
|
2069
3483
|
/**
|
|
2070
3484
|
* Array of collections associated with the rule.
|
|
2071
3485
|
*/
|
|
@@ -2073,7 +3487,13 @@ export declare namespace RuleUpdateParams {
|
|
|
2073
3487
|
/**
|
|
2074
3488
|
* Conditions for completing the profile.
|
|
2075
3489
|
*/
|
|
2076
|
-
completeProfileConditions?:
|
|
3490
|
+
completeProfileConditions?: {
|
|
3491
|
+
[key: string]: boolean;
|
|
3492
|
+
} | null;
|
|
3493
|
+
/**
|
|
3494
|
+
* Description of the external rule condition (only for external rules)
|
|
3495
|
+
*/
|
|
3496
|
+
conditionDescription?: string;
|
|
2077
3497
|
/**
|
|
2078
3498
|
* Object containing details for the call-to-action.
|
|
2079
3499
|
*/
|
|
@@ -2082,6 +3502,10 @@ export declare namespace RuleUpdateParams {
|
|
|
2082
3502
|
* API key for custom rewards integration.
|
|
2083
3503
|
*/
|
|
2084
3504
|
customRewardsApiKey?: string;
|
|
3505
|
+
/**
|
|
3506
|
+
* Flag indicating if the rule should use direct RPC to get the balance of tokens.
|
|
3507
|
+
*/
|
|
3508
|
+
directRpc?: boolean;
|
|
2085
3509
|
/**
|
|
2086
3510
|
* Array of Discord servers, channels, and roles to join.
|
|
2087
3511
|
*/
|
|
@@ -2118,10 +3542,6 @@ export declare namespace RuleUpdateParams {
|
|
|
2118
3542
|
* Indicates if the item has never been sold.
|
|
2119
3543
|
*/
|
|
2120
3544
|
hasNeverSold?: boolean;
|
|
2121
|
-
/**
|
|
2122
|
-
* Flag indicating whether the order source is included.
|
|
2123
|
-
*/
|
|
2124
|
-
hasOrderSource?: boolean;
|
|
2125
3545
|
/**
|
|
2126
3546
|
* Indicates if the full royalty has been paid for items.
|
|
2127
3547
|
*/
|
|
@@ -2138,10 +3558,18 @@ export declare namespace RuleUpdateParams {
|
|
|
2138
3558
|
* URL of the image associated with the rule.
|
|
2139
3559
|
*/
|
|
2140
3560
|
imageUrl?: string | null;
|
|
3561
|
+
/**
|
|
3562
|
+
* If enabled, the first transaction done on the platform will complete this rule
|
|
3563
|
+
*/
|
|
3564
|
+
isCheckInOnEveryTxn?: boolean;
|
|
2141
3565
|
/**
|
|
2142
3566
|
* Indicates if the multiplier has been applied to rewards.
|
|
2143
3567
|
*/
|
|
2144
3568
|
isMultiplierApplied?: boolean;
|
|
3569
|
+
/**
|
|
3570
|
+
* Flag indicating if the rule is restricted to new users.
|
|
3571
|
+
*/
|
|
3572
|
+
isRestrictedToNewUsers?: boolean;
|
|
2145
3573
|
/**
|
|
2146
3574
|
* Flag indicating if rewards are applied retroactively.
|
|
2147
3575
|
*/
|
|
@@ -2154,6 +3582,10 @@ export declare namespace RuleUpdateParams {
|
|
|
2154
3582
|
* Optional link associated with the metadata.
|
|
2155
3583
|
*/
|
|
2156
3584
|
link?: string | null;
|
|
3585
|
+
/**
|
|
3586
|
+
* Liquidity pool details.
|
|
3587
|
+
*/
|
|
3588
|
+
liquidity?: Metadata.Liquidity;
|
|
2157
3589
|
/**
|
|
2158
3590
|
* Maximum quantity constraint for token holding.
|
|
2159
3591
|
*/
|
|
@@ -2186,14 +3618,22 @@ export declare namespace RuleUpdateParams {
|
|
|
2186
3618
|
* give points for only one token ownership per contract
|
|
2187
3619
|
*/
|
|
2188
3620
|
onlyRewardSingleTokenOwnership?: boolean | null;
|
|
2189
|
-
/**
|
|
2190
|
-
* Order source of the order for the token sale
|
|
2191
|
-
*/
|
|
2192
|
-
orderSource?: string;
|
|
2193
3621
|
/**
|
|
2194
3622
|
* Promotional code associated with the rule.
|
|
2195
3623
|
*/
|
|
2196
3624
|
promoCode?: string;
|
|
3625
|
+
/**
|
|
3626
|
+
* URL of the CSV file containing promo codes.
|
|
3627
|
+
*/
|
|
3628
|
+
promoCodeCsvUrl?: string;
|
|
3629
|
+
/**
|
|
3630
|
+
* Numbers of the promotional code to be generated.
|
|
3631
|
+
*/
|
|
3632
|
+
promoCodeLength?: number | null;
|
|
3633
|
+
/**
|
|
3634
|
+
* Type of the promotional code.
|
|
3635
|
+
*/
|
|
3636
|
+
promoCodeType?: 'code' | 'csv' | 'generate';
|
|
2197
3637
|
/**
|
|
2198
3638
|
* Array defining ranges and corresponding rewards.
|
|
2199
3639
|
*/
|
|
@@ -2206,10 +3646,51 @@ export declare namespace RuleUpdateParams {
|
|
|
2206
3646
|
* Lump sum reward given to a referrer.
|
|
2207
3647
|
*/
|
|
2208
3648
|
referrerReward?: number | null;
|
|
3649
|
+
/**
|
|
3650
|
+
* Loyalty currency ID of the referrer reward.
|
|
3651
|
+
*/
|
|
3652
|
+
referrerRewardLoyaltyCurrencyId?: string | null;
|
|
3653
|
+
/**
|
|
3654
|
+
* Flag indicating if the post link is required.
|
|
3655
|
+
*/
|
|
3656
|
+
requirePostLink?: boolean | null;
|
|
3657
|
+
/**
|
|
3658
|
+
* Flag indicating if media metadata is required.
|
|
3659
|
+
*/
|
|
3660
|
+
requirePostMediaLink?: boolean | null;
|
|
3661
|
+
/**
|
|
3662
|
+
* Flag indicating if the rule can also reward badges per range.
|
|
3663
|
+
*/
|
|
3664
|
+
rewardBadgePerRange?: boolean;
|
|
3665
|
+
/**
|
|
3666
|
+
* Flag indicating if the reward is rewarded by batch.
|
|
3667
|
+
*/
|
|
3668
|
+
rewardByBatch?: boolean | null;
|
|
3669
|
+
/**
|
|
3670
|
+
* Criteria to evaluate the reward.
|
|
3671
|
+
*/
|
|
3672
|
+
rewardCriteria?: 'IMPRESSIONS_COUNT' | 'ELIGIBLE_POST' | null;
|
|
3673
|
+
/**
|
|
3674
|
+
* Flag indicating if the reward is rewarded per action.
|
|
3675
|
+
*/
|
|
3676
|
+
rewardPerAction?: boolean | null;
|
|
2209
3677
|
/**
|
|
2210
3678
|
* Flag indicating if rewards are given per impression.
|
|
2211
3679
|
*/
|
|
2212
3680
|
rewardPerImpression?: boolean | null;
|
|
3681
|
+
/**
|
|
3682
|
+
* Flag indicating if the rule should reward based on value of traded tokens
|
|
3683
|
+
* instead of count.
|
|
3684
|
+
*/
|
|
3685
|
+
rewardPerValue?: boolean;
|
|
3686
|
+
/**
|
|
3687
|
+
* Wallet address of the user can only be used if userId is not provided
|
|
3688
|
+
*/
|
|
3689
|
+
royaltyAddress?: string;
|
|
3690
|
+
/**
|
|
3691
|
+
* Royalty percentage of the item.
|
|
3692
|
+
*/
|
|
3693
|
+
royaltyPercentage?: number;
|
|
2213
3694
|
/**
|
|
2214
3695
|
* Currency associated with sales.
|
|
2215
3696
|
*/
|
|
@@ -2233,7 +3714,7 @@ export declare namespace RuleUpdateParams {
|
|
|
2233
3714
|
/**
|
|
2234
3715
|
* Social media platform associated with the rule.
|
|
2235
3716
|
*/
|
|
2236
|
-
socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | null;
|
|
3717
|
+
socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | 'Google' | null;
|
|
2237
3718
|
/**
|
|
2238
3719
|
* URL of the social platform's logo.
|
|
2239
3720
|
*/
|
|
@@ -2242,10 +3723,18 @@ export declare namespace RuleUpdateParams {
|
|
|
2242
3723
|
* Name of the social platform.
|
|
2243
3724
|
*/
|
|
2244
3725
|
socialPlatformName?: string | null;
|
|
3726
|
+
/**
|
|
3727
|
+
* ID of the Steam app.
|
|
3728
|
+
*/
|
|
3729
|
+
steamAppId?: string | null;
|
|
2245
3730
|
/**
|
|
2246
3731
|
* Array of streak milestones and corresponding rewards.
|
|
2247
3732
|
*/
|
|
2248
3733
|
streakArray?: Array<Metadata.StreakArray> | null;
|
|
3734
|
+
/**
|
|
3735
|
+
* Metadata for swap loyalty rules
|
|
3736
|
+
*/
|
|
3737
|
+
swap?: Metadata.Swap;
|
|
2249
3738
|
/**
|
|
2250
3739
|
* ID of the Telegram channel.
|
|
2251
3740
|
*/
|
|
@@ -2258,6 +3747,11 @@ export declare namespace RuleUpdateParams {
|
|
|
2258
3747
|
* Flag indicating if all contracts are tracked.
|
|
2259
3748
|
*/
|
|
2260
3749
|
trackAllContracts?: boolean | null;
|
|
3750
|
+
/**
|
|
3751
|
+
* Flag indicating if the progress is tracked. If enabled, the rule can only be
|
|
3752
|
+
* completed once the progress is 100%.
|
|
3753
|
+
*/
|
|
3754
|
+
trackProgress?: boolean | null;
|
|
2261
3755
|
/**
|
|
2262
3756
|
* URL of the associated Twitter account.
|
|
2263
3757
|
*/
|
|
@@ -2293,7 +3787,15 @@ export declare namespace RuleUpdateParams {
|
|
|
2293
3787
|
/**
|
|
2294
3788
|
* Type of wallet associated with the rule.
|
|
2295
3789
|
*/
|
|
2296
|
-
walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | null;
|
|
3790
|
+
walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | 'cosmos' | 'ultra' | 'agw' | null;
|
|
3791
|
+
/**
|
|
3792
|
+
* ID of the Youtube channel.
|
|
3793
|
+
*/
|
|
3794
|
+
youtubeChannelId?: string | null;
|
|
3795
|
+
/**
|
|
3796
|
+
* ID of the Youtube video.
|
|
3797
|
+
*/
|
|
3798
|
+
youtubeVideoId?: string | null;
|
|
2297
3799
|
}
|
|
2298
3800
|
namespace Metadata {
|
|
2299
3801
|
interface Collection {
|
|
@@ -2308,7 +3810,7 @@ export declare namespace RuleUpdateParams {
|
|
|
2308
3810
|
/**
|
|
2309
3811
|
* Blockchain network of the collection.
|
|
2310
3812
|
*/
|
|
2311
|
-
network?: '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' | '
|
|
3813
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia';
|
|
2312
3814
|
}
|
|
2313
3815
|
/**
|
|
2314
3816
|
* Object containing details for the call-to-action.
|
|
@@ -2373,6 +3875,49 @@ export declare namespace RuleUpdateParams {
|
|
|
2373
3875
|
*/
|
|
2374
3876
|
id: string;
|
|
2375
3877
|
}
|
|
3878
|
+
/**
|
|
3879
|
+
* Liquidity pool details.
|
|
3880
|
+
*/
|
|
3881
|
+
interface Liquidity {
|
|
3882
|
+
/**
|
|
3883
|
+
* Calculation type of the liquidity pool.
|
|
3884
|
+
*/
|
|
3885
|
+
calculationType?: 'fixed' | 'custom';
|
|
3886
|
+
/**
|
|
3887
|
+
* Custom function to calculate the the reward amount based on the liquidity
|
|
3888
|
+
* provided per day. X is the reward amount, Y is the liquidity provided per day in
|
|
3889
|
+
* USD.
|
|
3890
|
+
*/
|
|
3891
|
+
customFunction?: string;
|
|
3892
|
+
/**
|
|
3893
|
+
* Liquidity provided per day in USD
|
|
3894
|
+
*/
|
|
3895
|
+
liquidityPerDay?: number;
|
|
3896
|
+
/**
|
|
3897
|
+
* Blockchain network of the liquidity pool.
|
|
3898
|
+
*/
|
|
3899
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia';
|
|
3900
|
+
/**
|
|
3901
|
+
* Indicates if only in-range liquidity is rewarded.
|
|
3902
|
+
*/
|
|
3903
|
+
onlyRewardInRangeLiquidity?: boolean;
|
|
3904
|
+
/**
|
|
3905
|
+
* Array of liquidity pools associated with the rule.
|
|
3906
|
+
*/
|
|
3907
|
+
pools?: Array<Liquidity.Pool>;
|
|
3908
|
+
/**
|
|
3909
|
+
* Protocol of the liquidity pool.
|
|
3910
|
+
*/
|
|
3911
|
+
protocol?: string;
|
|
3912
|
+
}
|
|
3913
|
+
namespace Liquidity {
|
|
3914
|
+
interface Pool {
|
|
3915
|
+
/**
|
|
3916
|
+
* Unique identifier of the liquidity pool.
|
|
3917
|
+
*/
|
|
3918
|
+
id: string;
|
|
3919
|
+
}
|
|
3920
|
+
}
|
|
2376
3921
|
interface Range {
|
|
2377
3922
|
/**
|
|
2378
3923
|
* Reward amount for this range.
|
|
@@ -2386,6 +3931,14 @@ export declare namespace RuleUpdateParams {
|
|
|
2386
3931
|
* Start value of the range.
|
|
2387
3932
|
*/
|
|
2388
3933
|
startRange: number;
|
|
3934
|
+
/**
|
|
3935
|
+
* ID of the loyalty badge for this range.
|
|
3936
|
+
*/
|
|
3937
|
+
loyaltyBadgeId?: string;
|
|
3938
|
+
/**
|
|
3939
|
+
* Amount of the loyalty multiplier for this range.
|
|
3940
|
+
*/
|
|
3941
|
+
loyaltyMultiplierAmount?: number;
|
|
2389
3942
|
}
|
|
2390
3943
|
/**
|
|
2391
3944
|
* Object defining referral requirements.
|
|
@@ -2429,18 +3982,14 @@ export declare namespace RuleUpdateParams {
|
|
|
2429
3982
|
* Object containing details of the associated smart contract.
|
|
2430
3983
|
*/
|
|
2431
3984
|
interface SmartContract {
|
|
2432
|
-
/**
|
|
2433
|
-
* ABI of the smart contract.
|
|
2434
|
-
*/
|
|
2435
|
-
abi?: string | null;
|
|
2436
3985
|
/**
|
|
2437
3986
|
* Mapping of addresses for the smart contract.
|
|
2438
3987
|
*/
|
|
2439
3988
|
addressMapping?: string | null;
|
|
2440
3989
|
/**
|
|
2441
|
-
*
|
|
3990
|
+
* Object containing details of the amount multiplier from the event.
|
|
2442
3991
|
*/
|
|
2443
|
-
|
|
3992
|
+
amountMultiplier?: SmartContract.AmountMultiplier | null;
|
|
2444
3993
|
/**
|
|
2445
3994
|
* ID of the smart contract.
|
|
2446
3995
|
*/
|
|
@@ -2449,58 +3998,28 @@ export declare namespace RuleUpdateParams {
|
|
|
2449
3998
|
* Criteria to evaluate the smart contract event.
|
|
2450
3999
|
*/
|
|
2451
4000
|
criteria?: 'everyEvent' | 'byParameter' | null;
|
|
2452
|
-
/**
|
|
2453
|
-
* Time range applied to the rule.
|
|
2454
|
-
*/
|
|
2455
|
-
customRange?: SmartContract.CustomRange | null;
|
|
2456
4001
|
/**
|
|
2457
4002
|
* Event emitted by the smart contract.
|
|
2458
4003
|
*/
|
|
2459
4004
|
event?: string | null;
|
|
2460
|
-
/**
|
|
2461
|
-
* Maximum value allowed for the parameter.
|
|
2462
|
-
*/
|
|
2463
|
-
max?: number | null;
|
|
2464
4005
|
/**
|
|
2465
4006
|
* Array of parameters for the smart contract.
|
|
2466
4007
|
*/
|
|
2467
4008
|
params?: Array<SmartContract.Param> | null;
|
|
2468
4009
|
/**
|
|
2469
|
-
*
|
|
2470
|
-
*/
|
|
2471
|
-
withBonus?: boolean | null;
|
|
2472
|
-
/**
|
|
2473
|
-
* Flag indicating if a custom range is applied.
|
|
2474
|
-
*/
|
|
2475
|
-
withCustomRange?: boolean | null;
|
|
2476
|
-
/**
|
|
2477
|
-
* Flag indicating if a maximum limit is applied.
|
|
4010
|
+
* Type of the smart contract interaction.
|
|
2478
4011
|
*/
|
|
2479
|
-
|
|
4012
|
+
type?: 'function' | 'event' | null;
|
|
2480
4013
|
}
|
|
2481
4014
|
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
4015
|
/**
|
|
2493
|
-
*
|
|
4016
|
+
* Object containing details of the amount multiplier from the event.
|
|
2494
4017
|
*/
|
|
2495
|
-
interface
|
|
2496
|
-
/**
|
|
2497
|
-
* End time of the custom range.
|
|
2498
|
-
*/
|
|
2499
|
-
endsAt?: string | null;
|
|
4018
|
+
interface AmountMultiplier {
|
|
2500
4019
|
/**
|
|
2501
|
-
*
|
|
4020
|
+
* Mapping of the value for the smart contract.
|
|
2502
4021
|
*/
|
|
2503
|
-
|
|
4022
|
+
valueMapping?: string | null;
|
|
2504
4023
|
}
|
|
2505
4024
|
interface Param {
|
|
2506
4025
|
/**
|
|
@@ -2537,15 +4056,51 @@ export declare namespace RuleUpdateParams {
|
|
|
2537
4056
|
*/
|
|
2538
4057
|
streakMilestone: number;
|
|
2539
4058
|
}
|
|
4059
|
+
/**
|
|
4060
|
+
* Metadata for swap loyalty rules
|
|
4061
|
+
*/
|
|
4062
|
+
interface Swap {
|
|
4063
|
+
provider?: 'any' | 'relay' | 'lifi';
|
|
4064
|
+
relayReferrerId?: string;
|
|
4065
|
+
requireCrossChainSwap?: boolean;
|
|
4066
|
+
swappedToChain?: 'any' | number | string;
|
|
4067
|
+
swappedToTokens?: Array<Swap.SwappedToToken>;
|
|
4068
|
+
tokenMode?: 'any' | 'specific';
|
|
4069
|
+
trackTokenAmount?: boolean;
|
|
4070
|
+
}
|
|
4071
|
+
namespace Swap {
|
|
4072
|
+
interface SwappedToToken {
|
|
4073
|
+
address: string;
|
|
4074
|
+
chainId: string;
|
|
4075
|
+
}
|
|
4076
|
+
}
|
|
2540
4077
|
}
|
|
2541
4078
|
}
|
|
2542
4079
|
export interface RuleListParams {
|
|
4080
|
+
/**
|
|
4081
|
+
* IDs of the users to filter results by
|
|
4082
|
+
*/
|
|
4083
|
+
allotedToUserId?: string | Array<string>;
|
|
4084
|
+
/**
|
|
4085
|
+
* ID of the user group to filter results by
|
|
4086
|
+
*/
|
|
4087
|
+
allotedUserGroupId?: string;
|
|
2543
4088
|
/**
|
|
2544
4089
|
* Address of the collection to filter by
|
|
2545
4090
|
*/
|
|
2546
4091
|
collectionAddress?: string;
|
|
2547
4092
|
/**
|
|
2548
|
-
*
|
|
4093
|
+
* If true this will only return active rules, the rules for which the startTime is
|
|
4094
|
+
* in the past and the endTime is in the future
|
|
4095
|
+
*/
|
|
4096
|
+
isActive?: 'true' | 'false';
|
|
4097
|
+
/**
|
|
4098
|
+
* If true this will only return special rules, special rules are the rules that
|
|
4099
|
+
* are used for anti sybil as honey pot
|
|
4100
|
+
*/
|
|
4101
|
+
isSpecial?: 'true' | 'false';
|
|
4102
|
+
/**
|
|
4103
|
+
* Maximum number of records to return (max 100)
|
|
2549
4104
|
*/
|
|
2550
4105
|
limit?: number;
|
|
2551
4106
|
/**
|
|
@@ -2569,6 +4124,12 @@ export interface RuleListParams {
|
|
|
2569
4124
|
*/
|
|
2570
4125
|
websiteId?: string;
|
|
2571
4126
|
}
|
|
4127
|
+
export interface RuleDeleteParams {
|
|
4128
|
+
/**
|
|
4129
|
+
* Whether to debit loyalty points
|
|
4130
|
+
*/
|
|
4131
|
+
debitLoyaltyPoints?: string;
|
|
4132
|
+
}
|
|
2572
4133
|
export interface RuleCompleteParams {
|
|
2573
4134
|
/**
|
|
2574
4135
|
* Override amount for the reward (rounded to nearest whole number). This will
|
|
@@ -2576,13 +4137,21 @@ export interface RuleCompleteParams {
|
|
|
2576
4137
|
*/
|
|
2577
4138
|
amount?: number | null;
|
|
2578
4139
|
/**
|
|
2579
|
-
* Link to the comment made by user
|
|
4140
|
+
* Link to the post/comment made by user
|
|
4141
|
+
*/
|
|
4142
|
+
contentUrl?: string;
|
|
4143
|
+
/**
|
|
4144
|
+
* Unique key to ensure idempotent requests.
|
|
2580
4145
|
*/
|
|
2581
|
-
|
|
4146
|
+
idempotencyKey?: string;
|
|
2582
4147
|
/**
|
|
2583
4148
|
* ID of the choice selected by the user
|
|
2584
4149
|
*/
|
|
2585
4150
|
loyaltyQuestionChoiceId?: string;
|
|
4151
|
+
/**
|
|
4152
|
+
* Value to compare with the range
|
|
4153
|
+
*/
|
|
4154
|
+
rangeValue?: number | null;
|
|
2586
4155
|
/**
|
|
2587
4156
|
* Unique identifier for the user
|
|
2588
4157
|
*/
|
|
@@ -2593,7 +4162,7 @@ export interface RuleCompleteParams {
|
|
|
2593
4162
|
verificationCode?: string;
|
|
2594
4163
|
/**
|
|
2595
4164
|
* Flag indicating if only verification is required, this will not create a
|
|
2596
|
-
* transaction and reward the user
|
|
4165
|
+
* transaction and reward the user.
|
|
2597
4166
|
*/
|
|
2598
4167
|
verifyOnly?: string;
|
|
2599
4168
|
/**
|
|
@@ -2602,11 +4171,25 @@ export interface RuleCompleteParams {
|
|
|
2602
4171
|
walletAddress?: string;
|
|
2603
4172
|
}
|
|
2604
4173
|
export interface RuleGetStatusParams {
|
|
2605
|
-
|
|
2606
|
-
|
|
4174
|
+
/**
|
|
4175
|
+
* Number of items to return
|
|
4176
|
+
*/
|
|
4177
|
+
limit?: number | null;
|
|
4178
|
+
/**
|
|
4179
|
+
* Unique identifier for the loyalty rule[s]
|
|
4180
|
+
*/
|
|
4181
|
+
loyaltyRuleId?: string | Array<string>;
|
|
4182
|
+
organizationId?: string;
|
|
4183
|
+
/**
|
|
4184
|
+
* Starting after item
|
|
4185
|
+
*/
|
|
4186
|
+
startingAfter?: string;
|
|
4187
|
+
userGroupId?: string;
|
|
2607
4188
|
userId?: string;
|
|
4189
|
+
walletAddress?: string;
|
|
4190
|
+
websiteId?: string;
|
|
2608
4191
|
}
|
|
2609
4192
|
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, };
|
|
4193
|
+
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
4194
|
}
|
|
2612
4195
|
//# sourceMappingURL=rules.d.ts.map
|