import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
 * Definition of AWS::RedshiftServerless::Workgroup Resource Type
 */
export declare class Workgroup extends pulumi.CustomResource {
    /**
     * Get an existing Workgroup 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): Workgroup;
    /**
     * Returns true if the given object is an instance of Workgroup.  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 Workgroup;
    /**
     * The base compute capacity of the workgroup in Redshift Processing Units (RPUs).
     */
    readonly baseCapacity: pulumi.Output<number | undefined>;
    /**
     * A list of parameters to set for finer control over a database. Available options are datestyle, enable_user_activity_logging, query_group, search_path, max_query_execution_time, and require_ssl.
     */
    readonly configParameters: pulumi.Output<outputs.redshiftserverless.WorkgroupConfigParameter[] | undefined>;
    /**
     * The value that specifies whether to enable enhanced virtual private cloud (VPC) routing, which forces Amazon Redshift Serverless to route traffic through your VPC.
     */
    readonly enhancedVpcRouting: pulumi.Output<boolean | undefined>;
    /**
     * The max compute capacity of the workgroup in Redshift Processing Units (RPUs).
     */
    readonly maxCapacity: pulumi.Output<number | undefined>;
    /**
     * The namespace the workgroup is associated with.
     */
    readonly namespaceName: pulumi.Output<string | undefined>;
    /**
     * The custom port to use when connecting to a workgroup. Valid port ranges are 5431-5455 and 8191-8215. The default is 5439.
     */
    readonly port: pulumi.Output<number | undefined>;
    /**
     * A property that represents the price performance target settings for the workgroup.
     */
    readonly pricePerformanceTarget: pulumi.Output<outputs.redshiftserverless.WorkgroupPerformanceTarget | undefined>;
    /**
     * A value that specifies whether the workgroup can be accessible from a public network.
     */
    readonly publiclyAccessible: pulumi.Output<boolean | undefined>;
    /**
     * The recovery point id to restore from.
     */
    readonly recoveryPointId: pulumi.Output<string | undefined>;
    /**
     * A list of security group IDs to associate with the workgroup.
     */
    readonly securityGroupIds: pulumi.Output<string[] | undefined>;
    /**
     * The Amazon Resource Name (ARN) of the snapshot to restore from.
     */
    readonly snapshotArn: pulumi.Output<string | undefined>;
    /**
     * The snapshot name to restore from.
     */
    readonly snapshotName: pulumi.Output<string | undefined>;
    /**
     * The Amazon Web Services account that owns the snapshot.
     */
    readonly snapshotOwnerAccount: pulumi.Output<string | undefined>;
    /**
     * A list of subnet IDs the workgroup is associated with.
     */
    readonly subnetIds: pulumi.Output<string[] | undefined>;
    /**
     * The map of the key-value pairs used to tag the workgroup.
     */
    readonly tags: pulumi.Output<outputs.Tag[] | undefined>;
    /**
     * An optional parameter for the name of the track for the workgroup. If you don't provide a track name, the workgroup is assigned to the current track.
     */
    readonly trackName: pulumi.Output<string | undefined>;
    /**
     * Definition for workgroup resource
     */
    readonly workgroup: pulumi.Output<outputs.redshiftserverless.Workgroup | undefined>;
    /**
     * The name of the workgroup.
     */
    readonly workgroupName: pulumi.Output<string>;
    /**
     * Create a Workgroup 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?: WorkgroupArgs, opts?: pulumi.CustomResourceOptions);
}
/**
 * The set of arguments for constructing a Workgroup resource.
 */
export interface WorkgroupArgs {
    /**
     * The base compute capacity of the workgroup in Redshift Processing Units (RPUs).
     */
    baseCapacity?: pulumi.Input<number>;
    /**
     * A list of parameters to set for finer control over a database. Available options are datestyle, enable_user_activity_logging, query_group, search_path, max_query_execution_time, and require_ssl.
     */
    configParameters?: pulumi.Input<pulumi.Input<inputs.redshiftserverless.WorkgroupConfigParameterArgs>[]>;
    /**
     * The value that specifies whether to enable enhanced virtual private cloud (VPC) routing, which forces Amazon Redshift Serverless to route traffic through your VPC.
     */
    enhancedVpcRouting?: pulumi.Input<boolean>;
    /**
     * The max compute capacity of the workgroup in Redshift Processing Units (RPUs).
     */
    maxCapacity?: pulumi.Input<number>;
    /**
     * The namespace the workgroup is associated with.
     */
    namespaceName?: pulumi.Input<string>;
    /**
     * The custom port to use when connecting to a workgroup. Valid port ranges are 5431-5455 and 8191-8215. The default is 5439.
     */
    port?: pulumi.Input<number>;
    /**
     * A property that represents the price performance target settings for the workgroup.
     */
    pricePerformanceTarget?: pulumi.Input<inputs.redshiftserverless.WorkgroupPerformanceTargetArgs>;
    /**
     * A value that specifies whether the workgroup can be accessible from a public network.
     */
    publiclyAccessible?: pulumi.Input<boolean>;
    /**
     * The recovery point id to restore from.
     */
    recoveryPointId?: pulumi.Input<string>;
    /**
     * A list of security group IDs to associate with the workgroup.
     */
    securityGroupIds?: pulumi.Input<pulumi.Input<string>[]>;
    /**
     * The Amazon Resource Name (ARN) of the snapshot to restore from.
     */
    snapshotArn?: pulumi.Input<string>;
    /**
     * The snapshot name to restore from.
     */
    snapshotName?: pulumi.Input<string>;
    /**
     * The Amazon Web Services account that owns the snapshot.
     */
    snapshotOwnerAccount?: pulumi.Input<string>;
    /**
     * A list of subnet IDs the workgroup is associated with.
     */
    subnetIds?: pulumi.Input<pulumi.Input<string>[]>;
    /**
     * The map of the key-value pairs used to tag the workgroup.
     */
    tags?: pulumi.Input<pulumi.Input<inputs.TagArgs>[]>;
    /**
     * An optional parameter for the name of the track for the workgroup. If you don't provide a track name, the workgroup is assigned to the current track.
     */
    trackName?: pulumi.Input<string>;
    /**
     * Definition for workgroup resource
     */
    workgroup?: pulumi.Input<inputs.redshiftserverless.WorkgroupArgs>;
    /**
     * The name of the workgroup.
     */
    workgroupName?: pulumi.Input<string>;
}
