import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface MongodbInstanceTransparentDataEncryptionConfig extends cdktf.TerraformMetaArguments { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mongodb_instance_transparent_data_encryption#id MongodbInstanceTransparentDataEncryption#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, for example: cmgo-p8vn ***. Currently supported general versions include: 4.4 and 5.0, but the cloud disk version is not currently supported. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mongodb_instance_transparent_data_encryption#instance_id MongodbInstanceTransparentDataEncryption#instance_id} */ readonly instanceId: string; /** * Key ID. If this parameter is not set and the specific key ID is not specified, Tencent Cloud will automatically generate the key and this key will be beyond the control of Terraform. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mongodb_instance_transparent_data_encryption#key_id MongodbInstanceTransparentDataEncryption#key_id} */ readonly keyId?: string; /** * The region where the Key Management Service (KMS) serves, such as ap-shanghai. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mongodb_instance_transparent_data_encryption#kms_region MongodbInstanceTransparentDataEncryption#kms_region} */ readonly kmsRegion: string; } export interface MongodbInstanceTransparentDataEncryptionKeyInfoListStruct { } export declare function mongodbInstanceTransparentDataEncryptionKeyInfoListStructToTerraform(struct?: MongodbInstanceTransparentDataEncryptionKeyInfoListStruct): any; export declare function mongodbInstanceTransparentDataEncryptionKeyInfoListStructToHclTerraform(struct?: MongodbInstanceTransparentDataEncryptionKeyInfoListStruct): any; export declare class MongodbInstanceTransparentDataEncryptionKeyInfoListStructOutputReference 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(): MongodbInstanceTransparentDataEncryptionKeyInfoListStruct | undefined; set internalValue(value: MongodbInstanceTransparentDataEncryptionKeyInfoListStruct | undefined); get createTime(): any; get keyId(): any; get keyName(): any; get keyOrigin(): any; get keyUsage(): any; get status(): any; } export declare class MongodbInstanceTransparentDataEncryptionKeyInfoListStructList 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): MongodbInstanceTransparentDataEncryptionKeyInfoListStructOutputReference; } /** * Represents a {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mongodb_instance_transparent_data_encryption tencentcloud_mongodb_instance_transparent_data_encryption} */ export declare class MongodbInstanceTransparentDataEncryption extends cdktf.TerraformResource { static readonly tfResourceType = "tencentcloud_mongodb_instance_transparent_data_encryption"; /** * Generates CDKTF code for importing a MongodbInstanceTransparentDataEncryption 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 MongodbInstanceTransparentDataEncryption to import * @param importFromId The id of the existing MongodbInstanceTransparentDataEncryption that should be imported. Refer to the {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mongodb_instance_transparent_data_encryption#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the MongodbInstanceTransparentDataEncryption 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/mongodb_instance_transparent_data_encryption tencentcloud_mongodb_instance_transparent_data_encryption} 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 MongodbInstanceTransparentDataEncryptionConfig */ constructor(scope: Construct, id: string, config: MongodbInstanceTransparentDataEncryptionConfig); 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 _keyId?; get keyId(): string; set keyId(value: string); resetKeyId(): void; get keyIdInput(): string; private _keyInfoList; get keyInfoList(): MongodbInstanceTransparentDataEncryptionKeyInfoListStructList; private _kmsRegion?; get kmsRegion(): string; set kmsRegion(value: string); get kmsRegionInput(): string; get transparentDataEncryptionStatus(): any; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }