Table of Contents

Class OnchainService

Namespace
NArk.Core.Services
Assembly
NArk.Core.dll
public class OnchainService : IOnchainService
Inheritance
OnchainService
Implements
Inherited Members

Constructors

OnchainService(IClientTransport, IContractService, ISpendingService, IIntentGenerationService, IFeeEstimator, ICoinSelector, ILogger<OnchainService>?)

public OnchainService(IClientTransport clientTransport, IContractService contractService, ISpendingService spendingService, IIntentGenerationService intentGenerationService, IFeeEstimator feeEstimator, ICoinSelector coinSelector, ILogger<OnchainService>? logger = null)

Parameters

clientTransport IClientTransport
contractService IContractService
spendingService ISpendingService
intentGenerationService IIntentGenerationService
feeEstimator IFeeEstimator
coinSelector ICoinSelector
logger ILogger<OnchainService>

Methods

InitiateCollaborativeExit(ArkCoin[], ArkTxOut[], CancellationToken)

Initiates a collaborative exit with explicit coin inputs and multiple on-chain outputs. Returns the Bitcoin transaction ID.

public Task<string> InitiateCollaborativeExit(ArkCoin[] inputs, ArkTxOut[] outputs, CancellationToken cancellationToken = default)

Parameters

inputs ArkCoin[]
outputs ArkTxOut[]
cancellationToken CancellationToken

Returns

Task<string>

InitiateCollaborativeExit(string, ArkTxOut, CancellationToken)

Initiates a collaborative exit for the wallet, sending funds to a single on-chain output. Returns the Bitcoin transaction ID.

public Task<string> InitiateCollaborativeExit(string walletId, ArkTxOut output, CancellationToken cancellationToken = default)

Parameters

walletId string
output ArkTxOut
cancellationToken CancellationToken

Returns

Task<string>