import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface MdbMysqlClusterV2Config extends cdktf.TerraformMetaArguments { /** * Access policy to the MySQL cluster. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#access MdbMysqlClusterV2#access} */ readonly access?: MdbMysqlClusterV2Access; /** * The period in days during which backups are stored. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#backup_retain_period_days MdbMysqlClusterV2#backup_retain_period_days} */ readonly backupRetainPeriodDays?: number; /** * Time to start the daily backup, in the UTC timezone. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#backup_window_start MdbMysqlClusterV2#backup_window_start} */ readonly backupWindowStart?: MdbMysqlClusterV2BackupWindowStart; /** * The `true` value means that resource is protected from accidental deletion. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#deletion_protection MdbMysqlClusterV2#deletion_protection} */ readonly deletionProtection?: boolean | cdktf.IResolvable; /** * Description of the MySQL cluster. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#description MdbMysqlClusterV2#description} */ readonly description?: string; /** * ID of the symmetric encryption key used to encrypt the disk of the cluster. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#disk_encryption_key_id MdbMysqlClusterV2#disk_encryption_key_id} */ readonly diskEncryptionKeyId?: string; /** * Cluster disk size autoscaling settings. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#disk_size_autoscaling MdbMysqlClusterV2#disk_size_autoscaling} */ readonly diskSizeAutoscaling?: MdbMysqlClusterV2DiskSizeAutoscaling; /** * Deployment environment of the MySQL cluster. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#environment MdbMysqlClusterV2#environment} */ readonly environment: string; /** * The folder identifier that resource belongs to. If it is not provided, the default provider `folder-id` is used. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#folder_id MdbMysqlClusterV2#folder_id} */ readonly folderId?: string; /** * A host configuration of the MySQL cluster. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#hosts MdbMysqlClusterV2#hosts} */ readonly hosts: { [key: string]: MdbMysqlClusterV2Hosts; } | cdktf.IResolvable; /** * A set of key/value label pairs which assigned to resource. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#labels MdbMysqlClusterV2#labels} */ readonly labels?: { [key: string]: string; }; /** * Maintenance policy of the MySQL cluster. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#maintenance_window MdbMysqlClusterV2#maintenance_window} */ readonly maintenanceWindow?: MdbMysqlClusterV2MaintenanceWindow; /** * MySQL cluster configuration. For detailed information specific to your MySQL version, please refer to the [API proto specifications](https://github.com/yandex-cloud/cloudapi/tree/master/yandex/cloud/mdb/mysql/v1/config). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#mysql_config MdbMysqlClusterV2#mysql_config} */ readonly mysqlConfig?: { [key: string]: string; }; /** * Name of the MySQL cluster. Provided by the client when the cluster is created. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#name MdbMysqlClusterV2#name} */ readonly name: string; /** * The `VPC Network ID` of subnets which resource attached to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#network_id MdbMysqlClusterV2#network_id} */ readonly networkId: string; /** * Cluster performance diagnostics settings. The structure is documented below. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#performance_diagnostics MdbMysqlClusterV2#performance_diagnostics} */ readonly performanceDiagnostics?: MdbMysqlClusterV2PerformanceDiagnostics; /** * The cluster will be created from the specified backup. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#restore MdbMysqlClusterV2#restore} */ readonly restore?: MdbMysqlClusterV2Restore; /** * The list of security groups applied to resource or their components. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#security_group_ids MdbMysqlClusterV2#security_group_ids} */ readonly securityGroupIds?: string[]; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#timeouts MdbMysqlClusterV2#timeouts} */ readonly timeouts?: MdbMysqlClusterV2Timeouts; /** * Version of the MySQL cluster. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#version MdbMysqlClusterV2#version} */ readonly version: string; /** * resources block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#resources MdbMysqlClusterV2#resources} */ readonly resources: MdbMysqlClusterV2Resources; } export interface MdbMysqlClusterV2Access { /** * Allow access for Yandex DataLens. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#data_lens MdbMysqlClusterV2#data_lens} */ readonly dataLens?: boolean | cdktf.IResolvable; /** * Allow access for DataTransfer * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#data_transfer MdbMysqlClusterV2#data_transfer} */ readonly dataTransfer?: boolean | cdktf.IResolvable; /** * Allow access for SQL queries in the management console * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#web_sql MdbMysqlClusterV2#web_sql} */ readonly webSql?: boolean | cdktf.IResolvable; /** * Allow access for YandexQuery * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#yandex_query MdbMysqlClusterV2#yandex_query} */ readonly yandexQuery?: boolean | cdktf.IResolvable; } export declare function mdbMysqlClusterV2AccessToTerraform(struct?: MdbMysqlClusterV2Access | cdktf.IResolvable): any; export declare function mdbMysqlClusterV2AccessToHclTerraform(struct?: MdbMysqlClusterV2Access | cdktf.IResolvable): any; export declare class MdbMysqlClusterV2AccessOutputReference 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(): MdbMysqlClusterV2Access | cdktf.IResolvable | undefined; set internalValue(value: MdbMysqlClusterV2Access | cdktf.IResolvable | undefined); private _dataLens?; get dataLens(): boolean | cdktf.IResolvable; set dataLens(value: boolean | cdktf.IResolvable); resetDataLens(): void; get dataLensInput(): any; private _dataTransfer?; get dataTransfer(): boolean | cdktf.IResolvable; set dataTransfer(value: boolean | cdktf.IResolvable); resetDataTransfer(): void; get dataTransferInput(): any; private _webSql?; get webSql(): boolean | cdktf.IResolvable; set webSql(value: boolean | cdktf.IResolvable); resetWebSql(): void; get webSqlInput(): any; private _yandexQuery?; get yandexQuery(): boolean | cdktf.IResolvable; set yandexQuery(value: boolean | cdktf.IResolvable); resetYandexQuery(): void; get yandexQueryInput(): any; } export interface MdbMysqlClusterV2BackupWindowStart { /** * The hour at which backup will be started (UTC). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#hours MdbMysqlClusterV2#hours} */ readonly hours?: number; /** * The minute at which backup will be started (UTC). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#minutes MdbMysqlClusterV2#minutes} */ readonly minutes?: number; } export declare function mdbMysqlClusterV2BackupWindowStartToTerraform(struct?: MdbMysqlClusterV2BackupWindowStart | cdktf.IResolvable): any; export declare function mdbMysqlClusterV2BackupWindowStartToHclTerraform(struct?: MdbMysqlClusterV2BackupWindowStart | cdktf.IResolvable): any; export declare class MdbMysqlClusterV2BackupWindowStartOutputReference 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(): MdbMysqlClusterV2BackupWindowStart | cdktf.IResolvable | undefined; set internalValue(value: MdbMysqlClusterV2BackupWindowStart | cdktf.IResolvable | undefined); private _hours?; get hours(): number; set hours(value: number); resetHours(): void; get hoursInput(): number; private _minutes?; get minutes(): number; set minutes(value: number); resetMinutes(): void; get minutesInput(): number; } export interface MdbMysqlClusterV2DiskSizeAutoscaling { /** * Limit of disk size after autoscaling (GiB). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#disk_size_limit MdbMysqlClusterV2#disk_size_limit} */ readonly diskSizeLimit: number; /** * Immediate autoscaling disk usage (percent). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#emergency_usage_threshold MdbMysqlClusterV2#emergency_usage_threshold} */ readonly emergencyUsageThreshold?: number; /** * Maintenance window autoscaling disk usage (percent). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#planned_usage_threshold MdbMysqlClusterV2#planned_usage_threshold} */ readonly plannedUsageThreshold?: number; } export declare function mdbMysqlClusterV2DiskSizeAutoscalingToTerraform(struct?: MdbMysqlClusterV2DiskSizeAutoscaling | cdktf.IResolvable): any; export declare function mdbMysqlClusterV2DiskSizeAutoscalingToHclTerraform(struct?: MdbMysqlClusterV2DiskSizeAutoscaling | cdktf.IResolvable): any; export declare class MdbMysqlClusterV2DiskSizeAutoscalingOutputReference 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(): MdbMysqlClusterV2DiskSizeAutoscaling | cdktf.IResolvable | undefined; set internalValue(value: MdbMysqlClusterV2DiskSizeAutoscaling | cdktf.IResolvable | undefined); private _diskSizeLimit?; get diskSizeLimit(): number; set diskSizeLimit(value: number); get diskSizeLimitInput(): number; private _emergencyUsageThreshold?; get emergencyUsageThreshold(): number; set emergencyUsageThreshold(value: number); resetEmergencyUsageThreshold(): void; get emergencyUsageThresholdInput(): number; private _plannedUsageThreshold?; get plannedUsageThreshold(): number; set plannedUsageThreshold(value: number); resetPlannedUsageThreshold(): void; get plannedUsageThresholdInput(): number; } export interface MdbMysqlClusterV2Hosts { /** * Assign a public IP address to the host. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#assign_public_ip MdbMysqlClusterV2#assign_public_ip} */ readonly assignPublicIp?: boolean | cdktf.IResolvable; /** * FQDN of the host that is used as a replication source. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#replication_source MdbMysqlClusterV2#replication_source} */ readonly replicationSource?: string; /** * ID of the subnet where the host is located. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#subnet_id MdbMysqlClusterV2#subnet_id} */ readonly subnetId?: string; /** * The availability zone where the host is located. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#zone MdbMysqlClusterV2#zone} */ readonly zone: string; } export declare function mdbMysqlClusterV2HostsToTerraform(struct?: MdbMysqlClusterV2Hosts | cdktf.IResolvable): any; export declare function mdbMysqlClusterV2HostsToHclTerraform(struct?: MdbMysqlClusterV2Hosts | cdktf.IResolvable): any; export declare class MdbMysqlClusterV2HostsOutputReference 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 complexObjectKey the key of this item in the map */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectKey: string); get internalValue(): MdbMysqlClusterV2Hosts | cdktf.IResolvable | undefined; set internalValue(value: MdbMysqlClusterV2Hosts | cdktf.IResolvable | undefined); private _assignPublicIp?; get assignPublicIp(): boolean | cdktf.IResolvable; set assignPublicIp(value: boolean | cdktf.IResolvable); resetAssignPublicIp(): void; get assignPublicIpInput(): any; get fqdn(): any; private _replicationSource?; get replicationSource(): string; set replicationSource(value: string); resetReplicationSource(): void; get replicationSourceInput(): string; private _subnetId?; get subnetId(): string; set subnetId(value: string); resetSubnetId(): void; get subnetIdInput(): string; private _zone?; get zone(): string; set zone(value: string); get zoneInput(): string; } export declare class MdbMysqlClusterV2HostsMap extends cdktf.ComplexMap { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; internalValue?: { [key: string]: MdbMysqlClusterV2Hosts; } | cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); /** * @param key the key of the item to return */ get(key: string): MdbMysqlClusterV2HostsOutputReference; } export interface MdbMysqlClusterV2MaintenanceWindow { /** * Day of the week (in DDD format). Allowed values: "MON", "TUE", "WED", "THU", "FRI", "SAT","SUN" * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#day MdbMysqlClusterV2#day} */ readonly day?: string; /** * Hour of the day in UTC (in HH format). Allowed value is between 1 and 24. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#hour MdbMysqlClusterV2#hour} */ readonly hour?: number; /** * Type of maintenance window. Can be either ANYTIME or WEEKLY. A day and hour of window need to be specified with weekly window. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#type MdbMysqlClusterV2#type} */ readonly type?: string; } export declare function mdbMysqlClusterV2MaintenanceWindowToTerraform(struct?: MdbMysqlClusterV2MaintenanceWindow | cdktf.IResolvable): any; export declare function mdbMysqlClusterV2MaintenanceWindowToHclTerraform(struct?: MdbMysqlClusterV2MaintenanceWindow | cdktf.IResolvable): any; export declare class MdbMysqlClusterV2MaintenanceWindowOutputReference 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(): MdbMysqlClusterV2MaintenanceWindow | cdktf.IResolvable | undefined; set internalValue(value: MdbMysqlClusterV2MaintenanceWindow | cdktf.IResolvable | undefined); private _day?; get day(): string; set day(value: string); resetDay(): void; get dayInput(): string; private _hour?; get hour(): number; set hour(value: number); resetHour(): void; get hourInput(): number; private _type?; get type(): string; set type(value: string); resetType(): void; get typeInput(): string; } export interface MdbMysqlClusterV2PerformanceDiagnostics { /** * Enable performance diagnostics * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#enabled MdbMysqlClusterV2#enabled} */ readonly enabled?: boolean | cdktf.IResolvable; /** * Interval (in seconds) for pg_stat_activity sampling Acceptable values are 1 to 86400, inclusive. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#sessions_sampling_interval MdbMysqlClusterV2#sessions_sampling_interval} */ readonly sessionsSamplingInterval: number; /** * Interval (in seconds) for pg_stat_statements sampling Acceptable values are 60 to 86400, inclusive. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#statements_sampling_interval MdbMysqlClusterV2#statements_sampling_interval} */ readonly statementsSamplingInterval: number; } export declare function mdbMysqlClusterV2PerformanceDiagnosticsToTerraform(struct?: MdbMysqlClusterV2PerformanceDiagnostics | cdktf.IResolvable): any; export declare function mdbMysqlClusterV2PerformanceDiagnosticsToHclTerraform(struct?: MdbMysqlClusterV2PerformanceDiagnostics | cdktf.IResolvable): any; export declare class MdbMysqlClusterV2PerformanceDiagnosticsOutputReference 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(): MdbMysqlClusterV2PerformanceDiagnostics | cdktf.IResolvable | undefined; set internalValue(value: MdbMysqlClusterV2PerformanceDiagnostics | cdktf.IResolvable | undefined); private _enabled?; get enabled(): boolean | cdktf.IResolvable; set enabled(value: boolean | cdktf.IResolvable); resetEnabled(): void; get enabledInput(): any; private _sessionsSamplingInterval?; get sessionsSamplingInterval(): number; set sessionsSamplingInterval(value: number); get sessionsSamplingIntervalInput(): number; private _statementsSamplingInterval?; get statementsSamplingInterval(): number; set statementsSamplingInterval(value: number); get statementsSamplingIntervalInput(): number; } export interface MdbMysqlClusterV2Restore { /** * Backup ID. The cluster will be created from the specified backup. [How to get a list of MySQL backups](https://yandex.cloud/docs/managed-mysql/operations/cluster-backups). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#backup_id MdbMysqlClusterV2#backup_id} */ readonly backupId: string; /** * Timestamp of the moment to which the MySQL cluster should be restored. (Format: `2006-01-02T15:04:05` - UTC). When not set, current time is used. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#time MdbMysqlClusterV2#time} */ readonly time?: string; } export declare function mdbMysqlClusterV2RestoreToTerraform(struct?: MdbMysqlClusterV2Restore | cdktf.IResolvable): any; export declare function mdbMysqlClusterV2RestoreToHclTerraform(struct?: MdbMysqlClusterV2Restore | cdktf.IResolvable): any; export declare class MdbMysqlClusterV2RestoreOutputReference 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(): MdbMysqlClusterV2Restore | cdktf.IResolvable | undefined; set internalValue(value: MdbMysqlClusterV2Restore | cdktf.IResolvable | undefined); private _backupId?; get backupId(): string; set backupId(value: string); get backupIdInput(): string; private _time?; get time(): string; set time(value: string); resetTime(): void; get timeInput(): string; } export interface MdbMysqlClusterV2Timeouts { /** * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#create MdbMysqlClusterV2#create} */ readonly create?: string; /** * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#delete MdbMysqlClusterV2#delete} */ readonly delete?: string; /** * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#update MdbMysqlClusterV2#update} */ readonly update?: string; } export declare function mdbMysqlClusterV2TimeoutsToTerraform(struct?: MdbMysqlClusterV2Timeouts | cdktf.IResolvable): any; export declare function mdbMysqlClusterV2TimeoutsToHclTerraform(struct?: MdbMysqlClusterV2Timeouts | cdktf.IResolvable): any; export declare class MdbMysqlClusterV2TimeoutsOutputReference 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(): MdbMysqlClusterV2Timeouts | cdktf.IResolvable | undefined; set internalValue(value: MdbMysqlClusterV2Timeouts | cdktf.IResolvable | undefined); private _create?; get create(): string; set create(value: string); resetCreate(): void; get createInput(): string; private _delete?; get delete(): string; set delete(value: string); resetDelete(): void; get deleteInput(): string; private _update?; get update(): string; set update(value: string); resetUpdate(): void; get updateInput(): string; } export interface MdbMysqlClusterV2Resources { /** * Size of the disk in bytes. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#disk_size MdbMysqlClusterV2#disk_size} */ readonly diskSize: number; /** * ID of the disk type that determines the disk performance characteristics. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#disk_type_id MdbMysqlClusterV2#disk_type_id} */ readonly diskTypeId: string; /** * ID of the resource preset that determines the number of CPU cores and memory size for the host. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#resource_preset_id MdbMysqlClusterV2#resource_preset_id} */ readonly resourcePresetId: string; } export declare function mdbMysqlClusterV2ResourcesToTerraform(struct?: MdbMysqlClusterV2Resources | cdktf.IResolvable): any; export declare function mdbMysqlClusterV2ResourcesToHclTerraform(struct?: MdbMysqlClusterV2Resources | cdktf.IResolvable): any; export declare class MdbMysqlClusterV2ResourcesOutputReference 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(): MdbMysqlClusterV2Resources | cdktf.IResolvable | undefined; set internalValue(value: MdbMysqlClusterV2Resources | cdktf.IResolvable | undefined); private _diskSize?; get diskSize(): number; set diskSize(value: number); get diskSizeInput(): number; private _diskTypeId?; get diskTypeId(): string; set diskTypeId(value: string); get diskTypeIdInput(): string; private _resourcePresetId?; get resourcePresetId(): string; set resourcePresetId(value: string); get resourcePresetIdInput(): string; } /** * Represents a {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2 yandex_mdb_mysql_cluster_v2} */ export declare class MdbMysqlClusterV2 extends cdktf.TerraformResource { static readonly tfResourceType = "yandex_mdb_mysql_cluster_v2"; /** * Generates CDKTF code for importing a MdbMysqlClusterV2 resource upon running "cdktf plan " * @param scope The scope in which to define this construct * @param importToId The construct id used in the generated config for the MdbMysqlClusterV2 to import * @param importFromId The id of the existing MdbMysqlClusterV2 that should be imported. Refer to the {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the MdbMysqlClusterV2 to import is found */ static generateConfigForImport(scope: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): any; /** * Create a new {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/mdb_mysql_cluster_v2 yandex_mdb_mysql_cluster_v2} 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 MdbMysqlClusterV2Config */ constructor(scope: Construct, id: string, config: MdbMysqlClusterV2Config); private _access; get access(): MdbMysqlClusterV2AccessOutputReference; putAccess(value: MdbMysqlClusterV2Access): void; resetAccess(): void; get accessInput(): any; private _backupRetainPeriodDays?; get backupRetainPeriodDays(): number; set backupRetainPeriodDays(value: number); resetBackupRetainPeriodDays(): void; get backupRetainPeriodDaysInput(): number; private _backupWindowStart; get backupWindowStart(): MdbMysqlClusterV2BackupWindowStartOutputReference; putBackupWindowStart(value: MdbMysqlClusterV2BackupWindowStart): void; resetBackupWindowStart(): void; get backupWindowStartInput(): any; private _deletionProtection?; get deletionProtection(): boolean | cdktf.IResolvable; set deletionProtection(value: boolean | cdktf.IResolvable); resetDeletionProtection(): void; get deletionProtectionInput(): any; private _description?; get description(): string; set description(value: string); resetDescription(): void; get descriptionInput(): string; private _diskEncryptionKeyId?; get diskEncryptionKeyId(): string; set diskEncryptionKeyId(value: string); resetDiskEncryptionKeyId(): void; get diskEncryptionKeyIdInput(): string; private _diskSizeAutoscaling; get diskSizeAutoscaling(): MdbMysqlClusterV2DiskSizeAutoscalingOutputReference; putDiskSizeAutoscaling(value: MdbMysqlClusterV2DiskSizeAutoscaling): void; resetDiskSizeAutoscaling(): void; get diskSizeAutoscalingInput(): any; private _environment?; get environment(): string; set environment(value: string); get environmentInput(): string; private _folderId?; get folderId(): string; set folderId(value: string); resetFolderId(): void; get folderIdInput(): string; private _hosts; get hosts(): MdbMysqlClusterV2HostsMap; putHosts(value: { [key: string]: MdbMysqlClusterV2Hosts; } | cdktf.IResolvable): void; get hostsInput(): any; get id(): any; private _labels?; get labels(): { [key: string]: string; }; set labels(value: { [key: string]: string; }); resetLabels(): void; get labelsInput(): { [key: string]: string; }; private _maintenanceWindow; get maintenanceWindow(): MdbMysqlClusterV2MaintenanceWindowOutputReference; putMaintenanceWindow(value: MdbMysqlClusterV2MaintenanceWindow): void; resetMaintenanceWindow(): void; get maintenanceWindowInput(): any; private _mysqlConfig?; get mysqlConfig(): { [key: string]: string; }; set mysqlConfig(value: { [key: string]: string; }); resetMysqlConfig(): void; get mysqlConfigInput(): { [key: string]: string; }; private _name?; get name(): string; set name(value: string); get nameInput(): string; private _networkId?; get networkId(): string; set networkId(value: string); get networkIdInput(): string; private _performanceDiagnostics; get performanceDiagnostics(): MdbMysqlClusterV2PerformanceDiagnosticsOutputReference; putPerformanceDiagnostics(value: MdbMysqlClusterV2PerformanceDiagnostics): void; resetPerformanceDiagnostics(): void; get performanceDiagnosticsInput(): any; private _restore; get restore(): MdbMysqlClusterV2RestoreOutputReference; putRestore(value: MdbMysqlClusterV2Restore): void; resetRestore(): void; get restoreInput(): any; private _securityGroupIds?; get securityGroupIds(): string[]; set securityGroupIds(value: string[]); resetSecurityGroupIds(): void; get securityGroupIdsInput(): string[]; private _timeouts; get timeouts(): MdbMysqlClusterV2TimeoutsOutputReference; putTimeouts(value: MdbMysqlClusterV2Timeouts): void; resetTimeouts(): void; get timeoutsInput(): any; private _version?; get version(): string; set version(value: string); get versionInput(): string; private _resources; get resources(): MdbMysqlClusterV2ResourcesOutputReference; putResources(value: MdbMysqlClusterV2Resources): void; get resourcesInput(): any; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }