/**
 * Copyright (c) OpenLens Maintainers. All rights reserved.
 * Licensed under MIT License. See LICENSE in root directory for more information.
 */
import type { GetPodsByOwnerId } from "../workloads-pods/get-pods-by-owner-id.injectable";
import type { Deployment, ReplicaSet } from "@openlens/kube-object";
import type { KubeObjectStoreDependencies, KubeObjectStoreOptions } from "../../../common/k8s-api/kube-object.store";
import { KubeObjectStore } from "../../../common/k8s-api/kube-object.store";
import type { ReplicaSetApi } from "../../../common/k8s-api/endpoints";
export interface ReplicaSetStoreDependencies extends KubeObjectStoreDependencies {
    getPodsByOwnerId: GetPodsByOwnerId;
}
export declare class ReplicaSetStore extends KubeObjectStore<ReplicaSet, ReplicaSetApi> {
    protected readonly dependencies: ReplicaSetStoreDependencies;
    constructor(dependencies: ReplicaSetStoreDependencies, api: ReplicaSetApi, opts?: KubeObjectStoreOptions);
    /**
     * @deprecated Switch to using `getPodsByOwnerId` directly
     */
    getChildPods(replicaSet: ReplicaSet): import("@openlens/kube-object").Pod[];
    getStatuses(replicaSets: ReplicaSet[]): {
        running: number;
        failed: number;
        pending: number;
    };
    getReplicaSetsByOwner(deployment: Deployment): ReplicaSet[];
}
