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
walletIdstringcancellationTokenCancellationToken