@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 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
- name: string;
15
- collection: string;
16
- slots: number;
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
- isLocked: boolean;
19
- usersPaid: PublicKey;
20
- amountPaid: number;
21
- amountUsers: number;
22
- apr: number;
23
- initTs: number;
24
- endTs: number;
25
- }[]>;
26
- /**
27
- * Get all stakes
28
- */
29
- getStakes(): Promise<{
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
- stake({ name, wallet, mint, collections, rarity }: {
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, amount, slots, collection }: {
237
- name: string;
238
- amount: BN;
239
- slots: BN;
240
- collection: string;
241
- }, options?: RpcOptions): Promise<string>;
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
  }