iam-floyd
Version:
AWS IAM policy statement generator with fluent interface
1,434 lines • 119 kB
JavaScript
"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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