import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
import * as enums from "../types/enums";
/**
 * An environment created within the EVS service
 */
export declare class Environment extends pulumi.CustomResource {
    /**
     * Get an existing Environment 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): Environment;
    /**
     * Returns true if the given object is an instance of Environment.  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 Environment;
    /**
     * A check on the environment to identify instance health and VMware VCF licensing issues. For example:
     *
     * `{ "checks": [ { "type": "KEY_REUSE", "result": "PASSED" }, { "type": "KEY_COVERAGE", "result": "PASSED" }, { "type": "REACHABILITY", "result": "PASSED" }, { "type": "HOST_COUNT", "result": "PASSED" } ] }`
     */
    readonly checks: pulumi.Output<outputs.evs.EnvironmentCheck[]>;
    /**
     * The connectivity configuration for the environment. Amazon EVS requires that you specify two route server peer IDs. During environment creation, the route server endpoints peer with the NSX uplink VLAN for connectivity to the NSX overlay network.
     */
    readonly connectivityInfo: pulumi.Output<outputs.evs.ConnectivityInfoProperties>;
    /**
     * The date and time that the environment was created. For example: `1749081600.000` .
     */
    readonly createdAt: pulumi.Output<string>;
    /**
     * The VCF credentials that are stored as Amazon EVS managed secrets in AWS Secrets Manager. Amazon EVS stores credentials that are needed to install vCenter Server, NSX, and SDDC Manager. For example:
     *
     * `{ [ { "secretArn": "arn:aws:secretsmanager:us-east-1:000000000000:secret:evs!env-1234567890_vCenterAdmin-MnTMEi" }, { "secretArn": "arn:aws:secretsmanager:us-east-1:000000000000:secret:evs!env-1234567890_vCenterRoot-87VyCF" }, { "secretArn": "arn:aws:secretsmanager:us-east-1:000000000000:secret:evs!env-1234567890_NSXRoot-SR3k43" }, { "secretArn": "arn:aws:secretsmanager:us-east-1:000000000000:secret:evs!env-1234567890_NSXAdmin-L5LUiD" }, { "secretArn": "arn:aws:secretsmanager:us-east-1:000000000000:secret:evs!env-1234567890_NSXAudit-Q2oW46" }, { "secretArn": "arn:aws:secretsmanager:us-east-1:000000000000:secret:evs!env-1234567890_SDDCManagerRoot-bFulOq" }, { "secretArn": "arn:aws:secretsmanager:us-east-1:000000000000:secret:evs!env-1234567890_SDDCManagerVCF-Ec3gES" }, { "secretArn": "arn:aws:secretsmanager:us-east-1:000000000000:secret:evs!env-1234567890_SDDCManagerAdmin-JMTAAb" } ] }`
     */
    readonly credentials: pulumi.Output<outputs.evs.EnvironmentSecret[]>;
    /**
     * The Amazon Resource Name (ARN) that is associated with the environment. For example: `arn:aws:evs:us-east-1:000000000000:environment/env-1234567890` .
     */
    readonly environmentArn: pulumi.Output<string>;
    /**
     * The unique ID for the environment. For example: `env-1234567890` .
     */
    readonly environmentId: pulumi.Output<string>;
    /**
     * The name of an EVS environment
     */
    readonly environmentName: pulumi.Output<string | undefined>;
    /**
     * The state of an environment. For example: `CREATED` .
     */
    readonly environmentState: pulumi.Output<enums.evs.EnvironmentState>;
    /**
     * The initial hosts for environment only required upon creation. Modification after creation will have no effect
     */
    readonly hosts: pulumi.Output<outputs.evs.EnvironmentHostInfoForCreate[] | undefined>;
    /**
     * The initial Vlan configuration only required upon creation. Modification after creation will have no effect
     */
    readonly initialVlans: pulumi.Output<outputs.evs.InitialVlansProperties | undefined>;
    /**
     * The AWS KMS key ID that AWS Secrets Manager uses to encrypt secrets that are associated with the environment. These secrets contain the VCF credentials that are needed to install vCenter Server, NSX, and SDDC Manager.
     *
     * By default, Amazon EVS use the AWS Secrets Manager managed key `aws/secretsmanager` . You can also specify a customer managed key.
     */
    readonly kmsKeyId: pulumi.Output<string | undefined>;
    /**
     * The license information for an EVS environment
     */
    readonly licenseInfo: pulumi.Output<outputs.evs.LicenseInfoProperties>;
    /**
     * The date and time that the environment was modified. For example: `1749081600.000` .
     */
    readonly modifiedAt: pulumi.Output<string>;
    /**
     * The security groups that allow traffic between the Amazon EVS control plane and your VPC for service access. If a security group is not specified, Amazon EVS uses the default security group in your account for service access.
     */
    readonly serviceAccessSecurityGroups: pulumi.Output<outputs.evs.ServiceAccessSecurityGroupsProperties | undefined>;
    /**
     * The subnet that is used to establish connectivity between the Amazon EVS control plane and VPC. Amazon EVS uses this subnet to perform validations and create the environment.
     */
    readonly serviceAccessSubnetId: pulumi.Output<string>;
    /**
     * The Broadcom Site ID that is associated with your Amazon EVS environment. Amazon EVS uses the Broadcom Site ID that you provide to meet Broadcom VCF license usage reporting requirements for Amazon EVS.
     */
    readonly siteId: pulumi.Output<string>;
    /**
     * A detailed description of the `environmentState` of an environment. For example: `Environment successfully created` .
     */
    readonly stateDetails: pulumi.Output<string>;
    /**
     * An array of key-value pairs to apply to this resource.
     */
    readonly tags: pulumi.Output<outputs.Tag[] | undefined>;
    /**
     * Customer confirmation that the customer has purchased and will continue to maintain the required number of VCF software licenses to cover all physical processor cores in the Amazon EVS environment. Information about your VCF software in Amazon EVS will be shared with Broadcom to verify license compliance.
     */
    readonly termsAccepted: pulumi.Output<boolean>;
    /**
     * The DNS hostnames to be used by the VCF management appliances in your environment.
     *
     * For environment creation to be successful, each hostname entry must resolve to a domain name that you've registered in your DNS service of choice and configured in the DHCP option set of your VPC. DNS hostnames cannot be changed after environment creation has started.
     */
    readonly vcfHostnames: pulumi.Output<outputs.evs.VcfHostnamesProperties>;
    /**
     * The VCF version of the environment.
     */
    readonly vcfVersion: pulumi.Output<enums.evs.EnvironmentVcfVersion>;
    /**
     * The VPC associated with the environment.
     */
    readonly vpcId: pulumi.Output<string>;
    /**
     * Create a Environment 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: EnvironmentArgs, opts?: pulumi.CustomResourceOptions);
}
/**
 * The set of arguments for constructing a Environment resource.
 */
export interface EnvironmentArgs {
    /**
     * The connectivity configuration for the environment. Amazon EVS requires that you specify two route server peer IDs. During environment creation, the route server endpoints peer with the NSX uplink VLAN for connectivity to the NSX overlay network.
     */
    connectivityInfo: pulumi.Input<inputs.evs.ConnectivityInfoPropertiesArgs>;
    /**
     * The name of an EVS environment
     */
    environmentName?: pulumi.Input<string>;
    /**
     * The initial hosts for environment only required upon creation. Modification after creation will have no effect
     */
    hosts?: pulumi.Input<pulumi.Input<inputs.evs.EnvironmentHostInfoForCreateArgs>[]>;
    /**
     * The initial Vlan configuration only required upon creation. Modification after creation will have no effect
     */
    initialVlans?: pulumi.Input<inputs.evs.InitialVlansPropertiesArgs>;
    /**
     * The AWS KMS key ID that AWS Secrets Manager uses to encrypt secrets that are associated with the environment. These secrets contain the VCF credentials that are needed to install vCenter Server, NSX, and SDDC Manager.
     *
     * By default, Amazon EVS use the AWS Secrets Manager managed key `aws/secretsmanager` . You can also specify a customer managed key.
     */
    kmsKeyId?: pulumi.Input<string>;
    /**
     * The license information for an EVS environment
     */
    licenseInfo: pulumi.Input<inputs.evs.LicenseInfoPropertiesArgs>;
    /**
     * The security groups that allow traffic between the Amazon EVS control plane and your VPC for service access. If a security group is not specified, Amazon EVS uses the default security group in your account for service access.
     */
    serviceAccessSecurityGroups?: pulumi.Input<inputs.evs.ServiceAccessSecurityGroupsPropertiesArgs>;
    /**
     * The subnet that is used to establish connectivity between the Amazon EVS control plane and VPC. Amazon EVS uses this subnet to perform validations and create the environment.
     */
    serviceAccessSubnetId: pulumi.Input<string>;
    /**
     * The Broadcom Site ID that is associated with your Amazon EVS environment. Amazon EVS uses the Broadcom Site ID that you provide to meet Broadcom VCF license usage reporting requirements for Amazon EVS.
     */
    siteId: pulumi.Input<string>;
    /**
     * An array of key-value pairs to apply to this resource.
     */
    tags?: pulumi.Input<pulumi.Input<inputs.TagArgs>[]>;
    /**
     * Customer confirmation that the customer has purchased and will continue to maintain the required number of VCF software licenses to cover all physical processor cores in the Amazon EVS environment. Information about your VCF software in Amazon EVS will be shared with Broadcom to verify license compliance.
     */
    termsAccepted: pulumi.Input<boolean>;
    /**
     * The DNS hostnames to be used by the VCF management appliances in your environment.
     *
     * For environment creation to be successful, each hostname entry must resolve to a domain name that you've registered in your DNS service of choice and configured in the DHCP option set of your VPC. DNS hostnames cannot be changed after environment creation has started.
     */
    vcfHostnames: pulumi.Input<inputs.evs.VcfHostnamesPropertiesArgs>;
    /**
     * The VCF version of the environment.
     */
    vcfVersion: pulumi.Input<enums.evs.EnvironmentVcfVersion>;
    /**
     * The VPC associated with the environment.
     */
    vpcId: pulumi.Input<string>;
}
