import { type Facade } from '../../facade/facade.js';
import { type LocalConfigSchema } from '../../../../data/schema/model/local/local-config-schema.js';
import { MutableFacadeArray } from '../../collection/mutable-facade-array.js';
import { Deployment } from './deployment.js';
import { DeploymentSchema } from '../../../../data/schema/model/local/deployment-schema.js';
import { UserIdentity } from '../common/user-identity.js';
import { StringFacade } from '../../facade/string-facade.js';
import { type FacadeMap } from '../../collection/facade-map.js';
import { type DeploymentName, type Realm, type Shard } from '../../../../types/index.js';
import { ApplicationVersions } from '../common/application-versions.js';
export declare class LocalConfig implements Facade<LocalConfigSchema> {
    readonly encapsulatedObject: LocalConfigSchema;
    private readonly _clusterRefs;
    private readonly _deployments;
    private readonly _userIdentity;
    private readonly _versions;
    constructor(encapsulatedObject: LocalConfigSchema);
    get deployments(): MutableFacadeArray<Deployment, DeploymentSchema>;
    get userIdentity(): UserIdentity;
    get clusterRefs(): FacadeMap<string, StringFacade, string>;
    get versions(): ApplicationVersions;
    deploymentByName(deploymentName: DeploymentName): Deployment;
    realmForDeployment(deploymentName: DeploymentName): Realm;
    shardForDeployment(deploymentName: DeploymentName): Shard;
}
