UNPKG

lotus-sdk

Version:

Central repository for several classes of tools for integrating with, and building for, the Lotusia ecosystem

48 lines 2.54 kB
import { EventEmitter } from 'events'; import { PublicKey } from '../../bitcore/publickey.js'; import type { P2PCoordinator } from '../coordinator.js'; import { type DiscoveryOptions } from '../discovery/types.js'; import type { MuSig2SignerCriteria, MuSig2SigningRequestCriteria, MuSig2SignerAdvertisement, MuSig2SigningRequestAdvertisement, MuSig2DiscoveryConfig } from './discovery-types.js'; import { type TransactionType } from './types.js'; export declare class MuSig2Discovery extends EventEmitter { private advertiser; private discoverer; private config; private coordinator; private activeSignerAd; private activeRequestAds; private refreshTimer; constructor(coordinator: P2PCoordinator, config?: Partial<MuSig2DiscoveryConfig>); start(): Promise<void>; stop(): Promise<void>; advertiseSigner(publicKey: PublicKey, transactionTypes: TransactionType[], options?: { amountRange?: { min?: number; max?: number; }; metadata?: MuSig2SignerAdvertisement['signerMetadata']; ttl?: number; }): Promise<string>; withdrawSigner(): Promise<void>; discoverSigners(criteria?: Partial<MuSig2SignerCriteria>, options?: DiscoveryOptions): Promise<MuSig2SignerAdvertisement[]>; createSigningRequest(requiredPublicKeys: PublicKey[], messageHash: string, options?: { metadata?: MuSig2SigningRequestAdvertisement['requestMetadata']; ttl?: number; creatorSignature?: Buffer; }): Promise<string>; withdrawSigningRequest(requestId: string): Promise<void>; discoverSigningRequests(criteria?: Partial<MuSig2SigningRequestCriteria>, options?: DiscoveryOptions): Promise<MuSig2SigningRequestAdvertisement[]>; joinSigningRequest(requestId: string, publicKey: PublicKey): Promise<void>; private generateSignerAdId; private generateRequestId; private isSignerAdvertisement; private isSigningRequestAdvertisement; private matchesSignerCriteria; private matchesRequestCriteria; private refreshActiveAdvertisements; private withdrawAllAdvertisements; subscribeToSigners(criteria: Partial<MuSig2SignerCriteria> | undefined, callback: (signer: MuSig2SignerAdvertisement) => void): Promise<string>; subscribeToSigningRequests(criteria: Partial<MuSig2SigningRequestCriteria> | undefined, callback: (request: MuSig2SigningRequestAdvertisement) => void): Promise<string>; unsubscribe(subscriptionId: string): Promise<void>; } //# sourceMappingURL=discovery-extension.d.ts.map