/**
 * SPDX-License-Identifier: Apache-2.0
 */
import { type ToObject } from '../../../types/index.js';
import { type ClusterRef, type DeploymentName, type ICluster, type NamespaceNameAsString } from './types.js';
export declare class Cluster implements ICluster, ToObject<ICluster> {
    readonly name: string;
    readonly namespace: NamespaceNameAsString;
    readonly deployment: DeploymentName;
    readonly dnsBaseDomain: string;
    readonly dnsConsensusNodePattern: string;
    constructor(name: string, namespace: NamespaceNameAsString, deployment: DeploymentName, dnsBaseDomain?: string, // example: 'us-west-2.gcp.charlie.sphere'`
    dnsConsensusNodePattern?: string);
    toObject(): ICluster;
    static fromObject(cluster: ICluster): Cluster;
    static toClustersMapObject(clustersMap: Record<ClusterRef, Cluster>): any;
    static fromClustersMapObject(obj: any): Record<ClusterRef, Cluster>;
}
