github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/comprehend/entityRecognizer.go (about)

     1  // Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
     2  // *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
     3  
     4  package comprehend
     5  
     6  import (
     7  	"context"
     8  	"reflect"
     9  
    10  	"errors"
    11  	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/internal"
    12  	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    13  )
    14  
    15  // Resource for managing an AWS Comprehend Entity Recognizer.
    16  //
    17  // ## Example Usage
    18  //
    19  // ### Basic Usage
    20  //
    21  // <!--Start PulumiCodeChooser -->
    22  // ```go
    23  // package main
    24  //
    25  // import (
    26  //
    27  //	"fmt"
    28  //
    29  //	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/comprehend"
    30  //	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/s3"
    31  //	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    32  //
    33  // )
    34  //
    35  //	func main() {
    36  //		pulumi.Run(func(ctx *pulumi.Context) error {
    37  //			documents, err := s3.NewBucketObjectv2(ctx, "documents", nil)
    38  //			if err != nil {
    39  //				return err
    40  //			}
    41  //			entities, err := s3.NewBucketObjectv2(ctx, "entities", nil)
    42  //			if err != nil {
    43  //				return err
    44  //			}
    45  //			_, err = comprehend.NewEntityRecognizer(ctx, "example", &comprehend.EntityRecognizerArgs{
    46  //				Name:              pulumi.String("example"),
    47  //				DataAccessRoleArn: pulumi.Any(exampleAwsIamRole.Arn),
    48  //				LanguageCode:      pulumi.String("en"),
    49  //				InputDataConfig: &comprehend.EntityRecognizerInputDataConfigArgs{
    50  //					EntityTypes: comprehend.EntityRecognizerInputDataConfigEntityTypeArray{
    51  //						&comprehend.EntityRecognizerInputDataConfigEntityTypeArgs{
    52  //							Type: pulumi.String("ENTITY_1"),
    53  //						},
    54  //						&comprehend.EntityRecognizerInputDataConfigEntityTypeArgs{
    55  //							Type: pulumi.String("ENTITY_2"),
    56  //						},
    57  //					},
    58  //					Documents: &comprehend.EntityRecognizerInputDataConfigDocumentsArgs{
    59  //						S3Uri: documents.ID().ApplyT(func(id string) (string, error) {
    60  //							return fmt.Sprintf("s3://%v/%v", documentsAwsS3Bucket.Bucket, id), nil
    61  //						}).(pulumi.StringOutput),
    62  //					},
    63  //					EntityList: &comprehend.EntityRecognizerInputDataConfigEntityListArgs{
    64  //						S3Uri: entities.ID().ApplyT(func(id string) (string, error) {
    65  //							return fmt.Sprintf("s3://%v/%v", entitiesAwsS3Bucket.Bucket, id), nil
    66  //						}).(pulumi.StringOutput),
    67  //					},
    68  //				},
    69  //			}, pulumi.DependsOn([]pulumi.Resource{
    70  //				exampleAwsIamRolePolicy,
    71  //			}))
    72  //			if err != nil {
    73  //				return err
    74  //			}
    75  //			return nil
    76  //		})
    77  //	}
    78  //
    79  // ```
    80  // <!--End PulumiCodeChooser -->
    81  //
    82  // ## Import
    83  //
    84  // Using `pulumi import`, import Comprehend Entity Recognizer using the ARN. For example:
    85  //
    86  // ```sh
    87  // $ pulumi import aws:comprehend/entityRecognizer:EntityRecognizer example arn:aws:comprehend:us-west-2:123456789012:entity-recognizer/example
    88  // ```
    89  type EntityRecognizer struct {
    90  	pulumi.CustomResourceState
    91  
    92  	// ARN of the Entity Recognizer version.
    93  	Arn pulumi.StringOutput `pulumi:"arn"`
    94  	// The ARN for an IAM Role which allows Comprehend to read the training and testing data.
    95  	DataAccessRoleArn pulumi.StringOutput `pulumi:"dataAccessRoleArn"`
    96  	// Configuration for the training and testing data.
    97  	// See the `inputDataConfig` Configuration Block section below.
    98  	InputDataConfig EntityRecognizerInputDataConfigOutput `pulumi:"inputDataConfig"`
    99  	// Two-letter language code for the language.
   100  	// One of `en`, `es`, `fr`, `it`, `de`, or `pt`.
   101  	LanguageCode pulumi.StringOutput `pulumi:"languageCode"`
   102  	// The ID or ARN of a KMS Key used to encrypt trained Entity Recognizers.
   103  	ModelKmsKeyId pulumi.StringPtrOutput `pulumi:"modelKmsKeyId"`
   104  	// Name for the Entity Recognizer.
   105  	// Has a maximum length of 63 characters.
   106  	// Can contain upper- and lower-case letters, numbers, and hypen (`-`).
   107  	//
   108  	// The following arguments are optional:
   109  	Name pulumi.StringOutput `pulumi:"name"`
   110  	// A map of tags to assign to the resource. If configured with a provider `defaultTags` Configuration Block present, tags with matching keys will overwrite those defined at the provider-level.
   111  	Tags pulumi.StringMapOutput `pulumi:"tags"`
   112  	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
   113  	//
   114  	// Deprecated: Please use `tags` instead.
   115  	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
   116  	// Name for the version of the Entity Recognizer.
   117  	// Each version must have a unique name within the Entity Recognizer.
   118  	// If omitted, the provider will assign a random, unique version name.
   119  	// If explicitly set to `""`, no version name will be set.
   120  	// Has a maximum length of 63 characters.
   121  	// Can contain upper- and lower-case letters, numbers, and hypen (`-`).
   122  	// Conflicts with `versionNamePrefix`.
   123  	VersionName pulumi.StringOutput `pulumi:"versionName"`
   124  	// Creates a unique version name beginning with the specified prefix.
   125  	// Has a maximum length of 37 characters.
   126  	// Can contain upper- and lower-case letters, numbers, and hypen (`-`).
   127  	// Conflicts with `versionName`.
   128  	VersionNamePrefix pulumi.StringOutput `pulumi:"versionNamePrefix"`
   129  	// ID or ARN of a KMS Key used to encrypt storage volumes during job processing.
   130  	VolumeKmsKeyId pulumi.StringPtrOutput `pulumi:"volumeKmsKeyId"`
   131  	// Configuration parameters for VPC to contain Entity Recognizer resources.
   132  	// See the `vpcConfig` Configuration Block section below.
   133  	VpcConfig EntityRecognizerVpcConfigPtrOutput `pulumi:"vpcConfig"`
   134  }
   135  
   136  // NewEntityRecognizer registers a new resource with the given unique name, arguments, and options.
   137  func NewEntityRecognizer(ctx *pulumi.Context,
   138  	name string, args *EntityRecognizerArgs, opts ...pulumi.ResourceOption) (*EntityRecognizer, error) {
   139  	if args == nil {
   140  		return nil, errors.New("missing one or more required arguments")
   141  	}
   142  
   143  	if args.DataAccessRoleArn == nil {
   144  		return nil, errors.New("invalid value for required argument 'DataAccessRoleArn'")
   145  	}
   146  	if args.InputDataConfig == nil {
   147  		return nil, errors.New("invalid value for required argument 'InputDataConfig'")
   148  	}
   149  	if args.LanguageCode == nil {
   150  		return nil, errors.New("invalid value for required argument 'LanguageCode'")
   151  	}
   152  	opts = internal.PkgResourceDefaultOpts(opts)
   153  	var resource EntityRecognizer
   154  	err := ctx.RegisterResource("aws:comprehend/entityRecognizer:EntityRecognizer", name, args, &resource, opts...)
   155  	if err != nil {
   156  		return nil, err
   157  	}
   158  	return &resource, nil
   159  }
   160  
   161  // GetEntityRecognizer gets an existing EntityRecognizer resource's state with the given name, ID, and optional
   162  // state properties that are used to uniquely qualify the lookup (nil if not required).
   163  func GetEntityRecognizer(ctx *pulumi.Context,
   164  	name string, id pulumi.IDInput, state *EntityRecognizerState, opts ...pulumi.ResourceOption) (*EntityRecognizer, error) {
   165  	var resource EntityRecognizer
   166  	err := ctx.ReadResource("aws:comprehend/entityRecognizer:EntityRecognizer", name, id, state, &resource, opts...)
   167  	if err != nil {
   168  		return nil, err
   169  	}
   170  	return &resource, nil
   171  }
   172  
   173  // Input properties used for looking up and filtering EntityRecognizer resources.
   174  type entityRecognizerState struct {
   175  	// ARN of the Entity Recognizer version.
   176  	Arn *string `pulumi:"arn"`
   177  	// The ARN for an IAM Role which allows Comprehend to read the training and testing data.
   178  	DataAccessRoleArn *string `pulumi:"dataAccessRoleArn"`
   179  	// Configuration for the training and testing data.
   180  	// See the `inputDataConfig` Configuration Block section below.
   181  	InputDataConfig *EntityRecognizerInputDataConfig `pulumi:"inputDataConfig"`
   182  	// Two-letter language code for the language.
   183  	// One of `en`, `es`, `fr`, `it`, `de`, or `pt`.
   184  	LanguageCode *string `pulumi:"languageCode"`
   185  	// The ID or ARN of a KMS Key used to encrypt trained Entity Recognizers.
   186  	ModelKmsKeyId *string `pulumi:"modelKmsKeyId"`
   187  	// Name for the Entity Recognizer.
   188  	// Has a maximum length of 63 characters.
   189  	// Can contain upper- and lower-case letters, numbers, and hypen (`-`).
   190  	//
   191  	// The following arguments are optional:
   192  	Name *string `pulumi:"name"`
   193  	// A map of tags to assign to the resource. If configured with a provider `defaultTags` Configuration Block present, tags with matching keys will overwrite those defined at the provider-level.
   194  	Tags map[string]string `pulumi:"tags"`
   195  	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
   196  	//
   197  	// Deprecated: Please use `tags` instead.
   198  	TagsAll map[string]string `pulumi:"tagsAll"`
   199  	// Name for the version of the Entity Recognizer.
   200  	// Each version must have a unique name within the Entity Recognizer.
   201  	// If omitted, the provider will assign a random, unique version name.
   202  	// If explicitly set to `""`, no version name will be set.
   203  	// Has a maximum length of 63 characters.
   204  	// Can contain upper- and lower-case letters, numbers, and hypen (`-`).
   205  	// Conflicts with `versionNamePrefix`.
   206  	VersionName *string `pulumi:"versionName"`
   207  	// Creates a unique version name beginning with the specified prefix.
   208  	// Has a maximum length of 37 characters.
   209  	// Can contain upper- and lower-case letters, numbers, and hypen (`-`).
   210  	// Conflicts with `versionName`.
   211  	VersionNamePrefix *string `pulumi:"versionNamePrefix"`
   212  	// ID or ARN of a KMS Key used to encrypt storage volumes during job processing.
   213  	VolumeKmsKeyId *string `pulumi:"volumeKmsKeyId"`
   214  	// Configuration parameters for VPC to contain Entity Recognizer resources.
   215  	// See the `vpcConfig` Configuration Block section below.
   216  	VpcConfig *EntityRecognizerVpcConfig `pulumi:"vpcConfig"`
   217  }
   218  
   219  type EntityRecognizerState struct {
   220  	// ARN of the Entity Recognizer version.
   221  	Arn pulumi.StringPtrInput
   222  	// The ARN for an IAM Role which allows Comprehend to read the training and testing data.
   223  	DataAccessRoleArn pulumi.StringPtrInput
   224  	// Configuration for the training and testing data.
   225  	// See the `inputDataConfig` Configuration Block section below.
   226  	InputDataConfig EntityRecognizerInputDataConfigPtrInput
   227  	// Two-letter language code for the language.
   228  	// One of `en`, `es`, `fr`, `it`, `de`, or `pt`.
   229  	LanguageCode pulumi.StringPtrInput
   230  	// The ID or ARN of a KMS Key used to encrypt trained Entity Recognizers.
   231  	ModelKmsKeyId pulumi.StringPtrInput
   232  	// Name for the Entity Recognizer.
   233  	// Has a maximum length of 63 characters.
   234  	// Can contain upper- and lower-case letters, numbers, and hypen (`-`).
   235  	//
   236  	// The following arguments are optional:
   237  	Name pulumi.StringPtrInput
   238  	// A map of tags to assign to the resource. If configured with a provider `defaultTags` Configuration Block present, tags with matching keys will overwrite those defined at the provider-level.
   239  	Tags pulumi.StringMapInput
   240  	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
   241  	//
   242  	// Deprecated: Please use `tags` instead.
   243  	TagsAll pulumi.StringMapInput
   244  	// Name for the version of the Entity Recognizer.
   245  	// Each version must have a unique name within the Entity Recognizer.
   246  	// If omitted, the provider will assign a random, unique version name.
   247  	// If explicitly set to `""`, no version name will be set.
   248  	// Has a maximum length of 63 characters.
   249  	// Can contain upper- and lower-case letters, numbers, and hypen (`-`).
   250  	// Conflicts with `versionNamePrefix`.
   251  	VersionName pulumi.StringPtrInput
   252  	// Creates a unique version name beginning with the specified prefix.
   253  	// Has a maximum length of 37 characters.
   254  	// Can contain upper- and lower-case letters, numbers, and hypen (`-`).
   255  	// Conflicts with `versionName`.
   256  	VersionNamePrefix pulumi.StringPtrInput
   257  	// ID or ARN of a KMS Key used to encrypt storage volumes during job processing.
   258  	VolumeKmsKeyId pulumi.StringPtrInput
   259  	// Configuration parameters for VPC to contain Entity Recognizer resources.
   260  	// See the `vpcConfig` Configuration Block section below.
   261  	VpcConfig EntityRecognizerVpcConfigPtrInput
   262  }
   263  
   264  func (EntityRecognizerState) ElementType() reflect.Type {
   265  	return reflect.TypeOf((*entityRecognizerState)(nil)).Elem()
   266  }
   267  
   268  type entityRecognizerArgs struct {
   269  	// The ARN for an IAM Role which allows Comprehend to read the training and testing data.
   270  	DataAccessRoleArn string `pulumi:"dataAccessRoleArn"`
   271  	// Configuration for the training and testing data.
   272  	// See the `inputDataConfig` Configuration Block section below.
   273  	InputDataConfig EntityRecognizerInputDataConfig `pulumi:"inputDataConfig"`
   274  	// Two-letter language code for the language.
   275  	// One of `en`, `es`, `fr`, `it`, `de`, or `pt`.
   276  	LanguageCode string `pulumi:"languageCode"`
   277  	// The ID or ARN of a KMS Key used to encrypt trained Entity Recognizers.
   278  	ModelKmsKeyId *string `pulumi:"modelKmsKeyId"`
   279  	// Name for the Entity Recognizer.
   280  	// Has a maximum length of 63 characters.
   281  	// Can contain upper- and lower-case letters, numbers, and hypen (`-`).
   282  	//
   283  	// The following arguments are optional:
   284  	Name *string `pulumi:"name"`
   285  	// A map of tags to assign to the resource. If configured with a provider `defaultTags` Configuration Block present, tags with matching keys will overwrite those defined at the provider-level.
   286  	Tags map[string]string `pulumi:"tags"`
   287  	// Name for the version of the Entity Recognizer.
   288  	// Each version must have a unique name within the Entity Recognizer.
   289  	// If omitted, the provider will assign a random, unique version name.
   290  	// If explicitly set to `""`, no version name will be set.
   291  	// Has a maximum length of 63 characters.
   292  	// Can contain upper- and lower-case letters, numbers, and hypen (`-`).
   293  	// Conflicts with `versionNamePrefix`.
   294  	VersionName *string `pulumi:"versionName"`
   295  	// Creates a unique version name beginning with the specified prefix.
   296  	// Has a maximum length of 37 characters.
   297  	// Can contain upper- and lower-case letters, numbers, and hypen (`-`).
   298  	// Conflicts with `versionName`.
   299  	VersionNamePrefix *string `pulumi:"versionNamePrefix"`
   300  	// ID or ARN of a KMS Key used to encrypt storage volumes during job processing.
   301  	VolumeKmsKeyId *string `pulumi:"volumeKmsKeyId"`
   302  	// Configuration parameters for VPC to contain Entity Recognizer resources.
   303  	// See the `vpcConfig` Configuration Block section below.
   304  	VpcConfig *EntityRecognizerVpcConfig `pulumi:"vpcConfig"`
   305  }
   306  
   307  // The set of arguments for constructing a EntityRecognizer resource.
   308  type EntityRecognizerArgs struct {
   309  	// The ARN for an IAM Role which allows Comprehend to read the training and testing data.
   310  	DataAccessRoleArn pulumi.StringInput
   311  	// Configuration for the training and testing data.
   312  	// See the `inputDataConfig` Configuration Block section below.
   313  	InputDataConfig EntityRecognizerInputDataConfigInput
   314  	// Two-letter language code for the language.
   315  	// One of `en`, `es`, `fr`, `it`, `de`, or `pt`.
   316  	LanguageCode pulumi.StringInput
   317  	// The ID or ARN of a KMS Key used to encrypt trained Entity Recognizers.
   318  	ModelKmsKeyId pulumi.StringPtrInput
   319  	// Name for the Entity Recognizer.
   320  	// Has a maximum length of 63 characters.
   321  	// Can contain upper- and lower-case letters, numbers, and hypen (`-`).
   322  	//
   323  	// The following arguments are optional:
   324  	Name pulumi.StringPtrInput
   325  	// A map of tags to assign to the resource. If configured with a provider `defaultTags` Configuration Block present, tags with matching keys will overwrite those defined at the provider-level.
   326  	Tags pulumi.StringMapInput
   327  	// Name for the version of the Entity Recognizer.
   328  	// Each version must have a unique name within the Entity Recognizer.
   329  	// If omitted, the provider will assign a random, unique version name.
   330  	// If explicitly set to `""`, no version name will be set.
   331  	// Has a maximum length of 63 characters.
   332  	// Can contain upper- and lower-case letters, numbers, and hypen (`-`).
   333  	// Conflicts with `versionNamePrefix`.
   334  	VersionName pulumi.StringPtrInput
   335  	// Creates a unique version name beginning with the specified prefix.
   336  	// Has a maximum length of 37 characters.
   337  	// Can contain upper- and lower-case letters, numbers, and hypen (`-`).
   338  	// Conflicts with `versionName`.
   339  	VersionNamePrefix pulumi.StringPtrInput
   340  	// ID or ARN of a KMS Key used to encrypt storage volumes during job processing.
   341  	VolumeKmsKeyId pulumi.StringPtrInput
   342  	// Configuration parameters for VPC to contain Entity Recognizer resources.
   343  	// See the `vpcConfig` Configuration Block section below.
   344  	VpcConfig EntityRecognizerVpcConfigPtrInput
   345  }
   346  
   347  func (EntityRecognizerArgs) ElementType() reflect.Type {
   348  	return reflect.TypeOf((*entityRecognizerArgs)(nil)).Elem()
   349  }
   350  
   351  type EntityRecognizerInput interface {
   352  	pulumi.Input
   353  
   354  	ToEntityRecognizerOutput() EntityRecognizerOutput
   355  	ToEntityRecognizerOutputWithContext(ctx context.Context) EntityRecognizerOutput
   356  }
   357  
   358  func (*EntityRecognizer) ElementType() reflect.Type {
   359  	return reflect.TypeOf((**EntityRecognizer)(nil)).Elem()
   360  }
   361  
   362  func (i *EntityRecognizer) ToEntityRecognizerOutput() EntityRecognizerOutput {
   363  	return i.ToEntityRecognizerOutputWithContext(context.Background())
   364  }
   365  
   366  func (i *EntityRecognizer) ToEntityRecognizerOutputWithContext(ctx context.Context) EntityRecognizerOutput {
   367  	return pulumi.ToOutputWithContext(ctx, i).(EntityRecognizerOutput)
   368  }
   369  
   370  // EntityRecognizerArrayInput is an input type that accepts EntityRecognizerArray and EntityRecognizerArrayOutput values.
   371  // You can construct a concrete instance of `EntityRecognizerArrayInput` via:
   372  //
   373  //	EntityRecognizerArray{ EntityRecognizerArgs{...} }
   374  type EntityRecognizerArrayInput interface {
   375  	pulumi.Input
   376  
   377  	ToEntityRecognizerArrayOutput() EntityRecognizerArrayOutput
   378  	ToEntityRecognizerArrayOutputWithContext(context.Context) EntityRecognizerArrayOutput
   379  }
   380  
   381  type EntityRecognizerArray []EntityRecognizerInput
   382  
   383  func (EntityRecognizerArray) ElementType() reflect.Type {
   384  	return reflect.TypeOf((*[]*EntityRecognizer)(nil)).Elem()
   385  }
   386  
   387  func (i EntityRecognizerArray) ToEntityRecognizerArrayOutput() EntityRecognizerArrayOutput {
   388  	return i.ToEntityRecognizerArrayOutputWithContext(context.Background())
   389  }
   390  
   391  func (i EntityRecognizerArray) ToEntityRecognizerArrayOutputWithContext(ctx context.Context) EntityRecognizerArrayOutput {
   392  	return pulumi.ToOutputWithContext(ctx, i).(EntityRecognizerArrayOutput)
   393  }
   394  
   395  // EntityRecognizerMapInput is an input type that accepts EntityRecognizerMap and EntityRecognizerMapOutput values.
   396  // You can construct a concrete instance of `EntityRecognizerMapInput` via:
   397  //
   398  //	EntityRecognizerMap{ "key": EntityRecognizerArgs{...} }
   399  type EntityRecognizerMapInput interface {
   400  	pulumi.Input
   401  
   402  	ToEntityRecognizerMapOutput() EntityRecognizerMapOutput
   403  	ToEntityRecognizerMapOutputWithContext(context.Context) EntityRecognizerMapOutput
   404  }
   405  
   406  type EntityRecognizerMap map[string]EntityRecognizerInput
   407  
   408  func (EntityRecognizerMap) ElementType() reflect.Type {
   409  	return reflect.TypeOf((*map[string]*EntityRecognizer)(nil)).Elem()
   410  }
   411  
   412  func (i EntityRecognizerMap) ToEntityRecognizerMapOutput() EntityRecognizerMapOutput {
   413  	return i.ToEntityRecognizerMapOutputWithContext(context.Background())
   414  }
   415  
   416  func (i EntityRecognizerMap) ToEntityRecognizerMapOutputWithContext(ctx context.Context) EntityRecognizerMapOutput {
   417  	return pulumi.ToOutputWithContext(ctx, i).(EntityRecognizerMapOutput)
   418  }
   419  
   420  type EntityRecognizerOutput struct{ *pulumi.OutputState }
   421  
   422  func (EntityRecognizerOutput) ElementType() reflect.Type {
   423  	return reflect.TypeOf((**EntityRecognizer)(nil)).Elem()
   424  }
   425  
   426  func (o EntityRecognizerOutput) ToEntityRecognizerOutput() EntityRecognizerOutput {
   427  	return o
   428  }
   429  
   430  func (o EntityRecognizerOutput) ToEntityRecognizerOutputWithContext(ctx context.Context) EntityRecognizerOutput {
   431  	return o
   432  }
   433  
   434  // ARN of the Entity Recognizer version.
   435  func (o EntityRecognizerOutput) Arn() pulumi.StringOutput {
   436  	return o.ApplyT(func(v *EntityRecognizer) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput)
   437  }
   438  
   439  // The ARN for an IAM Role which allows Comprehend to read the training and testing data.
   440  func (o EntityRecognizerOutput) DataAccessRoleArn() pulumi.StringOutput {
   441  	return o.ApplyT(func(v *EntityRecognizer) pulumi.StringOutput { return v.DataAccessRoleArn }).(pulumi.StringOutput)
   442  }
   443  
   444  // Configuration for the training and testing data.
   445  // See the `inputDataConfig` Configuration Block section below.
   446  func (o EntityRecognizerOutput) InputDataConfig() EntityRecognizerInputDataConfigOutput {
   447  	return o.ApplyT(func(v *EntityRecognizer) EntityRecognizerInputDataConfigOutput { return v.InputDataConfig }).(EntityRecognizerInputDataConfigOutput)
   448  }
   449  
   450  // Two-letter language code for the language.
   451  // One of `en`, `es`, `fr`, `it`, `de`, or `pt`.
   452  func (o EntityRecognizerOutput) LanguageCode() pulumi.StringOutput {
   453  	return o.ApplyT(func(v *EntityRecognizer) pulumi.StringOutput { return v.LanguageCode }).(pulumi.StringOutput)
   454  }
   455  
   456  // The ID or ARN of a KMS Key used to encrypt trained Entity Recognizers.
   457  func (o EntityRecognizerOutput) ModelKmsKeyId() pulumi.StringPtrOutput {
   458  	return o.ApplyT(func(v *EntityRecognizer) pulumi.StringPtrOutput { return v.ModelKmsKeyId }).(pulumi.StringPtrOutput)
   459  }
   460  
   461  // Name for the Entity Recognizer.
   462  // Has a maximum length of 63 characters.
   463  // Can contain upper- and lower-case letters, numbers, and hypen (`-`).
   464  //
   465  // The following arguments are optional:
   466  func (o EntityRecognizerOutput) Name() pulumi.StringOutput {
   467  	return o.ApplyT(func(v *EntityRecognizer) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput)
   468  }
   469  
   470  // A map of tags to assign to the resource. If configured with a provider `defaultTags` Configuration Block present, tags with matching keys will overwrite those defined at the provider-level.
   471  func (o EntityRecognizerOutput) Tags() pulumi.StringMapOutput {
   472  	return o.ApplyT(func(v *EntityRecognizer) pulumi.StringMapOutput { return v.Tags }).(pulumi.StringMapOutput)
   473  }
   474  
   475  // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
   476  //
   477  // Deprecated: Please use `tags` instead.
   478  func (o EntityRecognizerOutput) TagsAll() pulumi.StringMapOutput {
   479  	return o.ApplyT(func(v *EntityRecognizer) pulumi.StringMapOutput { return v.TagsAll }).(pulumi.StringMapOutput)
   480  }
   481  
   482  // Name for the version of the Entity Recognizer.
   483  // Each version must have a unique name within the Entity Recognizer.
   484  // If omitted, the provider will assign a random, unique version name.
   485  // If explicitly set to `""`, no version name will be set.
   486  // Has a maximum length of 63 characters.
   487  // Can contain upper- and lower-case letters, numbers, and hypen (`-`).
   488  // Conflicts with `versionNamePrefix`.
   489  func (o EntityRecognizerOutput) VersionName() pulumi.StringOutput {
   490  	return o.ApplyT(func(v *EntityRecognizer) pulumi.StringOutput { return v.VersionName }).(pulumi.StringOutput)
   491  }
   492  
   493  // Creates a unique version name beginning with the specified prefix.
   494  // Has a maximum length of 37 characters.
   495  // Can contain upper- and lower-case letters, numbers, and hypen (`-`).
   496  // Conflicts with `versionName`.
   497  func (o EntityRecognizerOutput) VersionNamePrefix() pulumi.StringOutput {
   498  	return o.ApplyT(func(v *EntityRecognizer) pulumi.StringOutput { return v.VersionNamePrefix }).(pulumi.StringOutput)
   499  }
   500  
   501  // ID or ARN of a KMS Key used to encrypt storage volumes during job processing.
   502  func (o EntityRecognizerOutput) VolumeKmsKeyId() pulumi.StringPtrOutput {
   503  	return o.ApplyT(func(v *EntityRecognizer) pulumi.StringPtrOutput { return v.VolumeKmsKeyId }).(pulumi.StringPtrOutput)
   504  }
   505  
   506  // Configuration parameters for VPC to contain Entity Recognizer resources.
   507  // See the `vpcConfig` Configuration Block section below.
   508  func (o EntityRecognizerOutput) VpcConfig() EntityRecognizerVpcConfigPtrOutput {
   509  	return o.ApplyT(func(v *EntityRecognizer) EntityRecognizerVpcConfigPtrOutput { return v.VpcConfig }).(EntityRecognizerVpcConfigPtrOutput)
   510  }
   511  
   512  type EntityRecognizerArrayOutput struct{ *pulumi.OutputState }
   513  
   514  func (EntityRecognizerArrayOutput) ElementType() reflect.Type {
   515  	return reflect.TypeOf((*[]*EntityRecognizer)(nil)).Elem()
   516  }
   517  
   518  func (o EntityRecognizerArrayOutput) ToEntityRecognizerArrayOutput() EntityRecognizerArrayOutput {
   519  	return o
   520  }
   521  
   522  func (o EntityRecognizerArrayOutput) ToEntityRecognizerArrayOutputWithContext(ctx context.Context) EntityRecognizerArrayOutput {
   523  	return o
   524  }
   525  
   526  func (o EntityRecognizerArrayOutput) Index(i pulumi.IntInput) EntityRecognizerOutput {
   527  	return pulumi.All(o, i).ApplyT(func(vs []interface{}) *EntityRecognizer {
   528  		return vs[0].([]*EntityRecognizer)[vs[1].(int)]
   529  	}).(EntityRecognizerOutput)
   530  }
   531  
   532  type EntityRecognizerMapOutput struct{ *pulumi.OutputState }
   533  
   534  func (EntityRecognizerMapOutput) ElementType() reflect.Type {
   535  	return reflect.TypeOf((*map[string]*EntityRecognizer)(nil)).Elem()
   536  }
   537  
   538  func (o EntityRecognizerMapOutput) ToEntityRecognizerMapOutput() EntityRecognizerMapOutput {
   539  	return o
   540  }
   541  
   542  func (o EntityRecognizerMapOutput) ToEntityRecognizerMapOutputWithContext(ctx context.Context) EntityRecognizerMapOutput {
   543  	return o
   544  }
   545  
   546  func (o EntityRecognizerMapOutput) MapIndex(k pulumi.StringInput) EntityRecognizerOutput {
   547  	return pulumi.All(o, k).ApplyT(func(vs []interface{}) *EntityRecognizer {
   548  		return vs[0].(map[string]*EntityRecognizer)[vs[1].(string)]
   549  	}).(EntityRecognizerOutput)
   550  }
   551  
   552  func init() {
   553  	pulumi.RegisterInputType(reflect.TypeOf((*EntityRecognizerInput)(nil)).Elem(), &EntityRecognizer{})
   554  	pulumi.RegisterInputType(reflect.TypeOf((*EntityRecognizerArrayInput)(nil)).Elem(), EntityRecognizerArray{})
   555  	pulumi.RegisterInputType(reflect.TypeOf((*EntityRecognizerMapInput)(nil)).Elem(), EntityRecognizerMap{})
   556  	pulumi.RegisterOutputType(EntityRecognizerOutput{})
   557  	pulumi.RegisterOutputType(EntityRecognizerArrayOutput{})
   558  	pulumi.RegisterOutputType(EntityRecognizerMapOutput{})
   559  }