import { Value } from '../../cloudformation/Value';
import { FederationParametersProps } from './environment/FederationParametersProps';
import { SuperuserParametersProps } from './environment/SuperuserParametersProps';
import { Tag } from '../Tag';
import { Attribute } from '../../cloudformation/Attribute';
import { AwsResource } from '../../cloudformation/resources/AwsResource';
export type EnvironmentAttributes = {
    Status: Attribute<string>;
    EnvironmentId: Attribute<string>;
    EnvironmentArn: Attribute<string>;
    SageMakerStudioDomainUrl: Attribute<string>;
    EnvironmentUrl: Attribute<string>;
    AwsAccountId: Attribute<string>;
    DedicatedServiceAccountId: Attribute<string>;
};
export type Environment = AwsResource<'AWS::FinSpace::Environment', EnvironmentProperties, EnvironmentAttributes>;
/**
  The <code>AWS::FinSpace::Environment</code> resource represents an Amazon FinSpace environment.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-finspace-environment.html">the AWS Docs</a>
*/
export declare function environment(environmentProps: EnvironmentProperties): Environment;
/**
  The <code>AWS::FinSpace::Environment</code> resource represents an Amazon FinSpace environment.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-finspace-environment.html">the AWS Docs</a>
*/
export interface EnvironmentProperties {
    /** <code>Description</code>  <a name="cfn-finspace-environment-description"></a>
  The description of the FinSpace environment.<br />
  
  Required: No<br />
  
  Minimum: <code>1</code><br />
  
  Maximum: <code>1000</code><br />
  
  Pattern: <code>^[a-zA-Z0-9. ]{1,1000}$</code><br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    description?: Value<string>;
    /** <code>KmsKeyId</code>  <a name="cfn-finspace-environment-kmskeyid"></a>
  The KMS key id used to encrypt in the FinSpace environment.<br />
  
  Required: No<br />
  
  Minimum: <code>1</code><br />
  
  Maximum: <code>1000</code><br />
  
  Pattern: <code>^[a-zA-Z-0-9-:\/]*$</code><br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement">Replacement</a> */
    kmsKeyId?: Value<string>;
    /** <code>FederationParameters</code>  <a name="cfn-finspace-environment-federationparameters"></a>
  Configuration information when authentication mode is FEDERATED.<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement">Replacement</a> */
    federationParameters?: FederationParametersProps;
    /** <code>FederationMode</code>  <a name="cfn-finspace-environment-federationmode"></a>
  The authentication mode for the environment.<br />
  
  Required: No<br />
  
  Allowed values: <code>FEDERATED | LOCAL</code><br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    federationMode?: Value<'FEDERATED' | 'LOCAL'>;
    /** <code>SuperuserParameters</code>  <a name="cfn-finspace-environment-superuserparameters"></a>
  Configuration information for the superuser.<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement">Replacement</a> */
    superuserParameters?: SuperuserParametersProps;
    /** <code>Tags</code>  <a name="cfn-finspace-environment-tags"></a>
  Property description not available.<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement">Replacement</a> */
    tags?: Tag[];
    /** <code>Name</code>  <a name="cfn-finspace-environment-name"></a>
  The name of the FinSpace environment.<br />
  
  Required: Yes<br />
  
  Minimum: <code>1</code><br />
  
  Maximum: <code>255</code><br />
  
  Pattern: <code>^[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9]$</code><br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    name: Value<string>;
}
