import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface MongodbInstanceAccountConfig extends cdktf.TerraformMetaArguments { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mongodb_instance_account#id MongodbInstanceAccount#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, the format is: cmgo-9d0p6umb.Same as the instance ID displayed in the cloud database console page. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mongodb_instance_account#instance_id MongodbInstanceAccount#instance_id} */ readonly instanceId: string; /** * The password corresponding to the mongouser account. mongouser is the system default account, which is the password set when creating an instance. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mongodb_instance_account#mongo_user_password MongodbInstanceAccount#mongo_user_password} */ readonly mongoUserPassword?: string; /** * New account password. Password complexity requirements are as follows: character length range [8,32]. Contains at least letters, numbers and special characters (exclamation point!, at@, pound sign #, percent sign %, caret ^, asterisk *, parentheses (), underscore _). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mongodb_instance_account#password MongodbInstanceAccount#password} */ readonly password?: string; /** * Account remarks. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mongodb_instance_account#user_desc MongodbInstanceAccount#user_desc} */ readonly userDesc?: string; /** * The new account name. Its format requirements are as follows: character range [1,32]. Characters in the range of [A,Z], [a,z], [1,9] as well as underscore _ and dash - can be input. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mongodb_instance_account#user_name MongodbInstanceAccount#user_name} */ readonly userName: string; /** * auth_role block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mongodb_instance_account#auth_role MongodbInstanceAccount#auth_role} */ readonly authRole?: MongodbInstanceAccountAuthRole[] | cdktf.IResolvable; } export interface MongodbInstanceAccountAuthRole { /** * Permission information of the current account. 0: No permission. 1: read-only. 2: Write only. 3: Read and write. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mongodb_instance_account#mask MongodbInstanceAccount#mask} */ readonly mask: number; /** * Refers to the name of the database with the current account permissions.*: Indicates all databases. db.name: Indicates the database of a specific name. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mongodb_instance_account#namespace MongodbInstanceAccount#namespace} */ readonly namespace: string; } export declare function mongodbInstanceAccountAuthRoleToTerraform(struct?: MongodbInstanceAccountAuthRole | cdktf.IResolvable): any; export declare function mongodbInstanceAccountAuthRoleToHclTerraform(struct?: MongodbInstanceAccountAuthRole | cdktf.IResolvable): any; export declare class MongodbInstanceAccountAuthRoleOutputReference 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(): MongodbInstanceAccountAuthRole | cdktf.IResolvable | undefined; set internalValue(value: MongodbInstanceAccountAuthRole | cdktf.IResolvable | undefined); private _mask?; get mask(): number; set mask(value: number); get maskInput(): number; private _namespace?; get namespace(): string; set namespace(value: string); get namespaceInput(): string; } export declare class MongodbInstanceAccountAuthRoleList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: MongodbInstanceAccountAuthRole[] | 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): MongodbInstanceAccountAuthRoleOutputReference; } /** * Represents a {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mongodb_instance_account tencentcloud_mongodb_instance_account} */ export declare class MongodbInstanceAccount extends cdktf.TerraformResource { static readonly tfResourceType = "tencentcloud_mongodb_instance_account"; /** * Generates CDKTF code for importing a MongodbInstanceAccount 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 MongodbInstanceAccount to import * @param importFromId The id of the existing MongodbInstanceAccount that should be imported. Refer to the {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mongodb_instance_account#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the MongodbInstanceAccount 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_account tencentcloud_mongodb_instance_account} 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 MongodbInstanceAccountConfig */ constructor(scope: Construct, id: string, config: MongodbInstanceAccountConfig); 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 _mongoUserPassword?; get mongoUserPassword(): string; set mongoUserPassword(value: string); resetMongoUserPassword(): void; get mongoUserPasswordInput(): string; private _password?; get password(): string; set password(value: string); resetPassword(): void; get passwordInput(): string; private _userDesc?; get userDesc(): string; set userDesc(value: string); resetUserDesc(): void; get userDescInput(): string; private _userName?; get userName(): string; set userName(value: string); get userNameInput(): string; private _authRole; get authRole(): MongodbInstanceAccountAuthRoleList; putAuthRole(value: MongodbInstanceAccountAuthRole[] | cdktf.IResolvable): void; resetAuthRole(): void; get authRoleInput(): any; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }