UNPKG

@ceramicnetwork/core

Version:

Typescript implementation of the Ceramic protocol

38 lines 1.49 kB
import { type CAR } from 'cartonne'; import { Observable } from 'rxjs'; import { DiagnosticsLogger, FetchRequest, AbortOptions, Networks } from '@ceramicnetwork/common'; import { StreamID } from '@ceramicnetwork/streamid'; import { CID } from 'multiformats/cid'; export declare type ReconApiConfig = { enabled: boolean; url: string | Promise<string>; feedEnabled: boolean; network: Networks; }; export interface ReconEvent { cid: CID; data: CAR | null; } export interface ReconEventFeedResponse { events: Array<ReconEvent>; cursor: string; } export interface IReconApi extends Observable<ReconEventFeedResponse> { init(initialCursor?: string, initialInterests?: Array<StreamID>): Promise<void>; registerInterest(model: StreamID, controller?: string): Promise<void>; put(car: CAR, opts?: AbortOptions): Promise<void>; enabled: boolean; stop(): void; } export declare class ReconApi extends Observable<ReconEventFeedResponse> implements IReconApi { #private; constructor(config: ReconApiConfig, logger: DiagnosticsLogger, sendRequest?: FetchRequest, pollInterval?: number); init(initialCursor?: string, initialInterests?: Array<StreamID>): Promise<void>; private verifyNetwork; registerInterest(model: StreamID, controller?: string): Promise<void>; put(car: CAR, opts?: AbortOptions): Promise<void>; get enabled(): boolean; stop(): void; private createSubscription; } //# sourceMappingURL=recon.d.ts.map