@crypticdot/defituna-client 3.1.0 → 3.1.1

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.mts CHANGED
@@ -554,13 +554,11 @@ type TunaSpotPosition = {
554
554
  collateralToken: PoolToken;
555
555
  /** Position options */
556
556
  flags: number;
557
- /** Position state: normal, liquidated, closed by limit order */
558
- state: TunaPositionState;
559
557
  /** The total amount of the position in token A (long) or B (short). */
560
558
  amount: bigint;
561
- /** The amount of shares borrowed by user from vault B (long) or A (short). */
559
+ /** The amount of shares borrowed by the user from vault B (long) or A (short). */
562
560
  loanShares: bigint;
563
- /** The amount of funds borrowed by user from vault B (long) or A (short). Doesn't include accrued interest. */
561
+ /** The amount of funds borrowed by the user from vault B (long) or A (short). Doesn't include accrued interest. */
564
562
  loanFunds: bigint;
565
563
  /** Position entry sqrt price. */
566
564
  entrySqrtPrice: bigint;
@@ -592,13 +590,11 @@ type TunaSpotPositionArgs = {
592
590
  collateralToken: PoolTokenArgs;
593
591
  /** Position options */
594
592
  flags: number;
595
- /** Position state: normal, liquidated, closed by limit order */
596
- state: TunaPositionStateArgs;
597
593
  /** The total amount of the position in token A (long) or B (short). */
598
594
  amount: number | bigint;
599
- /** The amount of shares borrowed by user from vault B (long) or A (short). */
595
+ /** The amount of shares borrowed by the user from vault B (long) or A (short). */
600
596
  loanShares: number | bigint;
601
- /** The amount of funds borrowed by user from vault B (long) or A (short). Doesn't include accrued interest. */
597
+ /** The amount of funds borrowed by the user from vault B (long) or A (short). Doesn't include accrued interest. */
602
598
  loanFunds: number | bigint;
603
599
  /** Position entry sqrt price. */
604
600
  entrySqrtPrice: number | bigint;
@@ -3833,7 +3829,7 @@ declare function parseLiquidateTunaLpPositionOrcaInstruction<TProgram extends st
3833
3829
 
3834
3830
  declare const LIQUIDATE_TUNA_SPOT_POSITION_FUSION_DISCRIMINATOR: Uint8Array<ArrayBuffer>;
3835
3831
  declare function getLiquidateTunaSpotPositionFusionDiscriminatorBytes(): ReadonlyUint8Array;
3836
- type LiquidateTunaSpotPositionFusionInstruction<TProgram extends string = typeof TUNA_PROGRAM_ADDRESS, TAccountAuthority extends string | IAccountMeta<string> = string, TAccountTunaConfig extends string | IAccountMeta<string> = string, TAccountMintA extends string | IAccountMeta<string> = string, TAccountMintB extends string | IAccountMeta<string> = string, TAccountTokenProgramA extends string | IAccountMeta<string> = string, TAccountTokenProgramB extends string | IAccountMeta<string> = string, TAccountMarket extends string | IAccountMeta<string> = string, TAccountVaultA extends string | IAccountMeta<string> = string, TAccountVaultB extends string | IAccountMeta<string> = string, TAccountVaultAAta extends string | IAccountMeta<string> = string, TAccountVaultBAta extends string | IAccountMeta<string> = string, TAccountTunaPosition extends string | IAccountMeta<string> = string, TAccountTunaPositionAtaA extends string | IAccountMeta<string> = string, TAccountTunaPositionAtaB extends string | IAccountMeta<string> = string, TAccountFeeRecipientAtaA extends string | IAccountMeta<string> = string, TAccountFeeRecipientAtaB extends string | IAccountMeta<string> = string, TAccountPythOraclePriceFeedA extends string | IAccountMeta<string> = string, TAccountPythOraclePriceFeedB extends string | IAccountMeta<string> = string, TAccountFusionammProgram extends string | IAccountMeta<string> = string, TAccountFusionPool extends string | IAccountMeta<string> = string, TAccountMemoProgram extends string | IAccountMeta<string> = string, TAccountSystemProgram extends string | IAccountMeta<string> = '11111111111111111111111111111111', TRemainingAccounts extends readonly IAccountMeta<string>[] = []> = IInstruction<TProgram> & IInstructionWithData<Uint8Array> & IInstructionWithAccounts<[
3832
+ type LiquidateTunaSpotPositionFusionInstruction<TProgram extends string = typeof TUNA_PROGRAM_ADDRESS, TAccountAuthority extends string | IAccountMeta<string> = string, TAccountTunaConfig extends string | IAccountMeta<string> = string, TAccountMintA extends string | IAccountMeta<string> = string, TAccountMintB extends string | IAccountMeta<string> = string, TAccountTokenProgramA extends string | IAccountMeta<string> = string, TAccountTokenProgramB extends string | IAccountMeta<string> = string, TAccountMarket extends string | IAccountMeta<string> = string, TAccountVaultA extends string | IAccountMeta<string> = string, TAccountVaultB extends string | IAccountMeta<string> = string, TAccountVaultAAta extends string | IAccountMeta<string> = string, TAccountVaultBAta extends string | IAccountMeta<string> = string, TAccountTunaPosition extends string | IAccountMeta<string> = string, TAccountTunaPositionAtaA extends string | IAccountMeta<string> = string, TAccountTunaPositionAtaB extends string | IAccountMeta<string> = string, TAccountFeeRecipientAtaA extends string | IAccountMeta<string> = string, TAccountFeeRecipientAtaB extends string | IAccountMeta<string> = string, TAccountTunaPositionOwner extends string | IAccountMeta<string> = string, TAccountTunaPositionOwnerAtaA extends string | IAccountMeta<string> = string, TAccountTunaPositionOwnerAtaB extends string | IAccountMeta<string> = string, TAccountPythOraclePriceFeedA extends string | IAccountMeta<string> = string, TAccountPythOraclePriceFeedB extends string | IAccountMeta<string> = string, TAccountFusionammProgram extends string | IAccountMeta<string> = string, TAccountFusionPool extends string | IAccountMeta<string> = string, TAccountMemoProgram extends string | IAccountMeta<string> = string, TAccountSystemProgram extends string | IAccountMeta<string> = '11111111111111111111111111111111', TRemainingAccounts extends readonly IAccountMeta<string>[] = []> = IInstruction<TProgram> & IInstructionWithData<Uint8Array> & IInstructionWithAccounts<[
3837
3833
  TAccountAuthority extends string ? WritableSignerAccount<TAccountAuthority> & IAccountSignerMeta<TAccountAuthority> : TAccountAuthority,
3838
3834
  TAccountTunaConfig extends string ? ReadonlyAccount<TAccountTunaConfig> : TAccountTunaConfig,
3839
3835
  TAccountMintA extends string ? ReadonlyAccount<TAccountMintA> : TAccountMintA,
@@ -3850,6 +3846,9 @@ type LiquidateTunaSpotPositionFusionInstruction<TProgram extends string = typeof
3850
3846
  TAccountTunaPositionAtaB extends string ? WritableAccount<TAccountTunaPositionAtaB> : TAccountTunaPositionAtaB,
3851
3847
  TAccountFeeRecipientAtaA extends string ? WritableAccount<TAccountFeeRecipientAtaA> : TAccountFeeRecipientAtaA,
3852
3848
  TAccountFeeRecipientAtaB extends string ? WritableAccount<TAccountFeeRecipientAtaB> : TAccountFeeRecipientAtaB,
3849
+ TAccountTunaPositionOwner extends string ? WritableAccount<TAccountTunaPositionOwner> : TAccountTunaPositionOwner,
3850
+ TAccountTunaPositionOwnerAtaA extends string ? WritableAccount<TAccountTunaPositionOwnerAtaA> : TAccountTunaPositionOwnerAtaA,
3851
+ TAccountTunaPositionOwnerAtaB extends string ? WritableAccount<TAccountTunaPositionOwnerAtaB> : TAccountTunaPositionOwnerAtaB,
3853
3852
  TAccountPythOraclePriceFeedA extends string ? ReadonlyAccount<TAccountPythOraclePriceFeedA> : TAccountPythOraclePriceFeedA,
3854
3853
  TAccountPythOraclePriceFeedB extends string ? ReadonlyAccount<TAccountPythOraclePriceFeedB> : TAccountPythOraclePriceFeedB,
3855
3854
  TAccountFusionammProgram extends string ? ReadonlyAccount<TAccountFusionammProgram> : TAccountFusionammProgram,
@@ -3870,7 +3869,7 @@ type LiquidateTunaSpotPositionFusionInstructionDataArgs = {
3870
3869
  declare function getLiquidateTunaSpotPositionFusionInstructionDataEncoder(): Encoder<LiquidateTunaSpotPositionFusionInstructionDataArgs>;
3871
3870
  declare function getLiquidateTunaSpotPositionFusionInstructionDataDecoder(): Decoder<LiquidateTunaSpotPositionFusionInstructionData>;
3872
3871
  declare function getLiquidateTunaSpotPositionFusionInstructionDataCodec(): Codec<LiquidateTunaSpotPositionFusionInstructionDataArgs, LiquidateTunaSpotPositionFusionInstructionData>;
3873
- type LiquidateTunaSpotPositionFusionInput<TAccountAuthority extends string = string, TAccountTunaConfig extends string = string, TAccountMintA extends string = string, TAccountMintB extends string = string, TAccountTokenProgramA extends string = string, TAccountTokenProgramB extends string = string, TAccountMarket extends string = string, TAccountVaultA extends string = string, TAccountVaultB extends string = string, TAccountVaultAAta extends string = string, TAccountVaultBAta extends string = string, TAccountTunaPosition extends string = string, TAccountTunaPositionAtaA extends string = string, TAccountTunaPositionAtaB extends string = string, TAccountFeeRecipientAtaA extends string = string, TAccountFeeRecipientAtaB extends string = string, TAccountPythOraclePriceFeedA extends string = string, TAccountPythOraclePriceFeedB extends string = string, TAccountFusionammProgram extends string = string, TAccountFusionPool extends string = string, TAccountMemoProgram extends string = string, TAccountSystemProgram extends string = string> = {
3872
+ type LiquidateTunaSpotPositionFusionInput<TAccountAuthority extends string = string, TAccountTunaConfig extends string = string, TAccountMintA extends string = string, TAccountMintB extends string = string, TAccountTokenProgramA extends string = string, TAccountTokenProgramB extends string = string, TAccountMarket extends string = string, TAccountVaultA extends string = string, TAccountVaultB extends string = string, TAccountVaultAAta extends string = string, TAccountVaultBAta extends string = string, TAccountTunaPosition extends string = string, TAccountTunaPositionAtaA extends string = string, TAccountTunaPositionAtaB extends string = string, TAccountFeeRecipientAtaA extends string = string, TAccountFeeRecipientAtaB extends string = string, TAccountTunaPositionOwner extends string = string, TAccountTunaPositionOwnerAtaA extends string = string, TAccountTunaPositionOwnerAtaB extends string = string, TAccountPythOraclePriceFeedA extends string = string, TAccountPythOraclePriceFeedB extends string = string, TAccountFusionammProgram extends string = string, TAccountFusionPool extends string = string, TAccountMemoProgram extends string = string, TAccountSystemProgram extends string = string> = {
3874
3873
  /**
3875
3874
  *
3876
3875
  * TUNA accounts
@@ -3892,6 +3891,9 @@ type LiquidateTunaSpotPositionFusionInput<TAccountAuthority extends string = str
3892
3891
  tunaPositionAtaB: Address<TAccountTunaPositionAtaB>;
3893
3892
  feeRecipientAtaA: Address<TAccountFeeRecipientAtaA>;
3894
3893
  feeRecipientAtaB: Address<TAccountFeeRecipientAtaB>;
3894
+ tunaPositionOwner: Address<TAccountTunaPositionOwner>;
3895
+ tunaPositionOwnerAtaA?: Address<TAccountTunaPositionOwnerAtaA>;
3896
+ tunaPositionOwnerAtaB?: Address<TAccountTunaPositionOwnerAtaB>;
3895
3897
  pythOraclePriceFeedA: Address<TAccountPythOraclePriceFeedA>;
3896
3898
  pythOraclePriceFeedB: Address<TAccountPythOraclePriceFeedB>;
3897
3899
  /**
@@ -3911,9 +3913,9 @@ type LiquidateTunaSpotPositionFusionInput<TAccountAuthority extends string = str
3911
3913
  withdrawPercent: LiquidateTunaSpotPositionFusionInstructionDataArgs['withdrawPercent'];
3912
3914
  remainingAccountsInfo: LiquidateTunaSpotPositionFusionInstructionDataArgs['remainingAccountsInfo'];
3913
3915
  };
3914
- declare function getLiquidateTunaSpotPositionFusionInstruction<TAccountAuthority extends string, TAccountTunaConfig extends string, TAccountMintA extends string, TAccountMintB extends string, TAccountTokenProgramA extends string, TAccountTokenProgramB extends string, TAccountMarket extends string, TAccountVaultA extends string, TAccountVaultB extends string, TAccountVaultAAta extends string, TAccountVaultBAta extends string, TAccountTunaPosition extends string, TAccountTunaPositionAtaA extends string, TAccountTunaPositionAtaB extends string, TAccountFeeRecipientAtaA extends string, TAccountFeeRecipientAtaB extends string, TAccountPythOraclePriceFeedA extends string, TAccountPythOraclePriceFeedB extends string, TAccountFusionammProgram extends string, TAccountFusionPool extends string, TAccountMemoProgram extends string, TAccountSystemProgram extends string, TProgramAddress extends Address = typeof TUNA_PROGRAM_ADDRESS>(input: LiquidateTunaSpotPositionFusionInput<TAccountAuthority, TAccountTunaConfig, TAccountMintA, TAccountMintB, TAccountTokenProgramA, TAccountTokenProgramB, TAccountMarket, TAccountVaultA, TAccountVaultB, TAccountVaultAAta, TAccountVaultBAta, TAccountTunaPosition, TAccountTunaPositionAtaA, TAccountTunaPositionAtaB, TAccountFeeRecipientAtaA, TAccountFeeRecipientAtaB, TAccountPythOraclePriceFeedA, TAccountPythOraclePriceFeedB, TAccountFusionammProgram, TAccountFusionPool, TAccountMemoProgram, TAccountSystemProgram>, config?: {
3916
+ declare function getLiquidateTunaSpotPositionFusionInstruction<TAccountAuthority extends string, TAccountTunaConfig extends string, TAccountMintA extends string, TAccountMintB extends string, TAccountTokenProgramA extends string, TAccountTokenProgramB extends string, TAccountMarket extends string, TAccountVaultA extends string, TAccountVaultB extends string, TAccountVaultAAta extends string, TAccountVaultBAta extends string, TAccountTunaPosition extends string, TAccountTunaPositionAtaA extends string, TAccountTunaPositionAtaB extends string, TAccountFeeRecipientAtaA extends string, TAccountFeeRecipientAtaB extends string, TAccountTunaPositionOwner extends string, TAccountTunaPositionOwnerAtaA extends string, TAccountTunaPositionOwnerAtaB extends string, TAccountPythOraclePriceFeedA extends string, TAccountPythOraclePriceFeedB extends string, TAccountFusionammProgram extends string, TAccountFusionPool extends string, TAccountMemoProgram extends string, TAccountSystemProgram extends string, TProgramAddress extends Address = typeof TUNA_PROGRAM_ADDRESS>(input: LiquidateTunaSpotPositionFusionInput<TAccountAuthority, TAccountTunaConfig, TAccountMintA, TAccountMintB, TAccountTokenProgramA, TAccountTokenProgramB, TAccountMarket, TAccountVaultA, TAccountVaultB, TAccountVaultAAta, TAccountVaultBAta, TAccountTunaPosition, TAccountTunaPositionAtaA, TAccountTunaPositionAtaB, TAccountFeeRecipientAtaA, TAccountFeeRecipientAtaB, TAccountTunaPositionOwner, TAccountTunaPositionOwnerAtaA, TAccountTunaPositionOwnerAtaB, TAccountPythOraclePriceFeedA, TAccountPythOraclePriceFeedB, TAccountFusionammProgram, TAccountFusionPool, TAccountMemoProgram, TAccountSystemProgram>, config?: {
3915
3917
  programAddress?: TProgramAddress;
3916
- }): LiquidateTunaSpotPositionFusionInstruction<TProgramAddress, TAccountAuthority, TAccountTunaConfig, TAccountMintA, TAccountMintB, TAccountTokenProgramA, TAccountTokenProgramB, TAccountMarket, TAccountVaultA, TAccountVaultB, TAccountVaultAAta, TAccountVaultBAta, TAccountTunaPosition, TAccountTunaPositionAtaA, TAccountTunaPositionAtaB, TAccountFeeRecipientAtaA, TAccountFeeRecipientAtaB, TAccountPythOraclePriceFeedA, TAccountPythOraclePriceFeedB, TAccountFusionammProgram, TAccountFusionPool, TAccountMemoProgram, TAccountSystemProgram>;
3918
+ }): LiquidateTunaSpotPositionFusionInstruction<TProgramAddress, TAccountAuthority, TAccountTunaConfig, TAccountMintA, TAccountMintB, TAccountTokenProgramA, TAccountTokenProgramB, TAccountMarket, TAccountVaultA, TAccountVaultB, TAccountVaultAAta, TAccountVaultBAta, TAccountTunaPosition, TAccountTunaPositionAtaA, TAccountTunaPositionAtaB, TAccountFeeRecipientAtaA, TAccountFeeRecipientAtaB, TAccountTunaPositionOwner, TAccountTunaPositionOwnerAtaA, TAccountTunaPositionOwnerAtaB, TAccountPythOraclePriceFeedA, TAccountPythOraclePriceFeedB, TAccountFusionammProgram, TAccountFusionPool, TAccountMemoProgram, TAccountSystemProgram>;
3917
3919
  type ParsedLiquidateTunaSpotPositionFusionInstruction<TProgram extends string = typeof TUNA_PROGRAM_ADDRESS, TAccountMetas extends readonly IAccountMeta[] = readonly IAccountMeta[]> = {
3918
3920
  programAddress: Address<TProgram>;
3919
3921
  accounts: {
@@ -3938,22 +3940,25 @@ type ParsedLiquidateTunaSpotPositionFusionInstruction<TProgram extends string =
3938
3940
  tunaPositionAtaB: TAccountMetas[13];
3939
3941
  feeRecipientAtaA: TAccountMetas[14];
3940
3942
  feeRecipientAtaB: TAccountMetas[15];
3941
- pythOraclePriceFeedA: TAccountMetas[16];
3942
- pythOraclePriceFeedB: TAccountMetas[17];
3943
+ tunaPositionOwner: TAccountMetas[16];
3944
+ tunaPositionOwnerAtaA?: TAccountMetas[17] | undefined;
3945
+ tunaPositionOwnerAtaB?: TAccountMetas[18] | undefined;
3946
+ pythOraclePriceFeedA: TAccountMetas[19];
3947
+ pythOraclePriceFeedB: TAccountMetas[20];
3943
3948
  /**
3944
3949
  *
3945
3950
  * Fusion accounts
3946
3951
  *
3947
3952
  */
3948
- fusionammProgram: TAccountMetas[18];
3949
- fusionPool: TAccountMetas[19];
3950
- memoProgram: TAccountMetas[20];
3953
+ fusionammProgram: TAccountMetas[21];
3954
+ fusionPool: TAccountMetas[22];
3955
+ memoProgram: TAccountMetas[23];
3951
3956
  /**
3952
3957
  *
3953
3958
  * Other accounts
3954
3959
  *
3955
3960
  */
3956
- systemProgram: TAccountMetas[21];
3961
+ systemProgram: TAccountMetas[24];
3957
3962
  };
3958
3963
  data: LiquidateTunaSpotPositionFusionInstructionData;
3959
3964
  };
@@ -3969,7 +3974,7 @@ declare function parseLiquidateTunaSpotPositionFusionInstruction<TProgram extend
3969
3974
 
3970
3975
  declare const LIQUIDATE_TUNA_SPOT_POSITION_ORCA_DISCRIMINATOR: Uint8Array<ArrayBuffer>;
3971
3976
  declare function getLiquidateTunaSpotPositionOrcaDiscriminatorBytes(): ReadonlyUint8Array;
3972
- type LiquidateTunaSpotPositionOrcaInstruction<TProgram extends string = typeof TUNA_PROGRAM_ADDRESS, TAccountAuthority extends string | IAccountMeta<string> = string, TAccountTunaConfig extends string | IAccountMeta<string> = string, TAccountMintA extends string | IAccountMeta<string> = string, TAccountMintB extends string | IAccountMeta<string> = string, TAccountTokenProgramA extends string | IAccountMeta<string> = string, TAccountTokenProgramB extends string | IAccountMeta<string> = string, TAccountMarket extends string | IAccountMeta<string> = string, TAccountVaultA extends string | IAccountMeta<string> = string, TAccountVaultB extends string | IAccountMeta<string> = string, TAccountVaultAAta extends string | IAccountMeta<string> = string, TAccountVaultBAta extends string | IAccountMeta<string> = string, TAccountTunaPosition extends string | IAccountMeta<string> = string, TAccountTunaPositionAtaA extends string | IAccountMeta<string> = string, TAccountTunaPositionAtaB extends string | IAccountMeta<string> = string, TAccountFeeRecipientAtaA extends string | IAccountMeta<string> = string, TAccountFeeRecipientAtaB extends string | IAccountMeta<string> = string, TAccountPythOraclePriceFeedA extends string | IAccountMeta<string> = string, TAccountPythOraclePriceFeedB extends string | IAccountMeta<string> = string, TAccountWhirlpoolProgram extends string | IAccountMeta<string> = string, TAccountWhirlpool extends string | IAccountMeta<string> = string, TAccountMemoProgram extends string | IAccountMeta<string> = string, TAccountSystemProgram extends string | IAccountMeta<string> = '11111111111111111111111111111111', TRemainingAccounts extends readonly IAccountMeta<string>[] = []> = IInstruction<TProgram> & IInstructionWithData<Uint8Array> & IInstructionWithAccounts<[
3977
+ type LiquidateTunaSpotPositionOrcaInstruction<TProgram extends string = typeof TUNA_PROGRAM_ADDRESS, TAccountAuthority extends string | IAccountMeta<string> = string, TAccountTunaConfig extends string | IAccountMeta<string> = string, TAccountMintA extends string | IAccountMeta<string> = string, TAccountMintB extends string | IAccountMeta<string> = string, TAccountTokenProgramA extends string | IAccountMeta<string> = string, TAccountTokenProgramB extends string | IAccountMeta<string> = string, TAccountMarket extends string | IAccountMeta<string> = string, TAccountVaultA extends string | IAccountMeta<string> = string, TAccountVaultB extends string | IAccountMeta<string> = string, TAccountVaultAAta extends string | IAccountMeta<string> = string, TAccountVaultBAta extends string | IAccountMeta<string> = string, TAccountTunaPosition extends string | IAccountMeta<string> = string, TAccountTunaPositionAtaA extends string | IAccountMeta<string> = string, TAccountTunaPositionAtaB extends string | IAccountMeta<string> = string, TAccountFeeRecipientAtaA extends string | IAccountMeta<string> = string, TAccountFeeRecipientAtaB extends string | IAccountMeta<string> = string, TAccountTunaPositionOwner extends string | IAccountMeta<string> = string, TAccountTunaPositionOwnerAtaA extends string | IAccountMeta<string> = string, TAccountTunaPositionOwnerAtaB extends string | IAccountMeta<string> = string, TAccountPythOraclePriceFeedA extends string | IAccountMeta<string> = string, TAccountPythOraclePriceFeedB extends string | IAccountMeta<string> = string, TAccountWhirlpoolProgram extends string | IAccountMeta<string> = string, TAccountWhirlpool extends string | IAccountMeta<string> = string, TAccountMemoProgram extends string | IAccountMeta<string> = string, TAccountSystemProgram extends string | IAccountMeta<string> = '11111111111111111111111111111111', TRemainingAccounts extends readonly IAccountMeta<string>[] = []> = IInstruction<TProgram> & IInstructionWithData<Uint8Array> & IInstructionWithAccounts<[
3973
3978
  TAccountAuthority extends string ? WritableSignerAccount<TAccountAuthority> & IAccountSignerMeta<TAccountAuthority> : TAccountAuthority,
3974
3979
  TAccountTunaConfig extends string ? ReadonlyAccount<TAccountTunaConfig> : TAccountTunaConfig,
3975
3980
  TAccountMintA extends string ? ReadonlyAccount<TAccountMintA> : TAccountMintA,
@@ -3986,6 +3991,9 @@ type LiquidateTunaSpotPositionOrcaInstruction<TProgram extends string = typeof T
3986
3991
  TAccountTunaPositionAtaB extends string ? WritableAccount<TAccountTunaPositionAtaB> : TAccountTunaPositionAtaB,
3987
3992
  TAccountFeeRecipientAtaA extends string ? WritableAccount<TAccountFeeRecipientAtaA> : TAccountFeeRecipientAtaA,
3988
3993
  TAccountFeeRecipientAtaB extends string ? WritableAccount<TAccountFeeRecipientAtaB> : TAccountFeeRecipientAtaB,
3994
+ TAccountTunaPositionOwner extends string ? WritableAccount<TAccountTunaPositionOwner> : TAccountTunaPositionOwner,
3995
+ TAccountTunaPositionOwnerAtaA extends string ? WritableAccount<TAccountTunaPositionOwnerAtaA> : TAccountTunaPositionOwnerAtaA,
3996
+ TAccountTunaPositionOwnerAtaB extends string ? WritableAccount<TAccountTunaPositionOwnerAtaB> : TAccountTunaPositionOwnerAtaB,
3989
3997
  TAccountPythOraclePriceFeedA extends string ? ReadonlyAccount<TAccountPythOraclePriceFeedA> : TAccountPythOraclePriceFeedA,
3990
3998
  TAccountPythOraclePriceFeedB extends string ? ReadonlyAccount<TAccountPythOraclePriceFeedB> : TAccountPythOraclePriceFeedB,
3991
3999
  TAccountWhirlpoolProgram extends string ? ReadonlyAccount<TAccountWhirlpoolProgram> : TAccountWhirlpoolProgram,
@@ -4006,7 +4014,7 @@ type LiquidateTunaSpotPositionOrcaInstructionDataArgs = {
4006
4014
  declare function getLiquidateTunaSpotPositionOrcaInstructionDataEncoder(): Encoder<LiquidateTunaSpotPositionOrcaInstructionDataArgs>;
4007
4015
  declare function getLiquidateTunaSpotPositionOrcaInstructionDataDecoder(): Decoder<LiquidateTunaSpotPositionOrcaInstructionData>;
4008
4016
  declare function getLiquidateTunaSpotPositionOrcaInstructionDataCodec(): Codec<LiquidateTunaSpotPositionOrcaInstructionDataArgs, LiquidateTunaSpotPositionOrcaInstructionData>;
4009
- type LiquidateTunaSpotPositionOrcaInput<TAccountAuthority extends string = string, TAccountTunaConfig extends string = string, TAccountMintA extends string = string, TAccountMintB extends string = string, TAccountTokenProgramA extends string = string, TAccountTokenProgramB extends string = string, TAccountMarket extends string = string, TAccountVaultA extends string = string, TAccountVaultB extends string = string, TAccountVaultAAta extends string = string, TAccountVaultBAta extends string = string, TAccountTunaPosition extends string = string, TAccountTunaPositionAtaA extends string = string, TAccountTunaPositionAtaB extends string = string, TAccountFeeRecipientAtaA extends string = string, TAccountFeeRecipientAtaB extends string = string, TAccountPythOraclePriceFeedA extends string = string, TAccountPythOraclePriceFeedB extends string = string, TAccountWhirlpoolProgram extends string = string, TAccountWhirlpool extends string = string, TAccountMemoProgram extends string = string, TAccountSystemProgram extends string = string> = {
4017
+ type LiquidateTunaSpotPositionOrcaInput<TAccountAuthority extends string = string, TAccountTunaConfig extends string = string, TAccountMintA extends string = string, TAccountMintB extends string = string, TAccountTokenProgramA extends string = string, TAccountTokenProgramB extends string = string, TAccountMarket extends string = string, TAccountVaultA extends string = string, TAccountVaultB extends string = string, TAccountVaultAAta extends string = string, TAccountVaultBAta extends string = string, TAccountTunaPosition extends string = string, TAccountTunaPositionAtaA extends string = string, TAccountTunaPositionAtaB extends string = string, TAccountFeeRecipientAtaA extends string = string, TAccountFeeRecipientAtaB extends string = string, TAccountTunaPositionOwner extends string = string, TAccountTunaPositionOwnerAtaA extends string = string, TAccountTunaPositionOwnerAtaB extends string = string, TAccountPythOraclePriceFeedA extends string = string, TAccountPythOraclePriceFeedB extends string = string, TAccountWhirlpoolProgram extends string = string, TAccountWhirlpool extends string = string, TAccountMemoProgram extends string = string, TAccountSystemProgram extends string = string> = {
4010
4018
  /**
4011
4019
  *
4012
4020
  * TUNA accounts
@@ -4028,6 +4036,9 @@ type LiquidateTunaSpotPositionOrcaInput<TAccountAuthority extends string = strin
4028
4036
  tunaPositionAtaB: Address<TAccountTunaPositionAtaB>;
4029
4037
  feeRecipientAtaA: Address<TAccountFeeRecipientAtaA>;
4030
4038
  feeRecipientAtaB: Address<TAccountFeeRecipientAtaB>;
4039
+ tunaPositionOwner: Address<TAccountTunaPositionOwner>;
4040
+ tunaPositionOwnerAtaA?: Address<TAccountTunaPositionOwnerAtaA>;
4041
+ tunaPositionOwnerAtaB?: Address<TAccountTunaPositionOwnerAtaB>;
4031
4042
  pythOraclePriceFeedA: Address<TAccountPythOraclePriceFeedA>;
4032
4043
  pythOraclePriceFeedB: Address<TAccountPythOraclePriceFeedB>;
4033
4044
  /**
@@ -4047,9 +4058,9 @@ type LiquidateTunaSpotPositionOrcaInput<TAccountAuthority extends string = strin
4047
4058
  withdrawPercent: LiquidateTunaSpotPositionOrcaInstructionDataArgs['withdrawPercent'];
4048
4059
  remainingAccountsInfo: LiquidateTunaSpotPositionOrcaInstructionDataArgs['remainingAccountsInfo'];
4049
4060
  };
4050
- declare function getLiquidateTunaSpotPositionOrcaInstruction<TAccountAuthority extends string, TAccountTunaConfig extends string, TAccountMintA extends string, TAccountMintB extends string, TAccountTokenProgramA extends string, TAccountTokenProgramB extends string, TAccountMarket extends string, TAccountVaultA extends string, TAccountVaultB extends string, TAccountVaultAAta extends string, TAccountVaultBAta extends string, TAccountTunaPosition extends string, TAccountTunaPositionAtaA extends string, TAccountTunaPositionAtaB extends string, TAccountFeeRecipientAtaA extends string, TAccountFeeRecipientAtaB extends string, TAccountPythOraclePriceFeedA extends string, TAccountPythOraclePriceFeedB extends string, TAccountWhirlpoolProgram extends string, TAccountWhirlpool extends string, TAccountMemoProgram extends string, TAccountSystemProgram extends string, TProgramAddress extends Address = typeof TUNA_PROGRAM_ADDRESS>(input: LiquidateTunaSpotPositionOrcaInput<TAccountAuthority, TAccountTunaConfig, TAccountMintA, TAccountMintB, TAccountTokenProgramA, TAccountTokenProgramB, TAccountMarket, TAccountVaultA, TAccountVaultB, TAccountVaultAAta, TAccountVaultBAta, TAccountTunaPosition, TAccountTunaPositionAtaA, TAccountTunaPositionAtaB, TAccountFeeRecipientAtaA, TAccountFeeRecipientAtaB, TAccountPythOraclePriceFeedA, TAccountPythOraclePriceFeedB, TAccountWhirlpoolProgram, TAccountWhirlpool, TAccountMemoProgram, TAccountSystemProgram>, config?: {
4061
+ declare function getLiquidateTunaSpotPositionOrcaInstruction<TAccountAuthority extends string, TAccountTunaConfig extends string, TAccountMintA extends string, TAccountMintB extends string, TAccountTokenProgramA extends string, TAccountTokenProgramB extends string, TAccountMarket extends string, TAccountVaultA extends string, TAccountVaultB extends string, TAccountVaultAAta extends string, TAccountVaultBAta extends string, TAccountTunaPosition extends string, TAccountTunaPositionAtaA extends string, TAccountTunaPositionAtaB extends string, TAccountFeeRecipientAtaA extends string, TAccountFeeRecipientAtaB extends string, TAccountTunaPositionOwner extends string, TAccountTunaPositionOwnerAtaA extends string, TAccountTunaPositionOwnerAtaB extends string, TAccountPythOraclePriceFeedA extends string, TAccountPythOraclePriceFeedB extends string, TAccountWhirlpoolProgram extends string, TAccountWhirlpool extends string, TAccountMemoProgram extends string, TAccountSystemProgram extends string, TProgramAddress extends Address = typeof TUNA_PROGRAM_ADDRESS>(input: LiquidateTunaSpotPositionOrcaInput<TAccountAuthority, TAccountTunaConfig, TAccountMintA, TAccountMintB, TAccountTokenProgramA, TAccountTokenProgramB, TAccountMarket, TAccountVaultA, TAccountVaultB, TAccountVaultAAta, TAccountVaultBAta, TAccountTunaPosition, TAccountTunaPositionAtaA, TAccountTunaPositionAtaB, TAccountFeeRecipientAtaA, TAccountFeeRecipientAtaB, TAccountTunaPositionOwner, TAccountTunaPositionOwnerAtaA, TAccountTunaPositionOwnerAtaB, TAccountPythOraclePriceFeedA, TAccountPythOraclePriceFeedB, TAccountWhirlpoolProgram, TAccountWhirlpool, TAccountMemoProgram, TAccountSystemProgram>, config?: {
4051
4062
  programAddress?: TProgramAddress;
4052
- }): LiquidateTunaSpotPositionOrcaInstruction<TProgramAddress, TAccountAuthority, TAccountTunaConfig, TAccountMintA, TAccountMintB, TAccountTokenProgramA, TAccountTokenProgramB, TAccountMarket, TAccountVaultA, TAccountVaultB, TAccountVaultAAta, TAccountVaultBAta, TAccountTunaPosition, TAccountTunaPositionAtaA, TAccountTunaPositionAtaB, TAccountFeeRecipientAtaA, TAccountFeeRecipientAtaB, TAccountPythOraclePriceFeedA, TAccountPythOraclePriceFeedB, TAccountWhirlpoolProgram, TAccountWhirlpool, TAccountMemoProgram, TAccountSystemProgram>;
4063
+ }): LiquidateTunaSpotPositionOrcaInstruction<TProgramAddress, TAccountAuthority, TAccountTunaConfig, TAccountMintA, TAccountMintB, TAccountTokenProgramA, TAccountTokenProgramB, TAccountMarket, TAccountVaultA, TAccountVaultB, TAccountVaultAAta, TAccountVaultBAta, TAccountTunaPosition, TAccountTunaPositionAtaA, TAccountTunaPositionAtaB, TAccountFeeRecipientAtaA, TAccountFeeRecipientAtaB, TAccountTunaPositionOwner, TAccountTunaPositionOwnerAtaA, TAccountTunaPositionOwnerAtaB, TAccountPythOraclePriceFeedA, TAccountPythOraclePriceFeedB, TAccountWhirlpoolProgram, TAccountWhirlpool, TAccountMemoProgram, TAccountSystemProgram>;
4053
4064
  type ParsedLiquidateTunaSpotPositionOrcaInstruction<TProgram extends string = typeof TUNA_PROGRAM_ADDRESS, TAccountMetas extends readonly IAccountMeta[] = readonly IAccountMeta[]> = {
4054
4065
  programAddress: Address<TProgram>;
4055
4066
  accounts: {
@@ -4074,22 +4085,25 @@ type ParsedLiquidateTunaSpotPositionOrcaInstruction<TProgram extends string = ty
4074
4085
  tunaPositionAtaB: TAccountMetas[13];
4075
4086
  feeRecipientAtaA: TAccountMetas[14];
4076
4087
  feeRecipientAtaB: TAccountMetas[15];
4077
- pythOraclePriceFeedA: TAccountMetas[16];
4078
- pythOraclePriceFeedB: TAccountMetas[17];
4088
+ tunaPositionOwner: TAccountMetas[16];
4089
+ tunaPositionOwnerAtaA?: TAccountMetas[17] | undefined;
4090
+ tunaPositionOwnerAtaB?: TAccountMetas[18] | undefined;
4091
+ pythOraclePriceFeedA: TAccountMetas[19];
4092
+ pythOraclePriceFeedB: TAccountMetas[20];
4079
4093
  /**
4080
4094
  *
4081
4095
  * Orca accounts
4082
4096
  *
4083
4097
  */
4084
- whirlpoolProgram: TAccountMetas[18];
4085
- whirlpool: TAccountMetas[19];
4086
- memoProgram: TAccountMetas[20];
4098
+ whirlpoolProgram: TAccountMetas[21];
4099
+ whirlpool: TAccountMetas[22];
4100
+ memoProgram: TAccountMetas[23];
4087
4101
  /**
4088
4102
  *
4089
4103
  * Other accounts
4090
4104
  *
4091
4105
  */
4092
- systemProgram: TAccountMetas[21];
4106
+ systemProgram: TAccountMetas[24];
4093
4107
  };
4094
4108
  data: LiquidateTunaSpotPositionOrcaInstructionData;
4095
4109
  };
@@ -6784,11 +6798,11 @@ declare function liquidateTunaLpPositionOrcaInstruction(authority: TransactionSi
6784
6798
  declare function liquidateTunaLpPositionFusionInstructions(authority: TransactionSigner, tunaPosition: Account<TunaLpPosition>, tunaConfig: Account<TunaConfig>, mintA: Account<Mint>, mintB: Account<Mint>, vaultA: Account<Vault>, vaultB: Account<Vault>, whirlpool: Account<FusionPool>, withdrawPercent: number): Promise<IInstruction[]>;
6785
6799
  declare function liquidateTunaLpPositionFusionInstruction(authority: TransactionSigner, tunaPosition: Account<TunaLpPosition>, tunaConfig: Account<TunaConfig>, mintA: Account<Mint>, mintB: Account<Mint>, vaultA: Account<Vault>, vaultB: Account<Vault>, fusionPool: Account<FusionPool>, withdrawPercent: number): Promise<IInstruction>;
6786
6800
 
6787
- declare function liquidateTunaSpotPositionFusionInstructions(authority: TransactionSigner, tunaPosition: Account<TunaSpotPosition>, tunaConfig: Account<TunaConfig>, mintA: Account<Mint>, mintB: Account<Mint>, vaultA: Account<Vault>, vaultB: Account<Vault>, fusionPool: Account<FusionPool>, withdrawPercent: number): Promise<IInstruction[]>;
6788
- declare function liquidateTunaSpotPositionFusionInstruction(authority: TransactionSigner, tunaPositionAddress: Address, tunaConfig: Account<TunaConfig>, mintA: Account<Mint>, mintB: Account<Mint>, vaultA: Account<Vault>, vaultB: Account<Vault>, fusionPool: Account<FusionPool>, withdrawPercent: number): Promise<IInstruction>;
6801
+ declare function liquidateTunaSpotPositionFusionInstructions(authority: TransactionSigner, tunaPosition: Account<TunaSpotPosition>, tunaConfig: Account<TunaConfig>, mintA: Account<Mint>, mintB: Account<Mint>, vaultA: Account<Vault>, vaultB: Account<Vault>, fusionPool: Account<FusionPool>, createTunaPositionOwnerAta: boolean, withdrawPercent: number): Promise<IInstruction[]>;
6802
+ declare function liquidateTunaSpotPositionFusionInstruction(authority: TransactionSigner, tunaPosition: Account<TunaSpotPosition>, tunaConfig: Account<TunaConfig>, mintA: Account<Mint>, mintB: Account<Mint>, vaultA: Account<Vault>, vaultB: Account<Vault>, fusionPool: Account<FusionPool>, withdrawPercent: number): Promise<IInstruction>;
6789
6803
 
6790
- declare function liquidateTunaSpotPositionOrcaInstructions(authority: TransactionSigner, tunaPosition: Account<TunaSpotPosition>, tunaConfig: Account<TunaConfig>, mintA: Account<Mint>, mintB: Account<Mint>, vaultA: Account<Vault>, vaultB: Account<Vault>, whirlpool: Account<Whirlpool>, withdrawPercent: number): Promise<IInstruction[]>;
6791
- declare function liquidateTunaSpotPositionOrcaInstruction(authority: TransactionSigner, tunaPositionAddress: Address, tunaConfig: Account<TunaConfig>, mintA: Account<Mint>, mintB: Account<Mint>, vaultA: Account<Vault>, vaultB: Account<Vault>, whirlpool: Account<Whirlpool>, withdrawPercent: number): Promise<IInstruction>;
6804
+ declare function liquidateTunaSpotPositionOrcaInstructions(authority: TransactionSigner, tunaPosition: Account<TunaSpotPosition>, tunaConfig: Account<TunaConfig>, mintA: Account<Mint>, mintB: Account<Mint>, vaultA: Account<Vault>, vaultB: Account<Vault>, whirlpool: Account<Whirlpool>, createTunaPositionOwnerAta: boolean, withdrawPercent: number): Promise<IInstruction[]>;
6805
+ declare function liquidateTunaSpotPositionOrcaInstruction(authority: TransactionSigner, tunaPosition: Account<TunaSpotPosition>, tunaConfig: Account<TunaConfig>, mintA: Account<Mint>, mintB: Account<Mint>, vaultA: Account<Vault>, vaultB: Account<Vault>, whirlpool: Account<Whirlpool>, withdrawPercent: number): Promise<IInstruction>;
6792
6806
 
6793
6807
  declare function openTunaLpPositionOrcaInstruction(rpc: Rpc<GetAccountInfoApi & GetMultipleAccountsApi>, authority: TransactionSigner, positionMint: TransactionSigner, whirlpoolAddress: Address, args: OpenTunaLpPositionOrcaInstructionDataArgs): Promise<IInstruction>;
6794
6808
 
package/dist/index.d.ts CHANGED
@@ -554,13 +554,11 @@ type TunaSpotPosition = {
554
554
  collateralToken: PoolToken;
555
555
  /** Position options */
556
556
  flags: number;
557
- /** Position state: normal, liquidated, closed by limit order */
558
- state: TunaPositionState;
559
557
  /** The total amount of the position in token A (long) or B (short). */
560
558
  amount: bigint;
561
- /** The amount of shares borrowed by user from vault B (long) or A (short). */
559
+ /** The amount of shares borrowed by the user from vault B (long) or A (short). */
562
560
  loanShares: bigint;
563
- /** The amount of funds borrowed by user from vault B (long) or A (short). Doesn't include accrued interest. */
561
+ /** The amount of funds borrowed by the user from vault B (long) or A (short). Doesn't include accrued interest. */
564
562
  loanFunds: bigint;
565
563
  /** Position entry sqrt price. */
566
564
  entrySqrtPrice: bigint;
@@ -592,13 +590,11 @@ type TunaSpotPositionArgs = {
592
590
  collateralToken: PoolTokenArgs;
593
591
  /** Position options */
594
592
  flags: number;
595
- /** Position state: normal, liquidated, closed by limit order */
596
- state: TunaPositionStateArgs;
597
593
  /** The total amount of the position in token A (long) or B (short). */
598
594
  amount: number | bigint;
599
- /** The amount of shares borrowed by user from vault B (long) or A (short). */
595
+ /** The amount of shares borrowed by the user from vault B (long) or A (short). */
600
596
  loanShares: number | bigint;
601
- /** The amount of funds borrowed by user from vault B (long) or A (short). Doesn't include accrued interest. */
597
+ /** The amount of funds borrowed by the user from vault B (long) or A (short). Doesn't include accrued interest. */
602
598
  loanFunds: number | bigint;
603
599
  /** Position entry sqrt price. */
604
600
  entrySqrtPrice: number | bigint;
@@ -3833,7 +3829,7 @@ declare function parseLiquidateTunaLpPositionOrcaInstruction<TProgram extends st
3833
3829
 
3834
3830
  declare const LIQUIDATE_TUNA_SPOT_POSITION_FUSION_DISCRIMINATOR: Uint8Array<ArrayBuffer>;
3835
3831
  declare function getLiquidateTunaSpotPositionFusionDiscriminatorBytes(): ReadonlyUint8Array;
3836
- type LiquidateTunaSpotPositionFusionInstruction<TProgram extends string = typeof TUNA_PROGRAM_ADDRESS, TAccountAuthority extends string | IAccountMeta<string> = string, TAccountTunaConfig extends string | IAccountMeta<string> = string, TAccountMintA extends string | IAccountMeta<string> = string, TAccountMintB extends string | IAccountMeta<string> = string, TAccountTokenProgramA extends string | IAccountMeta<string> = string, TAccountTokenProgramB extends string | IAccountMeta<string> = string, TAccountMarket extends string | IAccountMeta<string> = string, TAccountVaultA extends string | IAccountMeta<string> = string, TAccountVaultB extends string | IAccountMeta<string> = string, TAccountVaultAAta extends string | IAccountMeta<string> = string, TAccountVaultBAta extends string | IAccountMeta<string> = string, TAccountTunaPosition extends string | IAccountMeta<string> = string, TAccountTunaPositionAtaA extends string | IAccountMeta<string> = string, TAccountTunaPositionAtaB extends string | IAccountMeta<string> = string, TAccountFeeRecipientAtaA extends string | IAccountMeta<string> = string, TAccountFeeRecipientAtaB extends string | IAccountMeta<string> = string, TAccountPythOraclePriceFeedA extends string | IAccountMeta<string> = string, TAccountPythOraclePriceFeedB extends string | IAccountMeta<string> = string, TAccountFusionammProgram extends string | IAccountMeta<string> = string, TAccountFusionPool extends string | IAccountMeta<string> = string, TAccountMemoProgram extends string | IAccountMeta<string> = string, TAccountSystemProgram extends string | IAccountMeta<string> = '11111111111111111111111111111111', TRemainingAccounts extends readonly IAccountMeta<string>[] = []> = IInstruction<TProgram> & IInstructionWithData<Uint8Array> & IInstructionWithAccounts<[
3832
+ type LiquidateTunaSpotPositionFusionInstruction<TProgram extends string = typeof TUNA_PROGRAM_ADDRESS, TAccountAuthority extends string | IAccountMeta<string> = string, TAccountTunaConfig extends string | IAccountMeta<string> = string, TAccountMintA extends string | IAccountMeta<string> = string, TAccountMintB extends string | IAccountMeta<string> = string, TAccountTokenProgramA extends string | IAccountMeta<string> = string, TAccountTokenProgramB extends string | IAccountMeta<string> = string, TAccountMarket extends string | IAccountMeta<string> = string, TAccountVaultA extends string | IAccountMeta<string> = string, TAccountVaultB extends string | IAccountMeta<string> = string, TAccountVaultAAta extends string | IAccountMeta<string> = string, TAccountVaultBAta extends string | IAccountMeta<string> = string, TAccountTunaPosition extends string | IAccountMeta<string> = string, TAccountTunaPositionAtaA extends string | IAccountMeta<string> = string, TAccountTunaPositionAtaB extends string | IAccountMeta<string> = string, TAccountFeeRecipientAtaA extends string | IAccountMeta<string> = string, TAccountFeeRecipientAtaB extends string | IAccountMeta<string> = string, TAccountTunaPositionOwner extends string | IAccountMeta<string> = string, TAccountTunaPositionOwnerAtaA extends string | IAccountMeta<string> = string, TAccountTunaPositionOwnerAtaB extends string | IAccountMeta<string> = string, TAccountPythOraclePriceFeedA extends string | IAccountMeta<string> = string, TAccountPythOraclePriceFeedB extends string | IAccountMeta<string> = string, TAccountFusionammProgram extends string | IAccountMeta<string> = string, TAccountFusionPool extends string | IAccountMeta<string> = string, TAccountMemoProgram extends string | IAccountMeta<string> = string, TAccountSystemProgram extends string | IAccountMeta<string> = '11111111111111111111111111111111', TRemainingAccounts extends readonly IAccountMeta<string>[] = []> = IInstruction<TProgram> & IInstructionWithData<Uint8Array> & IInstructionWithAccounts<[
3837
3833
  TAccountAuthority extends string ? WritableSignerAccount<TAccountAuthority> & IAccountSignerMeta<TAccountAuthority> : TAccountAuthority,
3838
3834
  TAccountTunaConfig extends string ? ReadonlyAccount<TAccountTunaConfig> : TAccountTunaConfig,
3839
3835
  TAccountMintA extends string ? ReadonlyAccount<TAccountMintA> : TAccountMintA,
@@ -3850,6 +3846,9 @@ type LiquidateTunaSpotPositionFusionInstruction<TProgram extends string = typeof
3850
3846
  TAccountTunaPositionAtaB extends string ? WritableAccount<TAccountTunaPositionAtaB> : TAccountTunaPositionAtaB,
3851
3847
  TAccountFeeRecipientAtaA extends string ? WritableAccount<TAccountFeeRecipientAtaA> : TAccountFeeRecipientAtaA,
3852
3848
  TAccountFeeRecipientAtaB extends string ? WritableAccount<TAccountFeeRecipientAtaB> : TAccountFeeRecipientAtaB,
3849
+ TAccountTunaPositionOwner extends string ? WritableAccount<TAccountTunaPositionOwner> : TAccountTunaPositionOwner,
3850
+ TAccountTunaPositionOwnerAtaA extends string ? WritableAccount<TAccountTunaPositionOwnerAtaA> : TAccountTunaPositionOwnerAtaA,
3851
+ TAccountTunaPositionOwnerAtaB extends string ? WritableAccount<TAccountTunaPositionOwnerAtaB> : TAccountTunaPositionOwnerAtaB,
3853
3852
  TAccountPythOraclePriceFeedA extends string ? ReadonlyAccount<TAccountPythOraclePriceFeedA> : TAccountPythOraclePriceFeedA,
3854
3853
  TAccountPythOraclePriceFeedB extends string ? ReadonlyAccount<TAccountPythOraclePriceFeedB> : TAccountPythOraclePriceFeedB,
3855
3854
  TAccountFusionammProgram extends string ? ReadonlyAccount<TAccountFusionammProgram> : TAccountFusionammProgram,
@@ -3870,7 +3869,7 @@ type LiquidateTunaSpotPositionFusionInstructionDataArgs = {
3870
3869
  declare function getLiquidateTunaSpotPositionFusionInstructionDataEncoder(): Encoder<LiquidateTunaSpotPositionFusionInstructionDataArgs>;
3871
3870
  declare function getLiquidateTunaSpotPositionFusionInstructionDataDecoder(): Decoder<LiquidateTunaSpotPositionFusionInstructionData>;
3872
3871
  declare function getLiquidateTunaSpotPositionFusionInstructionDataCodec(): Codec<LiquidateTunaSpotPositionFusionInstructionDataArgs, LiquidateTunaSpotPositionFusionInstructionData>;
3873
- type LiquidateTunaSpotPositionFusionInput<TAccountAuthority extends string = string, TAccountTunaConfig extends string = string, TAccountMintA extends string = string, TAccountMintB extends string = string, TAccountTokenProgramA extends string = string, TAccountTokenProgramB extends string = string, TAccountMarket extends string = string, TAccountVaultA extends string = string, TAccountVaultB extends string = string, TAccountVaultAAta extends string = string, TAccountVaultBAta extends string = string, TAccountTunaPosition extends string = string, TAccountTunaPositionAtaA extends string = string, TAccountTunaPositionAtaB extends string = string, TAccountFeeRecipientAtaA extends string = string, TAccountFeeRecipientAtaB extends string = string, TAccountPythOraclePriceFeedA extends string = string, TAccountPythOraclePriceFeedB extends string = string, TAccountFusionammProgram extends string = string, TAccountFusionPool extends string = string, TAccountMemoProgram extends string = string, TAccountSystemProgram extends string = string> = {
3872
+ type LiquidateTunaSpotPositionFusionInput<TAccountAuthority extends string = string, TAccountTunaConfig extends string = string, TAccountMintA extends string = string, TAccountMintB extends string = string, TAccountTokenProgramA extends string = string, TAccountTokenProgramB extends string = string, TAccountMarket extends string = string, TAccountVaultA extends string = string, TAccountVaultB extends string = string, TAccountVaultAAta extends string = string, TAccountVaultBAta extends string = string, TAccountTunaPosition extends string = string, TAccountTunaPositionAtaA extends string = string, TAccountTunaPositionAtaB extends string = string, TAccountFeeRecipientAtaA extends string = string, TAccountFeeRecipientAtaB extends string = string, TAccountTunaPositionOwner extends string = string, TAccountTunaPositionOwnerAtaA extends string = string, TAccountTunaPositionOwnerAtaB extends string = string, TAccountPythOraclePriceFeedA extends string = string, TAccountPythOraclePriceFeedB extends string = string, TAccountFusionammProgram extends string = string, TAccountFusionPool extends string = string, TAccountMemoProgram extends string = string, TAccountSystemProgram extends string = string> = {
3874
3873
  /**
3875
3874
  *
3876
3875
  * TUNA accounts
@@ -3892,6 +3891,9 @@ type LiquidateTunaSpotPositionFusionInput<TAccountAuthority extends string = str
3892
3891
  tunaPositionAtaB: Address<TAccountTunaPositionAtaB>;
3893
3892
  feeRecipientAtaA: Address<TAccountFeeRecipientAtaA>;
3894
3893
  feeRecipientAtaB: Address<TAccountFeeRecipientAtaB>;
3894
+ tunaPositionOwner: Address<TAccountTunaPositionOwner>;
3895
+ tunaPositionOwnerAtaA?: Address<TAccountTunaPositionOwnerAtaA>;
3896
+ tunaPositionOwnerAtaB?: Address<TAccountTunaPositionOwnerAtaB>;
3895
3897
  pythOraclePriceFeedA: Address<TAccountPythOraclePriceFeedA>;
3896
3898
  pythOraclePriceFeedB: Address<TAccountPythOraclePriceFeedB>;
3897
3899
  /**
@@ -3911,9 +3913,9 @@ type LiquidateTunaSpotPositionFusionInput<TAccountAuthority extends string = str
3911
3913
  withdrawPercent: LiquidateTunaSpotPositionFusionInstructionDataArgs['withdrawPercent'];
3912
3914
  remainingAccountsInfo: LiquidateTunaSpotPositionFusionInstructionDataArgs['remainingAccountsInfo'];
3913
3915
  };
3914
- declare function getLiquidateTunaSpotPositionFusionInstruction<TAccountAuthority extends string, TAccountTunaConfig extends string, TAccountMintA extends string, TAccountMintB extends string, TAccountTokenProgramA extends string, TAccountTokenProgramB extends string, TAccountMarket extends string, TAccountVaultA extends string, TAccountVaultB extends string, TAccountVaultAAta extends string, TAccountVaultBAta extends string, TAccountTunaPosition extends string, TAccountTunaPositionAtaA extends string, TAccountTunaPositionAtaB extends string, TAccountFeeRecipientAtaA extends string, TAccountFeeRecipientAtaB extends string, TAccountPythOraclePriceFeedA extends string, TAccountPythOraclePriceFeedB extends string, TAccountFusionammProgram extends string, TAccountFusionPool extends string, TAccountMemoProgram extends string, TAccountSystemProgram extends string, TProgramAddress extends Address = typeof TUNA_PROGRAM_ADDRESS>(input: LiquidateTunaSpotPositionFusionInput<TAccountAuthority, TAccountTunaConfig, TAccountMintA, TAccountMintB, TAccountTokenProgramA, TAccountTokenProgramB, TAccountMarket, TAccountVaultA, TAccountVaultB, TAccountVaultAAta, TAccountVaultBAta, TAccountTunaPosition, TAccountTunaPositionAtaA, TAccountTunaPositionAtaB, TAccountFeeRecipientAtaA, TAccountFeeRecipientAtaB, TAccountPythOraclePriceFeedA, TAccountPythOraclePriceFeedB, TAccountFusionammProgram, TAccountFusionPool, TAccountMemoProgram, TAccountSystemProgram>, config?: {
3916
+ declare function getLiquidateTunaSpotPositionFusionInstruction<TAccountAuthority extends string, TAccountTunaConfig extends string, TAccountMintA extends string, TAccountMintB extends string, TAccountTokenProgramA extends string, TAccountTokenProgramB extends string, TAccountMarket extends string, TAccountVaultA extends string, TAccountVaultB extends string, TAccountVaultAAta extends string, TAccountVaultBAta extends string, TAccountTunaPosition extends string, TAccountTunaPositionAtaA extends string, TAccountTunaPositionAtaB extends string, TAccountFeeRecipientAtaA extends string, TAccountFeeRecipientAtaB extends string, TAccountTunaPositionOwner extends string, TAccountTunaPositionOwnerAtaA extends string, TAccountTunaPositionOwnerAtaB extends string, TAccountPythOraclePriceFeedA extends string, TAccountPythOraclePriceFeedB extends string, TAccountFusionammProgram extends string, TAccountFusionPool extends string, TAccountMemoProgram extends string, TAccountSystemProgram extends string, TProgramAddress extends Address = typeof TUNA_PROGRAM_ADDRESS>(input: LiquidateTunaSpotPositionFusionInput<TAccountAuthority, TAccountTunaConfig, TAccountMintA, TAccountMintB, TAccountTokenProgramA, TAccountTokenProgramB, TAccountMarket, TAccountVaultA, TAccountVaultB, TAccountVaultAAta, TAccountVaultBAta, TAccountTunaPosition, TAccountTunaPositionAtaA, TAccountTunaPositionAtaB, TAccountFeeRecipientAtaA, TAccountFeeRecipientAtaB, TAccountTunaPositionOwner, TAccountTunaPositionOwnerAtaA, TAccountTunaPositionOwnerAtaB, TAccountPythOraclePriceFeedA, TAccountPythOraclePriceFeedB, TAccountFusionammProgram, TAccountFusionPool, TAccountMemoProgram, TAccountSystemProgram>, config?: {
3915
3917
  programAddress?: TProgramAddress;
3916
- }): LiquidateTunaSpotPositionFusionInstruction<TProgramAddress, TAccountAuthority, TAccountTunaConfig, TAccountMintA, TAccountMintB, TAccountTokenProgramA, TAccountTokenProgramB, TAccountMarket, TAccountVaultA, TAccountVaultB, TAccountVaultAAta, TAccountVaultBAta, TAccountTunaPosition, TAccountTunaPositionAtaA, TAccountTunaPositionAtaB, TAccountFeeRecipientAtaA, TAccountFeeRecipientAtaB, TAccountPythOraclePriceFeedA, TAccountPythOraclePriceFeedB, TAccountFusionammProgram, TAccountFusionPool, TAccountMemoProgram, TAccountSystemProgram>;
3918
+ }): LiquidateTunaSpotPositionFusionInstruction<TProgramAddress, TAccountAuthority, TAccountTunaConfig, TAccountMintA, TAccountMintB, TAccountTokenProgramA, TAccountTokenProgramB, TAccountMarket, TAccountVaultA, TAccountVaultB, TAccountVaultAAta, TAccountVaultBAta, TAccountTunaPosition, TAccountTunaPositionAtaA, TAccountTunaPositionAtaB, TAccountFeeRecipientAtaA, TAccountFeeRecipientAtaB, TAccountTunaPositionOwner, TAccountTunaPositionOwnerAtaA, TAccountTunaPositionOwnerAtaB, TAccountPythOraclePriceFeedA, TAccountPythOraclePriceFeedB, TAccountFusionammProgram, TAccountFusionPool, TAccountMemoProgram, TAccountSystemProgram>;
3917
3919
  type ParsedLiquidateTunaSpotPositionFusionInstruction<TProgram extends string = typeof TUNA_PROGRAM_ADDRESS, TAccountMetas extends readonly IAccountMeta[] = readonly IAccountMeta[]> = {
3918
3920
  programAddress: Address<TProgram>;
3919
3921
  accounts: {
@@ -3938,22 +3940,25 @@ type ParsedLiquidateTunaSpotPositionFusionInstruction<TProgram extends string =
3938
3940
  tunaPositionAtaB: TAccountMetas[13];
3939
3941
  feeRecipientAtaA: TAccountMetas[14];
3940
3942
  feeRecipientAtaB: TAccountMetas[15];
3941
- pythOraclePriceFeedA: TAccountMetas[16];
3942
- pythOraclePriceFeedB: TAccountMetas[17];
3943
+ tunaPositionOwner: TAccountMetas[16];
3944
+ tunaPositionOwnerAtaA?: TAccountMetas[17] | undefined;
3945
+ tunaPositionOwnerAtaB?: TAccountMetas[18] | undefined;
3946
+ pythOraclePriceFeedA: TAccountMetas[19];
3947
+ pythOraclePriceFeedB: TAccountMetas[20];
3943
3948
  /**
3944
3949
  *
3945
3950
  * Fusion accounts
3946
3951
  *
3947
3952
  */
3948
- fusionammProgram: TAccountMetas[18];
3949
- fusionPool: TAccountMetas[19];
3950
- memoProgram: TAccountMetas[20];
3953
+ fusionammProgram: TAccountMetas[21];
3954
+ fusionPool: TAccountMetas[22];
3955
+ memoProgram: TAccountMetas[23];
3951
3956
  /**
3952
3957
  *
3953
3958
  * Other accounts
3954
3959
  *
3955
3960
  */
3956
- systemProgram: TAccountMetas[21];
3961
+ systemProgram: TAccountMetas[24];
3957
3962
  };
3958
3963
  data: LiquidateTunaSpotPositionFusionInstructionData;
3959
3964
  };
@@ -3969,7 +3974,7 @@ declare function parseLiquidateTunaSpotPositionFusionInstruction<TProgram extend
3969
3974
 
3970
3975
  declare const LIQUIDATE_TUNA_SPOT_POSITION_ORCA_DISCRIMINATOR: Uint8Array<ArrayBuffer>;
3971
3976
  declare function getLiquidateTunaSpotPositionOrcaDiscriminatorBytes(): ReadonlyUint8Array;
3972
- type LiquidateTunaSpotPositionOrcaInstruction<TProgram extends string = typeof TUNA_PROGRAM_ADDRESS, TAccountAuthority extends string | IAccountMeta<string> = string, TAccountTunaConfig extends string | IAccountMeta<string> = string, TAccountMintA extends string | IAccountMeta<string> = string, TAccountMintB extends string | IAccountMeta<string> = string, TAccountTokenProgramA extends string | IAccountMeta<string> = string, TAccountTokenProgramB extends string | IAccountMeta<string> = string, TAccountMarket extends string | IAccountMeta<string> = string, TAccountVaultA extends string | IAccountMeta<string> = string, TAccountVaultB extends string | IAccountMeta<string> = string, TAccountVaultAAta extends string | IAccountMeta<string> = string, TAccountVaultBAta extends string | IAccountMeta<string> = string, TAccountTunaPosition extends string | IAccountMeta<string> = string, TAccountTunaPositionAtaA extends string | IAccountMeta<string> = string, TAccountTunaPositionAtaB extends string | IAccountMeta<string> = string, TAccountFeeRecipientAtaA extends string | IAccountMeta<string> = string, TAccountFeeRecipientAtaB extends string | IAccountMeta<string> = string, TAccountPythOraclePriceFeedA extends string | IAccountMeta<string> = string, TAccountPythOraclePriceFeedB extends string | IAccountMeta<string> = string, TAccountWhirlpoolProgram extends string | IAccountMeta<string> = string, TAccountWhirlpool extends string | IAccountMeta<string> = string, TAccountMemoProgram extends string | IAccountMeta<string> = string, TAccountSystemProgram extends string | IAccountMeta<string> = '11111111111111111111111111111111', TRemainingAccounts extends readonly IAccountMeta<string>[] = []> = IInstruction<TProgram> & IInstructionWithData<Uint8Array> & IInstructionWithAccounts<[
3977
+ type LiquidateTunaSpotPositionOrcaInstruction<TProgram extends string = typeof TUNA_PROGRAM_ADDRESS, TAccountAuthority extends string | IAccountMeta<string> = string, TAccountTunaConfig extends string | IAccountMeta<string> = string, TAccountMintA extends string | IAccountMeta<string> = string, TAccountMintB extends string | IAccountMeta<string> = string, TAccountTokenProgramA extends string | IAccountMeta<string> = string, TAccountTokenProgramB extends string | IAccountMeta<string> = string, TAccountMarket extends string | IAccountMeta<string> = string, TAccountVaultA extends string | IAccountMeta<string> = string, TAccountVaultB extends string | IAccountMeta<string> = string, TAccountVaultAAta extends string | IAccountMeta<string> = string, TAccountVaultBAta extends string | IAccountMeta<string> = string, TAccountTunaPosition extends string | IAccountMeta<string> = string, TAccountTunaPositionAtaA extends string | IAccountMeta<string> = string, TAccountTunaPositionAtaB extends string | IAccountMeta<string> = string, TAccountFeeRecipientAtaA extends string | IAccountMeta<string> = string, TAccountFeeRecipientAtaB extends string | IAccountMeta<string> = string, TAccountTunaPositionOwner extends string | IAccountMeta<string> = string, TAccountTunaPositionOwnerAtaA extends string | IAccountMeta<string> = string, TAccountTunaPositionOwnerAtaB extends string | IAccountMeta<string> = string, TAccountPythOraclePriceFeedA extends string | IAccountMeta<string> = string, TAccountPythOraclePriceFeedB extends string | IAccountMeta<string> = string, TAccountWhirlpoolProgram extends string | IAccountMeta<string> = string, TAccountWhirlpool extends string | IAccountMeta<string> = string, TAccountMemoProgram extends string | IAccountMeta<string> = string, TAccountSystemProgram extends string | IAccountMeta<string> = '11111111111111111111111111111111', TRemainingAccounts extends readonly IAccountMeta<string>[] = []> = IInstruction<TProgram> & IInstructionWithData<Uint8Array> & IInstructionWithAccounts<[
3973
3978
  TAccountAuthority extends string ? WritableSignerAccount<TAccountAuthority> & IAccountSignerMeta<TAccountAuthority> : TAccountAuthority,
3974
3979
  TAccountTunaConfig extends string ? ReadonlyAccount<TAccountTunaConfig> : TAccountTunaConfig,
3975
3980
  TAccountMintA extends string ? ReadonlyAccount<TAccountMintA> : TAccountMintA,
@@ -3986,6 +3991,9 @@ type LiquidateTunaSpotPositionOrcaInstruction<TProgram extends string = typeof T
3986
3991
  TAccountTunaPositionAtaB extends string ? WritableAccount<TAccountTunaPositionAtaB> : TAccountTunaPositionAtaB,
3987
3992
  TAccountFeeRecipientAtaA extends string ? WritableAccount<TAccountFeeRecipientAtaA> : TAccountFeeRecipientAtaA,
3988
3993
  TAccountFeeRecipientAtaB extends string ? WritableAccount<TAccountFeeRecipientAtaB> : TAccountFeeRecipientAtaB,
3994
+ TAccountTunaPositionOwner extends string ? WritableAccount<TAccountTunaPositionOwner> : TAccountTunaPositionOwner,
3995
+ TAccountTunaPositionOwnerAtaA extends string ? WritableAccount<TAccountTunaPositionOwnerAtaA> : TAccountTunaPositionOwnerAtaA,
3996
+ TAccountTunaPositionOwnerAtaB extends string ? WritableAccount<TAccountTunaPositionOwnerAtaB> : TAccountTunaPositionOwnerAtaB,
3989
3997
  TAccountPythOraclePriceFeedA extends string ? ReadonlyAccount<TAccountPythOraclePriceFeedA> : TAccountPythOraclePriceFeedA,
3990
3998
  TAccountPythOraclePriceFeedB extends string ? ReadonlyAccount<TAccountPythOraclePriceFeedB> : TAccountPythOraclePriceFeedB,
3991
3999
  TAccountWhirlpoolProgram extends string ? ReadonlyAccount<TAccountWhirlpoolProgram> : TAccountWhirlpoolProgram,
@@ -4006,7 +4014,7 @@ type LiquidateTunaSpotPositionOrcaInstructionDataArgs = {
4006
4014
  declare function getLiquidateTunaSpotPositionOrcaInstructionDataEncoder(): Encoder<LiquidateTunaSpotPositionOrcaInstructionDataArgs>;
4007
4015
  declare function getLiquidateTunaSpotPositionOrcaInstructionDataDecoder(): Decoder<LiquidateTunaSpotPositionOrcaInstructionData>;
4008
4016
  declare function getLiquidateTunaSpotPositionOrcaInstructionDataCodec(): Codec<LiquidateTunaSpotPositionOrcaInstructionDataArgs, LiquidateTunaSpotPositionOrcaInstructionData>;
4009
- type LiquidateTunaSpotPositionOrcaInput<TAccountAuthority extends string = string, TAccountTunaConfig extends string = string, TAccountMintA extends string = string, TAccountMintB extends string = string, TAccountTokenProgramA extends string = string, TAccountTokenProgramB extends string = string, TAccountMarket extends string = string, TAccountVaultA extends string = string, TAccountVaultB extends string = string, TAccountVaultAAta extends string = string, TAccountVaultBAta extends string = string, TAccountTunaPosition extends string = string, TAccountTunaPositionAtaA extends string = string, TAccountTunaPositionAtaB extends string = string, TAccountFeeRecipientAtaA extends string = string, TAccountFeeRecipientAtaB extends string = string, TAccountPythOraclePriceFeedA extends string = string, TAccountPythOraclePriceFeedB extends string = string, TAccountWhirlpoolProgram extends string = string, TAccountWhirlpool extends string = string, TAccountMemoProgram extends string = string, TAccountSystemProgram extends string = string> = {
4017
+ type LiquidateTunaSpotPositionOrcaInput<TAccountAuthority extends string = string, TAccountTunaConfig extends string = string, TAccountMintA extends string = string, TAccountMintB extends string = string, TAccountTokenProgramA extends string = string, TAccountTokenProgramB extends string = string, TAccountMarket extends string = string, TAccountVaultA extends string = string, TAccountVaultB extends string = string, TAccountVaultAAta extends string = string, TAccountVaultBAta extends string = string, TAccountTunaPosition extends string = string, TAccountTunaPositionAtaA extends string = string, TAccountTunaPositionAtaB extends string = string, TAccountFeeRecipientAtaA extends string = string, TAccountFeeRecipientAtaB extends string = string, TAccountTunaPositionOwner extends string = string, TAccountTunaPositionOwnerAtaA extends string = string, TAccountTunaPositionOwnerAtaB extends string = string, TAccountPythOraclePriceFeedA extends string = string, TAccountPythOraclePriceFeedB extends string = string, TAccountWhirlpoolProgram extends string = string, TAccountWhirlpool extends string = string, TAccountMemoProgram extends string = string, TAccountSystemProgram extends string = string> = {
4010
4018
  /**
4011
4019
  *
4012
4020
  * TUNA accounts
@@ -4028,6 +4036,9 @@ type LiquidateTunaSpotPositionOrcaInput<TAccountAuthority extends string = strin
4028
4036
  tunaPositionAtaB: Address<TAccountTunaPositionAtaB>;
4029
4037
  feeRecipientAtaA: Address<TAccountFeeRecipientAtaA>;
4030
4038
  feeRecipientAtaB: Address<TAccountFeeRecipientAtaB>;
4039
+ tunaPositionOwner: Address<TAccountTunaPositionOwner>;
4040
+ tunaPositionOwnerAtaA?: Address<TAccountTunaPositionOwnerAtaA>;
4041
+ tunaPositionOwnerAtaB?: Address<TAccountTunaPositionOwnerAtaB>;
4031
4042
  pythOraclePriceFeedA: Address<TAccountPythOraclePriceFeedA>;
4032
4043
  pythOraclePriceFeedB: Address<TAccountPythOraclePriceFeedB>;
4033
4044
  /**
@@ -4047,9 +4058,9 @@ type LiquidateTunaSpotPositionOrcaInput<TAccountAuthority extends string = strin
4047
4058
  withdrawPercent: LiquidateTunaSpotPositionOrcaInstructionDataArgs['withdrawPercent'];
4048
4059
  remainingAccountsInfo: LiquidateTunaSpotPositionOrcaInstructionDataArgs['remainingAccountsInfo'];
4049
4060
  };
4050
- declare function getLiquidateTunaSpotPositionOrcaInstruction<TAccountAuthority extends string, TAccountTunaConfig extends string, TAccountMintA extends string, TAccountMintB extends string, TAccountTokenProgramA extends string, TAccountTokenProgramB extends string, TAccountMarket extends string, TAccountVaultA extends string, TAccountVaultB extends string, TAccountVaultAAta extends string, TAccountVaultBAta extends string, TAccountTunaPosition extends string, TAccountTunaPositionAtaA extends string, TAccountTunaPositionAtaB extends string, TAccountFeeRecipientAtaA extends string, TAccountFeeRecipientAtaB extends string, TAccountPythOraclePriceFeedA extends string, TAccountPythOraclePriceFeedB extends string, TAccountWhirlpoolProgram extends string, TAccountWhirlpool extends string, TAccountMemoProgram extends string, TAccountSystemProgram extends string, TProgramAddress extends Address = typeof TUNA_PROGRAM_ADDRESS>(input: LiquidateTunaSpotPositionOrcaInput<TAccountAuthority, TAccountTunaConfig, TAccountMintA, TAccountMintB, TAccountTokenProgramA, TAccountTokenProgramB, TAccountMarket, TAccountVaultA, TAccountVaultB, TAccountVaultAAta, TAccountVaultBAta, TAccountTunaPosition, TAccountTunaPositionAtaA, TAccountTunaPositionAtaB, TAccountFeeRecipientAtaA, TAccountFeeRecipientAtaB, TAccountPythOraclePriceFeedA, TAccountPythOraclePriceFeedB, TAccountWhirlpoolProgram, TAccountWhirlpool, TAccountMemoProgram, TAccountSystemProgram>, config?: {
4061
+ declare function getLiquidateTunaSpotPositionOrcaInstruction<TAccountAuthority extends string, TAccountTunaConfig extends string, TAccountMintA extends string, TAccountMintB extends string, TAccountTokenProgramA extends string, TAccountTokenProgramB extends string, TAccountMarket extends string, TAccountVaultA extends string, TAccountVaultB extends string, TAccountVaultAAta extends string, TAccountVaultBAta extends string, TAccountTunaPosition extends string, TAccountTunaPositionAtaA extends string, TAccountTunaPositionAtaB extends string, TAccountFeeRecipientAtaA extends string, TAccountFeeRecipientAtaB extends string, TAccountTunaPositionOwner extends string, TAccountTunaPositionOwnerAtaA extends string, TAccountTunaPositionOwnerAtaB extends string, TAccountPythOraclePriceFeedA extends string, TAccountPythOraclePriceFeedB extends string, TAccountWhirlpoolProgram extends string, TAccountWhirlpool extends string, TAccountMemoProgram extends string, TAccountSystemProgram extends string, TProgramAddress extends Address = typeof TUNA_PROGRAM_ADDRESS>(input: LiquidateTunaSpotPositionOrcaInput<TAccountAuthority, TAccountTunaConfig, TAccountMintA, TAccountMintB, TAccountTokenProgramA, TAccountTokenProgramB, TAccountMarket, TAccountVaultA, TAccountVaultB, TAccountVaultAAta, TAccountVaultBAta, TAccountTunaPosition, TAccountTunaPositionAtaA, TAccountTunaPositionAtaB, TAccountFeeRecipientAtaA, TAccountFeeRecipientAtaB, TAccountTunaPositionOwner, TAccountTunaPositionOwnerAtaA, TAccountTunaPositionOwnerAtaB, TAccountPythOraclePriceFeedA, TAccountPythOraclePriceFeedB, TAccountWhirlpoolProgram, TAccountWhirlpool, TAccountMemoProgram, TAccountSystemProgram>, config?: {
4051
4062
  programAddress?: TProgramAddress;
4052
- }): LiquidateTunaSpotPositionOrcaInstruction<TProgramAddress, TAccountAuthority, TAccountTunaConfig, TAccountMintA, TAccountMintB, TAccountTokenProgramA, TAccountTokenProgramB, TAccountMarket, TAccountVaultA, TAccountVaultB, TAccountVaultAAta, TAccountVaultBAta, TAccountTunaPosition, TAccountTunaPositionAtaA, TAccountTunaPositionAtaB, TAccountFeeRecipientAtaA, TAccountFeeRecipientAtaB, TAccountPythOraclePriceFeedA, TAccountPythOraclePriceFeedB, TAccountWhirlpoolProgram, TAccountWhirlpool, TAccountMemoProgram, TAccountSystemProgram>;
4063
+ }): LiquidateTunaSpotPositionOrcaInstruction<TProgramAddress, TAccountAuthority, TAccountTunaConfig, TAccountMintA, TAccountMintB, TAccountTokenProgramA, TAccountTokenProgramB, TAccountMarket, TAccountVaultA, TAccountVaultB, TAccountVaultAAta, TAccountVaultBAta, TAccountTunaPosition, TAccountTunaPositionAtaA, TAccountTunaPositionAtaB, TAccountFeeRecipientAtaA, TAccountFeeRecipientAtaB, TAccountTunaPositionOwner, TAccountTunaPositionOwnerAtaA, TAccountTunaPositionOwnerAtaB, TAccountPythOraclePriceFeedA, TAccountPythOraclePriceFeedB, TAccountWhirlpoolProgram, TAccountWhirlpool, TAccountMemoProgram, TAccountSystemProgram>;
4053
4064
  type ParsedLiquidateTunaSpotPositionOrcaInstruction<TProgram extends string = typeof TUNA_PROGRAM_ADDRESS, TAccountMetas extends readonly IAccountMeta[] = readonly IAccountMeta[]> = {
4054
4065
  programAddress: Address<TProgram>;
4055
4066
  accounts: {
@@ -4074,22 +4085,25 @@ type ParsedLiquidateTunaSpotPositionOrcaInstruction<TProgram extends string = ty
4074
4085
  tunaPositionAtaB: TAccountMetas[13];
4075
4086
  feeRecipientAtaA: TAccountMetas[14];
4076
4087
  feeRecipientAtaB: TAccountMetas[15];
4077
- pythOraclePriceFeedA: TAccountMetas[16];
4078
- pythOraclePriceFeedB: TAccountMetas[17];
4088
+ tunaPositionOwner: TAccountMetas[16];
4089
+ tunaPositionOwnerAtaA?: TAccountMetas[17] | undefined;
4090
+ tunaPositionOwnerAtaB?: TAccountMetas[18] | undefined;
4091
+ pythOraclePriceFeedA: TAccountMetas[19];
4092
+ pythOraclePriceFeedB: TAccountMetas[20];
4079
4093
  /**
4080
4094
  *
4081
4095
  * Orca accounts
4082
4096
  *
4083
4097
  */
4084
- whirlpoolProgram: TAccountMetas[18];
4085
- whirlpool: TAccountMetas[19];
4086
- memoProgram: TAccountMetas[20];
4098
+ whirlpoolProgram: TAccountMetas[21];
4099
+ whirlpool: TAccountMetas[22];
4100
+ memoProgram: TAccountMetas[23];
4087
4101
  /**
4088
4102
  *
4089
4103
  * Other accounts
4090
4104
  *
4091
4105
  */
4092
- systemProgram: TAccountMetas[21];
4106
+ systemProgram: TAccountMetas[24];
4093
4107
  };
4094
4108
  data: LiquidateTunaSpotPositionOrcaInstructionData;
4095
4109
  };
@@ -6784,11 +6798,11 @@ declare function liquidateTunaLpPositionOrcaInstruction(authority: TransactionSi
6784
6798
  declare function liquidateTunaLpPositionFusionInstructions(authority: TransactionSigner, tunaPosition: Account<TunaLpPosition>, tunaConfig: Account<TunaConfig>, mintA: Account<Mint>, mintB: Account<Mint>, vaultA: Account<Vault>, vaultB: Account<Vault>, whirlpool: Account<FusionPool>, withdrawPercent: number): Promise<IInstruction[]>;
6785
6799
  declare function liquidateTunaLpPositionFusionInstruction(authority: TransactionSigner, tunaPosition: Account<TunaLpPosition>, tunaConfig: Account<TunaConfig>, mintA: Account<Mint>, mintB: Account<Mint>, vaultA: Account<Vault>, vaultB: Account<Vault>, fusionPool: Account<FusionPool>, withdrawPercent: number): Promise<IInstruction>;
6786
6800
 
6787
- declare function liquidateTunaSpotPositionFusionInstructions(authority: TransactionSigner, tunaPosition: Account<TunaSpotPosition>, tunaConfig: Account<TunaConfig>, mintA: Account<Mint>, mintB: Account<Mint>, vaultA: Account<Vault>, vaultB: Account<Vault>, fusionPool: Account<FusionPool>, withdrawPercent: number): Promise<IInstruction[]>;
6788
- declare function liquidateTunaSpotPositionFusionInstruction(authority: TransactionSigner, tunaPositionAddress: Address, tunaConfig: Account<TunaConfig>, mintA: Account<Mint>, mintB: Account<Mint>, vaultA: Account<Vault>, vaultB: Account<Vault>, fusionPool: Account<FusionPool>, withdrawPercent: number): Promise<IInstruction>;
6801
+ declare function liquidateTunaSpotPositionFusionInstructions(authority: TransactionSigner, tunaPosition: Account<TunaSpotPosition>, tunaConfig: Account<TunaConfig>, mintA: Account<Mint>, mintB: Account<Mint>, vaultA: Account<Vault>, vaultB: Account<Vault>, fusionPool: Account<FusionPool>, createTunaPositionOwnerAta: boolean, withdrawPercent: number): Promise<IInstruction[]>;
6802
+ declare function liquidateTunaSpotPositionFusionInstruction(authority: TransactionSigner, tunaPosition: Account<TunaSpotPosition>, tunaConfig: Account<TunaConfig>, mintA: Account<Mint>, mintB: Account<Mint>, vaultA: Account<Vault>, vaultB: Account<Vault>, fusionPool: Account<FusionPool>, withdrawPercent: number): Promise<IInstruction>;
6789
6803
 
6790
- declare function liquidateTunaSpotPositionOrcaInstructions(authority: TransactionSigner, tunaPosition: Account<TunaSpotPosition>, tunaConfig: Account<TunaConfig>, mintA: Account<Mint>, mintB: Account<Mint>, vaultA: Account<Vault>, vaultB: Account<Vault>, whirlpool: Account<Whirlpool>, withdrawPercent: number): Promise<IInstruction[]>;
6791
- declare function liquidateTunaSpotPositionOrcaInstruction(authority: TransactionSigner, tunaPositionAddress: Address, tunaConfig: Account<TunaConfig>, mintA: Account<Mint>, mintB: Account<Mint>, vaultA: Account<Vault>, vaultB: Account<Vault>, whirlpool: Account<Whirlpool>, withdrawPercent: number): Promise<IInstruction>;
6804
+ declare function liquidateTunaSpotPositionOrcaInstructions(authority: TransactionSigner, tunaPosition: Account<TunaSpotPosition>, tunaConfig: Account<TunaConfig>, mintA: Account<Mint>, mintB: Account<Mint>, vaultA: Account<Vault>, vaultB: Account<Vault>, whirlpool: Account<Whirlpool>, createTunaPositionOwnerAta: boolean, withdrawPercent: number): Promise<IInstruction[]>;
6805
+ declare function liquidateTunaSpotPositionOrcaInstruction(authority: TransactionSigner, tunaPosition: Account<TunaSpotPosition>, tunaConfig: Account<TunaConfig>, mintA: Account<Mint>, mintB: Account<Mint>, vaultA: Account<Vault>, vaultB: Account<Vault>, whirlpool: Account<Whirlpool>, withdrawPercent: number): Promise<IInstruction>;
6792
6806
 
6793
6807
  declare function openTunaLpPositionOrcaInstruction(rpc: Rpc<GetAccountInfoApi & GetMultipleAccountsApi>, authority: TransactionSigner, positionMint: TransactionSigner, whirlpoolAddress: Address, args: OpenTunaLpPositionOrcaInstructionDataArgs): Promise<IInstruction>;
6794
6808
 
package/dist/index.js CHANGED
@@ -1252,7 +1252,6 @@ function getTunaSpotPositionEncoder() {
1252
1252
  ["positionToken", getPoolTokenEncoder()],
1253
1253
  ["collateralToken", getPoolTokenEncoder()],
1254
1254
  ["flags", (0, import_kit11.getU32Encoder)()],
1255
- ["state", getTunaPositionStateEncoder()],
1256
1255
  ["amount", (0, import_kit11.getU64Encoder)()],
1257
1256
  ["loanShares", (0, import_kit11.getU64Encoder)()],
1258
1257
  ["loanFunds", (0, import_kit11.getU64Encoder)()],
@@ -1277,7 +1276,6 @@ function getTunaSpotPositionDecoder() {
1277
1276
  ["positionToken", getPoolTokenDecoder()],
1278
1277
  ["collateralToken", getPoolTokenDecoder()],
1279
1278
  ["flags", (0, import_kit11.getU32Decoder)()],
1280
- ["state", getTunaPositionStateDecoder()],
1281
1279
  ["amount", (0, import_kit11.getU64Decoder)()],
1282
1280
  ["loanShares", (0, import_kit11.getU64Decoder)()],
1283
1281
  ["loanFunds", (0, import_kit11.getU64Decoder)()],
@@ -1324,7 +1322,7 @@ async function fetchAllMaybeTunaSpotPosition(rpc, addresses, config) {
1324
1322
  );
1325
1323
  }
1326
1324
  function getTunaSpotPositionSize() {
1327
- return 347;
1325
+ return 346;
1328
1326
  }
1329
1327
 
1330
1328
  // src/generated/accounts/vault.ts
@@ -5955,6 +5953,18 @@ function getLiquidateTunaSpotPositionFusionInstruction(input, config) {
5955
5953
  value: input.feeRecipientAtaB ?? null,
5956
5954
  isWritable: true
5957
5955
  },
5956
+ tunaPositionOwner: {
5957
+ value: input.tunaPositionOwner ?? null,
5958
+ isWritable: true
5959
+ },
5960
+ tunaPositionOwnerAtaA: {
5961
+ value: input.tunaPositionOwnerAtaA ?? null,
5962
+ isWritable: true
5963
+ },
5964
+ tunaPositionOwnerAtaB: {
5965
+ value: input.tunaPositionOwnerAtaB ?? null,
5966
+ isWritable: true
5967
+ },
5958
5968
  pythOraclePriceFeedA: {
5959
5969
  value: input.pythOraclePriceFeedA ?? null,
5960
5970
  isWritable: false
@@ -5995,6 +6005,9 @@ function getLiquidateTunaSpotPositionFusionInstruction(input, config) {
5995
6005
  getAccountMeta(accounts.tunaPositionAtaB),
5996
6006
  getAccountMeta(accounts.feeRecipientAtaA),
5997
6007
  getAccountMeta(accounts.feeRecipientAtaB),
6008
+ getAccountMeta(accounts.tunaPositionOwner),
6009
+ getAccountMeta(accounts.tunaPositionOwnerAtaA),
6010
+ getAccountMeta(accounts.tunaPositionOwnerAtaB),
5998
6011
  getAccountMeta(accounts.pythOraclePriceFeedA),
5999
6012
  getAccountMeta(accounts.pythOraclePriceFeedB),
6000
6013
  getAccountMeta(accounts.fusionammProgram),
@@ -6010,7 +6023,7 @@ function getLiquidateTunaSpotPositionFusionInstruction(input, config) {
6010
6023
  return instruction;
6011
6024
  }
6012
6025
  function parseLiquidateTunaSpotPositionFusionInstruction(instruction) {
6013
- if (instruction.accounts.length < 22) {
6026
+ if (instruction.accounts.length < 25) {
6014
6027
  throw new Error("Not enough accounts");
6015
6028
  }
6016
6029
  let accountIndex = 0;
@@ -6019,6 +6032,10 @@ function parseLiquidateTunaSpotPositionFusionInstruction(instruction) {
6019
6032
  accountIndex += 1;
6020
6033
  return accountMeta;
6021
6034
  };
6035
+ const getNextOptionalAccount = () => {
6036
+ const accountMeta = getNextAccount();
6037
+ return accountMeta.address === TUNA_PROGRAM_ADDRESS ? void 0 : accountMeta;
6038
+ };
6022
6039
  return {
6023
6040
  programAddress: instruction.programAddress,
6024
6041
  accounts: {
@@ -6038,6 +6055,9 @@ function parseLiquidateTunaSpotPositionFusionInstruction(instruction) {
6038
6055
  tunaPositionAtaB: getNextAccount(),
6039
6056
  feeRecipientAtaA: getNextAccount(),
6040
6057
  feeRecipientAtaB: getNextAccount(),
6058
+ tunaPositionOwner: getNextAccount(),
6059
+ tunaPositionOwnerAtaA: getNextOptionalAccount(),
6060
+ tunaPositionOwnerAtaB: getNextOptionalAccount(),
6041
6061
  pythOraclePriceFeedA: getNextAccount(),
6042
6062
  pythOraclePriceFeedB: getNextAccount(),
6043
6063
  fusionammProgram: getNextAccount(),
@@ -6125,6 +6145,18 @@ function getLiquidateTunaSpotPositionOrcaInstruction(input, config) {
6125
6145
  value: input.feeRecipientAtaB ?? null,
6126
6146
  isWritable: true
6127
6147
  },
6148
+ tunaPositionOwner: {
6149
+ value: input.tunaPositionOwner ?? null,
6150
+ isWritable: true
6151
+ },
6152
+ tunaPositionOwnerAtaA: {
6153
+ value: input.tunaPositionOwnerAtaA ?? null,
6154
+ isWritable: true
6155
+ },
6156
+ tunaPositionOwnerAtaB: {
6157
+ value: input.tunaPositionOwnerAtaB ?? null,
6158
+ isWritable: true
6159
+ },
6128
6160
  pythOraclePriceFeedA: {
6129
6161
  value: input.pythOraclePriceFeedA ?? null,
6130
6162
  isWritable: false
@@ -6165,6 +6197,9 @@ function getLiquidateTunaSpotPositionOrcaInstruction(input, config) {
6165
6197
  getAccountMeta(accounts.tunaPositionAtaB),
6166
6198
  getAccountMeta(accounts.feeRecipientAtaA),
6167
6199
  getAccountMeta(accounts.feeRecipientAtaB),
6200
+ getAccountMeta(accounts.tunaPositionOwner),
6201
+ getAccountMeta(accounts.tunaPositionOwnerAtaA),
6202
+ getAccountMeta(accounts.tunaPositionOwnerAtaB),
6168
6203
  getAccountMeta(accounts.pythOraclePriceFeedA),
6169
6204
  getAccountMeta(accounts.pythOraclePriceFeedB),
6170
6205
  getAccountMeta(accounts.whirlpoolProgram),
@@ -6180,7 +6215,7 @@ function getLiquidateTunaSpotPositionOrcaInstruction(input, config) {
6180
6215
  return instruction;
6181
6216
  }
6182
6217
  function parseLiquidateTunaSpotPositionOrcaInstruction(instruction) {
6183
- if (instruction.accounts.length < 22) {
6218
+ if (instruction.accounts.length < 25) {
6184
6219
  throw new Error("Not enough accounts");
6185
6220
  }
6186
6221
  let accountIndex = 0;
@@ -6189,6 +6224,10 @@ function parseLiquidateTunaSpotPositionOrcaInstruction(instruction) {
6189
6224
  accountIndex += 1;
6190
6225
  return accountMeta;
6191
6226
  };
6227
+ const getNextOptionalAccount = () => {
6228
+ const accountMeta = getNextAccount();
6229
+ return accountMeta.address === TUNA_PROGRAM_ADDRESS ? void 0 : accountMeta;
6230
+ };
6192
6231
  return {
6193
6232
  programAddress: instruction.programAddress,
6194
6233
  accounts: {
@@ -6208,6 +6247,9 @@ function parseLiquidateTunaSpotPositionOrcaInstruction(instruction) {
6208
6247
  tunaPositionAtaB: getNextAccount(),
6209
6248
  feeRecipientAtaA: getNextAccount(),
6210
6249
  feeRecipientAtaB: getNextAccount(),
6250
+ tunaPositionOwner: getNextAccount(),
6251
+ tunaPositionOwnerAtaA: getNextOptionalAccount(),
6252
+ tunaPositionOwnerAtaB: getNextOptionalAccount(),
6211
6253
  pythOraclePriceFeedA: getNextAccount(),
6212
6254
  pythOraclePriceFeedB: getNextAccount(),
6213
6255
  whirlpoolProgram: getNextAccount(),
@@ -12829,20 +12871,40 @@ var import_fusionamm_client11 = require("@crypticdot/fusionamm-client");
12829
12871
  var import_kit94 = require("@solana/kit");
12830
12872
  var import_memo16 = require("@solana-program/memo");
12831
12873
  var import_token_202223 = require("@solana-program/token-2022");
12832
- async function liquidateTunaSpotPositionFusionInstructions(authority, tunaPosition, tunaConfig, mintA, mintB, vaultA, vaultB, fusionPool, withdrawPercent) {
12874
+ async function liquidateTunaSpotPositionFusionInstructions(authority, tunaPosition, tunaConfig, mintA, mintB, vaultA, vaultB, fusionPool, createTunaPositionOwnerAta, withdrawPercent) {
12833
12875
  const instructions = [];
12834
- const positionTokenMint = tunaPosition.data.positionToken == 0 /* A */ ? mintA : mintB;
12835
- const createFeeRecipientAtaInstructions = await getCreateAtaInstructions(
12876
+ if (createTunaPositionOwnerAta) {
12877
+ const collateralTokenMint = tunaPosition.data.collateralToken == 0 /* A */ ? mintA : mintB;
12878
+ if (collateralTokenMint.address != NATIVE_MINT) {
12879
+ const createPositionOwnerAtaInstructions = await getCreateAtaInstructions(
12880
+ void 0,
12881
+ authority,
12882
+ collateralTokenMint.address,
12883
+ tunaPosition.data.authority,
12884
+ collateralTokenMint.programAddress
12885
+ );
12886
+ instructions.push(...createPositionOwnerAtaInstructions.init);
12887
+ }
12888
+ }
12889
+ const createFeeRecipientAtaAInstructions = await getCreateAtaInstructions(
12890
+ void 0,
12891
+ authority,
12892
+ mintA.address,
12893
+ tunaConfig.data.feeRecipient,
12894
+ mintA.programAddress
12895
+ );
12896
+ instructions.push(...createFeeRecipientAtaAInstructions.init);
12897
+ const createFeeRecipientAtaBInstructions = await getCreateAtaInstructions(
12836
12898
  void 0,
12837
12899
  authority,
12838
- positionTokenMint.address,
12900
+ mintB.address,
12839
12901
  tunaConfig.data.feeRecipient,
12840
- positionTokenMint.programAddress
12902
+ mintB.programAddress
12841
12903
  );
12842
- instructions.push(...createFeeRecipientAtaInstructions.init);
12904
+ instructions.push(...createFeeRecipientAtaBInstructions.init);
12843
12905
  const ix = await liquidateTunaSpotPositionFusionInstruction(
12844
12906
  authority,
12845
- tunaPosition.address,
12907
+ tunaPosition,
12846
12908
  tunaConfig,
12847
12909
  mintA,
12848
12910
  mintB,
@@ -12854,15 +12916,25 @@ async function liquidateTunaSpotPositionFusionInstructions(authority, tunaPositi
12854
12916
  instructions.push(ix);
12855
12917
  return instructions;
12856
12918
  }
12857
- async function liquidateTunaSpotPositionFusionInstruction(authority, tunaPositionAddress, tunaConfig, mintA, mintB, vaultA, vaultB, fusionPool, withdrawPercent) {
12919
+ async function liquidateTunaSpotPositionFusionInstruction(authority, tunaPosition, tunaConfig, mintA, mintB, vaultA, vaultB, fusionPool, withdrawPercent) {
12858
12920
  const marketAddress = (await getMarketAddress(fusionPool.address))[0];
12921
+ const tunaPositionOwnerAtaA = (await (0, import_token_202223.findAssociatedTokenPda)({
12922
+ owner: tunaPosition.data.authority,
12923
+ mint: mintA.address,
12924
+ tokenProgram: mintA.programAddress
12925
+ }))[0];
12926
+ const tunaPositionOwnerAtaB = (await (0, import_token_202223.findAssociatedTokenPda)({
12927
+ owner: tunaPosition.data.authority,
12928
+ mint: mintB.address,
12929
+ tokenProgram: mintB.programAddress
12930
+ }))[0];
12859
12931
  const tunaPositionAtaA = (await (0, import_token_202223.findAssociatedTokenPda)({
12860
- owner: tunaPositionAddress,
12932
+ owner: tunaPosition.address,
12861
12933
  mint: mintA.address,
12862
12934
  tokenProgram: mintA.programAddress
12863
12935
  }))[0];
12864
12936
  const tunaPositionAtaB = (await (0, import_token_202223.findAssociatedTokenPda)({
12865
- owner: tunaPositionAddress,
12937
+ owner: tunaPosition.address,
12866
12938
  mint: mintB.address,
12867
12939
  tokenProgram: mintB.programAddress
12868
12940
  }))[0];
@@ -12917,9 +12989,12 @@ async function liquidateTunaSpotPositionFusionInstruction(authority, tunaPositio
12917
12989
  vaultAAta,
12918
12990
  vaultB: vaultB.address,
12919
12991
  vaultBAta,
12920
- tunaPosition: tunaPositionAddress,
12992
+ tunaPosition: tunaPosition.address,
12921
12993
  tunaPositionAtaA,
12922
12994
  tunaPositionAtaB,
12995
+ tunaPositionOwner: tunaPosition.data.authority,
12996
+ tunaPositionOwnerAtaA: tunaPosition.data.collateralToken == 0 /* A */ && mintA.address != NATIVE_MINT ? tunaPositionOwnerAtaA : void 0,
12997
+ tunaPositionOwnerAtaB: tunaPosition.data.collateralToken == 1 /* B */ && mintB.address != NATIVE_MINT ? tunaPositionOwnerAtaB : void 0,
12923
12998
  feeRecipientAtaA,
12924
12999
  feeRecipientAtaB,
12925
13000
  fusionPool: fusionPool.address,
@@ -12937,20 +13012,40 @@ var import_whirlpools_client11 = require("@orca-so/whirlpools-client");
12937
13012
  var import_kit95 = require("@solana/kit");
12938
13013
  var import_memo17 = require("@solana-program/memo");
12939
13014
  var import_token_202224 = require("@solana-program/token-2022");
12940
- async function liquidateTunaSpotPositionOrcaInstructions(authority, tunaPosition, tunaConfig, mintA, mintB, vaultA, vaultB, whirlpool, withdrawPercent) {
13015
+ async function liquidateTunaSpotPositionOrcaInstructions(authority, tunaPosition, tunaConfig, mintA, mintB, vaultA, vaultB, whirlpool, createTunaPositionOwnerAta, withdrawPercent) {
12941
13016
  const instructions = [];
12942
- const positionTokenMint = tunaPosition.data.positionToken == 0 /* A */ ? mintA : mintB;
12943
- const createFeeRecipientAtaInstructions = await getCreateAtaInstructions(
13017
+ if (createTunaPositionOwnerAta) {
13018
+ const collateralTokenMint = tunaPosition.data.collateralToken == 0 /* A */ ? mintA : mintB;
13019
+ if (collateralTokenMint.address != NATIVE_MINT) {
13020
+ const createPositionOwnerAtaInstructions = await getCreateAtaInstructions(
13021
+ void 0,
13022
+ authority,
13023
+ collateralTokenMint.address,
13024
+ tunaPosition.data.authority,
13025
+ collateralTokenMint.programAddress
13026
+ );
13027
+ instructions.push(...createPositionOwnerAtaInstructions.init);
13028
+ }
13029
+ }
13030
+ const createFeeRecipientAtaAInstructions = await getCreateAtaInstructions(
12944
13031
  void 0,
12945
13032
  authority,
12946
- positionTokenMint.address,
13033
+ mintA.address,
12947
13034
  tunaConfig.data.feeRecipient,
12948
- positionTokenMint.programAddress
13035
+ mintA.programAddress
12949
13036
  );
12950
- instructions.push(...createFeeRecipientAtaInstructions.init);
13037
+ instructions.push(...createFeeRecipientAtaAInstructions.init);
13038
+ const createFeeRecipientAtaBInstructions = await getCreateAtaInstructions(
13039
+ void 0,
13040
+ authority,
13041
+ mintB.address,
13042
+ tunaConfig.data.feeRecipient,
13043
+ mintB.programAddress
13044
+ );
13045
+ instructions.push(...createFeeRecipientAtaBInstructions.init);
12951
13046
  const ix = await liquidateTunaSpotPositionOrcaInstruction(
12952
13047
  authority,
12953
- tunaPosition.address,
13048
+ tunaPosition,
12954
13049
  tunaConfig,
12955
13050
  mintA,
12956
13051
  mintB,
@@ -12962,16 +13057,26 @@ async function liquidateTunaSpotPositionOrcaInstructions(authority, tunaPosition
12962
13057
  instructions.push(ix);
12963
13058
  return instructions;
12964
13059
  }
12965
- async function liquidateTunaSpotPositionOrcaInstruction(authority, tunaPositionAddress, tunaConfig, mintA, mintB, vaultA, vaultB, whirlpool, withdrawPercent) {
13060
+ async function liquidateTunaSpotPositionOrcaInstruction(authority, tunaPosition, tunaConfig, mintA, mintB, vaultA, vaultB, whirlpool, withdrawPercent) {
12966
13061
  const marketAddress = (await getMarketAddress(whirlpool.address))[0];
12967
13062
  const orcaOracleAddress = (await (0, import_whirlpools_client11.getOracleAddress)(whirlpool.address))[0];
13063
+ const tunaPositionOwnerAtaA = (await (0, import_token_202224.findAssociatedTokenPda)({
13064
+ owner: tunaPosition.data.authority,
13065
+ mint: mintA.address,
13066
+ tokenProgram: mintA.programAddress
13067
+ }))[0];
13068
+ const tunaPositionOwnerAtaB = (await (0, import_token_202224.findAssociatedTokenPda)({
13069
+ owner: tunaPosition.data.authority,
13070
+ mint: mintB.address,
13071
+ tokenProgram: mintB.programAddress
13072
+ }))[0];
12968
13073
  const tunaPositionAtaA = (await (0, import_token_202224.findAssociatedTokenPda)({
12969
- owner: tunaPositionAddress,
13074
+ owner: tunaPosition.address,
12970
13075
  mint: mintA.address,
12971
13076
  tokenProgram: mintA.programAddress
12972
13077
  }))[0];
12973
13078
  const tunaPositionAtaB = (await (0, import_token_202224.findAssociatedTokenPda)({
12974
- owner: tunaPositionAddress,
13079
+ owner: tunaPosition.address,
12975
13080
  mint: mintB.address,
12976
13081
  tokenProgram: mintB.programAddress
12977
13082
  }))[0];
@@ -13028,9 +13133,12 @@ async function liquidateTunaSpotPositionOrcaInstruction(authority, tunaPositionA
13028
13133
  vaultAAta,
13029
13134
  vaultB: vaultB.address,
13030
13135
  vaultBAta,
13031
- tunaPosition: tunaPositionAddress,
13136
+ tunaPosition: tunaPosition.address,
13032
13137
  tunaPositionAtaA,
13033
13138
  tunaPositionAtaB,
13139
+ tunaPositionOwner: tunaPosition.data.authority,
13140
+ tunaPositionOwnerAtaA: tunaPosition.data.collateralToken == 0 /* A */ && mintA.address != NATIVE_MINT ? tunaPositionOwnerAtaA : void 0,
13141
+ tunaPositionOwnerAtaB: tunaPosition.data.collateralToken == 1 /* B */ && mintB.address != NATIVE_MINT ? tunaPositionOwnerAtaB : void 0,
13034
13142
  feeRecipientAtaA,
13035
13143
  feeRecipientAtaB,
13036
13144
  whirlpool: whirlpool.address,
package/dist/index.mjs CHANGED
@@ -692,7 +692,6 @@ function getTunaSpotPositionEncoder() {
692
692
  ["positionToken", getPoolTokenEncoder()],
693
693
  ["collateralToken", getPoolTokenEncoder()],
694
694
  ["flags", getU32Encoder4()],
695
- ["state", getTunaPositionStateEncoder()],
696
695
  ["amount", getU64Encoder4()],
697
696
  ["loanShares", getU64Encoder4()],
698
697
  ["loanFunds", getU64Encoder4()],
@@ -717,7 +716,6 @@ function getTunaSpotPositionDecoder() {
717
716
  ["positionToken", getPoolTokenDecoder()],
718
717
  ["collateralToken", getPoolTokenDecoder()],
719
718
  ["flags", getU32Decoder4()],
720
- ["state", getTunaPositionStateDecoder()],
721
719
  ["amount", getU64Decoder4()],
722
720
  ["loanShares", getU64Decoder4()],
723
721
  ["loanFunds", getU64Decoder4()],
@@ -764,7 +762,7 @@ async function fetchAllMaybeTunaSpotPosition(rpc, addresses, config) {
764
762
  );
765
763
  }
766
764
  function getTunaSpotPositionSize() {
767
- return 347;
765
+ return 346;
768
766
  }
769
767
 
770
768
  // src/generated/accounts/vault.ts
@@ -5719,6 +5717,18 @@ function getLiquidateTunaSpotPositionFusionInstruction(input, config) {
5719
5717
  value: input.feeRecipientAtaB ?? null,
5720
5718
  isWritable: true
5721
5719
  },
5720
+ tunaPositionOwner: {
5721
+ value: input.tunaPositionOwner ?? null,
5722
+ isWritable: true
5723
+ },
5724
+ tunaPositionOwnerAtaA: {
5725
+ value: input.tunaPositionOwnerAtaA ?? null,
5726
+ isWritable: true
5727
+ },
5728
+ tunaPositionOwnerAtaB: {
5729
+ value: input.tunaPositionOwnerAtaB ?? null,
5730
+ isWritable: true
5731
+ },
5722
5732
  pythOraclePriceFeedA: {
5723
5733
  value: input.pythOraclePriceFeedA ?? null,
5724
5734
  isWritable: false
@@ -5759,6 +5769,9 @@ function getLiquidateTunaSpotPositionFusionInstruction(input, config) {
5759
5769
  getAccountMeta(accounts.tunaPositionAtaB),
5760
5770
  getAccountMeta(accounts.feeRecipientAtaA),
5761
5771
  getAccountMeta(accounts.feeRecipientAtaB),
5772
+ getAccountMeta(accounts.tunaPositionOwner),
5773
+ getAccountMeta(accounts.tunaPositionOwnerAtaA),
5774
+ getAccountMeta(accounts.tunaPositionOwnerAtaB),
5762
5775
  getAccountMeta(accounts.pythOraclePriceFeedA),
5763
5776
  getAccountMeta(accounts.pythOraclePriceFeedB),
5764
5777
  getAccountMeta(accounts.fusionammProgram),
@@ -5774,7 +5787,7 @@ function getLiquidateTunaSpotPositionFusionInstruction(input, config) {
5774
5787
  return instruction;
5775
5788
  }
5776
5789
  function parseLiquidateTunaSpotPositionFusionInstruction(instruction) {
5777
- if (instruction.accounts.length < 22) {
5790
+ if (instruction.accounts.length < 25) {
5778
5791
  throw new Error("Not enough accounts");
5779
5792
  }
5780
5793
  let accountIndex = 0;
@@ -5783,6 +5796,10 @@ function parseLiquidateTunaSpotPositionFusionInstruction(instruction) {
5783
5796
  accountIndex += 1;
5784
5797
  return accountMeta;
5785
5798
  };
5799
+ const getNextOptionalAccount = () => {
5800
+ const accountMeta = getNextAccount();
5801
+ return accountMeta.address === TUNA_PROGRAM_ADDRESS ? void 0 : accountMeta;
5802
+ };
5786
5803
  return {
5787
5804
  programAddress: instruction.programAddress,
5788
5805
  accounts: {
@@ -5802,6 +5819,9 @@ function parseLiquidateTunaSpotPositionFusionInstruction(instruction) {
5802
5819
  tunaPositionAtaB: getNextAccount(),
5803
5820
  feeRecipientAtaA: getNextAccount(),
5804
5821
  feeRecipientAtaB: getNextAccount(),
5822
+ tunaPositionOwner: getNextAccount(),
5823
+ tunaPositionOwnerAtaA: getNextOptionalAccount(),
5824
+ tunaPositionOwnerAtaB: getNextOptionalAccount(),
5805
5825
  pythOraclePriceFeedA: getNextAccount(),
5806
5826
  pythOraclePriceFeedB: getNextAccount(),
5807
5827
  fusionammProgram: getNextAccount(),
@@ -5900,6 +5920,18 @@ function getLiquidateTunaSpotPositionOrcaInstruction(input, config) {
5900
5920
  value: input.feeRecipientAtaB ?? null,
5901
5921
  isWritable: true
5902
5922
  },
5923
+ tunaPositionOwner: {
5924
+ value: input.tunaPositionOwner ?? null,
5925
+ isWritable: true
5926
+ },
5927
+ tunaPositionOwnerAtaA: {
5928
+ value: input.tunaPositionOwnerAtaA ?? null,
5929
+ isWritable: true
5930
+ },
5931
+ tunaPositionOwnerAtaB: {
5932
+ value: input.tunaPositionOwnerAtaB ?? null,
5933
+ isWritable: true
5934
+ },
5903
5935
  pythOraclePriceFeedA: {
5904
5936
  value: input.pythOraclePriceFeedA ?? null,
5905
5937
  isWritable: false
@@ -5940,6 +5972,9 @@ function getLiquidateTunaSpotPositionOrcaInstruction(input, config) {
5940
5972
  getAccountMeta(accounts.tunaPositionAtaB),
5941
5973
  getAccountMeta(accounts.feeRecipientAtaA),
5942
5974
  getAccountMeta(accounts.feeRecipientAtaB),
5975
+ getAccountMeta(accounts.tunaPositionOwner),
5976
+ getAccountMeta(accounts.tunaPositionOwnerAtaA),
5977
+ getAccountMeta(accounts.tunaPositionOwnerAtaB),
5943
5978
  getAccountMeta(accounts.pythOraclePriceFeedA),
5944
5979
  getAccountMeta(accounts.pythOraclePriceFeedB),
5945
5980
  getAccountMeta(accounts.whirlpoolProgram),
@@ -5955,7 +5990,7 @@ function getLiquidateTunaSpotPositionOrcaInstruction(input, config) {
5955
5990
  return instruction;
5956
5991
  }
5957
5992
  function parseLiquidateTunaSpotPositionOrcaInstruction(instruction) {
5958
- if (instruction.accounts.length < 22) {
5993
+ if (instruction.accounts.length < 25) {
5959
5994
  throw new Error("Not enough accounts");
5960
5995
  }
5961
5996
  let accountIndex = 0;
@@ -5964,6 +5999,10 @@ function parseLiquidateTunaSpotPositionOrcaInstruction(instruction) {
5964
5999
  accountIndex += 1;
5965
6000
  return accountMeta;
5966
6001
  };
6002
+ const getNextOptionalAccount = () => {
6003
+ const accountMeta = getNextAccount();
6004
+ return accountMeta.address === TUNA_PROGRAM_ADDRESS ? void 0 : accountMeta;
6005
+ };
5967
6006
  return {
5968
6007
  programAddress: instruction.programAddress,
5969
6008
  accounts: {
@@ -5983,6 +6022,9 @@ function parseLiquidateTunaSpotPositionOrcaInstruction(instruction) {
5983
6022
  tunaPositionAtaB: getNextAccount(),
5984
6023
  feeRecipientAtaA: getNextAccount(),
5985
6024
  feeRecipientAtaB: getNextAccount(),
6025
+ tunaPositionOwner: getNextAccount(),
6026
+ tunaPositionOwnerAtaA: getNextOptionalAccount(),
6027
+ tunaPositionOwnerAtaB: getNextOptionalAccount(),
5986
6028
  pythOraclePriceFeedA: getNextAccount(),
5987
6029
  pythOraclePriceFeedB: getNextAccount(),
5988
6030
  whirlpoolProgram: getNextAccount(),
@@ -13096,20 +13138,40 @@ import { FUSIONAMM_PROGRAM_ADDRESS as FUSIONAMM_PROGRAM_ADDRESS10 } from "@crypt
13096
13138
  import { AccountRole as AccountRole16 } from "@solana/kit";
13097
13139
  import { MEMO_PROGRAM_ADDRESS as MEMO_PROGRAM_ADDRESS16 } from "@solana-program/memo";
13098
13140
  import { findAssociatedTokenPda as findAssociatedTokenPda23 } from "@solana-program/token-2022";
13099
- async function liquidateTunaSpotPositionFusionInstructions(authority, tunaPosition, tunaConfig, mintA, mintB, vaultA, vaultB, fusionPool, withdrawPercent) {
13141
+ async function liquidateTunaSpotPositionFusionInstructions(authority, tunaPosition, tunaConfig, mintA, mintB, vaultA, vaultB, fusionPool, createTunaPositionOwnerAta, withdrawPercent) {
13100
13142
  const instructions = [];
13101
- const positionTokenMint = tunaPosition.data.positionToken == 0 /* A */ ? mintA : mintB;
13102
- const createFeeRecipientAtaInstructions = await getCreateAtaInstructions(
13143
+ if (createTunaPositionOwnerAta) {
13144
+ const collateralTokenMint = tunaPosition.data.collateralToken == 0 /* A */ ? mintA : mintB;
13145
+ if (collateralTokenMint.address != NATIVE_MINT) {
13146
+ const createPositionOwnerAtaInstructions = await getCreateAtaInstructions(
13147
+ void 0,
13148
+ authority,
13149
+ collateralTokenMint.address,
13150
+ tunaPosition.data.authority,
13151
+ collateralTokenMint.programAddress
13152
+ );
13153
+ instructions.push(...createPositionOwnerAtaInstructions.init);
13154
+ }
13155
+ }
13156
+ const createFeeRecipientAtaAInstructions = await getCreateAtaInstructions(
13157
+ void 0,
13158
+ authority,
13159
+ mintA.address,
13160
+ tunaConfig.data.feeRecipient,
13161
+ mintA.programAddress
13162
+ );
13163
+ instructions.push(...createFeeRecipientAtaAInstructions.init);
13164
+ const createFeeRecipientAtaBInstructions = await getCreateAtaInstructions(
13103
13165
  void 0,
13104
13166
  authority,
13105
- positionTokenMint.address,
13167
+ mintB.address,
13106
13168
  tunaConfig.data.feeRecipient,
13107
- positionTokenMint.programAddress
13169
+ mintB.programAddress
13108
13170
  );
13109
- instructions.push(...createFeeRecipientAtaInstructions.init);
13171
+ instructions.push(...createFeeRecipientAtaBInstructions.init);
13110
13172
  const ix = await liquidateTunaSpotPositionFusionInstruction(
13111
13173
  authority,
13112
- tunaPosition.address,
13174
+ tunaPosition,
13113
13175
  tunaConfig,
13114
13176
  mintA,
13115
13177
  mintB,
@@ -13121,15 +13183,25 @@ async function liquidateTunaSpotPositionFusionInstructions(authority, tunaPositi
13121
13183
  instructions.push(ix);
13122
13184
  return instructions;
13123
13185
  }
13124
- async function liquidateTunaSpotPositionFusionInstruction(authority, tunaPositionAddress, tunaConfig, mintA, mintB, vaultA, vaultB, fusionPool, withdrawPercent) {
13186
+ async function liquidateTunaSpotPositionFusionInstruction(authority, tunaPosition, tunaConfig, mintA, mintB, vaultA, vaultB, fusionPool, withdrawPercent) {
13125
13187
  const marketAddress = (await getMarketAddress(fusionPool.address))[0];
13188
+ const tunaPositionOwnerAtaA = (await findAssociatedTokenPda23({
13189
+ owner: tunaPosition.data.authority,
13190
+ mint: mintA.address,
13191
+ tokenProgram: mintA.programAddress
13192
+ }))[0];
13193
+ const tunaPositionOwnerAtaB = (await findAssociatedTokenPda23({
13194
+ owner: tunaPosition.data.authority,
13195
+ mint: mintB.address,
13196
+ tokenProgram: mintB.programAddress
13197
+ }))[0];
13126
13198
  const tunaPositionAtaA = (await findAssociatedTokenPda23({
13127
- owner: tunaPositionAddress,
13199
+ owner: tunaPosition.address,
13128
13200
  mint: mintA.address,
13129
13201
  tokenProgram: mintA.programAddress
13130
13202
  }))[0];
13131
13203
  const tunaPositionAtaB = (await findAssociatedTokenPda23({
13132
- owner: tunaPositionAddress,
13204
+ owner: tunaPosition.address,
13133
13205
  mint: mintB.address,
13134
13206
  tokenProgram: mintB.programAddress
13135
13207
  }))[0];
@@ -13184,9 +13256,12 @@ async function liquidateTunaSpotPositionFusionInstruction(authority, tunaPositio
13184
13256
  vaultAAta,
13185
13257
  vaultB: vaultB.address,
13186
13258
  vaultBAta,
13187
- tunaPosition: tunaPositionAddress,
13259
+ tunaPosition: tunaPosition.address,
13188
13260
  tunaPositionAtaA,
13189
13261
  tunaPositionAtaB,
13262
+ tunaPositionOwner: tunaPosition.data.authority,
13263
+ tunaPositionOwnerAtaA: tunaPosition.data.collateralToken == 0 /* A */ && mintA.address != NATIVE_MINT ? tunaPositionOwnerAtaA : void 0,
13264
+ tunaPositionOwnerAtaB: tunaPosition.data.collateralToken == 1 /* B */ && mintB.address != NATIVE_MINT ? tunaPositionOwnerAtaB : void 0,
13190
13265
  feeRecipientAtaA,
13191
13266
  feeRecipientAtaB,
13192
13267
  fusionPool: fusionPool.address,
@@ -13204,20 +13279,40 @@ import { getOracleAddress as getOracleAddress7, WHIRLPOOL_PROGRAM_ADDRESS as WHI
13204
13279
  import { AccountRole as AccountRole17 } from "@solana/kit";
13205
13280
  import { MEMO_PROGRAM_ADDRESS as MEMO_PROGRAM_ADDRESS17 } from "@solana-program/memo";
13206
13281
  import { findAssociatedTokenPda as findAssociatedTokenPda24 } from "@solana-program/token-2022";
13207
- async function liquidateTunaSpotPositionOrcaInstructions(authority, tunaPosition, tunaConfig, mintA, mintB, vaultA, vaultB, whirlpool, withdrawPercent) {
13282
+ async function liquidateTunaSpotPositionOrcaInstructions(authority, tunaPosition, tunaConfig, mintA, mintB, vaultA, vaultB, whirlpool, createTunaPositionOwnerAta, withdrawPercent) {
13208
13283
  const instructions = [];
13209
- const positionTokenMint = tunaPosition.data.positionToken == 0 /* A */ ? mintA : mintB;
13210
- const createFeeRecipientAtaInstructions = await getCreateAtaInstructions(
13284
+ if (createTunaPositionOwnerAta) {
13285
+ const collateralTokenMint = tunaPosition.data.collateralToken == 0 /* A */ ? mintA : mintB;
13286
+ if (collateralTokenMint.address != NATIVE_MINT) {
13287
+ const createPositionOwnerAtaInstructions = await getCreateAtaInstructions(
13288
+ void 0,
13289
+ authority,
13290
+ collateralTokenMint.address,
13291
+ tunaPosition.data.authority,
13292
+ collateralTokenMint.programAddress
13293
+ );
13294
+ instructions.push(...createPositionOwnerAtaInstructions.init);
13295
+ }
13296
+ }
13297
+ const createFeeRecipientAtaAInstructions = await getCreateAtaInstructions(
13211
13298
  void 0,
13212
13299
  authority,
13213
- positionTokenMint.address,
13300
+ mintA.address,
13214
13301
  tunaConfig.data.feeRecipient,
13215
- positionTokenMint.programAddress
13302
+ mintA.programAddress
13216
13303
  );
13217
- instructions.push(...createFeeRecipientAtaInstructions.init);
13304
+ instructions.push(...createFeeRecipientAtaAInstructions.init);
13305
+ const createFeeRecipientAtaBInstructions = await getCreateAtaInstructions(
13306
+ void 0,
13307
+ authority,
13308
+ mintB.address,
13309
+ tunaConfig.data.feeRecipient,
13310
+ mintB.programAddress
13311
+ );
13312
+ instructions.push(...createFeeRecipientAtaBInstructions.init);
13218
13313
  const ix = await liquidateTunaSpotPositionOrcaInstruction(
13219
13314
  authority,
13220
- tunaPosition.address,
13315
+ tunaPosition,
13221
13316
  tunaConfig,
13222
13317
  mintA,
13223
13318
  mintB,
@@ -13229,16 +13324,26 @@ async function liquidateTunaSpotPositionOrcaInstructions(authority, tunaPosition
13229
13324
  instructions.push(ix);
13230
13325
  return instructions;
13231
13326
  }
13232
- async function liquidateTunaSpotPositionOrcaInstruction(authority, tunaPositionAddress, tunaConfig, mintA, mintB, vaultA, vaultB, whirlpool, withdrawPercent) {
13327
+ async function liquidateTunaSpotPositionOrcaInstruction(authority, tunaPosition, tunaConfig, mintA, mintB, vaultA, vaultB, whirlpool, withdrawPercent) {
13233
13328
  const marketAddress = (await getMarketAddress(whirlpool.address))[0];
13234
13329
  const orcaOracleAddress = (await getOracleAddress7(whirlpool.address))[0];
13330
+ const tunaPositionOwnerAtaA = (await findAssociatedTokenPda24({
13331
+ owner: tunaPosition.data.authority,
13332
+ mint: mintA.address,
13333
+ tokenProgram: mintA.programAddress
13334
+ }))[0];
13335
+ const tunaPositionOwnerAtaB = (await findAssociatedTokenPda24({
13336
+ owner: tunaPosition.data.authority,
13337
+ mint: mintB.address,
13338
+ tokenProgram: mintB.programAddress
13339
+ }))[0];
13235
13340
  const tunaPositionAtaA = (await findAssociatedTokenPda24({
13236
- owner: tunaPositionAddress,
13341
+ owner: tunaPosition.address,
13237
13342
  mint: mintA.address,
13238
13343
  tokenProgram: mintA.programAddress
13239
13344
  }))[0];
13240
13345
  const tunaPositionAtaB = (await findAssociatedTokenPda24({
13241
- owner: tunaPositionAddress,
13346
+ owner: tunaPosition.address,
13242
13347
  mint: mintB.address,
13243
13348
  tokenProgram: mintB.programAddress
13244
13349
  }))[0];
@@ -13295,9 +13400,12 @@ async function liquidateTunaSpotPositionOrcaInstruction(authority, tunaPositionA
13295
13400
  vaultAAta,
13296
13401
  vaultB: vaultB.address,
13297
13402
  vaultBAta,
13298
- tunaPosition: tunaPositionAddress,
13403
+ tunaPosition: tunaPosition.address,
13299
13404
  tunaPositionAtaA,
13300
13405
  tunaPositionAtaB,
13406
+ tunaPositionOwner: tunaPosition.data.authority,
13407
+ tunaPositionOwnerAtaA: tunaPosition.data.collateralToken == 0 /* A */ && mintA.address != NATIVE_MINT ? tunaPositionOwnerAtaA : void 0,
13408
+ tunaPositionOwnerAtaB: tunaPosition.data.collateralToken == 1 /* B */ && mintB.address != NATIVE_MINT ? tunaPositionOwnerAtaB : void 0,
13301
13409
  feeRecipientAtaA,
13302
13410
  feeRecipientAtaB,
13303
13411
  whirlpool: whirlpool.address,
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@crypticdot/defituna-client",
3
3
  "description": "Typescript client to interact with DefiTuna's on-chain program.",
4
- "version": "3.1.0",
4
+ "version": "3.1.1",
5
5
  "private": false,
6
6
  "license": "SEE LICENSE IN LICENSE",
7
7
  "main": "./dist/index.js",
@@ -51,7 +51,7 @@
51
51
  "rimraf": "^6.0.1",
52
52
  "vitest": "^3.1.1",
53
53
  "solana-bankrun": "^0.4.0",
54
- "@crypticdot/defituna-program": "3.1.0"
54
+ "@crypticdot/defituna-program": "3.1.1"
55
55
  },
56
56
  "scripts": {
57
57
  "build": "node ./codama.mjs && tsup src/index.ts --format cjs,esm --dts",