import type { AccountMeta, PublicKey, TransactionInstruction } from '@solana/web3.js';
import type { DriftProgram } from '../../config';
export declare function buildPlacePerpOrderInstruction(args: {
    program: DriftProgram;
    orderParams: any;
    state: PublicKey;
    user: PublicKey;
    userStats: PublicKey;
    authority: PublicKey;
    remainingAccounts: AccountMeta[];
}): Promise<TransactionInstruction>;
export declare function buildPlaceAndTakePerpOrderInstruction(args: {
    program: DriftProgram;
    orderParams: any;
    optionalParams: number | null;
    state: PublicKey;
    user: PublicKey;
    userStats: PublicKey;
    authority: PublicKey;
    remainingAccounts: AccountMeta[];
}): Promise<TransactionInstruction>;
export declare function buildPlaceAndMakePerpOrderInstruction(args: {
    program: DriftProgram;
    orderParams: any;
    takerOrderId: number;
    state: PublicKey;
    user: PublicKey;
    userStats: PublicKey;
    taker: PublicKey;
    takerStats: PublicKey;
    authority: PublicKey;
    remainingAccounts: AccountMeta[];
}): Promise<TransactionInstruction>;
export declare function buildCancelOrderInstruction(args: {
    program: DriftProgram;
    orderId: number | null;
    state: PublicKey;
    user: PublicKey;
    authority: PublicKey;
    remainingAccounts: AccountMeta[];
}): Promise<TransactionInstruction>;
export declare function buildCancelOrderByUserIdInstruction(args: {
    program: DriftProgram;
    userOrderId: number;
    state: PublicKey;
    user: PublicKey;
    authority: PublicKey;
    oracle: PublicKey;
    remainingAccounts: AccountMeta[];
}): Promise<TransactionInstruction>;
export declare function buildCancelOrdersByIdsInstruction(args: {
    program: DriftProgram;
    orderIds: number[] | undefined;
    state: PublicKey;
    user: PublicKey;
    authority: PublicKey;
    remainingAccounts: AccountMeta[];
}): Promise<TransactionInstruction>;
export declare function buildModifyOrderInstruction(args: {
    program: DriftProgram;
    orderId: number;
    modifyParams: any;
    state: PublicKey;
    user: PublicKey;
    userStats: PublicKey;
    authority: PublicKey;
    remainingAccounts: AccountMeta[];
}): Promise<TransactionInstruction>;
export declare function buildModifyOrderByUserIdInstruction(args: {
    program: DriftProgram;
    userOrderId: number;
    modifyParams: any;
    state: PublicKey;
    user: PublicKey;
    userStats: PublicKey;
    authority: PublicKey;
    remainingAccounts: AccountMeta[];
}): Promise<TransactionInstruction>;
//# sourceMappingURL=perpOrders.d.ts.map