@snagsolutions/sdk 0.1.0-alpha.21 → 0.1.0-alpha.210
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 +1703 -0
- package/LICENSE +1 -1
- package/README.md +15 -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 +7 -4
- package/index.d.ts +7 -4
- package/index.d.ts.map +1 -1
- package/index.js +8 -4
- package/index.js.map +1 -1
- package/index.mjs +8 -4
- 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 +368 -0
- package/resources/auctions/auctions.d.ts.map +1 -0
- package/resources/auctions/auctions.js +72 -0
- package/resources/auctions/auctions.js.map +1 -0
- package/resources/auctions/auctions.mjs +45 -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 +126 -0
- package/resources/auctions/website-user-attributes/values.d.ts.map +1 -0
- package/resources/auctions/website-user-attributes/values.js +49 -0
- package/resources/auctions/website-user-attributes/values.js.map +1 -0
- package/resources/auctions/website-user-attributes/values.mjs +45 -0
- package/resources/auctions/website-user-attributes/values.mjs.map +1 -0
- package/resources/auctions/website-user-attributes/website-user-attributes.d.ts +136 -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 +76 -0
- package/resources/auctions/website-user-attributes/website-user-attributes.js.map +1 -0
- package/resources/auctions/website-user-attributes/website-user-attributes.mjs +49 -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 +17 -4
- 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 +2 -2
- 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 +1 -1
- package/resources/index.mjs.map +1 -1
- package/resources/loyalty/account-streaks.d.ts +96 -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 +60 -16
- package/resources/loyalty/accounts.d.ts.map +1 -1
- package/resources/loyalty/accounts.js +14 -0
- package/resources/loyalty/accounts.js.map +1 -1
- package/resources/loyalty/accounts.mjs +14 -0
- package/resources/loyalty/accounts.mjs.map +1 -1
- package/resources/loyalty/badges.d.ts +666 -135
- 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 -4
- package/resources/loyalty/index.d.ts.map +1 -1
- package/resources/loyalty/index.js +5 -5
- package/resources/loyalty/index.js.map +1 -1
- package/resources/loyalty/index.mjs +3 -3
- package/resources/loyalty/index.mjs.map +1 -1
- package/resources/loyalty/loyalty.d.ts +11 -11
- package/resources/loyalty/loyalty.d.ts.map +1 -1
- package/resources/loyalty/loyalty.js +6 -6
- package/resources/loyalty/loyalty.js.map +1 -1
- package/resources/loyalty/loyalty.mjs +7 -7
- 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 +55 -4
- 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 +60 -6
- package/resources/loyalty/questions.d.ts.map +1 -1
- package/resources/loyalty/questions.js +39 -0
- package/resources/loyalty/questions.js.map +1 -1
- package/resources/loyalty/questions.mjs +39 -0
- package/resources/loyalty/questions.mjs.map +1 -1
- package/resources/loyalty/rule-edits.d.ts +2714 -8
- 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 +300 -64
- package/resources/loyalty/rule-groups.d.ts.map +1 -1
- package/resources/loyalty/rule-groups.js +38 -2
- package/resources/loyalty/rule-groups.js.map +1 -1
- package/resources/loyalty/rule-groups.mjs +38 -2
- package/resources/loyalty/rule-groups.mjs.map +1 -1
- package/resources/loyalty/rules.d.ts +2036 -290
- 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 +120 -0
- package/resources/loyalty/transactions/rule-statuses.d.ts.map +1 -0
- package/resources/loyalty/transactions/rule-statuses.js +30 -0
- package/resources/loyalty/transactions/rule-statuses.js.map +1 -0
- package/resources/loyalty/transactions/rule-statuses.mjs +26 -0
- package/resources/loyalty/transactions/rule-statuses.mjs.map +1 -0
- package/resources/loyalty/transactions/transactions.d.ts +410 -0
- package/resources/loyalty/transactions/transactions.d.ts.map +1 -0
- package/resources/loyalty/transactions/transactions.js +76 -0
- package/resources/loyalty/transactions/transactions.js.map +1 -0
- package/resources/loyalty/transactions/transactions.mjs +49 -0
- package/resources/loyalty/transactions/transactions.mjs.map +1 -0
- package/resources/loyalty/transactions.d.ts +1 -248
- 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 +12 -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 +30 -3
- package/resources/referral/users.d.ts.map +1 -1
- package/resources/referral/users.js +12 -4
- package/resources/referral/users.js.map +1 -1
- package/resources/referral/users.mjs +12 -4
- 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 +36 -3
- 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 +192 -35
- package/resources/users/users.d.ts.map +1 -1
- package/resources/users/users.js +58 -1
- package/resources/users/users.js.map +1 -1
- package/resources/users/users.mjs +58 -1
- package/resources/users/users.mjs.map +1 -1
- package/resources/websites/website-collections.d.ts +22 -1
- package/resources/websites/website-collections.d.ts.map +1 -1
- package/resources/websites/website-collections.js +21 -0
- package/resources/websites/website-collections.js.map +1 -1
- package/resources/websites/website-collections.mjs +21 -0
- package/resources/websites/website-collections.mjs.map +1 -1
- package/resources/websites/website-user-roles.d.ts +24 -1
- 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 +12 -0
- package/resources/websites/websites.d.ts.map +1 -1
- package/resources/websites/websites.js +7 -0
- package/resources/websites/websites.js.map +1 -1
- package/resources/websites/websites.mjs +7 -0
- package/resources/websites/websites.mjs.map +1 -1
- package/src/core.ts +39 -16
- package/src/index.ts +31 -2
- package/src/resource.ts +1 -1
- package/src/resources/assets.ts +18 -3
- package/src/resources/auctions/auctions.ts +561 -0
- package/src/resources/auctions/index.ts +19 -0
- package/src/resources/auctions/website-user-attributes/index.ts +18 -0
- package/src/resources/auctions/website-user-attributes/values.ts +170 -0
- package/src/resources/auctions/website-user-attributes/website-user-attributes.ts +212 -0
- package/src/resources/auctions/website-user-attributes.ts +3 -0
- package/src/resources/auctions.ts +1 -207
- package/src/resources/auth.ts +21 -5
- package/src/resources/index.ts +12 -1
- package/src/resources/loyalty/account-streaks.ts +128 -0
- package/src/resources/loyalty/accounts.ts +65 -18
- package/src/resources/loyalty/badges.ts +790 -146
- package/src/resources/loyalty/currencies.ts +19 -0
- package/src/resources/loyalty/index.ts +19 -3
- package/src/resources/loyalty/loyalty.ts +39 -15
- package/src/resources/loyalty/multipliers.ts +43 -4
- package/src/resources/loyalty/questions-responses.ts +64 -4
- package/src/resources/loyalty/questions.ts +64 -6
- package/src/resources/loyalty/rule-edits.ts +3942 -100
- package/src/resources/loyalty/rule-groups.ts +527 -76
- package/src/resources/loyalty/rules.ts +3143 -301
- package/src/resources/loyalty/transactions/index.ts +18 -0
- package/src/resources/loyalty/transactions/rule-statuses.ts +178 -0
- package/src/resources/loyalty/transactions/transactions.ts +699 -0
- package/src/resources/loyalty/transactions.ts +1 -440
- package/src/resources/minting.ts +25 -5
- package/src/resources/referral/referral.ts +15 -11
- package/src/resources/referral/users.ts +45 -5
- package/src/resources/users/index.ts +4 -0
- package/src/resources/users/metadatas.ts +61 -3
- package/src/resources/users/users.ts +259 -38
- package/src/resources/websites/website-collections.ts +42 -1
- package/src/resources/websites/website-user-roles.ts +25 -1
- package/src/resources/websites/websites.ts +12 -0
- 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
- package/resources/loyalty/rule-chains.d.ts +0 -34
- package/resources/loyalty/rule-chains.d.ts.map +0 -1
- package/resources/loyalty/rule-chains.js +0 -15
- package/resources/loyalty/rule-chains.js.map +0 -1
- package/resources/loyalty/rule-chains.mjs +0 -11
- package/resources/loyalty/rule-chains.mjs.map +0 -1
- package/src/resources/loyalty/rule-chains.ts +0 -45
|
@@ -3,34 +3,92 @@ import * as Core from "../../core.js";
|
|
|
3
3
|
export declare class Rules extends APIResource {
|
|
4
4
|
/**
|
|
5
5
|
* Create a new Loyalty Rule
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```ts
|
|
9
|
+
* const rule = await client.loyalty.rules.create({
|
|
10
|
+
* amount: '10.5',
|
|
11
|
+
* effectiveEndTime: '2024-12-31T23:59:00Z',
|
|
12
|
+
* effectiveStartTime: '2024-01-01T00:00:00Z',
|
|
13
|
+
* endTime: '2024-12-31T23:59:00Z',
|
|
14
|
+
* frequency: 'daily',
|
|
15
|
+
* loyaltyCurrencyId: '456e1234-e89b-12d3-a456-426614174003',
|
|
16
|
+
* metadata: {},
|
|
17
|
+
* name: 'Referral Bonus Rule',
|
|
18
|
+
* organizationId: '123e4567-e89b-12d3-a456-426614174001',
|
|
19
|
+
* startTime: '2024-01-01T00:00:00Z',
|
|
20
|
+
* type: 'Bonus',
|
|
21
|
+
* websiteId: '123e4567-e89b-12d3-a456-426614174002',
|
|
22
|
+
* });
|
|
23
|
+
* ```
|
|
6
24
|
*/
|
|
7
25
|
create(body: RuleCreateParams, options?: Core.RequestOptions): Core.APIPromise<RuleCreateResponse>;
|
|
8
26
|
/**
|
|
9
27
|
* Update an existing Loyalty Rule
|
|
28
|
+
*
|
|
29
|
+
* @example
|
|
30
|
+
* ```ts
|
|
31
|
+
* const rule = await client.loyalty.rules.update(
|
|
32
|
+
* '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
|
|
33
|
+
* {
|
|
34
|
+
* amount: '10.5',
|
|
35
|
+
* endTime: '2024-12-31T23:59:00Z',
|
|
36
|
+
* name: 'Daily Rewards Program',
|
|
37
|
+
* },
|
|
38
|
+
* );
|
|
39
|
+
* ```
|
|
10
40
|
*/
|
|
11
41
|
update(id: string, body: RuleUpdateParams, options?: Core.RequestOptions): Core.APIPromise<RuleUpdateResponse>;
|
|
12
42
|
/**
|
|
13
43
|
* Retrieve configured loyalty rules with optional pagination and filters
|
|
44
|
+
*
|
|
45
|
+
* @example
|
|
46
|
+
* ```ts
|
|
47
|
+
* const rules = await client.loyalty.rules.list();
|
|
48
|
+
* ```
|
|
14
49
|
*/
|
|
15
50
|
list(query?: RuleListParams, options?: Core.RequestOptions): Core.APIPromise<RuleListResponse>;
|
|
16
51
|
list(options?: Core.RequestOptions): Core.APIPromise<RuleListResponse>;
|
|
17
52
|
/**
|
|
18
53
|
* Delete an existing Loyalty Rule
|
|
54
|
+
*
|
|
55
|
+
* @example
|
|
56
|
+
* ```ts
|
|
57
|
+
* const rule = await client.loyalty.rules.delete(
|
|
58
|
+
* '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
|
|
59
|
+
* );
|
|
60
|
+
* ```
|
|
19
61
|
*/
|
|
62
|
+
delete(id: string, params?: RuleDeleteParams, options?: Core.RequestOptions): Core.APIPromise<RuleDeleteResponse>;
|
|
20
63
|
delete(id: string, options?: Core.RequestOptions): Core.APIPromise<RuleDeleteResponse>;
|
|
21
64
|
/**
|
|
22
65
|
* Verify a loyalty rule based on user action and reward them if applicable. This
|
|
23
66
|
* endpoint currently only supports following rule types code_entry, text_input,
|
|
24
67
|
* link_click, discord_member, connect_wallet, check_in, external_rule,
|
|
25
68
|
* drip_x_follow, drip_x_new_tweet, drip_x_text_in_bio, drip_x_text_in_name,
|
|
26
|
-
* drip_x_text_in_comment, drip_x_tweet, telegram_join, DiscordMessages
|
|
69
|
+
* drip_x_text_in_comment, drip_x_tweet, telegram_join, DiscordMessages,
|
|
70
|
+
* youtube_subscribers, youtube_comment, steam_wishlist, discord_role_grant
|
|
71
|
+
*
|
|
72
|
+
* @example
|
|
73
|
+
* ```ts
|
|
74
|
+
* const response = await client.loyalty.rules.complete(
|
|
75
|
+
* '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
|
|
76
|
+
* );
|
|
77
|
+
* ```
|
|
27
78
|
*/
|
|
28
79
|
complete(id: string, body?: RuleCompleteParams, options?: Core.RequestOptions): Core.APIPromise<RuleCompleteResponse>;
|
|
29
80
|
complete(id: string, options?: Core.RequestOptions): Core.APIPromise<RuleCompleteResponse>;
|
|
30
81
|
/**
|
|
31
|
-
* This will return the processing status of quests for a specific user
|
|
82
|
+
* This will return the processing status of quests for a specific user and also
|
|
83
|
+
* the progress of the loyalty rule
|
|
84
|
+
*
|
|
85
|
+
* @example
|
|
86
|
+
* ```ts
|
|
87
|
+
* const response = await client.loyalty.rules.getStatus();
|
|
88
|
+
* ```
|
|
32
89
|
*/
|
|
33
|
-
getStatus(query
|
|
90
|
+
getStatus(query?: RuleGetStatusParams, options?: Core.RequestOptions): Core.APIPromise<RuleGetStatusResponse>;
|
|
91
|
+
getStatus(options?: Core.RequestOptions): Core.APIPromise<RuleGetStatusResponse>;
|
|
34
92
|
}
|
|
35
93
|
export interface RuleCreateResponse {
|
|
36
94
|
id: string;
|
|
@@ -77,7 +135,7 @@ export interface RuleCreateResponse {
|
|
|
77
135
|
/**
|
|
78
136
|
* Type of loyalty rule being created
|
|
79
137
|
*/
|
|
80
|
-
type: 'Bonus' | 'BoughtOn' | 'BoughtWithRoyalties' | 'DiscordMessages' | 'Listing' | 'Lodging' | 'MintOn' | 'PoapClaim' | 'SnagSocialsConnected' | 'SnapshotFullset' | 'SnapshotHold' | 'SoldOn' | 'SoldWithRoyalties' | 'TokenHold' | 'TwitterBio' | 'TwitterHashTagPost' | 'Retweet' | 'check_in' | 'code_entry' | 'connect_wallet' | 'connected_discord' | 'connected_email' | 'connected_epic' | 'connected_steam' | 'connected_telegram' | 'connected_twitter' | 'create_partner_account' | 'discord_member' | 'drip_x_follow' | 'drip_x_new_tweet' | 'drip_x_text_in_bio' | 'drip_x_text_in_comment' | 'drip_x_text_in_name' | 'drip_x_tweet' | 'external_rule' | 'link_click' | 'manual_upload' | 'profile_completed' | 'referred_user' | 'smart_contract_event' | 'snapshot_governance' | 'telegram_join' | 'telegram_messages' | 'text_input' | 'token_hold_erc20' | 'tweet_liked_by_project' | 'twitter_comment' | 'twitter_follow' | 'twitter_followers' | 'twitter_like' | 'twitter_post_hashtag' | 'quiz' | 'poll';
|
|
138
|
+
type: 'Bonus' | 'BoughtOn' | 'BoughtWithRoyalties' | 'DiscordMessages' | 'Listing' | 'Lodging' | 'MintOn' | 'PoapClaim' | 'SnagSocialsConnected' | 'SnapshotFullset' | 'SnapshotHold' | 'SoldOn' | 'SoldWithRoyalties' | 'TokenHold' | 'TwitterBio' | 'TwitterHashTagPost' | 'Retweet' | 'check_in' | 'code_entry' | 'connect_wallet' | 'connected_discord' | 'connected_email' | 'connected_epic' | 'connected_github' | 'connected_steam' | 'connected_telegram' | 'connected_twitter' | 'create_partner_account' | 'discord_member' | 'drip_x_follow' | 'drip_x_new_tweet' | 'drip_x_text_in_bio' | 'drip_x_text_in_comment' | 'drip_x_text_in_name' | 'drip_x_tweet' | 'external_rule' | 'link_click' | 'manual_upload' | 'profile_completed' | 'referred_user' | 'smart_contract_event' | 'snapshot_governance' | 'telegram_join' | 'telegram_messages' | 'text_input' | 'token_hold_erc20' | 'tweet_liked_by_project' | 'twitter_comment' | 'twitter_follow' | 'twitter_followers' | 'twitter_like' | 'twitter_post_hashtag' | 'quiz' | 'poll' | 'steam_wishlist' | 'liquidity_uniswap_v2' | 'liquidity_uniswap_v3' | 'points_airdrop' | 'youtube_subscribers' | 'youtube_comment' | 'shopify_spend' | 'swap' | 'tiktok_post' | 'post_impressions' | 'discord_join' | 'connected_youtube' | 'stratus_function' | 'connected_tiktok' | 'tiktok_follow' | 'github_repo_star' | 'github_repo_fork' | 'github_repo_collaborator' | 'github_merge_PR' | 'discord_role_grant' | 'connected_reddit' | 'reddit_comment';
|
|
81
139
|
/**
|
|
82
140
|
* Unique identifier for the associated website
|
|
83
141
|
*/
|
|
@@ -86,6 +144,10 @@ export interface RuleCreateResponse {
|
|
|
86
144
|
* URL of the background asset to be displayed
|
|
87
145
|
*/
|
|
88
146
|
backgroundAssetUrl?: string;
|
|
147
|
+
/**
|
|
148
|
+
* The type of claim for the reward
|
|
149
|
+
*/
|
|
150
|
+
claimType?: 'manual' | 'auto' | null;
|
|
89
151
|
/**
|
|
90
152
|
* Blockchain address of the associated collection
|
|
91
153
|
*/
|
|
@@ -106,6 +168,15 @@ export interface RuleCreateResponse {
|
|
|
106
168
|
* Optional detailed description of the rule
|
|
107
169
|
*/
|
|
108
170
|
description?: string;
|
|
171
|
+
duplicatedFromId?: string | null;
|
|
172
|
+
/**
|
|
173
|
+
* ID of the external integration
|
|
174
|
+
*/
|
|
175
|
+
externalIntegrationId?: string | null;
|
|
176
|
+
/**
|
|
177
|
+
* Optional stratus function id for the rule
|
|
178
|
+
*/
|
|
179
|
+
functionId?: string | null;
|
|
109
180
|
/**
|
|
110
181
|
* Whether to hide this rule in the user interface
|
|
111
182
|
*/
|
|
@@ -113,15 +184,33 @@ export interface RuleCreateResponse {
|
|
|
113
184
|
/**
|
|
114
185
|
* Interval between rule executions
|
|
115
186
|
*/
|
|
116
|
-
interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | null;
|
|
187
|
+
interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | 'unlimited' | null;
|
|
117
188
|
/**
|
|
118
189
|
* Whether this rule is mandatory
|
|
119
190
|
*/
|
|
120
191
|
isRequired?: boolean;
|
|
192
|
+
/**
|
|
193
|
+
* Unique identifier for the loyalty badge
|
|
194
|
+
*/
|
|
195
|
+
loyaltyBadgeId?: string | null;
|
|
121
196
|
/**
|
|
122
197
|
* Unique identifier for the loyalty rule group
|
|
123
198
|
*/
|
|
124
199
|
loyaltyRuleGroupId?: 'no-section' | (string & {}) | null;
|
|
200
|
+
/**
|
|
201
|
+
* URL for uploading loyalty user allotment via CSV
|
|
202
|
+
*/
|
|
203
|
+
loyaltyUserAllotmentCsvUrl?: string;
|
|
204
|
+
/**
|
|
205
|
+
* The interval for the max amount. Available for the smart contract and external
|
|
206
|
+
* rules.
|
|
207
|
+
*/
|
|
208
|
+
maxAmountInterval?: 'daily' | 'weekly' | 'monthly' | 'lifetime' | null;
|
|
209
|
+
/**
|
|
210
|
+
* The maximum amount of points a user can earn per interval. Available for the
|
|
211
|
+
* smart contract and external rules.
|
|
212
|
+
*/
|
|
213
|
+
maxAmountPerInterval?: number | null;
|
|
125
214
|
/**
|
|
126
215
|
* URL of the media to be displayed
|
|
127
216
|
*/
|
|
@@ -129,25 +218,46 @@ export interface RuleCreateResponse {
|
|
|
129
218
|
/**
|
|
130
219
|
* Blockchain network where the rule will apply
|
|
131
220
|
*/
|
|
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' | '
|
|
221
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'skaleEuropa' | 'skaleCalypso' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
|
|
133
222
|
/**
|
|
134
223
|
* OAuth credentials associated with the rule
|
|
135
224
|
*/
|
|
136
225
|
oauthCredentialsId?: string | null;
|
|
226
|
+
/**
|
|
227
|
+
* The lifetime of the reward
|
|
228
|
+
*/
|
|
229
|
+
rewardLifetime?: 'permanent' | 'dynamic' | null;
|
|
137
230
|
/**
|
|
138
231
|
* Type of reward issued by the rule
|
|
139
232
|
*/
|
|
140
|
-
rewardType?: 'points' | 'multiplier';
|
|
233
|
+
rewardType?: 'points' | 'multiplier' | 'badge';
|
|
141
234
|
/**
|
|
142
|
-
*
|
|
235
|
+
* URL of the Shopify store
|
|
143
236
|
*/
|
|
144
|
-
|
|
237
|
+
shopifyStoreUrl?: string | null;
|
|
238
|
+
/**
|
|
239
|
+
* Whether to show this rule before the start time
|
|
240
|
+
*/
|
|
241
|
+
showBeforeStart?: boolean;
|
|
242
|
+
/**
|
|
243
|
+
* Optional stratus subscription id for the rule
|
|
244
|
+
*/
|
|
245
|
+
subscriptionId?: string | null;
|
|
145
246
|
}
|
|
146
247
|
export declare namespace RuleCreateResponse {
|
|
147
248
|
/**
|
|
148
249
|
* Additional metadata for the loyalty rule
|
|
149
250
|
*/
|
|
150
251
|
interface Metadata {
|
|
252
|
+
/**
|
|
253
|
+
* Array of loyalty rule IDs that count as check-in when completed. If ["any"] then
|
|
254
|
+
* any rule completions count as check-in.
|
|
255
|
+
*/
|
|
256
|
+
autoCheckInRuleIds?: Array<(string & {}) | 'any'> | null;
|
|
257
|
+
/**
|
|
258
|
+
* Number of tokens per batch.
|
|
259
|
+
*/
|
|
260
|
+
batchSize?: number | null;
|
|
151
261
|
/**
|
|
152
262
|
* Text displayed on the action button.
|
|
153
263
|
*/
|
|
@@ -167,7 +277,7 @@ export declare namespace RuleCreateResponse {
|
|
|
167
277
|
/**
|
|
168
278
|
* Text to check in the Twitter post, username, or bio.
|
|
169
279
|
*/
|
|
170
|
-
checkText?: string | null;
|
|
280
|
+
checkText?: string | Array<string> | null;
|
|
171
281
|
/**
|
|
172
282
|
* Array of collections associated with the rule.
|
|
173
283
|
*/
|
|
@@ -175,7 +285,13 @@ export declare namespace RuleCreateResponse {
|
|
|
175
285
|
/**
|
|
176
286
|
* Conditions for completing the profile.
|
|
177
287
|
*/
|
|
178
|
-
completeProfileConditions?:
|
|
288
|
+
completeProfileConditions?: {
|
|
289
|
+
[key: string]: boolean;
|
|
290
|
+
} | null;
|
|
291
|
+
/**
|
|
292
|
+
* Description of the external rule condition (only for external rules)
|
|
293
|
+
*/
|
|
294
|
+
conditionDescription?: string;
|
|
179
295
|
/**
|
|
180
296
|
* Object containing details for the call-to-action.
|
|
181
297
|
*/
|
|
@@ -184,6 +300,10 @@ export declare namespace RuleCreateResponse {
|
|
|
184
300
|
* API key for custom rewards integration.
|
|
185
301
|
*/
|
|
186
302
|
customRewardsApiKey?: string;
|
|
303
|
+
/**
|
|
304
|
+
* Flag indicating if the rule should use direct RPC to get the balance of tokens.
|
|
305
|
+
*/
|
|
306
|
+
directRpc?: boolean;
|
|
187
307
|
/**
|
|
188
308
|
* Array of Discord servers, channels, and roles to join.
|
|
189
309
|
*/
|
|
@@ -204,6 +324,10 @@ export declare namespace RuleCreateResponse {
|
|
|
204
324
|
* Flag indicating whether the verified multiplier is enabled.
|
|
205
325
|
*/
|
|
206
326
|
enableVerifiedMultiplier?: boolean;
|
|
327
|
+
/**
|
|
328
|
+
* Type of ERC20 token for the loyalty rule.
|
|
329
|
+
*/
|
|
330
|
+
erc20Type?: 'erc20' | 'native';
|
|
207
331
|
/**
|
|
208
332
|
* Fill source of the order for the token sale
|
|
209
333
|
*/
|
|
@@ -212,6 +336,14 @@ export declare namespace RuleCreateResponse {
|
|
|
212
336
|
* Percentage reward given to a user for their first referral.
|
|
213
337
|
*/
|
|
214
338
|
firstReferralReward?: number | null;
|
|
339
|
+
/**
|
|
340
|
+
* Name of the GitHub branch to check for PR merge.
|
|
341
|
+
*/
|
|
342
|
+
githubBranchName?: string | null;
|
|
343
|
+
/**
|
|
344
|
+
* URL of the GitHub repository to check for star.
|
|
345
|
+
*/
|
|
346
|
+
githubRepoUrl?: string | null;
|
|
215
347
|
/**
|
|
216
348
|
* Flag indicating whether the fill source is included.
|
|
217
349
|
*/
|
|
@@ -220,10 +352,6 @@ export declare namespace RuleCreateResponse {
|
|
|
220
352
|
* Indicates if the item has never been sold.
|
|
221
353
|
*/
|
|
222
354
|
hasNeverSold?: boolean;
|
|
223
|
-
/**
|
|
224
|
-
* Flag indicating whether the order source is included.
|
|
225
|
-
*/
|
|
226
|
-
hasOrderSource?: boolean;
|
|
227
355
|
/**
|
|
228
356
|
* Indicates if the full royalty has been paid for items.
|
|
229
357
|
*/
|
|
@@ -240,10 +368,18 @@ export declare namespace RuleCreateResponse {
|
|
|
240
368
|
* URL of the image associated with the rule.
|
|
241
369
|
*/
|
|
242
370
|
imageUrl?: string | null;
|
|
371
|
+
/**
|
|
372
|
+
* If enabled, the first transaction done on the platform will complete this rule
|
|
373
|
+
*/
|
|
374
|
+
isCheckInOnEveryTxn?: boolean;
|
|
243
375
|
/**
|
|
244
376
|
* Indicates if the multiplier has been applied to rewards.
|
|
245
377
|
*/
|
|
246
378
|
isMultiplierApplied?: boolean;
|
|
379
|
+
/**
|
|
380
|
+
* Flag indicating if the rule is restricted to new users.
|
|
381
|
+
*/
|
|
382
|
+
isRestrictedToNewUsers?: boolean;
|
|
247
383
|
/**
|
|
248
384
|
* Flag indicating if rewards are applied retroactively.
|
|
249
385
|
*/
|
|
@@ -256,6 +392,10 @@ export declare namespace RuleCreateResponse {
|
|
|
256
392
|
* Optional link associated with the metadata.
|
|
257
393
|
*/
|
|
258
394
|
link?: string | null;
|
|
395
|
+
/**
|
|
396
|
+
* Liquidity pool details.
|
|
397
|
+
*/
|
|
398
|
+
liquidity?: Metadata.Liquidity;
|
|
259
399
|
/**
|
|
260
400
|
* Maximum quantity constraint for token holding.
|
|
261
401
|
*/
|
|
@@ -288,18 +428,30 @@ export declare namespace RuleCreateResponse {
|
|
|
288
428
|
* give points for only one token ownership per contract
|
|
289
429
|
*/
|
|
290
430
|
onlyRewardSingleTokenOwnership?: boolean | null;
|
|
291
|
-
/**
|
|
292
|
-
* Order source of the order for the token sale
|
|
293
|
-
*/
|
|
294
|
-
orderSource?: string;
|
|
295
431
|
/**
|
|
296
432
|
* Promotional code associated with the rule.
|
|
297
433
|
*/
|
|
298
434
|
promoCode?: string;
|
|
435
|
+
/**
|
|
436
|
+
* URL of the CSV file containing promo codes.
|
|
437
|
+
*/
|
|
438
|
+
promoCodeCsvUrl?: string;
|
|
439
|
+
/**
|
|
440
|
+
* Numbers of the promotional code to be generated.
|
|
441
|
+
*/
|
|
442
|
+
promoCodeLength?: number | null;
|
|
443
|
+
/**
|
|
444
|
+
* Type of the promotional code.
|
|
445
|
+
*/
|
|
446
|
+
promoCodeType?: 'code' | 'csv' | 'generate';
|
|
299
447
|
/**
|
|
300
448
|
* Array defining ranges and corresponding rewards.
|
|
301
449
|
*/
|
|
302
450
|
range?: Array<Metadata.Range>;
|
|
451
|
+
/**
|
|
452
|
+
* ID of the Reddit post.
|
|
453
|
+
*/
|
|
454
|
+
redditPostId?: string | null;
|
|
303
455
|
/**
|
|
304
456
|
* Object defining referral requirements.
|
|
305
457
|
*/
|
|
@@ -308,10 +460,55 @@ export declare namespace RuleCreateResponse {
|
|
|
308
460
|
* Lump sum reward given to a referrer.
|
|
309
461
|
*/
|
|
310
462
|
referrerReward?: number | null;
|
|
463
|
+
/**
|
|
464
|
+
* Loyalty currency ID of the referrer reward.
|
|
465
|
+
*/
|
|
466
|
+
referrerRewardLoyaltyCurrencyId?: string | null;
|
|
467
|
+
/**
|
|
468
|
+
* Flag indicating if the post link is required.
|
|
469
|
+
*/
|
|
470
|
+
requirePostLink?: boolean | null;
|
|
471
|
+
/**
|
|
472
|
+
* Flag indicating if media metadata is required.
|
|
473
|
+
*/
|
|
474
|
+
requirePostMediaLink?: boolean | null;
|
|
475
|
+
/**
|
|
476
|
+
* Flag indicating if the rule can also reward badges per range.
|
|
477
|
+
*/
|
|
478
|
+
rewardBadgePerRange?: boolean;
|
|
479
|
+
/**
|
|
480
|
+
* Flag indicating if the reward is rewarded by batch.
|
|
481
|
+
*/
|
|
482
|
+
rewardByBatch?: boolean | null;
|
|
483
|
+
/**
|
|
484
|
+
* Criteria to evaluate the reward.
|
|
485
|
+
*/
|
|
486
|
+
rewardCriteria?: 'IMPRESSIONS_COUNT' | 'ELIGIBLE_POST' | null;
|
|
487
|
+
/**
|
|
488
|
+
* Flag indicating if the reward is rewarded per action.
|
|
489
|
+
*/
|
|
490
|
+
rewardPerAction?: boolean | null;
|
|
311
491
|
/**
|
|
312
492
|
* Flag indicating if rewards are given per impression.
|
|
313
493
|
*/
|
|
314
494
|
rewardPerImpression?: boolean | null;
|
|
495
|
+
/**
|
|
496
|
+
* Flag indicating if the rule should reward based on value of traded tokens
|
|
497
|
+
* instead of count.
|
|
498
|
+
*/
|
|
499
|
+
rewardPerValue?: boolean;
|
|
500
|
+
/**
|
|
501
|
+
* Flag indicating if the rule should reward quality posts.
|
|
502
|
+
*/
|
|
503
|
+
rewardQualityPosts?: boolean;
|
|
504
|
+
/**
|
|
505
|
+
* Wallet address of the user can only be used if userId is not provided
|
|
506
|
+
*/
|
|
507
|
+
royaltyAddress?: string;
|
|
508
|
+
/**
|
|
509
|
+
* Royalty percentage of the item.
|
|
510
|
+
*/
|
|
511
|
+
royaltyPercentage?: number;
|
|
315
512
|
/**
|
|
316
513
|
* Currency associated with sales.
|
|
317
514
|
*/
|
|
@@ -335,7 +532,7 @@ export declare namespace RuleCreateResponse {
|
|
|
335
532
|
/**
|
|
336
533
|
* Social media platform associated with the rule.
|
|
337
534
|
*/
|
|
338
|
-
socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | null;
|
|
535
|
+
socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | 'Google' | 'GitHub' | 'Reddit' | null;
|
|
339
536
|
/**
|
|
340
537
|
* URL of the social platform's logo.
|
|
341
538
|
*/
|
|
@@ -344,10 +541,18 @@ export declare namespace RuleCreateResponse {
|
|
|
344
541
|
* Name of the social platform.
|
|
345
542
|
*/
|
|
346
543
|
socialPlatformName?: string | null;
|
|
544
|
+
/**
|
|
545
|
+
* ID of the Steam app.
|
|
546
|
+
*/
|
|
547
|
+
steamAppId?: string | null;
|
|
347
548
|
/**
|
|
348
549
|
* Array of streak milestones and corresponding rewards.
|
|
349
550
|
*/
|
|
350
551
|
streakArray?: Array<Metadata.StreakArray> | null;
|
|
552
|
+
/**
|
|
553
|
+
* Metadata for swap loyalty rules
|
|
554
|
+
*/
|
|
555
|
+
swap?: Metadata.Swap;
|
|
351
556
|
/**
|
|
352
557
|
* ID of the Telegram channel.
|
|
353
558
|
*/
|
|
@@ -360,6 +565,11 @@ export declare namespace RuleCreateResponse {
|
|
|
360
565
|
* Flag indicating if all contracts are tracked.
|
|
361
566
|
*/
|
|
362
567
|
trackAllContracts?: boolean | null;
|
|
568
|
+
/**
|
|
569
|
+
* Flag indicating if the progress is tracked. If enabled, the rule can only be
|
|
570
|
+
* completed once the progress is 100%.
|
|
571
|
+
*/
|
|
572
|
+
trackProgress?: boolean | null;
|
|
363
573
|
/**
|
|
364
574
|
* URL of the associated Twitter account.
|
|
365
575
|
*/
|
|
@@ -395,7 +605,15 @@ export declare namespace RuleCreateResponse {
|
|
|
395
605
|
/**
|
|
396
606
|
* Type of wallet associated with the rule.
|
|
397
607
|
*/
|
|
398
|
-
walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | null;
|
|
608
|
+
walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | 'cosmos' | 'ultra' | 'agw' | 'flow_cadence' | 'substrate' | null;
|
|
609
|
+
/**
|
|
610
|
+
* ID of the Youtube channel.
|
|
611
|
+
*/
|
|
612
|
+
youtubeChannelId?: string | null;
|
|
613
|
+
/**
|
|
614
|
+
* ID of the Youtube video.
|
|
615
|
+
*/
|
|
616
|
+
youtubeVideoId?: string | null;
|
|
399
617
|
}
|
|
400
618
|
namespace Metadata {
|
|
401
619
|
interface Collection {
|
|
@@ -410,7 +628,7 @@ export declare namespace RuleCreateResponse {
|
|
|
410
628
|
/**
|
|
411
629
|
* Blockchain network of the collection.
|
|
412
630
|
*/
|
|
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' | '
|
|
631
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'skaleEuropa' | 'skaleCalypso' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
|
|
414
632
|
}
|
|
415
633
|
/**
|
|
416
634
|
* Object containing details for the call-to-action.
|
|
@@ -475,6 +693,49 @@ export declare namespace RuleCreateResponse {
|
|
|
475
693
|
*/
|
|
476
694
|
id: string;
|
|
477
695
|
}
|
|
696
|
+
/**
|
|
697
|
+
* Liquidity pool details.
|
|
698
|
+
*/
|
|
699
|
+
interface Liquidity {
|
|
700
|
+
/**
|
|
701
|
+
* Calculation type of the liquidity pool.
|
|
702
|
+
*/
|
|
703
|
+
calculationType?: 'fixed' | 'custom';
|
|
704
|
+
/**
|
|
705
|
+
* Custom function to calculate the the reward amount based on the liquidity
|
|
706
|
+
* provided per day. X is the reward amount, Y is the liquidity provided per day in
|
|
707
|
+
* USD.
|
|
708
|
+
*/
|
|
709
|
+
customFunction?: string;
|
|
710
|
+
/**
|
|
711
|
+
* Liquidity provided per day in USD
|
|
712
|
+
*/
|
|
713
|
+
liquidityPerDay?: number;
|
|
714
|
+
/**
|
|
715
|
+
* Blockchain network of the liquidity pool.
|
|
716
|
+
*/
|
|
717
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'skaleEuropa' | 'skaleCalypso' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
|
|
718
|
+
/**
|
|
719
|
+
* Indicates if only in-range liquidity is rewarded.
|
|
720
|
+
*/
|
|
721
|
+
onlyRewardInRangeLiquidity?: boolean;
|
|
722
|
+
/**
|
|
723
|
+
* Array of liquidity pools associated with the rule.
|
|
724
|
+
*/
|
|
725
|
+
pools?: Array<Liquidity.Pool>;
|
|
726
|
+
/**
|
|
727
|
+
* Protocol of the liquidity pool.
|
|
728
|
+
*/
|
|
729
|
+
protocol?: string;
|
|
730
|
+
}
|
|
731
|
+
namespace Liquidity {
|
|
732
|
+
interface Pool {
|
|
733
|
+
/**
|
|
734
|
+
* Unique identifier of the liquidity pool.
|
|
735
|
+
*/
|
|
736
|
+
id: string;
|
|
737
|
+
}
|
|
738
|
+
}
|
|
478
739
|
interface Range {
|
|
479
740
|
/**
|
|
480
741
|
* Reward amount for this range.
|
|
@@ -488,6 +749,14 @@ export declare namespace RuleCreateResponse {
|
|
|
488
749
|
* Start value of the range.
|
|
489
750
|
*/
|
|
490
751
|
startRange: number;
|
|
752
|
+
/**
|
|
753
|
+
* ID of the loyalty badge for this range.
|
|
754
|
+
*/
|
|
755
|
+
loyaltyBadgeId?: string;
|
|
756
|
+
/**
|
|
757
|
+
* Amount of the loyalty multiplier for this range.
|
|
758
|
+
*/
|
|
759
|
+
loyaltyMultiplierAmount?: number;
|
|
491
760
|
}
|
|
492
761
|
/**
|
|
493
762
|
* Object defining referral requirements.
|
|
@@ -531,18 +800,14 @@ export declare namespace RuleCreateResponse {
|
|
|
531
800
|
* Object containing details of the associated smart contract.
|
|
532
801
|
*/
|
|
533
802
|
interface SmartContract {
|
|
534
|
-
/**
|
|
535
|
-
* ABI of the smart contract.
|
|
536
|
-
*/
|
|
537
|
-
abi?: string | null;
|
|
538
803
|
/**
|
|
539
804
|
* Mapping of addresses for the smart contract.
|
|
540
805
|
*/
|
|
541
806
|
addressMapping?: string | null;
|
|
542
807
|
/**
|
|
543
|
-
*
|
|
808
|
+
* Object containing details of the amount multiplier from the event.
|
|
544
809
|
*/
|
|
545
|
-
|
|
810
|
+
amountMultiplier?: SmartContract.AmountMultiplier | null;
|
|
546
811
|
/**
|
|
547
812
|
* ID of the smart contract.
|
|
548
813
|
*/
|
|
@@ -551,58 +816,28 @@ export declare namespace RuleCreateResponse {
|
|
|
551
816
|
* Criteria to evaluate the smart contract event.
|
|
552
817
|
*/
|
|
553
818
|
criteria?: 'everyEvent' | 'byParameter' | null;
|
|
554
|
-
/**
|
|
555
|
-
* Time range applied to the rule.
|
|
556
|
-
*/
|
|
557
|
-
customRange?: SmartContract.CustomRange | null;
|
|
558
819
|
/**
|
|
559
820
|
* Event emitted by the smart contract.
|
|
560
821
|
*/
|
|
561
822
|
event?: string | null;
|
|
562
|
-
/**
|
|
563
|
-
* Maximum value allowed for the parameter.
|
|
564
|
-
*/
|
|
565
|
-
max?: number | null;
|
|
566
823
|
/**
|
|
567
824
|
* Array of parameters for the smart contract.
|
|
568
825
|
*/
|
|
569
826
|
params?: Array<SmartContract.Param> | null;
|
|
570
827
|
/**
|
|
571
|
-
*
|
|
572
|
-
*/
|
|
573
|
-
withBonus?: boolean | null;
|
|
574
|
-
/**
|
|
575
|
-
* Flag indicating if a custom range is applied.
|
|
576
|
-
*/
|
|
577
|
-
withCustomRange?: boolean | null;
|
|
578
|
-
/**
|
|
579
|
-
* Flag indicating if a maximum limit is applied.
|
|
828
|
+
* Type of the smart contract interaction.
|
|
580
829
|
*/
|
|
581
|
-
|
|
830
|
+
type?: 'function' | 'event' | null;
|
|
582
831
|
}
|
|
583
832
|
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
833
|
/**
|
|
595
|
-
*
|
|
834
|
+
* Object containing details of the amount multiplier from the event.
|
|
596
835
|
*/
|
|
597
|
-
interface
|
|
598
|
-
/**
|
|
599
|
-
* End time of the custom range.
|
|
600
|
-
*/
|
|
601
|
-
endsAt?: string | null;
|
|
836
|
+
interface AmountMultiplier {
|
|
602
837
|
/**
|
|
603
|
-
*
|
|
838
|
+
* Mapping of the value for the smart contract.
|
|
604
839
|
*/
|
|
605
|
-
|
|
840
|
+
valueMapping?: string | null;
|
|
606
841
|
}
|
|
607
842
|
interface Param {
|
|
608
843
|
/**
|
|
@@ -639,6 +874,24 @@ export declare namespace RuleCreateResponse {
|
|
|
639
874
|
*/
|
|
640
875
|
streakMilestone: number;
|
|
641
876
|
}
|
|
877
|
+
/**
|
|
878
|
+
* Metadata for swap loyalty rules
|
|
879
|
+
*/
|
|
880
|
+
interface Swap {
|
|
881
|
+
provider?: 'any' | 'relay' | 'lifi';
|
|
882
|
+
relayReferrerId?: string;
|
|
883
|
+
requireCrossChainSwap?: boolean;
|
|
884
|
+
swappedToChain?: 'any' | number | string;
|
|
885
|
+
swappedToTokens?: Array<Swap.SwappedToToken>;
|
|
886
|
+
tokenMode?: 'any' | 'specific';
|
|
887
|
+
trackTokenAmount?: boolean;
|
|
888
|
+
}
|
|
889
|
+
namespace Swap {
|
|
890
|
+
interface SwappedToToken {
|
|
891
|
+
address: string;
|
|
892
|
+
chainId: string;
|
|
893
|
+
}
|
|
894
|
+
}
|
|
642
895
|
}
|
|
643
896
|
interface Collection {
|
|
644
897
|
/**
|
|
@@ -648,7 +901,11 @@ export declare namespace RuleCreateResponse {
|
|
|
648
901
|
/**
|
|
649
902
|
* Blockchain network for the collection
|
|
650
903
|
*/
|
|
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' | '
|
|
904
|
+
network: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'skaleEuropa' | 'skaleCalypso' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
|
|
905
|
+
/**
|
|
906
|
+
* Symbol of the collection.
|
|
907
|
+
*/
|
|
908
|
+
symbol?: string;
|
|
652
909
|
}
|
|
653
910
|
}
|
|
654
911
|
export interface RuleUpdateResponse {
|
|
@@ -665,10 +922,14 @@ export interface RuleUpdateResponse {
|
|
|
665
922
|
* Name of the loyalty rule
|
|
666
923
|
*/
|
|
667
924
|
name: string;
|
|
925
|
+
/**
|
|
926
|
+
* The type of claim for the reward
|
|
927
|
+
*/
|
|
928
|
+
claimType?: 'manual' | 'auto' | null;
|
|
668
929
|
/**
|
|
669
930
|
* Blockchain address of the associated collection
|
|
670
931
|
*/
|
|
671
|
-
collectionAddress?: string;
|
|
932
|
+
collectionAddress?: string | null;
|
|
672
933
|
/**
|
|
673
934
|
* List of associated collections
|
|
674
935
|
*/
|
|
@@ -693,10 +954,18 @@ export interface RuleUpdateResponse {
|
|
|
693
954
|
* Effective start time of the rule
|
|
694
955
|
*/
|
|
695
956
|
effectiveStartTime?: string | null;
|
|
957
|
+
/**
|
|
958
|
+
* ID of the external integration
|
|
959
|
+
*/
|
|
960
|
+
externalIntegrationId?: string | null;
|
|
696
961
|
/**
|
|
697
962
|
* Frequency of the rule execution
|
|
698
963
|
*/
|
|
699
964
|
frequency?: 'none' | 'once' | 'daily' | 'weekly' | 'monthly' | 'immediately';
|
|
965
|
+
/**
|
|
966
|
+
* Optional stratus function id for the rule
|
|
967
|
+
*/
|
|
968
|
+
functionId?: string | null;
|
|
700
969
|
/**
|
|
701
970
|
* Whether to hide this rule in the user interface
|
|
702
971
|
*/
|
|
@@ -704,7 +973,7 @@ export interface RuleUpdateResponse {
|
|
|
704
973
|
/**
|
|
705
974
|
* Time interval for recurring rule execution
|
|
706
975
|
*/
|
|
707
|
-
interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | null;
|
|
976
|
+
interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | 'unlimited' | null;
|
|
708
977
|
/**
|
|
709
978
|
* Whether this rule is required for participation
|
|
710
979
|
*/
|
|
@@ -713,6 +982,16 @@ export interface RuleUpdateResponse {
|
|
|
713
982
|
* ID of the rule group section to associate with the rule
|
|
714
983
|
*/
|
|
715
984
|
loyaltyRuleGroupId?: (string & {}) | 'no-section' | null;
|
|
985
|
+
/**
|
|
986
|
+
* The interval for the max amount. Available for the smart contract and external
|
|
987
|
+
* rules.
|
|
988
|
+
*/
|
|
989
|
+
maxAmountInterval?: 'daily' | 'weekly' | 'monthly' | 'lifetime' | null;
|
|
990
|
+
/**
|
|
991
|
+
* The maximum amount of points a user can earn per interval. Available for the
|
|
992
|
+
* smart contract and external rules.
|
|
993
|
+
*/
|
|
994
|
+
maxAmountPerInterval?: number | null;
|
|
716
995
|
/**
|
|
717
996
|
* URL of the media to be displayed
|
|
718
997
|
*/
|
|
@@ -724,23 +1003,35 @@ export interface RuleUpdateResponse {
|
|
|
724
1003
|
/**
|
|
725
1004
|
* Blockchain network where the rule will apply
|
|
726
1005
|
*/
|
|
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' | '
|
|
1006
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'skaleEuropa' | 'skaleCalypso' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
|
|
728
1007
|
/**
|
|
729
1008
|
* ID for associated OAuth credentials
|
|
730
1009
|
*/
|
|
731
1010
|
oauthCredentialsId?: string | null;
|
|
1011
|
+
/**
|
|
1012
|
+
* The lifetime of the reward
|
|
1013
|
+
*/
|
|
1014
|
+
rewardLifetime?: 'permanent' | 'dynamic' | null;
|
|
732
1015
|
/**
|
|
733
1016
|
* Type of reward issued by this rule
|
|
734
1017
|
*/
|
|
735
|
-
rewardType?: 'points' | 'multiplier';
|
|
1018
|
+
rewardType?: 'points' | 'multiplier' | 'badge';
|
|
1019
|
+
/**
|
|
1020
|
+
* URL of the Shopify store
|
|
1021
|
+
*/
|
|
1022
|
+
shopifyStoreUrl?: string | null;
|
|
1023
|
+
/**
|
|
1024
|
+
* Whether to show this rule before the start time
|
|
1025
|
+
*/
|
|
1026
|
+
showBeforeStart?: boolean;
|
|
736
1027
|
/**
|
|
737
1028
|
* Start time for the loyalty rule
|
|
738
1029
|
*/
|
|
739
1030
|
startTime?: string | null;
|
|
740
1031
|
/**
|
|
741
|
-
* Optional subscription
|
|
1032
|
+
* Optional stratus subscription id for the rule
|
|
742
1033
|
*/
|
|
743
|
-
|
|
1034
|
+
subscriptionId?: string | null;
|
|
744
1035
|
}
|
|
745
1036
|
export declare namespace RuleUpdateResponse {
|
|
746
1037
|
interface Collection {
|
|
@@ -751,12 +1042,25 @@ export declare namespace RuleUpdateResponse {
|
|
|
751
1042
|
/**
|
|
752
1043
|
* Blockchain network for the collection
|
|
753
1044
|
*/
|
|
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' | '
|
|
1045
|
+
network: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'skaleEuropa' | 'skaleCalypso' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
|
|
1046
|
+
/**
|
|
1047
|
+
* Symbol of the collection.
|
|
1048
|
+
*/
|
|
1049
|
+
symbol?: string;
|
|
755
1050
|
}
|
|
756
1051
|
/**
|
|
757
1052
|
* Additional metadata for the loyalty rule
|
|
758
1053
|
*/
|
|
759
1054
|
interface Metadata {
|
|
1055
|
+
/**
|
|
1056
|
+
* Array of loyalty rule IDs that count as check-in when completed. If ["any"] then
|
|
1057
|
+
* any rule completions count as check-in.
|
|
1058
|
+
*/
|
|
1059
|
+
autoCheckInRuleIds?: Array<(string & {}) | 'any'> | null;
|
|
1060
|
+
/**
|
|
1061
|
+
* Number of tokens per batch.
|
|
1062
|
+
*/
|
|
1063
|
+
batchSize?: number | null;
|
|
760
1064
|
/**
|
|
761
1065
|
* Text displayed on the action button.
|
|
762
1066
|
*/
|
|
@@ -776,7 +1080,7 @@ export declare namespace RuleUpdateResponse {
|
|
|
776
1080
|
/**
|
|
777
1081
|
* Text to check in the Twitter post, username, or bio.
|
|
778
1082
|
*/
|
|
779
|
-
checkText?: string | null;
|
|
1083
|
+
checkText?: string | Array<string> | null;
|
|
780
1084
|
/**
|
|
781
1085
|
* Array of collections associated with the rule.
|
|
782
1086
|
*/
|
|
@@ -784,7 +1088,13 @@ export declare namespace RuleUpdateResponse {
|
|
|
784
1088
|
/**
|
|
785
1089
|
* Conditions for completing the profile.
|
|
786
1090
|
*/
|
|
787
|
-
completeProfileConditions?:
|
|
1091
|
+
completeProfileConditions?: {
|
|
1092
|
+
[key: string]: boolean;
|
|
1093
|
+
} | null;
|
|
1094
|
+
/**
|
|
1095
|
+
* Description of the external rule condition (only for external rules)
|
|
1096
|
+
*/
|
|
1097
|
+
conditionDescription?: string;
|
|
788
1098
|
/**
|
|
789
1099
|
* Object containing details for the call-to-action.
|
|
790
1100
|
*/
|
|
@@ -793,6 +1103,10 @@ export declare namespace RuleUpdateResponse {
|
|
|
793
1103
|
* API key for custom rewards integration.
|
|
794
1104
|
*/
|
|
795
1105
|
customRewardsApiKey?: string;
|
|
1106
|
+
/**
|
|
1107
|
+
* Flag indicating if the rule should use direct RPC to get the balance of tokens.
|
|
1108
|
+
*/
|
|
1109
|
+
directRpc?: boolean;
|
|
796
1110
|
/**
|
|
797
1111
|
* Array of Discord servers, channels, and roles to join.
|
|
798
1112
|
*/
|
|
@@ -813,6 +1127,10 @@ export declare namespace RuleUpdateResponse {
|
|
|
813
1127
|
* Flag indicating whether the verified multiplier is enabled.
|
|
814
1128
|
*/
|
|
815
1129
|
enableVerifiedMultiplier?: boolean;
|
|
1130
|
+
/**
|
|
1131
|
+
* Type of ERC20 token for the loyalty rule.
|
|
1132
|
+
*/
|
|
1133
|
+
erc20Type?: 'erc20' | 'native';
|
|
816
1134
|
/**
|
|
817
1135
|
* Fill source of the order for the token sale
|
|
818
1136
|
*/
|
|
@@ -821,6 +1139,14 @@ export declare namespace RuleUpdateResponse {
|
|
|
821
1139
|
* Percentage reward given to a user for their first referral.
|
|
822
1140
|
*/
|
|
823
1141
|
firstReferralReward?: number | null;
|
|
1142
|
+
/**
|
|
1143
|
+
* Name of the GitHub branch to check for PR merge.
|
|
1144
|
+
*/
|
|
1145
|
+
githubBranchName?: string | null;
|
|
1146
|
+
/**
|
|
1147
|
+
* URL of the GitHub repository to check for star.
|
|
1148
|
+
*/
|
|
1149
|
+
githubRepoUrl?: string | null;
|
|
824
1150
|
/**
|
|
825
1151
|
* Flag indicating whether the fill source is included.
|
|
826
1152
|
*/
|
|
@@ -829,10 +1155,6 @@ export declare namespace RuleUpdateResponse {
|
|
|
829
1155
|
* Indicates if the item has never been sold.
|
|
830
1156
|
*/
|
|
831
1157
|
hasNeverSold?: boolean;
|
|
832
|
-
/**
|
|
833
|
-
* Flag indicating whether the order source is included.
|
|
834
|
-
*/
|
|
835
|
-
hasOrderSource?: boolean;
|
|
836
1158
|
/**
|
|
837
1159
|
* Indicates if the full royalty has been paid for items.
|
|
838
1160
|
*/
|
|
@@ -849,10 +1171,18 @@ export declare namespace RuleUpdateResponse {
|
|
|
849
1171
|
* URL of the image associated with the rule.
|
|
850
1172
|
*/
|
|
851
1173
|
imageUrl?: string | null;
|
|
1174
|
+
/**
|
|
1175
|
+
* If enabled, the first transaction done on the platform will complete this rule
|
|
1176
|
+
*/
|
|
1177
|
+
isCheckInOnEveryTxn?: boolean;
|
|
852
1178
|
/**
|
|
853
1179
|
* Indicates if the multiplier has been applied to rewards.
|
|
854
1180
|
*/
|
|
855
1181
|
isMultiplierApplied?: boolean;
|
|
1182
|
+
/**
|
|
1183
|
+
* Flag indicating if the rule is restricted to new users.
|
|
1184
|
+
*/
|
|
1185
|
+
isRestrictedToNewUsers?: boolean;
|
|
856
1186
|
/**
|
|
857
1187
|
* Flag indicating if rewards are applied retroactively.
|
|
858
1188
|
*/
|
|
@@ -865,6 +1195,10 @@ export declare namespace RuleUpdateResponse {
|
|
|
865
1195
|
* Optional link associated with the metadata.
|
|
866
1196
|
*/
|
|
867
1197
|
link?: string | null;
|
|
1198
|
+
/**
|
|
1199
|
+
* Liquidity pool details.
|
|
1200
|
+
*/
|
|
1201
|
+
liquidity?: Metadata.Liquidity;
|
|
868
1202
|
/**
|
|
869
1203
|
* Maximum quantity constraint for token holding.
|
|
870
1204
|
*/
|
|
@@ -897,18 +1231,30 @@ export declare namespace RuleUpdateResponse {
|
|
|
897
1231
|
* give points for only one token ownership per contract
|
|
898
1232
|
*/
|
|
899
1233
|
onlyRewardSingleTokenOwnership?: boolean | null;
|
|
900
|
-
/**
|
|
901
|
-
* Order source of the order for the token sale
|
|
902
|
-
*/
|
|
903
|
-
orderSource?: string;
|
|
904
1234
|
/**
|
|
905
1235
|
* Promotional code associated with the rule.
|
|
906
1236
|
*/
|
|
907
1237
|
promoCode?: string;
|
|
1238
|
+
/**
|
|
1239
|
+
* URL of the CSV file containing promo codes.
|
|
1240
|
+
*/
|
|
1241
|
+
promoCodeCsvUrl?: string;
|
|
1242
|
+
/**
|
|
1243
|
+
* Numbers of the promotional code to be generated.
|
|
1244
|
+
*/
|
|
1245
|
+
promoCodeLength?: number | null;
|
|
1246
|
+
/**
|
|
1247
|
+
* Type of the promotional code.
|
|
1248
|
+
*/
|
|
1249
|
+
promoCodeType?: 'code' | 'csv' | 'generate';
|
|
908
1250
|
/**
|
|
909
1251
|
* Array defining ranges and corresponding rewards.
|
|
910
1252
|
*/
|
|
911
1253
|
range?: Array<Metadata.Range>;
|
|
1254
|
+
/**
|
|
1255
|
+
* ID of the Reddit post.
|
|
1256
|
+
*/
|
|
1257
|
+
redditPostId?: string | null;
|
|
912
1258
|
/**
|
|
913
1259
|
* Object defining referral requirements.
|
|
914
1260
|
*/
|
|
@@ -917,10 +1263,55 @@ export declare namespace RuleUpdateResponse {
|
|
|
917
1263
|
* Lump sum reward given to a referrer.
|
|
918
1264
|
*/
|
|
919
1265
|
referrerReward?: number | null;
|
|
1266
|
+
/**
|
|
1267
|
+
* Loyalty currency ID of the referrer reward.
|
|
1268
|
+
*/
|
|
1269
|
+
referrerRewardLoyaltyCurrencyId?: string | null;
|
|
1270
|
+
/**
|
|
1271
|
+
* Flag indicating if the post link is required.
|
|
1272
|
+
*/
|
|
1273
|
+
requirePostLink?: boolean | null;
|
|
1274
|
+
/**
|
|
1275
|
+
* Flag indicating if media metadata is required.
|
|
1276
|
+
*/
|
|
1277
|
+
requirePostMediaLink?: boolean | null;
|
|
1278
|
+
/**
|
|
1279
|
+
* Flag indicating if the rule can also reward badges per range.
|
|
1280
|
+
*/
|
|
1281
|
+
rewardBadgePerRange?: boolean;
|
|
1282
|
+
/**
|
|
1283
|
+
* Flag indicating if the reward is rewarded by batch.
|
|
1284
|
+
*/
|
|
1285
|
+
rewardByBatch?: boolean | null;
|
|
1286
|
+
/**
|
|
1287
|
+
* Criteria to evaluate the reward.
|
|
1288
|
+
*/
|
|
1289
|
+
rewardCriteria?: 'IMPRESSIONS_COUNT' | 'ELIGIBLE_POST' | null;
|
|
1290
|
+
/**
|
|
1291
|
+
* Flag indicating if the reward is rewarded per action.
|
|
1292
|
+
*/
|
|
1293
|
+
rewardPerAction?: boolean | null;
|
|
920
1294
|
/**
|
|
921
1295
|
* Flag indicating if rewards are given per impression.
|
|
922
1296
|
*/
|
|
923
1297
|
rewardPerImpression?: boolean | null;
|
|
1298
|
+
/**
|
|
1299
|
+
* Flag indicating if the rule should reward based on value of traded tokens
|
|
1300
|
+
* instead of count.
|
|
1301
|
+
*/
|
|
1302
|
+
rewardPerValue?: boolean;
|
|
1303
|
+
/**
|
|
1304
|
+
* Flag indicating if the rule should reward quality posts.
|
|
1305
|
+
*/
|
|
1306
|
+
rewardQualityPosts?: boolean;
|
|
1307
|
+
/**
|
|
1308
|
+
* Wallet address of the user can only be used if userId is not provided
|
|
1309
|
+
*/
|
|
1310
|
+
royaltyAddress?: string;
|
|
1311
|
+
/**
|
|
1312
|
+
* Royalty percentage of the item.
|
|
1313
|
+
*/
|
|
1314
|
+
royaltyPercentage?: number;
|
|
924
1315
|
/**
|
|
925
1316
|
* Currency associated with sales.
|
|
926
1317
|
*/
|
|
@@ -944,7 +1335,7 @@ export declare namespace RuleUpdateResponse {
|
|
|
944
1335
|
/**
|
|
945
1336
|
* Social media platform associated with the rule.
|
|
946
1337
|
*/
|
|
947
|
-
socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | null;
|
|
1338
|
+
socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | 'Google' | 'GitHub' | 'Reddit' | null;
|
|
948
1339
|
/**
|
|
949
1340
|
* URL of the social platform's logo.
|
|
950
1341
|
*/
|
|
@@ -953,10 +1344,18 @@ export declare namespace RuleUpdateResponse {
|
|
|
953
1344
|
* Name of the social platform.
|
|
954
1345
|
*/
|
|
955
1346
|
socialPlatformName?: string | null;
|
|
1347
|
+
/**
|
|
1348
|
+
* ID of the Steam app.
|
|
1349
|
+
*/
|
|
1350
|
+
steamAppId?: string | null;
|
|
956
1351
|
/**
|
|
957
1352
|
* Array of streak milestones and corresponding rewards.
|
|
958
1353
|
*/
|
|
959
1354
|
streakArray?: Array<Metadata.StreakArray> | null;
|
|
1355
|
+
/**
|
|
1356
|
+
* Metadata for swap loyalty rules
|
|
1357
|
+
*/
|
|
1358
|
+
swap?: Metadata.Swap;
|
|
960
1359
|
/**
|
|
961
1360
|
* ID of the Telegram channel.
|
|
962
1361
|
*/
|
|
@@ -969,6 +1368,11 @@ export declare namespace RuleUpdateResponse {
|
|
|
969
1368
|
* Flag indicating if all contracts are tracked.
|
|
970
1369
|
*/
|
|
971
1370
|
trackAllContracts?: boolean | null;
|
|
1371
|
+
/**
|
|
1372
|
+
* Flag indicating if the progress is tracked. If enabled, the rule can only be
|
|
1373
|
+
* completed once the progress is 100%.
|
|
1374
|
+
*/
|
|
1375
|
+
trackProgress?: boolean | null;
|
|
972
1376
|
/**
|
|
973
1377
|
* URL of the associated Twitter account.
|
|
974
1378
|
*/
|
|
@@ -1004,7 +1408,15 @@ export declare namespace RuleUpdateResponse {
|
|
|
1004
1408
|
/**
|
|
1005
1409
|
* Type of wallet associated with the rule.
|
|
1006
1410
|
*/
|
|
1007
|
-
walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | null;
|
|
1411
|
+
walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | 'cosmos' | 'ultra' | 'agw' | 'flow_cadence' | 'substrate' | null;
|
|
1412
|
+
/**
|
|
1413
|
+
* ID of the Youtube channel.
|
|
1414
|
+
*/
|
|
1415
|
+
youtubeChannelId?: string | null;
|
|
1416
|
+
/**
|
|
1417
|
+
* ID of the Youtube video.
|
|
1418
|
+
*/
|
|
1419
|
+
youtubeVideoId?: string | null;
|
|
1008
1420
|
}
|
|
1009
1421
|
namespace Metadata {
|
|
1010
1422
|
interface Collection {
|
|
@@ -1019,7 +1431,7 @@ export declare namespace RuleUpdateResponse {
|
|
|
1019
1431
|
/**
|
|
1020
1432
|
* Blockchain network of the collection.
|
|
1021
1433
|
*/
|
|
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' | '
|
|
1434
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'skaleEuropa' | 'skaleCalypso' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
|
|
1023
1435
|
}
|
|
1024
1436
|
/**
|
|
1025
1437
|
* Object containing details for the call-to-action.
|
|
@@ -1084,6 +1496,49 @@ export declare namespace RuleUpdateResponse {
|
|
|
1084
1496
|
*/
|
|
1085
1497
|
id: string;
|
|
1086
1498
|
}
|
|
1499
|
+
/**
|
|
1500
|
+
* Liquidity pool details.
|
|
1501
|
+
*/
|
|
1502
|
+
interface Liquidity {
|
|
1503
|
+
/**
|
|
1504
|
+
* Calculation type of the liquidity pool.
|
|
1505
|
+
*/
|
|
1506
|
+
calculationType?: 'fixed' | 'custom';
|
|
1507
|
+
/**
|
|
1508
|
+
* Custom function to calculate the the reward amount based on the liquidity
|
|
1509
|
+
* provided per day. X is the reward amount, Y is the liquidity provided per day in
|
|
1510
|
+
* USD.
|
|
1511
|
+
*/
|
|
1512
|
+
customFunction?: string;
|
|
1513
|
+
/**
|
|
1514
|
+
* Liquidity provided per day in USD
|
|
1515
|
+
*/
|
|
1516
|
+
liquidityPerDay?: number;
|
|
1517
|
+
/**
|
|
1518
|
+
* Blockchain network of the liquidity pool.
|
|
1519
|
+
*/
|
|
1520
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'skaleEuropa' | 'skaleCalypso' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
|
|
1521
|
+
/**
|
|
1522
|
+
* Indicates if only in-range liquidity is rewarded.
|
|
1523
|
+
*/
|
|
1524
|
+
onlyRewardInRangeLiquidity?: boolean;
|
|
1525
|
+
/**
|
|
1526
|
+
* Array of liquidity pools associated with the rule.
|
|
1527
|
+
*/
|
|
1528
|
+
pools?: Array<Liquidity.Pool>;
|
|
1529
|
+
/**
|
|
1530
|
+
* Protocol of the liquidity pool.
|
|
1531
|
+
*/
|
|
1532
|
+
protocol?: string;
|
|
1533
|
+
}
|
|
1534
|
+
namespace Liquidity {
|
|
1535
|
+
interface Pool {
|
|
1536
|
+
/**
|
|
1537
|
+
* Unique identifier of the liquidity pool.
|
|
1538
|
+
*/
|
|
1539
|
+
id: string;
|
|
1540
|
+
}
|
|
1541
|
+
}
|
|
1087
1542
|
interface Range {
|
|
1088
1543
|
/**
|
|
1089
1544
|
* Reward amount for this range.
|
|
@@ -1097,6 +1552,14 @@ export declare namespace RuleUpdateResponse {
|
|
|
1097
1552
|
* Start value of the range.
|
|
1098
1553
|
*/
|
|
1099
1554
|
startRange: number;
|
|
1555
|
+
/**
|
|
1556
|
+
* ID of the loyalty badge for this range.
|
|
1557
|
+
*/
|
|
1558
|
+
loyaltyBadgeId?: string;
|
|
1559
|
+
/**
|
|
1560
|
+
* Amount of the loyalty multiplier for this range.
|
|
1561
|
+
*/
|
|
1562
|
+
loyaltyMultiplierAmount?: number;
|
|
1100
1563
|
}
|
|
1101
1564
|
/**
|
|
1102
1565
|
* Object defining referral requirements.
|
|
@@ -1140,18 +1603,14 @@ export declare namespace RuleUpdateResponse {
|
|
|
1140
1603
|
* Object containing details of the associated smart contract.
|
|
1141
1604
|
*/
|
|
1142
1605
|
interface SmartContract {
|
|
1143
|
-
/**
|
|
1144
|
-
* ABI of the smart contract.
|
|
1145
|
-
*/
|
|
1146
|
-
abi?: string | null;
|
|
1147
1606
|
/**
|
|
1148
1607
|
* Mapping of addresses for the smart contract.
|
|
1149
1608
|
*/
|
|
1150
1609
|
addressMapping?: string | null;
|
|
1151
1610
|
/**
|
|
1152
|
-
*
|
|
1611
|
+
* Object containing details of the amount multiplier from the event.
|
|
1153
1612
|
*/
|
|
1154
|
-
|
|
1613
|
+
amountMultiplier?: SmartContract.AmountMultiplier | null;
|
|
1155
1614
|
/**
|
|
1156
1615
|
* ID of the smart contract.
|
|
1157
1616
|
*/
|
|
@@ -1160,58 +1619,28 @@ export declare namespace RuleUpdateResponse {
|
|
|
1160
1619
|
* Criteria to evaluate the smart contract event.
|
|
1161
1620
|
*/
|
|
1162
1621
|
criteria?: 'everyEvent' | 'byParameter' | null;
|
|
1163
|
-
/**
|
|
1164
|
-
* Time range applied to the rule.
|
|
1165
|
-
*/
|
|
1166
|
-
customRange?: SmartContract.CustomRange | null;
|
|
1167
1622
|
/**
|
|
1168
1623
|
* Event emitted by the smart contract.
|
|
1169
1624
|
*/
|
|
1170
1625
|
event?: string | null;
|
|
1171
|
-
/**
|
|
1172
|
-
* Maximum value allowed for the parameter.
|
|
1173
|
-
*/
|
|
1174
|
-
max?: number | null;
|
|
1175
1626
|
/**
|
|
1176
1627
|
* Array of parameters for the smart contract.
|
|
1177
1628
|
*/
|
|
1178
1629
|
params?: Array<SmartContract.Param> | null;
|
|
1179
1630
|
/**
|
|
1180
|
-
*
|
|
1181
|
-
*/
|
|
1182
|
-
withBonus?: boolean | null;
|
|
1183
|
-
/**
|
|
1184
|
-
* Flag indicating if a custom range is applied.
|
|
1631
|
+
* Type of the smart contract interaction.
|
|
1185
1632
|
*/
|
|
1186
|
-
|
|
1187
|
-
/**
|
|
1188
|
-
* Flag indicating if a maximum limit is applied.
|
|
1189
|
-
*/
|
|
1190
|
-
withMax?: boolean | null;
|
|
1633
|
+
type?: 'function' | 'event' | null;
|
|
1191
1634
|
}
|
|
1192
1635
|
namespace SmartContract {
|
|
1193
|
-
|
|
1636
|
+
/**
|
|
1637
|
+
* Object containing details of the amount multiplier from the event.
|
|
1638
|
+
*/
|
|
1639
|
+
interface AmountMultiplier {
|
|
1194
1640
|
/**
|
|
1195
|
-
*
|
|
1641
|
+
* Mapping of the value for the smart contract.
|
|
1196
1642
|
*/
|
|
1197
|
-
|
|
1198
|
-
/**
|
|
1199
|
-
* Number of times the bonus is applied.
|
|
1200
|
-
*/
|
|
1201
|
-
count?: number | null;
|
|
1202
|
-
}
|
|
1203
|
-
/**
|
|
1204
|
-
* Time range applied to the rule.
|
|
1205
|
-
*/
|
|
1206
|
-
interface CustomRange {
|
|
1207
|
-
/**
|
|
1208
|
-
* End time of the custom range.
|
|
1209
|
-
*/
|
|
1210
|
-
endsAt?: string | null;
|
|
1211
|
-
/**
|
|
1212
|
-
* Start time of the custom range.
|
|
1213
|
-
*/
|
|
1214
|
-
startsAt?: string | null;
|
|
1643
|
+
valueMapping?: string | null;
|
|
1215
1644
|
}
|
|
1216
1645
|
interface Param {
|
|
1217
1646
|
/**
|
|
@@ -1248,6 +1677,24 @@ export declare namespace RuleUpdateResponse {
|
|
|
1248
1677
|
*/
|
|
1249
1678
|
streakMilestone: number;
|
|
1250
1679
|
}
|
|
1680
|
+
/**
|
|
1681
|
+
* Metadata for swap loyalty rules
|
|
1682
|
+
*/
|
|
1683
|
+
interface Swap {
|
|
1684
|
+
provider?: 'any' | 'relay' | 'lifi';
|
|
1685
|
+
relayReferrerId?: string;
|
|
1686
|
+
requireCrossChainSwap?: boolean;
|
|
1687
|
+
swappedToChain?: 'any' | number | string;
|
|
1688
|
+
swappedToTokens?: Array<Swap.SwappedToToken>;
|
|
1689
|
+
tokenMode?: 'any' | 'specific';
|
|
1690
|
+
trackTokenAmount?: boolean;
|
|
1691
|
+
}
|
|
1692
|
+
namespace Swap {
|
|
1693
|
+
interface SwappedToToken {
|
|
1694
|
+
address: string;
|
|
1695
|
+
chainId: string;
|
|
1696
|
+
}
|
|
1697
|
+
}
|
|
1251
1698
|
}
|
|
1252
1699
|
}
|
|
1253
1700
|
export interface RuleListResponse {
|
|
@@ -1255,9 +1702,6 @@ export interface RuleListResponse {
|
|
|
1255
1702
|
hasNextPage: boolean;
|
|
1256
1703
|
}
|
|
1257
1704
|
export declare namespace RuleListResponse {
|
|
1258
|
-
/**
|
|
1259
|
-
* Schema for a loyalty rule
|
|
1260
|
-
*/
|
|
1261
1705
|
interface Data {
|
|
1262
1706
|
/**
|
|
1263
1707
|
* Unique identifier for the loyalty rule
|
|
@@ -1266,7 +1710,7 @@ export declare namespace RuleListResponse {
|
|
|
1266
1710
|
/**
|
|
1267
1711
|
* Amount associated with the loyalty rule
|
|
1268
1712
|
*/
|
|
1269
|
-
amount: number;
|
|
1713
|
+
amount: number | null;
|
|
1270
1714
|
/**
|
|
1271
1715
|
* Timestamp when the loyalty rule was created
|
|
1272
1716
|
*/
|
|
@@ -1275,14 +1719,38 @@ export declare namespace RuleListResponse {
|
|
|
1275
1719
|
* Timestamp when the loyalty rule was deleted (if applicable)
|
|
1276
1720
|
*/
|
|
1277
1721
|
deletedAt: string | null;
|
|
1722
|
+
/**
|
|
1723
|
+
* Description of the loyalty rule
|
|
1724
|
+
*/
|
|
1725
|
+
description: string;
|
|
1726
|
+
/**
|
|
1727
|
+
* End time of the loyalty rule
|
|
1728
|
+
*/
|
|
1729
|
+
endTime: string | null;
|
|
1278
1730
|
/**
|
|
1279
1731
|
* Frequency of the loyalty rule
|
|
1280
1732
|
*/
|
|
1281
1733
|
frequency: string;
|
|
1734
|
+
/**
|
|
1735
|
+
* Chains attached to the loyalty rule
|
|
1736
|
+
*/
|
|
1737
|
+
loyaltyRuleChain: Array<Data.LoyaltyRuleChain>;
|
|
1738
|
+
/**
|
|
1739
|
+
* Name of the loyalty rule
|
|
1740
|
+
*/
|
|
1741
|
+
name: string;
|
|
1282
1742
|
/**
|
|
1283
1743
|
* Unique identifier for the organization
|
|
1284
1744
|
*/
|
|
1285
1745
|
organizationId: string;
|
|
1746
|
+
/**
|
|
1747
|
+
* Type of the reward
|
|
1748
|
+
*/
|
|
1749
|
+
rewardType: 'points' | 'multiplier' | 'badge';
|
|
1750
|
+
/**
|
|
1751
|
+
* Start time of the loyalty rule
|
|
1752
|
+
*/
|
|
1753
|
+
startTime: string | null;
|
|
1286
1754
|
/**
|
|
1287
1755
|
* Type of the loyalty rule
|
|
1288
1756
|
*/
|
|
@@ -1299,10 +1767,744 @@ export declare namespace RuleListResponse {
|
|
|
1299
1767
|
* Optional address of the collection
|
|
1300
1768
|
*/
|
|
1301
1769
|
collectionAddress?: string;
|
|
1770
|
+
/**
|
|
1771
|
+
* URL of the media associated with the loyalty rule
|
|
1772
|
+
*/
|
|
1773
|
+
mediaUrl?: string | null;
|
|
1302
1774
|
/**
|
|
1303
1775
|
* Optional metadata for the loyalty rule
|
|
1304
1776
|
*/
|
|
1305
|
-
metadata?:
|
|
1777
|
+
metadata?: {
|
|
1778
|
+
[key: string]: Data.Metadata;
|
|
1779
|
+
};
|
|
1780
|
+
}
|
|
1781
|
+
namespace Data {
|
|
1782
|
+
interface LoyaltyRuleChain {
|
|
1783
|
+
/**
|
|
1784
|
+
* Unique identifier for the rule chain
|
|
1785
|
+
*/
|
|
1786
|
+
id: string;
|
|
1787
|
+
loyaltyConditions: Array<LoyaltyRuleChain.LoyaltyCondition>;
|
|
1788
|
+
/**
|
|
1789
|
+
* Unique identifier for the loyalty rule
|
|
1790
|
+
*/
|
|
1791
|
+
loyaltyRuleId: string;
|
|
1792
|
+
/**
|
|
1793
|
+
* Name of the rule chain
|
|
1794
|
+
*/
|
|
1795
|
+
name: string;
|
|
1796
|
+
}
|
|
1797
|
+
namespace LoyaltyRuleChain {
|
|
1798
|
+
interface LoyaltyCondition {
|
|
1799
|
+
/**
|
|
1800
|
+
* Unique identifier for the condition
|
|
1801
|
+
*/
|
|
1802
|
+
id: string;
|
|
1803
|
+
/**
|
|
1804
|
+
* Amount of the condition
|
|
1805
|
+
*/
|
|
1806
|
+
amount: number | null;
|
|
1807
|
+
association: Array<LoyaltyCondition.Association>;
|
|
1808
|
+
/**
|
|
1809
|
+
* URL of the CSV file
|
|
1810
|
+
*/
|
|
1811
|
+
csvUrl: string | null;
|
|
1812
|
+
/**
|
|
1813
|
+
* Description of the condition
|
|
1814
|
+
*/
|
|
1815
|
+
description: string | null;
|
|
1816
|
+
/**
|
|
1817
|
+
* Number of times the condition must be met
|
|
1818
|
+
*/
|
|
1819
|
+
repeatCount: number | null;
|
|
1820
|
+
/**
|
|
1821
|
+
* Number of times the condition must be met
|
|
1822
|
+
*/
|
|
1823
|
+
requiredCount: number | null;
|
|
1824
|
+
/**
|
|
1825
|
+
* Type of the condition
|
|
1826
|
+
*/
|
|
1827
|
+
type: 'rule' | 'rules' | 'points' | 'section' | 'level' | 'api' | 'badge' | 'badges' | 'csv';
|
|
1828
|
+
}
|
|
1829
|
+
namespace LoyaltyCondition {
|
|
1830
|
+
interface Association {
|
|
1831
|
+
/**
|
|
1832
|
+
* Unique identifier for the association
|
|
1833
|
+
*/
|
|
1834
|
+
id: string;
|
|
1835
|
+
/**
|
|
1836
|
+
* Unique identifier for the loyalty badge
|
|
1837
|
+
*/
|
|
1838
|
+
loyaltyBadgeId: string | null;
|
|
1839
|
+
/**
|
|
1840
|
+
* Unique identifier for the loyalty currency
|
|
1841
|
+
*/
|
|
1842
|
+
loyaltyCurrencyId: string | null;
|
|
1843
|
+
loyaltyRule: Association.LoyaltyRule | null;
|
|
1844
|
+
/**
|
|
1845
|
+
* Unique identifier for the loyalty rule group
|
|
1846
|
+
*/
|
|
1847
|
+
loyaltyRuleGroupId: string | null;
|
|
1848
|
+
/**
|
|
1849
|
+
* Unique identifier for the loyalty rule
|
|
1850
|
+
*/
|
|
1851
|
+
loyaltyRuleId: string | null;
|
|
1852
|
+
}
|
|
1853
|
+
namespace Association {
|
|
1854
|
+
interface LoyaltyRule {
|
|
1855
|
+
/**
|
|
1856
|
+
* Name of the loyalty rule
|
|
1857
|
+
*/
|
|
1858
|
+
name: string;
|
|
1859
|
+
}
|
|
1860
|
+
}
|
|
1861
|
+
}
|
|
1862
|
+
}
|
|
1863
|
+
interface Metadata {
|
|
1864
|
+
/**
|
|
1865
|
+
* Array of loyalty rule IDs that count as check-in when completed. If ["any"] then
|
|
1866
|
+
* any rule completions count as check-in.
|
|
1867
|
+
*/
|
|
1868
|
+
autoCheckInRuleIds?: Array<(string & {}) | 'any'> | null;
|
|
1869
|
+
/**
|
|
1870
|
+
* Number of tokens per batch.
|
|
1871
|
+
*/
|
|
1872
|
+
batchSize?: number | null;
|
|
1873
|
+
/**
|
|
1874
|
+
* Text displayed on the action button.
|
|
1875
|
+
*/
|
|
1876
|
+
buttonText?: string | null;
|
|
1877
|
+
/**
|
|
1878
|
+
* Flag indicating if commenting is required.
|
|
1879
|
+
*/
|
|
1880
|
+
checkComment?: boolean | null;
|
|
1881
|
+
/**
|
|
1882
|
+
* Flag indicating if liking the post is required.
|
|
1883
|
+
*/
|
|
1884
|
+
checkLike?: boolean | null;
|
|
1885
|
+
/**
|
|
1886
|
+
* Flag indicating if reposting is required.
|
|
1887
|
+
*/
|
|
1888
|
+
checkRepost?: boolean | null;
|
|
1889
|
+
/**
|
|
1890
|
+
* Text to check in the Twitter post, username, or bio.
|
|
1891
|
+
*/
|
|
1892
|
+
checkText?: string | Array<string> | null;
|
|
1893
|
+
/**
|
|
1894
|
+
* Array of collections associated with the rule.
|
|
1895
|
+
*/
|
|
1896
|
+
collection?: Array<Metadata.Collection>;
|
|
1897
|
+
/**
|
|
1898
|
+
* Conditions for completing the profile.
|
|
1899
|
+
*/
|
|
1900
|
+
completeProfileConditions?: {
|
|
1901
|
+
[key: string]: boolean;
|
|
1902
|
+
} | null;
|
|
1903
|
+
/**
|
|
1904
|
+
* Description of the external rule condition (only for external rules)
|
|
1905
|
+
*/
|
|
1906
|
+
conditionDescription?: string;
|
|
1907
|
+
/**
|
|
1908
|
+
* Object containing details for the call-to-action.
|
|
1909
|
+
*/
|
|
1910
|
+
cta?: Metadata.Cta | null;
|
|
1911
|
+
/**
|
|
1912
|
+
* API key for custom rewards integration.
|
|
1913
|
+
*/
|
|
1914
|
+
customRewardsApiKey?: string;
|
|
1915
|
+
/**
|
|
1916
|
+
* Flag indicating if the rule should use direct RPC to get the balance of tokens.
|
|
1917
|
+
*/
|
|
1918
|
+
directRpc?: boolean;
|
|
1919
|
+
/**
|
|
1920
|
+
* Array of Discord servers, channels, and roles to join.
|
|
1921
|
+
*/
|
|
1922
|
+
discordServersToJoin?: Array<Metadata.DiscordServersToJoin> | null;
|
|
1923
|
+
/**
|
|
1924
|
+
* Array of drip quests required to complete the rule.
|
|
1925
|
+
*/
|
|
1926
|
+
dripQuestsToComplete?: Array<Metadata.DripQuestsToComplete> | null;
|
|
1927
|
+
/**
|
|
1928
|
+
* Flag indicating whether joining Discord servers is required.
|
|
1929
|
+
*/
|
|
1930
|
+
enableJoinDiscordServers?: boolean | null;
|
|
1931
|
+
/**
|
|
1932
|
+
* Flag indicating whether streaks are enabled.
|
|
1933
|
+
*/
|
|
1934
|
+
enableStreaks?: boolean | null;
|
|
1935
|
+
/**
|
|
1936
|
+
* Flag indicating whether the verified multiplier is enabled.
|
|
1937
|
+
*/
|
|
1938
|
+
enableVerifiedMultiplier?: boolean;
|
|
1939
|
+
/**
|
|
1940
|
+
* Type of ERC20 token for the loyalty rule.
|
|
1941
|
+
*/
|
|
1942
|
+
erc20Type?: 'erc20' | 'native';
|
|
1943
|
+
/**
|
|
1944
|
+
* Fill source of the order for the token sale
|
|
1945
|
+
*/
|
|
1946
|
+
fillSource?: string;
|
|
1947
|
+
/**
|
|
1948
|
+
* Percentage reward given to a user for their first referral.
|
|
1949
|
+
*/
|
|
1950
|
+
firstReferralReward?: number | null;
|
|
1951
|
+
/**
|
|
1952
|
+
* Name of the GitHub branch to check for PR merge.
|
|
1953
|
+
*/
|
|
1954
|
+
githubBranchName?: string | null;
|
|
1955
|
+
/**
|
|
1956
|
+
* URL of the GitHub repository to check for star.
|
|
1957
|
+
*/
|
|
1958
|
+
githubRepoUrl?: string | null;
|
|
1959
|
+
/**
|
|
1960
|
+
* Flag indicating whether the fill source is included.
|
|
1961
|
+
*/
|
|
1962
|
+
hasFillSource?: boolean;
|
|
1963
|
+
/**
|
|
1964
|
+
* Indicates if the item has never been sold.
|
|
1965
|
+
*/
|
|
1966
|
+
hasNeverSold?: boolean;
|
|
1967
|
+
/**
|
|
1968
|
+
* Indicates if the full royalty has been paid for items.
|
|
1969
|
+
*/
|
|
1970
|
+
hasPaidFullRoyalty?: boolean;
|
|
1971
|
+
/**
|
|
1972
|
+
* Flag indicating if the sale currency is included.
|
|
1973
|
+
*/
|
|
1974
|
+
hasSaleCurrency?: boolean;
|
|
1975
|
+
/**
|
|
1976
|
+
* Indicates if the user has a verified Twitter account.
|
|
1977
|
+
*/
|
|
1978
|
+
hasVerifiedTwitter?: boolean;
|
|
1979
|
+
/**
|
|
1980
|
+
* URL of the image associated with the rule.
|
|
1981
|
+
*/
|
|
1982
|
+
imageUrl?: string | null;
|
|
1983
|
+
/**
|
|
1984
|
+
* If enabled, the first transaction done on the platform will complete this rule
|
|
1985
|
+
*/
|
|
1986
|
+
isCheckInOnEveryTxn?: boolean;
|
|
1987
|
+
/**
|
|
1988
|
+
* Indicates if the multiplier has been applied to rewards.
|
|
1989
|
+
*/
|
|
1990
|
+
isMultiplierApplied?: boolean;
|
|
1991
|
+
/**
|
|
1992
|
+
* Flag indicating if the rule is restricted to new users.
|
|
1993
|
+
*/
|
|
1994
|
+
isRestrictedToNewUsers?: boolean;
|
|
1995
|
+
/**
|
|
1996
|
+
* Flag indicating if rewards are applied retroactively.
|
|
1997
|
+
*/
|
|
1998
|
+
isRetroactive?: boolean | null;
|
|
1999
|
+
/**
|
|
2000
|
+
* Flag indicating if the token hold multiplier is applied.
|
|
2001
|
+
*/
|
|
2002
|
+
isTokenHoldMultiplier?: boolean;
|
|
2003
|
+
/**
|
|
2004
|
+
* Optional link associated with the metadata.
|
|
2005
|
+
*/
|
|
2006
|
+
link?: string | null;
|
|
2007
|
+
/**
|
|
2008
|
+
* Liquidity pool details.
|
|
2009
|
+
*/
|
|
2010
|
+
liquidity?: Metadata.Liquidity;
|
|
2011
|
+
/**
|
|
2012
|
+
* Maximum quantity constraint for token holding.
|
|
2013
|
+
*/
|
|
2014
|
+
maxQty?: number | null;
|
|
2015
|
+
/**
|
|
2016
|
+
* Minimum quantity constraint for token holding.
|
|
2017
|
+
*/
|
|
2018
|
+
minQty?: number | null;
|
|
2019
|
+
/**
|
|
2020
|
+
* Array of loyalty currency IDs used for multipliers.
|
|
2021
|
+
*/
|
|
2022
|
+
multiplierLoyaltyCurrencyIds?: Array<string> | null;
|
|
2023
|
+
/**
|
|
2024
|
+
* Flag indicating whether to include only known users.
|
|
2025
|
+
*/
|
|
2026
|
+
onlyKnownUsers?: boolean;
|
|
2027
|
+
/**
|
|
2028
|
+
* Flag indicating whether to include only native tokens.
|
|
2029
|
+
*/
|
|
2030
|
+
onlyNative?: boolean;
|
|
2031
|
+
/**
|
|
2032
|
+
* Flag indicating whether to include only non-listed items.
|
|
2033
|
+
*/
|
|
2034
|
+
onlyNonListed?: boolean;
|
|
2035
|
+
/**
|
|
2036
|
+
* Indicates if only existing users are rewarded.
|
|
2037
|
+
*/
|
|
2038
|
+
onlyRewardExistingUser?: boolean;
|
|
2039
|
+
/**
|
|
2040
|
+
* give points for only one token ownership per contract
|
|
2041
|
+
*/
|
|
2042
|
+
onlyRewardSingleTokenOwnership?: boolean | null;
|
|
2043
|
+
/**
|
|
2044
|
+
* Promotional code associated with the rule.
|
|
2045
|
+
*/
|
|
2046
|
+
promoCode?: string;
|
|
2047
|
+
/**
|
|
2048
|
+
* URL of the CSV file containing promo codes.
|
|
2049
|
+
*/
|
|
2050
|
+
promoCodeCsvUrl?: string;
|
|
2051
|
+
/**
|
|
2052
|
+
* Numbers of the promotional code to be generated.
|
|
2053
|
+
*/
|
|
2054
|
+
promoCodeLength?: number | null;
|
|
2055
|
+
/**
|
|
2056
|
+
* Type of the promotional code.
|
|
2057
|
+
*/
|
|
2058
|
+
promoCodeType?: 'code' | 'csv' | 'generate';
|
|
2059
|
+
/**
|
|
2060
|
+
* Array defining ranges and corresponding rewards.
|
|
2061
|
+
*/
|
|
2062
|
+
range?: Array<Metadata.Range>;
|
|
2063
|
+
/**
|
|
2064
|
+
* ID of the Reddit post.
|
|
2065
|
+
*/
|
|
2066
|
+
redditPostId?: string | null;
|
|
2067
|
+
/**
|
|
2068
|
+
* Object defining referral requirements.
|
|
2069
|
+
*/
|
|
2070
|
+
referralRequirements?: Metadata.ReferralRequirements | null;
|
|
2071
|
+
/**
|
|
2072
|
+
* Lump sum reward given to a referrer.
|
|
2073
|
+
*/
|
|
2074
|
+
referrerReward?: number | null;
|
|
2075
|
+
/**
|
|
2076
|
+
* Loyalty currency ID of the referrer reward.
|
|
2077
|
+
*/
|
|
2078
|
+
referrerRewardLoyaltyCurrencyId?: string | null;
|
|
2079
|
+
/**
|
|
2080
|
+
* Flag indicating if the post link is required.
|
|
2081
|
+
*/
|
|
2082
|
+
requirePostLink?: boolean | null;
|
|
2083
|
+
/**
|
|
2084
|
+
* Flag indicating if media metadata is required.
|
|
2085
|
+
*/
|
|
2086
|
+
requirePostMediaLink?: boolean | null;
|
|
2087
|
+
/**
|
|
2088
|
+
* Flag indicating if the rule can also reward badges per range.
|
|
2089
|
+
*/
|
|
2090
|
+
rewardBadgePerRange?: boolean;
|
|
2091
|
+
/**
|
|
2092
|
+
* Flag indicating if the reward is rewarded by batch.
|
|
2093
|
+
*/
|
|
2094
|
+
rewardByBatch?: boolean | null;
|
|
2095
|
+
/**
|
|
2096
|
+
* Criteria to evaluate the reward.
|
|
2097
|
+
*/
|
|
2098
|
+
rewardCriteria?: 'IMPRESSIONS_COUNT' | 'ELIGIBLE_POST' | null;
|
|
2099
|
+
/**
|
|
2100
|
+
* Flag indicating if the reward is rewarded per action.
|
|
2101
|
+
*/
|
|
2102
|
+
rewardPerAction?: boolean | null;
|
|
2103
|
+
/**
|
|
2104
|
+
* Flag indicating if rewards are given per impression.
|
|
2105
|
+
*/
|
|
2106
|
+
rewardPerImpression?: boolean | null;
|
|
2107
|
+
/**
|
|
2108
|
+
* Flag indicating if the rule should reward based on value of traded tokens
|
|
2109
|
+
* instead of count.
|
|
2110
|
+
*/
|
|
2111
|
+
rewardPerValue?: boolean;
|
|
2112
|
+
/**
|
|
2113
|
+
* Flag indicating if the rule should reward quality posts.
|
|
2114
|
+
*/
|
|
2115
|
+
rewardQualityPosts?: boolean;
|
|
2116
|
+
/**
|
|
2117
|
+
* Wallet address of the user can only be used if userId is not provided
|
|
2118
|
+
*/
|
|
2119
|
+
royaltyAddress?: string;
|
|
2120
|
+
/**
|
|
2121
|
+
* Royalty percentage of the item.
|
|
2122
|
+
*/
|
|
2123
|
+
royaltyPercentage?: number;
|
|
2124
|
+
/**
|
|
2125
|
+
* Currency associated with sales.
|
|
2126
|
+
*/
|
|
2127
|
+
saleCurrency?: string;
|
|
2128
|
+
/**
|
|
2129
|
+
* Percentage reward given for a second-level referral.
|
|
2130
|
+
*/
|
|
2131
|
+
secondReferralReward?: number | null;
|
|
2132
|
+
/**
|
|
2133
|
+
* Flag indicating if the multiplier is skipped.
|
|
2134
|
+
*/
|
|
2135
|
+
skipMultiplier?: boolean | null;
|
|
2136
|
+
/**
|
|
2137
|
+
* Object containing details of the associated smart contract.
|
|
2138
|
+
*/
|
|
2139
|
+
smartContract?: Metadata.SmartContract;
|
|
2140
|
+
/**
|
|
2141
|
+
* Array of snapshot proposals for the rule.
|
|
2142
|
+
*/
|
|
2143
|
+
snapshotProposals?: Array<Metadata.SnapshotProposal> | null;
|
|
2144
|
+
/**
|
|
2145
|
+
* Social media platform associated with the rule.
|
|
2146
|
+
*/
|
|
2147
|
+
socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | 'Google' | 'GitHub' | 'Reddit' | null;
|
|
2148
|
+
/**
|
|
2149
|
+
* URL of the social platform's logo.
|
|
2150
|
+
*/
|
|
2151
|
+
socialPlatformLogo?: string | null;
|
|
2152
|
+
/**
|
|
2153
|
+
* Name of the social platform.
|
|
2154
|
+
*/
|
|
2155
|
+
socialPlatformName?: string | null;
|
|
2156
|
+
/**
|
|
2157
|
+
* ID of the Steam app.
|
|
2158
|
+
*/
|
|
2159
|
+
steamAppId?: string | null;
|
|
2160
|
+
/**
|
|
2161
|
+
* Array of streak milestones and corresponding rewards.
|
|
2162
|
+
*/
|
|
2163
|
+
streakArray?: Array<Metadata.StreakArray> | null;
|
|
2164
|
+
/**
|
|
2165
|
+
* Metadata for swap loyalty rules
|
|
2166
|
+
*/
|
|
2167
|
+
swap?: Metadata.Swap;
|
|
2168
|
+
/**
|
|
2169
|
+
* ID of the Telegram channel.
|
|
2170
|
+
*/
|
|
2171
|
+
telegramChannelId?: string | null;
|
|
2172
|
+
/**
|
|
2173
|
+
* Time delay in seconds to verify actions.
|
|
2174
|
+
*/
|
|
2175
|
+
timeDelayToVerifySeconds?: string | number | null;
|
|
2176
|
+
/**
|
|
2177
|
+
* Flag indicating if all contracts are tracked.
|
|
2178
|
+
*/
|
|
2179
|
+
trackAllContracts?: boolean | null;
|
|
2180
|
+
/**
|
|
2181
|
+
* Flag indicating if the progress is tracked. If enabled, the rule can only be
|
|
2182
|
+
* completed once the progress is 100%.
|
|
2183
|
+
*/
|
|
2184
|
+
trackProgress?: boolean | null;
|
|
2185
|
+
/**
|
|
2186
|
+
* URL of the associated Twitter account.
|
|
2187
|
+
*/
|
|
2188
|
+
twitterAccountUrl?: string;
|
|
2189
|
+
/**
|
|
2190
|
+
* Hashtag associated with the Twitter post.
|
|
2191
|
+
*/
|
|
2192
|
+
twitterHashtag?: string;
|
|
2193
|
+
/**
|
|
2194
|
+
* URL of the associated Twitter post.
|
|
2195
|
+
*/
|
|
2196
|
+
twitterPostUrl?: string;
|
|
2197
|
+
/**
|
|
2198
|
+
* Unique identifier of the Twitter user.
|
|
2199
|
+
*/
|
|
2200
|
+
twitterUserId?: string;
|
|
2201
|
+
/**
|
|
2202
|
+
* Twitter username of the user.
|
|
2203
|
+
*/
|
|
2204
|
+
twitterUsername?: string;
|
|
2205
|
+
/**
|
|
2206
|
+
* Minimum length of the verification text.
|
|
2207
|
+
*/
|
|
2208
|
+
verificationTextMinimumLength?: number | null;
|
|
2209
|
+
/**
|
|
2210
|
+
* Multiplier applied to rewards for verified users.
|
|
2211
|
+
*/
|
|
2212
|
+
verifiedMultiplier?: number | null;
|
|
2213
|
+
/**
|
|
2214
|
+
* Placeholder text for verification input fields.
|
|
2215
|
+
*/
|
|
2216
|
+
verifyPlaceHolderText?: string | null;
|
|
2217
|
+
/**
|
|
2218
|
+
* Type of wallet associated with the rule.
|
|
2219
|
+
*/
|
|
2220
|
+
walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | 'cosmos' | 'ultra' | 'agw' | 'flow_cadence' | 'substrate' | null;
|
|
2221
|
+
/**
|
|
2222
|
+
* ID of the Youtube channel.
|
|
2223
|
+
*/
|
|
2224
|
+
youtubeChannelId?: string | null;
|
|
2225
|
+
/**
|
|
2226
|
+
* ID of the Youtube video.
|
|
2227
|
+
*/
|
|
2228
|
+
youtubeVideoId?: string | null;
|
|
2229
|
+
}
|
|
2230
|
+
namespace Metadata {
|
|
2231
|
+
interface Collection {
|
|
2232
|
+
/**
|
|
2233
|
+
* Blockchain address of the collection.
|
|
2234
|
+
*/
|
|
2235
|
+
address?: string;
|
|
2236
|
+
/**
|
|
2237
|
+
* Multiplier applied to the rewards for this collection.
|
|
2238
|
+
*/
|
|
2239
|
+
multiplier?: number;
|
|
2240
|
+
/**
|
|
2241
|
+
* Blockchain network of the collection.
|
|
2242
|
+
*/
|
|
2243
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'skaleEuropa' | 'skaleCalypso' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
|
|
2244
|
+
}
|
|
2245
|
+
/**
|
|
2246
|
+
* Object containing details for the call-to-action.
|
|
2247
|
+
*/
|
|
2248
|
+
interface Cta {
|
|
2249
|
+
/**
|
|
2250
|
+
* Link for the call-to-action.
|
|
2251
|
+
*/
|
|
2252
|
+
href?: string | null;
|
|
2253
|
+
/**
|
|
2254
|
+
* Label for the call-to-action.
|
|
2255
|
+
*/
|
|
2256
|
+
label?: string | null;
|
|
2257
|
+
}
|
|
2258
|
+
interface DiscordServersToJoin {
|
|
2259
|
+
/**
|
|
2260
|
+
* ID of the Discord server to join.
|
|
2261
|
+
*/
|
|
2262
|
+
id?: string;
|
|
2263
|
+
/**
|
|
2264
|
+
* Array of Discord channels to join.
|
|
2265
|
+
*/
|
|
2266
|
+
channels?: Array<DiscordServersToJoin.Channel>;
|
|
2267
|
+
/**
|
|
2268
|
+
* Array of roles to assign in the Discord server.
|
|
2269
|
+
*/
|
|
2270
|
+
roles?: Array<DiscordServersToJoin.Role>;
|
|
2271
|
+
}
|
|
2272
|
+
namespace DiscordServersToJoin {
|
|
2273
|
+
interface Channel {
|
|
2274
|
+
/**
|
|
2275
|
+
* ID of the Discord channel.
|
|
2276
|
+
*/
|
|
2277
|
+
id?: string;
|
|
2278
|
+
/**
|
|
2279
|
+
* Array of emojis used in the channel.
|
|
2280
|
+
*/
|
|
2281
|
+
emojis?: Array<Channel.Emoji>;
|
|
2282
|
+
/**
|
|
2283
|
+
* Phrase of text to be present in the discord message
|
|
2284
|
+
*/
|
|
2285
|
+
text?: string;
|
|
2286
|
+
}
|
|
2287
|
+
namespace Channel {
|
|
2288
|
+
interface Emoji {
|
|
2289
|
+
/**
|
|
2290
|
+
* ID of the emoji used in the channel.
|
|
2291
|
+
*/
|
|
2292
|
+
id?: string;
|
|
2293
|
+
}
|
|
2294
|
+
}
|
|
2295
|
+
interface Role {
|
|
2296
|
+
/**
|
|
2297
|
+
* ID of the role in the Discord server.
|
|
2298
|
+
*/
|
|
2299
|
+
id: string;
|
|
2300
|
+
}
|
|
2301
|
+
}
|
|
2302
|
+
interface DripQuestsToComplete {
|
|
2303
|
+
/**
|
|
2304
|
+
* ID of the drip quest to complete.
|
|
2305
|
+
*/
|
|
2306
|
+
id: string;
|
|
2307
|
+
}
|
|
2308
|
+
/**
|
|
2309
|
+
* Liquidity pool details.
|
|
2310
|
+
*/
|
|
2311
|
+
interface Liquidity {
|
|
2312
|
+
/**
|
|
2313
|
+
* Calculation type of the liquidity pool.
|
|
2314
|
+
*/
|
|
2315
|
+
calculationType?: 'fixed' | 'custom';
|
|
2316
|
+
/**
|
|
2317
|
+
* Custom function to calculate the the reward amount based on the liquidity
|
|
2318
|
+
* provided per day. X is the reward amount, Y is the liquidity provided per day in
|
|
2319
|
+
* USD.
|
|
2320
|
+
*/
|
|
2321
|
+
customFunction?: string;
|
|
2322
|
+
/**
|
|
2323
|
+
* Liquidity provided per day in USD
|
|
2324
|
+
*/
|
|
2325
|
+
liquidityPerDay?: number;
|
|
2326
|
+
/**
|
|
2327
|
+
* Blockchain network of the liquidity pool.
|
|
2328
|
+
*/
|
|
2329
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'skaleEuropa' | 'skaleCalypso' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
|
|
2330
|
+
/**
|
|
2331
|
+
* Indicates if only in-range liquidity is rewarded.
|
|
2332
|
+
*/
|
|
2333
|
+
onlyRewardInRangeLiquidity?: boolean;
|
|
2334
|
+
/**
|
|
2335
|
+
* Array of liquidity pools associated with the rule.
|
|
2336
|
+
*/
|
|
2337
|
+
pools?: Array<Liquidity.Pool>;
|
|
2338
|
+
/**
|
|
2339
|
+
* Protocol of the liquidity pool.
|
|
2340
|
+
*/
|
|
2341
|
+
protocol?: string;
|
|
2342
|
+
}
|
|
2343
|
+
namespace Liquidity {
|
|
2344
|
+
interface Pool {
|
|
2345
|
+
/**
|
|
2346
|
+
* Unique identifier of the liquidity pool.
|
|
2347
|
+
*/
|
|
2348
|
+
id: string;
|
|
2349
|
+
}
|
|
2350
|
+
}
|
|
2351
|
+
interface Range {
|
|
2352
|
+
/**
|
|
2353
|
+
* Reward amount for this range.
|
|
2354
|
+
*/
|
|
2355
|
+
amount: number;
|
|
2356
|
+
/**
|
|
2357
|
+
* End value of the range.
|
|
2358
|
+
*/
|
|
2359
|
+
endRange: number;
|
|
2360
|
+
/**
|
|
2361
|
+
* Start value of the range.
|
|
2362
|
+
*/
|
|
2363
|
+
startRange: number;
|
|
2364
|
+
/**
|
|
2365
|
+
* ID of the loyalty badge for this range.
|
|
2366
|
+
*/
|
|
2367
|
+
loyaltyBadgeId?: string;
|
|
2368
|
+
/**
|
|
2369
|
+
* Amount of the loyalty multiplier for this range.
|
|
2370
|
+
*/
|
|
2371
|
+
loyaltyMultiplierAmount?: number;
|
|
2372
|
+
}
|
|
2373
|
+
/**
|
|
2374
|
+
* Object defining referral requirements.
|
|
2375
|
+
*/
|
|
2376
|
+
interface ReferralRequirements {
|
|
2377
|
+
/**
|
|
2378
|
+
* Flag indicating if achieving points is required.
|
|
2379
|
+
*/
|
|
2380
|
+
achievePoints?: boolean | null;
|
|
2381
|
+
/**
|
|
2382
|
+
* Flag indicating if completing the profile is required.
|
|
2383
|
+
*/
|
|
2384
|
+
completeProfile?: boolean | null;
|
|
2385
|
+
/**
|
|
2386
|
+
* Flag indicating if connecting Discord is required.
|
|
2387
|
+
*/
|
|
2388
|
+
connectDiscord?: boolean | null;
|
|
2389
|
+
/**
|
|
2390
|
+
* Flag indicating if connecting email is required.
|
|
2391
|
+
*/
|
|
2392
|
+
connectEmail?: boolean | null;
|
|
2393
|
+
/**
|
|
2394
|
+
* Flag indicating if connecting Twitter is required.
|
|
2395
|
+
*/
|
|
2396
|
+
connectTwitter?: boolean | null;
|
|
2397
|
+
points?: ReferralRequirements.Points | null;
|
|
2398
|
+
}
|
|
2399
|
+
namespace ReferralRequirements {
|
|
2400
|
+
interface Points {
|
|
2401
|
+
/**
|
|
2402
|
+
* Points required for referral.
|
|
2403
|
+
*/
|
|
2404
|
+
amount?: number | null;
|
|
2405
|
+
/**
|
|
2406
|
+
* ID of the loyalty currency for referral.
|
|
2407
|
+
*/
|
|
2408
|
+
loyaltyCurrecyId?: string | null;
|
|
2409
|
+
}
|
|
2410
|
+
}
|
|
2411
|
+
/**
|
|
2412
|
+
* Object containing details of the associated smart contract.
|
|
2413
|
+
*/
|
|
2414
|
+
interface SmartContract {
|
|
2415
|
+
/**
|
|
2416
|
+
* Mapping of addresses for the smart contract.
|
|
2417
|
+
*/
|
|
2418
|
+
addressMapping?: string | null;
|
|
2419
|
+
/**
|
|
2420
|
+
* Object containing details of the amount multiplier from the event.
|
|
2421
|
+
*/
|
|
2422
|
+
amountMultiplier?: SmartContract.AmountMultiplier | null;
|
|
2423
|
+
/**
|
|
2424
|
+
* ID of the smart contract.
|
|
2425
|
+
*/
|
|
2426
|
+
contractId?: string | null;
|
|
2427
|
+
/**
|
|
2428
|
+
* Criteria to evaluate the smart contract event.
|
|
2429
|
+
*/
|
|
2430
|
+
criteria?: 'everyEvent' | 'byParameter' | null;
|
|
2431
|
+
/**
|
|
2432
|
+
* Event emitted by the smart contract.
|
|
2433
|
+
*/
|
|
2434
|
+
event?: string | null;
|
|
2435
|
+
/**
|
|
2436
|
+
* Array of parameters for the smart contract.
|
|
2437
|
+
*/
|
|
2438
|
+
params?: Array<SmartContract.Param> | null;
|
|
2439
|
+
/**
|
|
2440
|
+
* Type of the smart contract interaction.
|
|
2441
|
+
*/
|
|
2442
|
+
type?: 'function' | 'event' | null;
|
|
2443
|
+
}
|
|
2444
|
+
namespace SmartContract {
|
|
2445
|
+
/**
|
|
2446
|
+
* Object containing details of the amount multiplier from the event.
|
|
2447
|
+
*/
|
|
2448
|
+
interface AmountMultiplier {
|
|
2449
|
+
/**
|
|
2450
|
+
* Mapping of the value for the smart contract.
|
|
2451
|
+
*/
|
|
2452
|
+
valueMapping?: string | null;
|
|
2453
|
+
}
|
|
2454
|
+
interface Param {
|
|
2455
|
+
/**
|
|
2456
|
+
* Condition to check for the parameter.
|
|
2457
|
+
*/
|
|
2458
|
+
condition?: string | null;
|
|
2459
|
+
/**
|
|
2460
|
+
* Name of the smart contract parameter.
|
|
2461
|
+
*/
|
|
2462
|
+
name?: string | null;
|
|
2463
|
+
/**
|
|
2464
|
+
* Value of the parameter.
|
|
2465
|
+
*/
|
|
2466
|
+
value?: string | null;
|
|
2467
|
+
}
|
|
2468
|
+
}
|
|
2469
|
+
interface SnapshotProposal {
|
|
2470
|
+
/**
|
|
2471
|
+
* ID of the snapshot proposal.
|
|
2472
|
+
*/
|
|
2473
|
+
id: string;
|
|
2474
|
+
/**
|
|
2475
|
+
* Space associated with the snapshot proposal.
|
|
2476
|
+
*/
|
|
2477
|
+
space: string;
|
|
2478
|
+
}
|
|
2479
|
+
interface StreakArray {
|
|
2480
|
+
/**
|
|
2481
|
+
* Reward amount for achieving the streak milestone.
|
|
2482
|
+
*/
|
|
2483
|
+
streakAmount: number;
|
|
2484
|
+
/**
|
|
2485
|
+
* Milestone required to achieve the streak.
|
|
2486
|
+
*/
|
|
2487
|
+
streakMilestone: number;
|
|
2488
|
+
}
|
|
2489
|
+
/**
|
|
2490
|
+
* Metadata for swap loyalty rules
|
|
2491
|
+
*/
|
|
2492
|
+
interface Swap {
|
|
2493
|
+
provider?: 'any' | 'relay' | 'lifi';
|
|
2494
|
+
relayReferrerId?: string;
|
|
2495
|
+
requireCrossChainSwap?: boolean;
|
|
2496
|
+
swappedToChain?: 'any' | number | string;
|
|
2497
|
+
swappedToTokens?: Array<Swap.SwappedToToken>;
|
|
2498
|
+
tokenMode?: 'any' | 'specific';
|
|
2499
|
+
trackTokenAmount?: boolean;
|
|
2500
|
+
}
|
|
2501
|
+
namespace Swap {
|
|
2502
|
+
interface SwappedToToken {
|
|
2503
|
+
address: string;
|
|
2504
|
+
chainId: string;
|
|
2505
|
+
}
|
|
2506
|
+
}
|
|
2507
|
+
}
|
|
1306
2508
|
}
|
|
1307
2509
|
}
|
|
1308
2510
|
export interface RuleDeleteResponse {
|
|
@@ -1310,7 +2512,7 @@ export interface RuleDeleteResponse {
|
|
|
1310
2512
|
deletedAt: string;
|
|
1311
2513
|
}
|
|
1312
2514
|
export interface RuleCompleteResponse {
|
|
1313
|
-
message:
|
|
2515
|
+
message: 'Completion request added to queue' | 'Link click being verified, come back later to check the status';
|
|
1314
2516
|
}
|
|
1315
2517
|
export interface RuleGetStatusResponse {
|
|
1316
2518
|
data: Array<RuleGetStatusResponse.Data>;
|
|
@@ -1318,9 +2520,110 @@ export interface RuleGetStatusResponse {
|
|
|
1318
2520
|
export declare namespace RuleGetStatusResponse {
|
|
1319
2521
|
interface Data {
|
|
1320
2522
|
loyaltyRuleId: string;
|
|
1321
|
-
status: 'pending' | 'processing' | 'completed' | 'failed';
|
|
1322
2523
|
userId: string;
|
|
2524
|
+
/**
|
|
2525
|
+
* The ID of the loyalty rule status for the Progress object
|
|
2526
|
+
*/
|
|
2527
|
+
id?: string;
|
|
2528
|
+
createdAt?: string;
|
|
2529
|
+
fulfilledAt?: string | null;
|
|
2530
|
+
/**
|
|
2531
|
+
* Categorized examples of messages that may be returned for a loyalty rule's
|
|
2532
|
+
* processing result.
|
|
2533
|
+
*
|
|
2534
|
+
* User Onboarding
|
|
2535
|
+
*
|
|
2536
|
+
* - Check In: "Streak successful"
|
|
2537
|
+
* - Complete Profile Details: "Profile not complete"
|
|
2538
|
+
*
|
|
2539
|
+
* Connect Accounts
|
|
2540
|
+
*
|
|
2541
|
+
* - Connect TikTok: "TikTok not connected"
|
|
2542
|
+
* - Connect Discord: "Discord not connected", "Discord request timeout"
|
|
2543
|
+
* - Connect X: "Twitter not connected", "Twitter not connected or content url is
|
|
2544
|
+
* required"
|
|
2545
|
+
* - Connect Email: "Email address not connected"
|
|
2546
|
+
* - Connect Telegram: "Telegram not connected", "user has not setup telegram (no
|
|
2547
|
+
* telegramUsername), please setup username in telegram and reconnect.",
|
|
2548
|
+
* "Telegram request rate-limited"
|
|
2549
|
+
* - Connect Steam: "Steam not connected"
|
|
2550
|
+
* - Connect Youtube: "Youtube not connected"
|
|
2551
|
+
*
|
|
2552
|
+
* Social Quests
|
|
2553
|
+
*
|
|
2554
|
+
* - Join Telegram Group: "Telegram Channel not joined", "Telegram Channel joined
|
|
2555
|
+
* successfully"
|
|
2556
|
+
* - Post on TikTok: "TikTok post not verified"
|
|
2557
|
+
* - Comment on an X Post: "Quest Completed: You have commented on the tweet",
|
|
2558
|
+
* "Quest Not Completed: Comment not found for the specified tweet"
|
|
2559
|
+
* - Repost an X Post: "Quest Completed: You have retweeted the tweet", "Quest Not
|
|
2560
|
+
* Completed: Retweet not found for the specified tweet", "Quest Completed: You
|
|
2561
|
+
* have retweeted and commented on the tweet", "Quest Not Completed: You have not
|
|
2562
|
+
* retweeted or commented on the tweet"
|
|
2563
|
+
* - Follow an X Account: "Missing required parameters: twitterUserId,
|
|
2564
|
+
* targetUsername", "Quest Completed: You are a follower of
|
|
2565
|
+
* @${targetUsername}", "Quest Not Completed: Please follow @${targetUsername}
|
|
2566
|
+
* and try again in few minutes"
|
|
2567
|
+
* - React to an X Post: "Missing required parameters: texts, twitterUserId,
|
|
2568
|
+
* userTweetId", "No text provided", "Quest Completed: You have posted {tweetId}
|
|
2569
|
+
* a tweet with the text {text}", "Quest Not Completed: Your all previous {COUNT}
|
|
2570
|
+
* posts are already claimed. Please post a new tweet and try again in a few
|
|
2571
|
+
* minutes.", "Tweet is already claimed", "Tweet does not belong to the user",
|
|
2572
|
+
* "Text not found in tweet", "Tweet is before the quest start time", "Tweet does
|
|
2573
|
+
* not have media", "Text found in tweet"
|
|
2574
|
+
* - Add Text to X Bio: "Missing required parameters: texts, twitterUserId", "User
|
|
2575
|
+
* not found", "Text found in bio", "Text not found in bio"
|
|
2576
|
+
* - Add Text to X Username: "Missing required parameters: texts, twitterUserId",
|
|
2577
|
+
* "User not found", "Text found in username", "Text not found in username"
|
|
2578
|
+
* - Comment on an X Post with Text: "Missing required parameters: texts,
|
|
2579
|
+
* twitterUserId", "Comment is already claimed", "Text found in comment", "Text
|
|
2580
|
+
* not found in comment", "Tweet not found or could not be retrieved"
|
|
2581
|
+
* - Comment on a YouTube Video: "Youtube comment added", "Youtube comment not
|
|
2582
|
+
* added"
|
|
2583
|
+
* - Subscribe to a YouTube Channel: "Youtube channel subscribed", "Quest failed,
|
|
2584
|
+
* please make sure you have made your subscriptions public in youtube"
|
|
2585
|
+
* - Get X post impressions: "You've already claimed the reward for this impression
|
|
2586
|
+
* range."
|
|
2587
|
+
* - Add an Item to Steam Wishlist: "Steam Wishlist item added", "Steam Wishlist
|
|
2588
|
+
* item not added"
|
|
2589
|
+
*
|
|
2590
|
+
* Complex Onchain Logic
|
|
2591
|
+
*
|
|
2592
|
+
* - Token Swap: "Swap rewards calculated successfully", "Swap rule failed"
|
|
2593
|
+
*
|
|
2594
|
+
* Other
|
|
2595
|
+
*
|
|
2596
|
+
* - Answer a Quiz: "Quiz question not configured", "No question response found",
|
|
2597
|
+
* "Incorrect answer", "Correct answer"
|
|
2598
|
+
* - Answer a Poll: "Poll question not configured", "Poll response recorded"
|
|
2599
|
+
* - Spend in Shopify Store: "Shopify not connected"
|
|
2600
|
+
* - Points Airdrop: "Seems like you're not eligible for this points airdrop."
|
|
2601
|
+
*
|
|
2602
|
+
* General
|
|
2603
|
+
*
|
|
2604
|
+
* - "Quest already completed"
|
|
2605
|
+
* - "Quest already completed using the same social account (${socialAccountName}),
|
|
2606
|
+
* with the different user."
|
|
2607
|
+
* - "You've already claimed the reward for this quest."
|
|
2608
|
+
* - "Quest not achieved, please try again."
|
|
2609
|
+
* - "Rule is not setup"
|
|
2610
|
+
* - "Request aborted due to timeout"
|
|
2611
|
+
* - "Google account not connected"
|
|
2612
|
+
* - "Claim failed: Multiplier is already active"
|
|
2613
|
+
*/
|
|
1323
2614
|
message?: string;
|
|
2615
|
+
organizationId?: string;
|
|
2616
|
+
/**
|
|
2617
|
+
* The progress of the loyalty rule from 0 to 100
|
|
2618
|
+
*/
|
|
2619
|
+
progress?: number;
|
|
2620
|
+
/**
|
|
2621
|
+
* Status of the queued job, this is only returned if the job is queued and being
|
|
2622
|
+
* processed, this wil be retained for 10 minutes after the job is completed
|
|
2623
|
+
*/
|
|
2624
|
+
status?: 'pending' | 'processing' | 'completed' | 'failed';
|
|
2625
|
+
updatedAt?: string;
|
|
2626
|
+
websiteId?: string;
|
|
1324
2627
|
}
|
|
1325
2628
|
}
|
|
1326
2629
|
export interface RuleCreateParams {
|
|
@@ -1367,7 +2670,7 @@ export interface RuleCreateParams {
|
|
|
1367
2670
|
/**
|
|
1368
2671
|
* Type of loyalty rule being created
|
|
1369
2672
|
*/
|
|
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';
|
|
2673
|
+
type: 'Bonus' | 'BoughtOn' | 'BoughtWithRoyalties' | 'DiscordMessages' | 'Listing' | 'Lodging' | 'MintOn' | 'PoapClaim' | 'SnagSocialsConnected' | 'SnapshotFullset' | 'SnapshotHold' | 'SoldOn' | 'SoldWithRoyalties' | 'TokenHold' | 'TwitterBio' | 'TwitterHashTagPost' | 'Retweet' | 'check_in' | 'code_entry' | 'connect_wallet' | 'connected_discord' | 'connected_email' | 'connected_epic' | 'connected_github' | 'connected_steam' | 'connected_telegram' | 'connected_twitter' | 'create_partner_account' | 'discord_member' | 'drip_x_follow' | 'drip_x_new_tweet' | 'drip_x_text_in_bio' | 'drip_x_text_in_comment' | 'drip_x_text_in_name' | 'drip_x_tweet' | 'external_rule' | 'link_click' | 'manual_upload' | 'profile_completed' | 'referred_user' | 'smart_contract_event' | 'snapshot_governance' | 'telegram_join' | 'telegram_messages' | 'text_input' | 'token_hold_erc20' | 'tweet_liked_by_project' | 'twitter_comment' | 'twitter_follow' | 'twitter_followers' | 'twitter_like' | 'twitter_post_hashtag' | 'quiz' | 'poll' | 'steam_wishlist' | 'liquidity_uniswap_v2' | 'liquidity_uniswap_v3' | 'points_airdrop' | 'youtube_subscribers' | 'youtube_comment' | 'shopify_spend' | 'swap' | 'tiktok_post' | 'post_impressions' | 'discord_join' | 'connected_youtube' | 'stratus_function' | 'connected_tiktok' | 'tiktok_follow' | 'github_repo_star' | 'github_repo_fork' | 'github_repo_collaborator' | 'github_merge_PR' | 'discord_role_grant' | 'connected_reddit' | 'reddit_comment';
|
|
1371
2674
|
/**
|
|
1372
2675
|
* Unique identifier for the associated website
|
|
1373
2676
|
*/
|
|
@@ -1376,6 +2679,10 @@ export interface RuleCreateParams {
|
|
|
1376
2679
|
* URL of the background asset to be displayed
|
|
1377
2680
|
*/
|
|
1378
2681
|
backgroundAssetUrl?: string;
|
|
2682
|
+
/**
|
|
2683
|
+
* The type of claim for the reward
|
|
2684
|
+
*/
|
|
2685
|
+
claimType?: 'manual' | 'auto' | null;
|
|
1379
2686
|
/**
|
|
1380
2687
|
* Blockchain address of the associated collection
|
|
1381
2688
|
*/
|
|
@@ -1396,6 +2703,15 @@ export interface RuleCreateParams {
|
|
|
1396
2703
|
* Optional detailed description of the rule
|
|
1397
2704
|
*/
|
|
1398
2705
|
description?: string;
|
|
2706
|
+
duplicatedFromId?: string | null;
|
|
2707
|
+
/**
|
|
2708
|
+
* ID of the external integration
|
|
2709
|
+
*/
|
|
2710
|
+
externalIntegrationId?: string | null;
|
|
2711
|
+
/**
|
|
2712
|
+
* Optional stratus function id for the rule
|
|
2713
|
+
*/
|
|
2714
|
+
functionId?: string | null;
|
|
1399
2715
|
/**
|
|
1400
2716
|
* Whether to hide this rule in the user interface
|
|
1401
2717
|
*/
|
|
@@ -1403,15 +2719,33 @@ export interface RuleCreateParams {
|
|
|
1403
2719
|
/**
|
|
1404
2720
|
* Interval between rule executions
|
|
1405
2721
|
*/
|
|
1406
|
-
interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | null;
|
|
2722
|
+
interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | 'unlimited' | null;
|
|
1407
2723
|
/**
|
|
1408
2724
|
* Whether this rule is mandatory
|
|
1409
2725
|
*/
|
|
1410
2726
|
isRequired?: boolean;
|
|
2727
|
+
/**
|
|
2728
|
+
* Unique identifier for the loyalty badge
|
|
2729
|
+
*/
|
|
2730
|
+
loyaltyBadgeId?: string | null;
|
|
1411
2731
|
/**
|
|
1412
2732
|
* Unique identifier for the loyalty rule group
|
|
1413
2733
|
*/
|
|
1414
2734
|
loyaltyRuleGroupId?: 'no-section' | (string & {}) | null;
|
|
2735
|
+
/**
|
|
2736
|
+
* URL for uploading loyalty user allotment via CSV
|
|
2737
|
+
*/
|
|
2738
|
+
loyaltyUserAllotmentCsvUrl?: string;
|
|
2739
|
+
/**
|
|
2740
|
+
* The interval for the max amount. Available for the smart contract and external
|
|
2741
|
+
* rules.
|
|
2742
|
+
*/
|
|
2743
|
+
maxAmountInterval?: 'daily' | 'weekly' | 'monthly' | 'lifetime' | null;
|
|
2744
|
+
/**
|
|
2745
|
+
* The maximum amount of points a user can earn per interval. Available for the
|
|
2746
|
+
* smart contract and external rules.
|
|
2747
|
+
*/
|
|
2748
|
+
maxAmountPerInterval?: number | null;
|
|
1415
2749
|
/**
|
|
1416
2750
|
* URL of the media to be displayed
|
|
1417
2751
|
*/
|
|
@@ -1419,25 +2753,46 @@ export interface RuleCreateParams {
|
|
|
1419
2753
|
/**
|
|
1420
2754
|
* Blockchain network where the rule will apply
|
|
1421
2755
|
*/
|
|
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' | '
|
|
2756
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'skaleEuropa' | 'skaleCalypso' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
|
|
1423
2757
|
/**
|
|
1424
2758
|
* OAuth credentials associated with the rule
|
|
1425
2759
|
*/
|
|
1426
2760
|
oauthCredentialsId?: string | null;
|
|
2761
|
+
/**
|
|
2762
|
+
* The lifetime of the reward
|
|
2763
|
+
*/
|
|
2764
|
+
rewardLifetime?: 'permanent' | 'dynamic' | null;
|
|
1427
2765
|
/**
|
|
1428
2766
|
* Type of reward issued by the rule
|
|
1429
2767
|
*/
|
|
1430
|
-
rewardType?: 'points' | 'multiplier';
|
|
2768
|
+
rewardType?: 'points' | 'multiplier' | 'badge';
|
|
2769
|
+
/**
|
|
2770
|
+
* URL of the Shopify store
|
|
2771
|
+
*/
|
|
2772
|
+
shopifyStoreUrl?: string | null;
|
|
1431
2773
|
/**
|
|
1432
|
-
*
|
|
2774
|
+
* Whether to show this rule before the start time
|
|
1433
2775
|
*/
|
|
1434
|
-
|
|
2776
|
+
showBeforeStart?: boolean;
|
|
2777
|
+
/**
|
|
2778
|
+
* Optional stratus subscription id for the rule
|
|
2779
|
+
*/
|
|
2780
|
+
subscriptionId?: string | null;
|
|
1435
2781
|
}
|
|
1436
2782
|
export declare namespace RuleCreateParams {
|
|
1437
2783
|
/**
|
|
1438
2784
|
* Additional metadata for the loyalty rule
|
|
1439
2785
|
*/
|
|
1440
2786
|
interface Metadata {
|
|
2787
|
+
/**
|
|
2788
|
+
* Array of loyalty rule IDs that count as check-in when completed. If ["any"] then
|
|
2789
|
+
* any rule completions count as check-in.
|
|
2790
|
+
*/
|
|
2791
|
+
autoCheckInRuleIds?: Array<(string & {}) | 'any'> | null;
|
|
2792
|
+
/**
|
|
2793
|
+
* Number of tokens per batch.
|
|
2794
|
+
*/
|
|
2795
|
+
batchSize?: number | null;
|
|
1441
2796
|
/**
|
|
1442
2797
|
* Text displayed on the action button.
|
|
1443
2798
|
*/
|
|
@@ -1457,7 +2812,7 @@ export declare namespace RuleCreateParams {
|
|
|
1457
2812
|
/**
|
|
1458
2813
|
* Text to check in the Twitter post, username, or bio.
|
|
1459
2814
|
*/
|
|
1460
|
-
checkText?: string | null;
|
|
2815
|
+
checkText?: string | Array<string> | null;
|
|
1461
2816
|
/**
|
|
1462
2817
|
* Array of collections associated with the rule.
|
|
1463
2818
|
*/
|
|
@@ -1465,7 +2820,13 @@ export declare namespace RuleCreateParams {
|
|
|
1465
2820
|
/**
|
|
1466
2821
|
* Conditions for completing the profile.
|
|
1467
2822
|
*/
|
|
1468
|
-
completeProfileConditions?:
|
|
2823
|
+
completeProfileConditions?: {
|
|
2824
|
+
[key: string]: boolean;
|
|
2825
|
+
} | null;
|
|
2826
|
+
/**
|
|
2827
|
+
* Description of the external rule condition (only for external rules)
|
|
2828
|
+
*/
|
|
2829
|
+
conditionDescription?: string;
|
|
1469
2830
|
/**
|
|
1470
2831
|
* Object containing details for the call-to-action.
|
|
1471
2832
|
*/
|
|
@@ -1474,6 +2835,10 @@ export declare namespace RuleCreateParams {
|
|
|
1474
2835
|
* API key for custom rewards integration.
|
|
1475
2836
|
*/
|
|
1476
2837
|
customRewardsApiKey?: string;
|
|
2838
|
+
/**
|
|
2839
|
+
* Flag indicating if the rule should use direct RPC to get the balance of tokens.
|
|
2840
|
+
*/
|
|
2841
|
+
directRpc?: boolean;
|
|
1477
2842
|
/**
|
|
1478
2843
|
* Array of Discord servers, channels, and roles to join.
|
|
1479
2844
|
*/
|
|
@@ -1494,6 +2859,10 @@ export declare namespace RuleCreateParams {
|
|
|
1494
2859
|
* Flag indicating whether the verified multiplier is enabled.
|
|
1495
2860
|
*/
|
|
1496
2861
|
enableVerifiedMultiplier?: boolean;
|
|
2862
|
+
/**
|
|
2863
|
+
* Type of ERC20 token for the loyalty rule.
|
|
2864
|
+
*/
|
|
2865
|
+
erc20Type?: 'erc20' | 'native';
|
|
1497
2866
|
/**
|
|
1498
2867
|
* Fill source of the order for the token sale
|
|
1499
2868
|
*/
|
|
@@ -1502,6 +2871,14 @@ export declare namespace RuleCreateParams {
|
|
|
1502
2871
|
* Percentage reward given to a user for their first referral.
|
|
1503
2872
|
*/
|
|
1504
2873
|
firstReferralReward?: number | null;
|
|
2874
|
+
/**
|
|
2875
|
+
* Name of the GitHub branch to check for PR merge.
|
|
2876
|
+
*/
|
|
2877
|
+
githubBranchName?: string | null;
|
|
2878
|
+
/**
|
|
2879
|
+
* URL of the GitHub repository to check for star.
|
|
2880
|
+
*/
|
|
2881
|
+
githubRepoUrl?: string | null;
|
|
1505
2882
|
/**
|
|
1506
2883
|
* Flag indicating whether the fill source is included.
|
|
1507
2884
|
*/
|
|
@@ -1510,10 +2887,6 @@ export declare namespace RuleCreateParams {
|
|
|
1510
2887
|
* Indicates if the item has never been sold.
|
|
1511
2888
|
*/
|
|
1512
2889
|
hasNeverSold?: boolean;
|
|
1513
|
-
/**
|
|
1514
|
-
* Flag indicating whether the order source is included.
|
|
1515
|
-
*/
|
|
1516
|
-
hasOrderSource?: boolean;
|
|
1517
2890
|
/**
|
|
1518
2891
|
* Indicates if the full royalty has been paid for items.
|
|
1519
2892
|
*/
|
|
@@ -1530,10 +2903,18 @@ export declare namespace RuleCreateParams {
|
|
|
1530
2903
|
* URL of the image associated with the rule.
|
|
1531
2904
|
*/
|
|
1532
2905
|
imageUrl?: string | null;
|
|
2906
|
+
/**
|
|
2907
|
+
* If enabled, the first transaction done on the platform will complete this rule
|
|
2908
|
+
*/
|
|
2909
|
+
isCheckInOnEveryTxn?: boolean;
|
|
1533
2910
|
/**
|
|
1534
2911
|
* Indicates if the multiplier has been applied to rewards.
|
|
1535
2912
|
*/
|
|
1536
2913
|
isMultiplierApplied?: boolean;
|
|
2914
|
+
/**
|
|
2915
|
+
* Flag indicating if the rule is restricted to new users.
|
|
2916
|
+
*/
|
|
2917
|
+
isRestrictedToNewUsers?: boolean;
|
|
1537
2918
|
/**
|
|
1538
2919
|
* Flag indicating if rewards are applied retroactively.
|
|
1539
2920
|
*/
|
|
@@ -1546,62 +2927,123 @@ export declare namespace RuleCreateParams {
|
|
|
1546
2927
|
* Optional link associated with the metadata.
|
|
1547
2928
|
*/
|
|
1548
2929
|
link?: string | null;
|
|
2930
|
+
/**
|
|
2931
|
+
* Liquidity pool details.
|
|
2932
|
+
*/
|
|
2933
|
+
liquidity?: Metadata.Liquidity;
|
|
1549
2934
|
/**
|
|
1550
2935
|
* Maximum quantity constraint for token holding.
|
|
1551
2936
|
*/
|
|
1552
|
-
maxQty?: number | null;
|
|
2937
|
+
maxQty?: number | null;
|
|
2938
|
+
/**
|
|
2939
|
+
* Minimum quantity constraint for token holding.
|
|
2940
|
+
*/
|
|
2941
|
+
minQty?: number | null;
|
|
2942
|
+
/**
|
|
2943
|
+
* Array of loyalty currency IDs used for multipliers.
|
|
2944
|
+
*/
|
|
2945
|
+
multiplierLoyaltyCurrencyIds?: Array<string> | null;
|
|
2946
|
+
/**
|
|
2947
|
+
* Flag indicating whether to include only known users.
|
|
2948
|
+
*/
|
|
2949
|
+
onlyKnownUsers?: boolean;
|
|
2950
|
+
/**
|
|
2951
|
+
* Flag indicating whether to include only native tokens.
|
|
2952
|
+
*/
|
|
2953
|
+
onlyNative?: boolean;
|
|
2954
|
+
/**
|
|
2955
|
+
* Flag indicating whether to include only non-listed items.
|
|
2956
|
+
*/
|
|
2957
|
+
onlyNonListed?: boolean;
|
|
2958
|
+
/**
|
|
2959
|
+
* Indicates if only existing users are rewarded.
|
|
2960
|
+
*/
|
|
2961
|
+
onlyRewardExistingUser?: boolean;
|
|
2962
|
+
/**
|
|
2963
|
+
* give points for only one token ownership per contract
|
|
2964
|
+
*/
|
|
2965
|
+
onlyRewardSingleTokenOwnership?: boolean | null;
|
|
2966
|
+
/**
|
|
2967
|
+
* Promotional code associated with the rule.
|
|
2968
|
+
*/
|
|
2969
|
+
promoCode?: string;
|
|
2970
|
+
/**
|
|
2971
|
+
* URL of the CSV file containing promo codes.
|
|
2972
|
+
*/
|
|
2973
|
+
promoCodeCsvUrl?: string;
|
|
2974
|
+
/**
|
|
2975
|
+
* Numbers of the promotional code to be generated.
|
|
2976
|
+
*/
|
|
2977
|
+
promoCodeLength?: number | null;
|
|
2978
|
+
/**
|
|
2979
|
+
* Type of the promotional code.
|
|
2980
|
+
*/
|
|
2981
|
+
promoCodeType?: 'code' | 'csv' | 'generate';
|
|
2982
|
+
/**
|
|
2983
|
+
* Array defining ranges and corresponding rewards.
|
|
2984
|
+
*/
|
|
2985
|
+
range?: Array<Metadata.Range>;
|
|
2986
|
+
/**
|
|
2987
|
+
* ID of the Reddit post.
|
|
2988
|
+
*/
|
|
2989
|
+
redditPostId?: string | null;
|
|
2990
|
+
/**
|
|
2991
|
+
* Object defining referral requirements.
|
|
2992
|
+
*/
|
|
2993
|
+
referralRequirements?: Metadata.ReferralRequirements | null;
|
|
1553
2994
|
/**
|
|
1554
|
-
*
|
|
2995
|
+
* Lump sum reward given to a referrer.
|
|
1555
2996
|
*/
|
|
1556
|
-
|
|
2997
|
+
referrerReward?: number | null;
|
|
1557
2998
|
/**
|
|
1558
|
-
*
|
|
2999
|
+
* Loyalty currency ID of the referrer reward.
|
|
1559
3000
|
*/
|
|
1560
|
-
|
|
3001
|
+
referrerRewardLoyaltyCurrencyId?: string | null;
|
|
1561
3002
|
/**
|
|
1562
|
-
* Flag indicating
|
|
3003
|
+
* Flag indicating if the post link is required.
|
|
1563
3004
|
*/
|
|
1564
|
-
|
|
3005
|
+
requirePostLink?: boolean | null;
|
|
1565
3006
|
/**
|
|
1566
|
-
* Flag indicating
|
|
3007
|
+
* Flag indicating if media metadata is required.
|
|
1567
3008
|
*/
|
|
1568
|
-
|
|
3009
|
+
requirePostMediaLink?: boolean | null;
|
|
1569
3010
|
/**
|
|
1570
|
-
* Flag indicating
|
|
3011
|
+
* Flag indicating if the rule can also reward badges per range.
|
|
1571
3012
|
*/
|
|
1572
|
-
|
|
3013
|
+
rewardBadgePerRange?: boolean;
|
|
1573
3014
|
/**
|
|
1574
|
-
*
|
|
3015
|
+
* Flag indicating if the reward is rewarded by batch.
|
|
1575
3016
|
*/
|
|
1576
|
-
|
|
3017
|
+
rewardByBatch?: boolean | null;
|
|
1577
3018
|
/**
|
|
1578
|
-
*
|
|
3019
|
+
* Criteria to evaluate the reward.
|
|
1579
3020
|
*/
|
|
1580
|
-
|
|
3021
|
+
rewardCriteria?: 'IMPRESSIONS_COUNT' | 'ELIGIBLE_POST' | null;
|
|
1581
3022
|
/**
|
|
1582
|
-
*
|
|
3023
|
+
* Flag indicating if the reward is rewarded per action.
|
|
1583
3024
|
*/
|
|
1584
|
-
|
|
3025
|
+
rewardPerAction?: boolean | null;
|
|
1585
3026
|
/**
|
|
1586
|
-
*
|
|
3027
|
+
* Flag indicating if rewards are given per impression.
|
|
1587
3028
|
*/
|
|
1588
|
-
|
|
3029
|
+
rewardPerImpression?: boolean | null;
|
|
1589
3030
|
/**
|
|
1590
|
-
*
|
|
3031
|
+
* Flag indicating if the rule should reward based on value of traded tokens
|
|
3032
|
+
* instead of count.
|
|
1591
3033
|
*/
|
|
1592
|
-
|
|
3034
|
+
rewardPerValue?: boolean;
|
|
1593
3035
|
/**
|
|
1594
|
-
*
|
|
3036
|
+
* Flag indicating if the rule should reward quality posts.
|
|
1595
3037
|
*/
|
|
1596
|
-
|
|
3038
|
+
rewardQualityPosts?: boolean;
|
|
1597
3039
|
/**
|
|
1598
|
-
*
|
|
3040
|
+
* Wallet address of the user can only be used if userId is not provided
|
|
1599
3041
|
*/
|
|
1600
|
-
|
|
3042
|
+
royaltyAddress?: string;
|
|
1601
3043
|
/**
|
|
1602
|
-
*
|
|
3044
|
+
* Royalty percentage of the item.
|
|
1603
3045
|
*/
|
|
1604
|
-
|
|
3046
|
+
royaltyPercentage?: number;
|
|
1605
3047
|
/**
|
|
1606
3048
|
* Currency associated with sales.
|
|
1607
3049
|
*/
|
|
@@ -1625,7 +3067,7 @@ export declare namespace RuleCreateParams {
|
|
|
1625
3067
|
/**
|
|
1626
3068
|
* Social media platform associated with the rule.
|
|
1627
3069
|
*/
|
|
1628
|
-
socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | null;
|
|
3070
|
+
socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | 'Google' | 'GitHub' | 'Reddit' | null;
|
|
1629
3071
|
/**
|
|
1630
3072
|
* URL of the social platform's logo.
|
|
1631
3073
|
*/
|
|
@@ -1634,10 +3076,18 @@ export declare namespace RuleCreateParams {
|
|
|
1634
3076
|
* Name of the social platform.
|
|
1635
3077
|
*/
|
|
1636
3078
|
socialPlatformName?: string | null;
|
|
3079
|
+
/**
|
|
3080
|
+
* ID of the Steam app.
|
|
3081
|
+
*/
|
|
3082
|
+
steamAppId?: string | null;
|
|
1637
3083
|
/**
|
|
1638
3084
|
* Array of streak milestones and corresponding rewards.
|
|
1639
3085
|
*/
|
|
1640
3086
|
streakArray?: Array<Metadata.StreakArray> | null;
|
|
3087
|
+
/**
|
|
3088
|
+
* Metadata for swap loyalty rules
|
|
3089
|
+
*/
|
|
3090
|
+
swap?: Metadata.Swap;
|
|
1641
3091
|
/**
|
|
1642
3092
|
* ID of the Telegram channel.
|
|
1643
3093
|
*/
|
|
@@ -1650,6 +3100,11 @@ export declare namespace RuleCreateParams {
|
|
|
1650
3100
|
* Flag indicating if all contracts are tracked.
|
|
1651
3101
|
*/
|
|
1652
3102
|
trackAllContracts?: boolean | null;
|
|
3103
|
+
/**
|
|
3104
|
+
* Flag indicating if the progress is tracked. If enabled, the rule can only be
|
|
3105
|
+
* completed once the progress is 100%.
|
|
3106
|
+
*/
|
|
3107
|
+
trackProgress?: boolean | null;
|
|
1653
3108
|
/**
|
|
1654
3109
|
* URL of the associated Twitter account.
|
|
1655
3110
|
*/
|
|
@@ -1685,7 +3140,15 @@ export declare namespace RuleCreateParams {
|
|
|
1685
3140
|
/**
|
|
1686
3141
|
* Type of wallet associated with the rule.
|
|
1687
3142
|
*/
|
|
1688
|
-
walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | null;
|
|
3143
|
+
walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | 'cosmos' | 'ultra' | 'agw' | 'flow_cadence' | 'substrate' | null;
|
|
3144
|
+
/**
|
|
3145
|
+
* ID of the Youtube channel.
|
|
3146
|
+
*/
|
|
3147
|
+
youtubeChannelId?: string | null;
|
|
3148
|
+
/**
|
|
3149
|
+
* ID of the Youtube video.
|
|
3150
|
+
*/
|
|
3151
|
+
youtubeVideoId?: string | null;
|
|
1689
3152
|
}
|
|
1690
3153
|
namespace Metadata {
|
|
1691
3154
|
interface Collection {
|
|
@@ -1700,7 +3163,7 @@ export declare namespace RuleCreateParams {
|
|
|
1700
3163
|
/**
|
|
1701
3164
|
* Blockchain network of the collection.
|
|
1702
3165
|
*/
|
|
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' | '
|
|
3166
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'skaleEuropa' | 'skaleCalypso' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
|
|
1704
3167
|
}
|
|
1705
3168
|
/**
|
|
1706
3169
|
* Object containing details for the call-to-action.
|
|
@@ -1765,6 +3228,49 @@ export declare namespace RuleCreateParams {
|
|
|
1765
3228
|
*/
|
|
1766
3229
|
id: string;
|
|
1767
3230
|
}
|
|
3231
|
+
/**
|
|
3232
|
+
* Liquidity pool details.
|
|
3233
|
+
*/
|
|
3234
|
+
interface Liquidity {
|
|
3235
|
+
/**
|
|
3236
|
+
* Calculation type of the liquidity pool.
|
|
3237
|
+
*/
|
|
3238
|
+
calculationType?: 'fixed' | 'custom';
|
|
3239
|
+
/**
|
|
3240
|
+
* Custom function to calculate the the reward amount based on the liquidity
|
|
3241
|
+
* provided per day. X is the reward amount, Y is the liquidity provided per day in
|
|
3242
|
+
* USD.
|
|
3243
|
+
*/
|
|
3244
|
+
customFunction?: string;
|
|
3245
|
+
/**
|
|
3246
|
+
* Liquidity provided per day in USD
|
|
3247
|
+
*/
|
|
3248
|
+
liquidityPerDay?: number;
|
|
3249
|
+
/**
|
|
3250
|
+
* Blockchain network of the liquidity pool.
|
|
3251
|
+
*/
|
|
3252
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'skaleEuropa' | 'skaleCalypso' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
|
|
3253
|
+
/**
|
|
3254
|
+
* Indicates if only in-range liquidity is rewarded.
|
|
3255
|
+
*/
|
|
3256
|
+
onlyRewardInRangeLiquidity?: boolean;
|
|
3257
|
+
/**
|
|
3258
|
+
* Array of liquidity pools associated with the rule.
|
|
3259
|
+
*/
|
|
3260
|
+
pools?: Array<Liquidity.Pool>;
|
|
3261
|
+
/**
|
|
3262
|
+
* Protocol of the liquidity pool.
|
|
3263
|
+
*/
|
|
3264
|
+
protocol?: string;
|
|
3265
|
+
}
|
|
3266
|
+
namespace Liquidity {
|
|
3267
|
+
interface Pool {
|
|
3268
|
+
/**
|
|
3269
|
+
* Unique identifier of the liquidity pool.
|
|
3270
|
+
*/
|
|
3271
|
+
id: string;
|
|
3272
|
+
}
|
|
3273
|
+
}
|
|
1768
3274
|
interface Range {
|
|
1769
3275
|
/**
|
|
1770
3276
|
* Reward amount for this range.
|
|
@@ -1778,6 +3284,14 @@ export declare namespace RuleCreateParams {
|
|
|
1778
3284
|
* Start value of the range.
|
|
1779
3285
|
*/
|
|
1780
3286
|
startRange: number;
|
|
3287
|
+
/**
|
|
3288
|
+
* ID of the loyalty badge for this range.
|
|
3289
|
+
*/
|
|
3290
|
+
loyaltyBadgeId?: string;
|
|
3291
|
+
/**
|
|
3292
|
+
* Amount of the loyalty multiplier for this range.
|
|
3293
|
+
*/
|
|
3294
|
+
loyaltyMultiplierAmount?: number;
|
|
1781
3295
|
}
|
|
1782
3296
|
/**
|
|
1783
3297
|
* Object defining referral requirements.
|
|
@@ -1821,18 +3335,14 @@ export declare namespace RuleCreateParams {
|
|
|
1821
3335
|
* Object containing details of the associated smart contract.
|
|
1822
3336
|
*/
|
|
1823
3337
|
interface SmartContract {
|
|
1824
|
-
/**
|
|
1825
|
-
* ABI of the smart contract.
|
|
1826
|
-
*/
|
|
1827
|
-
abi?: string | null;
|
|
1828
3338
|
/**
|
|
1829
3339
|
* Mapping of addresses for the smart contract.
|
|
1830
3340
|
*/
|
|
1831
3341
|
addressMapping?: string | null;
|
|
1832
3342
|
/**
|
|
1833
|
-
*
|
|
3343
|
+
* Object containing details of the amount multiplier from the event.
|
|
1834
3344
|
*/
|
|
1835
|
-
|
|
3345
|
+
amountMultiplier?: SmartContract.AmountMultiplier | null;
|
|
1836
3346
|
/**
|
|
1837
3347
|
* ID of the smart contract.
|
|
1838
3348
|
*/
|
|
@@ -1841,58 +3351,28 @@ export declare namespace RuleCreateParams {
|
|
|
1841
3351
|
* Criteria to evaluate the smart contract event.
|
|
1842
3352
|
*/
|
|
1843
3353
|
criteria?: 'everyEvent' | 'byParameter' | null;
|
|
1844
|
-
/**
|
|
1845
|
-
* Time range applied to the rule.
|
|
1846
|
-
*/
|
|
1847
|
-
customRange?: SmartContract.CustomRange | null;
|
|
1848
3354
|
/**
|
|
1849
3355
|
* Event emitted by the smart contract.
|
|
1850
3356
|
*/
|
|
1851
3357
|
event?: string | null;
|
|
1852
|
-
/**
|
|
1853
|
-
* Maximum value allowed for the parameter.
|
|
1854
|
-
*/
|
|
1855
|
-
max?: number | null;
|
|
1856
3358
|
/**
|
|
1857
3359
|
* Array of parameters for the smart contract.
|
|
1858
3360
|
*/
|
|
1859
3361
|
params?: Array<SmartContract.Param> | null;
|
|
1860
3362
|
/**
|
|
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.
|
|
3363
|
+
* Type of the smart contract interaction.
|
|
1870
3364
|
*/
|
|
1871
|
-
|
|
3365
|
+
type?: 'function' | 'event' | null;
|
|
1872
3366
|
}
|
|
1873
3367
|
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
3368
|
/**
|
|
1885
|
-
*
|
|
3369
|
+
* Object containing details of the amount multiplier from the event.
|
|
1886
3370
|
*/
|
|
1887
|
-
interface
|
|
1888
|
-
/**
|
|
1889
|
-
* End time of the custom range.
|
|
1890
|
-
*/
|
|
1891
|
-
endsAt?: string | null;
|
|
3371
|
+
interface AmountMultiplier {
|
|
1892
3372
|
/**
|
|
1893
|
-
*
|
|
3373
|
+
* Mapping of the value for the smart contract.
|
|
1894
3374
|
*/
|
|
1895
|
-
|
|
3375
|
+
valueMapping?: string | null;
|
|
1896
3376
|
}
|
|
1897
3377
|
interface Param {
|
|
1898
3378
|
/**
|
|
@@ -1929,6 +3409,24 @@ export declare namespace RuleCreateParams {
|
|
|
1929
3409
|
*/
|
|
1930
3410
|
streakMilestone: number;
|
|
1931
3411
|
}
|
|
3412
|
+
/**
|
|
3413
|
+
* Metadata for swap loyalty rules
|
|
3414
|
+
*/
|
|
3415
|
+
interface Swap {
|
|
3416
|
+
provider?: 'any' | 'relay' | 'lifi';
|
|
3417
|
+
relayReferrerId?: string;
|
|
3418
|
+
requireCrossChainSwap?: boolean;
|
|
3419
|
+
swappedToChain?: 'any' | number | string;
|
|
3420
|
+
swappedToTokens?: Array<Swap.SwappedToToken>;
|
|
3421
|
+
tokenMode?: 'any' | 'specific';
|
|
3422
|
+
trackTokenAmount?: boolean;
|
|
3423
|
+
}
|
|
3424
|
+
namespace Swap {
|
|
3425
|
+
interface SwappedToToken {
|
|
3426
|
+
address: string;
|
|
3427
|
+
chainId: string;
|
|
3428
|
+
}
|
|
3429
|
+
}
|
|
1932
3430
|
}
|
|
1933
3431
|
interface Collection {
|
|
1934
3432
|
/**
|
|
@@ -1938,7 +3436,11 @@ export declare namespace RuleCreateParams {
|
|
|
1938
3436
|
/**
|
|
1939
3437
|
* Blockchain network for the collection
|
|
1940
3438
|
*/
|
|
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' | '
|
|
3439
|
+
network: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'skaleEuropa' | 'skaleCalypso' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
|
|
3440
|
+
/**
|
|
3441
|
+
* Symbol of the collection.
|
|
3442
|
+
*/
|
|
3443
|
+
symbol?: string;
|
|
1942
3444
|
}
|
|
1943
3445
|
}
|
|
1944
3446
|
export interface RuleUpdateParams {
|
|
@@ -1954,10 +3456,14 @@ export interface RuleUpdateParams {
|
|
|
1954
3456
|
* Name of the loyalty rule
|
|
1955
3457
|
*/
|
|
1956
3458
|
name: string;
|
|
3459
|
+
/**
|
|
3460
|
+
* The type of claim for the reward
|
|
3461
|
+
*/
|
|
3462
|
+
claimType?: 'manual' | 'auto' | null;
|
|
1957
3463
|
/**
|
|
1958
3464
|
* Blockchain address of the associated collection
|
|
1959
3465
|
*/
|
|
1960
|
-
collectionAddress?: string;
|
|
3466
|
+
collectionAddress?: string | null;
|
|
1961
3467
|
/**
|
|
1962
3468
|
* List of associated collections
|
|
1963
3469
|
*/
|
|
@@ -1982,10 +3488,18 @@ export interface RuleUpdateParams {
|
|
|
1982
3488
|
* Effective start time of the rule
|
|
1983
3489
|
*/
|
|
1984
3490
|
effectiveStartTime?: string | null;
|
|
3491
|
+
/**
|
|
3492
|
+
* ID of the external integration
|
|
3493
|
+
*/
|
|
3494
|
+
externalIntegrationId?: string | null;
|
|
1985
3495
|
/**
|
|
1986
3496
|
* Frequency of the rule execution
|
|
1987
3497
|
*/
|
|
1988
3498
|
frequency?: 'none' | 'once' | 'daily' | 'weekly' | 'monthly' | 'immediately';
|
|
3499
|
+
/**
|
|
3500
|
+
* Optional stratus function id for the rule
|
|
3501
|
+
*/
|
|
3502
|
+
functionId?: string | null;
|
|
1989
3503
|
/**
|
|
1990
3504
|
* Whether to hide this rule in the user interface
|
|
1991
3505
|
*/
|
|
@@ -1993,7 +3507,7 @@ export interface RuleUpdateParams {
|
|
|
1993
3507
|
/**
|
|
1994
3508
|
* Time interval for recurring rule execution
|
|
1995
3509
|
*/
|
|
1996
|
-
interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | null;
|
|
3510
|
+
interval?: 'daily' | 'weekly' | 'monthly' | 'once' | 'custom' | 'every_message' | 'unlimited' | null;
|
|
1997
3511
|
/**
|
|
1998
3512
|
* Whether this rule is required for participation
|
|
1999
3513
|
*/
|
|
@@ -2002,6 +3516,16 @@ export interface RuleUpdateParams {
|
|
|
2002
3516
|
* ID of the rule group section to associate with the rule
|
|
2003
3517
|
*/
|
|
2004
3518
|
loyaltyRuleGroupId?: (string & {}) | 'no-section' | null;
|
|
3519
|
+
/**
|
|
3520
|
+
* The interval for the max amount. Available for the smart contract and external
|
|
3521
|
+
* rules.
|
|
3522
|
+
*/
|
|
3523
|
+
maxAmountInterval?: 'daily' | 'weekly' | 'monthly' | 'lifetime' | null;
|
|
3524
|
+
/**
|
|
3525
|
+
* The maximum amount of points a user can earn per interval. Available for the
|
|
3526
|
+
* smart contract and external rules.
|
|
3527
|
+
*/
|
|
3528
|
+
maxAmountPerInterval?: number | null;
|
|
2005
3529
|
/**
|
|
2006
3530
|
* URL of the media to be displayed
|
|
2007
3531
|
*/
|
|
@@ -2013,23 +3537,35 @@ export interface RuleUpdateParams {
|
|
|
2013
3537
|
/**
|
|
2014
3538
|
* Blockchain network where the rule will apply
|
|
2015
3539
|
*/
|
|
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' | '
|
|
3540
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'skaleEuropa' | 'skaleCalypso' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
|
|
2017
3541
|
/**
|
|
2018
3542
|
* ID for associated OAuth credentials
|
|
2019
3543
|
*/
|
|
2020
3544
|
oauthCredentialsId?: string | null;
|
|
3545
|
+
/**
|
|
3546
|
+
* The lifetime of the reward
|
|
3547
|
+
*/
|
|
3548
|
+
rewardLifetime?: 'permanent' | 'dynamic' | null;
|
|
2021
3549
|
/**
|
|
2022
3550
|
* Type of reward issued by this rule
|
|
2023
3551
|
*/
|
|
2024
|
-
rewardType?: 'points' | 'multiplier';
|
|
3552
|
+
rewardType?: 'points' | 'multiplier' | 'badge';
|
|
3553
|
+
/**
|
|
3554
|
+
* URL of the Shopify store
|
|
3555
|
+
*/
|
|
3556
|
+
shopifyStoreUrl?: string | null;
|
|
3557
|
+
/**
|
|
3558
|
+
* Whether to show this rule before the start time
|
|
3559
|
+
*/
|
|
3560
|
+
showBeforeStart?: boolean;
|
|
2025
3561
|
/**
|
|
2026
3562
|
* Start time for the loyalty rule
|
|
2027
3563
|
*/
|
|
2028
3564
|
startTime?: string | null;
|
|
2029
3565
|
/**
|
|
2030
|
-
* Optional subscription
|
|
3566
|
+
* Optional stratus subscription id for the rule
|
|
2031
3567
|
*/
|
|
2032
|
-
|
|
3568
|
+
subscriptionId?: string | null;
|
|
2033
3569
|
}
|
|
2034
3570
|
export declare namespace RuleUpdateParams {
|
|
2035
3571
|
interface Collection {
|
|
@@ -2040,12 +3576,25 @@ export declare namespace RuleUpdateParams {
|
|
|
2040
3576
|
/**
|
|
2041
3577
|
* Blockchain network for the collection
|
|
2042
3578
|
*/
|
|
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' | '
|
|
3579
|
+
network: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'skaleEuropa' | 'skaleCalypso' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
|
|
3580
|
+
/**
|
|
3581
|
+
* Symbol of the collection.
|
|
3582
|
+
*/
|
|
3583
|
+
symbol?: string;
|
|
2044
3584
|
}
|
|
2045
3585
|
/**
|
|
2046
3586
|
* Additional metadata for the loyalty rule
|
|
2047
3587
|
*/
|
|
2048
3588
|
interface Metadata {
|
|
3589
|
+
/**
|
|
3590
|
+
* Array of loyalty rule IDs that count as check-in when completed. If ["any"] then
|
|
3591
|
+
* any rule completions count as check-in.
|
|
3592
|
+
*/
|
|
3593
|
+
autoCheckInRuleIds?: Array<(string & {}) | 'any'> | null;
|
|
3594
|
+
/**
|
|
3595
|
+
* Number of tokens per batch.
|
|
3596
|
+
*/
|
|
3597
|
+
batchSize?: number | null;
|
|
2049
3598
|
/**
|
|
2050
3599
|
* Text displayed on the action button.
|
|
2051
3600
|
*/
|
|
@@ -2065,7 +3614,7 @@ export declare namespace RuleUpdateParams {
|
|
|
2065
3614
|
/**
|
|
2066
3615
|
* Text to check in the Twitter post, username, or bio.
|
|
2067
3616
|
*/
|
|
2068
|
-
checkText?: string | null;
|
|
3617
|
+
checkText?: string | Array<string> | null;
|
|
2069
3618
|
/**
|
|
2070
3619
|
* Array of collections associated with the rule.
|
|
2071
3620
|
*/
|
|
@@ -2073,7 +3622,13 @@ export declare namespace RuleUpdateParams {
|
|
|
2073
3622
|
/**
|
|
2074
3623
|
* Conditions for completing the profile.
|
|
2075
3624
|
*/
|
|
2076
|
-
completeProfileConditions?:
|
|
3625
|
+
completeProfileConditions?: {
|
|
3626
|
+
[key: string]: boolean;
|
|
3627
|
+
} | null;
|
|
3628
|
+
/**
|
|
3629
|
+
* Description of the external rule condition (only for external rules)
|
|
3630
|
+
*/
|
|
3631
|
+
conditionDescription?: string;
|
|
2077
3632
|
/**
|
|
2078
3633
|
* Object containing details for the call-to-action.
|
|
2079
3634
|
*/
|
|
@@ -2082,6 +3637,10 @@ export declare namespace RuleUpdateParams {
|
|
|
2082
3637
|
* API key for custom rewards integration.
|
|
2083
3638
|
*/
|
|
2084
3639
|
customRewardsApiKey?: string;
|
|
3640
|
+
/**
|
|
3641
|
+
* Flag indicating if the rule should use direct RPC to get the balance of tokens.
|
|
3642
|
+
*/
|
|
3643
|
+
directRpc?: boolean;
|
|
2085
3644
|
/**
|
|
2086
3645
|
* Array of Discord servers, channels, and roles to join.
|
|
2087
3646
|
*/
|
|
@@ -2102,6 +3661,10 @@ export declare namespace RuleUpdateParams {
|
|
|
2102
3661
|
* Flag indicating whether the verified multiplier is enabled.
|
|
2103
3662
|
*/
|
|
2104
3663
|
enableVerifiedMultiplier?: boolean;
|
|
3664
|
+
/**
|
|
3665
|
+
* Type of ERC20 token for the loyalty rule.
|
|
3666
|
+
*/
|
|
3667
|
+
erc20Type?: 'erc20' | 'native';
|
|
2105
3668
|
/**
|
|
2106
3669
|
* Fill source of the order for the token sale
|
|
2107
3670
|
*/
|
|
@@ -2110,6 +3673,14 @@ export declare namespace RuleUpdateParams {
|
|
|
2110
3673
|
* Percentage reward given to a user for their first referral.
|
|
2111
3674
|
*/
|
|
2112
3675
|
firstReferralReward?: number | null;
|
|
3676
|
+
/**
|
|
3677
|
+
* Name of the GitHub branch to check for PR merge.
|
|
3678
|
+
*/
|
|
3679
|
+
githubBranchName?: string | null;
|
|
3680
|
+
/**
|
|
3681
|
+
* URL of the GitHub repository to check for star.
|
|
3682
|
+
*/
|
|
3683
|
+
githubRepoUrl?: string | null;
|
|
2113
3684
|
/**
|
|
2114
3685
|
* Flag indicating whether the fill source is included.
|
|
2115
3686
|
*/
|
|
@@ -2118,10 +3689,6 @@ export declare namespace RuleUpdateParams {
|
|
|
2118
3689
|
* Indicates if the item has never been sold.
|
|
2119
3690
|
*/
|
|
2120
3691
|
hasNeverSold?: boolean;
|
|
2121
|
-
/**
|
|
2122
|
-
* Flag indicating whether the order source is included.
|
|
2123
|
-
*/
|
|
2124
|
-
hasOrderSource?: boolean;
|
|
2125
3692
|
/**
|
|
2126
3693
|
* Indicates if the full royalty has been paid for items.
|
|
2127
3694
|
*/
|
|
@@ -2138,10 +3705,18 @@ export declare namespace RuleUpdateParams {
|
|
|
2138
3705
|
* URL of the image associated with the rule.
|
|
2139
3706
|
*/
|
|
2140
3707
|
imageUrl?: string | null;
|
|
3708
|
+
/**
|
|
3709
|
+
* If enabled, the first transaction done on the platform will complete this rule
|
|
3710
|
+
*/
|
|
3711
|
+
isCheckInOnEveryTxn?: boolean;
|
|
2141
3712
|
/**
|
|
2142
3713
|
* Indicates if the multiplier has been applied to rewards.
|
|
2143
3714
|
*/
|
|
2144
3715
|
isMultiplierApplied?: boolean;
|
|
3716
|
+
/**
|
|
3717
|
+
* Flag indicating if the rule is restricted to new users.
|
|
3718
|
+
*/
|
|
3719
|
+
isRestrictedToNewUsers?: boolean;
|
|
2145
3720
|
/**
|
|
2146
3721
|
* Flag indicating if rewards are applied retroactively.
|
|
2147
3722
|
*/
|
|
@@ -2154,6 +3729,10 @@ export declare namespace RuleUpdateParams {
|
|
|
2154
3729
|
* Optional link associated with the metadata.
|
|
2155
3730
|
*/
|
|
2156
3731
|
link?: string | null;
|
|
3732
|
+
/**
|
|
3733
|
+
* Liquidity pool details.
|
|
3734
|
+
*/
|
|
3735
|
+
liquidity?: Metadata.Liquidity;
|
|
2157
3736
|
/**
|
|
2158
3737
|
* Maximum quantity constraint for token holding.
|
|
2159
3738
|
*/
|
|
@@ -2186,18 +3765,30 @@ export declare namespace RuleUpdateParams {
|
|
|
2186
3765
|
* give points for only one token ownership per contract
|
|
2187
3766
|
*/
|
|
2188
3767
|
onlyRewardSingleTokenOwnership?: boolean | null;
|
|
2189
|
-
/**
|
|
2190
|
-
* Order source of the order for the token sale
|
|
2191
|
-
*/
|
|
2192
|
-
orderSource?: string;
|
|
2193
3768
|
/**
|
|
2194
3769
|
* Promotional code associated with the rule.
|
|
2195
3770
|
*/
|
|
2196
3771
|
promoCode?: string;
|
|
3772
|
+
/**
|
|
3773
|
+
* URL of the CSV file containing promo codes.
|
|
3774
|
+
*/
|
|
3775
|
+
promoCodeCsvUrl?: string;
|
|
3776
|
+
/**
|
|
3777
|
+
* Numbers of the promotional code to be generated.
|
|
3778
|
+
*/
|
|
3779
|
+
promoCodeLength?: number | null;
|
|
3780
|
+
/**
|
|
3781
|
+
* Type of the promotional code.
|
|
3782
|
+
*/
|
|
3783
|
+
promoCodeType?: 'code' | 'csv' | 'generate';
|
|
2197
3784
|
/**
|
|
2198
3785
|
* Array defining ranges and corresponding rewards.
|
|
2199
3786
|
*/
|
|
2200
3787
|
range?: Array<Metadata.Range>;
|
|
3788
|
+
/**
|
|
3789
|
+
* ID of the Reddit post.
|
|
3790
|
+
*/
|
|
3791
|
+
redditPostId?: string | null;
|
|
2201
3792
|
/**
|
|
2202
3793
|
* Object defining referral requirements.
|
|
2203
3794
|
*/
|
|
@@ -2206,10 +3797,55 @@ export declare namespace RuleUpdateParams {
|
|
|
2206
3797
|
* Lump sum reward given to a referrer.
|
|
2207
3798
|
*/
|
|
2208
3799
|
referrerReward?: number | null;
|
|
3800
|
+
/**
|
|
3801
|
+
* Loyalty currency ID of the referrer reward.
|
|
3802
|
+
*/
|
|
3803
|
+
referrerRewardLoyaltyCurrencyId?: string | null;
|
|
3804
|
+
/**
|
|
3805
|
+
* Flag indicating if the post link is required.
|
|
3806
|
+
*/
|
|
3807
|
+
requirePostLink?: boolean | null;
|
|
3808
|
+
/**
|
|
3809
|
+
* Flag indicating if media metadata is required.
|
|
3810
|
+
*/
|
|
3811
|
+
requirePostMediaLink?: boolean | null;
|
|
3812
|
+
/**
|
|
3813
|
+
* Flag indicating if the rule can also reward badges per range.
|
|
3814
|
+
*/
|
|
3815
|
+
rewardBadgePerRange?: boolean;
|
|
3816
|
+
/**
|
|
3817
|
+
* Flag indicating if the reward is rewarded by batch.
|
|
3818
|
+
*/
|
|
3819
|
+
rewardByBatch?: boolean | null;
|
|
3820
|
+
/**
|
|
3821
|
+
* Criteria to evaluate the reward.
|
|
3822
|
+
*/
|
|
3823
|
+
rewardCriteria?: 'IMPRESSIONS_COUNT' | 'ELIGIBLE_POST' | null;
|
|
3824
|
+
/**
|
|
3825
|
+
* Flag indicating if the reward is rewarded per action.
|
|
3826
|
+
*/
|
|
3827
|
+
rewardPerAction?: boolean | null;
|
|
2209
3828
|
/**
|
|
2210
3829
|
* Flag indicating if rewards are given per impression.
|
|
2211
3830
|
*/
|
|
2212
3831
|
rewardPerImpression?: boolean | null;
|
|
3832
|
+
/**
|
|
3833
|
+
* Flag indicating if the rule should reward based on value of traded tokens
|
|
3834
|
+
* instead of count.
|
|
3835
|
+
*/
|
|
3836
|
+
rewardPerValue?: boolean;
|
|
3837
|
+
/**
|
|
3838
|
+
* Flag indicating if the rule should reward quality posts.
|
|
3839
|
+
*/
|
|
3840
|
+
rewardQualityPosts?: boolean;
|
|
3841
|
+
/**
|
|
3842
|
+
* Wallet address of the user can only be used if userId is not provided
|
|
3843
|
+
*/
|
|
3844
|
+
royaltyAddress?: string;
|
|
3845
|
+
/**
|
|
3846
|
+
* Royalty percentage of the item.
|
|
3847
|
+
*/
|
|
3848
|
+
royaltyPercentage?: number;
|
|
2213
3849
|
/**
|
|
2214
3850
|
* Currency associated with sales.
|
|
2215
3851
|
*/
|
|
@@ -2233,7 +3869,7 @@ export declare namespace RuleUpdateParams {
|
|
|
2233
3869
|
/**
|
|
2234
3870
|
* Social media platform associated with the rule.
|
|
2235
3871
|
*/
|
|
2236
|
-
socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | null;
|
|
3872
|
+
socialPlatform?: 'Custom' | 'Discord' | 'EpicGames' | 'Instagram' | 'Steam' | 'Telegram' | 'TikTok' | 'Twitch' | 'X(Twitter)' | 'YouTube' | 'Google' | 'GitHub' | 'Reddit' | null;
|
|
2237
3873
|
/**
|
|
2238
3874
|
* URL of the social platform's logo.
|
|
2239
3875
|
*/
|
|
@@ -2242,10 +3878,18 @@ export declare namespace RuleUpdateParams {
|
|
|
2242
3878
|
* Name of the social platform.
|
|
2243
3879
|
*/
|
|
2244
3880
|
socialPlatformName?: string | null;
|
|
3881
|
+
/**
|
|
3882
|
+
* ID of the Steam app.
|
|
3883
|
+
*/
|
|
3884
|
+
steamAppId?: string | null;
|
|
2245
3885
|
/**
|
|
2246
3886
|
* Array of streak milestones and corresponding rewards.
|
|
2247
3887
|
*/
|
|
2248
3888
|
streakArray?: Array<Metadata.StreakArray> | null;
|
|
3889
|
+
/**
|
|
3890
|
+
* Metadata for swap loyalty rules
|
|
3891
|
+
*/
|
|
3892
|
+
swap?: Metadata.Swap;
|
|
2249
3893
|
/**
|
|
2250
3894
|
* ID of the Telegram channel.
|
|
2251
3895
|
*/
|
|
@@ -2258,6 +3902,11 @@ export declare namespace RuleUpdateParams {
|
|
|
2258
3902
|
* Flag indicating if all contracts are tracked.
|
|
2259
3903
|
*/
|
|
2260
3904
|
trackAllContracts?: boolean | null;
|
|
3905
|
+
/**
|
|
3906
|
+
* Flag indicating if the progress is tracked. If enabled, the rule can only be
|
|
3907
|
+
* completed once the progress is 100%.
|
|
3908
|
+
*/
|
|
3909
|
+
trackProgress?: boolean | null;
|
|
2261
3910
|
/**
|
|
2262
3911
|
* URL of the associated Twitter account.
|
|
2263
3912
|
*/
|
|
@@ -2293,7 +3942,15 @@ export declare namespace RuleUpdateParams {
|
|
|
2293
3942
|
/**
|
|
2294
3943
|
* Type of wallet associated with the rule.
|
|
2295
3944
|
*/
|
|
2296
|
-
walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | null;
|
|
3945
|
+
walletType?: 'evm' | 'solana' | 'imx' | 'sui' | 'ton' | 'cosmos' | 'ultra' | 'agw' | 'flow_cadence' | 'substrate' | null;
|
|
3946
|
+
/**
|
|
3947
|
+
* ID of the Youtube channel.
|
|
3948
|
+
*/
|
|
3949
|
+
youtubeChannelId?: string | null;
|
|
3950
|
+
/**
|
|
3951
|
+
* ID of the Youtube video.
|
|
3952
|
+
*/
|
|
3953
|
+
youtubeVideoId?: string | null;
|
|
2297
3954
|
}
|
|
2298
3955
|
namespace Metadata {
|
|
2299
3956
|
interface Collection {
|
|
@@ -2308,7 +3965,7 @@ export declare namespace RuleUpdateParams {
|
|
|
2308
3965
|
/**
|
|
2309
3966
|
* Blockchain network of the collection.
|
|
2310
3967
|
*/
|
|
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' | '
|
|
3968
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'skaleEuropa' | 'skaleCalypso' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
|
|
2312
3969
|
}
|
|
2313
3970
|
/**
|
|
2314
3971
|
* Object containing details for the call-to-action.
|
|
@@ -2373,6 +4030,49 @@ export declare namespace RuleUpdateParams {
|
|
|
2373
4030
|
*/
|
|
2374
4031
|
id: string;
|
|
2375
4032
|
}
|
|
4033
|
+
/**
|
|
4034
|
+
* Liquidity pool details.
|
|
4035
|
+
*/
|
|
4036
|
+
interface Liquidity {
|
|
4037
|
+
/**
|
|
4038
|
+
* Calculation type of the liquidity pool.
|
|
4039
|
+
*/
|
|
4040
|
+
calculationType?: 'fixed' | 'custom';
|
|
4041
|
+
/**
|
|
4042
|
+
* Custom function to calculate the the reward amount based on the liquidity
|
|
4043
|
+
* provided per day. X is the reward amount, Y is the liquidity provided per day in
|
|
4044
|
+
* USD.
|
|
4045
|
+
*/
|
|
4046
|
+
customFunction?: string;
|
|
4047
|
+
/**
|
|
4048
|
+
* Liquidity provided per day in USD
|
|
4049
|
+
*/
|
|
4050
|
+
liquidityPerDay?: number;
|
|
4051
|
+
/**
|
|
4052
|
+
* Blockchain network of the liquidity pool.
|
|
4053
|
+
*/
|
|
4054
|
+
network?: 'abstract' | 'abstractTestnet' | 'apechain' | 'arbitrum' | 'avalanche' | 'avalancheFuji' | 'base' | 'baseSepolia' | 'berachain' | 'berachainArtio' | 'berachainBepolia' | 'binance' | 'bscTestnet' | 'campTestnet' | 'fantom' | 'fantomTestnet' | 'flowMainnet' | 'mainnet' | 'nexusTestnet' | 'optimism' | 'polygon' | 'polygon_mumbai' | 'skaleNebula' | 'skaleEuropa' | 'skaleCalypso' | 'solana' | 'sophon' | 'sophonTestnet' | 'sui' | 'superseed' | 'superseedSepolia' | 'vanar' | 'xai' | 'zksync' | 'coti' | 'cotiTestnet' | 'morph' | 'morphTestnet' | 'morphHolesky' | 'ultra' | 'ultraTestnet' | 'nitrograph' | 'sepolia' | 'optimism_sepolia' | 'arbitrumSepolia' | 'goerli' | 'optimism_goerli' | 'arbitrumGoerli' | 'basecamp' | 'somnia' | 'zkverify' | 'polkadot' | 'kusama' | 'flow_cadence';
|
|
4055
|
+
/**
|
|
4056
|
+
* Indicates if only in-range liquidity is rewarded.
|
|
4057
|
+
*/
|
|
4058
|
+
onlyRewardInRangeLiquidity?: boolean;
|
|
4059
|
+
/**
|
|
4060
|
+
* Array of liquidity pools associated with the rule.
|
|
4061
|
+
*/
|
|
4062
|
+
pools?: Array<Liquidity.Pool>;
|
|
4063
|
+
/**
|
|
4064
|
+
* Protocol of the liquidity pool.
|
|
4065
|
+
*/
|
|
4066
|
+
protocol?: string;
|
|
4067
|
+
}
|
|
4068
|
+
namespace Liquidity {
|
|
4069
|
+
interface Pool {
|
|
4070
|
+
/**
|
|
4071
|
+
* Unique identifier of the liquidity pool.
|
|
4072
|
+
*/
|
|
4073
|
+
id: string;
|
|
4074
|
+
}
|
|
4075
|
+
}
|
|
2376
4076
|
interface Range {
|
|
2377
4077
|
/**
|
|
2378
4078
|
* Reward amount for this range.
|
|
@@ -2386,6 +4086,14 @@ export declare namespace RuleUpdateParams {
|
|
|
2386
4086
|
* Start value of the range.
|
|
2387
4087
|
*/
|
|
2388
4088
|
startRange: number;
|
|
4089
|
+
/**
|
|
4090
|
+
* ID of the loyalty badge for this range.
|
|
4091
|
+
*/
|
|
4092
|
+
loyaltyBadgeId?: string;
|
|
4093
|
+
/**
|
|
4094
|
+
* Amount of the loyalty multiplier for this range.
|
|
4095
|
+
*/
|
|
4096
|
+
loyaltyMultiplierAmount?: number;
|
|
2389
4097
|
}
|
|
2390
4098
|
/**
|
|
2391
4099
|
* Object defining referral requirements.
|
|
@@ -2429,18 +4137,14 @@ export declare namespace RuleUpdateParams {
|
|
|
2429
4137
|
* Object containing details of the associated smart contract.
|
|
2430
4138
|
*/
|
|
2431
4139
|
interface SmartContract {
|
|
2432
|
-
/**
|
|
2433
|
-
* ABI of the smart contract.
|
|
2434
|
-
*/
|
|
2435
|
-
abi?: string | null;
|
|
2436
4140
|
/**
|
|
2437
4141
|
* Mapping of addresses for the smart contract.
|
|
2438
4142
|
*/
|
|
2439
4143
|
addressMapping?: string | null;
|
|
2440
4144
|
/**
|
|
2441
|
-
*
|
|
4145
|
+
* Object containing details of the amount multiplier from the event.
|
|
2442
4146
|
*/
|
|
2443
|
-
|
|
4147
|
+
amountMultiplier?: SmartContract.AmountMultiplier | null;
|
|
2444
4148
|
/**
|
|
2445
4149
|
* ID of the smart contract.
|
|
2446
4150
|
*/
|
|
@@ -2449,58 +4153,28 @@ export declare namespace RuleUpdateParams {
|
|
|
2449
4153
|
* Criteria to evaluate the smart contract event.
|
|
2450
4154
|
*/
|
|
2451
4155
|
criteria?: 'everyEvent' | 'byParameter' | null;
|
|
2452
|
-
/**
|
|
2453
|
-
* Time range applied to the rule.
|
|
2454
|
-
*/
|
|
2455
|
-
customRange?: SmartContract.CustomRange | null;
|
|
2456
4156
|
/**
|
|
2457
4157
|
* Event emitted by the smart contract.
|
|
2458
4158
|
*/
|
|
2459
4159
|
event?: string | null;
|
|
2460
|
-
/**
|
|
2461
|
-
* Maximum value allowed for the parameter.
|
|
2462
|
-
*/
|
|
2463
|
-
max?: number | null;
|
|
2464
4160
|
/**
|
|
2465
4161
|
* Array of parameters for the smart contract.
|
|
2466
4162
|
*/
|
|
2467
4163
|
params?: Array<SmartContract.Param> | null;
|
|
2468
4164
|
/**
|
|
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.
|
|
4165
|
+
* Type of the smart contract interaction.
|
|
2478
4166
|
*/
|
|
2479
|
-
|
|
4167
|
+
type?: 'function' | 'event' | null;
|
|
2480
4168
|
}
|
|
2481
4169
|
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
4170
|
/**
|
|
2493
|
-
*
|
|
4171
|
+
* Object containing details of the amount multiplier from the event.
|
|
2494
4172
|
*/
|
|
2495
|
-
interface
|
|
2496
|
-
/**
|
|
2497
|
-
* End time of the custom range.
|
|
2498
|
-
*/
|
|
2499
|
-
endsAt?: string | null;
|
|
4173
|
+
interface AmountMultiplier {
|
|
2500
4174
|
/**
|
|
2501
|
-
*
|
|
4175
|
+
* Mapping of the value for the smart contract.
|
|
2502
4176
|
*/
|
|
2503
|
-
|
|
4177
|
+
valueMapping?: string | null;
|
|
2504
4178
|
}
|
|
2505
4179
|
interface Param {
|
|
2506
4180
|
/**
|
|
@@ -2537,15 +4211,55 @@ export declare namespace RuleUpdateParams {
|
|
|
2537
4211
|
*/
|
|
2538
4212
|
streakMilestone: number;
|
|
2539
4213
|
}
|
|
4214
|
+
/**
|
|
4215
|
+
* Metadata for swap loyalty rules
|
|
4216
|
+
*/
|
|
4217
|
+
interface Swap {
|
|
4218
|
+
provider?: 'any' | 'relay' | 'lifi';
|
|
4219
|
+
relayReferrerId?: string;
|
|
4220
|
+
requireCrossChainSwap?: boolean;
|
|
4221
|
+
swappedToChain?: 'any' | number | string;
|
|
4222
|
+
swappedToTokens?: Array<Swap.SwappedToToken>;
|
|
4223
|
+
tokenMode?: 'any' | 'specific';
|
|
4224
|
+
trackTokenAmount?: boolean;
|
|
4225
|
+
}
|
|
4226
|
+
namespace Swap {
|
|
4227
|
+
interface SwappedToToken {
|
|
4228
|
+
address: string;
|
|
4229
|
+
chainId: string;
|
|
4230
|
+
}
|
|
4231
|
+
}
|
|
2540
4232
|
}
|
|
2541
4233
|
}
|
|
2542
4234
|
export interface RuleListParams {
|
|
4235
|
+
/**
|
|
4236
|
+
* IDs of the users to filter results by
|
|
4237
|
+
*/
|
|
4238
|
+
allotedToUserId?: string | Array<string>;
|
|
4239
|
+
/**
|
|
4240
|
+
* ID of the user group to filter results by
|
|
4241
|
+
*/
|
|
4242
|
+
allotedUserGroupId?: string;
|
|
2543
4243
|
/**
|
|
2544
4244
|
* Address of the collection to filter by
|
|
2545
4245
|
*/
|
|
2546
4246
|
collectionAddress?: string;
|
|
2547
4247
|
/**
|
|
2548
|
-
*
|
|
4248
|
+
* Whether to include deleted/archived records
|
|
4249
|
+
*/
|
|
4250
|
+
includeDeleted?: boolean | null;
|
|
4251
|
+
/**
|
|
4252
|
+
* If true this will only return active rules, the rules for which the startTime is
|
|
4253
|
+
* in the past and the endTime is in the future
|
|
4254
|
+
*/
|
|
4255
|
+
isActive?: 'true' | 'false';
|
|
4256
|
+
/**
|
|
4257
|
+
* If true this will only return special rules, special rules are the rules that
|
|
4258
|
+
* are used for anti sybil as honey pot
|
|
4259
|
+
*/
|
|
4260
|
+
isSpecial?: 'true' | 'false';
|
|
4261
|
+
/**
|
|
4262
|
+
* Maximum number of records to return (max 100)
|
|
2549
4263
|
*/
|
|
2550
4264
|
limit?: number;
|
|
2551
4265
|
/**
|
|
@@ -2569,6 +4283,12 @@ export interface RuleListParams {
|
|
|
2569
4283
|
*/
|
|
2570
4284
|
websiteId?: string;
|
|
2571
4285
|
}
|
|
4286
|
+
export interface RuleDeleteParams {
|
|
4287
|
+
/**
|
|
4288
|
+
* Whether to debit loyalty points
|
|
4289
|
+
*/
|
|
4290
|
+
debitLoyaltyPoints?: string;
|
|
4291
|
+
}
|
|
2572
4292
|
export interface RuleCompleteParams {
|
|
2573
4293
|
/**
|
|
2574
4294
|
* Override amount for the reward (rounded to nearest whole number). This will
|
|
@@ -2576,13 +4296,25 @@ export interface RuleCompleteParams {
|
|
|
2576
4296
|
*/
|
|
2577
4297
|
amount?: number | null;
|
|
2578
4298
|
/**
|
|
2579
|
-
* Link to the comment made by user
|
|
4299
|
+
* Link to the post/comment made by user
|
|
4300
|
+
*/
|
|
4301
|
+
contentUrl?: string;
|
|
4302
|
+
/**
|
|
4303
|
+
* Unique key to ensure idempotent requests.
|
|
2580
4304
|
*/
|
|
2581
|
-
|
|
4305
|
+
idempotencyKey?: string;
|
|
2582
4306
|
/**
|
|
2583
4307
|
* ID of the choice selected by the user
|
|
2584
4308
|
*/
|
|
2585
4309
|
loyaltyQuestionChoiceId?: string;
|
|
4310
|
+
/**
|
|
4311
|
+
* Value to compare with the range
|
|
4312
|
+
*/
|
|
4313
|
+
rangeValue?: number | null;
|
|
4314
|
+
/**
|
|
4315
|
+
* Flag indicating if the chain or required check should be skipped.
|
|
4316
|
+
*/
|
|
4317
|
+
skipChainOrRequiredCheck?: boolean;
|
|
2586
4318
|
/**
|
|
2587
4319
|
* Unique identifier for the user
|
|
2588
4320
|
*/
|
|
@@ -2593,7 +4325,7 @@ export interface RuleCompleteParams {
|
|
|
2593
4325
|
verificationCode?: string;
|
|
2594
4326
|
/**
|
|
2595
4327
|
* Flag indicating if only verification is required, this will not create a
|
|
2596
|
-
* transaction and reward the user
|
|
4328
|
+
* transaction and reward the user.
|
|
2597
4329
|
*/
|
|
2598
4330
|
verifyOnly?: string;
|
|
2599
4331
|
/**
|
|
@@ -2602,11 +4334,25 @@ export interface RuleCompleteParams {
|
|
|
2602
4334
|
walletAddress?: string;
|
|
2603
4335
|
}
|
|
2604
4336
|
export interface RuleGetStatusParams {
|
|
2605
|
-
|
|
2606
|
-
|
|
4337
|
+
/**
|
|
4338
|
+
* Number of items to return
|
|
4339
|
+
*/
|
|
4340
|
+
limit?: number | null;
|
|
4341
|
+
/**
|
|
4342
|
+
* Unique identifier for the loyalty rule[s]
|
|
4343
|
+
*/
|
|
4344
|
+
loyaltyRuleId?: string | Array<string>;
|
|
4345
|
+
organizationId?: string;
|
|
4346
|
+
/**
|
|
4347
|
+
* Starting after item
|
|
4348
|
+
*/
|
|
4349
|
+
startingAfter?: string;
|
|
4350
|
+
userGroupId?: string;
|
|
2607
4351
|
userId?: string;
|
|
4352
|
+
walletAddress?: string;
|
|
4353
|
+
websiteId?: string;
|
|
2608
4354
|
}
|
|
2609
4355
|
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, };
|
|
4356
|
+
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
4357
|
}
|
|
2612
4358
|
//# sourceMappingURL=rules.d.ts.map
|