import { Emitter as MittEmitter } from "mitt"; import { type ApiClient, routes } from "@lodestar/api"; import { type ForkName } from "@lodestar/params"; import { LightClientBootstrap, LightClientFinalityUpdate, LightClientOptimisticUpdate, LightClientUpdate, type SyncPeriod } from "@lodestar/types"; import { type LightClientTransport } from "./interface.js"; export type LightClientRestEvents = { [routes.events.EventType.lightClientFinalityUpdate]: (update: LightClientFinalityUpdate) => void; [routes.events.EventType.lightClientOptimisticUpdate]: (update: LightClientOptimisticUpdate) => void; }; export type LightClientRestEmitter = MittEmitter; export declare class LightClientRestTransport implements LightClientTransport { private readonly api; private controller; private readonly eventEmitter; private subscribedEventstream; constructor(api: ApiClient); getUpdates(startPeriod: SyncPeriod, count: number): Promise<{ version: ForkName; data: LightClientUpdate; }[]>; getOptimisticUpdate(): Promise<{ version: ForkName; data: LightClientOptimisticUpdate; }>; getFinalityUpdate(): Promise<{ version: ForkName; data: LightClientFinalityUpdate; }>; getBootstrap(blockRoot: string): Promise<{ version: ForkName; data: LightClientBootstrap; }>; onOptimisticUpdate(handler: (optimisticUpdate: LightClientOptimisticUpdate) => void): void; onFinalityUpdate(handler: (finalityUpdate: LightClientFinalityUpdate) => void): void; private subscribeEventstream; } //# sourceMappingURL=rest.d.ts.map