import { Network, PublicKey, XOnlyPublicKey } from '../../../node_modules/@btc-vision/bitcoin/browser/index.js';
import { IP2WSHAddress } from './IP2WSHAddress.js';
export declare class TimeLockGenerator {
    private static readonly UNSPENDABLE_INTERNAL_KEY;
    private static readonly CSV_BLOCKS;
    /**
     * Generate a P2WSH address with CSV timelock
     * Note: This uses ECDSA, not Schnorr (Schnorr only available in Taproot)
     */
    static generateTimeLockAddress(publicKey: PublicKey, network?: Network, csvBlocks?: number): IP2WSHAddress;
    /**
     * Generate a P2TR address with CSV time lock
     * Note: This uses Schnorr signatures
     */
    static generateTimeLockAddressP2TR(publicKey: XOnlyPublicKey, network?: Network, csvBlocks?: number): string;
    /**
     * Generate a P2MR address with CSV time lock
     * Note: This uses Schnorr signatures within a P2MR (BIP 360) script tree
     */
    static generateTimeLockAddressP2MR(publicKey: XOnlyPublicKey, network?: Network, csvBlocks?: number): string;
    private static generateTimeLockScript;
}
//# sourceMappingURL=TimelockGenerator.d.ts.map