import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface DatabaseUserConfig extends cdktf.TerraformMetaArguments { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vultr/vultr/2.28.0/docs/resources/database_user#database_id DatabaseUser#database_id} */ readonly databaseId: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vultr/vultr/2.28.0/docs/resources/database_user#encryption DatabaseUser#encryption} */ readonly encryption?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vultr/vultr/2.28.0/docs/resources/database_user#id DatabaseUser#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/vultr/vultr/2.28.0/docs/resources/database_user#password DatabaseUser#password} */ readonly password?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vultr/vultr/2.28.0/docs/resources/database_user#permission DatabaseUser#permission} */ readonly permission?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vultr/vultr/2.28.0/docs/resources/database_user#username DatabaseUser#username} */ readonly username: string; /** * access_control block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vultr/vultr/2.28.0/docs/resources/database_user#access_control DatabaseUser#access_control} */ readonly accessControl?: DatabaseUserAccessControl; } export interface DatabaseUserAccessControl { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vultr/vultr/2.28.0/docs/resources/database_user#acl_categories DatabaseUser#acl_categories} */ readonly aclCategories: string[]; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vultr/vultr/2.28.0/docs/resources/database_user#acl_channels DatabaseUser#acl_channels} */ readonly aclChannels: string[]; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vultr/vultr/2.28.0/docs/resources/database_user#acl_commands DatabaseUser#acl_commands} */ readonly aclCommands: string[]; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vultr/vultr/2.28.0/docs/resources/database_user#acl_keys DatabaseUser#acl_keys} */ readonly aclKeys: string[]; } export declare function databaseUserAccessControlToTerraform(struct?: DatabaseUserAccessControlOutputReference | DatabaseUserAccessControl): any; export declare function databaseUserAccessControlToHclTerraform(struct?: DatabaseUserAccessControlOutputReference | DatabaseUserAccessControl): any; export declare class DatabaseUserAccessControlOutputReference 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(): DatabaseUserAccessControl | undefined; set internalValue(value: DatabaseUserAccessControl | undefined); private _aclCategories?; get aclCategories(): string[]; set aclCategories(value: string[]); get aclCategoriesInput(): string[]; private _aclChannels?; get aclChannels(): string[]; set aclChannels(value: string[]); get aclChannelsInput(): string[]; private _aclCommands?; get aclCommands(): string[]; set aclCommands(value: string[]); get aclCommandsInput(): string[]; private _aclKeys?; get aclKeys(): string[]; set aclKeys(value: string[]); get aclKeysInput(): string[]; } /** * Represents a {@link https://registry.terraform.io/providers/vultr/vultr/2.28.0/docs/resources/database_user vultr_database_user} */ export declare class DatabaseUser extends cdktf.TerraformResource { static readonly tfResourceType = "vultr_database_user"; /** * Generates CDKTF code for importing a DatabaseUser 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 DatabaseUser to import * @param importFromId The id of the existing DatabaseUser that should be imported. Refer to the {@link https://registry.terraform.io/providers/vultr/vultr/2.28.0/docs/resources/database_user#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the DatabaseUser 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/vultr/vultr/2.28.0/docs/resources/database_user vultr_database_user} 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 DatabaseUserConfig */ constructor(scope: Construct, id: string, config: DatabaseUserConfig); get accessCert(): any; get accessKey(): any; private _databaseId?; get databaseId(): string; set databaseId(value: string); get databaseIdInput(): string; private _encryption?; get encryption(): string; set encryption(value: string); resetEncryption(): void; get encryptionInput(): string; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _password?; get password(): string; set password(value: string); resetPassword(): void; get passwordInput(): string; private _permission?; get permission(): string; set permission(value: string); resetPermission(): void; get permissionInput(): string; private _username?; get username(): string; set username(value: string); get usernameInput(): string; private _accessControl; get accessControl(): DatabaseUserAccessControlOutputReference; putAccessControl(value: DatabaseUserAccessControl): void; resetAccessControl(): void; get accessControlInput(): DatabaseUserAccessControl; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }