import { ISpentUTXO, RawIUTXO } from '../../bitcoin/interfaces/IUTXO.js';
import { UTXOs } from '../../bitcoin/UTXOs.js';
export interface SpentUTXORef {
    readonly transactionId: string;
    readonly outputIndex: number;
}
export interface IUTXOsData {
    readonly pending: UTXOs;
    readonly spentTransactions: SpentUTXORef[];
    readonly confirmed: UTXOs;
}
export interface RawIUTXOsData {
    readonly pending: RawIUTXO[];
    readonly spentTransactions: ISpentUTXO[];
    readonly confirmed: RawIUTXO[];
    readonly raw: string[];
}
export interface RequestUTXOsParams {
    readonly address: string;
    readonly optimize?: boolean;
    readonly mergePendingUTXOs?: boolean;
    readonly filterSpentUTXOs?: boolean;
    readonly olderThan?: bigint;
    readonly isCSV?: boolean;
}
export interface RequestUTXOsParamsWithAmount extends RequestUTXOsParams {
    readonly amount: bigint;
    readonly throwErrors?: boolean;
    readonly csvAddress?: string;
    readonly maxUTXOs?: number;
    readonly throwIfUTXOsLimitReached?: boolean;
}
export interface RequestMultipleUTXOsParams {
    readonly requests: RequestUTXOsParams[];
    readonly mergePendingUTXOs?: boolean;
    readonly filterSpentUTXOs?: boolean;
}
