import * as core from "@terrascript/core"; export interface CognitoMemberDefinitionArgs extends core.SchemaArgs { clientId: string | core.StringOut; userGroup: string | core.StringOut; userPool: string | core.StringOut; } export class CognitoMemberDefinition extends core.Schema { @core.attr(String) public clientId!: string | core.StringOut; @core.attr(String) public userGroup!: string | core.StringOut; @core.attr(String) public userPool!: string | core.StringOut; } export interface OidcMemberDefinitionArgs extends core.SchemaArgs { groups: core.Array | core.ArrayOut; } export class OidcMemberDefinition extends core.Schema { @core.attr(String, { kind: "array" }) public groups!: core.Array | core.ArrayOut; } export interface MemberDefinitionArgs extends core.SchemaArgs { cognitoMemberDefinition?: CognitoMemberDefinition; oidcMemberDefinition?: OidcMemberDefinition; } export class MemberDefinition extends core.Schema { @core.attr(CognitoMemberDefinition) public cognitoMemberDefinition?: CognitoMemberDefinition; @core.attr(OidcMemberDefinition) public oidcMemberDefinition?: OidcMemberDefinition; } export interface NotificationConfigurationArgs extends core.SchemaArgs { notificationTopicArn?: string | core.StringOut; } export class NotificationConfiguration extends core.Schema { @core.attr(String) public notificationTopicArn?: string | core.StringOut; } export interface WorkteamArgs extends core.ResourceArgs { /** * (Required) A description of the work team. */ description: string | core.StringOut; /** * (Required) A list of Member Definitions that contains objects that identify the workers that make up * the work team. Workforces can be created using Amazon Cognito or your own OIDC Identity Provider (I * dP). For private workforces created using Amazon Cognito use `cognito_member_definition`. For workfo * rces created using your own OIDC identity provider (IdP) use `oidc_member_definition`. Do not provid * e input for both of these parameters in a single request. see [Member Definition](#member-definition * ) details below. */ memberDefinition: | core.Array | core.ArrayOut; /** * (Optional) Configures notification of workers regarding available or expiring work items. see [Notif * ication Configuration](#notification-configuration) details below. */ notificationConfiguration?: NotificationConfiguration; /** * (Optional) A map of tags to assign to the resource. If configured with a provider [`default_tags` co * nfiguration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags-co * nfiguration-block) present, tags with matching keys will overwrite those defined at the provider-lev * el. */ tags?: core.Map | core.MapOut; /** * A map of tags assigned to the resource, including those inherited from the provider [`default_tags` * configuration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags- * configuration-block). */ tagsAll?: core.Map | core.MapOut; /** * (Required) The name of the Workteam (must be unique). */ workforceName: string | core.StringOut; /** * (Required) The name of the workforce. */ workteamName: string | core.StringOut; } export class Workteam extends core.Resource { /** * The Amazon Resource Name (ARN) assigned by AWS to this Workteam. */ @core.attr(String, { computed: true }) public arn!: string | core.StringOut; /** * (Required) A description of the work team. */ @core.attr(String) public description!: string | core.StringOut; /** * The name of the Workteam. */ @core.attr(String, { computed: true }) public id!: string | core.StringOut; /** * (Required) A list of Member Definitions that contains objects that identify the workers that make up * the work team. Workforces can be created using Amazon Cognito or your own OIDC Identity Provider (I * dP). For private workforces created using Amazon Cognito use `cognito_member_definition`. For workfo * rces created using your own OIDC identity provider (IdP) use `oidc_member_definition`. Do not provid * e input for both of these parameters in a single request. see [Member Definition](#member-definition * ) details below. */ @core.attr(MemberDefinition, { kind: "array" }) public memberDefinition!: | core.Array | core.ArrayOut; /** * (Optional) Configures notification of workers regarding available or expiring work items. see [Notif * ication Configuration](#notification-configuration) details below. */ @core.attr(NotificationConfiguration) public notificationConfiguration?: NotificationConfiguration; /** * The subdomain for your OIDC Identity Provider. */ @core.attr(String, { computed: true }) public subdomain!: string | core.StringOut; /** * (Optional) A map of tags to assign to the resource. If configured with a provider [`default_tags` co * nfiguration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags-co * nfiguration-block) present, tags with matching keys will overwrite those defined at the provider-lev * el. */ @core.attr(String, { kind: "map" }) public tags?: core.Map | core.MapOut; /** * A map of tags assigned to the resource, including those inherited from the provider [`default_tags` * configuration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags- * configuration-block). */ @core.attr(String, { computed: true, kind: "map" }) public tagsAll?: core.Map | core.MapOut; /** * (Required) The name of the Workteam (must be unique). */ @core.attr(String) public workforceName!: string | core.StringOut; /** * (Required) The name of the workforce. */ @core.attr(String) public workteamName!: string | core.StringOut; constructor(name: string, args?: WorkteamArgs) { super(name, "aws_sagemaker_workteam", args); } public override getNamespace(): string { return "aws_sagemaker"; } }