UNPKG

iam-floyd

Version:

AWS IAM policy statement generator with fluent interface

957 lines 100 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.Transcribe = void 0; const shared_1 = require("../../shared"); /** * Statement provider for service [transcribe](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazontranscribe.html). * * @param sid [SID](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_sid.html) of the statement */ class Transcribe extends shared_1.PolicyStatement { /** * Statement provider for service [transcribe](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazontranscribe.html). * * @param sid [SID](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_sid.html) of the statement */ constructor(sid) { super(sid); this.servicePrefix = 'transcribe'; this.accessLevelList = { Write: [ 'CreateCallAnalyticsCategory', 'CreateLanguageModel', 'CreateMedicalVocabulary', 'CreateVocabulary', 'CreateVocabularyFilter', 'DeleteCallAnalyticsCategory', 'DeleteCallAnalyticsJob', 'DeleteLanguageModel', 'DeleteMedicalScribeJob', 'DeleteMedicalTranscriptionJob', 'DeleteMedicalVocabulary', 'DeleteTranscriptionJob', 'DeleteVocabulary', 'DeleteVocabularyFilter', 'StartCallAnalyticsJob', 'StartCallAnalyticsStreamTranscription', 'StartCallAnalyticsStreamTranscriptionWebSocket', 'StartMedicalScribeJob', 'StartMedicalScribeStream', 'StartMedicalStreamTranscription', 'StartMedicalStreamTranscriptionWebSocket', 'StartMedicalTranscriptionJob', 'StartStreamTranscription', 'StartStreamTranscriptionWebSocket', 'StartTranscriptionJob', 'UpdateCallAnalyticsCategory', 'UpdateMedicalVocabulary', 'UpdateVocabulary', 'UpdateVocabularyFilter' ], Read: [ 'DescribeLanguageModel', 'GetCallAnalyticsCategory', 'GetCallAnalyticsJob', 'GetMedicalScribeJob', 'GetMedicalScribeStream', 'GetMedicalTranscriptionJob', 'GetMedicalVocabulary', 'GetTranscriptionJob', 'GetVocabulary', 'GetVocabularyFilter', 'ListTagsForResource' ], List: [ 'ListCallAnalyticsCategories', 'ListCallAnalyticsJobs', 'ListLanguageModels', 'ListMedicalScribeJobs', 'ListMedicalTranscriptionJobs', 'ListMedicalVocabularies', 'ListTranscriptionJobs', 'ListVocabularies', 'ListVocabularyFilters' ], Tagging: [ 'TagResource', 'UntagResource' ] }; } /** * Grants permission to create an analytics category. Amazon Transcribe applies the conditions specified by your analytics categories to your call analytics jobs * * Access Level: Write * * Possible conditions: * - .ifAwsRequestTag() * - .ifAwsTagKeys() * * https://docs.aws.amazon.com/transcribe/latest/dg/API_CreateCallAnalyticsCategory.html */ toCreateCallAnalyticsCategory() { return this.to('CreateCallAnalyticsCategory'); } /** * Grants permission to create a new custom language model * * Access Level: Write * * Possible conditions: * - .ifAwsRequestTag() * - .ifAwsTagKeys() * * Dependent actions: * - s3:GetObject * - s3:ListBucket * * https://docs.aws.amazon.com/transcribe/latest/dg/API_CreateLanguageModel.html */ toCreateLanguageModel() { return this.to('CreateLanguageModel'); } /** * Grants permission to create a new custom vocabulary that you can use to change the way Amazon Transcribe Medical handles transcription of an audio file * * Access Level: Write * * Possible conditions: * - .ifAwsRequestTag() * - .ifAwsTagKeys() * * Dependent actions: * - s3:GetObject * * https://docs.aws.amazon.com/transcribe/latest/dg/API_CreateMedicalVocabulary.html */ toCreateMedicalVocabulary() { return this.to('CreateMedicalVocabulary'); } /** * Grants permission to create a new custom vocabulary that you can use to change the way Amazon Transcribe handles transcription of an audio file * * Access Level: Write * * Possible conditions: * - .ifAwsRequestTag() * - .ifAwsTagKeys() * * Dependent actions: * - s3:GetObject * * https://docs.aws.amazon.com/transcribe/latest/dg/API_CreateVocabulary.html */ toCreateVocabulary() { return this.to('CreateVocabulary'); } /** * Grants permission to create a new vocabulary filter that you can use to filter out words from the transcription of an audio file generated by Amazon Transcribe * * Access Level: Write * * Possible conditions: * - .ifAwsRequestTag() * - .ifAwsTagKeys() * * Dependent actions: * - s3:GetObject * * https://docs.aws.amazon.com/transcribe/latest/dg/API_CreateVocabularyFilter.html */ toCreateVocabularyFilter() { return this.to('CreateVocabularyFilter'); } /** * Grants permission to delete a call analytics category using its name from Amazon Transcribe * * Access Level: Write * * https://docs.aws.amazon.com/transcribe/latest/dg/API_DeleteCallAnalyticsCategory.html */ toDeleteCallAnalyticsCategory() { return this.to('DeleteCallAnalyticsCategory'); } /** * Grants permission to delete a previously submitted call analytics job along with any other generated results such as the transcription, models, and so on * * Access Level: Write * * https://docs.aws.amazon.com/transcribe/latest/dg/API_DeleteCallAnalyticsJob.html */ toDeleteCallAnalyticsJob() { return this.to('DeleteCallAnalyticsJob'); } /** * Grants permission to delete a previously created custom language model * * Access Level: Write * * https://docs.aws.amazon.com/transcribe/latest/dg/API_DeleteLanguageModel.html */ toDeleteLanguageModel() { return this.to('DeleteLanguageModel'); } /** * Grants permission to delete a previously submitted Medical Scribe job * * Access Level: Write * * https://docs.aws.amazon.com/transcribe/latest/dg/API_DeleteMedicalScribeJob.html */ toDeleteMedicalScribeJob() { return this.to('DeleteMedicalScribeJob'); } /** * Grants permission to delete a previously submitted medical transcription job * * Access Level: Write * * https://docs.aws.amazon.com/transcribe/latest/dg/API_DeleteMedicalTranscriptionJob.html */ toDeleteMedicalTranscriptionJob() { return this.to('DeleteMedicalTranscriptionJob'); } /** * Grants permission to delete a medical vocabulary from Amazon Transcribe * * Access Level: Write * * https://docs.aws.amazon.com/transcribe/latest/dg/API_DeleteMedicalVocabulary.html */ toDeleteMedicalVocabulary() { return this.to('DeleteMedicalVocabulary'); } /** * Grants permission to delete a previously submitted transcription job along with any other generated results such as the transcription, models, and so on * * Access Level: Write * * https://docs.aws.amazon.com/transcribe/latest/dg/API_DeleteTranscriptionJob.html */ toDeleteTranscriptionJob() { return this.to('DeleteTranscriptionJob'); } /** * Grants permission to delete a vocabulary from Amazon Transcribe * * Access Level: Write * * https://docs.aws.amazon.com/transcribe/latest/dg/API_DeleteVocabulary.html */ toDeleteVocabulary() { return this.to('DeleteVocabulary'); } /** * Grants permission to delete a vocabulary filter from Amazon Transcribe * * Access Level: Write * * https://docs.aws.amazon.com/transcribe/latest/dg/API_DeleteVocabularyFilter.html */ toDeleteVocabularyFilter() { return this.to('DeleteVocabularyFilter'); } /** * Grants permission to return information about a custom language model * * Access Level: Read * * https://docs.aws.amazon.com/transcribe/latest/dg/API_DescribeLanguageModel.html */ toDescribeLanguageModel() { return this.to('DescribeLanguageModel'); } /** * Grants permission to retrieve information about a call analytics category * * Access Level: Read * * https://docs.aws.amazon.com/transcribe/latest/dg/API_GetCallAnalyticsCategory.html */ toGetCallAnalyticsCategory() { return this.to('GetCallAnalyticsCategory'); } /** * Grants permission to return information about a call analytics job * * Access Level: Read * * https://docs.aws.amazon.com/transcribe/latest/dg/API_GetCallAnalyticsJob.html */ toGetCallAnalyticsJob() { return this.to('GetCallAnalyticsJob'); } /** * Grants permission to return information about a Medical Scribe job * * Access Level: Read * * https://docs.aws.amazon.com/transcribe/latest/dg/API_GetMedicalScribeJob.html */ toGetMedicalScribeJob() { return this.to('GetMedicalScribeJob'); } /** * Grants permission to get information about the specified AWS HealthScribe streaming session * * Access Level: Read * * https://docs.aws.amazon.com/transcribe/latest/dg/API_streaming_GetMedicalScribeStream.html */ toGetMedicalScribeStream() { return this.to('GetMedicalScribeStream'); } /** * Grants permission to return information about a medical transcription job * * Access Level: Read * * https://docs.aws.amazon.com/transcribe/latest/dg/API_GetMedicalTranscriptionJob.html */ toGetMedicalTranscriptionJob() { return this.to('GetMedicalTranscriptionJob'); } /** * Grants permission to get information about a medical vocabulary * * Access Level: Read * * https://docs.aws.amazon.com/transcribe/latest/dg/API_GetMedicalVocabulary.html */ toGetMedicalVocabulary() { return this.to('GetMedicalVocabulary'); } /** * Grants permission to return information about a transcription job * * Access Level: Read * * https://docs.aws.amazon.com/transcribe/latest/dg/API_GetTranscriptionJob.html */ toGetTranscriptionJob() { return this.to('GetTranscriptionJob'); } /** * Grants permission to to get information about a vocabulary * * Access Level: Read * * https://docs.aws.amazon.com/transcribe/latest/dg/API_GetVocabulary.html */ toGetVocabulary() { return this.to('GetVocabulary'); } /** * Grants permission to get information about a vocabulary filter * * Access Level: Read * * https://docs.aws.amazon.com/transcribe/latest/dg/API_GetVocabularyFilter.html */ toGetVocabularyFilter() { return this.to('GetVocabularyFilter'); } /** * Grants permission to list call analytics categories that has been created * * Access Level: List * * https://docs.aws.amazon.com/transcribe/latest/dg/API_ListCallAnalyticsCategories.html */ toListCallAnalyticsCategories() { return this.to('ListCallAnalyticsCategories'); } /** * Grants permission to list call analytics jobs with the specified status * * Access Level: List * * https://docs.aws.amazon.com/transcribe/latest/dg/API_ListCallAnalyticsJobs.html */ toListCallAnalyticsJobs() { return this.to('ListCallAnalyticsJobs'); } /** * Grants permission to list custom language models * * Access Level: List * * https://docs.aws.amazon.com/transcribe/latest/dg/API_ListLanguageModels.html */ toListLanguageModels() { return this.to('ListLanguageModels'); } /** * Grants permission to list Medical Scribe jobs with the specified status * * Access Level: List * * https://docs.aws.amazon.com/transcribe/latest/dg/API_ListMedicalScribeJobs.html */ toListMedicalScribeJobs() { return this.to('ListMedicalScribeJobs'); } /** * Grants permission to list medical transcription jobs with the specified status * * Access Level: List * * https://docs.aws.amazon.com/transcribe/latest/dg/API_ListMedicalTranscriptionJobs.html */ toListMedicalTranscriptionJobs() { return this.to('ListMedicalTranscriptionJobs'); } /** * Grants permission to return a list of medical vocabularies that match the specified criteria. If no criteria are specified, returns the entire list of vocabularies * * Access Level: List * * https://docs.aws.amazon.com/transcribe/latest/dg/API_ListMedicalVocabularies.html */ toListMedicalVocabularies() { return this.to('ListMedicalVocabularies'); } /** * Grants permission to list tags for a resource * * Access Level: Read * * https://docs.aws.amazon.com/transcribe/latest/dg/API_ListTagsForResource.html */ toListTagsForResource() { return this.to('ListTagsForResource'); } /** * Grants permission to list transcription jobs with the specified status * * Access Level: List * * https://docs.aws.amazon.com/transcribe/latest/dg/API_ListTranscriptionJobs.html */ toListTranscriptionJobs() { return this.to('ListTranscriptionJobs'); } /** * Grants permission to return a list of vocabularies that match the specified criteria. If no criteria are specified, returns the entire list of vocabularies * * Access Level: List * * https://docs.aws.amazon.com/transcribe/latest/dg/API_ListVocabularies.html */ toListVocabularies() { return this.to('ListVocabularies'); } /** * Grants permission to return a list of vocabulary filters that match the specified criteria. If no criteria are specified, returns the at most 5 vocabulary filters * * Access Level: List * * https://docs.aws.amazon.com/transcribe/latest/dg/API_ListVocabularyFilters.html */ toListVocabularyFilters() { return this.to('ListVocabularyFilters'); } /** * Grants permission to start an asynchronous analytics job that not only transcribes the audio recording of a caller and agent, but also returns additional insights * * Access Level: Write * * Possible conditions: * - .ifOutputEncryptionKMSKeyId() * - .ifOutputLocation() * - .ifAwsRequestTag() * - .ifAwsTagKeys() * * Dependent actions: * - s3:GetObject * * https://docs.aws.amazon.com/transcribe/latest/dg/API_StartCallAnalyticsJob.html */ toStartCallAnalyticsJob() { return this.to('StartCallAnalyticsJob'); } /** * Grants permission to start a protocol where audio is streamed to Transcribe Call Analytics and the transcription results are streamed to your application * * Access Level: Write * * https://docs.aws.amazon.com/transcribe/latest/dg/API_streaming_StartCallAnalyticsStreamTranscription.html */ toStartCallAnalyticsStreamTranscription() { return this.to('StartCallAnalyticsStreamTranscription'); } /** * Grants permission to start a WebSocket where audio is streamed to Transcribe Call Analytics and the transcription results are streamed to your application * * Access Level: Write * * https://docs.aws.amazon.com/transcribe/latest/dg/API_streaming_StartCallAnalyticsStreamTranscriptionWebSocket.html */ toStartCallAnalyticsStreamTranscriptionWebSocket() { return this.to('StartCallAnalyticsStreamTranscriptionWebSocket'); } /** * Grants permission to start an asynchronous job to transcribe patient-clinician conversations and generates clinical notes * * Access Level: Write * * Possible conditions: * - .ifOutputBucketName() * - .ifOutputEncryptionKMSKeyId() * - .ifAwsRequestTag() * - .ifAwsTagKeys() * * Dependent actions: * - s3:GetObject * * https://docs.aws.amazon.com/transcribe/latest/dg/API_StartMedicalScribeJob.html */ toStartMedicalScribeJob() { return this.to('StartMedicalScribeJob'); } /** * Grants permission to start a bidirectional HTTP2 stream where audio is streamed to AWS HealthScribe and the transcription results are streamed to your application * * Access Level: Write * * https://docs.aws.amazon.com/transcribe/latest/dg/API_streaming_StartMedicalScribeStream.html */ toStartMedicalScribeStream() { return this.to('StartMedicalScribeStream'); } /** * Grants permission to start a protocol where audio is streamed to Transcribe Medical and the transcription results are streamed to your application * * Access Level: Write * * https://docs.aws.amazon.com/transcribe/latest/dg/API_streaming_StartMedicalStreamTranscription.html */ toStartMedicalStreamTranscription() { return this.to('StartMedicalStreamTranscription'); } /** * Grants permission to start a WebSocket where audio is streamed to Transcribe Medical and the transcription results are streamed to your application * * Access Level: Write * * https://docs.aws.amazon.com/transcribe/latest/dg/API_streaming_StartMedicalStreamTranscriptionWebSocket.html */ toStartMedicalStreamTranscriptionWebSocket() { return this.to('StartMedicalStreamTranscriptionWebSocket'); } /** * Grants permission to start an asynchronous job to transcribe medical speech to text * * Access Level: Write * * Possible conditions: * - .ifOutputBucketName() * - .ifOutputEncryptionKMSKeyId() * - .ifOutputKey() * - .ifAwsRequestTag() * - .ifAwsTagKeys() * * Dependent actions: * - s3:GetObject * * https://docs.aws.amazon.com/transcribe/latest/dg/API_StartMedicalTranscriptionJob.html */ toStartMedicalTranscriptionJob() { return this.to('StartMedicalTranscriptionJob'); } /** * Grants permission to start a bidirectional HTTP2 stream to transcribe speech to text in real time * * Access Level: Write * * https://docs.aws.amazon.com/transcribe/latest/dg/API_streaming_StartStreamTranscription.html */ toStartStreamTranscription() { return this.to('StartStreamTranscription'); } /** * Grants permission to start a websocket stream to transcribe speech to text in real time * * Access Level: Write * * https://docs.aws.amazon.com/transcribe/latest/dg/API_streaming_StartStreamTranscriptionWebSocket.html */ toStartStreamTranscriptionWebSocket() { return this.to('StartStreamTranscriptionWebSocket'); } /** * Grants permission to start an asynchronous job to transcribe speech to text * * Access Level: Write * * Possible conditions: * - .ifOutputBucketName() * - .ifOutputEncryptionKMSKeyId() * - .ifOutputKey() * - .ifAwsRequestTag() * - .ifAwsTagKeys() * * Dependent actions: * - s3:GetObject * * https://docs.aws.amazon.com/transcribe/latest/dg/API_StartTranscriptionJob.html */ toStartTranscriptionJob() { return this.to('StartTranscriptionJob'); } /** * Grants permission to tag a resource with given key value pairs * * Access Level: Tagging * * Possible conditions: * - .ifAwsRequestTag() * - .ifAwsTagKeys() * * https://docs.aws.amazon.com/transcribe/latest/dg/API_TagResource.html */ toTagResource() { return this.to('TagResource'); } /** * Grants permission to untag a resource with given key * * Access Level: Tagging * * Possible conditions: * - .ifAwsTagKeys() * * https://docs.aws.amazon.com/transcribe/latest/dg/API_UntagResource.html */ toUntagResource() { return this.to('UntagResource'); } /** * Grants permission to update the call analytics category with new values. The UpdateCallAnalyticsCategory operation overwrites all of the existing information with the values that you provide in the request * * Access Level: Write * * https://docs.aws.amazon.com/transcribe/latest/dg/API_UpdateCallAnalyticsCategory.html */ toUpdateCallAnalyticsCategory() { return this.to('UpdateCallAnalyticsCategory'); } /** * Grants permission to update an existing medical vocabulary with new values. The UpdateMedicalVocabulary operation overwrites all of the existing information with the values that you provide in the request * * Access Level: Write * * Dependent actions: * - s3:GetObject * * https://docs.aws.amazon.com/transcribe/latest/dg/API_UpdateMedicalVocabulary.html */ toUpdateMedicalVocabulary() { return this.to('UpdateMedicalVocabulary'); } /** * Grants permission to update an existing vocabulary with new values. The UpdateVocabulary operation overwrites all of the existing information with the values that you provide in the request * * Access Level: Write * * Dependent actions: * - s3:GetObject * * https://docs.aws.amazon.com/transcribe/latest/dg/API_UpdateVocabulary.html */ toUpdateVocabulary() { return this.to('UpdateVocabulary'); } /** * Grants permission to update an existing vocabulary filter with new values. The UpdateVocabularyFilter operation overwrites all of the existing information with the values that you provide in the request * * Access Level: Write * * Dependent actions: * - s3:GetObject * * https://docs.aws.amazon.com/transcribe/latest/dg/API_UpdateVocabularyFilter.html */ toUpdateVocabularyFilter() { return this.to('UpdateVocabularyFilter'); } /** * Adds a resource of type transcriptionjob to the statement * * https://docs.aws.amazon.com/transcribe/latest/dg/API_TranscriptionJob.html * * @param jobName - Identifier for the jobName. * @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account. * @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region. * @param partition - Partition of the AWS account [aws, aws-cn, aws-us-gov]; defaults to `aws`, unless using the CDK, where the default is the current Stack's partition. * * Possible conditions: * - .ifAwsResourceTag() */ onTranscriptionjob(jobName, account, region, partition) { return this.on(`arn:${partition ?? this.defaultPartition}:transcribe:${region ?? this.defaultRegion}:${account ?? this.defaultAccount}:transcription-job/${jobName}`); } /** * Adds a resource of type vocabulary to the statement * * https://docs.aws.amazon.com/transcribe/latest/dg/API_CreateVocabulary.html * * @param vocabularyName - Identifier for the vocabularyName. * @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account. * @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region. * @param partition - Partition of the AWS account [aws, aws-cn, aws-us-gov]; defaults to `aws`, unless using the CDK, where the default is the current Stack's partition. * * Possible conditions: * - .ifAwsResourceTag() */ onVocabulary(vocabularyName, account, region, partition) { return this.on(`arn:${partition ?? this.defaultPartition}:transcribe:${region ?? this.defaultRegion}:${account ?? this.defaultAccount}:vocabulary/${vocabularyName}`); } /** * Adds a resource of type vocabularyfilter to the statement * * https://docs.aws.amazon.com/transcribe/latest/dg/API_CreateVocabularyFilter.html * * @param vocabularyFilterName - Identifier for the vocabularyFilterName. * @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account. * @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region. * @param partition - Partition of the AWS account [aws, aws-cn, aws-us-gov]; defaults to `aws`, unless using the CDK, where the default is the current Stack's partition. * * Possible conditions: * - .ifAwsResourceTag() */ onVocabularyfilter(vocabularyFilterName, account, region, partition) { return this.on(`arn:${partition ?? this.defaultPartition}:transcribe:${region ?? this.defaultRegion}:${account ?? this.defaultAccount}:vocabulary-filter/${vocabularyFilterName}`); } /** * Adds a resource of type languagemodel to the statement * * https://docs.aws.amazon.com/transcribe/latest/dg/API_LanguageModel.html * * @param modelName - Identifier for the modelName. * @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account. * @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region. * @param partition - Partition of the AWS account [aws, aws-cn, aws-us-gov]; defaults to `aws`, unless using the CDK, where the default is the current Stack's partition. * * Possible conditions: * - .ifAwsResourceTag() */ onLanguagemodel(modelName, account, region, partition) { return this.on(`arn:${partition ?? this.defaultPartition}:transcribe:${region ?? this.defaultRegion}:${account ?? this.defaultAccount}:language-model/${modelName}`); } /** * Adds a resource of type medicaltranscriptionjob to the statement * * https://docs.aws.amazon.com/transcribe/latest/dg/API_MedicalTranscriptionJob.html * * @param jobName - Identifier for the jobName. * @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account. * @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region. * @param partition - Partition of the AWS account [aws, aws-cn, aws-us-gov]; defaults to `aws`, unless using the CDK, where the default is the current Stack's partition. * * Possible conditions: * - .ifAwsResourceTag() */ onMedicaltranscriptionjob(jobName, account, region, partition) { return this.on(`arn:${partition ?? this.defaultPartition}:transcribe:${region ?? this.defaultRegion}:${account ?? this.defaultAccount}:medical-transcription-job/${jobName}`); } /** * Adds a resource of type medicalvocabulary to the statement * * https://docs.aws.amazon.com/transcribe/latest/dg/API_CreateMedicalVocabulary.html * * @param vocabularyName - Identifier for the vocabularyName. * @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account. * @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region. * @param partition - Partition of the AWS account [aws, aws-cn, aws-us-gov]; defaults to `aws`, unless using the CDK, where the default is the current Stack's partition. * * Possible conditions: * - .ifAwsResourceTag() */ onMedicalvocabulary(vocabularyName, account, region, partition) { return this.on(`arn:${partition ?? this.defaultPartition}:transcribe:${region ?? this.defaultRegion}:${account ?? this.defaultAccount}:medical-vocabulary/${vocabularyName}`); } /** * Adds a resource of type callanalyticsjob to the statement * * https://docs.aws.amazon.com/transcribe/latest/dg/API_CallAnalyticsJob.html * * @param jobName - Identifier for the jobName. * @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account. * @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region. * @param partition - Partition of the AWS account [aws, aws-cn, aws-us-gov]; defaults to `aws`, unless using the CDK, where the default is the current Stack's partition. * * Possible conditions: * - .ifAwsResourceTag() */ onCallanalyticsjob(jobName, account, region, partition) { return this.on(`arn:${partition ?? this.defaultPartition}:transcribe:${region ?? this.defaultRegion}:${account ?? this.defaultAccount}:analytics/${jobName}`); } /** * Adds a resource of type callanalyticscategory to the statement * * https://docs.aws.amazon.com/transcribe/latest/dg/API_CreateCallAnalyticsCategory.html * * @param categoryName - Identifier for the categoryName. * @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account. * @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region. * @param partition - Partition of the AWS account [aws, aws-cn, aws-us-gov]; defaults to `aws`, unless using the CDK, where the default is the current Stack's partition. * * Possible conditions: * - .ifAwsResourceTag() */ onCallanalyticscategory(categoryName, account, region, partition) { return this.on(`arn:${partition ?? this.defaultPartition}:transcribe:${region ?? this.defaultRegion}:${account ?? this.defaultAccount}:analytics-category/${categoryName}`); } /** * Adds a resource of type medicalscribejob to the statement * * https://docs.aws.amazon.com/transcribe/latest/dg/API_MedicalScribeJob.html * * @param jobName - Identifier for the jobName. * @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account. * @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region. * @param partition - Partition of the AWS account [aws, aws-cn, aws-us-gov]; defaults to `aws`, unless using the CDK, where the default is the current Stack's partition. * * Possible conditions: * - .ifAwsResourceTag() */ onMedicalscribejob(jobName, account, region, partition) { return this.on(`arn:${partition ?? this.defaultPartition}:transcribe:${region ?? this.defaultRegion}:${account ?? this.defaultAccount}:medical-scribe-job/${jobName}`); } /** * Filters access by requiring tag values present in a resource creation request * * https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-globally-available * * Applies to actions: * - .toCreateCallAnalyticsCategory() * - .toCreateLanguageModel() * - .toCreateMedicalVocabulary() * - .toCreateVocabulary() * - .toCreateVocabularyFilter() * - .toStartCallAnalyticsJob() * - .toStartMedicalScribeJob() * - .toStartMedicalTranscriptionJob() * - .toStartTranscriptionJob() * - .toTagResource() * * @param tagKey The tag key to check * @param value The value(s) to check * @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike` */ ifAwsRequestTag(tagKey, value, operator) { return this.if(`aws:RequestTag/${tagKey}`, value, operator ?? 'StringLike'); } /** * Filters access by requiring tag value associated with the resource * * https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-globally-available * * Applies to resource types: * - transcriptionjob * - vocabulary * - vocabularyfilter * - languagemodel * - medicaltranscriptionjob * - medicalvocabulary * - callanalyticsjob * - callanalyticscategory * - medicalscribejob * * @param tagKey The tag key to check * @param value The value(s) to check * @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike` */ ifAwsResourceTag(tagKey, value, operator) { return this.if(`aws:ResourceTag/${tagKey}`, value, operator ?? 'StringLike'); } /** * Filters access by requiring the presence of mandatory tags in the request * * https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-globally-available * * Applies to actions: * - .toCreateCallAnalyticsCategory() * - .toCreateLanguageModel() * - .toCreateMedicalVocabulary() * - .toCreateVocabulary() * - .toCreateVocabularyFilter() * - .toStartCallAnalyticsJob() * - .toStartMedicalScribeJob() * - .toStartMedicalTranscriptionJob() * - .toStartTranscriptionJob() * - .toTagResource() * - .toUntagResource() * * @param value The value(s) to check * @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike` */ ifAwsTagKeys(value, operator) { return this.if(`aws:TagKeys`, value, operator ?? 'StringLike'); } /** * Filters access based on the output bucket name included in the request * * https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazontranscribe.html#amazontranscribe-policy-keys * * Applies to actions: * - .toStartMedicalScribeJob() * - .toStartMedicalTranscriptionJob() * - .toStartTranscriptionJob() * * @param value The value(s) to check * @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike` */ ifOutputBucketName(value, operator) { return this.if(`OutputBucketName`, value, operator ?? 'StringLike'); } /** * Filters access based on the KMS key id included in the request * * https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazontranscribe.html#amazontranscribe-policy-keys * * Applies to actions: * - .toStartCallAnalyticsJob() * - .toStartMedicalScribeJob() * - .toStartMedicalTranscriptionJob() * - .toStartTranscriptionJob() * * @param value The value(s) to check * @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike` */ ifOutputEncryptionKMSKeyId(value, operator) { return this.if(`OutputEncryptionKMSKeyId`, value, operator ?? 'StringLike'); } /** * Filters access based on the output key included in the request * * https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazontranscribe.html#amazontranscribe-policy-keys * * Applies to actions: * - .toStartMedicalTranscriptionJob() * - .toStartTranscriptionJob() * * @param value The value(s) to check * @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike` */ ifOutputKey(value, operator) { return this.if(`OutputKey`, value, operator ?? 'StringLike'); } /** * Filters access based on the output location included in the request * * https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazontranscribe.html#amazontranscribe-policy-keys * * Applies to actions: * - .toStartCallAnalyticsJob() * * @param value The value(s) to check * @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike` */ ifOutputLocation(value, operator) { return this.if(`OutputLocation`, value, operator ?? 'StringLike'); } } exports.Transcribe = Transcribe; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNjcmliZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInRyYW5zY3JpYmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EseUNBQXlEO0FBRXpEOzs7O0dBSUc7QUFDSCxNQUFhLFVBQVcsU0FBUSx3QkFBZTtJQUc3Qzs7OztPQUlHO0lBQ0gsWUFBWSxHQUFZO1FBQ3RCLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQVJOLGtCQUFhLEdBQUcsWUFBWSxDQUFDO1FBbXBCMUIsb0JBQWUsR0FBb0I7WUFDM0MsS0FBSyxFQUFFO2dCQUNMLDZCQUE2QjtnQkFDN0IscUJBQXFCO2dCQUNyQix5QkFBeUI7Z0JBQ3pCLGtCQUFrQjtnQkFDbEIsd0JBQXdCO2dCQUN4Qiw2QkFBNkI7Z0JBQzdCLHdCQUF3QjtnQkFDeEIscUJBQXFCO2dCQUNyQix3QkFBd0I7Z0JBQ3hCLCtCQUErQjtnQkFDL0IseUJBQXlCO2dCQUN6Qix3QkFBd0I7Z0JBQ3hCLGtCQUFrQjtnQkFDbEIsd0JBQXdCO2dCQUN4Qix1QkFBdUI7Z0JBQ3ZCLHVDQUF1QztnQkFDdkMsZ0RBQWdEO2dCQUNoRCx1QkFBdUI7Z0JBQ3ZCLDBCQUEwQjtnQkFDMUIsaUNBQWlDO2dCQUNqQywwQ0FBMEM7Z0JBQzFDLDhCQUE4QjtnQkFDOUIsMEJBQTBCO2dCQUMxQixtQ0FBbUM7Z0JBQ25DLHVCQUF1QjtnQkFDdkIsNkJBQTZCO2dCQUM3Qix5QkFBeUI7Z0JBQ3pCLGtCQUFrQjtnQkFDbEIsd0JBQXdCO2FBQ3pCO1lBQ0QsSUFBSSxFQUFFO2dCQUNKLHVCQUF1QjtnQkFDdkIsMEJBQTBCO2dCQUMxQixxQkFBcUI7Z0JBQ3JCLHFCQUFxQjtnQkFDckIsd0JBQXdCO2dCQUN4Qiw0QkFBNEI7Z0JBQzVCLHNCQUFzQjtnQkFDdEIscUJBQXFCO2dCQUNyQixlQUFlO2dCQUNmLHFCQUFxQjtnQkFDckIscUJBQXFCO2FBQ3RCO1lBQ0QsSUFBSSxFQUFFO2dCQUNKLDZCQUE2QjtnQkFDN0IsdUJB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RSxDQUFDLGFBQWEsRUFBRSxLQUFLLEVBQUUsUUFBUSxJQUFJLFlBQVksQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFFRDs7Ozs7Ozs7Ozs7O09BWUc7SUFDSSxrQkFBa0IsQ0FBQyxLQUF3QixFQUFFLFFBQTRCO1FBQzlFLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxrQkFBa0IsRUFBRSxLQUFLLEVBQUUsUUFBUSxJQUFJLFlBQVksQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFFRDs7Ozs7Ozs7Ozs7OztPQWFHO0lBQ0ksMEJBQTBCLENBQUMsS0FBd0IsRUFBRSxRQUE0QjtRQUN0RixPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsMEJBQTBCLEVBQUUsS0FBSyxFQUFFLFFBQVEsSUFBSSxZQUFZLENBQUMsQ0FBQztJQUM5RSxDQUFDO0lBRUQ7Ozs7Ozs7Ozs7O09BV0c7SUFDSSxXQUFXLENBQUMsS0FBd0IsRUFBRSxRQUE0QjtRQUN2RSxPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsV0FBVyxFQUFFLEtBQUssRUFBRSxRQUFRLElBQUksWUFBWSxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVEOzs7Ozs7Ozs7O09BVUc7SUFDSSxnQkFBZ0IsQ0FBQyxLQUF3QixFQUFFLFFBQTRCO1FBQzVFLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxnQkFBZ0IsRUFBRSxLQUFLLEVBQUUsUUFBUSxJQUFJLFlBQVksQ0FBQyxDQUFDO0lBQ3BFLENBQUM7Q0FDRjtBQXQvQkQsZ0NBcy9CQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFjY2Vzc0xldmVsTGlzdCB9IGZyb20gJy4uLy4uL3NoYXJlZC9hY2Nlc3MtbGV2ZWwnO1xuaW1wb3J0IHsgUG9saWN5U3RhdGVtZW50LCBPcGVyYXRvciB9IGZyb20gJy4uLy4uL3NoYXJlZCc7XG5cbi8qKlxuICogU3RhdGVtZW50IHByb3ZpZGVyIGZvciBzZXJ2aWNlIFt0cmFuc2NyaWJlXShodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb2