import { MetadataObject } from "./types/meta"; import { IKubernetesRESTClient, WatchOptions } from "./client"; import { ListWatchErrorStrategy } from "./resource_listwatch_error"; import { WatchHandle } from "./watch"; import { WatchEvent } from "./types/meta/v1"; import { Counter, Gauge } from "prom-client"; export interface ListWatchOptions extends WatchOptions { onResync?: (objs: R[]) => any; skipAddEventsOnResync?: boolean; errorStrategy?: ListWatchErrorStrategy; } export interface ListWatchMetrics { watchResyncErrorCount: Counter<"baseURL">; watchOpenCount: Gauge<"baseURL">; } export declare class ListWatch { private state; private readonly baseURL; private readonly resourceBaseURL; private readonly opts; private readonly client; private readonly metrics; private readonly onWatchEvent; private readonly onWatchError; private readonly errorStrategy; constructor(onWatchEvent: (event: WatchEvent) => any, onWatchError: ((error: any) => any) | undefined, client: IKubernetesRESTClient, baseURL: string, resourceBaseURL: string, opts: ListWatchOptions, metrics: ListWatchMetrics); private handler; private resync; run(): WatchHandle; private handleWatchIterationError; }