<filename>sdk/dotnet/Rds/Inputs/InstanceBabelfishConfigArgs.cs// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***

using System;
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Threading.Tasks;
using Pulumi.Serialization;

namespace Pulumi.AliCloud.Rds.Inputs
{

    public sealed class InstanceBabelfishConfigArgs : global::Pulumi.ResourceArgs
    {
        /// <summary>
        /// specifies whether to enable the Babelfish for the instance. If you set this parameter to **true**, you enable Babelfish for the instance. If you leave this parameter empty, you disable Babelfish for the instance.
        /// </summary>
        [Input("babelfishEnabled", required: true)]
        public Input<string> BabelfishEnabled { get; set; } = null!;

        /// <summary>
        /// The password of the administrator account. The password must contain at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters. It must be 8 to 32 characters in length. The password can contain any of the following characters:! @ # $ % ^ &amp; * () _ + - =
        /// </summary>
        [Input("masterUserPassword", required: true)]
        public Input<string> MasterUserPassword { get; set; } = null!;

        /// <summary>
        /// The name of the administrator account. The name can contain lowercase letters, digits, and underscores (_). It must start with a letter and end with a letter or digit. It can be up to 63 characters in length and cannot start with pg.
        /// </summary>
        [Input("masterUsername", required: true)]
        public Input<string> MasterUsername { get; set; } = null!;

        /// <summary>
        /// The migration mode of the instance. Valid values: **single-db** and **multi-db**.
        /// </summary>
        [Input("migrationMode", required: true)]
        public Input<string> MigrationMode { get; set; } = null!;

        public InstanceBabelfishConfigArgs()
        {
        }
        public static new InstanceBabelfishConfigArgs Empty => new InstanceBabelfishConfigArgs();
    }
}
