UNPKG

1.33 kBTypeScriptView Raw
1import { MetadataObject } from "./types/meta";
2import { IKubernetesRESTClient, WatchOptions } from "./client";
3import { ListWatchErrorStrategy } from "./resource_listwatch_error";
4import { WatchHandle } from "./watch";
5import { WatchEvent } from "./types/meta/v1";
6import { Counter, Gauge } from "prom-client";
7export interface ListWatchOptions<R extends MetadataObject> extends WatchOptions {
8 onResync?: (objs: R[]) => any;
9 skipAddEventsOnResync?: boolean;
10 errorStrategy?: ListWatchErrorStrategy;
11}
12export interface ListWatchMetrics {
13 watchResyncErrorCount: Counter<"baseURL">;
14 watchOpenCount: Gauge<"baseURL">;
15}
16export declare class ListWatch<TObj extends MetadataObject> {
17 private state;
18 private readonly baseURL;
19 private readonly resourceBaseURL;
20 private readonly opts;
21 private readonly client;
22 private readonly metrics;
23 private readonly onWatchEvent;
24 private readonly onWatchError;
25 private readonly errorStrategy;
26 constructor(onWatchEvent: (event: WatchEvent<TObj>) => any, onWatchError: ((error: any) => any) | undefined, client: IKubernetesRESTClient, baseURL: string, resourceBaseURL: string, opts: ListWatchOptions<TObj>, metrics: ListWatchMetrics);
27 private handler;
28 private resync;
29 run(): WatchHandle;
30 private handleWatchIterationError;
31}