import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
import * as enums from "../types/enums";
/**
 * Resource Type definition for AWS::SageMaker::Domain
 */
export declare class Domain extends pulumi.CustomResource {
    /**
     * Get an existing Domain 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): Domain;
    /**
     * Returns true if the given object is an instance of Domain.  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 Domain;
    /**
     * Specifies the VPC used for non-EFS traffic. The default value is PublicInternetOnly.
     */
    readonly appNetworkAccessType: pulumi.Output<enums.sagemaker.DomainAppNetworkAccessType | undefined>;
    /**
     * The entity that creates and manages the required security groups for inter-app communication in VPCOnly mode. Required when CreateDomain.AppNetworkAccessType is VPCOnly and DomainSettings.RStudioServerProDomainSettings.DomainExecutionRoleArn is provided.
     */
    readonly appSecurityGroupManagement: pulumi.Output<enums.sagemaker.DomainAppSecurityGroupManagement | undefined>;
    /**
     * The mode of authentication that members use to access the domain.
     */
    readonly authMode: pulumi.Output<enums.sagemaker.DomainAuthMode>;
    /**
     * The default space settings.
     */
    readonly defaultSpaceSettings: pulumi.Output<outputs.sagemaker.DomainDefaultSpaceSettings | undefined>;
    /**
     * The default user settings.
     */
    readonly defaultUserSettings: pulumi.Output<outputs.sagemaker.DomainUserSettings>;
    /**
     * The Amazon Resource Name (ARN) of the created domain.
     */
    readonly domainArn: pulumi.Output<string>;
    /**
     * The domain name.
     */
    readonly domainId: pulumi.Output<string>;
    /**
     * A name for the domain.
     */
    readonly domainName: pulumi.Output<string>;
    /**
     * A collection of settings that apply to the `SageMaker Domain` . These settings are specified through the `CreateDomain` API call.
     */
    readonly domainSettings: pulumi.Output<outputs.sagemaker.DomainSettings | undefined>;
    /**
     * The ID of the Amazon Elastic File System (EFS) managed by this Domain.
     */
    readonly homeEfsFileSystemId: pulumi.Output<string>;
    /**
     * SageMaker uses AWS KMS to encrypt the EFS volume attached to the domain with an AWS managed customer master key (CMK) by default.
     */
    readonly kmsKeyId: pulumi.Output<string | undefined>;
    /**
     * The ID of the security group that authorizes traffic between the RSessionGateway apps and the RStudioServerPro app.
     */
    readonly securityGroupIdForDomainBoundary: pulumi.Output<string>;
    /**
     * The ARN of the application managed by SageMaker in IAM Identity Center. This value is only returned for domains created after October 1, 2023.
     */
    readonly singleSignOnApplicationArn: pulumi.Output<string>;
    /**
     * The SSO managed application instance ID.
     */
    readonly singleSignOnManagedApplicationInstanceId: pulumi.Output<string>;
    /**
     * The VPC subnets that Studio uses for communication.
     */
    readonly subnetIds: pulumi.Output<string[] | undefined>;
    /**
     * Indicates whether the tags added to Domain, User Profile and Space entity is propagated to all SageMaker resources.
     */
    readonly tagPropagation: pulumi.Output<enums.sagemaker.DomainTagPropagation | undefined>;
    /**
     * A list of tags to apply to the user profile.
     */
    readonly tags: pulumi.Output<outputs.Tag[] | undefined>;
    /**
     * The URL to the created domain.
     */
    readonly url: pulumi.Output<string>;
    /**
     * The ID of the Amazon Virtual Private Cloud (VPC) that Studio uses for communication.
     */
    readonly vpcId: pulumi.Output<string | undefined>;
    /**
     * Create a Domain 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: DomainArgs, opts?: pulumi.CustomResourceOptions);
}
/**
 * The set of arguments for constructing a Domain resource.
 */
export interface DomainArgs {
    /**
     * Specifies the VPC used for non-EFS traffic. The default value is PublicInternetOnly.
     */
    appNetworkAccessType?: pulumi.Input<enums.sagemaker.DomainAppNetworkAccessType>;
    /**
     * The entity that creates and manages the required security groups for inter-app communication in VPCOnly mode. Required when CreateDomain.AppNetworkAccessType is VPCOnly and DomainSettings.RStudioServerProDomainSettings.DomainExecutionRoleArn is provided.
     */
    appSecurityGroupManagement?: pulumi.Input<enums.sagemaker.DomainAppSecurityGroupManagement>;
    /**
     * The mode of authentication that members use to access the domain.
     */
    authMode: pulumi.Input<enums.sagemaker.DomainAuthMode>;
    /**
     * The default space settings.
     */
    defaultSpaceSettings?: pulumi.Input<inputs.sagemaker.DomainDefaultSpaceSettingsArgs>;
    /**
     * The default user settings.
     */
    defaultUserSettings: pulumi.Input<inputs.sagemaker.DomainUserSettingsArgs>;
    /**
     * A name for the domain.
     */
    domainName?: pulumi.Input<string>;
    /**
     * A collection of settings that apply to the `SageMaker Domain` . These settings are specified through the `CreateDomain` API call.
     */
    domainSettings?: pulumi.Input<inputs.sagemaker.DomainSettingsArgs>;
    /**
     * SageMaker uses AWS KMS to encrypt the EFS volume attached to the domain with an AWS managed customer master key (CMK) by default.
     */
    kmsKeyId?: pulumi.Input<string>;
    /**
     * The VPC subnets that Studio uses for communication.
     */
    subnetIds?: pulumi.Input<pulumi.Input<string>[]>;
    /**
     * Indicates whether the tags added to Domain, User Profile and Space entity is propagated to all SageMaker resources.
     */
    tagPropagation?: pulumi.Input<enums.sagemaker.DomainTagPropagation>;
    /**
     * A list of tags to apply to the user profile.
     */
    tags?: pulumi.Input<pulumi.Input<inputs.TagArgs>[]>;
    /**
     * The ID of the Amazon Virtual Private Cloud (VPC) that Studio uses for communication.
     */
    vpcId?: pulumi.Input<string>;
}
