build

fun build(nightPrivateKey: ByteArray, dustPublicKeyHex: String, utxosJson: String, ttlMillis: Long, networkId: String, currentTimeMillis: Long = System.currentTimeMillis()): String?

Builds a complete dust registration transaction.

Creates and signs a transaction that registers the given NIGHT address for dust generation with the specified DustPublicKey. Includes the user's NIGHT UTXOs as a guaranteed UnshieldedOffer.

Return

Hex-encoded SCALE transaction, or null on error

Parameters

nightPrivateKey

32-byte NIGHT address signing key

dustPublicKeyHex

Hex-encoded DustPublicKey (from DustKeyDeriver)

utxosJson

JSON array of NIGHT UTXOs: {"value":"...","intent_hash":"...","output_no":N}

ttlMillis

Transaction time-to-live in milliseconds since epoch

currentTimeMillis

Current time in milliseconds since epoch

Throws

if nightPrivateKey is not 32 bytes