import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
 * The AWS::Neptune::DBInstance resource creates an Amazon Neptune DB instance.
 */
export declare class DbInstance extends pulumi.CustomResource {
    /**
     * Get an existing DbInstance resource's state with the given name, ID, and optional extra
     * properties used to qualify the lookup.
     *
     * @param name The _unique_ name of the resulting resource.
     * @param id The _unique_ provider ID of the resource to lookup.
     * @param opts Optional settings to control the behavior of the CustomResource.
     */
    static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): DbInstance;
    /**
     * Returns true if the given object is an instance of DbInstance.  This is designed to work even
     * when multiple copies of the Pulumi SDK have been loaded into the same process.
     */
    static isInstance(obj: any): obj is DbInstance;
    /**
     * Indicates that major version upgrades are allowed. Changing this parameter doesn't result in an outage and the change is asynchronously applied as soon as possible. This parameter must be set to true when specifying a value for the EngineVersion parameter that is a different major version than the DB instance's current version.
     */
    readonly allowMajorVersionUpgrade: pulumi.Output<boolean | undefined>;
    /**
     * Indicates that minor version patches are applied automatically.
     *
     * When updating this property, some interruptions may occur.
     */
    readonly autoMinorVersionUpgrade: pulumi.Output<boolean | undefined>;
    /**
     * Specifies the name of the Availability Zone the DB instance is located in.
     */
    readonly availabilityZone: pulumi.Output<string | undefined>;
    /**
     * If the DB instance is a member of a DB cluster, contains the name of the DB cluster that the DB instance is a member of.
     */
    readonly dbClusterIdentifier: pulumi.Output<string | undefined>;
    /**
     * Contains the name of the compute and memory capacity class of the DB instance.
     *
     * If you update this property, some interruptions may occur.
     */
    readonly dbInstanceClass: pulumi.Output<string>;
    /**
     * Contains a user-supplied database identifier. This identifier is the unique key that identifies a DB instance.
     */
    readonly dbInstanceIdentifier: pulumi.Output<string | undefined>;
    /**
     * The name of an existing DB parameter group or a reference to an AWS::Neptune::DBParameterGroup resource created in the template. If any of the data members of the referenced parameter group are changed during an update, the DB instance might need to be restarted, which causes some interruption. If the parameter group contains static parameters, whether they were changed or not, an update triggers a reboot.
     */
    readonly dbParameterGroupName: pulumi.Output<string | undefined>;
    /**
     * This parameter is not supported.
     *
     * `AWS::Neptune::DBInstance` does not support restoring from snapshots.
     *
     * `AWS::Neptune::DBCluster` does support restoring from snapshots.
     */
    readonly dbSnapshotIdentifier: pulumi.Output<string | undefined>;
    /**
     * A DB subnet group to associate with the DB instance. If you update this value, the new subnet group must be a subnet group in a new virtual private cloud (VPC).
     */
    readonly dbSubnetGroupName: pulumi.Output<string | undefined>;
    /**
     * The connection endpoint for the database. For example: `mystack-mydb-1apw1j4phylrk.cg034hpkmmjt.us-east-2.rds.amazonaws.com`.
     */
    readonly endpoint: pulumi.Output<string>;
    /**
     * The port number on which the database accepts connections. For example: `8182`.
     */
    readonly port: pulumi.Output<string>;
    /**
     * Specifies the weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).
     */
    readonly preferredMaintenanceWindow: pulumi.Output<string | undefined>;
    /**
     * An arbitrary set of tags (key-value pairs) for this DB instance.
     */
    readonly tags: pulumi.Output<outputs.Tag[] | undefined>;
    /**
     * Create a DbInstance resource with the given unique name, arguments, and options.
     *
     * @param name The _unique_ name of the resource.
     * @param args The arguments to use to populate this resource's properties.
     * @param opts A bag of options that control this resource's behavior.
     */
    constructor(name: string, args: DbInstanceArgs, opts?: pulumi.CustomResourceOptions);
}
/**
 * The set of arguments for constructing a DbInstance resource.
 */
export interface DbInstanceArgs {
    /**
     * Indicates that major version upgrades are allowed. Changing this parameter doesn't result in an outage and the change is asynchronously applied as soon as possible. This parameter must be set to true when specifying a value for the EngineVersion parameter that is a different major version than the DB instance's current version.
     */
    allowMajorVersionUpgrade?: pulumi.Input<boolean>;
    /**
     * Indicates that minor version patches are applied automatically.
     *
     * When updating this property, some interruptions may occur.
     */
    autoMinorVersionUpgrade?: pulumi.Input<boolean>;
    /**
     * Specifies the name of the Availability Zone the DB instance is located in.
     */
    availabilityZone?: pulumi.Input<string>;
    /**
     * If the DB instance is a member of a DB cluster, contains the name of the DB cluster that the DB instance is a member of.
     */
    dbClusterIdentifier?: pulumi.Input<string>;
    /**
     * Contains the name of the compute and memory capacity class of the DB instance.
     *
     * If you update this property, some interruptions may occur.
     */
    dbInstanceClass: pulumi.Input<string>;
    /**
     * Contains a user-supplied database identifier. This identifier is the unique key that identifies a DB instance.
     */
    dbInstanceIdentifier?: pulumi.Input<string>;
    /**
     * The name of an existing DB parameter group or a reference to an AWS::Neptune::DBParameterGroup resource created in the template. If any of the data members of the referenced parameter group are changed during an update, the DB instance might need to be restarted, which causes some interruption. If the parameter group contains static parameters, whether they were changed or not, an update triggers a reboot.
     */
    dbParameterGroupName?: pulumi.Input<string>;
    /**
     * This parameter is not supported.
     *
     * `AWS::Neptune::DBInstance` does not support restoring from snapshots.
     *
     * `AWS::Neptune::DBCluster` does support restoring from snapshots.
     */
    dbSnapshotIdentifier?: pulumi.Input<string>;
    /**
     * A DB subnet group to associate with the DB instance. If you update this value, the new subnet group must be a subnet group in a new virtual private cloud (VPC).
     */
    dbSubnetGroupName?: pulumi.Input<string>;
    /**
     * Specifies the weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).
     */
    preferredMaintenanceWindow?: pulumi.Input<string>;
    /**
     * An arbitrary set of tags (key-value pairs) for this DB instance.
     */
    tags?: pulumi.Input<pulumi.Input<inputs.TagArgs>[]>;
}
