proposeSettlement
@totemsdk/omnia / proposeSettlement
Function: proposeSettlement()
proposeSettlement(
channel,leaseProvider,opts?):Promise<{partialState:Partial<SignedChannelState>;settlementPayload:SettlementPayload; }>
Builds the cooperative settlement TX (STATE(100)=TRUE) and signs it with the
settlement TX digest — critical for on-chain correctness.
Full chain path (when opts.chainProvider is provided):
- Build settlement draft (STATE(100)=TRUE, per-party outputs).
- Sign the settlement TX digest via the WOTS lease.
- Serialize draft bytes + witness bytes →
serializeTxBody()(txpow TxBody). - Mine PoW via
mineTxPoW()usingTX_POW_MIN_DIFFICULTY. - Assemble full TxPoW:
minedHeaderBytes || 0x01 || txBody. - Broadcast via
chainProvider.broadcastTxPoW().
Spec: proposeSettlement(channel, leaseProvider) — signer and partyAddresses are
optional via the opts argument and fall back to channel fields.
Parameters
channel
leaseProvider
WotsLeaseProvider
opts?
ProposeSettlementOptions
Returns
Promise<{ partialState: Partial<SignedChannelState>; settlementPayload: SettlementPayload; }>