UNPKG

@cdktf/provider-google

Version:

Prebuilt google Provider for Terraform CDK (cdktf)

704 lines (703 loc) 37.3 kB
/** * Copyright (c) HashiCorp, Inc. * SPDX-License-Identifier: MPL-2.0 */ import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface RedisClusterConfig extends cdktf.TerraformMetaArguments { /** * Optional. The authorization mode of the Redis cluster. If not provided, auth feature is disabled for the cluster. Default value: "AUTH_MODE_DISABLED" Possible values: ["AUTH_MODE_UNSPECIFIED", "AUTH_MODE_IAM_AUTH", "AUTH_MODE_DISABLED"] * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.4.0/docs/resources/redis_cluster#authorization_mode RedisCluster#authorization_mode} */ readonly authorizationMode?: string; /** * Optional. Indicates if the cluster is deletion protected or not. * If the value if set to true, any delete cluster operation will fail. * Default value is true. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.4.0/docs/resources/redis_cluster#deletion_protection_enabled RedisCluster#deletion_protection_enabled} */ readonly deletionProtectionEnabled?: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.4.0/docs/resources/redis_cluster#id RedisCluster#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; /** * Unique name of the resource in this scope including project and location using the form: * projects/{projectId}/locations/{locationId}/clusters/{clusterId} * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.4.0/docs/resources/redis_cluster#name RedisCluster#name} */ readonly name?: string; /** * The nodeType for the Redis cluster. * If not provided, REDIS_HIGHMEM_MEDIUM will be used as default Possible values: ["REDIS_SHARED_CORE_NANO", "REDIS_HIGHMEM_MEDIUM", "REDIS_HIGHMEM_XLARGE", "REDIS_STANDARD_SMALL"] * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.4.0/docs/resources/redis_cluster#node_type RedisCluster#node_type} */ readonly nodeType?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.4.0/docs/resources/redis_cluster#project RedisCluster#project} */ readonly project?: string; /** * Configure Redis Cluster behavior using a subset of native Redis configuration parameters. * Please check Memorystore documentation for the list of supported parameters: * https://cloud.google.com/memorystore/docs/cluster/supported-instance-configurations * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.4.0/docs/resources/redis_cluster#redis_configs RedisCluster#redis_configs} */ readonly redisConfigs?: { [key: string]: string; }; /** * The name of the region of the Redis cluster. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.4.0/docs/resources/redis_cluster#region RedisCluster#region} */ readonly region?: string; /** * Optional. The number of replica nodes per shard. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.4.0/docs/resources/redis_cluster#replica_count RedisCluster#replica_count} */ readonly replicaCount?: number; /** * Required. Number of shards for the Redis cluster. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.4.0/docs/resources/redis_cluster#shard_count RedisCluster#shard_count} */ readonly shardCount: number; /** * Optional. The in-transit encryption for the Redis cluster. * If not provided, encryption is disabled for the cluster. Default value: "TRANSIT_ENCRYPTION_MODE_DISABLED" Possible values: ["TRANSIT_ENCRYPTION_MODE_UNSPECIFIED", "TRANSIT_ENCRYPTION_MODE_DISABLED", "TRANSIT_ENCRYPTION_MODE_SERVER_AUTHENTICATION"] * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.4.0/docs/resources/redis_cluster#transit_encryption_mode RedisCluster#transit_encryption_mode} */ readonly transitEncryptionMode?: string; /** * maintenance_policy block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.4.0/docs/resources/redis_cluster#maintenance_policy RedisCluster#maintenance_policy} */ readonly maintenancePolicy?: RedisClusterMaintenancePolicy; /** * psc_configs block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.4.0/docs/resources/redis_cluster#psc_configs RedisCluster#psc_configs} */ readonly pscConfigs: RedisClusterPscConfigs[] | cdktf.IResolvable; /** * timeouts block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.4.0/docs/resources/redis_cluster#timeouts RedisCluster#timeouts} */ readonly timeouts?: RedisClusterTimeouts; /** * zone_distribution_config block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.4.0/docs/resources/redis_cluster#zone_distribution_config RedisCluster#zone_distribution_config} */ readonly zoneDistributionConfig?: RedisClusterZoneDistributionConfig; } export interface RedisClusterDiscoveryEndpointsPscConfig { } export declare function redisClusterDiscoveryEndpointsPscConfigToTerraform(struct?: RedisClusterDiscoveryEndpointsPscConfig): any; export declare function redisClusterDiscoveryEndpointsPscConfigToHclTerraform(struct?: RedisClusterDiscoveryEndpointsPscConfig): any; export declare class RedisClusterDiscoveryEndpointsPscConfigOutputReference 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(): RedisClusterDiscoveryEndpointsPscConfig | undefined; set internalValue(value: RedisClusterDiscoveryEndpointsPscConfig | undefined); get network(): string; } export declare class RedisClusterDiscoveryEndpointsPscConfigList 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): RedisClusterDiscoveryEndpointsPscConfigOutputReference; } export interface RedisClusterDiscoveryEndpoints { } export declare function redisClusterDiscoveryEndpointsToTerraform(struct?: RedisClusterDiscoveryEndpoints): any; export declare function redisClusterDiscoveryEndpointsToHclTerraform(struct?: RedisClusterDiscoveryEndpoints): any; export declare class RedisClusterDiscoveryEndpointsOutputReference 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(): RedisClusterDiscoveryEndpoints | undefined; set internalValue(value: RedisClusterDiscoveryEndpoints | undefined); get address(): string; get port(): number; private _pscConfig; get pscConfig(): RedisClusterDiscoveryEndpointsPscConfigList; } export declare class RedisClusterDiscoveryEndpointsList 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): RedisClusterDiscoveryEndpointsOutputReference; } export interface RedisClusterMaintenanceSchedule { } export declare function redisClusterMaintenanceScheduleToTerraform(struct?: RedisClusterMaintenanceSchedule): any; export declare function redisClusterMaintenanceScheduleToHclTerraform(struct?: RedisClusterMaintenanceSchedule): any; export declare class RedisClusterMaintenanceScheduleOutputReference 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(): RedisClusterMaintenanceSchedule | undefined; set internalValue(value: RedisClusterMaintenanceSchedule | undefined); get endTime(): string; get scheduleDeadlineTime(): string; get startTime(): string; } export declare class RedisClusterMaintenanceScheduleList 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): RedisClusterMaintenanceScheduleOutputReference; } export interface RedisClusterPscConnections { } export declare function redisClusterPscConnectionsToTerraform(struct?: RedisClusterPscConnections): any; export declare function redisClusterPscConnectionsToHclTerraform(struct?: RedisClusterPscConnections): any; export declare class RedisClusterPscConnectionsOutputReference 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(): RedisClusterPscConnections | undefined; set internalValue(value: RedisClusterPscConnections | undefined); get address(): string; get forwardingRule(): string; get network(): string; get projectId(): string; get pscConnectionId(): string; } export declare class RedisClusterPscConnectionsList 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): RedisClusterPscConnectionsOutputReference; } export interface RedisClusterStateInfoUpdateInfo { } export declare function redisClusterStateInfoUpdateInfoToTerraform(struct?: RedisClusterStateInfoUpdateInfo): any; export declare function redisClusterStateInfoUpdateInfoToHclTerraform(struct?: RedisClusterStateInfoUpdateInfo): any; export declare class RedisClusterStateInfoUpdateInfoOutputReference 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(): RedisClusterStateInfoUpdateInfo | undefined; set internalValue(value: RedisClusterStateInfoUpdateInfo | undefined); get targetReplicaCount(): number; get targetShardCount(): number; } export declare class RedisClusterStateInfoUpdateInfoList 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): RedisClusterStateInfoUpdateInfoOutputReference; } export interface RedisClusterStateInfo { } export declare function redisClusterStateInfoToTerraform(struct?: RedisClusterStateInfo): any; export declare function redisClusterStateInfoToHclTerraform(struct?: RedisClusterStateInfo): any; export declare class RedisClusterStateInfoOutputReference 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(): RedisClusterStateInfo | undefined; set internalValue(value: RedisClusterStateInfo | undefined); private _updateInfo; get updateInfo(): RedisClusterStateInfoUpdateInfoList; } export declare class RedisClusterStateInfoList 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): RedisClusterStateInfoOutputReference; } export interface RedisClusterMaintenancePolicyWeeklyMaintenanceWindowStartTime { /** * Hours of day in 24 hour format. Should be from 0 to 23. * An API may choose to allow the value "24:00:00" for scenarios like business closing time. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.4.0/docs/resources/redis_cluster#hours RedisCluster#hours} */ readonly hours?: number; /** * Minutes of hour of day. Must be from 0 to 59. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.4.0/docs/resources/redis_cluster#minutes RedisCluster#minutes} */ readonly minutes?: number; /** * Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.4.0/docs/resources/redis_cluster#nanos RedisCluster#nanos} */ readonly nanos?: number; /** * Seconds of minutes of the time. Must normally be from 0 to 59. * An API may allow the value 60 if it allows leap-seconds. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.4.0/docs/resources/redis_cluster#seconds RedisCluster#seconds} */ readonly seconds?: number; } export declare function redisClusterMaintenancePolicyWeeklyMaintenanceWindowStartTimeToTerraform(struct?: RedisClusterMaintenancePolicyWeeklyMaintenanceWindowStartTimeOutputReference | RedisClusterMaintenancePolicyWeeklyMaintenanceWindowStartTime): any; export declare function redisClusterMaintenancePolicyWeeklyMaintenanceWindowStartTimeToHclTerraform(struct?: RedisClusterMaintenancePolicyWeeklyMaintenanceWindowStartTimeOutputReference | RedisClusterMaintenancePolicyWeeklyMaintenanceWindowStartTime): any; export declare class RedisClusterMaintenancePolicyWeeklyMaintenanceWindowStartTimeOutputReference 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(): RedisClusterMaintenancePolicyWeeklyMaintenanceWindowStartTime | undefined; set internalValue(value: RedisClusterMaintenancePolicyWeeklyMaintenanceWindowStartTime | undefined); private _hours?; get hours(): number; set hours(value: number); resetHours(): void; get hoursInput(): number | undefined; private _minutes?; get minutes(): number; set minutes(value: number); resetMinutes(): void; get minutesInput(): number | undefined; private _nanos?; get nanos(): number; set nanos(value: number); resetNanos(): void; get nanosInput(): number | undefined; private _seconds?; get seconds(): number; set seconds(value: number); resetSeconds(): void; get secondsInput(): number | undefined; } export interface RedisClusterMaintenancePolicyWeeklyMaintenanceWindow { /** * Required. The day of week that maintenance updates occur. * * - DAY_OF_WEEK_UNSPECIFIED: The day of the week is unspecified. * - MONDAY: Monday * - TUESDAY: Tuesday * - WEDNESDAY: Wednesday * - THURSDAY: Thursday * - FRIDAY: Friday * - SATURDAY: Saturday * - SUNDAY: Sunday Possible values: ["DAY_OF_WEEK_UNSPECIFIED", "MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY", "SATURDAY", "SUNDAY"] * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.4.0/docs/resources/redis_cluster#day RedisCluster#day} */ readonly day: string; /** * start_time block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.4.0/docs/resources/redis_cluster#start_time RedisCluster#start_time} */ readonly startTime: RedisClusterMaintenancePolicyWeeklyMaintenanceWindowStartTime; } export declare function redisClusterMaintenancePolicyWeeklyMaintenanceWindowToTerraform(struct?: RedisClusterMaintenancePolicyWeeklyMaintenanceWindow | cdktf.IResolvable): any; export declare function redisClusterMaintenancePolicyWeeklyMaintenanceWindowToHclTerraform(struct?: RedisClusterMaintenancePolicyWeeklyMaintenanceWindow | cdktf.IResolvable): any; export declare class RedisClusterMaintenancePolicyWeeklyMaintenanceWindowOutputReference 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(): RedisClusterMaintenancePolicyWeeklyMaintenanceWindow | cdktf.IResolvable | undefined; set internalValue(value: RedisClusterMaintenancePolicyWeeklyMaintenanceWindow | cdktf.IResolvable | undefined); private _day?; get day(): string; set day(value: string); get dayInput(): string | undefined; get duration(): string; private _startTime; get startTime(): RedisClusterMaintenancePolicyWeeklyMaintenanceWindowStartTimeOutputReference; putStartTime(value: RedisClusterMaintenancePolicyWeeklyMaintenanceWindowStartTime): void; get startTimeInput(): RedisClusterMaintenancePolicyWeeklyMaintenanceWindowStartTime | undefined; } export declare class RedisClusterMaintenancePolicyWeeklyMaintenanceWindowList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: RedisClusterMaintenancePolicyWeeklyMaintenanceWindow[] | 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): RedisClusterMaintenancePolicyWeeklyMaintenanceWindowOutputReference; } export interface RedisClusterMaintenancePolicy { /** * weekly_maintenance_window block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.4.0/docs/resources/redis_cluster#weekly_maintenance_window RedisCluster#weekly_maintenance_window} */ readonly weeklyMaintenanceWindow?: RedisClusterMaintenancePolicyWeeklyMaintenanceWindow[] | cdktf.IResolvable; } export declare function redisClusterMaintenancePolicyToTerraform(struct?: RedisClusterMaintenancePolicyOutputReference | RedisClusterMaintenancePolicy): any; export declare function redisClusterMaintenancePolicyToHclTerraform(struct?: RedisClusterMaintenancePolicyOutputReference | RedisClusterMaintenancePolicy): any; export declare class RedisClusterMaintenancePolicyOutputReference 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(): RedisClusterMaintenancePolicy | undefined; set internalValue(value: RedisClusterMaintenancePolicy | undefined); get createTime(): string; get updateTime(): string; private _weeklyMaintenanceWindow; get weeklyMaintenanceWindow(): RedisClusterMaintenancePolicyWeeklyMaintenanceWindowList; putWeeklyMaintenanceWindow(value: RedisClusterMaintenancePolicyWeeklyMaintenanceWindow[] | cdktf.IResolvable): void; resetWeeklyMaintenanceWindow(): void; get weeklyMaintenanceWindowInput(): cdktf.IResolvable | RedisClusterMaintenancePolicyWeeklyMaintenanceWindow[] | undefined; } export interface RedisClusterPscConfigs { /** * Required. The consumer network where the network address of * the discovery endpoint will be reserved, in the form of * projects/{network_project_id_or_number}/global/networks/{network_id}. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.4.0/docs/resources/redis_cluster#network RedisCluster#network} */ readonly network: string; } export declare function redisClusterPscConfigsToTerraform(struct?: RedisClusterPscConfigs | cdktf.IResolvable): any; export declare function redisClusterPscConfigsToHclTerraform(struct?: RedisClusterPscConfigs | cdktf.IResolvable): any; export declare class RedisClusterPscConfigsOutputReference 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(): RedisClusterPscConfigs | cdktf.IResolvable | undefined; set internalValue(value: RedisClusterPscConfigs | cdktf.IResolvable | undefined); private _network?; get network(): string; set network(value: string); get networkInput(): string | undefined; } export declare class RedisClusterPscConfigsList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: RedisClusterPscConfigs[] | 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): RedisClusterPscConfigsOutputReference; } export interface RedisClusterTimeouts { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.4.0/docs/resources/redis_cluster#create RedisCluster#create} */ readonly create?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.4.0/docs/resources/redis_cluster#delete RedisCluster#delete} */ readonly delete?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.4.0/docs/resources/redis_cluster#update RedisCluster#update} */ readonly update?: string; } export declare function redisClusterTimeoutsToTerraform(struct?: RedisClusterTimeouts | cdktf.IResolvable): any; export declare function redisClusterTimeoutsToHclTerraform(struct?: RedisClusterTimeouts | cdktf.IResolvable): any; export declare class RedisClusterTimeoutsOutputReference 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(): RedisClusterTimeouts | cdktf.IResolvable | undefined; set internalValue(value: RedisClusterTimeouts | 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; } export interface RedisClusterZoneDistributionConfig { /** * Immutable. The mode for zone distribution for Memorystore Redis cluster. * If not provided, MULTI_ZONE will be used as default Possible values: ["MULTI_ZONE", "SINGLE_ZONE"] * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.4.0/docs/resources/redis_cluster#mode RedisCluster#mode} */ readonly mode?: string; /** * Immutable. The zone for single zone Memorystore Redis cluster. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.4.0/docs/resources/redis_cluster#zone RedisCluster#zone} */ readonly zone?: string; } export declare function redisClusterZoneDistributionConfigToTerraform(struct?: RedisClusterZoneDistributionConfigOutputReference | RedisClusterZoneDistributionConfig): any; export declare function redisClusterZoneDistributionConfigToHclTerraform(struct?: RedisClusterZoneDistributionConfigOutputReference | RedisClusterZoneDistributionConfig): any; export declare class RedisClusterZoneDistributionConfigOutputReference 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(): RedisClusterZoneDistributionConfig | undefined; set internalValue(value: RedisClusterZoneDistributionConfig | undefined); private _mode?; get mode(): string; set mode(value: string); resetMode(): void; get modeInput(): string | undefined; private _zone?; get zone(): string; set zone(value: string); resetZone(): void; get zoneInput(): string | undefined; } /** * Represents a {@link https://registry.terraform.io/providers/hashicorp/google/6.4.0/docs/resources/redis_cluster google_redis_cluster} */ export declare class RedisCluster extends cdktf.TerraformResource { static readonly tfResourceType = "google_redis_cluster"; /** * Generates CDKTF code for importing a RedisCluster 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 RedisCluster to import * @param importFromId The id of the existing RedisCluster that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/google/6.4.0/docs/resources/redis_cluster#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the RedisCluster 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.4.0/docs/resources/redis_cluster google_redis_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 RedisClusterConfig */ constructor(scope: Construct, id: string, config: RedisClusterConfig); private _authorizationMode?; get authorizationMode(): string; set authorizationMode(value: string); resetAuthorizationMode(): void; get authorizationModeInput(): string | undefined; get createTime(): string; private _deletionProtectionEnabled?; get deletionProtectionEnabled(): boolean | cdktf.IResolvable; set deletionProtectionEnabled(value: boolean | cdktf.IResolvable); resetDeletionProtectionEnabled(): void; get deletionProtectionEnabledInput(): boolean | cdktf.IResolvable | undefined; private _discoveryEndpoints; get discoveryEndpoints(): RedisClusterDiscoveryEndpointsList; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string | undefined; private _maintenanceSchedule; get maintenanceSchedule(): RedisClusterMaintenanceScheduleList; private _name?; get name(): string; set name(value: string); resetName(): void; get nameInput(): string | undefined; private _nodeType?; get nodeType(): string; set nodeType(value: string); resetNodeType(): void; get nodeTypeInput(): string | undefined; get preciseSizeGb(): number; private _project?; get project(): string; set project(value: string); resetProject(): void; get projectInput(): string | undefined; private _pscConnections; get pscConnections(): RedisClusterPscConnectionsList; private _redisConfigs?; get redisConfigs(): { [key: string]: string; }; set redisConfigs(value: { [key: string]: string; }); resetRedisConfigs(): void; get redisConfigsInput(): { [key: string]: string; } | undefined; private _region?; get region(): string; set region(value: string); resetRegion(): void; get regionInput(): string | undefined; private _replicaCount?; get replicaCount(): number; set replicaCount(value: number); resetReplicaCount(): void; get replicaCountInput(): number | undefined; private _shardCount?; get shardCount(): number; set shardCount(value: number); get shardCountInput(): number | undefined; get sizeGb(): number; get state(): string; private _stateInfo; get stateInfo(): RedisClusterStateInfoList; private _transitEncryptionMode?; get transitEncryptionMode(): string; set transitEncryptionMode(value: string); resetTransitEncryptionMode(): void; get transitEncryptionModeInput(): string | undefined; get uid(): string; private _maintenancePolicy; get maintenancePolicy(): RedisClusterMaintenancePolicyOutputReference; putMaintenancePolicy(value: RedisClusterMaintenancePolicy): void; resetMaintenancePolicy(): void; get maintenancePolicyInput(): RedisClusterMaintenancePolicy | undefined; private _pscConfigs; get pscConfigs(): RedisClusterPscConfigsList; putPscConfigs(value: RedisClusterPscConfigs[] | cdktf.IResolvable): void; get pscConfigsInput(): cdktf.IResolvable | RedisClusterPscConfigs[] | undefined; private _timeouts; get timeouts(): RedisClusterTimeoutsOutputReference; putTimeouts(value: RedisClusterTimeouts): void; resetTimeouts(): void; get timeoutsInput(): cdktf.IResolvable | RedisClusterTimeouts | undefined; private _zoneDistributionConfig; get zoneDistributionConfig(): RedisClusterZoneDistributionConfigOutputReference; putZoneDistributionConfig(value: RedisClusterZoneDistributionConfig): void; resetZoneDistributionConfig(): void; get zoneDistributionConfigInput(): RedisClusterZoneDistributionConfig | undefined; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }