import { Address, IAccountMeta, IInstruction, TransactionSigner } from "@solana/kit";
import BN from "bn.js";
export interface InitializeStrategyArgs {
    strategyType: BN;
    tokenACollateralId: BN;
    tokenBCollateralId: BN;
}
export interface InitializeStrategyAccounts {
    adminAuthority: TransactionSigner;
    globalConfig: Address;
    /** Program owner also checked. */
    pool: Address;
    tokenAMint: Address;
    tokenBMint: Address;
    tokenAVault: Address;
    tokenBVault: Address;
    baseVaultAuthority: Address;
    sharesMint: Address;
    sharesMintAuthority: Address;
    tokenInfos: Address;
    systemProgram: Address;
    rent: Address;
    tokenProgram: Address;
    tokenATokenProgram: Address;
    tokenBTokenProgram: Address;
    strategy: Address;
}
export declare const layout: import("buffer-layout").Layout<unknown>;
export declare function initializeStrategy(args: InitializeStrategyArgs, accounts: InitializeStrategyAccounts, programAddress?: Address): IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>;
//# sourceMappingURL=initializeStrategy.d.ts.map