import _m0 from 'protobufjs/minimal';
import { MaintenanceWindow, MaintenanceOperation } from '../../../../../yandex/cloud/mdb/opensearch/v1/maintenance';
import { OpenSearchConfigSet2 } from '../../../../../yandex/cloud/mdb/opensearch/v1/config/opensearch';
export declare const protobufPackage = "yandex.cloud.mdb.opensearch.v1";
/** An OpenSearch cluster resource. */
export interface Cluster {
    /**
     * ID of the OpenSearch cluster.
     * This ID is assigned by the platform at the moment of cluster creation.
     */
    id: string;
    /** ID of the folder that the OpenSearch cluster belongs to. */
    folderId: string;
    /** Time when the cluster was created. */
    createdAt?: Date;
    /**
     * Name of the OpenSearch cluster.
     * The name is unique within the folder. 1-63 characters long.
     */
    name: string;
    /** Description of the OpenSearch cluster. 0-256 characters long. */
    description: string;
    /**
     * Custom labels for the OpenSearch cluster as `key:value` pairs.
     * Maximum 64 labels per resource.
     */
    labels: {
        [key: string]: string;
    };
    /** Deployment environment of the OpenSearch cluster. */
    environment: Cluster_Environment;
    /** Description of monitoring systems relevant to the OpenSearch cluster. */
    monitoring: Monitoring[];
    /** Configuration of the OpenSearch cluster. */
    config?: ClusterConfig;
    /** ID of the cloud network that the cluster belongs to. */
    networkId: string;
    /** Aggregated cluster health. */
    health: Cluster_Health;
    /** Current state of the cluster. */
    status: Cluster_Status;
    /** User security groups. */
    securityGroupIds: string[];
    /** ID of the service account used to access Object Storage. */
    serviceAccountId: string;
    /** Determines whether the cluster is protected from being deleted. */
    deletionProtection: boolean;
    /** Cluster maintenance window. Should be defined by either one of the two options. */
    maintenanceWindow?: MaintenanceWindow;
    /** Maintenance operation planned at nearest [maintenance_window]. */
    plannedOperation?: MaintenanceOperation;
}
export declare enum Cluster_Environment {
    ENVIRONMENT_UNSPECIFIED = 0,
    /**
     * PRODUCTION - Stable environment with a conservative update policy:
     * only hotfixes are applied during regular maintenance.
     */
    PRODUCTION = 1,
    /**
     * PRESTABLE - Environment with more aggressive update policy: new versions
     * are rolled out irrespective of backward compatibility.
     */
    PRESTABLE = 2,
    UNRECOGNIZED = -1
}
export declare function cluster_EnvironmentFromJSON(object: any): Cluster_Environment;
export declare function cluster_EnvironmentToJSON(object: Cluster_Environment): string;
export declare enum Cluster_Health {
    /** HEALTH_UNKNOWN - Health of the cluster is unknown ([Host.health] for every host in the cluster is UNKNOWN). */
    HEALTH_UNKNOWN = 0,
    /** ALIVE - Cluster is working normally ([Host.health] for every host in the cluster is ALIVE). */
    ALIVE = 1,
    /** DEAD - Cluster is inoperable ([Host.health] for every host in the cluster is DEAD). */
    DEAD = 2,
    /** DEGRADED - Cluster is working below capacity ([Host.health] for at least one host in the cluster is not ALIVE). */
    DEGRADED = 3,
    UNRECOGNIZED = -1
}
export declare function cluster_HealthFromJSON(object: any): Cluster_Health;
export declare function cluster_HealthToJSON(object: Cluster_Health): string;
/** Current state of the cluster. */
export declare enum Cluster_Status {
    /** STATUS_UNKNOWN - Cluster state is unknown. */
    STATUS_UNKNOWN = 0,
    /** CREATING - Cluster is being created. */
    CREATING = 1,
    /** RUNNING - Cluster is running normally. */
    RUNNING = 2,
    /** ERROR - Cluster has encountered a problem and cannot operate. */
    ERROR = 3,
    /** UPDATING - Cluster is being updated. */
    UPDATING = 4,
    /** STOPPING - Cluster is stopping. */
    STOPPING = 5,
    /** STOPPED - Cluster has stopped. */
    STOPPED = 6,
    /** STARTING - Cluster is starting. */
    STARTING = 7,
    UNRECOGNIZED = -1
}
export declare function cluster_StatusFromJSON(object: any): Cluster_Status;
export declare function cluster_StatusToJSON(object: Cluster_Status): string;
export interface Cluster_LabelsEntry {
    key: string;
    value: string;
}
/** Monitoring system metadata. */
export interface Monitoring {
    /** Name of the monitoring system. */
    name: string;
    /** Description of the monitoring system. */
    description: string;
    /** Link to the monitoring system charts for the OpenSearch cluster. */
    link: string;
}
/** The OpenSearch cluster configuration. */
export interface ClusterConfig {
    /** Version of the OpenSearch server software. */
    version: string;
    /** OpenSearch configuration. */
    opensearch?: OpenSearch;
    /** Dashboards configuration. */
    dashboards?: Dashboards;
    /** Access policy for external services. */
    access?: Access;
}
/** The OpenSearch host group type configuration. */
export interface OpenSearch {
    /** Names of the cluster plugins. */
    plugins: string[];
    /** Host groups of the OpenSearch type. */
    nodeGroups: OpenSearch_NodeGroup[];
    opensearchConfigSet2?: OpenSearchConfigSet2 | undefined;
    /** Keystore entries names. */
    keystoreSettings: string[];
}
export declare enum OpenSearch_GroupRole {
    GROUP_ROLE_UNSPECIFIED = 0,
    DATA = 1,
    MANAGER = 2,
    UNRECOGNIZED = -1
}
export declare function openSearch_GroupRoleFromJSON(object: any): OpenSearch_GroupRole;
export declare function openSearch_GroupRoleToJSON(object: OpenSearch_GroupRole): string;
/** Configuration of the host group. */
export interface OpenSearch_NodeGroup {
    /** Name of the group. Must be 1-63 characters long. */
    name: string;
    /** Resources allocated to the hosts. */
    resources?: Resources;
    /** Number of hosts in the group. */
    hostsCount: number;
    /** IDs of the availability zones the hosts belong to. */
    zoneIds: string[];
    /** IDs of the subnets that the hosts belong to. */
    subnetIds: string[];
    /** Determines whether a public IP is assigned to the hosts in the group. */
    assignPublicIp: boolean;
    /** Roles of the host group. */
    roles: OpenSearch_GroupRole[];
    /** Disk size autoscaling settings */
    diskSizeAutoscaling?: DiskSizeAutoscaling;
}
/** The Dashboards host group type configuration. */
export interface Dashboards {
    /** Host groups of the Dashboards type. */
    nodeGroups: Dashboards_NodeGroup[];
}
export interface Dashboards_NodeGroup {
    /** Name of the group. 1-63 characters long. */
    name: string;
    /** Resources allocated to the hosts. */
    resources?: Resources;
    /** Number of hosts in the group. */
    hostsCount: number;
    /** IDs of the availability zones the hosts belong to. */
    zoneIds: string[];
    /** IDs of the subnets that the hosts belong to. */
    subnetIds: string[];
    /** Determines whether a public IP is assigned to the hosts in the group. */
    assignPublicIp: boolean;
    /** Disk size autoscaling settings */
    diskSizeAutoscaling?: DiskSizeAutoscaling;
}
/** A list of computational resources allocated to a host. */
export interface Resources {
    /** ID of the preset for computational resources allocated to a host. */
    resourcePresetId: string;
    /** Volume of the storage used by the host, in bytes. */
    diskSize: number;
    /** Type of the storage used by the host: `network-hdd`, `network-ssd` or `local-ssd`. */
    diskTypeId: string;
}
/** An OpenSearch cluster host resource. */
export interface Host {
    /**
     * Required. Name of the OpenSearch host.
     *
     * The host name is assigned by the platform at creation time and cannot be changed.
     *
     * The name is unique across all MDB hosts that exist on the platform, as it defines the FQDN of the host.
     */
    name: string;
    /** Required. ID of the OpenSearch cluster. The ID is assigned by the platform at creation time. */
    clusterId: string;
    /** ID of the availability zone the OpenSearch host belongs to. */
    zoneId: string;
    /** Resources allocated to the OpenSearch host. */
    resources?: Resources;
    /** Type of the host. If the field has default value, it is not returned in the response. */
    type: Host_Type;
    /** Aggregated health of the host. If the field has default value, it is not returned in the response. */
    health: Host_Health;
    /** ID of the subnet that the host belongs to. */
    subnetId: string;
    /** Determines whether a public IP is assigned to the host. */
    assignPublicIp: boolean;
    /** Resources used by the host. */
    system?: Host_SystemMetrics;
    /** Name of the host group that the host belongs to. */
    nodeGroup: string;
    /** Roles of the host. */
    roles: OpenSearch_GroupRole[];
}
export declare enum Host_Health {
    /** UNKNOWN - Health of the host is unknown. Default value. */
    UNKNOWN = 0,
    /** ALIVE - The host is performing all its functions normally. */
    ALIVE = 1,
    /** DEAD - The host is inoperable and cannot perform any of its essential functions. */
    DEAD = 2,
    /** DEGRADED - The host is working below capacity or not fully functional. */
    DEGRADED = 3,
    UNRECOGNIZED = -1
}
export declare function host_HealthFromJSON(object: any): Host_Health;
export declare function host_HealthToJSON(object: Host_Health): string;
export declare enum Host_Type {
    /** TYPE_UNSPECIFIED - Type of the host is unspecified. Default value. */
    TYPE_UNSPECIFIED = 0,
    /** OPENSEARCH - An OpenSearch type host. */
    OPENSEARCH = 1,
    /** DASHBOARDS - A Dashboards type host. */
    DASHBOARDS = 2,
    UNRECOGNIZED = -1
}
export declare function host_TypeFromJSON(object: any): Host_Type;
export declare function host_TypeToJSON(object: Host_Type): string;
/** CPU usage of the host. */
export interface Host_CPUMetric {
    /** Time of the record. */
    timestamp: number;
    /** Percentage of the CPU used. */
    used: number;
}
/** RAM usage of the host. */
export interface Host_MemoryMetric {
    /** Time of the record. */
    timestamp: number;
    /** The amount of RAM used, in bytes. */
    used: number;
    /** Total amount of RAM allocated to the host. */
    total: number;
}
/** Disk usage of the host. */
export interface Host_DiskMetric {
    /** Time of the record. */
    timestamp: number;
    /** The amount of disk space used, in bytes. */
    used: number;
    /** Total amount of disk space allocated to the host. */
    total: number;
}
/** Resources used by the host. */
export interface Host_SystemMetrics {
    /** CPU usage of the host. */
    cpu?: Host_CPUMetric;
    /** RAM usage of the host. */
    memory?: Host_MemoryMetric;
    /** Disk usage of the host. */
    disk?: Host_DiskMetric;
}
/** Access policy for external services. */
export interface Access {
    /** Determines whether the access to Data Transfer is allowed. */
    dataTransfer: boolean;
    /** Determines whether the access to Serverless is allowed. */
    serverless: boolean;
}
export interface DiskSizeAutoscaling {
    /** Amount of used storage for automatic disk scaling in the maintenance window, 0 means disabled, in percent. */
    plannedUsageThreshold: number;
    /** Amount of used storage for immediately  automatic disk scaling, 0 means disabled, in percent. */
    emergencyUsageThreshold: number;
    /** Limit on how large the storage for database instances can automatically grow, in bytes. */
    diskSizeLimit: number;
}
export declare const Cluster: {
    encode(message: Cluster, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): Cluster;
    fromJSON(object: any): Cluster;
    toJSON(message: Cluster): unknown;
    fromPartial<I extends {
        id?: string | undefined;
        folderId?: string | undefined;
        createdAt?: Date | undefined;
        name?: string | undefined;
        description?: string | undefined;
        labels?: {
            [x: string]: string | undefined;
        } | undefined;
        environment?: Cluster_Environment | undefined;
        monitoring?: {
            name?: string | undefined;
            description?: string | undefined;
            link?: string | undefined;
        }[] | undefined;
        config?: {
            version?: string | undefined;
            opensearch?: {
                plugins?: string[] | undefined;
                nodeGroups?: {
                    name?: string | undefined;
                    resources?: {
                        resourcePresetId?: string | undefined;
                        diskSize?: number | undefined;
                        diskTypeId?: string | undefined;
                    } | undefined;
                    hostsCount?: number | undefined;
                    zoneIds?: string[] | undefined;
                    subnetIds?: string[] | undefined;
                    assignPublicIp?: boolean | undefined;
                    roles?: OpenSearch_GroupRole[] | undefined;
                    diskSizeAutoscaling?: {
                        plannedUsageThreshold?: number | undefined;
                        emergencyUsageThreshold?: number | undefined;
                        diskSizeLimit?: number | undefined;
                    } | undefined;
                }[] | undefined;
                opensearchConfigSet2?: {
                    effectiveConfig?: {
                        maxClauseCount?: number | undefined;
                        fielddataCacheSize?: string | undefined;
                        reindexRemoteWhitelist?: string | undefined;
                    } | undefined;
                    userConfig?: {
                        maxClauseCount?: number | undefined;
                        fielddataCacheSize?: string | undefined;
                        reindexRemoteWhitelist?: string | undefined;
                    } | undefined;
                    defaultConfig?: {
                        maxClauseCount?: number | undefined;
                        fielddataCacheSize?: string | undefined;
                        reindexRemoteWhitelist?: string | undefined;
                    } | undefined;
                } | undefined;
                keystoreSettings?: string[] | undefined;
            } | undefined;
            dashboards?: {
                nodeGroups?: {
                    name?: string | undefined;
                    resources?: {
                        resourcePresetId?: string | undefined;
                        diskSize?: number | undefined;
                        diskTypeId?: string | undefined;
                    } | undefined;
                    hostsCount?: number | undefined;
                    zoneIds?: string[] | undefined;
                    subnetIds?: string[] | undefined;
                    assignPublicIp?: boolean | undefined;
                    diskSizeAutoscaling?: {
                        plannedUsageThreshold?: number | undefined;
                        emergencyUsageThreshold?: number | undefined;
                        diskSizeLimit?: number | undefined;
                    } | undefined;
                }[] | undefined;
            } | undefined;
            access?: {
                dataTransfer?: boolean | undefined;
                serverless?: boolean | undefined;
            } | undefined;
        } | undefined;
        networkId?: string | undefined;
        health?: Cluster_Health | undefined;
        status?: Cluster_Status | undefined;
        securityGroupIds?: string[] | undefined;
        serviceAccountId?: string | undefined;
        deletionProtection?: boolean | undefined;
        maintenanceWindow?: {
            anytime?: {} | undefined;
            weeklyMaintenanceWindow?: {
                day?: import("../../../../../yandex/cloud/mdb/opensearch/v1/maintenance").WeeklyMaintenanceWindow_WeekDay | undefined;
                hour?: number | undefined;
            } | undefined;
        } | undefined;
        plannedOperation?: {
            info?: string | undefined;
            delayedUntil?: Date | undefined;
            latestMaintenanceTime?: Date | undefined;
            nextMaintenanceWindowTime?: Date | undefined;
        } | undefined;
    } & {
        id?: string | undefined;
        folderId?: string | undefined;
        createdAt?: Date | undefined;
        name?: string | undefined;
        description?: string | undefined;
        labels?: ({
            [x: string]: string | undefined;
        } & {
            [x: string]: string | undefined;
        } & Record<Exclude<keyof I["labels"], string | number>, never>) | undefined;
        environment?: Cluster_Environment | undefined;
        monitoring?: ({
            name?: string | undefined;
            description?: string | undefined;
            link?: string | undefined;
        }[] & ({
            name?: string | undefined;
            description?: string | undefined;
            link?: string | undefined;
        } & {
            name?: string | undefined;
            description?: string | undefined;
            link?: string | undefined;
        } & Record<Exclude<keyof I["monitoring"][number], keyof Monitoring>, never>)[] & Record<Exclude<keyof I["monitoring"], keyof {
            name?: string | undefined;
            description?: string | undefined;
            link?: string | undefined;
        }[]>, never>) | undefined;
        config?: ({
            version?: string | undefined;
            opensearch?: {
                plugins?: string[] | undefined;
                nodeGroups?: {
                    name?: string | undefined;
                    resources?: {
                        resourcePresetId?: string | undefined;
                        diskSize?: number | undefined;
                        diskTypeId?: string | undefined;
                    } | undefined;
                    hostsCount?: number | undefined;
                    zoneIds?: string[] | undefined;
                    subnetIds?: string[] | undefined;
                    assignPublicIp?: boolean | undefined;
                    roles?: OpenSearch_GroupRole[] | undefined;
                    diskSizeAutoscaling?: {
                        plannedUsageThreshold?: number | undefined;
                        emergencyUsageThreshold?: number | undefined;
                        diskSizeLimit?: number | undefined;
                    } | undefined;
                }[] | undefined;
                opensearchConfigSet2?: {
                    effectiveConfig?: {
                        maxClauseCount?: number | undefined;
                        fielddataCacheSize?: string | undefined;
                        reindexRemoteWhitelist?: string | undefined;
                    } | undefined;
                    userConfig?: {
                        maxClauseCount?: number | undefined;
                        fielddataCacheSize?: string | undefined;
                        reindexRemoteWhitelist?: string | undefined;
                    } | undefined;
                    defaultConfig?: {
                        maxClauseCount?: number | undefined;
                        fielddataCacheSize?: string | undefined;
                        reindexRemoteWhitelist?: string | undefined;
                    } | undefined;
                } | undefined;
                keystoreSettings?: string[] | undefined;
            } | undefined;
            dashboards?: {
                nodeGroups?: {
                    name?: string | undefined;
                    resources?: {
                        resourcePresetId?: string | undefined;
                        diskSize?: number | undefined;
                        diskTypeId?: string | undefined;
                    } | undefined;
                    hostsCount?: number | undefined;
                    zoneIds?: string[] | undefined;
                    subnetIds?: string[] | undefined;
                    assignPublicIp?: boolean | undefined;
                    diskSizeAutoscaling?: {
                        plannedUsageThreshold?: number | undefined;
                        emergencyUsageThreshold?: number | undefined;
                        diskSizeLimit?: number | undefined;
                    } | undefined;
                }[] | undefined;
            } | undefined;
            access?: {
                dataTransfer?: boolean | undefined;
                serverless?: boolean | undefined;
            } | undefined;
        } & {
            version?: string | undefined;
            opensearch?: ({
                plugins?: string[] | undefined;
                nodeGroups?: {
                    name?: string | undefined;
                    resources?: {
                        resourcePresetId?: string | undefined;
                        diskSize?: number | undefined;
                        diskTypeId?: string | undefined;
                    } | undefined;
                    hostsCount?: number | undefined;
                    zoneIds?: string[] | undefined;
                    subnetIds?: string[] | undefined;
                    assignPublicIp?: boolean | undefined;
                    roles?: OpenSearch_GroupRole[] | undefined;
                    diskSizeAutoscaling?: {
                        plannedUsageThreshold?: number | undefined;
                        emergencyUsageThreshold?: number | undefined;
                        diskSizeLimit?: number | undefined;
                    } | undefined;
                }[] | undefined;
                opensearchConfigSet2?: {
                    effectiveConfig?: {
                        maxClauseCount?: number | undefined;
                        fielddataCacheSize?: string | undefined;
                        reindexRemoteWhitelist?: string | undefined;
                    } | undefined;
                    userConfig?: {
                        maxClauseCount?: number | undefined;
                        fielddataCacheSize?: string | undefined;
                        reindexRemoteWhitelist?: string | undefined;
                    } | undefined;
                    defaultConfig?: {
                        maxClauseCount?: number | undefined;
                        fielddataCacheSize?: string | undefined;
                        reindexRemoteWhitelist?: string | undefined;
                    } | undefined;
                } | undefined;
                keystoreSettings?: string[] | undefined;
            } & {
                plugins?: (string[] & string[] & Record<Exclude<keyof I["config"]["opensearch"]["plugins"], keyof string[]>, never>) | undefined;
                nodeGroups?: ({
                    name?: string | undefined;
                    resources?: {
                        resourcePresetId?: string | undefined;
                        diskSize?: number | undefined;
                        diskTypeId?: string | undefined;
                    } | undefined;
                    hostsCount?: number | undefined;
                    zoneIds?: string[] | undefined;
                    subnetIds?: string[] | undefined;
                    assignPublicIp?: boolean | undefined;
                    roles?: OpenSearch_GroupRole[] | undefined;
                    diskSizeAutoscaling?: {
                        plannedUsageThreshold?: number | undefined;
                        emergencyUsageThreshold?: number | undefined;
                        diskSizeLimit?: number | undefined;
                    } | undefined;
                }[] & ({
                    name?: string | undefined;
                    resources?: {
                        resourcePresetId?: string | undefined;
                        diskSize?: number | undefined;
                        diskTypeId?: string | undefined;
                    } | undefined;
                    hostsCount?: number | undefined;
                    zoneIds?: string[] | undefined;
                    subnetIds?: string[] | undefined;
                    assignPublicIp?: boolean | undefined;
                    roles?: OpenSearch_GroupRole[] | undefined;
                    diskSizeAutoscaling?: {
                        plannedUsageThreshold?: number | undefined;
                        emergencyUsageThreshold?: number | undefined;
                        diskSizeLimit?: number | undefined;
                    } | undefined;
                } & {
                    name?: string | undefined;
                    resources?: ({
                        resourcePresetId?: string | undefined;
                        diskSize?: number | undefined;
                        diskTypeId?: string | undefined;
                    } & {
                        resourcePresetId?: string | undefined;
                        diskSize?: number | undefined;
                        diskTypeId?: string | undefined;
                    } & Record<Exclude<keyof I["config"]["opensearch"]["nodeGroups"][number]["resources"], keyof Resources>, never>) | undefined;
                    hostsCount?: number | undefined;
                    zoneIds?: (string[] & string[] & Record<Exclude<keyof I["config"]["opensearch"]["nodeGroups"][number]["zoneIds"], keyof string[]>, never>) | undefined;
                    subnetIds?: (string[] & string[] & Record<Exclude<keyof I["config"]["opensearch"]["nodeGroups"][number]["subnetIds"], keyof string[]>, never>) | undefined;
                    assignPublicIp?: boolean | undefined;
                    roles?: (OpenSearch_GroupRole[] & OpenSearch_GroupRole[] & Record<Exclude<keyof I["config"]["opensearch"]["nodeGroups"][number]["roles"], keyof OpenSearch_GroupRole[]>, never>) | undefined;
                    diskSizeAutoscaling?: ({
                        plannedUsageThreshold?: number | undefined;
                        emergencyUsageThreshold?: number | undefined;
                        diskSizeLimit?: number | undefined;
                    } & {
                        plannedUsageThreshold?: number | undefined;
                        emergencyUsageThreshold?: number | undefined;
                        diskSizeLimit?: number | undefined;
                    } & Record<Exclude<keyof I["config"]["opensearch"]["nodeGroups"][number]["diskSizeAutoscaling"], keyof DiskSizeAutoscaling>, never>) | undefined;
                } & Record<Exclude<keyof I["config"]["opensearch"]["nodeGroups"][number], keyof OpenSearch_NodeGroup>, never>)[] & Record<Exclude<keyof I["config"]["opensearch"]["nodeGroups"], keyof {
                    name?: string | undefined;
                    resources?: {
                        resourcePresetId?: string | undefined;
                        diskSize?: number | undefined;
                        diskTypeId?: string | undefined;
                    } | undefined;
                    hostsCount?: number | undefined;
                    zoneIds?: string[] | undefined;
                    subnetIds?: string[] | undefined;
                    assignPublicIp?: boolean | undefined;
                    roles?: OpenSearch_GroupRole[] | undefined;
                    diskSizeAutoscaling?: {
                        plannedUsageThreshold?: number | undefined;
                        emergencyUsageThreshold?: number | undefined;
                        diskSizeLimit?: number | undefined;
                    } | undefined;
                }[]>, never>) | undefined;
                opensearchConfigSet2?: ({
                    effectiveConfig?: {
                        maxClauseCount?: number | undefined;
                        fielddataCacheSize?: string | undefined;
                        reindexRemoteWhitelist?: string | undefined;
                    } | undefined;
                    userConfig?: {
                        maxClauseCount?: number | undefined;
                        fielddataCacheSize?: string | undefined;
                        reindexRemoteWhitelist?: string | undefined;
                    } | undefined;
                    defaultConfig?: {
                        maxClauseCount?: number | undefined;
                        fielddataCacheSize?: string | undefined;
                        reindexRemoteWhitelist?: string | undefined;
                    } | undefined;
                } & {
                    effectiveConfig?: ({
                        maxClauseCount?: number | undefined;
                        fielddataCacheSize?: string | undefined;
                        reindexRemoteWhitelist?: string | undefined;
                    } & {
                        maxClauseCount?: number | undefined;
                        fielddataCacheSize?: string | undefined;
                        reindexRemoteWhitelist?: string | undefined;
                    } & Record<Exclude<keyof I["config"]["opensearch"]["opensearchConfigSet2"]["effectiveConfig"], keyof import("../../../../../yandex/cloud/mdb/opensearch/v1/config/opensearch").OpenSearchConfig2>, never>) | undefined;
                    userConfig?: ({
                        maxClauseCount?: number | undefined;
                        fielddataCacheSize?: string | undefined;
                        reindexRemoteWhitelist?: string | undefined;
                    } & {
                        maxClauseCount?: number | undefined;
                        fielddataCacheSize?: string | undefined;
                        reindexRemoteWhitelist?: string | undefined;
                    } & Record<Exclude<keyof I["config"]["opensearch"]["opensearchConfigSet2"]["userConfig"], keyof import("../../../../../yandex/cloud/mdb/opensearch/v1/config/opensearch").OpenSearchConfig2>, never>) | undefined;
                    defaultConfig?: ({
                        maxClauseCount?: number | undefined;
                        fielddataCacheSize?: string | undefined;
                        reindexRemoteWhitelist?: string | undefined;
                    } & {
                        maxClauseCount?: number | undefined;
                        fielddataCacheSize?: string | undefined;
                        reindexRemoteWhitelist?: string | undefined;
                    } & Record<Exclude<keyof I["config"]["opensearch"]["opensearchConfigSet2"]["defaultConfig"], keyof import("../../../../../yandex/cloud/mdb/opensearch/v1/config/opensearch").OpenSearchConfig2>, never>) | undefined;
                } & Record<Exclude<keyof I["config"]["opensearch"]["opensearchConfigSet2"], keyof OpenSearchConfigSet2>, never>) | undefined;
                keystoreSettings?: (string[] & string[] & Record<Exclude<keyof I["config"]["opensearch"]["keystoreSettings"], keyof string[]>, never>) | undefined;
            } & Record<Exclude<keyof I["config"]["opensearch"], keyof OpenSearch>, never>) | undefined;
            dashboards?: ({
                nodeGroups?: {
                    name?: string | undefined;
                    resources?: {
                        resourcePresetId?: string | undefined;
                        diskSize?: number | undefined;
                        diskTypeId?: string | undefined;
                    } | undefined;
                    hostsCount?: number | undefined;
                    zoneIds?: string[] | undefined;
                    subnetIds?: string[] | undefined;
                    assignPublicIp?: boolean | undefined;
                    diskSizeAutoscaling?: {
                        plannedUsageThreshold?: number | undefined;
                        emergencyUsageThreshold?: number | undefined;
                        diskSizeLimit?: number | undefined;
                    } | undefined;
                }[] | undefined;
            } & {
                nodeGroups?: ({
                    name?: string | undefined;
                    resources?: {
                        resourcePresetId?: string | undefined;
                        diskSize?: number | undefined;
                        diskTypeId?: string | undefined;
                    } | undefined;
                    hostsCount?: number | undefined;
                    zoneIds?: string[] | undefined;
                    subnetIds?: string[] | undefined;
                    assignPublicIp?: boolean | undefined;
                    diskSizeAutoscaling?: {
                        plannedUsageThreshold?: number | undefined;
                        emergencyUsageThreshold?: number | undefined;
                        diskSizeLimit?: number | undefined;
                    } | undefined;
                }[] & ({
                    name?: string | undefined;
                    resources?: {
                        resourcePresetId?: string | undefined;
                        diskSize?: number | undefined;
                        diskTypeId?: string | undefined;
                    } | undefined;
                    hostsCount?: number | undefined;
                    zoneIds?: string[] | undefined;
                    subnetIds?: string[] | undefined;
                    assignPublicIp?: boolean | undefined;
                    diskSizeAutoscaling?: {
                        plannedUsageThreshold?: number | undefined;
                        emergencyUsageThreshold?: number | undefined;
                        diskSizeLimit?: number | undefined;
                    } | undefined;
                } & {
                    name?: string | undefined;
                    resources?: ({
                        resourcePresetId?: string | undefined;
                        diskSize?: number | undefined;
                        diskTypeId?: string | undefined;
                    } & {
                        resourcePresetId?: string | undefined;
                        diskSize?: number | undefined;
                        diskTypeId?: string | undefined;
                    } & Record<Exclude<keyof I["config"]["dashboards"]["nodeGroups"][number]["resources"], keyof Resources>, never>) | undefined;
                    hostsCount?: number | undefined;
                    zoneIds?: (string[] & string[] & Record<Exclude<keyof I["config"]["dashboards"]["nodeGroups"][number]["zoneIds"], keyof string[]>, never>) | undefined;
                    subnetIds?: (string[] & string[] & Record<Exclude<keyof I["config"]["dashboards"]["nodeGroups"][number]["subnetIds"], keyof string[]>, never>) | undefined;
                    assignPublicIp?: boolean | undefined;
                    diskSizeAutoscaling?: ({
                        plannedUsageThreshold?: number | undefined;
                        emergencyUsageThreshold?: number | undefined;
                        diskSizeLimit?: number | undefined;
                    } & {
                        plannedUsageThreshold?: number | undefined;
                        emergencyUsageThreshold?: number | undefined;
                        diskSizeLimit?: number | undefined;
                    } & Record<Exclude<keyof I["config"]["dashboards"]["nodeGroups"][number]["diskSizeAutoscaling"], keyof DiskSizeAutoscaling>, never>) | undefined;
                } & Record<Exclude<keyof I["config"]["dashboards"]["nodeGroups"][number], keyof Dashboards_NodeGroup>, never>)[] & Record<Exclude<keyof I["config"]["dashboards"]["nodeGroups"], keyof {
                    name?: string | undefined;
                    resources?: {
                        resourcePresetId?: string | undefined;
                        diskSize?: number | undefined;
                        diskTypeId?: string | undefined;
                    } | undefined;
                    hostsCount?: number | undefined;
                    zoneIds?: string[] | undefined;
                    subnetIds?: string[] | undefined;
                    assignPublicIp?: boolean | undefined;
                    diskSizeAutoscaling?: {
                        plannedUsageThreshold?: number | undefined;
                        emergencyUsageThreshold?: number | undefined;
                        diskSizeLimit?: number | undefined;
                    } | undefined;
                }[]>, never>) | undefined;
            } & Record<Exclude<keyof I["config"]["dashboards"], "nodeGroups">, never>) | undefined;
            access?: ({
                dataTransfer?: boolean | undefined;
                serverless?: boolean | undefined;
            } & {
                dataTransfer?: boolean | undefined;
                serverless?: boolean | undefined;
            } & Record<Exclude<keyof I["config"]["access"], keyof Access>, never>) | undefined;
        } & Record<Exclude<keyof I["config"], keyof ClusterConfig>, never>) | undefined;
        networkId?: string | undefined;
        health?: Cluster_Health | undefined;
        status?: Cluster_Status | undefined;
        securityGroupIds?: (string[] & string[] & Record<Exclude<keyof I["securityGroupIds"], keyof string[]>, never>) | undefined;
        serviceAccountId?: string | undefined;
        deletionProtection?: boolean | undefined;
        maintenanceWindow?: ({
            anytime?: {} | undefined;
            weeklyMaintenanceWindow?: {
                day?: import("../../../../../yandex/cloud/mdb/opensearch/v1/maintenance").WeeklyMaintenanceWindow_WeekDay | undefined;
                hour?: number | undefined;
            } | undefined;
        } & {
            anytime?: ({} & {} & Record<Exclude<keyof I["maintenanceWindow"]["anytime"], never>, never>) | undefined;
            weeklyMaintenanceWindow?: ({
                day?: import("../../../../../yandex/cloud/mdb/opensearch/v1/maintenance").WeeklyMaintenanceWindow_WeekDay | undefined;
                hour?: number | undefined;
            } & {
                day?: import("../../../../../yandex/cloud/mdb/opensearch/v1/maintenance").WeeklyMaintenanceWindow_WeekDay | undefined;
                hour?: number | undefined;
            } & Record<Exclude<keyof I["maintenanceWindow"]["weeklyMaintenanceWindow"], keyof import("../../../../../yandex/cloud/mdb/opensearch/v1/maintenance").WeeklyMaintenanceWindow>, never>) | undefined;
        } & Record<Exclude<keyof I["maintenanceWindow"], keyof MaintenanceWindow>, never>) | undefined;
        plannedOperation?: ({
            info?: string | undefined;
            delayedUntil?: Date | undefined;
            latestMaintenanceTime?: Date | undefined;
            nextMaintenanceWindowTime?: Date | undefined;
        } & {
            info?: string | undefined;
            delayedUntil?: Date | undefined;
            latestMaintenanceTime?: Date | undefined;
            nextMaintenanceWindowTime?: Date | undefined;
        } & Record<Exclude<keyof I["plannedOperation"], keyof MaintenanceOperation>, never>) | undefined;
    } & Record<Exclude<keyof I, keyof Cluster>, never>>(object: I): Cluster;
};
export declare const Cluster_LabelsEntry: {
    encode(message: Cluster_LabelsEntry, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): Cluster_LabelsEntry;
    fromJSON(object: any): Cluster_LabelsEntry;
    toJSON(message: Cluster_LabelsEntry): unknown;
    fromPartial<I extends {
        key?: string | undefined;
        value?: string | undefined;
    } & {
        key?: string | undefined;
        value?: string | undefined;
    } & Record<Exclude<keyof I, keyof Cluster_LabelsEntry>, never>>(object: I): Cluster_LabelsEntry;
};
export declare const Monitoring: {
    encode(message: Monitoring, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): Monitoring;
    fromJSON(object: any): Monitoring;
    toJSON(message: Monitoring): unknown;
    fromPartial<I extends {
        name?: string | undefined;
        description?: string | undefined;
        link?: string | undefined;
    } & {
        name?: string | undefined;
        description?: string | undefined;
        link?: string | undefined;
    } & Record<Exclude<keyof I, keyof Monitoring>, never>>(object: I): Monitoring;
};
export declare const ClusterConfig: {
    encode(message: ClusterConfig, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): ClusterConfig;
    fromJSON(object: any): ClusterConfig;
    toJSON(message: ClusterConfig): unknown;
    fromPartial<I extends {
        version?: string | undefined;
        opensearch?: {
            plugins?: string[] | undefined;
            nodeGroups?: {
                name?: string | undefined;
                resources?: {
                    resourcePresetId?: string | undefined;
                    diskSize?: number | undefined;
                    diskTypeId?: string | undefined;
                } | undefined;
                hostsCount?: number | undefined;
                zoneIds?: string[] | undefined;
                subnetIds?: string[] | undefined;
                assignPublicIp?: boolean | undefined;
                roles?: OpenSearch_GroupRole[] | undefined;
                diskSizeAutoscaling?: {
                    plannedUsageThreshold?: number | undefined;
                    emergencyUsageThreshold?: number | undefined;
                    diskSizeLimit?: number | undefined;
                } | undefined;
            }[] | undefined;
            opensearchConfigSet2?: {
                effectiveConfig?: {
                    maxClauseCount?: number | undefined;
                    fielddataCacheSize?: string | undefined;
                    reindexRemoteWhitelist?: string | undefined;
                } | undefined;
                userConfig?: {
                    maxClauseCount?: number | undefined;
                    fielddataCacheSize?: string | undefined;
                    reindexRemoteWhitelist?: string | undefined;
                } | undefined;
                defaultConfig?: {
                    maxClauseCount?: number | undefined;
                    fielddataCacheSize?: string | undefined;
                    reindexRemoteWhitelist?: string | undefined;
                } | undefined;
            } | undefined;
            keystoreSettings?: string[] | undefined;
        } | undefined;
        dashboards?: {
            nodeGroups?: {
                name?: string | undefined;
                resources?: {
                    resourcePresetId?: string | undefined;
                    diskSize?: number | undefined;
                    diskTypeId?: string | undefined;
                } | undefined;
                hostsCount?: number | undefined;
                zoneIds?: string[] | undefined;
                subnetIds?: string[] | undefined;
                assignPublicIp?: boolean | undefined;
                diskSizeAutoscaling?: {
                    plannedUsageThreshold?: number | undefined;
                    emergencyUsageThreshold?: number | undefined;
                    diskSizeLimit?: number | undefined;
                } | undefined;
            }[] | undefined;
        } | undefined;
        access?: {
            dataTransfer?: boolean | undefined;
            serverless?: boolean | undefined;
        } | undefined;
    } & {
        version?: string | undefined;
        opensearch?: ({
            plugins?: string[] | undefined;
            nodeGroups?: {
                name?: string | undefined;
                resources?: {
                    resourcePresetId?: string | undefined;
                    diskSize?: number | undefined;
                    diskTypeId?: string | undefined;
                } | undefined;
                hostsCount?: number | undefined;
                zoneIds?: string[] | undefined;
                subnetIds?: string[] | undefined;
                assignPublicIp?: boolean | undefined;
                roles?: OpenSearch_GroupRole[] | undefined;
                diskSizeAutoscaling?: {
                    plannedUsageThreshold?: number | undefined;
                    emergencyUsageThreshold?: number | undefined;
                    diskSizeLimit?: number | undefined;
                } | undefined;
            }[] | undefined;
            opensearchConfigSet2?: {
                effectiveConfig?: {
                    maxClauseCount?: number | undefined;
                    fielddataCacheSize?: string | undefined;
                    reindexRemoteWhitelist?: string | undefined;
                } | undefined;
                userConfig?: {
                    maxClauseCount?: number | undefined;
                    fielddataCacheSize?: string | undefined;
                    reindexRemoteWhitelist?: string | undefined;
                } | undefined;
                defaultConfig?: {
                    maxClauseCount?: number | undefined;
                    fielddataCacheSize?: string | undefined;
                    reindexRemoteWhitelist?: string | undefined;
                } | undefined;
            } | undefined;
            keystoreSettings?: string[] | undefined;
        } & {
            plugins?: (string[] & string[] & Record<Exclude<keyof I["opensearch"]["plugins"], keyof string[]>, never>) | undefined;
            nodeGroups?: ({
                name?: string | undefined;
                resources?: {
                    resourcePresetId?: string | undefined;
                    diskSize?: number | undefined;
                    diskTypeId?: string | undefined;
                } | undefined;
                hostsCount?: number | undefined;
                zoneIds?: string[] | undefined;
                subnetIds?: string[] | undefined;
                assignPublicIp?: boolean | undefined;
                roles?: OpenSearch_GroupRole[] | undefined;
                diskSizeAutoscaling?: {
                    plannedUsageThreshold?: number | undefined;
                    emergencyUsageThreshold?: number | undefined;
                    diskSizeLimit?: number | undefined;
                } | undefined;
            }[] & ({
                name?: string | undefined;
                resources?: {
                    resourcePresetId?: string | undefined;
                    diskSize?: number | undefined;
                    diskTypeId?: string | undefined;
                } | undefined;
                hostsCount?: number | undefined;
                zoneIds?: string[] | undefined;
                subnetIds?: string[] | undefined;
                assignPublicIp?: boolean | undefined;
                roles?: OpenSearch_GroupRole[] | undefined;
                diskSizeAutoscaling?: {
                    plannedUsageThreshold?: number | undefined;
                    emergencyUsageThreshold?: number | undefined;
                    diskSizeLimit?: number | undefined;
                } | undefined;
            } & {
                name?: string | undefined;
                resources?: ({
                    resourcePresetId?: string | undefined;
                    diskSize?: number | undefined;
                    diskTypeId?: string | undefined;
                } & {
                    resourcePresetId?: string | undefined;
                    diskSize?: number | undefined;
                    diskTypeId?: string | undefined;
                } & Record<Exclude<keyof I["opensearch"]["nodeGroups"][number]["resources"], keyof Resources>, never>) | undefined;
                hostsCount?: number | undefined;
                zoneIds?: (string[] & string[] & Record<Exclude<keyof I["opensearch"]["nodeGroups"][number]["zoneIds"], keyof string[]>, never>) | undefined;
                subnetIds?: (string[] & string[] & Record<Exclude<keyof I["opensearch"]["nodeGroups"][number]["subnetIds"], keyof string[]>, never>) | undefined;
                assignPublicIp?: boolean | undefined;
                roles?: (OpenSearch_GroupRole[] & OpenSearch_GroupRole[] & Record<Exclude<keyof I["opensearch"]["nodeGroups"][number]["roles"], keyof OpenSearch_GroupRole[]>, never>) | undefined;
                diskSizeAutoscaling?: ({
                    plannedUsageThreshold?: number | undefined;
                    emergencyUsageThreshold?: number | undefined;
                    diskSizeLimit?: number | undefined;
                } & {
                    plannedUsageThreshold?: number | undefined;
                    emergencyUsageThreshold?: number | undefined;
                    diskSizeLimit?: number | undefined;
                } & Record<Exclude<keyof I["opensearch"]["nodeGroups"][number]["diskSizeAutoscaling"], keyof DiskSizeAutoscaling>, never>) | undefined;
            } & Record<Exclude<keyof I["opensearch"]["nodeGroups"][number], keyof OpenSearch_NodeGroup>, never>)[] & Record<Exclude<keyof I["opensearch"]["nodeGroups"], keyof {
                name?: string | undefined;
                resources?: {
                    resourcePresetId?: string | undefined;
                    diskSize?: number | undefined;
                    diskTypeId?: string | undefined;
                } | undefined;
                hostsCount?: number | undefined;
                zoneIds?: string[] | undefined;
                subnetIds?: string[] | undefined;
                assignPublicIp?: boolean | undefined;
                roles?: OpenSearch_GroupRole[] | undefined;
                diskSizeAutoscaling?: {
                    plannedUsageThreshold?: number | undefined;
                    emergencyUsageThreshold?: number | undefined;
                    diskSizeLimit?: number | undefined;
                } | undefined;
            }[]>, never>) | undefined;
            opensearchConfigSet2?: ({
                effectiveConfig?: {
                    maxClauseCount?: number | undefined;
                    fielddataCacheSize?: string | undefined;
                    reindexRemoteWhitelist?: string | undefined;
                } | undefined;
                userConfig?: {
                    maxClauseCount?: number | undefined;
                    fielddataCacheSize?: string | undefined;
                    reindexRemoteWhitelist?: string | undefined;
                } | undefined;
                defaultConfig?: {
                    maxClauseCount?: number | undefined;
                    fielddataCacheSize?: string | undefined;
                    reindexRemoteWhitelist?: string | undefined;
                } | undefined;
            } & {
                effectiveConfig?: ({
                    maxClauseCount?: number | undefined;
                    fielddataCacheSize?: string | undefined;
                    reindexRemoteWhitelist?: string | undefined;
                } & {
                    maxClauseCount?: number | undefined;
                    fielddataCacheSize?: string | undefined;
                    reindexRemoteWhitelist?: string | undefined;
                } & Record<Exclude<keyof I["opensearch"]["opensearchConfigSet2"]["effectiveConfig"], keyof import("../../../../../yandex/cloud/mdb/opensearch/v1/config/opensearch").OpenSearchConfig2>, never>) | undefined;
                userConfig?: ({
                    maxClauseCount?: number | undefined;
                    fielddataCacheSize?: string | undefined;
                    reindexRemoteWhitelist?: string | undefined;
                } & {
                    maxClauseCount?: number | undefined;
                    fielddataCacheSize?: string | undefined;
                    reindexRemoteWhitelist?: string | undefined;
                } & Record<Exclude<keyof I["opensearch"]["opensearchConfigSet2"]["userConfig"], keyof import("../../../../../yandex/cloud/mdb/opensearch/v1/config/opensearch").OpenSearchConfig2>, never>) | undefined;
                defaultConfig?: ({
                    maxClauseCount?: number | undefined;
                    fielddataCacheSize?: string | undefined;
                    reindexRemoteWhitelist?: string | undefined;
                } & {
                    maxClauseCount?: number | undefined;
                    fielddataCacheSize?: string | undefined;
                    reindexRemoteWhitelist?: string | undefined;
                } & Record<Exclude<keyof I["opensearch"]["opensearchConfigSet2"]["defaultConfig"], keyof import("../../../../../yandex/cloud/mdb/opensearch/v1/config/opensearch").OpenSearchConfig2>, never>) | undefined;
            } & Record<Exclude<keyof I["opensearch"]["opensearchConfigSet2"], keyof OpenSearchConfigSet2>, never>) | undefined;
            keystoreSettings?: (string[] & string[] & Record<Exclude<keyof I["opensearch"]["keystoreSettings"], keyof string[]>, never>) | undefined;
        } & Record<Exclude<keyof I["opensearch"], keyof OpenSearch>, never>) | undefined;
        dashboards?: ({
            nodeGroups?: {
                name?: string | undefined;
                resources?: {
                    resourcePresetId?: string | undefined;
                    diskSize?: number | undefined;
                    diskTypeId?: string | undefined;
                } | undefined;
                hostsCount?: number | undefined;
                zoneIds?: string[] | undefined;
                subnetIds?: string[] | undefined;
                assignPublicIp?: boolean | undefined;
                diskSizeAutoscaling?: {
                    plannedUsageThreshold?: number | undefined;
                    emergencyUsageThreshold?: number | undefined;
                    diskSizeLimit?: number | undefined;
                } | undefined;
            }[] | undefined;
        } & {
            nodeGroups?: ({
                name?: string | undefined;
                resources?: {
                    resourcePresetId?: string | undefined;
                    diskSize?: number | undefined;
                    diskTypeId?: string | undefined;
                } | undefined;
                hostsCount?: number | undefined;
                zoneIds?: string[] | undefined;
                subnetIds?: string[] | undefined;
                assignPublicIp?: boolean | undefined;
                diskSizeAutoscaling?: {
                    plannedUsageThreshold?: number | undefined;
                    emergencyUsageThreshold?: number | undefined;
                    diskSizeLimit?: number | undefined;
                } | undefined;
            }[] & ({
                name?: string | undefined;
                resources?: {
                    resourcePresetId?: string | undefined;
                    diskSize?: number | undefined;
                    diskTypeId?: string | undefined;
                } | undefined;
                hostsCount?: number | undefined;
                zoneIds?: string[] | undefined;
                subnetIds?: string[] | undefined;
                assignPublicIp?: boolean | undefined;
                diskSizeAutoscaling?: {
                    plannedUsageThreshold?: number | undefined;
                    emergencyUsageThreshold?: number | undefined;
                    diskSizeLimit?: number | undefined;
                } | undefined;
            } & {
                name?: string | undefined;
                resources?: ({
                    resourcePresetId?: string | undefined;
                    diskSize?: number | undefined;
                    diskTypeId?: string | undefined;
                } & {
                    resourcePresetId?: string | undefined;
                    diskSize?: number | undefined;
                    diskTypeId?: string | undefined;
                } & Record<Exclude<keyof I["dashboards"]["nodeGroups"][number]["resources"], keyof Resources>, never>) | undefined;
                hostsCount?: number | undefined;
                zoneIds?: (string[] & string[] & Record<Exclude<keyof I["dashboards"]["nodeGroups"][number]["zoneIds"], keyof string[]>, never>) | undefined;
                subnetIds?: (string[] & string[] & Record<Exclude<keyof I["dashboards"]["nodeGroups"][number]["subnetIds"], keyof string[]>, never>) | undefined;
                assignPublicIp?: boolean | undefined;
                diskSizeAutoscaling?: ({
                    plannedUsageThreshold?: number | undefined;
                    emergencyUsageThreshold?: number | undefined;
                    diskSizeLimit?: number | undefined;
                } & {
                    plannedUsageThreshold?: number | undefined;
                    emergencyUsageThreshold?: number | undefined;
                    diskSizeLimit?: number | undefined;
                } & Record<Exclude<keyof I["dashboards"]["nodeGroups"][number]["diskSizeAutoscaling"], keyof DiskSizeAutoscaling>, never>) | undefined;
            } & Record<Exclude<keyof I["dashboards"]["nodeGroups"][number], keyof Dashboards_NodeGroup>, never>)[] & Record<Exclude<keyof I["dashboards"]["nodeGroups"], keyof {
                name?: string | undefined;
                resources?: {
                    resourcePresetId?: string | undefined;
                    diskSize?: number | undefined;
                    diskTypeId?: string | undefined;
                } | undefined;
                hostsCount?: number | undefined;
                zoneIds?: string[] | undefined;
                subnetIds?: string[] | undefined;
                assignPublicIp?: boolean | undefined;
                diskSizeAutoscaling?: {
                    plannedUsageThreshold?: number | undefined;
                    emergencyUsageThreshold?: number | undefined;
                    diskSizeLimit?: number | undefined;
                } | undefined;
            }[]>, never>) | undefined;
        } & Record<Exclude<keyof I["dashboards"], "nodeGroups">, never>) | undefined;
        access?: ({
            dataTransfer?: boolean | undefined;
            serverless?: boolean | undefined;
        } & {
            dataTransfer?: boolean | undefined;
            serverless?: boolean | undefined;
        } & Record<Exclude<keyof I["access"], keyof Access>, never>) | undefined;
    } & Record<Exclude<keyof I, keyof ClusterConfig>, never>>(object: I): ClusterConfig;
};
export declare const OpenSearch: {
    encode(message: OpenSearch, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): OpenSearch;
    fromJSON(object: any): OpenSearch;
    toJSON(message: OpenSearch): unknown;
    fromPartial<I extends {
        plugins?: string[] | undefined;
        nodeGroups?: {
            name?: string | undefined;
            resources?: {
                resourcePresetId?: string | undefined;
                diskSize?: number | undefined;
                diskTypeId?: string | undefined;
            } | undefined;
            hostsCount?: number | undefined;
            zoneIds?: string[] | undefined;
            subnetIds?: string[] | undefined;
            assignPublicIp?: boolean | undefined;
            roles?: OpenSearch_GroupRole[] | undefined;
            diskSizeAutoscaling?: {
                plannedUsageThreshold?: number | undefined;
                emergencyUsageThreshold?: number | undefined;
                diskSizeLimit?: number | undefined;
            } | undefined;
        }[] | undefined;
        opensearchConfigSet2?: {
            effectiveConfig?: {
                maxClauseCount?: number | undefined;
                fielddataCacheSize?: string | undefined;
                reindexRemoteWhitelist?: string | undefined;
            } | undefined;
            userConfig?: {
                maxClauseCount?: number | undefined;
                fielddataCacheSize?: string | undefined;
                reindexRemoteWhitelist?: string | undefined;
            } | undefined;
            defaultConfig?: {
                maxClauseCount?: number | undefined;
                fielddataCacheSize?: string | undefined;
                reindexRemoteWhitelist?: string | undefined;
            } | undefined;
        } | undefined;
        keystoreSettings?: string[] | undefined;
    } & {
        plugins?: (string[] & string[] & Record<Exclude<keyof I["plugins"], keyof string[]>, never>) | undefined;
        nodeGroups?: ({
            name?: string | undefined;
            resources?: {
                resourcePresetId?: string | undefined;
                diskSize?: number | undefined;
                diskTypeId?: string | undefined;
            } | undefined;
            hostsCount?: number | undefined;
            zoneIds?: string[] | undefined;
            subnetIds?: string[] | undefined;
            assignPublicIp?: boolean | undefined;
            roles?: OpenSearch_GroupRole[] | undefined;
            diskSizeAutoscaling?: {
                plannedUsageThreshold?: number | undefined;
                emergencyUsageThreshold?: number | undefined;
                diskSizeLimit?: number | undefined;
            } | undefined;
        }[] & ({
            name?: string | undefined;
            resources?: {
                resourcePresetId?: string | undefined;
                diskSize?: number | undefined;
                diskTypeId?: string | undefined;
            } | undefined;
            hostsCount?: number | undefined;
            zoneIds?: string[] | undefined;
            subnetIds?: string[] | undefined;
            assignPublicIp?: boolean | undefined;
            roles?: OpenSearch_GroupRole[] | undefined;
            diskSizeAutoscaling?: {
                plannedUsageThreshold?: number | undefined;
                emergencyUsageThreshold?: number | undefined;
                diskSizeLimit?: number | undefined;
            } | undefined;
        } & {
            name?: string | undefined;
            resources?: ({
                resourcePresetId?: string | undefined;
                diskSize?: number | undefined;
                diskTypeId?: string | undefined;
            } & {
                resourcePresetId?: string | undefined;
                diskSize?: number | undefined;
                diskTypeId?: string | undefined;
            } & Record<Exclude<keyof I["nodeGroups"][number]["resources"], keyof Resources>, never>) | undefined;
            hostsCount?: number | undefined;
            zoneIds?: (string[] & string[] & Record<Exclude<keyof I["nodeGroups"][number]["zoneIds"], keyof string[]>, never>) | undefined;
            subnetIds?: (string[] & string[] & Record<Exclude<keyof I["nodeGroups"][number]["subnetIds"], keyof string[]>, never>) | undefined;
            assignPublicIp?: boolean | undefined;
            roles?: (OpenSearch_GroupRole[] & OpenSearch_GroupRole[] & Record<Exclude<keyof I["nodeGroups"][number]["roles"], keyof OpenSearch_GroupRole[]>, never>) | undefined;
            diskSizeAutoscaling?: ({
                plannedUsageThreshold?: number | undefined;
                emergencyUsageThreshold?: number | undefined;
                diskSizeLimit?: number | undefined;
            } & {
                plannedUsageThreshold?: number | undefined;
                emergencyUsageThreshold?: number | undefined;
                diskSizeLimit?: number | undefined;
            } & Record<Exclude<keyof I["nodeGroups"][number]["diskSizeAutoscaling"], keyof DiskSizeAutoscaling>, never>) | undefined;
        } & Record<Exclude<keyof I["nodeGroups"][number], keyof OpenSearch_NodeGroup>, never>)[] & Record<Exclude<keyof I["nodeGroups"], keyof {
            name?: string | undefined;
            resources?: {
                resourcePresetId?: string | undefined;
                diskSize?: number | undefined;
                diskTypeId?: string | undefined;
            } | undefined;
            hostsCount?: number | undefined;
            zoneIds?: string[] | undefined;
            subnetIds?: string[] | undefined;
            assignPublicIp?: boolean | undefined;
            roles?: OpenSearch_GroupRole[] | undefined;
            diskSizeAutoscaling?: {
                plannedUsageThreshold?: number | undefined;
                emergencyUsageThreshold?: number | undefined;
                diskSizeLimit?: number | undefined;
            } | undefined;
        }[]>, never>) | undefined;
        opensearchConfigSet2?: ({
            effectiveConfig?: {
                maxClauseCount?: number | undefined;
                fielddataCacheSize?: string | undefined;
                reindexRemoteWhitelist?: string | undefined;
            } | undefined;
            userConfig?: {
                maxClauseCount?: number | undefined;
                fielddataCacheSize?: string | undefined;
                reindexRemoteWhitelist?: string | undefined;
            } | undefined;
            defaultConfig?: {
                maxClauseCount?: number | undefined;
                fielddataCacheSize?: string | undefined;
                reindexRemoteWhitelist?: string | undefined;
            } | undefined;
        } & {
            effectiveConfig?: ({
                maxClauseCount?: number | undefined;
                fielddataCacheSize?: string | undefined;
                reindexRemoteWhitelist?: string | undefined;
            } & {
                maxClauseCount?: number | undefined;
                fielddataCacheSize?: string | undefined;
                reindexRemoteWhitelist?: string | undefined;
            } & Record<Exclude<keyof I["opensearchConfigSet2"]["effectiveConfig"], keyof import("../../../../../yandex/cloud/mdb/opensearch/v1/config/opensearch").OpenSearchConfig2>, never>) | undefined;
            userConfig?: ({
                maxClauseCount?: number | undefined;
                fielddataCacheSize?: string | undefined;
                reindexRemoteWhitelist?: string | undefined;
            } & {
                maxClauseCount?: number | undefined;
                fielddataCacheSize?: string | undefined;
                reindexRemoteWhitelist?: string | undefined;
            } & Record<Exclude<keyof I["opensearchConfigSet2"]["userConfig"], keyof import("../../../../../yandex/cloud/mdb/opensearch/v1/config/opensearch").OpenSearchConfig2>, never>) | undefined;
            defaultConfig?: ({
                maxClauseCount?: number | undefined;
                fielddataCacheSize?: string | undefined;
                reindexRemoteWhitelist?: string | undefined;
            } & {
                maxClauseCount?: number | undefined;
                fielddataCacheSize?: string | undefined;
                reindexRemoteWhitelist?: string | undefined;
            } & Record<Exclude<keyof I["opensearchConfigSet2"]["defaultConfig"], keyof import("../../../../../yandex/cloud/mdb/opensearch/v1/config/opensearch").OpenSearchConfig2>, never>) | undefined;
        } & Record<Exclude<keyof I["opensearchConfigSet2"], keyof OpenSearchConfigSet2>, never>) | undefined;
        keystoreSettings?: (string[] & string[] & Record<Exclude<keyof I["keystoreSettings"], keyof string[]>, never>) | undefined;
    } & Record<Exclude<keyof I, keyof OpenSearch>, never>>(object: I): OpenSearch;
};
export declare const OpenSearch_NodeGroup: {
    encode(message: OpenSearch_NodeGroup, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): OpenSearch_NodeGroup;
    fromJSON(object: any): OpenSearch_NodeGroup;
    toJSON(message: OpenSearch_NodeGroup): unknown;
    fromPartial<I extends {
        name?: string | undefined;
        resources?: {
            resourcePresetId?: string | undefined;
            diskSize?: number | undefined;
            diskTypeId?: string | undefined;
        } | undefined;
        hostsCount?: number | undefined;
        zoneIds?: string[] | undefined;
        subnetIds?: string[] | undefined;
        assignPublicIp?: boolean | undefined;
        roles?: OpenSearch_GroupRole[] | undefined;
        diskSizeAutoscaling?: {
            plannedUsageThreshold?: number | undefined;
            emergencyUsageThreshold?: number | undefined;
            diskSizeLimit?: number | undefined;
        } | undefined;
    } & {
        name?: string | undefined;
        resources?: ({
            resourcePresetId?: string | undefined;
            diskSize?: number | undefined;
            diskTypeId?: string | undefined;
        } & {
            resourcePresetId?: string | undefined;
            diskSize?: number | undefined;
            diskTypeId?: string | undefined;
        } & Record<Exclude<keyof I["resources"], keyof Resources>, never>) | undefined;
        hostsCount?: number | undefined;
        zoneIds?: (string[] & string[] & Record<Exclude<keyof I["zoneIds"], keyof string[]>, never>) | undefined;
        subnetIds?: (string[] & string[] & Record<Exclude<keyof I["subnetIds"], keyof string[]>, never>) | undefined;
        assignPublicIp?: boolean | undefined;
        roles?: (OpenSearch_GroupRole[] & OpenSearch_GroupRole[] & Record<Exclude<keyof I["roles"], keyof OpenSearch_GroupRole[]>, never>) | undefined;
        diskSizeAutoscaling?: ({
            plannedUsageThreshold?: number | undefined;
            emergencyUsageThreshold?: number | undefined;
            diskSizeLimit?: number | undefined;
        } & {
            plannedUsageThreshold?: number | undefined;
            emergencyUsageThreshold?: number | undefined;
            diskSizeLimit?: number | undefined;
        } & Record<Exclude<keyof I["diskSizeAutoscaling"], keyof DiskSizeAutoscaling>, never>) | undefined;
    } & Record<Exclude<keyof I, keyof OpenSearch_NodeGroup>, never>>(object: I): OpenSearch_NodeGroup;
};
export declare const Dashboards: {
    encode(message: Dashboards, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): Dashboards;
    fromJSON(object: any): Dashboards;
    toJSON(message: Dashboards): unknown;
    fromPartial<I extends {
        nodeGroups?: {
            name?: string | undefined;
            resources?: {
                resourcePresetId?: string | undefined;
                diskSize?: number | undefined;
                diskTypeId?: string | undefined;
            } | undefined;
            hostsCount?: number | undefined;
            zoneIds?: string[] | undefined;
            subnetIds?: string[] | undefined;
            assignPublicIp?: boolean | undefined;
            diskSizeAutoscaling?: {
                plannedUsageThreshold?: number | undefined;
                emergencyUsageThreshold?: number | undefined;
                diskSizeLimit?: number | undefined;
            } | undefined;
        }[] | undefined;
    } & {
        nodeGroups?: ({
            name?: string | undefined;
            resources?: {
                resourcePresetId?: string | undefined;
                diskSize?: number | undefined;
                diskTypeId?: string | undefined;
            } | undefined;
            hostsCount?: number | undefined;
            zoneIds?: string[] | undefined;
            subnetIds?: string[] | undefined;
            assignPublicIp?: boolean | undefined;
            diskSizeAutoscaling?: {
                plannedUsageThreshold?: number | undefined;
                emergencyUsageThreshold?: number | undefined;
                diskSizeLimit?: number | undefined;
            } | undefined;
        }[] & ({
            name?: string | undefined;
            resources?: {
                resourcePresetId?: string | undefined;
                diskSize?: number | undefined;
                diskTypeId?: string | undefined;
            } | undefined;
            hostsCount?: number | undefined;
            zoneIds?: string[] | undefined;
            subnetIds?: string[] | undefined;
            assignPublicIp?: boolean | undefined;
            diskSizeAutoscaling?: {
                plannedUsageThreshold?: number | undefined;
                emergencyUsageThreshold?: number | undefined;
                diskSizeLimit?: number | undefined;
            } | undefined;
        } & {
            name?: string | undefined;
            resources?: ({
                resourcePresetId?: string | undefined;
                diskSize?: number | undefined;
                diskTypeId?: string | undefined;
            } & {
                resourcePresetId?: string | undefined;
                diskSize?: number | undefined;
                diskTypeId?: string | undefined;
            } & Record<Exclude<keyof I["nodeGroups"][number]["resources"], keyof Resources>, never>) | undefined;
            hostsCount?: number | undefined;
            zoneIds?: (string[] & string[] & Record<Exclude<keyof I["nodeGroups"][number]["zoneIds"], keyof string[]>, never>) | undefined;
            subnetIds?: (string[] & string[] & Record<Exclude<keyof I["nodeGroups"][number]["subnetIds"], keyof string[]>, never>) | undefined;
            assignPublicIp?: boolean | undefined;
            diskSizeAutoscaling?: ({
                plannedUsageThreshold?: number | undefined;
                emergencyUsageThreshold?: number | undefined;
                diskSizeLimit?: number | undefined;
            } & {
                plannedUsageThreshold?: number | undefined;
                emergencyUsageThreshold?: number | undefined;
                diskSizeLimit?: number | undefined;
            } & Record<Exclude<keyof I["nodeGroups"][number]["diskSizeAutoscaling"], keyof DiskSizeAutoscaling>, never>) | undefined;
        } & Record<Exclude<keyof I["nodeGroups"][number], keyof Dashboards_NodeGroup>, never>)[] & Record<Exclude<keyof I["nodeGroups"], keyof {
            name?: string | undefined;
            resources?: {
                resourcePresetId?: string | undefined;
                diskSize?: number | undefined;
                diskTypeId?: string | undefined;
            } | undefined;
            hostsCount?: number | undefined;
            zoneIds?: string[] | undefined;
            subnetIds?: string[] | undefined;
            assignPublicIp?: boolean | undefined;
            diskSizeAutoscaling?: {
                plannedUsageThreshold?: number | undefined;
                emergencyUsageThreshold?: number | undefined;
                diskSizeLimit?: number | undefined;
            } | undefined;
        }[]>, never>) | undefined;
    } & Record<Exclude<keyof I, "nodeGroups">, never>>(object: I): Dashboards;
};
export declare const Dashboards_NodeGroup: {
    encode(message: Dashboards_NodeGroup, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): Dashboards_NodeGroup;
    fromJSON(object: any): Dashboards_NodeGroup;
    toJSON(message: Dashboards_NodeGroup): unknown;
    fromPartial<I extends {
        name?: string | undefined;
        resources?: {
            resourcePresetId?: string | undefined;
            diskSize?: number | undefined;
            diskTypeId?: string | undefined;
        } | undefined;
        hostsCount?: number | undefined;
        zoneIds?: string[] | undefined;
        subnetIds?: string[] | undefined;
        assignPublicIp?: boolean | undefined;
        diskSizeAutoscaling?: {
            plannedUsageThreshold?: number | undefined;
            emergencyUsageThreshold?: number | undefined;
            diskSizeLimit?: number | undefined;
        } | undefined;
    } & {
        name?: string | undefined;
        resources?: ({
            resourcePresetId?: string | undefined;
            diskSize?: number | undefined;
            diskTypeId?: string | undefined;
        } & {
            resourcePresetId?: string | undefined;
            diskSize?: number | undefined;
            diskTypeId?: string | undefined;
        } & Record<Exclude<keyof I["resources"], keyof Resources>, never>) | undefined;
        hostsCount?: number | undefined;
        zoneIds?: (string[] & string[] & Record<Exclude<keyof I["zoneIds"], keyof string[]>, never>) | undefined;
        subnetIds?: (string[] & string[] & Record<Exclude<keyof I["subnetIds"], keyof string[]>, never>) | undefined;
        assignPublicIp?: boolean | undefined;
        diskSizeAutoscaling?: ({
            plannedUsageThreshold?: number | undefined;
            emergencyUsageThreshold?: number | undefined;
            diskSizeLimit?: number | undefined;
        } & {
            plannedUsageThreshold?: number | undefined;
            emergencyUsageThreshold?: number | undefined;
            diskSizeLimit?: number | undefined;
        } & Record<Exclude<keyof I["diskSizeAutoscaling"], keyof DiskSizeAutoscaling>, never>) | undefined;
    } & Record<Exclude<keyof I, keyof Dashboards_NodeGroup>, never>>(object: I): Dashboards_NodeGroup;
};
export declare const Resources: {
    encode(message: Resources, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): Resources;
    fromJSON(object: any): Resources;
    toJSON(message: Resources): unknown;
    fromPartial<I extends {
        resourcePresetId?: string | undefined;
        diskSize?: number | undefined;
        diskTypeId?: string | undefined;
    } & {
        resourcePresetId?: string | undefined;
        diskSize?: number | undefined;
        diskTypeId?: string | undefined;
    } & Record<Exclude<keyof I, keyof Resources>, never>>(object: I): Resources;
};
export declare const Host: {
    encode(message: Host, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): Host;
    fromJSON(object: any): Host;
    toJSON(message: Host): unknown;
    fromPartial<I extends {
        name?: string | undefined;
        clusterId?: string | undefined;
        zoneId?: string | undefined;
        resources?: {
            resourcePresetId?: string | undefined;
            diskSize?: number | undefined;
            diskTypeId?: string | undefined;
        } | undefined;
        type?: Host_Type | undefined;
        health?: Host_Health | undefined;
        subnetId?: string | undefined;
        assignPublicIp?: boolean | undefined;
        system?: {
            cpu?: {
                timestamp?: number | undefined;
                used?: number | undefined;
            } | undefined;
            memory?: {
                timestamp?: number | undefined;
                used?: number | undefined;
                total?: number | undefined;
            } | undefined;
            disk?: {
                timestamp?: number | undefined;
                used?: number | undefined;
                total?: number | undefined;
            } | undefined;
        } | undefined;
        nodeGroup?: string | undefined;
        roles?: OpenSearch_GroupRole[] | undefined;
    } & {
        name?: string | undefined;
        clusterId?: string | undefined;
        zoneId?: string | undefined;
        resources?: ({
            resourcePresetId?: string | undefined;
            diskSize?: number | undefined;
            diskTypeId?: string | undefined;
        } & {
            resourcePresetId?: string | undefined;
            diskSize?: number | undefined;
            diskTypeId?: string | undefined;
        } & Record<Exclude<keyof I["resources"], keyof Resources>, never>) | undefined;
        type?: Host_Type | undefined;
        health?: Host_Health | undefined;
        subnetId?: string | undefined;
        assignPublicIp?: boolean | undefined;
        system?: ({
            cpu?: {
                timestamp?: number | undefined;
                used?: number | undefined;
            } | undefined;
            memory?: {
                timestamp?: number | undefined;
                used?: number | undefined;
                total?: number | undefined;
            } | undefined;
            disk?: {
                timestamp?: number | undefined;
                used?: number | undefined;
                total?: number | undefined;
            } | undefined;
        } & {
            cpu?: ({
                timestamp?: number | undefined;
                used?: number | undefined;
            } & {
                timestamp?: number | undefined;
                used?: number | undefined;
            } & Record<Exclude<keyof I["system"]["cpu"], keyof Host_CPUMetric>, never>) | undefined;
            memory?: ({
                timestamp?: number | undefined;
                used?: number | undefined;
                total?: number | undefined;
            } & {
                timestamp?: number | undefined;
                used?: number | undefined;
                total?: number | undefined;
            } & Record<Exclude<keyof I["system"]["memory"], keyof Host_MemoryMetric>, never>) | undefined;
            disk?: ({
                timestamp?: number | undefined;
                used?: number | undefined;
                total?: number | undefined;
            } & {
                timestamp?: number | undefined;
                used?: number | undefined;
                total?: number | undefined;
            } & Record<Exclude<keyof I["system"]["disk"], keyof Host_DiskMetric>, never>) | undefined;
        } & Record<Exclude<keyof I["system"], keyof Host_SystemMetrics>, never>) | undefined;
        nodeGroup?: string | undefined;
        roles?: (OpenSearch_GroupRole[] & OpenSearch_GroupRole[] & Record<Exclude<keyof I["roles"], keyof OpenSearch_GroupRole[]>, never>) | undefined;
    } & Record<Exclude<keyof I, keyof Host>, never>>(object: I): Host;
};
export declare const Host_CPUMetric: {
    encode(message: Host_CPUMetric, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): Host_CPUMetric;
    fromJSON(object: any): Host_CPUMetric;
    toJSON(message: Host_CPUMetric): unknown;
    fromPartial<I extends {
        timestamp?: number | undefined;
        used?: number | undefined;
    } & {
        timestamp?: number | undefined;
        used?: number | undefined;
    } & Record<Exclude<keyof I, keyof Host_CPUMetric>, never>>(object: I): Host_CPUMetric;
};
export declare const Host_MemoryMetric: {
    encode(message: Host_MemoryMetric, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): Host_MemoryMetric;
    fromJSON(object: any): Host_MemoryMetric;
    toJSON(message: Host_MemoryMetric): unknown;
    fromPartial<I extends {
        timestamp?: number | undefined;
        used?: number | undefined;
        total?: number | undefined;
    } & {
        timestamp?: number | undefined;
        used?: number | undefined;
        total?: number | undefined;
    } & Record<Exclude<keyof I, keyof Host_MemoryMetric>, never>>(object: I): Host_MemoryMetric;
};
export declare const Host_DiskMetric: {
    encode(message: Host_DiskMetric, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): Host_DiskMetric;
    fromJSON(object: any): Host_DiskMetric;
    toJSON(message: Host_DiskMetric): unknown;
    fromPartial<I extends {
        timestamp?: number | undefined;
        used?: number | undefined;
        total?: number | undefined;
    } & {
        timestamp?: number | undefined;
        used?: number | undefined;
        total?: number | undefined;
    } & Record<Exclude<keyof I, keyof Host_DiskMetric>, never>>(object: I): Host_DiskMetric;
};
export declare const Host_SystemMetrics: {
    encode(message: Host_SystemMetrics, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): Host_SystemMetrics;
    fromJSON(object: any): Host_SystemMetrics;
    toJSON(message: Host_SystemMetrics): unknown;
    fromPartial<I extends {
        cpu?: {
            timestamp?: number | undefined;
            used?: number | undefined;
        } | undefined;
        memory?: {
            timestamp?: number | undefined;
            used?: number | undefined;
            total?: number | undefined;
        } | undefined;
        disk?: {
            timestamp?: number | undefined;
            used?: number | undefined;
            total?: number | undefined;
        } | undefined;
    } & {
        cpu?: ({
            timestamp?: number | undefined;
            used?: number | undefined;
        } & {
            timestamp?: number | undefined;
            used?: number | undefined;
        } & Record<Exclude<keyof I["cpu"], keyof Host_CPUMetric>, never>) | undefined;
        memory?: ({
            timestamp?: number | undefined;
            used?: number | undefined;
            total?: number | undefined;
        } & {
            timestamp?: number | undefined;
            used?: number | undefined;
            total?: number | undefined;
        } & Record<Exclude<keyof I["memory"], keyof Host_MemoryMetric>, never>) | undefined;
        disk?: ({
            timestamp?: number | undefined;
            used?: number | undefined;
            total?: number | undefined;
        } & {
            timestamp?: number | undefined;
            used?: number | undefined;
            total?: number | undefined;
        } & Record<Exclude<keyof I["disk"], keyof Host_DiskMetric>, never>) | undefined;
    } & Record<Exclude<keyof I, keyof Host_SystemMetrics>, never>>(object: I): Host_SystemMetrics;
};
export declare const Access: {
    encode(message: Access, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): Access;
    fromJSON(object: any): Access;
    toJSON(message: Access): unknown;
    fromPartial<I extends {
        dataTransfer?: boolean | undefined;
        serverless?: boolean | undefined;
    } & {
        dataTransfer?: boolean | undefined;
        serverless?: boolean | undefined;
    } & Record<Exclude<keyof I, keyof Access>, never>>(object: I): Access;
};
export declare const DiskSizeAutoscaling: {
    encode(message: DiskSizeAutoscaling, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): DiskSizeAutoscaling;
    fromJSON(object: any): DiskSizeAutoscaling;
    toJSON(message: DiskSizeAutoscaling): unknown;
    fromPartial<I extends {
        plannedUsageThreshold?: number | undefined;
        emergencyUsageThreshold?: number | undefined;
        diskSizeLimit?: number | undefined;
    } & {
        plannedUsageThreshold?: number | undefined;
        emergencyUsageThreshold?: number | undefined;
        diskSizeLimit?: number | undefined;
    } & Record<Exclude<keyof I, keyof DiskSizeAutoscaling>, never>>(object: I): DiskSizeAutoscaling;
};
type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
export type DeepPartial<T> = T extends Builtin ? T : T extends Array<infer U> ? Array<DeepPartial<U>> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>> : T extends {} ? {
    [K in keyof T]?: DeepPartial<T[K]>;
} : Partial<T>;
type KeysOfUnion<T> = T extends T ? keyof T : never;
export type Exact<P, I extends P> = P extends Builtin ? P : P & {
    [K in keyof P]: Exact<P[K], I[K]>;
} & Record<Exclude<keyof I, KeysOfUnion<P>>, never>;
export {};
