import _m0 from 'protobufjs/minimal'; import { NodeTemplate, Taint } from '../../../../yandex/cloud/k8s/v1/node'; import { VersionInfo } from '../../../../yandex/cloud/k8s/v1/version'; import { MaintenanceWindow } from '../../../../yandex/cloud/k8s/v1/maintenance'; export declare const protobufPackage = "yandex.cloud.k8s.v1"; export interface NodeGroup { /** ID of the node group. */ id: string; /** ID of the cluster that the node group belongs to. */ clusterId: string; /** Creation timestamp. */ createdAt?: Date; /** * Name of the node group. * The name is unique within the folder. */ name: string; /** Description of the node group. 0-256 characters long. */ description: string; /** Resource labels as `key:value` pairs. Maximum of 64 per resource. */ labels: { [key: string]: string; }; /** Status of the node group. */ status: NodeGroup_Status; /** Node template that specifies parameters of the compute instances for the node group. */ nodeTemplate?: NodeTemplate; /** Scale policy of the node group. For more information, see [Scaling policy](/docs/compute/concepts/instance-groups/policies#scale-policy). */ scalePolicy?: ScalePolicy; /** Allocation policy by which resources for node group are allocated to zones and regions. */ allocationPolicy?: NodeGroupAllocationPolicy; /** Deploy policy according to which the updates are rolled out. */ deployPolicy?: DeployPolicy; /** ID of the managed instance group associated with this node group. */ instanceGroupId: string; /** * Version of Kubernetes components that runs on the nodes. * Deprecated. Use version_info.current_version. */ nodeVersion: string; /** Detailed information about the Kubernetes version that is running on the node. */ versionInfo?: VersionInfo; /** Maintenance policy of the node group. */ maintenancePolicy?: NodeGroupMaintenancePolicy; /** Support for unsafe sysctl parameters. For more details see [documentation](https://kubernetes.io/docs/tasks/administer-cluster/sysctl-cluster/). */ allowedUnsafeSysctls: string[]; /** Taints that are applied to the nodes of the node group at creation time. */ nodeTaints: Taint[]; /** Labels that are assigned to the nodes of the node group at creation time. */ nodeLabels: { [key: string]: string; }; } export declare enum NodeGroup_Status { STATUS_UNSPECIFIED = 0, /** PROVISIONING - Node group is waiting for resources to be allocated. */ PROVISIONING = 1, /** RUNNING - Node group is running. */ RUNNING = 2, /** RECONCILING - Node group is waiting for some work to be done, such as upgrading node software. */ RECONCILING = 3, /** STOPPING - Node group is being stopped. */ STOPPING = 4, /** STOPPED - Node group stopped. */ STOPPED = 5, /** DELETING - Node group is being deleted. */ DELETING = 6, /** STARTING - Node group is being started. */ STARTING = 7, UNRECOGNIZED = -1 } export declare function nodeGroup_StatusFromJSON(object: any): NodeGroup_Status; export declare function nodeGroup_StatusToJSON(object: NodeGroup_Status): string; export interface NodeGroup_LabelsEntry { key: string; value: string; } export interface NodeGroup_NodeLabelsEntry { key: string; value: string; } export interface ScalePolicy { /** Fixed scale policy of the node group. */ fixedScale?: ScalePolicy_FixedScale | undefined; /** Auto scale policy of the node group. */ autoScale?: ScalePolicy_AutoScale | undefined; } export interface ScalePolicy_FixedScale { /** Number of nodes in the node group. */ size: number; } export interface ScalePolicy_AutoScale { /** Minimum number of nodes in the node group. */ minSize: number; /** Maximum number of nodes in the node group. */ maxSize: number; /** Initial number of nodes in the node group. */ initialSize: number; } export interface NodeGroupAllocationPolicy { /** List of locations where resources for the node group will be allocated. */ locations: NodeGroupLocation[]; } export interface NodeGroupLocation { /** ID of the availability zone where the nodes may reside. */ zoneId: string; /** ID of the subnet. If a network chosen for the Kubernetes cluster has only one subnet in the specified zone, subnet ID may be omitted. */ subnetId: string; } export interface NodeGroupMaintenancePolicy { /** * If set to true, automatic updates are installed in the specified period of time with no interaction from the user. * If set to false, automatic upgrades are disabled. */ autoUpgrade: boolean; /** If set to true, automatic repairs are enabled. Default value is false. */ autoRepair: boolean; /** * Maintenance window settings. Update will start at the specified time and last no more than the specified duration. * The time is set in UTC. */ maintenanceWindow?: MaintenanceWindow; } export interface DeployPolicy { /** * The maximum number of running instances that can be taken offline (i.e., * stopped or deleted) at the same time during the update process. * If [max_expansion] is not specified or set to zero, [max_unavailable] must * be set to a non-zero value. */ maxUnavailable: number; /** * The maximum number of instances that can be temporarily allocated above * the group's target size during the update process. * If [max_unavailable] is not specified or set to zero, [max_expansion] must * be set to a non-zero value. */ maxExpansion: number; } export declare const NodeGroup: { encode(message: NodeGroup, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): NodeGroup; fromJSON(object: any): NodeGroup; toJSON(message: NodeGroup): unknown; fromPartial, never>) | undefined; status?: NodeGroup_Status | undefined; nodeTemplate?: ({ name?: string | undefined; labels?: { [x: string]: string | undefined; } | undefined; platformId?: string | undefined; resourcesSpec?: { memory?: number | undefined; cores?: number | undefined; coreFraction?: number | undefined; gpus?: number | undefined; } | undefined; bootDiskSpec?: { diskTypeId?: string | undefined; diskSize?: number | undefined; } | undefined; metadata?: { [x: string]: string | undefined; } | undefined; v4AddressSpec?: { oneToOneNatSpec?: { ipVersion?: import("../../../../yandex/cloud/k8s/v1/node").IpVersion | undefined; } | undefined; dnsRecordSpecs?: { fqdn?: string | undefined; dnsZoneId?: string | undefined; ttl?: number | undefined; ptr?: boolean | undefined; }[] | undefined; } | undefined; schedulingPolicy?: { preemptible?: boolean | undefined; } | undefined; networkInterfaceSpecs?: { subnetIds?: string[] | undefined; primaryV4AddressSpec?: { oneToOneNatSpec?: { ipVersion?: import("../../../../yandex/cloud/k8s/v1/node").IpVersion | undefined; } | undefined; dnsRecordSpecs?: { fqdn?: string | undefined; dnsZoneId?: string | undefined; ttl?: number | undefined; ptr?: boolean | undefined; }[] | undefined; } | undefined; primaryV6AddressSpec?: { oneToOneNatSpec?: { ipVersion?: import("../../../../yandex/cloud/k8s/v1/node").IpVersion | undefined; } | undefined; dnsRecordSpecs?: { fqdn?: string | undefined; dnsZoneId?: string | undefined; ttl?: number | undefined; ptr?: boolean | undefined; }[] | undefined; } | undefined; securityGroupIds?: string[] | undefined; }[] | undefined; placementPolicy?: { placementGroupId?: string | undefined; } | undefined; networkSettings?: { type?: import("../../../../yandex/cloud/k8s/v1/node").NodeTemplate_NetworkSettings_Type | undefined; } | undefined; containerRuntimeSettings?: { type?: import("../../../../yandex/cloud/k8s/v1/node").NodeTemplate_ContainerRuntimeSettings_Type | undefined; } | undefined; containerNetworkSettings?: { podMtu?: number | undefined; } | undefined; gpuSettings?: { gpuClusterId?: string | undefined; gpuEnvironment?: import("../../../../yandex/cloud/k8s/v1/node").GpuSettings_GpuEnvironment | undefined; } | undefined; } & { name?: string | undefined; labels?: ({ [x: string]: string | undefined; } & { [x: string]: string | undefined; } & Record, never>) | undefined; platformId?: string | undefined; resourcesSpec?: ({ memory?: number | undefined; cores?: number | undefined; coreFraction?: number | undefined; gpus?: number | undefined; } & { memory?: number | undefined; cores?: number | undefined; coreFraction?: number | undefined; gpus?: number | undefined; } & Record, never>) | undefined; bootDiskSpec?: ({ diskTypeId?: string | undefined; diskSize?: number | undefined; } & { diskTypeId?: string | undefined; diskSize?: number | undefined; } & Record, never>) | undefined; metadata?: ({ [x: string]: string | undefined; } & { [x: string]: string | undefined; } & Record, never>) | undefined; v4AddressSpec?: ({ oneToOneNatSpec?: { ipVersion?: import("../../../../yandex/cloud/k8s/v1/node").IpVersion | undefined; } | undefined; dnsRecordSpecs?: { fqdn?: string | undefined; dnsZoneId?: string | undefined; ttl?: number | undefined; ptr?: boolean | undefined; }[] | undefined; } & { oneToOneNatSpec?: ({ ipVersion?: import("../../../../yandex/cloud/k8s/v1/node").IpVersion | undefined; } & { ipVersion?: import("../../../../yandex/cloud/k8s/v1/node").IpVersion | undefined; } & Record, never>) | undefined; dnsRecordSpecs?: ({ fqdn?: string | undefined; dnsZoneId?: string | undefined; ttl?: number | undefined; ptr?: boolean | undefined; }[] & ({ fqdn?: string | undefined; dnsZoneId?: string | undefined; ttl?: number | undefined; ptr?: boolean | undefined; } & { fqdn?: string | undefined; dnsZoneId?: string | undefined; ttl?: number | undefined; ptr?: boolean | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>) | undefined; schedulingPolicy?: ({ preemptible?: boolean | undefined; } & { preemptible?: boolean | undefined; } & Record, never>) | undefined; networkInterfaceSpecs?: ({ subnetIds?: string[] | undefined; primaryV4AddressSpec?: { oneToOneNatSpec?: { ipVersion?: import("../../../../yandex/cloud/k8s/v1/node").IpVersion | undefined; } | undefined; dnsRecordSpecs?: { fqdn?: string | undefined; dnsZoneId?: string | undefined; ttl?: number | undefined; ptr?: boolean | undefined; }[] | undefined; } | undefined; primaryV6AddressSpec?: { oneToOneNatSpec?: { ipVersion?: import("../../../../yandex/cloud/k8s/v1/node").IpVersion | undefined; } | undefined; dnsRecordSpecs?: { fqdn?: string | undefined; dnsZoneId?: string | undefined; ttl?: number | undefined; ptr?: boolean | undefined; }[] | undefined; } | undefined; securityGroupIds?: string[] | undefined; }[] & ({ subnetIds?: string[] | undefined; primaryV4AddressSpec?: { oneToOneNatSpec?: { ipVersion?: import("../../../../yandex/cloud/k8s/v1/node").IpVersion | undefined; } | undefined; dnsRecordSpecs?: { fqdn?: string | undefined; dnsZoneId?: string | undefined; ttl?: number | undefined; ptr?: boolean | undefined; }[] | undefined; } | undefined; primaryV6AddressSpec?: { oneToOneNatSpec?: { ipVersion?: import("../../../../yandex/cloud/k8s/v1/node").IpVersion | undefined; } | undefined; dnsRecordSpecs?: { fqdn?: string | undefined; dnsZoneId?: string | undefined; ttl?: number | undefined; ptr?: boolean | undefined; }[] | undefined; } | undefined; securityGroupIds?: string[] | undefined; } & { subnetIds?: (string[] & string[] & Record, never>) | undefined; primaryV4AddressSpec?: ({ oneToOneNatSpec?: { ipVersion?: import("../../../../yandex/cloud/k8s/v1/node").IpVersion | undefined; } | undefined; dnsRecordSpecs?: { fqdn?: string | undefined; dnsZoneId?: string | undefined; ttl?: number | undefined; ptr?: boolean | undefined; }[] | undefined; } & { oneToOneNatSpec?: ({ ipVersion?: import("../../../../yandex/cloud/k8s/v1/node").IpVersion | undefined; } & { ipVersion?: import("../../../../yandex/cloud/k8s/v1/node").IpVersion | undefined; } & Record, never>) | undefined; dnsRecordSpecs?: ({ fqdn?: string | undefined; dnsZoneId?: string | undefined; ttl?: number | undefined; ptr?: boolean | undefined; }[] & ({ fqdn?: string | undefined; dnsZoneId?: string | undefined; ttl?: number | undefined; ptr?: boolean | undefined; } & { fqdn?: string | undefined; dnsZoneId?: string | undefined; ttl?: number | undefined; ptr?: boolean | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>) | undefined; primaryV6AddressSpec?: ({ oneToOneNatSpec?: { ipVersion?: import("../../../../yandex/cloud/k8s/v1/node").IpVersion | undefined; } | undefined; dnsRecordSpecs?: { fqdn?: string | undefined; dnsZoneId?: string | undefined; ttl?: number | undefined; ptr?: boolean | undefined; }[] | undefined; } & { oneToOneNatSpec?: ({ ipVersion?: import("../../../../yandex/cloud/k8s/v1/node").IpVersion | undefined; } & { ipVersion?: import("../../../../yandex/cloud/k8s/v1/node").IpVersion | undefined; } & Record, never>) | undefined; dnsRecordSpecs?: ({ fqdn?: string | undefined; dnsZoneId?: string | undefined; ttl?: number | undefined; ptr?: boolean | undefined; }[] & ({ fqdn?: string | undefined; dnsZoneId?: string | undefined; ttl?: number | undefined; ptr?: boolean | undefined; } & { fqdn?: string | undefined; dnsZoneId?: string | undefined; ttl?: number | undefined; ptr?: boolean | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>) | undefined; securityGroupIds?: (string[] & string[] & Record, never>) | undefined; } & Record, never>)[] & Record, never>) | undefined; placementPolicy?: ({ placementGroupId?: string | undefined; } & { placementGroupId?: string | undefined; } & Record, never>) | undefined; networkSettings?: ({ type?: import("../../../../yandex/cloud/k8s/v1/node").NodeTemplate_NetworkSettings_Type | undefined; } & { type?: import("../../../../yandex/cloud/k8s/v1/node").NodeTemplate_NetworkSettings_Type | undefined; } & Record, never>) | undefined; containerRuntimeSettings?: ({ type?: import("../../../../yandex/cloud/k8s/v1/node").NodeTemplate_ContainerRuntimeSettings_Type | undefined; } & { type?: import("../../../../yandex/cloud/k8s/v1/node").NodeTemplate_ContainerRuntimeSettings_Type | undefined; } & Record, never>) | undefined; containerNetworkSettings?: ({ podMtu?: number | undefined; } & { podMtu?: number | undefined; } & Record, never>) | undefined; gpuSettings?: ({ gpuClusterId?: string | undefined; gpuEnvironment?: import("../../../../yandex/cloud/k8s/v1/node").GpuSettings_GpuEnvironment | undefined; } & { gpuClusterId?: string | undefined; gpuEnvironment?: import("../../../../yandex/cloud/k8s/v1/node").GpuSettings_GpuEnvironment | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; scalePolicy?: ({ fixedScale?: { size?: number | undefined; } | undefined; autoScale?: { minSize?: number | undefined; maxSize?: number | undefined; initialSize?: number | undefined; } | undefined; } & { fixedScale?: ({ size?: number | undefined; } & { size?: number | undefined; } & Record, never>) | undefined; autoScale?: ({ minSize?: number | undefined; maxSize?: number | undefined; initialSize?: number | undefined; } & { minSize?: number | undefined; maxSize?: number | undefined; initialSize?: number | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; allocationPolicy?: ({ locations?: { zoneId?: string | undefined; subnetId?: string | undefined; }[] | undefined; } & { locations?: ({ zoneId?: string | undefined; subnetId?: string | undefined; }[] & ({ zoneId?: string | undefined; subnetId?: string | undefined; } & { zoneId?: string | undefined; subnetId?: string | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>) | undefined; deployPolicy?: ({ maxUnavailable?: number | undefined; maxExpansion?: number | undefined; } & { maxUnavailable?: number | undefined; maxExpansion?: number | undefined; } & Record, never>) | undefined; instanceGroupId?: string | undefined; nodeVersion?: string | undefined; versionInfo?: ({ currentVersion?: string | undefined; newRevisionAvailable?: boolean | undefined; newRevisionSummary?: string | undefined; versionDeprecated?: boolean | undefined; } & { currentVersion?: string | undefined; newRevisionAvailable?: boolean | undefined; newRevisionSummary?: string | undefined; versionDeprecated?: boolean | undefined; } & Record, never>) | undefined; maintenancePolicy?: ({ autoUpgrade?: boolean | undefined; autoRepair?: boolean | undefined; maintenanceWindow?: { anytime?: {} | undefined; dailyMaintenanceWindow?: { startTime?: { hours?: number | undefined; minutes?: number | undefined; seconds?: number | undefined; nanos?: number | undefined; } | undefined; duration?: { seconds?: number | undefined; nanos?: number | undefined; } | undefined; } | undefined; weeklyMaintenanceWindow?: { daysOfWeek?: { days?: import("../../../../google/type/dayofweek").DayOfWeek[] | undefined; startTime?: { hours?: number | undefined; minutes?: number | undefined; seconds?: number | undefined; nanos?: number | undefined; } | undefined; duration?: { seconds?: number | undefined; nanos?: number | undefined; } | undefined; }[] | undefined; } | undefined; } | undefined; } & { autoUpgrade?: boolean | undefined; autoRepair?: boolean | undefined; maintenanceWindow?: ({ anytime?: {} | undefined; dailyMaintenanceWindow?: { startTime?: { hours?: number | undefined; minutes?: number | undefined; seconds?: number | undefined; nanos?: number | undefined; } | undefined; duration?: { seconds?: number | undefined; nanos?: number | undefined; } | undefined; } | undefined; weeklyMaintenanceWindow?: { daysOfWeek?: { days?: import("../../../../google/type/dayofweek").DayOfWeek[] | undefined; startTime?: { hours?: number | undefined; minutes?: number | undefined; seconds?: number | undefined; nanos?: number | undefined; } | undefined; duration?: { seconds?: number | undefined; nanos?: number | undefined; } | undefined; }[] | undefined; } | undefined; } & { anytime?: ({} & {} & Record, never>) | undefined; dailyMaintenanceWindow?: ({ startTime?: { hours?: number | undefined; minutes?: number | undefined; seconds?: number | undefined; nanos?: number | undefined; } | undefined; duration?: { seconds?: number | undefined; nanos?: number | undefined; } | undefined; } & { startTime?: ({ hours?: number | undefined; minutes?: number | undefined; seconds?: number | undefined; nanos?: number | undefined; } & { hours?: number | undefined; minutes?: number | undefined; seconds?: number | undefined; nanos?: number | undefined; } & Record, never>) | undefined; duration?: ({ seconds?: number | undefined; nanos?: number | undefined; } & { seconds?: number | undefined; nanos?: number | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; weeklyMaintenanceWindow?: ({ daysOfWeek?: { days?: import("../../../../google/type/dayofweek").DayOfWeek[] | undefined; startTime?: { hours?: number | undefined; minutes?: number | undefined; seconds?: number | undefined; nanos?: number | undefined; } | undefined; duration?: { seconds?: number | undefined; nanos?: number | undefined; } | undefined; }[] | undefined; } & { daysOfWeek?: ({ days?: import("../../../../google/type/dayofweek").DayOfWeek[] | undefined; startTime?: { hours?: number | undefined; minutes?: number | undefined; seconds?: number | undefined; nanos?: number | undefined; } | undefined; duration?: { seconds?: number | undefined; nanos?: number | undefined; } | undefined; }[] & ({ days?: import("../../../../google/type/dayofweek").DayOfWeek[] | undefined; startTime?: { hours?: number | undefined; minutes?: number | undefined; seconds?: number | undefined; nanos?: number | undefined; } | undefined; duration?: { seconds?: number | undefined; nanos?: number | undefined; } | undefined; } & { days?: (import("../../../../google/type/dayofweek").DayOfWeek[] & import("../../../../google/type/dayofweek").DayOfWeek[] & Record, never>) | undefined; startTime?: ({ hours?: number | undefined; minutes?: number | undefined; seconds?: number | undefined; nanos?: number | undefined; } & { hours?: number | undefined; minutes?: number | undefined; seconds?: number | undefined; nanos?: number | undefined; } & Record, never>) | undefined; duration?: ({ seconds?: number | undefined; nanos?: number | undefined; } & { seconds?: number | undefined; nanos?: number | undefined; } & Record, never>) | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; allowedUnsafeSysctls?: (string[] & string[] & Record, never>) | undefined; nodeTaints?: ({ key?: string | undefined; value?: string | undefined; effect?: import("../../../../yandex/cloud/k8s/v1/node").Taint_Effect | undefined; }[] & ({ key?: string | undefined; value?: string | undefined; effect?: import("../../../../yandex/cloud/k8s/v1/node").Taint_Effect | undefined; } & { key?: string | undefined; value?: string | undefined; effect?: import("../../../../yandex/cloud/k8s/v1/node").Taint_Effect | undefined; } & Record, never>)[] & Record, never>) | undefined; nodeLabels?: ({ [x: string]: string | undefined; } & { [x: string]: string | undefined; } & Record, never>) | undefined; } & Record, never>>(object: I): NodeGroup; }; export declare const NodeGroup_LabelsEntry: { encode(message: NodeGroup_LabelsEntry, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): NodeGroup_LabelsEntry; fromJSON(object: any): NodeGroup_LabelsEntry; toJSON(message: NodeGroup_LabelsEntry): unknown; fromPartial, never>>(object: I): NodeGroup_LabelsEntry; }; export declare const NodeGroup_NodeLabelsEntry: { encode(message: NodeGroup_NodeLabelsEntry, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): NodeGroup_NodeLabelsEntry; fromJSON(object: any): NodeGroup_NodeLabelsEntry; toJSON(message: NodeGroup_NodeLabelsEntry): unknown; fromPartial, never>>(object: I): NodeGroup_NodeLabelsEntry; }; export declare const ScalePolicy: { encode(message: ScalePolicy, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ScalePolicy; fromJSON(object: any): ScalePolicy; toJSON(message: ScalePolicy): unknown; fromPartial, never>) | undefined; autoScale?: ({ minSize?: number | undefined; maxSize?: number | undefined; initialSize?: number | undefined; } & { minSize?: number | undefined; maxSize?: number | undefined; initialSize?: number | undefined; } & Record, never>) | undefined; } & Record, never>>(object: I): ScalePolicy; }; export declare const ScalePolicy_FixedScale: { encode(message: ScalePolicy_FixedScale, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ScalePolicy_FixedScale; fromJSON(object: any): ScalePolicy_FixedScale; toJSON(message: ScalePolicy_FixedScale): unknown; fromPartial, never>>(object: I): ScalePolicy_FixedScale; }; export declare const ScalePolicy_AutoScale: { encode(message: ScalePolicy_AutoScale, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ScalePolicy_AutoScale; fromJSON(object: any): ScalePolicy_AutoScale; toJSON(message: ScalePolicy_AutoScale): unknown; fromPartial, never>>(object: I): ScalePolicy_AutoScale; }; export declare const NodeGroupAllocationPolicy: { encode(message: NodeGroupAllocationPolicy, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): NodeGroupAllocationPolicy; fromJSON(object: any): NodeGroupAllocationPolicy; toJSON(message: NodeGroupAllocationPolicy): unknown; fromPartial, never>)[] & Record, never>) | undefined; } & Record, never>>(object: I): NodeGroupAllocationPolicy; }; export declare const NodeGroupLocation: { encode(message: NodeGroupLocation, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): NodeGroupLocation; fromJSON(object: any): NodeGroupLocation; toJSON(message: NodeGroupLocation): unknown; fromPartial, never>>(object: I): NodeGroupLocation; }; export declare const NodeGroupMaintenancePolicy: { encode(message: NodeGroupMaintenancePolicy, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): NodeGroupMaintenancePolicy; fromJSON(object: any): NodeGroupMaintenancePolicy; toJSON(message: NodeGroupMaintenancePolicy): unknown; fromPartial, never>) | undefined; dailyMaintenanceWindow?: ({ startTime?: { hours?: number | undefined; minutes?: number | undefined; seconds?: number | undefined; nanos?: number | undefined; } | undefined; duration?: { seconds?: number | undefined; nanos?: number | undefined; } | undefined; } & { startTime?: ({ hours?: number | undefined; minutes?: number | undefined; seconds?: number | undefined; nanos?: number | undefined; } & { hours?: number | undefined; minutes?: number | undefined; seconds?: number | undefined; nanos?: number | undefined; } & Record, never>) | undefined; duration?: ({ seconds?: number | undefined; nanos?: number | undefined; } & { seconds?: number | undefined; nanos?: number | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; weeklyMaintenanceWindow?: ({ daysOfWeek?: { days?: import("../../../../google/type/dayofweek").DayOfWeek[] | undefined; startTime?: { hours?: number | undefined; minutes?: number | undefined; seconds?: number | undefined; nanos?: number | undefined; } | undefined; duration?: { seconds?: number | undefined; nanos?: number | undefined; } | undefined; }[] | undefined; } & { daysOfWeek?: ({ days?: import("../../../../google/type/dayofweek").DayOfWeek[] | undefined; startTime?: { hours?: number | undefined; minutes?: number | undefined; seconds?: number | undefined; nanos?: number | undefined; } | undefined; duration?: { seconds?: number | undefined; nanos?: number | undefined; } | undefined; }[] & ({ days?: import("../../../../google/type/dayofweek").DayOfWeek[] | undefined; startTime?: { hours?: number | undefined; minutes?: number | undefined; seconds?: number | undefined; nanos?: number | undefined; } | undefined; duration?: { seconds?: number | undefined; nanos?: number | undefined; } | undefined; } & { days?: (import("../../../../google/type/dayofweek").DayOfWeek[] & import("../../../../google/type/dayofweek").DayOfWeek[] & Record, never>) | undefined; startTime?: ({ hours?: number | undefined; minutes?: number | undefined; seconds?: number | undefined; nanos?: number | undefined; } & { hours?: number | undefined; minutes?: number | undefined; seconds?: number | undefined; nanos?: number | undefined; } & Record, never>) | undefined; duration?: ({ seconds?: number | undefined; nanos?: number | undefined; } & { seconds?: number | undefined; nanos?: number | undefined; } & Record, never>) | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; } & Record, never>>(object: I): NodeGroupMaintenancePolicy; }; export declare const DeployPolicy: { encode(message: DeployPolicy, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): DeployPolicy; fromJSON(object: any): DeployPolicy; toJSON(message: DeployPolicy): unknown; fromPartial, never>>(object: I): DeployPolicy; }; type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; export type DeepPartial = T extends Builtin ? T : T extends Array ? Array> : T extends ReadonlyArray ? ReadonlyArray> : T extends {} ? { [K in keyof T]?: DeepPartial; } : Partial; type KeysOfUnion = T extends T ? keyof T : never; export type Exact = P extends Builtin ? P : P & { [K in keyof P]: Exact; } & Record>, never>; export {};