@huma-finance/permissionless-sdk 1.0.8-beta.20250915130422.cd6a470 → 1.0.9-beta.20250915162449.37b0c6c

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/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Huma Permissionless SDK
2
2
 
3
- This is an [NPM Package](https://www.npmjs.com/package/@huma-finance/permissionless-sdk) that helps build deposit and withdrawal instructions for the various modes + lockups on Huma 2.0 (Permissionless), and check token prices, target APY, and locked balances.
3
+ This is an [NPM Package](https://www.npmjs.com/package/@huma-finance/permissionless-sdk) that helps build deposit and withdrawal instructions for the various modes + lockups on Huma 2.0 (Permissionless), and check token prices, target APY, and balances.
4
4
 
5
5
  ## Current supported features
6
6
 
@@ -8,7 +8,7 @@ This is an [NPM Package](https://www.npmjs.com/package/@huma-finance/permissionl
8
8
  - Withdraw from classic or maxi mode (redeem PST and mPST tokens)
9
9
  - Check the current price of PST and mPST tokens
10
10
  - Check the target APY for classic or maxi mode
11
- - Check the locked balance for a specific owner and mode
11
+ - Check both locked and unlocked balances for a specific owner and mode
12
12
  - Optionally specify a lockup on these tokens, in most cases you'll want to use the default NO_COMMIT option.
13
13
 
14
14
  ## Depositing
@@ -129,9 +129,9 @@ console.log(apy); // APY in basis points (e.g., 500 = 5.00%)
129
129
 
130
130
  3. The APY is returned as a number representing the target APY in basis points. For example, if the target APY is 5.00%, it will be returned as 500.
131
131
 
132
- ## Checking Locked Balance
132
+ ## Checking Balances
133
133
 
134
- An example Node script integration in /examples/getLockedBalance.ts is provided in this repo.
134
+ An example Node script integration in /examples/getBalance.ts is provided in this repo.
135
135
 
136
136
  1. Create a `PermissionlessClient` (same as depositing)
137
137
 
@@ -144,25 +144,21 @@ import {
144
144
  new PermissionlessClient(connection, SolanaChainEnum.MAINNET);
145
145
  ```
146
146
 
147
- 2. Get the unlocked/locked balance for a specific owner and mode
147
+ 2. Get both unlocked and locked balances for a specific owner and mode
148
148
 
149
149
  ```
150
150
  import {
151
151
  DepositMode
152
152
  } from "@huma-finance/permissionless-sdk";
153
153
 
154
- const unlockedBalance = await client.getUnlockedBalance(
155
- publicKey,
156
- DepositMode.CLASSIC
157
- )
158
- const lockedBalance = await client.getLockedBalance(
154
+ const balances = await client.getBalances(
159
155
  publicKey,
160
156
  DepositMode.CLASSIC
161
157
  );
162
- console.log(unlockedBalance.toString()); // Unlocked balance in smallest units
163
- console.log(lockedBalance.toString()); // Locked balance in smallest units
158
+ console.log(balances.lockedBalance.toString()); // Locked balance in smallest units
159
+ console.log(balances.unlockedBalance.toString()); // Unlocked balance in smallest units
164
160
  ```
165
161
 
166
- 3. The balance is returned as a BN representing the amount of tokens locked in the smallest units of the underlying mint. For example, if the locked balance is 1.5 PST, it will be returned as 1500000 (since PST has 6 decimals).
162
+ 3. The balances are returned as BNs representing the amount of tokens in the smallest units of the underlying mint. For example, if the locked balance is 1.5 PST, it will be returned as 1500000 (since PST has 6 decimals). The unlocked balance is calculated as the total token balance minus the locked balance, and will return 0 if the result would be negative.
167
163
 
168
164
  **Note:** This endpoint is subject to rate limitations. You should only fetch when necessary.
@@ -11,13 +11,16 @@ export declare class PermissionlessClient {
11
11
  constructor(connection: Connection, chain: SolanaChainEnum);
12
12
  getModeTokenATA(owner: PublicKey, mode: DepositMode): PublicKey;
13
13
  getModeTargetApy(mode: DepositMode): Promise<number>;
14
- getUnlockedBalance(owner: PublicKey, mode: DepositMode): Promise<BN>;
15
- getLockedBalance(owner: PublicKey, mode: DepositMode): Promise<BN>;
14
+ getBalances(owner: PublicKey, mode: DepositMode): Promise<{
15
+ unlockedBalance: BN;
16
+ lockedBalance: BN;
17
+ }>;
16
18
  buildDepositTx(owner: PublicKey, amount: BN, mode: DepositMode, commitment?: DepositCommitment): Promise<Transaction>;
17
19
  buildWithdrawTx(owner: PublicKey, amount: BN, mode: DepositMode): Promise<Transaction>;
18
20
  getModeTokenPrice(mode: DepositMode): Promise<BN>;
19
21
  private getCreateLenderStateAccountInstruction;
20
22
  private getStagingPrefix;
23
+ private getLockedBalance;
21
24
  private getPointsEndpoint;
22
25
  }
23
26
  //# sourceMappingURL=client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/permissionless/client.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,SAAS,EACT,WAAW,EAEZ,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,eAAe,EAAwB,MAAM,gBAAgB,CAAC;AACvE,OAAO,EAAE,WAAW,EAAkB,MAAM,mBAAmB,CAAC;AAShE,OAAO,EAAE,EAAE,EAAwB,MAAM,mBAAmB,CAAC;AAG7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAGrD,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,KAAK,CAAkB;IAC/B,OAAO,CAAC,QAAQ,CAAiB;IACjC,OAAO,CAAC,OAAO,CAA0B;gBAE7B,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,eAAe;IAQ1D,eAAe,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,GAAG,SAAS;IAMzD,gBAAgB,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;IAepD,kBAAkB,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,EAAE,CAAC;IAiBpE,gBAAgB,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,EAAE,CAAC;IAyBlE,cAAc,CAClB,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,EAAE,EACV,IAAI,EAAE,WAAW,EACjB,UAAU,GAAE,iBAA+C,GAC1D,OAAO,CAAC,WAAW,CAAC;IAuDjB,eAAe,CACnB,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,EAAE,EACV,IAAI,EAAE,WAAW,GAChB,OAAO,CAAC,WAAW,CAAC;IAwCjB,iBAAiB,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,EAAE,CAAC;YAkCzC,sCAAsC;IAsCpD,OAAO,CAAC,gBAAgB;IAaxB,OAAO,CAAC,iBAAiB;CAK1B"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/permissionless/client.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,SAAS,EACT,WAAW,EAEZ,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,eAAe,EAAwB,MAAM,gBAAgB,CAAC;AACvE,OAAO,EAAE,WAAW,EAAkB,MAAM,mBAAmB,CAAC;AAShE,OAAO,EAAE,EAAE,EAAwB,MAAM,mBAAmB,CAAC;AAG7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAGrD,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,KAAK,CAAkB;IAC/B,OAAO,CAAC,QAAQ,CAAiB;IACjC,OAAO,CAAC,OAAO,CAA0B;gBAE7B,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,eAAe;IAQ1D,eAAe,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,GAAG,SAAS;IAMzD,gBAAgB,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;IAcpD,WAAW,CACf,KAAK,EAAE,SAAS,EAChB,IAAI,EAAE,WAAW,GAChB,OAAO,CAAC;QACT,eAAe,EAAE,EAAE,CAAC;QACpB,aAAa,EAAE,EAAE,CAAC;KACnB,CAAC;IAoBI,cAAc,CAClB,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,EAAE,EACV,IAAI,EAAE,WAAW,EACjB,UAAU,GAAE,iBAA+C,GAC1D,OAAO,CAAC,WAAW,CAAC;IAuDjB,eAAe,CACnB,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,EAAE,EACV,IAAI,EAAE,WAAW,GAChB,OAAO,CAAC,WAAW,CAAC;IAwCjB,iBAAiB,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,EAAE,CAAC;YAkCzC,sCAAsC;IAsCpD,OAAO,CAAC,gBAAgB;YAaV,gBAAgB;IAuB9B,OAAO,CAAC,iBAAiB;CAK1B"}
@@ -34,37 +34,21 @@ class PermissionlessClient {
34
34
  const modeConfig = await this.program.account.modeConfig.fetch(new web3_js_1.PublicKey(modeMetadata.config));
35
35
  return modeConfig.targetApyBps;
36
36
  }
37
- // Fetches the unlocked balance of the given mode in the owner's wallet.
38
- // This is the balance of the owner's wallet minus the locked balance.
37
+ // Fetches the unlocked and locked balance of the given mode in the owner's wallet.
39
38
  // Notes:
40
39
  // - If the mode token account is not found, this function will throw an error.
41
40
  // - In rare cases, our API might be delayed and the unlocked balance might temporarily
42
- // be less than 0. In these cases, we will return 0.
41
+ // be less than 0. In these cases, we will return an unlocked balance of 0.
43
42
  // - This endpoint is subject to rate limitations. You should only fetch when necessary.
44
- async getUnlockedBalance(owner, mode) {
43
+ async getBalances(owner, mode) {
45
44
  const lockedBalance = await this.getLockedBalance(owner, mode);
46
45
  const modeMetadata = this.metadata[mode];
47
46
  const modeBalance = await this.connection.getTokenAccountBalance((0, tokenAccount_1.getModeTokenATA)(owner, new web3_js_1.PublicKey(modeMetadata.mint)));
48
- const unlockedBalance = new anchor_1.BN(modeBalance.value.amount).sub(lockedBalance);
47
+ let unlockedBalance = new anchor_1.BN(modeBalance.value.amount).sub(lockedBalance);
49
48
  if (unlockedBalance.isNeg()) {
50
- return new anchor_1.BN(0);
49
+ unlockedBalance = new anchor_1.BN(0);
51
50
  }
52
- return unlockedBalance;
53
- }
54
- // Fetches the locked balance of the given mode in the owner's wallet.
55
- // Notes:
56
- // - This endpoint is subject to rate limitations. You should only fetch when necessary.
57
- async getLockedBalance(owner, mode) {
58
- const modeMetadata = this.metadata[mode];
59
- const endpoint = this.getPointsEndpoint();
60
- const response = await fetch(`${endpoint}/investment/locked_balance?owner=${owner.toString()}&mode_config=${modeMetadata.config}&chain_id=${chain_1.SolanaChainEnumToIds[this.chain]}`, {
61
- method: "GET",
62
- headers: {
63
- "Content-Type": "application/json",
64
- },
65
- });
66
- const data = (await response.json());
67
- return new anchor_1.BN(data.data ?? 0);
51
+ return { unlockedBalance, lockedBalance };
68
52
  }
69
53
  // Returns a transaction with all the necessary instructions to deposit into
70
54
  // Huma 2.0 for the given mode. Note that this transaction omits priority fees,
@@ -200,6 +184,18 @@ class PermissionlessClient {
200
184
  throw new Error(`Invalid chain: ${this.chain}`);
201
185
  }
202
186
  }
187
+ async getLockedBalance(owner, mode) {
188
+ const modeMetadata = this.metadata[mode];
189
+ const endpoint = this.getPointsEndpoint();
190
+ const response = await fetch(`${endpoint}/investment/locked_balance?owner=${owner.toString()}&mode_config=${modeMetadata.config}&chain_id=${chain_1.SolanaChainEnumToIds[this.chain]}`, {
191
+ method: "GET",
192
+ headers: {
193
+ "Content-Type": "application/json",
194
+ },
195
+ });
196
+ const data = (await response.json());
197
+ return new anchor_1.BN(data.data ?? 0);
198
+ }
203
199
  getPointsEndpoint() {
204
200
  return `https://${this.getStagingPrefix()}${this.chain === chain_1.SolanaChainEnum.DEVNET ? "testnet" : "mainnet"}.permissionless-points.huma.finance`;
205
201
  }
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/permissionless/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/permissionless/client.ts"],"names":[],"mappings":"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"}
@@ -13,21 +13,11 @@ async function main() {
13
13
  new Uint8Array(JSON.parse(process.env.PRIVATE_KEY!))
14
14
  );
15
15
 
16
- console.log("Getting locked balance for", key.publicKey.toString());
17
- const data = await client.getLockedBalance(
18
- key.publicKey,
19
- DepositMode.CLASSIC
20
- );
21
-
22
- console.log(data.toString());
23
-
24
- console.log("Getting unlocked balance for", key.publicKey.toString());
25
- const unlockedData = await client.getUnlockedBalance(
26
- key.publicKey,
27
- DepositMode.CLASSIC
28
- );
16
+ console.log("Getting balances for", key.publicKey.toString());
17
+ const balances = await client.getBalances(key.publicKey, DepositMode.CLASSIC);
29
18
 
30
- console.log(unlockedData.toString());
19
+ console.log("Locked balance:", balances.lockedBalance.toString());
20
+ console.log("Unlocked balance:", balances.unlockedBalance.toString());
31
21
  }
32
22
 
33
23
  main();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@huma-finance/permissionless-sdk",
3
- "version": "1.0.8-beta.20250915130422.cd6a470",
3
+ "version": "1.0.9-beta.20250915162449.37b0c6c",
4
4
  "description": "Huma Finance Permissionless SDK for Solana",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",