@kamino-finance/klend-sdk 7.1.0 → 7.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (154) hide show
  1. package/dist/@codegen/klend/instructions/liquidateObligationAndRedeemReserveCollateralV2.js +1 -1
  2. package/dist/@codegen/unstaking_pool/accounts/PoolState.d.ts +53 -0
  3. package/dist/@codegen/unstaking_pool/accounts/PoolState.d.ts.map +1 -0
  4. package/dist/@codegen/unstaking_pool/accounts/PoolState.js +167 -0
  5. package/dist/@codegen/unstaking_pool/accounts/PoolState.js.map +1 -0
  6. package/dist/@codegen/unstaking_pool/accounts/UnstakeTicket.d.ts +41 -0
  7. package/dist/@codegen/unstaking_pool/accounts/UnstakeTicket.d.ts.map +1 -0
  8. package/dist/@codegen/unstaking_pool/accounts/UnstakeTicket.js +143 -0
  9. package/dist/@codegen/unstaking_pool/accounts/UnstakeTicket.js.map +1 -0
  10. package/dist/@codegen/unstaking_pool/accounts/index.d.ts +5 -0
  11. package/dist/@codegen/unstaking_pool/accounts/index.d.ts.map +1 -0
  12. package/dist/@codegen/unstaking_pool/accounts/index.js +8 -0
  13. package/dist/@codegen/unstaking_pool/accounts/index.js.map +1 -0
  14. package/dist/@codegen/unstaking_pool/errors/anchor.d.ts +435 -0
  15. package/dist/@codegen/unstaking_pool/errors/anchor.d.ts.map +1 -0
  16. package/dist/@codegen/unstaking_pool/errors/anchor.js +767 -0
  17. package/dist/@codegen/unstaking_pool/errors/anchor.js.map +1 -0
  18. package/dist/@codegen/unstaking_pool/errors/custom.d.ts +259 -0
  19. package/dist/@codegen/unstaking_pool/errors/custom.d.ts.map +1 -0
  20. package/dist/@codegen/unstaking_pool/errors/custom.js +458 -0
  21. package/dist/@codegen/unstaking_pool/errors/custom.js.map +1 -0
  22. package/dist/@codegen/unstaking_pool/errors/index.d.ts +6 -0
  23. package/dist/@codegen/unstaking_pool/errors/index.d.ts.map +1 -0
  24. package/dist/@codegen/unstaking_pool/errors/index.js +86 -0
  25. package/dist/@codegen/unstaking_pool/errors/index.js.map +1 -0
  26. package/dist/@codegen/unstaking_pool/instructions/burn.d.ts +21 -0
  27. package/dist/@codegen/unstaking_pool/instructions/burn.d.ts.map +1 -0
  28. package/dist/@codegen/unstaking_pool/instructions/burn.js +67 -0
  29. package/dist/@codegen/unstaking_pool/instructions/burn.js.map +1 -0
  30. package/dist/@codegen/unstaking_pool/instructions/changeTicketAuthority.d.ts +8 -0
  31. package/dist/@codegen/unstaking_pool/instructions/changeTicketAuthority.d.ts.map +1 -0
  32. package/dist/@codegen/unstaking_pool/instructions/changeTicketAuthority.js +16 -0
  33. package/dist/@codegen/unstaking_pool/instructions/changeTicketAuthority.js.map +1 -0
  34. package/dist/@codegen/unstaking_pool/instructions/collect.d.ts +16 -0
  35. package/dist/@codegen/unstaking_pool/instructions/collect.d.ts.map +1 -0
  36. package/dist/@codegen/unstaking_pool/instructions/collect.js +24 -0
  37. package/dist/@codegen/unstaking_pool/instructions/collect.js.map +1 -0
  38. package/dist/@codegen/unstaking_pool/instructions/index.d.ts +17 -0
  39. package/dist/@codegen/unstaking_pool/instructions/index.d.ts.map +1 -0
  40. package/dist/@codegen/unstaking_pool/instructions/index.js +20 -0
  41. package/dist/@codegen/unstaking_pool/instructions/index.js.map +1 -0
  42. package/dist/@codegen/unstaking_pool/instructions/initializePool.d.ts +14 -0
  43. package/dist/@codegen/unstaking_pool/instructions/initializePool.d.ts.map +1 -0
  44. package/dist/@codegen/unstaking_pool/instructions/initializePool.js +22 -0
  45. package/dist/@codegen/unstaking_pool/instructions/initializePool.js.map +1 -0
  46. package/dist/@codegen/unstaking_pool/instructions/mint.d.ts +24 -0
  47. package/dist/@codegen/unstaking_pool/instructions/mint.d.ts.map +1 -0
  48. package/dist/@codegen/unstaking_pool/instructions/mint.js +74 -0
  49. package/dist/@codegen/unstaking_pool/instructions/mint.js.map +1 -0
  50. package/dist/@codegen/unstaking_pool/instructions/splitTicket.d.ts +15 -0
  51. package/dist/@codegen/unstaking_pool/instructions/splitTicket.d.ts.map +1 -0
  52. package/dist/@codegen/unstaking_pool/instructions/splitTicket.js +62 -0
  53. package/dist/@codegen/unstaking_pool/instructions/splitTicket.js.map +1 -0
  54. package/dist/@codegen/unstaking_pool/instructions/updateAdmin.d.ts +7 -0
  55. package/dist/@codegen/unstaking_pool/instructions/updateAdmin.d.ts.map +1 -0
  56. package/dist/@codegen/unstaking_pool/instructions/updateAdmin.js +19 -0
  57. package/dist/@codegen/unstaking_pool/instructions/updateAdmin.js.map +1 -0
  58. package/dist/@codegen/unstaking_pool/instructions/updatePoolConfig.d.ts +13 -0
  59. package/dist/@codegen/unstaking_pool/instructions/updatePoolConfig.d.ts.map +1 -0
  60. package/dist/@codegen/unstaking_pool/instructions/updatePoolConfig.js +60 -0
  61. package/dist/@codegen/unstaking_pool/instructions/updatePoolConfig.js.map +1 -0
  62. package/dist/@codegen/unstaking_pool/programId.d.ts +4 -0
  63. package/dist/@codegen/unstaking_pool/programId.d.ts.map +1 -0
  64. package/dist/@codegen/unstaking_pool/programId.js +9 -0
  65. package/dist/@codegen/unstaking_pool/programId.js.map +1 -0
  66. package/dist/@codegen/unstaking_pool/types/PoolConfigField.d.ts +45 -0
  67. package/dist/@codegen/unstaking_pool/types/PoolConfigField.d.ts.map +1 -0
  68. package/dist/@codegen/unstaking_pool/types/PoolConfigField.js +132 -0
  69. package/dist/@codegen/unstaking_pool/types/PoolConfigField.js.map +1 -0
  70. package/dist/@codegen/unstaking_pool/types/index.d.ts +5 -0
  71. package/dist/@codegen/unstaking_pool/types/index.d.ts.map +1 -0
  72. package/dist/@codegen/unstaking_pool/types/index.js +39 -0
  73. package/dist/@codegen/unstaking_pool/types/index.js.map +1 -0
  74. package/dist/@codegen/unstaking_pool/utils/borshAddress.d.ts +4 -0
  75. package/dist/@codegen/unstaking_pool/utils/borshAddress.d.ts.map +1 -0
  76. package/dist/@codegen/unstaking_pool/utils/borshAddress.js +30 -0
  77. package/dist/@codegen/unstaking_pool/utils/borshAddress.js.map +1 -0
  78. package/dist/@codegen/unstaking_pool/utils/index.d.ts +2 -0
  79. package/dist/@codegen/unstaking_pool/utils/index.d.ts.map +1 -0
  80. package/dist/@codegen/unstaking_pool/utils/index.js +18 -0
  81. package/dist/@codegen/unstaking_pool/utils/index.js.map +1 -0
  82. package/dist/classes/action.d.ts.map +1 -1
  83. package/dist/classes/action.js +5 -5
  84. package/dist/classes/action.js.map +1 -1
  85. package/dist/classes/index.d.ts +5 -0
  86. package/dist/classes/index.d.ts.map +1 -1
  87. package/dist/classes/index.js +5 -0
  88. package/dist/classes/index.js.map +1 -1
  89. package/dist/classes/manager.d.ts.map +1 -1
  90. package/dist/classes/manager.js +2 -3
  91. package/dist/classes/manager.js.map +1 -1
  92. package/dist/classes/stakePool.d.ts +8 -0
  93. package/dist/classes/stakePool.d.ts.map +1 -0
  94. package/dist/classes/stakePool.js +18 -0
  95. package/dist/classes/stakePool.js.map +1 -0
  96. package/dist/classes/standardStakePool.d.ts +76 -0
  97. package/dist/classes/standardStakePool.d.ts.map +1 -0
  98. package/dist/classes/standardStakePool.js +400 -0
  99. package/dist/classes/standardStakePool.js.map +1 -0
  100. package/dist/classes/unstakingPool.d.ts +115 -0
  101. package/dist/classes/unstakingPool.d.ts.map +1 -0
  102. package/dist/classes/unstakingPool.js +372 -0
  103. package/dist/classes/unstakingPool.js.map +1 -0
  104. package/dist/classes/unstakingPoolTypes.d.ts +10 -0
  105. package/dist/classes/unstakingPoolTypes.d.ts.map +1 -0
  106. package/dist/classes/unstakingPoolTypes.js +3 -0
  107. package/dist/classes/unstakingPoolTypes.js.map +1 -0
  108. package/dist/classes/vault.d.ts +0 -9
  109. package/dist/classes/vault.d.ts.map +1 -1
  110. package/dist/classes/vault.js +6 -41
  111. package/dist/classes/vault.js.map +1 -1
  112. package/dist/idl/klend.json +1 -1
  113. package/dist/lib.d.ts +1 -0
  114. package/dist/lib.d.ts.map +1 -1
  115. package/dist/lib.js +3 -1
  116. package/dist/lib.js.map +1 -1
  117. package/dist/utils/lookupTable.d.ts +9 -0
  118. package/dist/utils/lookupTable.d.ts.map +1 -1
  119. package/dist/utils/lookupTable.js +37 -0
  120. package/dist/utils/lookupTable.js.map +1 -1
  121. package/package.json +3 -1
  122. package/src/@codegen/klend/instructions/liquidateObligationAndRedeemReserveCollateralV2.ts +1 -1
  123. package/src/@codegen/unstaking_pool/accounts/PoolState.ts +188 -0
  124. package/src/@codegen/unstaking_pool/accounts/UnstakeTicket.ts +156 -0
  125. package/src/@codegen/unstaking_pool/accounts/index.ts +4 -0
  126. package/src/@codegen/unstaking_pool/errors/anchor.ts +773 -0
  127. package/src/@codegen/unstaking_pool/errors/custom.ts +477 -0
  128. package/src/@codegen/unstaking_pool/errors/index.ts +68 -0
  129. package/src/@codegen/unstaking_pool/instructions/burn.ts +70 -0
  130. package/src/@codegen/unstaking_pool/instructions/changeTicketAuthority.ts +37 -0
  131. package/src/@codegen/unstaking_pool/instructions/collect.ts +53 -0
  132. package/src/@codegen/unstaking_pool/instructions/index.ts +19 -0
  133. package/src/@codegen/unstaking_pool/instructions/initializePool.ts +49 -0
  134. package/src/@codegen/unstaking_pool/instructions/mint.ts +80 -0
  135. package/src/@codegen/unstaking_pool/instructions/splitTicket.ts +59 -0
  136. package/src/@codegen/unstaking_pool/instructions/updateAdmin.ts +39 -0
  137. package/src/@codegen/unstaking_pool/instructions/updatePoolConfig.ts +58 -0
  138. package/src/@codegen/unstaking_pool/programId.ts +9 -0
  139. package/src/@codegen/unstaking_pool/types/PoolConfigField.ts +121 -0
  140. package/src/@codegen/unstaking_pool/types/index.ts +12 -0
  141. package/src/@codegen/unstaking_pool/utils/borshAddress.ts +43 -0
  142. package/src/@codegen/unstaking_pool/utils/index.ts +1 -0
  143. package/src/classes/action.ts +10 -5
  144. package/src/classes/index.ts +5 -0
  145. package/src/classes/manager.ts +3 -4
  146. package/src/classes/stakePool.ts +21 -0
  147. package/src/classes/standardStakePool.ts +487 -0
  148. package/src/classes/unstakingPool.ts +504 -0
  149. package/src/classes/unstakingPoolTypes.ts +12 -0
  150. package/src/classes/vault.ts +43 -56
  151. package/src/idl/klend.json +2 -2
  152. package/src/idl/unstaking_pool.json +662 -0
  153. package/src/lib.ts +1 -0
  154. package/src/utils/lookupTable.ts +48 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"standardStakePool.js","sourceRoot":"","sources":["../../src/classes/standardStakePool.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,115 @@
1
+ import { PoolState } from '../@codegen/unstaking_pool/accounts';
2
+ import { InitPoolIxs, MintIxs } from './unstakingPoolTypes';
3
+ import { PoolConfigFieldKind } from '../@codegen/unstaking_pool/types';
4
+ import BN from 'bn.js';
5
+ import { StakeAccount } from './standardStakePool';
6
+ import { Address, GetAccountInfoApi, GetProgramAccountsApi, Instruction, KeyPairSigner, ProgramDerivedAddress, Rpc, SolanaRpcApi, TransactionSigner } from '@solana/kit';
7
+ export declare const UNSTAKING_POOL_STAGING_ID: Address;
8
+ export declare const STAKE_PROGRAM_ID: Address;
9
+ export declare const CLOCK_PROGRAM_ID: Address;
10
+ export declare const STAKE_POOL_SIZE: number;
11
+ /**
12
+ * Unstaking sol mint seed
13
+ */
14
+ export declare const UNSTAKING_SOL_MINT_SEED: Buffer<ArrayBuffer>;
15
+ /**
16
+ * Unstaking sol pool base authority seed
17
+ */
18
+ export declare const BASE_POOL_AUTHORITY_SEED: Buffer<ArrayBuffer>;
19
+ /**
20
+ * KaminoPoolClient is a class that provides a high-level interface to interact with the Kamino Pool program.
21
+ */
22
+ export declare class UnstakingPoolClient {
23
+ private readonly _rpc;
24
+ private readonly _unstakingPoolProgramId;
25
+ constructor(rpc: Rpc<SolanaRpcApi>, unstakingPoolprogramId?: Address);
26
+ getConnection(): Rpc<import("@solana/kit").RequestAirdropApi & GetAccountInfoApi & import("@solana/kit").GetBalanceApi & import("@solana/kit").GetBlockApi & import("@solana/kit").GetBlockCommitmentApi & import("@solana/kit").GetBlockHeightApi & import("@solana/kit").GetBlockProductionApi & import("@solana/kit").GetBlocksApi & import("@solana/kit").GetBlocksWithLimitApi & import("@solana/kit").GetBlockTimeApi & import("@solana/kit").GetClusterNodesApi & import("@solana/kit").GetEpochInfoApi & import("@solana/kit").GetEpochScheduleApi & import("@solana/kit").GetFeeForMessageApi & import("@solana/kit").GetFirstAvailableBlockApi & import("@solana/kit").GetGenesisHashApi & import("@solana/kit").GetHealthApi & import("@solana/kit").GetHighestSnapshotSlotApi & import("@solana/kit").GetIdentityApi & import("@solana/kit").GetInflationGovernorApi & import("@solana/kit").GetInflationRateApi & import("@solana/kit").GetInflationRewardApi & import("@solana/kit").GetLargestAccountsApi & import("@solana/kit").GetLatestBlockhashApi & import("@solana/kit").GetLeaderScheduleApi & import("@solana/kit").GetMaxRetransmitSlotApi & import("@solana/kit").GetMaxShredInsertSlotApi & import("@solana/kit").GetMinimumBalanceForRentExemptionApi & import("@solana/kit").GetMultipleAccountsApi & GetProgramAccountsApi & import("@solana/kit").GetRecentPerformanceSamplesApi & import("@solana/kit").GetRecentPrioritizationFeesApi & import("@solana/kit").GetSignaturesForAddressApi & import("@solana/kit").GetSignatureStatusesApi & import("@solana/kit").GetSlotApi & import("@solana/kit").GetSlotLeaderApi & import("@solana/kit").GetSlotLeadersApi & import("@solana/kit").GetStakeMinimumDelegationApi & import("@solana/kit").GetSupplyApi & import("@solana/kit").GetTokenAccountBalanceApi & import("@solana/kit").GetTokenAccountsByDelegateApi & import("@solana/kit").GetTokenAccountsByOwnerApi & import("@solana/kit").GetTokenLargestAccountsApi & import("@solana/kit").GetTokenSupplyApi & import("@solana/kit").GetTransactionApi & import("@solana/kit").GetTransactionCountApi & import("@solana/kit").GetVersionApi & import("@solana/kit").GetVoteAccountsApi & import("@solana/kit").IsBlockhashValidApi & import("@solana/kit").MinimumLedgerSlotApi & import("@solana/kit").SendTransactionApi & import("@solana/kit").SimulateTransactionApi>;
27
+ getProgramID(): Address;
28
+ /**
29
+ * This method will create a pool with a given config. The config can be changed later on, but it is recommended to set it up correctly from the start
30
+ * @param poolConfig - the config object used to create a pool
31
+ * @returns pool - keypair, should be used to sign the transaction which creates the pool account
32
+ * @returns pool: the keypair of the pool, used to sign the initialization transaction; initPoolIxs: a struct with ixs to initialize the pool and its lookup table + populateLUTIxs, a list to populate the lookup table which has to be executed in a separate transaction
33
+ */
34
+ createPoolIxs(poolConfig: UnstakingPoolConfig): Promise<{
35
+ pool: KeyPairSigner;
36
+ initPoolIxs: InitPoolIxs;
37
+ }>;
38
+ /**
39
+ * Update pool configuration such as admin authority (or fees/minimum depositable in the future)
40
+ * @param poolState - the pool to update and set the LUT for if needed or only the pool pubkey if updating LUT is not needed
41
+ * @param admin - admin of the specified pool
42
+ * @param mode - what field to update for pool
43
+ * @param value - new value that is converted .toString()
44
+ * @returns a struct that contains a list of ix to update the pool config
45
+ */
46
+ updatePoolConfigIxs(poolState: UnstakingPool | Address, admin: TransactionSigner, mode: PoolConfigFieldKind, value: string): Promise<Instruction>;
47
+ /**
48
+ * Collect a stake account SOL if the needed epoch was reached
49
+ * @param poolState - the pool to collect SOL into
50
+ * @param payer - payer for the operation (ix is permissionless)
51
+ * @param stakeAccount - stake account that was deactivated this epoch and has base pool authority as owner
52
+ * @returns collect instruction
53
+ */
54
+ collectIx(poolState: UnstakingPool, payer: TransactionSigner, stakeAccount: Address): Promise<Instruction>;
55
+ /**
56
+ * Burn a number of shares (USOL) in exchange for SOL
57
+ * @param poolState - the pool to burn USOL from
58
+ * @param user - user that burns (ix is not gated by action authority)
59
+ * @param unstakeTicket - ticket where to burn the shares from
60
+ * @param sharesToBurn - number of shares that are equivalent 1:1 with SOL
61
+ * @returns burn instruction
62
+ */
63
+ burnIx(poolState: UnstakingPool, user: TransactionSigner, unstakeTicket: Address, sharesToBurn: BN): Promise<Instruction>;
64
+ /**
65
+ * Mints a number of unstaking sol (USOL) in exchange for staked SOL
66
+ * NOTE: this ix is permissioned by action authority
67
+ * @param poolState - the pool to mint USOL from
68
+ * @param user - user that mints
69
+ * @param actionAuthority - user that has authority to mint in that pool (== poolState.actionAuthority)
70
+ * @param unstakeTicket - empty keypair where unstake ticket will be stored
71
+ * @param stakedSolMint - staked sol mint
72
+ * @param stakedSolToDeposit - staked sol to convert to USOL (at the pool ratio)
73
+ * @param minSharesToReceive - parameter to control slippage
74
+ * @returns burn instruction
75
+ */
76
+ mintIx(poolState: UnstakingPool, user: TransactionSigner, actionAuthority: TransactionSigner, unstakeTicket: TransactionSigner, stakedSolMint: Address, stakedSolToDeposit: BN, minSharesToReceive: BN): Promise<MintIxs>;
77
+ /**
78
+ * Sync a pool for lookup table;
79
+ * @param pool the pool to sync the LUT for
80
+ * @param owner the pool lut owner
81
+ * @returns a struct that contains a list of ix to create the LUT and assign it to the pool if needed + a list of ixs to insert all the accounts in the LUT
82
+ */
83
+ syncPoolLookupTable(pool: UnstakingPool, owner: TransactionSigner): Promise<Instruction[]>;
84
+ /**
85
+ * Get all pools
86
+ * @returns an array of all pools
87
+ */
88
+ getAllPools(): Promise<UnstakingPool[]>;
89
+ }
90
+ export declare class UnstakingPool {
91
+ readonly address: Address;
92
+ state: PoolState | undefined | null;
93
+ programId: Address;
94
+ constructor(poolAddress: Address, state?: PoolState, programId?: Address);
95
+ getState(rpc: Rpc<GetAccountInfoApi>): Promise<PoolState>;
96
+ reloadState(rpc: Rpc<GetAccountInfoApi>): Promise<PoolState>;
97
+ getStakeAccountsForPool(rpc: Rpc<GetProgramAccountsApi>): Promise<Array<StakeAccountInfo>>;
98
+ }
99
+ export type StakeAccountInfo = {
100
+ pk: Address;
101
+ stakeAccount: StakeAccount;
102
+ lamports: BN;
103
+ };
104
+ /**
105
+ * Used to initialize a Kamino Pool
106
+ */
107
+ export type UnstakingPoolConfig = {
108
+ /** The admin of the pool */
109
+ admin: TransactionSigner;
110
+ /** Pubkey that can mint new tokens */
111
+ actionAuthority: Address | null;
112
+ };
113
+ export declare function unstakingPoolMintPda(pool: Address, programId?: Address): Promise<ProgramDerivedAddress>;
114
+ export declare function unstakingPoolAuthorityPda(pool: Address, programId?: Address): Promise<ProgramDerivedAddress>;
115
+ //# sourceMappingURL=unstakingPool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"unstakingPool.d.ts","sourceRoot":"","sources":["../../src/classes/unstakingPool.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,372 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.UnstakingPool = exports.UnstakingPoolClient = exports.BASE_POOL_AUTHORITY_SEED = exports.UNSTAKING_SOL_MINT_SEED = exports.STAKE_POOL_SIZE = exports.CLOCK_PROGRAM_ID = exports.STAKE_PROGRAM_ID = exports.UNSTAKING_POOL_STAGING_ID = void 0;
7
+ exports.unstakingPoolMintPda = unstakingPoolMintPda;
8
+ exports.unstakingPoolAuthorityPda = unstakingPoolAuthorityPda;
9
+ const instructions_1 = require("../@codegen/unstaking_pool/instructions");
10
+ const token_2022_1 = require("@solana-program/token-2022");
11
+ const lib_1 = require("../lib");
12
+ const accounts_1 = require("../@codegen/unstaking_pool/accounts");
13
+ const utils_1 = require("../utils");
14
+ const bs58_1 = __importDefault(require("bs58"));
15
+ const rpc_1 = require("../utils/rpc");
16
+ const types_1 = require("../@codegen/unstaking_pool/types");
17
+ const bn_js_1 = __importDefault(require("bn.js"));
18
+ const stakePool_1 = require("./stakePool");
19
+ const standardStakePool_1 = require("./standardStakePool");
20
+ const kit_1 = require("@solana/kit");
21
+ const system_1 = require("@solana-program/system");
22
+ const sysvars_1 = require("@solana/sysvars");
23
+ const token_1 = require("@solana-program/token");
24
+ const compat_1 = require("@solana/compat");
25
+ const programId_1 = require("../@codegen/unstaking_pool/programId");
26
+ exports.UNSTAKING_POOL_STAGING_ID = (0, kit_1.address)('SUPFzSvjWnK9AbQ5bQksKaDKeAZBx56Gtjx1AjJsUdj');
27
+ exports.STAKE_PROGRAM_ID = (0, kit_1.address)('Stake11111111111111111111111111111111111111');
28
+ exports.CLOCK_PROGRAM_ID = (0, kit_1.address)('SysvarC1ock11111111111111111111111111111111');
29
+ const STAKE_HISTORY_PROGRAM_ID = (0, kit_1.address)('SysvarStakeHistory1111111111111111111111111');
30
+ const STAKE_ACCOUNT_SIZE = 200;
31
+ exports.STAKE_POOL_SIZE = 611;
32
+ const addressEncoder = (0, kit_1.getAddressEncoder)();
33
+ /**
34
+ * Unstaking sol mint seed
35
+ */
36
+ exports.UNSTAKING_SOL_MINT_SEED = Buffer.from('unstaking_sol_mint');
37
+ /**
38
+ * Unstaking sol pool base authority seed
39
+ */
40
+ exports.BASE_POOL_AUTHORITY_SEED = Buffer.from('authority');
41
+ /**
42
+ * KaminoPoolClient is a class that provides a high-level interface to interact with the Kamino Pool program.
43
+ */
44
+ class UnstakingPoolClient {
45
+ _rpc;
46
+ _unstakingPoolProgramId;
47
+ constructor(rpc, unstakingPoolprogramId) {
48
+ this._rpc = rpc;
49
+ this._unstakingPoolProgramId = unstakingPoolprogramId ? unstakingPoolprogramId : programId_1.PROGRAM_ID;
50
+ }
51
+ getConnection() {
52
+ return this._rpc;
53
+ }
54
+ getProgramID() {
55
+ return this._unstakingPoolProgramId;
56
+ }
57
+ /**
58
+ * This method will create a pool with a given config. The config can be changed later on, but it is recommended to set it up correctly from the start
59
+ * @param poolConfig - the config object used to create a pool
60
+ * @returns pool - keypair, should be used to sign the transaction which creates the pool account
61
+ * @returns pool: the keypair of the pool, used to sign the initialization transaction; initPoolIxs: a struct with ixs to initialize the pool and its lookup table + populateLUTIxs, a list to populate the lookup table which has to be executed in a separate transaction
62
+ */
63
+ async createPoolIxs(poolConfig) {
64
+ const poolState = await (0, kit_1.generateKeyPairSigner)();
65
+ const size = accounts_1.PoolState.layout.span + 8;
66
+ const createPoolIx = (0, system_1.getCreateAccountInstruction)({
67
+ payer: poolConfig.admin,
68
+ newAccount: poolState,
69
+ lamports: await this.getConnection().getMinimumBalanceForRentExemption(BigInt(size)).send(),
70
+ space: size,
71
+ programAddress: this._unstakingPoolProgramId,
72
+ });
73
+ const unstakingSolMint = (await unstakingPoolMintPda(poolState.address))[0];
74
+ const basePoolAuthority = (await unstakingPoolAuthorityPda(poolState.address))[0];
75
+ const wsolVault = await (0, lib_1.getAssociatedTokenAddress)(utils_1.WRAPPED_SOL_MINT, basePoolAuthority);
76
+ const initPoolAccounts = {
77
+ admin: poolConfig.admin,
78
+ poolState: poolState.address,
79
+ basePoolAuthority,
80
+ systemProgram: system_1.SYSTEM_PROGRAM_ADDRESS,
81
+ rent: sysvars_1.SYSVAR_RENT_ADDRESS,
82
+ tokenProgram: token_1.TOKEN_PROGRAM_ADDRESS,
83
+ unstakingSolMint,
84
+ wsolMint: utils_1.WRAPPED_SOL_MINT,
85
+ wsolVault,
86
+ };
87
+ const initPoolIx = (0, instructions_1.initializePool)(initPoolAccounts, this._unstakingPoolProgramId);
88
+ // create and set up the pool lookup table
89
+ const [createLUTIx, lut] = await (0, utils_1.createLookupTableIx)(this.getConnection(), poolConfig.admin);
90
+ const allAccountsToBeInserted = [
91
+ poolState.address,
92
+ basePoolAuthority,
93
+ wsolVault,
94
+ unstakingSolMint,
95
+ poolConfig.admin.address,
96
+ utils_1.WRAPPED_SOL_MINT,
97
+ this._unstakingPoolProgramId,
98
+ system_1.SYSTEM_PROGRAM_ADDRESS,
99
+ sysvars_1.SYSVAR_RENT_ADDRESS,
100
+ token_1.TOKEN_PROGRAM_ADDRESS,
101
+ token_2022_1.TOKEN_2022_PROGRAM_ADDRESS,
102
+ sysvars_1.SYSVAR_INSTRUCTIONS_ADDRESS,
103
+ sysvars_1.SYSVAR_CLOCK_ADDRESS,
104
+ exports.STAKE_PROGRAM_ID,
105
+ standardStakePool_1.STAKE_POOL_PROGRAM_ID,
106
+ ];
107
+ const insertIntoLUTIxs = (0, utils_1.extendLookupTableIxs)(poolConfig.admin, lut, allAccountsToBeInserted, poolConfig.admin);
108
+ const updateLUTIx = await this.updatePoolConfigIxs(poolState.address, poolConfig.admin, new types_1.PoolConfigField.LookupTable(), lut.toString());
109
+ const ixns = [createPoolIx, initPoolIx, createLUTIx, ...insertIntoLUTIxs, updateLUTIx];
110
+ if (poolConfig.actionAuthority) {
111
+ const updateActionAuthorityIx = await this.updatePoolConfigIxs(poolState.address, poolConfig.admin, new types_1.PoolConfigField.ActionAuthority(), poolConfig.actionAuthority.toString());
112
+ ixns.push(updateActionAuthorityIx);
113
+ }
114
+ return { pool: poolState, initPoolIxs: { initPoolIxs: ixns, populateLUTIxs: [] } };
115
+ }
116
+ /**
117
+ * Update pool configuration such as admin authority (or fees/minimum depositable in the future)
118
+ * @param poolState - the pool to update and set the LUT for if needed or only the pool pubkey if updating LUT is not needed
119
+ * @param admin - admin of the specified pool
120
+ * @param mode - what field to update for pool
121
+ * @param value - new value that is converted .toString()
122
+ * @returns a struct that contains a list of ix to update the pool config
123
+ */
124
+ async updatePoolConfigIxs(poolState, admin, mode, value) {
125
+ const updatePoolConfigAccounts = {
126
+ admin,
127
+ poolState: poolState instanceof UnstakingPool ? poolState.address : poolState,
128
+ };
129
+ const args = {
130
+ entry: mode,
131
+ data: Buffer.from([0]),
132
+ };
133
+ if (isNaN(+value)) {
134
+ const data = (0, kit_1.address)(value);
135
+ args.data = Buffer.from(addressEncoder.encode(data));
136
+ }
137
+ else {
138
+ const buffer = Buffer.alloc(8);
139
+ buffer.writeBigUInt64LE(BigInt(value.toString()));
140
+ args.data = buffer;
141
+ }
142
+ const updatePoolConfigIx = (0, instructions_1.updatePoolConfig)(args, updatePoolConfigAccounts, this._unstakingPoolProgramId);
143
+ return updatePoolConfigIx;
144
+ }
145
+ /**
146
+ * Collect a stake account SOL if the needed epoch was reached
147
+ * @param poolState - the pool to collect SOL into
148
+ * @param payer - payer for the operation (ix is permissionless)
149
+ * @param stakeAccount - stake account that was deactivated this epoch and has base pool authority as owner
150
+ * @returns collect instruction
151
+ */
152
+ async collectIx(poolState, payer, stakeAccount) {
153
+ const pool = await poolState.getState(this.getConnection());
154
+ const accounts = {
155
+ poolState: poolState.address,
156
+ payer,
157
+ stakeAccount,
158
+ basePoolAuthority: pool.basePoolAuthority,
159
+ wsolVault: pool.wsolVault,
160
+ wsolMint: utils_1.WRAPPED_SOL_MINT,
161
+ tokenProgram: token_1.TOKEN_PROGRAM_ADDRESS,
162
+ systemProgram: system_1.SYSTEM_PROGRAM_ADDRESS,
163
+ clockProgramId: sysvars_1.SYSVAR_CLOCK_ADDRESS,
164
+ stakeProgramId: exports.STAKE_PROGRAM_ID,
165
+ stakeHistoryProgramId: STAKE_HISTORY_PROGRAM_ID,
166
+ };
167
+ return (0, instructions_1.collect)(accounts, this._unstakingPoolProgramId);
168
+ }
169
+ /**
170
+ * Burn a number of shares (USOL) in exchange for SOL
171
+ * @param poolState - the pool to burn USOL from
172
+ * @param user - user that burns (ix is not gated by action authority)
173
+ * @param unstakeTicket - ticket where to burn the shares from
174
+ * @param sharesToBurn - number of shares that are equivalent 1:1 with SOL
175
+ * @returns burn instruction
176
+ */
177
+ async burnIx(poolState, user, unstakeTicket, sharesToBurn) {
178
+ const pool = await poolState.getState(this.getConnection());
179
+ const accounts = {
180
+ poolState: poolState.address,
181
+ basePoolAuthority: pool.basePoolAuthority,
182
+ wsolVault: pool.wsolVault,
183
+ wsolMint: utils_1.WRAPPED_SOL_MINT,
184
+ user,
185
+ userWsolToken: await (0, lib_1.getAssociatedTokenAddress)(utils_1.WRAPPED_SOL_MINT, user.address),
186
+ userUnstakingSolToken: await (0, lib_1.getAssociatedTokenAddress)(pool.unstakingSolMint, user.address),
187
+ unstakingSolMint: pool.unstakingSolMint,
188
+ tokenProgram: token_1.TOKEN_PROGRAM_ADDRESS,
189
+ unstakeTicket,
190
+ };
191
+ const args = {
192
+ sharesToBurn,
193
+ minWsolToReceive: sharesToBurn,
194
+ };
195
+ return (0, instructions_1.burn)(args, accounts, this._unstakingPoolProgramId);
196
+ }
197
+ /**
198
+ * Mints a number of unstaking sol (USOL) in exchange for staked SOL
199
+ * NOTE: this ix is permissioned by action authority
200
+ * @param poolState - the pool to mint USOL from
201
+ * @param user - user that mints
202
+ * @param actionAuthority - user that has authority to mint in that pool (== poolState.actionAuthority)
203
+ * @param unstakeTicket - empty keypair where unstake ticket will be stored
204
+ * @param stakedSolMint - staked sol mint
205
+ * @param stakedSolToDeposit - staked sol to convert to USOL (at the pool ratio)
206
+ * @param minSharesToReceive - parameter to control slippage
207
+ * @returns burn instruction
208
+ */
209
+ async mintIx(poolState, user, actionAuthority, unstakeTicket, stakedSolMint, stakedSolToDeposit, minSharesToReceive) {
210
+ const pool = await poolState.getState(this.getConnection());
211
+ // Create unstake ticket ix
212
+ const size = accounts_1.UnstakeTicket.layout.span + 8;
213
+ const createUnstakeTicketIx = (0, system_1.getCreateAccountInstruction)({
214
+ payer: user,
215
+ newAccount: unstakeTicket,
216
+ lamports: await this.getConnection().getMinimumBalanceForRentExemption(BigInt(size)).send(),
217
+ space: size,
218
+ programAddress: this._unstakingPoolProgramId,
219
+ });
220
+ // Actual mint ix
221
+ const [stakedSolPool, stakedSolPoolPk, stakePoolType] = await (0, stakePool_1.mapStakedSolMintToPool)(this.getConnection(), stakedSolMint);
222
+ const accounts = {
223
+ poolState: poolState.address,
224
+ basePoolAuthority: pool.basePoolAuthority,
225
+ systemProgram: system_1.SYSTEM_PROGRAM_ADDRESS,
226
+ unstakingSolMint: pool.unstakingSolMint,
227
+ unstakingSolTokenProgram: token_1.TOKEN_PROGRAM_ADDRESS,
228
+ user,
229
+ actionAuthority,
230
+ userStakedSolToken: await (0, lib_1.getAssociatedTokenAddress)(stakedSolMint, user.address),
231
+ userUnstakingSolToken: await (0, lib_1.getAssociatedTokenAddress)(pool.unstakingSolMint, user.address),
232
+ stakedSolMint,
233
+ stakedSolTokenProgram: (0, compat_1.fromLegacyPublicKey)(stakedSolPool.tokenProgramId),
234
+ unstakingTicketAuthority: user.address,
235
+ unstakeTicket: unstakeTicket.address,
236
+ };
237
+ const args = {
238
+ stakedSolToDeposit,
239
+ minSharesToReceive,
240
+ };
241
+ const ix = (0, instructions_1.mint)(args, accounts, this._unstakingPoolProgramId);
242
+ let remainingAccounts = [];
243
+ let remainingSigners = [];
244
+ switch (stakePoolType) {
245
+ case stakePool_1.StakePoolType.Standard:
246
+ [remainingAccounts, remainingSigners] = await (0, standardStakePool_1.getStandardPoolMintRemainingAccounts)(this.getConnection(), stakedSolPool, stakedSolPoolPk, stakedSolToDeposit);
247
+ }
248
+ const ixAccounts = ix.accounts || [];
249
+ const mintIx = {
250
+ programAddress: ix.programAddress,
251
+ accounts: ixAccounts.concat(remainingAccounts),
252
+ data: ix.data,
253
+ };
254
+ return { mintIxs: [createUnstakeTicketIx, mintIx], additionalSigners: remainingSigners };
255
+ }
256
+ /**
257
+ * Sync a pool for lookup table;
258
+ * @param pool the pool to sync the LUT for
259
+ * @param owner the pool lut owner
260
+ * @returns a struct that contains a list of ix to create the LUT and assign it to the pool if needed + a list of ixs to insert all the accounts in the LUT
261
+ */
262
+ async syncPoolLookupTable(pool, owner) {
263
+ const poolState = await pool.getState(this.getConnection());
264
+ if (poolState.poolLookupTable == utils_1.DEFAULT_PUBLIC_KEY) {
265
+ throw new Error(`Pool ${pool.address} has no lut set`);
266
+ }
267
+ const allAccountsToBeInserted = [
268
+ pool.address,
269
+ poolState.basePoolAuthority,
270
+ poolState.wsolVault,
271
+ poolState.unstakingSolMint,
272
+ poolState.actionAuthority,
273
+ poolState.admin,
274
+ this._unstakingPoolProgramId,
275
+ system_1.SYSTEM_PROGRAM_ADDRESS,
276
+ sysvars_1.SYSVAR_RENT_ADDRESS,
277
+ token_1.TOKEN_PROGRAM_ADDRESS,
278
+ token_2022_1.TOKEN_2022_PROGRAM_ADDRESS,
279
+ sysvars_1.SYSVAR_INSTRUCTIONS_ADDRESS,
280
+ sysvars_1.SYSVAR_CLOCK_ADDRESS,
281
+ exports.STAKE_PROGRAM_ID,
282
+ standardStakePool_1.STAKE_POOL_PROGRAM_ID,
283
+ ];
284
+ // Passing [] as accountsInLut will not fetch anything
285
+ const syncIxs = (0, utils_1.insertIntoLookupTableIxs)(this.getConnection(), owner, poolState.poolLookupTable, allAccountsToBeInserted, []);
286
+ return syncIxs;
287
+ }
288
+ /**
289
+ * Get all pools
290
+ * @returns an array of all pools
291
+ */
292
+ async getAllPools() {
293
+ const filters = [
294
+ {
295
+ dataSize: BigInt(accounts_1.PoolState.layout.span + 8),
296
+ },
297
+ {
298
+ memcmp: {
299
+ offset: 0n,
300
+ bytes: bs58_1.default.encode(accounts_1.PoolState.discriminator),
301
+ encoding: 'base58',
302
+ },
303
+ },
304
+ ];
305
+ const unstakingPools = await (0, rpc_1.getProgramAccounts)(this.getConnection(), this._unstakingPoolProgramId, accounts_1.PoolState.layout.span + 8, filters);
306
+ return unstakingPools.map((unstakingPool) => {
307
+ const unstakingPoolAccount = accounts_1.PoolState.decode(unstakingPool.data);
308
+ if (!unstakingPoolAccount) {
309
+ throw Error(`unstakingPool with pubkey ${unstakingPool.address.toString()} could not be decoded`);
310
+ }
311
+ return new UnstakingPool(unstakingPool.address, unstakingPoolAccount, this._unstakingPoolProgramId);
312
+ });
313
+ }
314
+ } // UnstakingPoolClient
315
+ exports.UnstakingPoolClient = UnstakingPoolClient;
316
+ class UnstakingPool {
317
+ address;
318
+ state;
319
+ programId;
320
+ constructor(poolAddress, state, programId = programId_1.PROGRAM_ID) {
321
+ this.address = poolAddress;
322
+ this.state = state;
323
+ this.programId = programId;
324
+ }
325
+ async getState(rpc) {
326
+ if (!this.state) {
327
+ this.state = await this.reloadState(rpc);
328
+ }
329
+ return this.state;
330
+ }
331
+ async reloadState(rpc) {
332
+ this.state = await accounts_1.PoolState.fetch(rpc, this.address, this.programId);
333
+ if (!this.state) {
334
+ throw new Error(`Could not fetch pool ${this.address.toString()}`);
335
+ }
336
+ return this.state;
337
+ }
338
+ async getStakeAccountsForPool(rpc) {
339
+ if (!this.state) {
340
+ throw new Error('Need to have pool state to fetch stake accounts');
341
+ }
342
+ // Filter only accounts that have withdraw authority the base pool authority
343
+ // and are delegating
344
+ const results = await (0, rpc_1.getProgramAccounts)(rpc, exports.STAKE_PROGRAM_ID, STAKE_ACCOUNT_SIZE, [
345
+ { memcmp: { offset: 0n, bytes: bs58_1.default.encode([2]), encoding: 'base58' } },
346
+ {
347
+ memcmp: {
348
+ offset: 44n,
349
+ bytes: this.state.basePoolAuthority.toString(),
350
+ encoding: 'base58',
351
+ },
352
+ },
353
+ ]);
354
+ return results.map((result) => {
355
+ return { stakeAccount: standardStakePool_1.StakeAccount.decode(result.data), pk: result.address, lamports: new bn_js_1.default(result.lamports) };
356
+ });
357
+ }
358
+ }
359
+ exports.UnstakingPool = UnstakingPool;
360
+ function unstakingPoolMintPda(pool, programId = programId_1.PROGRAM_ID) {
361
+ return (0, kit_1.getProgramDerivedAddress)({
362
+ seeds: [exports.UNSTAKING_SOL_MINT_SEED, addressEncoder.encode(pool)],
363
+ programAddress: programId,
364
+ });
365
+ }
366
+ function unstakingPoolAuthorityPda(pool, programId = programId_1.PROGRAM_ID) {
367
+ return (0, kit_1.getProgramDerivedAddress)({
368
+ seeds: [exports.BASE_POOL_AUTHORITY_SEED, addressEncoder.encode(pool)],
369
+ programAddress: programId,
370
+ });
371
+ }
372
+ //# sourceMappingURL=unstakingPool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"unstakingPool.js","sourceRoot":"","sources":["../../src/classes/unstakingPool.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import { Instruction, KeyPairSigner } from '@solana/kit';
2
+ export type InitPoolIxs = {
3
+ initPoolIxs: Instruction[];
4
+ populateLUTIxs: Instruction[];
5
+ };
6
+ export type MintIxs = {
7
+ mintIxs: Instruction[];
8
+ additionalSigners: KeyPairSigner[];
9
+ };
10
+ //# sourceMappingURL=unstakingPoolTypes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"unstakingPoolTypes.d.ts","sourceRoot":"","sources":["../../src/classes/unstakingPoolTypes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEzD,MAAM,MAAM,WAAW,GAAG;IACxB,WAAW,EAAE,WAAW,EAAE,CAAC;IAC3B,cAAc,EAAE,WAAW,EAAE,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG;IAEpB,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,iBAAiB,EAAE,aAAa,EAAE,CAAC;CACpC,CAAC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=unstakingPoolTypes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"unstakingPoolTypes.js","sourceRoot":"","sources":["../../src/classes/unstakingPoolTypes.ts"],"names":[],"mappings":""}
@@ -219,15 +219,6 @@ export declare class KaminoVaultClient {
219
219
  */
220
220
  syncVaultLookupTableIxs(authority: TransactionSigner, vault: KaminoVault, vaultReservesMap?: Map<Address, KaminoReserve>): Promise<SyncVaultLUTIxs>;
221
221
  private getReserveAccountsToInsertInLut;
222
- /**
223
- * This method inserts the missing keys from the provided keys into an existent lookup table
224
- * @param authority - payer wallet pubkey
225
- * @param lookupTable - lookup table to insert the keys into
226
- * @param keys - keys to insert into the lookup table
227
- * @param [accountsInLut] - the existent accounts in the lookup table. Optional. If provided, the function will not fetch the accounts in the lookup table
228
- * @returns - an array of instructions to insert the missing keys into the lookup table
229
- */
230
- insertIntoLookupTableIxs(authority: TransactionSigner, lookupTable: Address, keys: Address[], accountsInLut?: Address[]): Promise<Instruction[]>;
231
222
  /** Read the total holdings of a vault and the reserve weights and returns a map from each reserve to how many tokens should be deposited.
232
223
  * @param vaultState - the vault state to calculate the allocation for
233
224
  * @param [slot] - the slot for which to calculate the allocation. Optional. If not provided the function will fetch the current slot