import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
 * AWS::Neptune::DBParameterGroup creates a new DB parameter group. This type can be declared in a template and referenced in the DBParameterGroupName parameter of AWS::Neptune::DBInstance
 */
export declare class DbParameterGroup extends pulumi.CustomResource {
    /**
     * Get an existing DbParameterGroup 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): DbParameterGroup;
    /**
     * Returns true if the given object is an instance of DbParameterGroup.  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 DbParameterGroup;
    /**
     * Provides the customer-specified description for this DB parameter group.
     */
    readonly description: pulumi.Output<string>;
    /**
     * Must be `neptune1` for engine versions prior to 1.2.0.0, or `neptune1.2` for engine version `1.2.0.0` and higher.
     */
    readonly family: pulumi.Output<string>;
    /**
     * Provides the name of the DB parameter group.
     */
    readonly name: pulumi.Output<string | undefined>;
    /**
     * The parameters to set for this DB parameter group.
     *
     * The parameters are expressed as a JSON object consisting of key-value pairs.
     *
     * Changes to dynamic parameters are applied immediately. During an update, if you have static parameters (whether they were changed or not), it triggers AWS CloudFormation to reboot the associated DB instance without failover.
     *
     * Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Neptune::DBParameterGroup` for more information about the expected schema for this property.
     */
    readonly parameters: pulumi.Output<any>;
    /**
     * An optional array of key-value pairs to apply to this DB parameter group.
     */
    readonly tags: pulumi.Output<outputs.Tag[] | undefined>;
    /**
     * Create a DbParameterGroup 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: DbParameterGroupArgs, opts?: pulumi.CustomResourceOptions);
}
/**
 * The set of arguments for constructing a DbParameterGroup resource.
 */
export interface DbParameterGroupArgs {
    /**
     * Provides the customer-specified description for this DB parameter group.
     */
    description: pulumi.Input<string>;
    /**
     * Must be `neptune1` for engine versions prior to 1.2.0.0, or `neptune1.2` for engine version `1.2.0.0` and higher.
     */
    family: pulumi.Input<string>;
    /**
     * Provides the name of the DB parameter group.
     */
    name?: pulumi.Input<string>;
    /**
     * The parameters to set for this DB parameter group.
     *
     * The parameters are expressed as a JSON object consisting of key-value pairs.
     *
     * Changes to dynamic parameters are applied immediately. During an update, if you have static parameters (whether they were changed or not), it triggers AWS CloudFormation to reboot the associated DB instance without failover.
     *
     * Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Neptune::DBParameterGroup` for more information about the expected schema for this property.
     */
    parameters: any;
    /**
     * An optional array of key-value pairs to apply to this DB parameter group.
     */
    tags?: pulumi.Input<pulumi.Input<inputs.TagArgs>[]>;
}
