import { Informer, ListPromise, ObjectCallback } from './informer'; import { KubernetesObject } from './types'; import { Watch } from './watch'; export interface ObjectCache { get(name: string, namespace?: string): T | undefined; list(namespace?: string): ReadonlyArray; } export declare class ListWatch implements ObjectCache, Informer { private readonly path; private readonly watch; private readonly listFn; private objects; private resourceVersion; private readonly indexCache; private readonly callbackCache; private request; constructor(path: string, watch: Watch, listFn: ListPromise, autoStart?: boolean); start(): Promise; stop(): void; on(verb: string, cb: ObjectCallback): void; off(verb: string, cb: ObjectCallback): void; get(name: string, namespace?: string): T | undefined; list(namespace?: string | undefined): ReadonlyArray; latestResourceVersion(): string; private doneHandler; private addOrUpdateItems; private indexObj; private watchHandler; } export declare function deleteItems(oldObjects: T[], newObjects: T[], deleteCallback?: Array>): T[]; export declare function addOrUpdateObject(objects: T[], obj: T, addCallback?: Array>, updateCallback?: Array>): void; export declare function deleteObject(objects: T[], obj: T, deleteCallback?: Array>): void;