@0dotxyz/p0-ts-sdk 2.5.5-alpha.4 → 2.5.5-alpha.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -3128,47 +3128,142 @@ declare function isDepositIx(ix: TransactionInstruction): boolean;
3128
3128
  declare function patchDepositAmount(ix: TransactionInstruction, amountNative: BN): void;
3129
3129
 
3130
3130
  /**
3131
- * Which side of a bridged (double-hop) swap touches the bridge token:
3132
- * - `deposit` — the bridge is *deposited* (e.g. collateral-swap: source → bridge → dest).
3133
- * - `borrow` — the bridge is *borrowed* (e.g. debt-swap / loop: borrow bridge, then repay it).
3134
- */
3135
- type BridgeSide = "deposit" | "borrow";
3136
- /**
3137
- * Whether routing through `bankPk` as the bridge would conflict with an existing position on the
3138
- * account. marginfi forbids holding an asset and a liability on the same bank, so the conflict is
3139
- * always *opposite-side*: a deposit-side bridge conflicts with an existing liability there, a
3140
- * borrow-side bridge with an existing asset. Same-side positions are fine (partial-withdraw /
3141
- * exact-repay handle them).
3142
- */
3143
- declare function accountConflictsWithBridge(account: MarginfiAccountType, bankPk: PublicKey, side: BridgeSide): boolean;
3144
- interface ResolveBridgeBanksParams {
3145
- /** Candidate bridge mints in priority order (caller-owned product policy). */
3146
- orderedBridgeMints: PublicKey[];
3147
- /** Banks to resolve mints against (e.g. all of the group's banks). */
3148
- banks: BankType[];
3149
- /** The account the bridge legs run against (for the conflict check). */
3131
+ * Bridge-token candidate filtering for bridged (double-hop) swaps.
3132
+ *
3133
+ * A **bridge token** is NOT a cross-chain bridge: it is the high-liquidity intermediate token
3134
+ * (e.g. USDC or wSOL) that a swap `A → C` is routed *through* — as `A → bridge` + `bridge → C` in
3135
+ * one atomic bundle — when the direct swap can't fit a single transaction or has no route. This
3136
+ * module owns the mechanical filtering of bridge-token candidates; ordering (product policy) and
3137
+ * the one-call builders live in `bridge-routing.utils.ts` and the `makeBridged*Tx` actions.
3138
+ */
3139
+ /**
3140
+ * The side of the marginfi account the bridge token sits on while the bridged bundle executes:
3141
+ * - `deposit` — the bridge token is held as *collateral* (a collateral-swap deposits it between
3142
+ * the two legs: withdraw source → deposit bridge, then withdraw bridge → deposit destination).
3143
+ * - `borrow` — the bridge token is held as *debt* (a debt-swap or loop borrows it in the first
3144
+ * leg and repays it exactly in the second).
3145
+ */
3146
+ type BridgeTokenSide = "deposit" | "borrow";
3147
+ /**
3148
+ * Whether routing through `bridgeBankPk` as the bridge token would conflict with a position the
3149
+ * account already holds on that bank. marginfi forbids holding an asset and a liability on the
3150
+ * same bank, so the conflict is always *opposite-side*: a deposit-side bridge conflicts with an
3151
+ * existing liability there, a borrow-side bridge with an existing asset. Same-side positions are
3152
+ * fine (partial-withdraw / exact-repay handle them).
3153
+ */
3154
+ declare function accountConflictsWithBridgeBank(marginfiAccount: MarginfiAccountType, bridgeBankPk: PublicKey, bridgeTokenSide: BridgeTokenSide): boolean;
3155
+ interface ResolveBridgeCandidateBanksParams {
3156
+ /** Candidate bridge-token mints, highest priority first (product policy — see
3157
+ * `bridge-routing.utils.ts` for the default ordering and the per-call override). */
3158
+ prioritizedBridgeCandidateMints: PublicKey[];
3159
+ /** Banks to resolve the candidate mints against — typically all banks in the marginfi group. */
3160
+ groupBanks: BankType[];
3161
+ /** The account the bridged legs run against (for the conflict check). */
3150
3162
  marginfiAccount: MarginfiAccountType;
3151
- /** Which side the bridge is used on — picks the standard-bank filter and the conflict rule. */
3152
- side: BridgeSide;
3163
+ /** Which side the bridge token is held on — picks the standard-bank filter and the conflict
3164
+ * rule. */
3165
+ bridgeTokenSide: BridgeTokenSide;
3153
3166
  }
3154
3167
  /**
3155
- * Resolve an ordered list of candidate bridge *mints* into usable bridge *banks*, partitioned into
3156
- * those safe to route through and those that conflict with an existing position.
3168
+ * Resolve prioritized bridge-token candidate *mints* into candidate *banks*, partitioned into
3169
+ * those safe to route through and those blocked by an existing account position.
3157
3170
  *
3158
3171
  * For each mint (deduped, in priority order) it picks the standard bank that fits the side
3159
3172
  * ({@link isStandardBorrowable} for `borrow`, {@link isStandardDepositable} for `deposit`) — this
3160
3173
  * skips integration wrappers (`6200`) and `ReduceOnly` banks (`6017`) — then splits by
3161
- * {@link accountConflictsWithBridge}. The caller supplies the ordered mint list (product policy);
3162
- * this owns only the mechanical filtering.
3174
+ * {@link accountConflictsWithBridgeBank}. The caller supplies the prioritized mint list (product
3175
+ * policy); this owns only the mechanical filtering.
3163
3176
  *
3164
- * @returns `bridges` (usable, in priority order) and `conflicts` (resolvable but blocked by an
3165
- * opposite-side position — useful for surfacing a "close that position" message).
3177
+ * @returns `usableBridgeBanks` (safe to route through, in priority order) and
3178
+ * `conflictingBridgeBanks` (resolvable but blocked by an opposite-side position — useful for
3179
+ * surfacing a "close that position" message).
3166
3180
  */
3167
- declare function resolveBridgeBanks(params: ResolveBridgeBanksParams): {
3168
- bridges: BankType[];
3169
- conflicts: BankType[];
3181
+ declare function resolveBridgeCandidateBanks(params: ResolveBridgeCandidateBanksParams): {
3182
+ usableBridgeBanks: BankType[];
3183
+ conflictingBridgeBanks: BankType[];
3170
3184
  };
3171
3185
 
3186
+ /**
3187
+ * Shared support for the bridged (double-hop) one-call builders.
3188
+ *
3189
+ * A **bridge token** is NOT a cross-chain bridge: it is the high-liquidity intermediate token
3190
+ * (e.g. USDC or wSOL) a swap is routed *through*. When a direct collateral-swap / debt-swap /
3191
+ * loop `A → C` can't be built — the swap doesn't fit one tx (size / account-locks) or has no
3192
+ * route — it can still succeed decomposed into `A → bridge` + `bridge → C`, submitted as ONE
3193
+ * atomic Jito bundle. The per-flow builders live next to their direct builders
3194
+ * (`makeBridgedLoopTx` in `../actions/loop.ts`, `makeBridgedSwapCollateralTx` in
3195
+ * `../actions/swap-collateral.ts`, `makeBridgedSwapDebtTx` in `../actions/swap-debt.ts`); this
3196
+ * module owns the flow-agnostic routing support: candidate ordering/selection, the
3197
+ * candidate-iteration loop (abort / skip-on-failure / conflict surfacing), token-program
3198
+ * resolution, and the shared leg context.
3199
+ *
3200
+ * Candidate *ordering* is product policy: it defaults to {@link DEFAULT_BRIDGE_MINTS} and can be
3201
+ * overridden per call via {@link BridgeOpts.bridgeCandidateMints} (e.g. a correlation-aware
3202
+ * ordering). Candidate *filtering* (standard-bank resolution, opposite-side conflicts) is
3203
+ * mechanical and lives in {@link resolveBridgeCandidateBanks}.
3204
+ */
3205
+ /** Default bridge-token candidates, most-liquid first. */
3206
+ declare const DEFAULT_BRIDGE_MINTS: PublicKey[];
3207
+ /** Per-call knobs for the bridged fallback of the `makeBridged*Tx` builders. */
3208
+ interface BridgeOpts {
3209
+ /**
3210
+ * Candidate bridge-token mints, highest priority first. Defaults to
3211
+ * {@link DEFAULT_BRIDGE_MINTS} (USDC, wSOL, USDT). Source/destination mints are always skipped.
3212
+ */
3213
+ bridgeCandidateMints?: PublicKey[];
3214
+ /** Known token programs by mint (base58) — skips the per-mint RPC owner lookup. */
3215
+ tokenProgramByMint?: Map<string, PublicKey>;
3216
+ /** Override the bundle-size ceiling (see `composeBridgedSwap`). */
3217
+ maxBundleTxs?: number;
3218
+ abortSignal?: AbortSignal;
3219
+ }
3220
+ /** Result of a `makeBridged*Tx` builder — the direct build's result, or the bridged bundle. */
3221
+ interface BridgedTxResult {
3222
+ transactions: SolanaTransaction[];
3223
+ /** Index of the tx that completes the action (the direct action tx, or the bundle's last leg). */
3224
+ actionTxIndex: number;
3225
+ quoteResponse: SwapQuoteResult | undefined;
3226
+ /** The bridge token's mint — set only when the bridged double-hop path was used. */
3227
+ bridgeMint?: PublicKey;
3228
+ }
3229
+ /** A mint's token program: the cache (seedable by the caller), else the mint account's owner. */
3230
+ declare function resolveTokenProgramForMint(mint: PublicKey, connection: Connection, tokenProgramCacheByMint: Map<string, PublicKey>): Promise<PublicKey>;
3231
+ /**
3232
+ * Bridge-token candidate banks for routing `source → bridge → destination`, in priority order,
3233
+ * partitioned into usable and conflict-blocked. Source/destination mints are excluded from the
3234
+ * candidates (a token can't bridge itself).
3235
+ */
3236
+ declare function selectSwapBridges(args: {
3237
+ sourceMint: PublicKey;
3238
+ destinationMint: PublicKey;
3239
+ bankMap: Map<string, BankType>;
3240
+ marginfiAccount: MarginfiAccountType;
3241
+ bridgeTokenSide: BridgeTokenSide;
3242
+ bridgeCandidateMints?: PublicKey[];
3243
+ }): {
3244
+ usableBridgeBanks: BankType[];
3245
+ conflictingBridgeBanks: BankType[];
3246
+ };
3247
+ /**
3248
+ * Try each usable bridge-token candidate in priority order until one composes a bundle. A
3249
+ * `buildBundleThroughBridge` that returns null or throws (build failure) moves on to the next
3250
+ * candidate; abort errors always propagate. When NO candidate is usable but some were dropped
3251
+ * solely for an existing opposite-side position, throws
3252
+ * `TransactionBuildingError.bridgeConflict` (the caller-facing "close that position" signal);
3253
+ * otherwise resolves null and the caller rethrows the direct build's error.
3254
+ */
3255
+ declare function tryBridgeCandidates(args: {
3256
+ usableBridgeBanks: BankType[];
3257
+ conflictingBridgeBanks: BankType[];
3258
+ bridgeTokenSide: BridgeTokenSide;
3259
+ abortSignal?: AbortSignal;
3260
+ /** Build the two-leg bundle through one candidate bank; null = didn't work, try the next. */
3261
+ buildBundleThroughBridge: (bridgeBank: BankType) => Promise<BridgedTxResult | null>;
3262
+ }): Promise<BridgedTxResult | null>;
3263
+ /** The flow context shared verbatim by both legs of every bridged build. */
3264
+ type SharedBridgeLegContext = Pick<MakeSwapDebtTxParams, "program" | "marginfiAccount" | "connection" | "bankMap" | "oraclePrices" | "bankMetadataMap" | "assetShareValueMultiplierByBank" | "swapOpts" | "addressLookupTableAccounts" | "overrideInferAccounts" | "crossbarUrl" | "swapEngineRunner">;
3265
+ declare function sharedBridgeLegContext(params: SharedBridgeLegContext): SharedBridgeLegContext;
3266
+
3172
3267
  /**
3173
3268
  * Creates an instruction to close a Marginfi account.
3174
3269
  *
@@ -3527,6 +3622,19 @@ declare function makeLoopTx(params: MakeLoopTxParams): Promise<{
3527
3622
  actionTxIndex: number;
3528
3623
  quoteResponse: SwapQuoteResult | undefined;
3529
3624
  }>;
3625
+ interface MakeBridgedLoopTxParams extends MakeLoopTxParams {
3626
+ bridgeOpts?: BridgeOpts;
3627
+ }
3628
+ /**
3629
+ * {@link makeLoopTx} with a transparent bridged fallback: if the direct loop's borrow→deposit swap
3630
+ * can't fit one tx or has no route, loop P borrowing a value-equivalent amount of a bridge token,
3631
+ * then debt-swap the bridge debt → X, as one atomic bundle.
3632
+ *
3633
+ * Intended for existing accounts — a fresh account's loop has a minimal footprint and fits the
3634
+ * direct path, so callers creating the account in the same flow should call {@link makeLoopTx}
3635
+ * directly.
3636
+ */
3637
+ declare function makeBridgedLoopTx(params: MakeBridgedLoopTxParams): Promise<BridgedTxResult>;
3530
3638
 
3531
3639
  /**
3532
3640
  * Creates a repay instruction for repaying borrowed assets to a Marginfi bank.
@@ -3616,6 +3724,15 @@ declare function makeSwapCollateralTx(params: MakeSwapCollateralTxParams): Promi
3616
3724
  actionTxIndex: number;
3617
3725
  quoteResponse: SwapQuoteResult | undefined;
3618
3726
  }>;
3727
+ interface MakeBridgedSwapCollateralTxParams extends MakeSwapCollateralTxParams {
3728
+ bridgeOpts?: BridgeOpts;
3729
+ }
3730
+ /**
3731
+ * {@link makeSwapCollateralTx} with a transparent bridged fallback: if the direct swap `A → C`
3732
+ * can't fit one tx or has no route, decompose it into `A → bridge` + `bridge → C` through a
3733
+ * high-liquidity bridge collateral, composed into one atomic bundle.
3734
+ */
3735
+ declare function makeBridgedSwapCollateralTx(params: MakeBridgedSwapCollateralTxParams): Promise<BridgedTxResult>;
3619
3736
 
3620
3737
  /**
3621
3738
  * Creates transactions to swap one debt position to another using a flash loan.
@@ -3641,6 +3758,17 @@ declare function makeSwapDebtTx(params: MakeSwapDebtTxParams): Promise<{
3641
3758
  actionTxIndex: number;
3642
3759
  quoteResponse: SwapQuoteResult | undefined;
3643
3760
  }>;
3761
+ interface MakeBridgedSwapDebtTxParams extends MakeSwapDebtTxParams {
3762
+ bridgeOpts?: BridgeOpts;
3763
+ }
3764
+ /**
3765
+ * {@link makeSwapDebtTx} with a transparent bridged fallback: if the direct debt swap `A → C`
3766
+ * (repay A by borrowing C) can't fit one tx or has no route, decompose it into `A → bridge` +
3767
+ * `bridge → C` through a borrowable bridge debt, as one atomic bundle. The first leg repays A by
3768
+ * borrowing the bridge; the second leg repays exactly the bridge the first leg borrowed and
3769
+ * borrows C.
3770
+ */
3771
+ declare function makeBridgedSwapDebtTx(params: MakeBridgedSwapDebtTxParams): Promise<BridgedTxResult>;
3644
3772
 
3645
3773
  /**
3646
3774
  * Roll a matured Exponent PT collateral position into its next-maturity PT, so the **full
@@ -4881,7 +5009,8 @@ declare enum TransactionBuildingErrorCode {
4881
5009
  SWAP_QUOTE_FAILED = "SWAP_QUOTE_FAILED",
4882
5010
  TRANSFER_POSITIONS_INVALID_SELECTION = "TRANSFER_POSITIONS_INVALID_SELECTION",
4883
5011
  TRANSFER_POSITIONS_UNSUPPORTED_BANK = "TRANSFER_POSITIONS_UNSUPPORTED_BANK",
4884
- TRANSFER_POSITIONS_UNSPLITTABLE = "TRANSFER_POSITIONS_UNSPLITTABLE"
5012
+ TRANSFER_POSITIONS_UNSPLITTABLE = "TRANSFER_POSITIONS_UNSPLITTABLE",
5013
+ BRIDGE_CONFLICT = "BRIDGE_CONFLICT"
4885
5014
  }
4886
5015
  /**
4887
5016
  * Typed details for each error code
@@ -4955,6 +5084,16 @@ interface TransactionBuildingErrorDetails {
4955
5084
  sizeBytes?: number;
4956
5085
  accountCount?: number;
4957
5086
  };
5087
+ [TransactionBuildingErrorCode.BRIDGE_CONFLICT]: {
5088
+ /** Bridge-token candidate banks blocked by an existing opposite-side account position. */
5089
+ conflictingBanks: Array<{
5090
+ bankAddress: string;
5091
+ mint: string;
5092
+ symbol?: string;
5093
+ }>;
5094
+ /** Whether the bridge token would have been held as collateral ("deposit") or debt ("borrow"). */
5095
+ bridgeTokenSide: "deposit" | "borrow";
5096
+ };
4958
5097
  }
4959
5098
  /**
4960
5099
  * Error thrown during transaction building in the SDK.
@@ -5018,6 +5157,16 @@ declare class TransactionBuildingError<T extends TransactionBuildingErrorCode =
5018
5157
  * Retry with fewer positions in the selection.
5019
5158
  */
5020
5159
  static transferPositionsUnsplittable(reason: string, sizeBytes?: number, accountCount?: number): TransactionBuildingError<TransactionBuildingErrorCode.TRANSFER_POSITIONS_UNSPLITTABLE>;
5160
+ /**
5161
+ * A bridged (double-hop) swap could not route because every bridge-token candidate bank
5162
+ * conflicts with an existing opposite-side position on the account (marginfi forbids holding an
5163
+ * asset and a liability on the same bank).
5164
+ */
5165
+ static bridgeConflict(conflictingBanks: Array<{
5166
+ bankAddress: string;
5167
+ mint: string;
5168
+ symbol?: string;
5169
+ }>, bridgeTokenSide: "deposit" | "borrow"): TransactionBuildingError<TransactionBuildingErrorCode.BRIDGE_CONFLICT>;
5021
5170
  /**
5022
5171
  * Generic escape hatch for custom errors
5023
5172
  */
@@ -5034,6 +5183,13 @@ declare class TransactionBuildingError<T extends TransactionBuildingErrorCode =
5034
5183
  * (which would otherwise throw a raw serialization `RangeError`) as `SWAP_SIZE_EXCEEDED_LOOP`.
5035
5184
  */
5036
5185
  declare function isDecomposableSwapError(e: unknown): e is TransactionBuildingError;
5186
+ /**
5187
+ * Whether a build failure is a bridged-swap conflict: the direct build failed AND every
5188
+ * bridge-token candidate was blocked by an existing opposite-side position on the account.
5189
+ * Narrows to the typed details (`conflictingBanks`, `bridgeTokenSide`) so callers can surface a
5190
+ * "close that position or pick a different pair" message.
5191
+ */
5192
+ declare function isBridgeConflictError(e: unknown): e is TransactionBuildingError<TransactionBuildingErrorCode.BRIDGE_CONFLICT>;
5037
5193
 
5038
5194
  declare const PDA_BANK_LIQUIDITY_VAULT_AUTH_SEED: Buffer<ArrayBuffer>;
5039
5195
  declare const PDA_BANK_INSURANCE_VAULT_AUTH_SEED: Buffer<ArrayBuffer>;
@@ -5217,6 +5373,7 @@ declare const PRIORITY_TX_SIZE: number;
5217
5373
  declare const WSOL_MINT: PublicKey;
5218
5374
  declare const LST_MINT: PublicKey;
5219
5375
  declare const USDC_MINT: PublicKey;
5376
+ declare const USDT_MINT: PublicKey;
5220
5377
  declare const USDC_DECIMALS = 6;
5221
5378
 
5222
5379
  declare class Balance implements BalanceType {
@@ -5714,6 +5871,56 @@ declare class MarginfiAccount implements MarginfiAccountType {
5714
5871
  * @see {@link makeTransferPositionsTx} for detailed implementation
5715
5872
  */
5716
5873
  makeTransferPositionsTx(params: Omit<MakeTransferPositionsTxParams, "marginfiAccount">): Promise<TransferPositionsResult>;
5874
+ /**
5875
+ * Creates a loop transaction with a transparent bridged (double-hop) fallback.
5876
+ *
5877
+ * One call: tries the direct {@link makeLoopTx} first; if its borrow→deposit swap can't fit one
5878
+ * transaction (size / account-locks) or has no route, it loops the deposit asset against a
5879
+ * value-equivalent borrow of a high-liquidity bridge token, then debt-swaps the bridge debt to
5880
+ * the requested borrow asset — both legs composed into ONE atomic Jito bundle.
5881
+ *
5882
+ * Bridge candidates default to USDC → wSOL → USDT and can be reordered/overridden via
5883
+ * `params.bridgeOpts.bridgeCandidateMints`; `bridgeOpts` also accepts known token programs (skips RPC
5884
+ * lookups), a bundle-size ceiling, and an abort signal. `result.bridgeMint` is set only when the
5885
+ * bridged path was used.
5886
+ *
5887
+ * Intended for existing accounts — a fresh account's loop fits the direct path, so flows that
5888
+ * create the account in the same action should call {@link makeLoopTx} directly.
5889
+ *
5890
+ * @param params - Loop transaction parameters plus optional `bridgeOpts`
5891
+ * @returns Object containing transactions, action index, merged swap quote, and the bridge mint
5892
+ *
5893
+ * @see {@link makeBridgedLoopTx} for detailed implementation
5894
+ */
5895
+ makeBridgedLoopTx(params: Omit<MakeBridgedLoopTxParams, "marginfiAccount">): Promise<BridgedTxResult>;
5896
+ /**
5897
+ * Creates a collateral-swap transaction with a transparent bridged (double-hop) fallback.
5898
+ *
5899
+ * One call: tries the direct {@link makeSwapCollateralTx} first; if the swap `A → C` can't fit
5900
+ * one transaction or has no route, it decomposes into `A → bridge` + `bridge → C` through a
5901
+ * high-liquidity bridge collateral, both legs composed into ONE atomic Jito bundle. See
5902
+ * {@link makeBridgedLoopTx} for the `bridgeOpts` knobs.
5903
+ *
5904
+ * @param params - Swap collateral transaction parameters plus optional `bridgeOpts`
5905
+ * @returns Object containing transactions, action index, merged swap quote, and the bridge mint
5906
+ *
5907
+ * @see {@link makeBridgedSwapCollateralTx} for detailed implementation
5908
+ */
5909
+ makeBridgedSwapCollateralTx(params: Omit<MakeBridgedSwapCollateralTxParams, "marginfiAccount">): Promise<BridgedTxResult>;
5910
+ /**
5911
+ * Creates a debt-swap transaction with a transparent bridged (double-hop) fallback.
5912
+ *
5913
+ * One call: tries the direct {@link makeSwapDebtTx} first; if the swap `A → C` can't fit one
5914
+ * transaction or has no route, the first leg repays A by borrowing a bridge token and the second
5915
+ * leg repays exactly that bridge debt while borrowing C — both legs composed into ONE atomic
5916
+ * Jito bundle. See {@link makeBridgedLoopTx} for the `bridgeOpts` knobs.
5917
+ *
5918
+ * @param params - Swap debt transaction parameters plus optional `bridgeOpts`
5919
+ * @returns Object containing transactions, action index, merged swap quote, and the bridge mint
5920
+ *
5921
+ * @see {@link makeBridgedSwapDebtTx} for detailed implementation
5922
+ */
5923
+ makeBridgedSwapDebtTx(params: Omit<MakeBridgedSwapDebtTxParams, "marginfiAccount">): Promise<BridgedTxResult>;
5717
5924
  /**
5718
5925
  * Creates a transaction to repay debt using collateral.
5719
5926
  *
@@ -6251,6 +6458,52 @@ declare class MarginfiAccountWrapper {
6251
6458
  actionTxIndex: number;
6252
6459
  quoteResponse: SwapQuoteResult | undefined;
6253
6460
  }>;
6461
+ /**
6462
+ * Creates a loop (leverage) transaction with a transparent bridged (double-hop) fallback and
6463
+ * auto-injected client data.
6464
+ *
6465
+ * One call: tries the direct {@link makeLoopTx} first; if its borrow→deposit swap can't fit one
6466
+ * transaction or has no route, it loops the deposit asset against a value-equivalent borrow of a
6467
+ * bridge token (USDC/wSOL/USDT by default, override via `bridgeOpts.bridgeCandidateMints`) and
6468
+ * debt-swaps that bridge debt to the requested borrow asset — one atomic Jito bundle.
6469
+ * `result.bridgeMint` is set only when the bridged path was used.
6470
+ *
6471
+ * Auto-injects: program, marginfiAccount, bankMap, oraclePrices, bankMetadataMap,
6472
+ * addressLookupTables, assetShareValueMultiplierByBank
6473
+ *
6474
+ * @param params - Loop parameters (user provides: connection, depositOpts, borrowOpts, swapOpts, bridgeOpts?, etc.)
6475
+ */
6476
+ makeBridgedLoopTx(params: Omit<MakeBridgedLoopTxParams, "program" | "marginfiAccount" | "bankMap" | "oraclePrices" | "bankMetadataMap" | "addressLookupTableAccounts" | "assetShareValueMultiplierByBank">): Promise<BridgedTxResult>;
6477
+ /**
6478
+ * Creates a collateral-swap transaction with a transparent bridged (double-hop) fallback and
6479
+ * auto-injected client data.
6480
+ *
6481
+ * One call: tries the direct {@link makeSwapCollateralTx} first; if the swap `A → C` can't fit
6482
+ * one transaction or has no route, it decomposes into `A → bridge` + `bridge → C` through a
6483
+ * bridge token, composed as one atomic Jito bundle. `result.bridgeMint` is set only when the
6484
+ * bridged path was used.
6485
+ *
6486
+ * Auto-injects: program, marginfiAccount, bankMap, oraclePrices, bankMetadataMap,
6487
+ * addressLookupTables, assetShareValueMultiplierByBank
6488
+ *
6489
+ * @param params - Swap collateral parameters (user provides: connection, withdrawOpts, depositOpts, swapOpts, bridgeOpts?, etc.)
6490
+ */
6491
+ makeBridgedSwapCollateralTx(params: Omit<MakeBridgedSwapCollateralTxParams, "program" | "marginfiAccount" | "bankMap" | "oraclePrices" | "bankMetadataMap" | "addressLookupTableAccounts" | "assetShareValueMultiplierByBank">): Promise<BridgedTxResult>;
6492
+ /**
6493
+ * Creates a debt-swap transaction with a transparent bridged (double-hop) fallback and
6494
+ * auto-injected client data.
6495
+ *
6496
+ * One call: tries the direct {@link makeSwapDebtTx} first; if the swap `A → C` can't fit one
6497
+ * transaction or has no route, the first leg repays A by borrowing a bridge token and the second
6498
+ * leg repays exactly that bridge debt while borrowing C — one atomic Jito bundle.
6499
+ * `result.bridgeMint` is set only when the bridged path was used.
6500
+ *
6501
+ * Auto-injects: program, marginfiAccount, bankMap, oraclePrices, bankMetadataMap,
6502
+ * addressLookupTables, assetShareValueMultiplierByBank
6503
+ *
6504
+ * @param params - Swap debt parameters (user provides: connection, repayOpts, borrowOpts, swapOpts, bridgeOpts?, etc.)
6505
+ */
6506
+ makeBridgedSwapDebtTx(params: Omit<MakeBridgedSwapDebtTxParams, "program" | "marginfiAccount" | "bankMap" | "oraclePrices" | "bankMetadataMap" | "addressLookupTableAccounts" | "assetShareValueMultiplierByBank">): Promise<BridgedTxResult>;
6254
6507
  /**
6255
6508
  * Creates a deposit transaction with auto-injected client data.
6256
6509
  *
@@ -6455,4 +6708,4 @@ declare class MarginfiAccountWrapper {
6455
6708
  getClient(): Project0Client;
6456
6709
  }
6457
6710
 
6458
- 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 BridgeSide, type BridgedSwapLeg, 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 ComputeMaxWithdrawForBankParams, type ComputeNetApyParams, ConfigRaw, type CrankCombination, type CrankabilityResult, DEFAULT_CROSSBAR_URL, DEFAULT_FALLBACK_CROSSBAR_URL, DEFAULT_ORACLE_MAX_AGE, DEFAULT_REPAY_ALL_EXTRA_BUFFER_BPS, DISABLED_FLAG, type DriftBankInput, type DriftMetadata, type DriftStateByBank, type DriftStateJsonByBank, EMPTY_HEALTH_CACHE, 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 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 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, OperationalState, OperationalStateRaw, 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, PRIORITY_TX_SIZE, PYTH_PRICE_CONF_INTERVALS, PYTH_PUSH_ORACLE_ID, PYTH_SPONSORED_SHARD_ID, type PanicStateCache, PriceBias, PriceWithConfidence, Project0Client, Project0Config, Project0ConfigRaw, type ProviderSwapRoute, type PythOracleServiceOpts, type RateLimitWindowDto, type RateLimitWindowRawDto, type RatePointDto, type ResolveBridgeBanksParams, RiskTier, RiskTierRaw, type RollPtOpts, SINGLE_POOL_PROGRAM_ID, STAKED_ORACLE_DISABLED_FLAG, STAKED_ORACLE_USES_ONRAMP_FLAG, STAKE_CONFIG_ID, STAKE_PROGRAM_ID, SWAP_ADAPTERS, SWB_PRICE_CONF_INTERVALS, SYSTEM_PROGRAM_ID, SYSVAR_CLOCK_ID, SYSVAR_RENT_ID, SYSVAR_STAKE_HISTORY_ID, type SerializedInstruction, type SerializedLut, type SerializedSwapEngineRequest, type SerializedSwapEngineResult, type SerializedTxFootprint, type SimulateAccountHealthCacheWithFallbackParams, type SimulationResultRaw, type SmartCrankParams, type SmartCrankResult, 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, type SwbOracleAiDataByKey, type SwbOracleServiceOpts, TRANSFER_ACCOUNT_AUTHORITY_FLAG, type TitanQuoteParams, TransactionArenaKeyMap, type TransactionBuilderResult, TransactionBuildingError, TransactionBuildingErrorCode, type TransactionBuildingErrorDetails, TransactionConfigMap, TransactionType, type TransferPositionSide, type TransferPositionsResult, type TxFootprint, TypedAmount, USDC_DECIMALS, USDC_MINT, type ValidatorRateData, type ValidatorStakeGroup, type ValidatorStakeGroupDto, WSOL_MINT, type WithdrawWindowCache, WrappedI80F48, ZERO_ORACLE_KEY, accountConflictsWithBridge, accountFlagToBN, addOracleToBanksIx, addTransactionMetadata, adjustPriceComponent, aprToApy, apyToApr, balanceToDto, bankConfigRawToDto, bankConfigToBankConfigRaw, bankMetadataMapToDto, bankMetadataToDto, bankRateLimiterRawToDto, bankRawToDto, bigNumberToWrappedI80F48, bpsToPercentile, buildCollateralLegIxs, calculateApyFromInterest, calculateInterestFromApy, capConfidenceInterval, categorizePythBanks, checkBatchOracleCrankability, checkJupiterFeeAccount, checkMultipleOraclesCrankability, checkTitanFeeAccount, chunkedGetRawMultipleAccountInfoOrdered, chunkedGetRawMultipleAccountInfoOrderedWithNulls, chunkedGetRawMultipleAccountInfos, classifyAndValidate, compileFlashloanPrecheck, composeBridgedSwap, composeRemainingAccounts, computeAccountValue, computeActiveEmodePairs, computeAssetHealthComponent, computeBalanceUsdValue, computeBankBorrowApy, computeBankBorrowCapRemaining, computeBankDepositCapRemaining, computeBankMetrics, computeBankPoolSize, computeBankSupplyApy, computeBankTotalBorrows, computeBankTotalBorrowsUsd, computeBankTotalDeposits, computeBankTotalDepositsUsd, computeBaseInterestRate, computeBorrowEstimateForRepay, computeClaimedEmissions, computeClosePositionTokenAmount, computeEmodeImpacts, computeFlashLoanNonSwapBudget, computeFlashloanSwapConstraints, computeFreeCollateralFromBalances, computeFreeCollateralFromCache, computeHealthAccountMetas, computeHealthCacheStatus, computeHealthCheckAccounts, computeHealthComponentsFromBalances, computeHealthComponentsFromCache, computeInterestRates, computeLiabilityHealthComponent, computeLiquidationPriceForBank, computeLowestEmodeWeights, computeMaxBorrowForBank, computeMaxWithdrawForBank, computeNetApy, computeProjectedActiveBalancesNoCpi, computeProjectedActiveBanksNoCpi, computeQuantity, computeQuantityUi, computeRemainingCapacity, computeSmartCrank, computeStakedBankMultipliers, computeTotalOutstandingEmissions, computeUtilizationRate, computeV0TxSize, convertVoteAccCoeffsToBankCoeffs, createActiveEmodePairFromPairs, createEmptyBalance, decodeAccountRaw, decodeBankRaw, decodeInstruction, decompileV0Transaction, deriveBankEmissionsAuth, deriveBankEmissionsVault, deriveBankFeeVault, deriveBankFeeVaultAuthority, deriveBankInsuranceVault, deriveBankInsuranceVaultAuthority, deriveBankLiquidityVault, deriveBankLiquidityVaultAuthority, deriveFeeState, deriveMarginfiAccount, 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, fetchMarginfiAccountActiveBalancesForBank, fetchMarginfiAccountAddresses, fetchMarginfiAccountAddressesHoldingBank, fetchMarginfiAccountData, fetchMultipleBanks, fetchNativeStakeAccounts, fetchOracleData, fetchProgramForMints, fetchPythOracleData, fetchPythOraclePricesFromAPI, fetchPythOraclePricesFromChain, fetchStakeAccount, fetchStakePoolActiveStates, fetchStakePoolMev, fetchSwbOracleAccountsFromAPI, fetchSwbOracleAccountsFromChain, fetchSwbOracleData, fetchSwbOraclePricesFromAPI, fetchSwbOraclePricesFromCrossbar, findRandomAvailableAccountIndex, freezeBankConfigIx, generateDummyAccount, getAccountKeys, getActiveAccountFlags, getActiveBalances, getActiveEmodeEntryFlags, getActiveEmodeFlags, getActiveHealthCacheFlags, getAssetQuantity, getAssetShares, getBalance, getBalanceUsdValueWithPriceBias, getBankVaultAuthority, getBankVaultSeeds, getBirdeyeFallbackPricesByFeedId, getBirdeyePricesForMints, getConfig, getDriftCTokenMultiplier, getDriftMetadata, getDriftStatesDto, getEmodePairs, getExactOutEstimate, getFallbackPricesByFeedId, getFallbackPricesForMints, getHealthCacheStatusDescription, getHealthSimulationTransactions, getJupLendFTokenMultiplier, getJupLendMetadata, getJupLendStatesDto, getJupiterReferralFeeAccount, getJupiterSwapIxsForFlashloan, getKaminoCTokenMultiplier, getKaminoMetadata, getKaminoStatesDto, getLiabilityQuantity, getLiabilityShares, getOracleSourceFromBank, getOracleSourceFromOracleSetup, getOracleSourceNameFromKey, getPrice, getPriceWithConfidence, getStakedBankMetadataMap, getSwapAdapter, getSwapIxsForFlashloan, getTitanExactOutEstimate, getTitanSwapIxsForFlashloan, getTotalAccountKeys, getTotalAssetQuantity, getTotalLiabilityQuantity, getTxSize, getValidatorVoteAccountByBank, getWritableAccountKeys, groupToDto, hasAccountFlag, hasEmodeEntryFlag, hasEmodeFlag, hasHealthCacheFlag, healthCacheToDto, isDecomposableSwapError, isDepositIx, isFlashloan, isGroupRateLimiterEnabled, isStandardBorrowable, isStandardDepositable, isV0Tx, isWholePosition, makeAccountTransferToNewAccountTx, makeAddPermissionlessStakedBankIx, makeBeginFlashLoanIx, makeBorrowIx, makeBorrowTx, makeBulkRepayTx, makeBulkWithdrawTx, makeBundleTipIx, makeCloseMarginfiAccountIx, makeCloseMarginfiAccountTx, makeCrankSwbFeedIx, 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, makePriorityFeeIx, makePriorityFeeMicroIx, makePulseHealthIx, makeRedeemStakedLstIx, makeRedeemStakedLstTx, makeRefreshIntegrationBanksIxs, makeRefreshKaminoBanksIxs, makeRepayIx, makeRepayTx, makeRepayWithCollatTx, makeRollPtTx, makeSetupIx, makeSmartCrankSwbFeedIx, makeSmartCrankSwbFeedIxForAccounts, makeSwapCollateralTx, makeSwapDebtTx, makeTransferPositionsTx, makeTxPriorityIx, makeUnwrapSolIx, makeUpdateDriftMarketIxs, makeUpdateJupLendRateIxs, makeUpdateSwbFeedIx, makeVersionedTransaction, makeWithdrawIx, makeWithdrawTx, makeWrapSolIxs, mapBrokenFeedsToOraclePrices, mapJupiterQuoteToSwapQuoteResult, mapPythBanksToOraclePrices, mapSwbBanksToOraclePrices, marginfiAccountToDto, mergeBridgeQuotes, mergeBridgeQuotesDebt, mergeBridgeQuotesLoop, nativeToUi, oraclePriceToDto, parseBalanceRaw, parseBankConfigRaw, parseBankRateLimiterRaw, parseBankRaw, parseEmodeSettingsRaw, parseEmodeTag, parseHealthCacheRaw, parseMarginfiAccountRaw, parseOperationalState, parseOracleSetup, parseOraclePriceData as parsePriceInfo, parseRiskTier, parseRpcPythPriceData, parseSwbOraclePriceData, partitionBanksByCrankability, patchDepositAmount, requireBank, requireTokenProgram, resolveBridgeBanks, runSwapEngine, selectLutsForAccountAction, selectLutsForBanks, serializeBankConfigOpt, serializeInstruction, serializeInterestRateConfig, serializeLut, serializeOperationalState, serializeOracleSetup, serializeOracleSetupToIndex, serializeRiskTier, serializeSwapEngineRequest, serializeSwapEngineResult, shortenAddress, simulateAccountHealthCache, simulateAccountHealthCacheWithFallback, simulateBundle, splitInstructionsToFitTransactions, swapEngineProvidersFromOpts, swapEngineQuoteFieldsFromOpts, toBankConfigDto, toBankDto, toBankRateLimiterDto, toBigNumber, toEmodeSettingsDto, toInterestRateConfigDto, toJupiterConfig, toNumber, uiToNative, uiToNativeBigNumber, validatorStakeGroupToDto, wrappedI80F48toBigNumber };
6711
+ 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 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 ComputeMaxWithdrawForBankParams, type ComputeNetApyParams, ConfigRaw, type CrankCombination, type CrankabilityResult, DEFAULT_BRIDGE_MINTS, DEFAULT_CROSSBAR_URL, DEFAULT_FALLBACK_CROSSBAR_URL, DEFAULT_ORACLE_MAX_AGE, DEFAULT_REPAY_ALL_EXTRA_BUFFER_BPS, DISABLED_FLAG, type DriftBankInput, type DriftMetadata, type DriftStateByBank, type DriftStateJsonByBank, EMPTY_HEALTH_CACHE, 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 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, OperationalState, OperationalStateRaw, 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, PRIORITY_TX_SIZE, PYTH_PRICE_CONF_INTERVALS, PYTH_PUSH_ORACLE_ID, PYTH_SPONSORED_SHARD_ID, type PanicStateCache, PriceBias, PriceWithConfidence, Project0Client, Project0Config, Project0ConfigRaw, type ProviderSwapRoute, type PythOracleServiceOpts, type RateLimitWindowDto, type RateLimitWindowRawDto, type RatePointDto, type ResolveBridgeCandidateBanksParams, RiskTier, RiskTierRaw, type RollPtOpts, SINGLE_POOL_PROGRAM_ID, STAKED_ORACLE_DISABLED_FLAG, STAKED_ORACLE_USES_ONRAMP_FLAG, STAKE_CONFIG_ID, STAKE_PROGRAM_ID, SWAP_ADAPTERS, SWB_PRICE_CONF_INTERVALS, SYSTEM_PROGRAM_ID, SYSVAR_CLOCK_ID, SYSVAR_RENT_ID, SYSVAR_STAKE_HISTORY_ID, type SerializedInstruction, type SerializedLut, type SerializedSwapEngineRequest, type SerializedSwapEngineResult, type SerializedTxFootprint, type SharedBridgeLegContext, type SimulateAccountHealthCacheWithFallbackParams, type SimulationResultRaw, type SmartCrankParams, type SmartCrankResult, 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, type SwbOracleAiDataByKey, type SwbOracleServiceOpts, TRANSFER_ACCOUNT_AUTHORITY_FLAG, type TitanQuoteParams, TransactionArenaKeyMap, type TransactionBuilderResult, TransactionBuildingError, TransactionBuildingErrorCode, type TransactionBuildingErrorDetails, TransactionConfigMap, TransactionType, type TransferPositionSide, type TransferPositionsResult, type TxFootprint, TypedAmount, USDC_DECIMALS, USDC_MINT, USDT_MINT, 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, checkBatchOracleCrankability, checkJupiterFeeAccount, checkMultipleOraclesCrankability, checkTitanFeeAccount, chunkedGetRawMultipleAccountInfoOrdered, chunkedGetRawMultipleAccountInfoOrderedWithNulls, chunkedGetRawMultipleAccountInfos, classifyAndValidate, compileFlashloanPrecheck, composeBridgedSwap, composeRemainingAccounts, computeAccountValue, computeActiveEmodePairs, computeAssetHealthComponent, computeBalanceUsdValue, computeBankBorrowApy, computeBankBorrowCapRemaining, computeBankDepositCapRemaining, computeBankMetrics, computeBankPoolSize, computeBankSupplyApy, computeBankTotalBorrows, computeBankTotalBorrowsUsd, computeBankTotalDeposits, computeBankTotalDepositsUsd, computeBaseInterestRate, computeBorrowEstimateForRepay, computeClaimedEmissions, computeClosePositionTokenAmount, computeEmodeImpacts, computeFlashLoanNonSwapBudget, computeFlashloanSwapConstraints, computeFreeCollateralFromBalances, computeFreeCollateralFromCache, computeHealthAccountMetas, computeHealthCacheStatus, computeHealthCheckAccounts, computeHealthComponentsFromBalances, computeHealthComponentsFromCache, computeInterestRates, computeLiabilityHealthComponent, computeLiquidationPriceForBank, computeLowestEmodeWeights, computeMaxBorrowForBank, computeMaxWithdrawForBank, computeNetApy, computeProjectedActiveBalancesNoCpi, computeProjectedActiveBanksNoCpi, computeQuantity, computeQuantityUi, computeRemainingCapacity, computeSmartCrank, computeStakedBankMultipliers, computeTotalOutstandingEmissions, computeUtilizationRate, computeV0TxSize, convertVoteAccCoeffsToBankCoeffs, createActiveEmodePairFromPairs, createEmptyBalance, decodeAccountRaw, decodeBankRaw, decodeInstruction, decompileV0Transaction, deriveBankEmissionsAuth, deriveBankEmissionsVault, deriveBankFeeVault, deriveBankFeeVaultAuthority, deriveBankInsuranceVault, deriveBankInsuranceVaultAuthority, deriveBankLiquidityVault, deriveBankLiquidityVaultAuthority, deriveFeeState, deriveMarginfiAccount, 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, fetchMarginfiAccountActiveBalancesForBank, fetchMarginfiAccountAddresses, fetchMarginfiAccountAddressesHoldingBank, fetchMarginfiAccountData, fetchMultipleBanks, fetchNativeStakeAccounts, fetchOracleData, fetchProgramForMints, fetchPythOracleData, fetchPythOraclePricesFromAPI, fetchPythOraclePricesFromChain, fetchStakeAccount, fetchStakePoolActiveStates, fetchStakePoolMev, fetchSwbOracleAccountsFromAPI, fetchSwbOracleAccountsFromChain, fetchSwbOracleData, fetchSwbOraclePricesFromAPI, fetchSwbOraclePricesFromCrossbar, findRandomAvailableAccountIndex, freezeBankConfigIx, generateDummyAccount, getAccountKeys, getActiveAccountFlags, getActiveBalances, getActiveEmodeEntryFlags, getActiveEmodeFlags, getActiveHealthCacheFlags, getAssetQuantity, getAssetShares, getBalance, getBalanceUsdValueWithPriceBias, getBankVaultAuthority, getBankVaultSeeds, getBirdeyeFallbackPricesByFeedId, getBirdeyePricesForMints, getConfig, getDriftCTokenMultiplier, getDriftMetadata, getDriftStatesDto, getEmodePairs, getExactOutEstimate, getFallbackPricesByFeedId, getFallbackPricesForMints, getHealthCacheStatusDescription, getHealthSimulationTransactions, getJupLendFTokenMultiplier, getJupLendMetadata, getJupLendStatesDto, getJupiterReferralFeeAccount, getJupiterSwapIxsForFlashloan, getKaminoCTokenMultiplier, getKaminoMetadata, getKaminoStatesDto, getLiabilityQuantity, getLiabilityShares, getOracleSourceFromBank, getOracleSourceFromOracleSetup, getOracleSourceNameFromKey, getPrice, getPriceWithConfidence, getStakedBankMetadataMap, getSwapAdapter, getSwapIxsForFlashloan, getTitanExactOutEstimate, getTitanSwapIxsForFlashloan, getTotalAccountKeys, getTotalAssetQuantity, getTotalLiabilityQuantity, getTxSize, getValidatorVoteAccountByBank, getWritableAccountKeys, groupToDto, hasAccountFlag, hasEmodeEntryFlag, hasEmodeFlag, hasHealthCacheFlag, healthCacheToDto, isBridgeConflictError, isDecomposableSwapError, isDepositIx, isFlashloan, isGroupRateLimiterEnabled, isStandardBorrowable, isStandardDepositable, isV0Tx, isWholePosition, makeAccountTransferToNewAccountTx, makeAddPermissionlessStakedBankIx, makeBeginFlashLoanIx, makeBorrowIx, makeBorrowTx, makeBridgedLoopTx, makeBridgedSwapCollateralTx, makeBridgedSwapDebtTx, makeBulkRepayTx, makeBulkWithdrawTx, makeBundleTipIx, makeCloseMarginfiAccountIx, makeCloseMarginfiAccountTx, makeCrankSwbFeedIx, 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, makePriorityFeeIx, makePriorityFeeMicroIx, makePulseHealthIx, makeRedeemStakedLstIx, makeRedeemStakedLstTx, makeRefreshIntegrationBanksIxs, makeRefreshKaminoBanksIxs, makeRepayIx, makeRepayTx, makeRepayWithCollatTx, makeRollPtTx, makeSetupIx, makeSmartCrankSwbFeedIx, makeSmartCrankSwbFeedIxForAccounts, makeSwapCollateralTx, makeSwapDebtTx, makeTransferPositionsTx, makeTxPriorityIx, makeUnwrapSolIx, makeUpdateDriftMarketIxs, makeUpdateJupLendRateIxs, makeUpdateSwbFeedIx, makeVersionedTransaction, makeWithdrawIx, makeWithdrawTx, makeWrapSolIxs, mapBrokenFeedsToOraclePrices, mapJupiterQuoteToSwapQuoteResult, mapPythBanksToOraclePrices, mapSwbBanksToOraclePrices, marginfiAccountToDto, mergeBridgeQuotes, mergeBridgeQuotesDebt, mergeBridgeQuotesLoop, nativeToUi, oraclePriceToDto, parseBalanceRaw, parseBankConfigRaw, parseBankRateLimiterRaw, parseBankRaw, parseEmodeSettingsRaw, parseEmodeTag, parseHealthCacheRaw, parseMarginfiAccountRaw, parseOperationalState, parseOracleSetup, parseOraclePriceData as parsePriceInfo, parseRiskTier, parseRpcPythPriceData, parseSwbOraclePriceData, partitionBanksByCrankability, patchDepositAmount, requireBank, requireTokenProgram, resolveBridgeCandidateBanks, resolveTokenProgramForMint, runSwapEngine, selectLutsForAccountAction, selectLutsForBanks, selectSwapBridges, serializeBankConfigOpt, serializeInstruction, serializeInterestRateConfig, serializeLut, serializeOperationalState, serializeOracleSetup, serializeOracleSetupToIndex, serializeRiskTier, serializeSwapEngineRequest, serializeSwapEngineResult, sharedBridgeLegContext, shortenAddress, simulateAccountHealthCache, simulateAccountHealthCacheWithFallback, simulateBundle, splitInstructionsToFitTransactions, swapEngineProvidersFromOpts, swapEngineQuoteFieldsFromOpts, toBankConfigDto, toBankDto, toBankRateLimiterDto, toBigNumber, toEmodeSettingsDto, toInterestRateConfigDto, toJupiterConfig, toNumber, tryBridgeCandidates, uiToNative, uiToNativeBigNumber, validatorStakeGroupToDto, wrappedI80F48toBigNumber };