import { AbstractStore } from "../../store/entity/entity.store"; import { KubernetesService } from "../service/kubernetes.service"; import { KubernetesResource } from "../model/kubernetesresource.model"; import { Observable } from "rxjs"; import { Watcher } from "../service/watcher"; export declare abstract class KubernetesResourceStore, R extends KubernetesService> extends AbstractStore { private initialList; protected type: { new (): T; }; protected watcher: Watcher; constructor(service: R, initialList: L, initialCurrent: T, type: { new (): T; }); /** * Creates a new instance of the resource type from the given data - typically received from a web socket event */ instantiate(resource: any): T; update(obj: T): Observable; updateResource(obj: T, resource: any): Observable; delete(obj: T): Observable; loadAll(): Observable; protected doLoadAll(): void; protected recreateWatcher(): void; /** * Lets combine the web socket events with the latest list */ protected combineListAndWatchEvent(array: L, msg: any): L; protected upsertItem(array: L, resource: any): L; protected deleteItemFromArray(array: L, resource: any): L; load(id: string): void; listQueryParams(): any; }