import { TokenAccount } from "@ledgerhq/types-live";
import { PostCondition, AnchorMode, StacksTransaction } from "@stacks/transactions";
import BigNumber from "bignumber.js";
import { StacksOperation, Transaction } from "../../types";
export type CreateTokenTransferTransactionOptions = {
    contractAddress: string;
    contractName: string;
    assetName: string;
    amount: BigNumber;
    senderAddress: string;
    recipientAddress: string;
    anchorMode: AnchorMode;
    network: string;
    publicKey: string;
    fee?: BigNumber;
    nonce?: BigNumber;
    memo?: string;
};
export declare const getTokenContractDetails: (subAccount?: TokenAccount) => {
    contractAddress: string;
    contractName: string;
    assetName: string;
} | null;
export declare const createTokenTransferFunctionArgs: (amount: BigNumber, senderAddress: string, recipientAddress: string, memo?: string) => import("@stacks/transactions").ClarityValue[];
export declare const createTokenTransferPostConditions: (senderAddress: string, amount: BigNumber, contractAddress: string, contractName: string, assetName: string) => PostCondition[];
export declare const createTokenTransferTransaction: (options: CreateTokenTransferTransactionOptions) => Promise<StacksTransaction>;
export declare const createStxTransferTransaction: (amount: BigNumber, recipientAddress: string, anchorMode: AnchorMode, network: string, publicKey: string, fee?: BigNumber, nonce?: BigNumber, memo?: string) => Promise<StacksTransaction>;
export declare const createTransaction: (transaction: Transaction, senderAddress: string, publicKey: string, subAccount?: TokenAccount, fee?: BigNumber, nonce?: BigNumber) => Promise<StacksTransaction>;
export declare const applySignatureToTransaction: (tx: StacksTransaction, signature: string) => Buffer;
export declare const getTxToBroadcast: (operation: StacksOperation, signature: string, rawData: Record<string, unknown>) => Promise<Buffer>;
//# sourceMappingURL=transactions.d.ts.map