import { Value } from '../../cloudformation/Value';
import { AwsResource } from '../../cloudformation/resources/AwsResource';
/**
  Assigns access to a Principal for a specified AWS account using a specified permission set.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-assignment.html">the AWS Docs</a>
*/
export type Assignment = AwsResource<'AWS::SSO::Assignment', AssignmentProperties>;
export declare function assignment(assignmentProps: AssignmentProperties): Assignment;
/**
  Assigns access to a Principal for a specified AWS account using a specified permission set.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-assignment.html">the AWS Docs</a>
*/
export interface AssignmentProperties {
    /** <code>PrincipalId</code>  <a name="cfn-sso-assignment-principalid"></a>
  An identifier for an object in IAM Identity Center, such as a user or group. PrincipalIds are GUIDs (For example, f81d4fae-7dec-11d0-a765-00a0c91e6bf6). For more information about PrincipalIds in IAM Identity Center, see the <a href="/singlesignon/latest/IdentityStoreAPIReference/welcome.html">IAM Identity Center Identity Store API Reference</a>.<br />
  
  Required: Yes<br />
  
  Minimum: <code>1</code><br />
  
  Maximum: <code>47</code><br />
  
  Pattern: <code>([0-9a-f]{10}-|)[A-Fa-f0-9]{8}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{12}</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> */
    principalId: Value<string>;
    /** <code>InstanceArn</code>  <a name="cfn-sso-assignment-instancearn"></a>
  The ARN of the IAM Identity Center instance under which the operation will be executed. For more information about ARNs, see <a href="https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html">Amazon Resource Names (ARNs) and AWS Service Namespaces</a> in the
  AWS General Reference: br />
  
  Required: Yes<br />
  
  Minimum: <code>10</code><br />
  
  Maximum: <code>1224</code><br />
  
  Pattern: <code>arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso:::instance/(sso)?ins-[a-zA-Z0-9-.]{16}</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> */
    instanceArn: Value<string>;
    /** <code>TargetType</code>  <a name="cfn-sso-assignment-targettype"></a>
  The entity type for which the assignment will be created.<br />
  
  Required: Yes<br />
  
  Allowed values: <code>AWS_ACCOUNT</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> */
    targetType: Value<'AWS_ACCOUNT'>;
    /** <code>PermissionSetArn</code>  <a name="cfn-sso-assignment-permissionsetarn"></a>
  The ARN of the permission set.<br />
  
  Required: Yes<br />
  
  Minimum: <code>10</code><br />
  
  Maximum: <code>1224</code><br />
  
  Pattern: <code>arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso:::permissionSet/(sso)?ins-[a-zA-Z0-9-.]{16}/ps-[a-zA-Z0-9-./]{16}</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> */
    permissionSetArn: Value<string>;
    /** <code>PrincipalType</code>  <a name="cfn-sso-assignment-principaltype"></a>
  The entity type for which the assignment will be created.<br />
  
  Required: Yes<br />
  
  Allowed values: <code>GROUP | USER</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> */
    principalType: Value<'GROUP' | 'USER'>;
    /** <code>TargetId</code>  <a name="cfn-sso-assignment-targetid"></a>
  TargetID is an AWS account identifier, (For example, 123456789012).<br />
  
  Required: Yes<br />
  
  Minimum: <code>12</code><br />
  
  Maximum: <code>12</code><br />
  
  Pattern: <code>\d{12}</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> */
    targetId: Value<string>;
}
