/// <reference types="node" />
import * as types from '../config/types';
import { SerializedInstruction } from '../config/types';
declare function addComputeBudget(params: {
    computeUnitPrice?: string;
    computeUnitLimit?: string;
}): types.TransactionInstruction[];
declare function createAssociateTokenAccount(params: {
    signer: types.Address;
    associateAccount: types.Address;
    owner: types.Address;
    token: types.Address;
    programId: types.Address;
}): types.TransactionInstruction;
declare function createAccountWithSeed(params: {
    fromPubkey: types.Address;
    newAccountPubkey: types.Address;
    basePubkey: types.Address;
    seed: string;
    lamports: string | number;
    space: number;
    programId: types.Address;
}): types.TransactionInstruction;
declare function initialize(params: {
    stakePubkey: types.Address;
    staker: types.Address;
    withdrawer: types.Address;
    unixTimestamp?: number;
    epoch?: number;
}): types.TransactionInstruction;
declare function delegate(params: {
    stakePubkey: types.Address;
    authorizedPubkey: types.Address;
    votePubkey: types.Address;
}): types.TransactionInstruction;
declare function undelegate(params: {
    stakePubkey: types.Address;
    authorizedPubkey: types.Address;
}): types.TransactionInstruction;
declare function withdraw(params: {
    stakePubkey: types.Address;
    withdrawToPubKey: types.Address;
    authorizedPubkey: types.Address;
    lamports: string | number;
}): types.TransactionInstruction;
declare function transferCoin(params: {
    fromPubkey: types.Address;
    toPubkey: types.Address;
    lamports: number | string;
}): types.TransactionInstruction;
declare function transferSplToken(params: {
    signer: types.Address;
    fromTokenAccount: types.Address;
    toTokenAccount: types.Address;
    amount: number | string;
    programId: types.TokenProgramId;
    tokenInfo: types.TokenInfo;
}): types.TransactionInstruction;
declare function isSpecificInstruction(accountKeys: string[], instruction: SerializedInstruction, filterProgramId: Buffer, firstData: number): boolean;
declare function hasSpecificInstruction(accountKeys: string[], instructions: SerializedInstruction[], filterProgramId: Buffer, firstData: number): boolean;
export { createAccountWithSeed, initialize, delegate, undelegate, withdraw, addComputeBudget, transferCoin, transferSplToken, createAssociateTokenAccount, isSpecificInstruction, hasSpecificInstruction, };
