UNPKG

@cdktf/provider-google

Version:

Prebuilt google Provider for Terraform CDK (cdktf)

836 lines (835 loc) 48.7 kB
/** * Copyright (c) HashiCorp, Inc. * SPDX-License-Identifier: MPL-2.0 */ import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface ContainerAzureClusterConfig extends cdktf.TerraformMetaArguments { /** * Optional. Annotations on the cluster. This field has the same restrictions as Kubernetes annotations. The total size of all keys and values combined is limited to 256k. Keys can have 2 segments: prefix (optional) and name (required), separated by a slash (/). Prefix must be a DNS subdomain. Name must be 63 characters or less, begin and end with alphanumerics, with dashes (-), underscores (_), dots (.), and alphanumerics between. * * **Note**: This field is non-authoritative, and will only manage the annotations present in your configuration. * Please refer to the field `effective_annotations` for all of the annotations present on the resource. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#annotations ContainerAzureCluster#annotations} */ readonly annotations?: { [key: string]: string; }; /** * The Azure region where the cluster runs. Each Google Cloud region supports a subset of nearby Azure regions. You can call to list all supported Azure regions within a given Google Cloud region. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#azure_region ContainerAzureCluster#azure_region} */ readonly azureRegion: string; /** * Name of the AzureClient. The `AzureClient` resource must reside on the same GCP project and region as the `AzureCluster`. `AzureClient` names are formatted as `projects/<project-number>/locations/<region>/azureClients/<client-id>`. See Resource Names (https:cloud.google.com/apis/design/resource_names) for more details on Google Cloud resource names. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#client ContainerAzureCluster#client} */ readonly client?: string; /** * Optional. A human readable description of this cluster. Cannot be longer than 255 UTF-8 encoded bytes. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#description ContainerAzureCluster#description} */ readonly description?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#id ContainerAzureCluster#id} * * Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. * If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable. */ readonly id?: string; /** * The location for the resource * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#location ContainerAzureCluster#location} */ readonly location: string; /** * The name of this resource. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#name ContainerAzureCluster#name} */ readonly name: string; /** * The project for the resource * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#project ContainerAzureCluster#project} */ readonly project?: string; /** * The ARM ID of the resource group where the cluster resources are deployed. For example: `/subscriptions/* /resourceGroups/*` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#resource_group_id ContainerAzureCluster#resource_group_id} * * Note: The above comment contained a comment block ending sequence (* followed by /). We have introduced a space between to prevent syntax errors. Please ignore the space. */ readonly resourceGroupId: string; /** * authorization block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#authorization ContainerAzureCluster#authorization} */ readonly authorization: ContainerAzureClusterAuthorization; /** * azure_services_authentication block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#azure_services_authentication ContainerAzureCluster#azure_services_authentication} */ readonly azureServicesAuthentication?: ContainerAzureClusterAzureServicesAuthentication; /** * control_plane block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#control_plane ContainerAzureCluster#control_plane} */ readonly controlPlane: ContainerAzureClusterControlPlane; /** * fleet block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#fleet ContainerAzureCluster#fleet} */ readonly fleet: ContainerAzureClusterFleet; /** * networking block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#networking ContainerAzureCluster#networking} */ readonly networking: ContainerAzureClusterNetworking; /** * timeouts block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#timeouts ContainerAzureCluster#timeouts} */ readonly timeouts?: ContainerAzureClusterTimeouts; } export interface ContainerAzureClusterWorkloadIdentityConfig { } export declare function containerAzureClusterWorkloadIdentityConfigToTerraform(struct?: ContainerAzureClusterWorkloadIdentityConfig): any; export declare function containerAzureClusterWorkloadIdentityConfigToHclTerraform(struct?: ContainerAzureClusterWorkloadIdentityConfig): any; export declare class ContainerAzureClusterWorkloadIdentityConfigOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean); get internalValue(): ContainerAzureClusterWorkloadIdentityConfig | undefined; set internalValue(value: ContainerAzureClusterWorkloadIdentityConfig | undefined); get identityProvider(): string; get issuerUri(): string; get workloadPool(): string; } export declare class ContainerAzureClusterWorkloadIdentityConfigList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean); /** * @param index the index of the item to return */ get(index: number): ContainerAzureClusterWorkloadIdentityConfigOutputReference; } export interface ContainerAzureClusterAuthorizationAdminGroups { /** * The name of the group, e.g. `my-group@domain.com`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#group ContainerAzureCluster#group} */ readonly group: string; } export declare function containerAzureClusterAuthorizationAdminGroupsToTerraform(struct?: ContainerAzureClusterAuthorizationAdminGroups | cdktf.IResolvable): any; export declare function containerAzureClusterAuthorizationAdminGroupsToHclTerraform(struct?: ContainerAzureClusterAuthorizationAdminGroups | cdktf.IResolvable): any; export declare class ContainerAzureClusterAuthorizationAdminGroupsOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean); get internalValue(): ContainerAzureClusterAuthorizationAdminGroups | cdktf.IResolvable | undefined; set internalValue(value: ContainerAzureClusterAuthorizationAdminGroups | cdktf.IResolvable | undefined); private _group?; get group(): string; set group(value: string); get groupInput(): string | undefined; } export declare class ContainerAzureClusterAuthorizationAdminGroupsList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: ContainerAzureClusterAuthorizationAdminGroups[] | cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean); /** * @param index the index of the item to return */ get(index: number): ContainerAzureClusterAuthorizationAdminGroupsOutputReference; } export interface ContainerAzureClusterAuthorizationAdminUsers { /** * The name of the user, e.g. `my-gcp-id@gmail.com`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#username ContainerAzureCluster#username} */ readonly username: string; } export declare function containerAzureClusterAuthorizationAdminUsersToTerraform(struct?: ContainerAzureClusterAuthorizationAdminUsers | cdktf.IResolvable): any; export declare function containerAzureClusterAuthorizationAdminUsersToHclTerraform(struct?: ContainerAzureClusterAuthorizationAdminUsers | cdktf.IResolvable): any; export declare class ContainerAzureClusterAuthorizationAdminUsersOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean); get internalValue(): ContainerAzureClusterAuthorizationAdminUsers | cdktf.IResolvable | undefined; set internalValue(value: ContainerAzureClusterAuthorizationAdminUsers | cdktf.IResolvable | undefined); private _username?; get username(): string; set username(value: string); get usernameInput(): string | undefined; } export declare class ContainerAzureClusterAuthorizationAdminUsersList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: ContainerAzureClusterAuthorizationAdminUsers[] | cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean); /** * @param index the index of the item to return */ get(index: number): ContainerAzureClusterAuthorizationAdminUsersOutputReference; } export interface ContainerAzureClusterAuthorization { /** * admin_groups block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#admin_groups ContainerAzureCluster#admin_groups} */ readonly adminGroups?: ContainerAzureClusterAuthorizationAdminGroups[] | cdktf.IResolvable; /** * admin_users block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#admin_users ContainerAzureCluster#admin_users} */ readonly adminUsers: ContainerAzureClusterAuthorizationAdminUsers[] | cdktf.IResolvable; } export declare function containerAzureClusterAuthorizationToTerraform(struct?: ContainerAzureClusterAuthorizationOutputReference | ContainerAzureClusterAuthorization): any; export declare function containerAzureClusterAuthorizationToHclTerraform(struct?: ContainerAzureClusterAuthorizationOutputReference | ContainerAzureClusterAuthorization): any; export declare class ContainerAzureClusterAuthorizationOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): ContainerAzureClusterAuthorization | undefined; set internalValue(value: ContainerAzureClusterAuthorization | undefined); private _adminGroups; get adminGroups(): ContainerAzureClusterAuthorizationAdminGroupsList; putAdminGroups(value: ContainerAzureClusterAuthorizationAdminGroups[] | cdktf.IResolvable): void; resetAdminGroups(): void; get adminGroupsInput(): cdktf.IResolvable | ContainerAzureClusterAuthorizationAdminGroups[] | undefined; private _adminUsers; get adminUsers(): ContainerAzureClusterAuthorizationAdminUsersList; putAdminUsers(value: ContainerAzureClusterAuthorizationAdminUsers[] | cdktf.IResolvable): void; get adminUsersInput(): cdktf.IResolvable | ContainerAzureClusterAuthorizationAdminUsers[] | undefined; } export interface ContainerAzureClusterAzureServicesAuthentication { /** * The Azure Active Directory Application ID for Authentication configuration. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#application_id ContainerAzureCluster#application_id} */ readonly applicationId: string; /** * The Azure Active Directory Tenant ID for Authentication configuration. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#tenant_id ContainerAzureCluster#tenant_id} */ readonly tenantId: string; } export declare function containerAzureClusterAzureServicesAuthenticationToTerraform(struct?: ContainerAzureClusterAzureServicesAuthenticationOutputReference | ContainerAzureClusterAzureServicesAuthentication): any; export declare function containerAzureClusterAzureServicesAuthenticationToHclTerraform(struct?: ContainerAzureClusterAzureServicesAuthenticationOutputReference | ContainerAzureClusterAzureServicesAuthentication): any; export declare class ContainerAzureClusterAzureServicesAuthenticationOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): ContainerAzureClusterAzureServicesAuthentication | undefined; set internalValue(value: ContainerAzureClusterAzureServicesAuthentication | undefined); private _applicationId?; get applicationId(): string; set applicationId(value: string); get applicationIdInput(): string | undefined; private _tenantId?; get tenantId(): string; set tenantId(value: string); get tenantIdInput(): string | undefined; } export interface ContainerAzureClusterControlPlaneDatabaseEncryption { /** * The ARM ID of the Azure Key Vault key to encrypt / decrypt data. For example: `/subscriptions/<subscription-id>/resourceGroups/<resource-group-id>/providers/Microsoft.KeyVault/vaults/<key-vault-id>/keys/<key-name>` Encryption will always take the latest version of the key and hence specific version is not supported. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#key_id ContainerAzureCluster#key_id} */ readonly keyId: string; } export declare function containerAzureClusterControlPlaneDatabaseEncryptionToTerraform(struct?: ContainerAzureClusterControlPlaneDatabaseEncryptionOutputReference | ContainerAzureClusterControlPlaneDatabaseEncryption): any; export declare function containerAzureClusterControlPlaneDatabaseEncryptionToHclTerraform(struct?: ContainerAzureClusterControlPlaneDatabaseEncryptionOutputReference | ContainerAzureClusterControlPlaneDatabaseEncryption): any; export declare class ContainerAzureClusterControlPlaneDatabaseEncryptionOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): ContainerAzureClusterControlPlaneDatabaseEncryption | undefined; set internalValue(value: ContainerAzureClusterControlPlaneDatabaseEncryption | undefined); private _keyId?; get keyId(): string; set keyId(value: string); get keyIdInput(): string | undefined; } export interface ContainerAzureClusterControlPlaneMainVolume { /** * Optional. The size of the disk, in GiBs. When unspecified, a default value is provided. See the specific reference in the parent resource. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#size_gib ContainerAzureCluster#size_gib} */ readonly sizeGib?: number; } export declare function containerAzureClusterControlPlaneMainVolumeToTerraform(struct?: ContainerAzureClusterControlPlaneMainVolumeOutputReference | ContainerAzureClusterControlPlaneMainVolume): any; export declare function containerAzureClusterControlPlaneMainVolumeToHclTerraform(struct?: ContainerAzureClusterControlPlaneMainVolumeOutputReference | ContainerAzureClusterControlPlaneMainVolume): any; export declare class ContainerAzureClusterControlPlaneMainVolumeOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): ContainerAzureClusterControlPlaneMainVolume | undefined; set internalValue(value: ContainerAzureClusterControlPlaneMainVolume | undefined); private _sizeGib?; get sizeGib(): number; set sizeGib(value: number); resetSizeGib(): void; get sizeGibInput(): number | undefined; } export interface ContainerAzureClusterControlPlaneProxyConfig { /** * The ARM ID the of the resource group containing proxy keyvault. Resource group ids are formatted as `/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#resource_group_id ContainerAzureCluster#resource_group_id} */ readonly resourceGroupId: string; /** * The URL the of the proxy setting secret with its version. Secret ids are formatted as `https:<key-vault-name>.vault.azure.net/secrets/<secret-name>/<secret-version>`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#secret_id ContainerAzureCluster#secret_id} */ readonly secretId: string; } export declare function containerAzureClusterControlPlaneProxyConfigToTerraform(struct?: ContainerAzureClusterControlPlaneProxyConfigOutputReference | ContainerAzureClusterControlPlaneProxyConfig): any; export declare function containerAzureClusterControlPlaneProxyConfigToHclTerraform(struct?: ContainerAzureClusterControlPlaneProxyConfigOutputReference | ContainerAzureClusterControlPlaneProxyConfig): any; export declare class ContainerAzureClusterControlPlaneProxyConfigOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): ContainerAzureClusterControlPlaneProxyConfig | undefined; set internalValue(value: ContainerAzureClusterControlPlaneProxyConfig | undefined); private _resourceGroupId?; get resourceGroupId(): string; set resourceGroupId(value: string); get resourceGroupIdInput(): string | undefined; private _secretId?; get secretId(): string; set secretId(value: string); get secretIdInput(): string | undefined; } export interface ContainerAzureClusterControlPlaneReplicaPlacements { /** * For a given replica, the Azure availability zone where to provision the control plane VM and the ETCD disk. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#azure_availability_zone ContainerAzureCluster#azure_availability_zone} */ readonly azureAvailabilityZone: string; /** * For a given replica, the ARM ID of the subnet where the control plane VM is deployed. Make sure it's a subnet under the virtual network in the cluster configuration. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#subnet_id ContainerAzureCluster#subnet_id} */ readonly subnetId: string; } export declare function containerAzureClusterControlPlaneReplicaPlacementsToTerraform(struct?: ContainerAzureClusterControlPlaneReplicaPlacements | cdktf.IResolvable): any; export declare function containerAzureClusterControlPlaneReplicaPlacementsToHclTerraform(struct?: ContainerAzureClusterControlPlaneReplicaPlacements | cdktf.IResolvable): any; export declare class ContainerAzureClusterControlPlaneReplicaPlacementsOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean); get internalValue(): ContainerAzureClusterControlPlaneReplicaPlacements | cdktf.IResolvable | undefined; set internalValue(value: ContainerAzureClusterControlPlaneReplicaPlacements | cdktf.IResolvable | undefined); private _azureAvailabilityZone?; get azureAvailabilityZone(): string; set azureAvailabilityZone(value: string); get azureAvailabilityZoneInput(): string | undefined; private _subnetId?; get subnetId(): string; set subnetId(value: string); get subnetIdInput(): string | undefined; } export declare class ContainerAzureClusterControlPlaneReplicaPlacementsList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: ContainerAzureClusterControlPlaneReplicaPlacements[] | cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean); /** * @param index the index of the item to return */ get(index: number): ContainerAzureClusterControlPlaneReplicaPlacementsOutputReference; } export interface ContainerAzureClusterControlPlaneRootVolume { /** * Optional. The size of the disk, in GiBs. When unspecified, a default value is provided. See the specific reference in the parent resource. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#size_gib ContainerAzureCluster#size_gib} */ readonly sizeGib?: number; } export declare function containerAzureClusterControlPlaneRootVolumeToTerraform(struct?: ContainerAzureClusterControlPlaneRootVolumeOutputReference | ContainerAzureClusterControlPlaneRootVolume): any; export declare function containerAzureClusterControlPlaneRootVolumeToHclTerraform(struct?: ContainerAzureClusterControlPlaneRootVolumeOutputReference | ContainerAzureClusterControlPlaneRootVolume): any; export declare class ContainerAzureClusterControlPlaneRootVolumeOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): ContainerAzureClusterControlPlaneRootVolume | undefined; set internalValue(value: ContainerAzureClusterControlPlaneRootVolume | undefined); private _sizeGib?; get sizeGib(): number; set sizeGib(value: number); resetSizeGib(): void; get sizeGibInput(): number | undefined; } export interface ContainerAzureClusterControlPlaneSshConfig { /** * The SSH public key data for VMs managed by Anthos. This accepts the authorized_keys file format used in OpenSSH according to the sshd(8) manual page. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#authorized_key ContainerAzureCluster#authorized_key} */ readonly authorizedKey: string; } export declare function containerAzureClusterControlPlaneSshConfigToTerraform(struct?: ContainerAzureClusterControlPlaneSshConfigOutputReference | ContainerAzureClusterControlPlaneSshConfig): any; export declare function containerAzureClusterControlPlaneSshConfigToHclTerraform(struct?: ContainerAzureClusterControlPlaneSshConfigOutputReference | ContainerAzureClusterControlPlaneSshConfig): any; export declare class ContainerAzureClusterControlPlaneSshConfigOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): ContainerAzureClusterControlPlaneSshConfig | undefined; set internalValue(value: ContainerAzureClusterControlPlaneSshConfig | undefined); private _authorizedKey?; get authorizedKey(): string; set authorizedKey(value: string); get authorizedKeyInput(): string | undefined; } export interface ContainerAzureClusterControlPlane { /** * The ARM ID of the subnet where the control plane VMs are deployed. Example: `/subscriptions//resourceGroups//providers/Microsoft.Network/virtualNetworks//subnets/default`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#subnet_id ContainerAzureCluster#subnet_id} */ readonly subnetId: string; /** * Optional. A set of tags to apply to all underlying control plane Azure resources. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#tags ContainerAzureCluster#tags} */ readonly tags?: { [key: string]: string; }; /** * The Kubernetes version to run on control plane replicas (e.g. `1.19.10-gke.1000`). You can list all supported versions on a given Google Cloud region by calling GetAzureServerConfig. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#version ContainerAzureCluster#version} */ readonly version: string; /** * Optional. The Azure VM size name. Example: `Standard_DS2_v2`. For available VM sizes, see https://docs.microsoft.com/en-us/azure/virtual-machines/vm-naming-conventions. When unspecified, it defaults to `Standard_DS2_v2`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#vm_size ContainerAzureCluster#vm_size} */ readonly vmSize?: string; /** * database_encryption block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#database_encryption ContainerAzureCluster#database_encryption} */ readonly databaseEncryption?: ContainerAzureClusterControlPlaneDatabaseEncryption; /** * main_volume block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#main_volume ContainerAzureCluster#main_volume} */ readonly mainVolume?: ContainerAzureClusterControlPlaneMainVolume; /** * proxy_config block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#proxy_config ContainerAzureCluster#proxy_config} */ readonly proxyConfig?: ContainerAzureClusterControlPlaneProxyConfig; /** * replica_placements block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#replica_placements ContainerAzureCluster#replica_placements} */ readonly replicaPlacements?: ContainerAzureClusterControlPlaneReplicaPlacements[] | cdktf.IResolvable; /** * root_volume block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#root_volume ContainerAzureCluster#root_volume} */ readonly rootVolume?: ContainerAzureClusterControlPlaneRootVolume; /** * ssh_config block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#ssh_config ContainerAzureCluster#ssh_config} */ readonly sshConfig: ContainerAzureClusterControlPlaneSshConfig; } export declare function containerAzureClusterControlPlaneToTerraform(struct?: ContainerAzureClusterControlPlaneOutputReference | ContainerAzureClusterControlPlane): any; export declare function containerAzureClusterControlPlaneToHclTerraform(struct?: ContainerAzureClusterControlPlaneOutputReference | ContainerAzureClusterControlPlane): any; export declare class ContainerAzureClusterControlPlaneOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): ContainerAzureClusterControlPlane | undefined; set internalValue(value: ContainerAzureClusterControlPlane | undefined); private _subnetId?; get subnetId(): string; set subnetId(value: string); get subnetIdInput(): string | undefined; private _tags?; get tags(): { [key: string]: string; }; set tags(value: { [key: string]: string; }); resetTags(): void; get tagsInput(): { [key: string]: string; } | undefined; private _version?; get version(): string; set version(value: string); get versionInput(): string | undefined; private _vmSize?; get vmSize(): string; set vmSize(value: string); resetVmSize(): void; get vmSizeInput(): string | undefined; private _databaseEncryption; get databaseEncryption(): ContainerAzureClusterControlPlaneDatabaseEncryptionOutputReference; putDatabaseEncryption(value: ContainerAzureClusterControlPlaneDatabaseEncryption): void; resetDatabaseEncryption(): void; get databaseEncryptionInput(): ContainerAzureClusterControlPlaneDatabaseEncryption | undefined; private _mainVolume; get mainVolume(): ContainerAzureClusterControlPlaneMainVolumeOutputReference; putMainVolume(value: ContainerAzureClusterControlPlaneMainVolume): void; resetMainVolume(): void; get mainVolumeInput(): ContainerAzureClusterControlPlaneMainVolume | undefined; private _proxyConfig; get proxyConfig(): ContainerAzureClusterControlPlaneProxyConfigOutputReference; putProxyConfig(value: ContainerAzureClusterControlPlaneProxyConfig): void; resetProxyConfig(): void; get proxyConfigInput(): ContainerAzureClusterControlPlaneProxyConfig | undefined; private _replicaPlacements; get replicaPlacements(): ContainerAzureClusterControlPlaneReplicaPlacementsList; putReplicaPlacements(value: ContainerAzureClusterControlPlaneReplicaPlacements[] | cdktf.IResolvable): void; resetReplicaPlacements(): void; get replicaPlacementsInput(): cdktf.IResolvable | ContainerAzureClusterControlPlaneReplicaPlacements[] | undefined; private _rootVolume; get rootVolume(): ContainerAzureClusterControlPlaneRootVolumeOutputReference; putRootVolume(value: ContainerAzureClusterControlPlaneRootVolume): void; resetRootVolume(): void; get rootVolumeInput(): ContainerAzureClusterControlPlaneRootVolume | undefined; private _sshConfig; get sshConfig(): ContainerAzureClusterControlPlaneSshConfigOutputReference; putSshConfig(value: ContainerAzureClusterControlPlaneSshConfig): void; get sshConfigInput(): ContainerAzureClusterControlPlaneSshConfig | undefined; } export interface ContainerAzureClusterFleet { /** * The number of the Fleet host project where this cluster will be registered. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#project ContainerAzureCluster#project} */ readonly project?: string; } export declare function containerAzureClusterFleetToTerraform(struct?: ContainerAzureClusterFleetOutputReference | ContainerAzureClusterFleet): any; export declare function containerAzureClusterFleetToHclTerraform(struct?: ContainerAzureClusterFleetOutputReference | ContainerAzureClusterFleet): any; export declare class ContainerAzureClusterFleetOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): ContainerAzureClusterFleet | undefined; set internalValue(value: ContainerAzureClusterFleet | undefined); get membership(): string; private _project?; get project(): string; set project(value: string); resetProject(): void; get projectInput(): string | undefined; } export interface ContainerAzureClusterNetworking { /** * The IP address range of the pods in this cluster, in CIDR notation (e.g. `10.96.0.0/14`). All pods in the cluster get assigned a unique RFC1918 IPv4 address from these ranges. Only a single range is supported. This field cannot be changed after creation. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#pod_address_cidr_blocks ContainerAzureCluster#pod_address_cidr_blocks} */ readonly podAddressCidrBlocks: string[]; /** * The IP address range for services in this cluster, in CIDR notation (e.g. `10.96.0.0/14`). All services in the cluster get assigned a unique RFC1918 IPv4 address from these ranges. Only a single range is supported. This field cannot be changed after creating a cluster. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#service_address_cidr_blocks ContainerAzureCluster#service_address_cidr_blocks} */ readonly serviceAddressCidrBlocks: string[]; /** * The Azure Resource Manager (ARM) ID of the VNet associated with your cluster. All components in the cluster (i.e. control plane and node pools) run on a single VNet. Example: `/subscriptions/* /resourceGroups/* /providers/Microsoft.Network/virtualNetworks/*` This field cannot be changed after creation. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#virtual_network_id ContainerAzureCluster#virtual_network_id} * * Note: The above comment contained a comment block ending sequence (* followed by /). We have introduced a space between to prevent syntax errors. Please ignore the space. */ readonly virtualNetworkId: string; } export declare function containerAzureClusterNetworkingToTerraform(struct?: ContainerAzureClusterNetworkingOutputReference | ContainerAzureClusterNetworking): any; export declare function containerAzureClusterNetworkingToHclTerraform(struct?: ContainerAzureClusterNetworkingOutputReference | ContainerAzureClusterNetworking): any; export declare class ContainerAzureClusterNetworkingOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): ContainerAzureClusterNetworking | undefined; set internalValue(value: ContainerAzureClusterNetworking | undefined); private _podAddressCidrBlocks?; get podAddressCidrBlocks(): string[]; set podAddressCidrBlocks(value: string[]); get podAddressCidrBlocksInput(): string[] | undefined; private _serviceAddressCidrBlocks?; get serviceAddressCidrBlocks(): string[]; set serviceAddressCidrBlocks(value: string[]); get serviceAddressCidrBlocksInput(): string[] | undefined; private _virtualNetworkId?; get virtualNetworkId(): string; set virtualNetworkId(value: string); get virtualNetworkIdInput(): string | undefined; } export interface ContainerAzureClusterTimeouts { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#create ContainerAzureCluster#create} */ readonly create?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#delete ContainerAzureCluster#delete} */ readonly delete?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#update ContainerAzureCluster#update} */ readonly update?: string; } export declare function containerAzureClusterTimeoutsToTerraform(struct?: ContainerAzureClusterTimeouts | cdktf.IResolvable): any; export declare function containerAzureClusterTimeoutsToHclTerraform(struct?: ContainerAzureClusterTimeouts | cdktf.IResolvable): any; export declare class ContainerAzureClusterTimeoutsOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): ContainerAzureClusterTimeouts | cdktf.IResolvable | undefined; set internalValue(value: ContainerAzureClusterTimeouts | cdktf.IResolvable | undefined); private _create?; get create(): string; set create(value: string); resetCreate(): void; get createInput(): string | undefined; private _delete?; get delete(): string; set delete(value: string); resetDelete(): void; get deleteInput(): string | undefined; private _update?; get update(): string; set update(value: string); resetUpdate(): void; get updateInput(): string | undefined; } /** * Represents a {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster google_container_azure_cluster} */ export declare class ContainerAzureCluster extends cdktf.TerraformResource { static readonly tfResourceType = "google_container_azure_cluster"; /** * Generates CDKTF code for importing a ContainerAzureCluster resource upon running "cdktf plan <stack-name>" * @param scope The scope in which to define this construct * @param importToId The construct id used in the generated config for the ContainerAzureCluster to import * @param importFromId The id of the existing ContainerAzureCluster that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the ContainerAzureCluster to import is found */ static generateConfigForImport(scope: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): cdktf.ImportableResource; /** * Create a new {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/container_azure_cluster google_container_azure_cluster} Resource * * @param scope The scope in which to define this construct * @param id The scoped construct ID. Must be unique amongst siblings in the same scope * @param options ContainerAzureClusterConfig */ constructor(scope: Construct, id: string, config: ContainerAzureClusterConfig); private _annotations?; get annotations(): { [key: string]: string; }; set annotations(value: { [key: string]: string; }); resetAnnotations(): void; get annotationsInput(): { [key: string]: string; } | undefined; private _azureRegion?; get azureRegion(): string; set azureRegion(value: string); get azureRegionInput(): string | undefined; private _client?; get client(): string; set client(value: string); resetClient(): void; get clientInput(): string | undefined; get createTime(): string; private _description?; get description(): string; set description(value: string); resetDescription(): void; get descriptionInput(): string | undefined; private _effectiveAnnotations; get effectiveAnnotations(): cdktf.StringMap; get endpoint(): string; get etag(): string; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string | undefined; private _location?; get location(): string; set location(value: string); get locationInput(): string | undefined; private _name?; get name(): string; set name(value: string); get nameInput(): string | undefined; private _project?; get project(): string; set project(value: string); resetProject(): void; get projectInput(): string | undefined; get reconciling(): cdktf.IResolvable; private _resourceGroupId?; get resourceGroupId(): string; set resourceGroupId(value: string); get resourceGroupIdInput(): string | undefined; get state(): string; get uid(): string; get updateTime(): string; private _workloadIdentityConfig; get workloadIdentityConfig(): ContainerAzureClusterWorkloadIdentityConfigList; private _authorization; get authorization(): ContainerAzureClusterAuthorizationOutputReference; putAuthorization(value: ContainerAzureClusterAuthorization): void; get authorizationInput(): ContainerAzureClusterAuthorization | undefined; private _azureServicesAuthentication; get azureServicesAuthentication(): ContainerAzureClusterAzureServicesAuthenticationOutputReference; putAzureServicesAuthentication(value: ContainerAzureClusterAzureServicesAuthentication): void; resetAzureServicesAuthentication(): void; get azureServicesAuthenticationInput(): ContainerAzureClusterAzureServicesAuthentication | undefined; private _controlPlane; get controlPlane(): ContainerAzureClusterControlPlaneOutputReference; putControlPlane(value: ContainerAzureClusterControlPlane): void; get controlPlaneInput(): ContainerAzureClusterControlPlane | undefined; private _fleet; get fleet(): ContainerAzureClusterFleetOutputReference; putFleet(value: ContainerAzureClusterFleet): void; get fleetInput(): ContainerAzureClusterFleet | undefined; private _networking; get networking(): ContainerAzureClusterNetworkingOutputReference; putNetworking(value: ContainerAzureClusterNetworking): void; get networkingInput(): ContainerAzureClusterNetworking | undefined; private _timeouts; get timeouts(): ContainerAzureClusterTimeoutsOutputReference; putTimeouts(value: ContainerAzureClusterTimeouts): void; resetTimeouts(): void; get timeoutsInput(): cdktf.IResolvable | ContainerAzureClusterTimeouts | undefined; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }