@0dotxyz/p0-ts-sdk 2.10.0-alpha.1 → 2.10.0
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/{dto-farm.types-BAA9xrey.d.cts → dto-farm.types-6lrPBcZr.d.cts} +4 -0
- package/dist/{dto-farm.types-BAA9xrey.d.ts → dto-farm.types-6lrPBcZr.d.ts} +4 -0
- package/dist/index.cjs +1002 -613
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +473 -34
- package/dist/index.d.ts +473 -34
- package/dist/index.js +976 -612
- package/dist/index.js.map +1 -1
- package/dist/instructions.cjs +27 -2
- package/dist/instructions.cjs.map +1 -1
- package/dist/instructions.d.cts +67 -11
- package/dist/instructions.d.ts +67 -11
- package/dist/instructions.js +27 -2
- package/dist/instructions.js.map +1 -1
- package/dist/{types-Cj6aaTuh.d.ts → types--m9sTr2x.d.ts} +60 -4
- package/dist/{types-SQxOiZGm.d.cts → types-DQD0k0pr.d.cts} +60 -4
- package/dist/vendor.cjs +2 -0
- package/dist/vendor.cjs.map +1 -1
- package/dist/vendor.d.cts +2 -2
- package/dist/vendor.d.ts +2 -2
- package/dist/vendor.js +2 -0
- package/dist/vendor.js.map +1 -1
- package/package.json +2 -1
package/dist/index.d.cts
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import * as superstruct from 'superstruct';
|
|
2
2
|
import { Infer } from 'superstruct';
|
|
3
|
-
import {
|
|
4
|
-
export {
|
|
3
|
+
import { c as BankType, R as RiskTier, A as AssetTag, d as BankConfigFlag, e as OperationalState, f as OracleSetup, E as EmodeTag, g as EmodeEntryFlags, h as EmodeFlags, W as WrappedI80F48, I as InterestRateConfigRaw, i as OperationalStateRaw, j as OracleSetupRaw, k as RiskTierRaw, M as MarginfiProgram, l as InterestRateConfig, m as BankConfigType, n as BankConfigRaw, o as BankConfigOpt, p as BankConfigOptRaw, q as EmodeSettingsType, r as BankRateLimiterType, s as BankRaw, t as BankRateLimiterRaw, u as EmodeSettingsRaw, v as MarginfiIdlType, H as HealthCacheFlags, w as HealthCacheStatus, x as AccountFlags, y as MarginfiAccountType, z as OraclePrice, P as PriceWithConfidence, C as PriceBias, D as OraclePriceDto, F as BankIntegrationMetadataMap, G as OrderType, J as BalanceType, K as HealthCacheType, L as EmodePair, N as ActiveEmodePair, Q as ActionEmodeImpact, S as MarginRequirementType, a as BankConfigFastRaw, b as BankConfigGovRaw, T as Amount, U as EmodeImpactStatus, O as OrderTrigger, V as TypedAmount, X as BankVaultType, Y as RateLimitWindowType, Z as BankIntegrationMetadataMapDto, _ as BankIntegrationMetadataDto, $ as BankIntegrationMetadata, a0 as Bank, a1 as Environment, a2 as Project0Config, a3 as MintData } from './types-DQD0k0pr.cjs';
|
|
4
|
+
export { aC as AccountType, aH as AmountType, aB as BankAddress, a4 as BankConfig, B as BankConfigCompactRaw, aE as BankMap, aA as BankMetadata, a7 as BankMetadataRaw, as as ComputeAssetUsdValueParams, aq as ComputeLiabilityUsdValueParams, ao as ComputeUsdValueParams, ac as EmodeConfigRaw, af as EmodeEntry, ah as EmodeImpact, a5 as EmodeSettings, aj as GetAssetWeightParams, a9 as InterestRateConfigCompactRaw, ae as InterestRateConfigOpt, aa as InterestRateConfigOptRaw, aD as KaminoStates, ax as MARGINFI_IDL, aG as MintDataMap, ag as OracleConfigOpt, ab as OracleConfigOptRaw, aF as OraclePriceMap, av as OrderTriggerKind, aw as PriceWithConfidenceDto, ay as Program, a6 as RateLimitWindowRaw, ad as RatePoint, a8 as RatePointRaw, az as Wallet, at as computeAssetUsdValue, ar as computeLiabilityUsdValue, an as computeLoopingParams, am as computeMaxLeverage, au as computeTvl, ap as computeUsdValue, ak as getAssetWeight, al as getLiabilityWeight, ai as isWeightedPrice, aI as resolveAmount } from './types-DQD0k0pr.cjs';
|
|
5
5
|
import * as _solana_web3_js from '@solana/web3.js';
|
|
6
6
|
import { VersionedTransaction, Transaction, PublicKey, TransactionError, TransactionInstruction, Keypair, Signer, AddressLookupTableAccount, Blockhash, TransactionMessage, Connection, AccountInfo } from '@solana/web3.js';
|
|
7
7
|
import { Idl, Instruction, Address } from '@coral-xyz/anchor';
|
|
8
8
|
import BigNumber$1 from 'bignumber.js';
|
|
9
9
|
import BN from 'bn.js';
|
|
10
|
-
import { K as KaminoReserve, D as DriftSpotMarket, d as DriftRewards, J as JupLendingState, f as JupTokenReserve, i as KaminoReserveJSON, j as KaminoObligationJSON, k as KaminoFarmStateJSON, a as KaminoObligation, b as KaminoFarmState, l as DriftSpotMarketJSON, m as DriftUserJSON, n as DriftRewardsJSON, o as DriftUserStatsJSON, c as DriftUser, e as DriftUserStats, p as JupLendingStateJSON, q as JupTokenReserveJSON, r as JupLendingRewardsRateModelJSON, s as JupRateModelJSON, g as JupLendingRewardsRateModel, h as JupRateModel } from './dto-farm.types-
|
|
10
|
+
import { K as KaminoReserve, D as DriftSpotMarket, d as DriftRewards, J as JupLendingState, f as JupTokenReserve, i as KaminoReserveJSON, j as KaminoObligationJSON, k as KaminoFarmStateJSON, a as KaminoObligation, b as KaminoFarmState, l as DriftSpotMarketJSON, m as DriftUserJSON, n as DriftRewardsJSON, o as DriftUserStatsJSON, c as DriftUser, e as DriftUserStats, p as JupLendingStateJSON, q as JupTokenReserveJSON, r as JupLendingRewardsRateModelJSON, s as JupRateModelJSON, g as JupLendingRewardsRateModel, h as JupRateModel } from './dto-farm.types-6lrPBcZr.cjs';
|
|
11
11
|
import { JupiterClientConfig, QuoteGetRequest, QuoteResponse } from './jupiter.cjs';
|
|
12
12
|
import { E as ExponentVault, G as GammaLpVaultRaw, e as GammaWithdrawReceiptRaw } from './types-Pjhu5XMK.cjs';
|
|
13
13
|
import { Buffer as Buffer$1 } from 'buffer';
|
|
@@ -82,6 +82,9 @@ declare enum TransactionType {
|
|
|
82
82
|
UNSTAKE_LST = "UNSTAKE_LST",
|
|
83
83
|
WITHDRAW_EMISSIONS = "WITHDRAW_EMISSIONS",
|
|
84
84
|
LIQUIDATE_ACCOUNT = "LIQUIDATE_ACCOUNT",
|
|
85
|
+
PLACE_ORDER = "PLACE_ORDER",
|
|
86
|
+
CLOSE_ORDER = "CLOSE_ORDER",
|
|
87
|
+
UPDATE_ORDER = "UPDATE_ORDER",
|
|
85
88
|
CREATE_PERM_BANK = "CREATE_PERM_BANK",
|
|
86
89
|
CREATE_GROUP = "CREATE_GROUP",
|
|
87
90
|
JUPITER_SWAP = "JUPITER_SWAP"
|
|
@@ -138,6 +141,18 @@ declare function selectLutsForAccountAction(luts: AddressLookupTableAccount[], t
|
|
|
138
141
|
declare function isV0Tx(tx: Transaction | VersionedTransaction): tx is VersionedTransaction;
|
|
139
142
|
declare function isFlashloan(tx: SolanaTransaction): boolean;
|
|
140
143
|
declare function makeVersionedTransaction(blockhash: Blockhash, transaction: Transaction, payer: PublicKey, addressLookupTables?: AddressLookupTableAccount[]): Promise<VersionedTransaction>;
|
|
144
|
+
/**
|
|
145
|
+
* Whether the instructions compile into one v0 transaction within MAX_TX_SIZE (minus
|
|
146
|
+
* `sizeMargin`, if given) and `maxAccountLocks` account locks (if given).
|
|
147
|
+
*/
|
|
148
|
+
declare function fitsInOneTransaction(ixs: TransactionInstruction[], opts: {
|
|
149
|
+
payerKey: PublicKey;
|
|
150
|
+
luts: AddressLookupTableAccount[];
|
|
151
|
+
/** Bytes reserved below MAX_TX_SIZE, e.g. for compute-budget ixs appended at send time. */
|
|
152
|
+
sizeMargin?: number;
|
|
153
|
+
/** Also cap the total account locks (e.g. MAX_ACCOUNT_LOCKS). */
|
|
154
|
+
maxAccountLocks?: number;
|
|
155
|
+
}): boolean;
|
|
141
156
|
/**
|
|
142
157
|
* Splits your instructions into as many VersionedTransactions as needed
|
|
143
158
|
* so that none exceed MAX_TX_SIZE (minus `sizeMargin`, if given) nor
|
|
@@ -152,6 +167,15 @@ declare function splitInstructionsToFitTransactions(mandatoryIxs: TransactionIns
|
|
|
152
167
|
/** Also cap the total account locks per transaction (e.g. MAX_ACCOUNT_LOCKS). */
|
|
153
168
|
maxAccountLocks?: number;
|
|
154
169
|
}): VersionedTransaction[];
|
|
170
|
+
/**
|
|
171
|
+
* Builds the transactions that run before an action: setup (ATA creation and the like) tagged
|
|
172
|
+
* `CREATE_ATA`, then venue refreshes tagged `CRANK`, each split to fit.
|
|
173
|
+
*/
|
|
174
|
+
declare function makePreludeTxs(setupIxs: TransactionInstruction[], refreshIxs: TransactionInstruction[], opts: {
|
|
175
|
+
blockhash: string;
|
|
176
|
+
payerKey: PublicKey;
|
|
177
|
+
luts: AddressLookupTableAccount[];
|
|
178
|
+
}): ExtendedV0Transaction[];
|
|
155
179
|
/**
|
|
156
180
|
* Enhances a given transaction with additional metadata.
|
|
157
181
|
*
|
|
@@ -302,6 +326,7 @@ interface BankTypeDto {
|
|
|
302
326
|
premiumTag?: number;
|
|
303
327
|
premiumActive?: boolean;
|
|
304
328
|
premiumActivatedAt?: number;
|
|
329
|
+
kaminoEmergency?: boolean;
|
|
305
330
|
rateLimiter?: BankRateLimiterDto;
|
|
306
331
|
feesDestinationAccount?: string;
|
|
307
332
|
lendingPositionCount?: string;
|
|
@@ -412,7 +437,15 @@ interface EmodeEntryRawDto {
|
|
|
412
437
|
assetWeightMaint: WrappedI80F48;
|
|
413
438
|
}
|
|
414
439
|
|
|
415
|
-
|
|
440
|
+
/**
|
|
441
|
+
* Freezes a bank's settings so they can no longer be changed. Signed by the group's governance
|
|
442
|
+
* admin.
|
|
443
|
+
*
|
|
444
|
+
* @param program - The marginfi program
|
|
445
|
+
* @param bankAddress - The bank to freeze
|
|
446
|
+
* @returns The `lending_pool_configure_bank_gov` instruction
|
|
447
|
+
*/
|
|
448
|
+
declare function freezeBankConfigIx(program: MarginfiProgram, bankAddress: PublicKey): Promise<InstructionsWrapper>;
|
|
416
449
|
type AddOracleToBanksIxArgs = {
|
|
417
450
|
program: MarginfiProgram;
|
|
418
451
|
bankAddress: PublicKey;
|
|
@@ -423,9 +456,9 @@ type AddOracleToBanksIxArgs = {
|
|
|
423
456
|
oracleAccounts?: PublicKey[];
|
|
424
457
|
setup: OracleSetup;
|
|
425
458
|
groupAddress?: PublicKey;
|
|
426
|
-
|
|
459
|
+
governanceAdminAddress?: PublicKey;
|
|
427
460
|
};
|
|
428
|
-
declare function addOracleToBanksIx({ program, bankAddress, feedId, oracleKey, oracleAccounts, setup, groupAddress,
|
|
461
|
+
declare function addOracleToBanksIx({ program, bankAddress, feedId, oracleKey, oracleAccounts, setup, groupAddress, governanceAdminAddress, }: AddOracleToBanksIxArgs): Promise<InstructionsWrapper>;
|
|
429
462
|
type SetOraclePriceIxArgs = {
|
|
430
463
|
program: MarginfiProgram;
|
|
431
464
|
bankAddress: PublicKey;
|
|
@@ -434,19 +467,24 @@ type SetOraclePriceIxArgs = {
|
|
|
434
467
|
/** Fixed venue account, [Pyth, Exponent vault], or [Exponent vault], depending on setup. */
|
|
435
468
|
oracleAccounts?: PublicKey[];
|
|
436
469
|
groupAddress?: PublicKey;
|
|
437
|
-
|
|
470
|
+
governanceAdminAddress?: PublicKey;
|
|
438
471
|
};
|
|
439
|
-
/** Configure a flat fixed price or an Exponent PT price
|
|
440
|
-
declare function setOraclePriceIx({ program, bankAddress, price, setup, oracleAccounts, groupAddress,
|
|
472
|
+
/** Configure a flat fixed price or an Exponent PT price, signed by the group's governance admin. */
|
|
473
|
+
declare function setOraclePriceIx({ program, bankAddress, price, setup, oracleAccounts, groupAddress, governanceAdminAddress, }: SetOraclePriceIxArgs): Promise<InstructionsWrapper>;
|
|
441
474
|
type ConfigureScopeOracleIxArgs = {
|
|
442
475
|
program: MarginfiProgram;
|
|
443
|
-
|
|
476
|
+
bank: BankType;
|
|
444
477
|
oracle: PublicKey;
|
|
445
478
|
entryIndex: number;
|
|
446
479
|
groupAddress?: PublicKey;
|
|
447
|
-
|
|
480
|
+
governanceAdminAddress?: PublicKey;
|
|
448
481
|
};
|
|
449
|
-
|
|
482
|
+
/**
|
|
483
|
+
* Point a bank at an entry in a Scope OraclePrices account, signed by the group's governance admin.
|
|
484
|
+
* The program picks Scope, ScopeKamino or ScopeJuplend from the bank's asset tag; for Kamino and
|
|
485
|
+
* JupLend banks the reserve / lending account it validates is taken from `bank.config.oracleKeys[1]`.
|
|
486
|
+
*/
|
|
487
|
+
declare function configureScopeOracleIx({ program, bank, oracle, entryIndex, groupAddress, governanceAdminAddress, }: ConfigureScopeOracleIxArgs): Promise<InstructionsWrapper>;
|
|
450
488
|
|
|
451
489
|
declare function serializeBankConfigOpt(bankConfigOpt: BankConfigOpt): BankConfigOptRaw;
|
|
452
490
|
declare function serializeInterestRateConfig(interestRateConfig: InterestRateConfig): InterestRateConfigRaw;
|
|
@@ -573,6 +611,7 @@ declare function getLiabilityShares(bank: BankType, liabilityQuantity: BigNumber
|
|
|
573
611
|
interface BalanceRaw {
|
|
574
612
|
active: boolean | number;
|
|
575
613
|
bankPk: PublicKey;
|
|
614
|
+
tag: number;
|
|
576
615
|
assetShares: WrappedI80F48;
|
|
577
616
|
liabilityShares: WrappedI80F48;
|
|
578
617
|
premiumRateSnapshot: number;
|
|
@@ -600,12 +639,31 @@ interface MarginfiAccountRaw {
|
|
|
600
639
|
authority: PublicKey;
|
|
601
640
|
lendingAccount: {
|
|
602
641
|
balances: BalanceRaw[];
|
|
642
|
+
lastTagUsed: number;
|
|
603
643
|
};
|
|
604
644
|
accountFlags: BN;
|
|
605
645
|
emissionsDestinationAccount: PublicKey;
|
|
606
646
|
healthCache: HealthCacheRaw;
|
|
647
|
+
activeOrders: number;
|
|
607
648
|
padding0?: BN[];
|
|
608
649
|
}
|
|
650
|
+
type OrderTriggerTypeRaw = {
|
|
651
|
+
stopLoss: Record<string, never>;
|
|
652
|
+
} | {
|
|
653
|
+
takeProfit: Record<string, never>;
|
|
654
|
+
} | {
|
|
655
|
+
both: Record<string, never>;
|
|
656
|
+
};
|
|
657
|
+
interface OrderRaw {
|
|
658
|
+
marginfiAccount: PublicKey;
|
|
659
|
+
stopLoss: WrappedI80F48;
|
|
660
|
+
takeProfit: WrappedI80F48;
|
|
661
|
+
createdAt: BN;
|
|
662
|
+
maxSlippage: number;
|
|
663
|
+
tags: number[];
|
|
664
|
+
trigger: OrderTriggerTypeRaw;
|
|
665
|
+
bump: number;
|
|
666
|
+
}
|
|
609
667
|
type MarginRequirementTypeRaw = {
|
|
610
668
|
initial: Record<string, never>;
|
|
611
669
|
} | {
|
|
@@ -617,6 +675,8 @@ type MarginRequirementTypeRaw = {
|
|
|
617
675
|
interface BalanceTypeDto {
|
|
618
676
|
active: boolean;
|
|
619
677
|
bankPk: string;
|
|
678
|
+
/** Optional for backwards compatibility with DTOs serialized before order tags existed. */
|
|
679
|
+
tag?: number;
|
|
620
680
|
assetShares: string;
|
|
621
681
|
liabilityShares: string;
|
|
622
682
|
premiumRate: string;
|
|
@@ -643,6 +703,8 @@ interface MarginfiAccountTypeDto {
|
|
|
643
703
|
accountFlags: AccountFlags[];
|
|
644
704
|
emissionsDestinationAccount: string;
|
|
645
705
|
healthCache: HealthCacheTypeDto;
|
|
706
|
+
/** Optional so DTOs cached before the field existed still parse (defaults to 0). */
|
|
707
|
+
activeOrders?: number;
|
|
646
708
|
}
|
|
647
709
|
|
|
648
710
|
interface SimulationResultRaw {
|
|
@@ -1170,6 +1232,7 @@ declare function runSwapEngine(req: SwapEngineRequest): Promise<SwapEngineResult
|
|
|
1170
1232
|
|
|
1171
1233
|
declare const EMPTY_HEALTH_CACHE: HealthCacheRaw;
|
|
1172
1234
|
declare function decodeAccountRaw(encoded: Buffer, idl: MarginfiIdlType): MarginfiAccountRaw;
|
|
1235
|
+
declare function parseOrderRaw(orderAddress: PublicKey, orderRaw: OrderRaw): OrderType;
|
|
1173
1236
|
declare function parseBalanceRaw(balanceRaw: BalanceRaw): BalanceType;
|
|
1174
1237
|
declare function parseHealthCacheRaw(healthCacheRaw: HealthCacheRaw): HealthCacheType;
|
|
1175
1238
|
declare function parseMarginfiAccountRaw(marginfiAccountPk: PublicKey, accountData: MarginfiAccountRaw): MarginfiAccountType;
|
|
@@ -1637,6 +1700,31 @@ declare function getBalanceUsdValueWithPriceBias(params: GetBalanceUsdValueWithP
|
|
|
1637
1700
|
assets: BigNumber$1;
|
|
1638
1701
|
liabilities: BigNumber$1;
|
|
1639
1702
|
};
|
|
1703
|
+
interface OrderPairLegValueInput {
|
|
1704
|
+
balance: BalanceType;
|
|
1705
|
+
bank: BankType;
|
|
1706
|
+
oraclePrice: OraclePrice;
|
|
1707
|
+
assetShareValueMultiplier?: BigNumber$1;
|
|
1708
|
+
}
|
|
1709
|
+
/**
|
|
1710
|
+
* Values an order's collateral/debt pair the way the program's trigger does
|
|
1711
|
+
* (`get_tagged_account_health_components`): Equity requirement, so the time-weighted (EMA) price
|
|
1712
|
+
* at weight 1, with the collateral at the low end of the confidence band and the debt at the high
|
|
1713
|
+
* end. Isolated-tier collateral counts as 0. Take-profit fires at `netUsd >= takeProfit`, stop-loss
|
|
1714
|
+
* at `netUsd <= stopLoss`.
|
|
1715
|
+
*
|
|
1716
|
+
* @param params.collateral - The order's asset-side balance with its bank and oracle price
|
|
1717
|
+
* @param params.debt - The order's liability-side balance with its bank and oracle price
|
|
1718
|
+
* @returns USD values of both legs and the net value the trigger compares against
|
|
1719
|
+
*/
|
|
1720
|
+
declare function computeOrderPairNetValue(params: {
|
|
1721
|
+
collateral: OrderPairLegValueInput;
|
|
1722
|
+
debt: OrderPairLegValueInput;
|
|
1723
|
+
}): {
|
|
1724
|
+
collateralUsd: BigNumber$1;
|
|
1725
|
+
debtUsd: BigNumber$1;
|
|
1726
|
+
netUsd: BigNumber$1;
|
|
1727
|
+
};
|
|
1640
1728
|
/**
|
|
1641
1729
|
* Computes the native token quantities for a balance.
|
|
1642
1730
|
*
|
|
@@ -1748,6 +1836,19 @@ declare function getActiveBalances(balances: BalanceType[]): BalanceType[];
|
|
|
1748
1836
|
* ```
|
|
1749
1837
|
*/
|
|
1750
1838
|
declare function getBalance(bankAddress: PublicKey, balances: BalanceType[]): BalanceType;
|
|
1839
|
+
/**
|
|
1840
|
+
* Maps an order's balance tags to the collateral (asset) and debt (liability) banks of the
|
|
1841
|
+
* account that owns it, without throwing: a leg whose tagged balance was closed comes back null
|
|
1842
|
+
* (the order is orphaned and can no longer execute). The tag order in `order.tags` follows the
|
|
1843
|
+
* caller-supplied bank key order at placement time, so the side is inferred from the balances.
|
|
1844
|
+
*
|
|
1845
|
+
* @param marginfiAccount - The parsed marginfi account that owns the order
|
|
1846
|
+
* @param order - The order whose bank pair to resolve
|
|
1847
|
+
*/
|
|
1848
|
+
declare function resolveOrderLegs(marginfiAccount: MarginfiAccountType, order: Pick<OrderType, "tags">): {
|
|
1849
|
+
collateralBank: PublicKey | null;
|
|
1850
|
+
debtBank: PublicKey | null;
|
|
1851
|
+
};
|
|
1751
1852
|
|
|
1752
1853
|
/**
|
|
1753
1854
|
* Account-Level Metrics
|
|
@@ -2016,10 +2117,20 @@ type MarginfiGroupTypeDto = {
|
|
|
2016
2117
|
*/
|
|
2017
2118
|
declare function isGroupRateLimiterEnabled(rateLimiter?: BankRateLimiterType): boolean;
|
|
2018
2119
|
|
|
2019
|
-
declare function makePoolConfigureBankIx(program: MarginfiProgram, bank: PublicKey, args:
|
|
2120
|
+
declare function makePoolConfigureBankIx(program: MarginfiProgram, bank: PublicKey, args: BankConfigFastRaw): Promise<InstructionsWrapper>;
|
|
2121
|
+
/**
|
|
2122
|
+
* Configures a bank's governance settings (weights, risk tier, asset tag, oracle limits,
|
|
2123
|
+
* tokenless repayments, freezing, returning to operational). Signed by the group's governance admin.
|
|
2124
|
+
*
|
|
2125
|
+
* @param program - The marginfi program
|
|
2126
|
+
* @param bank - The bank to configure
|
|
2127
|
+
* @param args - The settings to change; `null` leaves a setting unchanged
|
|
2128
|
+
* @returns The `lending_pool_configure_bank_gov` instruction
|
|
2129
|
+
*/
|
|
2130
|
+
declare function makePoolConfigureBankGovIx(program: MarginfiProgram, bank: PublicKey, args: BankConfigGovRaw): Promise<InstructionsWrapper>;
|
|
2020
2131
|
declare function makeAddPermissionlessStakedBankIx(program: MarginfiProgram, group: PublicKey, voteAccountAddress: PublicKey, feePayer: PublicKey, pythOracle: PublicKey): Promise<InstructionsWrapper>;
|
|
2021
2132
|
declare function makePoolAddBankIx(program: MarginfiProgram, group: PublicKey, bank: PublicKey, feePayer: PublicKey, bankMint: PublicKey, bankConfig: BankConfigOpt, tokenProgram?: PublicKey, overrideOpt?: {
|
|
2022
|
-
|
|
2133
|
+
governanceAdmin?: PublicKey;
|
|
2023
2134
|
globalFeeWallet?: PublicKey;
|
|
2024
2135
|
}): Promise<InstructionsWrapper>;
|
|
2025
2136
|
|
|
@@ -2357,6 +2468,25 @@ declare const fetchMarginfiAccountData: (program: MarginfiProgram, marginfiAccou
|
|
|
2357
2468
|
marginfiAccount: MarginfiAccountType;
|
|
2358
2469
|
error?: HealthCacheSimulationError;
|
|
2359
2470
|
}>;
|
|
2471
|
+
/**
|
|
2472
|
+
* Fetches all open orders for a marginfi account.
|
|
2473
|
+
*
|
|
2474
|
+
* @param program - The marginfi Anchor program (connection is taken from its provider)
|
|
2475
|
+
* @param marginfiAccount - The marginfi account public key
|
|
2476
|
+
*/
|
|
2477
|
+
declare const fetchOrdersForAccount: (program: MarginfiProgram, marginfiAccount: PublicKey) => Promise<OrderType[]>;
|
|
2478
|
+
/**
|
|
2479
|
+
* Fetches the order fees from the program's global `FeeState`.
|
|
2480
|
+
*
|
|
2481
|
+
* - `placementFeeLamports`: flat SOL fee charged by `place_order` (and again on every update).
|
|
2482
|
+
* - `executionMaxFee`: the share of the pair's net value a keeper may keep on a take-profit.
|
|
2483
|
+
*
|
|
2484
|
+
* @param program - The marginfi Anchor program
|
|
2485
|
+
*/
|
|
2486
|
+
declare const fetchOrderFees: (program: MarginfiProgram) => Promise<{
|
|
2487
|
+
placementFeeLamports: number;
|
|
2488
|
+
executionMaxFee: BigNumber$1;
|
|
2489
|
+
}>;
|
|
2360
2490
|
/**
|
|
2361
2491
|
* Generates a random available account index that doesn't collide with existing accounts.
|
|
2362
2492
|
* Account indices are 0-255 (u8 range).
|
|
@@ -2450,6 +2580,27 @@ interface ComputeMaxBorrowForBankParams {
|
|
|
2450
2580
|
* ```
|
|
2451
2581
|
*/
|
|
2452
2582
|
declare function computeMaxBorrowForBank(params: ComputeMaxBorrowForBankParams): BigNumber$1;
|
|
2583
|
+
/**
|
|
2584
|
+
* The binding window of a bank's own outflow (withdraws + borrows) rate limiter.
|
|
2585
|
+
*/
|
|
2586
|
+
interface BankOutflowRateLimit {
|
|
2587
|
+
window: "hourly" | "daily";
|
|
2588
|
+
/** Remaining outflow in underlying UI units, clamped at 0 */
|
|
2589
|
+
remaining: BigNumber$1;
|
|
2590
|
+
}
|
|
2591
|
+
/**
|
|
2592
|
+
* The tighter of a bank's hourly and daily outflow windows, in the underlying UI units that
|
|
2593
|
+
* {@link computeMaxWithdrawForBank} and {@link computeMaxBorrowForBank} clamp to.
|
|
2594
|
+
*
|
|
2595
|
+
* Every venue's withdraw records the underlying token amount on the bank limiter (Kamino and
|
|
2596
|
+
* Solend the redeemed liquidity, Drift `token_amount`, JupLend `native_outflow`), except STAKED
|
|
2597
|
+
* banks, which record the LST amount — multiplied here by the LST→SOL rate to reach the SDK's
|
|
2598
|
+
* SOL-equivalent space.
|
|
2599
|
+
*
|
|
2600
|
+
* @returns The window with the least remaining capacity, or `null` when the bank has no rate
|
|
2601
|
+
* limiter enabled
|
|
2602
|
+
*/
|
|
2603
|
+
declare function computeBankOutflowRateLimit(bank: BankType, assetShareValueMultiplier?: BigNumber$1): BankOutflowRateLimit | null;
|
|
2453
2604
|
/**
|
|
2454
2605
|
* Configuration for computing maximum withdraw amount for a bank
|
|
2455
2606
|
*/
|
|
@@ -2683,6 +2834,25 @@ declare function isWholePosition(position: {
|
|
|
2683
2834
|
amount: number;
|
|
2684
2835
|
isLending: boolean;
|
|
2685
2836
|
}, amount: number, mintDecimals: number): boolean;
|
|
2837
|
+
/**
|
|
2838
|
+
* Whether a position in `bank` counts toward the program's per-account limit on integration
|
|
2839
|
+
* (Kamino, Drift, Solend, JupLend) and staked positions.
|
|
2840
|
+
*
|
|
2841
|
+
* @param bank - The bank to check
|
|
2842
|
+
* @returns True for integration and staked banks
|
|
2843
|
+
*/
|
|
2844
|
+
declare function isCostlyBank(bank: BankType): boolean;
|
|
2845
|
+
/**
|
|
2846
|
+
* Whether depositing into `bank` opens a position past the program's limit of
|
|
2847
|
+
* {@link MAX_COSTLY_POSITIONS} integration and staked positions. Topping up an existing position
|
|
2848
|
+
* never does.
|
|
2849
|
+
*
|
|
2850
|
+
* @param balances - The account's balances before the deposit
|
|
2851
|
+
* @param bankMap - Map of bank addresses to bank data
|
|
2852
|
+
* @param bank - The bank deposited into
|
|
2853
|
+
* @returns True when the program would reject the deposit (6073)
|
|
2854
|
+
*/
|
|
2855
|
+
declare function exceedsCostlyPositionLimit(balances: BalanceType[], bankMap: Map<string, BankType>, bank: BankType): boolean;
|
|
2686
2856
|
|
|
2687
2857
|
/**
|
|
2688
2858
|
* Synchronous flashloan TX size estimator.
|
|
@@ -2995,6 +3165,7 @@ declare function makeCloseMarginfiAccountTx({ connection, program, marginfiAccou
|
|
|
2995
3165
|
* wallet adapter; a `Keypair` is a separate fee payer that signs directly.
|
|
2996
3166
|
* Defaults to the account's current authority.
|
|
2997
3167
|
* @returns Versioned transaction to transfer the account
|
|
3168
|
+
* @throws TransactionBuildingError (ACCOUNT_DISABLED) when the account is disabled, e.g. already transferred
|
|
2998
3169
|
*/
|
|
2999
3170
|
declare function makeAccountTransferToNewAccountTx({ connection, program, marginfiAccount, newMarginfiAccount, newAuthority, feePayer, }: MakeAccountTransferToNewAccountTxParams): Promise<ExtendedV0Transaction>;
|
|
3000
3171
|
/**
|
|
@@ -3055,6 +3226,9 @@ declare function makePulseHealthIx(program: MarginfiProgram, marginfiAccount: Ma
|
|
|
3055
3226
|
* rewrites the account's variable borrow premium rates from its collateral after the action.
|
|
3056
3227
|
* See {@link needsPremiumRefresh} for when it's needed.
|
|
3057
3228
|
*
|
|
3229
|
+
* Best-effort: returns no instructions when a bank to refresh has no venue state in
|
|
3230
|
+
* `bankMetadataMap`, since `pulse_health` skips the premium write when a leg can't be priced.
|
|
3231
|
+
*
|
|
3058
3232
|
* @param program - The Marginfi program instance
|
|
3059
3233
|
* @param state - The account (before the action), bank map and venue state
|
|
3060
3234
|
* @param mandatoryBanks - Banks the action opens (the deposited bank)
|
|
@@ -3062,6 +3236,31 @@ declare function makePulseHealthIx(program: MarginfiProgram, marginfiAccount: Ma
|
|
|
3062
3236
|
* @returns Instructions to append after the action
|
|
3063
3237
|
*/
|
|
3064
3238
|
declare function makePremiumRefreshIxs(program: MarginfiProgram, { marginfiAccount, bankMap, bankMetadataMap }: PremiumRefreshParams, mandatoryBanks: PublicKey[], excludedBanks: PublicKey[]): Promise<TransactionInstruction[]>;
|
|
3239
|
+
/**
|
|
3240
|
+
* Appends the premium refresh ({@link makePremiumRefreshIxs}) to a deposit or repay that lands in
|
|
3241
|
+
* one transaction, and picks the lookup tables to compile it with. The refresh is left out when
|
|
3242
|
+
* `opts.skipPremiumRefresh` is set, no premium-bearing debt remains, venue state is missing, or
|
|
3243
|
+
* it would push the transaction past MAX_TX_SIZE / MAX_ACCOUNT_LOCKS.
|
|
3244
|
+
*
|
|
3245
|
+
* @param params - The builder's params: account (before the action), bank map, venue state,
|
|
3246
|
+
* acted-on bank, authority and lookup tables
|
|
3247
|
+
* @param actionIxs - The action's instructions
|
|
3248
|
+
* @param mandatoryBanks - Banks the action opens (the deposited bank)
|
|
3249
|
+
* @param excludedBanks - Banks the action closes (fully repaid banks)
|
|
3250
|
+
* @returns The transaction's instructions and lookup tables
|
|
3251
|
+
*/
|
|
3252
|
+
declare function appendPremiumRefresh(params: PremiumRefreshParams & {
|
|
3253
|
+
program: MarginfiProgram;
|
|
3254
|
+
bank: BankType;
|
|
3255
|
+
authority: PublicKey;
|
|
3256
|
+
luts: AddressLookupTableAccount[];
|
|
3257
|
+
opts?: {
|
|
3258
|
+
skipPremiumRefresh?: boolean;
|
|
3259
|
+
};
|
|
3260
|
+
}, actionIxs: TransactionInstruction[], mandatoryBanks: PublicKey[], excludedBanks: PublicKey[]): Promise<{
|
|
3261
|
+
instructions: TransactionInstruction[];
|
|
3262
|
+
luts: AddressLookupTableAccount[];
|
|
3263
|
+
}>;
|
|
3065
3264
|
declare function generateDummyAccount(group: PublicKey, authority: PublicKey, accountKey: PublicKey): MarginfiAccountType;
|
|
3066
3265
|
|
|
3067
3266
|
declare function makeDriftWithdrawIx({ program, bank, bankMap, tokenProgram, amount, marginfiAccount, driftSpotMarket, userRewards, authority, withdrawAll, isSync, opts, }: MakeDriftWithdrawIxParams): Promise<InstructionsWrapper>;
|
|
@@ -3496,6 +3695,8 @@ declare function makeRollPtTx(params: MakeRollPtTxParams): Promise<{
|
|
|
3496
3695
|
transactions: ExtendedV0Transaction[];
|
|
3497
3696
|
actionTxIndex: number;
|
|
3498
3697
|
quoteResponse: SwapQuoteResult | undefined;
|
|
3698
|
+
/** true → send as ONE atomic Jito bundle (integration refreshes go stale within a slot) */
|
|
3699
|
+
mustBeAtomicBundle: boolean;
|
|
3499
3700
|
}>;
|
|
3500
3701
|
|
|
3501
3702
|
/** A single built swap leg (its txs + the swap-engine quote). */
|
|
@@ -3654,11 +3855,55 @@ declare function makeTransferPositionsTx(params: MakeTransferPositionsTxParams):
|
|
|
3654
3855
|
declare function makeBulkWithdrawTx(params: MakeBulkWithdrawTxParams): Promise<BulkLendTxsResult>;
|
|
3655
3856
|
/**
|
|
3656
3857
|
* Repay the FULL debt of every given bank from the wallet, packing as many
|
|
3657
|
-
* repays per transaction as fit
|
|
3658
|
-
*
|
|
3858
|
+
* repays per transaction as fit, followed by the premium refresh while
|
|
3859
|
+
* premium-bearing debt remains. Most batches are a single transaction; one
|
|
3860
|
+
* that splits with a premium refresh in it must land as one bundle.
|
|
3659
3861
|
*/
|
|
3660
3862
|
declare function makeBulkRepayTx(params: MakeBulkRepayTxParams): Promise<BulkLendTxsResult>;
|
|
3661
3863
|
|
|
3864
|
+
/**
|
|
3865
|
+
* Converts USD-equity thresholds into the on-chain `OrderTrigger` argument.
|
|
3866
|
+
*
|
|
3867
|
+
* @throws {TransactionBuildingError} `ORDER_INVALID_TRIGGER` if neither threshold is set, a
|
|
3868
|
+
* threshold is not above 0, or take-profit ≤ stop-loss; `ORDER_INVALID_SLIPPAGE` via
|
|
3869
|
+
* {@link percentToMaxSlippageU32}
|
|
3870
|
+
*/
|
|
3871
|
+
declare function buildOrderTrigger(params: OrderTriggerParams): OrderTrigger;
|
|
3872
|
+
/**
|
|
3873
|
+
* Creates the instruction that places a take-profit / stop-loss order on a collateral/debt pair.
|
|
3874
|
+
* The order PDA is derived from the pair, so placing a second order on the same pair fails;
|
|
3875
|
+
* use {@link makeUpdateOrderTx} to change an existing order.
|
|
3876
|
+
*
|
|
3877
|
+
* The account must already hold (or, when bundled after a borrow/loop, will hold) an asset
|
|
3878
|
+
* balance in `collateralBank` and a liability balance in `debtBank`. The flat anti-spam fee from
|
|
3879
|
+
* the program's fee state is charged to `feePayer`.
|
|
3880
|
+
*/
|
|
3881
|
+
declare function makePlaceOrderIx(params: MakePlaceOrderIxParams): Promise<InstructionsWrapper>;
|
|
3882
|
+
/**
|
|
3883
|
+
* Creates the instruction that closes an order and returns its rent to `feeRecipient`.
|
|
3884
|
+
*/
|
|
3885
|
+
declare function makeCloseOrderIx(params: MakeCloseOrderIxParams): Promise<InstructionsWrapper>;
|
|
3886
|
+
/**
|
|
3887
|
+
* Builds a transaction that places a new order on a collateral/debt pair.
|
|
3888
|
+
*
|
|
3889
|
+
* @see {@link makePlaceOrderIx}
|
|
3890
|
+
*/
|
|
3891
|
+
declare function makePlaceOrderTx(params: MakePlaceOrderTxParams): Promise<ExtendedV0Transaction>;
|
|
3892
|
+
/**
|
|
3893
|
+
* Builds a transaction that closes an existing order.
|
|
3894
|
+
*
|
|
3895
|
+
* @see {@link makeCloseOrderIx}
|
|
3896
|
+
*/
|
|
3897
|
+
declare function makeCloseOrderTx(params: MakeCloseOrderTxParams): Promise<ExtendedV0Transaction>;
|
|
3898
|
+
/**
|
|
3899
|
+
* Builds a transaction that replaces the pair's existing order with new thresholds.
|
|
3900
|
+
*
|
|
3901
|
+
* There is no update instruction on-chain: the existing order (same PDA) is closed and re-placed
|
|
3902
|
+
* in one transaction. Balance tags are preserved across the close, so other orders sharing a
|
|
3903
|
+
* balance are unaffected. The flat anti-spam fee is charged again.
|
|
3904
|
+
*/
|
|
3905
|
+
declare function makeUpdateOrderTx(params: MakePlaceOrderTxParams): Promise<ExtendedV0Transaction>;
|
|
3906
|
+
|
|
3662
3907
|
/**
|
|
3663
3908
|
* Creates instructions to refresh Kamino lending protocol reserves and obligations.
|
|
3664
3909
|
*
|
|
@@ -3671,6 +3916,7 @@ declare function makeBulkRepayTx(params: MakeBulkRepayTxParams): Promise<BulkLen
|
|
|
3671
3916
|
* @param newBanksPk - Public keys of new banks being added to the account
|
|
3672
3917
|
* @param bankMetadataMap - Map containing Bank-specific metadata (reserve states, lending markets)
|
|
3673
3918
|
* @returns InstructionsWrapper containing refresh reserve and obligation instructions
|
|
3919
|
+
* @throws TransactionBuildingError (KAMINO_RESERVE_NOT_FOUND) when a Kamino bank has no reserve state in `bankMetadataMap`
|
|
3674
3920
|
*/
|
|
3675
3921
|
declare function makeRefreshKaminoBanksIxs(marginfiAccount: MarginfiAccountType, bankMap: Map<string, BankType>, newBanksPk: PublicKey[], bankMetadataMap: BankIntegrationMetadataMap): InstructionsWrapper;
|
|
3676
3922
|
|
|
@@ -3687,6 +3933,7 @@ declare function makeRefreshKaminoBanksIxs(marginfiAccount: MarginfiAccountType,
|
|
|
3687
3933
|
* @param banksToExclude - Public keys of banks to exclude from the update
|
|
3688
3934
|
* @param bankMetadataMap - Map containing Bank-specific metadata (Drift spot market states)
|
|
3689
3935
|
* @returns InstructionsWrapper containing Drift spot market update instructions
|
|
3936
|
+
* @throws TransactionBuildingError (DRIFT_STATE_NOT_FOUND) when a Drift bank has no spot market state in `bankMetadataMap`
|
|
3690
3937
|
*/
|
|
3691
3938
|
declare function makeUpdateDriftMarketIxs(marginfiAccount: MarginfiAccountType, bankMap: Map<string, BankType>, banksToExclude: PublicKey[], bankMetadataMap: BankIntegrationMetadataMap): InstructionsWrapper;
|
|
3692
3939
|
|
|
@@ -3706,6 +3953,7 @@ declare function makeUpdateDriftMarketIxs(marginfiAccount: MarginfiAccountType,
|
|
|
3706
3953
|
* @param banksToExclude - Public keys of banks to exclude from the update
|
|
3707
3954
|
* @param bankMetadataMap - Map containing Bank-specific metadata (JupLend lending states)
|
|
3708
3955
|
* @returns InstructionsWrapper containing update_rate instructions
|
|
3956
|
+
* @throws TransactionBuildingError (JUPLEND_STATE_NOT_FOUND) when a JupLend bank has no lending state in `bankMetadataMap`
|
|
3709
3957
|
*/
|
|
3710
3958
|
declare function makeUpdateJupLendRateIxs(marginfiAccount: MarginfiAccountType, bankMap: Map<string, BankType>, banksToExclude: PublicKey[], bankMetadataMap: BankIntegrationMetadataMap): InstructionsWrapper;
|
|
3711
3959
|
|
|
@@ -3723,6 +3971,7 @@ declare function makeUpdateJupLendRateIxs(marginfiAccount: MarginfiAccountType,
|
|
|
3723
3971
|
* @param bankMetadataMap - Map containing Bank-specific metadata (integration states)
|
|
3724
3972
|
* @param kaminoNewBanksPk - Banks to union into the Kamino refresh set, defaults to `banksToExclude`
|
|
3725
3973
|
* @returns InstructionsWrapper with instructions ordered kamino -> drift -> juplend
|
|
3974
|
+
* @throws TransactionBuildingError (KAMINO_RESERVE_NOT_FOUND, DRIFT_STATE_NOT_FOUND, JUPLEND_STATE_NOT_FOUND) when a bank to refresh has no venue state in `bankMetadataMap`
|
|
3726
3975
|
*/
|
|
3727
3976
|
declare function makeRefreshIntegrationBanksIxs(marginfiAccount: MarginfiAccountType, bankMap: Map<string, BankType>, banksToExclude: PublicKey[], bankMetadataMap: BankIntegrationMetadataMap, kaminoNewBanksPk?: PublicKey[]): InstructionsWrapper;
|
|
3728
3977
|
|
|
@@ -4014,7 +4263,8 @@ interface MakeKaminoDepositIxParams {
|
|
|
4014
4263
|
* Account state the deposit and repay transaction builders use to add `pulse_health` after the
|
|
4015
4264
|
* action while the account has premium-bearing debt, so the program rewrites its variable borrow
|
|
4016
4265
|
* premium rates as the transaction lands (deposits and repays don't refresh them on their own).
|
|
4017
|
-
* Opt out with `opts.skipPremiumRefresh`.
|
|
4266
|
+
* Opt out with `opts.skipPremiumRefresh`. The single-transaction builders leave it out when it
|
|
4267
|
+
* doesn't fit next to the action.
|
|
4018
4268
|
*/
|
|
4019
4269
|
interface PremiumRefreshParams {
|
|
4020
4270
|
/** The account before the action */
|
|
@@ -4134,14 +4384,14 @@ interface MakeWithdrawIxParams {
|
|
|
4134
4384
|
interface MakeWithdrawTxParams extends MakeWithdrawIxParams {
|
|
4135
4385
|
connection: Connection;
|
|
4136
4386
|
oraclePrices: Map<string, OraclePrice>;
|
|
4137
|
-
assetShareValueMultiplierByBank: Map<string, BigNumber>;
|
|
4387
|
+
assetShareValueMultiplierByBank: Map<string, BigNumber$1>;
|
|
4138
4388
|
luts: AddressLookupTableAccount[];
|
|
4139
4389
|
}
|
|
4140
4390
|
interface MakeKaminoWithdrawTxParams extends Omit<MakeKaminoWithdrawIxParams, "cTokenAmount"> {
|
|
4141
4391
|
amount: Amount | TypedAmount;
|
|
4142
4392
|
connection: Connection;
|
|
4143
4393
|
oraclePrices: Map<string, OraclePrice>;
|
|
4144
|
-
assetShareValueMultiplierByBank: Map<string, BigNumber>;
|
|
4394
|
+
assetShareValueMultiplierByBank: Map<string, BigNumber$1>;
|
|
4145
4395
|
luts: AddressLookupTableAccount[];
|
|
4146
4396
|
}
|
|
4147
4397
|
interface MakeBorrowIxOpts {
|
|
@@ -4173,20 +4423,20 @@ interface MakeBorrowIxParams {
|
|
|
4173
4423
|
interface MakeBorrowTxParams extends MakeBorrowIxParams {
|
|
4174
4424
|
connection: Connection;
|
|
4175
4425
|
oraclePrices: Map<string, OraclePrice>;
|
|
4176
|
-
assetShareValueMultiplierByBank: Map<string, BigNumber>;
|
|
4426
|
+
assetShareValueMultiplierByBank: Map<string, BigNumber$1>;
|
|
4177
4427
|
bankMetadataMap: BankIntegrationMetadataMap;
|
|
4178
4428
|
luts: AddressLookupTableAccount[];
|
|
4179
4429
|
}
|
|
4180
4430
|
interface MakeJuplendWithdrawTxParams extends MakeJuplendWithdrawIxParams {
|
|
4181
4431
|
connection: Connection;
|
|
4182
4432
|
oraclePrices: Map<string, OraclePrice>;
|
|
4183
|
-
assetShareValueMultiplierByBank: Map<string, BigNumber>;
|
|
4433
|
+
assetShareValueMultiplierByBank: Map<string, BigNumber$1>;
|
|
4184
4434
|
luts: AddressLookupTableAccount[];
|
|
4185
4435
|
}
|
|
4186
4436
|
interface MakeDriftWithdrawTxParams extends MakeDriftWithdrawIxParams {
|
|
4187
4437
|
connection: Connection;
|
|
4188
4438
|
oraclePrices: Map<string, OraclePrice>;
|
|
4189
|
-
assetShareValueMultiplierByBank: Map<string, BigNumber>;
|
|
4439
|
+
assetShareValueMultiplierByBank: Map<string, BigNumber$1>;
|
|
4190
4440
|
luts: AddressLookupTableAccount[];
|
|
4191
4441
|
}
|
|
4192
4442
|
interface MakeCloseAccountIxParams {
|
|
@@ -4247,7 +4497,7 @@ interface MakeTransferPositionsTxParams {
|
|
|
4247
4497
|
bankMap: Map<string, BankType>;
|
|
4248
4498
|
oraclePrices: Map<string, OraclePrice>;
|
|
4249
4499
|
bankMetadataMap: BankIntegrationMetadataMap;
|
|
4250
|
-
assetShareValueMultiplierByBank: Map<string, BigNumber>;
|
|
4500
|
+
assetShareValueMultiplierByBank: Map<string, BigNumber$1>;
|
|
4251
4501
|
/** Token program per transferred bank (base58 bank address → token program id). */
|
|
4252
4502
|
tokenProgramsByBank: Map<string, PublicKey>;
|
|
4253
4503
|
addressLookupTableAccounts?: AddressLookupTableAccount[];
|
|
@@ -4281,7 +4531,7 @@ interface MakeBulkWithdrawTxParams {
|
|
|
4281
4531
|
bankMap: Map<string, BankType>;
|
|
4282
4532
|
oraclePrices: Map<string, OraclePrice>;
|
|
4283
4533
|
bankMetadataMap: BankIntegrationMetadataMap;
|
|
4284
|
-
assetShareValueMultiplierByBank: Map<string, BigNumber>;
|
|
4534
|
+
assetShareValueMultiplierByBank: Map<string, BigNumber$1>;
|
|
4285
4535
|
/** Token program per withdrawn bank (base58 bank address → token program id). */
|
|
4286
4536
|
tokenProgramsByBank: Map<string, PublicKey>;
|
|
4287
4537
|
luts: AddressLookupTableAccount[];
|
|
@@ -4324,7 +4574,7 @@ interface MakeLoopTxParams {
|
|
|
4324
4574
|
bankMap: Map<string, BankType>;
|
|
4325
4575
|
oraclePrices: Map<string, OraclePrice>;
|
|
4326
4576
|
bankMetadataMap: BankIntegrationMetadataMap;
|
|
4327
|
-
assetShareValueMultiplierByBank: Map<string, BigNumber>;
|
|
4577
|
+
assetShareValueMultiplierByBank: Map<string, BigNumber$1>;
|
|
4328
4578
|
depositOpts: {
|
|
4329
4579
|
inputDepositAmount: number;
|
|
4330
4580
|
depositBank: BankType;
|
|
@@ -4385,7 +4635,7 @@ interface MakeRepayWithCollatTxParams {
|
|
|
4385
4635
|
connection: Connection;
|
|
4386
4636
|
bankMap: Map<string, BankType>;
|
|
4387
4637
|
oraclePrices: Map<string, OraclePrice>;
|
|
4388
|
-
assetShareValueMultiplierByBank: Map<string, BigNumber>;
|
|
4638
|
+
assetShareValueMultiplierByBank: Map<string, BigNumber$1>;
|
|
4389
4639
|
bankMetadataMap: BankIntegrationMetadataMap;
|
|
4390
4640
|
withdrawOpts: {
|
|
4391
4641
|
totalPositionAmount: number;
|
|
@@ -4416,7 +4666,7 @@ interface MakeSwapCollateralTxParams {
|
|
|
4416
4666
|
bankMap: Map<string, BankType>;
|
|
4417
4667
|
oraclePrices: Map<string, OraclePrice>;
|
|
4418
4668
|
bankMetadataMap: BankIntegrationMetadataMap;
|
|
4419
|
-
assetShareValueMultiplierByBank: Map<string, BigNumber>;
|
|
4669
|
+
assetShareValueMultiplierByBank: Map<string, BigNumber$1>;
|
|
4420
4670
|
withdrawOpts: {
|
|
4421
4671
|
totalPositionAmount: number;
|
|
4422
4672
|
withdrawAmount?: number;
|
|
@@ -4457,7 +4707,7 @@ interface MakeRollPtTxParams {
|
|
|
4457
4707
|
bankMap: Map<string, BankType>;
|
|
4458
4708
|
oraclePrices: Map<string, OraclePrice>;
|
|
4459
4709
|
bankMetadataMap: BankIntegrationMetadataMap;
|
|
4460
|
-
assetShareValueMultiplierByBank: Map<string, BigNumber>;
|
|
4710
|
+
assetShareValueMultiplierByBank: Map<string, BigNumber$1>;
|
|
4461
4711
|
withdrawOpts: {
|
|
4462
4712
|
totalPositionAmount: number;
|
|
4463
4713
|
withdrawAmount?: number;
|
|
@@ -4541,7 +4791,7 @@ interface MakeSwapDebtTxParams {
|
|
|
4541
4791
|
bankMap: Map<string, BankType>;
|
|
4542
4792
|
oraclePrices: Map<string, OraclePrice>;
|
|
4543
4793
|
bankMetadataMap: BankIntegrationMetadataMap;
|
|
4544
|
-
assetShareValueMultiplierByBank: Map<string, BigNumber>;
|
|
4794
|
+
assetShareValueMultiplierByBank: Map<string, BigNumber$1>;
|
|
4545
4795
|
repayOpts: {
|
|
4546
4796
|
totalPositionAmount: number;
|
|
4547
4797
|
repayAmount?: number;
|
|
@@ -4572,6 +4822,50 @@ interface MakeSetupIxParams {
|
|
|
4572
4822
|
tokenProgram: PublicKey;
|
|
4573
4823
|
}[];
|
|
4574
4824
|
}
|
|
4825
|
+
/**
|
|
4826
|
+
* Trigger thresholds for a take-profit / stop-loss order. Thresholds are the pair's net equity in
|
|
4827
|
+
* USD (collateral value − debt value of the two tagged balances), not a token price. At least one
|
|
4828
|
+
* of `stopLossUsd` / `takeProfitUsd` must be set; both makes a `Both` order.
|
|
4829
|
+
*/
|
|
4830
|
+
interface OrderTriggerParams {
|
|
4831
|
+
/** Pair net equity (USD) at or below which the stop-loss fires. */
|
|
4832
|
+
stopLossUsd?: BigNumber$1;
|
|
4833
|
+
/** Pair net equity (USD) at or above which the take-profit fires. */
|
|
4834
|
+
takeProfitUsd?: BigNumber$1;
|
|
4835
|
+
/** Max slippage the keeper may incur when executing, in percent (protocol cap: 10). */
|
|
4836
|
+
maxSlippagePercent: number;
|
|
4837
|
+
}
|
|
4838
|
+
interface MakePlaceOrderIxParams {
|
|
4839
|
+
program: MarginfiProgram;
|
|
4840
|
+
marginfiAccount: MarginfiAccountType;
|
|
4841
|
+
/** Bank of the asset-side (collateral) balance. */
|
|
4842
|
+
collateralBank: PublicKey;
|
|
4843
|
+
/** Bank of the liability-side (debt) balance. */
|
|
4844
|
+
debtBank: PublicKey;
|
|
4845
|
+
trigger: OrderTriggerParams;
|
|
4846
|
+
/** Pays the order rent and the flat anti-spam fee. Defaults to the account authority. */
|
|
4847
|
+
feePayer?: PublicKey;
|
|
4848
|
+
/** Global fee wallet from the program's `FeeState`; fetched from chain when omitted. */
|
|
4849
|
+
globalFeeWallet?: PublicKey;
|
|
4850
|
+
}
|
|
4851
|
+
interface MakePlaceOrderTxParams extends MakePlaceOrderIxParams {
|
|
4852
|
+
connection: Connection;
|
|
4853
|
+
luts: AddressLookupTableAccount[];
|
|
4854
|
+
blockhash?: string;
|
|
4855
|
+
}
|
|
4856
|
+
interface MakeCloseOrderIxParams {
|
|
4857
|
+
program: MarginfiProgram;
|
|
4858
|
+
marginfiAccount: MarginfiAccountType;
|
|
4859
|
+
/** The order PDA to close (see `deriveOrderPda`). */
|
|
4860
|
+
order: PublicKey;
|
|
4861
|
+
/** Receives the order's rent. Defaults to the account authority. */
|
|
4862
|
+
feeRecipient?: PublicKey;
|
|
4863
|
+
}
|
|
4864
|
+
interface MakeCloseOrderTxParams extends MakeCloseOrderIxParams {
|
|
4865
|
+
connection: Connection;
|
|
4866
|
+
luts: AddressLookupTableAccount[];
|
|
4867
|
+
blockhash?: string;
|
|
4868
|
+
}
|
|
4575
4869
|
|
|
4576
4870
|
/**
|
|
4577
4871
|
* Vault PDA Utilities
|
|
@@ -5287,6 +5581,17 @@ declare function getKaminoMetadata(options: FetchKaminoMetadataOptions): Promise
|
|
|
5287
5581
|
declare function getKaminoStatesDto(connection: Connection, kaminoBanks: KaminoBankInput[]): Promise<KaminoStateJsonByBank>;
|
|
5288
5582
|
|
|
5289
5583
|
declare function getKaminoCTokenMultiplier(reserve: KaminoReserve): BigNumber$1;
|
|
5584
|
+
/**
|
|
5585
|
+
* Joins a Kamino bank with its reserve's emergency mode. Decoding a bank or converting its DTO
|
|
5586
|
+
* only sees the market's emergency (bank flags bit 14), so call this wherever a Kamino bank meets
|
|
5587
|
+
* its reserve; otherwise initial health, max borrow and max withdraw overstate borrowing power
|
|
5588
|
+
* while the reserve is in emergency.
|
|
5589
|
+
*
|
|
5590
|
+
* @param bank - The Kamino bank
|
|
5591
|
+
* @param reserve - The bank's Kamino reserve
|
|
5592
|
+
* @returns The bank, with `kaminoEmergency` also set when the reserve is in emergency mode
|
|
5593
|
+
*/
|
|
5594
|
+
declare function withKaminoReserveEmergency(bank: BankType, reserve: KaminoReserve): BankType;
|
|
5290
5595
|
|
|
5291
5596
|
type DriftStateJsonByBank = Record<string, {
|
|
5292
5597
|
driftSpotMarketState: DriftSpotMarketJSON;
|
|
@@ -5457,7 +5762,11 @@ declare enum TransactionBuildingErrorCode {
|
|
|
5457
5762
|
TRANSFER_POSITIONS_INVALID_SELECTION = "TRANSFER_POSITIONS_INVALID_SELECTION",
|
|
5458
5763
|
TRANSFER_POSITIONS_UNSUPPORTED_BANK = "TRANSFER_POSITIONS_UNSUPPORTED_BANK",
|
|
5459
5764
|
TRANSFER_POSITIONS_UNSPLITTABLE = "TRANSFER_POSITIONS_UNSPLITTABLE",
|
|
5460
|
-
BRIDGE_CONFLICT = "BRIDGE_CONFLICT"
|
|
5765
|
+
BRIDGE_CONFLICT = "BRIDGE_CONFLICT",
|
|
5766
|
+
ORDER_INVALID_TRIGGER = "ORDER_INVALID_TRIGGER",
|
|
5767
|
+
ORDER_INVALID_SLIPPAGE = "ORDER_INVALID_SLIPPAGE",
|
|
5768
|
+
COSTLY_POSITION_LIMIT_EXCEEDED = "COSTLY_POSITION_LIMIT_EXCEEDED",
|
|
5769
|
+
ACCOUNT_DISABLED = "ACCOUNT_DISABLED"
|
|
5461
5770
|
}
|
|
5462
5771
|
/**
|
|
5463
5772
|
* Typed details for each error code
|
|
@@ -5537,6 +5846,24 @@ interface TransactionBuildingErrorDetails {
|
|
|
5537
5846
|
/** Whether the bridge token would have been held as collateral ("deposit") or debt ("borrow"). */
|
|
5538
5847
|
bridgeTokenSide: "deposit" | "borrow";
|
|
5539
5848
|
};
|
|
5849
|
+
[TransactionBuildingErrorCode.ORDER_INVALID_TRIGGER]: {
|
|
5850
|
+
reason: string;
|
|
5851
|
+
takeProfitUsd?: string;
|
|
5852
|
+
stopLossUsd?: string;
|
|
5853
|
+
};
|
|
5854
|
+
[TransactionBuildingErrorCode.ORDER_INVALID_SLIPPAGE]: {
|
|
5855
|
+
maxSlippagePercent: number;
|
|
5856
|
+
maxAllowedPercent: number;
|
|
5857
|
+
};
|
|
5858
|
+
[TransactionBuildingErrorCode.COSTLY_POSITION_LIMIT_EXCEEDED]: {
|
|
5859
|
+
/** Integration/staked bank the action would open a position in */
|
|
5860
|
+
bankAddress: string;
|
|
5861
|
+
/** Max integration + staked positions per account */
|
|
5862
|
+
limit: number;
|
|
5863
|
+
};
|
|
5864
|
+
[TransactionBuildingErrorCode.ACCOUNT_DISABLED]: {
|
|
5865
|
+
accountAddress: string;
|
|
5866
|
+
};
|
|
5540
5867
|
}
|
|
5541
5868
|
/**
|
|
5542
5869
|
* Error thrown during transaction building in the SDK.
|
|
@@ -5606,6 +5933,25 @@ declare class TransactionBuildingError<T extends TransactionBuildingErrorCode =
|
|
|
5606
5933
|
mint: string;
|
|
5607
5934
|
symbol?: string;
|
|
5608
5935
|
}>, bridgeTokenSide: "deposit" | "borrow"): TransactionBuildingError<TransactionBuildingErrorCode.BRIDGE_CONFLICT>;
|
|
5936
|
+
/**
|
|
5937
|
+
* The order trigger can't be placed: no threshold set, a threshold not above 0, or take-profit
|
|
5938
|
+
* at or below stop-loss (the program rejects all three with `InvalidOrderTakeProfitOrStopLoss`).
|
|
5939
|
+
*/
|
|
5940
|
+
static orderInvalidTrigger(reason: string, takeProfitUsd?: string, stopLossUsd?: string): TransactionBuildingError<TransactionBuildingErrorCode.ORDER_INVALID_TRIGGER>;
|
|
5941
|
+
/**
|
|
5942
|
+
* The action would open an integration (Kamino, Drift, Solend, JupLend) or staked position
|
|
5943
|
+
* beyond the per-account limit on such positions.
|
|
5944
|
+
*/
|
|
5945
|
+
static costlyPositionLimitExceeded(bankAddress: string): TransactionBuildingError<TransactionBuildingErrorCode.COSTLY_POSITION_LIMIT_EXCEEDED>;
|
|
5946
|
+
/**
|
|
5947
|
+
* The order's max slippage is outside (0, cap]. The program accepts 0, but a keeper can't
|
|
5948
|
+
* execute an order that allows no slippage, so the SDK rejects it.
|
|
5949
|
+
*/
|
|
5950
|
+
static orderInvalidSlippage(maxSlippagePercent: number, maxAllowedPercent: number): TransactionBuildingError<TransactionBuildingErrorCode.ORDER_INVALID_SLIPPAGE>;
|
|
5951
|
+
/**
|
|
5952
|
+
* The marginfi account is disabled (e.g. already transferred to a new account), so it can't act.
|
|
5953
|
+
*/
|
|
5954
|
+
static accountDisabled(accountAddress: string): TransactionBuildingError<TransactionBuildingErrorCode.ACCOUNT_DISABLED>;
|
|
5609
5955
|
/**
|
|
5610
5956
|
* Generic escape hatch for custom errors
|
|
5611
5957
|
*/
|
|
@@ -5640,6 +5986,7 @@ declare const PDA_BANK_FEE_STATE_SEED: Buffer<ArrayBuffer>;
|
|
|
5640
5986
|
declare const PDA_BANK_EMISSIONS_AUTH_SEED: Buffer<ArrayBuffer>;
|
|
5641
5987
|
declare const PDA_BANK_EMISSIONS_VAULT_SEED: Buffer<ArrayBuffer>;
|
|
5642
5988
|
declare const PDA_MARGINFI_ACCOUNT_SEED: Buffer<ArrayBuffer>;
|
|
5989
|
+
declare const PDA_ORDER_SEED: Buffer<ArrayBuffer>;
|
|
5643
5990
|
declare const PDA_REBALANCE_FEE_POOL_SEED: Buffer<ArrayBuffer>;
|
|
5644
5991
|
/**
|
|
5645
5992
|
* Derives the liquidity vault authority PDA for a bank
|
|
@@ -5691,6 +6038,14 @@ declare function deriveBankEmissionsVault(programId: PublicKey, bank: PublicKey,
|
|
|
5691
6038
|
* Seeds: ["marginfi_account", group, authority, accountIndex, thirdPartyId]
|
|
5692
6039
|
*/
|
|
5693
6040
|
declare function deriveMarginfiAccount(programId: PublicKey, group: PublicKey, authority: PublicKey, accountIndex: number, thirdPartyId?: number): [PublicKey, number];
|
|
6041
|
+
/**
|
|
6042
|
+
* Derives the order PDA for a marginfi account and bank pair
|
|
6043
|
+
* Seeds: ["order", marginfiAccount, sha256(bank keys sorted by raw bytes, concatenated)]
|
|
6044
|
+
*
|
|
6045
|
+
* Matches the on-chain `keys_sha256_hash`: the bank keys are sorted in ascending byte-wise
|
|
6046
|
+
* lexicographical order before hashing, so the caller may pass them in any order.
|
|
6047
|
+
*/
|
|
6048
|
+
declare function deriveOrderPda(programId: PublicKey, marginfiAccount: PublicKey, bankKeys: PublicKey[]): [PublicKey, number];
|
|
5694
6049
|
/**
|
|
5695
6050
|
* Derives the auto-rebalance fee pool PDA of a marginfi account (required by account close since 0.1.12)
|
|
5696
6051
|
* Seeds: ["rebalance_fee_pool", marginfiAccount]
|
|
@@ -5741,6 +6096,20 @@ declare function shortenAddress(pubkey: Address, chars?: number): string;
|
|
|
5741
6096
|
* Converts basis points (bps) to a decimal percentage value.
|
|
5742
6097
|
*/
|
|
5743
6098
|
declare function bpsToPercentile(bps: number): number;
|
|
6099
|
+
/**
|
|
6100
|
+
* Converts a slippage tolerance in percent to the on-chain u32 representation
|
|
6101
|
+
* (a fraction of `u32::MAX`, where 100% = `u32::MAX`).
|
|
6102
|
+
*
|
|
6103
|
+
* @param percent - Slippage in percent, must be in (0, 10] (protocol cap). The program accepts 0,
|
|
6104
|
+
* but a keeper can't execute an order that allows no slippage, so 0 is rejected.
|
|
6105
|
+
* @throws {TransactionBuildingError} `ORDER_INVALID_SLIPPAGE` if `percent` is outside (0, 10]
|
|
6106
|
+
*/
|
|
6107
|
+
declare function percentToMaxSlippageU32(percent: number): number;
|
|
6108
|
+
/**
|
|
6109
|
+
* Inverse of {@link percentToMaxSlippageU32}: converts the on-chain u32 slippage
|
|
6110
|
+
* representation back to a percent value.
|
|
6111
|
+
*/
|
|
6112
|
+
declare function maxSlippageU32ToPercent(maxSlippage: number): number;
|
|
5744
6113
|
/**
|
|
5745
6114
|
* Prepares transaction remaining accounts by processing bank-oracle groups:
|
|
5746
6115
|
* 1. Sorts groups in descending order by bank public key (pushes inactive accounts to end)
|
|
@@ -5775,6 +6144,10 @@ declare const STAKED_ORACLE_DISABLED_FLAG: number;
|
|
|
5775
6144
|
declare const STAKED_ORACLE_USES_ONRAMP_FLAG: number;
|
|
5776
6145
|
/** Bank flags bit 13: liabilities in this bank accrue the variable borrow premium */
|
|
5777
6146
|
declare const PREMIUM_ACTIVE_FLAG: number;
|
|
6147
|
+
/** Bank flags bit 14: the Kamino bank's lending market is in emergency mode (zero initial weight) */
|
|
6148
|
+
declare const KAMINO_MARKET_EMERGENCY_FLAG: number;
|
|
6149
|
+
/** Max integration (Kamino, Drift, Solend, JupLend) + staked positions one account can open (0.1.12) */
|
|
6150
|
+
declare const MAX_COSTLY_POSITIONS = 4;
|
|
5778
6151
|
declare const MARGINFI_PROGRAM: PublicKey;
|
|
5779
6152
|
declare const MARGINFI_PROGRAM_STAGING: PublicKey;
|
|
5780
6153
|
declare const MARGINFI_PROGRAM_STAGING_ALT: PublicKey;
|
|
@@ -5830,7 +6203,8 @@ declare class Balance implements BalanceType {
|
|
|
5830
6203
|
premiumRate: BigNumber$1;
|
|
5831
6204
|
premiumOutstanding: BigNumber$1;
|
|
5832
6205
|
lastUpdate: number;
|
|
5833
|
-
|
|
6206
|
+
tag: number;
|
|
6207
|
+
constructor(active: boolean, bankPk: PublicKey, assetShares: BigNumber$1, liabilityShares: BigNumber$1, premiumRate: BigNumber$1, premiumOutstanding: BigNumber$1, lastUpdate: number, tag: number);
|
|
5834
6208
|
static from(balanceRaw: BalanceRaw): Balance;
|
|
5835
6209
|
static fromBalanceType(balance: BalanceType): Balance;
|
|
5836
6210
|
static createEmpty(bankPk: PublicKey): Balance;
|
|
@@ -5879,7 +6253,7 @@ declare class MarginfiGroup implements MarginfiGroupType {
|
|
|
5879
6253
|
static fromBuffer(address: PublicKey, rawData: Buffer, idl: MarginfiIdlType): MarginfiGroup;
|
|
5880
6254
|
static decode(encoded: Buffer, idl: MarginfiIdlType): MarginfiGroupRaw;
|
|
5881
6255
|
static encode(decoded: MarginfiGroupRaw, idl: MarginfiIdlType): Promise<Buffer>;
|
|
5882
|
-
makePoolConfigureBankIx(program: MarginfiProgram, bank: PublicKey, args:
|
|
6256
|
+
makePoolConfigureBankIx(program: MarginfiProgram, bank: PublicKey, args: BankConfigFastRaw): Promise<InstructionsWrapper>;
|
|
5883
6257
|
makeAddPermissionlessStakedBankIx(program: MarginfiProgram, voteAccountAddress: PublicKey, feePayer: PublicKey, pythOracle: PublicKey): Promise<InstructionsWrapper>;
|
|
5884
6258
|
makePoolAddBankIx(program: MarginfiProgram, bankPubkey: PublicKey, bankMint: PublicKey, bankConfig: BankConfigOpt, feePayer?: PublicKey): Promise<InstructionsWrapper>;
|
|
5885
6259
|
}
|
|
@@ -5908,7 +6282,8 @@ declare class MarginfiAccount implements MarginfiAccountType {
|
|
|
5908
6282
|
readonly accountFlags: AccountFlags[];
|
|
5909
6283
|
readonly emissionsDestinationAccount: PublicKey;
|
|
5910
6284
|
healthCache: HealthCache;
|
|
5911
|
-
|
|
6285
|
+
readonly activeOrders: number;
|
|
6286
|
+
constructor(address: PublicKey, group: PublicKey, authority: PublicKey, balances: Balance[], accountFlags: AccountFlags[], emissionsDestinationAccount: PublicKey, healthCache: HealthCache, activeOrders?: number);
|
|
5912
6287
|
/**
|
|
5913
6288
|
* Fetches a marginfi account from on-chain data.
|
|
5914
6289
|
*
|
|
@@ -6465,6 +6840,7 @@ declare class MarginfiAccount implements MarginfiAccountType {
|
|
|
6465
6840
|
transactions: ExtendedV0Transaction[];
|
|
6466
6841
|
actionTxIndex: number;
|
|
6467
6842
|
quoteResponse: SwapQuoteResult | undefined;
|
|
6843
|
+
mustBeAtomicBundle: boolean;
|
|
6468
6844
|
}>;
|
|
6469
6845
|
/**
|
|
6470
6846
|
* Creates a transaction to swap one debt position to another using a flash loan.
|
|
@@ -6537,6 +6913,36 @@ declare class MarginfiAccount implements MarginfiAccountType {
|
|
|
6537
6913
|
* @see {@link makeBorrowTx} for detailed implementation
|
|
6538
6914
|
*/
|
|
6539
6915
|
makeBorrowTx(params: Omit<MakeBorrowTxParams, "marginfiAccount">): Promise<TransactionBuilderResult>;
|
|
6916
|
+
/**
|
|
6917
|
+
* Creates a place-order instruction for this marginfi account.
|
|
6918
|
+
*
|
|
6919
|
+
* @see {@link makePlaceOrderIx} for detailed implementation
|
|
6920
|
+
*/
|
|
6921
|
+
makePlaceOrderIx(params: Omit<MakePlaceOrderIxParams, "marginfiAccount">): Promise<InstructionsWrapper>;
|
|
6922
|
+
/**
|
|
6923
|
+
* Creates a transaction placing a take-profit / stop-loss order on a collateral/debt pair.
|
|
6924
|
+
*
|
|
6925
|
+
* @see {@link makePlaceOrderTx} for detailed implementation
|
|
6926
|
+
*/
|
|
6927
|
+
makePlaceOrderTx(params: Omit<MakePlaceOrderTxParams, "marginfiAccount">): Promise<ExtendedV0Transaction>;
|
|
6928
|
+
/**
|
|
6929
|
+
* Creates a close-order instruction for this marginfi account.
|
|
6930
|
+
*
|
|
6931
|
+
* @see {@link makeCloseOrderIx} for detailed implementation
|
|
6932
|
+
*/
|
|
6933
|
+
makeCloseOrderIx(params: Omit<MakeCloseOrderIxParams, "marginfiAccount">): Promise<InstructionsWrapper>;
|
|
6934
|
+
/**
|
|
6935
|
+
* Creates a transaction closing an existing order.
|
|
6936
|
+
*
|
|
6937
|
+
* @see {@link makeCloseOrderTx} for detailed implementation
|
|
6938
|
+
*/
|
|
6939
|
+
makeCloseOrderTx(params: Omit<MakeCloseOrderTxParams, "marginfiAccount">): Promise<ExtendedV0Transaction>;
|
|
6940
|
+
/**
|
|
6941
|
+
* Creates a transaction replacing the pair's existing order with new thresholds.
|
|
6942
|
+
*
|
|
6943
|
+
* @see {@link makeUpdateOrderTx} for detailed implementation
|
|
6944
|
+
*/
|
|
6945
|
+
makeUpdateOrderTx(params: Omit<MakePlaceOrderTxParams, "marginfiAccount">): Promise<ExtendedV0Transaction>;
|
|
6540
6946
|
/**
|
|
6541
6947
|
* Creates a repay transaction.
|
|
6542
6948
|
*
|
|
@@ -6918,6 +7324,7 @@ declare class MarginfiAccountWrapper {
|
|
|
6918
7324
|
transactions: ExtendedV0Transaction[];
|
|
6919
7325
|
actionTxIndex: number;
|
|
6920
7326
|
quoteResponse: SwapQuoteResult | undefined;
|
|
7327
|
+
mustBeAtomicBundle: boolean;
|
|
6921
7328
|
}>;
|
|
6922
7329
|
/**
|
|
6923
7330
|
* Creates a swap debt transaction with auto-injected client data.
|
|
@@ -7029,6 +7436,38 @@ declare class MarginfiAccountWrapper {
|
|
|
7029
7436
|
* @returns Promise resolving to a TransactionBuilderResult
|
|
7030
7437
|
*/
|
|
7031
7438
|
makeBorrowTx(bankAddress: PublicKey, amount: Amount, opts?: MakeBorrowIxOpts): Promise<TransactionBuilderResult>;
|
|
7439
|
+
/**
|
|
7440
|
+
* Creates a place-order instruction, for composing into a larger transaction.
|
|
7441
|
+
*
|
|
7442
|
+
* @param collateralBank - Bank of the asset-side balance
|
|
7443
|
+
* @param debtBank - Bank of the liability-side balance
|
|
7444
|
+
* @param trigger - USD pair-equity thresholds and max slippage
|
|
7445
|
+
*/
|
|
7446
|
+
makePlaceOrderIx(collateralBank: PublicKey, debtBank: PublicKey, trigger: OrderTriggerParams): Promise<InstructionsWrapper>;
|
|
7447
|
+
/**
|
|
7448
|
+
* Creates a close-order instruction, for composing into a larger transaction.
|
|
7449
|
+
*
|
|
7450
|
+
* @param order - The order PDA (from `fetchOrdersForAccount` or `deriveOrderPda`)
|
|
7451
|
+
*/
|
|
7452
|
+
makeCloseOrderIx(order: PublicKey): Promise<InstructionsWrapper>;
|
|
7453
|
+
/**
|
|
7454
|
+
* Creates a transaction placing a take-profit / stop-loss order on a collateral/debt pair.
|
|
7455
|
+
*
|
|
7456
|
+
* @param collateralBank - Bank of the asset-side balance
|
|
7457
|
+
* @param debtBank - Bank of the liability-side balance
|
|
7458
|
+
* @param trigger - USD pair-equity thresholds and max slippage
|
|
7459
|
+
*/
|
|
7460
|
+
makePlaceOrderTx(collateralBank: PublicKey, debtBank: PublicKey, trigger: OrderTriggerParams): Promise<ExtendedV0Transaction>;
|
|
7461
|
+
/**
|
|
7462
|
+
* Creates a transaction replacing the pair's existing order with new thresholds.
|
|
7463
|
+
*/
|
|
7464
|
+
makeUpdateOrderTx(collateralBank: PublicKey, debtBank: PublicKey, trigger: OrderTriggerParams): Promise<ExtendedV0Transaction>;
|
|
7465
|
+
/**
|
|
7466
|
+
* Creates a transaction closing an existing order.
|
|
7467
|
+
*
|
|
7468
|
+
* @param order - The order PDA (from `fetchOrdersForAccount` or `deriveOrderPda`)
|
|
7469
|
+
*/
|
|
7470
|
+
makeCloseOrderTx(order: PublicKey): Promise<ExtendedV0Transaction>;
|
|
7032
7471
|
/**
|
|
7033
7472
|
* Creates a repay transaction with auto-injected client data.
|
|
7034
7473
|
*
|
|
@@ -7218,4 +7657,4 @@ declare class MarginfiAccountWrapper {
|
|
|
7218
7657
|
getClient(): Project0Client;
|
|
7219
7658
|
}
|
|
7220
7659
|
|
|
7221
|
-
export { ADDRESS_LOOKUP_TABLE_FOR_GROUP, ADDRESS_LOOKUP_TABLE_FOR_GROUP_NATIVE_STAKE, ADDRESS_LOOKUP_TABLE_FOR_SWAP, type AccountActiveBalanceForBank, AccountFlags, ActionEmodeImpact, ActiveEmodePair, type ActiveStakePoolMap, Amount, AssetTag, BUNDLE_TX_SIZE, Balance, type BalanceRaw, BalanceType, type BalanceTypeDto, Bank, type BankConfigDto, BankConfigFlag, BankConfigOpt, BankConfigOptRaw, BankConfigRaw, type BankConfigRawDto, BankConfigType, BankIntegrationMetadata, BankIntegrationMetadataDto, BankIntegrationMetadataMap, BankIntegrationMetadataMapDto, type BankMetrics, type BankRateLimiterDto, BankRateLimiterRaw, type BankRateLimiterRawDto, BankRateLimiterType, BankRaw, type BankRawDto, BankType, type BankTypeDto, BankVaultType, type BankVenueStates, type BridgeOpts, type BridgeTokenSide, type BridgedSwapLeg, type BridgedTxResult, type BuildContext, type BulkLendTxsResult, type ClassifiedPosition, type ComposeBridgedSwapParams, type ComposeBridgedSwapResult, type ComputeAssetHealthComponentParams, type ComputeBalanceUsdValueParams, type ComputeBankMetricsParams, type ComputeFreeCollateralFromBalancesParams, type ComputeHealthCacheStatusParams, type ComputeHealthComponentsFromBalancesParams, type ComputeLiabilityHealthComponentParams, type ComputeLiquidationPriceForBankParams, type ComputeMaxBorrowForBankParams, type ComputeMaxDepositForBankParams, type ComputeMaxWithdrawForBankParams, type ComputeNetApyParams, type ComputePremiumRatesParams, ConfigRaw, DEFAULT_BRIDGE_MINTS, DEFAULT_ORACLE_MAX_AGE, DEFAULT_REPAY_ALL_EXTRA_BUFFER_BPS, DISABLED_FLAG, type DriftBankInput, type DriftMetadata, type DriftStateByBank, type DriftStateJsonByBank, EMPTY_HEALTH_CACHE, EXECUTION_HEADROOM_SECONDS, type EmodeConfigRawDto, type EmodeEntryDto, EmodeEntryFlags, EmodeFlags, EmodeImpactStatus, EmodePair, type EmodeSettingsDto, EmodeSettingsRaw, type EmodeSettingsRawDto, EmodeSettingsType, EmodeTag, Environment, type ExactOutEstimateResult, type ExtendedTransaction, type ExtendedTransactionProperties, type ExtendedV0Transaction, FLASHLOAN_ENABLED_FLAG, type FeeStateCache, type FetchBankIntegrationMetadataOptions, type FetchDriftMetadataOptions, type FetchJupLendMetadataOptions, type FetchKaminoMetadataOptions, type FlashloanActionResult, type FlashloanBudgetIx, type FlashloanPrecheckResult, type FlashloanSwapConstraints, type GetBalanceUsdValueWithPriceBiasParams, type GetExactOutEstimateParams, type GetSwapIxsForFlashloanParams, type GetTitanExactOutEstimateParams, type GetTitanSwapIxsParams, HOURS_PER_YEAR, HealthCache, HealthCacheFlags, type HealthCacheRaw, HealthCacheSimulationError, HealthCacheStatus, HealthCacheType, type HealthCacheTypeDto, type InstructionsWrapper, type IntegrationType, InterestRateConfig, type InterestRateConfigDto, InterestRateConfigRaw, JUPITER_V6_PROGRAM, JUP_SWAP_LUT_PROGRAM_AUTHORITY_INDEX, type JupLendBankInput, type JupLendMetadata, type JupLendStateByBank, type JupLendStateJsonByBank, type KaminoBankInput, type KaminoMetadata, type KaminoStateByBank, type KaminoStateJsonByBank, LST_MINT, type LoopFlashloanDescriptor, MARGINFI_PROGRAM, MARGINFI_PROGRAM_STAGING, MARGINFI_PROGRAM_STAGING_ALT, MARGINFI_SPONSORED_SHARD_ID, MAX_ACCOUNT_LOCKS, MAX_CONFIDENCE_INTERVAL_RATIO, MAX_TX_SIZE, MAX_U64, MPL_METADATA_PROGRAM_ID, type MakeAccountTransferToNewAccountTxParams, type MakeBorrowIxOpts, type MakeBorrowIxParams, type MakeBorrowTxParams, type MakeBridgedLoopTxParams, type MakeBridgedSwapCollateralTxParams, type MakeBridgedSwapDebtTxParams, type MakeBulkRepayTxParams, type MakeBulkWithdrawTxParams, type MakeCloseAccountIxParams, type MakeCloseAccountTxParams, type MakeDepositIxOpts, type MakeDepositIxParams, type MakeDepositTxParams, type MakeDriftDepositIxParams, type MakeDriftDepositTxParams, type MakeDriftWithdrawIxParams, type MakeDriftWithdrawTxParams, type MakeFlashLoanTxParams, type MakeJuplendDepositIxParams, type MakeJuplendDepositTxParams, type MakeJuplendWithdrawIxParams, type MakeJuplendWithdrawTxParams, type MakeKaminoDepositIxParams, type MakeKaminoDepositTxParams, type MakeKaminoWithdrawIxParams, type MakeKaminoWithdrawTxParams, type MakeLoopTxParams, type MakeMergeStakeAccountsTxParams, type MakeMintStakedLstIxParams, type MakeMintStakedLstTxParams, type MakeRedeemStakedLstIxParams, type MakeRedeemStakedLstTxParams, type MakeRepayIxOpts, type MakeRepayIxParams, type MakeRepayTxParams, type MakeRepayWithCollatTxParams, type MakeRollPtTxParams, type MakeSetupIxParams, type MakeSwapCollateralTxParams, type MakeSwapDebtTxParams, type MakeTransferPositionsTxParams, type MakeVaultCompleteWithdrawalIxParams, type MakeVaultCompleteWithdrawalTxParams, type MakeVaultDepositIxParams, type MakeVaultDepositTxParams, type MakeVaultDepositWithSwapTxParams, type MakeVaultWithdrawIxParams, type MakeVaultWithdrawTxParams, type MakeWithdrawIxOpts, type MakeWithdrawIxParams, type MakeWithdrawTxParams, MarginRequirementType, type MarginRequirementTypeRaw, MarginfiAccount, type MarginfiAccountRaw, MarginfiAccountType, type MarginfiAccountTypeDto, MarginfiAccountWrapper, MarginfiGroup, type MarginfiGroupRaw, type MarginfiGroupType, type MarginfiGroupTypeDto, MarginfiIdlType, MarginfiProgram, type MintAuthorityBalance, MintData, type MultiplierAccountState, type MultiplierAccountStates, OperationalState, OperationalStateRaw, type OracleMultiplierBankInput, type OracleMultiplierServiceOpts, OraclePrice, OraclePriceDto, OracleSetup, OracleSetupRaw, type OracleSourceKey, PDA_BANK_EMISSIONS_AUTH_SEED, PDA_BANK_EMISSIONS_VAULT_SEED, PDA_BANK_FEE_STATE_SEED, PDA_BANK_FEE_VAULT_AUTH_SEED, PDA_BANK_FEE_VAULT_SEED, PDA_BANK_INSURANCE_VAULT_AUTH_SEED, PDA_BANK_INSURANCE_VAULT_SEED, PDA_BANK_LIQUIDITY_VAULT_AUTH_SEED, PDA_BANK_LIQUIDITY_VAULT_SEED, PDA_MARGINFI_ACCOUNT_SEED, PDA_REBALANCE_FEE_POOL_SEED, PREMIUM_ACTIVE_FLAG, PRIORITY_TX_SIZE, PYTH_PRICE_CONF_INTERVALS, PYTH_PUSH_ORACLE_ID, PYTH_SPONSORED_SHARD_ID, type PanicStateCache, type PremiumAction, type PremiumCollateralBreakdown, type PremiumEntry, type PremiumImpact, type PremiumRefreshParams, PriceBias, PriceWithConfidence, Project0Client, Project0Config, Project0ConfigRaw, type ProviderSwapRoute, type PythOracleServiceOpts, type RateLimitWindowDto, type RateLimitWindowRawDto, RateLimitWindowType, type RatePointDto, type ResolveBridgeCandidateBanksParams, type ResolvedPinnedSwapRoute, RiskTier, RiskTierRaw, type RollPtOpts, type RollQuoteSimResult, type RollQuoteSimulator, type RollQuoteTokenBalance, SECONDS_PER_YEAR, SINGLE_POOL_PROGRAM_ID, STAKED_ORACLE_DISABLED_FLAG, STAKED_ORACLE_USES_ONRAMP_FLAG, STAKE_CONFIG_ID, STAKE_PROGRAM_ID, SWAP_ADAPTERS, SYSTEM_PROGRAM_ID, SYSVAR_CLOCK_ID, SYSVAR_RENT_ID, SYSVAR_STAKE_HISTORY_ID, type ScopeOracleServiceOpts, type SerializedInstruction, type SerializedLut, type SerializedSwapEngineRequest, type SerializedSwapEngineResult, type SerializedTxFootprint, type SharedBridgeLegContext, type SimulateAccountHealthCacheWithFallbackParams, type SimulationResultRaw, type SolanaTransaction, type StakeAccount, type StakePoolMevMap, type StakedBankMetadata, type SwapAdapter, type SwapApiConfig, type SwapCandidate, type SwapEngineRequest, type SwapEngineResult, type SwapEngineRunner, type SwapIxsResult, type SwapOpts, SwapProvider, type SwapProviderConfig, type SwapProviderEntry, type SwapQuoteResult, TRANSFER_ACCOUNT_AUTHORITY_FLAG, type TitanQuoteParams, TransactionArenaKeyMap, type TransactionBuilderResult, TransactionBuildingError, TransactionBuildingErrorCode, type TransactionBuildingErrorDetails, TransactionConfigMap, TransactionType, type TransferPositionSide, type TransferPositionsResult, type TxFootprint, TypedAmount, U64_MAX, USDC_DECIMALS, USDC_MINT, USDT_MINT, VENUE_AVAILABLE_LIQUIDITY_BUFFER, type ValidatorRateData, type ValidatorStakeGroup, type ValidatorStakeGroupDto, WSOL_MINT, type WithdrawWindowCache, WrappedI80F48, ZERO_ORACLE_KEY, accountConflictsWithBridgeBank, accountFlagToBN, addOracleToBanksIx, addTransactionMetadata, adjustPriceComponent, aprToApy, apyToApr, balanceToDto, bankConfigRawToDto, bankConfigToBankConfigRaw, bankMetadataMapToDto, bankMetadataToDto, bankRateLimiterRawToDto, bankRawToDto, bigNumberToWrappedI80F48, bpsToPercentile, buildCollateralLegIxs, calculateApyFromInterest, calculateInterestFromApy, capConfidenceInterval, categorizePythBanks, checkJupiterFeeAccount, checkTitanFeeAccount, chunkedGetRawMultipleAccountInfoOrdered, chunkedGetRawMultipleAccountInfoOrderedWithNulls, chunkedGetRawMultipleAccountInfos, classifyAndValidate, compileFlashloanPrecheck, composeBridgedSwap, composeRemainingAccounts, computeAccountValue, computeAccrualProjectionSeconds, computeActiveEmodePairs, computeAssetHealthComponent, computeBalancePremium, computeBalanceUsdValue, computeBankAvailableLiquidity, computeBankBorrowApy, computeBankBorrowCapRemaining, computeBankDepositCapRemaining, computeBankMetrics, computeBankPoolSize, computeBankProjectedAvailableLiquidity, computeBankRateLimitRemaining, computeBankSupplyApy, computeBankTotalBorrows, computeBankTotalBorrowsUsd, computeBankTotalDeposits, computeBankTotalDepositsUsd, computeBaseInterestRate, computeBorrowEstimateForRepay, computeClosePositionTokenAmount, computeEmodeImpacts, computeFlashLoanNonSwapBudget, computeFlashloanSwapConstraints, computeFreeCollateralFromBalances, computeFreeCollateralFromCache, computeGroupRateLimitRemainingUsd, computeHealthAccountMetas, computeHealthCacheStatus, computeHealthCheckAccounts, computeHealthComponentsFromBalances, computeHealthComponentsFromCache, computeInterestRates, computeLiabilityHealthComponent, computeLiquidationPriceForBank, computeLowestEmodeWeights, computeMaxBorrowForBank, computeMaxDepositForBank, computeMaxWithdrawForBank, computeNetApy, computeOracleMultiplier, computeOracleMultipliers, computePremiumBreakdown, computePremiumImpact, computePremiumRatesByBank, computeProjectedActiveBalancesNoCpi, computeProjectedActiveBanksNoCpi, computePtMultiplier, computeQuantity, computeQuantityUi, computeRateLimitWindowRemainingCapacity, computeRateLimiterRemainingCapacity, computeRemainingCapacity, computeStakedBankMultipliers, computeUtilizationRate, computeV0TxSize, computeVenueAvailableLiquidity, configureScopeOracleIx, convertVoteAccCoeffsToBankCoeffs, createActiveEmodePairFromPairs, createEmptyBalance, decodeAccountRaw, decodeBankRaw, decodeInstruction, decodeMultiplierAccount, decompileV0Transaction, deriveBankEmissionsAuth, deriveBankEmissionsVault, deriveBankFeeVault, deriveBankFeeVaultAuthority, deriveBankInsuranceVault, deriveBankInsuranceVaultAuthority, deriveBankLiquidityVault, deriveBankLiquidityVaultAuthority, deriveFeeState, deriveMarginfiAccount, deriveRebalanceFeePool, deserializeInstruction, deserializeLut, deserializeSwapEngineRequest, deserializeSwapEngineResult, dtoToBalance, dtoToBank, dtoToBankConfig, dtoToBankConfigRaw, dtoToBankMetadata, dtoToBankMetadataMap, dtoToBankRateLimiter, dtoToBankRateLimiterRaw, dtoToBankRaw, dtoToEmodeSettings, dtoToEmodeSettingsRaw, dtoToGroup, dtoToHealthCache, dtoToInterestRateConfig, dtoToMarginfiAccount, dtoToOraclePrice, dtoToValidatorStakeGroup, emodeSettingsRawToDto, extractPythOracleKeys, fetchBank, fetchBankIntegrationMetadata, fetchGammaLpVault, fetchGammaWithdrawReceipt, fetchMarginfiAccountActiveBalancesForBank, fetchMarginfiAccountAddresses, fetchMarginfiAccountAddressesHoldingBank, fetchMarginfiAccountData, fetchMultipleBanks, fetchMultiplierAccountStates, fetchMultiplierAccountStatesFromAPI, fetchNativeStakeAccounts, fetchOracleData, fetchOracleMultipliers, fetchOracleMultipliersFromAPI, fetchOracleMultipliersFromChain, fetchProgramForMints, fetchPythOracleData, fetchPythOraclePricesFromAPI, fetchPythOraclePricesFromChain, fetchScopeOracleData, fetchScopeOraclePricesFromAPI, fetchScopeOraclePricesFromChain, fetchStakeAccount, fetchStakePoolActiveStates, fetchStakePoolMev, findRandomAvailableAccountIndex, freezeBankConfigIx, generateDummyAccount, getAccountKeys, getActiveAccountFlags, getActiveBalances, getActiveEmodeEntryFlags, getActiveEmodeFlags, getActiveHealthCacheFlags, getAssetQuantity, getAssetShares, getBalance, getBalanceUsdValueWithPriceBias, getBankVaultAuthority, getBankVaultSeeds, getBirdeyeFallbackPricesByFeedId, getBirdeyePricesForMints, getConfig, getDriftCTokenMultiplier, getDriftMetadata, getDriftStatesDto, getEffectiveDepositLimit, getEmodePairs, getExactOutEstimate, getFallbackPricesByFeedId, getFallbackPricesForMints, getHealthCacheStatusDescription, getHealthSimulationTransactions, getJupLendFTokenMultiplier, getJupLendMetadata, getJupLendStatesDto, getJupiterReferralFeeAccount, getJupiterSwapIxsForFlashloan, getKaminoCTokenMultiplier, getKaminoMetadata, getKaminoStatesDto, getLiabilityQuantity, getLiabilityShares, getOracleMultiplierBankInput, getOracleSourceFromBank, getOracleSourceFromOracleSetup, getOracleSourceNameFromKey, getPrice, getPriceWithConfidence, getStakedBankMetadataMap, getSwapAdapter, getSwapIxsForFlashloan, getTitanExactOutEstimate, getTitanSwapIxsForFlashloan, getTotalAccountKeys, getTotalAssetQuantity, getTotalLiabilityQuantity, getTxSize, getValidatorVoteAccountByBank, getWritableAccountKeys, groupToDto, hasAccountFlag, hasEmodeEntryFlag, hasEmodeFlag, hasHealthCacheFlag, healthCacheToDto, isBorrowLimitActive, isBridgeConflictError, isDecomposableSwapError, isDepositIx, isDepositLimitActive, isFlashloan, isGroupRateLimiterEnabled, isStandardBorrowable, isStandardDepositable, isV0Tx, isWholePosition, makeAccountTransferToNewAccountTx, makeAddPermissionlessStakedBankIx, makeBeginFlashLoanIx, makeBorrowIx, makeBorrowTx, makeBridgedLoopTx, makeBridgedSwapCollateralTx, makeBridgedSwapDebtTx, makeBulkRepayTx, makeBulkWithdrawTx, makeBundleTipIx, makeCloseMarginfiAccountIx, makeCloseMarginfiAccountTx, makeCreateAccountIxWithProjection, makeCreateAccountTxWithProjection, makeCreateMarginfiAccountIx, makeCreateMarginfiAccountTx, makeDepositIx, makeDepositTx, makeDriftDepositIx, makeDriftDepositTx, makeDriftWithdrawIx, makeDriftWithdrawTx, makeEndFlashLoanIx, makeFlashLoanTx, makeJuplendDepositIx, makeJuplendDepositTx, makeJuplendWithdrawIx, makeJuplendWithdrawTx, makeKaminoDepositIx, makeKaminoDepositTx, makeKaminoWithdrawIx, makeKaminoWithdrawTx, makeLoopTx, makeMergeStakeAccountsTx, makeMintStakedLstIx, makeMintStakedLstTx, makePoolAddBankIx, makePoolConfigureBankIx, makePremiumRefreshIxs, makePriorityFeeIx, makePriorityFeeMicroIx, makePulseHealthIx, makeRedeemStakedLstIx, makeRedeemStakedLstTx, makeRefreshIntegrationBanksIxs, makeRefreshKaminoBanksIxs, makeRepayIx, makeRepayTx, makeRepayWithCollatTx, makeRollPtTx, makeSetupIx, makeSwapCollateralTx, makeSwapDebtTx, makeTransferPositionsTx, makeTxPriorityIx, makeUnwrapSolIx, makeUpdateDriftMarketIxs, makeUpdateJupLendRateIxs, makeVaultCompleteWithdrawalIx, makeVaultCompleteWithdrawalTx, makeVaultDepositIx, makeVaultDepositTx, makeVaultDepositWithSwapTx, makeVaultWithdrawIx, makeVaultWithdrawTx, makeVersionedTransaction, makeWithdrawIx, makeWithdrawTx, makeWrapSolIxs, mapJupiterQuoteToSwapQuoteResult, mapPythBanksToOraclePrices, marginfiAccountToDto, mergeBridgeQuotes, mergeBridgeQuotesDebt, mergeBridgeQuotesLoop, nativeToUi, needsPremiumRefresh, oraclePriceToDto, parseBalanceRaw, parseBankConfigRaw, parseBankRateLimiterRaw, parseBankRaw, parseEmodeSettingsRaw, parseEmodeTag, parseHealthCacheRaw, parseMarginfiAccountRaw, parseOperationalState, parseOracleSetup, parseOraclePriceData as parsePriceInfo, parseRiskTier, parseRpcPythPriceData, patchDepositAmount, rateFromU32, requireBank, requireTokenProgram, resolveBridgeCandidateBanks, resolvePinnedSwapRoute, resolveTokenProgramForMint, resolveVaultTokenProgram, runSwapEngine, selectLutsForAccountAction, selectLutsForBanks, selectSwapBridges, serializeBankConfigOpt, serializeInstruction, serializeInterestRateConfig, serializeLut, serializeOperationalState, serializeOracleSetup, serializeOracleSetupToIndex, serializeRiskTier, serializeSwapEngineRequest, serializeSwapEngineResult, setOraclePriceIx, sharedBridgeLegContext, shortenAddress, simulateAccountHealthCache, simulateAccountHealthCacheWithFallback, simulateBundle, splitInstructionsToFitTransactions, swapEngineProvidersFromOpts, swapEngineQuoteFieldsFromOpts, toBankConfigDto, toBankDto, toBankRateLimiterDto, toBigNumber, toEmodeSettingsDto, toInterestRateConfigDto, toJupiterConfig, toNumber, tryBridgeCandidates, uiToNative, uiToNativeBigNumber, validatorStakeGroupToDto, wrappedI80F48toBigNumber };
|
|
7660
|
+
export { ADDRESS_LOOKUP_TABLE_FOR_GROUP, ADDRESS_LOOKUP_TABLE_FOR_GROUP_NATIVE_STAKE, ADDRESS_LOOKUP_TABLE_FOR_SWAP, type AccountActiveBalanceForBank, AccountFlags, ActionEmodeImpact, ActiveEmodePair, type ActiveStakePoolMap, Amount, AssetTag, BUNDLE_TX_SIZE, Balance, type BalanceRaw, BalanceType, type BalanceTypeDto, Bank, type BankConfigDto, BankConfigFastRaw, BankConfigFlag, BankConfigGovRaw, BankConfigOpt, BankConfigOptRaw, BankConfigRaw, type BankConfigRawDto, BankConfigType, BankIntegrationMetadata, BankIntegrationMetadataDto, BankIntegrationMetadataMap, BankIntegrationMetadataMapDto, type BankMetrics, type BankOutflowRateLimit, type BankRateLimiterDto, BankRateLimiterRaw, type BankRateLimiterRawDto, BankRateLimiterType, BankRaw, type BankRawDto, BankType, type BankTypeDto, BankVaultType, type BankVenueStates, type BridgeOpts, type BridgeTokenSide, type BridgedSwapLeg, type BridgedTxResult, type BuildContext, type BulkLendTxsResult, type ClassifiedPosition, type ComposeBridgedSwapParams, type ComposeBridgedSwapResult, type ComputeAssetHealthComponentParams, type ComputeBalanceUsdValueParams, type ComputeBankMetricsParams, type ComputeFreeCollateralFromBalancesParams, type ComputeHealthCacheStatusParams, type ComputeHealthComponentsFromBalancesParams, type ComputeLiabilityHealthComponentParams, type ComputeLiquidationPriceForBankParams, type ComputeMaxBorrowForBankParams, type ComputeMaxDepositForBankParams, type ComputeMaxWithdrawForBankParams, type ComputeNetApyParams, type ComputePremiumRatesParams, ConfigRaw, DEFAULT_BRIDGE_MINTS, DEFAULT_ORACLE_MAX_AGE, DEFAULT_REPAY_ALL_EXTRA_BUFFER_BPS, DISABLED_FLAG, type DriftBankInput, type DriftMetadata, type DriftStateByBank, type DriftStateJsonByBank, EMPTY_HEALTH_CACHE, EXECUTION_HEADROOM_SECONDS, type EmodeConfigRawDto, type EmodeEntryDto, EmodeEntryFlags, EmodeFlags, EmodeImpactStatus, EmodePair, type EmodeSettingsDto, EmodeSettingsRaw, type EmodeSettingsRawDto, EmodeSettingsType, EmodeTag, Environment, type ExactOutEstimateResult, type ExtendedTransaction, type ExtendedTransactionProperties, type ExtendedV0Transaction, FLASHLOAN_ENABLED_FLAG, type FeeStateCache, type FetchBankIntegrationMetadataOptions, type FetchDriftMetadataOptions, type FetchJupLendMetadataOptions, type FetchKaminoMetadataOptions, type FlashloanActionResult, type FlashloanBudgetIx, type FlashloanPrecheckResult, type FlashloanSwapConstraints, type GetBalanceUsdValueWithPriceBiasParams, type GetExactOutEstimateParams, type GetSwapIxsForFlashloanParams, type GetTitanExactOutEstimateParams, type GetTitanSwapIxsParams, HOURS_PER_YEAR, HealthCache, HealthCacheFlags, type HealthCacheRaw, HealthCacheSimulationError, HealthCacheStatus, HealthCacheType, type HealthCacheTypeDto, type InstructionsWrapper, type IntegrationType, InterestRateConfig, type InterestRateConfigDto, InterestRateConfigRaw, JUPITER_V6_PROGRAM, JUP_SWAP_LUT_PROGRAM_AUTHORITY_INDEX, type JupLendBankInput, type JupLendMetadata, type JupLendStateByBank, type JupLendStateJsonByBank, KAMINO_MARKET_EMERGENCY_FLAG, type KaminoBankInput, type KaminoMetadata, type KaminoStateByBank, type KaminoStateJsonByBank, LST_MINT, type LoopFlashloanDescriptor, MARGINFI_PROGRAM, MARGINFI_PROGRAM_STAGING, MARGINFI_PROGRAM_STAGING_ALT, MARGINFI_SPONSORED_SHARD_ID, MAX_ACCOUNT_LOCKS, MAX_CONFIDENCE_INTERVAL_RATIO, MAX_COSTLY_POSITIONS, MAX_TX_SIZE, MAX_U64, MPL_METADATA_PROGRAM_ID, type MakeAccountTransferToNewAccountTxParams, type MakeBorrowIxOpts, type MakeBorrowIxParams, type MakeBorrowTxParams, type MakeBridgedLoopTxParams, type MakeBridgedSwapCollateralTxParams, type MakeBridgedSwapDebtTxParams, type MakeBulkRepayTxParams, type MakeBulkWithdrawTxParams, type MakeCloseAccountIxParams, type MakeCloseAccountTxParams, type MakeCloseOrderIxParams, type MakeCloseOrderTxParams, type MakeDepositIxOpts, type MakeDepositIxParams, type MakeDepositTxParams, type MakeDriftDepositIxParams, type MakeDriftDepositTxParams, type MakeDriftWithdrawIxParams, type MakeDriftWithdrawTxParams, type MakeFlashLoanTxParams, type MakeJuplendDepositIxParams, type MakeJuplendDepositTxParams, type MakeJuplendWithdrawIxParams, type MakeJuplendWithdrawTxParams, type MakeKaminoDepositIxParams, type MakeKaminoDepositTxParams, type MakeKaminoWithdrawIxParams, type MakeKaminoWithdrawTxParams, type MakeLoopTxParams, type MakeMergeStakeAccountsTxParams, type MakeMintStakedLstIxParams, type MakeMintStakedLstTxParams, type MakePlaceOrderIxParams, type MakePlaceOrderTxParams, type MakeRedeemStakedLstIxParams, type MakeRedeemStakedLstTxParams, type MakeRepayIxOpts, type MakeRepayIxParams, type MakeRepayTxParams, type MakeRepayWithCollatTxParams, type MakeRollPtTxParams, type MakeSetupIxParams, type MakeSwapCollateralTxParams, type MakeSwapDebtTxParams, type MakeTransferPositionsTxParams, type MakeVaultCompleteWithdrawalIxParams, type MakeVaultCompleteWithdrawalTxParams, type MakeVaultDepositIxParams, type MakeVaultDepositTxParams, type MakeVaultDepositWithSwapTxParams, type MakeVaultWithdrawIxParams, type MakeVaultWithdrawTxParams, type MakeWithdrawIxOpts, type MakeWithdrawIxParams, type MakeWithdrawTxParams, MarginRequirementType, type MarginRequirementTypeRaw, MarginfiAccount, type MarginfiAccountRaw, MarginfiAccountType, type MarginfiAccountTypeDto, MarginfiAccountWrapper, MarginfiGroup, type MarginfiGroupRaw, type MarginfiGroupType, type MarginfiGroupTypeDto, MarginfiIdlType, MarginfiProgram, type MintAuthorityBalance, MintData, type MultiplierAccountState, type MultiplierAccountStates, OperationalState, OperationalStateRaw, type OracleMultiplierBankInput, type OracleMultiplierServiceOpts, OraclePrice, OraclePriceDto, OracleSetup, OracleSetupRaw, type OracleSourceKey, type OrderRaw, OrderTrigger, type OrderTriggerParams, type OrderTriggerTypeRaw, OrderType, PDA_BANK_EMISSIONS_AUTH_SEED, PDA_BANK_EMISSIONS_VAULT_SEED, PDA_BANK_FEE_STATE_SEED, PDA_BANK_FEE_VAULT_AUTH_SEED, PDA_BANK_FEE_VAULT_SEED, PDA_BANK_INSURANCE_VAULT_AUTH_SEED, PDA_BANK_INSURANCE_VAULT_SEED, PDA_BANK_LIQUIDITY_VAULT_AUTH_SEED, PDA_BANK_LIQUIDITY_VAULT_SEED, PDA_MARGINFI_ACCOUNT_SEED, PDA_ORDER_SEED, PDA_REBALANCE_FEE_POOL_SEED, PREMIUM_ACTIVE_FLAG, PRIORITY_TX_SIZE, PYTH_PRICE_CONF_INTERVALS, PYTH_PUSH_ORACLE_ID, PYTH_SPONSORED_SHARD_ID, type PanicStateCache, type PremiumAction, type PremiumCollateralBreakdown, type PremiumEntry, type PremiumImpact, type PremiumRefreshParams, PriceBias, PriceWithConfidence, Project0Client, Project0Config, Project0ConfigRaw, type ProviderSwapRoute, type PythOracleServiceOpts, type RateLimitWindowDto, type RateLimitWindowRawDto, RateLimitWindowType, type RatePointDto, type ResolveBridgeCandidateBanksParams, type ResolvedPinnedSwapRoute, RiskTier, RiskTierRaw, type RollPtOpts, type RollQuoteSimResult, type RollQuoteSimulator, type RollQuoteTokenBalance, SECONDS_PER_YEAR, SINGLE_POOL_PROGRAM_ID, STAKED_ORACLE_DISABLED_FLAG, STAKED_ORACLE_USES_ONRAMP_FLAG, STAKE_CONFIG_ID, STAKE_PROGRAM_ID, SWAP_ADAPTERS, SYSTEM_PROGRAM_ID, SYSVAR_CLOCK_ID, SYSVAR_RENT_ID, SYSVAR_STAKE_HISTORY_ID, type ScopeOracleServiceOpts, type SerializedInstruction, type SerializedLut, type SerializedSwapEngineRequest, type SerializedSwapEngineResult, type SerializedTxFootprint, type SharedBridgeLegContext, type SimulateAccountHealthCacheWithFallbackParams, type SimulationResultRaw, type SolanaTransaction, type StakeAccount, type StakePoolMevMap, type StakedBankMetadata, type SwapAdapter, type SwapApiConfig, type SwapCandidate, type SwapEngineRequest, type SwapEngineResult, type SwapEngineRunner, type SwapIxsResult, type SwapOpts, SwapProvider, type SwapProviderConfig, type SwapProviderEntry, type SwapQuoteResult, TRANSFER_ACCOUNT_AUTHORITY_FLAG, type TitanQuoteParams, TransactionArenaKeyMap, type TransactionBuilderResult, TransactionBuildingError, TransactionBuildingErrorCode, type TransactionBuildingErrorDetails, TransactionConfigMap, TransactionType, type TransferPositionSide, type TransferPositionsResult, type TxFootprint, TypedAmount, U64_MAX, USDC_DECIMALS, USDC_MINT, USDT_MINT, VENUE_AVAILABLE_LIQUIDITY_BUFFER, type ValidatorRateData, type ValidatorStakeGroup, type ValidatorStakeGroupDto, WSOL_MINT, type WithdrawWindowCache, WrappedI80F48, ZERO_ORACLE_KEY, accountConflictsWithBridgeBank, accountFlagToBN, addOracleToBanksIx, addTransactionMetadata, adjustPriceComponent, appendPremiumRefresh, aprToApy, apyToApr, balanceToDto, bankConfigRawToDto, bankConfigToBankConfigRaw, bankMetadataMapToDto, bankMetadataToDto, bankRateLimiterRawToDto, bankRawToDto, bigNumberToWrappedI80F48, bpsToPercentile, buildCollateralLegIxs, buildOrderTrigger, calculateApyFromInterest, calculateInterestFromApy, capConfidenceInterval, categorizePythBanks, checkJupiterFeeAccount, checkTitanFeeAccount, chunkedGetRawMultipleAccountInfoOrdered, chunkedGetRawMultipleAccountInfoOrderedWithNulls, chunkedGetRawMultipleAccountInfos, classifyAndValidate, compileFlashloanPrecheck, composeBridgedSwap, composeRemainingAccounts, computeAccountValue, computeAccrualProjectionSeconds, computeActiveEmodePairs, computeAssetHealthComponent, computeBalancePremium, computeBalanceUsdValue, computeBankAvailableLiquidity, computeBankBorrowApy, computeBankBorrowCapRemaining, computeBankDepositCapRemaining, computeBankMetrics, computeBankOutflowRateLimit, computeBankPoolSize, computeBankProjectedAvailableLiquidity, computeBankRateLimitRemaining, computeBankSupplyApy, computeBankTotalBorrows, computeBankTotalBorrowsUsd, computeBankTotalDeposits, computeBankTotalDepositsUsd, computeBaseInterestRate, computeBorrowEstimateForRepay, computeClosePositionTokenAmount, computeEmodeImpacts, computeFlashLoanNonSwapBudget, computeFlashloanSwapConstraints, computeFreeCollateralFromBalances, computeFreeCollateralFromCache, computeGroupRateLimitRemainingUsd, computeHealthAccountMetas, computeHealthCacheStatus, computeHealthCheckAccounts, computeHealthComponentsFromBalances, computeHealthComponentsFromCache, computeInterestRates, computeLiabilityHealthComponent, computeLiquidationPriceForBank, computeLowestEmodeWeights, computeMaxBorrowForBank, computeMaxDepositForBank, computeMaxWithdrawForBank, computeNetApy, computeOracleMultiplier, computeOracleMultipliers, computeOrderPairNetValue, computePremiumBreakdown, computePremiumImpact, computePremiumRatesByBank, computeProjectedActiveBalancesNoCpi, computeProjectedActiveBanksNoCpi, computePtMultiplier, computeQuantity, computeQuantityUi, computeRateLimitWindowRemainingCapacity, computeRateLimiterRemainingCapacity, computeRemainingCapacity, computeStakedBankMultipliers, computeUtilizationRate, computeV0TxSize, computeVenueAvailableLiquidity, configureScopeOracleIx, convertVoteAccCoeffsToBankCoeffs, createActiveEmodePairFromPairs, createEmptyBalance, decodeAccountRaw, decodeBankRaw, decodeInstruction, decodeMultiplierAccount, decompileV0Transaction, deriveBankEmissionsAuth, deriveBankEmissionsVault, deriveBankFeeVault, deriveBankFeeVaultAuthority, deriveBankInsuranceVault, deriveBankInsuranceVaultAuthority, deriveBankLiquidityVault, deriveBankLiquidityVaultAuthority, deriveFeeState, deriveMarginfiAccount, deriveOrderPda, deriveRebalanceFeePool, deserializeInstruction, deserializeLut, deserializeSwapEngineRequest, deserializeSwapEngineResult, dtoToBalance, dtoToBank, dtoToBankConfig, dtoToBankConfigRaw, dtoToBankMetadata, dtoToBankMetadataMap, dtoToBankRateLimiter, dtoToBankRateLimiterRaw, dtoToBankRaw, dtoToEmodeSettings, dtoToEmodeSettingsRaw, dtoToGroup, dtoToHealthCache, dtoToInterestRateConfig, dtoToMarginfiAccount, dtoToOraclePrice, dtoToValidatorStakeGroup, emodeSettingsRawToDto, exceedsCostlyPositionLimit, extractPythOracleKeys, fetchBank, fetchBankIntegrationMetadata, fetchGammaLpVault, fetchGammaWithdrawReceipt, fetchMarginfiAccountActiveBalancesForBank, fetchMarginfiAccountAddresses, fetchMarginfiAccountAddressesHoldingBank, fetchMarginfiAccountData, fetchMultipleBanks, fetchMultiplierAccountStates, fetchMultiplierAccountStatesFromAPI, fetchNativeStakeAccounts, fetchOracleData, fetchOracleMultipliers, fetchOracleMultipliersFromAPI, fetchOracleMultipliersFromChain, fetchOrderFees, fetchOrdersForAccount, fetchProgramForMints, fetchPythOracleData, fetchPythOraclePricesFromAPI, fetchPythOraclePricesFromChain, fetchScopeOracleData, fetchScopeOraclePricesFromAPI, fetchScopeOraclePricesFromChain, fetchStakeAccount, fetchStakePoolActiveStates, fetchStakePoolMev, findRandomAvailableAccountIndex, fitsInOneTransaction, freezeBankConfigIx, generateDummyAccount, getAccountKeys, getActiveAccountFlags, getActiveBalances, getActiveEmodeEntryFlags, getActiveEmodeFlags, getActiveHealthCacheFlags, getAssetQuantity, getAssetShares, getBalance, getBalanceUsdValueWithPriceBias, getBankVaultAuthority, getBankVaultSeeds, getBirdeyeFallbackPricesByFeedId, getBirdeyePricesForMints, getConfig, getDriftCTokenMultiplier, getDriftMetadata, getDriftStatesDto, getEffectiveDepositLimit, getEmodePairs, getExactOutEstimate, getFallbackPricesByFeedId, getFallbackPricesForMints, getHealthCacheStatusDescription, getHealthSimulationTransactions, getJupLendFTokenMultiplier, getJupLendMetadata, getJupLendStatesDto, getJupiterReferralFeeAccount, getJupiterSwapIxsForFlashloan, getKaminoCTokenMultiplier, getKaminoMetadata, getKaminoStatesDto, getLiabilityQuantity, getLiabilityShares, getOracleMultiplierBankInput, getOracleSourceFromBank, getOracleSourceFromOracleSetup, getOracleSourceNameFromKey, getPrice, getPriceWithConfidence, getStakedBankMetadataMap, getSwapAdapter, getSwapIxsForFlashloan, getTitanExactOutEstimate, getTitanSwapIxsForFlashloan, getTotalAccountKeys, getTotalAssetQuantity, getTotalLiabilityQuantity, getTxSize, getValidatorVoteAccountByBank, getWritableAccountKeys, groupToDto, hasAccountFlag, hasEmodeEntryFlag, hasEmodeFlag, hasHealthCacheFlag, healthCacheToDto, isBorrowLimitActive, isBridgeConflictError, isCostlyBank, isDecomposableSwapError, isDepositIx, isDepositLimitActive, isFlashloan, isGroupRateLimiterEnabled, isStandardBorrowable, isStandardDepositable, isV0Tx, isWholePosition, makeAccountTransferToNewAccountTx, makeAddPermissionlessStakedBankIx, makeBeginFlashLoanIx, makeBorrowIx, makeBorrowTx, makeBridgedLoopTx, makeBridgedSwapCollateralTx, makeBridgedSwapDebtTx, makeBulkRepayTx, makeBulkWithdrawTx, makeBundleTipIx, makeCloseMarginfiAccountIx, makeCloseMarginfiAccountTx, makeCloseOrderIx, makeCloseOrderTx, makeCreateAccountIxWithProjection, makeCreateAccountTxWithProjection, makeCreateMarginfiAccountIx, makeCreateMarginfiAccountTx, makeDepositIx, makeDepositTx, makeDriftDepositIx, makeDriftDepositTx, makeDriftWithdrawIx, makeDriftWithdrawTx, makeEndFlashLoanIx, makeFlashLoanTx, makeJuplendDepositIx, makeJuplendDepositTx, makeJuplendWithdrawIx, makeJuplendWithdrawTx, makeKaminoDepositIx, makeKaminoDepositTx, makeKaminoWithdrawIx, makeKaminoWithdrawTx, makeLoopTx, makeMergeStakeAccountsTx, makeMintStakedLstIx, makeMintStakedLstTx, makePlaceOrderIx, makePlaceOrderTx, makePoolAddBankIx, makePoolConfigureBankGovIx, makePoolConfigureBankIx, makePreludeTxs, makePremiumRefreshIxs, makePriorityFeeIx, makePriorityFeeMicroIx, makePulseHealthIx, makeRedeemStakedLstIx, makeRedeemStakedLstTx, makeRefreshIntegrationBanksIxs, makeRefreshKaminoBanksIxs, makeRepayIx, makeRepayTx, makeRepayWithCollatTx, makeRollPtTx, makeSetupIx, makeSwapCollateralTx, makeSwapDebtTx, makeTransferPositionsTx, makeTxPriorityIx, makeUnwrapSolIx, makeUpdateDriftMarketIxs, makeUpdateJupLendRateIxs, makeUpdateOrderTx, makeVaultCompleteWithdrawalIx, makeVaultCompleteWithdrawalTx, makeVaultDepositIx, makeVaultDepositTx, makeVaultDepositWithSwapTx, makeVaultWithdrawIx, makeVaultWithdrawTx, makeVersionedTransaction, makeWithdrawIx, makeWithdrawTx, makeWrapSolIxs, mapJupiterQuoteToSwapQuoteResult, mapPythBanksToOraclePrices, marginfiAccountToDto, maxSlippageU32ToPercent, mergeBridgeQuotes, mergeBridgeQuotesDebt, mergeBridgeQuotesLoop, nativeToUi, needsPremiumRefresh, oraclePriceToDto, parseBalanceRaw, parseBankConfigRaw, parseBankRateLimiterRaw, parseBankRaw, parseEmodeSettingsRaw, parseEmodeTag, parseHealthCacheRaw, parseMarginfiAccountRaw, parseOperationalState, parseOracleSetup, parseOrderRaw, parseOraclePriceData as parsePriceInfo, parseRiskTier, parseRpcPythPriceData, patchDepositAmount, percentToMaxSlippageU32, rateFromU32, requireBank, requireTokenProgram, resolveBridgeCandidateBanks, resolveOrderLegs, resolvePinnedSwapRoute, resolveTokenProgramForMint, resolveVaultTokenProgram, runSwapEngine, selectLutsForAccountAction, selectLutsForBanks, selectSwapBridges, serializeBankConfigOpt, serializeInstruction, serializeInterestRateConfig, serializeLut, serializeOperationalState, serializeOracleSetup, serializeOracleSetupToIndex, serializeRiskTier, serializeSwapEngineRequest, serializeSwapEngineResult, setOraclePriceIx, sharedBridgeLegContext, shortenAddress, simulateAccountHealthCache, simulateAccountHealthCacheWithFallback, simulateBundle, splitInstructionsToFitTransactions, swapEngineProvidersFromOpts, swapEngineQuoteFieldsFromOpts, toBankConfigDto, toBankDto, toBankRateLimiterDto, toBigNumber, toEmodeSettingsDto, toInterestRateConfigDto, toJupiterConfig, toNumber, tryBridgeCandidates, uiToNative, uiToNativeBigNumber, validatorStakeGroupToDto, withKaminoReserveEmergency, wrappedI80F48toBigNumber };
|