@triadxyz/triad-protocol 0.1.3-alpha.7 → 0.1.4-beta
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/dist/stake.d.ts +109 -213
- package/dist/stake.js +358 -69
- package/dist/test.d.ts +1 -17
- package/dist/test.js +90 -38
- package/dist/types/idl_triad_protocol.json +721 -192
- package/dist/types/stake.d.ts +123 -0
- package/dist/types/stake.js +20 -0
- package/dist/types/triad_protocol.d.ts +587 -198
- package/dist/utils/constants.d.ts +32 -2
- package/dist/utils/constants.js +15 -3
- package/dist/utils/helpers.d.ts +18 -0
- package/dist/utils/helpers.js +84 -2
- package/package.json +4 -2
package/dist/stake.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { AnchorProvider, Program } from '@coral-xyz/anchor';
|
|
2
2
|
import { PublicKey } from '@solana/web3.js';
|
|
3
3
|
import { TriadProtocol } from './types/triad_protocol';
|
|
4
|
-
import BN from 'bn.js';
|
|
5
4
|
import { RpcOptions } from './types';
|
|
5
|
+
import { DepositStakeRewardsArgs, InitializeStakeArgs, StakeNftArgs, RequestWithdrawArgs, WithdrawArgs, StakeResponse, UpdateStakeVaultStatusArgs, ClaimStakeRewardsArgs, CreateUserArgs, StakeTokenArgs, MigrateStakeArgs } from './types/stake';
|
|
6
6
|
export default class Stake {
|
|
7
7
|
program: Program<TriadProtocol>;
|
|
8
8
|
provider: AnchorProvider;
|
|
@@ -10,233 +10,129 @@ export default class Stake {
|
|
|
10
10
|
/**
|
|
11
11
|
* Get all Stake Vaults
|
|
12
12
|
*/
|
|
13
|
-
getStakeVaults(): Promise<
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
13
|
+
getStakeVaults(): Promise<import("./types/stake").StakeVaultResponse[]>;
|
|
14
|
+
/**
|
|
15
|
+
* Get all Users
|
|
16
|
+
*/
|
|
17
|
+
getUsers(): Promise<import("./types/stake").UserResponse[]>;
|
|
18
|
+
/**
|
|
19
|
+
* Get Stake Vault by name
|
|
20
|
+
* @param stakeVault - Stake Vault name
|
|
21
|
+
*/
|
|
22
|
+
getStakeVaultByName(stakeVault: string): Promise<import("./types/stake").StakeVaultResponse>;
|
|
23
|
+
/**
|
|
24
|
+
* Get all stakes by vault
|
|
25
|
+
* @param stakeVault - Stake Vault name
|
|
26
|
+
*
|
|
27
|
+
*/
|
|
28
|
+
getStakes(stakeVault: string): Promise<StakeResponse[]>;
|
|
29
|
+
/**
|
|
30
|
+
* Get Stake by wallet
|
|
31
|
+
* @param wallet - User wallet
|
|
32
|
+
* @param stakeVault - Stake Vault name
|
|
33
|
+
*
|
|
34
|
+
*/
|
|
35
|
+
getStakeByWallet(wallet: PublicKey, stakeVault: string): Promise<StakeResponse[]>;
|
|
36
|
+
/**
|
|
37
|
+
* Get Stake Vault Rewards details
|
|
38
|
+
* @param stakeVault - Stake Vault name
|
|
39
|
+
*/
|
|
40
|
+
getStakeVaultRewards(stakeVault: string): Promise<{
|
|
17
41
|
amount: number;
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
*
|
|
28
|
-
*/
|
|
29
|
-
|
|
30
|
-
name: string;
|
|
31
|
-
collections: (({
|
|
32
|
-
undead?: never;
|
|
33
|
-
alligators?: never;
|
|
34
|
-
pyth?: never;
|
|
35
|
-
} & {
|
|
36
|
-
coleta: Record<string, never>;
|
|
37
|
-
}) | ({
|
|
38
|
-
coleta?: never;
|
|
39
|
-
alligators?: never;
|
|
40
|
-
pyth?: never;
|
|
41
|
-
} & {
|
|
42
|
-
undead: Record<string, never>;
|
|
43
|
-
}) | ({
|
|
44
|
-
coleta?: never;
|
|
45
|
-
undead?: never;
|
|
46
|
-
pyth?: never;
|
|
47
|
-
} & {
|
|
48
|
-
alligators: Record<string, never>;
|
|
49
|
-
}) | ({
|
|
50
|
-
coleta?: never;
|
|
51
|
-
undead?: never;
|
|
52
|
-
alligators?: never;
|
|
53
|
-
} & {
|
|
54
|
-
pyth: Record<string, never>;
|
|
55
|
-
}))[];
|
|
56
|
-
rarity: ({
|
|
57
|
-
uncommon?: never;
|
|
58
|
-
rare?: never;
|
|
59
|
-
epic?: never;
|
|
60
|
-
legendary?: never;
|
|
61
|
-
mythic?: never;
|
|
62
|
-
} & {
|
|
63
|
-
common: Record<string, never>;
|
|
64
|
-
}) | ({
|
|
65
|
-
common?: never;
|
|
66
|
-
rare?: never;
|
|
67
|
-
epic?: never;
|
|
68
|
-
legendary?: never;
|
|
69
|
-
mythic?: never;
|
|
70
|
-
} & {
|
|
71
|
-
uncommon: Record<string, never>;
|
|
72
|
-
}) | ({
|
|
73
|
-
common?: never;
|
|
74
|
-
uncommon?: never;
|
|
75
|
-
epic?: never;
|
|
76
|
-
legendary?: never;
|
|
77
|
-
mythic?: never;
|
|
78
|
-
} & {
|
|
79
|
-
rare: Record<string, never>;
|
|
80
|
-
}) | ({
|
|
81
|
-
common?: never;
|
|
82
|
-
uncommon?: never;
|
|
83
|
-
rare?: never;
|
|
84
|
-
legendary?: never;
|
|
85
|
-
mythic?: never;
|
|
86
|
-
} & {
|
|
87
|
-
epic: Record<string, never>;
|
|
88
|
-
}) | ({
|
|
89
|
-
common?: never;
|
|
90
|
-
uncommon?: never;
|
|
91
|
-
rare?: never;
|
|
92
|
-
epic?: never;
|
|
93
|
-
mythic?: never;
|
|
94
|
-
} & {
|
|
95
|
-
legendary: Record<string, never>;
|
|
96
|
-
}) | ({
|
|
97
|
-
common?: never;
|
|
98
|
-
uncommon?: never;
|
|
99
|
-
rare?: never;
|
|
100
|
-
epic?: never;
|
|
101
|
-
legendary?: never;
|
|
102
|
-
} & {
|
|
103
|
-
mythic: Record<string, never>;
|
|
104
|
-
});
|
|
105
|
-
stakeVault: PublicKey;
|
|
106
|
-
account: PublicKey;
|
|
107
|
-
initTs: number;
|
|
108
|
-
isLocked: boolean;
|
|
109
|
-
withdrawTs: number;
|
|
110
|
-
mint: PublicKey;
|
|
111
|
-
}[]>;
|
|
112
|
-
getStakeByWallet(wallet: PublicKey): Promise<{
|
|
113
|
-
name: string;
|
|
114
|
-
collections: (({
|
|
115
|
-
undead?: never;
|
|
116
|
-
alligators?: never;
|
|
117
|
-
pyth?: never;
|
|
118
|
-
} & {
|
|
119
|
-
coleta: Record<string, never>;
|
|
120
|
-
}) | ({
|
|
121
|
-
coleta?: never;
|
|
122
|
-
alligators?: never;
|
|
123
|
-
pyth?: never;
|
|
124
|
-
} & {
|
|
125
|
-
undead: Record<string, never>;
|
|
126
|
-
}) | ({
|
|
127
|
-
coleta?: never;
|
|
128
|
-
undead?: never;
|
|
129
|
-
pyth?: never;
|
|
130
|
-
} & {
|
|
131
|
-
alligators: Record<string, never>;
|
|
132
|
-
}) | ({
|
|
133
|
-
coleta?: never;
|
|
134
|
-
undead?: never;
|
|
135
|
-
alligators?: never;
|
|
136
|
-
} & {
|
|
137
|
-
pyth: Record<string, never>;
|
|
138
|
-
}))[];
|
|
139
|
-
rarity: ({
|
|
140
|
-
uncommon?: never;
|
|
141
|
-
rare?: never;
|
|
142
|
-
epic?: never;
|
|
143
|
-
legendary?: never;
|
|
144
|
-
mythic?: never;
|
|
145
|
-
} & {
|
|
146
|
-
common: Record<string, never>;
|
|
147
|
-
}) | ({
|
|
148
|
-
common?: never;
|
|
149
|
-
rare?: never;
|
|
150
|
-
epic?: never;
|
|
151
|
-
legendary?: never;
|
|
152
|
-
mythic?: never;
|
|
153
|
-
} & {
|
|
154
|
-
uncommon: Record<string, never>;
|
|
155
|
-
}) | ({
|
|
156
|
-
common?: never;
|
|
157
|
-
uncommon?: never;
|
|
158
|
-
epic?: never;
|
|
159
|
-
legendary?: never;
|
|
160
|
-
mythic?: never;
|
|
161
|
-
} & {
|
|
162
|
-
rare: Record<string, never>;
|
|
163
|
-
}) | ({
|
|
164
|
-
common?: never;
|
|
165
|
-
uncommon?: never;
|
|
166
|
-
rare?: never;
|
|
167
|
-
legendary?: never;
|
|
168
|
-
mythic?: never;
|
|
169
|
-
} & {
|
|
170
|
-
epic: Record<string, never>;
|
|
171
|
-
}) | ({
|
|
172
|
-
common?: never;
|
|
173
|
-
uncommon?: never;
|
|
174
|
-
rare?: never;
|
|
175
|
-
epic?: never;
|
|
176
|
-
mythic?: never;
|
|
177
|
-
} & {
|
|
178
|
-
legendary: Record<string, never>;
|
|
179
|
-
}) | ({
|
|
180
|
-
common?: never;
|
|
181
|
-
uncommon?: never;
|
|
182
|
-
rare?: never;
|
|
183
|
-
epic?: never;
|
|
184
|
-
legendary?: never;
|
|
185
|
-
} & {
|
|
186
|
-
mythic: Record<string, never>;
|
|
187
|
-
});
|
|
188
|
-
stakeVault: PublicKey;
|
|
189
|
-
account: PublicKey;
|
|
190
|
-
initTs: number;
|
|
191
|
-
isLocked: boolean;
|
|
192
|
-
withdrawTs: number;
|
|
193
|
-
mint: PublicKey;
|
|
194
|
-
}[]>;
|
|
42
|
+
perDay: number;
|
|
43
|
+
perWeek: number;
|
|
44
|
+
perMonth: number;
|
|
45
|
+
period: number;
|
|
46
|
+
days: number[];
|
|
47
|
+
}>;
|
|
48
|
+
/**
|
|
49
|
+
* Get Stakes by day
|
|
50
|
+
* @param stakeVault - Stake Vault name
|
|
51
|
+
* @param day - Day timestamp
|
|
52
|
+
*/
|
|
53
|
+
getStakesByDay(stakeVault: string, day: number): Promise<StakeResponse[]>;
|
|
195
54
|
/**
|
|
196
55
|
* Stake NFT
|
|
197
56
|
* @param name - NFT name
|
|
198
57
|
* @param wallet - User wallet
|
|
199
58
|
* @param mint - NFT mint
|
|
59
|
+
*
|
|
60
|
+
*/
|
|
61
|
+
stakeNft({ name, wallet, mint, stakeVault }: StakeNftArgs, options?: RpcOptions): Promise<string>;
|
|
62
|
+
/**
|
|
63
|
+
* Stake NFT
|
|
64
|
+
* @param wallet - User wallet
|
|
65
|
+
* @param mint - NFT mint
|
|
200
66
|
* @param collections - NFT collections
|
|
201
67
|
* @param rarity - NFT rarity
|
|
202
68
|
*
|
|
203
69
|
*/
|
|
204
|
-
|
|
205
|
-
name: string;
|
|
206
|
-
wallet: PublicKey;
|
|
207
|
-
mint: PublicKey;
|
|
208
|
-
collections: {
|
|
209
|
-
alligators: boolean;
|
|
210
|
-
coleta: boolean;
|
|
211
|
-
undead: boolean;
|
|
212
|
-
pyth: boolean;
|
|
213
|
-
};
|
|
214
|
-
rarity: {
|
|
215
|
-
common: {};
|
|
216
|
-
} | {
|
|
217
|
-
uncommon: {};
|
|
218
|
-
} | {
|
|
219
|
-
rare: {};
|
|
220
|
-
} | {
|
|
221
|
-
epic: {};
|
|
222
|
-
} | {
|
|
223
|
-
legendary: {};
|
|
224
|
-
} | {
|
|
225
|
-
mythic: {};
|
|
226
|
-
};
|
|
227
|
-
}, options?: RpcOptions): Promise<string>;
|
|
70
|
+
stakeToken({ name, wallet, stakeVault, amount }: StakeTokenArgs, options?: RpcOptions): Promise<string>;
|
|
228
71
|
/**
|
|
229
72
|
* Initialize Stake Vault
|
|
230
73
|
* @param name - The ticker's name
|
|
231
|
-
* @param amount - Reward amount
|
|
232
74
|
* @param slots - Amount available to users joining the vault
|
|
233
75
|
* @param collection - The Collection name
|
|
234
76
|
*
|
|
235
77
|
*/
|
|
236
|
-
initializeStakeVault({ name,
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
78
|
+
initializeStakeVault({ name, slots, collection, amount }: InitializeStakeArgs, options?: RpcOptions): Promise<string>;
|
|
79
|
+
/**
|
|
80
|
+
* Deposit Stake Rewards
|
|
81
|
+
* @param wallet - User wallet
|
|
82
|
+
* @param mint - NFT mint
|
|
83
|
+
* @param amount - Reward amount
|
|
84
|
+
*
|
|
85
|
+
*/
|
|
86
|
+
depositStakeRewards({ wallet, mint, amount, stakeVault }: DepositStakeRewardsArgs, options?: RpcOptions): Promise<string>;
|
|
87
|
+
/**
|
|
88
|
+
* Request Withdraw
|
|
89
|
+
* @param wallet - User wallet
|
|
90
|
+
* @param name - Stake name
|
|
91
|
+
* @param stakeVault - Name of the stake vault
|
|
92
|
+
*
|
|
93
|
+
*/
|
|
94
|
+
requestWithdraw({ wallet, name, mint, stakeVault }: RequestWithdrawArgs, options?: RpcOptions): Promise<string>;
|
|
95
|
+
/**
|
|
96
|
+
* Withdraw Stake
|
|
97
|
+
* @param wallet - User wallet
|
|
98
|
+
* @param name - Stake name
|
|
99
|
+
* @param mint - NFT mint
|
|
100
|
+
* @param stakeVault - Name of the stake vault
|
|
101
|
+
*
|
|
102
|
+
*/
|
|
103
|
+
withdrawStake({ wallet, name, mint, stakeVault }: WithdrawArgs, options?: RpcOptions): Promise<string>;
|
|
104
|
+
/**
|
|
105
|
+
* Update Stake Vault Status
|
|
106
|
+
* @param wallet - User wallet
|
|
107
|
+
* @param stakeVault - Name of the stake vault
|
|
108
|
+
* @param isLocked - Status of the stake vault
|
|
109
|
+
* @param week - Current week rewards (Starts from 0)
|
|
110
|
+
*
|
|
111
|
+
*/
|
|
112
|
+
updateStakeVaultStatus({ wallet, isLocked, week, stakeVault }: UpdateStakeVaultStatusArgs, options?: RpcOptions): Promise<string>;
|
|
113
|
+
/**
|
|
114
|
+
* Claim Stake Rewards
|
|
115
|
+
* @param wallet - User wallet
|
|
116
|
+
* @param mint - NFT mint
|
|
117
|
+
* @param stakeVault - Name of the stake vault
|
|
118
|
+
* @param nftName - Name of the nft
|
|
119
|
+
*
|
|
120
|
+
*/
|
|
121
|
+
claimStakeRewards({ wallet, mint, stakeVault, nftName }: ClaimStakeRewardsArgs, options?: RpcOptions): Promise<string>;
|
|
122
|
+
/**
|
|
123
|
+
* Create User
|
|
124
|
+
* @param wallet - User wallet
|
|
125
|
+
* @param name - user name
|
|
126
|
+
* @param referral - user referral
|
|
127
|
+
*
|
|
128
|
+
*/
|
|
129
|
+
createUser({ wallet, name, referral }: CreateUserArgs, options?: RpcOptions): Promise<string>;
|
|
130
|
+
/**
|
|
131
|
+
* Migrate Stake
|
|
132
|
+
* @param name - NFT name
|
|
133
|
+
* @param wallet - User wallet
|
|
134
|
+
* @param mint - NFT mint
|
|
135
|
+
*
|
|
136
|
+
*/
|
|
137
|
+
migrateStake({ name, wallet, mint, stakeVault }: MigrateStakeArgs, options?: RpcOptions): Promise<string>;
|
|
242
138
|
}
|