import type { TransactionIntent, CraftedTransaction, FeeEstimation } from "@ledgerhq/coin-module-framework/api/index";
import type { AlgorandMemo } from "../types";
export type CraftedAlgorandTransaction = {
    serializedTransaction: string;
    txPayload: Record<string, unknown>;
};
/**
 * Craft an unsigned Algorand transaction
 * @param input - Transaction parameters
 * @returns Serialized unsigned transaction and payload
 */
export declare function craftTransaction(input: {
    sender: string;
    recipient: string;
    amount: bigint;
    memo?: string | undefined;
    assetId?: string | undefined;
    fees?: bigint | undefined;
}): Promise<CraftedAlgorandTransaction>;
/**
 * Craft an opt-in transaction for an ASA token
 * @param sender - The sender address (also recipient for opt-in)
 * @param assetId - The ASA token ID to opt into
 * @param fees - Optional fee override
 * @returns Serialized unsigned transaction
 */
export declare function craftOptInTransaction(sender: string, assetId: string, fees?: bigint): Promise<CraftedAlgorandTransaction>;
export declare function craftApiTransaction(transactionIntent: TransactionIntent<AlgorandMemo>, customFees?: FeeEstimation): Promise<CraftedTransaction>;
//# sourceMappingURL=craftTransaction.d.ts.map