/** * This code was AUTOGENERATED using the Codama library. * Please DO NOT EDIT THIS FILE, instead use visitors * to add features, then rerun Codama to update it. * * @see https://github.com/codama-idl/codama */ import { type AccountMeta, type AccountSignerMeta, type Address, type Codec, type Decoder, type Encoder, type Instruction, type InstructionWithAccounts, type InstructionWithData, type Option, type OptionOrNullable, type ReadonlyAccount, type ReadonlySignerAccount, type ReadonlyUint8Array, type TransactionSigner, type WritableAccount } from "@solana/kit"; import { VOLTR_VAULT_PROGRAM_ADDRESS } from "../programs"; export declare const DEPOSIT_STRATEGY_DISCRIMINATOR: Uint8Array; export declare function getDepositStrategyDiscriminatorBytes(): ReadonlyUint8Array; export type DepositStrategyInstruction = string, TAccountProtocol extends string | AccountMeta = string, TAccountVault extends string | AccountMeta = string, TAccountStrategy extends string | AccountMeta = string, TAccountAdaptorAddReceipt extends string | AccountMeta = string, TAccountStrategyInitReceipt extends string | AccountMeta = string, TAccountVaultAssetIdleAuth extends string | AccountMeta = string, TAccountVaultStrategyAuth extends string | AccountMeta = string, TAccountVaultAssetMint extends string | AccountMeta = string, TAccountVaultLpMint extends string | AccountMeta = string, TAccountVaultAssetIdleAta extends string | AccountMeta = string, TAccountVaultStrategyAssetAta extends string | AccountMeta = string, TAccountAssetTokenProgram extends string | AccountMeta = string, TAccountAdaptorProgram extends string | AccountMeta = string, TRemainingAccounts extends readonly AccountMeta[] = []> = Instruction & InstructionWithData & InstructionWithAccounts<[ TAccountManager extends string ? ReadonlySignerAccount & AccountSignerMeta : TAccountManager, TAccountProtocol extends string ? ReadonlyAccount : TAccountProtocol, TAccountVault extends string ? WritableAccount : TAccountVault, TAccountStrategy extends string ? ReadonlyAccount : TAccountStrategy, TAccountAdaptorAddReceipt extends string ? ReadonlyAccount : TAccountAdaptorAddReceipt, TAccountStrategyInitReceipt extends string ? WritableAccount : TAccountStrategyInitReceipt, TAccountVaultAssetIdleAuth extends string ? WritableAccount : TAccountVaultAssetIdleAuth, TAccountVaultStrategyAuth extends string ? WritableAccount : TAccountVaultStrategyAuth, TAccountVaultAssetMint extends string ? WritableAccount : TAccountVaultAssetMint, TAccountVaultLpMint extends string ? ReadonlyAccount : TAccountVaultLpMint, TAccountVaultAssetIdleAta extends string ? WritableAccount : TAccountVaultAssetIdleAta, TAccountVaultStrategyAssetAta extends string ? WritableAccount : TAccountVaultStrategyAssetAta, TAccountAssetTokenProgram extends string ? ReadonlyAccount : TAccountAssetTokenProgram, TAccountAdaptorProgram extends string ? ReadonlyAccount : TAccountAdaptorProgram, ...TRemainingAccounts ]>; export type DepositStrategyInstructionData = { discriminator: ReadonlyUint8Array; amount: bigint; instructionDiscriminator: Option; additionalArgs: Option; }; export type DepositStrategyInstructionDataArgs = { amount: number | bigint; instructionDiscriminator: OptionOrNullable; additionalArgs: OptionOrNullable; }; export declare function getDepositStrategyInstructionDataEncoder(): Encoder; export declare function getDepositStrategyInstructionDataDecoder(): Decoder; export declare function getDepositStrategyInstructionDataCodec(): Codec; export type DepositStrategyAsyncInput = { manager: TransactionSigner; protocol?: Address; vault: Address; strategy: Address; adaptorAddReceipt?: Address; strategyInitReceipt?: Address; vaultAssetIdleAuth?: Address; vaultStrategyAuth?: Address; vaultAssetMint: Address; vaultLpMint?: Address; /** The vault's associated token account for asset. */ vaultAssetIdleAta?: Address; vaultStrategyAssetAta?: Address; assetTokenProgram: Address; adaptorProgram: Address; amount: DepositStrategyInstructionDataArgs["amount"]; instructionDiscriminator: DepositStrategyInstructionDataArgs["instructionDiscriminator"]; additionalArgs: DepositStrategyInstructionDataArgs["additionalArgs"]; }; export declare function getDepositStrategyInstructionAsync(input: DepositStrategyAsyncInput, config?: { programAddress?: TProgramAddress; }): Promise>; export type DepositStrategyInput = { manager: TransactionSigner; protocol: Address; vault: Address; strategy: Address; adaptorAddReceipt: Address; strategyInitReceipt: Address; vaultAssetIdleAuth: Address; vaultStrategyAuth: Address; vaultAssetMint: Address; vaultLpMint: Address; /** The vault's associated token account for asset. */ vaultAssetIdleAta: Address; vaultStrategyAssetAta: Address; assetTokenProgram: Address; adaptorProgram: Address; amount: DepositStrategyInstructionDataArgs["amount"]; instructionDiscriminator: DepositStrategyInstructionDataArgs["instructionDiscriminator"]; additionalArgs: DepositStrategyInstructionDataArgs["additionalArgs"]; }; export declare function getDepositStrategyInstruction(input: DepositStrategyInput, config?: { programAddress?: TProgramAddress; }): DepositStrategyInstruction; export type ParsedDepositStrategyInstruction = { programAddress: Address; accounts: { manager: TAccountMetas[0]; protocol: TAccountMetas[1]; vault: TAccountMetas[2]; strategy: TAccountMetas[3]; adaptorAddReceipt: TAccountMetas[4]; strategyInitReceipt: TAccountMetas[5]; vaultAssetIdleAuth: TAccountMetas[6]; vaultStrategyAuth: TAccountMetas[7]; vaultAssetMint: TAccountMetas[8]; vaultLpMint: TAccountMetas[9]; /** The vault's associated token account for asset. */ vaultAssetIdleAta: TAccountMetas[10]; vaultStrategyAssetAta: TAccountMetas[11]; assetTokenProgram: TAccountMetas[12]; adaptorProgram: TAccountMetas[13]; }; data: DepositStrategyInstructionData; }; export declare function parseDepositStrategyInstruction(instruction: Instruction & InstructionWithAccounts & InstructionWithData): ParsedDepositStrategyInstruction; //# sourceMappingURL=depositStrategy.d.ts.map