UNPKG

@nimiq/libswap

Version:

Typed Javascript library to handle atomic swaps.

22 lines (21 loc) 1.15 kB
import { Htlc as OasisHtlc, HtlcStatus } from '@nimiq/oasis-api'; import { AssetAdapter, SwapAsset } from './IAssetAdapter'; export type HtlcDetails = OasisHtlc; export interface OasisClient { getHtlc(id: string): Promise<HtlcDetails>; settleHtlc(id: string, secret: string, settlementJWS: string, authorizationToken?: string): Promise<HtlcDetails>; } export declare class EuroAssetAdapter implements AssetAdapter<SwapAsset.EUR> { client: OasisClient; private cancelCallback; private stopped; constructor(client: OasisClient); private findTransaction; awaitHtlcFunding(id: string, value: number, data?: string, confirmations?: number, onUpdate?: (htlc: HtlcDetails) => any): Promise<HtlcDetails>; fundHtlc(): Promise<HtlcDetails>; awaitHtlcSettlement(id: string): Promise<OasisHtlc<HtlcStatus.SETTLED>>; awaitSwapSecret(id: string): Promise<string>; settleHtlc(settlementJWS: string, secret: string, hash: string, authorizationToken?: string): Promise<HtlcDetails>; awaitSettlementConfirmation(id: string, onUpdate?: (tx: HtlcDetails) => any): Promise<HtlcDetails>; stop(reason: Error): void; }