import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface PostgresqlReadonlyGroupConfig extends cdktf.TerraformMetaArguments { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/postgresql_readonly_group#id PostgresqlReadonlyGroup#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; /** * Primary instance ID. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/postgresql_readonly_group#master_db_instance_id PostgresqlReadonlyGroup#master_db_instance_id} */ readonly masterDbInstanceId: string; /** * Delay threshold in ms. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/postgresql_readonly_group#max_replay_lag PostgresqlReadonlyGroup#max_replay_lag} */ readonly maxReplayLag: number; /** * Delayed log size threshold in MB. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/postgresql_readonly_group#max_replay_latency PostgresqlReadonlyGroup#max_replay_latency} */ readonly maxReplayLatency: number; /** * The minimum number of read-only replicas that must be retained in an RO group. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/postgresql_readonly_group#min_delay_eliminate_reserve PostgresqlReadonlyGroup#min_delay_eliminate_reserve} */ readonly minDelayEliminateReserve: number; /** * RO group name. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/postgresql_readonly_group#name PostgresqlReadonlyGroup#name} */ readonly name: string; /** * Project ID. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/postgresql_readonly_group#project_id PostgresqlReadonlyGroup#project_id} */ readonly projectId: number; /** * Whether to remove a read-only replica from an RO group if the delay between the read-only replica and the primary instance exceeds the threshold. Valid values: 0 (no), 1 (yes). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/postgresql_readonly_group#replay_lag_eliminate PostgresqlReadonlyGroup#replay_lag_eliminate} */ readonly replayLagEliminate: number; /** * Whether to remove a read-only replica from an RO group if the sync log size difference between the read-only replica and the primary instance exceeds the threshold. Valid values: 0 (no), 1 (yes). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/postgresql_readonly_group#replay_latency_eliminate PostgresqlReadonlyGroup#replay_latency_eliminate} */ readonly replayLatencyEliminate: number; /** * ID of security group. If both vpc_id and subnet_id are not set, this argument should not be set either. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/postgresql_readonly_group#security_groups_ids PostgresqlReadonlyGroup#security_groups_ids} */ readonly securityGroupsIds?: string[]; /** * VPC subnet ID. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/postgresql_readonly_group#subnet_id PostgresqlReadonlyGroup#subnet_id} */ readonly subnetId: string; /** * VPC ID. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/postgresql_readonly_group#vpc_id PostgresqlReadonlyGroup#vpc_id} */ readonly vpcId: string; } export interface PostgresqlReadonlyGroupNetInfoListStruct { } export declare function postgresqlReadonlyGroupNetInfoListStructToTerraform(struct?: PostgresqlReadonlyGroupNetInfoListStruct): any; export declare function postgresqlReadonlyGroupNetInfoListStructToHclTerraform(struct?: PostgresqlReadonlyGroupNetInfoListStruct): any; export declare class PostgresqlReadonlyGroupNetInfoListStructOutputReference 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(): PostgresqlReadonlyGroupNetInfoListStruct | undefined; set internalValue(value: PostgresqlReadonlyGroupNetInfoListStruct | undefined); get ip(): any; get port(): any; } export declare class PostgresqlReadonlyGroupNetInfoListStructList 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): PostgresqlReadonlyGroupNetInfoListStructOutputReference; } /** * Represents a {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/postgresql_readonly_group tencentcloud_postgresql_readonly_group} */ export declare class PostgresqlReadonlyGroup extends cdktf.TerraformResource { static readonly tfResourceType = "tencentcloud_postgresql_readonly_group"; /** * Generates CDKTF code for importing a PostgresqlReadonlyGroup 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 PostgresqlReadonlyGroup to import * @param importFromId The id of the existing PostgresqlReadonlyGroup that should be imported. Refer to the {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/postgresql_readonly_group#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the PostgresqlReadonlyGroup 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/tencentcloudstack/tencentcloud/1.82.49/docs/resources/postgresql_readonly_group tencentcloud_postgresql_readonly_group} 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 PostgresqlReadonlyGroupConfig */ constructor(scope: Construct, id: string, config: PostgresqlReadonlyGroupConfig); get createTime(): any; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _masterDbInstanceId?; get masterDbInstanceId(): string; set masterDbInstanceId(value: string); get masterDbInstanceIdInput(): string; private _maxReplayLag?; get maxReplayLag(): number; set maxReplayLag(value: number); get maxReplayLagInput(): number; private _maxReplayLatency?; get maxReplayLatency(): number; set maxReplayLatency(value: number); get maxReplayLatencyInput(): number; private _minDelayEliminateReserve?; get minDelayEliminateReserve(): number; set minDelayEliminateReserve(value: number); get minDelayEliminateReserveInput(): number; private _name?; get name(): string; set name(value: string); get nameInput(): string; private _netInfoList; get netInfoList(): PostgresqlReadonlyGroupNetInfoListStructList; private _projectId?; get projectId(): number; set projectId(value: number); get projectIdInput(): number; private _replayLagEliminate?; get replayLagEliminate(): number; set replayLagEliminate(value: number); get replayLagEliminateInput(): number; private _replayLatencyEliminate?; get replayLatencyEliminate(): number; set replayLatencyEliminate(value: number); get replayLatencyEliminateInput(): number; private _securityGroupsIds?; get securityGroupsIds(): string[]; set securityGroupsIds(value: string[]); resetSecurityGroupsIds(): void; get securityGroupsIdsInput(): string[]; private _subnetId?; get subnetId(): string; set subnetId(value: string); get subnetIdInput(): string; private _vpcId?; get vpcId(): string; set vpcId(value: string); get vpcIdInput(): string; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }