import * as core from "@terrascript/core"; export interface AccountAssignmentArgs extends core.ResourceArgs { /** * (Required, Forces new resource) The Amazon Resource Name (ARN) of the SSO Instance. */ instanceArn: string | core.StringOut; /** * (Required, Forces new resource) The Amazon Resource Name (ARN) of the Permission Set that the admin * wants to grant the principal access to. */ permissionSetArn: string | core.StringOut; /** * (Required, Forces new resource) An identifier for an object in SSO, such as a user or group. Princip * alIds are GUIDs (For example, `f81d4fae-7dec-11d0-a765-00a0c91e6bf6`). */ principalId: string | core.StringOut; /** * (Required, Forces new resource) The entity type for which the assignment will be created. Valid valu * es: `USER`, `GROUP`. */ principalType: string | core.StringOut; /** * (Required, Forces new resource) An AWS account identifier, typically a 10-12 digit string. */ targetId: string | core.StringOut; /** * (Optional, Forces new resource) The entity type for which the assignment will be created. Valid valu * es: `AWS_ACCOUNT`. */ targetType?: string | core.StringOut; } export class AccountAssignment extends core.Resource { /** * The identifier of the Account Assignment i.e., `principal_id`, `principal_type`, `target_id`, `targe * t_type`, `permission_set_arn`, `instance_arn` separated by commas (`,`). */ @core.attr(String, { computed: true }) public id!: string | core.StringOut; /** * (Required, Forces new resource) The Amazon Resource Name (ARN) of the SSO Instance. */ @core.attr(String) public instanceArn!: string | core.StringOut; /** * (Required, Forces new resource) The Amazon Resource Name (ARN) of the Permission Set that the admin * wants to grant the principal access to. */ @core.attr(String) public permissionSetArn!: string | core.StringOut; /** * (Required, Forces new resource) An identifier for an object in SSO, such as a user or group. Princip * alIds are GUIDs (For example, `f81d4fae-7dec-11d0-a765-00a0c91e6bf6`). */ @core.attr(String) public principalId!: string | core.StringOut; /** * (Required, Forces new resource) The entity type for which the assignment will be created. Valid valu * es: `USER`, `GROUP`. */ @core.attr(String) public principalType!: string | core.StringOut; /** * (Required, Forces new resource) An AWS account identifier, typically a 10-12 digit string. */ @core.attr(String) public targetId!: string | core.StringOut; /** * (Optional, Forces new resource) The entity type for which the assignment will be created. Valid valu * es: `AWS_ACCOUNT`. */ @core.attr(String) public targetType?: string | core.StringOut; constructor(name: string, args?: AccountAssignmentArgs) { super(name, "aws_ssoadmin_account_assignment", args); } public override getNamespace(): string { return "aws_ssoadmin"; } }