@cdktf/provider-azurerm
Version:
Prebuilt azurerm Provider for Terraform CDK (cdktf)
408 lines (407 loc) • 21 kB
TypeScript
/**
* Copyright (c) HashiCorp, Inc.
* SPDX-License-Identifier: MPL-2.0
*/
import { Construct } from 'constructs';
import * as cdktf from 'cdktf';
export interface PostgresqlServerConfig extends cdktf.TerraformMetaArguments {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/postgresql_server#administrator_login PostgresqlServer#administrator_login}
*/
readonly administratorLogin?: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/postgresql_server#administrator_login_password PostgresqlServer#administrator_login_password}
*/
readonly administratorLoginPassword?: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/postgresql_server#auto_grow_enabled PostgresqlServer#auto_grow_enabled}
*/
readonly autoGrowEnabled?: boolean | cdktf.IResolvable;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/postgresql_server#backup_retention_days PostgresqlServer#backup_retention_days}
*/
readonly backupRetentionDays?: number;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/postgresql_server#create_mode PostgresqlServer#create_mode}
*/
readonly createMode?: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/postgresql_server#creation_source_server_id PostgresqlServer#creation_source_server_id}
*/
readonly creationSourceServerId?: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/postgresql_server#geo_redundant_backup_enabled PostgresqlServer#geo_redundant_backup_enabled}
*/
readonly geoRedundantBackupEnabled?: boolean | cdktf.IResolvable;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/postgresql_server#id PostgresqlServer#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;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/postgresql_server#infrastructure_encryption_enabled PostgresqlServer#infrastructure_encryption_enabled}
*/
readonly infrastructureEncryptionEnabled?: boolean | cdktf.IResolvable;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/postgresql_server#location PostgresqlServer#location}
*/
readonly location: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/postgresql_server#name PostgresqlServer#name}
*/
readonly name: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/postgresql_server#public_network_access_enabled PostgresqlServer#public_network_access_enabled}
*/
readonly publicNetworkAccessEnabled?: boolean | cdktf.IResolvable;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/postgresql_server#resource_group_name PostgresqlServer#resource_group_name}
*/
readonly resourceGroupName: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/postgresql_server#restore_point_in_time PostgresqlServer#restore_point_in_time}
*/
readonly restorePointInTime?: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/postgresql_server#sku_name PostgresqlServer#sku_name}
*/
readonly skuName: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/postgresql_server#ssl_enforcement_enabled PostgresqlServer#ssl_enforcement_enabled}
*/
readonly sslEnforcementEnabled: boolean | cdktf.IResolvable;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/postgresql_server#ssl_minimal_tls_version_enforced PostgresqlServer#ssl_minimal_tls_version_enforced}
*/
readonly sslMinimalTlsVersionEnforced?: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/postgresql_server#storage_mb PostgresqlServer#storage_mb}
*/
readonly storageMb?: number;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/postgresql_server#tags PostgresqlServer#tags}
*/
readonly tags?: {
[key: string]: string;
};
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/postgresql_server#version PostgresqlServer#version}
*/
readonly version: string;
/**
* identity block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/postgresql_server#identity PostgresqlServer#identity}
*/
readonly identity?: PostgresqlServerIdentity;
/**
* threat_detection_policy block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/postgresql_server#threat_detection_policy PostgresqlServer#threat_detection_policy}
*/
readonly threatDetectionPolicy?: PostgresqlServerThreatDetectionPolicy;
/**
* timeouts block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/postgresql_server#timeouts PostgresqlServer#timeouts}
*/
readonly timeouts?: PostgresqlServerTimeouts;
}
export interface PostgresqlServerIdentity {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/postgresql_server#type PostgresqlServer#type}
*/
readonly type: string;
}
export declare function postgresqlServerIdentityToTerraform(struct?: PostgresqlServerIdentityOutputReference | PostgresqlServerIdentity): any;
export declare function postgresqlServerIdentityToHclTerraform(struct?: PostgresqlServerIdentityOutputReference | PostgresqlServerIdentity): any;
export declare class PostgresqlServerIdentityOutputReference 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(): PostgresqlServerIdentity | undefined;
set internalValue(value: PostgresqlServerIdentity | undefined);
get principalId(): string;
get tenantId(): string;
private _type?;
get type(): string;
set type(value: string);
get typeInput(): string | undefined;
}
export interface PostgresqlServerThreatDetectionPolicy {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/postgresql_server#disabled_alerts PostgresqlServer#disabled_alerts}
*/
readonly disabledAlerts?: string[];
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/postgresql_server#email_account_admins PostgresqlServer#email_account_admins}
*/
readonly emailAccountAdmins?: boolean | cdktf.IResolvable;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/postgresql_server#email_addresses PostgresqlServer#email_addresses}
*/
readonly emailAddresses?: string[];
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/postgresql_server#enabled PostgresqlServer#enabled}
*/
readonly enabled?: boolean | cdktf.IResolvable;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/postgresql_server#retention_days PostgresqlServer#retention_days}
*/
readonly retentionDays?: number;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/postgresql_server#storage_account_access_key PostgresqlServer#storage_account_access_key}
*/
readonly storageAccountAccessKey?: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/postgresql_server#storage_endpoint PostgresqlServer#storage_endpoint}
*/
readonly storageEndpoint?: string;
}
export declare function postgresqlServerThreatDetectionPolicyToTerraform(struct?: PostgresqlServerThreatDetectionPolicyOutputReference | PostgresqlServerThreatDetectionPolicy): any;
export declare function postgresqlServerThreatDetectionPolicyToHclTerraform(struct?: PostgresqlServerThreatDetectionPolicyOutputReference | PostgresqlServerThreatDetectionPolicy): any;
export declare class PostgresqlServerThreatDetectionPolicyOutputReference 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(): PostgresqlServerThreatDetectionPolicy | undefined;
set internalValue(value: PostgresqlServerThreatDetectionPolicy | undefined);
private _disabledAlerts?;
get disabledAlerts(): string[];
set disabledAlerts(value: string[]);
resetDisabledAlerts(): void;
get disabledAlertsInput(): string[] | undefined;
private _emailAccountAdmins?;
get emailAccountAdmins(): boolean | cdktf.IResolvable;
set emailAccountAdmins(value: boolean | cdktf.IResolvable);
resetEmailAccountAdmins(): void;
get emailAccountAdminsInput(): boolean | cdktf.IResolvable | undefined;
private _emailAddresses?;
get emailAddresses(): string[];
set emailAddresses(value: string[]);
resetEmailAddresses(): void;
get emailAddressesInput(): string[] | undefined;
private _enabled?;
get enabled(): boolean | cdktf.IResolvable;
set enabled(value: boolean | cdktf.IResolvable);
resetEnabled(): void;
get enabledInput(): boolean | cdktf.IResolvable | undefined;
private _retentionDays?;
get retentionDays(): number;
set retentionDays(value: number);
resetRetentionDays(): void;
get retentionDaysInput(): number | undefined;
private _storageAccountAccessKey?;
get storageAccountAccessKey(): string;
set storageAccountAccessKey(value: string);
resetStorageAccountAccessKey(): void;
get storageAccountAccessKeyInput(): string | undefined;
private _storageEndpoint?;
get storageEndpoint(): string;
set storageEndpoint(value: string);
resetStorageEndpoint(): void;
get storageEndpointInput(): string | undefined;
}
export interface PostgresqlServerTimeouts {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/postgresql_server#create PostgresqlServer#create}
*/
readonly create?: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/postgresql_server#delete PostgresqlServer#delete}
*/
readonly delete?: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/postgresql_server#read PostgresqlServer#read}
*/
readonly read?: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/postgresql_server#update PostgresqlServer#update}
*/
readonly update?: string;
}
export declare function postgresqlServerTimeoutsToTerraform(struct?: PostgresqlServerTimeouts | cdktf.IResolvable): any;
export declare function postgresqlServerTimeoutsToHclTerraform(struct?: PostgresqlServerTimeouts | cdktf.IResolvable): any;
export declare class PostgresqlServerTimeoutsOutputReference 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(): PostgresqlServerTimeouts | cdktf.IResolvable | undefined;
set internalValue(value: PostgresqlServerTimeouts | 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 _read?;
get read(): string;
set read(value: string);
resetRead(): void;
get readInput(): 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/azurerm/3.116.0/docs/resources/postgresql_server azurerm_postgresql_server}
*/
export declare class PostgresqlServer extends cdktf.TerraformResource {
static readonly tfResourceType = "azurerm_postgresql_server";
/**
* Generates CDKTF code for importing a PostgresqlServer 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 PostgresqlServer to import
* @param importFromId The id of the existing PostgresqlServer that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/postgresql_server#import import section} in the documentation of this resource for the id to use
* @param provider? Optional instance of the provider where the PostgresqlServer 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/azurerm/3.116.0/docs/resources/postgresql_server azurerm_postgresql_server} 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 PostgresqlServerConfig
*/
constructor(scope: Construct, id: string, config: PostgresqlServerConfig);
private _administratorLogin?;
get administratorLogin(): string;
set administratorLogin(value: string);
resetAdministratorLogin(): void;
get administratorLoginInput(): string | undefined;
private _administratorLoginPassword?;
get administratorLoginPassword(): string;
set administratorLoginPassword(value: string);
resetAdministratorLoginPassword(): void;
get administratorLoginPasswordInput(): string | undefined;
private _autoGrowEnabled?;
get autoGrowEnabled(): boolean | cdktf.IResolvable;
set autoGrowEnabled(value: boolean | cdktf.IResolvable);
resetAutoGrowEnabled(): void;
get autoGrowEnabledInput(): boolean | cdktf.IResolvable | undefined;
private _backupRetentionDays?;
get backupRetentionDays(): number;
set backupRetentionDays(value: number);
resetBackupRetentionDays(): void;
get backupRetentionDaysInput(): number | undefined;
private _createMode?;
get createMode(): string;
set createMode(value: string);
resetCreateMode(): void;
get createModeInput(): string | undefined;
private _creationSourceServerId?;
get creationSourceServerId(): string;
set creationSourceServerId(value: string);
resetCreationSourceServerId(): void;
get creationSourceServerIdInput(): string | undefined;
get fqdn(): string;
private _geoRedundantBackupEnabled?;
get geoRedundantBackupEnabled(): boolean | cdktf.IResolvable;
set geoRedundantBackupEnabled(value: boolean | cdktf.IResolvable);
resetGeoRedundantBackupEnabled(): void;
get geoRedundantBackupEnabledInput(): boolean | cdktf.IResolvable | undefined;
private _id?;
get id(): string;
set id(value: string);
resetId(): void;
get idInput(): string | undefined;
private _infrastructureEncryptionEnabled?;
get infrastructureEncryptionEnabled(): boolean | cdktf.IResolvable;
set infrastructureEncryptionEnabled(value: boolean | cdktf.IResolvable);
resetInfrastructureEncryptionEnabled(): void;
get infrastructureEncryptionEnabledInput(): boolean | cdktf.IResolvable | undefined;
private _location?;
get location(): string;
set location(value: string);
get locationInput(): string | undefined;
private _name?;
get name(): string;
set name(value: string);
get nameInput(): string | undefined;
private _publicNetworkAccessEnabled?;
get publicNetworkAccessEnabled(): boolean | cdktf.IResolvable;
set publicNetworkAccessEnabled(value: boolean | cdktf.IResolvable);
resetPublicNetworkAccessEnabled(): void;
get publicNetworkAccessEnabledInput(): boolean | cdktf.IResolvable | undefined;
private _resourceGroupName?;
get resourceGroupName(): string;
set resourceGroupName(value: string);
get resourceGroupNameInput(): string | undefined;
private _restorePointInTime?;
get restorePointInTime(): string;
set restorePointInTime(value: string);
resetRestorePointInTime(): void;
get restorePointInTimeInput(): string | undefined;
private _skuName?;
get skuName(): string;
set skuName(value: string);
get skuNameInput(): string | undefined;
private _sslEnforcementEnabled?;
get sslEnforcementEnabled(): boolean | cdktf.IResolvable;
set sslEnforcementEnabled(value: boolean | cdktf.IResolvable);
get sslEnforcementEnabledInput(): boolean | cdktf.IResolvable | undefined;
private _sslMinimalTlsVersionEnforced?;
get sslMinimalTlsVersionEnforced(): string;
set sslMinimalTlsVersionEnforced(value: string);
resetSslMinimalTlsVersionEnforced(): void;
get sslMinimalTlsVersionEnforcedInput(): string | undefined;
private _storageMb?;
get storageMb(): number;
set storageMb(value: number);
resetStorageMb(): void;
get storageMbInput(): number | undefined;
private _tags?;
get tags(): {
[key: string]: string;
};
set tags(value: {
[key: string]: string;
});
resetTags(): void;
get tagsInput(): {
[key: string]: string;
} | undefined;
private _version?;
get version(): string;
set version(value: string);
get versionInput(): string | undefined;
private _identity;
get identity(): PostgresqlServerIdentityOutputReference;
putIdentity(value: PostgresqlServerIdentity): void;
resetIdentity(): void;
get identityInput(): PostgresqlServerIdentity | undefined;
private _threatDetectionPolicy;
get threatDetectionPolicy(): PostgresqlServerThreatDetectionPolicyOutputReference;
putThreatDetectionPolicy(value: PostgresqlServerThreatDetectionPolicy): void;
resetThreatDetectionPolicy(): void;
get threatDetectionPolicyInput(): PostgresqlServerThreatDetectionPolicy | undefined;
private _timeouts;
get timeouts(): PostgresqlServerTimeoutsOutputReference;
putTimeouts(value: PostgresqlServerTimeouts): void;
resetTimeouts(): void;
get timeoutsInput(): cdktf.IResolvable | PostgresqlServerTimeouts | undefined;
protected synthesizeAttributes(): {
[name: string]: any;
};
protected synthesizeHclAttributes(): {
[name: string]: any;
};
}