@cdktf/provider-google
Version:
Prebuilt google Provider for Terraform CDK (cdktf)
611 lines (610 loc) • 33.5 kB
TypeScript
/**
* Copyright (c) HashiCorp, Inc.
* SPDX-License-Identifier: MPL-2.0
*/
import { Construct } from 'constructs';
import * as cdktf from 'cdktf';
export interface AlloydbInstanceConfig extends cdktf.TerraformMetaArguments {
/**
* Annotations to allow client tools to store small amount of arbitrary data. This is distinct from labels.
*
* **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/alloydb_instance#annotations AlloydbInstance#annotations}
*/
readonly annotations?: {
[key: string]: string;
};
/**
* 'Availability type of an Instance. Defaults to REGIONAL for both primary and read instances.
* Note that primary and read instances can have different availability types.
* Only READ_POOL instance supports ZONAL type. Users can't specify the zone for READ_POOL instance.
* Zone is automatically chosen from the list of zones in the region specified.
* Read pool of size 1 can only have zonal availability. Read pools with node count of 2 or more
* can have regional availability (nodes are present in 2 or more zones in a region).' Possible values: ["AVAILABILITY_TYPE_UNSPECIFIED", "ZONAL", "REGIONAL"]
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/alloydb_instance#availability_type AlloydbInstance#availability_type}
*/
readonly availabilityType?: string;
/**
* Identifies the alloydb cluster. Must be in the format
* 'projects/{project}/locations/{location}/clusters/{cluster_id}'
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/alloydb_instance#cluster AlloydbInstance#cluster}
*/
readonly cluster: string;
/**
* Database flags. Set at instance level. * They are copied from primary instance on read instance creation. * Read instances can set new or override existing flags that are relevant for reads, e.g. for enabling columnar cache on a read instance. Flags set on read instance may or may not be present on primary.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/alloydb_instance#database_flags AlloydbInstance#database_flags}
*/
readonly databaseFlags?: {
[key: string]: string;
};
/**
* User-settable and human-readable display name for the Instance.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/alloydb_instance#display_name AlloydbInstance#display_name}
*/
readonly displayName?: string;
/**
* The Compute Engine zone that the instance should serve from, per https://cloud.google.com/compute/docs/regions-zones This can ONLY be specified for ZONAL instances. If present for a REGIONAL instance, an error will be thrown. If this is absent for a ZONAL instance, instance is created in a random zone with available capacity.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/alloydb_instance#gce_zone AlloydbInstance#gce_zone}
*/
readonly gceZone?: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/alloydb_instance#id AlloydbInstance#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 ID of the alloydb instance.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/alloydb_instance#instance_id AlloydbInstance#instance_id}
*/
readonly instanceId: string;
/**
* The type of the instance.
* If the instance type is READ_POOL, provide the associated PRIMARY/SECONDARY instance in the 'depends_on' meta-data attribute.
* If the instance type is SECONDARY, point to the cluster_type of the associated secondary cluster instead of mentioning SECONDARY.
* Example: {instance_type = google_alloydb_cluster.<secondary_cluster_name>.cluster_type} instead of {instance_type = SECONDARY}
* If the instance type is SECONDARY, the terraform delete instance operation does not delete the secondary instance but abandons it instead.
* Use deletion_policy = "FORCE" in the associated secondary cluster and delete the cluster forcefully to delete the secondary cluster as well its associated secondary instance.
* Users can undo the delete secondary instance action by importing the deleted secondary instance by calling terraform import. Possible values: ["PRIMARY", "READ_POOL", "SECONDARY"]
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/alloydb_instance#instance_type AlloydbInstance#instance_type}
*/
readonly instanceType: string;
/**
* User-defined labels for the alloydb instance.
*
* **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
* Please refer to the field 'effective_labels' for all of the labels present on the resource.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/alloydb_instance#labels AlloydbInstance#labels}
*/
readonly labels?: {
[key: string]: string;
};
/**
* client_connection_config block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/alloydb_instance#client_connection_config AlloydbInstance#client_connection_config}
*/
readonly clientConnectionConfig?: AlloydbInstanceClientConnectionConfig;
/**
* machine_config block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/alloydb_instance#machine_config AlloydbInstance#machine_config}
*/
readonly machineConfig?: AlloydbInstanceMachineConfig;
/**
* network_config block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/alloydb_instance#network_config AlloydbInstance#network_config}
*/
readonly networkConfig?: AlloydbInstanceNetworkConfig;
/**
* psc_instance_config block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/alloydb_instance#psc_instance_config AlloydbInstance#psc_instance_config}
*/
readonly pscInstanceConfig?: AlloydbInstancePscInstanceConfig;
/**
* query_insights_config block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/alloydb_instance#query_insights_config AlloydbInstance#query_insights_config}
*/
readonly queryInsightsConfig?: AlloydbInstanceQueryInsightsConfig;
/**
* read_pool_config block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/alloydb_instance#read_pool_config AlloydbInstance#read_pool_config}
*/
readonly readPoolConfig?: AlloydbInstanceReadPoolConfig;
/**
* timeouts block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/alloydb_instance#timeouts AlloydbInstance#timeouts}
*/
readonly timeouts?: AlloydbInstanceTimeouts;
}
export interface AlloydbInstanceClientConnectionConfigSslConfig {
/**
* SSL mode. Specifies client-server SSL/TLS connection behavior. Possible values: ["ENCRYPTED_ONLY", "ALLOW_UNENCRYPTED_AND_ENCRYPTED"]
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/alloydb_instance#ssl_mode AlloydbInstance#ssl_mode}
*/
readonly sslMode?: string;
}
export declare function alloydbInstanceClientConnectionConfigSslConfigToTerraform(struct?: AlloydbInstanceClientConnectionConfigSslConfigOutputReference | AlloydbInstanceClientConnectionConfigSslConfig): any;
export declare function alloydbInstanceClientConnectionConfigSslConfigToHclTerraform(struct?: AlloydbInstanceClientConnectionConfigSslConfigOutputReference | AlloydbInstanceClientConnectionConfigSslConfig): any;
export declare class AlloydbInstanceClientConnectionConfigSslConfigOutputReference 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(): AlloydbInstanceClientConnectionConfigSslConfig | undefined;
set internalValue(value: AlloydbInstanceClientConnectionConfigSslConfig | undefined);
private _sslMode?;
get sslMode(): string;
set sslMode(value: string);
resetSslMode(): void;
get sslModeInput(): string | undefined;
}
export interface AlloydbInstanceClientConnectionConfig {
/**
* Configuration to enforce connectors only (ex: AuthProxy) connections to the database.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/alloydb_instance#require_connectors AlloydbInstance#require_connectors}
*/
readonly requireConnectors?: boolean | cdktf.IResolvable;
/**
* ssl_config block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/alloydb_instance#ssl_config AlloydbInstance#ssl_config}
*/
readonly sslConfig?: AlloydbInstanceClientConnectionConfigSslConfig;
}
export declare function alloydbInstanceClientConnectionConfigToTerraform(struct?: AlloydbInstanceClientConnectionConfigOutputReference | AlloydbInstanceClientConnectionConfig): any;
export declare function alloydbInstanceClientConnectionConfigToHclTerraform(struct?: AlloydbInstanceClientConnectionConfigOutputReference | AlloydbInstanceClientConnectionConfig): any;
export declare class AlloydbInstanceClientConnectionConfigOutputReference 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(): AlloydbInstanceClientConnectionConfig | undefined;
set internalValue(value: AlloydbInstanceClientConnectionConfig | undefined);
private _requireConnectors?;
get requireConnectors(): boolean | cdktf.IResolvable;
set requireConnectors(value: boolean | cdktf.IResolvable);
resetRequireConnectors(): void;
get requireConnectorsInput(): boolean | cdktf.IResolvable | undefined;
private _sslConfig;
get sslConfig(): AlloydbInstanceClientConnectionConfigSslConfigOutputReference;
putSslConfig(value: AlloydbInstanceClientConnectionConfigSslConfig): void;
resetSslConfig(): void;
get sslConfigInput(): AlloydbInstanceClientConnectionConfigSslConfig | undefined;
}
export interface AlloydbInstanceMachineConfig {
/**
* The number of CPU's in the VM instance.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/alloydb_instance#cpu_count AlloydbInstance#cpu_count}
*/
readonly cpuCount?: number;
}
export declare function alloydbInstanceMachineConfigToTerraform(struct?: AlloydbInstanceMachineConfigOutputReference | AlloydbInstanceMachineConfig): any;
export declare function alloydbInstanceMachineConfigToHclTerraform(struct?: AlloydbInstanceMachineConfigOutputReference | AlloydbInstanceMachineConfig): any;
export declare class AlloydbInstanceMachineConfigOutputReference 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(): AlloydbInstanceMachineConfig | undefined;
set internalValue(value: AlloydbInstanceMachineConfig | undefined);
private _cpuCount?;
get cpuCount(): number;
set cpuCount(value: number);
resetCpuCount(): void;
get cpuCountInput(): number | undefined;
}
export interface AlloydbInstanceNetworkConfigAuthorizedExternalNetworks {
/**
* CIDR range for one authorized network of the instance.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/alloydb_instance#cidr_range AlloydbInstance#cidr_range}
*/
readonly cidrRange?: string;
}
export declare function alloydbInstanceNetworkConfigAuthorizedExternalNetworksToTerraform(struct?: AlloydbInstanceNetworkConfigAuthorizedExternalNetworks | cdktf.IResolvable): any;
export declare function alloydbInstanceNetworkConfigAuthorizedExternalNetworksToHclTerraform(struct?: AlloydbInstanceNetworkConfigAuthorizedExternalNetworks | cdktf.IResolvable): any;
export declare class AlloydbInstanceNetworkConfigAuthorizedExternalNetworksOutputReference 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(): AlloydbInstanceNetworkConfigAuthorizedExternalNetworks | cdktf.IResolvable | undefined;
set internalValue(value: AlloydbInstanceNetworkConfigAuthorizedExternalNetworks | cdktf.IResolvable | undefined);
private _cidrRange?;
get cidrRange(): string;
set cidrRange(value: string);
resetCidrRange(): void;
get cidrRangeInput(): string | undefined;
}
export declare class AlloydbInstanceNetworkConfigAuthorizedExternalNetworksList extends cdktf.ComplexList {
protected terraformResource: cdktf.IInterpolatingParent;
protected terraformAttribute: string;
protected wrapsSet: boolean;
internalValue?: AlloydbInstanceNetworkConfigAuthorizedExternalNetworks[] | 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): AlloydbInstanceNetworkConfigAuthorizedExternalNetworksOutputReference;
}
export interface AlloydbInstanceNetworkConfig {
/**
* Enabling outbound public ip for the instance.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/alloydb_instance#enable_outbound_public_ip AlloydbInstance#enable_outbound_public_ip}
*/
readonly enableOutboundPublicIp?: boolean | cdktf.IResolvable;
/**
* Enabling public ip for the instance. If a user wishes to disable this,
* please also clear the list of the authorized external networks set on
* the same instance.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/alloydb_instance#enable_public_ip AlloydbInstance#enable_public_ip}
*/
readonly enablePublicIp?: boolean | cdktf.IResolvable;
/**
* authorized_external_networks block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/alloydb_instance#authorized_external_networks AlloydbInstance#authorized_external_networks}
*/
readonly authorizedExternalNetworks?: AlloydbInstanceNetworkConfigAuthorizedExternalNetworks[] | cdktf.IResolvable;
}
export declare function alloydbInstanceNetworkConfigToTerraform(struct?: AlloydbInstanceNetworkConfigOutputReference | AlloydbInstanceNetworkConfig): any;
export declare function alloydbInstanceNetworkConfigToHclTerraform(struct?: AlloydbInstanceNetworkConfigOutputReference | AlloydbInstanceNetworkConfig): any;
export declare class AlloydbInstanceNetworkConfigOutputReference 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(): AlloydbInstanceNetworkConfig | undefined;
set internalValue(value: AlloydbInstanceNetworkConfig | undefined);
private _enableOutboundPublicIp?;
get enableOutboundPublicIp(): boolean | cdktf.IResolvable;
set enableOutboundPublicIp(value: boolean | cdktf.IResolvable);
resetEnableOutboundPublicIp(): void;
get enableOutboundPublicIpInput(): boolean | cdktf.IResolvable | undefined;
private _enablePublicIp?;
get enablePublicIp(): boolean | cdktf.IResolvable;
set enablePublicIp(value: boolean | cdktf.IResolvable);
resetEnablePublicIp(): void;
get enablePublicIpInput(): boolean | cdktf.IResolvable | undefined;
private _authorizedExternalNetworks;
get authorizedExternalNetworks(): AlloydbInstanceNetworkConfigAuthorizedExternalNetworksList;
putAuthorizedExternalNetworks(value: AlloydbInstanceNetworkConfigAuthorizedExternalNetworks[] | cdktf.IResolvable): void;
resetAuthorizedExternalNetworks(): void;
get authorizedExternalNetworksInput(): cdktf.IResolvable | AlloydbInstanceNetworkConfigAuthorizedExternalNetworks[] | undefined;
}
export interface AlloydbInstancePscInstanceConfig {
/**
* List of consumer projects that are allowed to create PSC endpoints to service-attachments to this instance.
* These should be specified as project numbers only.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/alloydb_instance#allowed_consumer_projects AlloydbInstance#allowed_consumer_projects}
*/
readonly allowedConsumerProjects?: string[];
}
export declare function alloydbInstancePscInstanceConfigToTerraform(struct?: AlloydbInstancePscInstanceConfigOutputReference | AlloydbInstancePscInstanceConfig): any;
export declare function alloydbInstancePscInstanceConfigToHclTerraform(struct?: AlloydbInstancePscInstanceConfigOutputReference | AlloydbInstancePscInstanceConfig): any;
export declare class AlloydbInstancePscInstanceConfigOutputReference 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(): AlloydbInstancePscInstanceConfig | undefined;
set internalValue(value: AlloydbInstancePscInstanceConfig | undefined);
private _allowedConsumerProjects?;
get allowedConsumerProjects(): string[];
set allowedConsumerProjects(value: string[]);
resetAllowedConsumerProjects(): void;
get allowedConsumerProjectsInput(): string[] | undefined;
get pscDnsName(): string;
get serviceAttachmentLink(): string;
}
export interface AlloydbInstanceQueryInsightsConfig {
/**
* Number of query execution plans captured by Insights per minute for all queries combined. The default value is 5. Any integer between 0 and 20 is considered valid.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/alloydb_instance#query_plans_per_minute AlloydbInstance#query_plans_per_minute}
*/
readonly queryPlansPerMinute?: number;
/**
* Query string length. The default value is 1024. Any integer between 256 and 4500 is considered valid.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/alloydb_instance#query_string_length AlloydbInstance#query_string_length}
*/
readonly queryStringLength?: number;
/**
* Record application tags for an instance. This flag is turned "on" by default.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/alloydb_instance#record_application_tags AlloydbInstance#record_application_tags}
*/
readonly recordApplicationTags?: boolean | cdktf.IResolvable;
/**
* Record client address for an instance. Client address is PII information. This flag is turned "on" by default.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/alloydb_instance#record_client_address AlloydbInstance#record_client_address}
*/
readonly recordClientAddress?: boolean | cdktf.IResolvable;
}
export declare function alloydbInstanceQueryInsightsConfigToTerraform(struct?: AlloydbInstanceQueryInsightsConfigOutputReference | AlloydbInstanceQueryInsightsConfig): any;
export declare function alloydbInstanceQueryInsightsConfigToHclTerraform(struct?: AlloydbInstanceQueryInsightsConfigOutputReference | AlloydbInstanceQueryInsightsConfig): any;
export declare class AlloydbInstanceQueryInsightsConfigOutputReference 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(): AlloydbInstanceQueryInsightsConfig | undefined;
set internalValue(value: AlloydbInstanceQueryInsightsConfig | undefined);
private _queryPlansPerMinute?;
get queryPlansPerMinute(): number;
set queryPlansPerMinute(value: number);
resetQueryPlansPerMinute(): void;
get queryPlansPerMinuteInput(): number | undefined;
private _queryStringLength?;
get queryStringLength(): number;
set queryStringLength(value: number);
resetQueryStringLength(): void;
get queryStringLengthInput(): number | undefined;
private _recordApplicationTags?;
get recordApplicationTags(): boolean | cdktf.IResolvable;
set recordApplicationTags(value: boolean | cdktf.IResolvable);
resetRecordApplicationTags(): void;
get recordApplicationTagsInput(): boolean | cdktf.IResolvable | undefined;
private _recordClientAddress?;
get recordClientAddress(): boolean | cdktf.IResolvable;
set recordClientAddress(value: boolean | cdktf.IResolvable);
resetRecordClientAddress(): void;
get recordClientAddressInput(): boolean | cdktf.IResolvable | undefined;
}
export interface AlloydbInstanceReadPoolConfig {
/**
* Read capacity, i.e. number of nodes in a read pool instance.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/alloydb_instance#node_count AlloydbInstance#node_count}
*/
readonly nodeCount?: number;
}
export declare function alloydbInstanceReadPoolConfigToTerraform(struct?: AlloydbInstanceReadPoolConfigOutputReference | AlloydbInstanceReadPoolConfig): any;
export declare function alloydbInstanceReadPoolConfigToHclTerraform(struct?: AlloydbInstanceReadPoolConfigOutputReference | AlloydbInstanceReadPoolConfig): any;
export declare class AlloydbInstanceReadPoolConfigOutputReference 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(): AlloydbInstanceReadPoolConfig | undefined;
set internalValue(value: AlloydbInstanceReadPoolConfig | undefined);
private _nodeCount?;
get nodeCount(): number;
set nodeCount(value: number);
resetNodeCount(): void;
get nodeCountInput(): number | undefined;
}
export interface AlloydbInstanceTimeouts {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/alloydb_instance#create AlloydbInstance#create}
*/
readonly create?: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/alloydb_instance#delete AlloydbInstance#delete}
*/
readonly delete?: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/alloydb_instance#update AlloydbInstance#update}
*/
readonly update?: string;
}
export declare function alloydbInstanceTimeoutsToTerraform(struct?: AlloydbInstanceTimeouts | cdktf.IResolvable): any;
export declare function alloydbInstanceTimeoutsToHclTerraform(struct?: AlloydbInstanceTimeouts | cdktf.IResolvable): any;
export declare class AlloydbInstanceTimeoutsOutputReference 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(): AlloydbInstanceTimeouts | cdktf.IResolvable | undefined;
set internalValue(value: AlloydbInstanceTimeouts | 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/alloydb_instance google_alloydb_instance}
*/
export declare class AlloydbInstance extends cdktf.TerraformResource {
static readonly tfResourceType = "google_alloydb_instance";
/**
* Generates CDKTF code for importing a AlloydbInstance 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 AlloydbInstance to import
* @param importFromId The id of the existing AlloydbInstance that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/alloydb_instance#import import section} in the documentation of this resource for the id to use
* @param provider? Optional instance of the provider where the AlloydbInstance 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/alloydb_instance google_alloydb_instance} 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 AlloydbInstanceConfig
*/
constructor(scope: Construct, id: string, config: AlloydbInstanceConfig);
private _annotations?;
get annotations(): {
[key: string]: string;
};
set annotations(value: {
[key: string]: string;
});
resetAnnotations(): void;
get annotationsInput(): {
[key: string]: string;
} | undefined;
private _availabilityType?;
get availabilityType(): string;
set availabilityType(value: string);
resetAvailabilityType(): void;
get availabilityTypeInput(): string | undefined;
private _cluster?;
get cluster(): string;
set cluster(value: string);
get clusterInput(): string | undefined;
get createTime(): string;
private _databaseFlags?;
get databaseFlags(): {
[key: string]: string;
};
set databaseFlags(value: {
[key: string]: string;
});
resetDatabaseFlags(): void;
get databaseFlagsInput(): {
[key: string]: string;
} | undefined;
private _displayName?;
get displayName(): string;
set displayName(value: string);
resetDisplayName(): void;
get displayNameInput(): string | undefined;
private _effectiveAnnotations;
get effectiveAnnotations(): cdktf.StringMap;
private _effectiveLabels;
get effectiveLabels(): cdktf.StringMap;
private _gceZone?;
get gceZone(): string;
set gceZone(value: string);
resetGceZone(): void;
get gceZoneInput(): string | undefined;
private _id?;
get id(): string;
set id(value: string);
resetId(): void;
get idInput(): string | undefined;
private _instanceId?;
get instanceId(): string;
set instanceId(value: string);
get instanceIdInput(): string | undefined;
private _instanceType?;
get instanceType(): string;
set instanceType(value: string);
get instanceTypeInput(): string | undefined;
get ipAddress(): string;
private _labels?;
get labels(): {
[key: string]: string;
};
set labels(value: {
[key: string]: string;
});
resetLabels(): void;
get labelsInput(): {
[key: string]: string;
} | undefined;
get name(): string;
get outboundPublicIpAddresses(): string[];
get publicIpAddress(): string;
get reconciling(): cdktf.IResolvable;
get state(): string;
private _terraformLabels;
get terraformLabels(): cdktf.StringMap;
get uid(): string;
get updateTime(): string;
private _clientConnectionConfig;
get clientConnectionConfig(): AlloydbInstanceClientConnectionConfigOutputReference;
putClientConnectionConfig(value: AlloydbInstanceClientConnectionConfig): void;
resetClientConnectionConfig(): void;
get clientConnectionConfigInput(): AlloydbInstanceClientConnectionConfig | undefined;
private _machineConfig;
get machineConfig(): AlloydbInstanceMachineConfigOutputReference;
putMachineConfig(value: AlloydbInstanceMachineConfig): void;
resetMachineConfig(): void;
get machineConfigInput(): AlloydbInstanceMachineConfig | undefined;
private _networkConfig;
get networkConfig(): AlloydbInstanceNetworkConfigOutputReference;
putNetworkConfig(value: AlloydbInstanceNetworkConfig): void;
resetNetworkConfig(): void;
get networkConfigInput(): AlloydbInstanceNetworkConfig | undefined;
private _pscInstanceConfig;
get pscInstanceConfig(): AlloydbInstancePscInstanceConfigOutputReference;
putPscInstanceConfig(value: AlloydbInstancePscInstanceConfig): void;
resetPscInstanceConfig(): void;
get pscInstanceConfigInput(): AlloydbInstancePscInstanceConfig | undefined;
private _queryInsightsConfig;
get queryInsightsConfig(): AlloydbInstanceQueryInsightsConfigOutputReference;
putQueryInsightsConfig(value: AlloydbInstanceQueryInsightsConfig): void;
resetQueryInsightsConfig(): void;
get queryInsightsConfigInput(): AlloydbInstanceQueryInsightsConfig | undefined;
private _readPoolConfig;
get readPoolConfig(): AlloydbInstanceReadPoolConfigOutputReference;
putReadPoolConfig(value: AlloydbInstanceReadPoolConfig): void;
resetReadPoolConfig(): void;
get readPoolConfigInput(): AlloydbInstanceReadPoolConfig | undefined;
private _timeouts;
get timeouts(): AlloydbInstanceTimeoutsOutputReference;
putTimeouts(value: AlloydbInstanceTimeouts): void;
resetTimeouts(): void;
get timeoutsInput(): cdktf.IResolvable | AlloydbInstanceTimeouts | undefined;
protected synthesizeAttributes(): {
[name: string]: any;
};
protected synthesizeHclAttributes(): {
[name: string]: any;
};
}