@liquid-af/sdk 0.10.3 → 0.10.5

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/client.d.ts CHANGED
@@ -4,6 +4,7 @@ import { type LiquidConfig } from "./config.js";
4
4
  import type { BuyCurvePreview, SellCurvePreview, SwapPreview, FeeRecipient } from "./types.js";
5
5
  import { type BuildTransactionOptions } from "./transaction/builder.js";
6
6
  import { type RecipientVaultPair } from "./instructions/liquid-fees.js";
7
+ import { getCashbackBreakdown as getCashbackBreakdownFn, type CashbackBreakdown } from "./math/cashback.js";
7
8
  import { type CurveAsyncOptions, type SwapPrefetchedState } from "./helpers/preview.js";
8
9
  export interface LiquidClientConfig {
9
10
  connection: Connection;
@@ -622,6 +623,13 @@ export declare class LiquidClient {
622
623
  traderCashbackBasisPoints: number;
623
624
  pendingAdmin: PublicKey | null;
624
625
  }>;
626
+ /**
627
+ * Breaks down a cashback balance into base earnings vs multiplier bonus.
628
+ * Pure computation — use cached ranges to avoid RPC calls.
629
+ */
630
+ getCashbackBreakdown(...args: Parameters<typeof getCashbackBreakdownFn>): CashbackBreakdown;
631
+ /** Fetches user state and config from chain, then computes cashback breakdown. */
632
+ fetchCashbackBreakdown(user: PublicKey): Promise<CashbackBreakdown>;
625
633
  /** Fetches a user snapshot by user and index. */
626
634
  fetchUserSnapshot(user: PublicKey, index: number): Promise<{
627
635
  user: PublicKey;
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/client.js CHANGED
@@ -10,6 +10,8 @@ import { fetchLiquidGlobalConfig as fetchLiquidGlobalConfigFn, fetchNativeBondin
10
10
  import { fetchAmmConfig as fetchAmmConfigFn, fetchPoolState as fetchPoolStateFn, fetchPoolStateByAddress as fetchPoolStateByAddressFn, fetchObservationState as fetchObservationStateFn, } from "./accounts/liquid-swap.js";
11
11
  import { fetchFeeConfig as fetchFeeConfigFn, fetchFeeConfigByAddress as fetchFeeConfigByAddressFn, } from "./accounts/liquid-fees.js";
12
12
  import { fetchUserProperties as fetchUserPropertiesFn, fetchTokenVolume as fetchTokenVolumeFn, fetchGlobalCurveVolume as fetchGlobalCurveVolumeFn, fetchGlobalAmmVolume as fetchGlobalAmmVolumeFn, fetchCashbackConfig as fetchCashbackConfigFn, fetchUserSnapshot as fetchUserSnapshotFn, fetchDeal as fetchDealFn, } from "./accounts/liquid-state.js";
13
+ import { fetchCashbackBreakdown as fetchCashbackBreakdownFn } from "./helpers/cashback.js";
14
+ import { getCashbackBreakdown as getCashbackBreakdownFn, } from "./math/cashback.js";
13
15
  // Preview helpers
14
16
  import { previewBuyOnCurve as previewBuyOnCurveFn, previewSellOnCurve as previewSellOnCurveFn, previewSwapSell as previewSwapSellFn, previewSwapBuy as previewSwapBuyFn, } from "./helpers/preview.js";
15
17
  // PDA helpers
@@ -408,6 +410,17 @@ export class LiquidClient {
408
410
  fetchCashbackConfig() {
409
411
  return fetchCashbackConfigFn(this.connection, this.config);
410
412
  }
413
+ /**
414
+ * Breaks down a cashback balance into base earnings vs multiplier bonus.
415
+ * Pure computation — use cached ranges to avoid RPC calls.
416
+ */
417
+ getCashbackBreakdown(...args) {
418
+ return getCashbackBreakdownFn(...args);
419
+ }
420
+ /** Fetches user state and config from chain, then computes cashback breakdown. */
421
+ fetchCashbackBreakdown(user) {
422
+ return fetchCashbackBreakdownFn(this.connection, user, this.config);
423
+ }
411
424
  /** Fetches a user snapshot by user and index. */
412
425
  fetchUserSnapshot(user, index) {
413
426
  return fetchUserSnapshotFn(this.connection, user, index, this.config);
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import type { Connection, PublicKey } from "@solana/web3.js";
2
+ import type { LiquidConfig } from "../config.js";
3
+ import type { CashbackBreakdown } from "../math/cashback.js";
4
+ /**
5
+ * Fetches a user's cashback balance and config from chain, then computes
6
+ * the breakdown of base earnings vs multiplier bonus.
7
+ *
8
+ * @param connection - Solana RPC connection
9
+ * @param user - User's public key
10
+ * @param config - Liquid protocol configuration
11
+ * @returns Breakdown of the user's cashback balance
12
+ */
13
+ export declare function fetchCashbackBreakdown(connection: Connection, user: PublicKey, config: LiquidConfig): Promise<CashbackBreakdown>;
14
+ //# sourceMappingURL=cashback.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cashback.d.ts","sourceRoot":"","sources":["../../src/helpers/cashback.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAK7D;;;;;;;;GAQG;AACH,wBAAsB,sBAAsB,CAC3C,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,EACf,MAAM,EAAE,YAAY,GAClB,OAAO,CAAC,iBAAiB,CAAC,CAO5B"}
@@ -0,0 +1,20 @@
1
+ import { getCashbackBreakdown } from "../math/cashback.js";
2
+ import { fetchUserProperties } from "../accounts/liquid-state.js";
3
+ import { fetchCashbackConfig } from "../accounts/liquid-state.js";
4
+ /**
5
+ * Fetches a user's cashback balance and config from chain, then computes
6
+ * the breakdown of base earnings vs multiplier bonus.
7
+ *
8
+ * @param connection - Solana RPC connection
9
+ * @param user - User's public key
10
+ * @param config - Liquid protocol configuration
11
+ * @returns Breakdown of the user's cashback balance
12
+ */
13
+ export async function fetchCashbackBreakdown(connection, user, config) {
14
+ const [userProps, cashbackConfig] = await Promise.all([
15
+ fetchUserProperties(connection, user, config),
16
+ fetchCashbackConfig(connection, config),
17
+ ]);
18
+ return getCashbackBreakdown(userProps.cashbackCredits, cashbackConfig.ranges);
19
+ }
20
+ //# sourceMappingURL=cashback.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cashback.js","sourceRoot":"","sources":["../../src/helpers/cashback.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAElE;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC3C,UAAsB,EACtB,IAAe,EACf,MAAoB;IAEpB,MAAM,CAAC,SAAS,EAAE,cAAc,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACrD,mBAAmB,CAAC,UAAU,EAAE,IAAI,EAAE,MAAM,CAAC;QAC7C,mBAAmB,CAAC,UAAU,EAAE,MAAM,CAAC;KACvC,CAAC,CAAC;IAEH,OAAO,oBAAoB,CAAC,SAAS,CAAC,eAAe,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;AAC/E,CAAC"}
@@ -2,4 +2,5 @@ export { previewBuyOnCurve, previewSellOnCurve, previewSwapSell, previewSwapBuy,
2
2
  export type { CurvePreviewState, SwapPreviewState, CurvePreviewOptions, CurvePrefetchedState, NativeCurveOptions, StableCurveOptions, CurveAsyncOptions, SwapPrefetchedState, } from "./preview.js";
3
3
  export { resolveTokenProgram } from "./user.js";
4
4
  export { buildEnsureAtaInstruction } from "./ata.js";
5
+ export { fetchCashbackBreakdown } from "./cashback.js";
5
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/helpers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,wBAAwB,EACxB,yBAAyB,EACzB,wBAAwB,EACxB,uBAAuB,GACvB,MAAM,cAAc,CAAC;AAEtB,YAAY,EACX,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,EACnB,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,GACnB,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,yBAAyB,EAAE,MAAM,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/helpers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,wBAAwB,EACxB,yBAAyB,EACzB,wBAAwB,EACxB,uBAAuB,GACvB,MAAM,cAAc,CAAC;AAEtB,YAAY,EACX,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,EACnB,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,GACnB,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,yBAAyB,EAAE,MAAM,UAAU,CAAC;AACrD,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC"}
@@ -1,4 +1,5 @@
1
1
  export { previewBuyOnCurve, previewSellOnCurve, previewSwapSell, previewSwapBuy, calculateBuyCurvePreview, calculateSellCurvePreview, calculateSwapSellPreview, calculateSwapBuyPreview, } from "./preview.js";
2
2
  export { resolveTokenProgram } from "./user.js";
3
3
  export { buildEnsureAtaInstruction } from "./ata.js";
4
+ export { fetchCashbackBreakdown } from "./cashback.js";
4
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/helpers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,wBAAwB,EACxB,yBAAyB,EACzB,wBAAwB,EACxB,uBAAuB,GACvB,MAAM,cAAc,CAAC;AAatB,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,yBAAyB,EAAE,MAAM,UAAU,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/helpers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,wBAAwB,EACxB,yBAAyB,EACzB,wBAAwB,EACxB,uBAAuB,GACvB,MAAM,cAAc,CAAC;AAatB,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,yBAAyB,EAAE,MAAM,UAAU,CAAC;AACrD,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC"}
package/dist/index.d.ts CHANGED
@@ -4,7 +4,7 @@ export { ReadonlyWallet, createReadonlyProvider, createStubProvider, } from "./p
4
4
  export { LiquidError, LiquidErrorCode } from "./errors.js";
5
5
  export type { LiquidConfig } from "./config.js";
6
6
  export { MAINNET_CONFIG, DEVNET_CONFIG, LOCALNET_CONFIG, WSOL_MINT, BPS_DENOMINATOR, NUM_FEE_RECIPIENTS, MAX_FEE_RECIPIENTS_FEES, MAX_QUOTE_MINTS, MAX_CASHBACK_RANGES, MIN_MULTIPLIER_BPS, MAX_MULTIPLIER_BPS, MIN_VAULT_BALANCE, LIMITS, } from "./config.js";
7
- export type { GlobalConfiguration, BondingCurveState, AmmConfig, FeeTier, PoolState, Observation, ObservationState, UnifiedFeeConfiguration, UserProperties, ReferrerInfo, UserSnapshot, Deal, AdminUpdateUserArgs, TokenVolumeAccumulator, GlobalCurveVolume, GlobalAmmVolume, CashbackRange, CashbackConfiguration, FeeDistribution, BondingCurveBuyResult, BondingCurveSellResult, SwapFees, AmmSellOutput, AmmBuyInput, LpTokenAmounts, DistributionResult, PoolInfo, BuyCurvePreview, SellCurvePreview, SwapPreview, FeeRecipient, FeeModeAnchor, CurveStatusAnchor, } from "./types.js";
7
+ export type { GlobalConfiguration, BondingCurveState, AmmConfig, FeeTier, PoolState, Observation, ObservationState, UnifiedFeeConfiguration, UserProperties, ReferrerInfo, UserSnapshot, Deal, AdminUpdateUserArgs, TokenVolumeAccumulator, GlobalCurveVolume, GlobalAmmVolume, CashbackRange, CashbackConfiguration, CashbackBreakdown, TierBreakdown, FeeDistribution, BondingCurveBuyResult, BondingCurveSellResult, SwapFees, AmmSellOutput, AmmBuyInput, LpTokenAmounts, DistributionResult, PoolInfo, BuyCurvePreview, SellCurvePreview, SwapPreview, FeeRecipient, FeeModeAnchor, CurveStatusAnchor, } from "./types.js";
8
8
  export { FeeMode, toAnchorFeeMode, feeModeEquals, CurveStatus, curveStatusEquals, } from "./types.js";
9
9
  export * from "./pda/index.js";
10
10
  export * from "./math/index.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,YAAY,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEtD,OAAO,EACN,cAAc,EACd,sBAAsB,EACtB,kBAAkB,GAClB,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE3D,YAAY,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EACN,cAAc,EACd,aAAa,EACb,eAAe,EACf,SAAS,EACT,eAAe,EACf,kBAAkB,EAClB,uBAAuB,EACvB,eAAe,EACf,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,MAAM,GACN,MAAM,aAAa,CAAC;AAErB,YAAY,EACX,mBAAmB,EACnB,iBAAiB,EACjB,SAAS,EACT,OAAO,EACP,SAAS,EACT,WAAW,EACX,gBAAgB,EAChB,uBAAuB,EACvB,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,IAAI,EACJ,mBAAmB,EACnB,sBAAsB,EACtB,iBAAiB,EACjB,eAAe,EACf,aAAa,EACb,qBAAqB,EACrB,eAAe,EACf,qBAAqB,EACrB,sBAAsB,EACtB,QAAQ,EACR,aAAa,EACb,WAAW,EACX,cAAc,EACd,kBAAkB,EAClB,QAAQ,EACR,eAAe,EACf,gBAAgB,EAChB,WAAW,EACX,YAAY,EACZ,aAAa,EACb,iBAAiB,GACjB,MAAM,YAAY,CAAC;AACpB,OAAO,EACN,OAAO,EACP,eAAe,EACf,aAAa,EACb,WAAW,EACX,iBAAiB,GACjB,MAAM,YAAY,CAAC;AAEpB,cAAc,gBAAgB,CAAC;AAE/B,cAAc,iBAAiB,CAAC;AAEhC,cAAc,qBAAqB,CAAC;AAEpC,cAAc,yBAAyB,CAAC;AAExC,cAAc,oBAAoB,CAAC;AAEnC,cAAc,mBAAmB,CAAC;AAElC,cAAc,wBAAwB,CAAC;AAEvC,cAAc,aAAa,CAAC;AAE5B,cAAc,UAAU,CAAC;AAEzB,YAAY,EACX,MAAM,EACN,UAAU,EACV,UAAU,EACV,WAAW,EACX,YAAY,GACZ,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACN,gBAAgB,EAChB,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EACrB,sBAAsB,EACtB,SAAS,EACT,aAAa,EACb,aAAa,EACb,cAAc,EACd,eAAe,EACf,QAAQ,GACR,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,YAAY,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEtD,OAAO,EACN,cAAc,EACd,sBAAsB,EACtB,kBAAkB,GAClB,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE3D,YAAY,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EACN,cAAc,EACd,aAAa,EACb,eAAe,EACf,SAAS,EACT,eAAe,EACf,kBAAkB,EAClB,uBAAuB,EACvB,eAAe,EACf,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,MAAM,GACN,MAAM,aAAa,CAAC;AAErB,YAAY,EACX,mBAAmB,EACnB,iBAAiB,EACjB,SAAS,EACT,OAAO,EACP,SAAS,EACT,WAAW,EACX,gBAAgB,EAChB,uBAAuB,EACvB,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,IAAI,EACJ,mBAAmB,EACnB,sBAAsB,EACtB,iBAAiB,EACjB,eAAe,EACf,aAAa,EACb,qBAAqB,EACrB,iBAAiB,EACjB,aAAa,EACb,eAAe,EACf,qBAAqB,EACrB,sBAAsB,EACtB,QAAQ,EACR,aAAa,EACb,WAAW,EACX,cAAc,EACd,kBAAkB,EAClB,QAAQ,EACR,eAAe,EACf,gBAAgB,EAChB,WAAW,EACX,YAAY,EACZ,aAAa,EACb,iBAAiB,GACjB,MAAM,YAAY,CAAC;AACpB,OAAO,EACN,OAAO,EACP,eAAe,EACf,aAAa,EACb,WAAW,EACX,iBAAiB,GACjB,MAAM,YAAY,CAAC;AAEpB,cAAc,gBAAgB,CAAC;AAE/B,cAAc,iBAAiB,CAAC;AAEhC,cAAc,qBAAqB,CAAC;AAEpC,cAAc,yBAAyB,CAAC;AAExC,cAAc,oBAAoB,CAAC;AAEnC,cAAc,mBAAmB,CAAC;AAElC,cAAc,wBAAwB,CAAC;AAEvC,cAAc,aAAa,CAAC;AAE5B,cAAc,UAAU,CAAC;AAEzB,YAAY,EACX,MAAM,EACN,UAAU,EACV,UAAU,EACV,WAAW,EACX,YAAY,GACZ,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACN,gBAAgB,EAChB,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EACrB,sBAAsB,EACtB,SAAS,EACT,aAAa,EACb,aAAa,EACb,cAAc,EACd,eAAe,EACf,QAAQ,GACR,MAAM,gBAAgB,CAAC"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG3C,OAAO,EACN,cAAc,EACd,sBAAsB,EACtB,kBAAkB,GAClB,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAG3D,OAAO,EACN,cAAc,EACd,aAAa,EACb,eAAe,EACf,SAAS,EACT,eAAe,EACf,kBAAkB,EAClB,uBAAuB,EACvB,eAAe,EACf,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,MAAM,GACN,MAAM,aAAa,CAAC;AAqCrB,OAAO,EACN,OAAO,EACP,eAAe,EACf,aAAa,EACb,WAAW,EACX,iBAAiB,GACjB,MAAM,YAAY,CAAC;AAEpB,cAAc,gBAAgB,CAAC;AAE/B,cAAc,iBAAiB,CAAC;AAEhC,cAAc,qBAAqB,CAAC;AAEpC,cAAc,yBAAyB,CAAC;AAExC,cAAc,oBAAoB,CAAC;AAEnC,cAAc,mBAAmB,CAAC;AAElC,cAAc,wBAAwB,CAAC;AAEvC,cAAc,aAAa,CAAC;AAE5B,cAAc,UAAU,CAAC;AASzB,OAAO,EACN,gBAAgB,EAChB,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EACrB,sBAAsB,EACtB,SAAS,EACT,aAAa,EACb,aAAa,EACb,cAAc,EACd,eAAe,EACf,QAAQ,GACR,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG3C,OAAO,EACN,cAAc,EACd,sBAAsB,EACtB,kBAAkB,GAClB,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAG3D,OAAO,EACN,cAAc,EACd,aAAa,EACb,eAAe,EACf,SAAS,EACT,eAAe,EACf,kBAAkB,EAClB,uBAAuB,EACvB,eAAe,EACf,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,MAAM,GACN,MAAM,aAAa,CAAC;AAuCrB,OAAO,EACN,OAAO,EACP,eAAe,EACf,aAAa,EACb,WAAW,EACX,iBAAiB,GACjB,MAAM,YAAY,CAAC;AAEpB,cAAc,gBAAgB,CAAC;AAE/B,cAAc,iBAAiB,CAAC;AAEhC,cAAc,qBAAqB,CAAC;AAEpC,cAAc,yBAAyB,CAAC;AAExC,cAAc,oBAAoB,CAAC;AAEnC,cAAc,mBAAmB,CAAC;AAElC,cAAc,wBAAwB,CAAC;AAEvC,cAAc,aAAa,CAAC;AAE5B,cAAc,UAAU,CAAC;AASzB,OAAO,EACN,gBAAgB,EAChB,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EACrB,sBAAsB,EACtB,SAAS,EACT,aAAa,EACb,aAAa,EACb,cAAc,EACd,eAAe,EACf,QAAQ,GACR,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,41 @@
1
+ import BN from "bn.js";
2
+ import type { CashbackRange } from "../types.js";
3
+ /** Per-tier breakdown of cashback earnings */
4
+ export interface TierBreakdown {
5
+ /** Index of this range in the config's ranges array */
6
+ rangeIndex: number;
7
+ /** Multiplier in basis points (10000 = 1x) */
8
+ multiplierBps: number;
9
+ /** Amount of cashback_credits attributed to this tier (post-multiplier) */
10
+ postMultiplierAmount: BN;
11
+ /** The base (1x-equivalent) earning that produced this tier's contribution */
12
+ baseAmount: BN;
13
+ /** Bonus from multiplier: postMultiplierAmount - baseAmount */
14
+ bonusAmount: BN;
15
+ }
16
+ /** Breakdown of a user's cashback balance into base earnings vs multiplier bonus */
17
+ export interface CashbackBreakdown {
18
+ /** The user's total cashback_credits balance */
19
+ totalBalance: BN;
20
+ /** What the user would have earned at 1x multiplier across all tiers */
21
+ baseEarnings: BN;
22
+ /** Total bonus from multipliers: totalBalance - baseEarnings */
23
+ multiplierBonus: BN;
24
+ /** Per-tier breakdown (only tiers with non-zero contribution) */
25
+ tiers: TierBreakdown[];
26
+ }
27
+ /**
28
+ * Reverses the on-chain progressive multiplier to break down a cashback balance
29
+ * into base earnings vs multiplier bonus.
30
+ *
31
+ * The on-chain `apply_balance_multiplier` advances through ranges by pre-multiplier
32
+ * portions, so each tier of width W with multiplier M contributes W * M / 10000 to
33
+ * the stored balance. This function walks the same ranges in reverse to decompose
34
+ * the final balance.
35
+ *
36
+ * @param cashbackCredits - The user's current cashback_credits (post-multiplier balance)
37
+ * @param ranges - Balance-based multiplier ranges from CashbackConfiguration
38
+ * @returns Breakdown of base earnings vs multiplier bonus, with per-tier detail
39
+ */
40
+ export declare function getCashbackBreakdown(cashbackCredits: BN, ranges: CashbackRange[]): CashbackBreakdown;
41
+ //# sourceMappingURL=cashback.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cashback.d.ts","sourceRoot":"","sources":["../../src/math/cashback.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,OAAO,CAAC;AAEvB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD,8CAA8C;AAC9C,MAAM,WAAW,aAAa;IAC7B,uDAAuD;IACvD,UAAU,EAAE,MAAM,CAAC;IACnB,8CAA8C;IAC9C,aAAa,EAAE,MAAM,CAAC;IACtB,2EAA2E;IAC3E,oBAAoB,EAAE,EAAE,CAAC;IACzB,8EAA8E;IAC9E,UAAU,EAAE,EAAE,CAAC;IACf,+DAA+D;IAC/D,WAAW,EAAE,EAAE,CAAC;CAChB;AAED,oFAAoF;AACpF,MAAM,WAAW,iBAAiB;IACjC,gDAAgD;IAChD,YAAY,EAAE,EAAE,CAAC;IACjB,wEAAwE;IACxE,YAAY,EAAE,EAAE,CAAC;IACjB,gEAAgE;IAChE,eAAe,EAAE,EAAE,CAAC;IACpB,iEAAiE;IACjE,KAAK,EAAE,aAAa,EAAE,CAAC;CACvB;AAKD;;;;;;;;;;;;GAYG;AACH,wBAAgB,oBAAoB,CACnC,eAAe,EAAE,EAAE,EACnB,MAAM,EAAE,aAAa,EAAE,GACrB,iBAAiB,CA0EnB"}
@@ -0,0 +1,86 @@
1
+ import BN from "bn.js";
2
+ import { BPS_DENOMINATOR } from "./constants.js";
3
+ const ZERO = new BN(0);
4
+ const BPS = new BN(BPS_DENOMINATOR);
5
+ /**
6
+ * Reverses the on-chain progressive multiplier to break down a cashback balance
7
+ * into base earnings vs multiplier bonus.
8
+ *
9
+ * The on-chain `apply_balance_multiplier` advances through ranges by pre-multiplier
10
+ * portions, so each tier of width W with multiplier M contributes W * M / 10000 to
11
+ * the stored balance. This function walks the same ranges in reverse to decompose
12
+ * the final balance.
13
+ *
14
+ * @param cashbackCredits - The user's current cashback_credits (post-multiplier balance)
15
+ * @param ranges - Balance-based multiplier ranges from CashbackConfiguration
16
+ * @returns Breakdown of base earnings vs multiplier bonus, with per-tier detail
17
+ */
18
+ export function getCashbackBreakdown(cashbackCredits, ranges) {
19
+ if (cashbackCredits.isZero() || ranges.length === 0) {
20
+ return {
21
+ totalBalance: cashbackCredits.clone(),
22
+ baseEarnings: cashbackCredits.clone(),
23
+ multiplierBonus: ZERO.clone(),
24
+ tiers: [],
25
+ };
26
+ }
27
+ const tiers = [];
28
+ let cumulativePostMult = ZERO.clone();
29
+ let totalBase = ZERO.clone();
30
+ let remaining = cashbackCredits.clone();
31
+ for (let i = 0; i < ranges.length && remaining.gt(ZERO); i++) {
32
+ const range = ranges[i];
33
+ const multiplierBps = range.multiplierBasisPoints;
34
+ const width = range.rangeEndExclusive.sub(range.rangeStartInclusive);
35
+ // Post-multiplier contribution if this tier is fully filled
36
+ const tierPostMult = width.mul(new BN(multiplierBps)).div(BPS);
37
+ if (remaining.gte(tierPostMult)) {
38
+ // Tier fully filled
39
+ tiers.push({
40
+ rangeIndex: i,
41
+ multiplierBps,
42
+ postMultiplierAmount: tierPostMult.clone(),
43
+ baseAmount: width.clone(),
44
+ bonusAmount: tierPostMult.sub(width),
45
+ });
46
+ totalBase = totalBase.add(width);
47
+ cumulativePostMult = cumulativePostMult.add(tierPostMult);
48
+ remaining = remaining.sub(tierPostMult);
49
+ }
50
+ else {
51
+ // Partially filled — solve for pre-mult portion:
52
+ // postMultInTier = p * M / 10000, so p = postMultInTier * 10000 / M
53
+ const postMultInTier = remaining.clone();
54
+ const baseInTier = postMultInTier.mul(BPS).div(new BN(multiplierBps));
55
+ tiers.push({
56
+ rangeIndex: i,
57
+ multiplierBps,
58
+ postMultiplierAmount: postMultInTier,
59
+ baseAmount: baseInTier.clone(),
60
+ bonusAmount: postMultInTier.sub(baseInTier),
61
+ });
62
+ totalBase = totalBase.add(baseInTier);
63
+ remaining = ZERO.clone();
64
+ }
65
+ }
66
+ // Balance beyond all defined ranges — use last range's multiplier
67
+ if (remaining.gt(ZERO)) {
68
+ const lastMultiplier = ranges[ranges.length - 1].multiplierBasisPoints;
69
+ const baseRemaining = remaining.mul(BPS).div(new BN(lastMultiplier));
70
+ tiers.push({
71
+ rangeIndex: ranges.length,
72
+ multiplierBps: lastMultiplier,
73
+ postMultiplierAmount: remaining.clone(),
74
+ baseAmount: baseRemaining.clone(),
75
+ bonusAmount: remaining.sub(baseRemaining),
76
+ });
77
+ totalBase = totalBase.add(baseRemaining);
78
+ }
79
+ return {
80
+ totalBalance: cashbackCredits.clone(),
81
+ baseEarnings: totalBase,
82
+ multiplierBonus: cashbackCredits.sub(totalBase),
83
+ tiers,
84
+ };
85
+ }
86
+ //# sourceMappingURL=cashback.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cashback.js","sourceRoot":"","sources":["../../src/math/cashback.ts"],"names":[],"mappings":"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"}
@@ -5,4 +5,6 @@ export { calculateBuyExpectation, calculateSellExpectation, } from "./bonding-cu
5
5
  export { calculateAmmSellOutput, calculateAmmBuyInput, calculateLpToTokens, } from "./amm.js";
6
6
  export type { AmmFeeRates } from "./amm.js";
7
7
  export { calculatePoolMarketCap, lookupFeeTier, calculateFeesForPool, WSOL_MINT, } from "./tiered-fees.js";
8
+ export { getCashbackBreakdown } from "./cashback.js";
9
+ export type { CashbackBreakdown, TierBreakdown } from "./cashback.js";
8
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/math/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,eAAe,EACf,oBAAoB,EACpB,GAAG,EACH,eAAe,EACf,mCAAmC,EACnC,iBAAiB,GACjB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACN,OAAO,EACP,aAAa,EACb,qBAAqB,EACrB,0BAA0B,EAC1B,yBAAyB,EACzB,gBAAgB,EAChB,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB,GACrB,MAAM,WAAW,CAAC;AACnB,YAAY,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAE3C,OAAO,EACN,uBAAuB,EACvB,wBAAwB,GACxB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACN,sBAAsB,EACtB,oBAAoB,EACpB,mBAAmB,GACnB,MAAM,UAAU,CAAC;AAClB,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAE5C,OAAO,EACN,sBAAsB,EACtB,aAAa,EACb,oBAAoB,EACpB,SAAS,GACT,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/math/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,eAAe,EACf,oBAAoB,EACpB,GAAG,EACH,eAAe,EACf,mCAAmC,EACnC,iBAAiB,GACjB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACN,OAAO,EACP,aAAa,EACb,qBAAqB,EACrB,0BAA0B,EAC1B,yBAAyB,EACzB,gBAAgB,EAChB,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB,GACrB,MAAM,WAAW,CAAC;AACnB,YAAY,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAE3C,OAAO,EACN,uBAAuB,EACvB,wBAAwB,GACxB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACN,sBAAsB,EACtB,oBAAoB,EACpB,mBAAmB,GACnB,MAAM,UAAU,CAAC;AAClB,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAE5C,OAAO,EACN,sBAAsB,EACtB,aAAa,EACb,oBAAoB,EACpB,SAAS,GACT,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AACrD,YAAY,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC"}
@@ -3,4 +3,5 @@ export { calcBps, calculateFees, calculateDistribution, calculateTotalDistributi
3
3
  export { calculateBuyExpectation, calculateSellExpectation, } from "./bonding-curve.js";
4
4
  export { calculateAmmSellOutput, calculateAmmBuyInput, calculateLpToTokens, } from "./amm.js";
5
5
  export { calculatePoolMarketCap, lookupFeeTier, calculateFeesForPool, WSOL_MINT, } from "./tiered-fees.js";
6
+ export { getCashbackBreakdown } from "./cashback.js";
6
7
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/math/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,eAAe,EACf,oBAAoB,EACpB,GAAG,EACH,eAAe,EACf,mCAAmC,EACnC,iBAAiB,GACjB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACN,OAAO,EACP,aAAa,EACb,qBAAqB,EACrB,0BAA0B,EAC1B,yBAAyB,EACzB,gBAAgB,EAChB,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB,GACrB,MAAM,WAAW,CAAC;AAGnB,OAAO,EACN,uBAAuB,EACvB,wBAAwB,GACxB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACN,sBAAsB,EACtB,oBAAoB,EACpB,mBAAmB,GACnB,MAAM,UAAU,CAAC;AAGlB,OAAO,EACN,sBAAsB,EACtB,aAAa,EACb,oBAAoB,EACpB,SAAS,GACT,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/math/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,eAAe,EACf,oBAAoB,EACpB,GAAG,EACH,eAAe,EACf,mCAAmC,EACnC,iBAAiB,GACjB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACN,OAAO,EACP,aAAa,EACb,qBAAqB,EACrB,0BAA0B,EAC1B,yBAAyB,EACzB,gBAAgB,EAChB,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB,GACrB,MAAM,WAAW,CAAC;AAGnB,OAAO,EACN,uBAAuB,EACvB,wBAAwB,GACxB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACN,sBAAsB,EACtB,oBAAoB,EACpB,mBAAmB,GACnB,MAAM,UAAU,CAAC;AAGlB,OAAO,EACN,sBAAsB,EACtB,aAAa,EACb,oBAAoB,EACpB,SAAS,GACT,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC"}
package/dist/types.d.ts CHANGED
@@ -220,6 +220,30 @@ export interface CashbackConfiguration {
220
220
  ranges: CashbackRange[];
221
221
  traderCashbackBasisPoints: number;
222
222
  }
223
+ /** Per-tier breakdown of cashback earnings */
224
+ export interface TierBreakdown {
225
+ /** Index of this range in the config's ranges array */
226
+ rangeIndex: number;
227
+ /** Multiplier in basis points (10000 = 1x) */
228
+ multiplierBps: number;
229
+ /** Amount of cashback_credits attributed to this tier (post-multiplier) */
230
+ postMultiplierAmount: BN;
231
+ /** The base (1x-equivalent) earning that produced this tier's contribution */
232
+ baseAmount: BN;
233
+ /** Bonus from multiplier: postMultiplierAmount - baseAmount */
234
+ bonusAmount: BN;
235
+ }
236
+ /** Breakdown of a user's cashback balance into base earnings vs multiplier bonus */
237
+ export interface CashbackBreakdown {
238
+ /** The user's total cashback_credits balance */
239
+ totalBalance: BN;
240
+ /** What the user would have earned at 1x multiplier across all tiers */
241
+ baseEarnings: BN;
242
+ /** Total bonus from multipliers: totalBalance - baseEarnings */
243
+ multiplierBonus: BN;
244
+ /** Per-tier breakdown (only tiers with non-zero contribution) */
245
+ tiers: TierBreakdown[];
246
+ }
223
247
  /** Fee breakdown from a trade */
224
248
  export interface FeeDistribution {
225
249
  protocolFee: BN;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@liquid-af/sdk",
3
- "version": "0.10.3",
3
+ "version": "0.10.5",
4
4
  "description": "TypeScript SDK for the Liquid DeFi protocol on Solana",
5
5
  "type": "module",
6
6
  "publishConfig": {
package/src/client.ts CHANGED
@@ -89,6 +89,11 @@ import {
89
89
  fetchUserSnapshot as fetchUserSnapshotFn,
90
90
  fetchDeal as fetchDealFn,
91
91
  } from "./accounts/liquid-state.js";
92
+ import { fetchCashbackBreakdown as fetchCashbackBreakdownFn } from "./helpers/cashback.js";
93
+ import {
94
+ getCashbackBreakdown as getCashbackBreakdownFn,
95
+ type CashbackBreakdown,
96
+ } from "./math/cashback.js";
92
97
 
93
98
  // Preview helpers
94
99
  import {
@@ -844,6 +849,21 @@ export class LiquidClient {
844
849
  return fetchCashbackConfigFn(this.connection, this.config);
845
850
  }
846
851
 
852
+ /**
853
+ * Breaks down a cashback balance into base earnings vs multiplier bonus.
854
+ * Pure computation — use cached ranges to avoid RPC calls.
855
+ */
856
+ getCashbackBreakdown(
857
+ ...args: Parameters<typeof getCashbackBreakdownFn>
858
+ ): CashbackBreakdown {
859
+ return getCashbackBreakdownFn(...args);
860
+ }
861
+
862
+ /** Fetches user state and config from chain, then computes cashback breakdown. */
863
+ fetchCashbackBreakdown(user: PublicKey) {
864
+ return fetchCashbackBreakdownFn(this.connection, user, this.config);
865
+ }
866
+
847
867
  /** Fetches a user snapshot by user and index. */
848
868
  fetchUserSnapshot(user: PublicKey, index: number) {
849
869
  return fetchUserSnapshotFn(this.connection, user, index, this.config);
@@ -0,0 +1,28 @@
1
+ import type { Connection, PublicKey } from "@solana/web3.js";
2
+ import type { LiquidConfig } from "../config.js";
3
+ import type { CashbackBreakdown } from "../math/cashback.js";
4
+ import { getCashbackBreakdown } from "../math/cashback.js";
5
+ import { fetchUserProperties } from "../accounts/liquid-state.js";
6
+ import { fetchCashbackConfig } from "../accounts/liquid-state.js";
7
+
8
+ /**
9
+ * Fetches a user's cashback balance and config from chain, then computes
10
+ * the breakdown of base earnings vs multiplier bonus.
11
+ *
12
+ * @param connection - Solana RPC connection
13
+ * @param user - User's public key
14
+ * @param config - Liquid protocol configuration
15
+ * @returns Breakdown of the user's cashback balance
16
+ */
17
+ export async function fetchCashbackBreakdown(
18
+ connection: Connection,
19
+ user: PublicKey,
20
+ config: LiquidConfig,
21
+ ): Promise<CashbackBreakdown> {
22
+ const [userProps, cashbackConfig] = await Promise.all([
23
+ fetchUserProperties(connection, user, config),
24
+ fetchCashbackConfig(connection, config),
25
+ ]);
26
+
27
+ return getCashbackBreakdown(userProps.cashbackCredits, cashbackConfig.ranges);
28
+ }
@@ -22,3 +22,4 @@ export type {
22
22
 
23
23
  export { resolveTokenProgram } from "./user.js";
24
24
  export { buildEnsureAtaInstruction } from "./ata.js";
25
+ export { fetchCashbackBreakdown } from "./cashback.js";
package/src/index.ts CHANGED
@@ -45,6 +45,8 @@ export type {
45
45
  GlobalAmmVolume,
46
46
  CashbackRange,
47
47
  CashbackConfiguration,
48
+ CashbackBreakdown,
49
+ TierBreakdown,
48
50
  FeeDistribution,
49
51
  BondingCurveBuyResult,
50
52
  BondingCurveSellResult,
@@ -0,0 +1,124 @@
1
+ import BN from "bn.js";
2
+ import { BPS_DENOMINATOR } from "./constants.js";
3
+ import type { CashbackRange } from "../types.js";
4
+
5
+ /** Per-tier breakdown of cashback earnings */
6
+ export interface TierBreakdown {
7
+ /** Index of this range in the config's ranges array */
8
+ rangeIndex: number;
9
+ /** Multiplier in basis points (10000 = 1x) */
10
+ multiplierBps: number;
11
+ /** Amount of cashback_credits attributed to this tier (post-multiplier) */
12
+ postMultiplierAmount: BN;
13
+ /** The base (1x-equivalent) earning that produced this tier's contribution */
14
+ baseAmount: BN;
15
+ /** Bonus from multiplier: postMultiplierAmount - baseAmount */
16
+ bonusAmount: BN;
17
+ }
18
+
19
+ /** Breakdown of a user's cashback balance into base earnings vs multiplier bonus */
20
+ export interface CashbackBreakdown {
21
+ /** The user's total cashback_credits balance */
22
+ totalBalance: BN;
23
+ /** What the user would have earned at 1x multiplier across all tiers */
24
+ baseEarnings: BN;
25
+ /** Total bonus from multipliers: totalBalance - baseEarnings */
26
+ multiplierBonus: BN;
27
+ /** Per-tier breakdown (only tiers with non-zero contribution) */
28
+ tiers: TierBreakdown[];
29
+ }
30
+
31
+ const ZERO = new BN(0);
32
+ const BPS = new BN(BPS_DENOMINATOR);
33
+
34
+ /**
35
+ * Reverses the on-chain progressive multiplier to break down a cashback balance
36
+ * into base earnings vs multiplier bonus.
37
+ *
38
+ * The on-chain `apply_balance_multiplier` advances through ranges by pre-multiplier
39
+ * portions, so each tier of width W with multiplier M contributes W * M / 10000 to
40
+ * the stored balance. This function walks the same ranges in reverse to decompose
41
+ * the final balance.
42
+ *
43
+ * @param cashbackCredits - The user's current cashback_credits (post-multiplier balance)
44
+ * @param ranges - Balance-based multiplier ranges from CashbackConfiguration
45
+ * @returns Breakdown of base earnings vs multiplier bonus, with per-tier detail
46
+ */
47
+ export function getCashbackBreakdown(
48
+ cashbackCredits: BN,
49
+ ranges: CashbackRange[],
50
+ ): CashbackBreakdown {
51
+ if (cashbackCredits.isZero() || ranges.length === 0) {
52
+ return {
53
+ totalBalance: cashbackCredits.clone(),
54
+ baseEarnings: cashbackCredits.clone(),
55
+ multiplierBonus: ZERO.clone(),
56
+ tiers: [],
57
+ };
58
+ }
59
+
60
+ const tiers: TierBreakdown[] = [];
61
+ let cumulativePostMult = ZERO.clone();
62
+ let totalBase = ZERO.clone();
63
+ let remaining = cashbackCredits.clone();
64
+
65
+ for (let i = 0; i < ranges.length && remaining.gt(ZERO); i++) {
66
+ const range = ranges[i];
67
+ const multiplierBps = range.multiplierBasisPoints;
68
+ const width = range.rangeEndExclusive.sub(range.rangeStartInclusive);
69
+
70
+ // Post-multiplier contribution if this tier is fully filled
71
+ const tierPostMult = width.mul(new BN(multiplierBps)).div(BPS);
72
+
73
+ if (remaining.gte(tierPostMult)) {
74
+ // Tier fully filled
75
+ tiers.push({
76
+ rangeIndex: i,
77
+ multiplierBps,
78
+ postMultiplierAmount: tierPostMult.clone(),
79
+ baseAmount: width.clone(),
80
+ bonusAmount: tierPostMult.sub(width),
81
+ });
82
+ totalBase = totalBase.add(width);
83
+ cumulativePostMult = cumulativePostMult.add(tierPostMult);
84
+ remaining = remaining.sub(tierPostMult);
85
+ } else {
86
+ // Partially filled — solve for pre-mult portion:
87
+ // postMultInTier = p * M / 10000, so p = postMultInTier * 10000 / M
88
+ const postMultInTier = remaining.clone();
89
+ const baseInTier = postMultInTier.mul(BPS).div(new BN(multiplierBps));
90
+
91
+ tiers.push({
92
+ rangeIndex: i,
93
+ multiplierBps,
94
+ postMultiplierAmount: postMultInTier,
95
+ baseAmount: baseInTier.clone(),
96
+ bonusAmount: postMultInTier.sub(baseInTier),
97
+ });
98
+ totalBase = totalBase.add(baseInTier);
99
+ remaining = ZERO.clone();
100
+ }
101
+ }
102
+
103
+ // Balance beyond all defined ranges — use last range's multiplier
104
+ if (remaining.gt(ZERO)) {
105
+ const lastMultiplier = ranges[ranges.length - 1].multiplierBasisPoints;
106
+ const baseRemaining = remaining.mul(BPS).div(new BN(lastMultiplier));
107
+
108
+ tiers.push({
109
+ rangeIndex: ranges.length,
110
+ multiplierBps: lastMultiplier,
111
+ postMultiplierAmount: remaining.clone(),
112
+ baseAmount: baseRemaining.clone(),
113
+ bonusAmount: remaining.sub(baseRemaining),
114
+ });
115
+ totalBase = totalBase.add(baseRemaining);
116
+ }
117
+
118
+ return {
119
+ totalBalance: cashbackCredits.clone(),
120
+ baseEarnings: totalBase,
121
+ multiplierBonus: cashbackCredits.sub(totalBase),
122
+ tiers,
123
+ };
124
+ }
package/src/math/index.ts CHANGED
@@ -38,3 +38,6 @@ export {
38
38
  calculateFeesForPool,
39
39
  WSOL_MINT,
40
40
  } from "./tiered-fees.js";
41
+
42
+ export { getCashbackBreakdown } from "./cashback.js";
43
+ export type { CashbackBreakdown, TierBreakdown } from "./cashback.js";
package/src/types.ts CHANGED
@@ -259,6 +259,32 @@ export interface CashbackConfiguration {
259
259
  traderCashbackBasisPoints: number;
260
260
  }
261
261
 
262
+ /** Per-tier breakdown of cashback earnings */
263
+ export interface TierBreakdown {
264
+ /** Index of this range in the config's ranges array */
265
+ rangeIndex: number;
266
+ /** Multiplier in basis points (10000 = 1x) */
267
+ multiplierBps: number;
268
+ /** Amount of cashback_credits attributed to this tier (post-multiplier) */
269
+ postMultiplierAmount: BN;
270
+ /** The base (1x-equivalent) earning that produced this tier's contribution */
271
+ baseAmount: BN;
272
+ /** Bonus from multiplier: postMultiplierAmount - baseAmount */
273
+ bonusAmount: BN;
274
+ }
275
+
276
+ /** Breakdown of a user's cashback balance into base earnings vs multiplier bonus */
277
+ export interface CashbackBreakdown {
278
+ /** The user's total cashback_credits balance */
279
+ totalBalance: BN;
280
+ /** What the user would have earned at 1x multiplier across all tiers */
281
+ baseEarnings: BN;
282
+ /** Total bonus from multipliers: totalBalance - baseEarnings */
283
+ multiplierBonus: BN;
284
+ /** Per-tier breakdown (only tiers with non-zero contribution) */
285
+ tiers: TierBreakdown[];
286
+ }
287
+
262
288
  /** Fee breakdown from a trade */
263
289
  export interface FeeDistribution {
264
290
  protocolFee: BN;