/**
 * Copyright (c) OpenLens Maintainers. All rights reserved.
 * Licensed under MIT License. See LICENSE in root directory for more information.
 */
import type { ClusterId } from "../../../common/cluster-types";
import type { Logger } from "@openlens/logger";
import type { GetClusterById } from "../../../features/cluster/storage/common/get-by-id.injectable";
export interface LensView {
    isLoaded: boolean;
    frame: HTMLIFrameElement;
}
interface Dependencies {
    readonly logger: Logger;
    getClusterById: GetClusterById;
    emitClusterVisibility: (clusterId: ClusterId | null) => void;
}
export declare class ClusterFrameHandler {
    protected readonly dependencies: Dependencies;
    private readonly views;
    constructor(dependencies: Dependencies);
    hasLoadedView(clusterId: string): boolean;
    initView(clusterId: ClusterId): void;
    private prevVisibleClusterChange?;
    setVisibleCluster(clusterId: ClusterId | null): void;
    clearVisibleCluster(): void;
}
export {};
