import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface PostgresqlInstanceHaConfigConfig extends cdktf.TerraformMetaArguments { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/postgresql_instance_ha_config#id PostgresqlInstanceHaConfig#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; /** * instance id. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/postgresql_instance_ha_config#instance_id PostgresqlInstanceHaConfig#instance_id} */ readonly instanceId: string; /** * Maximum latency of highly available backup machines. When the delay time of the backup node is less than or equal to this value, and the amount of delay data of the backup node is less than or equal to MaxStandbyLatency, the primary node can be switched. Unit: s; Parameter range: [5, 10]. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/postgresql_instance_ha_config#max_standby_lag PostgresqlInstanceHaConfig#max_standby_lag} */ readonly maxStandbyLag: number; /** * Maximum latency data volume for highly available backup machines. When the delay data amount of the backup node is less than or equal to this value, and the delay time of the backup node is less than or equal to MaxStandbyLag, it can switch to the main node. Unit: byte; Parameter range: [1073741824, 322122547200]. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/postgresql_instance_ha_config#max_standby_latency PostgresqlInstanceHaConfig#max_standby_latency} */ readonly maxStandbyLatency: number; /** * Maximum delay time for synchronous backup. When the delay time of the standby machine is less than or equal to this value, and the amount of delay data of the standby machine is less than or equal to MaxSyncStandbyLatency, then the standby machine adopts synchronous replication; Otherwise, adopt asynchronous replication. This parameter value is valid for instances where SyncMode is set to Semi sync. When a semi synchronous instance prohibits degradation to asynchronous replication, MaxSyncStandbyLatency and MaxSyncStandbyLag are not set. When semi synchronous instances allow degenerate asynchronous replication, PostgreSQL version 9 instances must have MaxSyncStandbyLatency set and MaxSyncStandbyLag not set, while PostgreSQL version 10 and above instances must have MaxSyncStandbyLatency and MaxSyncStandbyLag set. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/postgresql_instance_ha_config#max_sync_standby_lag PostgresqlInstanceHaConfig#max_sync_standby_lag} */ readonly maxSyncStandbyLag?: number; /** * Maximum latency data for synchronous backup. When the amount of data delayed by the backup machine is less than or equal to this value, and the delay time of the backup machine is less than or equal to MaxSyncStandbyLag, then the backup machine adopts synchronous replication; Otherwise, adopt asynchronous replication. This parameter value is valid for instances where SyncMode is set to Semi sync. When a semi synchronous instance prohibits degradation to asynchronous replication, MaxSyncStandbyLatency and MaxSyncStandbyLag are not set. When semi synchronous instances allow degenerate asynchronous replication, PostgreSQL version 9 instances must have MaxSyncStandbyLatency set and MaxSyncStandbyLag not set, while PostgreSQL version 10 and above instances must have MaxSyncStandbyLatency and MaxSyncStandbyLag set. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/postgresql_instance_ha_config#max_sync_standby_latency PostgresqlInstanceHaConfig#max_sync_standby_latency} */ readonly maxSyncStandbyLatency?: number; /** * Master slave synchronization method, Semi-sync: Semi synchronous; Async: Asynchronous. Main instance default value: Semi-sync, Read-only instance default value: Async. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/postgresql_instance_ha_config#sync_mode PostgresqlInstanceHaConfig#sync_mode} */ readonly syncMode: string; } /** * Represents a {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/postgresql_instance_ha_config tencentcloud_postgresql_instance_ha_config} */ export declare class PostgresqlInstanceHaConfig extends cdktf.TerraformResource { static readonly tfResourceType = "tencentcloud_postgresql_instance_ha_config"; /** * Generates CDKTF code for importing a PostgresqlInstanceHaConfig 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 PostgresqlInstanceHaConfig to import * @param importFromId The id of the existing PostgresqlInstanceHaConfig that should be imported. Refer to the {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/postgresql_instance_ha_config#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the PostgresqlInstanceHaConfig 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_instance_ha_config tencentcloud_postgresql_instance_ha_config} 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 PostgresqlInstanceHaConfigConfig */ constructor(scope: Construct, id: string, config: PostgresqlInstanceHaConfigConfig); private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _instanceId?; get instanceId(): string; set instanceId(value: string); get instanceIdInput(): string; private _maxStandbyLag?; get maxStandbyLag(): number; set maxStandbyLag(value: number); get maxStandbyLagInput(): number; private _maxStandbyLatency?; get maxStandbyLatency(): number; set maxStandbyLatency(value: number); get maxStandbyLatencyInput(): number; private _maxSyncStandbyLag?; get maxSyncStandbyLag(): number; set maxSyncStandbyLag(value: number); resetMaxSyncStandbyLag(): void; get maxSyncStandbyLagInput(): number; private _maxSyncStandbyLatency?; get maxSyncStandbyLatency(): number; set maxSyncStandbyLatency(value: number); resetMaxSyncStandbyLatency(): void; get maxSyncStandbyLatencyInput(): number; private _syncMode?; get syncMode(): string; set syncMode(value: string); get syncModeInput(): string; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }