Table of Contents

Interface ISettlementGate

Namespace
NArk.Abstractions.Settlement
Assembly
NArk.Abstractions.dll

A veto on settling a given wallet right now. Registered gates are consulted before any policy runs; if any gate reports blocked, the wallet is skipped until the next activity or heartbeat tick.

This is how a subsystem the settlement engine knows nothing about protects funds it has already committed — a swap package uses it to hold settlement off while a freshly created swap is still being funded, so the same VTXOs are not spent twice.

public interface ISettlementGate

Methods

IsBlockedAsync(string, CancellationToken)

Returns true to block settlement for walletId. Implementations should be cheap and must not throw for expected conditions.

Task<bool> IsBlockedAsync(string walletId, CancellationToken cancellationToken = default)

Parameters

walletId string
cancellationToken CancellationToken

Returns

Task<bool>