UNPKG

iam-floyd

Version:

AWS IAM policy statement generator with fluent interface

1,434 lines 119 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.LexV2 = void 0; const shared_1 = require("../../shared"); /** * Statement provider for service [lex-v2](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonlexv2.html). * * @param sid [SID](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_sid.html) of the statement */ class LexV2 extends shared_1.PolicyStatement { /** * Statement provider for service [lex-v2](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonlexv2.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 = 'lex'; this.accessLevelList = { Write: [ 'BatchCreateCustomVocabularyItem', 'BatchDeleteCustomVocabularyItem', 'BatchUpdateCustomVocabularyItem', 'BuildBotLocale', 'CreateBot', 'CreateBotAlias', 'CreateBotChannel', 'CreateBotLocale', 'CreateBotReplica', 'CreateBotVersion', 'CreateCustomVocabulary', 'CreateExport', 'CreateIntent', 'CreateResourcePolicy', 'CreateSlot', 'CreateSlotType', 'CreateTestSet', 'CreateTestSetDiscrepancyReport', 'CreateUploadUrl', 'DeleteBot', 'DeleteBotAlias', 'DeleteBotChannel', 'DeleteBotLocale', 'DeleteBotReplica', 'DeleteBotVersion', 'DeleteCustomVocabulary', 'DeleteExport', 'DeleteImport', 'DeleteIntent', 'DeleteResourcePolicy', 'DeleteSession', 'DeleteSlot', 'DeleteSlotType', 'DeleteTestSet', 'DeleteUtterances', 'PutSession', 'RecognizeText', 'RecognizeUtterance', 'StartBotRecommendation', 'StartBotResourceGeneration', 'StartConversation', 'StartImport', 'StartTestExecution', 'StartTestSetGeneration', 'StopBotRecommendation', 'UpdateBot', 'UpdateBotAlias', 'UpdateBotLocale', 'UpdateBotRecommendation', 'UpdateCustomVocabulary', 'UpdateExport', 'UpdateIntent', 'UpdateResourcePolicy', 'UpdateSlot', 'UpdateSlotType', 'UpdateTestSet' ], Read: [ 'DescribeBot', 'DescribeBotAlias', 'DescribeBotChannel', 'DescribeBotLocale', 'DescribeBotRecommendation', 'DescribeBotReplica', 'DescribeBotResourceGeneration', 'DescribeBotVersion', 'DescribeCustomVocabulary', 'DescribeCustomVocabularyMetadata', 'DescribeExport', 'DescribeImport', 'DescribeIntent', 'DescribeResourcePolicy', 'DescribeSlot', 'DescribeSlotType', 'DescribeTestExecution', 'DescribeTestSet', 'DescribeTestSetDiscrepancyReport', 'DescribeTestSetGeneration', 'GenerateBotElement', 'GetSession', 'GetTestExecutionArtifactsUrl', 'ListTagsForResource', 'ListTestExecutionResultItems', 'ListTestSetRecords' ], List: [ 'ListAggregatedUtterances', 'ListBotAliasReplicas', 'ListBotAliases', 'ListBotChannels', 'ListBotLocales', 'ListBotRecommendations', 'ListBotReplicas', 'ListBotResourceGenerations', 'ListBotVersionReplicas', 'ListBotVersions', 'ListBots', 'ListBuiltInIntents', 'ListBuiltInSlotTypes', 'ListCustomVocabularyItems', 'ListExports', 'ListImports', 'ListIntentMetrics', 'ListIntentPaths', 'ListIntentStageMetrics', 'ListIntents', 'ListRecommendedIntents', 'ListSessionAnalyticsData', 'ListSessionMetrics', 'ListSlotTypes', 'ListSlots', 'ListTestExecutions', 'ListTestSets', 'SearchAssociatedTranscripts' ], Tagging: [ 'TagResource', 'UntagResource' ] }; } /** * Grants permission to create new items in an existing custom vocabulary * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_BatchCreateCustomVocabularyItem.html */ toBatchCreateCustomVocabularyItem() { return this.to('BatchCreateCustomVocabularyItem'); } /** * Grants permission to delete existing items in an existing custom vocabulary * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_BatchDeleteCustomVocabularyItem.html */ toBatchDeleteCustomVocabularyItem() { return this.to('BatchDeleteCustomVocabularyItem'); } /** * Grants permission to update existing items in an existing custom vocabulary * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_BatchUpdateCustomVocabularyItem.html */ toBatchUpdateCustomVocabularyItem() { return this.to('BatchUpdateCustomVocabularyItem'); } /** * Grants permission to build an existing bot locale in a bot * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_BuildBotLocale.html */ toBuildBotLocale() { return this.to('BuildBotLocale'); } /** * Grants permission to create a new bot and a test bot alias pointing to the DRAFT bot version * * Access Level: Write * * Possible conditions: * - .ifAwsTagKeys() * - .ifAwsRequestTag() * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_CreateBot.html */ toCreateBot() { return this.to('CreateBot'); } /** * Grants permission to create a new bot alias in a bot * * Access Level: Write * * Possible conditions: * - .ifAwsTagKeys() * - .ifAwsRequestTag() * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_CreateBotAlias.html */ toCreateBotAlias() { return this.to('CreateBotAlias'); } /** * Grants permission to create a bot channel in an existing bot * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/dg/deploying-messaging-platform.html */ toCreateBotChannel() { return this.to('CreateBotChannel'); } /** * Grants permission to create a new bot locale in an existing bot * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_CreateBotLocale.html */ toCreateBotLocale() { return this.to('CreateBotLocale'); } /** * Grants permission to create bot replica for a bot * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_CreateBotReplica.html */ toCreateBotReplica() { return this.to('CreateBotReplica'); } /** * Grants permission to create a new version of an existing bot * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_CreateBotVersion.html */ toCreateBotVersion() { return this.to('CreateBotVersion'); } /** * Grants permission to create a new custom vocabulary in an existing bot locale * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/dg/vocab.html */ toCreateCustomVocabulary() { return this.to('CreateCustomVocabulary'); } /** * Grants permission to create an export for an existing resource * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_CreateExport.html */ toCreateExport() { return this.to('CreateExport'); } /** * Grants permission to create a new intent in an existing bot locale * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_CreateIntent.html */ toCreateIntent() { return this.to('CreateIntent'); } /** * Grants permission to create a new resource policy for a Lex resource * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_CreateResourcePolicy.html */ toCreateResourcePolicy() { return this.to('CreateResourcePolicy'); } /** * Grants permission to create a new slot in an intent * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_CreateSlot.html */ toCreateSlot() { return this.to('CreateSlot'); } /** * Grants permission to create a new slot type in an existing bot locale * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_CreateSlotType.html */ toCreateSlotType() { return this.to('CreateSlotType'); } /** * Grants permission to import a new test-set * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/dg/create-test-set-from-CSV.html */ toCreateTestSet() { return this.to('CreateTestSet'); } /** * Grants permission to create a test set discrepancy report * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_CreateTestSetDiscrepancyReport.html */ toCreateTestSetDiscrepancyReport() { return this.to('CreateTestSetDiscrepancyReport'); } /** * Grants permission to create an upload url for import file * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_CreateUploadUrl.html */ toCreateUploadUrl() { return this.to('CreateUploadUrl'); } /** * Grants permission to delete an existing bot * * Access Level: Write * * Dependent actions: * - lex:DeleteBotAlias * - lex:DeleteBotChannel * - lex:DeleteBotLocale * - lex:DeleteBotVersion * - lex:DeleteIntent * - lex:DeleteSlot * - lex:DeleteSlotType * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_DeleteBot.html */ toDeleteBot() { return this.to('DeleteBot'); } /** * Grants permission to delete an existing bot alias in a bot * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_DeleteBotAlias.html */ toDeleteBotAlias() { return this.to('DeleteBotAlias'); } /** * Grants permission to delete an existing bot channel * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/dg/deploying-messaging-platform.html */ toDeleteBotChannel() { return this.to('DeleteBotChannel'); } /** * Grants permission to delete an existing bot locale in a bot * * Access Level: Write * * Dependent actions: * - lex:DeleteIntent * - lex:DeleteSlot * - lex:DeleteSlotType * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_DeleteBotLocale.html */ toDeleteBotLocale() { return this.to('DeleteBotLocale'); } /** * Grants permission to delete an existing bot replica * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_DeleteBotReplica.html */ toDeleteBotReplica() { return this.to('DeleteBotReplica'); } /** * Grants permission to delete an existing bot version * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_DeleteBotVersion.html */ toDeleteBotVersion() { return this.to('DeleteBotVersion'); } /** * Grants permission to delete an existing custom vocabulary in a bot locale * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_DeleteCustomVocabulary.html */ toDeleteCustomVocabulary() { return this.to('DeleteCustomVocabulary'); } /** * Grants permission to delete an existing export * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_DeleteExport.html */ toDeleteExport() { return this.to('DeleteExport'); } /** * Grants permission to delete an existing import * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_DeleteImport.html */ toDeleteImport() { return this.to('DeleteImport'); } /** * Grants permission to delete an existing intent in a bot locale * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_DeleteIntent.html */ toDeleteIntent() { return this.to('DeleteIntent'); } /** * Grants permission to delete an existing resource policy for a Lex resource * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_DeleteResourcePolicy.html */ toDeleteResourcePolicy() { return this.to('DeleteResourcePolicy'); } /** * Grants permission to delete session information for a bot alias and user ID * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_runtime_DeleteSession.html */ toDeleteSession() { return this.to('DeleteSession'); } /** * Grants permission to delete an existing slot in an intent * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_DeleteSlot.html */ toDeleteSlot() { return this.to('DeleteSlot'); } /** * Grants permission to delete an existing slot type in a bot locale * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_DeleteSlotType.html */ toDeleteSlotType() { return this.to('DeleteSlotType'); } /** * Grants permission to delete an existing test set * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_DeleteTestSet.html */ toDeleteTestSet() { return this.to('DeleteTestSet'); } /** * Grants permission to delete utterance data for a bot * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_DeleteUtterances.html */ toDeleteUtterances() { return this.to('DeleteUtterances'); } /** * Grants permission to retrieve an existing bot * * Access Level: Read * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_DescribeBot.html */ toDescribeBot() { return this.to('DescribeBot'); } /** * Grants permission to retrieve an existing bot alias * * Access Level: Read * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_DescribeBotAlias.html */ toDescribeBotAlias() { return this.to('DescribeBotAlias'); } /** * Grants permission to retrieve an existing bot channel * * Access Level: Read * * https://docs.aws.amazon.com/lexv2/latest/dg/deploying-messaging-platform.html */ toDescribeBotChannel() { return this.to('DescribeBotChannel'); } /** * Grants permission to retrieve an existing bot locale * * Access Level: Read * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_DescribeBotLocale.html */ toDescribeBotLocale() { return this.to('DescribeBotLocale'); } /** * Grants permission to retrieve metadata information about a bot recommendation * * Access Level: Read * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_DescribeBotRecommendation.html */ toDescribeBotRecommendation() { return this.to('DescribeBotRecommendation'); } /** * Grants permission to retrieve an existing bot replica * * Access Level: Read * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_DescribeBotReplica.html */ toDescribeBotReplica() { return this.to('DescribeBotReplica'); } /** * Grants permission to retrieve metadata information for a bot resource generation * * Access Level: Read * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_DescribeBotResourceGeneration.html */ toDescribeBotResourceGeneration() { return this.to('DescribeBotResourceGeneration'); } /** * Grants permission to retrieve an existing bot version * * Access Level: Read * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_DescribeBotVersion.html */ toDescribeBotVersion() { return this.to('DescribeBotVersion'); } /** * Grants permission to retrieve an existing custom vocabulary * * Access Level: Read * * https://docs.aws.amazon.com/lexv2/latest/dg/vocab.html */ toDescribeCustomVocabulary() { return this.to('DescribeCustomVocabulary'); } /** * Grants permission to retrieve metadata of an existing custom vocabulary * * Access Level: Read * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_DescribeCustomVocabularyMetadata.html */ toDescribeCustomVocabularyMetadata() { return this.to('DescribeCustomVocabularyMetadata'); } /** * Grants permission to retrieve an existing export * * Access Level: Read * * Dependent actions: * - lex:DescribeBot * - lex:DescribeBotLocale * - lex:DescribeIntent * - lex:DescribeSlot * - lex:DescribeSlotType * - lex:ListBotLocales * - lex:ListIntents * - lex:ListSlotTypes * - lex:ListSlots * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_DescribeExport.html */ toDescribeExport() { return this.to('DescribeExport'); } /** * Grants permission to retrieve an existing import * * Access Level: Read * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_DescribeImport.html */ toDescribeImport() { return this.to('DescribeImport'); } /** * Grants permission to retrieve an existing intent * * Access Level: Read * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_DescribeIntent.html */ toDescribeIntent() { return this.to('DescribeIntent'); } /** * Grants permission to retrieve an existing resource policy for a Lex resource * * Access Level: Read * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_DescribeResourcePolicy.html */ toDescribeResourcePolicy() { return this.to('DescribeResourcePolicy'); } /** * Grants permission to retrieve an existing slot * * Access Level: Read * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_DescribeSlot.html */ toDescribeSlot() { return this.to('DescribeSlot'); } /** * Grants permission to retrieve an existing slot type * * Access Level: Read * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_DescribeSlotType.html */ toDescribeSlotType() { return this.to('DescribeSlotType'); } /** * Grants permission to retrieve test execution metadata * * Access Level: Read * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_DescribeTestExecution.html */ toDescribeTestExecution() { return this.to('DescribeTestExecution'); } /** * Grants permission to retrieve an existing test set * * Access Level: Read * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_DescribeTestSet.html */ toDescribeTestSet() { return this.to('DescribeTestSet'); } /** * Grants permission to retrieve test set discrepancy report metadata * * Access Level: Read * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_DescribeTestSetDiscrepancyReport.html */ toDescribeTestSetDiscrepancyReport() { return this.to('DescribeTestSetDiscrepancyReport'); } /** * Grants permission to retrieve test set generation metadata * * Access Level: Read * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_DescribeTestSetGeneration.html */ toDescribeTestSetGeneration() { return this.to('DescribeTestSetGeneration'); } /** * Grants permission to generate supported fields or elements for a bot * * Access Level: Read * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_GenerateBotElement.html */ toGenerateBotElement() { return this.to('GenerateBotElement'); } /** * Grants permission to retrieve session information for a bot alias and user ID * * Access Level: Read * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_runtime_GetSession.html */ toGetSession() { return this.to('GetSession'); } /** * Grants permission to retrieve artifacts URL for a test execution * * Access Level: Read * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_GetTestExecutionArtifactsUrl.html */ toGetTestExecutionArtifactsUrl() { return this.to('GetTestExecutionArtifactsUrl'); } /** * Grants permission to list utterances and statistics for a bot * * Access Level: List * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_ListAggregatedUtterances.html */ toListAggregatedUtterances() { return this.to('ListAggregatedUtterances'); } /** * Grants permission to list alias replicas in a bot replica * * Access Level: List * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_ListBotAliasReplicas.html */ toListBotAliasReplicas() { return this.to('ListBotAliasReplicas'); } /** * Grants permission to list bot aliases in an bot * * Access Level: List * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_ListBotAliases.html */ toListBotAliases() { return this.to('ListBotAliases'); } /** * Grants permission to list bot channels * * Access Level: List * * https://docs.aws.amazon.com/lexv2/latest/dg/deploying-messaging-platform.html */ toListBotChannels() { return this.to('ListBotChannels'); } /** * Grants permission to list bot locales in a bot * * Access Level: List * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_ListBotLocales.html */ toListBotLocales() { return this.to('ListBotLocales'); } /** * Grants permission to get a list of bot recommendations that meet the specified criteria * * Access Level: List * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_ListBotRecommendations.html */ toListBotRecommendations() { return this.to('ListBotRecommendations'); } /** * Grants permission to list replicas of a bot * * Access Level: List * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_ListBotReplicas.html */ toListBotReplicas() { return this.to('ListBotReplicas'); } /** * Grants permission to list the resource generations for a bot * * Access Level: List * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_ListBotResourceGenerations.html */ toListBotResourceGenerations() { return this.to('ListBotResourceGenerations'); } /** * Grants permission to list version replicas in a bot replica * * Access Level: List * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_ListBotVersionReplicas.html */ toListBotVersionReplicas() { return this.to('ListBotVersionReplicas'); } /** * Grants permission to list existing bot versions * * Access Level: List * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_ListBotVersions.html */ toListBotVersions() { return this.to('ListBotVersions'); } /** * Grants permission to list existing bots * * Access Level: List * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_ListBots.html */ toListBots() { return this.to('ListBots'); } /** * Grants permission to list built-in intents * * Access Level: List * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_ListBuiltInIntents.html */ toListBuiltInIntents() { return this.to('ListBuiltInIntents'); } /** * Grants permission to list built-in slot types * * Access Level: List * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_ListBuiltInSlotTypes.html */ toListBuiltInSlotTypes() { return this.to('ListBuiltInSlotTypes'); } /** * Grants permission to list items of an existing custom vocabulary * * Access Level: List * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_ListCustomVocabularyItems.html */ toListCustomVocabularyItems() { return this.to('ListCustomVocabularyItems'); } /** * Grants permission to list existing exports * * Access Level: List * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_ListExports.html */ toListExports() { return this.to('ListExports'); } /** * Grants permission to list existing imports * * Access Level: List * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_ListImports.html */ toListImports() { return this.to('ListImports'); } /** * Grants permission to list intent analytics metrics for a bot * * Access Level: List * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_ListIntentMetrics.html */ toListIntentMetrics() { return this.to('ListIntentMetrics'); } /** * Grants permission to list intent path analytics for a bot * * Access Level: List * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_ListIntentPaths.html */ toListIntentPaths() { return this.to('ListIntentPaths'); } /** * Grants permission to list intentStage analytics metrics for a bot * * Access Level: List * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_ListIntentStageMetrics.html */ toListIntentStageMetrics() { return this.to('ListIntentStageMetrics'); } /** * Grants permission to list intents in a bot * * Access Level: List * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_ListIntents.html */ toListIntents() { return this.to('ListIntents'); } /** * Grants permission to get a list of recommended intents provided by the bot recommendation * * Access Level: List * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_ListRecommendedIntents.html */ toListRecommendedIntents() { return this.to('ListRecommendedIntents'); } /** * Grants permission to list session analytics data for a bot * * Access Level: List * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_ListSessionAnalyticsData.html */ toListSessionAnalyticsData() { return this.to('ListSessionAnalyticsData'); } /** * Grants permission to list session analytics metrics for a bot * * Access Level: List * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_ListSessionMetrics.html */ toListSessionMetrics() { return this.to('ListSessionMetrics'); } /** * Grants permission to list slot types in a bot * * Access Level: List * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_ListSlotTypes.html */ toListSlotTypes() { return this.to('ListSlotTypes'); } /** * Grants permission to list slots in an intent * * Access Level: List * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_ListSlots.html */ toListSlots() { return this.to('ListSlots'); } /** * Grants permission to lists tags for a Lex resource * * Access Level: Read * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_ListTagsForResource.html */ toListTagsForResource() { return this.to('ListTagsForResource'); } /** * Grants permission to retrieve test results data for a test execution * * Access Level: Read * * Dependent actions: * - lex:ListTestSetRecords * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_ListTestExecutionResultItems.html */ toListTestExecutionResultItems() { return this.to('ListTestExecutionResultItems'); } /** * Grants permission to list test executions * * Access Level: List * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_ListTestExecutions.html */ toListTestExecutions() { return this.to('ListTestExecutions'); } /** * Grants permission to retrieve records inside an existing test set * * Access Level: Read * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_ListTestSetRecords.html */ toListTestSetRecords() { return this.to('ListTestSetRecords'); } /** * Grants permission to list test sets * * Access Level: List * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_ListTestSets.html */ toListTestSets() { return this.to('ListTestSets'); } /** * Grants permission to create a new session or modify an existing session for a bot alias and user ID * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_runtime_PutSession.html */ toPutSession() { return this.to('PutSession'); } /** * Grants permission to send user input (text-only) to an bot alias * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_runtime_RecognizeText.html */ toRecognizeText() { return this.to('RecognizeText'); } /** * Grants permission to send user input (text or speech) to an bot alias * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_runtime_RecognizeUtterance.html */ toRecognizeUtterance() { return this.to('RecognizeUtterance'); } /** * Grants permission to search for associated transcripts that meet the specified criteria * * Access Level: List * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_SearchAssociatedTranscripts.html */ toSearchAssociatedTranscripts() { return this.to('SearchAssociatedTranscripts'); } /** * Grants permission to start a bot recommendation for an existing bot locale * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_StartBotRecommendation.html */ toStartBotRecommendation() { return this.to('StartBotRecommendation'); } /** * Grants permission to start a resource generation for an existing bot locale * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_StartBotResourceGeneration.html */ toStartBotResourceGeneration() { return this.to('StartBotResourceGeneration'); } /** * Grants permission to stream user input (speech/text/DTMF) to a bot alias * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_runtime_StartConversation.html */ toStartConversation() { return this.to('StartConversation'); } /** * Grants permission to start a new import with the uploaded import file * * Access Level: Write * * Possible conditions: * - .ifAwsTagKeys() * - .ifAwsRequestTag() * * Dependent actions: * - lex:CreateBot * - lex:CreateBotLocale * - lex:CreateCustomVocabulary * - lex:CreateIntent * - lex:CreateSlot * - lex:CreateSlotType * - lex:CreateTestSet * - lex:DeleteBotLocale * - lex:DeleteCustomVocabulary * - lex:DeleteIntent * - lex:DeleteSlot * - lex:DeleteSlotType * - lex:UpdateBot * - lex:UpdateBotLocale * - lex:UpdateCustomVocabulary * - lex:UpdateIntent * - lex:UpdateSlot * - lex:UpdateSlotType * - lex:UpdateTestSet * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_StartImport.html */ toStartImport() { return this.to('StartImport'); } /** * Grants permission to start a test execution using a test set * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_StartTestExecution.html */ toStartTestExecution() { return this.to('StartTestExecution'); } /** * Grants permission to generate a test set * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_StartTestSetGeneration.html */ toStartTestSetGeneration() { return this.to('StartTestSetGeneration'); } /** * Grants permission to stop a bot recommendation for an existing bot locale * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_StopBotRecommendation.html */ toStopBotRecommendation() { return this.to('StopBotRecommendation'); } /** * Grants permission to add or overwrite tags of a Lex resource * * Access Level: Tagging * * Possible conditions: * - .ifAwsTagKeys() * - .ifAwsRequestTag() * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_TagResource.html */ toTagResource() { return this.to('TagResource'); } /** * Grants permission to remove tags from a Lex resource * * Access Level: Tagging * * Possible conditions: * - .ifAwsTagKeys() * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_UntagResource.html */ toUntagResource() { return this.to('UntagResource'); } /** * Grants permission to update an existing bot * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_UpdateBot.html */ toUpdateBot() { return this.to('UpdateBot'); } /** * Grants permission to update an existing bot alias * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_UpdateBotAlias.html */ toUpdateBotAlias() { return this.to('UpdateBotAlias'); } /** * Grants permission to update an existing bot locale * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_UpdateBotLocale.html */ toUpdateBotLocale() { return this.to('UpdateBotLocale'); } /** * Grants permission to update an existing bot recommendation request * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_UpdateBotRecommendation.html */ toUpdateBotRecommendation() { return this.to('UpdateBotRecommendation'); } /** * Grants permission to update an existing custom vocabulary * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/dg/vocab.html */ toUpdateCustomVocabulary() { return this.to('UpdateCustomVocabulary'); } /** * Grants permission to update an existing export * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_UpdateExport.html */ toUpdateExport() { return this.to('UpdateExport'); } /** * Grants permission to update an existing intent * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_UpdateIntent.html */ toUpdateIntent() { return this.to('UpdateIntent'); } /** * Grants permission to update an existing resource policy for a Lex resource * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_UpdateResourcePolicy.html */ toUpdateResourcePolicy() { return this.to('UpdateResourcePolicy'); } /** * Grants permission to update an existing slot * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_UpdateSlot.html */ toUpdateSlot() { return this.to('UpdateSlot'); } /** * Grants permission to update an existing slot type * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_UpdateSlotType.html */ toUpdateSlotType() { return this.to('UpdateSlotType'); } /** * Grants permission to update an existing test set * * Access Level: Write * * https://docs.aws.amazon.com/lexv2/latest/APIReference/API_UpdateTestSet.html */ toUpdateTestSet() { return this.to('UpdateTestSet'); } /** * Adds a resource of type bot to the statement * * https://docs.aws.amazon.com/lexv2/latest/dg/how-it-works.html * * @param botId - Identifier for the botId. * @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() */ onBot(botId, account, region, partition) { return this.on(`arn:${partition ?? this.defaultPartition}:lex:${region ?? this.defaultRegion}:${account ?? this.defaultAccount}:bot/${botId}`); } /** * Adds a resource of type bot alias to the statement * * https://docs.aws.amazon.com/lexv2/latest/dg/how-it-works.html * * @param botId - Identifier for the botId. * @param botAliasId - Identifier for the botAliasId. * @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() */ onBotAlias(botId, botAliasId, account, region, partition) { return this.on(`arn:${partition ?? this.defaultPartition}:lex:${region ?? this.defaultRegion}:${account ?? this.defaultAccount}:bot-alias/${botId}/${botAliasId}`); } /** * Adds a resource of type test set to the statement * * https://docs.aws.amazon.com/lexv2/latest/dg/test-workbench.html * * @param testSetId - Identifier for the testSetId. * @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() */ onTestSet(testSetId, account, region, partition) { return this.on(`arn:${partition ?? this.defaultPartition}:lex:${region ?? this.defaultRegion}:${account ?? this.defaultAccount}:test-set/${testSetId}`); } /** * Filters access by the tags in the request * * https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-requesttag * * Applies to actions: * - .toCreateBot() * - .toCreateBotAlias() * - .toStartImport() * - .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 the tags attached to a Lex resource * * https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-resourcetag * * Applies to resource types: * - bot * - bot alias * - test set * * @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 the set of tag keys in the request * * https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-tagkeys * * Applies to actions: * - .toCreateBot() * - .toCreateBotAlias() * - .toStartImport() * - .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'); } } exports.LexV2 = LexV2; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGV4djIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJsZXh2Mi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSx5Q0FBeUQ7QUFFekQ7Ozs7R0FJRztBQUNILE1BQWEsS0FBTSxTQUFRLHdCQUFlO0lBR3hDOzs7O09BSUc7SUFDSCxZQUFZLEdBQVk7UUFDdEIsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBUk4sa0JBQWEsR0FBRyxLQUFLLENBQUM7UUEreENuQixvQkFBZSxHQUFvQjtZQUMzQyxLQUFLLEVBQUU7Z0JBQ0wsaUNBQWlDO2dCQUNqQyxpQ0FBaUM7Z0JBQ2pDLGlDQUFpQztnQkFDakMsZ0JBQWdCO2dCQUNoQixXQUFXO2dCQUNYLGdCQUFnQjtnQkFDaEIsa0JBQWtCO2dCQUNsQixpQkFBaUI7Z0JBQ2pCLGtCQUFrQjtnQkFDbEIsa0JBQWtCO2dCQUNsQix3QkFBd0I7Z0JBQ3hCLGNBQWM7Z0JBQ2QsY0FBYztnQkFDZCxzQkFBc0I7Z0JBQ3RCLFlBQVk7Z0JBQ1osZ0JBQWdCO2dCQUNoQixlQUFlO2dCQUNmLGdDQUFnQztnQkFDaEMsaUJBQWlCO2dCQUNqQixXQUFXO2dCQUNYLGdCQUFnQjtnQkFDaEIsa0JBQWtCO2dCQUNsQixpQkFBaUI7Z0JBQ2pCLGtCQUFrQjtnQkFDbEIsa0JBQWtCO2dCQUNsQix3QkFBd0I7Z0JBQ3hCLGNBQWM7Z0JBQ2QsY0FBYztnQkFDZCxjQUFjO2dCQUNkLHNCQUFzQjtnQkFDdEIsZUFBZTtnQkFDZixZQUFZO2dCQUNaLGdCQUFnQjtnQkFDaEIsZUFBZTtnQkFDZixrQkFBa0I7Z0JBQ2xCLFlBQVk7Z0JBQ1osZUFBZTtnQkFDZixvQkFBb0I7Z0JBQ3BCLHdCQUF3QjtnQkFDeEIsNEJBQTRCO2dCQUM1QixtQkFBbUI7Z0JBQ25CLGFBQWE7Z0JBQ2Isb0JBQW9CO2dCQUNwQix3QkFBd0I7Z0JBQ3hCLHVCQUF1QjtnQkFDdkIsV0FBVztnQkFDWCxnQkFBZ0I7Z0JBQ2hCLGlCQUFpQjtnQkFDakIs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