amazonka-lexv2-models (empty) → 2.0
raw patch · 418 files changed
+51586/−0 lines, 418 filesdep +amazonka-coredep +amazonka-lexv2-modelsdep +amazonka-test
Dependencies added: amazonka-core, amazonka-lexv2-models, amazonka-test, base, bytestring, case-insensitive, tasty, tasty-hunit, text, time, unordered-containers
Files
- LICENSE +367/−0
- README.md +44/−0
- amazonka-lexv2-models.cabal +347/−0
- fixture/BatchCreateCustomVocabularyItem.yaml +10/−0
- fixture/BatchCreateCustomVocabularyItemResponse.proto +0/−0
- fixture/BatchDeleteCustomVocabularyItem.yaml +10/−0
- fixture/BatchDeleteCustomVocabularyItemResponse.proto +0/−0
- fixture/BatchUpdateCustomVocabularyItem.yaml +10/−0
- fixture/BatchUpdateCustomVocabularyItemResponse.proto +0/−0
- fixture/BuildBotLocale.yaml +10/−0
- fixture/BuildBotLocaleResponse.proto +0/−0
- fixture/CreateBot.yaml +10/−0
- fixture/CreateBotAlias.yaml +10/−0
- fixture/CreateBotAliasResponse.proto +0/−0
- fixture/CreateBotLocale.yaml +10/−0
- fixture/CreateBotLocaleResponse.proto +0/−0
- fixture/CreateBotResponse.proto +0/−0
- fixture/CreateBotVersion.yaml +10/−0
- fixture/CreateBotVersionResponse.proto +0/−0
- fixture/CreateExport.yaml +10/−0
- fixture/CreateExportResponse.proto +0/−0
- fixture/CreateIntent.yaml +10/−0
- fixture/CreateIntentResponse.proto +0/−0
- fixture/CreateResourcePolicy.yaml +10/−0
- fixture/CreateResourcePolicyResponse.proto +0/−0
- fixture/CreateResourcePolicyStatement.yaml +10/−0
- fixture/CreateResourcePolicyStatementResponse.proto +0/−0
- fixture/CreateSlot.yaml +10/−0
- fixture/CreateSlotResponse.proto +0/−0
- fixture/CreateSlotType.yaml +10/−0
- fixture/CreateSlotTypeResponse.proto +0/−0
- fixture/CreateUploadUrl.yaml +10/−0
- fixture/CreateUploadUrlResponse.proto +0/−0
- fixture/DeleteBot.yaml +10/−0
- fixture/DeleteBotAlias.yaml +10/−0
- fixture/DeleteBotAliasResponse.proto +0/−0
- fixture/DeleteBotLocale.yaml +10/−0
- fixture/DeleteBotLocaleResponse.proto +0/−0
- fixture/DeleteBotResponse.proto +0/−0
- fixture/DeleteBotVersion.yaml +10/−0
- fixture/DeleteBotVersionResponse.proto +0/−0
- fixture/DeleteCustomVocabulary.yaml +10/−0
- fixture/DeleteCustomVocabularyResponse.proto +0/−0
- fixture/DeleteExport.yaml +10/−0
- fixture/DeleteExportResponse.proto +0/−0
- fixture/DeleteImport.yaml +10/−0
- fixture/DeleteImportResponse.proto +0/−0
- fixture/DeleteIntent.yaml +10/−0
- fixture/DeleteIntentResponse.proto +0/−0
- fixture/DeleteResourcePolicy.yaml +10/−0
- fixture/DeleteResourcePolicyResponse.proto +0/−0
- fixture/DeleteResourcePolicyStatement.yaml +10/−0
- fixture/DeleteResourcePolicyStatementResponse.proto +0/−0
- fixture/DeleteSlot.yaml +10/−0
- fixture/DeleteSlotResponse.proto +0/−0
- fixture/DeleteSlotType.yaml +10/−0
- fixture/DeleteSlotTypeResponse.proto +0/−0
- fixture/DeleteUtterances.yaml +10/−0
- fixture/DeleteUtterancesResponse.proto +0/−0
- fixture/DescribeBot.yaml +10/−0
- fixture/DescribeBotAlias.yaml +10/−0
- fixture/DescribeBotAliasResponse.proto +0/−0
- fixture/DescribeBotLocale.yaml +10/−0
- fixture/DescribeBotLocaleResponse.proto +0/−0
- fixture/DescribeBotRecommendation.yaml +10/−0
- fixture/DescribeBotRecommendationResponse.proto +0/−0
- fixture/DescribeBotResponse.proto +0/−0
- fixture/DescribeBotVersion.yaml +10/−0
- fixture/DescribeBotVersionResponse.proto +0/−0
- fixture/DescribeCustomVocabularyMetadata.yaml +10/−0
- fixture/DescribeCustomVocabularyMetadataResponse.proto +0/−0
- fixture/DescribeExport.yaml +10/−0
- fixture/DescribeExportResponse.proto +0/−0
- fixture/DescribeImport.yaml +10/−0
- fixture/DescribeImportResponse.proto +0/−0
- fixture/DescribeIntent.yaml +10/−0
- fixture/DescribeIntentResponse.proto +0/−0
- fixture/DescribeResourcePolicy.yaml +10/−0
- fixture/DescribeResourcePolicyResponse.proto +0/−0
- fixture/DescribeSlot.yaml +10/−0
- fixture/DescribeSlotResponse.proto +0/−0
- fixture/DescribeSlotType.yaml +10/−0
- fixture/DescribeSlotTypeResponse.proto +0/−0
- fixture/ListAggregatedUtterances.yaml +10/−0
- fixture/ListAggregatedUtterancesResponse.proto +0/−0
- fixture/ListBotAliases.yaml +10/−0
- fixture/ListBotAliasesResponse.proto +0/−0
- fixture/ListBotLocales.yaml +10/−0
- fixture/ListBotLocalesResponse.proto +0/−0
- fixture/ListBotRecommendations.yaml +10/−0
- fixture/ListBotRecommendationsResponse.proto +0/−0
- fixture/ListBotVersions.yaml +10/−0
- fixture/ListBotVersionsResponse.proto +0/−0
- fixture/ListBots.yaml +10/−0
- fixture/ListBotsResponse.proto +0/−0
- fixture/ListBuiltInIntents.yaml +10/−0
- fixture/ListBuiltInIntentsResponse.proto +0/−0
- fixture/ListBuiltInSlotTypes.yaml +10/−0
- fixture/ListBuiltInSlotTypesResponse.proto +0/−0
- fixture/ListCustomVocabularyItems.yaml +10/−0
- fixture/ListCustomVocabularyItemsResponse.proto +0/−0
- fixture/ListExports.yaml +10/−0
- fixture/ListExportsResponse.proto +0/−0
- fixture/ListImports.yaml +10/−0
- fixture/ListImportsResponse.proto +0/−0
- fixture/ListIntents.yaml +10/−0
- fixture/ListIntentsResponse.proto +0/−0
- fixture/ListRecommendedIntents.yaml +10/−0
- fixture/ListRecommendedIntentsResponse.proto +0/−0
- fixture/ListSlotTypes.yaml +10/−0
- fixture/ListSlotTypesResponse.proto +0/−0
- fixture/ListSlots.yaml +10/−0
- fixture/ListSlotsResponse.proto +0/−0
- fixture/ListTagsForResource.yaml +10/−0
- fixture/ListTagsForResourceResponse.proto +0/−0
- fixture/SearchAssociatedTranscripts.yaml +10/−0
- fixture/SearchAssociatedTranscriptsResponse.proto +0/−0
- fixture/StartBotRecommendation.yaml +10/−0
- fixture/StartBotRecommendationResponse.proto +0/−0
- fixture/StartImport.yaml +10/−0
- fixture/StartImportResponse.proto +0/−0
- fixture/StopBotRecommendation.yaml +10/−0
- fixture/StopBotRecommendationResponse.proto +0/−0
- fixture/TagResource.yaml +10/−0
- fixture/TagResourceResponse.proto +0/−0
- fixture/UntagResource.yaml +10/−0
- fixture/UntagResourceResponse.proto +0/−0
- fixture/UpdateBot.yaml +10/−0
- fixture/UpdateBotAlias.yaml +10/−0
- fixture/UpdateBotAliasResponse.proto +0/−0
- fixture/UpdateBotLocale.yaml +10/−0
- fixture/UpdateBotLocaleResponse.proto +0/−0
- fixture/UpdateBotRecommendation.yaml +10/−0
- fixture/UpdateBotRecommendationResponse.proto +0/−0
- fixture/UpdateBotResponse.proto +0/−0
- fixture/UpdateExport.yaml +10/−0
- fixture/UpdateExportResponse.proto +0/−0
- fixture/UpdateIntent.yaml +10/−0
- fixture/UpdateIntentResponse.proto +0/−0
- fixture/UpdateResourcePolicy.yaml +10/−0
- fixture/UpdateResourcePolicyResponse.proto +0/−0
- fixture/UpdateSlot.yaml +10/−0
- fixture/UpdateSlotResponse.proto +0/−0
- fixture/UpdateSlotType.yaml +10/−0
- fixture/UpdateSlotTypeResponse.proto +0/−0
- gen/Amazonka/LexV2Models.hs +1319/−0
- gen/Amazonka/LexV2Models/BatchCreateCustomVocabularyItem.hs +323/−0
- gen/Amazonka/LexV2Models/BatchDeleteCustomVocabularyItem.hs +323/−0
- gen/Amazonka/LexV2Models/BatchUpdateCustomVocabularyItem.hs +323/−0
- gen/Amazonka/LexV2Models/BuildBotLocale.hs +289/−0
- gen/Amazonka/LexV2Models/CreateBot.hs +429/−0
- gen/Amazonka/LexV2Models/CreateBotAlias.hs +438/−0
- gen/Amazonka/LexV2Models/CreateBotLocale.hs +468/−0
- gen/Amazonka/LexV2Models/CreateBotVersion.hs +288/−0
- gen/Amazonka/LexV2Models/CreateExport.hs +280/−0
- gen/Amazonka/LexV2Models/CreateIntent.hs +778/−0
- gen/Amazonka/LexV2Models/CreateResourcePolicy.hs +232/−0
- gen/Amazonka/LexV2Models/CreateResourcePolicyStatement.hs +361/−0
- gen/Amazonka/LexV2Models/CreateSlot.hs +535/−0
- gen/Amazonka/LexV2Models/CreateSlotType.hs +523/−0
- gen/Amazonka/LexV2Models/CreateUploadUrl.hs +166/−0
- gen/Amazonka/LexV2Models/DeleteBot.hs +203/−0
- gen/Amazonka/LexV2Models/DeleteBotAlias.hs +235/−0
- gen/Amazonka/LexV2Models/DeleteBotLocale.hs +251/−0
- gen/Amazonka/LexV2Models/DeleteBotVersion.hs +237/−0
- gen/Amazonka/LexV2Models/DeleteCustomVocabulary.hs +247/−0
- gen/Amazonka/LexV2Models/DeleteExport.hs +184/−0
- gen/Amazonka/LexV2Models/DeleteImport.hs +184/−0
- gen/Amazonka/LexV2Models/DeleteIntent.hs +190/−0
- gen/Amazonka/LexV2Models/DeleteResourcePolicy.hs +218/−0
- gen/Amazonka/LexV2Models/DeleteResourcePolicyStatement.hs +253/−0
- gen/Amazonka/LexV2Models/DeleteSlot.hs +205/−0
- gen/Amazonka/LexV2Models/DeleteSlotType.hs +221/−0
- gen/Amazonka/LexV2Models/DeleteUtterances.hs +215/−0
- gen/Amazonka/LexV2Models/DescribeBot.hs +263/−0
- gen/Amazonka/LexV2Models/DescribeBotAlias.hs +328/−0
- gen/Amazonka/LexV2Models/DescribeBotLocale.hs +410/−0
- gen/Amazonka/LexV2Models/DescribeBotRecommendation.hs +377/−0
- gen/Amazonka/LexV2Models/DescribeBotVersion.hs +302/−0
- gen/Amazonka/LexV2Models/DescribeCustomVocabularyMetadata.hs +291/−0
- gen/Amazonka/LexV2Models/DescribeExport.hs +258/−0
- gen/Amazonka/LexV2Models/DescribeImport.hs +276/−0
- gen/Amazonka/LexV2Models/DescribeIntent.hs +464/−0
- gen/Amazonka/LexV2Models/DescribeResourcePolicy.hs +214/−0
- gen/Amazonka/LexV2Models/DescribeSlot.hs +415/−0
- gen/Amazonka/LexV2Models/DescribeSlotType.hs +375/−0
- gen/Amazonka/LexV2Models/Lens.hs +1907/−0
- gen/Amazonka/LexV2Models/ListAggregatedUtterances.hs +525/−0
- gen/Amazonka/LexV2Models/ListBotAliases.hs +259/−0
- gen/Amazonka/LexV2Models/ListBotLocales.hs +324/−0
- gen/Amazonka/LexV2Models/ListBotRecommendations.hs +341/−0
- gen/Amazonka/LexV2Models/ListBotVersions.hs +285/−0
- gen/Amazonka/LexV2Models/ListBots.hs +269/−0
- gen/Amazonka/LexV2Models/ListBuiltInIntents.hs +296/−0
- gen/Amazonka/LexV2Models/ListBuiltInSlotTypes.hs +293/−0
- gen/Amazonka/LexV2Models/ListCustomVocabularyItems.hs +290/−0
- gen/Amazonka/LexV2Models/ListExports.hs +354/−0
- gen/Amazonka/LexV2Models/ListImports.hs +354/−0
- gen/Amazonka/LexV2Models/ListIntents.hs +374/−0
- gen/Amazonka/LexV2Models/ListRecommendedIntents.hs +374/−0
- gen/Amazonka/LexV2Models/ListSlotTypes.hs +364/−0
- gen/Amazonka/LexV2Models/ListSlots.hs +391/−0
- gen/Amazonka/LexV2Models/ListTagsForResource.hs +163/−0
- gen/Amazonka/LexV2Models/SearchAssociatedTranscripts.hs +428/−0
- gen/Amazonka/LexV2Models/StartBotRecommendation.hs +378/−0
- gen/Amazonka/LexV2Models/StartImport.hs +302/−0
- gen/Amazonka/LexV2Models/StopBotRecommendation.hs +299/−0
- gen/Amazonka/LexV2Models/TagResource.hs +170/−0
- gen/Amazonka/LexV2Models/Types.hs +1473/−0
- gen/Amazonka/LexV2Models/Types/AdvancedRecognitionSetting.hs +87/−0
- gen/Amazonka/LexV2Models/Types/AggregatedUtterancesFilter.hs +118/−0
- gen/Amazonka/LexV2Models/Types/AggregatedUtterancesFilterName.hs +66/−0
- gen/Amazonka/LexV2Models/Types/AggregatedUtterancesFilterOperator.hs +71/−0
- gen/Amazonka/LexV2Models/Types/AggregatedUtterancesSortAttribute.hs +71/−0
- gen/Amazonka/LexV2Models/Types/AggregatedUtterancesSortBy.hs +93/−0
- gen/Amazonka/LexV2Models/Types/AggregatedUtterancesSummary.hs +179/−0
- gen/Amazonka/LexV2Models/Types/AllowedInputTypes.hs +102/−0
- gen/Amazonka/LexV2Models/Types/AssociatedTranscript.hs +76/−0
- gen/Amazonka/LexV2Models/Types/AssociatedTranscriptFilter.hs +90/−0
- gen/Amazonka/LexV2Models/Types/AssociatedTranscriptFilterName.hs +71/−0
- gen/Amazonka/LexV2Models/Types/AudioAndDTMFInputSpecification.hs +128/−0
- gen/Amazonka/LexV2Models/Types/AudioLogDestination.hs +88/−0
- gen/Amazonka/LexV2Models/Types/AudioLogSetting.hs +99/−0
- gen/Amazonka/LexV2Models/Types/AudioRecognitionStrategy.hs +66/−0
- gen/Amazonka/LexV2Models/Types/AudioSpecification.hs +103/−0
- gen/Amazonka/LexV2Models/Types/BotAliasHistoryEvent.hs +97/−0
- gen/Amazonka/LexV2Models/Types/BotAliasLocaleSettings.hs +102/−0
- gen/Amazonka/LexV2Models/Types/BotAliasStatus.hs +81/−0
- gen/Amazonka/LexV2Models/Types/BotAliasSummary.hs +159/−0
- gen/Amazonka/LexV2Models/Types/BotExportSpecification.hs +100/−0
- gen/Amazonka/LexV2Models/Types/BotFilter.hs +112/−0
- gen/Amazonka/LexV2Models/Types/BotFilterName.hs +66/−0
- gen/Amazonka/LexV2Models/Types/BotFilterOperator.hs +71/−0
- gen/Amazonka/LexV2Models/Types/BotImportSpecification.hs +198/−0
- gen/Amazonka/LexV2Models/Types/BotLocaleExportSpecification.hs +121/−0
- gen/Amazonka/LexV2Models/Types/BotLocaleFilter.hs +112/−0
- gen/Amazonka/LexV2Models/Types/BotLocaleFilterName.hs +66/−0
- gen/Amazonka/LexV2Models/Types/BotLocaleFilterOperator.hs +71/−0
- gen/Amazonka/LexV2Models/Types/BotLocaleHistoryEvent.hs +89/−0
- gen/Amazonka/LexV2Models/Types/BotLocaleImportSpecification.hs +215/−0
- gen/Amazonka/LexV2Models/Types/BotLocaleSortAttribute.hs +66/−0
- gen/Amazonka/LexV2Models/Types/BotLocaleSortBy.hs +92/−0
- gen/Amazonka/LexV2Models/Types/BotLocaleStatus.hs +106/−0
- gen/Amazonka/LexV2Models/Types/BotLocaleSummary.hs +139/−0
- gen/Amazonka/LexV2Models/Types/BotRecommendationResultStatistics.hs +104/−0
- gen/Amazonka/LexV2Models/Types/BotRecommendationResults.hs +100/−0
- gen/Amazonka/LexV2Models/Types/BotRecommendationStatus.hs +106/−0
- gen/Amazonka/LexV2Models/Types/BotRecommendationSummary.hs +132/−0
- gen/Amazonka/LexV2Models/Types/BotSortAttribute.hs +66/−0
- gen/Amazonka/LexV2Models/Types/BotSortBy.hs +89/−0
- gen/Amazonka/LexV2Models/Types/BotStatus.hs +96/−0
- gen/Amazonka/LexV2Models/Types/BotSummary.hs +147/−0
- gen/Amazonka/LexV2Models/Types/BotVersionLocaleDetails.hs +83/−0
- gen/Amazonka/LexV2Models/Types/BotVersionSortAttribute.hs +66/−0
- gen/Amazonka/LexV2Models/Types/BotVersionSortBy.hs +92/−0
- gen/Amazonka/LexV2Models/Types/BotVersionSummary.hs +129/−0
- gen/Amazonka/LexV2Models/Types/BuiltInIntentSortAttribute.hs +66/−0
- gen/Amazonka/LexV2Models/Types/BuiltInIntentSortBy.hs +92/−0
- gen/Amazonka/LexV2Models/Types/BuiltInIntentSummary.hs +90/−0
- gen/Amazonka/LexV2Models/Types/BuiltInSlotTypeSortAttribute.hs +66/−0
- gen/Amazonka/LexV2Models/Types/BuiltInSlotTypeSortBy.hs +89/−0
- gen/Amazonka/LexV2Models/Types/BuiltInSlotTypeSummary.hs +90/−0
- gen/Amazonka/LexV2Models/Types/Button.hs +100/−0
- gen/Amazonka/LexV2Models/Types/CloudWatchLogGroupLogDestination.hs +121/−0
- gen/Amazonka/LexV2Models/Types/CodeHookSpecification.hs +84/−0
- gen/Amazonka/LexV2Models/Types/CompositeSlotTypeSetting.hs +81/−0
- gen/Amazonka/LexV2Models/Types/Condition.hs +79/−0
- gen/Amazonka/LexV2Models/Types/ConditionalBranch.hs +130/−0
- gen/Amazonka/LexV2Models/Types/ConditionalSpecification.hs +140/−0
- gen/Amazonka/LexV2Models/Types/ConversationLogSettings.hs +99/−0
- gen/Amazonka/LexV2Models/Types/CustomPayload.hs +77/−0
- gen/Amazonka/LexV2Models/Types/CustomVocabularyEntryId.hs +68/−0
- gen/Amazonka/LexV2Models/Types/CustomVocabularyExportSpecification.hs +130/−0
- gen/Amazonka/LexV2Models/Types/CustomVocabularyImportSpecification.hs +133/−0
- gen/Amazonka/LexV2Models/Types/CustomVocabularyItem.hs +135/−0
- gen/Amazonka/LexV2Models/Types/CustomVocabularyStatus.hs +86/−0
- gen/Amazonka/LexV2Models/Types/DTMFSpecification.hs +141/−0
- gen/Amazonka/LexV2Models/Types/DataPrivacy.hs +149/−0
- gen/Amazonka/LexV2Models/Types/DateRangeFilter.hs +100/−0
- gen/Amazonka/LexV2Models/Types/DefaultConditionalBranch.hs +96/−0
- gen/Amazonka/LexV2Models/Types/DialogAction.hs +114/−0
- gen/Amazonka/LexV2Models/Types/DialogActionType.hs +106/−0
- gen/Amazonka/LexV2Models/Types/DialogCodeHookInvocationSetting.hs +160/−0
- gen/Amazonka/LexV2Models/Types/DialogCodeHookSettings.hs +78/−0
- gen/Amazonka/LexV2Models/Types/DialogState.hs +116/−0
- gen/Amazonka/LexV2Models/Types/Effect.hs +68/−0
- gen/Amazonka/LexV2Models/Types/ElicitationCodeHookInvocationSetting.hs +120/−0
- gen/Amazonka/LexV2Models/Types/EncryptionSetting.hs +114/−0
- gen/Amazonka/LexV2Models/Types/ErrorCode.hs +81/−0
- gen/Amazonka/LexV2Models/Types/ExportFilter.hs +117/−0
- gen/Amazonka/LexV2Models/Types/ExportFilterName.hs +66/−0
- gen/Amazonka/LexV2Models/Types/ExportFilterOperator.hs +71/−0
- gen/Amazonka/LexV2Models/Types/ExportResourceSpecification.hs +116/−0
- gen/Amazonka/LexV2Models/Types/ExportSortAttribute.hs +66/−0
- gen/Amazonka/LexV2Models/Types/ExportSortBy.hs +89/−0
- gen/Amazonka/LexV2Models/Types/ExportStatus.hs +81/−0
- gen/Amazonka/LexV2Models/Types/ExportSummary.hs +138/−0
- gen/Amazonka/LexV2Models/Types/ExternalSourceSetting.hs +83/−0
- gen/Amazonka/LexV2Models/Types/FailedCustomVocabularyItem.hs +108/−0
- gen/Amazonka/LexV2Models/Types/FulfillmentCodeHookSettings.hs +146/−0
- gen/Amazonka/LexV2Models/Types/FulfillmentStartResponseSpecification.hs +146/−0
- gen/Amazonka/LexV2Models/Types/FulfillmentUpdateResponseSpecification.hs +150/−0
- gen/Amazonka/LexV2Models/Types/FulfillmentUpdatesSpecification.hs +159/−0
- gen/Amazonka/LexV2Models/Types/GrammarSlotTypeSetting.hs +76/−0
- gen/Amazonka/LexV2Models/Types/GrammarSlotTypeSource.hs +114/−0
- gen/Amazonka/LexV2Models/Types/ImageResponseCard.hs +144/−0
- gen/Amazonka/LexV2Models/Types/ImportExportFileFormat.hs +71/−0
- gen/Amazonka/LexV2Models/Types/ImportFilter.hs +117/−0
- gen/Amazonka/LexV2Models/Types/ImportFilterName.hs +66/−0
- gen/Amazonka/LexV2Models/Types/ImportFilterOperator.hs +71/−0
- gen/Amazonka/LexV2Models/Types/ImportResourceSpecification.hs +115/−0
- gen/Amazonka/LexV2Models/Types/ImportResourceType.hs +76/−0
- gen/Amazonka/LexV2Models/Types/ImportSortAttribute.hs +66/−0
- gen/Amazonka/LexV2Models/Types/ImportSortBy.hs +89/−0
- gen/Amazonka/LexV2Models/Types/ImportStatus.hs +81/−0
- gen/Amazonka/LexV2Models/Types/ImportSummary.hs +165/−0
- gen/Amazonka/LexV2Models/Types/InitialResponseSetting.hs +122/−0
- gen/Amazonka/LexV2Models/Types/InputContext.hs +74/−0
- gen/Amazonka/LexV2Models/Types/IntentClosingSetting.hs +142/−0
- gen/Amazonka/LexV2Models/Types/IntentConfirmationSetting.hs +311/−0
- gen/Amazonka/LexV2Models/Types/IntentFilter.hs +112/−0
- gen/Amazonka/LexV2Models/Types/IntentFilterName.hs +66/−0
- gen/Amazonka/LexV2Models/Types/IntentFilterOperator.hs +71/−0
- gen/Amazonka/LexV2Models/Types/IntentOverride.hs +99/−0
- gen/Amazonka/LexV2Models/Types/IntentSortAttribute.hs +71/−0
- gen/Amazonka/LexV2Models/Types/IntentSortBy.hs +89/−0
- gen/Amazonka/LexV2Models/Types/IntentStatistics.hs +76/−0
- gen/Amazonka/LexV2Models/Types/IntentSummary.hs +159/−0
- gen/Amazonka/LexV2Models/Types/KendraConfiguration.hs +132/−0
- gen/Amazonka/LexV2Models/Types/LambdaCodeHook.hs +107/−0
- gen/Amazonka/LexV2Models/Types/LexTranscriptFilter.hs +89/−0
- gen/Amazonka/LexV2Models/Types/MergeStrategy.hs +76/−0
- gen/Amazonka/LexV2Models/Types/Message.hs +128/−0
- gen/Amazonka/LexV2Models/Types/MessageGroup.hs +102/−0
- gen/Amazonka/LexV2Models/Types/MessageSelectionStrategy.hs +71/−0
- gen/Amazonka/LexV2Models/Types/MultipleValuesSetting.hs +105/−0
- gen/Amazonka/LexV2Models/Types/NewCustomVocabularyItem.hs +107/−0
- gen/Amazonka/LexV2Models/Types/ObfuscationSetting.hs +89/−0
- gen/Amazonka/LexV2Models/Types/ObfuscationSettingType.hs +71/−0
- gen/Amazonka/LexV2Models/Types/OutputContext.hs +129/−0
- gen/Amazonka/LexV2Models/Types/PathFormat.hs +86/−0
- gen/Amazonka/LexV2Models/Types/PlainTextMessage.hs +76/−0
- gen/Amazonka/LexV2Models/Types/PostDialogCodeHookInvocationSpecification.hs +234/−0
- gen/Amazonka/LexV2Models/Types/PostFulfillmentStatusSpecification.hs +234/−0
- gen/Amazonka/LexV2Models/Types/Principal.hs +89/−0
- gen/Amazonka/LexV2Models/Types/PromptAttempt.hs +92/−0
- gen/Amazonka/LexV2Models/Types/PromptAttemptSpecification.hs +133/−0
- gen/Amazonka/LexV2Models/Types/PromptSpecification.hs +154/−0
- gen/Amazonka/LexV2Models/Types/RecommendedIntentSummary.hs +103/−0
- gen/Amazonka/LexV2Models/Types/RelativeAggregationDuration.hs +141/−0
- gen/Amazonka/LexV2Models/Types/ResponseSpecification.hs +106/−0
- gen/Amazonka/LexV2Models/Types/S3BucketLogDestination.hs +117/−0
- gen/Amazonka/LexV2Models/Types/S3BucketTranscriptSource.hs +175/−0
- gen/Amazonka/LexV2Models/Types/SSMLMessage.hs +74/−0
- gen/Amazonka/LexV2Models/Types/SampleUtterance.hs +80/−0
- gen/Amazonka/LexV2Models/Types/SampleValue.hs +74/−0
- gen/Amazonka/LexV2Models/Types/SearchOrder.hs +71/−0
- gen/Amazonka/LexV2Models/Types/SentimentAnalysisSettings.hs +87/−0
- gen/Amazonka/LexV2Models/Types/SlotCaptureSetting.hs +195/−0
- gen/Amazonka/LexV2Models/Types/SlotConstraint.hs +71/−0
- gen/Amazonka/LexV2Models/Types/SlotDefaultValue.hs +81/−0
- gen/Amazonka/LexV2Models/Types/SlotDefaultValueSpecification.hs +92/−0
- gen/Amazonka/LexV2Models/Types/SlotFilter.hs +112/−0
- gen/Amazonka/LexV2Models/Types/SlotFilterName.hs +66/−0
- gen/Amazonka/LexV2Models/Types/SlotFilterOperator.hs +71/−0
- gen/Amazonka/LexV2Models/Types/SlotPriority.hs +98/−0
- gen/Amazonka/LexV2Models/Types/SlotShape.hs +71/−0
- gen/Amazonka/LexV2Models/Types/SlotSortAttribute.hs +71/−0
- gen/Amazonka/LexV2Models/Types/SlotSortBy.hs +89/−0
- gen/Amazonka/LexV2Models/Types/SlotSummary.hs +154/−0
- gen/Amazonka/LexV2Models/Types/SlotTypeCategory.hs +81/−0
- gen/Amazonka/LexV2Models/Types/SlotTypeFilter.hs +112/−0
- gen/Amazonka/LexV2Models/Types/SlotTypeFilterName.hs +71/−0
- gen/Amazonka/LexV2Models/Types/SlotTypeFilterOperator.hs +71/−0
- gen/Amazonka/LexV2Models/Types/SlotTypeSortAttribute.hs +71/−0
- gen/Amazonka/LexV2Models/Types/SlotTypeSortBy.hs +89/−0
- gen/Amazonka/LexV2Models/Types/SlotTypeStatistics.hs +77/−0
- gen/Amazonka/LexV2Models/Types/SlotTypeSummary.hs +172/−0
- gen/Amazonka/LexV2Models/Types/SlotTypeValue.hs +95/−0
- gen/Amazonka/LexV2Models/Types/SlotValue.hs +86/−0
- gen/Amazonka/LexV2Models/Types/SlotValueElicitationSetting.hs +181/−0
- gen/Amazonka/LexV2Models/Types/SlotValueOverride.hs +121/−0
- gen/Amazonka/LexV2Models/Types/SlotValueRegexFilter.hs +131/−0
- gen/Amazonka/LexV2Models/Types/SlotValueResolutionStrategy.hs +76/−0
- gen/Amazonka/LexV2Models/Types/SlotValueSelectionSetting.hs +150/−0
- gen/Amazonka/LexV2Models/Types/SortOrder.hs +71/−0
- gen/Amazonka/LexV2Models/Types/Specifications.hs +106/−0
- gen/Amazonka/LexV2Models/Types/StillWaitingResponseSpecification.hs +162/−0
- gen/Amazonka/LexV2Models/Types/SubSlotSetting.hs +102/−0
- gen/Amazonka/LexV2Models/Types/SubSlotTypeComposition.hs +100/−0
- gen/Amazonka/LexV2Models/Types/SubSlotValueElicitationSetting.hs +162/−0
- gen/Amazonka/LexV2Models/Types/TextInputSpecification.hs +86/−0
- gen/Amazonka/LexV2Models/Types/TextLogDestination.hs +82/−0
- gen/Amazonka/LexV2Models/Types/TextLogSetting.hs +97/−0
- gen/Amazonka/LexV2Models/Types/TimeDimension.hs +76/−0
- gen/Amazonka/LexV2Models/Types/TranscriptFilter.hs +89/−0
- gen/Amazonka/LexV2Models/Types/TranscriptFormat.hs +66/−0
- gen/Amazonka/LexV2Models/Types/TranscriptSourceSetting.hs +86/−0
- gen/Amazonka/LexV2Models/Types/UtteranceAggregationDuration.hs +92/−0
- gen/Amazonka/LexV2Models/Types/VoiceEngine.hs +71/−0
- gen/Amazonka/LexV2Models/Types/VoiceSettings.hs +112/−0
- gen/Amazonka/LexV2Models/Types/WaitAndContinueSpecification.hs +150/−0
- gen/Amazonka/LexV2Models/UntagResource.hs +164/−0
- gen/Amazonka/LexV2Models/UpdateBot.hs +394/−0
- gen/Amazonka/LexV2Models/UpdateBotAlias.hs +403/−0
- gen/Amazonka/LexV2Models/UpdateBotLocale.hs +424/−0
- gen/Amazonka/LexV2Models/UpdateBotRecommendation.hs +398/−0
- gen/Amazonka/LexV2Models/UpdateExport.hs +258/−0
- gen/Amazonka/LexV2Models/UpdateIntent.hs +676/−0
- gen/Amazonka/LexV2Models/UpdateResourcePolicy.hs +263/−0
- gen/Amazonka/LexV2Models/UpdateSlot.hs +546/−0
- gen/Amazonka/LexV2Models/UpdateSlotType.hs +493/−0
- gen/Amazonka/LexV2Models/Waiters.hs +330/−0
- src/.gitkeep +0/−0
- test/Main.hs +23/−0
- test/Test/Amazonka/Gen/LexV2Models.hs +1458/−0
- test/Test/Amazonka/LexV2Models.hs +20/−0
- test/Test/Amazonka/LexV2Models/Internal.hs +8/−0
+ LICENSE view
@@ -0,0 +1,367 @@+Mozilla Public License Version 2.0+==================================++1. Definitions+--------------++1.1. "Contributor"+ means each individual or legal entity that creates, contributes to+ the creation of, or owns Covered Software.++1.2. "Contributor Version"+ means the combination of the Contributions of others (if any) used+ by a Contributor and that particular Contributor's Contribution.++1.3. "Contribution"+ means Covered Software of a particular Contributor.++1.4. "Covered Software"+ means Source Code Form to which the initial Contributor has attached+ the notice in Exhibit A, the Executable Form of such Source Code+ Form, and Modifications of such Source Code Form, in each case+ including portions thereof.++1.5. "Incompatible With Secondary Licenses"+ means++ (a) that the initial Contributor has attached the notice described+ in Exhibit B to the Covered Software; or++ (b) that the Covered Software was made available under the terms of+ version 1.1 or earlier of the License, but not also under the+ terms of a Secondary License.++1.6. "Executable Form"+ means any form of the work other than Source Code Form.++1.7. "Larger Work"+ means a work that combines Covered Software with other material, in+ a separate file or files, that is not Covered Software.++1.8. "License"+ means this document.++1.9. "Licensable"+ means having the right to grant, to the maximum extent possible,+ whether at the time of the initial grant or subsequently, any and+ all of the rights conveyed by this License.++1.10. "Modifications"+ means any of the following:++ (a) any file in Source Code Form that results from an addition to,+ deletion from, or modification of the contents of Covered+ Software; or++ (b) any new file in Source Code Form that contains any Covered+ Software.++1.11. "Patent Claims" of a Contributor+ means any patent claim(s), including without limitation, method,+ process, and apparatus claims, in any patent Licensable by such+ Contributor that would be infringed, but for the grant of the+ License, by the making, using, selling, offering for sale, having+ made, import, or transfer of either its Contributions or its+ Contributor Version.++1.12. "Secondary License"+ means either the GNU General Public License, Version 2.0, the GNU+ Lesser General Public License, Version 2.1, the GNU Affero General+ Public License, Version 3.0, or any later versions of those+ licenses.++1.13. "Source Code Form"+ means the form of the work preferred for making modifications.++1.14. "You" (or "Your")+ means an individual or a legal entity exercising rights under this+ License. For legal entities, "You" includes any entity that+ controls, is controlled by, or is under common control with You. For+ purposes of this definition, "control" means (a) the power, direct+ or indirect, to cause the direction or management of such entity,+ whether by contract or otherwise, or (b) ownership of more than+ fifty percent (50%) of the outstanding shares or beneficial+ ownership of such entity.++2. License Grants and Conditions+--------------------------------++2.1. Grants++Each Contributor hereby grants You a world-wide, royalty-free,+non-exclusive license:++(a) under intellectual property rights (other than patent or trademark)+ Licensable by such Contributor to use, reproduce, make available,+ modify, display, perform, distribute, and otherwise exploit its+ Contributions, either on an unmodified basis, with Modifications, or+ as part of a Larger Work; and++(b) under Patent Claims of such Contributor to make, use, sell, offer+ for sale, have made, import, and otherwise transfer either its+ Contributions or its Contributor Version.++2.2. Effective Date++The licenses granted in Section 2.1 with respect to any Contribution+become effective for each Contribution on the date the Contributor first+distributes such Contribution.++2.3. Limitations on Grant Scope++The licenses granted in this Section 2 are the only rights granted under+this License. No additional rights or licenses will be implied from the+distribution or licensing of Covered Software under this License.+Notwithstanding Section 2.1(b) above, no patent license is granted by a+Contributor:++(a) for any code that a Contributor has removed from Covered Software;+ or++(b) for infringements caused by: (i) Your and any other third party's+ modifications of Covered Software, or (ii) the combination of its+ Contributions with other software (except as part of its Contributor+ Version); or++(c) under Patent Claims infringed by Covered Software in the absence of+ its Contributions.++This License does not grant any rights in the trademarks, service marks,+or logos of any Contributor (except as may be necessary to comply with+the notice requirements in Section 3.4).++2.4. Subsequent Licenses++No Contributor makes additional grants as a result of Your choice to+distribute the Covered Software under a subsequent version of this+License (see Section 10.2) or under the terms of a Secondary License (if+permitted under the terms of Section 3.3).++2.5. Representation++Each Contributor represents that the Contributor believes its+Contributions are its original creation(s) or it has sufficient rights+to grant the rights to its Contributions conveyed by this License.++2.6. Fair Use++This License is not intended to limit any rights You have under+applicable copyright doctrines of fair use, fair dealing, or other+equivalents.++2.7. Conditions++Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted+in Section 2.1.++3. Responsibilities+-------------------++3.1. Distribution of Source Form++All distribution of Covered Software in Source Code Form, including any+Modifications that You create or to which You contribute, must be under+the terms of this License. You must inform recipients that the Source+Code Form of the Covered Software is governed by the terms of this+License, and how they can obtain a copy of this License. You may not+attempt to alter or restrict the recipients' rights in the Source Code+Form.++3.2. Distribution of Executable Form++If You distribute Covered Software in Executable Form then:++(a) such Covered Software must also be made available in Source Code+ Form, as described in Section 3.1, and You must inform recipients of+ the Executable Form how they can obtain a copy of such Source Code+ Form by reasonable means in a timely manner, at a charge no more+ than the cost of distribution to the recipient; and++(b) You may distribute such Executable Form under the terms of this+ License, or sublicense it under different terms, provided that the+ license for the Executable Form does not attempt to limit or alter+ the recipients' rights in the Source Code Form under this License.++3.3. Distribution of a Larger Work++You may create and distribute a Larger Work under terms of Your choice,+provided that You also comply with the requirements of this License for+the Covered Software. If the Larger Work is a combination of Covered+Software with a work governed by one or more Secondary Licenses, and the+Covered Software is not Incompatible With Secondary Licenses, this+License permits You to additionally distribute such Covered Software+under the terms of such Secondary License(s), so that the recipient of+the Larger Work may, at their option, further distribute the Covered+Software under the terms of either this License or such Secondary+License(s).++3.4. Notices++You may not remove or alter the substance of any license notices+(including copyright notices, patent notices, disclaimers of warranty,+or limitations of liability) contained within the Source Code Form of+the Covered Software, except that You may alter any license notices to+the extent required to remedy known factual inaccuracies.++3.5. Application of Additional Terms++You may choose to offer, and to charge a fee for, warranty, support,+indemnity or liability obligations to one or more recipients of Covered+Software. However, You may do so only on Your own behalf, and not on+behalf of any Contributor. You must make it absolutely clear that any+such warranty, support, indemnity, or liability obligation is offered by+You alone, and You hereby agree to indemnify every Contributor for any+liability incurred by such Contributor as a result of warranty, support,+indemnity or liability terms You offer. You may include additional+disclaimers of warranty and limitations of liability specific to any+jurisdiction.++4. Inability to Comply Due to Statute or Regulation+---------------------------------------------------++If it is impossible for You to comply with any of the terms of this+License with respect to some or all of the Covered Software due to+statute, judicial order, or regulation then You must: (a) comply with+the terms of this License to the maximum extent possible; and (b)+describe the limitations and the code they affect. Such description must+be placed in a text file included with all distributions of the Covered+Software under this License. Except to the extent prohibited by statute+or regulation, such description must be sufficiently detailed for a+recipient of ordinary skill to be able to understand it.++5. Termination+--------------++5.1. The rights granted under this License will terminate automatically+if You fail to comply with any of its terms. However, if You become+compliant, then the rights granted under this License from a particular+Contributor are reinstated (a) provisionally, unless and until such+Contributor explicitly and finally terminates Your grants, and (b) on an+ongoing basis, if such Contributor fails to notify You of the+non-compliance by some reasonable means prior to 60 days after You have+come back into compliance. Moreover, Your grants from a particular+Contributor are reinstated on an ongoing basis if such Contributor+notifies You of the non-compliance by some reasonable means, this is the+first time You have received notice of non-compliance with this License+from such Contributor, and You become compliant prior to 30 days after+Your receipt of the notice.++5.2. If You initiate litigation against any entity by asserting a patent+infringement claim (excluding declaratory judgment actions,+counter-claims, and cross-claims) alleging that a Contributor Version+directly or indirectly infringes any patent, then the rights granted to+You by any and all Contributors for the Covered Software under Section+2.1 of this License shall terminate.++5.3. In the event of termination under Sections 5.1 or 5.2 above, all+end user license agreements (excluding distributors and resellers) which+have been validly granted by You or Your distributors under this License+prior to termination shall survive termination.++************************************************************************+* *+* 6. Disclaimer of Warranty *+* ------------------------- *+* *+* Covered Software is provided under this License on an "as is" *+* basis, without warranty of any kind, either expressed, implied, or *+* statutory, including, without limitation, warranties that the *+* Covered Software is free of defects, merchantable, fit for a *+* particular purpose or non-infringing. The entire risk as to the *+* quality and performance of the Covered Software is with You. *+* Should any Covered Software prove defective in any respect, You *+* (not any Contributor) assume the cost of any necessary servicing, *+* repair, or correction. This disclaimer of warranty constitutes an *+* essential part of this License. No use of any Covered Software is *+* authorized under this License except under this disclaimer. *+* *+************************************************************************++************************************************************************+* *+* 7. Limitation of Liability *+* -------------------------- *+* *+* Under no circumstances and under no legal theory, whether tort *+* (including negligence), contract, or otherwise, shall any *+* Contributor, or anyone who distributes Covered Software as *+* permitted above, be liable to You for any direct, indirect, *+* special, incidental, or consequential damages of any character *+* including, without limitation, damages for lost profits, loss of *+* goodwill, work stoppage, computer failure or malfunction, or any *+* and all other commercial damages or losses, even if such party *+* shall have been informed of the possibility of such damages. This *+* limitation of liability shall not apply to liability for death or *+* personal injury resulting from such party's negligence to the *+* extent applicable law prohibits such limitation. Some *+* jurisdictions do not allow the exclusion or limitation of *+* incidental or consequential damages, so this exclusion and *+* limitation may not apply to You. *+* *+************************************************************************++8. Litigation+-------------++Any litigation relating to this License may be brought only in the+courts of a jurisdiction where the defendant maintains its principal+place of business and such litigation shall be governed by laws of that+jurisdiction, without reference to its conflict-of-law provisions.+Nothing in this Section shall prevent a party's ability to bring+cross-claims or counter-claims.++9. Miscellaneous+----------------++This License represents the complete agreement concerning the subject+matter hereof. If any provision of this License is held to be+unenforceable, such provision shall be reformed only to the extent+necessary to make it enforceable. Any law or regulation which provides+that the language of a contract shall be construed against the drafter+shall not be used to construe this License against a Contributor.++10. Versions of the License+---------------------------++10.1. New Versions++Mozilla Foundation is the license steward. Except as provided in Section+10.3, no one other than the license steward has the right to modify or+publish new versions of this License. Each version will be given a+distinguishing version number.++10.2. Effect of New Versions++You may distribute the Covered Software under the terms of the version+of the License under which You originally received the Covered Software,+or under the terms of any subsequent version published by the license+steward.++10.3. Modified Versions++If you create software not governed by this License, and you want to+create a new license for such software, you may create and use a+modified version of this License if you rename the license and remove+any references to the name of the license steward (except to note that+such modified license differs from this License).++10.4. Distributing Source Code Form that is Incompatible With Secondary+Licenses++If You choose to distribute Source Code Form that is Incompatible With+Secondary Licenses under the terms of this version of the License, the+notice described in Exhibit B of this License must be attached.++Exhibit A - Source Code Form License Notice+-------------------------------------------++ This Source Code Form is subject to the terms of the Mozilla Public+ License, v. 2.0. If a copy of the MPL was not distributed with this+ file, You can obtain one at http://mozilla.org/MPL/2.0/.++If it is not possible or desirable to put the notice in a particular+file, then You may include the notice in a location (such as a LICENSE+file in a relevant directory) where a recipient would be likely to look+for such a notice.++You may add additional accurate notices of copyright ownership.
+ README.md view
@@ -0,0 +1,44 @@+# Amazon Lex Model Building V2 SDK++* [Version](#version)+* [Description](#description)+* [Contribute](#contribute)+* [Licence](#licence)+++## Version+ +`2.0` - Derived from API version @2020-08-07@ of the AWS service descriptions, licensed under Apache 2.0.++## Description++Documentation is available via [Hackage](http://hackage.haskell.org/package/amazonka-lexv2-models)+and the [AWS API Reference](https://aws.amazon.com/documentation/).++The types from this library are intended to be used with [amazonka](http://hackage.haskell.org/package/amazonka),+which provides mechanisms for specifying AuthN/AuthZ information, sending requests,+and receiving responses.++Lenses are used for constructing and manipulating types,+due to the depth of nesting of AWS types and transparency regarding+de/serialisation into more palatable Haskell values.+The provided lenses should be compatible with any of the major lens libraries+[lens](http://hackage.haskell.org/package/lens) or [lens-family-core](http://hackage.haskell.org/package/lens-family-core).++See [Amazonka.LexV2Models](http://hackage.haskell.org/package/amazonka-lexv2-models/docs/Amazonka-LexV2Models.html)+or [the AWS documentation](https://aws.amazon.com/documentation/) to get started.+++## Contribute++For any problems, comments, or feedback please create an issue [here on GitHub](https://github.com/brendanhay/amazonka/issues).++> _Note:_ this library is an auto-generated Haskell package. Please see `amazonka-gen` for more information.+++## Licence++`amazonka-lexv2-models` is released under the [Mozilla Public License Version 2.0](http://www.mozilla.org/MPL/).++Parts of the code are derived from AWS service descriptions, licensed under Apache 2.0.+Source files subject to this contain an additional licensing clause in their header.
+ amazonka-lexv2-models.cabal view
@@ -0,0 +1,347 @@+cabal-version: 2.2+name: amazonka-lexv2-models+version: 2.0+synopsis: Amazon Lex Model Building V2 SDK.+homepage: https://github.com/brendanhay/amazonka+bug-reports: https://github.com/brendanhay/amazonka/issues+license: MPL-2.0+license-file: LICENSE+author: Brendan Hay+maintainer:+ Brendan Hay <brendan.g.hay+amazonka@gmail.com>, Jack Kelly <jack@jackkelly.name>++copyright: Copyright (c) 2013-2023 Brendan Hay+category: AWS+build-type: Simple+extra-source-files:+ fixture/*.proto+ fixture/*.yaml+ README.md+ src/.gitkeep++description:+ Derived from API version @2020-08-07@ of the AWS service descriptions, licensed under Apache 2.0.+ .+ The types from this library are intended to be used with <http://hackage.haskell.org/package/amazonka amazonka>,+ which provides mechanisms for specifying AuthN/AuthZ information, sending requests, and receiving responses.+ .+ It is recommended to use generic lenses or optics from packages such as <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify optional fields and deconstruct responses.+ .+ Generated lenses can be found in "Amazonka.LexV2Models.Lens" and are+ suitable for use with a lens package such as <http://hackage.haskell.org/package/lens lens> or <http://hackage.haskell.org/package/lens-family-core lens-family-core>.+ .+ See "Amazonka.LexV2Models" and the <https://aws.amazon.com/documentation/ AWS documentation> to get started.++source-repository head+ type: git+ location: git://github.com/brendanhay/amazonka.git+ subdir: amazonka-lexv2-models++library+ default-language: Haskell2010+ hs-source-dirs: src gen+ ghc-options:+ -Wall -fwarn-incomplete-uni-patterns+ -fwarn-incomplete-record-updates -funbox-strict-fields++ exposed-modules:+ Amazonka.LexV2Models+ Amazonka.LexV2Models.BatchCreateCustomVocabularyItem+ Amazonka.LexV2Models.BatchDeleteCustomVocabularyItem+ Amazonka.LexV2Models.BatchUpdateCustomVocabularyItem+ Amazonka.LexV2Models.BuildBotLocale+ Amazonka.LexV2Models.CreateBot+ Amazonka.LexV2Models.CreateBotAlias+ Amazonka.LexV2Models.CreateBotLocale+ Amazonka.LexV2Models.CreateBotVersion+ Amazonka.LexV2Models.CreateExport+ Amazonka.LexV2Models.CreateIntent+ Amazonka.LexV2Models.CreateResourcePolicy+ Amazonka.LexV2Models.CreateResourcePolicyStatement+ Amazonka.LexV2Models.CreateSlot+ Amazonka.LexV2Models.CreateSlotType+ Amazonka.LexV2Models.CreateUploadUrl+ Amazonka.LexV2Models.DeleteBot+ Amazonka.LexV2Models.DeleteBotAlias+ Amazonka.LexV2Models.DeleteBotLocale+ Amazonka.LexV2Models.DeleteBotVersion+ Amazonka.LexV2Models.DeleteCustomVocabulary+ Amazonka.LexV2Models.DeleteExport+ Amazonka.LexV2Models.DeleteImport+ Amazonka.LexV2Models.DeleteIntent+ Amazonka.LexV2Models.DeleteResourcePolicy+ Amazonka.LexV2Models.DeleteResourcePolicyStatement+ Amazonka.LexV2Models.DeleteSlot+ Amazonka.LexV2Models.DeleteSlotType+ Amazonka.LexV2Models.DeleteUtterances+ Amazonka.LexV2Models.DescribeBot+ Amazonka.LexV2Models.DescribeBotAlias+ Amazonka.LexV2Models.DescribeBotLocale+ Amazonka.LexV2Models.DescribeBotRecommendation+ Amazonka.LexV2Models.DescribeBotVersion+ Amazonka.LexV2Models.DescribeCustomVocabularyMetadata+ Amazonka.LexV2Models.DescribeExport+ Amazonka.LexV2Models.DescribeImport+ Amazonka.LexV2Models.DescribeIntent+ Amazonka.LexV2Models.DescribeResourcePolicy+ Amazonka.LexV2Models.DescribeSlot+ Amazonka.LexV2Models.DescribeSlotType+ Amazonka.LexV2Models.Lens+ Amazonka.LexV2Models.ListAggregatedUtterances+ Amazonka.LexV2Models.ListBotAliases+ Amazonka.LexV2Models.ListBotLocales+ Amazonka.LexV2Models.ListBotRecommendations+ Amazonka.LexV2Models.ListBots+ Amazonka.LexV2Models.ListBotVersions+ Amazonka.LexV2Models.ListBuiltInIntents+ Amazonka.LexV2Models.ListBuiltInSlotTypes+ Amazonka.LexV2Models.ListCustomVocabularyItems+ Amazonka.LexV2Models.ListExports+ Amazonka.LexV2Models.ListImports+ Amazonka.LexV2Models.ListIntents+ Amazonka.LexV2Models.ListRecommendedIntents+ Amazonka.LexV2Models.ListSlots+ Amazonka.LexV2Models.ListSlotTypes+ Amazonka.LexV2Models.ListTagsForResource+ Amazonka.LexV2Models.SearchAssociatedTranscripts+ Amazonka.LexV2Models.StartBotRecommendation+ Amazonka.LexV2Models.StartImport+ Amazonka.LexV2Models.StopBotRecommendation+ Amazonka.LexV2Models.TagResource+ Amazonka.LexV2Models.Types+ Amazonka.LexV2Models.Types.AdvancedRecognitionSetting+ Amazonka.LexV2Models.Types.AggregatedUtterancesFilter+ Amazonka.LexV2Models.Types.AggregatedUtterancesFilterName+ Amazonka.LexV2Models.Types.AggregatedUtterancesFilterOperator+ Amazonka.LexV2Models.Types.AggregatedUtterancesSortAttribute+ Amazonka.LexV2Models.Types.AggregatedUtterancesSortBy+ Amazonka.LexV2Models.Types.AggregatedUtterancesSummary+ Amazonka.LexV2Models.Types.AllowedInputTypes+ Amazonka.LexV2Models.Types.AssociatedTranscript+ Amazonka.LexV2Models.Types.AssociatedTranscriptFilter+ Amazonka.LexV2Models.Types.AssociatedTranscriptFilterName+ Amazonka.LexV2Models.Types.AudioAndDTMFInputSpecification+ Amazonka.LexV2Models.Types.AudioLogDestination+ Amazonka.LexV2Models.Types.AudioLogSetting+ Amazonka.LexV2Models.Types.AudioRecognitionStrategy+ Amazonka.LexV2Models.Types.AudioSpecification+ Amazonka.LexV2Models.Types.BotAliasHistoryEvent+ Amazonka.LexV2Models.Types.BotAliasLocaleSettings+ Amazonka.LexV2Models.Types.BotAliasStatus+ Amazonka.LexV2Models.Types.BotAliasSummary+ Amazonka.LexV2Models.Types.BotExportSpecification+ Amazonka.LexV2Models.Types.BotFilter+ Amazonka.LexV2Models.Types.BotFilterName+ Amazonka.LexV2Models.Types.BotFilterOperator+ Amazonka.LexV2Models.Types.BotImportSpecification+ Amazonka.LexV2Models.Types.BotLocaleExportSpecification+ Amazonka.LexV2Models.Types.BotLocaleFilter+ Amazonka.LexV2Models.Types.BotLocaleFilterName+ Amazonka.LexV2Models.Types.BotLocaleFilterOperator+ Amazonka.LexV2Models.Types.BotLocaleHistoryEvent+ Amazonka.LexV2Models.Types.BotLocaleImportSpecification+ Amazonka.LexV2Models.Types.BotLocaleSortAttribute+ Amazonka.LexV2Models.Types.BotLocaleSortBy+ Amazonka.LexV2Models.Types.BotLocaleStatus+ Amazonka.LexV2Models.Types.BotLocaleSummary+ Amazonka.LexV2Models.Types.BotRecommendationResults+ Amazonka.LexV2Models.Types.BotRecommendationResultStatistics+ Amazonka.LexV2Models.Types.BotRecommendationStatus+ Amazonka.LexV2Models.Types.BotRecommendationSummary+ Amazonka.LexV2Models.Types.BotSortAttribute+ Amazonka.LexV2Models.Types.BotSortBy+ Amazonka.LexV2Models.Types.BotStatus+ Amazonka.LexV2Models.Types.BotSummary+ Amazonka.LexV2Models.Types.BotVersionLocaleDetails+ Amazonka.LexV2Models.Types.BotVersionSortAttribute+ Amazonka.LexV2Models.Types.BotVersionSortBy+ Amazonka.LexV2Models.Types.BotVersionSummary+ Amazonka.LexV2Models.Types.BuiltInIntentSortAttribute+ Amazonka.LexV2Models.Types.BuiltInIntentSortBy+ Amazonka.LexV2Models.Types.BuiltInIntentSummary+ Amazonka.LexV2Models.Types.BuiltInSlotTypeSortAttribute+ Amazonka.LexV2Models.Types.BuiltInSlotTypeSortBy+ Amazonka.LexV2Models.Types.BuiltInSlotTypeSummary+ Amazonka.LexV2Models.Types.Button+ Amazonka.LexV2Models.Types.CloudWatchLogGroupLogDestination+ Amazonka.LexV2Models.Types.CodeHookSpecification+ Amazonka.LexV2Models.Types.CompositeSlotTypeSetting+ Amazonka.LexV2Models.Types.Condition+ Amazonka.LexV2Models.Types.ConditionalBranch+ Amazonka.LexV2Models.Types.ConditionalSpecification+ Amazonka.LexV2Models.Types.ConversationLogSettings+ Amazonka.LexV2Models.Types.CustomPayload+ Amazonka.LexV2Models.Types.CustomVocabularyEntryId+ Amazonka.LexV2Models.Types.CustomVocabularyExportSpecification+ Amazonka.LexV2Models.Types.CustomVocabularyImportSpecification+ Amazonka.LexV2Models.Types.CustomVocabularyItem+ Amazonka.LexV2Models.Types.CustomVocabularyStatus+ Amazonka.LexV2Models.Types.DataPrivacy+ Amazonka.LexV2Models.Types.DateRangeFilter+ Amazonka.LexV2Models.Types.DefaultConditionalBranch+ Amazonka.LexV2Models.Types.DialogAction+ Amazonka.LexV2Models.Types.DialogActionType+ Amazonka.LexV2Models.Types.DialogCodeHookInvocationSetting+ Amazonka.LexV2Models.Types.DialogCodeHookSettings+ Amazonka.LexV2Models.Types.DialogState+ Amazonka.LexV2Models.Types.DTMFSpecification+ Amazonka.LexV2Models.Types.Effect+ Amazonka.LexV2Models.Types.ElicitationCodeHookInvocationSetting+ Amazonka.LexV2Models.Types.EncryptionSetting+ Amazonka.LexV2Models.Types.ErrorCode+ Amazonka.LexV2Models.Types.ExportFilter+ Amazonka.LexV2Models.Types.ExportFilterName+ Amazonka.LexV2Models.Types.ExportFilterOperator+ Amazonka.LexV2Models.Types.ExportResourceSpecification+ Amazonka.LexV2Models.Types.ExportSortAttribute+ Amazonka.LexV2Models.Types.ExportSortBy+ Amazonka.LexV2Models.Types.ExportStatus+ Amazonka.LexV2Models.Types.ExportSummary+ Amazonka.LexV2Models.Types.ExternalSourceSetting+ Amazonka.LexV2Models.Types.FailedCustomVocabularyItem+ Amazonka.LexV2Models.Types.FulfillmentCodeHookSettings+ Amazonka.LexV2Models.Types.FulfillmentStartResponseSpecification+ Amazonka.LexV2Models.Types.FulfillmentUpdateResponseSpecification+ Amazonka.LexV2Models.Types.FulfillmentUpdatesSpecification+ Amazonka.LexV2Models.Types.GrammarSlotTypeSetting+ Amazonka.LexV2Models.Types.GrammarSlotTypeSource+ Amazonka.LexV2Models.Types.ImageResponseCard+ Amazonka.LexV2Models.Types.ImportExportFileFormat+ Amazonka.LexV2Models.Types.ImportFilter+ Amazonka.LexV2Models.Types.ImportFilterName+ Amazonka.LexV2Models.Types.ImportFilterOperator+ Amazonka.LexV2Models.Types.ImportResourceSpecification+ Amazonka.LexV2Models.Types.ImportResourceType+ Amazonka.LexV2Models.Types.ImportSortAttribute+ Amazonka.LexV2Models.Types.ImportSortBy+ Amazonka.LexV2Models.Types.ImportStatus+ Amazonka.LexV2Models.Types.ImportSummary+ Amazonka.LexV2Models.Types.InitialResponseSetting+ Amazonka.LexV2Models.Types.InputContext+ Amazonka.LexV2Models.Types.IntentClosingSetting+ Amazonka.LexV2Models.Types.IntentConfirmationSetting+ Amazonka.LexV2Models.Types.IntentFilter+ Amazonka.LexV2Models.Types.IntentFilterName+ Amazonka.LexV2Models.Types.IntentFilterOperator+ Amazonka.LexV2Models.Types.IntentOverride+ Amazonka.LexV2Models.Types.IntentSortAttribute+ Amazonka.LexV2Models.Types.IntentSortBy+ Amazonka.LexV2Models.Types.IntentStatistics+ Amazonka.LexV2Models.Types.IntentSummary+ Amazonka.LexV2Models.Types.KendraConfiguration+ Amazonka.LexV2Models.Types.LambdaCodeHook+ Amazonka.LexV2Models.Types.LexTranscriptFilter+ Amazonka.LexV2Models.Types.MergeStrategy+ Amazonka.LexV2Models.Types.Message+ Amazonka.LexV2Models.Types.MessageGroup+ Amazonka.LexV2Models.Types.MessageSelectionStrategy+ Amazonka.LexV2Models.Types.MultipleValuesSetting+ Amazonka.LexV2Models.Types.NewCustomVocabularyItem+ Amazonka.LexV2Models.Types.ObfuscationSetting+ Amazonka.LexV2Models.Types.ObfuscationSettingType+ Amazonka.LexV2Models.Types.OutputContext+ Amazonka.LexV2Models.Types.PathFormat+ Amazonka.LexV2Models.Types.PlainTextMessage+ Amazonka.LexV2Models.Types.PostDialogCodeHookInvocationSpecification+ Amazonka.LexV2Models.Types.PostFulfillmentStatusSpecification+ Amazonka.LexV2Models.Types.Principal+ Amazonka.LexV2Models.Types.PromptAttempt+ Amazonka.LexV2Models.Types.PromptAttemptSpecification+ Amazonka.LexV2Models.Types.PromptSpecification+ Amazonka.LexV2Models.Types.RecommendedIntentSummary+ Amazonka.LexV2Models.Types.RelativeAggregationDuration+ Amazonka.LexV2Models.Types.ResponseSpecification+ Amazonka.LexV2Models.Types.S3BucketLogDestination+ Amazonka.LexV2Models.Types.S3BucketTranscriptSource+ Amazonka.LexV2Models.Types.SampleUtterance+ Amazonka.LexV2Models.Types.SampleValue+ Amazonka.LexV2Models.Types.SearchOrder+ Amazonka.LexV2Models.Types.SentimentAnalysisSettings+ Amazonka.LexV2Models.Types.SlotCaptureSetting+ Amazonka.LexV2Models.Types.SlotConstraint+ Amazonka.LexV2Models.Types.SlotDefaultValue+ Amazonka.LexV2Models.Types.SlotDefaultValueSpecification+ Amazonka.LexV2Models.Types.SlotFilter+ Amazonka.LexV2Models.Types.SlotFilterName+ Amazonka.LexV2Models.Types.SlotFilterOperator+ Amazonka.LexV2Models.Types.SlotPriority+ Amazonka.LexV2Models.Types.SlotShape+ Amazonka.LexV2Models.Types.SlotSortAttribute+ Amazonka.LexV2Models.Types.SlotSortBy+ Amazonka.LexV2Models.Types.SlotSummary+ Amazonka.LexV2Models.Types.SlotTypeCategory+ Amazonka.LexV2Models.Types.SlotTypeFilter+ Amazonka.LexV2Models.Types.SlotTypeFilterName+ Amazonka.LexV2Models.Types.SlotTypeFilterOperator+ Amazonka.LexV2Models.Types.SlotTypeSortAttribute+ Amazonka.LexV2Models.Types.SlotTypeSortBy+ Amazonka.LexV2Models.Types.SlotTypeStatistics+ Amazonka.LexV2Models.Types.SlotTypeSummary+ Amazonka.LexV2Models.Types.SlotTypeValue+ Amazonka.LexV2Models.Types.SlotValue+ Amazonka.LexV2Models.Types.SlotValueElicitationSetting+ Amazonka.LexV2Models.Types.SlotValueOverride+ Amazonka.LexV2Models.Types.SlotValueRegexFilter+ Amazonka.LexV2Models.Types.SlotValueResolutionStrategy+ Amazonka.LexV2Models.Types.SlotValueSelectionSetting+ Amazonka.LexV2Models.Types.SortOrder+ Amazonka.LexV2Models.Types.Specifications+ Amazonka.LexV2Models.Types.SSMLMessage+ Amazonka.LexV2Models.Types.StillWaitingResponseSpecification+ Amazonka.LexV2Models.Types.SubSlotSetting+ Amazonka.LexV2Models.Types.SubSlotTypeComposition+ Amazonka.LexV2Models.Types.SubSlotValueElicitationSetting+ Amazonka.LexV2Models.Types.TextInputSpecification+ Amazonka.LexV2Models.Types.TextLogDestination+ Amazonka.LexV2Models.Types.TextLogSetting+ Amazonka.LexV2Models.Types.TimeDimension+ Amazonka.LexV2Models.Types.TranscriptFilter+ Amazonka.LexV2Models.Types.TranscriptFormat+ Amazonka.LexV2Models.Types.TranscriptSourceSetting+ Amazonka.LexV2Models.Types.UtteranceAggregationDuration+ Amazonka.LexV2Models.Types.VoiceEngine+ Amazonka.LexV2Models.Types.VoiceSettings+ Amazonka.LexV2Models.Types.WaitAndContinueSpecification+ Amazonka.LexV2Models.UntagResource+ Amazonka.LexV2Models.UpdateBot+ Amazonka.LexV2Models.UpdateBotAlias+ Amazonka.LexV2Models.UpdateBotLocale+ Amazonka.LexV2Models.UpdateBotRecommendation+ Amazonka.LexV2Models.UpdateExport+ Amazonka.LexV2Models.UpdateIntent+ Amazonka.LexV2Models.UpdateResourcePolicy+ Amazonka.LexV2Models.UpdateSlot+ Amazonka.LexV2Models.UpdateSlotType+ Amazonka.LexV2Models.Waiters++ build-depends:+ , amazonka-core >=2.0 && <2.1+ , base >=4.12 && <5++test-suite amazonka-lexv2-models-test+ type: exitcode-stdio-1.0+ default-language: Haskell2010+ hs-source-dirs: test+ main-is: Main.hs+ ghc-options: -Wall -threaded++ -- This section is encoded by the template and any modules added by+ -- hand outside these namespaces will not correctly be added to the+ -- distribution package.+ other-modules:+ Test.Amazonka.Gen.LexV2Models+ Test.Amazonka.LexV2Models+ Test.Amazonka.LexV2Models.Internal++ build-depends:+ , amazonka-core >=2.0 && <2.1+ , amazonka-lexv2-models+ , amazonka-test >=2.0 && <2.1+ , base+ , bytestring+ , case-insensitive+ , tasty+ , tasty-hunit+ , text+ , time+ , unordered-containers
+ fixture/BatchCreateCustomVocabularyItem.yaml view
@@ -0,0 +1,10 @@+---+method: PUT+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/BatchCreateCustomVocabularyItemResponse.proto view
+ fixture/BatchDeleteCustomVocabularyItem.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/BatchDeleteCustomVocabularyItemResponse.proto view
+ fixture/BatchUpdateCustomVocabularyItem.yaml view
@@ -0,0 +1,10 @@+---+method: PUT+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/BatchUpdateCustomVocabularyItemResponse.proto view
+ fixture/BuildBotLocale.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/BuildBotLocaleResponse.proto view
+ fixture/CreateBot.yaml view
@@ -0,0 +1,10 @@+---+method: PUT+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/CreateBotAlias.yaml view
@@ -0,0 +1,10 @@+---+method: PUT+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/CreateBotAliasResponse.proto view
+ fixture/CreateBotLocale.yaml view
@@ -0,0 +1,10 @@+---+method: PUT+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/CreateBotLocaleResponse.proto view
+ fixture/CreateBotResponse.proto view
+ fixture/CreateBotVersion.yaml view
@@ -0,0 +1,10 @@+---+method: PUT+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/CreateBotVersionResponse.proto view
+ fixture/CreateExport.yaml view
@@ -0,0 +1,10 @@+---+method: PUT+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/CreateExportResponse.proto view
+ fixture/CreateIntent.yaml view
@@ -0,0 +1,10 @@+---+method: PUT+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/CreateIntentResponse.proto view
+ fixture/CreateResourcePolicy.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/CreateResourcePolicyResponse.proto view
+ fixture/CreateResourcePolicyStatement.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/CreateResourcePolicyStatementResponse.proto view
+ fixture/CreateSlot.yaml view
@@ -0,0 +1,10 @@+---+method: PUT+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/CreateSlotResponse.proto view
+ fixture/CreateSlotType.yaml view
@@ -0,0 +1,10 @@+---+method: PUT+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/CreateSlotTypeResponse.proto view
+ fixture/CreateUploadUrl.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/CreateUploadUrlResponse.proto view
+ fixture/DeleteBot.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteBotAlias.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteBotAliasResponse.proto view
+ fixture/DeleteBotLocale.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteBotLocaleResponse.proto view
+ fixture/DeleteBotResponse.proto view
+ fixture/DeleteBotVersion.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteBotVersionResponse.proto view
+ fixture/DeleteCustomVocabulary.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteCustomVocabularyResponse.proto view
+ fixture/DeleteExport.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteExportResponse.proto view
+ fixture/DeleteImport.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteImportResponse.proto view
+ fixture/DeleteIntent.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteIntentResponse.proto view
+ fixture/DeleteResourcePolicy.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteResourcePolicyResponse.proto view
+ fixture/DeleteResourcePolicyStatement.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteResourcePolicyStatementResponse.proto view
+ fixture/DeleteSlot.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteSlotResponse.proto view
+ fixture/DeleteSlotType.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteSlotTypeResponse.proto view
+ fixture/DeleteUtterances.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteUtterancesResponse.proto view
+ fixture/DescribeBot.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DescribeBotAlias.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DescribeBotAliasResponse.proto view
+ fixture/DescribeBotLocale.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DescribeBotLocaleResponse.proto view
+ fixture/DescribeBotRecommendation.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DescribeBotRecommendationResponse.proto view
+ fixture/DescribeBotResponse.proto view
+ fixture/DescribeBotVersion.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DescribeBotVersionResponse.proto view
+ fixture/DescribeCustomVocabularyMetadata.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DescribeCustomVocabularyMetadataResponse.proto view
+ fixture/DescribeExport.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DescribeExportResponse.proto view
+ fixture/DescribeImport.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DescribeImportResponse.proto view
+ fixture/DescribeIntent.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DescribeIntentResponse.proto view
+ fixture/DescribeResourcePolicy.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DescribeResourcePolicyResponse.proto view
+ fixture/DescribeSlot.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DescribeSlotResponse.proto view
+ fixture/DescribeSlotType.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DescribeSlotTypeResponse.proto view
+ fixture/ListAggregatedUtterances.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListAggregatedUtterancesResponse.proto view
+ fixture/ListBotAliases.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListBotAliasesResponse.proto view
+ fixture/ListBotLocales.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListBotLocalesResponse.proto view
+ fixture/ListBotRecommendations.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListBotRecommendationsResponse.proto view
+ fixture/ListBotVersions.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListBotVersionsResponse.proto view
+ fixture/ListBots.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListBotsResponse.proto view
+ fixture/ListBuiltInIntents.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListBuiltInIntentsResponse.proto view
+ fixture/ListBuiltInSlotTypes.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListBuiltInSlotTypesResponse.proto view
+ fixture/ListCustomVocabularyItems.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListCustomVocabularyItemsResponse.proto view
+ fixture/ListExports.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListExportsResponse.proto view
+ fixture/ListImports.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListImportsResponse.proto view
+ fixture/ListIntents.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListIntentsResponse.proto view
+ fixture/ListRecommendedIntents.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListRecommendedIntentsResponse.proto view
+ fixture/ListSlotTypes.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListSlotTypesResponse.proto view
+ fixture/ListSlots.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListSlotsResponse.proto view
+ fixture/ListTagsForResource.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListTagsForResourceResponse.proto view
+ fixture/SearchAssociatedTranscripts.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/SearchAssociatedTranscriptsResponse.proto view
+ fixture/StartBotRecommendation.yaml view
@@ -0,0 +1,10 @@+---+method: PUT+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/StartBotRecommendationResponse.proto view
+ fixture/StartImport.yaml view
@@ -0,0 +1,10 @@+---+method: PUT+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/StartImportResponse.proto view
+ fixture/StopBotRecommendation.yaml view
@@ -0,0 +1,10 @@+---+method: PUT+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/StopBotRecommendationResponse.proto view
+ fixture/TagResource.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/TagResourceResponse.proto view
+ fixture/UntagResource.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/UntagResourceResponse.proto view
+ fixture/UpdateBot.yaml view
@@ -0,0 +1,10 @@+---+method: PUT+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/UpdateBotAlias.yaml view
@@ -0,0 +1,10 @@+---+method: PUT+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/UpdateBotAliasResponse.proto view
+ fixture/UpdateBotLocale.yaml view
@@ -0,0 +1,10 @@+---+method: PUT+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/UpdateBotLocaleResponse.proto view
+ fixture/UpdateBotRecommendation.yaml view
@@ -0,0 +1,10 @@+---+method: PUT+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/UpdateBotRecommendationResponse.proto view
+ fixture/UpdateBotResponse.proto view
+ fixture/UpdateExport.yaml view
@@ -0,0 +1,10 @@+---+method: PUT+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/UpdateExportResponse.proto view
+ fixture/UpdateIntent.yaml view
@@ -0,0 +1,10 @@+---+method: PUT+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/UpdateIntentResponse.proto view
+ fixture/UpdateResourcePolicy.yaml view
@@ -0,0 +1,10 @@+---+method: PUT+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/UpdateResourcePolicyResponse.proto view
+ fixture/UpdateSlot.yaml view
@@ -0,0 +1,10 @@+---+method: PUT+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/UpdateSlotResponse.proto view
+ fixture/UpdateSlotType.yaml view
@@ -0,0 +1,10 @@+---+method: PUT+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/models-v2-lex/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: models-v2-lex.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/UpdateSlotTypeResponse.proto view
+ gen/Amazonka/LexV2Models.hs view
@@ -0,0 +1,1319 @@+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Amazonka.LexV2Models+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Derived from API version @2020-08-07@ of the AWS service descriptions, licensed under Apache 2.0.+module Amazonka.LexV2Models+ ( -- * Service Configuration+ defaultService,++ -- * Errors+ -- $errors++ -- ** ConflictException+ _ConflictException,++ -- ** InternalServerException+ _InternalServerException,++ -- ** PreconditionFailedException+ _PreconditionFailedException,++ -- ** ResourceNotFoundException+ _ResourceNotFoundException,++ -- ** ServiceQuotaExceededException+ _ServiceQuotaExceededException,++ -- ** ThrottlingException+ _ThrottlingException,++ -- ** ValidationException+ _ValidationException,++ -- * Waiters+ -- $waiters++ -- ** BotAliasAvailable+ newBotAliasAvailable,++ -- ** BotAvailable+ newBotAvailable,++ -- ** BotExportCompleted+ newBotExportCompleted,++ -- ** BotImportCompleted+ newBotImportCompleted,++ -- ** BotLocaleBuilt+ newBotLocaleBuilt,++ -- ** BotLocaleCreated+ newBotLocaleCreated,++ -- ** BotLocaleExpressTestingAvailable+ newBotLocaleExpressTestingAvailable,++ -- ** BotVersionAvailable+ newBotVersionAvailable,++ -- * Operations+ -- $operations++ -- ** BatchCreateCustomVocabularyItem+ BatchCreateCustomVocabularyItem (BatchCreateCustomVocabularyItem'),+ newBatchCreateCustomVocabularyItem,+ BatchCreateCustomVocabularyItemResponse (BatchCreateCustomVocabularyItemResponse'),+ newBatchCreateCustomVocabularyItemResponse,++ -- ** BatchDeleteCustomVocabularyItem+ BatchDeleteCustomVocabularyItem (BatchDeleteCustomVocabularyItem'),+ newBatchDeleteCustomVocabularyItem,+ BatchDeleteCustomVocabularyItemResponse (BatchDeleteCustomVocabularyItemResponse'),+ newBatchDeleteCustomVocabularyItemResponse,++ -- ** BatchUpdateCustomVocabularyItem+ BatchUpdateCustomVocabularyItem (BatchUpdateCustomVocabularyItem'),+ newBatchUpdateCustomVocabularyItem,+ BatchUpdateCustomVocabularyItemResponse (BatchUpdateCustomVocabularyItemResponse'),+ newBatchUpdateCustomVocabularyItemResponse,++ -- ** BuildBotLocale+ BuildBotLocale (BuildBotLocale'),+ newBuildBotLocale,+ BuildBotLocaleResponse (BuildBotLocaleResponse'),+ newBuildBotLocaleResponse,++ -- ** CreateBot+ CreateBot (CreateBot'),+ newCreateBot,+ CreateBotResponse (CreateBotResponse'),+ newCreateBotResponse,++ -- ** CreateBotAlias+ CreateBotAlias (CreateBotAlias'),+ newCreateBotAlias,+ CreateBotAliasResponse (CreateBotAliasResponse'),+ newCreateBotAliasResponse,++ -- ** CreateBotLocale+ CreateBotLocale (CreateBotLocale'),+ newCreateBotLocale,+ CreateBotLocaleResponse (CreateBotLocaleResponse'),+ newCreateBotLocaleResponse,++ -- ** CreateBotVersion+ CreateBotVersion (CreateBotVersion'),+ newCreateBotVersion,+ CreateBotVersionResponse (CreateBotVersionResponse'),+ newCreateBotVersionResponse,++ -- ** CreateExport+ CreateExport (CreateExport'),+ newCreateExport,+ CreateExportResponse (CreateExportResponse'),+ newCreateExportResponse,++ -- ** CreateIntent+ CreateIntent (CreateIntent'),+ newCreateIntent,+ CreateIntentResponse (CreateIntentResponse'),+ newCreateIntentResponse,++ -- ** CreateResourcePolicy+ CreateResourcePolicy (CreateResourcePolicy'),+ newCreateResourcePolicy,+ CreateResourcePolicyResponse (CreateResourcePolicyResponse'),+ newCreateResourcePolicyResponse,++ -- ** CreateResourcePolicyStatement+ CreateResourcePolicyStatement (CreateResourcePolicyStatement'),+ newCreateResourcePolicyStatement,+ CreateResourcePolicyStatementResponse (CreateResourcePolicyStatementResponse'),+ newCreateResourcePolicyStatementResponse,++ -- ** CreateSlot+ CreateSlot (CreateSlot'),+ newCreateSlot,+ CreateSlotResponse (CreateSlotResponse'),+ newCreateSlotResponse,++ -- ** CreateSlotType+ CreateSlotType (CreateSlotType'),+ newCreateSlotType,+ CreateSlotTypeResponse (CreateSlotTypeResponse'),+ newCreateSlotTypeResponse,++ -- ** CreateUploadUrl+ CreateUploadUrl (CreateUploadUrl'),+ newCreateUploadUrl,+ CreateUploadUrlResponse (CreateUploadUrlResponse'),+ newCreateUploadUrlResponse,++ -- ** DeleteBot+ DeleteBot (DeleteBot'),+ newDeleteBot,+ DeleteBotResponse (DeleteBotResponse'),+ newDeleteBotResponse,++ -- ** DeleteBotAlias+ DeleteBotAlias (DeleteBotAlias'),+ newDeleteBotAlias,+ DeleteBotAliasResponse (DeleteBotAliasResponse'),+ newDeleteBotAliasResponse,++ -- ** DeleteBotLocale+ DeleteBotLocale (DeleteBotLocale'),+ newDeleteBotLocale,+ DeleteBotLocaleResponse (DeleteBotLocaleResponse'),+ newDeleteBotLocaleResponse,++ -- ** DeleteBotVersion+ DeleteBotVersion (DeleteBotVersion'),+ newDeleteBotVersion,+ DeleteBotVersionResponse (DeleteBotVersionResponse'),+ newDeleteBotVersionResponse,++ -- ** DeleteCustomVocabulary+ DeleteCustomVocabulary (DeleteCustomVocabulary'),+ newDeleteCustomVocabulary,+ DeleteCustomVocabularyResponse (DeleteCustomVocabularyResponse'),+ newDeleteCustomVocabularyResponse,++ -- ** DeleteExport+ DeleteExport (DeleteExport'),+ newDeleteExport,+ DeleteExportResponse (DeleteExportResponse'),+ newDeleteExportResponse,++ -- ** DeleteImport+ DeleteImport (DeleteImport'),+ newDeleteImport,+ DeleteImportResponse (DeleteImportResponse'),+ newDeleteImportResponse,++ -- ** DeleteIntent+ DeleteIntent (DeleteIntent'),+ newDeleteIntent,+ DeleteIntentResponse (DeleteIntentResponse'),+ newDeleteIntentResponse,++ -- ** DeleteResourcePolicy+ DeleteResourcePolicy (DeleteResourcePolicy'),+ newDeleteResourcePolicy,+ DeleteResourcePolicyResponse (DeleteResourcePolicyResponse'),+ newDeleteResourcePolicyResponse,++ -- ** DeleteResourcePolicyStatement+ DeleteResourcePolicyStatement (DeleteResourcePolicyStatement'),+ newDeleteResourcePolicyStatement,+ DeleteResourcePolicyStatementResponse (DeleteResourcePolicyStatementResponse'),+ newDeleteResourcePolicyStatementResponse,++ -- ** DeleteSlot+ DeleteSlot (DeleteSlot'),+ newDeleteSlot,+ DeleteSlotResponse (DeleteSlotResponse'),+ newDeleteSlotResponse,++ -- ** DeleteSlotType+ DeleteSlotType (DeleteSlotType'),+ newDeleteSlotType,+ DeleteSlotTypeResponse (DeleteSlotTypeResponse'),+ newDeleteSlotTypeResponse,++ -- ** DeleteUtterances+ DeleteUtterances (DeleteUtterances'),+ newDeleteUtterances,+ DeleteUtterancesResponse (DeleteUtterancesResponse'),+ newDeleteUtterancesResponse,++ -- ** DescribeBot+ DescribeBot (DescribeBot'),+ newDescribeBot,+ DescribeBotResponse (DescribeBotResponse'),+ newDescribeBotResponse,++ -- ** DescribeBotAlias+ DescribeBotAlias (DescribeBotAlias'),+ newDescribeBotAlias,+ DescribeBotAliasResponse (DescribeBotAliasResponse'),+ newDescribeBotAliasResponse,++ -- ** DescribeBotLocale+ DescribeBotLocale (DescribeBotLocale'),+ newDescribeBotLocale,+ DescribeBotLocaleResponse (DescribeBotLocaleResponse'),+ newDescribeBotLocaleResponse,++ -- ** DescribeBotRecommendation+ DescribeBotRecommendation (DescribeBotRecommendation'),+ newDescribeBotRecommendation,+ DescribeBotRecommendationResponse (DescribeBotRecommendationResponse'),+ newDescribeBotRecommendationResponse,++ -- ** DescribeBotVersion+ DescribeBotVersion (DescribeBotVersion'),+ newDescribeBotVersion,+ DescribeBotVersionResponse (DescribeBotVersionResponse'),+ newDescribeBotVersionResponse,++ -- ** DescribeCustomVocabularyMetadata+ DescribeCustomVocabularyMetadata (DescribeCustomVocabularyMetadata'),+ newDescribeCustomVocabularyMetadata,+ DescribeCustomVocabularyMetadataResponse (DescribeCustomVocabularyMetadataResponse'),+ newDescribeCustomVocabularyMetadataResponse,++ -- ** DescribeExport+ DescribeExport (DescribeExport'),+ newDescribeExport,+ DescribeExportResponse (DescribeExportResponse'),+ newDescribeExportResponse,++ -- ** DescribeImport+ DescribeImport (DescribeImport'),+ newDescribeImport,+ DescribeImportResponse (DescribeImportResponse'),+ newDescribeImportResponse,++ -- ** DescribeIntent+ DescribeIntent (DescribeIntent'),+ newDescribeIntent,+ DescribeIntentResponse (DescribeIntentResponse'),+ newDescribeIntentResponse,++ -- ** DescribeResourcePolicy+ DescribeResourcePolicy (DescribeResourcePolicy'),+ newDescribeResourcePolicy,+ DescribeResourcePolicyResponse (DescribeResourcePolicyResponse'),+ newDescribeResourcePolicyResponse,++ -- ** DescribeSlot+ DescribeSlot (DescribeSlot'),+ newDescribeSlot,+ DescribeSlotResponse (DescribeSlotResponse'),+ newDescribeSlotResponse,++ -- ** DescribeSlotType+ DescribeSlotType (DescribeSlotType'),+ newDescribeSlotType,+ DescribeSlotTypeResponse (DescribeSlotTypeResponse'),+ newDescribeSlotTypeResponse,++ -- ** ListAggregatedUtterances+ ListAggregatedUtterances (ListAggregatedUtterances'),+ newListAggregatedUtterances,+ ListAggregatedUtterancesResponse (ListAggregatedUtterancesResponse'),+ newListAggregatedUtterancesResponse,++ -- ** ListBotAliases+ ListBotAliases (ListBotAliases'),+ newListBotAliases,+ ListBotAliasesResponse (ListBotAliasesResponse'),+ newListBotAliasesResponse,++ -- ** ListBotLocales+ ListBotLocales (ListBotLocales'),+ newListBotLocales,+ ListBotLocalesResponse (ListBotLocalesResponse'),+ newListBotLocalesResponse,++ -- ** ListBotRecommendations+ ListBotRecommendations (ListBotRecommendations'),+ newListBotRecommendations,+ ListBotRecommendationsResponse (ListBotRecommendationsResponse'),+ newListBotRecommendationsResponse,++ -- ** ListBotVersions+ ListBotVersions (ListBotVersions'),+ newListBotVersions,+ ListBotVersionsResponse (ListBotVersionsResponse'),+ newListBotVersionsResponse,++ -- ** ListBots+ ListBots (ListBots'),+ newListBots,+ ListBotsResponse (ListBotsResponse'),+ newListBotsResponse,++ -- ** ListBuiltInIntents+ ListBuiltInIntents (ListBuiltInIntents'),+ newListBuiltInIntents,+ ListBuiltInIntentsResponse (ListBuiltInIntentsResponse'),+ newListBuiltInIntentsResponse,++ -- ** ListBuiltInSlotTypes+ ListBuiltInSlotTypes (ListBuiltInSlotTypes'),+ newListBuiltInSlotTypes,+ ListBuiltInSlotTypesResponse (ListBuiltInSlotTypesResponse'),+ newListBuiltInSlotTypesResponse,++ -- ** ListCustomVocabularyItems+ ListCustomVocabularyItems (ListCustomVocabularyItems'),+ newListCustomVocabularyItems,+ ListCustomVocabularyItemsResponse (ListCustomVocabularyItemsResponse'),+ newListCustomVocabularyItemsResponse,++ -- ** ListExports+ ListExports (ListExports'),+ newListExports,+ ListExportsResponse (ListExportsResponse'),+ newListExportsResponse,++ -- ** ListImports+ ListImports (ListImports'),+ newListImports,+ ListImportsResponse (ListImportsResponse'),+ newListImportsResponse,++ -- ** ListIntents+ ListIntents (ListIntents'),+ newListIntents,+ ListIntentsResponse (ListIntentsResponse'),+ newListIntentsResponse,++ -- ** ListRecommendedIntents+ ListRecommendedIntents (ListRecommendedIntents'),+ newListRecommendedIntents,+ ListRecommendedIntentsResponse (ListRecommendedIntentsResponse'),+ newListRecommendedIntentsResponse,++ -- ** ListSlotTypes+ ListSlotTypes (ListSlotTypes'),+ newListSlotTypes,+ ListSlotTypesResponse (ListSlotTypesResponse'),+ newListSlotTypesResponse,++ -- ** ListSlots+ ListSlots (ListSlots'),+ newListSlots,+ ListSlotsResponse (ListSlotsResponse'),+ newListSlotsResponse,++ -- ** ListTagsForResource+ ListTagsForResource (ListTagsForResource'),+ newListTagsForResource,+ ListTagsForResourceResponse (ListTagsForResourceResponse'),+ newListTagsForResourceResponse,++ -- ** SearchAssociatedTranscripts+ SearchAssociatedTranscripts (SearchAssociatedTranscripts'),+ newSearchAssociatedTranscripts,+ SearchAssociatedTranscriptsResponse (SearchAssociatedTranscriptsResponse'),+ newSearchAssociatedTranscriptsResponse,++ -- ** StartBotRecommendation+ StartBotRecommendation (StartBotRecommendation'),+ newStartBotRecommendation,+ StartBotRecommendationResponse (StartBotRecommendationResponse'),+ newStartBotRecommendationResponse,++ -- ** StartImport+ StartImport (StartImport'),+ newStartImport,+ StartImportResponse (StartImportResponse'),+ newStartImportResponse,++ -- ** StopBotRecommendation+ StopBotRecommendation (StopBotRecommendation'),+ newStopBotRecommendation,+ StopBotRecommendationResponse (StopBotRecommendationResponse'),+ newStopBotRecommendationResponse,++ -- ** TagResource+ TagResource (TagResource'),+ newTagResource,+ TagResourceResponse (TagResourceResponse'),+ newTagResourceResponse,++ -- ** UntagResource+ UntagResource (UntagResource'),+ newUntagResource,+ UntagResourceResponse (UntagResourceResponse'),+ newUntagResourceResponse,++ -- ** UpdateBot+ UpdateBot (UpdateBot'),+ newUpdateBot,+ UpdateBotResponse (UpdateBotResponse'),+ newUpdateBotResponse,++ -- ** UpdateBotAlias+ UpdateBotAlias (UpdateBotAlias'),+ newUpdateBotAlias,+ UpdateBotAliasResponse (UpdateBotAliasResponse'),+ newUpdateBotAliasResponse,++ -- ** UpdateBotLocale+ UpdateBotLocale (UpdateBotLocale'),+ newUpdateBotLocale,+ UpdateBotLocaleResponse (UpdateBotLocaleResponse'),+ newUpdateBotLocaleResponse,++ -- ** UpdateBotRecommendation+ UpdateBotRecommendation (UpdateBotRecommendation'),+ newUpdateBotRecommendation,+ UpdateBotRecommendationResponse (UpdateBotRecommendationResponse'),+ newUpdateBotRecommendationResponse,++ -- ** UpdateExport+ UpdateExport (UpdateExport'),+ newUpdateExport,+ UpdateExportResponse (UpdateExportResponse'),+ newUpdateExportResponse,++ -- ** UpdateIntent+ UpdateIntent (UpdateIntent'),+ newUpdateIntent,+ UpdateIntentResponse (UpdateIntentResponse'),+ newUpdateIntentResponse,++ -- ** UpdateResourcePolicy+ UpdateResourcePolicy (UpdateResourcePolicy'),+ newUpdateResourcePolicy,+ UpdateResourcePolicyResponse (UpdateResourcePolicyResponse'),+ newUpdateResourcePolicyResponse,++ -- ** UpdateSlot+ UpdateSlot (UpdateSlot'),+ newUpdateSlot,+ UpdateSlotResponse (UpdateSlotResponse'),+ newUpdateSlotResponse,++ -- ** UpdateSlotType+ UpdateSlotType (UpdateSlotType'),+ newUpdateSlotType,+ UpdateSlotTypeResponse (UpdateSlotTypeResponse'),+ newUpdateSlotTypeResponse,++ -- * Types++ -- ** AggregatedUtterancesFilterName+ AggregatedUtterancesFilterName (..),++ -- ** AggregatedUtterancesFilterOperator+ AggregatedUtterancesFilterOperator (..),++ -- ** AggregatedUtterancesSortAttribute+ AggregatedUtterancesSortAttribute (..),++ -- ** AssociatedTranscriptFilterName+ AssociatedTranscriptFilterName (..),++ -- ** AudioRecognitionStrategy+ AudioRecognitionStrategy (..),++ -- ** BotAliasStatus+ BotAliasStatus (..),++ -- ** BotFilterName+ BotFilterName (..),++ -- ** BotFilterOperator+ BotFilterOperator (..),++ -- ** BotLocaleFilterName+ BotLocaleFilterName (..),++ -- ** BotLocaleFilterOperator+ BotLocaleFilterOperator (..),++ -- ** BotLocaleSortAttribute+ BotLocaleSortAttribute (..),++ -- ** BotLocaleStatus+ BotLocaleStatus (..),++ -- ** BotRecommendationStatus+ BotRecommendationStatus (..),++ -- ** BotSortAttribute+ BotSortAttribute (..),++ -- ** BotStatus+ BotStatus (..),++ -- ** BotVersionSortAttribute+ BotVersionSortAttribute (..),++ -- ** BuiltInIntentSortAttribute+ BuiltInIntentSortAttribute (..),++ -- ** BuiltInSlotTypeSortAttribute+ BuiltInSlotTypeSortAttribute (..),++ -- ** CustomVocabularyStatus+ CustomVocabularyStatus (..),++ -- ** DialogActionType+ DialogActionType (..),++ -- ** Effect+ Effect (..),++ -- ** ErrorCode+ ErrorCode (..),++ -- ** ExportFilterName+ ExportFilterName (..),++ -- ** ExportFilterOperator+ ExportFilterOperator (..),++ -- ** ExportSortAttribute+ ExportSortAttribute (..),++ -- ** ExportStatus+ ExportStatus (..),++ -- ** ImportExportFileFormat+ ImportExportFileFormat (..),++ -- ** ImportFilterName+ ImportFilterName (..),++ -- ** ImportFilterOperator+ ImportFilterOperator (..),++ -- ** ImportResourceType+ ImportResourceType (..),++ -- ** ImportSortAttribute+ ImportSortAttribute (..),++ -- ** ImportStatus+ ImportStatus (..),++ -- ** IntentFilterName+ IntentFilterName (..),++ -- ** IntentFilterOperator+ IntentFilterOperator (..),++ -- ** IntentSortAttribute+ IntentSortAttribute (..),++ -- ** MergeStrategy+ MergeStrategy (..),++ -- ** MessageSelectionStrategy+ MessageSelectionStrategy (..),++ -- ** ObfuscationSettingType+ ObfuscationSettingType (..),++ -- ** PromptAttempt+ PromptAttempt (..),++ -- ** SearchOrder+ SearchOrder (..),++ -- ** SlotConstraint+ SlotConstraint (..),++ -- ** SlotFilterName+ SlotFilterName (..),++ -- ** SlotFilterOperator+ SlotFilterOperator (..),++ -- ** SlotShape+ SlotShape (..),++ -- ** SlotSortAttribute+ SlotSortAttribute (..),++ -- ** SlotTypeCategory+ SlotTypeCategory (..),++ -- ** SlotTypeFilterName+ SlotTypeFilterName (..),++ -- ** SlotTypeFilterOperator+ SlotTypeFilterOperator (..),++ -- ** SlotTypeSortAttribute+ SlotTypeSortAttribute (..),++ -- ** SlotValueResolutionStrategy+ SlotValueResolutionStrategy (..),++ -- ** SortOrder+ SortOrder (..),++ -- ** TimeDimension+ TimeDimension (..),++ -- ** TranscriptFormat+ TranscriptFormat (..),++ -- ** VoiceEngine+ VoiceEngine (..),++ -- ** AdvancedRecognitionSetting+ AdvancedRecognitionSetting (AdvancedRecognitionSetting'),+ newAdvancedRecognitionSetting,++ -- ** AggregatedUtterancesFilter+ AggregatedUtterancesFilter (AggregatedUtterancesFilter'),+ newAggregatedUtterancesFilter,++ -- ** AggregatedUtterancesSortBy+ AggregatedUtterancesSortBy (AggregatedUtterancesSortBy'),+ newAggregatedUtterancesSortBy,++ -- ** AggregatedUtterancesSummary+ AggregatedUtterancesSummary (AggregatedUtterancesSummary'),+ newAggregatedUtterancesSummary,++ -- ** AllowedInputTypes+ AllowedInputTypes (AllowedInputTypes'),+ newAllowedInputTypes,++ -- ** AssociatedTranscript+ AssociatedTranscript (AssociatedTranscript'),+ newAssociatedTranscript,++ -- ** AssociatedTranscriptFilter+ AssociatedTranscriptFilter (AssociatedTranscriptFilter'),+ newAssociatedTranscriptFilter,++ -- ** AudioAndDTMFInputSpecification+ AudioAndDTMFInputSpecification (AudioAndDTMFInputSpecification'),+ newAudioAndDTMFInputSpecification,++ -- ** AudioLogDestination+ AudioLogDestination (AudioLogDestination'),+ newAudioLogDestination,++ -- ** AudioLogSetting+ AudioLogSetting (AudioLogSetting'),+ newAudioLogSetting,++ -- ** AudioSpecification+ AudioSpecification (AudioSpecification'),+ newAudioSpecification,++ -- ** BotAliasHistoryEvent+ BotAliasHistoryEvent (BotAliasHistoryEvent'),+ newBotAliasHistoryEvent,++ -- ** BotAliasLocaleSettings+ BotAliasLocaleSettings (BotAliasLocaleSettings'),+ newBotAliasLocaleSettings,++ -- ** BotAliasSummary+ BotAliasSummary (BotAliasSummary'),+ newBotAliasSummary,++ -- ** BotExportSpecification+ BotExportSpecification (BotExportSpecification'),+ newBotExportSpecification,++ -- ** BotFilter+ BotFilter (BotFilter'),+ newBotFilter,++ -- ** BotImportSpecification+ BotImportSpecification (BotImportSpecification'),+ newBotImportSpecification,++ -- ** BotLocaleExportSpecification+ BotLocaleExportSpecification (BotLocaleExportSpecification'),+ newBotLocaleExportSpecification,++ -- ** BotLocaleFilter+ BotLocaleFilter (BotLocaleFilter'),+ newBotLocaleFilter,++ -- ** BotLocaleHistoryEvent+ BotLocaleHistoryEvent (BotLocaleHistoryEvent'),+ newBotLocaleHistoryEvent,++ -- ** BotLocaleImportSpecification+ BotLocaleImportSpecification (BotLocaleImportSpecification'),+ newBotLocaleImportSpecification,++ -- ** BotLocaleSortBy+ BotLocaleSortBy (BotLocaleSortBy'),+ newBotLocaleSortBy,++ -- ** BotLocaleSummary+ BotLocaleSummary (BotLocaleSummary'),+ newBotLocaleSummary,++ -- ** BotRecommendationResultStatistics+ BotRecommendationResultStatistics (BotRecommendationResultStatistics'),+ newBotRecommendationResultStatistics,++ -- ** BotRecommendationResults+ BotRecommendationResults (BotRecommendationResults'),+ newBotRecommendationResults,++ -- ** BotRecommendationSummary+ BotRecommendationSummary (BotRecommendationSummary'),+ newBotRecommendationSummary,++ -- ** BotSortBy+ BotSortBy (BotSortBy'),+ newBotSortBy,++ -- ** BotSummary+ BotSummary (BotSummary'),+ newBotSummary,++ -- ** BotVersionLocaleDetails+ BotVersionLocaleDetails (BotVersionLocaleDetails'),+ newBotVersionLocaleDetails,++ -- ** BotVersionSortBy+ BotVersionSortBy (BotVersionSortBy'),+ newBotVersionSortBy,++ -- ** BotVersionSummary+ BotVersionSummary (BotVersionSummary'),+ newBotVersionSummary,++ -- ** BuiltInIntentSortBy+ BuiltInIntentSortBy (BuiltInIntentSortBy'),+ newBuiltInIntentSortBy,++ -- ** BuiltInIntentSummary+ BuiltInIntentSummary (BuiltInIntentSummary'),+ newBuiltInIntentSummary,++ -- ** BuiltInSlotTypeSortBy+ BuiltInSlotTypeSortBy (BuiltInSlotTypeSortBy'),+ newBuiltInSlotTypeSortBy,++ -- ** BuiltInSlotTypeSummary+ BuiltInSlotTypeSummary (BuiltInSlotTypeSummary'),+ newBuiltInSlotTypeSummary,++ -- ** Button+ Button (Button'),+ newButton,++ -- ** CloudWatchLogGroupLogDestination+ CloudWatchLogGroupLogDestination (CloudWatchLogGroupLogDestination'),+ newCloudWatchLogGroupLogDestination,++ -- ** CodeHookSpecification+ CodeHookSpecification (CodeHookSpecification'),+ newCodeHookSpecification,++ -- ** CompositeSlotTypeSetting+ CompositeSlotTypeSetting (CompositeSlotTypeSetting'),+ newCompositeSlotTypeSetting,++ -- ** Condition+ Condition (Condition'),+ newCondition,++ -- ** ConditionalBranch+ ConditionalBranch (ConditionalBranch'),+ newConditionalBranch,++ -- ** ConditionalSpecification+ ConditionalSpecification (ConditionalSpecification'),+ newConditionalSpecification,++ -- ** ConversationLogSettings+ ConversationLogSettings (ConversationLogSettings'),+ newConversationLogSettings,++ -- ** CustomPayload+ CustomPayload (CustomPayload'),+ newCustomPayload,++ -- ** CustomVocabularyEntryId+ CustomVocabularyEntryId (CustomVocabularyEntryId'),+ newCustomVocabularyEntryId,++ -- ** CustomVocabularyExportSpecification+ CustomVocabularyExportSpecification (CustomVocabularyExportSpecification'),+ newCustomVocabularyExportSpecification,++ -- ** CustomVocabularyImportSpecification+ CustomVocabularyImportSpecification (CustomVocabularyImportSpecification'),+ newCustomVocabularyImportSpecification,++ -- ** CustomVocabularyItem+ CustomVocabularyItem (CustomVocabularyItem'),+ newCustomVocabularyItem,++ -- ** DTMFSpecification+ DTMFSpecification (DTMFSpecification'),+ newDTMFSpecification,++ -- ** DataPrivacy+ DataPrivacy (DataPrivacy'),+ newDataPrivacy,++ -- ** DateRangeFilter+ DateRangeFilter (DateRangeFilter'),+ newDateRangeFilter,++ -- ** DefaultConditionalBranch+ DefaultConditionalBranch (DefaultConditionalBranch'),+ newDefaultConditionalBranch,++ -- ** DialogAction+ DialogAction (DialogAction'),+ newDialogAction,++ -- ** DialogCodeHookInvocationSetting+ DialogCodeHookInvocationSetting (DialogCodeHookInvocationSetting'),+ newDialogCodeHookInvocationSetting,++ -- ** DialogCodeHookSettings+ DialogCodeHookSettings (DialogCodeHookSettings'),+ newDialogCodeHookSettings,++ -- ** DialogState+ DialogState (DialogState'),+ newDialogState,++ -- ** ElicitationCodeHookInvocationSetting+ ElicitationCodeHookInvocationSetting (ElicitationCodeHookInvocationSetting'),+ newElicitationCodeHookInvocationSetting,++ -- ** EncryptionSetting+ EncryptionSetting (EncryptionSetting'),+ newEncryptionSetting,++ -- ** ExportFilter+ ExportFilter (ExportFilter'),+ newExportFilter,++ -- ** ExportResourceSpecification+ ExportResourceSpecification (ExportResourceSpecification'),+ newExportResourceSpecification,++ -- ** ExportSortBy+ ExportSortBy (ExportSortBy'),+ newExportSortBy,++ -- ** ExportSummary+ ExportSummary (ExportSummary'),+ newExportSummary,++ -- ** ExternalSourceSetting+ ExternalSourceSetting (ExternalSourceSetting'),+ newExternalSourceSetting,++ -- ** FailedCustomVocabularyItem+ FailedCustomVocabularyItem (FailedCustomVocabularyItem'),+ newFailedCustomVocabularyItem,++ -- ** FulfillmentCodeHookSettings+ FulfillmentCodeHookSettings (FulfillmentCodeHookSettings'),+ newFulfillmentCodeHookSettings,++ -- ** FulfillmentStartResponseSpecification+ FulfillmentStartResponseSpecification (FulfillmentStartResponseSpecification'),+ newFulfillmentStartResponseSpecification,++ -- ** FulfillmentUpdateResponseSpecification+ FulfillmentUpdateResponseSpecification (FulfillmentUpdateResponseSpecification'),+ newFulfillmentUpdateResponseSpecification,++ -- ** FulfillmentUpdatesSpecification+ FulfillmentUpdatesSpecification (FulfillmentUpdatesSpecification'),+ newFulfillmentUpdatesSpecification,++ -- ** GrammarSlotTypeSetting+ GrammarSlotTypeSetting (GrammarSlotTypeSetting'),+ newGrammarSlotTypeSetting,++ -- ** GrammarSlotTypeSource+ GrammarSlotTypeSource (GrammarSlotTypeSource'),+ newGrammarSlotTypeSource,++ -- ** ImageResponseCard+ ImageResponseCard (ImageResponseCard'),+ newImageResponseCard,++ -- ** ImportFilter+ ImportFilter (ImportFilter'),+ newImportFilter,++ -- ** ImportResourceSpecification+ ImportResourceSpecification (ImportResourceSpecification'),+ newImportResourceSpecification,++ -- ** ImportSortBy+ ImportSortBy (ImportSortBy'),+ newImportSortBy,++ -- ** ImportSummary+ ImportSummary (ImportSummary'),+ newImportSummary,++ -- ** InitialResponseSetting+ InitialResponseSetting (InitialResponseSetting'),+ newInitialResponseSetting,++ -- ** InputContext+ InputContext (InputContext'),+ newInputContext,++ -- ** IntentClosingSetting+ IntentClosingSetting (IntentClosingSetting'),+ newIntentClosingSetting,++ -- ** IntentConfirmationSetting+ IntentConfirmationSetting (IntentConfirmationSetting'),+ newIntentConfirmationSetting,++ -- ** IntentFilter+ IntentFilter (IntentFilter'),+ newIntentFilter,++ -- ** IntentOverride+ IntentOverride (IntentOverride'),+ newIntentOverride,++ -- ** IntentSortBy+ IntentSortBy (IntentSortBy'),+ newIntentSortBy,++ -- ** IntentStatistics+ IntentStatistics (IntentStatistics'),+ newIntentStatistics,++ -- ** IntentSummary+ IntentSummary (IntentSummary'),+ newIntentSummary,++ -- ** KendraConfiguration+ KendraConfiguration (KendraConfiguration'),+ newKendraConfiguration,++ -- ** LambdaCodeHook+ LambdaCodeHook (LambdaCodeHook'),+ newLambdaCodeHook,++ -- ** LexTranscriptFilter+ LexTranscriptFilter (LexTranscriptFilter'),+ newLexTranscriptFilter,++ -- ** Message+ Message (Message'),+ newMessage,++ -- ** MessageGroup+ MessageGroup (MessageGroup'),+ newMessageGroup,++ -- ** MultipleValuesSetting+ MultipleValuesSetting (MultipleValuesSetting'),+ newMultipleValuesSetting,++ -- ** NewCustomVocabularyItem+ NewCustomVocabularyItem (NewCustomVocabularyItem'),+ newNewCustomVocabularyItem,++ -- ** ObfuscationSetting+ ObfuscationSetting (ObfuscationSetting'),+ newObfuscationSetting,++ -- ** OutputContext+ OutputContext (OutputContext'),+ newOutputContext,++ -- ** PathFormat+ PathFormat (PathFormat'),+ newPathFormat,++ -- ** PlainTextMessage+ PlainTextMessage (PlainTextMessage'),+ newPlainTextMessage,++ -- ** PostDialogCodeHookInvocationSpecification+ PostDialogCodeHookInvocationSpecification (PostDialogCodeHookInvocationSpecification'),+ newPostDialogCodeHookInvocationSpecification,++ -- ** PostFulfillmentStatusSpecification+ PostFulfillmentStatusSpecification (PostFulfillmentStatusSpecification'),+ newPostFulfillmentStatusSpecification,++ -- ** Principal+ Principal (Principal'),+ newPrincipal,++ -- ** PromptAttemptSpecification+ PromptAttemptSpecification (PromptAttemptSpecification'),+ newPromptAttemptSpecification,++ -- ** PromptSpecification+ PromptSpecification (PromptSpecification'),+ newPromptSpecification,++ -- ** RecommendedIntentSummary+ RecommendedIntentSummary (RecommendedIntentSummary'),+ newRecommendedIntentSummary,++ -- ** RelativeAggregationDuration+ RelativeAggregationDuration (RelativeAggregationDuration'),+ newRelativeAggregationDuration,++ -- ** ResponseSpecification+ ResponseSpecification (ResponseSpecification'),+ newResponseSpecification,++ -- ** S3BucketLogDestination+ S3BucketLogDestination (S3BucketLogDestination'),+ newS3BucketLogDestination,++ -- ** S3BucketTranscriptSource+ S3BucketTranscriptSource (S3BucketTranscriptSource'),+ newS3BucketTranscriptSource,++ -- ** SSMLMessage+ SSMLMessage (SSMLMessage'),+ newSSMLMessage,++ -- ** SampleUtterance+ SampleUtterance (SampleUtterance'),+ newSampleUtterance,++ -- ** SampleValue+ SampleValue (SampleValue'),+ newSampleValue,++ -- ** SentimentAnalysisSettings+ SentimentAnalysisSettings (SentimentAnalysisSettings'),+ newSentimentAnalysisSettings,++ -- ** SlotCaptureSetting+ SlotCaptureSetting (SlotCaptureSetting'),+ newSlotCaptureSetting,++ -- ** SlotDefaultValue+ SlotDefaultValue (SlotDefaultValue'),+ newSlotDefaultValue,++ -- ** SlotDefaultValueSpecification+ SlotDefaultValueSpecification (SlotDefaultValueSpecification'),+ newSlotDefaultValueSpecification,++ -- ** SlotFilter+ SlotFilter (SlotFilter'),+ newSlotFilter,++ -- ** SlotPriority+ SlotPriority (SlotPriority'),+ newSlotPriority,++ -- ** SlotSortBy+ SlotSortBy (SlotSortBy'),+ newSlotSortBy,++ -- ** SlotSummary+ SlotSummary (SlotSummary'),+ newSlotSummary,++ -- ** SlotTypeFilter+ SlotTypeFilter (SlotTypeFilter'),+ newSlotTypeFilter,++ -- ** SlotTypeSortBy+ SlotTypeSortBy (SlotTypeSortBy'),+ newSlotTypeSortBy,++ -- ** SlotTypeStatistics+ SlotTypeStatistics (SlotTypeStatistics'),+ newSlotTypeStatistics,++ -- ** SlotTypeSummary+ SlotTypeSummary (SlotTypeSummary'),+ newSlotTypeSummary,++ -- ** SlotTypeValue+ SlotTypeValue (SlotTypeValue'),+ newSlotTypeValue,++ -- ** SlotValue+ SlotValue (SlotValue'),+ newSlotValue,++ -- ** SlotValueElicitationSetting+ SlotValueElicitationSetting (SlotValueElicitationSetting'),+ newSlotValueElicitationSetting,++ -- ** SlotValueOverride+ SlotValueOverride (SlotValueOverride'),+ newSlotValueOverride,++ -- ** SlotValueRegexFilter+ SlotValueRegexFilter (SlotValueRegexFilter'),+ newSlotValueRegexFilter,++ -- ** SlotValueSelectionSetting+ SlotValueSelectionSetting (SlotValueSelectionSetting'),+ newSlotValueSelectionSetting,++ -- ** Specifications+ Specifications (Specifications'),+ newSpecifications,++ -- ** StillWaitingResponseSpecification+ StillWaitingResponseSpecification (StillWaitingResponseSpecification'),+ newStillWaitingResponseSpecification,++ -- ** SubSlotSetting+ SubSlotSetting (SubSlotSetting'),+ newSubSlotSetting,++ -- ** SubSlotTypeComposition+ SubSlotTypeComposition (SubSlotTypeComposition'),+ newSubSlotTypeComposition,++ -- ** SubSlotValueElicitationSetting+ SubSlotValueElicitationSetting (SubSlotValueElicitationSetting'),+ newSubSlotValueElicitationSetting,++ -- ** TextInputSpecification+ TextInputSpecification (TextInputSpecification'),+ newTextInputSpecification,++ -- ** TextLogDestination+ TextLogDestination (TextLogDestination'),+ newTextLogDestination,++ -- ** TextLogSetting+ TextLogSetting (TextLogSetting'),+ newTextLogSetting,++ -- ** TranscriptFilter+ TranscriptFilter (TranscriptFilter'),+ newTranscriptFilter,++ -- ** TranscriptSourceSetting+ TranscriptSourceSetting (TranscriptSourceSetting'),+ newTranscriptSourceSetting,++ -- ** UtteranceAggregationDuration+ UtteranceAggregationDuration (UtteranceAggregationDuration'),+ newUtteranceAggregationDuration,++ -- ** VoiceSettings+ VoiceSettings (VoiceSettings'),+ newVoiceSettings,++ -- ** WaitAndContinueSpecification+ WaitAndContinueSpecification (WaitAndContinueSpecification'),+ newWaitAndContinueSpecification,+ )+where++import Amazonka.LexV2Models.BatchCreateCustomVocabularyItem+import Amazonka.LexV2Models.BatchDeleteCustomVocabularyItem+import Amazonka.LexV2Models.BatchUpdateCustomVocabularyItem+import Amazonka.LexV2Models.BuildBotLocale+import Amazonka.LexV2Models.CreateBot+import Amazonka.LexV2Models.CreateBotAlias+import Amazonka.LexV2Models.CreateBotLocale+import Amazonka.LexV2Models.CreateBotVersion+import Amazonka.LexV2Models.CreateExport+import Amazonka.LexV2Models.CreateIntent+import Amazonka.LexV2Models.CreateResourcePolicy+import Amazonka.LexV2Models.CreateResourcePolicyStatement+import Amazonka.LexV2Models.CreateSlot+import Amazonka.LexV2Models.CreateSlotType+import Amazonka.LexV2Models.CreateUploadUrl+import Amazonka.LexV2Models.DeleteBot+import Amazonka.LexV2Models.DeleteBotAlias+import Amazonka.LexV2Models.DeleteBotLocale+import Amazonka.LexV2Models.DeleteBotVersion+import Amazonka.LexV2Models.DeleteCustomVocabulary+import Amazonka.LexV2Models.DeleteExport+import Amazonka.LexV2Models.DeleteImport+import Amazonka.LexV2Models.DeleteIntent+import Amazonka.LexV2Models.DeleteResourcePolicy+import Amazonka.LexV2Models.DeleteResourcePolicyStatement+import Amazonka.LexV2Models.DeleteSlot+import Amazonka.LexV2Models.DeleteSlotType+import Amazonka.LexV2Models.DeleteUtterances+import Amazonka.LexV2Models.DescribeBot+import Amazonka.LexV2Models.DescribeBotAlias+import Amazonka.LexV2Models.DescribeBotLocale+import Amazonka.LexV2Models.DescribeBotRecommendation+import Amazonka.LexV2Models.DescribeBotVersion+import Amazonka.LexV2Models.DescribeCustomVocabularyMetadata+import Amazonka.LexV2Models.DescribeExport+import Amazonka.LexV2Models.DescribeImport+import Amazonka.LexV2Models.DescribeIntent+import Amazonka.LexV2Models.DescribeResourcePolicy+import Amazonka.LexV2Models.DescribeSlot+import Amazonka.LexV2Models.DescribeSlotType+import Amazonka.LexV2Models.Lens+import Amazonka.LexV2Models.ListAggregatedUtterances+import Amazonka.LexV2Models.ListBotAliases+import Amazonka.LexV2Models.ListBotLocales+import Amazonka.LexV2Models.ListBotRecommendations+import Amazonka.LexV2Models.ListBotVersions+import Amazonka.LexV2Models.ListBots+import Amazonka.LexV2Models.ListBuiltInIntents+import Amazonka.LexV2Models.ListBuiltInSlotTypes+import Amazonka.LexV2Models.ListCustomVocabularyItems+import Amazonka.LexV2Models.ListExports+import Amazonka.LexV2Models.ListImports+import Amazonka.LexV2Models.ListIntents+import Amazonka.LexV2Models.ListRecommendedIntents+import Amazonka.LexV2Models.ListSlotTypes+import Amazonka.LexV2Models.ListSlots+import Amazonka.LexV2Models.ListTagsForResource+import Amazonka.LexV2Models.SearchAssociatedTranscripts+import Amazonka.LexV2Models.StartBotRecommendation+import Amazonka.LexV2Models.StartImport+import Amazonka.LexV2Models.StopBotRecommendation+import Amazonka.LexV2Models.TagResource+import Amazonka.LexV2Models.Types+import Amazonka.LexV2Models.UntagResource+import Amazonka.LexV2Models.UpdateBot+import Amazonka.LexV2Models.UpdateBotAlias+import Amazonka.LexV2Models.UpdateBotLocale+import Amazonka.LexV2Models.UpdateBotRecommendation+import Amazonka.LexV2Models.UpdateExport+import Amazonka.LexV2Models.UpdateIntent+import Amazonka.LexV2Models.UpdateResourcePolicy+import Amazonka.LexV2Models.UpdateSlot+import Amazonka.LexV2Models.UpdateSlotType+import Amazonka.LexV2Models.Waiters++-- $errors+-- Error matchers are designed for use with the functions provided by+-- <http://hackage.haskell.org/package/lens/docs/Control-Exception-Lens.html Control.Exception.Lens>.+-- This allows catching (and rethrowing) service specific errors returned+-- by 'LexV2Models'.++-- $operations+-- Some AWS operations return results that are incomplete and require subsequent+-- requests in order to obtain the entire result set. The process of sending+-- subsequent requests to continue where a previous request left off is called+-- pagination. For example, the 'ListObjects' operation of Amazon S3 returns up to+-- 1000 objects at a time, and you must send subsequent requests with the+-- appropriate Marker in order to retrieve the next page of results.+--+-- Operations that have an 'AWSPager' instance can transparently perform subsequent+-- requests, correctly setting Markers and other request facets to iterate through+-- the entire result set of a truncated API operation. Operations which support+-- this have an additional note in the documentation.+--+-- Many operations have the ability to filter results on the server side. See the+-- individual operation parameters for details.++-- $waiters+-- Waiters poll by repeatedly sending a request until some remote success condition+-- configured by the 'Wait' specification is fulfilled. The 'Wait' specification+-- determines how many attempts should be made, in addition to delay and retry strategies.
+ gen/Amazonka/LexV2Models/BatchCreateCustomVocabularyItem.hs view
@@ -0,0 +1,323 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.BatchCreateCustomVocabularyItem+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Batch create custom vocabulary item for the specified locale in the+-- specified bot.+module Amazonka.LexV2Models.BatchCreateCustomVocabularyItem+ ( -- * Creating a Request+ BatchCreateCustomVocabularyItem (..),+ newBatchCreateCustomVocabularyItem,++ -- * Request Lenses+ batchCreateCustomVocabularyItem_botId,+ batchCreateCustomVocabularyItem_botVersion,+ batchCreateCustomVocabularyItem_localeId,+ batchCreateCustomVocabularyItem_customVocabularyItemList,++ -- * Destructuring the Response+ BatchCreateCustomVocabularyItemResponse (..),+ newBatchCreateCustomVocabularyItemResponse,++ -- * Response Lenses+ batchCreateCustomVocabularyItemResponse_botId,+ batchCreateCustomVocabularyItemResponse_botVersion,+ batchCreateCustomVocabularyItemResponse_errors,+ batchCreateCustomVocabularyItemResponse_localeId,+ batchCreateCustomVocabularyItemResponse_resources,+ batchCreateCustomVocabularyItemResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newBatchCreateCustomVocabularyItem' smart constructor.+data BatchCreateCustomVocabularyItem = BatchCreateCustomVocabularyItem'+ { -- | The unique identifier of the bot to batch create the custom vocabulary+ -- item for.+ botId :: Prelude.Text,+ -- | The bot version of the bot to batch create the custom vocabulary item+ -- for.+ botVersion :: Prelude.Text,+ -- | The unique locale identifier of the bot to batch create the custom+ -- vocabulary item for.+ localeId :: Prelude.Text,+ -- | The custom vocabulary item list of the bot to batch create the custom+ -- vocabulary item for.+ customVocabularyItemList :: Prelude.NonEmpty NewCustomVocabularyItem+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BatchCreateCustomVocabularyItem' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'batchCreateCustomVocabularyItem_botId' - The unique identifier of the bot to batch create the custom vocabulary+-- item for.+--+-- 'botVersion', 'batchCreateCustomVocabularyItem_botVersion' - The bot version of the bot to batch create the custom vocabulary item+-- for.+--+-- 'localeId', 'batchCreateCustomVocabularyItem_localeId' - The unique locale identifier of the bot to batch create the custom+-- vocabulary item for.+--+-- 'customVocabularyItemList', 'batchCreateCustomVocabularyItem_customVocabularyItemList' - The custom vocabulary item list of the bot to batch create the custom+-- vocabulary item for.+newBatchCreateCustomVocabularyItem ::+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ -- | 'localeId'+ Prelude.Text ->+ -- | 'customVocabularyItemList'+ Prelude.NonEmpty NewCustomVocabularyItem ->+ BatchCreateCustomVocabularyItem+newBatchCreateCustomVocabularyItem+ pBotId_+ pBotVersion_+ pLocaleId_+ pCustomVocabularyItemList_ =+ BatchCreateCustomVocabularyItem'+ { botId = pBotId_,+ botVersion = pBotVersion_,+ localeId = pLocaleId_,+ customVocabularyItemList =+ Lens.coerced+ Lens.# pCustomVocabularyItemList_+ }++-- | The unique identifier of the bot to batch create the custom vocabulary+-- item for.+batchCreateCustomVocabularyItem_botId :: Lens.Lens' BatchCreateCustomVocabularyItem Prelude.Text+batchCreateCustomVocabularyItem_botId = Lens.lens (\BatchCreateCustomVocabularyItem' {botId} -> botId) (\s@BatchCreateCustomVocabularyItem' {} a -> s {botId = a} :: BatchCreateCustomVocabularyItem)++-- | The bot version of the bot to batch create the custom vocabulary item+-- for.+batchCreateCustomVocabularyItem_botVersion :: Lens.Lens' BatchCreateCustomVocabularyItem Prelude.Text+batchCreateCustomVocabularyItem_botVersion = Lens.lens (\BatchCreateCustomVocabularyItem' {botVersion} -> botVersion) (\s@BatchCreateCustomVocabularyItem' {} a -> s {botVersion = a} :: BatchCreateCustomVocabularyItem)++-- | The unique locale identifier of the bot to batch create the custom+-- vocabulary item for.+batchCreateCustomVocabularyItem_localeId :: Lens.Lens' BatchCreateCustomVocabularyItem Prelude.Text+batchCreateCustomVocabularyItem_localeId = Lens.lens (\BatchCreateCustomVocabularyItem' {localeId} -> localeId) (\s@BatchCreateCustomVocabularyItem' {} a -> s {localeId = a} :: BatchCreateCustomVocabularyItem)++-- | The custom vocabulary item list of the bot to batch create the custom+-- vocabulary item for.+batchCreateCustomVocabularyItem_customVocabularyItemList :: Lens.Lens' BatchCreateCustomVocabularyItem (Prelude.NonEmpty NewCustomVocabularyItem)+batchCreateCustomVocabularyItem_customVocabularyItemList = Lens.lens (\BatchCreateCustomVocabularyItem' {customVocabularyItemList} -> customVocabularyItemList) (\s@BatchCreateCustomVocabularyItem' {} a -> s {customVocabularyItemList = a} :: BatchCreateCustomVocabularyItem) Prelude.. Lens.coerced++instance+ Core.AWSRequest+ BatchCreateCustomVocabularyItem+ where+ type+ AWSResponse BatchCreateCustomVocabularyItem =+ BatchCreateCustomVocabularyItemResponse+ request overrides =+ Request.putJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ BatchCreateCustomVocabularyItemResponse'+ Prelude.<$> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botVersion")+ Prelude.<*> (x Data..?> "errors" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "localeId")+ Prelude.<*> (x Data..?> "resources" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ BatchCreateCustomVocabularyItem+ where+ hashWithSalt+ _salt+ BatchCreateCustomVocabularyItem' {..} =+ _salt+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` localeId+ `Prelude.hashWithSalt` customVocabularyItemList++instance+ Prelude.NFData+ BatchCreateCustomVocabularyItem+ where+ rnf BatchCreateCustomVocabularyItem' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf customVocabularyItemList++instance+ Data.ToHeaders+ BatchCreateCustomVocabularyItem+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON BatchCreateCustomVocabularyItem where+ toJSON BatchCreateCustomVocabularyItem' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ( "customVocabularyItemList"+ Data..= customVocabularyItemList+ )+ ]+ )++instance Data.ToPath BatchCreateCustomVocabularyItem where+ toPath BatchCreateCustomVocabularyItem' {..} =+ Prelude.mconcat+ [ "/bots/",+ Data.toBS botId,+ "/botversions/",+ Data.toBS botVersion,+ "/botlocales/",+ Data.toBS localeId,+ "/customvocabulary/DEFAULT/batchcreate"+ ]++instance Data.ToQuery BatchCreateCustomVocabularyItem where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newBatchCreateCustomVocabularyItemResponse' smart constructor.+data BatchCreateCustomVocabularyItemResponse = BatchCreateCustomVocabularyItemResponse'+ { -- | The unique identifier of the bot to batch create response for the custom+ -- vocabulary item.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The bot version of the bot to batch create the custom vocabulary item+ -- response for.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | The errors of the action to batch create the custom vocabulary item+ -- response for a bot.+ errors :: Prelude.Maybe [FailedCustomVocabularyItem],+ -- | The unique locale identifier of the bot to batch create the custom+ -- vocabulary item response for.+ localeId :: Prelude.Maybe Prelude.Text,+ -- | The resources of the action to batch create the custom vocabulary item+ -- response for a bot.+ resources :: Prelude.Maybe [CustomVocabularyItem],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BatchCreateCustomVocabularyItemResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'batchCreateCustomVocabularyItemResponse_botId' - The unique identifier of the bot to batch create response for the custom+-- vocabulary item.+--+-- 'botVersion', 'batchCreateCustomVocabularyItemResponse_botVersion' - The bot version of the bot to batch create the custom vocabulary item+-- response for.+--+-- 'errors', 'batchCreateCustomVocabularyItemResponse_errors' - The errors of the action to batch create the custom vocabulary item+-- response for a bot.+--+-- 'localeId', 'batchCreateCustomVocabularyItemResponse_localeId' - The unique locale identifier of the bot to batch create the custom+-- vocabulary item response for.+--+-- 'resources', 'batchCreateCustomVocabularyItemResponse_resources' - The resources of the action to batch create the custom vocabulary item+-- response for a bot.+--+-- 'httpStatus', 'batchCreateCustomVocabularyItemResponse_httpStatus' - The response's http status code.+newBatchCreateCustomVocabularyItemResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ BatchCreateCustomVocabularyItemResponse+newBatchCreateCustomVocabularyItemResponse+ pHttpStatus_ =+ BatchCreateCustomVocabularyItemResponse'+ { botId =+ Prelude.Nothing,+ botVersion = Prelude.Nothing,+ errors = Prelude.Nothing,+ localeId = Prelude.Nothing,+ resources = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The unique identifier of the bot to batch create response for the custom+-- vocabulary item.+batchCreateCustomVocabularyItemResponse_botId :: Lens.Lens' BatchCreateCustomVocabularyItemResponse (Prelude.Maybe Prelude.Text)+batchCreateCustomVocabularyItemResponse_botId = Lens.lens (\BatchCreateCustomVocabularyItemResponse' {botId} -> botId) (\s@BatchCreateCustomVocabularyItemResponse' {} a -> s {botId = a} :: BatchCreateCustomVocabularyItemResponse)++-- | The bot version of the bot to batch create the custom vocabulary item+-- response for.+batchCreateCustomVocabularyItemResponse_botVersion :: Lens.Lens' BatchCreateCustomVocabularyItemResponse (Prelude.Maybe Prelude.Text)+batchCreateCustomVocabularyItemResponse_botVersion = Lens.lens (\BatchCreateCustomVocabularyItemResponse' {botVersion} -> botVersion) (\s@BatchCreateCustomVocabularyItemResponse' {} a -> s {botVersion = a} :: BatchCreateCustomVocabularyItemResponse)++-- | The errors of the action to batch create the custom vocabulary item+-- response for a bot.+batchCreateCustomVocabularyItemResponse_errors :: Lens.Lens' BatchCreateCustomVocabularyItemResponse (Prelude.Maybe [FailedCustomVocabularyItem])+batchCreateCustomVocabularyItemResponse_errors = Lens.lens (\BatchCreateCustomVocabularyItemResponse' {errors} -> errors) (\s@BatchCreateCustomVocabularyItemResponse' {} a -> s {errors = a} :: BatchCreateCustomVocabularyItemResponse) Prelude.. Lens.mapping Lens.coerced++-- | The unique locale identifier of the bot to batch create the custom+-- vocabulary item response for.+batchCreateCustomVocabularyItemResponse_localeId :: Lens.Lens' BatchCreateCustomVocabularyItemResponse (Prelude.Maybe Prelude.Text)+batchCreateCustomVocabularyItemResponse_localeId = Lens.lens (\BatchCreateCustomVocabularyItemResponse' {localeId} -> localeId) (\s@BatchCreateCustomVocabularyItemResponse' {} a -> s {localeId = a} :: BatchCreateCustomVocabularyItemResponse)++-- | The resources of the action to batch create the custom vocabulary item+-- response for a bot.+batchCreateCustomVocabularyItemResponse_resources :: Lens.Lens' BatchCreateCustomVocabularyItemResponse (Prelude.Maybe [CustomVocabularyItem])+batchCreateCustomVocabularyItemResponse_resources = Lens.lens (\BatchCreateCustomVocabularyItemResponse' {resources} -> resources) (\s@BatchCreateCustomVocabularyItemResponse' {} a -> s {resources = a} :: BatchCreateCustomVocabularyItemResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+batchCreateCustomVocabularyItemResponse_httpStatus :: Lens.Lens' BatchCreateCustomVocabularyItemResponse Prelude.Int+batchCreateCustomVocabularyItemResponse_httpStatus = Lens.lens (\BatchCreateCustomVocabularyItemResponse' {httpStatus} -> httpStatus) (\s@BatchCreateCustomVocabularyItemResponse' {} a -> s {httpStatus = a} :: BatchCreateCustomVocabularyItemResponse)++instance+ Prelude.NFData+ BatchCreateCustomVocabularyItemResponse+ where+ rnf BatchCreateCustomVocabularyItemResponse' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf errors+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf resources+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/BatchDeleteCustomVocabularyItem.hs view
@@ -0,0 +1,323 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.BatchDeleteCustomVocabularyItem+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Batch delete custom vocabulary item for the specified locale in the+-- specified bot.+module Amazonka.LexV2Models.BatchDeleteCustomVocabularyItem+ ( -- * Creating a Request+ BatchDeleteCustomVocabularyItem (..),+ newBatchDeleteCustomVocabularyItem,++ -- * Request Lenses+ batchDeleteCustomVocabularyItem_botId,+ batchDeleteCustomVocabularyItem_botVersion,+ batchDeleteCustomVocabularyItem_localeId,+ batchDeleteCustomVocabularyItem_customVocabularyItemList,++ -- * Destructuring the Response+ BatchDeleteCustomVocabularyItemResponse (..),+ newBatchDeleteCustomVocabularyItemResponse,++ -- * Response Lenses+ batchDeleteCustomVocabularyItemResponse_botId,+ batchDeleteCustomVocabularyItemResponse_botVersion,+ batchDeleteCustomVocabularyItemResponse_errors,+ batchDeleteCustomVocabularyItemResponse_localeId,+ batchDeleteCustomVocabularyItemResponse_resources,+ batchDeleteCustomVocabularyItemResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newBatchDeleteCustomVocabularyItem' smart constructor.+data BatchDeleteCustomVocabularyItem = BatchDeleteCustomVocabularyItem'+ { -- | The unique identifier of the bot to batch delete request for the custom+ -- vocabulary item.+ botId :: Prelude.Text,+ -- | The version of the bot to batch delete request for the custom vocabulary+ -- item.+ botVersion :: Prelude.Text,+ -- | The locale identifier of the bot to batch delete request for the custom+ -- vocabulary item.+ localeId :: Prelude.Text,+ -- | The custom vocabulary list to batch delete request for the custom+ -- vocabulary item.+ customVocabularyItemList :: Prelude.NonEmpty CustomVocabularyEntryId+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BatchDeleteCustomVocabularyItem' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'batchDeleteCustomVocabularyItem_botId' - The unique identifier of the bot to batch delete request for the custom+-- vocabulary item.+--+-- 'botVersion', 'batchDeleteCustomVocabularyItem_botVersion' - The version of the bot to batch delete request for the custom vocabulary+-- item.+--+-- 'localeId', 'batchDeleteCustomVocabularyItem_localeId' - The locale identifier of the bot to batch delete request for the custom+-- vocabulary item.+--+-- 'customVocabularyItemList', 'batchDeleteCustomVocabularyItem_customVocabularyItemList' - The custom vocabulary list to batch delete request for the custom+-- vocabulary item.+newBatchDeleteCustomVocabularyItem ::+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ -- | 'localeId'+ Prelude.Text ->+ -- | 'customVocabularyItemList'+ Prelude.NonEmpty CustomVocabularyEntryId ->+ BatchDeleteCustomVocabularyItem+newBatchDeleteCustomVocabularyItem+ pBotId_+ pBotVersion_+ pLocaleId_+ pCustomVocabularyItemList_ =+ BatchDeleteCustomVocabularyItem'+ { botId = pBotId_,+ botVersion = pBotVersion_,+ localeId = pLocaleId_,+ customVocabularyItemList =+ Lens.coerced+ Lens.# pCustomVocabularyItemList_+ }++-- | The unique identifier of the bot to batch delete request for the custom+-- vocabulary item.+batchDeleteCustomVocabularyItem_botId :: Lens.Lens' BatchDeleteCustomVocabularyItem Prelude.Text+batchDeleteCustomVocabularyItem_botId = Lens.lens (\BatchDeleteCustomVocabularyItem' {botId} -> botId) (\s@BatchDeleteCustomVocabularyItem' {} a -> s {botId = a} :: BatchDeleteCustomVocabularyItem)++-- | The version of the bot to batch delete request for the custom vocabulary+-- item.+batchDeleteCustomVocabularyItem_botVersion :: Lens.Lens' BatchDeleteCustomVocabularyItem Prelude.Text+batchDeleteCustomVocabularyItem_botVersion = Lens.lens (\BatchDeleteCustomVocabularyItem' {botVersion} -> botVersion) (\s@BatchDeleteCustomVocabularyItem' {} a -> s {botVersion = a} :: BatchDeleteCustomVocabularyItem)++-- | The locale identifier of the bot to batch delete request for the custom+-- vocabulary item.+batchDeleteCustomVocabularyItem_localeId :: Lens.Lens' BatchDeleteCustomVocabularyItem Prelude.Text+batchDeleteCustomVocabularyItem_localeId = Lens.lens (\BatchDeleteCustomVocabularyItem' {localeId} -> localeId) (\s@BatchDeleteCustomVocabularyItem' {} a -> s {localeId = a} :: BatchDeleteCustomVocabularyItem)++-- | The custom vocabulary list to batch delete request for the custom+-- vocabulary item.+batchDeleteCustomVocabularyItem_customVocabularyItemList :: Lens.Lens' BatchDeleteCustomVocabularyItem (Prelude.NonEmpty CustomVocabularyEntryId)+batchDeleteCustomVocabularyItem_customVocabularyItemList = Lens.lens (\BatchDeleteCustomVocabularyItem' {customVocabularyItemList} -> customVocabularyItemList) (\s@BatchDeleteCustomVocabularyItem' {} a -> s {customVocabularyItemList = a} :: BatchDeleteCustomVocabularyItem) Prelude.. Lens.coerced++instance+ Core.AWSRequest+ BatchDeleteCustomVocabularyItem+ where+ type+ AWSResponse BatchDeleteCustomVocabularyItem =+ BatchDeleteCustomVocabularyItemResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ BatchDeleteCustomVocabularyItemResponse'+ Prelude.<$> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botVersion")+ Prelude.<*> (x Data..?> "errors" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "localeId")+ Prelude.<*> (x Data..?> "resources" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ BatchDeleteCustomVocabularyItem+ where+ hashWithSalt+ _salt+ BatchDeleteCustomVocabularyItem' {..} =+ _salt+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` localeId+ `Prelude.hashWithSalt` customVocabularyItemList++instance+ Prelude.NFData+ BatchDeleteCustomVocabularyItem+ where+ rnf BatchDeleteCustomVocabularyItem' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf customVocabularyItemList++instance+ Data.ToHeaders+ BatchDeleteCustomVocabularyItem+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON BatchDeleteCustomVocabularyItem where+ toJSON BatchDeleteCustomVocabularyItem' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ( "customVocabularyItemList"+ Data..= customVocabularyItemList+ )+ ]+ )++instance Data.ToPath BatchDeleteCustomVocabularyItem where+ toPath BatchDeleteCustomVocabularyItem' {..} =+ Prelude.mconcat+ [ "/bots/",+ Data.toBS botId,+ "/botversions/",+ Data.toBS botVersion,+ "/botlocales/",+ Data.toBS localeId,+ "/customvocabulary/DEFAULT/batchdelete"+ ]++instance Data.ToQuery BatchDeleteCustomVocabularyItem where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newBatchDeleteCustomVocabularyItemResponse' smart constructor.+data BatchDeleteCustomVocabularyItemResponse = BatchDeleteCustomVocabularyItemResponse'+ { -- | The unique identifier of the bot to batch delete response for the custom+ -- vocabulary item.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The version of the bot to batch delete response for the custom+ -- vocabulary item.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | The errors of the action to batch delete response for the custom+ -- vocabulary item.+ errors :: Prelude.Maybe [FailedCustomVocabularyItem],+ -- | The locale identifier of the bot to batch delete response for the custom+ -- vocabulary item.+ localeId :: Prelude.Maybe Prelude.Text,+ -- | The resources of the action to batch delete response for the custom+ -- vocabulary item.+ resources :: Prelude.Maybe [CustomVocabularyItem],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BatchDeleteCustomVocabularyItemResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'batchDeleteCustomVocabularyItemResponse_botId' - The unique identifier of the bot to batch delete response for the custom+-- vocabulary item.+--+-- 'botVersion', 'batchDeleteCustomVocabularyItemResponse_botVersion' - The version of the bot to batch delete response for the custom+-- vocabulary item.+--+-- 'errors', 'batchDeleteCustomVocabularyItemResponse_errors' - The errors of the action to batch delete response for the custom+-- vocabulary item.+--+-- 'localeId', 'batchDeleteCustomVocabularyItemResponse_localeId' - The locale identifier of the bot to batch delete response for the custom+-- vocabulary item.+--+-- 'resources', 'batchDeleteCustomVocabularyItemResponse_resources' - The resources of the action to batch delete response for the custom+-- vocabulary item.+--+-- 'httpStatus', 'batchDeleteCustomVocabularyItemResponse_httpStatus' - The response's http status code.+newBatchDeleteCustomVocabularyItemResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ BatchDeleteCustomVocabularyItemResponse+newBatchDeleteCustomVocabularyItemResponse+ pHttpStatus_ =+ BatchDeleteCustomVocabularyItemResponse'+ { botId =+ Prelude.Nothing,+ botVersion = Prelude.Nothing,+ errors = Prelude.Nothing,+ localeId = Prelude.Nothing,+ resources = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The unique identifier of the bot to batch delete response for the custom+-- vocabulary item.+batchDeleteCustomVocabularyItemResponse_botId :: Lens.Lens' BatchDeleteCustomVocabularyItemResponse (Prelude.Maybe Prelude.Text)+batchDeleteCustomVocabularyItemResponse_botId = Lens.lens (\BatchDeleteCustomVocabularyItemResponse' {botId} -> botId) (\s@BatchDeleteCustomVocabularyItemResponse' {} a -> s {botId = a} :: BatchDeleteCustomVocabularyItemResponse)++-- | The version of the bot to batch delete response for the custom+-- vocabulary item.+batchDeleteCustomVocabularyItemResponse_botVersion :: Lens.Lens' BatchDeleteCustomVocabularyItemResponse (Prelude.Maybe Prelude.Text)+batchDeleteCustomVocabularyItemResponse_botVersion = Lens.lens (\BatchDeleteCustomVocabularyItemResponse' {botVersion} -> botVersion) (\s@BatchDeleteCustomVocabularyItemResponse' {} a -> s {botVersion = a} :: BatchDeleteCustomVocabularyItemResponse)++-- | The errors of the action to batch delete response for the custom+-- vocabulary item.+batchDeleteCustomVocabularyItemResponse_errors :: Lens.Lens' BatchDeleteCustomVocabularyItemResponse (Prelude.Maybe [FailedCustomVocabularyItem])+batchDeleteCustomVocabularyItemResponse_errors = Lens.lens (\BatchDeleteCustomVocabularyItemResponse' {errors} -> errors) (\s@BatchDeleteCustomVocabularyItemResponse' {} a -> s {errors = a} :: BatchDeleteCustomVocabularyItemResponse) Prelude.. Lens.mapping Lens.coerced++-- | The locale identifier of the bot to batch delete response for the custom+-- vocabulary item.+batchDeleteCustomVocabularyItemResponse_localeId :: Lens.Lens' BatchDeleteCustomVocabularyItemResponse (Prelude.Maybe Prelude.Text)+batchDeleteCustomVocabularyItemResponse_localeId = Lens.lens (\BatchDeleteCustomVocabularyItemResponse' {localeId} -> localeId) (\s@BatchDeleteCustomVocabularyItemResponse' {} a -> s {localeId = a} :: BatchDeleteCustomVocabularyItemResponse)++-- | The resources of the action to batch delete response for the custom+-- vocabulary item.+batchDeleteCustomVocabularyItemResponse_resources :: Lens.Lens' BatchDeleteCustomVocabularyItemResponse (Prelude.Maybe [CustomVocabularyItem])+batchDeleteCustomVocabularyItemResponse_resources = Lens.lens (\BatchDeleteCustomVocabularyItemResponse' {resources} -> resources) (\s@BatchDeleteCustomVocabularyItemResponse' {} a -> s {resources = a} :: BatchDeleteCustomVocabularyItemResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+batchDeleteCustomVocabularyItemResponse_httpStatus :: Lens.Lens' BatchDeleteCustomVocabularyItemResponse Prelude.Int+batchDeleteCustomVocabularyItemResponse_httpStatus = Lens.lens (\BatchDeleteCustomVocabularyItemResponse' {httpStatus} -> httpStatus) (\s@BatchDeleteCustomVocabularyItemResponse' {} a -> s {httpStatus = a} :: BatchDeleteCustomVocabularyItemResponse)++instance+ Prelude.NFData+ BatchDeleteCustomVocabularyItemResponse+ where+ rnf BatchDeleteCustomVocabularyItemResponse' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf errors+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf resources+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/BatchUpdateCustomVocabularyItem.hs view
@@ -0,0 +1,323 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.BatchUpdateCustomVocabularyItem+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Batch update custom vocabulary item for the specified locale in the+-- specified bot.+module Amazonka.LexV2Models.BatchUpdateCustomVocabularyItem+ ( -- * Creating a Request+ BatchUpdateCustomVocabularyItem (..),+ newBatchUpdateCustomVocabularyItem,++ -- * Request Lenses+ batchUpdateCustomVocabularyItem_botId,+ batchUpdateCustomVocabularyItem_botVersion,+ batchUpdateCustomVocabularyItem_localeId,+ batchUpdateCustomVocabularyItem_customVocabularyItemList,++ -- * Destructuring the Response+ BatchUpdateCustomVocabularyItemResponse (..),+ newBatchUpdateCustomVocabularyItemResponse,++ -- * Response Lenses+ batchUpdateCustomVocabularyItemResponse_botId,+ batchUpdateCustomVocabularyItemResponse_botVersion,+ batchUpdateCustomVocabularyItemResponse_errors,+ batchUpdateCustomVocabularyItemResponse_localeId,+ batchUpdateCustomVocabularyItemResponse_resources,+ batchUpdateCustomVocabularyItemResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newBatchUpdateCustomVocabularyItem' smart constructor.+data BatchUpdateCustomVocabularyItem = BatchUpdateCustomVocabularyItem'+ { -- | The unique identifier of the bot to the batch update request for the+ -- custom vocabulary item.+ botId :: Prelude.Text,+ -- | The bot version of the bot to the batch update request for the custom+ -- vocabulary item.+ botVersion :: Prelude.Text,+ -- | The locale identifier of the bot to the batch update request for the+ -- custom vocabulary item.+ localeId :: Prelude.Text,+ -- | The custom vocabulary item list of the bot to the batch update request+ -- for the custom vocabulary item.+ customVocabularyItemList :: Prelude.NonEmpty CustomVocabularyItem+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BatchUpdateCustomVocabularyItem' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'batchUpdateCustomVocabularyItem_botId' - The unique identifier of the bot to the batch update request for the+-- custom vocabulary item.+--+-- 'botVersion', 'batchUpdateCustomVocabularyItem_botVersion' - The bot version of the bot to the batch update request for the custom+-- vocabulary item.+--+-- 'localeId', 'batchUpdateCustomVocabularyItem_localeId' - The locale identifier of the bot to the batch update request for the+-- custom vocabulary item.+--+-- 'customVocabularyItemList', 'batchUpdateCustomVocabularyItem_customVocabularyItemList' - The custom vocabulary item list of the bot to the batch update request+-- for the custom vocabulary item.+newBatchUpdateCustomVocabularyItem ::+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ -- | 'localeId'+ Prelude.Text ->+ -- | 'customVocabularyItemList'+ Prelude.NonEmpty CustomVocabularyItem ->+ BatchUpdateCustomVocabularyItem+newBatchUpdateCustomVocabularyItem+ pBotId_+ pBotVersion_+ pLocaleId_+ pCustomVocabularyItemList_ =+ BatchUpdateCustomVocabularyItem'+ { botId = pBotId_,+ botVersion = pBotVersion_,+ localeId = pLocaleId_,+ customVocabularyItemList =+ Lens.coerced+ Lens.# pCustomVocabularyItemList_+ }++-- | The unique identifier of the bot to the batch update request for the+-- custom vocabulary item.+batchUpdateCustomVocabularyItem_botId :: Lens.Lens' BatchUpdateCustomVocabularyItem Prelude.Text+batchUpdateCustomVocabularyItem_botId = Lens.lens (\BatchUpdateCustomVocabularyItem' {botId} -> botId) (\s@BatchUpdateCustomVocabularyItem' {} a -> s {botId = a} :: BatchUpdateCustomVocabularyItem)++-- | The bot version of the bot to the batch update request for the custom+-- vocabulary item.+batchUpdateCustomVocabularyItem_botVersion :: Lens.Lens' BatchUpdateCustomVocabularyItem Prelude.Text+batchUpdateCustomVocabularyItem_botVersion = Lens.lens (\BatchUpdateCustomVocabularyItem' {botVersion} -> botVersion) (\s@BatchUpdateCustomVocabularyItem' {} a -> s {botVersion = a} :: BatchUpdateCustomVocabularyItem)++-- | The locale identifier of the bot to the batch update request for the+-- custom vocabulary item.+batchUpdateCustomVocabularyItem_localeId :: Lens.Lens' BatchUpdateCustomVocabularyItem Prelude.Text+batchUpdateCustomVocabularyItem_localeId = Lens.lens (\BatchUpdateCustomVocabularyItem' {localeId} -> localeId) (\s@BatchUpdateCustomVocabularyItem' {} a -> s {localeId = a} :: BatchUpdateCustomVocabularyItem)++-- | The custom vocabulary item list of the bot to the batch update request+-- for the custom vocabulary item.+batchUpdateCustomVocabularyItem_customVocabularyItemList :: Lens.Lens' BatchUpdateCustomVocabularyItem (Prelude.NonEmpty CustomVocabularyItem)+batchUpdateCustomVocabularyItem_customVocabularyItemList = Lens.lens (\BatchUpdateCustomVocabularyItem' {customVocabularyItemList} -> customVocabularyItemList) (\s@BatchUpdateCustomVocabularyItem' {} a -> s {customVocabularyItemList = a} :: BatchUpdateCustomVocabularyItem) Prelude.. Lens.coerced++instance+ Core.AWSRequest+ BatchUpdateCustomVocabularyItem+ where+ type+ AWSResponse BatchUpdateCustomVocabularyItem =+ BatchUpdateCustomVocabularyItemResponse+ request overrides =+ Request.putJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ BatchUpdateCustomVocabularyItemResponse'+ Prelude.<$> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botVersion")+ Prelude.<*> (x Data..?> "errors" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "localeId")+ Prelude.<*> (x Data..?> "resources" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ BatchUpdateCustomVocabularyItem+ where+ hashWithSalt+ _salt+ BatchUpdateCustomVocabularyItem' {..} =+ _salt+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` localeId+ `Prelude.hashWithSalt` customVocabularyItemList++instance+ Prelude.NFData+ BatchUpdateCustomVocabularyItem+ where+ rnf BatchUpdateCustomVocabularyItem' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf customVocabularyItemList++instance+ Data.ToHeaders+ BatchUpdateCustomVocabularyItem+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON BatchUpdateCustomVocabularyItem where+ toJSON BatchUpdateCustomVocabularyItem' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ( "customVocabularyItemList"+ Data..= customVocabularyItemList+ )+ ]+ )++instance Data.ToPath BatchUpdateCustomVocabularyItem where+ toPath BatchUpdateCustomVocabularyItem' {..} =+ Prelude.mconcat+ [ "/bots/",+ Data.toBS botId,+ "/botversions/",+ Data.toBS botVersion,+ "/botlocales/",+ Data.toBS localeId,+ "/customvocabulary/DEFAULT/batchupdate"+ ]++instance Data.ToQuery BatchUpdateCustomVocabularyItem where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newBatchUpdateCustomVocabularyItemResponse' smart constructor.+data BatchUpdateCustomVocabularyItemResponse = BatchUpdateCustomVocabularyItemResponse'+ { -- | The unique identifier of the bot to the batch update response for the+ -- custom vocabulary item.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The bot version of the bot to the batch update response for the custom+ -- vocabulary item.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | The errors of the action to batch update response for the custom+ -- vocabulary item.+ errors :: Prelude.Maybe [FailedCustomVocabularyItem],+ -- | The locale identifier of the bot to the batch update response for the+ -- custom vocabulary item.+ localeId :: Prelude.Maybe Prelude.Text,+ -- | The resources of the action to batch update response for the custom+ -- vocabulary item.+ resources :: Prelude.Maybe [CustomVocabularyItem],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BatchUpdateCustomVocabularyItemResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'batchUpdateCustomVocabularyItemResponse_botId' - The unique identifier of the bot to the batch update response for the+-- custom vocabulary item.+--+-- 'botVersion', 'batchUpdateCustomVocabularyItemResponse_botVersion' - The bot version of the bot to the batch update response for the custom+-- vocabulary item.+--+-- 'errors', 'batchUpdateCustomVocabularyItemResponse_errors' - The errors of the action to batch update response for the custom+-- vocabulary item.+--+-- 'localeId', 'batchUpdateCustomVocabularyItemResponse_localeId' - The locale identifier of the bot to the batch update response for the+-- custom vocabulary item.+--+-- 'resources', 'batchUpdateCustomVocabularyItemResponse_resources' - The resources of the action to batch update response for the custom+-- vocabulary item.+--+-- 'httpStatus', 'batchUpdateCustomVocabularyItemResponse_httpStatus' - The response's http status code.+newBatchUpdateCustomVocabularyItemResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ BatchUpdateCustomVocabularyItemResponse+newBatchUpdateCustomVocabularyItemResponse+ pHttpStatus_ =+ BatchUpdateCustomVocabularyItemResponse'+ { botId =+ Prelude.Nothing,+ botVersion = Prelude.Nothing,+ errors = Prelude.Nothing,+ localeId = Prelude.Nothing,+ resources = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The unique identifier of the bot to the batch update response for the+-- custom vocabulary item.+batchUpdateCustomVocabularyItemResponse_botId :: Lens.Lens' BatchUpdateCustomVocabularyItemResponse (Prelude.Maybe Prelude.Text)+batchUpdateCustomVocabularyItemResponse_botId = Lens.lens (\BatchUpdateCustomVocabularyItemResponse' {botId} -> botId) (\s@BatchUpdateCustomVocabularyItemResponse' {} a -> s {botId = a} :: BatchUpdateCustomVocabularyItemResponse)++-- | The bot version of the bot to the batch update response for the custom+-- vocabulary item.+batchUpdateCustomVocabularyItemResponse_botVersion :: Lens.Lens' BatchUpdateCustomVocabularyItemResponse (Prelude.Maybe Prelude.Text)+batchUpdateCustomVocabularyItemResponse_botVersion = Lens.lens (\BatchUpdateCustomVocabularyItemResponse' {botVersion} -> botVersion) (\s@BatchUpdateCustomVocabularyItemResponse' {} a -> s {botVersion = a} :: BatchUpdateCustomVocabularyItemResponse)++-- | The errors of the action to batch update response for the custom+-- vocabulary item.+batchUpdateCustomVocabularyItemResponse_errors :: Lens.Lens' BatchUpdateCustomVocabularyItemResponse (Prelude.Maybe [FailedCustomVocabularyItem])+batchUpdateCustomVocabularyItemResponse_errors = Lens.lens (\BatchUpdateCustomVocabularyItemResponse' {errors} -> errors) (\s@BatchUpdateCustomVocabularyItemResponse' {} a -> s {errors = a} :: BatchUpdateCustomVocabularyItemResponse) Prelude.. Lens.mapping Lens.coerced++-- | The locale identifier of the bot to the batch update response for the+-- custom vocabulary item.+batchUpdateCustomVocabularyItemResponse_localeId :: Lens.Lens' BatchUpdateCustomVocabularyItemResponse (Prelude.Maybe Prelude.Text)+batchUpdateCustomVocabularyItemResponse_localeId = Lens.lens (\BatchUpdateCustomVocabularyItemResponse' {localeId} -> localeId) (\s@BatchUpdateCustomVocabularyItemResponse' {} a -> s {localeId = a} :: BatchUpdateCustomVocabularyItemResponse)++-- | The resources of the action to batch update response for the custom+-- vocabulary item.+batchUpdateCustomVocabularyItemResponse_resources :: Lens.Lens' BatchUpdateCustomVocabularyItemResponse (Prelude.Maybe [CustomVocabularyItem])+batchUpdateCustomVocabularyItemResponse_resources = Lens.lens (\BatchUpdateCustomVocabularyItemResponse' {resources} -> resources) (\s@BatchUpdateCustomVocabularyItemResponse' {} a -> s {resources = a} :: BatchUpdateCustomVocabularyItemResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+batchUpdateCustomVocabularyItemResponse_httpStatus :: Lens.Lens' BatchUpdateCustomVocabularyItemResponse Prelude.Int+batchUpdateCustomVocabularyItemResponse_httpStatus = Lens.lens (\BatchUpdateCustomVocabularyItemResponse' {httpStatus} -> httpStatus) (\s@BatchUpdateCustomVocabularyItemResponse' {} a -> s {httpStatus = a} :: BatchUpdateCustomVocabularyItemResponse)++instance+ Prelude.NFData+ BatchUpdateCustomVocabularyItemResponse+ where+ rnf BatchUpdateCustomVocabularyItemResponse' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf errors+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf resources+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/BuildBotLocale.hs view
@@ -0,0 +1,289 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.BuildBotLocale+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Builds a bot, its intents, and its slot types into a specific locale. A+-- bot can be built into multiple locales. At runtime the locale is used to+-- choose a specific build of the bot.+module Amazonka.LexV2Models.BuildBotLocale+ ( -- * Creating a Request+ BuildBotLocale (..),+ newBuildBotLocale,++ -- * Request Lenses+ buildBotLocale_botId,+ buildBotLocale_botVersion,+ buildBotLocale_localeId,++ -- * Destructuring the Response+ BuildBotLocaleResponse (..),+ newBuildBotLocaleResponse,++ -- * Response Lenses+ buildBotLocaleResponse_botId,+ buildBotLocaleResponse_botLocaleStatus,+ buildBotLocaleResponse_botVersion,+ buildBotLocaleResponse_lastBuildSubmittedDateTime,+ buildBotLocaleResponse_localeId,+ buildBotLocaleResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newBuildBotLocale' smart constructor.+data BuildBotLocale = BuildBotLocale'+ { -- | The identifier of the bot to build. The identifier is returned in the+ -- response from the+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/API_CreateBot.html CreateBot>+ -- operation.+ botId :: Prelude.Text,+ -- | The version of the bot to build. This can only be the draft version of+ -- the bot.+ botVersion :: Prelude.Text,+ -- | The identifier of the language and locale that the bot will be used in.+ -- The string must match one of the supported locales. All of the intents,+ -- slot types, and slots used in the bot must have the same locale. For+ -- more information, see+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+ localeId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BuildBotLocale' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'buildBotLocale_botId' - The identifier of the bot to build. The identifier is returned in the+-- response from the+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_CreateBot.html CreateBot>+-- operation.+--+-- 'botVersion', 'buildBotLocale_botVersion' - The version of the bot to build. This can only be the draft version of+-- the bot.+--+-- 'localeId', 'buildBotLocale_localeId' - The identifier of the language and locale that the bot will be used in.+-- The string must match one of the supported locales. All of the intents,+-- slot types, and slots used in the bot must have the same locale. For+-- more information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+newBuildBotLocale ::+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ -- | 'localeId'+ Prelude.Text ->+ BuildBotLocale+newBuildBotLocale pBotId_ pBotVersion_ pLocaleId_ =+ BuildBotLocale'+ { botId = pBotId_,+ botVersion = pBotVersion_,+ localeId = pLocaleId_+ }++-- | The identifier of the bot to build. The identifier is returned in the+-- response from the+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_CreateBot.html CreateBot>+-- operation.+buildBotLocale_botId :: Lens.Lens' BuildBotLocale Prelude.Text+buildBotLocale_botId = Lens.lens (\BuildBotLocale' {botId} -> botId) (\s@BuildBotLocale' {} a -> s {botId = a} :: BuildBotLocale)++-- | The version of the bot to build. This can only be the draft version of+-- the bot.+buildBotLocale_botVersion :: Lens.Lens' BuildBotLocale Prelude.Text+buildBotLocale_botVersion = Lens.lens (\BuildBotLocale' {botVersion} -> botVersion) (\s@BuildBotLocale' {} a -> s {botVersion = a} :: BuildBotLocale)++-- | The identifier of the language and locale that the bot will be used in.+-- The string must match one of the supported locales. All of the intents,+-- slot types, and slots used in the bot must have the same locale. For+-- more information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+buildBotLocale_localeId :: Lens.Lens' BuildBotLocale Prelude.Text+buildBotLocale_localeId = Lens.lens (\BuildBotLocale' {localeId} -> localeId) (\s@BuildBotLocale' {} a -> s {localeId = a} :: BuildBotLocale)++instance Core.AWSRequest BuildBotLocale where+ type+ AWSResponse BuildBotLocale =+ BuildBotLocaleResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ BuildBotLocaleResponse'+ Prelude.<$> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botLocaleStatus")+ Prelude.<*> (x Data..?> "botVersion")+ Prelude.<*> (x Data..?> "lastBuildSubmittedDateTime")+ Prelude.<*> (x Data..?> "localeId")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable BuildBotLocale where+ hashWithSalt _salt BuildBotLocale' {..} =+ _salt+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` localeId++instance Prelude.NFData BuildBotLocale where+ rnf BuildBotLocale' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId++instance Data.ToHeaders BuildBotLocale where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON BuildBotLocale where+ toJSON = Prelude.const (Data.Object Prelude.mempty)++instance Data.ToPath BuildBotLocale where+ toPath BuildBotLocale' {..} =+ Prelude.mconcat+ [ "/bots/",+ Data.toBS botId,+ "/botversions/",+ Data.toBS botVersion,+ "/botlocales/",+ Data.toBS localeId,+ "/"+ ]++instance Data.ToQuery BuildBotLocale where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newBuildBotLocaleResponse' smart constructor.+data BuildBotLocaleResponse = BuildBotLocaleResponse'+ { -- | The identifier of the specified bot.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The bot\'s build status. When the status is @ReadyExpressTesting@ you+ -- can test the bot using the utterances defined for the intents and slot+ -- types. When the status is @Built@, the bot is ready for use and can be+ -- tested using any utterance.+ botLocaleStatus :: Prelude.Maybe BotLocaleStatus,+ -- | The version of the bot that was built. This is only the draft version of+ -- the bot.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | A timestamp indicating the date and time that the bot was last built for+ -- this locale.+ lastBuildSubmittedDateTime :: Prelude.Maybe Data.POSIX,+ -- | The language and locale specified of where the bot can be used.+ localeId :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BuildBotLocaleResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'buildBotLocaleResponse_botId' - The identifier of the specified bot.+--+-- 'botLocaleStatus', 'buildBotLocaleResponse_botLocaleStatus' - The bot\'s build status. When the status is @ReadyExpressTesting@ you+-- can test the bot using the utterances defined for the intents and slot+-- types. When the status is @Built@, the bot is ready for use and can be+-- tested using any utterance.+--+-- 'botVersion', 'buildBotLocaleResponse_botVersion' - The version of the bot that was built. This is only the draft version of+-- the bot.+--+-- 'lastBuildSubmittedDateTime', 'buildBotLocaleResponse_lastBuildSubmittedDateTime' - A timestamp indicating the date and time that the bot was last built for+-- this locale.+--+-- 'localeId', 'buildBotLocaleResponse_localeId' - The language and locale specified of where the bot can be used.+--+-- 'httpStatus', 'buildBotLocaleResponse_httpStatus' - The response's http status code.+newBuildBotLocaleResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ BuildBotLocaleResponse+newBuildBotLocaleResponse pHttpStatus_ =+ BuildBotLocaleResponse'+ { botId = Prelude.Nothing,+ botLocaleStatus = Prelude.Nothing,+ botVersion = Prelude.Nothing,+ lastBuildSubmittedDateTime = Prelude.Nothing,+ localeId = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The identifier of the specified bot.+buildBotLocaleResponse_botId :: Lens.Lens' BuildBotLocaleResponse (Prelude.Maybe Prelude.Text)+buildBotLocaleResponse_botId = Lens.lens (\BuildBotLocaleResponse' {botId} -> botId) (\s@BuildBotLocaleResponse' {} a -> s {botId = a} :: BuildBotLocaleResponse)++-- | The bot\'s build status. When the status is @ReadyExpressTesting@ you+-- can test the bot using the utterances defined for the intents and slot+-- types. When the status is @Built@, the bot is ready for use and can be+-- tested using any utterance.+buildBotLocaleResponse_botLocaleStatus :: Lens.Lens' BuildBotLocaleResponse (Prelude.Maybe BotLocaleStatus)+buildBotLocaleResponse_botLocaleStatus = Lens.lens (\BuildBotLocaleResponse' {botLocaleStatus} -> botLocaleStatus) (\s@BuildBotLocaleResponse' {} a -> s {botLocaleStatus = a} :: BuildBotLocaleResponse)++-- | The version of the bot that was built. This is only the draft version of+-- the bot.+buildBotLocaleResponse_botVersion :: Lens.Lens' BuildBotLocaleResponse (Prelude.Maybe Prelude.Text)+buildBotLocaleResponse_botVersion = Lens.lens (\BuildBotLocaleResponse' {botVersion} -> botVersion) (\s@BuildBotLocaleResponse' {} a -> s {botVersion = a} :: BuildBotLocaleResponse)++-- | A timestamp indicating the date and time that the bot was last built for+-- this locale.+buildBotLocaleResponse_lastBuildSubmittedDateTime :: Lens.Lens' BuildBotLocaleResponse (Prelude.Maybe Prelude.UTCTime)+buildBotLocaleResponse_lastBuildSubmittedDateTime = Lens.lens (\BuildBotLocaleResponse' {lastBuildSubmittedDateTime} -> lastBuildSubmittedDateTime) (\s@BuildBotLocaleResponse' {} a -> s {lastBuildSubmittedDateTime = a} :: BuildBotLocaleResponse) Prelude.. Lens.mapping Data._Time++-- | The language and locale specified of where the bot can be used.+buildBotLocaleResponse_localeId :: Lens.Lens' BuildBotLocaleResponse (Prelude.Maybe Prelude.Text)+buildBotLocaleResponse_localeId = Lens.lens (\BuildBotLocaleResponse' {localeId} -> localeId) (\s@BuildBotLocaleResponse' {} a -> s {localeId = a} :: BuildBotLocaleResponse)++-- | The response's http status code.+buildBotLocaleResponse_httpStatus :: Lens.Lens' BuildBotLocaleResponse Prelude.Int+buildBotLocaleResponse_httpStatus = Lens.lens (\BuildBotLocaleResponse' {httpStatus} -> httpStatus) (\s@BuildBotLocaleResponse' {} a -> s {httpStatus = a} :: BuildBotLocaleResponse)++instance Prelude.NFData BuildBotLocaleResponse where+ rnf BuildBotLocaleResponse' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botLocaleStatus+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf lastBuildSubmittedDateTime+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/CreateBot.hs view
@@ -0,0 +1,429 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.CreateBot+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates an Amazon Lex conversational bot.+module Amazonka.LexV2Models.CreateBot+ ( -- * Creating a Request+ CreateBot (..),+ newCreateBot,++ -- * Request Lenses+ createBot_botTags,+ createBot_description,+ createBot_testBotAliasTags,+ createBot_botName,+ createBot_roleArn,+ createBot_dataPrivacy,+ createBot_idleSessionTTLInSeconds,++ -- * Destructuring the Response+ CreateBotResponse (..),+ newCreateBotResponse,++ -- * Response Lenses+ createBotResponse_botId,+ createBotResponse_botName,+ createBotResponse_botStatus,+ createBotResponse_botTags,+ createBotResponse_creationDateTime,+ createBotResponse_dataPrivacy,+ createBotResponse_description,+ createBotResponse_idleSessionTTLInSeconds,+ createBotResponse_roleArn,+ createBotResponse_testBotAliasTags,+ createBotResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateBot' smart constructor.+data CreateBot = CreateBot'+ { -- | A list of tags to add to the bot. You can only add tags when you create+ -- a bot. You can\'t use the @UpdateBot@ operation to update tags. To+ -- update tags, use the @TagResource@ operation.+ botTags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | A description of the bot. It appears in lists to help you identify a+ -- particular bot.+ description :: Prelude.Maybe Prelude.Text,+ -- | A list of tags to add to the test alias for a bot. You can only add tags+ -- when you create a bot. You can\'t use the @UpdateAlias@ operation to+ -- update tags. To update tags on the test alias, use the @TagResource@+ -- operation.+ testBotAliasTags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The name of the bot. The bot name must be unique in the account that+ -- creates the bot.+ botName :: Prelude.Text,+ -- | The Amazon Resource Name (ARN) of an IAM role that has permission to+ -- access the bot.+ roleArn :: Prelude.Text,+ -- | Provides information on additional privacy protections Amazon Lex should+ -- use with the bot\'s data.+ dataPrivacy :: DataPrivacy,+ -- | The time, in seconds, that Amazon Lex should keep information about a+ -- user\'s conversation with the bot.+ --+ -- A user interaction remains active for the amount of time specified. If+ -- no conversation occurs during this time, the session expires and Amazon+ -- Lex deletes any data provided before the timeout.+ --+ -- You can specify between 60 (1 minute) and 86,400 (24 hours) seconds.+ idleSessionTTLInSeconds :: Prelude.Natural+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateBot' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botTags', 'createBot_botTags' - A list of tags to add to the bot. You can only add tags when you create+-- a bot. You can\'t use the @UpdateBot@ operation to update tags. To+-- update tags, use the @TagResource@ operation.+--+-- 'description', 'createBot_description' - A description of the bot. It appears in lists to help you identify a+-- particular bot.+--+-- 'testBotAliasTags', 'createBot_testBotAliasTags' - A list of tags to add to the test alias for a bot. You can only add tags+-- when you create a bot. You can\'t use the @UpdateAlias@ operation to+-- update tags. To update tags on the test alias, use the @TagResource@+-- operation.+--+-- 'botName', 'createBot_botName' - The name of the bot. The bot name must be unique in the account that+-- creates the bot.+--+-- 'roleArn', 'createBot_roleArn' - The Amazon Resource Name (ARN) of an IAM role that has permission to+-- access the bot.+--+-- 'dataPrivacy', 'createBot_dataPrivacy' - Provides information on additional privacy protections Amazon Lex should+-- use with the bot\'s data.+--+-- 'idleSessionTTLInSeconds', 'createBot_idleSessionTTLInSeconds' - The time, in seconds, that Amazon Lex should keep information about a+-- user\'s conversation with the bot.+--+-- A user interaction remains active for the amount of time specified. If+-- no conversation occurs during this time, the session expires and Amazon+-- Lex deletes any data provided before the timeout.+--+-- You can specify between 60 (1 minute) and 86,400 (24 hours) seconds.+newCreateBot ::+ -- | 'botName'+ Prelude.Text ->+ -- | 'roleArn'+ Prelude.Text ->+ -- | 'dataPrivacy'+ DataPrivacy ->+ -- | 'idleSessionTTLInSeconds'+ Prelude.Natural ->+ CreateBot+newCreateBot+ pBotName_+ pRoleArn_+ pDataPrivacy_+ pIdleSessionTTLInSeconds_ =+ CreateBot'+ { botTags = Prelude.Nothing,+ description = Prelude.Nothing,+ testBotAliasTags = Prelude.Nothing,+ botName = pBotName_,+ roleArn = pRoleArn_,+ dataPrivacy = pDataPrivacy_,+ idleSessionTTLInSeconds = pIdleSessionTTLInSeconds_+ }++-- | A list of tags to add to the bot. You can only add tags when you create+-- a bot. You can\'t use the @UpdateBot@ operation to update tags. To+-- update tags, use the @TagResource@ operation.+createBot_botTags :: Lens.Lens' CreateBot (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createBot_botTags = Lens.lens (\CreateBot' {botTags} -> botTags) (\s@CreateBot' {} a -> s {botTags = a} :: CreateBot) Prelude.. Lens.mapping Lens.coerced++-- | A description of the bot. It appears in lists to help you identify a+-- particular bot.+createBot_description :: Lens.Lens' CreateBot (Prelude.Maybe Prelude.Text)+createBot_description = Lens.lens (\CreateBot' {description} -> description) (\s@CreateBot' {} a -> s {description = a} :: CreateBot)++-- | A list of tags to add to the test alias for a bot. You can only add tags+-- when you create a bot. You can\'t use the @UpdateAlias@ operation to+-- update tags. To update tags on the test alias, use the @TagResource@+-- operation.+createBot_testBotAliasTags :: Lens.Lens' CreateBot (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createBot_testBotAliasTags = Lens.lens (\CreateBot' {testBotAliasTags} -> testBotAliasTags) (\s@CreateBot' {} a -> s {testBotAliasTags = a} :: CreateBot) Prelude.. Lens.mapping Lens.coerced++-- | The name of the bot. The bot name must be unique in the account that+-- creates the bot.+createBot_botName :: Lens.Lens' CreateBot Prelude.Text+createBot_botName = Lens.lens (\CreateBot' {botName} -> botName) (\s@CreateBot' {} a -> s {botName = a} :: CreateBot)++-- | The Amazon Resource Name (ARN) of an IAM role that has permission to+-- access the bot.+createBot_roleArn :: Lens.Lens' CreateBot Prelude.Text+createBot_roleArn = Lens.lens (\CreateBot' {roleArn} -> roleArn) (\s@CreateBot' {} a -> s {roleArn = a} :: CreateBot)++-- | Provides information on additional privacy protections Amazon Lex should+-- use with the bot\'s data.+createBot_dataPrivacy :: Lens.Lens' CreateBot DataPrivacy+createBot_dataPrivacy = Lens.lens (\CreateBot' {dataPrivacy} -> dataPrivacy) (\s@CreateBot' {} a -> s {dataPrivacy = a} :: CreateBot)++-- | The time, in seconds, that Amazon Lex should keep information about a+-- user\'s conversation with the bot.+--+-- A user interaction remains active for the amount of time specified. If+-- no conversation occurs during this time, the session expires and Amazon+-- Lex deletes any data provided before the timeout.+--+-- You can specify between 60 (1 minute) and 86,400 (24 hours) seconds.+createBot_idleSessionTTLInSeconds :: Lens.Lens' CreateBot Prelude.Natural+createBot_idleSessionTTLInSeconds = Lens.lens (\CreateBot' {idleSessionTTLInSeconds} -> idleSessionTTLInSeconds) (\s@CreateBot' {} a -> s {idleSessionTTLInSeconds = a} :: CreateBot)++instance Core.AWSRequest CreateBot where+ type AWSResponse CreateBot = CreateBotResponse+ request overrides =+ Request.putJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateBotResponse'+ Prelude.<$> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botName")+ Prelude.<*> (x Data..?> "botStatus")+ Prelude.<*> (x Data..?> "botTags" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "creationDateTime")+ Prelude.<*> (x Data..?> "dataPrivacy")+ Prelude.<*> (x Data..?> "description")+ Prelude.<*> (x Data..?> "idleSessionTTLInSeconds")+ Prelude.<*> (x Data..?> "roleArn")+ Prelude.<*> ( x+ Data..?> "testBotAliasTags"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateBot where+ hashWithSalt _salt CreateBot' {..} =+ _salt+ `Prelude.hashWithSalt` botTags+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` testBotAliasTags+ `Prelude.hashWithSalt` botName+ `Prelude.hashWithSalt` roleArn+ `Prelude.hashWithSalt` dataPrivacy+ `Prelude.hashWithSalt` idleSessionTTLInSeconds++instance Prelude.NFData CreateBot where+ rnf CreateBot' {..} =+ Prelude.rnf botTags+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf testBotAliasTags+ `Prelude.seq` Prelude.rnf botName+ `Prelude.seq` Prelude.rnf roleArn+ `Prelude.seq` Prelude.rnf dataPrivacy+ `Prelude.seq` Prelude.rnf idleSessionTTLInSeconds++instance Data.ToHeaders CreateBot where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateBot where+ toJSON CreateBot' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("botTags" Data..=) Prelude.<$> botTags,+ ("description" Data..=) Prelude.<$> description,+ ("testBotAliasTags" Data..=)+ Prelude.<$> testBotAliasTags,+ Prelude.Just ("botName" Data..= botName),+ Prelude.Just ("roleArn" Data..= roleArn),+ Prelude.Just ("dataPrivacy" Data..= dataPrivacy),+ Prelude.Just+ ( "idleSessionTTLInSeconds"+ Data..= idleSessionTTLInSeconds+ )+ ]+ )++instance Data.ToPath CreateBot where+ toPath = Prelude.const "/bots/"++instance Data.ToQuery CreateBot where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateBotResponse' smart constructor.+data CreateBotResponse = CreateBotResponse'+ { -- | A unique identifier for a particular bot. You use this to identify the+ -- bot when you call other Amazon Lex API operations.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The name specified for the bot.+ botName :: Prelude.Maybe Prelude.Text,+ -- | Shows the current status of the bot. The bot is first in the @Creating@+ -- status. Once the bot is read for use, it changes to the @Available@+ -- status. After the bot is created, you can use the @Draft@ version of the+ -- bot.+ botStatus :: Prelude.Maybe BotStatus,+ -- | A list of tags associated with the bot.+ botTags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | A timestamp indicating the date and time that the bot was created.+ creationDateTime :: Prelude.Maybe Data.POSIX,+ -- | The data privacy settings specified for the bot.+ dataPrivacy :: Prelude.Maybe DataPrivacy,+ -- | The description specified for the bot.+ description :: Prelude.Maybe Prelude.Text,+ -- | The session idle time specified for the bot.+ idleSessionTTLInSeconds :: Prelude.Maybe Prelude.Natural,+ -- | The IAM role specified for the bot.+ roleArn :: Prelude.Maybe Prelude.Text,+ -- | A list of tags associated with the test alias for the bot.+ testBotAliasTags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateBotResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'createBotResponse_botId' - A unique identifier for a particular bot. You use this to identify the+-- bot when you call other Amazon Lex API operations.+--+-- 'botName', 'createBotResponse_botName' - The name specified for the bot.+--+-- 'botStatus', 'createBotResponse_botStatus' - Shows the current status of the bot. The bot is first in the @Creating@+-- status. Once the bot is read for use, it changes to the @Available@+-- status. After the bot is created, you can use the @Draft@ version of the+-- bot.+--+-- 'botTags', 'createBotResponse_botTags' - A list of tags associated with the bot.+--+-- 'creationDateTime', 'createBotResponse_creationDateTime' - A timestamp indicating the date and time that the bot was created.+--+-- 'dataPrivacy', 'createBotResponse_dataPrivacy' - The data privacy settings specified for the bot.+--+-- 'description', 'createBotResponse_description' - The description specified for the bot.+--+-- 'idleSessionTTLInSeconds', 'createBotResponse_idleSessionTTLInSeconds' - The session idle time specified for the bot.+--+-- 'roleArn', 'createBotResponse_roleArn' - The IAM role specified for the bot.+--+-- 'testBotAliasTags', 'createBotResponse_testBotAliasTags' - A list of tags associated with the test alias for the bot.+--+-- 'httpStatus', 'createBotResponse_httpStatus' - The response's http status code.+newCreateBotResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateBotResponse+newCreateBotResponse pHttpStatus_ =+ CreateBotResponse'+ { botId = Prelude.Nothing,+ botName = Prelude.Nothing,+ botStatus = Prelude.Nothing,+ botTags = Prelude.Nothing,+ creationDateTime = Prelude.Nothing,+ dataPrivacy = Prelude.Nothing,+ description = Prelude.Nothing,+ idleSessionTTLInSeconds = Prelude.Nothing,+ roleArn = Prelude.Nothing,+ testBotAliasTags = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A unique identifier for a particular bot. You use this to identify the+-- bot when you call other Amazon Lex API operations.+createBotResponse_botId :: Lens.Lens' CreateBotResponse (Prelude.Maybe Prelude.Text)+createBotResponse_botId = Lens.lens (\CreateBotResponse' {botId} -> botId) (\s@CreateBotResponse' {} a -> s {botId = a} :: CreateBotResponse)++-- | The name specified for the bot.+createBotResponse_botName :: Lens.Lens' CreateBotResponse (Prelude.Maybe Prelude.Text)+createBotResponse_botName = Lens.lens (\CreateBotResponse' {botName} -> botName) (\s@CreateBotResponse' {} a -> s {botName = a} :: CreateBotResponse)++-- | Shows the current status of the bot. The bot is first in the @Creating@+-- status. Once the bot is read for use, it changes to the @Available@+-- status. After the bot is created, you can use the @Draft@ version of the+-- bot.+createBotResponse_botStatus :: Lens.Lens' CreateBotResponse (Prelude.Maybe BotStatus)+createBotResponse_botStatus = Lens.lens (\CreateBotResponse' {botStatus} -> botStatus) (\s@CreateBotResponse' {} a -> s {botStatus = a} :: CreateBotResponse)++-- | A list of tags associated with the bot.+createBotResponse_botTags :: Lens.Lens' CreateBotResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createBotResponse_botTags = Lens.lens (\CreateBotResponse' {botTags} -> botTags) (\s@CreateBotResponse' {} a -> s {botTags = a} :: CreateBotResponse) Prelude.. Lens.mapping Lens.coerced++-- | A timestamp indicating the date and time that the bot was created.+createBotResponse_creationDateTime :: Lens.Lens' CreateBotResponse (Prelude.Maybe Prelude.UTCTime)+createBotResponse_creationDateTime = Lens.lens (\CreateBotResponse' {creationDateTime} -> creationDateTime) (\s@CreateBotResponse' {} a -> s {creationDateTime = a} :: CreateBotResponse) Prelude.. Lens.mapping Data._Time++-- | The data privacy settings specified for the bot.+createBotResponse_dataPrivacy :: Lens.Lens' CreateBotResponse (Prelude.Maybe DataPrivacy)+createBotResponse_dataPrivacy = Lens.lens (\CreateBotResponse' {dataPrivacy} -> dataPrivacy) (\s@CreateBotResponse' {} a -> s {dataPrivacy = a} :: CreateBotResponse)++-- | The description specified for the bot.+createBotResponse_description :: Lens.Lens' CreateBotResponse (Prelude.Maybe Prelude.Text)+createBotResponse_description = Lens.lens (\CreateBotResponse' {description} -> description) (\s@CreateBotResponse' {} a -> s {description = a} :: CreateBotResponse)++-- | The session idle time specified for the bot.+createBotResponse_idleSessionTTLInSeconds :: Lens.Lens' CreateBotResponse (Prelude.Maybe Prelude.Natural)+createBotResponse_idleSessionTTLInSeconds = Lens.lens (\CreateBotResponse' {idleSessionTTLInSeconds} -> idleSessionTTLInSeconds) (\s@CreateBotResponse' {} a -> s {idleSessionTTLInSeconds = a} :: CreateBotResponse)++-- | The IAM role specified for the bot.+createBotResponse_roleArn :: Lens.Lens' CreateBotResponse (Prelude.Maybe Prelude.Text)+createBotResponse_roleArn = Lens.lens (\CreateBotResponse' {roleArn} -> roleArn) (\s@CreateBotResponse' {} a -> s {roleArn = a} :: CreateBotResponse)++-- | A list of tags associated with the test alias for the bot.+createBotResponse_testBotAliasTags :: Lens.Lens' CreateBotResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createBotResponse_testBotAliasTags = Lens.lens (\CreateBotResponse' {testBotAliasTags} -> testBotAliasTags) (\s@CreateBotResponse' {} a -> s {testBotAliasTags = a} :: CreateBotResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+createBotResponse_httpStatus :: Lens.Lens' CreateBotResponse Prelude.Int+createBotResponse_httpStatus = Lens.lens (\CreateBotResponse' {httpStatus} -> httpStatus) (\s@CreateBotResponse' {} a -> s {httpStatus = a} :: CreateBotResponse)++instance Prelude.NFData CreateBotResponse where+ rnf CreateBotResponse' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botName+ `Prelude.seq` Prelude.rnf botStatus+ `Prelude.seq` Prelude.rnf botTags+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf dataPrivacy+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf idleSessionTTLInSeconds+ `Prelude.seq` Prelude.rnf roleArn+ `Prelude.seq` Prelude.rnf testBotAliasTags+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/CreateBotAlias.hs view
@@ -0,0 +1,438 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.CreateBotAlias+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates an alias for the specified version of a bot. Use an alias to+-- enable you to change the version of a bot without updating applications+-- that use the bot.+--+-- For example, you can create an alias called \"PROD\" that your+-- applications use to call the Amazon Lex bot.+module Amazonka.LexV2Models.CreateBotAlias+ ( -- * Creating a Request+ CreateBotAlias (..),+ newCreateBotAlias,++ -- * Request Lenses+ createBotAlias_botAliasLocaleSettings,+ createBotAlias_botVersion,+ createBotAlias_conversationLogSettings,+ createBotAlias_description,+ createBotAlias_sentimentAnalysisSettings,+ createBotAlias_tags,+ createBotAlias_botAliasName,+ createBotAlias_botId,++ -- * Destructuring the Response+ CreateBotAliasResponse (..),+ newCreateBotAliasResponse,++ -- * Response Lenses+ createBotAliasResponse_botAliasId,+ createBotAliasResponse_botAliasLocaleSettings,+ createBotAliasResponse_botAliasName,+ createBotAliasResponse_botAliasStatus,+ createBotAliasResponse_botId,+ createBotAliasResponse_botVersion,+ createBotAliasResponse_conversationLogSettings,+ createBotAliasResponse_creationDateTime,+ createBotAliasResponse_description,+ createBotAliasResponse_sentimentAnalysisSettings,+ createBotAliasResponse_tags,+ createBotAliasResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateBotAlias' smart constructor.+data CreateBotAlias = CreateBotAlias'+ { -- | Maps configuration information to a specific locale. You can use this+ -- parameter to specify a specific Lambda function to run different+ -- functions in different locales.+ botAliasLocaleSettings :: Prelude.Maybe (Prelude.HashMap Prelude.Text BotAliasLocaleSettings),+ -- | The version of the bot that this alias points to. You can use the+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/API_UpdateBotAlias.html UpdateBotAlias>+ -- operation to change the bot version associated with the alias.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | Specifies whether Amazon Lex logs text and audio for a conversation with+ -- the bot. When you enable conversation logs, text logs store text input,+ -- transcripts of audio input, and associated metadata in Amazon CloudWatch+ -- Logs. Audio logs store audio input in Amazon S3.+ conversationLogSettings :: Prelude.Maybe ConversationLogSettings,+ -- | A description of the alias. Use this description to help identify the+ -- alias.+ description :: Prelude.Maybe Prelude.Text,+ sentimentAnalysisSettings :: Prelude.Maybe SentimentAnalysisSettings,+ -- | A list of tags to add to the bot alias. You can only add tags when you+ -- create an alias, you can\'t use the @UpdateBotAlias@ operation to update+ -- the tags on a bot alias. To update tags, use the @TagResource@+ -- operation.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The alias to create. The name must be unique for the bot.+ botAliasName :: Prelude.Text,+ -- | The unique identifier of the bot that the alias applies to.+ botId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateBotAlias' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botAliasLocaleSettings', 'createBotAlias_botAliasLocaleSettings' - Maps configuration information to a specific locale. You can use this+-- parameter to specify a specific Lambda function to run different+-- functions in different locales.+--+-- 'botVersion', 'createBotAlias_botVersion' - The version of the bot that this alias points to. You can use the+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_UpdateBotAlias.html UpdateBotAlias>+-- operation to change the bot version associated with the alias.+--+-- 'conversationLogSettings', 'createBotAlias_conversationLogSettings' - Specifies whether Amazon Lex logs text and audio for a conversation with+-- the bot. When you enable conversation logs, text logs store text input,+-- transcripts of audio input, and associated metadata in Amazon CloudWatch+-- Logs. Audio logs store audio input in Amazon S3.+--+-- 'description', 'createBotAlias_description' - A description of the alias. Use this description to help identify the+-- alias.+--+-- 'sentimentAnalysisSettings', 'createBotAlias_sentimentAnalysisSettings' - Undocumented member.+--+-- 'tags', 'createBotAlias_tags' - A list of tags to add to the bot alias. You can only add tags when you+-- create an alias, you can\'t use the @UpdateBotAlias@ operation to update+-- the tags on a bot alias. To update tags, use the @TagResource@+-- operation.+--+-- 'botAliasName', 'createBotAlias_botAliasName' - The alias to create. The name must be unique for the bot.+--+-- 'botId', 'createBotAlias_botId' - The unique identifier of the bot that the alias applies to.+newCreateBotAlias ::+ -- | 'botAliasName'+ Prelude.Text ->+ -- | 'botId'+ Prelude.Text ->+ CreateBotAlias+newCreateBotAlias pBotAliasName_ pBotId_ =+ CreateBotAlias'+ { botAliasLocaleSettings =+ Prelude.Nothing,+ botVersion = Prelude.Nothing,+ conversationLogSettings = Prelude.Nothing,+ description = Prelude.Nothing,+ sentimentAnalysisSettings = Prelude.Nothing,+ tags = Prelude.Nothing,+ botAliasName = pBotAliasName_,+ botId = pBotId_+ }++-- | Maps configuration information to a specific locale. You can use this+-- parameter to specify a specific Lambda function to run different+-- functions in different locales.+createBotAlias_botAliasLocaleSettings :: Lens.Lens' CreateBotAlias (Prelude.Maybe (Prelude.HashMap Prelude.Text BotAliasLocaleSettings))+createBotAlias_botAliasLocaleSettings = Lens.lens (\CreateBotAlias' {botAliasLocaleSettings} -> botAliasLocaleSettings) (\s@CreateBotAlias' {} a -> s {botAliasLocaleSettings = a} :: CreateBotAlias) Prelude.. Lens.mapping Lens.coerced++-- | The version of the bot that this alias points to. You can use the+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_UpdateBotAlias.html UpdateBotAlias>+-- operation to change the bot version associated with the alias.+createBotAlias_botVersion :: Lens.Lens' CreateBotAlias (Prelude.Maybe Prelude.Text)+createBotAlias_botVersion = Lens.lens (\CreateBotAlias' {botVersion} -> botVersion) (\s@CreateBotAlias' {} a -> s {botVersion = a} :: CreateBotAlias)++-- | Specifies whether Amazon Lex logs text and audio for a conversation with+-- the bot. When you enable conversation logs, text logs store text input,+-- transcripts of audio input, and associated metadata in Amazon CloudWatch+-- Logs. Audio logs store audio input in Amazon S3.+createBotAlias_conversationLogSettings :: Lens.Lens' CreateBotAlias (Prelude.Maybe ConversationLogSettings)+createBotAlias_conversationLogSettings = Lens.lens (\CreateBotAlias' {conversationLogSettings} -> conversationLogSettings) (\s@CreateBotAlias' {} a -> s {conversationLogSettings = a} :: CreateBotAlias)++-- | A description of the alias. Use this description to help identify the+-- alias.+createBotAlias_description :: Lens.Lens' CreateBotAlias (Prelude.Maybe Prelude.Text)+createBotAlias_description = Lens.lens (\CreateBotAlias' {description} -> description) (\s@CreateBotAlias' {} a -> s {description = a} :: CreateBotAlias)++-- | Undocumented member.+createBotAlias_sentimentAnalysisSettings :: Lens.Lens' CreateBotAlias (Prelude.Maybe SentimentAnalysisSettings)+createBotAlias_sentimentAnalysisSettings = Lens.lens (\CreateBotAlias' {sentimentAnalysisSettings} -> sentimentAnalysisSettings) (\s@CreateBotAlias' {} a -> s {sentimentAnalysisSettings = a} :: CreateBotAlias)++-- | A list of tags to add to the bot alias. You can only add tags when you+-- create an alias, you can\'t use the @UpdateBotAlias@ operation to update+-- the tags on a bot alias. To update tags, use the @TagResource@+-- operation.+createBotAlias_tags :: Lens.Lens' CreateBotAlias (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createBotAlias_tags = Lens.lens (\CreateBotAlias' {tags} -> tags) (\s@CreateBotAlias' {} a -> s {tags = a} :: CreateBotAlias) Prelude.. Lens.mapping Lens.coerced++-- | The alias to create. The name must be unique for the bot.+createBotAlias_botAliasName :: Lens.Lens' CreateBotAlias Prelude.Text+createBotAlias_botAliasName = Lens.lens (\CreateBotAlias' {botAliasName} -> botAliasName) (\s@CreateBotAlias' {} a -> s {botAliasName = a} :: CreateBotAlias)++-- | The unique identifier of the bot that the alias applies to.+createBotAlias_botId :: Lens.Lens' CreateBotAlias Prelude.Text+createBotAlias_botId = Lens.lens (\CreateBotAlias' {botId} -> botId) (\s@CreateBotAlias' {} a -> s {botId = a} :: CreateBotAlias)++instance Core.AWSRequest CreateBotAlias where+ type+ AWSResponse CreateBotAlias =+ CreateBotAliasResponse+ request overrides =+ Request.putJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateBotAliasResponse'+ Prelude.<$> (x Data..?> "botAliasId")+ Prelude.<*> ( x+ Data..?> "botAliasLocaleSettings"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "botAliasName")+ Prelude.<*> (x Data..?> "botAliasStatus")+ Prelude.<*> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botVersion")+ Prelude.<*> (x Data..?> "conversationLogSettings")+ Prelude.<*> (x Data..?> "creationDateTime")+ Prelude.<*> (x Data..?> "description")+ Prelude.<*> (x Data..?> "sentimentAnalysisSettings")+ Prelude.<*> (x Data..?> "tags" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateBotAlias where+ hashWithSalt _salt CreateBotAlias' {..} =+ _salt+ `Prelude.hashWithSalt` botAliasLocaleSettings+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` conversationLogSettings+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` sentimentAnalysisSettings+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` botAliasName+ `Prelude.hashWithSalt` botId++instance Prelude.NFData CreateBotAlias where+ rnf CreateBotAlias' {..} =+ Prelude.rnf botAliasLocaleSettings+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf conversationLogSettings+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf sentimentAnalysisSettings+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf botAliasName+ `Prelude.seq` Prelude.rnf botId++instance Data.ToHeaders CreateBotAlias where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateBotAlias where+ toJSON CreateBotAlias' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("botAliasLocaleSettings" Data..=)+ Prelude.<$> botAliasLocaleSettings,+ ("botVersion" Data..=) Prelude.<$> botVersion,+ ("conversationLogSettings" Data..=)+ Prelude.<$> conversationLogSettings,+ ("description" Data..=) Prelude.<$> description,+ ("sentimentAnalysisSettings" Data..=)+ Prelude.<$> sentimentAnalysisSettings,+ ("tags" Data..=) Prelude.<$> tags,+ Prelude.Just ("botAliasName" Data..= botAliasName)+ ]+ )++instance Data.ToPath CreateBotAlias where+ toPath CreateBotAlias' {..} =+ Prelude.mconcat+ ["/bots/", Data.toBS botId, "/botaliases/"]++instance Data.ToQuery CreateBotAlias where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateBotAliasResponse' smart constructor.+data CreateBotAliasResponse = CreateBotAliasResponse'+ { -- | The unique identifier of the bot alias.+ botAliasId :: Prelude.Maybe Prelude.Text,+ -- | Configuration information for a specific locale.+ botAliasLocaleSettings :: Prelude.Maybe (Prelude.HashMap Prelude.Text BotAliasLocaleSettings),+ -- | The name specified for the bot alias.+ botAliasName :: Prelude.Maybe Prelude.Text,+ -- | The current status of the alias. The alias is first put into the+ -- @Creating@ state. When the alias is ready to be used, it is put into the+ -- @Available@ state. You can use the @DescribeBotAlias@ operation to get+ -- the current state of an alias.+ botAliasStatus :: Prelude.Maybe BotAliasStatus,+ -- | The unique identifier of the bot that this alias applies to.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The version of the bot associated with this alias.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | The conversation log settings specified for the alias.+ conversationLogSettings :: Prelude.Maybe ConversationLogSettings,+ -- | A Unix timestamp indicating the date and time that the bot alias was+ -- created.+ creationDateTime :: Prelude.Maybe Data.POSIX,+ -- | The description specified for the bot alias.+ description :: Prelude.Maybe Prelude.Text,+ sentimentAnalysisSettings :: Prelude.Maybe SentimentAnalysisSettings,+ -- | A list of tags associated with the bot alias.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateBotAliasResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botAliasId', 'createBotAliasResponse_botAliasId' - The unique identifier of the bot alias.+--+-- 'botAliasLocaleSettings', 'createBotAliasResponse_botAliasLocaleSettings' - Configuration information for a specific locale.+--+-- 'botAliasName', 'createBotAliasResponse_botAliasName' - The name specified for the bot alias.+--+-- 'botAliasStatus', 'createBotAliasResponse_botAliasStatus' - The current status of the alias. The alias is first put into the+-- @Creating@ state. When the alias is ready to be used, it is put into the+-- @Available@ state. You can use the @DescribeBotAlias@ operation to get+-- the current state of an alias.+--+-- 'botId', 'createBotAliasResponse_botId' - The unique identifier of the bot that this alias applies to.+--+-- 'botVersion', 'createBotAliasResponse_botVersion' - The version of the bot associated with this alias.+--+-- 'conversationLogSettings', 'createBotAliasResponse_conversationLogSettings' - The conversation log settings specified for the alias.+--+-- 'creationDateTime', 'createBotAliasResponse_creationDateTime' - A Unix timestamp indicating the date and time that the bot alias was+-- created.+--+-- 'description', 'createBotAliasResponse_description' - The description specified for the bot alias.+--+-- 'sentimentAnalysisSettings', 'createBotAliasResponse_sentimentAnalysisSettings' - Undocumented member.+--+-- 'tags', 'createBotAliasResponse_tags' - A list of tags associated with the bot alias.+--+-- 'httpStatus', 'createBotAliasResponse_httpStatus' - The response's http status code.+newCreateBotAliasResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateBotAliasResponse+newCreateBotAliasResponse pHttpStatus_ =+ CreateBotAliasResponse'+ { botAliasId =+ Prelude.Nothing,+ botAliasLocaleSettings = Prelude.Nothing,+ botAliasName = Prelude.Nothing,+ botAliasStatus = Prelude.Nothing,+ botId = Prelude.Nothing,+ botVersion = Prelude.Nothing,+ conversationLogSettings = Prelude.Nothing,+ creationDateTime = Prelude.Nothing,+ description = Prelude.Nothing,+ sentimentAnalysisSettings = Prelude.Nothing,+ tags = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The unique identifier of the bot alias.+createBotAliasResponse_botAliasId :: Lens.Lens' CreateBotAliasResponse (Prelude.Maybe Prelude.Text)+createBotAliasResponse_botAliasId = Lens.lens (\CreateBotAliasResponse' {botAliasId} -> botAliasId) (\s@CreateBotAliasResponse' {} a -> s {botAliasId = a} :: CreateBotAliasResponse)++-- | Configuration information for a specific locale.+createBotAliasResponse_botAliasLocaleSettings :: Lens.Lens' CreateBotAliasResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text BotAliasLocaleSettings))+createBotAliasResponse_botAliasLocaleSettings = Lens.lens (\CreateBotAliasResponse' {botAliasLocaleSettings} -> botAliasLocaleSettings) (\s@CreateBotAliasResponse' {} a -> s {botAliasLocaleSettings = a} :: CreateBotAliasResponse) Prelude.. Lens.mapping Lens.coerced++-- | The name specified for the bot alias.+createBotAliasResponse_botAliasName :: Lens.Lens' CreateBotAliasResponse (Prelude.Maybe Prelude.Text)+createBotAliasResponse_botAliasName = Lens.lens (\CreateBotAliasResponse' {botAliasName} -> botAliasName) (\s@CreateBotAliasResponse' {} a -> s {botAliasName = a} :: CreateBotAliasResponse)++-- | The current status of the alias. The alias is first put into the+-- @Creating@ state. When the alias is ready to be used, it is put into the+-- @Available@ state. You can use the @DescribeBotAlias@ operation to get+-- the current state of an alias.+createBotAliasResponse_botAliasStatus :: Lens.Lens' CreateBotAliasResponse (Prelude.Maybe BotAliasStatus)+createBotAliasResponse_botAliasStatus = Lens.lens (\CreateBotAliasResponse' {botAliasStatus} -> botAliasStatus) (\s@CreateBotAliasResponse' {} a -> s {botAliasStatus = a} :: CreateBotAliasResponse)++-- | The unique identifier of the bot that this alias applies to.+createBotAliasResponse_botId :: Lens.Lens' CreateBotAliasResponse (Prelude.Maybe Prelude.Text)+createBotAliasResponse_botId = Lens.lens (\CreateBotAliasResponse' {botId} -> botId) (\s@CreateBotAliasResponse' {} a -> s {botId = a} :: CreateBotAliasResponse)++-- | The version of the bot associated with this alias.+createBotAliasResponse_botVersion :: Lens.Lens' CreateBotAliasResponse (Prelude.Maybe Prelude.Text)+createBotAliasResponse_botVersion = Lens.lens (\CreateBotAliasResponse' {botVersion} -> botVersion) (\s@CreateBotAliasResponse' {} a -> s {botVersion = a} :: CreateBotAliasResponse)++-- | The conversation log settings specified for the alias.+createBotAliasResponse_conversationLogSettings :: Lens.Lens' CreateBotAliasResponse (Prelude.Maybe ConversationLogSettings)+createBotAliasResponse_conversationLogSettings = Lens.lens (\CreateBotAliasResponse' {conversationLogSettings} -> conversationLogSettings) (\s@CreateBotAliasResponse' {} a -> s {conversationLogSettings = a} :: CreateBotAliasResponse)++-- | A Unix timestamp indicating the date and time that the bot alias was+-- created.+createBotAliasResponse_creationDateTime :: Lens.Lens' CreateBotAliasResponse (Prelude.Maybe Prelude.UTCTime)+createBotAliasResponse_creationDateTime = Lens.lens (\CreateBotAliasResponse' {creationDateTime} -> creationDateTime) (\s@CreateBotAliasResponse' {} a -> s {creationDateTime = a} :: CreateBotAliasResponse) Prelude.. Lens.mapping Data._Time++-- | The description specified for the bot alias.+createBotAliasResponse_description :: Lens.Lens' CreateBotAliasResponse (Prelude.Maybe Prelude.Text)+createBotAliasResponse_description = Lens.lens (\CreateBotAliasResponse' {description} -> description) (\s@CreateBotAliasResponse' {} a -> s {description = a} :: CreateBotAliasResponse)++-- | Undocumented member.+createBotAliasResponse_sentimentAnalysisSettings :: Lens.Lens' CreateBotAliasResponse (Prelude.Maybe SentimentAnalysisSettings)+createBotAliasResponse_sentimentAnalysisSettings = Lens.lens (\CreateBotAliasResponse' {sentimentAnalysisSettings} -> sentimentAnalysisSettings) (\s@CreateBotAliasResponse' {} a -> s {sentimentAnalysisSettings = a} :: CreateBotAliasResponse)++-- | A list of tags associated with the bot alias.+createBotAliasResponse_tags :: Lens.Lens' CreateBotAliasResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createBotAliasResponse_tags = Lens.lens (\CreateBotAliasResponse' {tags} -> tags) (\s@CreateBotAliasResponse' {} a -> s {tags = a} :: CreateBotAliasResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+createBotAliasResponse_httpStatus :: Lens.Lens' CreateBotAliasResponse Prelude.Int+createBotAliasResponse_httpStatus = Lens.lens (\CreateBotAliasResponse' {httpStatus} -> httpStatus) (\s@CreateBotAliasResponse' {} a -> s {httpStatus = a} :: CreateBotAliasResponse)++instance Prelude.NFData CreateBotAliasResponse where+ rnf CreateBotAliasResponse' {..} =+ Prelude.rnf botAliasId+ `Prelude.seq` Prelude.rnf botAliasLocaleSettings+ `Prelude.seq` Prelude.rnf botAliasName+ `Prelude.seq` Prelude.rnf botAliasStatus+ `Prelude.seq` Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf conversationLogSettings+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf sentimentAnalysisSettings+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/CreateBotLocale.hs view
@@ -0,0 +1,468 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.CreateBotLocale+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates a locale in the bot. The locale contains the intents and slot+-- types that the bot uses in conversations with users in the specified+-- language and locale. You must add a locale to a bot before you can add+-- intents and slot types to the bot.+module Amazonka.LexV2Models.CreateBotLocale+ ( -- * Creating a Request+ CreateBotLocale (..),+ newCreateBotLocale,++ -- * Request Lenses+ createBotLocale_description,+ createBotLocale_voiceSettings,+ createBotLocale_botId,+ createBotLocale_botVersion,+ createBotLocale_localeId,+ createBotLocale_nluIntentConfidenceThreshold,++ -- * Destructuring the Response+ CreateBotLocaleResponse (..),+ newCreateBotLocaleResponse,++ -- * Response Lenses+ createBotLocaleResponse_botId,+ createBotLocaleResponse_botLocaleStatus,+ createBotLocaleResponse_botVersion,+ createBotLocaleResponse_creationDateTime,+ createBotLocaleResponse_description,+ createBotLocaleResponse_localeId,+ createBotLocaleResponse_localeName,+ createBotLocaleResponse_nluIntentConfidenceThreshold,+ createBotLocaleResponse_voiceSettings,+ createBotLocaleResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateBotLocale' smart constructor.+data CreateBotLocale = CreateBotLocale'+ { -- | A description of the bot locale. Use this to help identify the bot+ -- locale in lists.+ description :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Polly voice ID that Amazon Lex uses for voice interaction+ -- with the user.+ voiceSettings :: Prelude.Maybe VoiceSettings,+ -- | The identifier of the bot to create the locale for.+ botId :: Prelude.Text,+ -- | The version of the bot to create the locale for. This can only be the+ -- draft version of the bot.+ botVersion :: Prelude.Text,+ -- | The identifier of the language and locale that the bot will be used in.+ -- The string must match one of the supported locales. All of the intents,+ -- slot types, and slots used in the bot must have the same locale. For+ -- more information, see+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+ localeId :: Prelude.Text,+ -- | Determines the threshold where Amazon Lex will insert the+ -- @AMAZON.FallbackIntent@, @AMAZON.KendraSearchIntent@, or both when+ -- returning alternative intents. @AMAZON.FallbackIntent@ and+ -- @AMAZON.KendraSearchIntent@ are only inserted if they are configured for+ -- the bot.+ --+ -- For example, suppose a bot is configured with the confidence threshold+ -- of 0.80 and the @AMAZON.FallbackIntent@. Amazon Lex returns three+ -- alternative intents with the following confidence scores: IntentA+ -- (0.70), IntentB (0.60), IntentC (0.50). The response from the+ -- @RecognizeText@ operation would be:+ --+ -- - AMAZON.FallbackIntent+ --+ -- - IntentA+ --+ -- - IntentB+ --+ -- - IntentC+ nluIntentConfidenceThreshold :: Prelude.Double+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateBotLocale' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'description', 'createBotLocale_description' - A description of the bot locale. Use this to help identify the bot+-- locale in lists.+--+-- 'voiceSettings', 'createBotLocale_voiceSettings' - The Amazon Polly voice ID that Amazon Lex uses for voice interaction+-- with the user.+--+-- 'botId', 'createBotLocale_botId' - The identifier of the bot to create the locale for.+--+-- 'botVersion', 'createBotLocale_botVersion' - The version of the bot to create the locale for. This can only be the+-- draft version of the bot.+--+-- 'localeId', 'createBotLocale_localeId' - The identifier of the language and locale that the bot will be used in.+-- The string must match one of the supported locales. All of the intents,+-- slot types, and slots used in the bot must have the same locale. For+-- more information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+--+-- 'nluIntentConfidenceThreshold', 'createBotLocale_nluIntentConfidenceThreshold' - Determines the threshold where Amazon Lex will insert the+-- @AMAZON.FallbackIntent@, @AMAZON.KendraSearchIntent@, or both when+-- returning alternative intents. @AMAZON.FallbackIntent@ and+-- @AMAZON.KendraSearchIntent@ are only inserted if they are configured for+-- the bot.+--+-- For example, suppose a bot is configured with the confidence threshold+-- of 0.80 and the @AMAZON.FallbackIntent@. Amazon Lex returns three+-- alternative intents with the following confidence scores: IntentA+-- (0.70), IntentB (0.60), IntentC (0.50). The response from the+-- @RecognizeText@ operation would be:+--+-- - AMAZON.FallbackIntent+--+-- - IntentA+--+-- - IntentB+--+-- - IntentC+newCreateBotLocale ::+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ -- | 'localeId'+ Prelude.Text ->+ -- | 'nluIntentConfidenceThreshold'+ Prelude.Double ->+ CreateBotLocale+newCreateBotLocale+ pBotId_+ pBotVersion_+ pLocaleId_+ pNluIntentConfidenceThreshold_ =+ CreateBotLocale'+ { description = Prelude.Nothing,+ voiceSettings = Prelude.Nothing,+ botId = pBotId_,+ botVersion = pBotVersion_,+ localeId = pLocaleId_,+ nluIntentConfidenceThreshold =+ pNluIntentConfidenceThreshold_+ }++-- | A description of the bot locale. Use this to help identify the bot+-- locale in lists.+createBotLocale_description :: Lens.Lens' CreateBotLocale (Prelude.Maybe Prelude.Text)+createBotLocale_description = Lens.lens (\CreateBotLocale' {description} -> description) (\s@CreateBotLocale' {} a -> s {description = a} :: CreateBotLocale)++-- | The Amazon Polly voice ID that Amazon Lex uses for voice interaction+-- with the user.+createBotLocale_voiceSettings :: Lens.Lens' CreateBotLocale (Prelude.Maybe VoiceSettings)+createBotLocale_voiceSettings = Lens.lens (\CreateBotLocale' {voiceSettings} -> voiceSettings) (\s@CreateBotLocale' {} a -> s {voiceSettings = a} :: CreateBotLocale)++-- | The identifier of the bot to create the locale for.+createBotLocale_botId :: Lens.Lens' CreateBotLocale Prelude.Text+createBotLocale_botId = Lens.lens (\CreateBotLocale' {botId} -> botId) (\s@CreateBotLocale' {} a -> s {botId = a} :: CreateBotLocale)++-- | The version of the bot to create the locale for. This can only be the+-- draft version of the bot.+createBotLocale_botVersion :: Lens.Lens' CreateBotLocale Prelude.Text+createBotLocale_botVersion = Lens.lens (\CreateBotLocale' {botVersion} -> botVersion) (\s@CreateBotLocale' {} a -> s {botVersion = a} :: CreateBotLocale)++-- | The identifier of the language and locale that the bot will be used in.+-- The string must match one of the supported locales. All of the intents,+-- slot types, and slots used in the bot must have the same locale. For+-- more information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+createBotLocale_localeId :: Lens.Lens' CreateBotLocale Prelude.Text+createBotLocale_localeId = Lens.lens (\CreateBotLocale' {localeId} -> localeId) (\s@CreateBotLocale' {} a -> s {localeId = a} :: CreateBotLocale)++-- | Determines the threshold where Amazon Lex will insert the+-- @AMAZON.FallbackIntent@, @AMAZON.KendraSearchIntent@, or both when+-- returning alternative intents. @AMAZON.FallbackIntent@ and+-- @AMAZON.KendraSearchIntent@ are only inserted if they are configured for+-- the bot.+--+-- For example, suppose a bot is configured with the confidence threshold+-- of 0.80 and the @AMAZON.FallbackIntent@. Amazon Lex returns three+-- alternative intents with the following confidence scores: IntentA+-- (0.70), IntentB (0.60), IntentC (0.50). The response from the+-- @RecognizeText@ operation would be:+--+-- - AMAZON.FallbackIntent+--+-- - IntentA+--+-- - IntentB+--+-- - IntentC+createBotLocale_nluIntentConfidenceThreshold :: Lens.Lens' CreateBotLocale Prelude.Double+createBotLocale_nluIntentConfidenceThreshold = Lens.lens (\CreateBotLocale' {nluIntentConfidenceThreshold} -> nluIntentConfidenceThreshold) (\s@CreateBotLocale' {} a -> s {nluIntentConfidenceThreshold = a} :: CreateBotLocale)++instance Core.AWSRequest CreateBotLocale where+ type+ AWSResponse CreateBotLocale =+ CreateBotLocaleResponse+ request overrides =+ Request.putJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateBotLocaleResponse'+ Prelude.<$> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botLocaleStatus")+ Prelude.<*> (x Data..?> "botVersion")+ Prelude.<*> (x Data..?> "creationDateTime")+ Prelude.<*> (x Data..?> "description")+ Prelude.<*> (x Data..?> "localeId")+ Prelude.<*> (x Data..?> "localeName")+ Prelude.<*> (x Data..?> "nluIntentConfidenceThreshold")+ Prelude.<*> (x Data..?> "voiceSettings")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateBotLocale where+ hashWithSalt _salt CreateBotLocale' {..} =+ _salt+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` voiceSettings+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` localeId+ `Prelude.hashWithSalt` nluIntentConfidenceThreshold++instance Prelude.NFData CreateBotLocale where+ rnf CreateBotLocale' {..} =+ Prelude.rnf description+ `Prelude.seq` Prelude.rnf voiceSettings+ `Prelude.seq` Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf nluIntentConfidenceThreshold++instance Data.ToHeaders CreateBotLocale where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateBotLocale where+ toJSON CreateBotLocale' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("description" Data..=) Prelude.<$> description,+ ("voiceSettings" Data..=) Prelude.<$> voiceSettings,+ Prelude.Just ("localeId" Data..= localeId),+ Prelude.Just+ ( "nluIntentConfidenceThreshold"+ Data..= nluIntentConfidenceThreshold+ )+ ]+ )++instance Data.ToPath CreateBotLocale where+ toPath CreateBotLocale' {..} =+ Prelude.mconcat+ [ "/bots/",+ Data.toBS botId,+ "/botversions/",+ Data.toBS botVersion,+ "/botlocales/"+ ]++instance Data.ToQuery CreateBotLocale where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateBotLocaleResponse' smart constructor.+data CreateBotLocaleResponse = CreateBotLocaleResponse'+ { -- | The specified bot identifier.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The status of the bot.+ --+ -- When the status is @Creating@ the bot locale is being configured. When+ -- the status is @Building@ Amazon Lex is building the bot for testing and+ -- use.+ --+ -- If the status of the bot is @ReadyExpressTesting@, you can test the bot+ -- using the exact utterances specified in the bots\' intents. When the bot+ -- is ready for full testing or to run, the status is @Built@.+ --+ -- If there was a problem with building the bot, the status is @Failed@. If+ -- the bot was saved but not built, the status is @NotBuilt@.+ botLocaleStatus :: Prelude.Maybe BotLocaleStatus,+ -- | The specified bot version.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | A timestamp specifying the date and time that the bot locale was+ -- created.+ creationDateTime :: Prelude.Maybe Data.POSIX,+ -- | The specified description of the bot locale.+ description :: Prelude.Maybe Prelude.Text,+ -- | The specified locale identifier.+ localeId :: Prelude.Maybe Prelude.Text,+ -- | The specified locale name.+ localeName :: Prelude.Maybe Prelude.Text,+ -- | The specified confidence threshold for inserting the+ -- @AMAZON.FallbackIntent@ and @AMAZON.KendraSearchIntent@ intents.+ nluIntentConfidenceThreshold :: Prelude.Maybe Prelude.Double,+ -- | The Amazon Polly voice ID that Amazon Lex uses for voice interaction+ -- with the user.+ voiceSettings :: Prelude.Maybe VoiceSettings,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateBotLocaleResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'createBotLocaleResponse_botId' - The specified bot identifier.+--+-- 'botLocaleStatus', 'createBotLocaleResponse_botLocaleStatus' - The status of the bot.+--+-- When the status is @Creating@ the bot locale is being configured. When+-- the status is @Building@ Amazon Lex is building the bot for testing and+-- use.+--+-- If the status of the bot is @ReadyExpressTesting@, you can test the bot+-- using the exact utterances specified in the bots\' intents. When the bot+-- is ready for full testing or to run, the status is @Built@.+--+-- If there was a problem with building the bot, the status is @Failed@. If+-- the bot was saved but not built, the status is @NotBuilt@.+--+-- 'botVersion', 'createBotLocaleResponse_botVersion' - The specified bot version.+--+-- 'creationDateTime', 'createBotLocaleResponse_creationDateTime' - A timestamp specifying the date and time that the bot locale was+-- created.+--+-- 'description', 'createBotLocaleResponse_description' - The specified description of the bot locale.+--+-- 'localeId', 'createBotLocaleResponse_localeId' - The specified locale identifier.+--+-- 'localeName', 'createBotLocaleResponse_localeName' - The specified locale name.+--+-- 'nluIntentConfidenceThreshold', 'createBotLocaleResponse_nluIntentConfidenceThreshold' - The specified confidence threshold for inserting the+-- @AMAZON.FallbackIntent@ and @AMAZON.KendraSearchIntent@ intents.+--+-- 'voiceSettings', 'createBotLocaleResponse_voiceSettings' - The Amazon Polly voice ID that Amazon Lex uses for voice interaction+-- with the user.+--+-- 'httpStatus', 'createBotLocaleResponse_httpStatus' - The response's http status code.+newCreateBotLocaleResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateBotLocaleResponse+newCreateBotLocaleResponse pHttpStatus_ =+ CreateBotLocaleResponse'+ { botId = Prelude.Nothing,+ botLocaleStatus = Prelude.Nothing,+ botVersion = Prelude.Nothing,+ creationDateTime = Prelude.Nothing,+ description = Prelude.Nothing,+ localeId = Prelude.Nothing,+ localeName = Prelude.Nothing,+ nluIntentConfidenceThreshold = Prelude.Nothing,+ voiceSettings = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The specified bot identifier.+createBotLocaleResponse_botId :: Lens.Lens' CreateBotLocaleResponse (Prelude.Maybe Prelude.Text)+createBotLocaleResponse_botId = Lens.lens (\CreateBotLocaleResponse' {botId} -> botId) (\s@CreateBotLocaleResponse' {} a -> s {botId = a} :: CreateBotLocaleResponse)++-- | The status of the bot.+--+-- When the status is @Creating@ the bot locale is being configured. When+-- the status is @Building@ Amazon Lex is building the bot for testing and+-- use.+--+-- If the status of the bot is @ReadyExpressTesting@, you can test the bot+-- using the exact utterances specified in the bots\' intents. When the bot+-- is ready for full testing or to run, the status is @Built@.+--+-- If there was a problem with building the bot, the status is @Failed@. If+-- the bot was saved but not built, the status is @NotBuilt@.+createBotLocaleResponse_botLocaleStatus :: Lens.Lens' CreateBotLocaleResponse (Prelude.Maybe BotLocaleStatus)+createBotLocaleResponse_botLocaleStatus = Lens.lens (\CreateBotLocaleResponse' {botLocaleStatus} -> botLocaleStatus) (\s@CreateBotLocaleResponse' {} a -> s {botLocaleStatus = a} :: CreateBotLocaleResponse)++-- | The specified bot version.+createBotLocaleResponse_botVersion :: Lens.Lens' CreateBotLocaleResponse (Prelude.Maybe Prelude.Text)+createBotLocaleResponse_botVersion = Lens.lens (\CreateBotLocaleResponse' {botVersion} -> botVersion) (\s@CreateBotLocaleResponse' {} a -> s {botVersion = a} :: CreateBotLocaleResponse)++-- | A timestamp specifying the date and time that the bot locale was+-- created.+createBotLocaleResponse_creationDateTime :: Lens.Lens' CreateBotLocaleResponse (Prelude.Maybe Prelude.UTCTime)+createBotLocaleResponse_creationDateTime = Lens.lens (\CreateBotLocaleResponse' {creationDateTime} -> creationDateTime) (\s@CreateBotLocaleResponse' {} a -> s {creationDateTime = a} :: CreateBotLocaleResponse) Prelude.. Lens.mapping Data._Time++-- | The specified description of the bot locale.+createBotLocaleResponse_description :: Lens.Lens' CreateBotLocaleResponse (Prelude.Maybe Prelude.Text)+createBotLocaleResponse_description = Lens.lens (\CreateBotLocaleResponse' {description} -> description) (\s@CreateBotLocaleResponse' {} a -> s {description = a} :: CreateBotLocaleResponse)++-- | The specified locale identifier.+createBotLocaleResponse_localeId :: Lens.Lens' CreateBotLocaleResponse (Prelude.Maybe Prelude.Text)+createBotLocaleResponse_localeId = Lens.lens (\CreateBotLocaleResponse' {localeId} -> localeId) (\s@CreateBotLocaleResponse' {} a -> s {localeId = a} :: CreateBotLocaleResponse)++-- | The specified locale name.+createBotLocaleResponse_localeName :: Lens.Lens' CreateBotLocaleResponse (Prelude.Maybe Prelude.Text)+createBotLocaleResponse_localeName = Lens.lens (\CreateBotLocaleResponse' {localeName} -> localeName) (\s@CreateBotLocaleResponse' {} a -> s {localeName = a} :: CreateBotLocaleResponse)++-- | The specified confidence threshold for inserting the+-- @AMAZON.FallbackIntent@ and @AMAZON.KendraSearchIntent@ intents.+createBotLocaleResponse_nluIntentConfidenceThreshold :: Lens.Lens' CreateBotLocaleResponse (Prelude.Maybe Prelude.Double)+createBotLocaleResponse_nluIntentConfidenceThreshold = Lens.lens (\CreateBotLocaleResponse' {nluIntentConfidenceThreshold} -> nluIntentConfidenceThreshold) (\s@CreateBotLocaleResponse' {} a -> s {nluIntentConfidenceThreshold = a} :: CreateBotLocaleResponse)++-- | The Amazon Polly voice ID that Amazon Lex uses for voice interaction+-- with the user.+createBotLocaleResponse_voiceSettings :: Lens.Lens' CreateBotLocaleResponse (Prelude.Maybe VoiceSettings)+createBotLocaleResponse_voiceSettings = Lens.lens (\CreateBotLocaleResponse' {voiceSettings} -> voiceSettings) (\s@CreateBotLocaleResponse' {} a -> s {voiceSettings = a} :: CreateBotLocaleResponse)++-- | The response's http status code.+createBotLocaleResponse_httpStatus :: Lens.Lens' CreateBotLocaleResponse Prelude.Int+createBotLocaleResponse_httpStatus = Lens.lens (\CreateBotLocaleResponse' {httpStatus} -> httpStatus) (\s@CreateBotLocaleResponse' {} a -> s {httpStatus = a} :: CreateBotLocaleResponse)++instance Prelude.NFData CreateBotLocaleResponse where+ rnf CreateBotLocaleResponse' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botLocaleStatus+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf localeName+ `Prelude.seq` Prelude.rnf nluIntentConfidenceThreshold+ `Prelude.seq` Prelude.rnf voiceSettings+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/CreateBotVersion.hs view
@@ -0,0 +1,288 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.CreateBotVersion+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates a new version of the bot based on the @DRAFT@ version. If the+-- @DRAFT@ version of this resource hasn\'t changed since you created the+-- last version, Amazon Lex doesn\'t create a new version, it returns the+-- last created version.+--+-- When you create the first version of a bot, Amazon Lex sets the version+-- to 1. Subsequent versions increment by 1.+module Amazonka.LexV2Models.CreateBotVersion+ ( -- * Creating a Request+ CreateBotVersion (..),+ newCreateBotVersion,++ -- * Request Lenses+ createBotVersion_description,+ createBotVersion_botId,+ createBotVersion_botVersionLocaleSpecification,++ -- * Destructuring the Response+ CreateBotVersionResponse (..),+ newCreateBotVersionResponse,++ -- * Response Lenses+ createBotVersionResponse_botId,+ createBotVersionResponse_botStatus,+ createBotVersionResponse_botVersion,+ createBotVersionResponse_botVersionLocaleSpecification,+ createBotVersionResponse_creationDateTime,+ createBotVersionResponse_description,+ createBotVersionResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateBotVersion' smart constructor.+data CreateBotVersion = CreateBotVersion'+ { -- | A description of the version. Use the description to help identify the+ -- version in lists.+ description :: Prelude.Maybe Prelude.Text,+ -- | The identifier of the bot to create the version for.+ botId :: Prelude.Text,+ -- | Specifies the locales that Amazon Lex adds to this version. You can+ -- choose the @Draft@ version or any other previously published version for+ -- each locale. When you specify a source version, the locale data is+ -- copied from the source version to the new version.+ botVersionLocaleSpecification :: Prelude.HashMap Prelude.Text BotVersionLocaleDetails+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateBotVersion' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'description', 'createBotVersion_description' - A description of the version. Use the description to help identify the+-- version in lists.+--+-- 'botId', 'createBotVersion_botId' - The identifier of the bot to create the version for.+--+-- 'botVersionLocaleSpecification', 'createBotVersion_botVersionLocaleSpecification' - Specifies the locales that Amazon Lex adds to this version. You can+-- choose the @Draft@ version or any other previously published version for+-- each locale. When you specify a source version, the locale data is+-- copied from the source version to the new version.+newCreateBotVersion ::+ -- | 'botId'+ Prelude.Text ->+ CreateBotVersion+newCreateBotVersion pBotId_ =+ CreateBotVersion'+ { description = Prelude.Nothing,+ botId = pBotId_,+ botVersionLocaleSpecification = Prelude.mempty+ }++-- | A description of the version. Use the description to help identify the+-- version in lists.+createBotVersion_description :: Lens.Lens' CreateBotVersion (Prelude.Maybe Prelude.Text)+createBotVersion_description = Lens.lens (\CreateBotVersion' {description} -> description) (\s@CreateBotVersion' {} a -> s {description = a} :: CreateBotVersion)++-- | The identifier of the bot to create the version for.+createBotVersion_botId :: Lens.Lens' CreateBotVersion Prelude.Text+createBotVersion_botId = Lens.lens (\CreateBotVersion' {botId} -> botId) (\s@CreateBotVersion' {} a -> s {botId = a} :: CreateBotVersion)++-- | Specifies the locales that Amazon Lex adds to this version. You can+-- choose the @Draft@ version or any other previously published version for+-- each locale. When you specify a source version, the locale data is+-- copied from the source version to the new version.+createBotVersion_botVersionLocaleSpecification :: Lens.Lens' CreateBotVersion (Prelude.HashMap Prelude.Text BotVersionLocaleDetails)+createBotVersion_botVersionLocaleSpecification = Lens.lens (\CreateBotVersion' {botVersionLocaleSpecification} -> botVersionLocaleSpecification) (\s@CreateBotVersion' {} a -> s {botVersionLocaleSpecification = a} :: CreateBotVersion) Prelude.. Lens.coerced++instance Core.AWSRequest CreateBotVersion where+ type+ AWSResponse CreateBotVersion =+ CreateBotVersionResponse+ request overrides =+ Request.putJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateBotVersionResponse'+ Prelude.<$> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botStatus")+ Prelude.<*> (x Data..?> "botVersion")+ Prelude.<*> ( x+ Data..?> "botVersionLocaleSpecification"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "creationDateTime")+ Prelude.<*> (x Data..?> "description")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateBotVersion where+ hashWithSalt _salt CreateBotVersion' {..} =+ _salt+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersionLocaleSpecification++instance Prelude.NFData CreateBotVersion where+ rnf CreateBotVersion' {..} =+ Prelude.rnf description+ `Prelude.seq` Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersionLocaleSpecification++instance Data.ToHeaders CreateBotVersion where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateBotVersion where+ toJSON CreateBotVersion' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("description" Data..=) Prelude.<$> description,+ Prelude.Just+ ( "botVersionLocaleSpecification"+ Data..= botVersionLocaleSpecification+ )+ ]+ )++instance Data.ToPath CreateBotVersion where+ toPath CreateBotVersion' {..} =+ Prelude.mconcat+ ["/bots/", Data.toBS botId, "/botversions/"]++instance Data.ToQuery CreateBotVersion where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateBotVersionResponse' smart constructor.+data CreateBotVersionResponse = CreateBotVersionResponse'+ { -- | The bot identifier specified in the request.+ botId :: Prelude.Maybe Prelude.Text,+ -- | When you send a request to create or update a bot, Amazon Lex sets the+ -- status response element to @Creating@. After Amazon Lex builds the bot,+ -- it sets status to @Available@. If Amazon Lex can\'t build the bot, it+ -- sets status to @Failed@.+ botStatus :: Prelude.Maybe BotStatus,+ -- | The version number assigned to the version.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | The source versions used for each locale in the new version.+ botVersionLocaleSpecification :: Prelude.Maybe (Prelude.HashMap Prelude.Text BotVersionLocaleDetails),+ -- | A timestamp of the date and time that the version was created.+ creationDateTime :: Prelude.Maybe Data.POSIX,+ -- | The description of the version specified in the request.+ description :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateBotVersionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'createBotVersionResponse_botId' - The bot identifier specified in the request.+--+-- 'botStatus', 'createBotVersionResponse_botStatus' - When you send a request to create or update a bot, Amazon Lex sets the+-- status response element to @Creating@. After Amazon Lex builds the bot,+-- it sets status to @Available@. If Amazon Lex can\'t build the bot, it+-- sets status to @Failed@.+--+-- 'botVersion', 'createBotVersionResponse_botVersion' - The version number assigned to the version.+--+-- 'botVersionLocaleSpecification', 'createBotVersionResponse_botVersionLocaleSpecification' - The source versions used for each locale in the new version.+--+-- 'creationDateTime', 'createBotVersionResponse_creationDateTime' - A timestamp of the date and time that the version was created.+--+-- 'description', 'createBotVersionResponse_description' - The description of the version specified in the request.+--+-- 'httpStatus', 'createBotVersionResponse_httpStatus' - The response's http status code.+newCreateBotVersionResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateBotVersionResponse+newCreateBotVersionResponse pHttpStatus_ =+ CreateBotVersionResponse'+ { botId = Prelude.Nothing,+ botStatus = Prelude.Nothing,+ botVersion = Prelude.Nothing,+ botVersionLocaleSpecification = Prelude.Nothing,+ creationDateTime = Prelude.Nothing,+ description = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The bot identifier specified in the request.+createBotVersionResponse_botId :: Lens.Lens' CreateBotVersionResponse (Prelude.Maybe Prelude.Text)+createBotVersionResponse_botId = Lens.lens (\CreateBotVersionResponse' {botId} -> botId) (\s@CreateBotVersionResponse' {} a -> s {botId = a} :: CreateBotVersionResponse)++-- | When you send a request to create or update a bot, Amazon Lex sets the+-- status response element to @Creating@. After Amazon Lex builds the bot,+-- it sets status to @Available@. If Amazon Lex can\'t build the bot, it+-- sets status to @Failed@.+createBotVersionResponse_botStatus :: Lens.Lens' CreateBotVersionResponse (Prelude.Maybe BotStatus)+createBotVersionResponse_botStatus = Lens.lens (\CreateBotVersionResponse' {botStatus} -> botStatus) (\s@CreateBotVersionResponse' {} a -> s {botStatus = a} :: CreateBotVersionResponse)++-- | The version number assigned to the version.+createBotVersionResponse_botVersion :: Lens.Lens' CreateBotVersionResponse (Prelude.Maybe Prelude.Text)+createBotVersionResponse_botVersion = Lens.lens (\CreateBotVersionResponse' {botVersion} -> botVersion) (\s@CreateBotVersionResponse' {} a -> s {botVersion = a} :: CreateBotVersionResponse)++-- | The source versions used for each locale in the new version.+createBotVersionResponse_botVersionLocaleSpecification :: Lens.Lens' CreateBotVersionResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text BotVersionLocaleDetails))+createBotVersionResponse_botVersionLocaleSpecification = Lens.lens (\CreateBotVersionResponse' {botVersionLocaleSpecification} -> botVersionLocaleSpecification) (\s@CreateBotVersionResponse' {} a -> s {botVersionLocaleSpecification = a} :: CreateBotVersionResponse) Prelude.. Lens.mapping Lens.coerced++-- | A timestamp of the date and time that the version was created.+createBotVersionResponse_creationDateTime :: Lens.Lens' CreateBotVersionResponse (Prelude.Maybe Prelude.UTCTime)+createBotVersionResponse_creationDateTime = Lens.lens (\CreateBotVersionResponse' {creationDateTime} -> creationDateTime) (\s@CreateBotVersionResponse' {} a -> s {creationDateTime = a} :: CreateBotVersionResponse) Prelude.. Lens.mapping Data._Time++-- | The description of the version specified in the request.+createBotVersionResponse_description :: Lens.Lens' CreateBotVersionResponse (Prelude.Maybe Prelude.Text)+createBotVersionResponse_description = Lens.lens (\CreateBotVersionResponse' {description} -> description) (\s@CreateBotVersionResponse' {} a -> s {description = a} :: CreateBotVersionResponse)++-- | The response's http status code.+createBotVersionResponse_httpStatus :: Lens.Lens' CreateBotVersionResponse Prelude.Int+createBotVersionResponse_httpStatus = Lens.lens (\CreateBotVersionResponse' {httpStatus} -> httpStatus) (\s@CreateBotVersionResponse' {} a -> s {httpStatus = a} :: CreateBotVersionResponse)++instance Prelude.NFData CreateBotVersionResponse where+ rnf CreateBotVersionResponse' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botStatus+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf botVersionLocaleSpecification+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/CreateExport.hs view
@@ -0,0 +1,280 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.CreateExport+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates a zip archive containing the contents of a bot or a bot locale.+-- The archive contains a directory structure that contains JSON files that+-- define the bot.+--+-- You can create an archive that contains the complete definition of a+-- bot, or you can specify that the archive contain only the definition of+-- a single bot locale.+--+-- For more information about exporting bots, and about the structure of+-- the export archive, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/importing-exporting.html Importing and exporting bots>+module Amazonka.LexV2Models.CreateExport+ ( -- * Creating a Request+ CreateExport (..),+ newCreateExport,++ -- * Request Lenses+ createExport_filePassword,+ createExport_resourceSpecification,+ createExport_fileFormat,++ -- * Destructuring the Response+ CreateExportResponse (..),+ newCreateExportResponse,++ -- * Response Lenses+ createExportResponse_creationDateTime,+ createExportResponse_exportId,+ createExportResponse_exportStatus,+ createExportResponse_fileFormat,+ createExportResponse_resourceSpecification,+ createExportResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateExport' smart constructor.+data CreateExport = CreateExport'+ { -- | An password to use to encrypt the exported archive. Using a password is+ -- optional, but you should encrypt the archive to protect the data in+ -- transit between Amazon Lex and your local computer.+ filePassword :: Prelude.Maybe (Data.Sensitive Prelude.Text),+ -- | Specifies the type of resource to export, either a bot or a bot locale.+ -- You can only specify one type of resource to export.+ resourceSpecification :: ExportResourceSpecification,+ -- | The file format of the bot or bot locale definition files.+ fileFormat :: ImportExportFileFormat+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateExport' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'filePassword', 'createExport_filePassword' - An password to use to encrypt the exported archive. Using a password is+-- optional, but you should encrypt the archive to protect the data in+-- transit between Amazon Lex and your local computer.+--+-- 'resourceSpecification', 'createExport_resourceSpecification' - Specifies the type of resource to export, either a bot or a bot locale.+-- You can only specify one type of resource to export.+--+-- 'fileFormat', 'createExport_fileFormat' - The file format of the bot or bot locale definition files.+newCreateExport ::+ -- | 'resourceSpecification'+ ExportResourceSpecification ->+ -- | 'fileFormat'+ ImportExportFileFormat ->+ CreateExport+newCreateExport pResourceSpecification_ pFileFormat_ =+ CreateExport'+ { filePassword = Prelude.Nothing,+ resourceSpecification = pResourceSpecification_,+ fileFormat = pFileFormat_+ }++-- | An password to use to encrypt the exported archive. Using a password is+-- optional, but you should encrypt the archive to protect the data in+-- transit between Amazon Lex and your local computer.+createExport_filePassword :: Lens.Lens' CreateExport (Prelude.Maybe Prelude.Text)+createExport_filePassword = Lens.lens (\CreateExport' {filePassword} -> filePassword) (\s@CreateExport' {} a -> s {filePassword = a} :: CreateExport) Prelude.. Lens.mapping Data._Sensitive++-- | Specifies the type of resource to export, either a bot or a bot locale.+-- You can only specify one type of resource to export.+createExport_resourceSpecification :: Lens.Lens' CreateExport ExportResourceSpecification+createExport_resourceSpecification = Lens.lens (\CreateExport' {resourceSpecification} -> resourceSpecification) (\s@CreateExport' {} a -> s {resourceSpecification = a} :: CreateExport)++-- | The file format of the bot or bot locale definition files.+createExport_fileFormat :: Lens.Lens' CreateExport ImportExportFileFormat+createExport_fileFormat = Lens.lens (\CreateExport' {fileFormat} -> fileFormat) (\s@CreateExport' {} a -> s {fileFormat = a} :: CreateExport)++instance Core.AWSRequest CreateExport where+ type AWSResponse CreateExport = CreateExportResponse+ request overrides =+ Request.putJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateExportResponse'+ Prelude.<$> (x Data..?> "creationDateTime")+ Prelude.<*> (x Data..?> "exportId")+ Prelude.<*> (x Data..?> "exportStatus")+ Prelude.<*> (x Data..?> "fileFormat")+ Prelude.<*> (x Data..?> "resourceSpecification")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateExport where+ hashWithSalt _salt CreateExport' {..} =+ _salt+ `Prelude.hashWithSalt` filePassword+ `Prelude.hashWithSalt` resourceSpecification+ `Prelude.hashWithSalt` fileFormat++instance Prelude.NFData CreateExport where+ rnf CreateExport' {..} =+ Prelude.rnf filePassword+ `Prelude.seq` Prelude.rnf resourceSpecification+ `Prelude.seq` Prelude.rnf fileFormat++instance Data.ToHeaders CreateExport where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateExport where+ toJSON CreateExport' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("filePassword" Data..=) Prelude.<$> filePassword,+ Prelude.Just+ ( "resourceSpecification"+ Data..= resourceSpecification+ ),+ Prelude.Just ("fileFormat" Data..= fileFormat)+ ]+ )++instance Data.ToPath CreateExport where+ toPath = Prelude.const "/exports/"++instance Data.ToQuery CreateExport where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateExportResponse' smart constructor.+data CreateExportResponse = CreateExportResponse'+ { -- | The date and time that the request to export a bot was created.+ creationDateTime :: Prelude.Maybe Data.POSIX,+ -- | An identifier for a specific request to create an export.+ exportId :: Prelude.Maybe Prelude.Text,+ -- | The status of the export. When the status is @Completed@, you can use+ -- the+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/API_DescribeExport.html DescribeExport>+ -- operation to get the pre-signed S3 URL link to your exported bot or bot+ -- locale.+ exportStatus :: Prelude.Maybe ExportStatus,+ -- | The file format used for the bot or bot locale definition files.+ fileFormat :: Prelude.Maybe ImportExportFileFormat,+ -- | A description of the type of resource that was exported, either a bot or+ -- a bot locale.+ resourceSpecification :: Prelude.Maybe ExportResourceSpecification,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateExportResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'creationDateTime', 'createExportResponse_creationDateTime' - The date and time that the request to export a bot was created.+--+-- 'exportId', 'createExportResponse_exportId' - An identifier for a specific request to create an export.+--+-- 'exportStatus', 'createExportResponse_exportStatus' - The status of the export. When the status is @Completed@, you can use+-- the+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_DescribeExport.html DescribeExport>+-- operation to get the pre-signed S3 URL link to your exported bot or bot+-- locale.+--+-- 'fileFormat', 'createExportResponse_fileFormat' - The file format used for the bot or bot locale definition files.+--+-- 'resourceSpecification', 'createExportResponse_resourceSpecification' - A description of the type of resource that was exported, either a bot or+-- a bot locale.+--+-- 'httpStatus', 'createExportResponse_httpStatus' - The response's http status code.+newCreateExportResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateExportResponse+newCreateExportResponse pHttpStatus_ =+ CreateExportResponse'+ { creationDateTime =+ Prelude.Nothing,+ exportId = Prelude.Nothing,+ exportStatus = Prelude.Nothing,+ fileFormat = Prelude.Nothing,+ resourceSpecification = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The date and time that the request to export a bot was created.+createExportResponse_creationDateTime :: Lens.Lens' CreateExportResponse (Prelude.Maybe Prelude.UTCTime)+createExportResponse_creationDateTime = Lens.lens (\CreateExportResponse' {creationDateTime} -> creationDateTime) (\s@CreateExportResponse' {} a -> s {creationDateTime = a} :: CreateExportResponse) Prelude.. Lens.mapping Data._Time++-- | An identifier for a specific request to create an export.+createExportResponse_exportId :: Lens.Lens' CreateExportResponse (Prelude.Maybe Prelude.Text)+createExportResponse_exportId = Lens.lens (\CreateExportResponse' {exportId} -> exportId) (\s@CreateExportResponse' {} a -> s {exportId = a} :: CreateExportResponse)++-- | The status of the export. When the status is @Completed@, you can use+-- the+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_DescribeExport.html DescribeExport>+-- operation to get the pre-signed S3 URL link to your exported bot or bot+-- locale.+createExportResponse_exportStatus :: Lens.Lens' CreateExportResponse (Prelude.Maybe ExportStatus)+createExportResponse_exportStatus = Lens.lens (\CreateExportResponse' {exportStatus} -> exportStatus) (\s@CreateExportResponse' {} a -> s {exportStatus = a} :: CreateExportResponse)++-- | The file format used for the bot or bot locale definition files.+createExportResponse_fileFormat :: Lens.Lens' CreateExportResponse (Prelude.Maybe ImportExportFileFormat)+createExportResponse_fileFormat = Lens.lens (\CreateExportResponse' {fileFormat} -> fileFormat) (\s@CreateExportResponse' {} a -> s {fileFormat = a} :: CreateExportResponse)++-- | A description of the type of resource that was exported, either a bot or+-- a bot locale.+createExportResponse_resourceSpecification :: Lens.Lens' CreateExportResponse (Prelude.Maybe ExportResourceSpecification)+createExportResponse_resourceSpecification = Lens.lens (\CreateExportResponse' {resourceSpecification} -> resourceSpecification) (\s@CreateExportResponse' {} a -> s {resourceSpecification = a} :: CreateExportResponse)++-- | The response's http status code.+createExportResponse_httpStatus :: Lens.Lens' CreateExportResponse Prelude.Int+createExportResponse_httpStatus = Lens.lens (\CreateExportResponse' {httpStatus} -> httpStatus) (\s@CreateExportResponse' {} a -> s {httpStatus = a} :: CreateExportResponse)++instance Prelude.NFData CreateExportResponse where+ rnf CreateExportResponse' {..} =+ Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf exportId+ `Prelude.seq` Prelude.rnf exportStatus+ `Prelude.seq` Prelude.rnf fileFormat+ `Prelude.seq` Prelude.rnf resourceSpecification+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/CreateIntent.hs view
@@ -0,0 +1,778 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.CreateIntent+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates an intent.+--+-- To define the interaction between the user and your bot, you define one+-- or more intents. For example, for a pizza ordering bot you would create+-- an @OrderPizza@ intent.+--+-- When you create an intent, you must provide a name. You can optionally+-- provide the following:+--+-- - Sample utterances. For example, \"I want to order a pizza\" and+-- \"Can I order a pizza.\" You can\'t provide utterances for built-in+-- intents.+--+-- - Information to be gathered. You specify slots for the information+-- that you bot requests from the user. You can specify standard slot+-- types, such as date and time, or custom slot types for your+-- application.+--+-- - How the intent is fulfilled. You can provide a Lambda function or+-- configure the intent to return the intent information to your client+-- application. If you use a Lambda function, Amazon Lex invokes the+-- function when all of the intent information is available.+--+-- - A confirmation prompt to send to the user to confirm an intent. For+-- example, \"Shall I order your pizza?\"+--+-- - A conclusion statement to send to the user after the intent is+-- fulfilled. For example, \"I ordered your pizza.\"+--+-- - A follow-up prompt that asks the user for additional activity. For+-- example, \"Do you want a drink with your pizza?\"+module Amazonka.LexV2Models.CreateIntent+ ( -- * Creating a Request+ CreateIntent (..),+ newCreateIntent,++ -- * Request Lenses+ createIntent_description,+ createIntent_dialogCodeHook,+ createIntent_fulfillmentCodeHook,+ createIntent_initialResponseSetting,+ createIntent_inputContexts,+ createIntent_intentClosingSetting,+ createIntent_intentConfirmationSetting,+ createIntent_kendraConfiguration,+ createIntent_outputContexts,+ createIntent_parentIntentSignature,+ createIntent_sampleUtterances,+ createIntent_intentName,+ createIntent_botId,+ createIntent_botVersion,+ createIntent_localeId,++ -- * Destructuring the Response+ CreateIntentResponse (..),+ newCreateIntentResponse,++ -- * Response Lenses+ createIntentResponse_botId,+ createIntentResponse_botVersion,+ createIntentResponse_creationDateTime,+ createIntentResponse_description,+ createIntentResponse_dialogCodeHook,+ createIntentResponse_fulfillmentCodeHook,+ createIntentResponse_initialResponseSetting,+ createIntentResponse_inputContexts,+ createIntentResponse_intentClosingSetting,+ createIntentResponse_intentConfirmationSetting,+ createIntentResponse_intentId,+ createIntentResponse_intentName,+ createIntentResponse_kendraConfiguration,+ createIntentResponse_localeId,+ createIntentResponse_outputContexts,+ createIntentResponse_parentIntentSignature,+ createIntentResponse_sampleUtterances,+ createIntentResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateIntent' smart constructor.+data CreateIntent = CreateIntent'+ { -- | A description of the intent. Use the description to help identify the+ -- intent in lists.+ description :: Prelude.Maybe Prelude.Text,+ -- | Specifies that Amazon Lex invokes the alias Lambda function for each+ -- user input. You can invoke this Lambda function to personalize user+ -- interaction.+ --+ -- For example, suppose that your bot determines that the user\'s name is+ -- John. You Lambda function might retrieve John\'s information from a+ -- backend database and prepopulate some of the values. For example, if you+ -- find that John is gluten intolerant, you might set the corresponding+ -- intent slot, @glutenIntolerant@ to @true@. You might find John\'s phone+ -- number and set the corresponding session attribute.+ dialogCodeHook :: Prelude.Maybe DialogCodeHookSettings,+ -- | Specifies that Amazon Lex invokes the alias Lambda function when the+ -- intent is ready for fulfillment. You can invoke this function to+ -- complete the bot\'s transaction with the user.+ --+ -- For example, in a pizza ordering bot, the Lambda function can look up+ -- the closest pizza restaurant to the customer\'s location and then place+ -- an order on the customer\'s behalf.+ fulfillmentCodeHook :: Prelude.Maybe FulfillmentCodeHookSettings,+ -- | Configuration settings for the response that is sent to the user at the+ -- beginning of a conversation, before eliciting slot values.+ initialResponseSetting :: Prelude.Maybe InitialResponseSetting,+ -- | A list of contexts that must be active for this intent to be considered+ -- by Amazon Lex.+ --+ -- When an intent has an input context list, Amazon Lex only considers+ -- using the intent in an interaction with the user when the specified+ -- contexts are included in the active context list for the session. If the+ -- contexts are not active, then Amazon Lex will not use the intent.+ --+ -- A context can be automatically activated using the @outputContexts@+ -- property or it can be set at runtime.+ --+ -- For example, if there are two intents with different input contexts that+ -- respond to the same utterances, only the intent with the active context+ -- will respond.+ --+ -- An intent may have up to 5 input contexts. If an intent has multiple+ -- input contexts, all of the contexts must be active to consider the+ -- intent.+ inputContexts :: Prelude.Maybe [InputContext],+ -- | Sets the response that Amazon Lex sends to the user when the intent is+ -- closed.+ intentClosingSetting :: Prelude.Maybe IntentClosingSetting,+ -- | Provides prompts that Amazon Lex sends to the user to confirm the+ -- completion of an intent. If the user answers \"no,\" the settings+ -- contain a statement that is sent to the user to end the intent.+ intentConfirmationSetting :: Prelude.Maybe IntentConfirmationSetting,+ -- | Configuration information required to use the+ -- @AMAZON.KendraSearchIntent@ intent to connect to an Amazon Kendra index.+ -- The @AMAZON.KendraSearchIntent@ intent is called when Amazon Lex can\'t+ -- determine another intent to invoke.+ kendraConfiguration :: Prelude.Maybe KendraConfiguration,+ -- | A lists of contexts that the intent activates when it is fulfilled.+ --+ -- You can use an output context to indicate the intents that Amazon Lex+ -- should consider for the next turn of the conversation with a customer.+ --+ -- When you use the @outputContextsList@ property, all of the contexts+ -- specified in the list are activated when the intent is fulfilled. You+ -- can set up to 10 output contexts. You can also set the number of+ -- conversation turns that the context should be active, or the length of+ -- time that the context should be active.+ outputContexts :: Prelude.Maybe [OutputContext],+ -- | A unique identifier for the built-in intent to base this intent on.+ parentIntentSignature :: Prelude.Maybe Prelude.Text,+ -- | An array of strings that a user might say to signal the intent. For+ -- example, \"I want a pizza\", or \"I want a {PizzaSize} pizza\".+ --+ -- In an utterance, slot names are enclosed in curly braces (\"{\", \"}\")+ -- to indicate where they should be displayed in the utterance shown to the+ -- user..+ sampleUtterances :: Prelude.Maybe [SampleUtterance],+ -- | The name of the intent. Intent names must be unique in the locale that+ -- contains the intent and cannot match the name of any built-in intent.+ intentName :: Prelude.Text,+ -- | The identifier of the bot associated with this intent.+ botId :: Prelude.Text,+ -- | The identifier of the version of the bot associated with this intent.+ botVersion :: Prelude.Text,+ -- | The identifier of the language and locale where this intent is used. All+ -- of the bots, slot types, and slots used by the intent must have the same+ -- locale. For more information, see+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+ localeId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateIntent' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'description', 'createIntent_description' - A description of the intent. Use the description to help identify the+-- intent in lists.+--+-- 'dialogCodeHook', 'createIntent_dialogCodeHook' - Specifies that Amazon Lex invokes the alias Lambda function for each+-- user input. You can invoke this Lambda function to personalize user+-- interaction.+--+-- For example, suppose that your bot determines that the user\'s name is+-- John. You Lambda function might retrieve John\'s information from a+-- backend database and prepopulate some of the values. For example, if you+-- find that John is gluten intolerant, you might set the corresponding+-- intent slot, @glutenIntolerant@ to @true@. You might find John\'s phone+-- number and set the corresponding session attribute.+--+-- 'fulfillmentCodeHook', 'createIntent_fulfillmentCodeHook' - Specifies that Amazon Lex invokes the alias Lambda function when the+-- intent is ready for fulfillment. You can invoke this function to+-- complete the bot\'s transaction with the user.+--+-- For example, in a pizza ordering bot, the Lambda function can look up+-- the closest pizza restaurant to the customer\'s location and then place+-- an order on the customer\'s behalf.+--+-- 'initialResponseSetting', 'createIntent_initialResponseSetting' - Configuration settings for the response that is sent to the user at the+-- beginning of a conversation, before eliciting slot values.+--+-- 'inputContexts', 'createIntent_inputContexts' - A list of contexts that must be active for this intent to be considered+-- by Amazon Lex.+--+-- When an intent has an input context list, Amazon Lex only considers+-- using the intent in an interaction with the user when the specified+-- contexts are included in the active context list for the session. If the+-- contexts are not active, then Amazon Lex will not use the intent.+--+-- A context can be automatically activated using the @outputContexts@+-- property or it can be set at runtime.+--+-- For example, if there are two intents with different input contexts that+-- respond to the same utterances, only the intent with the active context+-- will respond.+--+-- An intent may have up to 5 input contexts. If an intent has multiple+-- input contexts, all of the contexts must be active to consider the+-- intent.+--+-- 'intentClosingSetting', 'createIntent_intentClosingSetting' - Sets the response that Amazon Lex sends to the user when the intent is+-- closed.+--+-- 'intentConfirmationSetting', 'createIntent_intentConfirmationSetting' - Provides prompts that Amazon Lex sends to the user to confirm the+-- completion of an intent. If the user answers \"no,\" the settings+-- contain a statement that is sent to the user to end the intent.+--+-- 'kendraConfiguration', 'createIntent_kendraConfiguration' - Configuration information required to use the+-- @AMAZON.KendraSearchIntent@ intent to connect to an Amazon Kendra index.+-- The @AMAZON.KendraSearchIntent@ intent is called when Amazon Lex can\'t+-- determine another intent to invoke.+--+-- 'outputContexts', 'createIntent_outputContexts' - A lists of contexts that the intent activates when it is fulfilled.+--+-- You can use an output context to indicate the intents that Amazon Lex+-- should consider for the next turn of the conversation with a customer.+--+-- When you use the @outputContextsList@ property, all of the contexts+-- specified in the list are activated when the intent is fulfilled. You+-- can set up to 10 output contexts. You can also set the number of+-- conversation turns that the context should be active, or the length of+-- time that the context should be active.+--+-- 'parentIntentSignature', 'createIntent_parentIntentSignature' - A unique identifier for the built-in intent to base this intent on.+--+-- 'sampleUtterances', 'createIntent_sampleUtterances' - An array of strings that a user might say to signal the intent. For+-- example, \"I want a pizza\", or \"I want a {PizzaSize} pizza\".+--+-- In an utterance, slot names are enclosed in curly braces (\"{\", \"}\")+-- to indicate where they should be displayed in the utterance shown to the+-- user..+--+-- 'intentName', 'createIntent_intentName' - The name of the intent. Intent names must be unique in the locale that+-- contains the intent and cannot match the name of any built-in intent.+--+-- 'botId', 'createIntent_botId' - The identifier of the bot associated with this intent.+--+-- 'botVersion', 'createIntent_botVersion' - The identifier of the version of the bot associated with this intent.+--+-- 'localeId', 'createIntent_localeId' - The identifier of the language and locale where this intent is used. All+-- of the bots, slot types, and slots used by the intent must have the same+-- locale. For more information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+newCreateIntent ::+ -- | 'intentName'+ Prelude.Text ->+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ -- | 'localeId'+ Prelude.Text ->+ CreateIntent+newCreateIntent+ pIntentName_+ pBotId_+ pBotVersion_+ pLocaleId_ =+ CreateIntent'+ { description = Prelude.Nothing,+ dialogCodeHook = Prelude.Nothing,+ fulfillmentCodeHook = Prelude.Nothing,+ initialResponseSetting = Prelude.Nothing,+ inputContexts = Prelude.Nothing,+ intentClosingSetting = Prelude.Nothing,+ intentConfirmationSetting = Prelude.Nothing,+ kendraConfiguration = Prelude.Nothing,+ outputContexts = Prelude.Nothing,+ parentIntentSignature = Prelude.Nothing,+ sampleUtterances = Prelude.Nothing,+ intentName = pIntentName_,+ botId = pBotId_,+ botVersion = pBotVersion_,+ localeId = pLocaleId_+ }++-- | A description of the intent. Use the description to help identify the+-- intent in lists.+createIntent_description :: Lens.Lens' CreateIntent (Prelude.Maybe Prelude.Text)+createIntent_description = Lens.lens (\CreateIntent' {description} -> description) (\s@CreateIntent' {} a -> s {description = a} :: CreateIntent)++-- | Specifies that Amazon Lex invokes the alias Lambda function for each+-- user input. You can invoke this Lambda function to personalize user+-- interaction.+--+-- For example, suppose that your bot determines that the user\'s name is+-- John. You Lambda function might retrieve John\'s information from a+-- backend database and prepopulate some of the values. For example, if you+-- find that John is gluten intolerant, you might set the corresponding+-- intent slot, @glutenIntolerant@ to @true@. You might find John\'s phone+-- number and set the corresponding session attribute.+createIntent_dialogCodeHook :: Lens.Lens' CreateIntent (Prelude.Maybe DialogCodeHookSettings)+createIntent_dialogCodeHook = Lens.lens (\CreateIntent' {dialogCodeHook} -> dialogCodeHook) (\s@CreateIntent' {} a -> s {dialogCodeHook = a} :: CreateIntent)++-- | Specifies that Amazon Lex invokes the alias Lambda function when the+-- intent is ready for fulfillment. You can invoke this function to+-- complete the bot\'s transaction with the user.+--+-- For example, in a pizza ordering bot, the Lambda function can look up+-- the closest pizza restaurant to the customer\'s location and then place+-- an order on the customer\'s behalf.+createIntent_fulfillmentCodeHook :: Lens.Lens' CreateIntent (Prelude.Maybe FulfillmentCodeHookSettings)+createIntent_fulfillmentCodeHook = Lens.lens (\CreateIntent' {fulfillmentCodeHook} -> fulfillmentCodeHook) (\s@CreateIntent' {} a -> s {fulfillmentCodeHook = a} :: CreateIntent)++-- | Configuration settings for the response that is sent to the user at the+-- beginning of a conversation, before eliciting slot values.+createIntent_initialResponseSetting :: Lens.Lens' CreateIntent (Prelude.Maybe InitialResponseSetting)+createIntent_initialResponseSetting = Lens.lens (\CreateIntent' {initialResponseSetting} -> initialResponseSetting) (\s@CreateIntent' {} a -> s {initialResponseSetting = a} :: CreateIntent)++-- | A list of contexts that must be active for this intent to be considered+-- by Amazon Lex.+--+-- When an intent has an input context list, Amazon Lex only considers+-- using the intent in an interaction with the user when the specified+-- contexts are included in the active context list for the session. If the+-- contexts are not active, then Amazon Lex will not use the intent.+--+-- A context can be automatically activated using the @outputContexts@+-- property or it can be set at runtime.+--+-- For example, if there are two intents with different input contexts that+-- respond to the same utterances, only the intent with the active context+-- will respond.+--+-- An intent may have up to 5 input contexts. If an intent has multiple+-- input contexts, all of the contexts must be active to consider the+-- intent.+createIntent_inputContexts :: Lens.Lens' CreateIntent (Prelude.Maybe [InputContext])+createIntent_inputContexts = Lens.lens (\CreateIntent' {inputContexts} -> inputContexts) (\s@CreateIntent' {} a -> s {inputContexts = a} :: CreateIntent) Prelude.. Lens.mapping Lens.coerced++-- | Sets the response that Amazon Lex sends to the user when the intent is+-- closed.+createIntent_intentClosingSetting :: Lens.Lens' CreateIntent (Prelude.Maybe IntentClosingSetting)+createIntent_intentClosingSetting = Lens.lens (\CreateIntent' {intentClosingSetting} -> intentClosingSetting) (\s@CreateIntent' {} a -> s {intentClosingSetting = a} :: CreateIntent)++-- | Provides prompts that Amazon Lex sends to the user to confirm the+-- completion of an intent. If the user answers \"no,\" the settings+-- contain a statement that is sent to the user to end the intent.+createIntent_intentConfirmationSetting :: Lens.Lens' CreateIntent (Prelude.Maybe IntentConfirmationSetting)+createIntent_intentConfirmationSetting = Lens.lens (\CreateIntent' {intentConfirmationSetting} -> intentConfirmationSetting) (\s@CreateIntent' {} a -> s {intentConfirmationSetting = a} :: CreateIntent)++-- | Configuration information required to use the+-- @AMAZON.KendraSearchIntent@ intent to connect to an Amazon Kendra index.+-- The @AMAZON.KendraSearchIntent@ intent is called when Amazon Lex can\'t+-- determine another intent to invoke.+createIntent_kendraConfiguration :: Lens.Lens' CreateIntent (Prelude.Maybe KendraConfiguration)+createIntent_kendraConfiguration = Lens.lens (\CreateIntent' {kendraConfiguration} -> kendraConfiguration) (\s@CreateIntent' {} a -> s {kendraConfiguration = a} :: CreateIntent)++-- | A lists of contexts that the intent activates when it is fulfilled.+--+-- You can use an output context to indicate the intents that Amazon Lex+-- should consider for the next turn of the conversation with a customer.+--+-- When you use the @outputContextsList@ property, all of the contexts+-- specified in the list are activated when the intent is fulfilled. You+-- can set up to 10 output contexts. You can also set the number of+-- conversation turns that the context should be active, or the length of+-- time that the context should be active.+createIntent_outputContexts :: Lens.Lens' CreateIntent (Prelude.Maybe [OutputContext])+createIntent_outputContexts = Lens.lens (\CreateIntent' {outputContexts} -> outputContexts) (\s@CreateIntent' {} a -> s {outputContexts = a} :: CreateIntent) Prelude.. Lens.mapping Lens.coerced++-- | A unique identifier for the built-in intent to base this intent on.+createIntent_parentIntentSignature :: Lens.Lens' CreateIntent (Prelude.Maybe Prelude.Text)+createIntent_parentIntentSignature = Lens.lens (\CreateIntent' {parentIntentSignature} -> parentIntentSignature) (\s@CreateIntent' {} a -> s {parentIntentSignature = a} :: CreateIntent)++-- | An array of strings that a user might say to signal the intent. For+-- example, \"I want a pizza\", or \"I want a {PizzaSize} pizza\".+--+-- In an utterance, slot names are enclosed in curly braces (\"{\", \"}\")+-- to indicate where they should be displayed in the utterance shown to the+-- user..+createIntent_sampleUtterances :: Lens.Lens' CreateIntent (Prelude.Maybe [SampleUtterance])+createIntent_sampleUtterances = Lens.lens (\CreateIntent' {sampleUtterances} -> sampleUtterances) (\s@CreateIntent' {} a -> s {sampleUtterances = a} :: CreateIntent) Prelude.. Lens.mapping Lens.coerced++-- | The name of the intent. Intent names must be unique in the locale that+-- contains the intent and cannot match the name of any built-in intent.+createIntent_intentName :: Lens.Lens' CreateIntent Prelude.Text+createIntent_intentName = Lens.lens (\CreateIntent' {intentName} -> intentName) (\s@CreateIntent' {} a -> s {intentName = a} :: CreateIntent)++-- | The identifier of the bot associated with this intent.+createIntent_botId :: Lens.Lens' CreateIntent Prelude.Text+createIntent_botId = Lens.lens (\CreateIntent' {botId} -> botId) (\s@CreateIntent' {} a -> s {botId = a} :: CreateIntent)++-- | The identifier of the version of the bot associated with this intent.+createIntent_botVersion :: Lens.Lens' CreateIntent Prelude.Text+createIntent_botVersion = Lens.lens (\CreateIntent' {botVersion} -> botVersion) (\s@CreateIntent' {} a -> s {botVersion = a} :: CreateIntent)++-- | The identifier of the language and locale where this intent is used. All+-- of the bots, slot types, and slots used by the intent must have the same+-- locale. For more information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+createIntent_localeId :: Lens.Lens' CreateIntent Prelude.Text+createIntent_localeId = Lens.lens (\CreateIntent' {localeId} -> localeId) (\s@CreateIntent' {} a -> s {localeId = a} :: CreateIntent)++instance Core.AWSRequest CreateIntent where+ type AWSResponse CreateIntent = CreateIntentResponse+ request overrides =+ Request.putJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateIntentResponse'+ Prelude.<$> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botVersion")+ Prelude.<*> (x Data..?> "creationDateTime")+ Prelude.<*> (x Data..?> "description")+ Prelude.<*> (x Data..?> "dialogCodeHook")+ Prelude.<*> (x Data..?> "fulfillmentCodeHook")+ Prelude.<*> (x Data..?> "initialResponseSetting")+ Prelude.<*> (x Data..?> "inputContexts" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "intentClosingSetting")+ Prelude.<*> (x Data..?> "intentConfirmationSetting")+ Prelude.<*> (x Data..?> "intentId")+ Prelude.<*> (x Data..?> "intentName")+ Prelude.<*> (x Data..?> "kendraConfiguration")+ Prelude.<*> (x Data..?> "localeId")+ Prelude.<*> (x Data..?> "outputContexts" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "parentIntentSignature")+ Prelude.<*> ( x+ Data..?> "sampleUtterances"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateIntent where+ hashWithSalt _salt CreateIntent' {..} =+ _salt+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` dialogCodeHook+ `Prelude.hashWithSalt` fulfillmentCodeHook+ `Prelude.hashWithSalt` initialResponseSetting+ `Prelude.hashWithSalt` inputContexts+ `Prelude.hashWithSalt` intentClosingSetting+ `Prelude.hashWithSalt` intentConfirmationSetting+ `Prelude.hashWithSalt` kendraConfiguration+ `Prelude.hashWithSalt` outputContexts+ `Prelude.hashWithSalt` parentIntentSignature+ `Prelude.hashWithSalt` sampleUtterances+ `Prelude.hashWithSalt` intentName+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` localeId++instance Prelude.NFData CreateIntent where+ rnf CreateIntent' {..} =+ Prelude.rnf description+ `Prelude.seq` Prelude.rnf dialogCodeHook+ `Prelude.seq` Prelude.rnf fulfillmentCodeHook+ `Prelude.seq` Prelude.rnf initialResponseSetting+ `Prelude.seq` Prelude.rnf inputContexts+ `Prelude.seq` Prelude.rnf intentClosingSetting+ `Prelude.seq` Prelude.rnf intentConfirmationSetting+ `Prelude.seq` Prelude.rnf kendraConfiguration+ `Prelude.seq` Prelude.rnf outputContexts+ `Prelude.seq` Prelude.rnf parentIntentSignature+ `Prelude.seq` Prelude.rnf sampleUtterances+ `Prelude.seq` Prelude.rnf intentName+ `Prelude.seq` Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId++instance Data.ToHeaders CreateIntent where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateIntent where+ toJSON CreateIntent' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("description" Data..=) Prelude.<$> description,+ ("dialogCodeHook" Data..=)+ Prelude.<$> dialogCodeHook,+ ("fulfillmentCodeHook" Data..=)+ Prelude.<$> fulfillmentCodeHook,+ ("initialResponseSetting" Data..=)+ Prelude.<$> initialResponseSetting,+ ("inputContexts" Data..=) Prelude.<$> inputContexts,+ ("intentClosingSetting" Data..=)+ Prelude.<$> intentClosingSetting,+ ("intentConfirmationSetting" Data..=)+ Prelude.<$> intentConfirmationSetting,+ ("kendraConfiguration" Data..=)+ Prelude.<$> kendraConfiguration,+ ("outputContexts" Data..=)+ Prelude.<$> outputContexts,+ ("parentIntentSignature" Data..=)+ Prelude.<$> parentIntentSignature,+ ("sampleUtterances" Data..=)+ Prelude.<$> sampleUtterances,+ Prelude.Just ("intentName" Data..= intentName)+ ]+ )++instance Data.ToPath CreateIntent where+ toPath CreateIntent' {..} =+ Prelude.mconcat+ [ "/bots/",+ Data.toBS botId,+ "/botversions/",+ Data.toBS botVersion,+ "/botlocales/",+ Data.toBS localeId,+ "/intents/"+ ]++instance Data.ToQuery CreateIntent where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateIntentResponse' smart constructor.+data CreateIntentResponse = CreateIntentResponse'+ { -- | The identifier of the bot associated with the intent.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The identifier of the version of the bot associated with the intent.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | A timestamp of the date and time that the intent was created.+ creationDateTime :: Prelude.Maybe Data.POSIX,+ -- | The description specified for the intent.+ description :: Prelude.Maybe Prelude.Text,+ -- | The dialog Lambda function specified for the intent.+ dialogCodeHook :: Prelude.Maybe DialogCodeHookSettings,+ -- | The fulfillment Lambda function specified for the intent.+ fulfillmentCodeHook :: Prelude.Maybe FulfillmentCodeHookSettings,+ -- | Configuration settings for the response that is sent to the user at the+ -- beginning of a conversation, before eliciting slot values.+ initialResponseSetting :: Prelude.Maybe InitialResponseSetting,+ -- | The list of input contexts specified for the intent.+ inputContexts :: Prelude.Maybe [InputContext],+ -- | The closing setting specified for the intent.+ intentClosingSetting :: Prelude.Maybe IntentClosingSetting,+ -- | The confirmation setting specified for the intent.+ intentConfirmationSetting :: Prelude.Maybe IntentConfirmationSetting,+ -- | A unique identifier for the intent.+ intentId :: Prelude.Maybe Prelude.Text,+ -- | The name specified for the intent.+ intentName :: Prelude.Maybe Prelude.Text,+ -- | Configuration for searching a Amazon Kendra index specified for the+ -- intent.+ kendraConfiguration :: Prelude.Maybe KendraConfiguration,+ -- | The locale that the intent is specified to use.+ localeId :: Prelude.Maybe Prelude.Text,+ -- | The list of output contexts specified for the intent.+ outputContexts :: Prelude.Maybe [OutputContext],+ -- | The signature of the parent intent specified for the intent.+ parentIntentSignature :: Prelude.Maybe Prelude.Text,+ -- | The sample utterances specified for the intent.+ sampleUtterances :: Prelude.Maybe [SampleUtterance],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateIntentResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'createIntentResponse_botId' - The identifier of the bot associated with the intent.+--+-- 'botVersion', 'createIntentResponse_botVersion' - The identifier of the version of the bot associated with the intent.+--+-- 'creationDateTime', 'createIntentResponse_creationDateTime' - A timestamp of the date and time that the intent was created.+--+-- 'description', 'createIntentResponse_description' - The description specified for the intent.+--+-- 'dialogCodeHook', 'createIntentResponse_dialogCodeHook' - The dialog Lambda function specified for the intent.+--+-- 'fulfillmentCodeHook', 'createIntentResponse_fulfillmentCodeHook' - The fulfillment Lambda function specified for the intent.+--+-- 'initialResponseSetting', 'createIntentResponse_initialResponseSetting' - Configuration settings for the response that is sent to the user at the+-- beginning of a conversation, before eliciting slot values.+--+-- 'inputContexts', 'createIntentResponse_inputContexts' - The list of input contexts specified for the intent.+--+-- 'intentClosingSetting', 'createIntentResponse_intentClosingSetting' - The closing setting specified for the intent.+--+-- 'intentConfirmationSetting', 'createIntentResponse_intentConfirmationSetting' - The confirmation setting specified for the intent.+--+-- 'intentId', 'createIntentResponse_intentId' - A unique identifier for the intent.+--+-- 'intentName', 'createIntentResponse_intentName' - The name specified for the intent.+--+-- 'kendraConfiguration', 'createIntentResponse_kendraConfiguration' - Configuration for searching a Amazon Kendra index specified for the+-- intent.+--+-- 'localeId', 'createIntentResponse_localeId' - The locale that the intent is specified to use.+--+-- 'outputContexts', 'createIntentResponse_outputContexts' - The list of output contexts specified for the intent.+--+-- 'parentIntentSignature', 'createIntentResponse_parentIntentSignature' - The signature of the parent intent specified for the intent.+--+-- 'sampleUtterances', 'createIntentResponse_sampleUtterances' - The sample utterances specified for the intent.+--+-- 'httpStatus', 'createIntentResponse_httpStatus' - The response's http status code.+newCreateIntentResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateIntentResponse+newCreateIntentResponse pHttpStatus_ =+ CreateIntentResponse'+ { botId = Prelude.Nothing,+ botVersion = Prelude.Nothing,+ creationDateTime = Prelude.Nothing,+ description = Prelude.Nothing,+ dialogCodeHook = Prelude.Nothing,+ fulfillmentCodeHook = Prelude.Nothing,+ initialResponseSetting = Prelude.Nothing,+ inputContexts = Prelude.Nothing,+ intentClosingSetting = Prelude.Nothing,+ intentConfirmationSetting = Prelude.Nothing,+ intentId = Prelude.Nothing,+ intentName = Prelude.Nothing,+ kendraConfiguration = Prelude.Nothing,+ localeId = Prelude.Nothing,+ outputContexts = Prelude.Nothing,+ parentIntentSignature = Prelude.Nothing,+ sampleUtterances = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The identifier of the bot associated with the intent.+createIntentResponse_botId :: Lens.Lens' CreateIntentResponse (Prelude.Maybe Prelude.Text)+createIntentResponse_botId = Lens.lens (\CreateIntentResponse' {botId} -> botId) (\s@CreateIntentResponse' {} a -> s {botId = a} :: CreateIntentResponse)++-- | The identifier of the version of the bot associated with the intent.+createIntentResponse_botVersion :: Lens.Lens' CreateIntentResponse (Prelude.Maybe Prelude.Text)+createIntentResponse_botVersion = Lens.lens (\CreateIntentResponse' {botVersion} -> botVersion) (\s@CreateIntentResponse' {} a -> s {botVersion = a} :: CreateIntentResponse)++-- | A timestamp of the date and time that the intent was created.+createIntentResponse_creationDateTime :: Lens.Lens' CreateIntentResponse (Prelude.Maybe Prelude.UTCTime)+createIntentResponse_creationDateTime = Lens.lens (\CreateIntentResponse' {creationDateTime} -> creationDateTime) (\s@CreateIntentResponse' {} a -> s {creationDateTime = a} :: CreateIntentResponse) Prelude.. Lens.mapping Data._Time++-- | The description specified for the intent.+createIntentResponse_description :: Lens.Lens' CreateIntentResponse (Prelude.Maybe Prelude.Text)+createIntentResponse_description = Lens.lens (\CreateIntentResponse' {description} -> description) (\s@CreateIntentResponse' {} a -> s {description = a} :: CreateIntentResponse)++-- | The dialog Lambda function specified for the intent.+createIntentResponse_dialogCodeHook :: Lens.Lens' CreateIntentResponse (Prelude.Maybe DialogCodeHookSettings)+createIntentResponse_dialogCodeHook = Lens.lens (\CreateIntentResponse' {dialogCodeHook} -> dialogCodeHook) (\s@CreateIntentResponse' {} a -> s {dialogCodeHook = a} :: CreateIntentResponse)++-- | The fulfillment Lambda function specified for the intent.+createIntentResponse_fulfillmentCodeHook :: Lens.Lens' CreateIntentResponse (Prelude.Maybe FulfillmentCodeHookSettings)+createIntentResponse_fulfillmentCodeHook = Lens.lens (\CreateIntentResponse' {fulfillmentCodeHook} -> fulfillmentCodeHook) (\s@CreateIntentResponse' {} a -> s {fulfillmentCodeHook = a} :: CreateIntentResponse)++-- | Configuration settings for the response that is sent to the user at the+-- beginning of a conversation, before eliciting slot values.+createIntentResponse_initialResponseSetting :: Lens.Lens' CreateIntentResponse (Prelude.Maybe InitialResponseSetting)+createIntentResponse_initialResponseSetting = Lens.lens (\CreateIntentResponse' {initialResponseSetting} -> initialResponseSetting) (\s@CreateIntentResponse' {} a -> s {initialResponseSetting = a} :: CreateIntentResponse)++-- | The list of input contexts specified for the intent.+createIntentResponse_inputContexts :: Lens.Lens' CreateIntentResponse (Prelude.Maybe [InputContext])+createIntentResponse_inputContexts = Lens.lens (\CreateIntentResponse' {inputContexts} -> inputContexts) (\s@CreateIntentResponse' {} a -> s {inputContexts = a} :: CreateIntentResponse) Prelude.. Lens.mapping Lens.coerced++-- | The closing setting specified for the intent.+createIntentResponse_intentClosingSetting :: Lens.Lens' CreateIntentResponse (Prelude.Maybe IntentClosingSetting)+createIntentResponse_intentClosingSetting = Lens.lens (\CreateIntentResponse' {intentClosingSetting} -> intentClosingSetting) (\s@CreateIntentResponse' {} a -> s {intentClosingSetting = a} :: CreateIntentResponse)++-- | The confirmation setting specified for the intent.+createIntentResponse_intentConfirmationSetting :: Lens.Lens' CreateIntentResponse (Prelude.Maybe IntentConfirmationSetting)+createIntentResponse_intentConfirmationSetting = Lens.lens (\CreateIntentResponse' {intentConfirmationSetting} -> intentConfirmationSetting) (\s@CreateIntentResponse' {} a -> s {intentConfirmationSetting = a} :: CreateIntentResponse)++-- | A unique identifier for the intent.+createIntentResponse_intentId :: Lens.Lens' CreateIntentResponse (Prelude.Maybe Prelude.Text)+createIntentResponse_intentId = Lens.lens (\CreateIntentResponse' {intentId} -> intentId) (\s@CreateIntentResponse' {} a -> s {intentId = a} :: CreateIntentResponse)++-- | The name specified for the intent.+createIntentResponse_intentName :: Lens.Lens' CreateIntentResponse (Prelude.Maybe Prelude.Text)+createIntentResponse_intentName = Lens.lens (\CreateIntentResponse' {intentName} -> intentName) (\s@CreateIntentResponse' {} a -> s {intentName = a} :: CreateIntentResponse)++-- | Configuration for searching a Amazon Kendra index specified for the+-- intent.+createIntentResponse_kendraConfiguration :: Lens.Lens' CreateIntentResponse (Prelude.Maybe KendraConfiguration)+createIntentResponse_kendraConfiguration = Lens.lens (\CreateIntentResponse' {kendraConfiguration} -> kendraConfiguration) (\s@CreateIntentResponse' {} a -> s {kendraConfiguration = a} :: CreateIntentResponse)++-- | The locale that the intent is specified to use.+createIntentResponse_localeId :: Lens.Lens' CreateIntentResponse (Prelude.Maybe Prelude.Text)+createIntentResponse_localeId = Lens.lens (\CreateIntentResponse' {localeId} -> localeId) (\s@CreateIntentResponse' {} a -> s {localeId = a} :: CreateIntentResponse)++-- | The list of output contexts specified for the intent.+createIntentResponse_outputContexts :: Lens.Lens' CreateIntentResponse (Prelude.Maybe [OutputContext])+createIntentResponse_outputContexts = Lens.lens (\CreateIntentResponse' {outputContexts} -> outputContexts) (\s@CreateIntentResponse' {} a -> s {outputContexts = a} :: CreateIntentResponse) Prelude.. Lens.mapping Lens.coerced++-- | The signature of the parent intent specified for the intent.+createIntentResponse_parentIntentSignature :: Lens.Lens' CreateIntentResponse (Prelude.Maybe Prelude.Text)+createIntentResponse_parentIntentSignature = Lens.lens (\CreateIntentResponse' {parentIntentSignature} -> parentIntentSignature) (\s@CreateIntentResponse' {} a -> s {parentIntentSignature = a} :: CreateIntentResponse)++-- | The sample utterances specified for the intent.+createIntentResponse_sampleUtterances :: Lens.Lens' CreateIntentResponse (Prelude.Maybe [SampleUtterance])+createIntentResponse_sampleUtterances = Lens.lens (\CreateIntentResponse' {sampleUtterances} -> sampleUtterances) (\s@CreateIntentResponse' {} a -> s {sampleUtterances = a} :: CreateIntentResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+createIntentResponse_httpStatus :: Lens.Lens' CreateIntentResponse Prelude.Int+createIntentResponse_httpStatus = Lens.lens (\CreateIntentResponse' {httpStatus} -> httpStatus) (\s@CreateIntentResponse' {} a -> s {httpStatus = a} :: CreateIntentResponse)++instance Prelude.NFData CreateIntentResponse where+ rnf CreateIntentResponse' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf dialogCodeHook+ `Prelude.seq` Prelude.rnf fulfillmentCodeHook+ `Prelude.seq` Prelude.rnf initialResponseSetting+ `Prelude.seq` Prelude.rnf inputContexts+ `Prelude.seq` Prelude.rnf intentClosingSetting+ `Prelude.seq` Prelude.rnf intentConfirmationSetting+ `Prelude.seq` Prelude.rnf intentId+ `Prelude.seq` Prelude.rnf intentName+ `Prelude.seq` Prelude.rnf kendraConfiguration+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf outputContexts+ `Prelude.seq` Prelude.rnf parentIntentSignature+ `Prelude.seq` Prelude.rnf sampleUtterances+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/CreateResourcePolicy.hs view
@@ -0,0 +1,232 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.CreateResourcePolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates a new resource policy with the specified policy statements.+module Amazonka.LexV2Models.CreateResourcePolicy+ ( -- * Creating a Request+ CreateResourcePolicy (..),+ newCreateResourcePolicy,++ -- * Request Lenses+ createResourcePolicy_resourceArn,+ createResourcePolicy_policy,++ -- * Destructuring the Response+ CreateResourcePolicyResponse (..),+ newCreateResourcePolicyResponse,++ -- * Response Lenses+ createResourcePolicyResponse_resourceArn,+ createResourcePolicyResponse_revisionId,+ createResourcePolicyResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateResourcePolicy' smart constructor.+data CreateResourcePolicy = CreateResourcePolicy'+ { -- | The Amazon Resource Name (ARN) of the bot or bot alias that the resource+ -- policy is attached to.+ resourceArn :: Prelude.Text,+ -- | A resource policy to add to the resource. The policy is a JSON structure+ -- that contains one or more statements that define the policy. The policy+ -- must follow the IAM syntax. For more information about the contents of a+ -- JSON policy document, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies.html IAM JSON policy reference>+ -- .+ --+ -- If the policy isn\'t valid, Amazon Lex returns a validation exception.+ policy :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateResourcePolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'resourceArn', 'createResourcePolicy_resourceArn' - The Amazon Resource Name (ARN) of the bot or bot alias that the resource+-- policy is attached to.+--+-- 'policy', 'createResourcePolicy_policy' - A resource policy to add to the resource. The policy is a JSON structure+-- that contains one or more statements that define the policy. The policy+-- must follow the IAM syntax. For more information about the contents of a+-- JSON policy document, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies.html IAM JSON policy reference>+-- .+--+-- If the policy isn\'t valid, Amazon Lex returns a validation exception.+newCreateResourcePolicy ::+ -- | 'resourceArn'+ Prelude.Text ->+ -- | 'policy'+ Prelude.Text ->+ CreateResourcePolicy+newCreateResourcePolicy pResourceArn_ pPolicy_ =+ CreateResourcePolicy'+ { resourceArn = pResourceArn_,+ policy = pPolicy_+ }++-- | The Amazon Resource Name (ARN) of the bot or bot alias that the resource+-- policy is attached to.+createResourcePolicy_resourceArn :: Lens.Lens' CreateResourcePolicy Prelude.Text+createResourcePolicy_resourceArn = Lens.lens (\CreateResourcePolicy' {resourceArn} -> resourceArn) (\s@CreateResourcePolicy' {} a -> s {resourceArn = a} :: CreateResourcePolicy)++-- | A resource policy to add to the resource. The policy is a JSON structure+-- that contains one or more statements that define the policy. The policy+-- must follow the IAM syntax. For more information about the contents of a+-- JSON policy document, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies.html IAM JSON policy reference>+-- .+--+-- If the policy isn\'t valid, Amazon Lex returns a validation exception.+createResourcePolicy_policy :: Lens.Lens' CreateResourcePolicy Prelude.Text+createResourcePolicy_policy = Lens.lens (\CreateResourcePolicy' {policy} -> policy) (\s@CreateResourcePolicy' {} a -> s {policy = a} :: CreateResourcePolicy)++instance Core.AWSRequest CreateResourcePolicy where+ type+ AWSResponse CreateResourcePolicy =+ CreateResourcePolicyResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateResourcePolicyResponse'+ Prelude.<$> (x Data..?> "resourceArn")+ Prelude.<*> (x Data..?> "revisionId")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateResourcePolicy where+ hashWithSalt _salt CreateResourcePolicy' {..} =+ _salt+ `Prelude.hashWithSalt` resourceArn+ `Prelude.hashWithSalt` policy++instance Prelude.NFData CreateResourcePolicy where+ rnf CreateResourcePolicy' {..} =+ Prelude.rnf resourceArn+ `Prelude.seq` Prelude.rnf policy++instance Data.ToHeaders CreateResourcePolicy where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateResourcePolicy where+ toJSON CreateResourcePolicy' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("policy" Data..= policy)]+ )++instance Data.ToPath CreateResourcePolicy where+ toPath CreateResourcePolicy' {..} =+ Prelude.mconcat+ ["/policy/", Data.toBS resourceArn, "/"]++instance Data.ToQuery CreateResourcePolicy where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateResourcePolicyResponse' smart constructor.+data CreateResourcePolicyResponse = CreateResourcePolicyResponse'+ { -- | The Amazon Resource Name (ARN) of the bot or bot alias that the resource+ -- policy was attached to.+ resourceArn :: Prelude.Maybe Prelude.Text,+ -- | The current revision of the resource policy. Use the revision ID to make+ -- sure that you are updating the most current version of a resource policy+ -- when you add a policy statement to a resource, delete a resource, or+ -- update a resource.+ revisionId :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateResourcePolicyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'resourceArn', 'createResourcePolicyResponse_resourceArn' - The Amazon Resource Name (ARN) of the bot or bot alias that the resource+-- policy was attached to.+--+-- 'revisionId', 'createResourcePolicyResponse_revisionId' - The current revision of the resource policy. Use the revision ID to make+-- sure that you are updating the most current version of a resource policy+-- when you add a policy statement to a resource, delete a resource, or+-- update a resource.+--+-- 'httpStatus', 'createResourcePolicyResponse_httpStatus' - The response's http status code.+newCreateResourcePolicyResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateResourcePolicyResponse+newCreateResourcePolicyResponse pHttpStatus_ =+ CreateResourcePolicyResponse'+ { resourceArn =+ Prelude.Nothing,+ revisionId = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The Amazon Resource Name (ARN) of the bot or bot alias that the resource+-- policy was attached to.+createResourcePolicyResponse_resourceArn :: Lens.Lens' CreateResourcePolicyResponse (Prelude.Maybe Prelude.Text)+createResourcePolicyResponse_resourceArn = Lens.lens (\CreateResourcePolicyResponse' {resourceArn} -> resourceArn) (\s@CreateResourcePolicyResponse' {} a -> s {resourceArn = a} :: CreateResourcePolicyResponse)++-- | The current revision of the resource policy. Use the revision ID to make+-- sure that you are updating the most current version of a resource policy+-- when you add a policy statement to a resource, delete a resource, or+-- update a resource.+createResourcePolicyResponse_revisionId :: Lens.Lens' CreateResourcePolicyResponse (Prelude.Maybe Prelude.Text)+createResourcePolicyResponse_revisionId = Lens.lens (\CreateResourcePolicyResponse' {revisionId} -> revisionId) (\s@CreateResourcePolicyResponse' {} a -> s {revisionId = a} :: CreateResourcePolicyResponse)++-- | The response's http status code.+createResourcePolicyResponse_httpStatus :: Lens.Lens' CreateResourcePolicyResponse Prelude.Int+createResourcePolicyResponse_httpStatus = Lens.lens (\CreateResourcePolicyResponse' {httpStatus} -> httpStatus) (\s@CreateResourcePolicyResponse' {} a -> s {httpStatus = a} :: CreateResourcePolicyResponse)++instance Prelude.NFData CreateResourcePolicyResponse where+ rnf CreateResourcePolicyResponse' {..} =+ Prelude.rnf resourceArn+ `Prelude.seq` Prelude.rnf revisionId+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/CreateResourcePolicyStatement.hs view
@@ -0,0 +1,361 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.CreateResourcePolicyStatement+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Adds a new resource policy statement to a bot or bot alias. If a+-- resource policy exists, the statement is added to the current resource+-- policy. If a policy doesn\'t exist, a new policy is created.+--+-- You can\'t create a resource policy statement that allows cross-account+-- access.+module Amazonka.LexV2Models.CreateResourcePolicyStatement+ ( -- * Creating a Request+ CreateResourcePolicyStatement (..),+ newCreateResourcePolicyStatement,++ -- * Request Lenses+ createResourcePolicyStatement_condition,+ createResourcePolicyStatement_expectedRevisionId,+ createResourcePolicyStatement_resourceArn,+ createResourcePolicyStatement_statementId,+ createResourcePolicyStatement_effect,+ createResourcePolicyStatement_principal,+ createResourcePolicyStatement_action,++ -- * Destructuring the Response+ CreateResourcePolicyStatementResponse (..),+ newCreateResourcePolicyStatementResponse,++ -- * Response Lenses+ createResourcePolicyStatementResponse_resourceArn,+ createResourcePolicyStatementResponse_revisionId,+ createResourcePolicyStatementResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateResourcePolicyStatement' smart constructor.+data CreateResourcePolicyStatement = CreateResourcePolicyStatement'+ { -- | Specifies a condition when the policy is in effect. If the principal of+ -- the policy is a service principal, you must provide two condition+ -- blocks, one with a SourceAccount global condition key and one with a+ -- SourceArn global condition key.+ --+ -- For more information, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html IAM JSON policy elements: Condition>+ -- .+ condition :: Prelude.Maybe (Prelude.HashMap Prelude.Text (Prelude.HashMap Prelude.Text Prelude.Text)),+ -- | The identifier of the revision of the policy to edit. If this revision+ -- ID doesn\'t match the current revision ID, Amazon Lex throws an+ -- exception.+ --+ -- If you don\'t specify a revision, Amazon Lex overwrites the contents of+ -- the policy with the new values.+ expectedRevisionId :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the bot or bot alias that the resource+ -- policy is attached to.+ resourceArn :: Prelude.Text,+ -- | The name of the statement. The ID is the same as the @Sid@ IAM property.+ -- The statement name must be unique within the policy. For more+ -- information, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_sid.html IAM JSON policy elements: Sid>.+ statementId :: Prelude.Text,+ -- | Determines whether the statement allows or denies access to the+ -- resource.+ effect :: Effect,+ -- | An IAM principal, such as an IAM users, IAM roles, or AWS services that+ -- is allowed or denied access to a resource. For more information, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html AWS JSON policy elements: Principal>.+ principal :: [Principal],+ -- | The Amazon Lex action that this policy either allows or denies. The+ -- action must apply to the resource type of the specified ARN. For more+ -- information, see+ -- <https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonlexv2.html Actions, resources, and condition keys for Amazon Lex V2>.+ action :: [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateResourcePolicyStatement' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'condition', 'createResourcePolicyStatement_condition' - Specifies a condition when the policy is in effect. If the principal of+-- the policy is a service principal, you must provide two condition+-- blocks, one with a SourceAccount global condition key and one with a+-- SourceArn global condition key.+--+-- For more information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html IAM JSON policy elements: Condition>+-- .+--+-- 'expectedRevisionId', 'createResourcePolicyStatement_expectedRevisionId' - The identifier of the revision of the policy to edit. If this revision+-- ID doesn\'t match the current revision ID, Amazon Lex throws an+-- exception.+--+-- If you don\'t specify a revision, Amazon Lex overwrites the contents of+-- the policy with the new values.+--+-- 'resourceArn', 'createResourcePolicyStatement_resourceArn' - The Amazon Resource Name (ARN) of the bot or bot alias that the resource+-- policy is attached to.+--+-- 'statementId', 'createResourcePolicyStatement_statementId' - The name of the statement. The ID is the same as the @Sid@ IAM property.+-- The statement name must be unique within the policy. For more+-- information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_sid.html IAM JSON policy elements: Sid>.+--+-- 'effect', 'createResourcePolicyStatement_effect' - Determines whether the statement allows or denies access to the+-- resource.+--+-- 'principal', 'createResourcePolicyStatement_principal' - An IAM principal, such as an IAM users, IAM roles, or AWS services that+-- is allowed or denied access to a resource. For more information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html AWS JSON policy elements: Principal>.+--+-- 'action', 'createResourcePolicyStatement_action' - The Amazon Lex action that this policy either allows or denies. The+-- action must apply to the resource type of the specified ARN. For more+-- information, see+-- <https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonlexv2.html Actions, resources, and condition keys for Amazon Lex V2>.+newCreateResourcePolicyStatement ::+ -- | 'resourceArn'+ Prelude.Text ->+ -- | 'statementId'+ Prelude.Text ->+ -- | 'effect'+ Effect ->+ CreateResourcePolicyStatement+newCreateResourcePolicyStatement+ pResourceArn_+ pStatementId_+ pEffect_ =+ CreateResourcePolicyStatement'+ { condition =+ Prelude.Nothing,+ expectedRevisionId = Prelude.Nothing,+ resourceArn = pResourceArn_,+ statementId = pStatementId_,+ effect = pEffect_,+ principal = Prelude.mempty,+ action = Prelude.mempty+ }++-- | Specifies a condition when the policy is in effect. If the principal of+-- the policy is a service principal, you must provide two condition+-- blocks, one with a SourceAccount global condition key and one with a+-- SourceArn global condition key.+--+-- For more information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html IAM JSON policy elements: Condition>+-- .+createResourcePolicyStatement_condition :: Lens.Lens' CreateResourcePolicyStatement (Prelude.Maybe (Prelude.HashMap Prelude.Text (Prelude.HashMap Prelude.Text Prelude.Text)))+createResourcePolicyStatement_condition = Lens.lens (\CreateResourcePolicyStatement' {condition} -> condition) (\s@CreateResourcePolicyStatement' {} a -> s {condition = a} :: CreateResourcePolicyStatement) Prelude.. Lens.mapping Lens.coerced++-- | The identifier of the revision of the policy to edit. If this revision+-- ID doesn\'t match the current revision ID, Amazon Lex throws an+-- exception.+--+-- If you don\'t specify a revision, Amazon Lex overwrites the contents of+-- the policy with the new values.+createResourcePolicyStatement_expectedRevisionId :: Lens.Lens' CreateResourcePolicyStatement (Prelude.Maybe Prelude.Text)+createResourcePolicyStatement_expectedRevisionId = Lens.lens (\CreateResourcePolicyStatement' {expectedRevisionId} -> expectedRevisionId) (\s@CreateResourcePolicyStatement' {} a -> s {expectedRevisionId = a} :: CreateResourcePolicyStatement)++-- | The Amazon Resource Name (ARN) of the bot or bot alias that the resource+-- policy is attached to.+createResourcePolicyStatement_resourceArn :: Lens.Lens' CreateResourcePolicyStatement Prelude.Text+createResourcePolicyStatement_resourceArn = Lens.lens (\CreateResourcePolicyStatement' {resourceArn} -> resourceArn) (\s@CreateResourcePolicyStatement' {} a -> s {resourceArn = a} :: CreateResourcePolicyStatement)++-- | The name of the statement. The ID is the same as the @Sid@ IAM property.+-- The statement name must be unique within the policy. For more+-- information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_sid.html IAM JSON policy elements: Sid>.+createResourcePolicyStatement_statementId :: Lens.Lens' CreateResourcePolicyStatement Prelude.Text+createResourcePolicyStatement_statementId = Lens.lens (\CreateResourcePolicyStatement' {statementId} -> statementId) (\s@CreateResourcePolicyStatement' {} a -> s {statementId = a} :: CreateResourcePolicyStatement)++-- | Determines whether the statement allows or denies access to the+-- resource.+createResourcePolicyStatement_effect :: Lens.Lens' CreateResourcePolicyStatement Effect+createResourcePolicyStatement_effect = Lens.lens (\CreateResourcePolicyStatement' {effect} -> effect) (\s@CreateResourcePolicyStatement' {} a -> s {effect = a} :: CreateResourcePolicyStatement)++-- | An IAM principal, such as an IAM users, IAM roles, or AWS services that+-- is allowed or denied access to a resource. For more information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html AWS JSON policy elements: Principal>.+createResourcePolicyStatement_principal :: Lens.Lens' CreateResourcePolicyStatement [Principal]+createResourcePolicyStatement_principal = Lens.lens (\CreateResourcePolicyStatement' {principal} -> principal) (\s@CreateResourcePolicyStatement' {} a -> s {principal = a} :: CreateResourcePolicyStatement) Prelude.. Lens.coerced++-- | The Amazon Lex action that this policy either allows or denies. The+-- action must apply to the resource type of the specified ARN. For more+-- information, see+-- <https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonlexv2.html Actions, resources, and condition keys for Amazon Lex V2>.+createResourcePolicyStatement_action :: Lens.Lens' CreateResourcePolicyStatement [Prelude.Text]+createResourcePolicyStatement_action = Lens.lens (\CreateResourcePolicyStatement' {action} -> action) (\s@CreateResourcePolicyStatement' {} a -> s {action = a} :: CreateResourcePolicyStatement) Prelude.. Lens.coerced++instance+ Core.AWSRequest+ CreateResourcePolicyStatement+ where+ type+ AWSResponse CreateResourcePolicyStatement =+ CreateResourcePolicyStatementResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateResourcePolicyStatementResponse'+ Prelude.<$> (x Data..?> "resourceArn")+ Prelude.<*> (x Data..?> "revisionId")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ CreateResourcePolicyStatement+ where+ hashWithSalt _salt CreateResourcePolicyStatement' {..} =+ _salt+ `Prelude.hashWithSalt` condition+ `Prelude.hashWithSalt` expectedRevisionId+ `Prelude.hashWithSalt` resourceArn+ `Prelude.hashWithSalt` statementId+ `Prelude.hashWithSalt` effect+ `Prelude.hashWithSalt` principal+ `Prelude.hashWithSalt` action++instance Prelude.NFData CreateResourcePolicyStatement where+ rnf CreateResourcePolicyStatement' {..} =+ Prelude.rnf condition+ `Prelude.seq` Prelude.rnf expectedRevisionId+ `Prelude.seq` Prelude.rnf resourceArn+ `Prelude.seq` Prelude.rnf statementId+ `Prelude.seq` Prelude.rnf effect+ `Prelude.seq` Prelude.rnf principal+ `Prelude.seq` Prelude.rnf action++instance Data.ToHeaders CreateResourcePolicyStatement where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateResourcePolicyStatement where+ toJSON CreateResourcePolicyStatement' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("condition" Data..=) Prelude.<$> condition,+ Prelude.Just ("statementId" Data..= statementId),+ Prelude.Just ("effect" Data..= effect),+ Prelude.Just ("principal" Data..= principal),+ Prelude.Just ("action" Data..= action)+ ]+ )++instance Data.ToPath CreateResourcePolicyStatement where+ toPath CreateResourcePolicyStatement' {..} =+ Prelude.mconcat+ ["/policy/", Data.toBS resourceArn, "/statements/"]++instance Data.ToQuery CreateResourcePolicyStatement where+ toQuery CreateResourcePolicyStatement' {..} =+ Prelude.mconcat+ ["expectedRevisionId" Data.=: expectedRevisionId]++-- | /See:/ 'newCreateResourcePolicyStatementResponse' smart constructor.+data CreateResourcePolicyStatementResponse = CreateResourcePolicyStatementResponse'+ { -- | The Amazon Resource Name (ARN) of the bot or bot alias that the resource+ -- policy is attached to.+ resourceArn :: Prelude.Maybe Prelude.Text,+ -- | The current revision of the resource policy. Use the revision ID to make+ -- sure that you are updating the most current version of a resource policy+ -- when you add a policy statement to a resource, delete a resource, or+ -- update a resource.+ revisionId :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateResourcePolicyStatementResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'resourceArn', 'createResourcePolicyStatementResponse_resourceArn' - The Amazon Resource Name (ARN) of the bot or bot alias that the resource+-- policy is attached to.+--+-- 'revisionId', 'createResourcePolicyStatementResponse_revisionId' - The current revision of the resource policy. Use the revision ID to make+-- sure that you are updating the most current version of a resource policy+-- when you add a policy statement to a resource, delete a resource, or+-- update a resource.+--+-- 'httpStatus', 'createResourcePolicyStatementResponse_httpStatus' - The response's http status code.+newCreateResourcePolicyStatementResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateResourcePolicyStatementResponse+newCreateResourcePolicyStatementResponse pHttpStatus_ =+ CreateResourcePolicyStatementResponse'+ { resourceArn =+ Prelude.Nothing,+ revisionId = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The Amazon Resource Name (ARN) of the bot or bot alias that the resource+-- policy is attached to.+createResourcePolicyStatementResponse_resourceArn :: Lens.Lens' CreateResourcePolicyStatementResponse (Prelude.Maybe Prelude.Text)+createResourcePolicyStatementResponse_resourceArn = Lens.lens (\CreateResourcePolicyStatementResponse' {resourceArn} -> resourceArn) (\s@CreateResourcePolicyStatementResponse' {} a -> s {resourceArn = a} :: CreateResourcePolicyStatementResponse)++-- | The current revision of the resource policy. Use the revision ID to make+-- sure that you are updating the most current version of a resource policy+-- when you add a policy statement to a resource, delete a resource, or+-- update a resource.+createResourcePolicyStatementResponse_revisionId :: Lens.Lens' CreateResourcePolicyStatementResponse (Prelude.Maybe Prelude.Text)+createResourcePolicyStatementResponse_revisionId = Lens.lens (\CreateResourcePolicyStatementResponse' {revisionId} -> revisionId) (\s@CreateResourcePolicyStatementResponse' {} a -> s {revisionId = a} :: CreateResourcePolicyStatementResponse)++-- | The response's http status code.+createResourcePolicyStatementResponse_httpStatus :: Lens.Lens' CreateResourcePolicyStatementResponse Prelude.Int+createResourcePolicyStatementResponse_httpStatus = Lens.lens (\CreateResourcePolicyStatementResponse' {httpStatus} -> httpStatus) (\s@CreateResourcePolicyStatementResponse' {} a -> s {httpStatus = a} :: CreateResourcePolicyStatementResponse)++instance+ Prelude.NFData+ CreateResourcePolicyStatementResponse+ where+ rnf CreateResourcePolicyStatementResponse' {..} =+ Prelude.rnf resourceArn+ `Prelude.seq` Prelude.rnf revisionId+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/CreateSlot.hs view
@@ -0,0 +1,535 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.CreateSlot+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates a slot in an intent. A slot is a variable needed to fulfill an+-- intent. For example, an @OrderPizza@ intent might need slots for size,+-- crust, and number of pizzas. For each slot, you define one or more+-- utterances that Amazon Lex uses to elicit a response from the user.+module Amazonka.LexV2Models.CreateSlot+ ( -- * Creating a Request+ CreateSlot (..),+ newCreateSlot,++ -- * Request Lenses+ createSlot_description,+ createSlot_multipleValuesSetting,+ createSlot_obfuscationSetting,+ createSlot_slotTypeId,+ createSlot_subSlotSetting,+ createSlot_slotName,+ createSlot_valueElicitationSetting,+ createSlot_botId,+ createSlot_botVersion,+ createSlot_localeId,+ createSlot_intentId,++ -- * Destructuring the Response+ CreateSlotResponse (..),+ newCreateSlotResponse,++ -- * Response Lenses+ createSlotResponse_botId,+ createSlotResponse_botVersion,+ createSlotResponse_creationDateTime,+ createSlotResponse_description,+ createSlotResponse_intentId,+ createSlotResponse_localeId,+ createSlotResponse_multipleValuesSetting,+ createSlotResponse_obfuscationSetting,+ createSlotResponse_slotId,+ createSlotResponse_slotName,+ createSlotResponse_slotTypeId,+ createSlotResponse_subSlotSetting,+ createSlotResponse_valueElicitationSetting,+ createSlotResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateSlot' smart constructor.+data CreateSlot = CreateSlot'+ { -- | A description of the slot. Use this to help identify the slot in lists.+ description :: Prelude.Maybe Prelude.Text,+ -- | Indicates whether the slot returns multiple values in one response.+ -- Multi-value slots are only available in the en-US locale. If you set+ -- this value to @true@ in any other locale, Amazon Lex throws a+ -- @ValidationException@.+ --+ -- If the @multipleValuesSetting@ is not set, the default value is @false@.+ multipleValuesSetting :: Prelude.Maybe MultipleValuesSetting,+ -- | Determines how slot values are used in Amazon CloudWatch logs. If the+ -- value of the @obfuscationSetting@ parameter is @DefaultObfuscation@,+ -- slot values are obfuscated in the log output. If the value is @None@,+ -- the actual value is present in the log output.+ --+ -- The default is to obfuscate values in the CloudWatch logs.+ obfuscationSetting :: Prelude.Maybe ObfuscationSetting,+ -- | The unique identifier for the slot type associated with this slot. The+ -- slot type determines the values that can be entered into the slot.+ slotTypeId :: Prelude.Maybe Prelude.Text,+ -- | Specifications for the constituent sub slots and the expression for the+ -- composite slot.+ subSlotSetting :: Prelude.Maybe SubSlotSetting,+ -- | The name of the slot. Slot names must be unique within the bot that+ -- contains the slot.+ slotName :: Prelude.Text,+ -- | Specifies prompts that Amazon Lex sends to the user to elicit a response+ -- that provides the value for the slot.+ valueElicitationSetting :: SlotValueElicitationSetting,+ -- | The identifier of the bot associated with the slot.+ botId :: Prelude.Text,+ -- | The version of the bot associated with the slot.+ botVersion :: Prelude.Text,+ -- | The identifier of the language and locale that the slot will be used in.+ -- The string must match one of the supported locales. All of the bots,+ -- intents, slot types used by the slot must have the same locale. For more+ -- information, see+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+ localeId :: Prelude.Text,+ -- | The identifier of the intent that contains the slot.+ intentId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateSlot' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'description', 'createSlot_description' - A description of the slot. Use this to help identify the slot in lists.+--+-- 'multipleValuesSetting', 'createSlot_multipleValuesSetting' - Indicates whether the slot returns multiple values in one response.+-- Multi-value slots are only available in the en-US locale. If you set+-- this value to @true@ in any other locale, Amazon Lex throws a+-- @ValidationException@.+--+-- If the @multipleValuesSetting@ is not set, the default value is @false@.+--+-- 'obfuscationSetting', 'createSlot_obfuscationSetting' - Determines how slot values are used in Amazon CloudWatch logs. If the+-- value of the @obfuscationSetting@ parameter is @DefaultObfuscation@,+-- slot values are obfuscated in the log output. If the value is @None@,+-- the actual value is present in the log output.+--+-- The default is to obfuscate values in the CloudWatch logs.+--+-- 'slotTypeId', 'createSlot_slotTypeId' - The unique identifier for the slot type associated with this slot. The+-- slot type determines the values that can be entered into the slot.+--+-- 'subSlotSetting', 'createSlot_subSlotSetting' - Specifications for the constituent sub slots and the expression for the+-- composite slot.+--+-- 'slotName', 'createSlot_slotName' - The name of the slot. Slot names must be unique within the bot that+-- contains the slot.+--+-- 'valueElicitationSetting', 'createSlot_valueElicitationSetting' - Specifies prompts that Amazon Lex sends to the user to elicit a response+-- that provides the value for the slot.+--+-- 'botId', 'createSlot_botId' - The identifier of the bot associated with the slot.+--+-- 'botVersion', 'createSlot_botVersion' - The version of the bot associated with the slot.+--+-- 'localeId', 'createSlot_localeId' - The identifier of the language and locale that the slot will be used in.+-- The string must match one of the supported locales. All of the bots,+-- intents, slot types used by the slot must have the same locale. For more+-- information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+--+-- 'intentId', 'createSlot_intentId' - The identifier of the intent that contains the slot.+newCreateSlot ::+ -- | 'slotName'+ Prelude.Text ->+ -- | 'valueElicitationSetting'+ SlotValueElicitationSetting ->+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ -- | 'localeId'+ Prelude.Text ->+ -- | 'intentId'+ Prelude.Text ->+ CreateSlot+newCreateSlot+ pSlotName_+ pValueElicitationSetting_+ pBotId_+ pBotVersion_+ pLocaleId_+ pIntentId_ =+ CreateSlot'+ { description = Prelude.Nothing,+ multipleValuesSetting = Prelude.Nothing,+ obfuscationSetting = Prelude.Nothing,+ slotTypeId = Prelude.Nothing,+ subSlotSetting = Prelude.Nothing,+ slotName = pSlotName_,+ valueElicitationSetting = pValueElicitationSetting_,+ botId = pBotId_,+ botVersion = pBotVersion_,+ localeId = pLocaleId_,+ intentId = pIntentId_+ }++-- | A description of the slot. Use this to help identify the slot in lists.+createSlot_description :: Lens.Lens' CreateSlot (Prelude.Maybe Prelude.Text)+createSlot_description = Lens.lens (\CreateSlot' {description} -> description) (\s@CreateSlot' {} a -> s {description = a} :: CreateSlot)++-- | Indicates whether the slot returns multiple values in one response.+-- Multi-value slots are only available in the en-US locale. If you set+-- this value to @true@ in any other locale, Amazon Lex throws a+-- @ValidationException@.+--+-- If the @multipleValuesSetting@ is not set, the default value is @false@.+createSlot_multipleValuesSetting :: Lens.Lens' CreateSlot (Prelude.Maybe MultipleValuesSetting)+createSlot_multipleValuesSetting = Lens.lens (\CreateSlot' {multipleValuesSetting} -> multipleValuesSetting) (\s@CreateSlot' {} a -> s {multipleValuesSetting = a} :: CreateSlot)++-- | Determines how slot values are used in Amazon CloudWatch logs. If the+-- value of the @obfuscationSetting@ parameter is @DefaultObfuscation@,+-- slot values are obfuscated in the log output. If the value is @None@,+-- the actual value is present in the log output.+--+-- The default is to obfuscate values in the CloudWatch logs.+createSlot_obfuscationSetting :: Lens.Lens' CreateSlot (Prelude.Maybe ObfuscationSetting)+createSlot_obfuscationSetting = Lens.lens (\CreateSlot' {obfuscationSetting} -> obfuscationSetting) (\s@CreateSlot' {} a -> s {obfuscationSetting = a} :: CreateSlot)++-- | The unique identifier for the slot type associated with this slot. The+-- slot type determines the values that can be entered into the slot.+createSlot_slotTypeId :: Lens.Lens' CreateSlot (Prelude.Maybe Prelude.Text)+createSlot_slotTypeId = Lens.lens (\CreateSlot' {slotTypeId} -> slotTypeId) (\s@CreateSlot' {} a -> s {slotTypeId = a} :: CreateSlot)++-- | Specifications for the constituent sub slots and the expression for the+-- composite slot.+createSlot_subSlotSetting :: Lens.Lens' CreateSlot (Prelude.Maybe SubSlotSetting)+createSlot_subSlotSetting = Lens.lens (\CreateSlot' {subSlotSetting} -> subSlotSetting) (\s@CreateSlot' {} a -> s {subSlotSetting = a} :: CreateSlot)++-- | The name of the slot. Slot names must be unique within the bot that+-- contains the slot.+createSlot_slotName :: Lens.Lens' CreateSlot Prelude.Text+createSlot_slotName = Lens.lens (\CreateSlot' {slotName} -> slotName) (\s@CreateSlot' {} a -> s {slotName = a} :: CreateSlot)++-- | Specifies prompts that Amazon Lex sends to the user to elicit a response+-- that provides the value for the slot.+createSlot_valueElicitationSetting :: Lens.Lens' CreateSlot SlotValueElicitationSetting+createSlot_valueElicitationSetting = Lens.lens (\CreateSlot' {valueElicitationSetting} -> valueElicitationSetting) (\s@CreateSlot' {} a -> s {valueElicitationSetting = a} :: CreateSlot)++-- | The identifier of the bot associated with the slot.+createSlot_botId :: Lens.Lens' CreateSlot Prelude.Text+createSlot_botId = Lens.lens (\CreateSlot' {botId} -> botId) (\s@CreateSlot' {} a -> s {botId = a} :: CreateSlot)++-- | The version of the bot associated with the slot.+createSlot_botVersion :: Lens.Lens' CreateSlot Prelude.Text+createSlot_botVersion = Lens.lens (\CreateSlot' {botVersion} -> botVersion) (\s@CreateSlot' {} a -> s {botVersion = a} :: CreateSlot)++-- | The identifier of the language and locale that the slot will be used in.+-- The string must match one of the supported locales. All of the bots,+-- intents, slot types used by the slot must have the same locale. For more+-- information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+createSlot_localeId :: Lens.Lens' CreateSlot Prelude.Text+createSlot_localeId = Lens.lens (\CreateSlot' {localeId} -> localeId) (\s@CreateSlot' {} a -> s {localeId = a} :: CreateSlot)++-- | The identifier of the intent that contains the slot.+createSlot_intentId :: Lens.Lens' CreateSlot Prelude.Text+createSlot_intentId = Lens.lens (\CreateSlot' {intentId} -> intentId) (\s@CreateSlot' {} a -> s {intentId = a} :: CreateSlot)++instance Core.AWSRequest CreateSlot where+ type AWSResponse CreateSlot = CreateSlotResponse+ request overrides =+ Request.putJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateSlotResponse'+ Prelude.<$> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botVersion")+ Prelude.<*> (x Data..?> "creationDateTime")+ Prelude.<*> (x Data..?> "description")+ Prelude.<*> (x Data..?> "intentId")+ Prelude.<*> (x Data..?> "localeId")+ Prelude.<*> (x Data..?> "multipleValuesSetting")+ Prelude.<*> (x Data..?> "obfuscationSetting")+ Prelude.<*> (x Data..?> "slotId")+ Prelude.<*> (x Data..?> "slotName")+ Prelude.<*> (x Data..?> "slotTypeId")+ Prelude.<*> (x Data..?> "subSlotSetting")+ Prelude.<*> (x Data..?> "valueElicitationSetting")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateSlot where+ hashWithSalt _salt CreateSlot' {..} =+ _salt+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` multipleValuesSetting+ `Prelude.hashWithSalt` obfuscationSetting+ `Prelude.hashWithSalt` slotTypeId+ `Prelude.hashWithSalt` subSlotSetting+ `Prelude.hashWithSalt` slotName+ `Prelude.hashWithSalt` valueElicitationSetting+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` localeId+ `Prelude.hashWithSalt` intentId++instance Prelude.NFData CreateSlot where+ rnf CreateSlot' {..} =+ Prelude.rnf description+ `Prelude.seq` Prelude.rnf multipleValuesSetting+ `Prelude.seq` Prelude.rnf obfuscationSetting+ `Prelude.seq` Prelude.rnf slotTypeId+ `Prelude.seq` Prelude.rnf subSlotSetting+ `Prelude.seq` Prelude.rnf slotName+ `Prelude.seq` Prelude.rnf valueElicitationSetting+ `Prelude.seq` Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf intentId++instance Data.ToHeaders CreateSlot where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateSlot where+ toJSON CreateSlot' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("description" Data..=) Prelude.<$> description,+ ("multipleValuesSetting" Data..=)+ Prelude.<$> multipleValuesSetting,+ ("obfuscationSetting" Data..=)+ Prelude.<$> obfuscationSetting,+ ("slotTypeId" Data..=) Prelude.<$> slotTypeId,+ ("subSlotSetting" Data..=)+ Prelude.<$> subSlotSetting,+ Prelude.Just ("slotName" Data..= slotName),+ Prelude.Just+ ( "valueElicitationSetting"+ Data..= valueElicitationSetting+ )+ ]+ )++instance Data.ToPath CreateSlot where+ toPath CreateSlot' {..} =+ Prelude.mconcat+ [ "/bots/",+ Data.toBS botId,+ "/botversions/",+ Data.toBS botVersion,+ "/botlocales/",+ Data.toBS localeId,+ "/intents/",+ Data.toBS intentId,+ "/slots/"+ ]++instance Data.ToQuery CreateSlot where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateSlotResponse' smart constructor.+data CreateSlotResponse = CreateSlotResponse'+ { -- | The unique identifier of the bot associated with the slot.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The version of the bot associated with the slot.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | The timestamp of the date and time that the slot was created.+ creationDateTime :: Prelude.Maybe Data.POSIX,+ -- | The description associated with the slot.+ description :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier of the intent associated with the slot.+ intentId :: Prelude.Maybe Prelude.Text,+ -- | The language and local specified for the slot.+ localeId :: Prelude.Maybe Prelude.Text,+ -- | Indicates whether the slot returns multiple values in one response.+ multipleValuesSetting :: Prelude.Maybe MultipleValuesSetting,+ -- | Indicates whether the slot is configured to obfuscate values in Amazon+ -- CloudWatch logs.+ obfuscationSetting :: Prelude.Maybe ObfuscationSetting,+ -- | The unique identifier associated with the slot. Use this to identify the+ -- slot when you update or delete it.+ slotId :: Prelude.Maybe Prelude.Text,+ -- | The name specified for the slot.+ slotName :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier of the slot type associated with this slot.+ slotTypeId :: Prelude.Maybe Prelude.Text,+ -- | Specifications for the constituent sub slots and the expression for the+ -- composite slot.+ subSlotSetting :: Prelude.Maybe SubSlotSetting,+ -- | The value elicitation settings specified for the slot.+ valueElicitationSetting :: Prelude.Maybe SlotValueElicitationSetting,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateSlotResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'createSlotResponse_botId' - The unique identifier of the bot associated with the slot.+--+-- 'botVersion', 'createSlotResponse_botVersion' - The version of the bot associated with the slot.+--+-- 'creationDateTime', 'createSlotResponse_creationDateTime' - The timestamp of the date and time that the slot was created.+--+-- 'description', 'createSlotResponse_description' - The description associated with the slot.+--+-- 'intentId', 'createSlotResponse_intentId' - The unique identifier of the intent associated with the slot.+--+-- 'localeId', 'createSlotResponse_localeId' - The language and local specified for the slot.+--+-- 'multipleValuesSetting', 'createSlotResponse_multipleValuesSetting' - Indicates whether the slot returns multiple values in one response.+--+-- 'obfuscationSetting', 'createSlotResponse_obfuscationSetting' - Indicates whether the slot is configured to obfuscate values in Amazon+-- CloudWatch logs.+--+-- 'slotId', 'createSlotResponse_slotId' - The unique identifier associated with the slot. Use this to identify the+-- slot when you update or delete it.+--+-- 'slotName', 'createSlotResponse_slotName' - The name specified for the slot.+--+-- 'slotTypeId', 'createSlotResponse_slotTypeId' - The unique identifier of the slot type associated with this slot.+--+-- 'subSlotSetting', 'createSlotResponse_subSlotSetting' - Specifications for the constituent sub slots and the expression for the+-- composite slot.+--+-- 'valueElicitationSetting', 'createSlotResponse_valueElicitationSetting' - The value elicitation settings specified for the slot.+--+-- 'httpStatus', 'createSlotResponse_httpStatus' - The response's http status code.+newCreateSlotResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateSlotResponse+newCreateSlotResponse pHttpStatus_ =+ CreateSlotResponse'+ { botId = Prelude.Nothing,+ botVersion = Prelude.Nothing,+ creationDateTime = Prelude.Nothing,+ description = Prelude.Nothing,+ intentId = Prelude.Nothing,+ localeId = Prelude.Nothing,+ multipleValuesSetting = Prelude.Nothing,+ obfuscationSetting = Prelude.Nothing,+ slotId = Prelude.Nothing,+ slotName = Prelude.Nothing,+ slotTypeId = Prelude.Nothing,+ subSlotSetting = Prelude.Nothing,+ valueElicitationSetting = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The unique identifier of the bot associated with the slot.+createSlotResponse_botId :: Lens.Lens' CreateSlotResponse (Prelude.Maybe Prelude.Text)+createSlotResponse_botId = Lens.lens (\CreateSlotResponse' {botId} -> botId) (\s@CreateSlotResponse' {} a -> s {botId = a} :: CreateSlotResponse)++-- | The version of the bot associated with the slot.+createSlotResponse_botVersion :: Lens.Lens' CreateSlotResponse (Prelude.Maybe Prelude.Text)+createSlotResponse_botVersion = Lens.lens (\CreateSlotResponse' {botVersion} -> botVersion) (\s@CreateSlotResponse' {} a -> s {botVersion = a} :: CreateSlotResponse)++-- | The timestamp of the date and time that the slot was created.+createSlotResponse_creationDateTime :: Lens.Lens' CreateSlotResponse (Prelude.Maybe Prelude.UTCTime)+createSlotResponse_creationDateTime = Lens.lens (\CreateSlotResponse' {creationDateTime} -> creationDateTime) (\s@CreateSlotResponse' {} a -> s {creationDateTime = a} :: CreateSlotResponse) Prelude.. Lens.mapping Data._Time++-- | The description associated with the slot.+createSlotResponse_description :: Lens.Lens' CreateSlotResponse (Prelude.Maybe Prelude.Text)+createSlotResponse_description = Lens.lens (\CreateSlotResponse' {description} -> description) (\s@CreateSlotResponse' {} a -> s {description = a} :: CreateSlotResponse)++-- | The unique identifier of the intent associated with the slot.+createSlotResponse_intentId :: Lens.Lens' CreateSlotResponse (Prelude.Maybe Prelude.Text)+createSlotResponse_intentId = Lens.lens (\CreateSlotResponse' {intentId} -> intentId) (\s@CreateSlotResponse' {} a -> s {intentId = a} :: CreateSlotResponse)++-- | The language and local specified for the slot.+createSlotResponse_localeId :: Lens.Lens' CreateSlotResponse (Prelude.Maybe Prelude.Text)+createSlotResponse_localeId = Lens.lens (\CreateSlotResponse' {localeId} -> localeId) (\s@CreateSlotResponse' {} a -> s {localeId = a} :: CreateSlotResponse)++-- | Indicates whether the slot returns multiple values in one response.+createSlotResponse_multipleValuesSetting :: Lens.Lens' CreateSlotResponse (Prelude.Maybe MultipleValuesSetting)+createSlotResponse_multipleValuesSetting = Lens.lens (\CreateSlotResponse' {multipleValuesSetting} -> multipleValuesSetting) (\s@CreateSlotResponse' {} a -> s {multipleValuesSetting = a} :: CreateSlotResponse)++-- | Indicates whether the slot is configured to obfuscate values in Amazon+-- CloudWatch logs.+createSlotResponse_obfuscationSetting :: Lens.Lens' CreateSlotResponse (Prelude.Maybe ObfuscationSetting)+createSlotResponse_obfuscationSetting = Lens.lens (\CreateSlotResponse' {obfuscationSetting} -> obfuscationSetting) (\s@CreateSlotResponse' {} a -> s {obfuscationSetting = a} :: CreateSlotResponse)++-- | The unique identifier associated with the slot. Use this to identify the+-- slot when you update or delete it.+createSlotResponse_slotId :: Lens.Lens' CreateSlotResponse (Prelude.Maybe Prelude.Text)+createSlotResponse_slotId = Lens.lens (\CreateSlotResponse' {slotId} -> slotId) (\s@CreateSlotResponse' {} a -> s {slotId = a} :: CreateSlotResponse)++-- | The name specified for the slot.+createSlotResponse_slotName :: Lens.Lens' CreateSlotResponse (Prelude.Maybe Prelude.Text)+createSlotResponse_slotName = Lens.lens (\CreateSlotResponse' {slotName} -> slotName) (\s@CreateSlotResponse' {} a -> s {slotName = a} :: CreateSlotResponse)++-- | The unique identifier of the slot type associated with this slot.+createSlotResponse_slotTypeId :: Lens.Lens' CreateSlotResponse (Prelude.Maybe Prelude.Text)+createSlotResponse_slotTypeId = Lens.lens (\CreateSlotResponse' {slotTypeId} -> slotTypeId) (\s@CreateSlotResponse' {} a -> s {slotTypeId = a} :: CreateSlotResponse)++-- | Specifications for the constituent sub slots and the expression for the+-- composite slot.+createSlotResponse_subSlotSetting :: Lens.Lens' CreateSlotResponse (Prelude.Maybe SubSlotSetting)+createSlotResponse_subSlotSetting = Lens.lens (\CreateSlotResponse' {subSlotSetting} -> subSlotSetting) (\s@CreateSlotResponse' {} a -> s {subSlotSetting = a} :: CreateSlotResponse)++-- | The value elicitation settings specified for the slot.+createSlotResponse_valueElicitationSetting :: Lens.Lens' CreateSlotResponse (Prelude.Maybe SlotValueElicitationSetting)+createSlotResponse_valueElicitationSetting = Lens.lens (\CreateSlotResponse' {valueElicitationSetting} -> valueElicitationSetting) (\s@CreateSlotResponse' {} a -> s {valueElicitationSetting = a} :: CreateSlotResponse)++-- | The response's http status code.+createSlotResponse_httpStatus :: Lens.Lens' CreateSlotResponse Prelude.Int+createSlotResponse_httpStatus = Lens.lens (\CreateSlotResponse' {httpStatus} -> httpStatus) (\s@CreateSlotResponse' {} a -> s {httpStatus = a} :: CreateSlotResponse)++instance Prelude.NFData CreateSlotResponse where+ rnf CreateSlotResponse' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf intentId+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf multipleValuesSetting+ `Prelude.seq` Prelude.rnf obfuscationSetting+ `Prelude.seq` Prelude.rnf slotId+ `Prelude.seq` Prelude.rnf slotName+ `Prelude.seq` Prelude.rnf slotTypeId+ `Prelude.seq` Prelude.rnf subSlotSetting+ `Prelude.seq` Prelude.rnf valueElicitationSetting+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/CreateSlotType.hs view
@@ -0,0 +1,523 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.CreateSlotType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates a custom slot type+--+-- To create a custom slot type, specify a name for the slot type and a set+-- of enumeration values, the values that a slot of this type can assume.+module Amazonka.LexV2Models.CreateSlotType+ ( -- * Creating a Request+ CreateSlotType (..),+ newCreateSlotType,++ -- * Request Lenses+ createSlotType_compositeSlotTypeSetting,+ createSlotType_description,+ createSlotType_externalSourceSetting,+ createSlotType_parentSlotTypeSignature,+ createSlotType_slotTypeValues,+ createSlotType_valueSelectionSetting,+ createSlotType_slotTypeName,+ createSlotType_botId,+ createSlotType_botVersion,+ createSlotType_localeId,++ -- * Destructuring the Response+ CreateSlotTypeResponse (..),+ newCreateSlotTypeResponse,++ -- * Response Lenses+ createSlotTypeResponse_botId,+ createSlotTypeResponse_botVersion,+ createSlotTypeResponse_compositeSlotTypeSetting,+ createSlotTypeResponse_creationDateTime,+ createSlotTypeResponse_description,+ createSlotTypeResponse_externalSourceSetting,+ createSlotTypeResponse_localeId,+ createSlotTypeResponse_parentSlotTypeSignature,+ createSlotTypeResponse_slotTypeId,+ createSlotTypeResponse_slotTypeName,+ createSlotTypeResponse_slotTypeValues,+ createSlotTypeResponse_valueSelectionSetting,+ createSlotTypeResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateSlotType' smart constructor.+data CreateSlotType = CreateSlotType'+ { -- | Specifications for a composite slot type.+ compositeSlotTypeSetting :: Prelude.Maybe CompositeSlotTypeSetting,+ -- | A description of the slot type. Use the description to help identify the+ -- slot type in lists.+ description :: Prelude.Maybe Prelude.Text,+ -- | Sets the type of external information used to create the slot type.+ externalSourceSetting :: Prelude.Maybe ExternalSourceSetting,+ -- | The built-in slot type used as a parent of this slot type. When you+ -- define a parent slot type, the new slot type has the configuration of+ -- the parent slot type.+ --+ -- Only @AMAZON.AlphaNumeric@ is supported.+ parentSlotTypeSignature :: Prelude.Maybe Prelude.Text,+ -- | A list of @SlotTypeValue@ objects that defines the values that the slot+ -- type can take. Each value can have a list of synonyms, additional values+ -- that help train the machine learning model about the values that it+ -- resolves for a slot.+ slotTypeValues :: Prelude.Maybe (Prelude.NonEmpty SlotTypeValue),+ -- | Determines the strategy that Amazon Lex uses to select a value from the+ -- list of possible values. The field can be set to one of the following+ -- values:+ --+ -- - @OriginalValue@ - Returns the value entered by the user, if the user+ -- value is similar to the slot value.+ --+ -- - @TopResolution@ - If there is a resolution list for the slot, return+ -- the first value in the resolution list. If there is no resolution+ -- list, return null.+ --+ -- If you don\'t specify the @valueSelectionSetting@ parameter, the default+ -- is @OriginalValue@.+ valueSelectionSetting :: Prelude.Maybe SlotValueSelectionSetting,+ -- | The name for the slot. A slot type name must be unique within the+ -- account.+ slotTypeName :: Prelude.Text,+ -- | The identifier of the bot associated with this slot type.+ botId :: Prelude.Text,+ -- | The identifier of the bot version associated with this slot type.+ botVersion :: Prelude.Text,+ -- | The identifier of the language and locale that the slot type will be+ -- used in. The string must match one of the supported locales. All of the+ -- bots, intents, and slots used by the slot type must have the same+ -- locale. For more information, see+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+ localeId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateSlotType' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'compositeSlotTypeSetting', 'createSlotType_compositeSlotTypeSetting' - Specifications for a composite slot type.+--+-- 'description', 'createSlotType_description' - A description of the slot type. Use the description to help identify the+-- slot type in lists.+--+-- 'externalSourceSetting', 'createSlotType_externalSourceSetting' - Sets the type of external information used to create the slot type.+--+-- 'parentSlotTypeSignature', 'createSlotType_parentSlotTypeSignature' - The built-in slot type used as a parent of this slot type. When you+-- define a parent slot type, the new slot type has the configuration of+-- the parent slot type.+--+-- Only @AMAZON.AlphaNumeric@ is supported.+--+-- 'slotTypeValues', 'createSlotType_slotTypeValues' - A list of @SlotTypeValue@ objects that defines the values that the slot+-- type can take. Each value can have a list of synonyms, additional values+-- that help train the machine learning model about the values that it+-- resolves for a slot.+--+-- 'valueSelectionSetting', 'createSlotType_valueSelectionSetting' - Determines the strategy that Amazon Lex uses to select a value from the+-- list of possible values. The field can be set to one of the following+-- values:+--+-- - @OriginalValue@ - Returns the value entered by the user, if the user+-- value is similar to the slot value.+--+-- - @TopResolution@ - If there is a resolution list for the slot, return+-- the first value in the resolution list. If there is no resolution+-- list, return null.+--+-- If you don\'t specify the @valueSelectionSetting@ parameter, the default+-- is @OriginalValue@.+--+-- 'slotTypeName', 'createSlotType_slotTypeName' - The name for the slot. A slot type name must be unique within the+-- account.+--+-- 'botId', 'createSlotType_botId' - The identifier of the bot associated with this slot type.+--+-- 'botVersion', 'createSlotType_botVersion' - The identifier of the bot version associated with this slot type.+--+-- 'localeId', 'createSlotType_localeId' - The identifier of the language and locale that the slot type will be+-- used in. The string must match one of the supported locales. All of the+-- bots, intents, and slots used by the slot type must have the same+-- locale. For more information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+newCreateSlotType ::+ -- | 'slotTypeName'+ Prelude.Text ->+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ -- | 'localeId'+ Prelude.Text ->+ CreateSlotType+newCreateSlotType+ pSlotTypeName_+ pBotId_+ pBotVersion_+ pLocaleId_ =+ CreateSlotType'+ { compositeSlotTypeSetting =+ Prelude.Nothing,+ description = Prelude.Nothing,+ externalSourceSetting = Prelude.Nothing,+ parentSlotTypeSignature = Prelude.Nothing,+ slotTypeValues = Prelude.Nothing,+ valueSelectionSetting = Prelude.Nothing,+ slotTypeName = pSlotTypeName_,+ botId = pBotId_,+ botVersion = pBotVersion_,+ localeId = pLocaleId_+ }++-- | Specifications for a composite slot type.+createSlotType_compositeSlotTypeSetting :: Lens.Lens' CreateSlotType (Prelude.Maybe CompositeSlotTypeSetting)+createSlotType_compositeSlotTypeSetting = Lens.lens (\CreateSlotType' {compositeSlotTypeSetting} -> compositeSlotTypeSetting) (\s@CreateSlotType' {} a -> s {compositeSlotTypeSetting = a} :: CreateSlotType)++-- | A description of the slot type. Use the description to help identify the+-- slot type in lists.+createSlotType_description :: Lens.Lens' CreateSlotType (Prelude.Maybe Prelude.Text)+createSlotType_description = Lens.lens (\CreateSlotType' {description} -> description) (\s@CreateSlotType' {} a -> s {description = a} :: CreateSlotType)++-- | Sets the type of external information used to create the slot type.+createSlotType_externalSourceSetting :: Lens.Lens' CreateSlotType (Prelude.Maybe ExternalSourceSetting)+createSlotType_externalSourceSetting = Lens.lens (\CreateSlotType' {externalSourceSetting} -> externalSourceSetting) (\s@CreateSlotType' {} a -> s {externalSourceSetting = a} :: CreateSlotType)++-- | The built-in slot type used as a parent of this slot type. When you+-- define a parent slot type, the new slot type has the configuration of+-- the parent slot type.+--+-- Only @AMAZON.AlphaNumeric@ is supported.+createSlotType_parentSlotTypeSignature :: Lens.Lens' CreateSlotType (Prelude.Maybe Prelude.Text)+createSlotType_parentSlotTypeSignature = Lens.lens (\CreateSlotType' {parentSlotTypeSignature} -> parentSlotTypeSignature) (\s@CreateSlotType' {} a -> s {parentSlotTypeSignature = a} :: CreateSlotType)++-- | A list of @SlotTypeValue@ objects that defines the values that the slot+-- type can take. Each value can have a list of synonyms, additional values+-- that help train the machine learning model about the values that it+-- resolves for a slot.+createSlotType_slotTypeValues :: Lens.Lens' CreateSlotType (Prelude.Maybe (Prelude.NonEmpty SlotTypeValue))+createSlotType_slotTypeValues = Lens.lens (\CreateSlotType' {slotTypeValues} -> slotTypeValues) (\s@CreateSlotType' {} a -> s {slotTypeValues = a} :: CreateSlotType) Prelude.. Lens.mapping Lens.coerced++-- | Determines the strategy that Amazon Lex uses to select a value from the+-- list of possible values. The field can be set to one of the following+-- values:+--+-- - @OriginalValue@ - Returns the value entered by the user, if the user+-- value is similar to the slot value.+--+-- - @TopResolution@ - If there is a resolution list for the slot, return+-- the first value in the resolution list. If there is no resolution+-- list, return null.+--+-- If you don\'t specify the @valueSelectionSetting@ parameter, the default+-- is @OriginalValue@.+createSlotType_valueSelectionSetting :: Lens.Lens' CreateSlotType (Prelude.Maybe SlotValueSelectionSetting)+createSlotType_valueSelectionSetting = Lens.lens (\CreateSlotType' {valueSelectionSetting} -> valueSelectionSetting) (\s@CreateSlotType' {} a -> s {valueSelectionSetting = a} :: CreateSlotType)++-- | The name for the slot. A slot type name must be unique within the+-- account.+createSlotType_slotTypeName :: Lens.Lens' CreateSlotType Prelude.Text+createSlotType_slotTypeName = Lens.lens (\CreateSlotType' {slotTypeName} -> slotTypeName) (\s@CreateSlotType' {} a -> s {slotTypeName = a} :: CreateSlotType)++-- | The identifier of the bot associated with this slot type.+createSlotType_botId :: Lens.Lens' CreateSlotType Prelude.Text+createSlotType_botId = Lens.lens (\CreateSlotType' {botId} -> botId) (\s@CreateSlotType' {} a -> s {botId = a} :: CreateSlotType)++-- | The identifier of the bot version associated with this slot type.+createSlotType_botVersion :: Lens.Lens' CreateSlotType Prelude.Text+createSlotType_botVersion = Lens.lens (\CreateSlotType' {botVersion} -> botVersion) (\s@CreateSlotType' {} a -> s {botVersion = a} :: CreateSlotType)++-- | The identifier of the language and locale that the slot type will be+-- used in. The string must match one of the supported locales. All of the+-- bots, intents, and slots used by the slot type must have the same+-- locale. For more information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+createSlotType_localeId :: Lens.Lens' CreateSlotType Prelude.Text+createSlotType_localeId = Lens.lens (\CreateSlotType' {localeId} -> localeId) (\s@CreateSlotType' {} a -> s {localeId = a} :: CreateSlotType)++instance Core.AWSRequest CreateSlotType where+ type+ AWSResponse CreateSlotType =+ CreateSlotTypeResponse+ request overrides =+ Request.putJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateSlotTypeResponse'+ Prelude.<$> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botVersion")+ Prelude.<*> (x Data..?> "compositeSlotTypeSetting")+ Prelude.<*> (x Data..?> "creationDateTime")+ Prelude.<*> (x Data..?> "description")+ Prelude.<*> (x Data..?> "externalSourceSetting")+ Prelude.<*> (x Data..?> "localeId")+ Prelude.<*> (x Data..?> "parentSlotTypeSignature")+ Prelude.<*> (x Data..?> "slotTypeId")+ Prelude.<*> (x Data..?> "slotTypeName")+ Prelude.<*> (x Data..?> "slotTypeValues")+ Prelude.<*> (x Data..?> "valueSelectionSetting")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateSlotType where+ hashWithSalt _salt CreateSlotType' {..} =+ _salt+ `Prelude.hashWithSalt` compositeSlotTypeSetting+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` externalSourceSetting+ `Prelude.hashWithSalt` parentSlotTypeSignature+ `Prelude.hashWithSalt` slotTypeValues+ `Prelude.hashWithSalt` valueSelectionSetting+ `Prelude.hashWithSalt` slotTypeName+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` localeId++instance Prelude.NFData CreateSlotType where+ rnf CreateSlotType' {..} =+ Prelude.rnf compositeSlotTypeSetting+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf externalSourceSetting+ `Prelude.seq` Prelude.rnf parentSlotTypeSignature+ `Prelude.seq` Prelude.rnf slotTypeValues+ `Prelude.seq` Prelude.rnf valueSelectionSetting+ `Prelude.seq` Prelude.rnf slotTypeName+ `Prelude.seq` Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId++instance Data.ToHeaders CreateSlotType where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateSlotType where+ toJSON CreateSlotType' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("compositeSlotTypeSetting" Data..=)+ Prelude.<$> compositeSlotTypeSetting,+ ("description" Data..=) Prelude.<$> description,+ ("externalSourceSetting" Data..=)+ Prelude.<$> externalSourceSetting,+ ("parentSlotTypeSignature" Data..=)+ Prelude.<$> parentSlotTypeSignature,+ ("slotTypeValues" Data..=)+ Prelude.<$> slotTypeValues,+ ("valueSelectionSetting" Data..=)+ Prelude.<$> valueSelectionSetting,+ Prelude.Just ("slotTypeName" Data..= slotTypeName)+ ]+ )++instance Data.ToPath CreateSlotType where+ toPath CreateSlotType' {..} =+ Prelude.mconcat+ [ "/bots/",+ Data.toBS botId,+ "/botversions/",+ Data.toBS botVersion,+ "/botlocales/",+ Data.toBS localeId,+ "/slottypes/"+ ]++instance Data.ToQuery CreateSlotType where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateSlotTypeResponse' smart constructor.+data CreateSlotTypeResponse = CreateSlotTypeResponse'+ { -- | The identifier for the bot associated with the slot type.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The version of the bot associated with the slot type.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | Specifications for a composite slot type.+ compositeSlotTypeSetting :: Prelude.Maybe CompositeSlotTypeSetting,+ -- | A timestamp of the date and time that the slot type was created.+ creationDateTime :: Prelude.Maybe Data.POSIX,+ -- | The description specified for the slot type.+ description :: Prelude.Maybe Prelude.Text,+ -- | The type of external information used to create the slot type.+ externalSourceSetting :: Prelude.Maybe ExternalSourceSetting,+ -- | The specified language and local specified for the slot type.+ localeId :: Prelude.Maybe Prelude.Text,+ -- | The signature of the base slot type specified for the slot type.+ parentSlotTypeSignature :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier assigned to the slot type. Use this to identify+ -- the slot type in the @UpdateSlotType@ and @DeleteSlotType@ operations.+ slotTypeId :: Prelude.Maybe Prelude.Text,+ -- | The name specified for the slot type.+ slotTypeName :: Prelude.Maybe Prelude.Text,+ -- | The list of values that the slot type can assume.+ slotTypeValues :: Prelude.Maybe (Prelude.NonEmpty SlotTypeValue),+ -- | The strategy that Amazon Lex uses to select a value from the list of+ -- possible values.+ valueSelectionSetting :: Prelude.Maybe SlotValueSelectionSetting,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateSlotTypeResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'createSlotTypeResponse_botId' - The identifier for the bot associated with the slot type.+--+-- 'botVersion', 'createSlotTypeResponse_botVersion' - The version of the bot associated with the slot type.+--+-- 'compositeSlotTypeSetting', 'createSlotTypeResponse_compositeSlotTypeSetting' - Specifications for a composite slot type.+--+-- 'creationDateTime', 'createSlotTypeResponse_creationDateTime' - A timestamp of the date and time that the slot type was created.+--+-- 'description', 'createSlotTypeResponse_description' - The description specified for the slot type.+--+-- 'externalSourceSetting', 'createSlotTypeResponse_externalSourceSetting' - The type of external information used to create the slot type.+--+-- 'localeId', 'createSlotTypeResponse_localeId' - The specified language and local specified for the slot type.+--+-- 'parentSlotTypeSignature', 'createSlotTypeResponse_parentSlotTypeSignature' - The signature of the base slot type specified for the slot type.+--+-- 'slotTypeId', 'createSlotTypeResponse_slotTypeId' - The unique identifier assigned to the slot type. Use this to identify+-- the slot type in the @UpdateSlotType@ and @DeleteSlotType@ operations.+--+-- 'slotTypeName', 'createSlotTypeResponse_slotTypeName' - The name specified for the slot type.+--+-- 'slotTypeValues', 'createSlotTypeResponse_slotTypeValues' - The list of values that the slot type can assume.+--+-- 'valueSelectionSetting', 'createSlotTypeResponse_valueSelectionSetting' - The strategy that Amazon Lex uses to select a value from the list of+-- possible values.+--+-- 'httpStatus', 'createSlotTypeResponse_httpStatus' - The response's http status code.+newCreateSlotTypeResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateSlotTypeResponse+newCreateSlotTypeResponse pHttpStatus_ =+ CreateSlotTypeResponse'+ { botId = Prelude.Nothing,+ botVersion = Prelude.Nothing,+ compositeSlotTypeSetting = Prelude.Nothing,+ creationDateTime = Prelude.Nothing,+ description = Prelude.Nothing,+ externalSourceSetting = Prelude.Nothing,+ localeId = Prelude.Nothing,+ parentSlotTypeSignature = Prelude.Nothing,+ slotTypeId = Prelude.Nothing,+ slotTypeName = Prelude.Nothing,+ slotTypeValues = Prelude.Nothing,+ valueSelectionSetting = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The identifier for the bot associated with the slot type.+createSlotTypeResponse_botId :: Lens.Lens' CreateSlotTypeResponse (Prelude.Maybe Prelude.Text)+createSlotTypeResponse_botId = Lens.lens (\CreateSlotTypeResponse' {botId} -> botId) (\s@CreateSlotTypeResponse' {} a -> s {botId = a} :: CreateSlotTypeResponse)++-- | The version of the bot associated with the slot type.+createSlotTypeResponse_botVersion :: Lens.Lens' CreateSlotTypeResponse (Prelude.Maybe Prelude.Text)+createSlotTypeResponse_botVersion = Lens.lens (\CreateSlotTypeResponse' {botVersion} -> botVersion) (\s@CreateSlotTypeResponse' {} a -> s {botVersion = a} :: CreateSlotTypeResponse)++-- | Specifications for a composite slot type.+createSlotTypeResponse_compositeSlotTypeSetting :: Lens.Lens' CreateSlotTypeResponse (Prelude.Maybe CompositeSlotTypeSetting)+createSlotTypeResponse_compositeSlotTypeSetting = Lens.lens (\CreateSlotTypeResponse' {compositeSlotTypeSetting} -> compositeSlotTypeSetting) (\s@CreateSlotTypeResponse' {} a -> s {compositeSlotTypeSetting = a} :: CreateSlotTypeResponse)++-- | A timestamp of the date and time that the slot type was created.+createSlotTypeResponse_creationDateTime :: Lens.Lens' CreateSlotTypeResponse (Prelude.Maybe Prelude.UTCTime)+createSlotTypeResponse_creationDateTime = Lens.lens (\CreateSlotTypeResponse' {creationDateTime} -> creationDateTime) (\s@CreateSlotTypeResponse' {} a -> s {creationDateTime = a} :: CreateSlotTypeResponse) Prelude.. Lens.mapping Data._Time++-- | The description specified for the slot type.+createSlotTypeResponse_description :: Lens.Lens' CreateSlotTypeResponse (Prelude.Maybe Prelude.Text)+createSlotTypeResponse_description = Lens.lens (\CreateSlotTypeResponse' {description} -> description) (\s@CreateSlotTypeResponse' {} a -> s {description = a} :: CreateSlotTypeResponse)++-- | The type of external information used to create the slot type.+createSlotTypeResponse_externalSourceSetting :: Lens.Lens' CreateSlotTypeResponse (Prelude.Maybe ExternalSourceSetting)+createSlotTypeResponse_externalSourceSetting = Lens.lens (\CreateSlotTypeResponse' {externalSourceSetting} -> externalSourceSetting) (\s@CreateSlotTypeResponse' {} a -> s {externalSourceSetting = a} :: CreateSlotTypeResponse)++-- | The specified language and local specified for the slot type.+createSlotTypeResponse_localeId :: Lens.Lens' CreateSlotTypeResponse (Prelude.Maybe Prelude.Text)+createSlotTypeResponse_localeId = Lens.lens (\CreateSlotTypeResponse' {localeId} -> localeId) (\s@CreateSlotTypeResponse' {} a -> s {localeId = a} :: CreateSlotTypeResponse)++-- | The signature of the base slot type specified for the slot type.+createSlotTypeResponse_parentSlotTypeSignature :: Lens.Lens' CreateSlotTypeResponse (Prelude.Maybe Prelude.Text)+createSlotTypeResponse_parentSlotTypeSignature = Lens.lens (\CreateSlotTypeResponse' {parentSlotTypeSignature} -> parentSlotTypeSignature) (\s@CreateSlotTypeResponse' {} a -> s {parentSlotTypeSignature = a} :: CreateSlotTypeResponse)++-- | The unique identifier assigned to the slot type. Use this to identify+-- the slot type in the @UpdateSlotType@ and @DeleteSlotType@ operations.+createSlotTypeResponse_slotTypeId :: Lens.Lens' CreateSlotTypeResponse (Prelude.Maybe Prelude.Text)+createSlotTypeResponse_slotTypeId = Lens.lens (\CreateSlotTypeResponse' {slotTypeId} -> slotTypeId) (\s@CreateSlotTypeResponse' {} a -> s {slotTypeId = a} :: CreateSlotTypeResponse)++-- | The name specified for the slot type.+createSlotTypeResponse_slotTypeName :: Lens.Lens' CreateSlotTypeResponse (Prelude.Maybe Prelude.Text)+createSlotTypeResponse_slotTypeName = Lens.lens (\CreateSlotTypeResponse' {slotTypeName} -> slotTypeName) (\s@CreateSlotTypeResponse' {} a -> s {slotTypeName = a} :: CreateSlotTypeResponse)++-- | The list of values that the slot type can assume.+createSlotTypeResponse_slotTypeValues :: Lens.Lens' CreateSlotTypeResponse (Prelude.Maybe (Prelude.NonEmpty SlotTypeValue))+createSlotTypeResponse_slotTypeValues = Lens.lens (\CreateSlotTypeResponse' {slotTypeValues} -> slotTypeValues) (\s@CreateSlotTypeResponse' {} a -> s {slotTypeValues = a} :: CreateSlotTypeResponse) Prelude.. Lens.mapping Lens.coerced++-- | The strategy that Amazon Lex uses to select a value from the list of+-- possible values.+createSlotTypeResponse_valueSelectionSetting :: Lens.Lens' CreateSlotTypeResponse (Prelude.Maybe SlotValueSelectionSetting)+createSlotTypeResponse_valueSelectionSetting = Lens.lens (\CreateSlotTypeResponse' {valueSelectionSetting} -> valueSelectionSetting) (\s@CreateSlotTypeResponse' {} a -> s {valueSelectionSetting = a} :: CreateSlotTypeResponse)++-- | The response's http status code.+createSlotTypeResponse_httpStatus :: Lens.Lens' CreateSlotTypeResponse Prelude.Int+createSlotTypeResponse_httpStatus = Lens.lens (\CreateSlotTypeResponse' {httpStatus} -> httpStatus) (\s@CreateSlotTypeResponse' {} a -> s {httpStatus = a} :: CreateSlotTypeResponse)++instance Prelude.NFData CreateSlotTypeResponse where+ rnf CreateSlotTypeResponse' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf compositeSlotTypeSetting+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf externalSourceSetting+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf parentSlotTypeSignature+ `Prelude.seq` Prelude.rnf slotTypeId+ `Prelude.seq` Prelude.rnf slotTypeName+ `Prelude.seq` Prelude.rnf slotTypeValues+ `Prelude.seq` Prelude.rnf valueSelectionSetting+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/CreateUploadUrl.hs view
@@ -0,0 +1,166 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.CreateUploadUrl+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets a pre-signed S3 write URL that you use to upload the zip archive+-- when importing a bot or a bot locale.+module Amazonka.LexV2Models.CreateUploadUrl+ ( -- * Creating a Request+ CreateUploadUrl (..),+ newCreateUploadUrl,++ -- * Destructuring the Response+ CreateUploadUrlResponse (..),+ newCreateUploadUrlResponse,++ -- * Response Lenses+ createUploadUrlResponse_importId,+ createUploadUrlResponse_uploadUrl,+ createUploadUrlResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateUploadUrl' smart constructor.+data CreateUploadUrl = CreateUploadUrl'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateUploadUrl' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newCreateUploadUrl ::+ CreateUploadUrl+newCreateUploadUrl = CreateUploadUrl'++instance Core.AWSRequest CreateUploadUrl where+ type+ AWSResponse CreateUploadUrl =+ CreateUploadUrlResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateUploadUrlResponse'+ Prelude.<$> (x Data..?> "importId")+ Prelude.<*> (x Data..?> "uploadUrl")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateUploadUrl where+ hashWithSalt _salt _ =+ _salt `Prelude.hashWithSalt` ()++instance Prelude.NFData CreateUploadUrl where+ rnf _ = ()++instance Data.ToHeaders CreateUploadUrl where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateUploadUrl where+ toJSON = Prelude.const (Data.Object Prelude.mempty)++instance Data.ToPath CreateUploadUrl where+ toPath = Prelude.const "/createuploadurl/"++instance Data.ToQuery CreateUploadUrl where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateUploadUrlResponse' smart constructor.+data CreateUploadUrlResponse = CreateUploadUrlResponse'+ { -- | An identifier for a unique import job. Use it when you call the+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/API_StartImport.html StartImport>+ -- operation.+ importId :: Prelude.Maybe Prelude.Text,+ -- | A pre-signed S3 write URL. Upload the zip archive file that contains the+ -- definition of your bot or bot locale.+ uploadUrl :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateUploadUrlResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'importId', 'createUploadUrlResponse_importId' - An identifier for a unique import job. Use it when you call the+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_StartImport.html StartImport>+-- operation.+--+-- 'uploadUrl', 'createUploadUrlResponse_uploadUrl' - A pre-signed S3 write URL. Upload the zip archive file that contains the+-- definition of your bot or bot locale.+--+-- 'httpStatus', 'createUploadUrlResponse_httpStatus' - The response's http status code.+newCreateUploadUrlResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateUploadUrlResponse+newCreateUploadUrlResponse pHttpStatus_ =+ CreateUploadUrlResponse'+ { importId =+ Prelude.Nothing,+ uploadUrl = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | An identifier for a unique import job. Use it when you call the+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_StartImport.html StartImport>+-- operation.+createUploadUrlResponse_importId :: Lens.Lens' CreateUploadUrlResponse (Prelude.Maybe Prelude.Text)+createUploadUrlResponse_importId = Lens.lens (\CreateUploadUrlResponse' {importId} -> importId) (\s@CreateUploadUrlResponse' {} a -> s {importId = a} :: CreateUploadUrlResponse)++-- | A pre-signed S3 write URL. Upload the zip archive file that contains the+-- definition of your bot or bot locale.+createUploadUrlResponse_uploadUrl :: Lens.Lens' CreateUploadUrlResponse (Prelude.Maybe Prelude.Text)+createUploadUrlResponse_uploadUrl = Lens.lens (\CreateUploadUrlResponse' {uploadUrl} -> uploadUrl) (\s@CreateUploadUrlResponse' {} a -> s {uploadUrl = a} :: CreateUploadUrlResponse)++-- | The response's http status code.+createUploadUrlResponse_httpStatus :: Lens.Lens' CreateUploadUrlResponse Prelude.Int+createUploadUrlResponse_httpStatus = Lens.lens (\CreateUploadUrlResponse' {httpStatus} -> httpStatus) (\s@CreateUploadUrlResponse' {} a -> s {httpStatus = a} :: CreateUploadUrlResponse)++instance Prelude.NFData CreateUploadUrlResponse where+ rnf CreateUploadUrlResponse' {..} =+ Prelude.rnf importId+ `Prelude.seq` Prelude.rnf uploadUrl+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/DeleteBot.hs view
@@ -0,0 +1,203 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.DeleteBot+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes all versions of a bot, including the @Draft@ version. To delete+-- a specific version, use the @DeleteBotVersion@ operation.+--+-- When you delete a bot, all of the resources contained in the bot are+-- also deleted. Deleting a bot removes all locales, intents, slot, and+-- slot types defined for the bot.+--+-- If a bot has an alias, the @DeleteBot@ operation returns a+-- @ResourceInUseException@ exception. If you want to delete the bot and+-- the alias, set the @skipResourceInUseCheck@ parameter to @true@.+module Amazonka.LexV2Models.DeleteBot+ ( -- * Creating a Request+ DeleteBot (..),+ newDeleteBot,++ -- * Request Lenses+ deleteBot_skipResourceInUseCheck,+ deleteBot_botId,++ -- * Destructuring the Response+ DeleteBotResponse (..),+ newDeleteBotResponse,++ -- * Response Lenses+ deleteBotResponse_botId,+ deleteBotResponse_botStatus,+ deleteBotResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteBot' smart constructor.+data DeleteBot = DeleteBot'+ { -- | When @true@, Amazon Lex doesn\'t check to see if another resource, such+ -- as an alias, is using the bot before it is deleted.+ skipResourceInUseCheck :: Prelude.Maybe Prelude.Bool,+ -- | The identifier of the bot to delete.+ botId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteBot' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'skipResourceInUseCheck', 'deleteBot_skipResourceInUseCheck' - When @true@, Amazon Lex doesn\'t check to see if another resource, such+-- as an alias, is using the bot before it is deleted.+--+-- 'botId', 'deleteBot_botId' - The identifier of the bot to delete.+newDeleteBot ::+ -- | 'botId'+ Prelude.Text ->+ DeleteBot+newDeleteBot pBotId_ =+ DeleteBot'+ { skipResourceInUseCheck =+ Prelude.Nothing,+ botId = pBotId_+ }++-- | When @true@, Amazon Lex doesn\'t check to see if another resource, such+-- as an alias, is using the bot before it is deleted.+deleteBot_skipResourceInUseCheck :: Lens.Lens' DeleteBot (Prelude.Maybe Prelude.Bool)+deleteBot_skipResourceInUseCheck = Lens.lens (\DeleteBot' {skipResourceInUseCheck} -> skipResourceInUseCheck) (\s@DeleteBot' {} a -> s {skipResourceInUseCheck = a} :: DeleteBot)++-- | The identifier of the bot to delete.+deleteBot_botId :: Lens.Lens' DeleteBot Prelude.Text+deleteBot_botId = Lens.lens (\DeleteBot' {botId} -> botId) (\s@DeleteBot' {} a -> s {botId = a} :: DeleteBot)++instance Core.AWSRequest DeleteBot where+ type AWSResponse DeleteBot = DeleteBotResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DeleteBotResponse'+ Prelude.<$> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botStatus")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeleteBot where+ hashWithSalt _salt DeleteBot' {..} =+ _salt+ `Prelude.hashWithSalt` skipResourceInUseCheck+ `Prelude.hashWithSalt` botId++instance Prelude.NFData DeleteBot where+ rnf DeleteBot' {..} =+ Prelude.rnf skipResourceInUseCheck+ `Prelude.seq` Prelude.rnf botId++instance Data.ToHeaders DeleteBot where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DeleteBot where+ toPath DeleteBot' {..} =+ Prelude.mconcat ["/bots/", Data.toBS botId, "/"]++instance Data.ToQuery DeleteBot where+ toQuery DeleteBot' {..} =+ Prelude.mconcat+ [ "skipResourceInUseCheck"+ Data.=: skipResourceInUseCheck+ ]++-- | /See:/ 'newDeleteBotResponse' smart constructor.+data DeleteBotResponse = DeleteBotResponse'+ { -- | The unique identifier of the bot that Amazon Lex is deleting.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The current status of the bot. The status is @Deleting@ while the bot+ -- and its associated resources are being deleted.+ botStatus :: Prelude.Maybe BotStatus,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteBotResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'deleteBotResponse_botId' - The unique identifier of the bot that Amazon Lex is deleting.+--+-- 'botStatus', 'deleteBotResponse_botStatus' - The current status of the bot. The status is @Deleting@ while the bot+-- and its associated resources are being deleted.+--+-- 'httpStatus', 'deleteBotResponse_httpStatus' - The response's http status code.+newDeleteBotResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteBotResponse+newDeleteBotResponse pHttpStatus_ =+ DeleteBotResponse'+ { botId = Prelude.Nothing,+ botStatus = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The unique identifier of the bot that Amazon Lex is deleting.+deleteBotResponse_botId :: Lens.Lens' DeleteBotResponse (Prelude.Maybe Prelude.Text)+deleteBotResponse_botId = Lens.lens (\DeleteBotResponse' {botId} -> botId) (\s@DeleteBotResponse' {} a -> s {botId = a} :: DeleteBotResponse)++-- | The current status of the bot. The status is @Deleting@ while the bot+-- and its associated resources are being deleted.+deleteBotResponse_botStatus :: Lens.Lens' DeleteBotResponse (Prelude.Maybe BotStatus)+deleteBotResponse_botStatus = Lens.lens (\DeleteBotResponse' {botStatus} -> botStatus) (\s@DeleteBotResponse' {} a -> s {botStatus = a} :: DeleteBotResponse)++-- | The response's http status code.+deleteBotResponse_httpStatus :: Lens.Lens' DeleteBotResponse Prelude.Int+deleteBotResponse_httpStatus = Lens.lens (\DeleteBotResponse' {httpStatus} -> httpStatus) (\s@DeleteBotResponse' {} a -> s {httpStatus = a} :: DeleteBotResponse)++instance Prelude.NFData DeleteBotResponse where+ rnf DeleteBotResponse' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botStatus+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/DeleteBotAlias.hs view
@@ -0,0 +1,235 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.DeleteBotAlias+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes the specified bot alias.+module Amazonka.LexV2Models.DeleteBotAlias+ ( -- * Creating a Request+ DeleteBotAlias (..),+ newDeleteBotAlias,++ -- * Request Lenses+ deleteBotAlias_skipResourceInUseCheck,+ deleteBotAlias_botAliasId,+ deleteBotAlias_botId,++ -- * Destructuring the Response+ DeleteBotAliasResponse (..),+ newDeleteBotAliasResponse,++ -- * Response Lenses+ deleteBotAliasResponse_botAliasId,+ deleteBotAliasResponse_botAliasStatus,+ deleteBotAliasResponse_botId,+ deleteBotAliasResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteBotAlias' smart constructor.+data DeleteBotAlias = DeleteBotAlias'+ { -- | When this parameter is true, Amazon Lex doesn\'t check to see if any+ -- other resource is using the alias before it is deleted.+ skipResourceInUseCheck :: Prelude.Maybe Prelude.Bool,+ -- | The unique identifier of the bot alias to delete.+ botAliasId :: Prelude.Text,+ -- | The unique identifier of the bot associated with the alias to delete.+ botId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteBotAlias' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'skipResourceInUseCheck', 'deleteBotAlias_skipResourceInUseCheck' - When this parameter is true, Amazon Lex doesn\'t check to see if any+-- other resource is using the alias before it is deleted.+--+-- 'botAliasId', 'deleteBotAlias_botAliasId' - The unique identifier of the bot alias to delete.+--+-- 'botId', 'deleteBotAlias_botId' - The unique identifier of the bot associated with the alias to delete.+newDeleteBotAlias ::+ -- | 'botAliasId'+ Prelude.Text ->+ -- | 'botId'+ Prelude.Text ->+ DeleteBotAlias+newDeleteBotAlias pBotAliasId_ pBotId_ =+ DeleteBotAlias'+ { skipResourceInUseCheck =+ Prelude.Nothing,+ botAliasId = pBotAliasId_,+ botId = pBotId_+ }++-- | When this parameter is true, Amazon Lex doesn\'t check to see if any+-- other resource is using the alias before it is deleted.+deleteBotAlias_skipResourceInUseCheck :: Lens.Lens' DeleteBotAlias (Prelude.Maybe Prelude.Bool)+deleteBotAlias_skipResourceInUseCheck = Lens.lens (\DeleteBotAlias' {skipResourceInUseCheck} -> skipResourceInUseCheck) (\s@DeleteBotAlias' {} a -> s {skipResourceInUseCheck = a} :: DeleteBotAlias)++-- | The unique identifier of the bot alias to delete.+deleteBotAlias_botAliasId :: Lens.Lens' DeleteBotAlias Prelude.Text+deleteBotAlias_botAliasId = Lens.lens (\DeleteBotAlias' {botAliasId} -> botAliasId) (\s@DeleteBotAlias' {} a -> s {botAliasId = a} :: DeleteBotAlias)++-- | The unique identifier of the bot associated with the alias to delete.+deleteBotAlias_botId :: Lens.Lens' DeleteBotAlias Prelude.Text+deleteBotAlias_botId = Lens.lens (\DeleteBotAlias' {botId} -> botId) (\s@DeleteBotAlias' {} a -> s {botId = a} :: DeleteBotAlias)++instance Core.AWSRequest DeleteBotAlias where+ type+ AWSResponse DeleteBotAlias =+ DeleteBotAliasResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DeleteBotAliasResponse'+ Prelude.<$> (x Data..?> "botAliasId")+ Prelude.<*> (x Data..?> "botAliasStatus")+ Prelude.<*> (x Data..?> "botId")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeleteBotAlias where+ hashWithSalt _salt DeleteBotAlias' {..} =+ _salt+ `Prelude.hashWithSalt` skipResourceInUseCheck+ `Prelude.hashWithSalt` botAliasId+ `Prelude.hashWithSalt` botId++instance Prelude.NFData DeleteBotAlias where+ rnf DeleteBotAlias' {..} =+ Prelude.rnf skipResourceInUseCheck+ `Prelude.seq` Prelude.rnf botAliasId+ `Prelude.seq` Prelude.rnf botId++instance Data.ToHeaders DeleteBotAlias where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DeleteBotAlias where+ toPath DeleteBotAlias' {..} =+ Prelude.mconcat+ [ "/bots/",+ Data.toBS botId,+ "/botaliases/",+ Data.toBS botAliasId,+ "/"+ ]++instance Data.ToQuery DeleteBotAlias where+ toQuery DeleteBotAlias' {..} =+ Prelude.mconcat+ [ "skipResourceInUseCheck"+ Data.=: skipResourceInUseCheck+ ]++-- | /See:/ 'newDeleteBotAliasResponse' smart constructor.+data DeleteBotAliasResponse = DeleteBotAliasResponse'+ { -- | The unique identifier of the bot alias to delete.+ botAliasId :: Prelude.Maybe Prelude.Text,+ -- | The current status of the alias. The status is @Deleting@ while the+ -- alias is in the process of being deleted. Once the alias is deleted, it+ -- will no longer appear in the list of aliases returned by the+ -- @ListBotAliases@ operation.+ botAliasStatus :: Prelude.Maybe BotAliasStatus,+ -- | The unique identifier of the bot that contains the alias to delete.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteBotAliasResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botAliasId', 'deleteBotAliasResponse_botAliasId' - The unique identifier of the bot alias to delete.+--+-- 'botAliasStatus', 'deleteBotAliasResponse_botAliasStatus' - The current status of the alias. The status is @Deleting@ while the+-- alias is in the process of being deleted. Once the alias is deleted, it+-- will no longer appear in the list of aliases returned by the+-- @ListBotAliases@ operation.+--+-- 'botId', 'deleteBotAliasResponse_botId' - The unique identifier of the bot that contains the alias to delete.+--+-- 'httpStatus', 'deleteBotAliasResponse_httpStatus' - The response's http status code.+newDeleteBotAliasResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteBotAliasResponse+newDeleteBotAliasResponse pHttpStatus_ =+ DeleteBotAliasResponse'+ { botAliasId =+ Prelude.Nothing,+ botAliasStatus = Prelude.Nothing,+ botId = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The unique identifier of the bot alias to delete.+deleteBotAliasResponse_botAliasId :: Lens.Lens' DeleteBotAliasResponse (Prelude.Maybe Prelude.Text)+deleteBotAliasResponse_botAliasId = Lens.lens (\DeleteBotAliasResponse' {botAliasId} -> botAliasId) (\s@DeleteBotAliasResponse' {} a -> s {botAliasId = a} :: DeleteBotAliasResponse)++-- | The current status of the alias. The status is @Deleting@ while the+-- alias is in the process of being deleted. Once the alias is deleted, it+-- will no longer appear in the list of aliases returned by the+-- @ListBotAliases@ operation.+deleteBotAliasResponse_botAliasStatus :: Lens.Lens' DeleteBotAliasResponse (Prelude.Maybe BotAliasStatus)+deleteBotAliasResponse_botAliasStatus = Lens.lens (\DeleteBotAliasResponse' {botAliasStatus} -> botAliasStatus) (\s@DeleteBotAliasResponse' {} a -> s {botAliasStatus = a} :: DeleteBotAliasResponse)++-- | The unique identifier of the bot that contains the alias to delete.+deleteBotAliasResponse_botId :: Lens.Lens' DeleteBotAliasResponse (Prelude.Maybe Prelude.Text)+deleteBotAliasResponse_botId = Lens.lens (\DeleteBotAliasResponse' {botId} -> botId) (\s@DeleteBotAliasResponse' {} a -> s {botId = a} :: DeleteBotAliasResponse)++-- | The response's http status code.+deleteBotAliasResponse_httpStatus :: Lens.Lens' DeleteBotAliasResponse Prelude.Int+deleteBotAliasResponse_httpStatus = Lens.lens (\DeleteBotAliasResponse' {httpStatus} -> httpStatus) (\s@DeleteBotAliasResponse' {} a -> s {httpStatus = a} :: DeleteBotAliasResponse)++instance Prelude.NFData DeleteBotAliasResponse where+ rnf DeleteBotAliasResponse' {..} =+ Prelude.rnf botAliasId+ `Prelude.seq` Prelude.rnf botAliasStatus+ `Prelude.seq` Prelude.rnf botId+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/DeleteBotLocale.hs view
@@ -0,0 +1,251 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.DeleteBotLocale+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Removes a locale from a bot.+--+-- When you delete a locale, all intents, slots, and slot types defined for+-- the locale are also deleted.+module Amazonka.LexV2Models.DeleteBotLocale+ ( -- * Creating a Request+ DeleteBotLocale (..),+ newDeleteBotLocale,++ -- * Request Lenses+ deleteBotLocale_botId,+ deleteBotLocale_botVersion,+ deleteBotLocale_localeId,++ -- * Destructuring the Response+ DeleteBotLocaleResponse (..),+ newDeleteBotLocaleResponse,++ -- * Response Lenses+ deleteBotLocaleResponse_botId,+ deleteBotLocaleResponse_botLocaleStatus,+ deleteBotLocaleResponse_botVersion,+ deleteBotLocaleResponse_localeId,+ deleteBotLocaleResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteBotLocale' smart constructor.+data DeleteBotLocale = DeleteBotLocale'+ { -- | The unique identifier of the bot that contains the locale.+ botId :: Prelude.Text,+ -- | The version of the bot that contains the locale.+ botVersion :: Prelude.Text,+ -- | The identifier of the language and locale that will be deleted. The+ -- string must match one of the supported locales. For more information,+ -- see+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+ localeId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteBotLocale' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'deleteBotLocale_botId' - The unique identifier of the bot that contains the locale.+--+-- 'botVersion', 'deleteBotLocale_botVersion' - The version of the bot that contains the locale.+--+-- 'localeId', 'deleteBotLocale_localeId' - The identifier of the language and locale that will be deleted. The+-- string must match one of the supported locales. For more information,+-- see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+newDeleteBotLocale ::+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ -- | 'localeId'+ Prelude.Text ->+ DeleteBotLocale+newDeleteBotLocale pBotId_ pBotVersion_ pLocaleId_ =+ DeleteBotLocale'+ { botId = pBotId_,+ botVersion = pBotVersion_,+ localeId = pLocaleId_+ }++-- | The unique identifier of the bot that contains the locale.+deleteBotLocale_botId :: Lens.Lens' DeleteBotLocale Prelude.Text+deleteBotLocale_botId = Lens.lens (\DeleteBotLocale' {botId} -> botId) (\s@DeleteBotLocale' {} a -> s {botId = a} :: DeleteBotLocale)++-- | The version of the bot that contains the locale.+deleteBotLocale_botVersion :: Lens.Lens' DeleteBotLocale Prelude.Text+deleteBotLocale_botVersion = Lens.lens (\DeleteBotLocale' {botVersion} -> botVersion) (\s@DeleteBotLocale' {} a -> s {botVersion = a} :: DeleteBotLocale)++-- | The identifier of the language and locale that will be deleted. The+-- string must match one of the supported locales. For more information,+-- see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+deleteBotLocale_localeId :: Lens.Lens' DeleteBotLocale Prelude.Text+deleteBotLocale_localeId = Lens.lens (\DeleteBotLocale' {localeId} -> localeId) (\s@DeleteBotLocale' {} a -> s {localeId = a} :: DeleteBotLocale)++instance Core.AWSRequest DeleteBotLocale where+ type+ AWSResponse DeleteBotLocale =+ DeleteBotLocaleResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DeleteBotLocaleResponse'+ Prelude.<$> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botLocaleStatus")+ Prelude.<*> (x Data..?> "botVersion")+ Prelude.<*> (x Data..?> "localeId")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeleteBotLocale where+ hashWithSalt _salt DeleteBotLocale' {..} =+ _salt+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` localeId++instance Prelude.NFData DeleteBotLocale where+ rnf DeleteBotLocale' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId++instance Data.ToHeaders DeleteBotLocale where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DeleteBotLocale where+ toPath DeleteBotLocale' {..} =+ Prelude.mconcat+ [ "/bots/",+ Data.toBS botId,+ "/botversions/",+ Data.toBS botVersion,+ "/botlocales/",+ Data.toBS localeId,+ "/"+ ]++instance Data.ToQuery DeleteBotLocale where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteBotLocaleResponse' smart constructor.+data DeleteBotLocaleResponse = DeleteBotLocaleResponse'+ { -- | The identifier of the bot that contained the deleted locale.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The status of deleting the bot locale. The locale first enters the+ -- @Deleting@ status. Once the locale is deleted it no longer appears in+ -- the list of locales for the bot.+ botLocaleStatus :: Prelude.Maybe BotLocaleStatus,+ -- | The version of the bot that contained the deleted locale.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | The language and locale of the deleted locale.+ localeId :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteBotLocaleResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'deleteBotLocaleResponse_botId' - The identifier of the bot that contained the deleted locale.+--+-- 'botLocaleStatus', 'deleteBotLocaleResponse_botLocaleStatus' - The status of deleting the bot locale. The locale first enters the+-- @Deleting@ status. Once the locale is deleted it no longer appears in+-- the list of locales for the bot.+--+-- 'botVersion', 'deleteBotLocaleResponse_botVersion' - The version of the bot that contained the deleted locale.+--+-- 'localeId', 'deleteBotLocaleResponse_localeId' - The language and locale of the deleted locale.+--+-- 'httpStatus', 'deleteBotLocaleResponse_httpStatus' - The response's http status code.+newDeleteBotLocaleResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteBotLocaleResponse+newDeleteBotLocaleResponse pHttpStatus_ =+ DeleteBotLocaleResponse'+ { botId = Prelude.Nothing,+ botLocaleStatus = Prelude.Nothing,+ botVersion = Prelude.Nothing,+ localeId = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The identifier of the bot that contained the deleted locale.+deleteBotLocaleResponse_botId :: Lens.Lens' DeleteBotLocaleResponse (Prelude.Maybe Prelude.Text)+deleteBotLocaleResponse_botId = Lens.lens (\DeleteBotLocaleResponse' {botId} -> botId) (\s@DeleteBotLocaleResponse' {} a -> s {botId = a} :: DeleteBotLocaleResponse)++-- | The status of deleting the bot locale. The locale first enters the+-- @Deleting@ status. Once the locale is deleted it no longer appears in+-- the list of locales for the bot.+deleteBotLocaleResponse_botLocaleStatus :: Lens.Lens' DeleteBotLocaleResponse (Prelude.Maybe BotLocaleStatus)+deleteBotLocaleResponse_botLocaleStatus = Lens.lens (\DeleteBotLocaleResponse' {botLocaleStatus} -> botLocaleStatus) (\s@DeleteBotLocaleResponse' {} a -> s {botLocaleStatus = a} :: DeleteBotLocaleResponse)++-- | The version of the bot that contained the deleted locale.+deleteBotLocaleResponse_botVersion :: Lens.Lens' DeleteBotLocaleResponse (Prelude.Maybe Prelude.Text)+deleteBotLocaleResponse_botVersion = Lens.lens (\DeleteBotLocaleResponse' {botVersion} -> botVersion) (\s@DeleteBotLocaleResponse' {} a -> s {botVersion = a} :: DeleteBotLocaleResponse)++-- | The language and locale of the deleted locale.+deleteBotLocaleResponse_localeId :: Lens.Lens' DeleteBotLocaleResponse (Prelude.Maybe Prelude.Text)+deleteBotLocaleResponse_localeId = Lens.lens (\DeleteBotLocaleResponse' {localeId} -> localeId) (\s@DeleteBotLocaleResponse' {} a -> s {localeId = a} :: DeleteBotLocaleResponse)++-- | The response's http status code.+deleteBotLocaleResponse_httpStatus :: Lens.Lens' DeleteBotLocaleResponse Prelude.Int+deleteBotLocaleResponse_httpStatus = Lens.lens (\DeleteBotLocaleResponse' {httpStatus} -> httpStatus) (\s@DeleteBotLocaleResponse' {} a -> s {httpStatus = a} :: DeleteBotLocaleResponse)++instance Prelude.NFData DeleteBotLocaleResponse where+ rnf DeleteBotLocaleResponse' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botLocaleStatus+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/DeleteBotVersion.hs view
@@ -0,0 +1,237 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.DeleteBotVersion+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes a specific version of a bot. To delete all version of a bot, use+-- the+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_DeleteBot.html DeleteBot>+-- operation.+module Amazonka.LexV2Models.DeleteBotVersion+ ( -- * Creating a Request+ DeleteBotVersion (..),+ newDeleteBotVersion,++ -- * Request Lenses+ deleteBotVersion_skipResourceInUseCheck,+ deleteBotVersion_botId,+ deleteBotVersion_botVersion,++ -- * Destructuring the Response+ DeleteBotVersionResponse (..),+ newDeleteBotVersionResponse,++ -- * Response Lenses+ deleteBotVersionResponse_botId,+ deleteBotVersionResponse_botStatus,+ deleteBotVersionResponse_botVersion,+ deleteBotVersionResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteBotVersion' smart constructor.+data DeleteBotVersion = DeleteBotVersion'+ { -- | By default, the @DeleteBotVersion@ operations throws a+ -- @ResourceInUseException@ exception if you try to delete a bot version+ -- that has an alias pointing at it. Set the @skipResourceInUseCheck@+ -- parameter to @true@ to skip this check and remove the version even if an+ -- alias points to it.+ skipResourceInUseCheck :: Prelude.Maybe Prelude.Bool,+ -- | The identifier of the bot that contains the version.+ botId :: Prelude.Text,+ -- | The version of the bot to delete.+ botVersion :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteBotVersion' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'skipResourceInUseCheck', 'deleteBotVersion_skipResourceInUseCheck' - By default, the @DeleteBotVersion@ operations throws a+-- @ResourceInUseException@ exception if you try to delete a bot version+-- that has an alias pointing at it. Set the @skipResourceInUseCheck@+-- parameter to @true@ to skip this check and remove the version even if an+-- alias points to it.+--+-- 'botId', 'deleteBotVersion_botId' - The identifier of the bot that contains the version.+--+-- 'botVersion', 'deleteBotVersion_botVersion' - The version of the bot to delete.+newDeleteBotVersion ::+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ DeleteBotVersion+newDeleteBotVersion pBotId_ pBotVersion_ =+ DeleteBotVersion'+ { skipResourceInUseCheck =+ Prelude.Nothing,+ botId = pBotId_,+ botVersion = pBotVersion_+ }++-- | By default, the @DeleteBotVersion@ operations throws a+-- @ResourceInUseException@ exception if you try to delete a bot version+-- that has an alias pointing at it. Set the @skipResourceInUseCheck@+-- parameter to @true@ to skip this check and remove the version even if an+-- alias points to it.+deleteBotVersion_skipResourceInUseCheck :: Lens.Lens' DeleteBotVersion (Prelude.Maybe Prelude.Bool)+deleteBotVersion_skipResourceInUseCheck = Lens.lens (\DeleteBotVersion' {skipResourceInUseCheck} -> skipResourceInUseCheck) (\s@DeleteBotVersion' {} a -> s {skipResourceInUseCheck = a} :: DeleteBotVersion)++-- | The identifier of the bot that contains the version.+deleteBotVersion_botId :: Lens.Lens' DeleteBotVersion Prelude.Text+deleteBotVersion_botId = Lens.lens (\DeleteBotVersion' {botId} -> botId) (\s@DeleteBotVersion' {} a -> s {botId = a} :: DeleteBotVersion)++-- | The version of the bot to delete.+deleteBotVersion_botVersion :: Lens.Lens' DeleteBotVersion Prelude.Text+deleteBotVersion_botVersion = Lens.lens (\DeleteBotVersion' {botVersion} -> botVersion) (\s@DeleteBotVersion' {} a -> s {botVersion = a} :: DeleteBotVersion)++instance Core.AWSRequest DeleteBotVersion where+ type+ AWSResponse DeleteBotVersion =+ DeleteBotVersionResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DeleteBotVersionResponse'+ Prelude.<$> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botStatus")+ Prelude.<*> (x Data..?> "botVersion")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeleteBotVersion where+ hashWithSalt _salt DeleteBotVersion' {..} =+ _salt+ `Prelude.hashWithSalt` skipResourceInUseCheck+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion++instance Prelude.NFData DeleteBotVersion where+ rnf DeleteBotVersion' {..} =+ Prelude.rnf skipResourceInUseCheck+ `Prelude.seq` Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion++instance Data.ToHeaders DeleteBotVersion where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DeleteBotVersion where+ toPath DeleteBotVersion' {..} =+ Prelude.mconcat+ [ "/bots/",+ Data.toBS botId,+ "/botversions/",+ Data.toBS botVersion,+ "/"+ ]++instance Data.ToQuery DeleteBotVersion where+ toQuery DeleteBotVersion' {..} =+ Prelude.mconcat+ [ "skipResourceInUseCheck"+ Data.=: skipResourceInUseCheck+ ]++-- | /See:/ 'newDeleteBotVersionResponse' smart constructor.+data DeleteBotVersionResponse = DeleteBotVersionResponse'+ { -- | The identifier of the bot that is being deleted.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The current status of the bot.+ botStatus :: Prelude.Maybe BotStatus,+ -- | The version of the bot that is being deleted.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteBotVersionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'deleteBotVersionResponse_botId' - The identifier of the bot that is being deleted.+--+-- 'botStatus', 'deleteBotVersionResponse_botStatus' - The current status of the bot.+--+-- 'botVersion', 'deleteBotVersionResponse_botVersion' - The version of the bot that is being deleted.+--+-- 'httpStatus', 'deleteBotVersionResponse_httpStatus' - The response's http status code.+newDeleteBotVersionResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteBotVersionResponse+newDeleteBotVersionResponse pHttpStatus_ =+ DeleteBotVersionResponse'+ { botId = Prelude.Nothing,+ botStatus = Prelude.Nothing,+ botVersion = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The identifier of the bot that is being deleted.+deleteBotVersionResponse_botId :: Lens.Lens' DeleteBotVersionResponse (Prelude.Maybe Prelude.Text)+deleteBotVersionResponse_botId = Lens.lens (\DeleteBotVersionResponse' {botId} -> botId) (\s@DeleteBotVersionResponse' {} a -> s {botId = a} :: DeleteBotVersionResponse)++-- | The current status of the bot.+deleteBotVersionResponse_botStatus :: Lens.Lens' DeleteBotVersionResponse (Prelude.Maybe BotStatus)+deleteBotVersionResponse_botStatus = Lens.lens (\DeleteBotVersionResponse' {botStatus} -> botStatus) (\s@DeleteBotVersionResponse' {} a -> s {botStatus = a} :: DeleteBotVersionResponse)++-- | The version of the bot that is being deleted.+deleteBotVersionResponse_botVersion :: Lens.Lens' DeleteBotVersionResponse (Prelude.Maybe Prelude.Text)+deleteBotVersionResponse_botVersion = Lens.lens (\DeleteBotVersionResponse' {botVersion} -> botVersion) (\s@DeleteBotVersionResponse' {} a -> s {botVersion = a} :: DeleteBotVersionResponse)++-- | The response's http status code.+deleteBotVersionResponse_httpStatus :: Lens.Lens' DeleteBotVersionResponse Prelude.Int+deleteBotVersionResponse_httpStatus = Lens.lens (\DeleteBotVersionResponse' {httpStatus} -> httpStatus) (\s@DeleteBotVersionResponse' {} a -> s {httpStatus = a} :: DeleteBotVersionResponse)++instance Prelude.NFData DeleteBotVersionResponse where+ rnf DeleteBotVersionResponse' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botStatus+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/DeleteCustomVocabulary.hs view
@@ -0,0 +1,247 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.DeleteCustomVocabulary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Removes a custom vocabulary from the specified locale in the specified+-- bot.+module Amazonka.LexV2Models.DeleteCustomVocabulary+ ( -- * Creating a Request+ DeleteCustomVocabulary (..),+ newDeleteCustomVocabulary,++ -- * Request Lenses+ deleteCustomVocabulary_botId,+ deleteCustomVocabulary_botVersion,+ deleteCustomVocabulary_localeId,++ -- * Destructuring the Response+ DeleteCustomVocabularyResponse (..),+ newDeleteCustomVocabularyResponse,++ -- * Response Lenses+ deleteCustomVocabularyResponse_botId,+ deleteCustomVocabularyResponse_botVersion,+ deleteCustomVocabularyResponse_customVocabularyStatus,+ deleteCustomVocabularyResponse_localeId,+ deleteCustomVocabularyResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteCustomVocabulary' smart constructor.+data DeleteCustomVocabulary = DeleteCustomVocabulary'+ { -- | The unique identifier of the bot to remove the custom vocabulary from.+ botId :: Prelude.Text,+ -- | The version of the bot to remove the custom vocabulary from.+ botVersion :: Prelude.Text,+ -- | The locale identifier for the locale that contains the custom vocabulary+ -- to remove.+ localeId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteCustomVocabulary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'deleteCustomVocabulary_botId' - The unique identifier of the bot to remove the custom vocabulary from.+--+-- 'botVersion', 'deleteCustomVocabulary_botVersion' - The version of the bot to remove the custom vocabulary from.+--+-- 'localeId', 'deleteCustomVocabulary_localeId' - The locale identifier for the locale that contains the custom vocabulary+-- to remove.+newDeleteCustomVocabulary ::+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ -- | 'localeId'+ Prelude.Text ->+ DeleteCustomVocabulary+newDeleteCustomVocabulary+ pBotId_+ pBotVersion_+ pLocaleId_ =+ DeleteCustomVocabulary'+ { botId = pBotId_,+ botVersion = pBotVersion_,+ localeId = pLocaleId_+ }++-- | The unique identifier of the bot to remove the custom vocabulary from.+deleteCustomVocabulary_botId :: Lens.Lens' DeleteCustomVocabulary Prelude.Text+deleteCustomVocabulary_botId = Lens.lens (\DeleteCustomVocabulary' {botId} -> botId) (\s@DeleteCustomVocabulary' {} a -> s {botId = a} :: DeleteCustomVocabulary)++-- | The version of the bot to remove the custom vocabulary from.+deleteCustomVocabulary_botVersion :: Lens.Lens' DeleteCustomVocabulary Prelude.Text+deleteCustomVocabulary_botVersion = Lens.lens (\DeleteCustomVocabulary' {botVersion} -> botVersion) (\s@DeleteCustomVocabulary' {} a -> s {botVersion = a} :: DeleteCustomVocabulary)++-- | The locale identifier for the locale that contains the custom vocabulary+-- to remove.+deleteCustomVocabulary_localeId :: Lens.Lens' DeleteCustomVocabulary Prelude.Text+deleteCustomVocabulary_localeId = Lens.lens (\DeleteCustomVocabulary' {localeId} -> localeId) (\s@DeleteCustomVocabulary' {} a -> s {localeId = a} :: DeleteCustomVocabulary)++instance Core.AWSRequest DeleteCustomVocabulary where+ type+ AWSResponse DeleteCustomVocabulary =+ DeleteCustomVocabularyResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DeleteCustomVocabularyResponse'+ Prelude.<$> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botVersion")+ Prelude.<*> (x Data..?> "customVocabularyStatus")+ Prelude.<*> (x Data..?> "localeId")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeleteCustomVocabulary where+ hashWithSalt _salt DeleteCustomVocabulary' {..} =+ _salt+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` localeId++instance Prelude.NFData DeleteCustomVocabulary where+ rnf DeleteCustomVocabulary' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId++instance Data.ToHeaders DeleteCustomVocabulary where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DeleteCustomVocabulary where+ toPath DeleteCustomVocabulary' {..} =+ Prelude.mconcat+ [ "/bots/",+ Data.toBS botId,+ "/botversions/",+ Data.toBS botVersion,+ "/botlocales/",+ Data.toBS localeId,+ "/customvocabulary"+ ]++instance Data.ToQuery DeleteCustomVocabulary where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteCustomVocabularyResponse' smart constructor.+data DeleteCustomVocabularyResponse = DeleteCustomVocabularyResponse'+ { -- | The identifier of the bot that the custom vocabulary was removed from.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The version of the bot that the custom vocabulary was removed from.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | The status of removing the custom vocabulary.+ customVocabularyStatus :: Prelude.Maybe CustomVocabularyStatus,+ -- | The locale identifier for the locale that the custom vocabulary was+ -- removed from.+ localeId :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteCustomVocabularyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'deleteCustomVocabularyResponse_botId' - The identifier of the bot that the custom vocabulary was removed from.+--+-- 'botVersion', 'deleteCustomVocabularyResponse_botVersion' - The version of the bot that the custom vocabulary was removed from.+--+-- 'customVocabularyStatus', 'deleteCustomVocabularyResponse_customVocabularyStatus' - The status of removing the custom vocabulary.+--+-- 'localeId', 'deleteCustomVocabularyResponse_localeId' - The locale identifier for the locale that the custom vocabulary was+-- removed from.+--+-- 'httpStatus', 'deleteCustomVocabularyResponse_httpStatus' - The response's http status code.+newDeleteCustomVocabularyResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteCustomVocabularyResponse+newDeleteCustomVocabularyResponse pHttpStatus_ =+ DeleteCustomVocabularyResponse'+ { botId =+ Prelude.Nothing,+ botVersion = Prelude.Nothing,+ customVocabularyStatus = Prelude.Nothing,+ localeId = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The identifier of the bot that the custom vocabulary was removed from.+deleteCustomVocabularyResponse_botId :: Lens.Lens' DeleteCustomVocabularyResponse (Prelude.Maybe Prelude.Text)+deleteCustomVocabularyResponse_botId = Lens.lens (\DeleteCustomVocabularyResponse' {botId} -> botId) (\s@DeleteCustomVocabularyResponse' {} a -> s {botId = a} :: DeleteCustomVocabularyResponse)++-- | The version of the bot that the custom vocabulary was removed from.+deleteCustomVocabularyResponse_botVersion :: Lens.Lens' DeleteCustomVocabularyResponse (Prelude.Maybe Prelude.Text)+deleteCustomVocabularyResponse_botVersion = Lens.lens (\DeleteCustomVocabularyResponse' {botVersion} -> botVersion) (\s@DeleteCustomVocabularyResponse' {} a -> s {botVersion = a} :: DeleteCustomVocabularyResponse)++-- | The status of removing the custom vocabulary.+deleteCustomVocabularyResponse_customVocabularyStatus :: Lens.Lens' DeleteCustomVocabularyResponse (Prelude.Maybe CustomVocabularyStatus)+deleteCustomVocabularyResponse_customVocabularyStatus = Lens.lens (\DeleteCustomVocabularyResponse' {customVocabularyStatus} -> customVocabularyStatus) (\s@DeleteCustomVocabularyResponse' {} a -> s {customVocabularyStatus = a} :: DeleteCustomVocabularyResponse)++-- | The locale identifier for the locale that the custom vocabulary was+-- removed from.+deleteCustomVocabularyResponse_localeId :: Lens.Lens' DeleteCustomVocabularyResponse (Prelude.Maybe Prelude.Text)+deleteCustomVocabularyResponse_localeId = Lens.lens (\DeleteCustomVocabularyResponse' {localeId} -> localeId) (\s@DeleteCustomVocabularyResponse' {} a -> s {localeId = a} :: DeleteCustomVocabularyResponse)++-- | The response's http status code.+deleteCustomVocabularyResponse_httpStatus :: Lens.Lens' DeleteCustomVocabularyResponse Prelude.Int+deleteCustomVocabularyResponse_httpStatus = Lens.lens (\DeleteCustomVocabularyResponse' {httpStatus} -> httpStatus) (\s@DeleteCustomVocabularyResponse' {} a -> s {httpStatus = a} :: DeleteCustomVocabularyResponse)++instance+ Prelude.NFData+ DeleteCustomVocabularyResponse+ where+ rnf DeleteCustomVocabularyResponse' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf customVocabularyStatus+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/DeleteExport.hs view
@@ -0,0 +1,184 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.DeleteExport+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Removes a previous export and the associated files stored in an S3+-- bucket.+module Amazonka.LexV2Models.DeleteExport+ ( -- * Creating a Request+ DeleteExport (..),+ newDeleteExport,++ -- * Request Lenses+ deleteExport_exportId,++ -- * Destructuring the Response+ DeleteExportResponse (..),+ newDeleteExportResponse,++ -- * Response Lenses+ deleteExportResponse_exportId,+ deleteExportResponse_exportStatus,+ deleteExportResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteExport' smart constructor.+data DeleteExport = DeleteExport'+ { -- | The unique identifier of the export to delete.+ exportId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteExport' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'exportId', 'deleteExport_exportId' - The unique identifier of the export to delete.+newDeleteExport ::+ -- | 'exportId'+ Prelude.Text ->+ DeleteExport+newDeleteExport pExportId_ =+ DeleteExport' {exportId = pExportId_}++-- | The unique identifier of the export to delete.+deleteExport_exportId :: Lens.Lens' DeleteExport Prelude.Text+deleteExport_exportId = Lens.lens (\DeleteExport' {exportId} -> exportId) (\s@DeleteExport' {} a -> s {exportId = a} :: DeleteExport)++instance Core.AWSRequest DeleteExport where+ type AWSResponse DeleteExport = DeleteExportResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DeleteExportResponse'+ Prelude.<$> (x Data..?> "exportId")+ Prelude.<*> (x Data..?> "exportStatus")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeleteExport where+ hashWithSalt _salt DeleteExport' {..} =+ _salt `Prelude.hashWithSalt` exportId++instance Prelude.NFData DeleteExport where+ rnf DeleteExport' {..} = Prelude.rnf exportId++instance Data.ToHeaders DeleteExport where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DeleteExport where+ toPath DeleteExport' {..} =+ Prelude.mconcat+ ["/exports/", Data.toBS exportId, "/"]++instance Data.ToQuery DeleteExport where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteExportResponse' smart constructor.+data DeleteExportResponse = DeleteExportResponse'+ { -- | The unique identifier of the deleted export.+ exportId :: Prelude.Maybe Prelude.Text,+ -- | The current status of the deletion. When the deletion is complete, the+ -- export will no longer be returned by the+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/API_ListExports.html ListExports>+ -- operation and calls to the+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/API_DescribeExport.html DescribeExport>+ -- operation with the export identifier will fail.+ exportStatus :: Prelude.Maybe ExportStatus,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteExportResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'exportId', 'deleteExportResponse_exportId' - The unique identifier of the deleted export.+--+-- 'exportStatus', 'deleteExportResponse_exportStatus' - The current status of the deletion. When the deletion is complete, the+-- export will no longer be returned by the+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_ListExports.html ListExports>+-- operation and calls to the+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_DescribeExport.html DescribeExport>+-- operation with the export identifier will fail.+--+-- 'httpStatus', 'deleteExportResponse_httpStatus' - The response's http status code.+newDeleteExportResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteExportResponse+newDeleteExportResponse pHttpStatus_ =+ DeleteExportResponse'+ { exportId = Prelude.Nothing,+ exportStatus = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The unique identifier of the deleted export.+deleteExportResponse_exportId :: Lens.Lens' DeleteExportResponse (Prelude.Maybe Prelude.Text)+deleteExportResponse_exportId = Lens.lens (\DeleteExportResponse' {exportId} -> exportId) (\s@DeleteExportResponse' {} a -> s {exportId = a} :: DeleteExportResponse)++-- | The current status of the deletion. When the deletion is complete, the+-- export will no longer be returned by the+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_ListExports.html ListExports>+-- operation and calls to the+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_DescribeExport.html DescribeExport>+-- operation with the export identifier will fail.+deleteExportResponse_exportStatus :: Lens.Lens' DeleteExportResponse (Prelude.Maybe ExportStatus)+deleteExportResponse_exportStatus = Lens.lens (\DeleteExportResponse' {exportStatus} -> exportStatus) (\s@DeleteExportResponse' {} a -> s {exportStatus = a} :: DeleteExportResponse)++-- | The response's http status code.+deleteExportResponse_httpStatus :: Lens.Lens' DeleteExportResponse Prelude.Int+deleteExportResponse_httpStatus = Lens.lens (\DeleteExportResponse' {httpStatus} -> httpStatus) (\s@DeleteExportResponse' {} a -> s {httpStatus = a} :: DeleteExportResponse)++instance Prelude.NFData DeleteExportResponse where+ rnf DeleteExportResponse' {..} =+ Prelude.rnf exportId+ `Prelude.seq` Prelude.rnf exportStatus+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/DeleteImport.hs view
@@ -0,0 +1,184 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.DeleteImport+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Removes a previous import and the associated file stored in an S3+-- bucket.+module Amazonka.LexV2Models.DeleteImport+ ( -- * Creating a Request+ DeleteImport (..),+ newDeleteImport,++ -- * Request Lenses+ deleteImport_importId,++ -- * Destructuring the Response+ DeleteImportResponse (..),+ newDeleteImportResponse,++ -- * Response Lenses+ deleteImportResponse_importId,+ deleteImportResponse_importStatus,+ deleteImportResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteImport' smart constructor.+data DeleteImport = DeleteImport'+ { -- | The unique identifier of the import to delete.+ importId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteImport' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'importId', 'deleteImport_importId' - The unique identifier of the import to delete.+newDeleteImport ::+ -- | 'importId'+ Prelude.Text ->+ DeleteImport+newDeleteImport pImportId_ =+ DeleteImport' {importId = pImportId_}++-- | The unique identifier of the import to delete.+deleteImport_importId :: Lens.Lens' DeleteImport Prelude.Text+deleteImport_importId = Lens.lens (\DeleteImport' {importId} -> importId) (\s@DeleteImport' {} a -> s {importId = a} :: DeleteImport)++instance Core.AWSRequest DeleteImport where+ type AWSResponse DeleteImport = DeleteImportResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DeleteImportResponse'+ Prelude.<$> (x Data..?> "importId")+ Prelude.<*> (x Data..?> "importStatus")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeleteImport where+ hashWithSalt _salt DeleteImport' {..} =+ _salt `Prelude.hashWithSalt` importId++instance Prelude.NFData DeleteImport where+ rnf DeleteImport' {..} = Prelude.rnf importId++instance Data.ToHeaders DeleteImport where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DeleteImport where+ toPath DeleteImport' {..} =+ Prelude.mconcat+ ["/imports/", Data.toBS importId, "/"]++instance Data.ToQuery DeleteImport where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteImportResponse' smart constructor.+data DeleteImportResponse = DeleteImportResponse'+ { -- | The unique identifier of the deleted import.+ importId :: Prelude.Maybe Prelude.Text,+ -- | The current status of the deletion. When the deletion is complete, the+ -- import will no longer be returned by the+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/API_ListImports.html ListImports>+ -- operation and calls to the+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/API_DescribeImport.html DescribeImport>+ -- operation with the import identifier will fail.+ importStatus :: Prelude.Maybe ImportStatus,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteImportResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'importId', 'deleteImportResponse_importId' - The unique identifier of the deleted import.+--+-- 'importStatus', 'deleteImportResponse_importStatus' - The current status of the deletion. When the deletion is complete, the+-- import will no longer be returned by the+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_ListImports.html ListImports>+-- operation and calls to the+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_DescribeImport.html DescribeImport>+-- operation with the import identifier will fail.+--+-- 'httpStatus', 'deleteImportResponse_httpStatus' - The response's http status code.+newDeleteImportResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteImportResponse+newDeleteImportResponse pHttpStatus_ =+ DeleteImportResponse'+ { importId = Prelude.Nothing,+ importStatus = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The unique identifier of the deleted import.+deleteImportResponse_importId :: Lens.Lens' DeleteImportResponse (Prelude.Maybe Prelude.Text)+deleteImportResponse_importId = Lens.lens (\DeleteImportResponse' {importId} -> importId) (\s@DeleteImportResponse' {} a -> s {importId = a} :: DeleteImportResponse)++-- | The current status of the deletion. When the deletion is complete, the+-- import will no longer be returned by the+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_ListImports.html ListImports>+-- operation and calls to the+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_DescribeImport.html DescribeImport>+-- operation with the import identifier will fail.+deleteImportResponse_importStatus :: Lens.Lens' DeleteImportResponse (Prelude.Maybe ImportStatus)+deleteImportResponse_importStatus = Lens.lens (\DeleteImportResponse' {importStatus} -> importStatus) (\s@DeleteImportResponse' {} a -> s {importStatus = a} :: DeleteImportResponse)++-- | The response's http status code.+deleteImportResponse_httpStatus :: Lens.Lens' DeleteImportResponse Prelude.Int+deleteImportResponse_httpStatus = Lens.lens (\DeleteImportResponse' {httpStatus} -> httpStatus) (\s@DeleteImportResponse' {} a -> s {httpStatus = a} :: DeleteImportResponse)++instance Prelude.NFData DeleteImportResponse where+ rnf DeleteImportResponse' {..} =+ Prelude.rnf importId+ `Prelude.seq` Prelude.rnf importStatus+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/DeleteIntent.hs view
@@ -0,0 +1,190 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.DeleteIntent+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Removes the specified intent.+--+-- Deleting an intent also deletes the slots associated with the intent.+module Amazonka.LexV2Models.DeleteIntent+ ( -- * Creating a Request+ DeleteIntent (..),+ newDeleteIntent,++ -- * Request Lenses+ deleteIntent_intentId,+ deleteIntent_botId,+ deleteIntent_botVersion,+ deleteIntent_localeId,++ -- * Destructuring the Response+ DeleteIntentResponse (..),+ newDeleteIntentResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteIntent' smart constructor.+data DeleteIntent = DeleteIntent'+ { -- | The unique identifier of the intent to delete.+ intentId :: Prelude.Text,+ -- | The identifier of the bot associated with the intent.+ botId :: Prelude.Text,+ -- | The version of the bot associated with the intent.+ botVersion :: Prelude.Text,+ -- | The identifier of the language and locale where the bot will be deleted.+ -- The string must match one of the supported locales. For more+ -- information, see+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+ localeId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteIntent' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'intentId', 'deleteIntent_intentId' - The unique identifier of the intent to delete.+--+-- 'botId', 'deleteIntent_botId' - The identifier of the bot associated with the intent.+--+-- 'botVersion', 'deleteIntent_botVersion' - The version of the bot associated with the intent.+--+-- 'localeId', 'deleteIntent_localeId' - The identifier of the language and locale where the bot will be deleted.+-- The string must match one of the supported locales. For more+-- information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+newDeleteIntent ::+ -- | 'intentId'+ Prelude.Text ->+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ -- | 'localeId'+ Prelude.Text ->+ DeleteIntent+newDeleteIntent+ pIntentId_+ pBotId_+ pBotVersion_+ pLocaleId_ =+ DeleteIntent'+ { intentId = pIntentId_,+ botId = pBotId_,+ botVersion = pBotVersion_,+ localeId = pLocaleId_+ }++-- | The unique identifier of the intent to delete.+deleteIntent_intentId :: Lens.Lens' DeleteIntent Prelude.Text+deleteIntent_intentId = Lens.lens (\DeleteIntent' {intentId} -> intentId) (\s@DeleteIntent' {} a -> s {intentId = a} :: DeleteIntent)++-- | The identifier of the bot associated with the intent.+deleteIntent_botId :: Lens.Lens' DeleteIntent Prelude.Text+deleteIntent_botId = Lens.lens (\DeleteIntent' {botId} -> botId) (\s@DeleteIntent' {} a -> s {botId = a} :: DeleteIntent)++-- | The version of the bot associated with the intent.+deleteIntent_botVersion :: Lens.Lens' DeleteIntent Prelude.Text+deleteIntent_botVersion = Lens.lens (\DeleteIntent' {botVersion} -> botVersion) (\s@DeleteIntent' {} a -> s {botVersion = a} :: DeleteIntent)++-- | The identifier of the language and locale where the bot will be deleted.+-- The string must match one of the supported locales. For more+-- information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+deleteIntent_localeId :: Lens.Lens' DeleteIntent Prelude.Text+deleteIntent_localeId = Lens.lens (\DeleteIntent' {localeId} -> localeId) (\s@DeleteIntent' {} a -> s {localeId = a} :: DeleteIntent)++instance Core.AWSRequest DeleteIntent where+ type AWSResponse DeleteIntent = DeleteIntentResponse+ request overrides =+ Request.delete (overrides defaultService)+ response = Response.receiveNull DeleteIntentResponse'++instance Prelude.Hashable DeleteIntent where+ hashWithSalt _salt DeleteIntent' {..} =+ _salt+ `Prelude.hashWithSalt` intentId+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` localeId++instance Prelude.NFData DeleteIntent where+ rnf DeleteIntent' {..} =+ Prelude.rnf intentId+ `Prelude.seq` Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId++instance Data.ToHeaders DeleteIntent where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DeleteIntent where+ toPath DeleteIntent' {..} =+ Prelude.mconcat+ [ "/bots/",+ Data.toBS botId,+ "/botversions/",+ Data.toBS botVersion,+ "/botlocales/",+ Data.toBS localeId,+ "/intents/",+ Data.toBS intentId,+ "/"+ ]++instance Data.ToQuery DeleteIntent where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteIntentResponse' smart constructor.+data DeleteIntentResponse = DeleteIntentResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteIntentResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDeleteIntentResponse ::+ DeleteIntentResponse+newDeleteIntentResponse = DeleteIntentResponse'++instance Prelude.NFData DeleteIntentResponse where+ rnf _ = ()
+ gen/Amazonka/LexV2Models/DeleteResourcePolicy.hs view
@@ -0,0 +1,218 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.DeleteResourcePolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Removes an existing policy from a bot or bot alias. If the resource+-- doesn\'t have a policy attached, Amazon Lex returns an exception.+module Amazonka.LexV2Models.DeleteResourcePolicy+ ( -- * Creating a Request+ DeleteResourcePolicy (..),+ newDeleteResourcePolicy,++ -- * Request Lenses+ deleteResourcePolicy_expectedRevisionId,+ deleteResourcePolicy_resourceArn,++ -- * Destructuring the Response+ DeleteResourcePolicyResponse (..),+ newDeleteResourcePolicyResponse,++ -- * Response Lenses+ deleteResourcePolicyResponse_resourceArn,+ deleteResourcePolicyResponse_revisionId,+ deleteResourcePolicyResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteResourcePolicy' smart constructor.+data DeleteResourcePolicy = DeleteResourcePolicy'+ { -- | The identifier of the revision to edit. If this ID doesn\'t match the+ -- current revision number, Amazon Lex returns an exception+ --+ -- If you don\'t specify a revision ID, Amazon Lex will delete the current+ -- policy.+ expectedRevisionId :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the bot or bot alias that has the+ -- resource policy attached.+ resourceArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteResourcePolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'expectedRevisionId', 'deleteResourcePolicy_expectedRevisionId' - The identifier of the revision to edit. If this ID doesn\'t match the+-- current revision number, Amazon Lex returns an exception+--+-- If you don\'t specify a revision ID, Amazon Lex will delete the current+-- policy.+--+-- 'resourceArn', 'deleteResourcePolicy_resourceArn' - The Amazon Resource Name (ARN) of the bot or bot alias that has the+-- resource policy attached.+newDeleteResourcePolicy ::+ -- | 'resourceArn'+ Prelude.Text ->+ DeleteResourcePolicy+newDeleteResourcePolicy pResourceArn_ =+ DeleteResourcePolicy'+ { expectedRevisionId =+ Prelude.Nothing,+ resourceArn = pResourceArn_+ }++-- | The identifier of the revision to edit. If this ID doesn\'t match the+-- current revision number, Amazon Lex returns an exception+--+-- If you don\'t specify a revision ID, Amazon Lex will delete the current+-- policy.+deleteResourcePolicy_expectedRevisionId :: Lens.Lens' DeleteResourcePolicy (Prelude.Maybe Prelude.Text)+deleteResourcePolicy_expectedRevisionId = Lens.lens (\DeleteResourcePolicy' {expectedRevisionId} -> expectedRevisionId) (\s@DeleteResourcePolicy' {} a -> s {expectedRevisionId = a} :: DeleteResourcePolicy)++-- | The Amazon Resource Name (ARN) of the bot or bot alias that has the+-- resource policy attached.+deleteResourcePolicy_resourceArn :: Lens.Lens' DeleteResourcePolicy Prelude.Text+deleteResourcePolicy_resourceArn = Lens.lens (\DeleteResourcePolicy' {resourceArn} -> resourceArn) (\s@DeleteResourcePolicy' {} a -> s {resourceArn = a} :: DeleteResourcePolicy)++instance Core.AWSRequest DeleteResourcePolicy where+ type+ AWSResponse DeleteResourcePolicy =+ DeleteResourcePolicyResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DeleteResourcePolicyResponse'+ Prelude.<$> (x Data..?> "resourceArn")+ Prelude.<*> (x Data..?> "revisionId")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeleteResourcePolicy where+ hashWithSalt _salt DeleteResourcePolicy' {..} =+ _salt+ `Prelude.hashWithSalt` expectedRevisionId+ `Prelude.hashWithSalt` resourceArn++instance Prelude.NFData DeleteResourcePolicy where+ rnf DeleteResourcePolicy' {..} =+ Prelude.rnf expectedRevisionId+ `Prelude.seq` Prelude.rnf resourceArn++instance Data.ToHeaders DeleteResourcePolicy where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DeleteResourcePolicy where+ toPath DeleteResourcePolicy' {..} =+ Prelude.mconcat+ ["/policy/", Data.toBS resourceArn, "/"]++instance Data.ToQuery DeleteResourcePolicy where+ toQuery DeleteResourcePolicy' {..} =+ Prelude.mconcat+ ["expectedRevisionId" Data.=: expectedRevisionId]++-- | /See:/ 'newDeleteResourcePolicyResponse' smart constructor.+data DeleteResourcePolicyResponse = DeleteResourcePolicyResponse'+ { -- | The Amazon Resource Name (ARN) of the bot or bot alias that the resource+ -- policy was deleted from.+ resourceArn :: Prelude.Maybe Prelude.Text,+ -- | The current revision of the resource policy. Use the revision ID to make+ -- sure that you are updating the most current version of a resource policy+ -- when you add a policy statement to a resource, delete a resource, or+ -- update a resource.+ revisionId :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteResourcePolicyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'resourceArn', 'deleteResourcePolicyResponse_resourceArn' - The Amazon Resource Name (ARN) of the bot or bot alias that the resource+-- policy was deleted from.+--+-- 'revisionId', 'deleteResourcePolicyResponse_revisionId' - The current revision of the resource policy. Use the revision ID to make+-- sure that you are updating the most current version of a resource policy+-- when you add a policy statement to a resource, delete a resource, or+-- update a resource.+--+-- 'httpStatus', 'deleteResourcePolicyResponse_httpStatus' - The response's http status code.+newDeleteResourcePolicyResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteResourcePolicyResponse+newDeleteResourcePolicyResponse pHttpStatus_ =+ DeleteResourcePolicyResponse'+ { resourceArn =+ Prelude.Nothing,+ revisionId = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The Amazon Resource Name (ARN) of the bot or bot alias that the resource+-- policy was deleted from.+deleteResourcePolicyResponse_resourceArn :: Lens.Lens' DeleteResourcePolicyResponse (Prelude.Maybe Prelude.Text)+deleteResourcePolicyResponse_resourceArn = Lens.lens (\DeleteResourcePolicyResponse' {resourceArn} -> resourceArn) (\s@DeleteResourcePolicyResponse' {} a -> s {resourceArn = a} :: DeleteResourcePolicyResponse)++-- | The current revision of the resource policy. Use the revision ID to make+-- sure that you are updating the most current version of a resource policy+-- when you add a policy statement to a resource, delete a resource, or+-- update a resource.+deleteResourcePolicyResponse_revisionId :: Lens.Lens' DeleteResourcePolicyResponse (Prelude.Maybe Prelude.Text)+deleteResourcePolicyResponse_revisionId = Lens.lens (\DeleteResourcePolicyResponse' {revisionId} -> revisionId) (\s@DeleteResourcePolicyResponse' {} a -> s {revisionId = a} :: DeleteResourcePolicyResponse)++-- | The response's http status code.+deleteResourcePolicyResponse_httpStatus :: Lens.Lens' DeleteResourcePolicyResponse Prelude.Int+deleteResourcePolicyResponse_httpStatus = Lens.lens (\DeleteResourcePolicyResponse' {httpStatus} -> httpStatus) (\s@DeleteResourcePolicyResponse' {} a -> s {httpStatus = a} :: DeleteResourcePolicyResponse)++instance Prelude.NFData DeleteResourcePolicyResponse where+ rnf DeleteResourcePolicyResponse' {..} =+ Prelude.rnf resourceArn+ `Prelude.seq` Prelude.rnf revisionId+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/DeleteResourcePolicyStatement.hs view
@@ -0,0 +1,253 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.DeleteResourcePolicyStatement+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes a policy statement from a resource policy. If you delete the+-- last statement from a policy, the policy is deleted. If you specify a+-- statement ID that doesn\'t exist in the policy, or if the bot or bot+-- alias doesn\'t have a policy attached, Amazon Lex returns an exception.+module Amazonka.LexV2Models.DeleteResourcePolicyStatement+ ( -- * Creating a Request+ DeleteResourcePolicyStatement (..),+ newDeleteResourcePolicyStatement,++ -- * Request Lenses+ deleteResourcePolicyStatement_expectedRevisionId,+ deleteResourcePolicyStatement_resourceArn,+ deleteResourcePolicyStatement_statementId,++ -- * Destructuring the Response+ DeleteResourcePolicyStatementResponse (..),+ newDeleteResourcePolicyStatementResponse,++ -- * Response Lenses+ deleteResourcePolicyStatementResponse_resourceArn,+ deleteResourcePolicyStatementResponse_revisionId,+ deleteResourcePolicyStatementResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteResourcePolicyStatement' smart constructor.+data DeleteResourcePolicyStatement = DeleteResourcePolicyStatement'+ { -- | The identifier of the revision of the policy to delete the statement+ -- from. If this revision ID doesn\'t match the current revision ID, Amazon+ -- Lex throws an exception.+ --+ -- If you don\'t specify a revision, Amazon Lex removes the current+ -- contents of the statement.+ expectedRevisionId :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the bot or bot alias that the resource+ -- policy is attached to.+ resourceArn :: Prelude.Text,+ -- | The name of the statement (SID) to delete from the policy.+ statementId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteResourcePolicyStatement' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'expectedRevisionId', 'deleteResourcePolicyStatement_expectedRevisionId' - The identifier of the revision of the policy to delete the statement+-- from. If this revision ID doesn\'t match the current revision ID, Amazon+-- Lex throws an exception.+--+-- If you don\'t specify a revision, Amazon Lex removes the current+-- contents of the statement.+--+-- 'resourceArn', 'deleteResourcePolicyStatement_resourceArn' - The Amazon Resource Name (ARN) of the bot or bot alias that the resource+-- policy is attached to.+--+-- 'statementId', 'deleteResourcePolicyStatement_statementId' - The name of the statement (SID) to delete from the policy.+newDeleteResourcePolicyStatement ::+ -- | 'resourceArn'+ Prelude.Text ->+ -- | 'statementId'+ Prelude.Text ->+ DeleteResourcePolicyStatement+newDeleteResourcePolicyStatement+ pResourceArn_+ pStatementId_ =+ DeleteResourcePolicyStatement'+ { expectedRevisionId =+ Prelude.Nothing,+ resourceArn = pResourceArn_,+ statementId = pStatementId_+ }++-- | The identifier of the revision of the policy to delete the statement+-- from. If this revision ID doesn\'t match the current revision ID, Amazon+-- Lex throws an exception.+--+-- If you don\'t specify a revision, Amazon Lex removes the current+-- contents of the statement.+deleteResourcePolicyStatement_expectedRevisionId :: Lens.Lens' DeleteResourcePolicyStatement (Prelude.Maybe Prelude.Text)+deleteResourcePolicyStatement_expectedRevisionId = Lens.lens (\DeleteResourcePolicyStatement' {expectedRevisionId} -> expectedRevisionId) (\s@DeleteResourcePolicyStatement' {} a -> s {expectedRevisionId = a} :: DeleteResourcePolicyStatement)++-- | The Amazon Resource Name (ARN) of the bot or bot alias that the resource+-- policy is attached to.+deleteResourcePolicyStatement_resourceArn :: Lens.Lens' DeleteResourcePolicyStatement Prelude.Text+deleteResourcePolicyStatement_resourceArn = Lens.lens (\DeleteResourcePolicyStatement' {resourceArn} -> resourceArn) (\s@DeleteResourcePolicyStatement' {} a -> s {resourceArn = a} :: DeleteResourcePolicyStatement)++-- | The name of the statement (SID) to delete from the policy.+deleteResourcePolicyStatement_statementId :: Lens.Lens' DeleteResourcePolicyStatement Prelude.Text+deleteResourcePolicyStatement_statementId = Lens.lens (\DeleteResourcePolicyStatement' {statementId} -> statementId) (\s@DeleteResourcePolicyStatement' {} a -> s {statementId = a} :: DeleteResourcePolicyStatement)++instance+ Core.AWSRequest+ DeleteResourcePolicyStatement+ where+ type+ AWSResponse DeleteResourcePolicyStatement =+ DeleteResourcePolicyStatementResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DeleteResourcePolicyStatementResponse'+ Prelude.<$> (x Data..?> "resourceArn")+ Prelude.<*> (x Data..?> "revisionId")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ DeleteResourcePolicyStatement+ where+ hashWithSalt _salt DeleteResourcePolicyStatement' {..} =+ _salt+ `Prelude.hashWithSalt` expectedRevisionId+ `Prelude.hashWithSalt` resourceArn+ `Prelude.hashWithSalt` statementId++instance Prelude.NFData DeleteResourcePolicyStatement where+ rnf DeleteResourcePolicyStatement' {..} =+ Prelude.rnf expectedRevisionId+ `Prelude.seq` Prelude.rnf resourceArn+ `Prelude.seq` Prelude.rnf statementId++instance Data.ToHeaders DeleteResourcePolicyStatement where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DeleteResourcePolicyStatement where+ toPath DeleteResourcePolicyStatement' {..} =+ Prelude.mconcat+ [ "/policy/",+ Data.toBS resourceArn,+ "/statements/",+ Data.toBS statementId,+ "/"+ ]++instance Data.ToQuery DeleteResourcePolicyStatement where+ toQuery DeleteResourcePolicyStatement' {..} =+ Prelude.mconcat+ ["expectedRevisionId" Data.=: expectedRevisionId]++-- | /See:/ 'newDeleteResourcePolicyStatementResponse' smart constructor.+data DeleteResourcePolicyStatementResponse = DeleteResourcePolicyStatementResponse'+ { -- | The Amazon Resource Name (ARN) of the bot or bot alias that the resource+ -- policy statement was removed from.+ resourceArn :: Prelude.Maybe Prelude.Text,+ -- | The current revision of the resource policy. Use the revision ID to make+ -- sure that you are updating the most current version of a resource policy+ -- when you add a policy statement to a resource, delete a resource, or+ -- update a resource.+ revisionId :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteResourcePolicyStatementResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'resourceArn', 'deleteResourcePolicyStatementResponse_resourceArn' - The Amazon Resource Name (ARN) of the bot or bot alias that the resource+-- policy statement was removed from.+--+-- 'revisionId', 'deleteResourcePolicyStatementResponse_revisionId' - The current revision of the resource policy. Use the revision ID to make+-- sure that you are updating the most current version of a resource policy+-- when you add a policy statement to a resource, delete a resource, or+-- update a resource.+--+-- 'httpStatus', 'deleteResourcePolicyStatementResponse_httpStatus' - The response's http status code.+newDeleteResourcePolicyStatementResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteResourcePolicyStatementResponse+newDeleteResourcePolicyStatementResponse pHttpStatus_ =+ DeleteResourcePolicyStatementResponse'+ { resourceArn =+ Prelude.Nothing,+ revisionId = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The Amazon Resource Name (ARN) of the bot or bot alias that the resource+-- policy statement was removed from.+deleteResourcePolicyStatementResponse_resourceArn :: Lens.Lens' DeleteResourcePolicyStatementResponse (Prelude.Maybe Prelude.Text)+deleteResourcePolicyStatementResponse_resourceArn = Lens.lens (\DeleteResourcePolicyStatementResponse' {resourceArn} -> resourceArn) (\s@DeleteResourcePolicyStatementResponse' {} a -> s {resourceArn = a} :: DeleteResourcePolicyStatementResponse)++-- | The current revision of the resource policy. Use the revision ID to make+-- sure that you are updating the most current version of a resource policy+-- when you add a policy statement to a resource, delete a resource, or+-- update a resource.+deleteResourcePolicyStatementResponse_revisionId :: Lens.Lens' DeleteResourcePolicyStatementResponse (Prelude.Maybe Prelude.Text)+deleteResourcePolicyStatementResponse_revisionId = Lens.lens (\DeleteResourcePolicyStatementResponse' {revisionId} -> revisionId) (\s@DeleteResourcePolicyStatementResponse' {} a -> s {revisionId = a} :: DeleteResourcePolicyStatementResponse)++-- | The response's http status code.+deleteResourcePolicyStatementResponse_httpStatus :: Lens.Lens' DeleteResourcePolicyStatementResponse Prelude.Int+deleteResourcePolicyStatementResponse_httpStatus = Lens.lens (\DeleteResourcePolicyStatementResponse' {httpStatus} -> httpStatus) (\s@DeleteResourcePolicyStatementResponse' {} a -> s {httpStatus = a} :: DeleteResourcePolicyStatementResponse)++instance+ Prelude.NFData+ DeleteResourcePolicyStatementResponse+ where+ rnf DeleteResourcePolicyStatementResponse' {..} =+ Prelude.rnf resourceArn+ `Prelude.seq` Prelude.rnf revisionId+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/DeleteSlot.hs view
@@ -0,0 +1,205 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.DeleteSlot+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes the specified slot from an intent.+module Amazonka.LexV2Models.DeleteSlot+ ( -- * Creating a Request+ DeleteSlot (..),+ newDeleteSlot,++ -- * Request Lenses+ deleteSlot_slotId,+ deleteSlot_botId,+ deleteSlot_botVersion,+ deleteSlot_localeId,+ deleteSlot_intentId,++ -- * Destructuring the Response+ DeleteSlotResponse (..),+ newDeleteSlotResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteSlot' smart constructor.+data DeleteSlot = DeleteSlot'+ { -- | The identifier of the slot to delete.+ slotId :: Prelude.Text,+ -- | The identifier of the bot associated with the slot to delete.+ botId :: Prelude.Text,+ -- | The version of the bot associated with the slot to delete.+ botVersion :: Prelude.Text,+ -- | The identifier of the language and locale that the slot will be deleted+ -- from. The string must match one of the supported locales. For more+ -- information, see+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+ localeId :: Prelude.Text,+ -- | The identifier of the intent associated with the slot.+ intentId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteSlot' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'slotId', 'deleteSlot_slotId' - The identifier of the slot to delete.+--+-- 'botId', 'deleteSlot_botId' - The identifier of the bot associated with the slot to delete.+--+-- 'botVersion', 'deleteSlot_botVersion' - The version of the bot associated with the slot to delete.+--+-- 'localeId', 'deleteSlot_localeId' - The identifier of the language and locale that the slot will be deleted+-- from. The string must match one of the supported locales. For more+-- information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+--+-- 'intentId', 'deleteSlot_intentId' - The identifier of the intent associated with the slot.+newDeleteSlot ::+ -- | 'slotId'+ Prelude.Text ->+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ -- | 'localeId'+ Prelude.Text ->+ -- | 'intentId'+ Prelude.Text ->+ DeleteSlot+newDeleteSlot+ pSlotId_+ pBotId_+ pBotVersion_+ pLocaleId_+ pIntentId_ =+ DeleteSlot'+ { slotId = pSlotId_,+ botId = pBotId_,+ botVersion = pBotVersion_,+ localeId = pLocaleId_,+ intentId = pIntentId_+ }++-- | The identifier of the slot to delete.+deleteSlot_slotId :: Lens.Lens' DeleteSlot Prelude.Text+deleteSlot_slotId = Lens.lens (\DeleteSlot' {slotId} -> slotId) (\s@DeleteSlot' {} a -> s {slotId = a} :: DeleteSlot)++-- | The identifier of the bot associated with the slot to delete.+deleteSlot_botId :: Lens.Lens' DeleteSlot Prelude.Text+deleteSlot_botId = Lens.lens (\DeleteSlot' {botId} -> botId) (\s@DeleteSlot' {} a -> s {botId = a} :: DeleteSlot)++-- | The version of the bot associated with the slot to delete.+deleteSlot_botVersion :: Lens.Lens' DeleteSlot Prelude.Text+deleteSlot_botVersion = Lens.lens (\DeleteSlot' {botVersion} -> botVersion) (\s@DeleteSlot' {} a -> s {botVersion = a} :: DeleteSlot)++-- | The identifier of the language and locale that the slot will be deleted+-- from. The string must match one of the supported locales. For more+-- information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+deleteSlot_localeId :: Lens.Lens' DeleteSlot Prelude.Text+deleteSlot_localeId = Lens.lens (\DeleteSlot' {localeId} -> localeId) (\s@DeleteSlot' {} a -> s {localeId = a} :: DeleteSlot)++-- | The identifier of the intent associated with the slot.+deleteSlot_intentId :: Lens.Lens' DeleteSlot Prelude.Text+deleteSlot_intentId = Lens.lens (\DeleteSlot' {intentId} -> intentId) (\s@DeleteSlot' {} a -> s {intentId = a} :: DeleteSlot)++instance Core.AWSRequest DeleteSlot where+ type AWSResponse DeleteSlot = DeleteSlotResponse+ request overrides =+ Request.delete (overrides defaultService)+ response = Response.receiveNull DeleteSlotResponse'++instance Prelude.Hashable DeleteSlot where+ hashWithSalt _salt DeleteSlot' {..} =+ _salt+ `Prelude.hashWithSalt` slotId+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` localeId+ `Prelude.hashWithSalt` intentId++instance Prelude.NFData DeleteSlot where+ rnf DeleteSlot' {..} =+ Prelude.rnf slotId+ `Prelude.seq` Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf intentId++instance Data.ToHeaders DeleteSlot where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DeleteSlot where+ toPath DeleteSlot' {..} =+ Prelude.mconcat+ [ "/bots/",+ Data.toBS botId,+ "/botversions/",+ Data.toBS botVersion,+ "/botlocales/",+ Data.toBS localeId,+ "/intents/",+ Data.toBS intentId,+ "/slots/",+ Data.toBS slotId,+ "/"+ ]++instance Data.ToQuery DeleteSlot where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteSlotResponse' smart constructor.+data DeleteSlotResponse = DeleteSlotResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteSlotResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDeleteSlotResponse ::+ DeleteSlotResponse+newDeleteSlotResponse = DeleteSlotResponse'++instance Prelude.NFData DeleteSlotResponse where+ rnf _ = ()
+ gen/Amazonka/LexV2Models/DeleteSlotType.hs view
@@ -0,0 +1,221 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.DeleteSlotType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes a slot type from a bot locale.+--+-- If a slot is using the slot type, Amazon Lex throws a+-- @ResourceInUseException@ exception. To avoid the exception, set the+-- @skipResourceInUseCheck@ parameter to @true@.+module Amazonka.LexV2Models.DeleteSlotType+ ( -- * Creating a Request+ DeleteSlotType (..),+ newDeleteSlotType,++ -- * Request Lenses+ deleteSlotType_skipResourceInUseCheck,+ deleteSlotType_slotTypeId,+ deleteSlotType_botId,+ deleteSlotType_botVersion,+ deleteSlotType_localeId,++ -- * Destructuring the Response+ DeleteSlotTypeResponse (..),+ newDeleteSlotTypeResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteSlotType' smart constructor.+data DeleteSlotType = DeleteSlotType'+ { -- | By default, the @DeleteSlotType@ operations throws a+ -- @ResourceInUseException@ exception if you try to delete a slot type used+ -- by a slot. Set the @skipResourceInUseCheck@ parameter to @true@ to skip+ -- this check and remove the slot type even if a slot uses it.+ skipResourceInUseCheck :: Prelude.Maybe Prelude.Bool,+ -- | The identifier of the slot type to delete.+ slotTypeId :: Prelude.Text,+ -- | The identifier of the bot associated with the slot type.+ botId :: Prelude.Text,+ -- | The version of the bot associated with the slot type.+ botVersion :: Prelude.Text,+ -- | The identifier of the language and locale that the slot type will be+ -- deleted from. The string must match one of the supported locales. For+ -- more information, see+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+ localeId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteSlotType' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'skipResourceInUseCheck', 'deleteSlotType_skipResourceInUseCheck' - By default, the @DeleteSlotType@ operations throws a+-- @ResourceInUseException@ exception if you try to delete a slot type used+-- by a slot. Set the @skipResourceInUseCheck@ parameter to @true@ to skip+-- this check and remove the slot type even if a slot uses it.+--+-- 'slotTypeId', 'deleteSlotType_slotTypeId' - The identifier of the slot type to delete.+--+-- 'botId', 'deleteSlotType_botId' - The identifier of the bot associated with the slot type.+--+-- 'botVersion', 'deleteSlotType_botVersion' - The version of the bot associated with the slot type.+--+-- 'localeId', 'deleteSlotType_localeId' - The identifier of the language and locale that the slot type will be+-- deleted from. The string must match one of the supported locales. For+-- more information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+newDeleteSlotType ::+ -- | 'slotTypeId'+ Prelude.Text ->+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ -- | 'localeId'+ Prelude.Text ->+ DeleteSlotType+newDeleteSlotType+ pSlotTypeId_+ pBotId_+ pBotVersion_+ pLocaleId_ =+ DeleteSlotType'+ { skipResourceInUseCheck =+ Prelude.Nothing,+ slotTypeId = pSlotTypeId_,+ botId = pBotId_,+ botVersion = pBotVersion_,+ localeId = pLocaleId_+ }++-- | By default, the @DeleteSlotType@ operations throws a+-- @ResourceInUseException@ exception if you try to delete a slot type used+-- by a slot. Set the @skipResourceInUseCheck@ parameter to @true@ to skip+-- this check and remove the slot type even if a slot uses it.+deleteSlotType_skipResourceInUseCheck :: Lens.Lens' DeleteSlotType (Prelude.Maybe Prelude.Bool)+deleteSlotType_skipResourceInUseCheck = Lens.lens (\DeleteSlotType' {skipResourceInUseCheck} -> skipResourceInUseCheck) (\s@DeleteSlotType' {} a -> s {skipResourceInUseCheck = a} :: DeleteSlotType)++-- | The identifier of the slot type to delete.+deleteSlotType_slotTypeId :: Lens.Lens' DeleteSlotType Prelude.Text+deleteSlotType_slotTypeId = Lens.lens (\DeleteSlotType' {slotTypeId} -> slotTypeId) (\s@DeleteSlotType' {} a -> s {slotTypeId = a} :: DeleteSlotType)++-- | The identifier of the bot associated with the slot type.+deleteSlotType_botId :: Lens.Lens' DeleteSlotType Prelude.Text+deleteSlotType_botId = Lens.lens (\DeleteSlotType' {botId} -> botId) (\s@DeleteSlotType' {} a -> s {botId = a} :: DeleteSlotType)++-- | The version of the bot associated with the slot type.+deleteSlotType_botVersion :: Lens.Lens' DeleteSlotType Prelude.Text+deleteSlotType_botVersion = Lens.lens (\DeleteSlotType' {botVersion} -> botVersion) (\s@DeleteSlotType' {} a -> s {botVersion = a} :: DeleteSlotType)++-- | The identifier of the language and locale that the slot type will be+-- deleted from. The string must match one of the supported locales. For+-- more information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+deleteSlotType_localeId :: Lens.Lens' DeleteSlotType Prelude.Text+deleteSlotType_localeId = Lens.lens (\DeleteSlotType' {localeId} -> localeId) (\s@DeleteSlotType' {} a -> s {localeId = a} :: DeleteSlotType)++instance Core.AWSRequest DeleteSlotType where+ type+ AWSResponse DeleteSlotType =+ DeleteSlotTypeResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveNull DeleteSlotTypeResponse'++instance Prelude.Hashable DeleteSlotType where+ hashWithSalt _salt DeleteSlotType' {..} =+ _salt+ `Prelude.hashWithSalt` skipResourceInUseCheck+ `Prelude.hashWithSalt` slotTypeId+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` localeId++instance Prelude.NFData DeleteSlotType where+ rnf DeleteSlotType' {..} =+ Prelude.rnf skipResourceInUseCheck+ `Prelude.seq` Prelude.rnf slotTypeId+ `Prelude.seq` Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId++instance Data.ToHeaders DeleteSlotType where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DeleteSlotType where+ toPath DeleteSlotType' {..} =+ Prelude.mconcat+ [ "/bots/",+ Data.toBS botId,+ "/botversions/",+ Data.toBS botVersion,+ "/botlocales/",+ Data.toBS localeId,+ "/slottypes/",+ Data.toBS slotTypeId,+ "/"+ ]++instance Data.ToQuery DeleteSlotType where+ toQuery DeleteSlotType' {..} =+ Prelude.mconcat+ [ "skipResourceInUseCheck"+ Data.=: skipResourceInUseCheck+ ]++-- | /See:/ 'newDeleteSlotTypeResponse' smart constructor.+data DeleteSlotTypeResponse = DeleteSlotTypeResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteSlotTypeResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDeleteSlotTypeResponse ::+ DeleteSlotTypeResponse+newDeleteSlotTypeResponse = DeleteSlotTypeResponse'++instance Prelude.NFData DeleteSlotTypeResponse where+ rnf _ = ()
+ gen/Amazonka/LexV2Models/DeleteUtterances.hs view
@@ -0,0 +1,215 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.DeleteUtterances+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes stored utterances.+--+-- Amazon Lex stores the utterances that users send to your bot. Utterances+-- are stored for 15 days for use with the+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_ListAggregatedUtterances.html ListAggregatedUtterances>+-- operation, and then stored indefinitely for use in improving the ability+-- of your bot to respond to user input..+--+-- Use the @DeleteUtterances@ operation to manually delete utterances for a+-- specific session. When you use the @DeleteUtterances@ operation,+-- utterances stored for improving your bot\'s ability to respond to user+-- input are deleted immediately. Utterances stored for use with the+-- @ListAggregatedUtterances@ operation are deleted after 15 days.+module Amazonka.LexV2Models.DeleteUtterances+ ( -- * Creating a Request+ DeleteUtterances (..),+ newDeleteUtterances,++ -- * Request Lenses+ deleteUtterances_localeId,+ deleteUtterances_sessionId,+ deleteUtterances_botId,++ -- * Destructuring the Response+ DeleteUtterancesResponse (..),+ newDeleteUtterancesResponse,++ -- * Response Lenses+ deleteUtterancesResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteUtterances' smart constructor.+data DeleteUtterances = DeleteUtterances'+ { -- | The identifier of the language and locale where the utterances were+ -- collected. The string must match one of the supported locales. For more+ -- information, see+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+ localeId :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier of the session with the user. The ID is returned+ -- in the response from the+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/API_runtime_RecognizeText.html RecognizeText>+ -- and+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/API_runtime_RecognizeUtterance.html RecognizeUtterance>+ -- operations.+ sessionId :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier of the bot that contains the utterances.+ botId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteUtterances' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'localeId', 'deleteUtterances_localeId' - The identifier of the language and locale where the utterances were+-- collected. The string must match one of the supported locales. For more+-- information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+--+-- 'sessionId', 'deleteUtterances_sessionId' - The unique identifier of the session with the user. The ID is returned+-- in the response from the+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_runtime_RecognizeText.html RecognizeText>+-- and+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_runtime_RecognizeUtterance.html RecognizeUtterance>+-- operations.+--+-- 'botId', 'deleteUtterances_botId' - The unique identifier of the bot that contains the utterances.+newDeleteUtterances ::+ -- | 'botId'+ Prelude.Text ->+ DeleteUtterances+newDeleteUtterances pBotId_ =+ DeleteUtterances'+ { localeId = Prelude.Nothing,+ sessionId = Prelude.Nothing,+ botId = pBotId_+ }++-- | The identifier of the language and locale where the utterances were+-- collected. The string must match one of the supported locales. For more+-- information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+deleteUtterances_localeId :: Lens.Lens' DeleteUtterances (Prelude.Maybe Prelude.Text)+deleteUtterances_localeId = Lens.lens (\DeleteUtterances' {localeId} -> localeId) (\s@DeleteUtterances' {} a -> s {localeId = a} :: DeleteUtterances)++-- | The unique identifier of the session with the user. The ID is returned+-- in the response from the+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_runtime_RecognizeText.html RecognizeText>+-- and+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_runtime_RecognizeUtterance.html RecognizeUtterance>+-- operations.+deleteUtterances_sessionId :: Lens.Lens' DeleteUtterances (Prelude.Maybe Prelude.Text)+deleteUtterances_sessionId = Lens.lens (\DeleteUtterances' {sessionId} -> sessionId) (\s@DeleteUtterances' {} a -> s {sessionId = a} :: DeleteUtterances)++-- | The unique identifier of the bot that contains the utterances.+deleteUtterances_botId :: Lens.Lens' DeleteUtterances Prelude.Text+deleteUtterances_botId = Lens.lens (\DeleteUtterances' {botId} -> botId) (\s@DeleteUtterances' {} a -> s {botId = a} :: DeleteUtterances)++instance Core.AWSRequest DeleteUtterances where+ type+ AWSResponse DeleteUtterances =+ DeleteUtterancesResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ DeleteUtterancesResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeleteUtterances where+ hashWithSalt _salt DeleteUtterances' {..} =+ _salt+ `Prelude.hashWithSalt` localeId+ `Prelude.hashWithSalt` sessionId+ `Prelude.hashWithSalt` botId++instance Prelude.NFData DeleteUtterances where+ rnf DeleteUtterances' {..} =+ Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf sessionId+ `Prelude.seq` Prelude.rnf botId++instance Data.ToHeaders DeleteUtterances where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DeleteUtterances where+ toPath DeleteUtterances' {..} =+ Prelude.mconcat+ ["/bots/", Data.toBS botId, "/utterances/"]++instance Data.ToQuery DeleteUtterances where+ toQuery DeleteUtterances' {..} =+ Prelude.mconcat+ [ "localeId" Data.=: localeId,+ "sessionId" Data.=: sessionId+ ]++-- | /See:/ 'newDeleteUtterancesResponse' smart constructor.+data DeleteUtterancesResponse = DeleteUtterancesResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteUtterancesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'deleteUtterancesResponse_httpStatus' - The response's http status code.+newDeleteUtterancesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteUtterancesResponse+newDeleteUtterancesResponse pHttpStatus_ =+ DeleteUtterancesResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+deleteUtterancesResponse_httpStatus :: Lens.Lens' DeleteUtterancesResponse Prelude.Int+deleteUtterancesResponse_httpStatus = Lens.lens (\DeleteUtterancesResponse' {httpStatus} -> httpStatus) (\s@DeleteUtterancesResponse' {} a -> s {httpStatus = a} :: DeleteUtterancesResponse)++instance Prelude.NFData DeleteUtterancesResponse where+ rnf DeleteUtterancesResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/DescribeBot.hs view
@@ -0,0 +1,263 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.DescribeBot+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Provides metadata information about a bot.+module Amazonka.LexV2Models.DescribeBot+ ( -- * Creating a Request+ DescribeBot (..),+ newDescribeBot,++ -- * Request Lenses+ describeBot_botId,++ -- * Destructuring the Response+ DescribeBotResponse (..),+ newDescribeBotResponse,++ -- * Response Lenses+ describeBotResponse_botId,+ describeBotResponse_botName,+ describeBotResponse_botStatus,+ describeBotResponse_creationDateTime,+ describeBotResponse_dataPrivacy,+ describeBotResponse_description,+ describeBotResponse_idleSessionTTLInSeconds,+ describeBotResponse_lastUpdatedDateTime,+ describeBotResponse_roleArn,+ describeBotResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDescribeBot' smart constructor.+data DescribeBot = DescribeBot'+ { -- | The unique identifier of the bot to describe.+ botId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeBot' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'describeBot_botId' - The unique identifier of the bot to describe.+newDescribeBot ::+ -- | 'botId'+ Prelude.Text ->+ DescribeBot+newDescribeBot pBotId_ =+ DescribeBot' {botId = pBotId_}++-- | The unique identifier of the bot to describe.+describeBot_botId :: Lens.Lens' DescribeBot Prelude.Text+describeBot_botId = Lens.lens (\DescribeBot' {botId} -> botId) (\s@DescribeBot' {} a -> s {botId = a} :: DescribeBot)++instance Core.AWSRequest DescribeBot where+ type AWSResponse DescribeBot = DescribeBotResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeBotResponse'+ Prelude.<$> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botName")+ Prelude.<*> (x Data..?> "botStatus")+ Prelude.<*> (x Data..?> "creationDateTime")+ Prelude.<*> (x Data..?> "dataPrivacy")+ Prelude.<*> (x Data..?> "description")+ Prelude.<*> (x Data..?> "idleSessionTTLInSeconds")+ Prelude.<*> (x Data..?> "lastUpdatedDateTime")+ Prelude.<*> (x Data..?> "roleArn")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeBot where+ hashWithSalt _salt DescribeBot' {..} =+ _salt `Prelude.hashWithSalt` botId++instance Prelude.NFData DescribeBot where+ rnf DescribeBot' {..} = Prelude.rnf botId++instance Data.ToHeaders DescribeBot where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DescribeBot where+ toPath DescribeBot' {..} =+ Prelude.mconcat ["/bots/", Data.toBS botId, "/"]++instance Data.ToQuery DescribeBot where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDescribeBotResponse' smart constructor.+data DescribeBotResponse = DescribeBotResponse'+ { -- | The unique identifier of the bot.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The name of the bot.+ botName :: Prelude.Maybe Prelude.Text,+ -- | The current status of the bot. When the status is @Available@ the bot is+ -- ready to be used in conversations with users.+ botStatus :: Prelude.Maybe BotStatus,+ -- | A timestamp of the date and time that the bot was created.+ creationDateTime :: Prelude.Maybe Data.POSIX,+ -- | Settings for managing data privacy of the bot and its conversations with+ -- users.+ dataPrivacy :: Prelude.Maybe DataPrivacy,+ -- | The description of the bot.+ description :: Prelude.Maybe Prelude.Text,+ -- | The maximum time in seconds that Amazon Lex retains the data gathered in+ -- a conversation.+ idleSessionTTLInSeconds :: Prelude.Maybe Prelude.Natural,+ -- | A timestamp of the date and time that the bot was last updated.+ lastUpdatedDateTime :: Prelude.Maybe Data.POSIX,+ -- | The Amazon Resource Name (ARN) of an IAM role that has permission to+ -- access the bot.+ roleArn :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeBotResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'describeBotResponse_botId' - The unique identifier of the bot.+--+-- 'botName', 'describeBotResponse_botName' - The name of the bot.+--+-- 'botStatus', 'describeBotResponse_botStatus' - The current status of the bot. When the status is @Available@ the bot is+-- ready to be used in conversations with users.+--+-- 'creationDateTime', 'describeBotResponse_creationDateTime' - A timestamp of the date and time that the bot was created.+--+-- 'dataPrivacy', 'describeBotResponse_dataPrivacy' - Settings for managing data privacy of the bot and its conversations with+-- users.+--+-- 'description', 'describeBotResponse_description' - The description of the bot.+--+-- 'idleSessionTTLInSeconds', 'describeBotResponse_idleSessionTTLInSeconds' - The maximum time in seconds that Amazon Lex retains the data gathered in+-- a conversation.+--+-- 'lastUpdatedDateTime', 'describeBotResponse_lastUpdatedDateTime' - A timestamp of the date and time that the bot was last updated.+--+-- 'roleArn', 'describeBotResponse_roleArn' - The Amazon Resource Name (ARN) of an IAM role that has permission to+-- access the bot.+--+-- 'httpStatus', 'describeBotResponse_httpStatus' - The response's http status code.+newDescribeBotResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeBotResponse+newDescribeBotResponse pHttpStatus_ =+ DescribeBotResponse'+ { botId = Prelude.Nothing,+ botName = Prelude.Nothing,+ botStatus = Prelude.Nothing,+ creationDateTime = Prelude.Nothing,+ dataPrivacy = Prelude.Nothing,+ description = Prelude.Nothing,+ idleSessionTTLInSeconds = Prelude.Nothing,+ lastUpdatedDateTime = Prelude.Nothing,+ roleArn = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The unique identifier of the bot.+describeBotResponse_botId :: Lens.Lens' DescribeBotResponse (Prelude.Maybe Prelude.Text)+describeBotResponse_botId = Lens.lens (\DescribeBotResponse' {botId} -> botId) (\s@DescribeBotResponse' {} a -> s {botId = a} :: DescribeBotResponse)++-- | The name of the bot.+describeBotResponse_botName :: Lens.Lens' DescribeBotResponse (Prelude.Maybe Prelude.Text)+describeBotResponse_botName = Lens.lens (\DescribeBotResponse' {botName} -> botName) (\s@DescribeBotResponse' {} a -> s {botName = a} :: DescribeBotResponse)++-- | The current status of the bot. When the status is @Available@ the bot is+-- ready to be used in conversations with users.+describeBotResponse_botStatus :: Lens.Lens' DescribeBotResponse (Prelude.Maybe BotStatus)+describeBotResponse_botStatus = Lens.lens (\DescribeBotResponse' {botStatus} -> botStatus) (\s@DescribeBotResponse' {} a -> s {botStatus = a} :: DescribeBotResponse)++-- | A timestamp of the date and time that the bot was created.+describeBotResponse_creationDateTime :: Lens.Lens' DescribeBotResponse (Prelude.Maybe Prelude.UTCTime)+describeBotResponse_creationDateTime = Lens.lens (\DescribeBotResponse' {creationDateTime} -> creationDateTime) (\s@DescribeBotResponse' {} a -> s {creationDateTime = a} :: DescribeBotResponse) Prelude.. Lens.mapping Data._Time++-- | Settings for managing data privacy of the bot and its conversations with+-- users.+describeBotResponse_dataPrivacy :: Lens.Lens' DescribeBotResponse (Prelude.Maybe DataPrivacy)+describeBotResponse_dataPrivacy = Lens.lens (\DescribeBotResponse' {dataPrivacy} -> dataPrivacy) (\s@DescribeBotResponse' {} a -> s {dataPrivacy = a} :: DescribeBotResponse)++-- | The description of the bot.+describeBotResponse_description :: Lens.Lens' DescribeBotResponse (Prelude.Maybe Prelude.Text)+describeBotResponse_description = Lens.lens (\DescribeBotResponse' {description} -> description) (\s@DescribeBotResponse' {} a -> s {description = a} :: DescribeBotResponse)++-- | The maximum time in seconds that Amazon Lex retains the data gathered in+-- a conversation.+describeBotResponse_idleSessionTTLInSeconds :: Lens.Lens' DescribeBotResponse (Prelude.Maybe Prelude.Natural)+describeBotResponse_idleSessionTTLInSeconds = Lens.lens (\DescribeBotResponse' {idleSessionTTLInSeconds} -> idleSessionTTLInSeconds) (\s@DescribeBotResponse' {} a -> s {idleSessionTTLInSeconds = a} :: DescribeBotResponse)++-- | A timestamp of the date and time that the bot was last updated.+describeBotResponse_lastUpdatedDateTime :: Lens.Lens' DescribeBotResponse (Prelude.Maybe Prelude.UTCTime)+describeBotResponse_lastUpdatedDateTime = Lens.lens (\DescribeBotResponse' {lastUpdatedDateTime} -> lastUpdatedDateTime) (\s@DescribeBotResponse' {} a -> s {lastUpdatedDateTime = a} :: DescribeBotResponse) Prelude.. Lens.mapping Data._Time++-- | The Amazon Resource Name (ARN) of an IAM role that has permission to+-- access the bot.+describeBotResponse_roleArn :: Lens.Lens' DescribeBotResponse (Prelude.Maybe Prelude.Text)+describeBotResponse_roleArn = Lens.lens (\DescribeBotResponse' {roleArn} -> roleArn) (\s@DescribeBotResponse' {} a -> s {roleArn = a} :: DescribeBotResponse)++-- | The response's http status code.+describeBotResponse_httpStatus :: Lens.Lens' DescribeBotResponse Prelude.Int+describeBotResponse_httpStatus = Lens.lens (\DescribeBotResponse' {httpStatus} -> httpStatus) (\s@DescribeBotResponse' {} a -> s {httpStatus = a} :: DescribeBotResponse)++instance Prelude.NFData DescribeBotResponse where+ rnf DescribeBotResponse' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botName+ `Prelude.seq` Prelude.rnf botStatus+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf dataPrivacy+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf idleSessionTTLInSeconds+ `Prelude.seq` Prelude.rnf lastUpdatedDateTime+ `Prelude.seq` Prelude.rnf roleArn+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/DescribeBotAlias.hs view
@@ -0,0 +1,328 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.DescribeBotAlias+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Get information about a specific bot alias.+module Amazonka.LexV2Models.DescribeBotAlias+ ( -- * Creating a Request+ DescribeBotAlias (..),+ newDescribeBotAlias,++ -- * Request Lenses+ describeBotAlias_botAliasId,+ describeBotAlias_botId,++ -- * Destructuring the Response+ DescribeBotAliasResponse (..),+ newDescribeBotAliasResponse,++ -- * Response Lenses+ describeBotAliasResponse_botAliasHistoryEvents,+ describeBotAliasResponse_botAliasId,+ describeBotAliasResponse_botAliasLocaleSettings,+ describeBotAliasResponse_botAliasName,+ describeBotAliasResponse_botAliasStatus,+ describeBotAliasResponse_botId,+ describeBotAliasResponse_botVersion,+ describeBotAliasResponse_conversationLogSettings,+ describeBotAliasResponse_creationDateTime,+ describeBotAliasResponse_description,+ describeBotAliasResponse_lastUpdatedDateTime,+ describeBotAliasResponse_sentimentAnalysisSettings,+ describeBotAliasResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDescribeBotAlias' smart constructor.+data DescribeBotAlias = DescribeBotAlias'+ { -- | The identifier of the bot alias to describe.+ botAliasId :: Prelude.Text,+ -- | The identifier of the bot associated with the bot alias to describe.+ botId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeBotAlias' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botAliasId', 'describeBotAlias_botAliasId' - The identifier of the bot alias to describe.+--+-- 'botId', 'describeBotAlias_botId' - The identifier of the bot associated with the bot alias to describe.+newDescribeBotAlias ::+ -- | 'botAliasId'+ Prelude.Text ->+ -- | 'botId'+ Prelude.Text ->+ DescribeBotAlias+newDescribeBotAlias pBotAliasId_ pBotId_ =+ DescribeBotAlias'+ { botAliasId = pBotAliasId_,+ botId = pBotId_+ }++-- | The identifier of the bot alias to describe.+describeBotAlias_botAliasId :: Lens.Lens' DescribeBotAlias Prelude.Text+describeBotAlias_botAliasId = Lens.lens (\DescribeBotAlias' {botAliasId} -> botAliasId) (\s@DescribeBotAlias' {} a -> s {botAliasId = a} :: DescribeBotAlias)++-- | The identifier of the bot associated with the bot alias to describe.+describeBotAlias_botId :: Lens.Lens' DescribeBotAlias Prelude.Text+describeBotAlias_botId = Lens.lens (\DescribeBotAlias' {botId} -> botId) (\s@DescribeBotAlias' {} a -> s {botId = a} :: DescribeBotAlias)++instance Core.AWSRequest DescribeBotAlias where+ type+ AWSResponse DescribeBotAlias =+ DescribeBotAliasResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeBotAliasResponse'+ Prelude.<$> ( x+ Data..?> "botAliasHistoryEvents"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "botAliasId")+ Prelude.<*> ( x+ Data..?> "botAliasLocaleSettings"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "botAliasName")+ Prelude.<*> (x Data..?> "botAliasStatus")+ Prelude.<*> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botVersion")+ Prelude.<*> (x Data..?> "conversationLogSettings")+ Prelude.<*> (x Data..?> "creationDateTime")+ Prelude.<*> (x Data..?> "description")+ Prelude.<*> (x Data..?> "lastUpdatedDateTime")+ Prelude.<*> (x Data..?> "sentimentAnalysisSettings")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeBotAlias where+ hashWithSalt _salt DescribeBotAlias' {..} =+ _salt+ `Prelude.hashWithSalt` botAliasId+ `Prelude.hashWithSalt` botId++instance Prelude.NFData DescribeBotAlias where+ rnf DescribeBotAlias' {..} =+ Prelude.rnf botAliasId+ `Prelude.seq` Prelude.rnf botId++instance Data.ToHeaders DescribeBotAlias where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DescribeBotAlias where+ toPath DescribeBotAlias' {..} =+ Prelude.mconcat+ [ "/bots/",+ Data.toBS botId,+ "/botaliases/",+ Data.toBS botAliasId,+ "/"+ ]++instance Data.ToQuery DescribeBotAlias where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDescribeBotAliasResponse' smart constructor.+data DescribeBotAliasResponse = DescribeBotAliasResponse'+ { -- | A list of events that affect a bot alias. For example, an event is+ -- recorded when the version that the alias points to changes.+ botAliasHistoryEvents :: Prelude.Maybe [BotAliasHistoryEvent],+ -- | The identifier of the bot alias.+ botAliasId :: Prelude.Maybe Prelude.Text,+ -- | The locale settings that are unique to the alias.+ botAliasLocaleSettings :: Prelude.Maybe (Prelude.HashMap Prelude.Text BotAliasLocaleSettings),+ -- | The name of the bot alias.+ botAliasName :: Prelude.Maybe Prelude.Text,+ -- | The current status of the alias. When the alias is @Available@, the+ -- alias is ready for use with your bot.+ botAliasStatus :: Prelude.Maybe BotAliasStatus,+ -- | The identifier of the bot associated with the bot alias.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The version of the bot associated with the bot alias.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | Specifics of how Amazon Lex logs text and audio conversations with the+ -- bot associated with the alias.+ conversationLogSettings :: Prelude.Maybe ConversationLogSettings,+ -- | A timestamp of the date and time that the alias was created.+ creationDateTime :: Prelude.Maybe Data.POSIX,+ -- | The description of the bot alias.+ description :: Prelude.Maybe Prelude.Text,+ -- | A timestamp of the date and time that the alias was last updated.+ lastUpdatedDateTime :: Prelude.Maybe Data.POSIX,+ sentimentAnalysisSettings :: Prelude.Maybe SentimentAnalysisSettings,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeBotAliasResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botAliasHistoryEvents', 'describeBotAliasResponse_botAliasHistoryEvents' - A list of events that affect a bot alias. For example, an event is+-- recorded when the version that the alias points to changes.+--+-- 'botAliasId', 'describeBotAliasResponse_botAliasId' - The identifier of the bot alias.+--+-- 'botAliasLocaleSettings', 'describeBotAliasResponse_botAliasLocaleSettings' - The locale settings that are unique to the alias.+--+-- 'botAliasName', 'describeBotAliasResponse_botAliasName' - The name of the bot alias.+--+-- 'botAliasStatus', 'describeBotAliasResponse_botAliasStatus' - The current status of the alias. When the alias is @Available@, the+-- alias is ready for use with your bot.+--+-- 'botId', 'describeBotAliasResponse_botId' - The identifier of the bot associated with the bot alias.+--+-- 'botVersion', 'describeBotAliasResponse_botVersion' - The version of the bot associated with the bot alias.+--+-- 'conversationLogSettings', 'describeBotAliasResponse_conversationLogSettings' - Specifics of how Amazon Lex logs text and audio conversations with the+-- bot associated with the alias.+--+-- 'creationDateTime', 'describeBotAliasResponse_creationDateTime' - A timestamp of the date and time that the alias was created.+--+-- 'description', 'describeBotAliasResponse_description' - The description of the bot alias.+--+-- 'lastUpdatedDateTime', 'describeBotAliasResponse_lastUpdatedDateTime' - A timestamp of the date and time that the alias was last updated.+--+-- 'sentimentAnalysisSettings', 'describeBotAliasResponse_sentimentAnalysisSettings' - Undocumented member.+--+-- 'httpStatus', 'describeBotAliasResponse_httpStatus' - The response's http status code.+newDescribeBotAliasResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeBotAliasResponse+newDescribeBotAliasResponse pHttpStatus_ =+ DescribeBotAliasResponse'+ { botAliasHistoryEvents =+ Prelude.Nothing,+ botAliasId = Prelude.Nothing,+ botAliasLocaleSettings = Prelude.Nothing,+ botAliasName = Prelude.Nothing,+ botAliasStatus = Prelude.Nothing,+ botId = Prelude.Nothing,+ botVersion = Prelude.Nothing,+ conversationLogSettings = Prelude.Nothing,+ creationDateTime = Prelude.Nothing,+ description = Prelude.Nothing,+ lastUpdatedDateTime = Prelude.Nothing,+ sentimentAnalysisSettings = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A list of events that affect a bot alias. For example, an event is+-- recorded when the version that the alias points to changes.+describeBotAliasResponse_botAliasHistoryEvents :: Lens.Lens' DescribeBotAliasResponse (Prelude.Maybe [BotAliasHistoryEvent])+describeBotAliasResponse_botAliasHistoryEvents = Lens.lens (\DescribeBotAliasResponse' {botAliasHistoryEvents} -> botAliasHistoryEvents) (\s@DescribeBotAliasResponse' {} a -> s {botAliasHistoryEvents = a} :: DescribeBotAliasResponse) Prelude.. Lens.mapping Lens.coerced++-- | The identifier of the bot alias.+describeBotAliasResponse_botAliasId :: Lens.Lens' DescribeBotAliasResponse (Prelude.Maybe Prelude.Text)+describeBotAliasResponse_botAliasId = Lens.lens (\DescribeBotAliasResponse' {botAliasId} -> botAliasId) (\s@DescribeBotAliasResponse' {} a -> s {botAliasId = a} :: DescribeBotAliasResponse)++-- | The locale settings that are unique to the alias.+describeBotAliasResponse_botAliasLocaleSettings :: Lens.Lens' DescribeBotAliasResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text BotAliasLocaleSettings))+describeBotAliasResponse_botAliasLocaleSettings = Lens.lens (\DescribeBotAliasResponse' {botAliasLocaleSettings} -> botAliasLocaleSettings) (\s@DescribeBotAliasResponse' {} a -> s {botAliasLocaleSettings = a} :: DescribeBotAliasResponse) Prelude.. Lens.mapping Lens.coerced++-- | The name of the bot alias.+describeBotAliasResponse_botAliasName :: Lens.Lens' DescribeBotAliasResponse (Prelude.Maybe Prelude.Text)+describeBotAliasResponse_botAliasName = Lens.lens (\DescribeBotAliasResponse' {botAliasName} -> botAliasName) (\s@DescribeBotAliasResponse' {} a -> s {botAliasName = a} :: DescribeBotAliasResponse)++-- | The current status of the alias. When the alias is @Available@, the+-- alias is ready for use with your bot.+describeBotAliasResponse_botAliasStatus :: Lens.Lens' DescribeBotAliasResponse (Prelude.Maybe BotAliasStatus)+describeBotAliasResponse_botAliasStatus = Lens.lens (\DescribeBotAliasResponse' {botAliasStatus} -> botAliasStatus) (\s@DescribeBotAliasResponse' {} a -> s {botAliasStatus = a} :: DescribeBotAliasResponse)++-- | The identifier of the bot associated with the bot alias.+describeBotAliasResponse_botId :: Lens.Lens' DescribeBotAliasResponse (Prelude.Maybe Prelude.Text)+describeBotAliasResponse_botId = Lens.lens (\DescribeBotAliasResponse' {botId} -> botId) (\s@DescribeBotAliasResponse' {} a -> s {botId = a} :: DescribeBotAliasResponse)++-- | The version of the bot associated with the bot alias.+describeBotAliasResponse_botVersion :: Lens.Lens' DescribeBotAliasResponse (Prelude.Maybe Prelude.Text)+describeBotAliasResponse_botVersion = Lens.lens (\DescribeBotAliasResponse' {botVersion} -> botVersion) (\s@DescribeBotAliasResponse' {} a -> s {botVersion = a} :: DescribeBotAliasResponse)++-- | Specifics of how Amazon Lex logs text and audio conversations with the+-- bot associated with the alias.+describeBotAliasResponse_conversationLogSettings :: Lens.Lens' DescribeBotAliasResponse (Prelude.Maybe ConversationLogSettings)+describeBotAliasResponse_conversationLogSettings = Lens.lens (\DescribeBotAliasResponse' {conversationLogSettings} -> conversationLogSettings) (\s@DescribeBotAliasResponse' {} a -> s {conversationLogSettings = a} :: DescribeBotAliasResponse)++-- | A timestamp of the date and time that the alias was created.+describeBotAliasResponse_creationDateTime :: Lens.Lens' DescribeBotAliasResponse (Prelude.Maybe Prelude.UTCTime)+describeBotAliasResponse_creationDateTime = Lens.lens (\DescribeBotAliasResponse' {creationDateTime} -> creationDateTime) (\s@DescribeBotAliasResponse' {} a -> s {creationDateTime = a} :: DescribeBotAliasResponse) Prelude.. Lens.mapping Data._Time++-- | The description of the bot alias.+describeBotAliasResponse_description :: Lens.Lens' DescribeBotAliasResponse (Prelude.Maybe Prelude.Text)+describeBotAliasResponse_description = Lens.lens (\DescribeBotAliasResponse' {description} -> description) (\s@DescribeBotAliasResponse' {} a -> s {description = a} :: DescribeBotAliasResponse)++-- | A timestamp of the date and time that the alias was last updated.+describeBotAliasResponse_lastUpdatedDateTime :: Lens.Lens' DescribeBotAliasResponse (Prelude.Maybe Prelude.UTCTime)+describeBotAliasResponse_lastUpdatedDateTime = Lens.lens (\DescribeBotAliasResponse' {lastUpdatedDateTime} -> lastUpdatedDateTime) (\s@DescribeBotAliasResponse' {} a -> s {lastUpdatedDateTime = a} :: DescribeBotAliasResponse) Prelude.. Lens.mapping Data._Time++-- | Undocumented member.+describeBotAliasResponse_sentimentAnalysisSettings :: Lens.Lens' DescribeBotAliasResponse (Prelude.Maybe SentimentAnalysisSettings)+describeBotAliasResponse_sentimentAnalysisSettings = Lens.lens (\DescribeBotAliasResponse' {sentimentAnalysisSettings} -> sentimentAnalysisSettings) (\s@DescribeBotAliasResponse' {} a -> s {sentimentAnalysisSettings = a} :: DescribeBotAliasResponse)++-- | The response's http status code.+describeBotAliasResponse_httpStatus :: Lens.Lens' DescribeBotAliasResponse Prelude.Int+describeBotAliasResponse_httpStatus = Lens.lens (\DescribeBotAliasResponse' {httpStatus} -> httpStatus) (\s@DescribeBotAliasResponse' {} a -> s {httpStatus = a} :: DescribeBotAliasResponse)++instance Prelude.NFData DescribeBotAliasResponse where+ rnf DescribeBotAliasResponse' {..} =+ Prelude.rnf botAliasHistoryEvents+ `Prelude.seq` Prelude.rnf botAliasId+ `Prelude.seq` Prelude.rnf botAliasLocaleSettings+ `Prelude.seq` Prelude.rnf botAliasName+ `Prelude.seq` Prelude.rnf botAliasStatus+ `Prelude.seq` Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf conversationLogSettings+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf lastUpdatedDateTime+ `Prelude.seq` Prelude.rnf sentimentAnalysisSettings+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/DescribeBotLocale.hs view
@@ -0,0 +1,410 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.DescribeBotLocale+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Describes the settings that a bot has for a specific locale.+module Amazonka.LexV2Models.DescribeBotLocale+ ( -- * Creating a Request+ DescribeBotLocale (..),+ newDescribeBotLocale,++ -- * Request Lenses+ describeBotLocale_botId,+ describeBotLocale_botVersion,+ describeBotLocale_localeId,++ -- * Destructuring the Response+ DescribeBotLocaleResponse (..),+ newDescribeBotLocaleResponse,++ -- * Response Lenses+ describeBotLocaleResponse_botId,+ describeBotLocaleResponse_botLocaleHistoryEvents,+ describeBotLocaleResponse_botLocaleStatus,+ describeBotLocaleResponse_botVersion,+ describeBotLocaleResponse_creationDateTime,+ describeBotLocaleResponse_description,+ describeBotLocaleResponse_failureReasons,+ describeBotLocaleResponse_intentsCount,+ describeBotLocaleResponse_lastBuildSubmittedDateTime,+ describeBotLocaleResponse_lastUpdatedDateTime,+ describeBotLocaleResponse_localeId,+ describeBotLocaleResponse_localeName,+ describeBotLocaleResponse_nluIntentConfidenceThreshold,+ describeBotLocaleResponse_recommendedActions,+ describeBotLocaleResponse_slotTypesCount,+ describeBotLocaleResponse_voiceSettings,+ describeBotLocaleResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDescribeBotLocale' smart constructor.+data DescribeBotLocale = DescribeBotLocale'+ { -- | The identifier of the bot associated with the locale.+ botId :: Prelude.Text,+ -- | The identifier of the version of the bot associated with the locale.+ botVersion :: Prelude.Text,+ -- | The unique identifier of the locale to describe. The string must match+ -- one of the supported locales. For more information, see+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+ localeId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeBotLocale' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'describeBotLocale_botId' - The identifier of the bot associated with the locale.+--+-- 'botVersion', 'describeBotLocale_botVersion' - The identifier of the version of the bot associated with the locale.+--+-- 'localeId', 'describeBotLocale_localeId' - The unique identifier of the locale to describe. The string must match+-- one of the supported locales. For more information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+newDescribeBotLocale ::+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ -- | 'localeId'+ Prelude.Text ->+ DescribeBotLocale+newDescribeBotLocale pBotId_ pBotVersion_ pLocaleId_ =+ DescribeBotLocale'+ { botId = pBotId_,+ botVersion = pBotVersion_,+ localeId = pLocaleId_+ }++-- | The identifier of the bot associated with the locale.+describeBotLocale_botId :: Lens.Lens' DescribeBotLocale Prelude.Text+describeBotLocale_botId = Lens.lens (\DescribeBotLocale' {botId} -> botId) (\s@DescribeBotLocale' {} a -> s {botId = a} :: DescribeBotLocale)++-- | The identifier of the version of the bot associated with the locale.+describeBotLocale_botVersion :: Lens.Lens' DescribeBotLocale Prelude.Text+describeBotLocale_botVersion = Lens.lens (\DescribeBotLocale' {botVersion} -> botVersion) (\s@DescribeBotLocale' {} a -> s {botVersion = a} :: DescribeBotLocale)++-- | The unique identifier of the locale to describe. The string must match+-- one of the supported locales. For more information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+describeBotLocale_localeId :: Lens.Lens' DescribeBotLocale Prelude.Text+describeBotLocale_localeId = Lens.lens (\DescribeBotLocale' {localeId} -> localeId) (\s@DescribeBotLocale' {} a -> s {localeId = a} :: DescribeBotLocale)++instance Core.AWSRequest DescribeBotLocale where+ type+ AWSResponse DescribeBotLocale =+ DescribeBotLocaleResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeBotLocaleResponse'+ Prelude.<$> (x Data..?> "botId")+ Prelude.<*> ( x+ Data..?> "botLocaleHistoryEvents"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "botLocaleStatus")+ Prelude.<*> (x Data..?> "botVersion")+ Prelude.<*> (x Data..?> "creationDateTime")+ Prelude.<*> (x Data..?> "description")+ Prelude.<*> (x Data..?> "failureReasons" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "intentsCount")+ Prelude.<*> (x Data..?> "lastBuildSubmittedDateTime")+ Prelude.<*> (x Data..?> "lastUpdatedDateTime")+ Prelude.<*> (x Data..?> "localeId")+ Prelude.<*> (x Data..?> "localeName")+ Prelude.<*> (x Data..?> "nluIntentConfidenceThreshold")+ Prelude.<*> ( x+ Data..?> "recommendedActions"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "slotTypesCount")+ Prelude.<*> (x Data..?> "voiceSettings")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeBotLocale where+ hashWithSalt _salt DescribeBotLocale' {..} =+ _salt+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` localeId++instance Prelude.NFData DescribeBotLocale where+ rnf DescribeBotLocale' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId++instance Data.ToHeaders DescribeBotLocale where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DescribeBotLocale where+ toPath DescribeBotLocale' {..} =+ Prelude.mconcat+ [ "/bots/",+ Data.toBS botId,+ "/botversions/",+ Data.toBS botVersion,+ "/botlocales/",+ Data.toBS localeId,+ "/"+ ]++instance Data.ToQuery DescribeBotLocale where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDescribeBotLocaleResponse' smart constructor.+data DescribeBotLocaleResponse = DescribeBotLocaleResponse'+ { -- | The identifier of the bot associated with the locale.+ botId :: Prelude.Maybe Prelude.Text,+ -- | History of changes, such as when a locale is used in an alias, that have+ -- taken place for the locale.+ botLocaleHistoryEvents :: Prelude.Maybe [BotLocaleHistoryEvent],+ -- | The status of the bot. If the status is @Failed@, the reasons for the+ -- failure are listed in the @failureReasons@ field.+ botLocaleStatus :: Prelude.Maybe BotLocaleStatus,+ -- | The identifier of the version of the bot associated with the locale.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | The date and time that the locale was created.+ creationDateTime :: Prelude.Maybe Data.POSIX,+ -- | The description of the locale.+ description :: Prelude.Maybe Prelude.Text,+ -- | if @botLocaleStatus@ is @Failed@, Amazon Lex explains why it failed to+ -- build the bot.+ failureReasons :: Prelude.Maybe [Prelude.Text],+ -- | The number of intents defined for the locale.+ intentsCount :: Prelude.Maybe Prelude.Int,+ -- | The date and time that the locale was last submitted for building.+ lastBuildSubmittedDateTime :: Prelude.Maybe Data.POSIX,+ -- | The date and time that the locale was last updated.+ lastUpdatedDateTime :: Prelude.Maybe Data.POSIX,+ -- | The unique identifier of the described locale.+ localeId :: Prelude.Maybe Prelude.Text,+ -- | The name of the locale.+ localeName :: Prelude.Maybe Prelude.Text,+ -- | The confidence threshold where Amazon Lex inserts the+ -- @AMAZON.FallbackIntent@ and @AMAZON.KendraSearchIntent@ intents in the+ -- list of possible intents for an utterance.+ nluIntentConfidenceThreshold :: Prelude.Maybe Prelude.Double,+ -- | Recommended actions to take to resolve an error in the @failureReasons@+ -- field.+ recommendedActions :: Prelude.Maybe [Prelude.Text],+ -- | The number of slot types defined for the locale.+ slotTypesCount :: Prelude.Maybe Prelude.Int,+ -- | The Amazon Polly voice Amazon Lex uses for voice interaction with the+ -- user.+ voiceSettings :: Prelude.Maybe VoiceSettings,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeBotLocaleResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'describeBotLocaleResponse_botId' - The identifier of the bot associated with the locale.+--+-- 'botLocaleHistoryEvents', 'describeBotLocaleResponse_botLocaleHistoryEvents' - History of changes, such as when a locale is used in an alias, that have+-- taken place for the locale.+--+-- 'botLocaleStatus', 'describeBotLocaleResponse_botLocaleStatus' - The status of the bot. If the status is @Failed@, the reasons for the+-- failure are listed in the @failureReasons@ field.+--+-- 'botVersion', 'describeBotLocaleResponse_botVersion' - The identifier of the version of the bot associated with the locale.+--+-- 'creationDateTime', 'describeBotLocaleResponse_creationDateTime' - The date and time that the locale was created.+--+-- 'description', 'describeBotLocaleResponse_description' - The description of the locale.+--+-- 'failureReasons', 'describeBotLocaleResponse_failureReasons' - if @botLocaleStatus@ is @Failed@, Amazon Lex explains why it failed to+-- build the bot.+--+-- 'intentsCount', 'describeBotLocaleResponse_intentsCount' - The number of intents defined for the locale.+--+-- 'lastBuildSubmittedDateTime', 'describeBotLocaleResponse_lastBuildSubmittedDateTime' - The date and time that the locale was last submitted for building.+--+-- 'lastUpdatedDateTime', 'describeBotLocaleResponse_lastUpdatedDateTime' - The date and time that the locale was last updated.+--+-- 'localeId', 'describeBotLocaleResponse_localeId' - The unique identifier of the described locale.+--+-- 'localeName', 'describeBotLocaleResponse_localeName' - The name of the locale.+--+-- 'nluIntentConfidenceThreshold', 'describeBotLocaleResponse_nluIntentConfidenceThreshold' - The confidence threshold where Amazon Lex inserts the+-- @AMAZON.FallbackIntent@ and @AMAZON.KendraSearchIntent@ intents in the+-- list of possible intents for an utterance.+--+-- 'recommendedActions', 'describeBotLocaleResponse_recommendedActions' - Recommended actions to take to resolve an error in the @failureReasons@+-- field.+--+-- 'slotTypesCount', 'describeBotLocaleResponse_slotTypesCount' - The number of slot types defined for the locale.+--+-- 'voiceSettings', 'describeBotLocaleResponse_voiceSettings' - The Amazon Polly voice Amazon Lex uses for voice interaction with the+-- user.+--+-- 'httpStatus', 'describeBotLocaleResponse_httpStatus' - The response's http status code.+newDescribeBotLocaleResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeBotLocaleResponse+newDescribeBotLocaleResponse pHttpStatus_ =+ DescribeBotLocaleResponse'+ { botId = Prelude.Nothing,+ botLocaleHistoryEvents = Prelude.Nothing,+ botLocaleStatus = Prelude.Nothing,+ botVersion = Prelude.Nothing,+ creationDateTime = Prelude.Nothing,+ description = Prelude.Nothing,+ failureReasons = Prelude.Nothing,+ intentsCount = Prelude.Nothing,+ lastBuildSubmittedDateTime = Prelude.Nothing,+ lastUpdatedDateTime = Prelude.Nothing,+ localeId = Prelude.Nothing,+ localeName = Prelude.Nothing,+ nluIntentConfidenceThreshold = Prelude.Nothing,+ recommendedActions = Prelude.Nothing,+ slotTypesCount = Prelude.Nothing,+ voiceSettings = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The identifier of the bot associated with the locale.+describeBotLocaleResponse_botId :: Lens.Lens' DescribeBotLocaleResponse (Prelude.Maybe Prelude.Text)+describeBotLocaleResponse_botId = Lens.lens (\DescribeBotLocaleResponse' {botId} -> botId) (\s@DescribeBotLocaleResponse' {} a -> s {botId = a} :: DescribeBotLocaleResponse)++-- | History of changes, such as when a locale is used in an alias, that have+-- taken place for the locale.+describeBotLocaleResponse_botLocaleHistoryEvents :: Lens.Lens' DescribeBotLocaleResponse (Prelude.Maybe [BotLocaleHistoryEvent])+describeBotLocaleResponse_botLocaleHistoryEvents = Lens.lens (\DescribeBotLocaleResponse' {botLocaleHistoryEvents} -> botLocaleHistoryEvents) (\s@DescribeBotLocaleResponse' {} a -> s {botLocaleHistoryEvents = a} :: DescribeBotLocaleResponse) Prelude.. Lens.mapping Lens.coerced++-- | The status of the bot. If the status is @Failed@, the reasons for the+-- failure are listed in the @failureReasons@ field.+describeBotLocaleResponse_botLocaleStatus :: Lens.Lens' DescribeBotLocaleResponse (Prelude.Maybe BotLocaleStatus)+describeBotLocaleResponse_botLocaleStatus = Lens.lens (\DescribeBotLocaleResponse' {botLocaleStatus} -> botLocaleStatus) (\s@DescribeBotLocaleResponse' {} a -> s {botLocaleStatus = a} :: DescribeBotLocaleResponse)++-- | The identifier of the version of the bot associated with the locale.+describeBotLocaleResponse_botVersion :: Lens.Lens' DescribeBotLocaleResponse (Prelude.Maybe Prelude.Text)+describeBotLocaleResponse_botVersion = Lens.lens (\DescribeBotLocaleResponse' {botVersion} -> botVersion) (\s@DescribeBotLocaleResponse' {} a -> s {botVersion = a} :: DescribeBotLocaleResponse)++-- | The date and time that the locale was created.+describeBotLocaleResponse_creationDateTime :: Lens.Lens' DescribeBotLocaleResponse (Prelude.Maybe Prelude.UTCTime)+describeBotLocaleResponse_creationDateTime = Lens.lens (\DescribeBotLocaleResponse' {creationDateTime} -> creationDateTime) (\s@DescribeBotLocaleResponse' {} a -> s {creationDateTime = a} :: DescribeBotLocaleResponse) Prelude.. Lens.mapping Data._Time++-- | The description of the locale.+describeBotLocaleResponse_description :: Lens.Lens' DescribeBotLocaleResponse (Prelude.Maybe Prelude.Text)+describeBotLocaleResponse_description = Lens.lens (\DescribeBotLocaleResponse' {description} -> description) (\s@DescribeBotLocaleResponse' {} a -> s {description = a} :: DescribeBotLocaleResponse)++-- | if @botLocaleStatus@ is @Failed@, Amazon Lex explains why it failed to+-- build the bot.+describeBotLocaleResponse_failureReasons :: Lens.Lens' DescribeBotLocaleResponse (Prelude.Maybe [Prelude.Text])+describeBotLocaleResponse_failureReasons = Lens.lens (\DescribeBotLocaleResponse' {failureReasons} -> failureReasons) (\s@DescribeBotLocaleResponse' {} a -> s {failureReasons = a} :: DescribeBotLocaleResponse) Prelude.. Lens.mapping Lens.coerced++-- | The number of intents defined for the locale.+describeBotLocaleResponse_intentsCount :: Lens.Lens' DescribeBotLocaleResponse (Prelude.Maybe Prelude.Int)+describeBotLocaleResponse_intentsCount = Lens.lens (\DescribeBotLocaleResponse' {intentsCount} -> intentsCount) (\s@DescribeBotLocaleResponse' {} a -> s {intentsCount = a} :: DescribeBotLocaleResponse)++-- | The date and time that the locale was last submitted for building.+describeBotLocaleResponse_lastBuildSubmittedDateTime :: Lens.Lens' DescribeBotLocaleResponse (Prelude.Maybe Prelude.UTCTime)+describeBotLocaleResponse_lastBuildSubmittedDateTime = Lens.lens (\DescribeBotLocaleResponse' {lastBuildSubmittedDateTime} -> lastBuildSubmittedDateTime) (\s@DescribeBotLocaleResponse' {} a -> s {lastBuildSubmittedDateTime = a} :: DescribeBotLocaleResponse) Prelude.. Lens.mapping Data._Time++-- | The date and time that the locale was last updated.+describeBotLocaleResponse_lastUpdatedDateTime :: Lens.Lens' DescribeBotLocaleResponse (Prelude.Maybe Prelude.UTCTime)+describeBotLocaleResponse_lastUpdatedDateTime = Lens.lens (\DescribeBotLocaleResponse' {lastUpdatedDateTime} -> lastUpdatedDateTime) (\s@DescribeBotLocaleResponse' {} a -> s {lastUpdatedDateTime = a} :: DescribeBotLocaleResponse) Prelude.. Lens.mapping Data._Time++-- | The unique identifier of the described locale.+describeBotLocaleResponse_localeId :: Lens.Lens' DescribeBotLocaleResponse (Prelude.Maybe Prelude.Text)+describeBotLocaleResponse_localeId = Lens.lens (\DescribeBotLocaleResponse' {localeId} -> localeId) (\s@DescribeBotLocaleResponse' {} a -> s {localeId = a} :: DescribeBotLocaleResponse)++-- | The name of the locale.+describeBotLocaleResponse_localeName :: Lens.Lens' DescribeBotLocaleResponse (Prelude.Maybe Prelude.Text)+describeBotLocaleResponse_localeName = Lens.lens (\DescribeBotLocaleResponse' {localeName} -> localeName) (\s@DescribeBotLocaleResponse' {} a -> s {localeName = a} :: DescribeBotLocaleResponse)++-- | The confidence threshold where Amazon Lex inserts the+-- @AMAZON.FallbackIntent@ and @AMAZON.KendraSearchIntent@ intents in the+-- list of possible intents for an utterance.+describeBotLocaleResponse_nluIntentConfidenceThreshold :: Lens.Lens' DescribeBotLocaleResponse (Prelude.Maybe Prelude.Double)+describeBotLocaleResponse_nluIntentConfidenceThreshold = Lens.lens (\DescribeBotLocaleResponse' {nluIntentConfidenceThreshold} -> nluIntentConfidenceThreshold) (\s@DescribeBotLocaleResponse' {} a -> s {nluIntentConfidenceThreshold = a} :: DescribeBotLocaleResponse)++-- | Recommended actions to take to resolve an error in the @failureReasons@+-- field.+describeBotLocaleResponse_recommendedActions :: Lens.Lens' DescribeBotLocaleResponse (Prelude.Maybe [Prelude.Text])+describeBotLocaleResponse_recommendedActions = Lens.lens (\DescribeBotLocaleResponse' {recommendedActions} -> recommendedActions) (\s@DescribeBotLocaleResponse' {} a -> s {recommendedActions = a} :: DescribeBotLocaleResponse) Prelude.. Lens.mapping Lens.coerced++-- | The number of slot types defined for the locale.+describeBotLocaleResponse_slotTypesCount :: Lens.Lens' DescribeBotLocaleResponse (Prelude.Maybe Prelude.Int)+describeBotLocaleResponse_slotTypesCount = Lens.lens (\DescribeBotLocaleResponse' {slotTypesCount} -> slotTypesCount) (\s@DescribeBotLocaleResponse' {} a -> s {slotTypesCount = a} :: DescribeBotLocaleResponse)++-- | The Amazon Polly voice Amazon Lex uses for voice interaction with the+-- user.+describeBotLocaleResponse_voiceSettings :: Lens.Lens' DescribeBotLocaleResponse (Prelude.Maybe VoiceSettings)+describeBotLocaleResponse_voiceSettings = Lens.lens (\DescribeBotLocaleResponse' {voiceSettings} -> voiceSettings) (\s@DescribeBotLocaleResponse' {} a -> s {voiceSettings = a} :: DescribeBotLocaleResponse)++-- | The response's http status code.+describeBotLocaleResponse_httpStatus :: Lens.Lens' DescribeBotLocaleResponse Prelude.Int+describeBotLocaleResponse_httpStatus = Lens.lens (\DescribeBotLocaleResponse' {httpStatus} -> httpStatus) (\s@DescribeBotLocaleResponse' {} a -> s {httpStatus = a} :: DescribeBotLocaleResponse)++instance Prelude.NFData DescribeBotLocaleResponse where+ rnf DescribeBotLocaleResponse' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botLocaleHistoryEvents+ `Prelude.seq` Prelude.rnf botLocaleStatus+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf failureReasons+ `Prelude.seq` Prelude.rnf intentsCount+ `Prelude.seq` Prelude.rnf lastBuildSubmittedDateTime+ `Prelude.seq` Prelude.rnf lastUpdatedDateTime+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf localeName+ `Prelude.seq` Prelude.rnf nluIntentConfidenceThreshold+ `Prelude.seq` Prelude.rnf recommendedActions+ `Prelude.seq` Prelude.rnf slotTypesCount+ `Prelude.seq` Prelude.rnf voiceSettings+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/DescribeBotRecommendation.hs view
@@ -0,0 +1,377 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.DescribeBotRecommendation+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Provides metadata information about a bot recommendation. This+-- information will enable you to get a description on the request inputs,+-- to download associated transcripts after processing is complete, and to+-- download intents and slot-types generated by the bot recommendation.+module Amazonka.LexV2Models.DescribeBotRecommendation+ ( -- * Creating a Request+ DescribeBotRecommendation (..),+ newDescribeBotRecommendation,++ -- * Request Lenses+ describeBotRecommendation_botId,+ describeBotRecommendation_botVersion,+ describeBotRecommendation_localeId,+ describeBotRecommendation_botRecommendationId,++ -- * Destructuring the Response+ DescribeBotRecommendationResponse (..),+ newDescribeBotRecommendationResponse,++ -- * Response Lenses+ describeBotRecommendationResponse_botId,+ describeBotRecommendationResponse_botRecommendationId,+ describeBotRecommendationResponse_botRecommendationResults,+ describeBotRecommendationResponse_botRecommendationStatus,+ describeBotRecommendationResponse_botVersion,+ describeBotRecommendationResponse_creationDateTime,+ describeBotRecommendationResponse_encryptionSetting,+ describeBotRecommendationResponse_failureReasons,+ describeBotRecommendationResponse_lastUpdatedDateTime,+ describeBotRecommendationResponse_localeId,+ describeBotRecommendationResponse_transcriptSourceSetting,+ describeBotRecommendationResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDescribeBotRecommendation' smart constructor.+data DescribeBotRecommendation = DescribeBotRecommendation'+ { -- | The unique identifier of the bot associated with the bot recommendation.+ botId :: Prelude.Text,+ -- | The version of the bot associated with the bot recommendation.+ botVersion :: Prelude.Text,+ -- | The identifier of the language and locale of the bot recommendation to+ -- describe. The string must match one of the supported locales. For more+ -- information, see+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+ localeId :: Prelude.Text,+ -- | The identifier of the bot recommendation to describe.+ botRecommendationId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeBotRecommendation' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'describeBotRecommendation_botId' - The unique identifier of the bot associated with the bot recommendation.+--+-- 'botVersion', 'describeBotRecommendation_botVersion' - The version of the bot associated with the bot recommendation.+--+-- 'localeId', 'describeBotRecommendation_localeId' - The identifier of the language and locale of the bot recommendation to+-- describe. The string must match one of the supported locales. For more+-- information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+--+-- 'botRecommendationId', 'describeBotRecommendation_botRecommendationId' - The identifier of the bot recommendation to describe.+newDescribeBotRecommendation ::+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ -- | 'localeId'+ Prelude.Text ->+ -- | 'botRecommendationId'+ Prelude.Text ->+ DescribeBotRecommendation+newDescribeBotRecommendation+ pBotId_+ pBotVersion_+ pLocaleId_+ pBotRecommendationId_ =+ DescribeBotRecommendation'+ { botId = pBotId_,+ botVersion = pBotVersion_,+ localeId = pLocaleId_,+ botRecommendationId = pBotRecommendationId_+ }++-- | The unique identifier of the bot associated with the bot recommendation.+describeBotRecommendation_botId :: Lens.Lens' DescribeBotRecommendation Prelude.Text+describeBotRecommendation_botId = Lens.lens (\DescribeBotRecommendation' {botId} -> botId) (\s@DescribeBotRecommendation' {} a -> s {botId = a} :: DescribeBotRecommendation)++-- | The version of the bot associated with the bot recommendation.+describeBotRecommendation_botVersion :: Lens.Lens' DescribeBotRecommendation Prelude.Text+describeBotRecommendation_botVersion = Lens.lens (\DescribeBotRecommendation' {botVersion} -> botVersion) (\s@DescribeBotRecommendation' {} a -> s {botVersion = a} :: DescribeBotRecommendation)++-- | The identifier of the language and locale of the bot recommendation to+-- describe. The string must match one of the supported locales. For more+-- information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+describeBotRecommendation_localeId :: Lens.Lens' DescribeBotRecommendation Prelude.Text+describeBotRecommendation_localeId = Lens.lens (\DescribeBotRecommendation' {localeId} -> localeId) (\s@DescribeBotRecommendation' {} a -> s {localeId = a} :: DescribeBotRecommendation)++-- | The identifier of the bot recommendation to describe.+describeBotRecommendation_botRecommendationId :: Lens.Lens' DescribeBotRecommendation Prelude.Text+describeBotRecommendation_botRecommendationId = Lens.lens (\DescribeBotRecommendation' {botRecommendationId} -> botRecommendationId) (\s@DescribeBotRecommendation' {} a -> s {botRecommendationId = a} :: DescribeBotRecommendation)++instance Core.AWSRequest DescribeBotRecommendation where+ type+ AWSResponse DescribeBotRecommendation =+ DescribeBotRecommendationResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeBotRecommendationResponse'+ Prelude.<$> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botRecommendationId")+ Prelude.<*> (x Data..?> "botRecommendationResults")+ Prelude.<*> (x Data..?> "botRecommendationStatus")+ Prelude.<*> (x Data..?> "botVersion")+ Prelude.<*> (x Data..?> "creationDateTime")+ Prelude.<*> (x Data..?> "encryptionSetting")+ Prelude.<*> (x Data..?> "failureReasons" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "lastUpdatedDateTime")+ Prelude.<*> (x Data..?> "localeId")+ Prelude.<*> (x Data..?> "transcriptSourceSetting")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeBotRecommendation where+ hashWithSalt _salt DescribeBotRecommendation' {..} =+ _salt+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` localeId+ `Prelude.hashWithSalt` botRecommendationId++instance Prelude.NFData DescribeBotRecommendation where+ rnf DescribeBotRecommendation' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf botRecommendationId++instance Data.ToHeaders DescribeBotRecommendation where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DescribeBotRecommendation where+ toPath DescribeBotRecommendation' {..} =+ Prelude.mconcat+ [ "/bots/",+ Data.toBS botId,+ "/botversions/",+ Data.toBS botVersion,+ "/botlocales/",+ Data.toBS localeId,+ "/botrecommendations/",+ Data.toBS botRecommendationId,+ "/"+ ]++instance Data.ToQuery DescribeBotRecommendation where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDescribeBotRecommendationResponse' smart constructor.+data DescribeBotRecommendationResponse = DescribeBotRecommendationResponse'+ { -- | The identifier of the bot associated with the bot recommendation.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The identifier of the bot recommendation being described.+ botRecommendationId :: Prelude.Maybe Prelude.Text,+ -- | The object representing the URL of the bot definition, the URL of the+ -- associated transcript and a statistical summary of the bot+ -- recommendation results.+ botRecommendationResults :: Prelude.Maybe BotRecommendationResults,+ -- | The status of the bot recommendation. If the status is Failed, then the+ -- reasons for the failure are listed in the failureReasons field.+ botRecommendationStatus :: Prelude.Maybe BotRecommendationStatus,+ -- | The version of the bot associated with the bot recommendation.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | The date and time that the bot recommendation was created.+ creationDateTime :: Prelude.Maybe Data.POSIX,+ -- | The object representing the passwords that were used to encrypt the data+ -- related to the bot recommendation results, as well as the KMS key ARN+ -- used to encrypt the associated metadata.+ encryptionSetting :: Prelude.Maybe EncryptionSetting,+ -- | If botRecommendationStatus is Failed, Amazon Lex explains why.+ failureReasons :: Prelude.Maybe [Prelude.Text],+ -- | The date and time that the bot recommendation was last updated.+ lastUpdatedDateTime :: Prelude.Maybe Data.POSIX,+ -- | The identifier of the language and locale of the bot recommendation to+ -- describe.+ localeId :: Prelude.Maybe Prelude.Text,+ -- | The object representing the Amazon S3 bucket containing the transcript,+ -- as well as the associated metadata.+ transcriptSourceSetting :: Prelude.Maybe TranscriptSourceSetting,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeBotRecommendationResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'describeBotRecommendationResponse_botId' - The identifier of the bot associated with the bot recommendation.+--+-- 'botRecommendationId', 'describeBotRecommendationResponse_botRecommendationId' - The identifier of the bot recommendation being described.+--+-- 'botRecommendationResults', 'describeBotRecommendationResponse_botRecommendationResults' - The object representing the URL of the bot definition, the URL of the+-- associated transcript and a statistical summary of the bot+-- recommendation results.+--+-- 'botRecommendationStatus', 'describeBotRecommendationResponse_botRecommendationStatus' - The status of the bot recommendation. If the status is Failed, then the+-- reasons for the failure are listed in the failureReasons field.+--+-- 'botVersion', 'describeBotRecommendationResponse_botVersion' - The version of the bot associated with the bot recommendation.+--+-- 'creationDateTime', 'describeBotRecommendationResponse_creationDateTime' - The date and time that the bot recommendation was created.+--+-- 'encryptionSetting', 'describeBotRecommendationResponse_encryptionSetting' - The object representing the passwords that were used to encrypt the data+-- related to the bot recommendation results, as well as the KMS key ARN+-- used to encrypt the associated metadata.+--+-- 'failureReasons', 'describeBotRecommendationResponse_failureReasons' - If botRecommendationStatus is Failed, Amazon Lex explains why.+--+-- 'lastUpdatedDateTime', 'describeBotRecommendationResponse_lastUpdatedDateTime' - The date and time that the bot recommendation was last updated.+--+-- 'localeId', 'describeBotRecommendationResponse_localeId' - The identifier of the language and locale of the bot recommendation to+-- describe.+--+-- 'transcriptSourceSetting', 'describeBotRecommendationResponse_transcriptSourceSetting' - The object representing the Amazon S3 bucket containing the transcript,+-- as well as the associated metadata.+--+-- 'httpStatus', 'describeBotRecommendationResponse_httpStatus' - The response's http status code.+newDescribeBotRecommendationResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeBotRecommendationResponse+newDescribeBotRecommendationResponse pHttpStatus_ =+ DescribeBotRecommendationResponse'+ { botId =+ Prelude.Nothing,+ botRecommendationId = Prelude.Nothing,+ botRecommendationResults =+ Prelude.Nothing,+ botRecommendationStatus =+ Prelude.Nothing,+ botVersion = Prelude.Nothing,+ creationDateTime = Prelude.Nothing,+ encryptionSetting = Prelude.Nothing,+ failureReasons = Prelude.Nothing,+ lastUpdatedDateTime = Prelude.Nothing,+ localeId = Prelude.Nothing,+ transcriptSourceSetting =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The identifier of the bot associated with the bot recommendation.+describeBotRecommendationResponse_botId :: Lens.Lens' DescribeBotRecommendationResponse (Prelude.Maybe Prelude.Text)+describeBotRecommendationResponse_botId = Lens.lens (\DescribeBotRecommendationResponse' {botId} -> botId) (\s@DescribeBotRecommendationResponse' {} a -> s {botId = a} :: DescribeBotRecommendationResponse)++-- | The identifier of the bot recommendation being described.+describeBotRecommendationResponse_botRecommendationId :: Lens.Lens' DescribeBotRecommendationResponse (Prelude.Maybe Prelude.Text)+describeBotRecommendationResponse_botRecommendationId = Lens.lens (\DescribeBotRecommendationResponse' {botRecommendationId} -> botRecommendationId) (\s@DescribeBotRecommendationResponse' {} a -> s {botRecommendationId = a} :: DescribeBotRecommendationResponse)++-- | The object representing the URL of the bot definition, the URL of the+-- associated transcript and a statistical summary of the bot+-- recommendation results.+describeBotRecommendationResponse_botRecommendationResults :: Lens.Lens' DescribeBotRecommendationResponse (Prelude.Maybe BotRecommendationResults)+describeBotRecommendationResponse_botRecommendationResults = Lens.lens (\DescribeBotRecommendationResponse' {botRecommendationResults} -> botRecommendationResults) (\s@DescribeBotRecommendationResponse' {} a -> s {botRecommendationResults = a} :: DescribeBotRecommendationResponse)++-- | The status of the bot recommendation. If the status is Failed, then the+-- reasons for the failure are listed in the failureReasons field.+describeBotRecommendationResponse_botRecommendationStatus :: Lens.Lens' DescribeBotRecommendationResponse (Prelude.Maybe BotRecommendationStatus)+describeBotRecommendationResponse_botRecommendationStatus = Lens.lens (\DescribeBotRecommendationResponse' {botRecommendationStatus} -> botRecommendationStatus) (\s@DescribeBotRecommendationResponse' {} a -> s {botRecommendationStatus = a} :: DescribeBotRecommendationResponse)++-- | The version of the bot associated with the bot recommendation.+describeBotRecommendationResponse_botVersion :: Lens.Lens' DescribeBotRecommendationResponse (Prelude.Maybe Prelude.Text)+describeBotRecommendationResponse_botVersion = Lens.lens (\DescribeBotRecommendationResponse' {botVersion} -> botVersion) (\s@DescribeBotRecommendationResponse' {} a -> s {botVersion = a} :: DescribeBotRecommendationResponse)++-- | The date and time that the bot recommendation was created.+describeBotRecommendationResponse_creationDateTime :: Lens.Lens' DescribeBotRecommendationResponse (Prelude.Maybe Prelude.UTCTime)+describeBotRecommendationResponse_creationDateTime = Lens.lens (\DescribeBotRecommendationResponse' {creationDateTime} -> creationDateTime) (\s@DescribeBotRecommendationResponse' {} a -> s {creationDateTime = a} :: DescribeBotRecommendationResponse) Prelude.. Lens.mapping Data._Time++-- | The object representing the passwords that were used to encrypt the data+-- related to the bot recommendation results, as well as the KMS key ARN+-- used to encrypt the associated metadata.+describeBotRecommendationResponse_encryptionSetting :: Lens.Lens' DescribeBotRecommendationResponse (Prelude.Maybe EncryptionSetting)+describeBotRecommendationResponse_encryptionSetting = Lens.lens (\DescribeBotRecommendationResponse' {encryptionSetting} -> encryptionSetting) (\s@DescribeBotRecommendationResponse' {} a -> s {encryptionSetting = a} :: DescribeBotRecommendationResponse)++-- | If botRecommendationStatus is Failed, Amazon Lex explains why.+describeBotRecommendationResponse_failureReasons :: Lens.Lens' DescribeBotRecommendationResponse (Prelude.Maybe [Prelude.Text])+describeBotRecommendationResponse_failureReasons = Lens.lens (\DescribeBotRecommendationResponse' {failureReasons} -> failureReasons) (\s@DescribeBotRecommendationResponse' {} a -> s {failureReasons = a} :: DescribeBotRecommendationResponse) Prelude.. Lens.mapping Lens.coerced++-- | The date and time that the bot recommendation was last updated.+describeBotRecommendationResponse_lastUpdatedDateTime :: Lens.Lens' DescribeBotRecommendationResponse (Prelude.Maybe Prelude.UTCTime)+describeBotRecommendationResponse_lastUpdatedDateTime = Lens.lens (\DescribeBotRecommendationResponse' {lastUpdatedDateTime} -> lastUpdatedDateTime) (\s@DescribeBotRecommendationResponse' {} a -> s {lastUpdatedDateTime = a} :: DescribeBotRecommendationResponse) Prelude.. Lens.mapping Data._Time++-- | The identifier of the language and locale of the bot recommendation to+-- describe.+describeBotRecommendationResponse_localeId :: Lens.Lens' DescribeBotRecommendationResponse (Prelude.Maybe Prelude.Text)+describeBotRecommendationResponse_localeId = Lens.lens (\DescribeBotRecommendationResponse' {localeId} -> localeId) (\s@DescribeBotRecommendationResponse' {} a -> s {localeId = a} :: DescribeBotRecommendationResponse)++-- | The object representing the Amazon S3 bucket containing the transcript,+-- as well as the associated metadata.+describeBotRecommendationResponse_transcriptSourceSetting :: Lens.Lens' DescribeBotRecommendationResponse (Prelude.Maybe TranscriptSourceSetting)+describeBotRecommendationResponse_transcriptSourceSetting = Lens.lens (\DescribeBotRecommendationResponse' {transcriptSourceSetting} -> transcriptSourceSetting) (\s@DescribeBotRecommendationResponse' {} a -> s {transcriptSourceSetting = a} :: DescribeBotRecommendationResponse)++-- | The response's http status code.+describeBotRecommendationResponse_httpStatus :: Lens.Lens' DescribeBotRecommendationResponse Prelude.Int+describeBotRecommendationResponse_httpStatus = Lens.lens (\DescribeBotRecommendationResponse' {httpStatus} -> httpStatus) (\s@DescribeBotRecommendationResponse' {} a -> s {httpStatus = a} :: DescribeBotRecommendationResponse)++instance+ Prelude.NFData+ DescribeBotRecommendationResponse+ where+ rnf DescribeBotRecommendationResponse' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botRecommendationId+ `Prelude.seq` Prelude.rnf botRecommendationResults+ `Prelude.seq` Prelude.rnf botRecommendationStatus+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf encryptionSetting+ `Prelude.seq` Prelude.rnf failureReasons+ `Prelude.seq` Prelude.rnf lastUpdatedDateTime+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf transcriptSourceSetting+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/DescribeBotVersion.hs view
@@ -0,0 +1,302 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.DescribeBotVersion+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Provides metadata about a version of a bot.+module Amazonka.LexV2Models.DescribeBotVersion+ ( -- * Creating a Request+ DescribeBotVersion (..),+ newDescribeBotVersion,++ -- * Request Lenses+ describeBotVersion_botId,+ describeBotVersion_botVersion,++ -- * Destructuring the Response+ DescribeBotVersionResponse (..),+ newDescribeBotVersionResponse,++ -- * Response Lenses+ describeBotVersionResponse_botId,+ describeBotVersionResponse_botName,+ describeBotVersionResponse_botStatus,+ describeBotVersionResponse_botVersion,+ describeBotVersionResponse_creationDateTime,+ describeBotVersionResponse_dataPrivacy,+ describeBotVersionResponse_description,+ describeBotVersionResponse_failureReasons,+ describeBotVersionResponse_idleSessionTTLInSeconds,+ describeBotVersionResponse_roleArn,+ describeBotVersionResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDescribeBotVersion' smart constructor.+data DescribeBotVersion = DescribeBotVersion'+ { -- | The identifier of the bot containing the version to return metadata for.+ botId :: Prelude.Text,+ -- | The version of the bot to return metadata for.+ botVersion :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeBotVersion' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'describeBotVersion_botId' - The identifier of the bot containing the version to return metadata for.+--+-- 'botVersion', 'describeBotVersion_botVersion' - The version of the bot to return metadata for.+newDescribeBotVersion ::+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ DescribeBotVersion+newDescribeBotVersion pBotId_ pBotVersion_ =+ DescribeBotVersion'+ { botId = pBotId_,+ botVersion = pBotVersion_+ }++-- | The identifier of the bot containing the version to return metadata for.+describeBotVersion_botId :: Lens.Lens' DescribeBotVersion Prelude.Text+describeBotVersion_botId = Lens.lens (\DescribeBotVersion' {botId} -> botId) (\s@DescribeBotVersion' {} a -> s {botId = a} :: DescribeBotVersion)++-- | The version of the bot to return metadata for.+describeBotVersion_botVersion :: Lens.Lens' DescribeBotVersion Prelude.Text+describeBotVersion_botVersion = Lens.lens (\DescribeBotVersion' {botVersion} -> botVersion) (\s@DescribeBotVersion' {} a -> s {botVersion = a} :: DescribeBotVersion)++instance Core.AWSRequest DescribeBotVersion where+ type+ AWSResponse DescribeBotVersion =+ DescribeBotVersionResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeBotVersionResponse'+ Prelude.<$> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botName")+ Prelude.<*> (x Data..?> "botStatus")+ Prelude.<*> (x Data..?> "botVersion")+ Prelude.<*> (x Data..?> "creationDateTime")+ Prelude.<*> (x Data..?> "dataPrivacy")+ Prelude.<*> (x Data..?> "description")+ Prelude.<*> (x Data..?> "failureReasons" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "idleSessionTTLInSeconds")+ Prelude.<*> (x Data..?> "roleArn")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeBotVersion where+ hashWithSalt _salt DescribeBotVersion' {..} =+ _salt+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion++instance Prelude.NFData DescribeBotVersion where+ rnf DescribeBotVersion' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion++instance Data.ToHeaders DescribeBotVersion where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DescribeBotVersion where+ toPath DescribeBotVersion' {..} =+ Prelude.mconcat+ [ "/bots/",+ Data.toBS botId,+ "/botversions/",+ Data.toBS botVersion,+ "/"+ ]++instance Data.ToQuery DescribeBotVersion where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDescribeBotVersionResponse' smart constructor.+data DescribeBotVersionResponse = DescribeBotVersionResponse'+ { -- | The identifier of the bot that contains the version.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The name of the bot that contains the version.+ botName :: Prelude.Maybe Prelude.Text,+ -- | The current status of the bot. When the status is @Available@, the bot+ -- version is ready for use.+ botStatus :: Prelude.Maybe BotStatus,+ -- | The version of the bot to describe.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | A timestamp of the date and time that the bot version was created.+ creationDateTime :: Prelude.Maybe Data.POSIX,+ -- | Data privacy settings for the bot version.+ dataPrivacy :: Prelude.Maybe DataPrivacy,+ -- | The description specified for the bot.+ description :: Prelude.Maybe Prelude.Text,+ -- | If the @botStatus@ is @Failed@, this contains a list of reasons that the+ -- version couldn\'t be built.+ failureReasons :: Prelude.Maybe [Prelude.Text],+ -- | The number of seconds that a session with the bot remains active before+ -- it is discarded by Amazon Lex.+ idleSessionTTLInSeconds :: Prelude.Maybe Prelude.Natural,+ -- | The Amazon Resource Name (ARN) of an IAM role that has permission to+ -- access the bot version.+ roleArn :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeBotVersionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'describeBotVersionResponse_botId' - The identifier of the bot that contains the version.+--+-- 'botName', 'describeBotVersionResponse_botName' - The name of the bot that contains the version.+--+-- 'botStatus', 'describeBotVersionResponse_botStatus' - The current status of the bot. When the status is @Available@, the bot+-- version is ready for use.+--+-- 'botVersion', 'describeBotVersionResponse_botVersion' - The version of the bot to describe.+--+-- 'creationDateTime', 'describeBotVersionResponse_creationDateTime' - A timestamp of the date and time that the bot version was created.+--+-- 'dataPrivacy', 'describeBotVersionResponse_dataPrivacy' - Data privacy settings for the bot version.+--+-- 'description', 'describeBotVersionResponse_description' - The description specified for the bot.+--+-- 'failureReasons', 'describeBotVersionResponse_failureReasons' - If the @botStatus@ is @Failed@, this contains a list of reasons that the+-- version couldn\'t be built.+--+-- 'idleSessionTTLInSeconds', 'describeBotVersionResponse_idleSessionTTLInSeconds' - The number of seconds that a session with the bot remains active before+-- it is discarded by Amazon Lex.+--+-- 'roleArn', 'describeBotVersionResponse_roleArn' - The Amazon Resource Name (ARN) of an IAM role that has permission to+-- access the bot version.+--+-- 'httpStatus', 'describeBotVersionResponse_httpStatus' - The response's http status code.+newDescribeBotVersionResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeBotVersionResponse+newDescribeBotVersionResponse pHttpStatus_ =+ DescribeBotVersionResponse'+ { botId =+ Prelude.Nothing,+ botName = Prelude.Nothing,+ botStatus = Prelude.Nothing,+ botVersion = Prelude.Nothing,+ creationDateTime = Prelude.Nothing,+ dataPrivacy = Prelude.Nothing,+ description = Prelude.Nothing,+ failureReasons = Prelude.Nothing,+ idleSessionTTLInSeconds = Prelude.Nothing,+ roleArn = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The identifier of the bot that contains the version.+describeBotVersionResponse_botId :: Lens.Lens' DescribeBotVersionResponse (Prelude.Maybe Prelude.Text)+describeBotVersionResponse_botId = Lens.lens (\DescribeBotVersionResponse' {botId} -> botId) (\s@DescribeBotVersionResponse' {} a -> s {botId = a} :: DescribeBotVersionResponse)++-- | The name of the bot that contains the version.+describeBotVersionResponse_botName :: Lens.Lens' DescribeBotVersionResponse (Prelude.Maybe Prelude.Text)+describeBotVersionResponse_botName = Lens.lens (\DescribeBotVersionResponse' {botName} -> botName) (\s@DescribeBotVersionResponse' {} a -> s {botName = a} :: DescribeBotVersionResponse)++-- | The current status of the bot. When the status is @Available@, the bot+-- version is ready for use.+describeBotVersionResponse_botStatus :: Lens.Lens' DescribeBotVersionResponse (Prelude.Maybe BotStatus)+describeBotVersionResponse_botStatus = Lens.lens (\DescribeBotVersionResponse' {botStatus} -> botStatus) (\s@DescribeBotVersionResponse' {} a -> s {botStatus = a} :: DescribeBotVersionResponse)++-- | The version of the bot to describe.+describeBotVersionResponse_botVersion :: Lens.Lens' DescribeBotVersionResponse (Prelude.Maybe Prelude.Text)+describeBotVersionResponse_botVersion = Lens.lens (\DescribeBotVersionResponse' {botVersion} -> botVersion) (\s@DescribeBotVersionResponse' {} a -> s {botVersion = a} :: DescribeBotVersionResponse)++-- | A timestamp of the date and time that the bot version was created.+describeBotVersionResponse_creationDateTime :: Lens.Lens' DescribeBotVersionResponse (Prelude.Maybe Prelude.UTCTime)+describeBotVersionResponse_creationDateTime = Lens.lens (\DescribeBotVersionResponse' {creationDateTime} -> creationDateTime) (\s@DescribeBotVersionResponse' {} a -> s {creationDateTime = a} :: DescribeBotVersionResponse) Prelude.. Lens.mapping Data._Time++-- | Data privacy settings for the bot version.+describeBotVersionResponse_dataPrivacy :: Lens.Lens' DescribeBotVersionResponse (Prelude.Maybe DataPrivacy)+describeBotVersionResponse_dataPrivacy = Lens.lens (\DescribeBotVersionResponse' {dataPrivacy} -> dataPrivacy) (\s@DescribeBotVersionResponse' {} a -> s {dataPrivacy = a} :: DescribeBotVersionResponse)++-- | The description specified for the bot.+describeBotVersionResponse_description :: Lens.Lens' DescribeBotVersionResponse (Prelude.Maybe Prelude.Text)+describeBotVersionResponse_description = Lens.lens (\DescribeBotVersionResponse' {description} -> description) (\s@DescribeBotVersionResponse' {} a -> s {description = a} :: DescribeBotVersionResponse)++-- | If the @botStatus@ is @Failed@, this contains a list of reasons that the+-- version couldn\'t be built.+describeBotVersionResponse_failureReasons :: Lens.Lens' DescribeBotVersionResponse (Prelude.Maybe [Prelude.Text])+describeBotVersionResponse_failureReasons = Lens.lens (\DescribeBotVersionResponse' {failureReasons} -> failureReasons) (\s@DescribeBotVersionResponse' {} a -> s {failureReasons = a} :: DescribeBotVersionResponse) Prelude.. Lens.mapping Lens.coerced++-- | The number of seconds that a session with the bot remains active before+-- it is discarded by Amazon Lex.+describeBotVersionResponse_idleSessionTTLInSeconds :: Lens.Lens' DescribeBotVersionResponse (Prelude.Maybe Prelude.Natural)+describeBotVersionResponse_idleSessionTTLInSeconds = Lens.lens (\DescribeBotVersionResponse' {idleSessionTTLInSeconds} -> idleSessionTTLInSeconds) (\s@DescribeBotVersionResponse' {} a -> s {idleSessionTTLInSeconds = a} :: DescribeBotVersionResponse)++-- | The Amazon Resource Name (ARN) of an IAM role that has permission to+-- access the bot version.+describeBotVersionResponse_roleArn :: Lens.Lens' DescribeBotVersionResponse (Prelude.Maybe Prelude.Text)+describeBotVersionResponse_roleArn = Lens.lens (\DescribeBotVersionResponse' {roleArn} -> roleArn) (\s@DescribeBotVersionResponse' {} a -> s {roleArn = a} :: DescribeBotVersionResponse)++-- | The response's http status code.+describeBotVersionResponse_httpStatus :: Lens.Lens' DescribeBotVersionResponse Prelude.Int+describeBotVersionResponse_httpStatus = Lens.lens (\DescribeBotVersionResponse' {httpStatus} -> httpStatus) (\s@DescribeBotVersionResponse' {} a -> s {httpStatus = a} :: DescribeBotVersionResponse)++instance Prelude.NFData DescribeBotVersionResponse where+ rnf DescribeBotVersionResponse' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botName+ `Prelude.seq` Prelude.rnf botStatus+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf dataPrivacy+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf failureReasons+ `Prelude.seq` Prelude.rnf idleSessionTTLInSeconds+ `Prelude.seq` Prelude.rnf roleArn+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/DescribeCustomVocabularyMetadata.hs view
@@ -0,0 +1,291 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.DescribeCustomVocabularyMetadata+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Provides metadata information about a custom vocabulary.+module Amazonka.LexV2Models.DescribeCustomVocabularyMetadata+ ( -- * Creating a Request+ DescribeCustomVocabularyMetadata (..),+ newDescribeCustomVocabularyMetadata,++ -- * Request Lenses+ describeCustomVocabularyMetadata_botId,+ describeCustomVocabularyMetadata_botVersion,+ describeCustomVocabularyMetadata_localeId,++ -- * Destructuring the Response+ DescribeCustomVocabularyMetadataResponse (..),+ newDescribeCustomVocabularyMetadataResponse,++ -- * Response Lenses+ describeCustomVocabularyMetadataResponse_botId,+ describeCustomVocabularyMetadataResponse_botVersion,+ describeCustomVocabularyMetadataResponse_creationDateTime,+ describeCustomVocabularyMetadataResponse_customVocabularyStatus,+ describeCustomVocabularyMetadataResponse_lastUpdatedDateTime,+ describeCustomVocabularyMetadataResponse_localeId,+ describeCustomVocabularyMetadataResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDescribeCustomVocabularyMetadata' smart constructor.+data DescribeCustomVocabularyMetadata = DescribeCustomVocabularyMetadata'+ { -- | The unique identifier of the bot that contains the custom vocabulary.+ botId :: Prelude.Text,+ -- | The bot version of the bot to return metadata for.+ botVersion :: Prelude.Text,+ -- | The locale to return the custom vocabulary information for. The locale+ -- must be @en_GB@.+ localeId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeCustomVocabularyMetadata' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'describeCustomVocabularyMetadata_botId' - The unique identifier of the bot that contains the custom vocabulary.+--+-- 'botVersion', 'describeCustomVocabularyMetadata_botVersion' - The bot version of the bot to return metadata for.+--+-- 'localeId', 'describeCustomVocabularyMetadata_localeId' - The locale to return the custom vocabulary information for. The locale+-- must be @en_GB@.+newDescribeCustomVocabularyMetadata ::+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ -- | 'localeId'+ Prelude.Text ->+ DescribeCustomVocabularyMetadata+newDescribeCustomVocabularyMetadata+ pBotId_+ pBotVersion_+ pLocaleId_ =+ DescribeCustomVocabularyMetadata'+ { botId = pBotId_,+ botVersion = pBotVersion_,+ localeId = pLocaleId_+ }++-- | The unique identifier of the bot that contains the custom vocabulary.+describeCustomVocabularyMetadata_botId :: Lens.Lens' DescribeCustomVocabularyMetadata Prelude.Text+describeCustomVocabularyMetadata_botId = Lens.lens (\DescribeCustomVocabularyMetadata' {botId} -> botId) (\s@DescribeCustomVocabularyMetadata' {} a -> s {botId = a} :: DescribeCustomVocabularyMetadata)++-- | The bot version of the bot to return metadata for.+describeCustomVocabularyMetadata_botVersion :: Lens.Lens' DescribeCustomVocabularyMetadata Prelude.Text+describeCustomVocabularyMetadata_botVersion = Lens.lens (\DescribeCustomVocabularyMetadata' {botVersion} -> botVersion) (\s@DescribeCustomVocabularyMetadata' {} a -> s {botVersion = a} :: DescribeCustomVocabularyMetadata)++-- | The locale to return the custom vocabulary information for. The locale+-- must be @en_GB@.+describeCustomVocabularyMetadata_localeId :: Lens.Lens' DescribeCustomVocabularyMetadata Prelude.Text+describeCustomVocabularyMetadata_localeId = Lens.lens (\DescribeCustomVocabularyMetadata' {localeId} -> localeId) (\s@DescribeCustomVocabularyMetadata' {} a -> s {localeId = a} :: DescribeCustomVocabularyMetadata)++instance+ Core.AWSRequest+ DescribeCustomVocabularyMetadata+ where+ type+ AWSResponse DescribeCustomVocabularyMetadata =+ DescribeCustomVocabularyMetadataResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeCustomVocabularyMetadataResponse'+ Prelude.<$> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botVersion")+ Prelude.<*> (x Data..?> "creationDateTime")+ Prelude.<*> (x Data..?> "customVocabularyStatus")+ Prelude.<*> (x Data..?> "lastUpdatedDateTime")+ Prelude.<*> (x Data..?> "localeId")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ DescribeCustomVocabularyMetadata+ where+ hashWithSalt+ _salt+ DescribeCustomVocabularyMetadata' {..} =+ _salt+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` localeId++instance+ Prelude.NFData+ DescribeCustomVocabularyMetadata+ where+ rnf DescribeCustomVocabularyMetadata' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId++instance+ Data.ToHeaders+ DescribeCustomVocabularyMetadata+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DescribeCustomVocabularyMetadata where+ toPath DescribeCustomVocabularyMetadata' {..} =+ Prelude.mconcat+ [ "/bots/",+ Data.toBS botId,+ "/botversions/",+ Data.toBS botVersion,+ "/botlocales/",+ Data.toBS localeId,+ "/customvocabulary/DEFAULT/metadata"+ ]++instance+ Data.ToQuery+ DescribeCustomVocabularyMetadata+ where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDescribeCustomVocabularyMetadataResponse' smart constructor.+data DescribeCustomVocabularyMetadataResponse = DescribeCustomVocabularyMetadataResponse'+ { -- | The identifier of the bot that contains the custom vocabulary.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The version of the bot that contains the custom vocabulary to describe.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | The date and time that the custom vocabulary was created.+ creationDateTime :: Prelude.Maybe Data.POSIX,+ -- | The status of the custom vocabulary. If the status is @Ready@ the custom+ -- vocabulary is ready to use.+ customVocabularyStatus :: Prelude.Maybe CustomVocabularyStatus,+ -- | The date and time that the custom vocabulary was last updated.+ lastUpdatedDateTime :: Prelude.Maybe Data.POSIX,+ -- | The locale that contains the custom vocabulary to describe.+ localeId :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeCustomVocabularyMetadataResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'describeCustomVocabularyMetadataResponse_botId' - The identifier of the bot that contains the custom vocabulary.+--+-- 'botVersion', 'describeCustomVocabularyMetadataResponse_botVersion' - The version of the bot that contains the custom vocabulary to describe.+--+-- 'creationDateTime', 'describeCustomVocabularyMetadataResponse_creationDateTime' - The date and time that the custom vocabulary was created.+--+-- 'customVocabularyStatus', 'describeCustomVocabularyMetadataResponse_customVocabularyStatus' - The status of the custom vocabulary. If the status is @Ready@ the custom+-- vocabulary is ready to use.+--+-- 'lastUpdatedDateTime', 'describeCustomVocabularyMetadataResponse_lastUpdatedDateTime' - The date and time that the custom vocabulary was last updated.+--+-- 'localeId', 'describeCustomVocabularyMetadataResponse_localeId' - The locale that contains the custom vocabulary to describe.+--+-- 'httpStatus', 'describeCustomVocabularyMetadataResponse_httpStatus' - The response's http status code.+newDescribeCustomVocabularyMetadataResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeCustomVocabularyMetadataResponse+newDescribeCustomVocabularyMetadataResponse+ pHttpStatus_ =+ DescribeCustomVocabularyMetadataResponse'+ { botId =+ Prelude.Nothing,+ botVersion = Prelude.Nothing,+ creationDateTime =+ Prelude.Nothing,+ customVocabularyStatus =+ Prelude.Nothing,+ lastUpdatedDateTime =+ Prelude.Nothing,+ localeId = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The identifier of the bot that contains the custom vocabulary.+describeCustomVocabularyMetadataResponse_botId :: Lens.Lens' DescribeCustomVocabularyMetadataResponse (Prelude.Maybe Prelude.Text)+describeCustomVocabularyMetadataResponse_botId = Lens.lens (\DescribeCustomVocabularyMetadataResponse' {botId} -> botId) (\s@DescribeCustomVocabularyMetadataResponse' {} a -> s {botId = a} :: DescribeCustomVocabularyMetadataResponse)++-- | The version of the bot that contains the custom vocabulary to describe.+describeCustomVocabularyMetadataResponse_botVersion :: Lens.Lens' DescribeCustomVocabularyMetadataResponse (Prelude.Maybe Prelude.Text)+describeCustomVocabularyMetadataResponse_botVersion = Lens.lens (\DescribeCustomVocabularyMetadataResponse' {botVersion} -> botVersion) (\s@DescribeCustomVocabularyMetadataResponse' {} a -> s {botVersion = a} :: DescribeCustomVocabularyMetadataResponse)++-- | The date and time that the custom vocabulary was created.+describeCustomVocabularyMetadataResponse_creationDateTime :: Lens.Lens' DescribeCustomVocabularyMetadataResponse (Prelude.Maybe Prelude.UTCTime)+describeCustomVocabularyMetadataResponse_creationDateTime = Lens.lens (\DescribeCustomVocabularyMetadataResponse' {creationDateTime} -> creationDateTime) (\s@DescribeCustomVocabularyMetadataResponse' {} a -> s {creationDateTime = a} :: DescribeCustomVocabularyMetadataResponse) Prelude.. Lens.mapping Data._Time++-- | The status of the custom vocabulary. If the status is @Ready@ the custom+-- vocabulary is ready to use.+describeCustomVocabularyMetadataResponse_customVocabularyStatus :: Lens.Lens' DescribeCustomVocabularyMetadataResponse (Prelude.Maybe CustomVocabularyStatus)+describeCustomVocabularyMetadataResponse_customVocabularyStatus = Lens.lens (\DescribeCustomVocabularyMetadataResponse' {customVocabularyStatus} -> customVocabularyStatus) (\s@DescribeCustomVocabularyMetadataResponse' {} a -> s {customVocabularyStatus = a} :: DescribeCustomVocabularyMetadataResponse)++-- | The date and time that the custom vocabulary was last updated.+describeCustomVocabularyMetadataResponse_lastUpdatedDateTime :: Lens.Lens' DescribeCustomVocabularyMetadataResponse (Prelude.Maybe Prelude.UTCTime)+describeCustomVocabularyMetadataResponse_lastUpdatedDateTime = Lens.lens (\DescribeCustomVocabularyMetadataResponse' {lastUpdatedDateTime} -> lastUpdatedDateTime) (\s@DescribeCustomVocabularyMetadataResponse' {} a -> s {lastUpdatedDateTime = a} :: DescribeCustomVocabularyMetadataResponse) Prelude.. Lens.mapping Data._Time++-- | The locale that contains the custom vocabulary to describe.+describeCustomVocabularyMetadataResponse_localeId :: Lens.Lens' DescribeCustomVocabularyMetadataResponse (Prelude.Maybe Prelude.Text)+describeCustomVocabularyMetadataResponse_localeId = Lens.lens (\DescribeCustomVocabularyMetadataResponse' {localeId} -> localeId) (\s@DescribeCustomVocabularyMetadataResponse' {} a -> s {localeId = a} :: DescribeCustomVocabularyMetadataResponse)++-- | The response's http status code.+describeCustomVocabularyMetadataResponse_httpStatus :: Lens.Lens' DescribeCustomVocabularyMetadataResponse Prelude.Int+describeCustomVocabularyMetadataResponse_httpStatus = Lens.lens (\DescribeCustomVocabularyMetadataResponse' {httpStatus} -> httpStatus) (\s@DescribeCustomVocabularyMetadataResponse' {} a -> s {httpStatus = a} :: DescribeCustomVocabularyMetadataResponse)++instance+ Prelude.NFData+ DescribeCustomVocabularyMetadataResponse+ where+ rnf DescribeCustomVocabularyMetadataResponse' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf customVocabularyStatus+ `Prelude.seq` Prelude.rnf lastUpdatedDateTime+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/DescribeExport.hs view
@@ -0,0 +1,258 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.DescribeExport+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets information about a specific export.+module Amazonka.LexV2Models.DescribeExport+ ( -- * Creating a Request+ DescribeExport (..),+ newDescribeExport,++ -- * Request Lenses+ describeExport_exportId,++ -- * Destructuring the Response+ DescribeExportResponse (..),+ newDescribeExportResponse,++ -- * Response Lenses+ describeExportResponse_creationDateTime,+ describeExportResponse_downloadUrl,+ describeExportResponse_exportId,+ describeExportResponse_exportStatus,+ describeExportResponse_failureReasons,+ describeExportResponse_fileFormat,+ describeExportResponse_lastUpdatedDateTime,+ describeExportResponse_resourceSpecification,+ describeExportResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDescribeExport' smart constructor.+data DescribeExport = DescribeExport'+ { -- | The unique identifier of the export to describe.+ exportId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeExport' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'exportId', 'describeExport_exportId' - The unique identifier of the export to describe.+newDescribeExport ::+ -- | 'exportId'+ Prelude.Text ->+ DescribeExport+newDescribeExport pExportId_ =+ DescribeExport' {exportId = pExportId_}++-- | The unique identifier of the export to describe.+describeExport_exportId :: Lens.Lens' DescribeExport Prelude.Text+describeExport_exportId = Lens.lens (\DescribeExport' {exportId} -> exportId) (\s@DescribeExport' {} a -> s {exportId = a} :: DescribeExport)++instance Core.AWSRequest DescribeExport where+ type+ AWSResponse DescribeExport =+ DescribeExportResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeExportResponse'+ Prelude.<$> (x Data..?> "creationDateTime")+ Prelude.<*> (x Data..?> "downloadUrl")+ Prelude.<*> (x Data..?> "exportId")+ Prelude.<*> (x Data..?> "exportStatus")+ Prelude.<*> (x Data..?> "failureReasons" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "fileFormat")+ Prelude.<*> (x Data..?> "lastUpdatedDateTime")+ Prelude.<*> (x Data..?> "resourceSpecification")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeExport where+ hashWithSalt _salt DescribeExport' {..} =+ _salt `Prelude.hashWithSalt` exportId++instance Prelude.NFData DescribeExport where+ rnf DescribeExport' {..} = Prelude.rnf exportId++instance Data.ToHeaders DescribeExport where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DescribeExport where+ toPath DescribeExport' {..} =+ Prelude.mconcat+ ["/exports/", Data.toBS exportId, "/"]++instance Data.ToQuery DescribeExport where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDescribeExportResponse' smart constructor.+data DescribeExportResponse = DescribeExportResponse'+ { -- | The date and time that the export was created.+ creationDateTime :: Prelude.Maybe Data.POSIX,+ -- | A pre-signed S3 URL that points to the bot or bot locale archive. The+ -- URL is only available for 5 minutes after calling the @DescribeExport@+ -- operation.+ downloadUrl :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier of the described export.+ exportId :: Prelude.Maybe Prelude.Text,+ -- | The status of the export. When the status is @Complete@ the export+ -- archive file is available for download.+ exportStatus :: Prelude.Maybe ExportStatus,+ -- | If the @exportStatus@ is failed, contains one or more reasons why the+ -- export could not be completed.+ failureReasons :: Prelude.Maybe [Prelude.Text],+ -- | The file format used in the files that describe the resource.+ fileFormat :: Prelude.Maybe ImportExportFileFormat,+ -- | The last date and time that the export was updated.+ lastUpdatedDateTime :: Prelude.Maybe Data.POSIX,+ -- | The bot, bot ID, and optional locale ID of the exported bot or bot+ -- locale.+ resourceSpecification :: Prelude.Maybe ExportResourceSpecification,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeExportResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'creationDateTime', 'describeExportResponse_creationDateTime' - The date and time that the export was created.+--+-- 'downloadUrl', 'describeExportResponse_downloadUrl' - A pre-signed S3 URL that points to the bot or bot locale archive. The+-- URL is only available for 5 minutes after calling the @DescribeExport@+-- operation.+--+-- 'exportId', 'describeExportResponse_exportId' - The unique identifier of the described export.+--+-- 'exportStatus', 'describeExportResponse_exportStatus' - The status of the export. When the status is @Complete@ the export+-- archive file is available for download.+--+-- 'failureReasons', 'describeExportResponse_failureReasons' - If the @exportStatus@ is failed, contains one or more reasons why the+-- export could not be completed.+--+-- 'fileFormat', 'describeExportResponse_fileFormat' - The file format used in the files that describe the resource.+--+-- 'lastUpdatedDateTime', 'describeExportResponse_lastUpdatedDateTime' - The last date and time that the export was updated.+--+-- 'resourceSpecification', 'describeExportResponse_resourceSpecification' - The bot, bot ID, and optional locale ID of the exported bot or bot+-- locale.+--+-- 'httpStatus', 'describeExportResponse_httpStatus' - The response's http status code.+newDescribeExportResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeExportResponse+newDescribeExportResponse pHttpStatus_ =+ DescribeExportResponse'+ { creationDateTime =+ Prelude.Nothing,+ downloadUrl = Prelude.Nothing,+ exportId = Prelude.Nothing,+ exportStatus = Prelude.Nothing,+ failureReasons = Prelude.Nothing,+ fileFormat = Prelude.Nothing,+ lastUpdatedDateTime = Prelude.Nothing,+ resourceSpecification = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The date and time that the export was created.+describeExportResponse_creationDateTime :: Lens.Lens' DescribeExportResponse (Prelude.Maybe Prelude.UTCTime)+describeExportResponse_creationDateTime = Lens.lens (\DescribeExportResponse' {creationDateTime} -> creationDateTime) (\s@DescribeExportResponse' {} a -> s {creationDateTime = a} :: DescribeExportResponse) Prelude.. Lens.mapping Data._Time++-- | A pre-signed S3 URL that points to the bot or bot locale archive. The+-- URL is only available for 5 minutes after calling the @DescribeExport@+-- operation.+describeExportResponse_downloadUrl :: Lens.Lens' DescribeExportResponse (Prelude.Maybe Prelude.Text)+describeExportResponse_downloadUrl = Lens.lens (\DescribeExportResponse' {downloadUrl} -> downloadUrl) (\s@DescribeExportResponse' {} a -> s {downloadUrl = a} :: DescribeExportResponse)++-- | The unique identifier of the described export.+describeExportResponse_exportId :: Lens.Lens' DescribeExportResponse (Prelude.Maybe Prelude.Text)+describeExportResponse_exportId = Lens.lens (\DescribeExportResponse' {exportId} -> exportId) (\s@DescribeExportResponse' {} a -> s {exportId = a} :: DescribeExportResponse)++-- | The status of the export. When the status is @Complete@ the export+-- archive file is available for download.+describeExportResponse_exportStatus :: Lens.Lens' DescribeExportResponse (Prelude.Maybe ExportStatus)+describeExportResponse_exportStatus = Lens.lens (\DescribeExportResponse' {exportStatus} -> exportStatus) (\s@DescribeExportResponse' {} a -> s {exportStatus = a} :: DescribeExportResponse)++-- | If the @exportStatus@ is failed, contains one or more reasons why the+-- export could not be completed.+describeExportResponse_failureReasons :: Lens.Lens' DescribeExportResponse (Prelude.Maybe [Prelude.Text])+describeExportResponse_failureReasons = Lens.lens (\DescribeExportResponse' {failureReasons} -> failureReasons) (\s@DescribeExportResponse' {} a -> s {failureReasons = a} :: DescribeExportResponse) Prelude.. Lens.mapping Lens.coerced++-- | The file format used in the files that describe the resource.+describeExportResponse_fileFormat :: Lens.Lens' DescribeExportResponse (Prelude.Maybe ImportExportFileFormat)+describeExportResponse_fileFormat = Lens.lens (\DescribeExportResponse' {fileFormat} -> fileFormat) (\s@DescribeExportResponse' {} a -> s {fileFormat = a} :: DescribeExportResponse)++-- | The last date and time that the export was updated.+describeExportResponse_lastUpdatedDateTime :: Lens.Lens' DescribeExportResponse (Prelude.Maybe Prelude.UTCTime)+describeExportResponse_lastUpdatedDateTime = Lens.lens (\DescribeExportResponse' {lastUpdatedDateTime} -> lastUpdatedDateTime) (\s@DescribeExportResponse' {} a -> s {lastUpdatedDateTime = a} :: DescribeExportResponse) Prelude.. Lens.mapping Data._Time++-- | The bot, bot ID, and optional locale ID of the exported bot or bot+-- locale.+describeExportResponse_resourceSpecification :: Lens.Lens' DescribeExportResponse (Prelude.Maybe ExportResourceSpecification)+describeExportResponse_resourceSpecification = Lens.lens (\DescribeExportResponse' {resourceSpecification} -> resourceSpecification) (\s@DescribeExportResponse' {} a -> s {resourceSpecification = a} :: DescribeExportResponse)++-- | The response's http status code.+describeExportResponse_httpStatus :: Lens.Lens' DescribeExportResponse Prelude.Int+describeExportResponse_httpStatus = Lens.lens (\DescribeExportResponse' {httpStatus} -> httpStatus) (\s@DescribeExportResponse' {} a -> s {httpStatus = a} :: DescribeExportResponse)++instance Prelude.NFData DescribeExportResponse where+ rnf DescribeExportResponse' {..} =+ Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf downloadUrl+ `Prelude.seq` Prelude.rnf exportId+ `Prelude.seq` Prelude.rnf exportStatus+ `Prelude.seq` Prelude.rnf failureReasons+ `Prelude.seq` Prelude.rnf fileFormat+ `Prelude.seq` Prelude.rnf lastUpdatedDateTime+ `Prelude.seq` Prelude.rnf resourceSpecification+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/DescribeImport.hs view
@@ -0,0 +1,276 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.DescribeImport+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets information about a specific import.+module Amazonka.LexV2Models.DescribeImport+ ( -- * Creating a Request+ DescribeImport (..),+ newDescribeImport,++ -- * Request Lenses+ describeImport_importId,++ -- * Destructuring the Response+ DescribeImportResponse (..),+ newDescribeImportResponse,++ -- * Response Lenses+ describeImportResponse_creationDateTime,+ describeImportResponse_failureReasons,+ describeImportResponse_importId,+ describeImportResponse_importStatus,+ describeImportResponse_importedResourceId,+ describeImportResponse_importedResourceName,+ describeImportResponse_lastUpdatedDateTime,+ describeImportResponse_mergeStrategy,+ describeImportResponse_resourceSpecification,+ describeImportResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDescribeImport' smart constructor.+data DescribeImport = DescribeImport'+ { -- | The unique identifier of the import to describe.+ importId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeImport' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'importId', 'describeImport_importId' - The unique identifier of the import to describe.+newDescribeImport ::+ -- | 'importId'+ Prelude.Text ->+ DescribeImport+newDescribeImport pImportId_ =+ DescribeImport' {importId = pImportId_}++-- | The unique identifier of the import to describe.+describeImport_importId :: Lens.Lens' DescribeImport Prelude.Text+describeImport_importId = Lens.lens (\DescribeImport' {importId} -> importId) (\s@DescribeImport' {} a -> s {importId = a} :: DescribeImport)++instance Core.AWSRequest DescribeImport where+ type+ AWSResponse DescribeImport =+ DescribeImportResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeImportResponse'+ Prelude.<$> (x Data..?> "creationDateTime")+ Prelude.<*> (x Data..?> "failureReasons" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "importId")+ Prelude.<*> (x Data..?> "importStatus")+ Prelude.<*> (x Data..?> "importedResourceId")+ Prelude.<*> (x Data..?> "importedResourceName")+ Prelude.<*> (x Data..?> "lastUpdatedDateTime")+ Prelude.<*> (x Data..?> "mergeStrategy")+ Prelude.<*> (x Data..?> "resourceSpecification")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeImport where+ hashWithSalt _salt DescribeImport' {..} =+ _salt `Prelude.hashWithSalt` importId++instance Prelude.NFData DescribeImport where+ rnf DescribeImport' {..} = Prelude.rnf importId++instance Data.ToHeaders DescribeImport where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DescribeImport where+ toPath DescribeImport' {..} =+ Prelude.mconcat+ ["/imports/", Data.toBS importId, "/"]++instance Data.ToQuery DescribeImport where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDescribeImportResponse' smart constructor.+data DescribeImportResponse = DescribeImportResponse'+ { -- | The date and time that the import was created.+ creationDateTime :: Prelude.Maybe Data.POSIX,+ -- | If the @importStatus@ field is @Failed@, this provides one or more+ -- reasons for the failure.+ failureReasons :: Prelude.Maybe [Prelude.Text],+ -- | The unique identifier of the described import.+ importId :: Prelude.Maybe Prelude.Text,+ -- | The status of the import process. When the status is @Completed@ the+ -- resource is imported and ready for use.+ importStatus :: Prelude.Maybe ImportStatus,+ -- | The unique identifier that Amazon Lex assigned to the resource created+ -- by the import.+ importedResourceId :: Prelude.Maybe Prelude.Text,+ -- | The name of the imported resource.+ importedResourceName :: Prelude.Maybe Prelude.Text,+ -- | The date and time that the import was last updated.+ lastUpdatedDateTime :: Prelude.Maybe Data.POSIX,+ -- | The strategy used when there was a name conflict between the imported+ -- resource and an existing resource. When the merge strategy is+ -- @FailOnConflict@ existing resources are not overwritten and the import+ -- fails.+ mergeStrategy :: Prelude.Maybe MergeStrategy,+ -- | The specifications of the imported bot, bot locale, or custom+ -- vocabulary.+ resourceSpecification :: Prelude.Maybe ImportResourceSpecification,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeImportResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'creationDateTime', 'describeImportResponse_creationDateTime' - The date and time that the import was created.+--+-- 'failureReasons', 'describeImportResponse_failureReasons' - If the @importStatus@ field is @Failed@, this provides one or more+-- reasons for the failure.+--+-- 'importId', 'describeImportResponse_importId' - The unique identifier of the described import.+--+-- 'importStatus', 'describeImportResponse_importStatus' - The status of the import process. When the status is @Completed@ the+-- resource is imported and ready for use.+--+-- 'importedResourceId', 'describeImportResponse_importedResourceId' - The unique identifier that Amazon Lex assigned to the resource created+-- by the import.+--+-- 'importedResourceName', 'describeImportResponse_importedResourceName' - The name of the imported resource.+--+-- 'lastUpdatedDateTime', 'describeImportResponse_lastUpdatedDateTime' - The date and time that the import was last updated.+--+-- 'mergeStrategy', 'describeImportResponse_mergeStrategy' - The strategy used when there was a name conflict between the imported+-- resource and an existing resource. When the merge strategy is+-- @FailOnConflict@ existing resources are not overwritten and the import+-- fails.+--+-- 'resourceSpecification', 'describeImportResponse_resourceSpecification' - The specifications of the imported bot, bot locale, or custom+-- vocabulary.+--+-- 'httpStatus', 'describeImportResponse_httpStatus' - The response's http status code.+newDescribeImportResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeImportResponse+newDescribeImportResponse pHttpStatus_ =+ DescribeImportResponse'+ { creationDateTime =+ Prelude.Nothing,+ failureReasons = Prelude.Nothing,+ importId = Prelude.Nothing,+ importStatus = Prelude.Nothing,+ importedResourceId = Prelude.Nothing,+ importedResourceName = Prelude.Nothing,+ lastUpdatedDateTime = Prelude.Nothing,+ mergeStrategy = Prelude.Nothing,+ resourceSpecification = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The date and time that the import was created.+describeImportResponse_creationDateTime :: Lens.Lens' DescribeImportResponse (Prelude.Maybe Prelude.UTCTime)+describeImportResponse_creationDateTime = Lens.lens (\DescribeImportResponse' {creationDateTime} -> creationDateTime) (\s@DescribeImportResponse' {} a -> s {creationDateTime = a} :: DescribeImportResponse) Prelude.. Lens.mapping Data._Time++-- | If the @importStatus@ field is @Failed@, this provides one or more+-- reasons for the failure.+describeImportResponse_failureReasons :: Lens.Lens' DescribeImportResponse (Prelude.Maybe [Prelude.Text])+describeImportResponse_failureReasons = Lens.lens (\DescribeImportResponse' {failureReasons} -> failureReasons) (\s@DescribeImportResponse' {} a -> s {failureReasons = a} :: DescribeImportResponse) Prelude.. Lens.mapping Lens.coerced++-- | The unique identifier of the described import.+describeImportResponse_importId :: Lens.Lens' DescribeImportResponse (Prelude.Maybe Prelude.Text)+describeImportResponse_importId = Lens.lens (\DescribeImportResponse' {importId} -> importId) (\s@DescribeImportResponse' {} a -> s {importId = a} :: DescribeImportResponse)++-- | The status of the import process. When the status is @Completed@ the+-- resource is imported and ready for use.+describeImportResponse_importStatus :: Lens.Lens' DescribeImportResponse (Prelude.Maybe ImportStatus)+describeImportResponse_importStatus = Lens.lens (\DescribeImportResponse' {importStatus} -> importStatus) (\s@DescribeImportResponse' {} a -> s {importStatus = a} :: DescribeImportResponse)++-- | The unique identifier that Amazon Lex assigned to the resource created+-- by the import.+describeImportResponse_importedResourceId :: Lens.Lens' DescribeImportResponse (Prelude.Maybe Prelude.Text)+describeImportResponse_importedResourceId = Lens.lens (\DescribeImportResponse' {importedResourceId} -> importedResourceId) (\s@DescribeImportResponse' {} a -> s {importedResourceId = a} :: DescribeImportResponse)++-- | The name of the imported resource.+describeImportResponse_importedResourceName :: Lens.Lens' DescribeImportResponse (Prelude.Maybe Prelude.Text)+describeImportResponse_importedResourceName = Lens.lens (\DescribeImportResponse' {importedResourceName} -> importedResourceName) (\s@DescribeImportResponse' {} a -> s {importedResourceName = a} :: DescribeImportResponse)++-- | The date and time that the import was last updated.+describeImportResponse_lastUpdatedDateTime :: Lens.Lens' DescribeImportResponse (Prelude.Maybe Prelude.UTCTime)+describeImportResponse_lastUpdatedDateTime = Lens.lens (\DescribeImportResponse' {lastUpdatedDateTime} -> lastUpdatedDateTime) (\s@DescribeImportResponse' {} a -> s {lastUpdatedDateTime = a} :: DescribeImportResponse) Prelude.. Lens.mapping Data._Time++-- | The strategy used when there was a name conflict between the imported+-- resource and an existing resource. When the merge strategy is+-- @FailOnConflict@ existing resources are not overwritten and the import+-- fails.+describeImportResponse_mergeStrategy :: Lens.Lens' DescribeImportResponse (Prelude.Maybe MergeStrategy)+describeImportResponse_mergeStrategy = Lens.lens (\DescribeImportResponse' {mergeStrategy} -> mergeStrategy) (\s@DescribeImportResponse' {} a -> s {mergeStrategy = a} :: DescribeImportResponse)++-- | The specifications of the imported bot, bot locale, or custom+-- vocabulary.+describeImportResponse_resourceSpecification :: Lens.Lens' DescribeImportResponse (Prelude.Maybe ImportResourceSpecification)+describeImportResponse_resourceSpecification = Lens.lens (\DescribeImportResponse' {resourceSpecification} -> resourceSpecification) (\s@DescribeImportResponse' {} a -> s {resourceSpecification = a} :: DescribeImportResponse)++-- | The response's http status code.+describeImportResponse_httpStatus :: Lens.Lens' DescribeImportResponse Prelude.Int+describeImportResponse_httpStatus = Lens.lens (\DescribeImportResponse' {httpStatus} -> httpStatus) (\s@DescribeImportResponse' {} a -> s {httpStatus = a} :: DescribeImportResponse)++instance Prelude.NFData DescribeImportResponse where+ rnf DescribeImportResponse' {..} =+ Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf failureReasons+ `Prelude.seq` Prelude.rnf importId+ `Prelude.seq` Prelude.rnf importStatus+ `Prelude.seq` Prelude.rnf importedResourceId+ `Prelude.seq` Prelude.rnf importedResourceName+ `Prelude.seq` Prelude.rnf lastUpdatedDateTime+ `Prelude.seq` Prelude.rnf mergeStrategy+ `Prelude.seq` Prelude.rnf resourceSpecification+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/DescribeIntent.hs view
@@ -0,0 +1,464 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.DescribeIntent+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns metadata about an intent.+module Amazonka.LexV2Models.DescribeIntent+ ( -- * Creating a Request+ DescribeIntent (..),+ newDescribeIntent,++ -- * Request Lenses+ describeIntent_intentId,+ describeIntent_botId,+ describeIntent_botVersion,+ describeIntent_localeId,++ -- * Destructuring the Response+ DescribeIntentResponse (..),+ newDescribeIntentResponse,++ -- * Response Lenses+ describeIntentResponse_botId,+ describeIntentResponse_botVersion,+ describeIntentResponse_creationDateTime,+ describeIntentResponse_description,+ describeIntentResponse_dialogCodeHook,+ describeIntentResponse_fulfillmentCodeHook,+ describeIntentResponse_initialResponseSetting,+ describeIntentResponse_inputContexts,+ describeIntentResponse_intentClosingSetting,+ describeIntentResponse_intentConfirmationSetting,+ describeIntentResponse_intentId,+ describeIntentResponse_intentName,+ describeIntentResponse_kendraConfiguration,+ describeIntentResponse_lastUpdatedDateTime,+ describeIntentResponse_localeId,+ describeIntentResponse_outputContexts,+ describeIntentResponse_parentIntentSignature,+ describeIntentResponse_sampleUtterances,+ describeIntentResponse_slotPriorities,+ describeIntentResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDescribeIntent' smart constructor.+data DescribeIntent = DescribeIntent'+ { -- | The identifier of the intent to describe.+ intentId :: Prelude.Text,+ -- | The identifier of the bot associated with the intent.+ botId :: Prelude.Text,+ -- | The version of the bot associated with the intent.+ botVersion :: Prelude.Text,+ -- | The identifier of the language and locale of the intent to describe. The+ -- string must match one of the supported locales. For more information,+ -- see+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+ localeId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeIntent' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'intentId', 'describeIntent_intentId' - The identifier of the intent to describe.+--+-- 'botId', 'describeIntent_botId' - The identifier of the bot associated with the intent.+--+-- 'botVersion', 'describeIntent_botVersion' - The version of the bot associated with the intent.+--+-- 'localeId', 'describeIntent_localeId' - The identifier of the language and locale of the intent to describe. The+-- string must match one of the supported locales. For more information,+-- see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+newDescribeIntent ::+ -- | 'intentId'+ Prelude.Text ->+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ -- | 'localeId'+ Prelude.Text ->+ DescribeIntent+newDescribeIntent+ pIntentId_+ pBotId_+ pBotVersion_+ pLocaleId_ =+ DescribeIntent'+ { intentId = pIntentId_,+ botId = pBotId_,+ botVersion = pBotVersion_,+ localeId = pLocaleId_+ }++-- | The identifier of the intent to describe.+describeIntent_intentId :: Lens.Lens' DescribeIntent Prelude.Text+describeIntent_intentId = Lens.lens (\DescribeIntent' {intentId} -> intentId) (\s@DescribeIntent' {} a -> s {intentId = a} :: DescribeIntent)++-- | The identifier of the bot associated with the intent.+describeIntent_botId :: Lens.Lens' DescribeIntent Prelude.Text+describeIntent_botId = Lens.lens (\DescribeIntent' {botId} -> botId) (\s@DescribeIntent' {} a -> s {botId = a} :: DescribeIntent)++-- | The version of the bot associated with the intent.+describeIntent_botVersion :: Lens.Lens' DescribeIntent Prelude.Text+describeIntent_botVersion = Lens.lens (\DescribeIntent' {botVersion} -> botVersion) (\s@DescribeIntent' {} a -> s {botVersion = a} :: DescribeIntent)++-- | The identifier of the language and locale of the intent to describe. The+-- string must match one of the supported locales. For more information,+-- see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+describeIntent_localeId :: Lens.Lens' DescribeIntent Prelude.Text+describeIntent_localeId = Lens.lens (\DescribeIntent' {localeId} -> localeId) (\s@DescribeIntent' {} a -> s {localeId = a} :: DescribeIntent)++instance Core.AWSRequest DescribeIntent where+ type+ AWSResponse DescribeIntent =+ DescribeIntentResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeIntentResponse'+ Prelude.<$> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botVersion")+ Prelude.<*> (x Data..?> "creationDateTime")+ Prelude.<*> (x Data..?> "description")+ Prelude.<*> (x Data..?> "dialogCodeHook")+ Prelude.<*> (x Data..?> "fulfillmentCodeHook")+ Prelude.<*> (x Data..?> "initialResponseSetting")+ Prelude.<*> (x Data..?> "inputContexts" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "intentClosingSetting")+ Prelude.<*> (x Data..?> "intentConfirmationSetting")+ Prelude.<*> (x Data..?> "intentId")+ Prelude.<*> (x Data..?> "intentName")+ Prelude.<*> (x Data..?> "kendraConfiguration")+ Prelude.<*> (x Data..?> "lastUpdatedDateTime")+ Prelude.<*> (x Data..?> "localeId")+ Prelude.<*> (x Data..?> "outputContexts" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "parentIntentSignature")+ Prelude.<*> ( x+ Data..?> "sampleUtterances"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "slotPriorities" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeIntent where+ hashWithSalt _salt DescribeIntent' {..} =+ _salt+ `Prelude.hashWithSalt` intentId+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` localeId++instance Prelude.NFData DescribeIntent where+ rnf DescribeIntent' {..} =+ Prelude.rnf intentId+ `Prelude.seq` Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId++instance Data.ToHeaders DescribeIntent where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DescribeIntent where+ toPath DescribeIntent' {..} =+ Prelude.mconcat+ [ "/bots/",+ Data.toBS botId,+ "/botversions/",+ Data.toBS botVersion,+ "/botlocales/",+ Data.toBS localeId,+ "/intents/",+ Data.toBS intentId,+ "/"+ ]++instance Data.ToQuery DescribeIntent where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDescribeIntentResponse' smart constructor.+data DescribeIntentResponse = DescribeIntentResponse'+ { -- | The identifier of the bot associated with the intent.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The version of the bot associated with the intent.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | A timestamp of the date and time that the intent was created.+ creationDateTime :: Prelude.Maybe Data.POSIX,+ -- | The description of the intent.+ description :: Prelude.Maybe Prelude.Text,+ -- | The Lambda function called during each turn of a conversation with the+ -- intent.+ dialogCodeHook :: Prelude.Maybe DialogCodeHookSettings,+ -- | The Lambda function called when the intent is complete and ready for+ -- fulfillment.+ fulfillmentCodeHook :: Prelude.Maybe FulfillmentCodeHookSettings,+ initialResponseSetting :: Prelude.Maybe InitialResponseSetting,+ -- | A list of contexts that must be active for the intent to be considered+ -- for sending to the user.+ inputContexts :: Prelude.Maybe [InputContext],+ -- | The response that Amazon Lex sends to when the intent is closed.+ intentClosingSetting :: Prelude.Maybe IntentClosingSetting,+ -- | Prompts that Amazon Lex sends to the user to confirm completion of an+ -- intent.+ intentConfirmationSetting :: Prelude.Maybe IntentConfirmationSetting,+ -- | The unique identifier assigned to the intent when it was created.+ intentId :: Prelude.Maybe Prelude.Text,+ -- | The name specified for the intent.+ intentName :: Prelude.Maybe Prelude.Text,+ -- | Configuration information required to use the+ -- @AMAZON.KendraSearchIntent@ intent.+ kendraConfiguration :: Prelude.Maybe KendraConfiguration,+ -- | A timestamp of the date and time that the intent was last updated.+ lastUpdatedDateTime :: Prelude.Maybe Data.POSIX,+ -- | The language and locale specified for the intent.+ localeId :: Prelude.Maybe Prelude.Text,+ -- | A list of contexts that are activated when the intent is fulfilled.+ outputContexts :: Prelude.Maybe [OutputContext],+ -- | The identifier of the built-in intent that this intent is derived from,+ -- if any.+ parentIntentSignature :: Prelude.Maybe Prelude.Text,+ -- | User utterances that trigger this intent.+ sampleUtterances :: Prelude.Maybe [SampleUtterance],+ -- | The list that determines the priority that slots should be elicited from+ -- the user.+ slotPriorities :: Prelude.Maybe [SlotPriority],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeIntentResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'describeIntentResponse_botId' - The identifier of the bot associated with the intent.+--+-- 'botVersion', 'describeIntentResponse_botVersion' - The version of the bot associated with the intent.+--+-- 'creationDateTime', 'describeIntentResponse_creationDateTime' - A timestamp of the date and time that the intent was created.+--+-- 'description', 'describeIntentResponse_description' - The description of the intent.+--+-- 'dialogCodeHook', 'describeIntentResponse_dialogCodeHook' - The Lambda function called during each turn of a conversation with the+-- intent.+--+-- 'fulfillmentCodeHook', 'describeIntentResponse_fulfillmentCodeHook' - The Lambda function called when the intent is complete and ready for+-- fulfillment.+--+-- 'initialResponseSetting', 'describeIntentResponse_initialResponseSetting' -+--+-- 'inputContexts', 'describeIntentResponse_inputContexts' - A list of contexts that must be active for the intent to be considered+-- for sending to the user.+--+-- 'intentClosingSetting', 'describeIntentResponse_intentClosingSetting' - The response that Amazon Lex sends to when the intent is closed.+--+-- 'intentConfirmationSetting', 'describeIntentResponse_intentConfirmationSetting' - Prompts that Amazon Lex sends to the user to confirm completion of an+-- intent.+--+-- 'intentId', 'describeIntentResponse_intentId' - The unique identifier assigned to the intent when it was created.+--+-- 'intentName', 'describeIntentResponse_intentName' - The name specified for the intent.+--+-- 'kendraConfiguration', 'describeIntentResponse_kendraConfiguration' - Configuration information required to use the+-- @AMAZON.KendraSearchIntent@ intent.+--+-- 'lastUpdatedDateTime', 'describeIntentResponse_lastUpdatedDateTime' - A timestamp of the date and time that the intent was last updated.+--+-- 'localeId', 'describeIntentResponse_localeId' - The language and locale specified for the intent.+--+-- 'outputContexts', 'describeIntentResponse_outputContexts' - A list of contexts that are activated when the intent is fulfilled.+--+-- 'parentIntentSignature', 'describeIntentResponse_parentIntentSignature' - The identifier of the built-in intent that this intent is derived from,+-- if any.+--+-- 'sampleUtterances', 'describeIntentResponse_sampleUtterances' - User utterances that trigger this intent.+--+-- 'slotPriorities', 'describeIntentResponse_slotPriorities' - The list that determines the priority that slots should be elicited from+-- the user.+--+-- 'httpStatus', 'describeIntentResponse_httpStatus' - The response's http status code.+newDescribeIntentResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeIntentResponse+newDescribeIntentResponse pHttpStatus_ =+ DescribeIntentResponse'+ { botId = Prelude.Nothing,+ botVersion = Prelude.Nothing,+ creationDateTime = Prelude.Nothing,+ description = Prelude.Nothing,+ dialogCodeHook = Prelude.Nothing,+ fulfillmentCodeHook = Prelude.Nothing,+ initialResponseSetting = Prelude.Nothing,+ inputContexts = Prelude.Nothing,+ intentClosingSetting = Prelude.Nothing,+ intentConfirmationSetting = Prelude.Nothing,+ intentId = Prelude.Nothing,+ intentName = Prelude.Nothing,+ kendraConfiguration = Prelude.Nothing,+ lastUpdatedDateTime = Prelude.Nothing,+ localeId = Prelude.Nothing,+ outputContexts = Prelude.Nothing,+ parentIntentSignature = Prelude.Nothing,+ sampleUtterances = Prelude.Nothing,+ slotPriorities = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The identifier of the bot associated with the intent.+describeIntentResponse_botId :: Lens.Lens' DescribeIntentResponse (Prelude.Maybe Prelude.Text)+describeIntentResponse_botId = Lens.lens (\DescribeIntentResponse' {botId} -> botId) (\s@DescribeIntentResponse' {} a -> s {botId = a} :: DescribeIntentResponse)++-- | The version of the bot associated with the intent.+describeIntentResponse_botVersion :: Lens.Lens' DescribeIntentResponse (Prelude.Maybe Prelude.Text)+describeIntentResponse_botVersion = Lens.lens (\DescribeIntentResponse' {botVersion} -> botVersion) (\s@DescribeIntentResponse' {} a -> s {botVersion = a} :: DescribeIntentResponse)++-- | A timestamp of the date and time that the intent was created.+describeIntentResponse_creationDateTime :: Lens.Lens' DescribeIntentResponse (Prelude.Maybe Prelude.UTCTime)+describeIntentResponse_creationDateTime = Lens.lens (\DescribeIntentResponse' {creationDateTime} -> creationDateTime) (\s@DescribeIntentResponse' {} a -> s {creationDateTime = a} :: DescribeIntentResponse) Prelude.. Lens.mapping Data._Time++-- | The description of the intent.+describeIntentResponse_description :: Lens.Lens' DescribeIntentResponse (Prelude.Maybe Prelude.Text)+describeIntentResponse_description = Lens.lens (\DescribeIntentResponse' {description} -> description) (\s@DescribeIntentResponse' {} a -> s {description = a} :: DescribeIntentResponse)++-- | The Lambda function called during each turn of a conversation with the+-- intent.+describeIntentResponse_dialogCodeHook :: Lens.Lens' DescribeIntentResponse (Prelude.Maybe DialogCodeHookSettings)+describeIntentResponse_dialogCodeHook = Lens.lens (\DescribeIntentResponse' {dialogCodeHook} -> dialogCodeHook) (\s@DescribeIntentResponse' {} a -> s {dialogCodeHook = a} :: DescribeIntentResponse)++-- | The Lambda function called when the intent is complete and ready for+-- fulfillment.+describeIntentResponse_fulfillmentCodeHook :: Lens.Lens' DescribeIntentResponse (Prelude.Maybe FulfillmentCodeHookSettings)+describeIntentResponse_fulfillmentCodeHook = Lens.lens (\DescribeIntentResponse' {fulfillmentCodeHook} -> fulfillmentCodeHook) (\s@DescribeIntentResponse' {} a -> s {fulfillmentCodeHook = a} :: DescribeIntentResponse)++describeIntentResponse_initialResponseSetting :: Lens.Lens' DescribeIntentResponse (Prelude.Maybe InitialResponseSetting)+describeIntentResponse_initialResponseSetting = Lens.lens (\DescribeIntentResponse' {initialResponseSetting} -> initialResponseSetting) (\s@DescribeIntentResponse' {} a -> s {initialResponseSetting = a} :: DescribeIntentResponse)++-- | A list of contexts that must be active for the intent to be considered+-- for sending to the user.+describeIntentResponse_inputContexts :: Lens.Lens' DescribeIntentResponse (Prelude.Maybe [InputContext])+describeIntentResponse_inputContexts = Lens.lens (\DescribeIntentResponse' {inputContexts} -> inputContexts) (\s@DescribeIntentResponse' {} a -> s {inputContexts = a} :: DescribeIntentResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response that Amazon Lex sends to when the intent is closed.+describeIntentResponse_intentClosingSetting :: Lens.Lens' DescribeIntentResponse (Prelude.Maybe IntentClosingSetting)+describeIntentResponse_intentClosingSetting = Lens.lens (\DescribeIntentResponse' {intentClosingSetting} -> intentClosingSetting) (\s@DescribeIntentResponse' {} a -> s {intentClosingSetting = a} :: DescribeIntentResponse)++-- | Prompts that Amazon Lex sends to the user to confirm completion of an+-- intent.+describeIntentResponse_intentConfirmationSetting :: Lens.Lens' DescribeIntentResponse (Prelude.Maybe IntentConfirmationSetting)+describeIntentResponse_intentConfirmationSetting = Lens.lens (\DescribeIntentResponse' {intentConfirmationSetting} -> intentConfirmationSetting) (\s@DescribeIntentResponse' {} a -> s {intentConfirmationSetting = a} :: DescribeIntentResponse)++-- | The unique identifier assigned to the intent when it was created.+describeIntentResponse_intentId :: Lens.Lens' DescribeIntentResponse (Prelude.Maybe Prelude.Text)+describeIntentResponse_intentId = Lens.lens (\DescribeIntentResponse' {intentId} -> intentId) (\s@DescribeIntentResponse' {} a -> s {intentId = a} :: DescribeIntentResponse)++-- | The name specified for the intent.+describeIntentResponse_intentName :: Lens.Lens' DescribeIntentResponse (Prelude.Maybe Prelude.Text)+describeIntentResponse_intentName = Lens.lens (\DescribeIntentResponse' {intentName} -> intentName) (\s@DescribeIntentResponse' {} a -> s {intentName = a} :: DescribeIntentResponse)++-- | Configuration information required to use the+-- @AMAZON.KendraSearchIntent@ intent.+describeIntentResponse_kendraConfiguration :: Lens.Lens' DescribeIntentResponse (Prelude.Maybe KendraConfiguration)+describeIntentResponse_kendraConfiguration = Lens.lens (\DescribeIntentResponse' {kendraConfiguration} -> kendraConfiguration) (\s@DescribeIntentResponse' {} a -> s {kendraConfiguration = a} :: DescribeIntentResponse)++-- | A timestamp of the date and time that the intent was last updated.+describeIntentResponse_lastUpdatedDateTime :: Lens.Lens' DescribeIntentResponse (Prelude.Maybe Prelude.UTCTime)+describeIntentResponse_lastUpdatedDateTime = Lens.lens (\DescribeIntentResponse' {lastUpdatedDateTime} -> lastUpdatedDateTime) (\s@DescribeIntentResponse' {} a -> s {lastUpdatedDateTime = a} :: DescribeIntentResponse) Prelude.. Lens.mapping Data._Time++-- | The language and locale specified for the intent.+describeIntentResponse_localeId :: Lens.Lens' DescribeIntentResponse (Prelude.Maybe Prelude.Text)+describeIntentResponse_localeId = Lens.lens (\DescribeIntentResponse' {localeId} -> localeId) (\s@DescribeIntentResponse' {} a -> s {localeId = a} :: DescribeIntentResponse)++-- | A list of contexts that are activated when the intent is fulfilled.+describeIntentResponse_outputContexts :: Lens.Lens' DescribeIntentResponse (Prelude.Maybe [OutputContext])+describeIntentResponse_outputContexts = Lens.lens (\DescribeIntentResponse' {outputContexts} -> outputContexts) (\s@DescribeIntentResponse' {} a -> s {outputContexts = a} :: DescribeIntentResponse) Prelude.. Lens.mapping Lens.coerced++-- | The identifier of the built-in intent that this intent is derived from,+-- if any.+describeIntentResponse_parentIntentSignature :: Lens.Lens' DescribeIntentResponse (Prelude.Maybe Prelude.Text)+describeIntentResponse_parentIntentSignature = Lens.lens (\DescribeIntentResponse' {parentIntentSignature} -> parentIntentSignature) (\s@DescribeIntentResponse' {} a -> s {parentIntentSignature = a} :: DescribeIntentResponse)++-- | User utterances that trigger this intent.+describeIntentResponse_sampleUtterances :: Lens.Lens' DescribeIntentResponse (Prelude.Maybe [SampleUtterance])+describeIntentResponse_sampleUtterances = Lens.lens (\DescribeIntentResponse' {sampleUtterances} -> sampleUtterances) (\s@DescribeIntentResponse' {} a -> s {sampleUtterances = a} :: DescribeIntentResponse) Prelude.. Lens.mapping Lens.coerced++-- | The list that determines the priority that slots should be elicited from+-- the user.+describeIntentResponse_slotPriorities :: Lens.Lens' DescribeIntentResponse (Prelude.Maybe [SlotPriority])+describeIntentResponse_slotPriorities = Lens.lens (\DescribeIntentResponse' {slotPriorities} -> slotPriorities) (\s@DescribeIntentResponse' {} a -> s {slotPriorities = a} :: DescribeIntentResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+describeIntentResponse_httpStatus :: Lens.Lens' DescribeIntentResponse Prelude.Int+describeIntentResponse_httpStatus = Lens.lens (\DescribeIntentResponse' {httpStatus} -> httpStatus) (\s@DescribeIntentResponse' {} a -> s {httpStatus = a} :: DescribeIntentResponse)++instance Prelude.NFData DescribeIntentResponse where+ rnf DescribeIntentResponse' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf dialogCodeHook+ `Prelude.seq` Prelude.rnf fulfillmentCodeHook+ `Prelude.seq` Prelude.rnf initialResponseSetting+ `Prelude.seq` Prelude.rnf inputContexts+ `Prelude.seq` Prelude.rnf intentClosingSetting+ `Prelude.seq` Prelude.rnf intentConfirmationSetting+ `Prelude.seq` Prelude.rnf intentId+ `Prelude.seq` Prelude.rnf intentName+ `Prelude.seq` Prelude.rnf kendraConfiguration+ `Prelude.seq` Prelude.rnf lastUpdatedDateTime+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf outputContexts+ `Prelude.seq` Prelude.rnf parentIntentSignature+ `Prelude.seq` Prelude.rnf sampleUtterances+ `Prelude.seq` Prelude.rnf slotPriorities+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/DescribeResourcePolicy.hs view
@@ -0,0 +1,214 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.DescribeResourcePolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets the resource policy and policy revision for a bot or bot alias.+module Amazonka.LexV2Models.DescribeResourcePolicy+ ( -- * Creating a Request+ DescribeResourcePolicy (..),+ newDescribeResourcePolicy,++ -- * Request Lenses+ describeResourcePolicy_resourceArn,++ -- * Destructuring the Response+ DescribeResourcePolicyResponse (..),+ newDescribeResourcePolicyResponse,++ -- * Response Lenses+ describeResourcePolicyResponse_policy,+ describeResourcePolicyResponse_resourceArn,+ describeResourcePolicyResponse_revisionId,+ describeResourcePolicyResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDescribeResourcePolicy' smart constructor.+data DescribeResourcePolicy = DescribeResourcePolicy'+ { -- | The Amazon Resource Name (ARN) of the bot or bot alias that the resource+ -- policy is attached to.+ resourceArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeResourcePolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'resourceArn', 'describeResourcePolicy_resourceArn' - The Amazon Resource Name (ARN) of the bot or bot alias that the resource+-- policy is attached to.+newDescribeResourcePolicy ::+ -- | 'resourceArn'+ Prelude.Text ->+ DescribeResourcePolicy+newDescribeResourcePolicy pResourceArn_ =+ DescribeResourcePolicy'+ { resourceArn =+ pResourceArn_+ }++-- | The Amazon Resource Name (ARN) of the bot or bot alias that the resource+-- policy is attached to.+describeResourcePolicy_resourceArn :: Lens.Lens' DescribeResourcePolicy Prelude.Text+describeResourcePolicy_resourceArn = Lens.lens (\DescribeResourcePolicy' {resourceArn} -> resourceArn) (\s@DescribeResourcePolicy' {} a -> s {resourceArn = a} :: DescribeResourcePolicy)++instance Core.AWSRequest DescribeResourcePolicy where+ type+ AWSResponse DescribeResourcePolicy =+ DescribeResourcePolicyResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeResourcePolicyResponse'+ Prelude.<$> (x Data..?> "policy")+ Prelude.<*> (x Data..?> "resourceArn")+ Prelude.<*> (x Data..?> "revisionId")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeResourcePolicy where+ hashWithSalt _salt DescribeResourcePolicy' {..} =+ _salt `Prelude.hashWithSalt` resourceArn++instance Prelude.NFData DescribeResourcePolicy where+ rnf DescribeResourcePolicy' {..} =+ Prelude.rnf resourceArn++instance Data.ToHeaders DescribeResourcePolicy where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DescribeResourcePolicy where+ toPath DescribeResourcePolicy' {..} =+ Prelude.mconcat+ ["/policy/", Data.toBS resourceArn, "/"]++instance Data.ToQuery DescribeResourcePolicy where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDescribeResourcePolicyResponse' smart constructor.+data DescribeResourcePolicyResponse = DescribeResourcePolicyResponse'+ { -- | The JSON structure that contains the resource policy. For more+ -- information about the contents of a JSON policy document, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies.html IAM JSON policy reference>+ -- .+ policy :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the bot or bot alias that the resource+ -- policy is attached to.+ resourceArn :: Prelude.Maybe Prelude.Text,+ -- | The current revision of the resource policy. Use the revision ID to make+ -- sure that you are updating the most current version of a resource policy+ -- when you add a policy statement to a resource, delete a resource, or+ -- update a resource.+ revisionId :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeResourcePolicyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'policy', 'describeResourcePolicyResponse_policy' - The JSON structure that contains the resource policy. For more+-- information about the contents of a JSON policy document, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies.html IAM JSON policy reference>+-- .+--+-- 'resourceArn', 'describeResourcePolicyResponse_resourceArn' - The Amazon Resource Name (ARN) of the bot or bot alias that the resource+-- policy is attached to.+--+-- 'revisionId', 'describeResourcePolicyResponse_revisionId' - The current revision of the resource policy. Use the revision ID to make+-- sure that you are updating the most current version of a resource policy+-- when you add a policy statement to a resource, delete a resource, or+-- update a resource.+--+-- 'httpStatus', 'describeResourcePolicyResponse_httpStatus' - The response's http status code.+newDescribeResourcePolicyResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeResourcePolicyResponse+newDescribeResourcePolicyResponse pHttpStatus_ =+ DescribeResourcePolicyResponse'+ { policy =+ Prelude.Nothing,+ resourceArn = Prelude.Nothing,+ revisionId = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The JSON structure that contains the resource policy. For more+-- information about the contents of a JSON policy document, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies.html IAM JSON policy reference>+-- .+describeResourcePolicyResponse_policy :: Lens.Lens' DescribeResourcePolicyResponse (Prelude.Maybe Prelude.Text)+describeResourcePolicyResponse_policy = Lens.lens (\DescribeResourcePolicyResponse' {policy} -> policy) (\s@DescribeResourcePolicyResponse' {} a -> s {policy = a} :: DescribeResourcePolicyResponse)++-- | The Amazon Resource Name (ARN) of the bot or bot alias that the resource+-- policy is attached to.+describeResourcePolicyResponse_resourceArn :: Lens.Lens' DescribeResourcePolicyResponse (Prelude.Maybe Prelude.Text)+describeResourcePolicyResponse_resourceArn = Lens.lens (\DescribeResourcePolicyResponse' {resourceArn} -> resourceArn) (\s@DescribeResourcePolicyResponse' {} a -> s {resourceArn = a} :: DescribeResourcePolicyResponse)++-- | The current revision of the resource policy. Use the revision ID to make+-- sure that you are updating the most current version of a resource policy+-- when you add a policy statement to a resource, delete a resource, or+-- update a resource.+describeResourcePolicyResponse_revisionId :: Lens.Lens' DescribeResourcePolicyResponse (Prelude.Maybe Prelude.Text)+describeResourcePolicyResponse_revisionId = Lens.lens (\DescribeResourcePolicyResponse' {revisionId} -> revisionId) (\s@DescribeResourcePolicyResponse' {} a -> s {revisionId = a} :: DescribeResourcePolicyResponse)++-- | The response's http status code.+describeResourcePolicyResponse_httpStatus :: Lens.Lens' DescribeResourcePolicyResponse Prelude.Int+describeResourcePolicyResponse_httpStatus = Lens.lens (\DescribeResourcePolicyResponse' {httpStatus} -> httpStatus) (\s@DescribeResourcePolicyResponse' {} a -> s {httpStatus = a} :: DescribeResourcePolicyResponse)++instance+ Prelude.NFData+ DescribeResourcePolicyResponse+ where+ rnf DescribeResourcePolicyResponse' {..} =+ Prelude.rnf policy+ `Prelude.seq` Prelude.rnf resourceArn+ `Prelude.seq` Prelude.rnf revisionId+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/DescribeSlot.hs view
@@ -0,0 +1,415 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.DescribeSlot+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets metadata information about a slot.+module Amazonka.LexV2Models.DescribeSlot+ ( -- * Creating a Request+ DescribeSlot (..),+ newDescribeSlot,++ -- * Request Lenses+ describeSlot_slotId,+ describeSlot_botId,+ describeSlot_botVersion,+ describeSlot_localeId,+ describeSlot_intentId,++ -- * Destructuring the Response+ DescribeSlotResponse (..),+ newDescribeSlotResponse,++ -- * Response Lenses+ describeSlotResponse_botId,+ describeSlotResponse_botVersion,+ describeSlotResponse_creationDateTime,+ describeSlotResponse_description,+ describeSlotResponse_intentId,+ describeSlotResponse_lastUpdatedDateTime,+ describeSlotResponse_localeId,+ describeSlotResponse_multipleValuesSetting,+ describeSlotResponse_obfuscationSetting,+ describeSlotResponse_slotId,+ describeSlotResponse_slotName,+ describeSlotResponse_slotTypeId,+ describeSlotResponse_subSlotSetting,+ describeSlotResponse_valueElicitationSetting,+ describeSlotResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDescribeSlot' smart constructor.+data DescribeSlot = DescribeSlot'+ { -- | The unique identifier for the slot.+ slotId :: Prelude.Text,+ -- | The identifier of the bot associated with the slot.+ botId :: Prelude.Text,+ -- | The version of the bot associated with the slot.+ botVersion :: Prelude.Text,+ -- | The identifier of the language and locale of the slot to describe. The+ -- string must match one of the supported locales. For more information,+ -- see+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+ localeId :: Prelude.Text,+ -- | The identifier of the intent that contains the slot.+ intentId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeSlot' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'slotId', 'describeSlot_slotId' - The unique identifier for the slot.+--+-- 'botId', 'describeSlot_botId' - The identifier of the bot associated with the slot.+--+-- 'botVersion', 'describeSlot_botVersion' - The version of the bot associated with the slot.+--+-- 'localeId', 'describeSlot_localeId' - The identifier of the language and locale of the slot to describe. The+-- string must match one of the supported locales. For more information,+-- see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+--+-- 'intentId', 'describeSlot_intentId' - The identifier of the intent that contains the slot.+newDescribeSlot ::+ -- | 'slotId'+ Prelude.Text ->+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ -- | 'localeId'+ Prelude.Text ->+ -- | 'intentId'+ Prelude.Text ->+ DescribeSlot+newDescribeSlot+ pSlotId_+ pBotId_+ pBotVersion_+ pLocaleId_+ pIntentId_ =+ DescribeSlot'+ { slotId = pSlotId_,+ botId = pBotId_,+ botVersion = pBotVersion_,+ localeId = pLocaleId_,+ intentId = pIntentId_+ }++-- | The unique identifier for the slot.+describeSlot_slotId :: Lens.Lens' DescribeSlot Prelude.Text+describeSlot_slotId = Lens.lens (\DescribeSlot' {slotId} -> slotId) (\s@DescribeSlot' {} a -> s {slotId = a} :: DescribeSlot)++-- | The identifier of the bot associated with the slot.+describeSlot_botId :: Lens.Lens' DescribeSlot Prelude.Text+describeSlot_botId = Lens.lens (\DescribeSlot' {botId} -> botId) (\s@DescribeSlot' {} a -> s {botId = a} :: DescribeSlot)++-- | The version of the bot associated with the slot.+describeSlot_botVersion :: Lens.Lens' DescribeSlot Prelude.Text+describeSlot_botVersion = Lens.lens (\DescribeSlot' {botVersion} -> botVersion) (\s@DescribeSlot' {} a -> s {botVersion = a} :: DescribeSlot)++-- | The identifier of the language and locale of the slot to describe. The+-- string must match one of the supported locales. For more information,+-- see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+describeSlot_localeId :: Lens.Lens' DescribeSlot Prelude.Text+describeSlot_localeId = Lens.lens (\DescribeSlot' {localeId} -> localeId) (\s@DescribeSlot' {} a -> s {localeId = a} :: DescribeSlot)++-- | The identifier of the intent that contains the slot.+describeSlot_intentId :: Lens.Lens' DescribeSlot Prelude.Text+describeSlot_intentId = Lens.lens (\DescribeSlot' {intentId} -> intentId) (\s@DescribeSlot' {} a -> s {intentId = a} :: DescribeSlot)++instance Core.AWSRequest DescribeSlot where+ type AWSResponse DescribeSlot = DescribeSlotResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeSlotResponse'+ Prelude.<$> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botVersion")+ Prelude.<*> (x Data..?> "creationDateTime")+ Prelude.<*> (x Data..?> "description")+ Prelude.<*> (x Data..?> "intentId")+ Prelude.<*> (x Data..?> "lastUpdatedDateTime")+ Prelude.<*> (x Data..?> "localeId")+ Prelude.<*> (x Data..?> "multipleValuesSetting")+ Prelude.<*> (x Data..?> "obfuscationSetting")+ Prelude.<*> (x Data..?> "slotId")+ Prelude.<*> (x Data..?> "slotName")+ Prelude.<*> (x Data..?> "slotTypeId")+ Prelude.<*> (x Data..?> "subSlotSetting")+ Prelude.<*> (x Data..?> "valueElicitationSetting")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeSlot where+ hashWithSalt _salt DescribeSlot' {..} =+ _salt+ `Prelude.hashWithSalt` slotId+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` localeId+ `Prelude.hashWithSalt` intentId++instance Prelude.NFData DescribeSlot where+ rnf DescribeSlot' {..} =+ Prelude.rnf slotId+ `Prelude.seq` Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf intentId++instance Data.ToHeaders DescribeSlot where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DescribeSlot where+ toPath DescribeSlot' {..} =+ Prelude.mconcat+ [ "/bots/",+ Data.toBS botId,+ "/botversions/",+ Data.toBS botVersion,+ "/botlocales/",+ Data.toBS localeId,+ "/intents/",+ Data.toBS intentId,+ "/slots/",+ Data.toBS slotId,+ "/"+ ]++instance Data.ToQuery DescribeSlot where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDescribeSlotResponse' smart constructor.+data DescribeSlotResponse = DescribeSlotResponse'+ { -- | The identifier of the bot associated with the slot.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The version of the bot associated with the slot.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | A timestamp of the date and time that the slot was created.+ creationDateTime :: Prelude.Maybe Data.POSIX,+ -- | The description specified for the slot.+ description :: Prelude.Maybe Prelude.Text,+ -- | The identifier of the intent associated with the slot.+ intentId :: Prelude.Maybe Prelude.Text,+ -- | A timestamp of the date and time that the slot was last updated.+ lastUpdatedDateTime :: Prelude.Maybe Data.POSIX,+ -- | The language and locale specified for the slot.+ localeId :: Prelude.Maybe Prelude.Text,+ -- | Indicates whether the slot accepts multiple values in a single+ -- utterance.+ --+ -- If the @multipleValuesSetting@ is not set, the default value is @false@.+ multipleValuesSetting :: Prelude.Maybe MultipleValuesSetting,+ -- | Whether slot values are shown in Amazon CloudWatch logs. If the value is+ -- @None@, the actual value of the slot is shown in logs.+ obfuscationSetting :: Prelude.Maybe ObfuscationSetting,+ -- | The unique identifier generated for the slot.+ slotId :: Prelude.Maybe Prelude.Text,+ -- | The name specified for the slot.+ slotName :: Prelude.Maybe Prelude.Text,+ -- | The identifier of the slot type that determines the values entered into+ -- the slot.+ slotTypeId :: Prelude.Maybe Prelude.Text,+ -- | Specifications for the constituent sub slots and the expression for the+ -- composite slot.+ subSlotSetting :: Prelude.Maybe SubSlotSetting,+ -- | Prompts that Amazon Lex uses to elicit a value for the slot.+ valueElicitationSetting :: Prelude.Maybe SlotValueElicitationSetting,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeSlotResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'describeSlotResponse_botId' - The identifier of the bot associated with the slot.+--+-- 'botVersion', 'describeSlotResponse_botVersion' - The version of the bot associated with the slot.+--+-- 'creationDateTime', 'describeSlotResponse_creationDateTime' - A timestamp of the date and time that the slot was created.+--+-- 'description', 'describeSlotResponse_description' - The description specified for the slot.+--+-- 'intentId', 'describeSlotResponse_intentId' - The identifier of the intent associated with the slot.+--+-- 'lastUpdatedDateTime', 'describeSlotResponse_lastUpdatedDateTime' - A timestamp of the date and time that the slot was last updated.+--+-- 'localeId', 'describeSlotResponse_localeId' - The language and locale specified for the slot.+--+-- 'multipleValuesSetting', 'describeSlotResponse_multipleValuesSetting' - Indicates whether the slot accepts multiple values in a single+-- utterance.+--+-- If the @multipleValuesSetting@ is not set, the default value is @false@.+--+-- 'obfuscationSetting', 'describeSlotResponse_obfuscationSetting' - Whether slot values are shown in Amazon CloudWatch logs. If the value is+-- @None@, the actual value of the slot is shown in logs.+--+-- 'slotId', 'describeSlotResponse_slotId' - The unique identifier generated for the slot.+--+-- 'slotName', 'describeSlotResponse_slotName' - The name specified for the slot.+--+-- 'slotTypeId', 'describeSlotResponse_slotTypeId' - The identifier of the slot type that determines the values entered into+-- the slot.+--+-- 'subSlotSetting', 'describeSlotResponse_subSlotSetting' - Specifications for the constituent sub slots and the expression for the+-- composite slot.+--+-- 'valueElicitationSetting', 'describeSlotResponse_valueElicitationSetting' - Prompts that Amazon Lex uses to elicit a value for the slot.+--+-- 'httpStatus', 'describeSlotResponse_httpStatus' - The response's http status code.+newDescribeSlotResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeSlotResponse+newDescribeSlotResponse pHttpStatus_ =+ DescribeSlotResponse'+ { botId = Prelude.Nothing,+ botVersion = Prelude.Nothing,+ creationDateTime = Prelude.Nothing,+ description = Prelude.Nothing,+ intentId = Prelude.Nothing,+ lastUpdatedDateTime = Prelude.Nothing,+ localeId = Prelude.Nothing,+ multipleValuesSetting = Prelude.Nothing,+ obfuscationSetting = Prelude.Nothing,+ slotId = Prelude.Nothing,+ slotName = Prelude.Nothing,+ slotTypeId = Prelude.Nothing,+ subSlotSetting = Prelude.Nothing,+ valueElicitationSetting = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The identifier of the bot associated with the slot.+describeSlotResponse_botId :: Lens.Lens' DescribeSlotResponse (Prelude.Maybe Prelude.Text)+describeSlotResponse_botId = Lens.lens (\DescribeSlotResponse' {botId} -> botId) (\s@DescribeSlotResponse' {} a -> s {botId = a} :: DescribeSlotResponse)++-- | The version of the bot associated with the slot.+describeSlotResponse_botVersion :: Lens.Lens' DescribeSlotResponse (Prelude.Maybe Prelude.Text)+describeSlotResponse_botVersion = Lens.lens (\DescribeSlotResponse' {botVersion} -> botVersion) (\s@DescribeSlotResponse' {} a -> s {botVersion = a} :: DescribeSlotResponse)++-- | A timestamp of the date and time that the slot was created.+describeSlotResponse_creationDateTime :: Lens.Lens' DescribeSlotResponse (Prelude.Maybe Prelude.UTCTime)+describeSlotResponse_creationDateTime = Lens.lens (\DescribeSlotResponse' {creationDateTime} -> creationDateTime) (\s@DescribeSlotResponse' {} a -> s {creationDateTime = a} :: DescribeSlotResponse) Prelude.. Lens.mapping Data._Time++-- | The description specified for the slot.+describeSlotResponse_description :: Lens.Lens' DescribeSlotResponse (Prelude.Maybe Prelude.Text)+describeSlotResponse_description = Lens.lens (\DescribeSlotResponse' {description} -> description) (\s@DescribeSlotResponse' {} a -> s {description = a} :: DescribeSlotResponse)++-- | The identifier of the intent associated with the slot.+describeSlotResponse_intentId :: Lens.Lens' DescribeSlotResponse (Prelude.Maybe Prelude.Text)+describeSlotResponse_intentId = Lens.lens (\DescribeSlotResponse' {intentId} -> intentId) (\s@DescribeSlotResponse' {} a -> s {intentId = a} :: DescribeSlotResponse)++-- | A timestamp of the date and time that the slot was last updated.+describeSlotResponse_lastUpdatedDateTime :: Lens.Lens' DescribeSlotResponse (Prelude.Maybe Prelude.UTCTime)+describeSlotResponse_lastUpdatedDateTime = Lens.lens (\DescribeSlotResponse' {lastUpdatedDateTime} -> lastUpdatedDateTime) (\s@DescribeSlotResponse' {} a -> s {lastUpdatedDateTime = a} :: DescribeSlotResponse) Prelude.. Lens.mapping Data._Time++-- | The language and locale specified for the slot.+describeSlotResponse_localeId :: Lens.Lens' DescribeSlotResponse (Prelude.Maybe Prelude.Text)+describeSlotResponse_localeId = Lens.lens (\DescribeSlotResponse' {localeId} -> localeId) (\s@DescribeSlotResponse' {} a -> s {localeId = a} :: DescribeSlotResponse)++-- | Indicates whether the slot accepts multiple values in a single+-- utterance.+--+-- If the @multipleValuesSetting@ is not set, the default value is @false@.+describeSlotResponse_multipleValuesSetting :: Lens.Lens' DescribeSlotResponse (Prelude.Maybe MultipleValuesSetting)+describeSlotResponse_multipleValuesSetting = Lens.lens (\DescribeSlotResponse' {multipleValuesSetting} -> multipleValuesSetting) (\s@DescribeSlotResponse' {} a -> s {multipleValuesSetting = a} :: DescribeSlotResponse)++-- | Whether slot values are shown in Amazon CloudWatch logs. If the value is+-- @None@, the actual value of the slot is shown in logs.+describeSlotResponse_obfuscationSetting :: Lens.Lens' DescribeSlotResponse (Prelude.Maybe ObfuscationSetting)+describeSlotResponse_obfuscationSetting = Lens.lens (\DescribeSlotResponse' {obfuscationSetting} -> obfuscationSetting) (\s@DescribeSlotResponse' {} a -> s {obfuscationSetting = a} :: DescribeSlotResponse)++-- | The unique identifier generated for the slot.+describeSlotResponse_slotId :: Lens.Lens' DescribeSlotResponse (Prelude.Maybe Prelude.Text)+describeSlotResponse_slotId = Lens.lens (\DescribeSlotResponse' {slotId} -> slotId) (\s@DescribeSlotResponse' {} a -> s {slotId = a} :: DescribeSlotResponse)++-- | The name specified for the slot.+describeSlotResponse_slotName :: Lens.Lens' DescribeSlotResponse (Prelude.Maybe Prelude.Text)+describeSlotResponse_slotName = Lens.lens (\DescribeSlotResponse' {slotName} -> slotName) (\s@DescribeSlotResponse' {} a -> s {slotName = a} :: DescribeSlotResponse)++-- | The identifier of the slot type that determines the values entered into+-- the slot.+describeSlotResponse_slotTypeId :: Lens.Lens' DescribeSlotResponse (Prelude.Maybe Prelude.Text)+describeSlotResponse_slotTypeId = Lens.lens (\DescribeSlotResponse' {slotTypeId} -> slotTypeId) (\s@DescribeSlotResponse' {} a -> s {slotTypeId = a} :: DescribeSlotResponse)++-- | Specifications for the constituent sub slots and the expression for the+-- composite slot.+describeSlotResponse_subSlotSetting :: Lens.Lens' DescribeSlotResponse (Prelude.Maybe SubSlotSetting)+describeSlotResponse_subSlotSetting = Lens.lens (\DescribeSlotResponse' {subSlotSetting} -> subSlotSetting) (\s@DescribeSlotResponse' {} a -> s {subSlotSetting = a} :: DescribeSlotResponse)++-- | Prompts that Amazon Lex uses to elicit a value for the slot.+describeSlotResponse_valueElicitationSetting :: Lens.Lens' DescribeSlotResponse (Prelude.Maybe SlotValueElicitationSetting)+describeSlotResponse_valueElicitationSetting = Lens.lens (\DescribeSlotResponse' {valueElicitationSetting} -> valueElicitationSetting) (\s@DescribeSlotResponse' {} a -> s {valueElicitationSetting = a} :: DescribeSlotResponse)++-- | The response's http status code.+describeSlotResponse_httpStatus :: Lens.Lens' DescribeSlotResponse Prelude.Int+describeSlotResponse_httpStatus = Lens.lens (\DescribeSlotResponse' {httpStatus} -> httpStatus) (\s@DescribeSlotResponse' {} a -> s {httpStatus = a} :: DescribeSlotResponse)++instance Prelude.NFData DescribeSlotResponse where+ rnf DescribeSlotResponse' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf intentId+ `Prelude.seq` Prelude.rnf lastUpdatedDateTime+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf multipleValuesSetting+ `Prelude.seq` Prelude.rnf obfuscationSetting+ `Prelude.seq` Prelude.rnf slotId+ `Prelude.seq` Prelude.rnf slotName+ `Prelude.seq` Prelude.rnf slotTypeId+ `Prelude.seq` Prelude.rnf subSlotSetting+ `Prelude.seq` Prelude.rnf valueElicitationSetting+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/DescribeSlotType.hs view
@@ -0,0 +1,375 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.DescribeSlotType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets metadata information about a slot type.+module Amazonka.LexV2Models.DescribeSlotType+ ( -- * Creating a Request+ DescribeSlotType (..),+ newDescribeSlotType,++ -- * Request Lenses+ describeSlotType_slotTypeId,+ describeSlotType_botId,+ describeSlotType_botVersion,+ describeSlotType_localeId,++ -- * Destructuring the Response+ DescribeSlotTypeResponse (..),+ newDescribeSlotTypeResponse,++ -- * Response Lenses+ describeSlotTypeResponse_botId,+ describeSlotTypeResponse_botVersion,+ describeSlotTypeResponse_compositeSlotTypeSetting,+ describeSlotTypeResponse_creationDateTime,+ describeSlotTypeResponse_description,+ describeSlotTypeResponse_externalSourceSetting,+ describeSlotTypeResponse_lastUpdatedDateTime,+ describeSlotTypeResponse_localeId,+ describeSlotTypeResponse_parentSlotTypeSignature,+ describeSlotTypeResponse_slotTypeId,+ describeSlotTypeResponse_slotTypeName,+ describeSlotTypeResponse_slotTypeValues,+ describeSlotTypeResponse_valueSelectionSetting,+ describeSlotTypeResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDescribeSlotType' smart constructor.+data DescribeSlotType = DescribeSlotType'+ { -- | The identifier of the slot type.+ slotTypeId :: Prelude.Text,+ -- | The identifier of the bot associated with the slot type.+ botId :: Prelude.Text,+ -- | The version of the bot associated with the slot type.+ botVersion :: Prelude.Text,+ -- | The identifier of the language and locale of the slot type to describe.+ -- The string must match one of the supported locales. For more+ -- information, see+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+ localeId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeSlotType' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'slotTypeId', 'describeSlotType_slotTypeId' - The identifier of the slot type.+--+-- 'botId', 'describeSlotType_botId' - The identifier of the bot associated with the slot type.+--+-- 'botVersion', 'describeSlotType_botVersion' - The version of the bot associated with the slot type.+--+-- 'localeId', 'describeSlotType_localeId' - The identifier of the language and locale of the slot type to describe.+-- The string must match one of the supported locales. For more+-- information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+newDescribeSlotType ::+ -- | 'slotTypeId'+ Prelude.Text ->+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ -- | 'localeId'+ Prelude.Text ->+ DescribeSlotType+newDescribeSlotType+ pSlotTypeId_+ pBotId_+ pBotVersion_+ pLocaleId_ =+ DescribeSlotType'+ { slotTypeId = pSlotTypeId_,+ botId = pBotId_,+ botVersion = pBotVersion_,+ localeId = pLocaleId_+ }++-- | The identifier of the slot type.+describeSlotType_slotTypeId :: Lens.Lens' DescribeSlotType Prelude.Text+describeSlotType_slotTypeId = Lens.lens (\DescribeSlotType' {slotTypeId} -> slotTypeId) (\s@DescribeSlotType' {} a -> s {slotTypeId = a} :: DescribeSlotType)++-- | The identifier of the bot associated with the slot type.+describeSlotType_botId :: Lens.Lens' DescribeSlotType Prelude.Text+describeSlotType_botId = Lens.lens (\DescribeSlotType' {botId} -> botId) (\s@DescribeSlotType' {} a -> s {botId = a} :: DescribeSlotType)++-- | The version of the bot associated with the slot type.+describeSlotType_botVersion :: Lens.Lens' DescribeSlotType Prelude.Text+describeSlotType_botVersion = Lens.lens (\DescribeSlotType' {botVersion} -> botVersion) (\s@DescribeSlotType' {} a -> s {botVersion = a} :: DescribeSlotType)++-- | The identifier of the language and locale of the slot type to describe.+-- The string must match one of the supported locales. For more+-- information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+describeSlotType_localeId :: Lens.Lens' DescribeSlotType Prelude.Text+describeSlotType_localeId = Lens.lens (\DescribeSlotType' {localeId} -> localeId) (\s@DescribeSlotType' {} a -> s {localeId = a} :: DescribeSlotType)++instance Core.AWSRequest DescribeSlotType where+ type+ AWSResponse DescribeSlotType =+ DescribeSlotTypeResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeSlotTypeResponse'+ Prelude.<$> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botVersion")+ Prelude.<*> (x Data..?> "compositeSlotTypeSetting")+ Prelude.<*> (x Data..?> "creationDateTime")+ Prelude.<*> (x Data..?> "description")+ Prelude.<*> (x Data..?> "externalSourceSetting")+ Prelude.<*> (x Data..?> "lastUpdatedDateTime")+ Prelude.<*> (x Data..?> "localeId")+ Prelude.<*> (x Data..?> "parentSlotTypeSignature")+ Prelude.<*> (x Data..?> "slotTypeId")+ Prelude.<*> (x Data..?> "slotTypeName")+ Prelude.<*> (x Data..?> "slotTypeValues")+ Prelude.<*> (x Data..?> "valueSelectionSetting")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeSlotType where+ hashWithSalt _salt DescribeSlotType' {..} =+ _salt+ `Prelude.hashWithSalt` slotTypeId+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` localeId++instance Prelude.NFData DescribeSlotType where+ rnf DescribeSlotType' {..} =+ Prelude.rnf slotTypeId+ `Prelude.seq` Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId++instance Data.ToHeaders DescribeSlotType where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DescribeSlotType where+ toPath DescribeSlotType' {..} =+ Prelude.mconcat+ [ "/bots/",+ Data.toBS botId,+ "/botversions/",+ Data.toBS botVersion,+ "/botlocales/",+ Data.toBS localeId,+ "/slottypes/",+ Data.toBS slotTypeId,+ "/"+ ]++instance Data.ToQuery DescribeSlotType where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDescribeSlotTypeResponse' smart constructor.+data DescribeSlotTypeResponse = DescribeSlotTypeResponse'+ { -- | The identifier of the bot associated with the slot type.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The version of the bot associated with the slot type.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | Specifications for a composite slot type.+ compositeSlotTypeSetting :: Prelude.Maybe CompositeSlotTypeSetting,+ -- | A timestamp of the date and time that the slot type was created.+ creationDateTime :: Prelude.Maybe Data.POSIX,+ -- | The description specified for the slot type.+ description :: Prelude.Maybe Prelude.Text,+ externalSourceSetting :: Prelude.Maybe ExternalSourceSetting,+ -- | A timestamp of the date and time that the slot type was last updated.+ lastUpdatedDateTime :: Prelude.Maybe Data.POSIX,+ -- | The language and locale specified for the slot type.+ localeId :: Prelude.Maybe Prelude.Text,+ -- | The built in slot type used as a parent to this slot type.+ parentSlotTypeSignature :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier for the slot type.+ slotTypeId :: Prelude.Maybe Prelude.Text,+ -- | The name specified for the slot type.+ slotTypeName :: Prelude.Maybe Prelude.Text,+ -- | The values that the slot type can take. Includes any synonyms for the+ -- slot type values.+ slotTypeValues :: Prelude.Maybe (Prelude.NonEmpty SlotTypeValue),+ -- | The strategy that Amazon Lex uses to choose a value from a list of+ -- possible values.+ valueSelectionSetting :: Prelude.Maybe SlotValueSelectionSetting,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeSlotTypeResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'describeSlotTypeResponse_botId' - The identifier of the bot associated with the slot type.+--+-- 'botVersion', 'describeSlotTypeResponse_botVersion' - The version of the bot associated with the slot type.+--+-- 'compositeSlotTypeSetting', 'describeSlotTypeResponse_compositeSlotTypeSetting' - Specifications for a composite slot type.+--+-- 'creationDateTime', 'describeSlotTypeResponse_creationDateTime' - A timestamp of the date and time that the slot type was created.+--+-- 'description', 'describeSlotTypeResponse_description' - The description specified for the slot type.+--+-- 'externalSourceSetting', 'describeSlotTypeResponse_externalSourceSetting' - Undocumented member.+--+-- 'lastUpdatedDateTime', 'describeSlotTypeResponse_lastUpdatedDateTime' - A timestamp of the date and time that the slot type was last updated.+--+-- 'localeId', 'describeSlotTypeResponse_localeId' - The language and locale specified for the slot type.+--+-- 'parentSlotTypeSignature', 'describeSlotTypeResponse_parentSlotTypeSignature' - The built in slot type used as a parent to this slot type.+--+-- 'slotTypeId', 'describeSlotTypeResponse_slotTypeId' - The unique identifier for the slot type.+--+-- 'slotTypeName', 'describeSlotTypeResponse_slotTypeName' - The name specified for the slot type.+--+-- 'slotTypeValues', 'describeSlotTypeResponse_slotTypeValues' - The values that the slot type can take. Includes any synonyms for the+-- slot type values.+--+-- 'valueSelectionSetting', 'describeSlotTypeResponse_valueSelectionSetting' - The strategy that Amazon Lex uses to choose a value from a list of+-- possible values.+--+-- 'httpStatus', 'describeSlotTypeResponse_httpStatus' - The response's http status code.+newDescribeSlotTypeResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeSlotTypeResponse+newDescribeSlotTypeResponse pHttpStatus_ =+ DescribeSlotTypeResponse'+ { botId = Prelude.Nothing,+ botVersion = Prelude.Nothing,+ compositeSlotTypeSetting = Prelude.Nothing,+ creationDateTime = Prelude.Nothing,+ description = Prelude.Nothing,+ externalSourceSetting = Prelude.Nothing,+ lastUpdatedDateTime = Prelude.Nothing,+ localeId = Prelude.Nothing,+ parentSlotTypeSignature = Prelude.Nothing,+ slotTypeId = Prelude.Nothing,+ slotTypeName = Prelude.Nothing,+ slotTypeValues = Prelude.Nothing,+ valueSelectionSetting = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The identifier of the bot associated with the slot type.+describeSlotTypeResponse_botId :: Lens.Lens' DescribeSlotTypeResponse (Prelude.Maybe Prelude.Text)+describeSlotTypeResponse_botId = Lens.lens (\DescribeSlotTypeResponse' {botId} -> botId) (\s@DescribeSlotTypeResponse' {} a -> s {botId = a} :: DescribeSlotTypeResponse)++-- | The version of the bot associated with the slot type.+describeSlotTypeResponse_botVersion :: Lens.Lens' DescribeSlotTypeResponse (Prelude.Maybe Prelude.Text)+describeSlotTypeResponse_botVersion = Lens.lens (\DescribeSlotTypeResponse' {botVersion} -> botVersion) (\s@DescribeSlotTypeResponse' {} a -> s {botVersion = a} :: DescribeSlotTypeResponse)++-- | Specifications for a composite slot type.+describeSlotTypeResponse_compositeSlotTypeSetting :: Lens.Lens' DescribeSlotTypeResponse (Prelude.Maybe CompositeSlotTypeSetting)+describeSlotTypeResponse_compositeSlotTypeSetting = Lens.lens (\DescribeSlotTypeResponse' {compositeSlotTypeSetting} -> compositeSlotTypeSetting) (\s@DescribeSlotTypeResponse' {} a -> s {compositeSlotTypeSetting = a} :: DescribeSlotTypeResponse)++-- | A timestamp of the date and time that the slot type was created.+describeSlotTypeResponse_creationDateTime :: Lens.Lens' DescribeSlotTypeResponse (Prelude.Maybe Prelude.UTCTime)+describeSlotTypeResponse_creationDateTime = Lens.lens (\DescribeSlotTypeResponse' {creationDateTime} -> creationDateTime) (\s@DescribeSlotTypeResponse' {} a -> s {creationDateTime = a} :: DescribeSlotTypeResponse) Prelude.. Lens.mapping Data._Time++-- | The description specified for the slot type.+describeSlotTypeResponse_description :: Lens.Lens' DescribeSlotTypeResponse (Prelude.Maybe Prelude.Text)+describeSlotTypeResponse_description = Lens.lens (\DescribeSlotTypeResponse' {description} -> description) (\s@DescribeSlotTypeResponse' {} a -> s {description = a} :: DescribeSlotTypeResponse)++-- | Undocumented member.+describeSlotTypeResponse_externalSourceSetting :: Lens.Lens' DescribeSlotTypeResponse (Prelude.Maybe ExternalSourceSetting)+describeSlotTypeResponse_externalSourceSetting = Lens.lens (\DescribeSlotTypeResponse' {externalSourceSetting} -> externalSourceSetting) (\s@DescribeSlotTypeResponse' {} a -> s {externalSourceSetting = a} :: DescribeSlotTypeResponse)++-- | A timestamp of the date and time that the slot type was last updated.+describeSlotTypeResponse_lastUpdatedDateTime :: Lens.Lens' DescribeSlotTypeResponse (Prelude.Maybe Prelude.UTCTime)+describeSlotTypeResponse_lastUpdatedDateTime = Lens.lens (\DescribeSlotTypeResponse' {lastUpdatedDateTime} -> lastUpdatedDateTime) (\s@DescribeSlotTypeResponse' {} a -> s {lastUpdatedDateTime = a} :: DescribeSlotTypeResponse) Prelude.. Lens.mapping Data._Time++-- | The language and locale specified for the slot type.+describeSlotTypeResponse_localeId :: Lens.Lens' DescribeSlotTypeResponse (Prelude.Maybe Prelude.Text)+describeSlotTypeResponse_localeId = Lens.lens (\DescribeSlotTypeResponse' {localeId} -> localeId) (\s@DescribeSlotTypeResponse' {} a -> s {localeId = a} :: DescribeSlotTypeResponse)++-- | The built in slot type used as a parent to this slot type.+describeSlotTypeResponse_parentSlotTypeSignature :: Lens.Lens' DescribeSlotTypeResponse (Prelude.Maybe Prelude.Text)+describeSlotTypeResponse_parentSlotTypeSignature = Lens.lens (\DescribeSlotTypeResponse' {parentSlotTypeSignature} -> parentSlotTypeSignature) (\s@DescribeSlotTypeResponse' {} a -> s {parentSlotTypeSignature = a} :: DescribeSlotTypeResponse)++-- | The unique identifier for the slot type.+describeSlotTypeResponse_slotTypeId :: Lens.Lens' DescribeSlotTypeResponse (Prelude.Maybe Prelude.Text)+describeSlotTypeResponse_slotTypeId = Lens.lens (\DescribeSlotTypeResponse' {slotTypeId} -> slotTypeId) (\s@DescribeSlotTypeResponse' {} a -> s {slotTypeId = a} :: DescribeSlotTypeResponse)++-- | The name specified for the slot type.+describeSlotTypeResponse_slotTypeName :: Lens.Lens' DescribeSlotTypeResponse (Prelude.Maybe Prelude.Text)+describeSlotTypeResponse_slotTypeName = Lens.lens (\DescribeSlotTypeResponse' {slotTypeName} -> slotTypeName) (\s@DescribeSlotTypeResponse' {} a -> s {slotTypeName = a} :: DescribeSlotTypeResponse)++-- | The values that the slot type can take. Includes any synonyms for the+-- slot type values.+describeSlotTypeResponse_slotTypeValues :: Lens.Lens' DescribeSlotTypeResponse (Prelude.Maybe (Prelude.NonEmpty SlotTypeValue))+describeSlotTypeResponse_slotTypeValues = Lens.lens (\DescribeSlotTypeResponse' {slotTypeValues} -> slotTypeValues) (\s@DescribeSlotTypeResponse' {} a -> s {slotTypeValues = a} :: DescribeSlotTypeResponse) Prelude.. Lens.mapping Lens.coerced++-- | The strategy that Amazon Lex uses to choose a value from a list of+-- possible values.+describeSlotTypeResponse_valueSelectionSetting :: Lens.Lens' DescribeSlotTypeResponse (Prelude.Maybe SlotValueSelectionSetting)+describeSlotTypeResponse_valueSelectionSetting = Lens.lens (\DescribeSlotTypeResponse' {valueSelectionSetting} -> valueSelectionSetting) (\s@DescribeSlotTypeResponse' {} a -> s {valueSelectionSetting = a} :: DescribeSlotTypeResponse)++-- | The response's http status code.+describeSlotTypeResponse_httpStatus :: Lens.Lens' DescribeSlotTypeResponse Prelude.Int+describeSlotTypeResponse_httpStatus = Lens.lens (\DescribeSlotTypeResponse' {httpStatus} -> httpStatus) (\s@DescribeSlotTypeResponse' {} a -> s {httpStatus = a} :: DescribeSlotTypeResponse)++instance Prelude.NFData DescribeSlotTypeResponse where+ rnf DescribeSlotTypeResponse' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf compositeSlotTypeSetting+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf externalSourceSetting+ `Prelude.seq` Prelude.rnf lastUpdatedDateTime+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf parentSlotTypeSignature+ `Prelude.seq` Prelude.rnf slotTypeId+ `Prelude.seq` Prelude.rnf slotTypeName+ `Prelude.seq` Prelude.rnf slotTypeValues+ `Prelude.seq` Prelude.rnf valueSelectionSetting+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/Lens.hs view
@@ -0,0 +1,1907 @@+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Lens+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Lens+ ( -- * Operations++ -- ** BatchCreateCustomVocabularyItem+ batchCreateCustomVocabularyItem_botId,+ batchCreateCustomVocabularyItem_botVersion,+ batchCreateCustomVocabularyItem_localeId,+ batchCreateCustomVocabularyItem_customVocabularyItemList,+ batchCreateCustomVocabularyItemResponse_botId,+ batchCreateCustomVocabularyItemResponse_botVersion,+ batchCreateCustomVocabularyItemResponse_errors,+ batchCreateCustomVocabularyItemResponse_localeId,+ batchCreateCustomVocabularyItemResponse_resources,+ batchCreateCustomVocabularyItemResponse_httpStatus,++ -- ** BatchDeleteCustomVocabularyItem+ batchDeleteCustomVocabularyItem_botId,+ batchDeleteCustomVocabularyItem_botVersion,+ batchDeleteCustomVocabularyItem_localeId,+ batchDeleteCustomVocabularyItem_customVocabularyItemList,+ batchDeleteCustomVocabularyItemResponse_botId,+ batchDeleteCustomVocabularyItemResponse_botVersion,+ batchDeleteCustomVocabularyItemResponse_errors,+ batchDeleteCustomVocabularyItemResponse_localeId,+ batchDeleteCustomVocabularyItemResponse_resources,+ batchDeleteCustomVocabularyItemResponse_httpStatus,++ -- ** BatchUpdateCustomVocabularyItem+ batchUpdateCustomVocabularyItem_botId,+ batchUpdateCustomVocabularyItem_botVersion,+ batchUpdateCustomVocabularyItem_localeId,+ batchUpdateCustomVocabularyItem_customVocabularyItemList,+ batchUpdateCustomVocabularyItemResponse_botId,+ batchUpdateCustomVocabularyItemResponse_botVersion,+ batchUpdateCustomVocabularyItemResponse_errors,+ batchUpdateCustomVocabularyItemResponse_localeId,+ batchUpdateCustomVocabularyItemResponse_resources,+ batchUpdateCustomVocabularyItemResponse_httpStatus,++ -- ** BuildBotLocale+ buildBotLocale_botId,+ buildBotLocale_botVersion,+ buildBotLocale_localeId,+ buildBotLocaleResponse_botId,+ buildBotLocaleResponse_botLocaleStatus,+ buildBotLocaleResponse_botVersion,+ buildBotLocaleResponse_lastBuildSubmittedDateTime,+ buildBotLocaleResponse_localeId,+ buildBotLocaleResponse_httpStatus,++ -- ** CreateBot+ createBot_botTags,+ createBot_description,+ createBot_testBotAliasTags,+ createBot_botName,+ createBot_roleArn,+ createBot_dataPrivacy,+ createBot_idleSessionTTLInSeconds,+ createBotResponse_botId,+ createBotResponse_botName,+ createBotResponse_botStatus,+ createBotResponse_botTags,+ createBotResponse_creationDateTime,+ createBotResponse_dataPrivacy,+ createBotResponse_description,+ createBotResponse_idleSessionTTLInSeconds,+ createBotResponse_roleArn,+ createBotResponse_testBotAliasTags,+ createBotResponse_httpStatus,++ -- ** CreateBotAlias+ createBotAlias_botAliasLocaleSettings,+ createBotAlias_botVersion,+ createBotAlias_conversationLogSettings,+ createBotAlias_description,+ createBotAlias_sentimentAnalysisSettings,+ createBotAlias_tags,+ createBotAlias_botAliasName,+ createBotAlias_botId,+ createBotAliasResponse_botAliasId,+ createBotAliasResponse_botAliasLocaleSettings,+ createBotAliasResponse_botAliasName,+ createBotAliasResponse_botAliasStatus,+ createBotAliasResponse_botId,+ createBotAliasResponse_botVersion,+ createBotAliasResponse_conversationLogSettings,+ createBotAliasResponse_creationDateTime,+ createBotAliasResponse_description,+ createBotAliasResponse_sentimentAnalysisSettings,+ createBotAliasResponse_tags,+ createBotAliasResponse_httpStatus,++ -- ** CreateBotLocale+ createBotLocale_description,+ createBotLocale_voiceSettings,+ createBotLocale_botId,+ createBotLocale_botVersion,+ createBotLocale_localeId,+ createBotLocale_nluIntentConfidenceThreshold,+ createBotLocaleResponse_botId,+ createBotLocaleResponse_botLocaleStatus,+ createBotLocaleResponse_botVersion,+ createBotLocaleResponse_creationDateTime,+ createBotLocaleResponse_description,+ createBotLocaleResponse_localeId,+ createBotLocaleResponse_localeName,+ createBotLocaleResponse_nluIntentConfidenceThreshold,+ createBotLocaleResponse_voiceSettings,+ createBotLocaleResponse_httpStatus,++ -- ** CreateBotVersion+ createBotVersion_description,+ createBotVersion_botId,+ createBotVersion_botVersionLocaleSpecification,+ createBotVersionResponse_botId,+ createBotVersionResponse_botStatus,+ createBotVersionResponse_botVersion,+ createBotVersionResponse_botVersionLocaleSpecification,+ createBotVersionResponse_creationDateTime,+ createBotVersionResponse_description,+ createBotVersionResponse_httpStatus,++ -- ** CreateExport+ createExport_filePassword,+ createExport_resourceSpecification,+ createExport_fileFormat,+ createExportResponse_creationDateTime,+ createExportResponse_exportId,+ createExportResponse_exportStatus,+ createExportResponse_fileFormat,+ createExportResponse_resourceSpecification,+ createExportResponse_httpStatus,++ -- ** CreateIntent+ createIntent_description,+ createIntent_dialogCodeHook,+ createIntent_fulfillmentCodeHook,+ createIntent_initialResponseSetting,+ createIntent_inputContexts,+ createIntent_intentClosingSetting,+ createIntent_intentConfirmationSetting,+ createIntent_kendraConfiguration,+ createIntent_outputContexts,+ createIntent_parentIntentSignature,+ createIntent_sampleUtterances,+ createIntent_intentName,+ createIntent_botId,+ createIntent_botVersion,+ createIntent_localeId,+ createIntentResponse_botId,+ createIntentResponse_botVersion,+ createIntentResponse_creationDateTime,+ createIntentResponse_description,+ createIntentResponse_dialogCodeHook,+ createIntentResponse_fulfillmentCodeHook,+ createIntentResponse_initialResponseSetting,+ createIntentResponse_inputContexts,+ createIntentResponse_intentClosingSetting,+ createIntentResponse_intentConfirmationSetting,+ createIntentResponse_intentId,+ createIntentResponse_intentName,+ createIntentResponse_kendraConfiguration,+ createIntentResponse_localeId,+ createIntentResponse_outputContexts,+ createIntentResponse_parentIntentSignature,+ createIntentResponse_sampleUtterances,+ createIntentResponse_httpStatus,++ -- ** CreateResourcePolicy+ createResourcePolicy_resourceArn,+ createResourcePolicy_policy,+ createResourcePolicyResponse_resourceArn,+ createResourcePolicyResponse_revisionId,+ createResourcePolicyResponse_httpStatus,++ -- ** CreateResourcePolicyStatement+ createResourcePolicyStatement_condition,+ createResourcePolicyStatement_expectedRevisionId,+ createResourcePolicyStatement_resourceArn,+ createResourcePolicyStatement_statementId,+ createResourcePolicyStatement_effect,+ createResourcePolicyStatement_principal,+ createResourcePolicyStatement_action,+ createResourcePolicyStatementResponse_resourceArn,+ createResourcePolicyStatementResponse_revisionId,+ createResourcePolicyStatementResponse_httpStatus,++ -- ** CreateSlot+ createSlot_description,+ createSlot_multipleValuesSetting,+ createSlot_obfuscationSetting,+ createSlot_slotTypeId,+ createSlot_subSlotSetting,+ createSlot_slotName,+ createSlot_valueElicitationSetting,+ createSlot_botId,+ createSlot_botVersion,+ createSlot_localeId,+ createSlot_intentId,+ createSlotResponse_botId,+ createSlotResponse_botVersion,+ createSlotResponse_creationDateTime,+ createSlotResponse_description,+ createSlotResponse_intentId,+ createSlotResponse_localeId,+ createSlotResponse_multipleValuesSetting,+ createSlotResponse_obfuscationSetting,+ createSlotResponse_slotId,+ createSlotResponse_slotName,+ createSlotResponse_slotTypeId,+ createSlotResponse_subSlotSetting,+ createSlotResponse_valueElicitationSetting,+ createSlotResponse_httpStatus,++ -- ** CreateSlotType+ createSlotType_compositeSlotTypeSetting,+ createSlotType_description,+ createSlotType_externalSourceSetting,+ createSlotType_parentSlotTypeSignature,+ createSlotType_slotTypeValues,+ createSlotType_valueSelectionSetting,+ createSlotType_slotTypeName,+ createSlotType_botId,+ createSlotType_botVersion,+ createSlotType_localeId,+ createSlotTypeResponse_botId,+ createSlotTypeResponse_botVersion,+ createSlotTypeResponse_compositeSlotTypeSetting,+ createSlotTypeResponse_creationDateTime,+ createSlotTypeResponse_description,+ createSlotTypeResponse_externalSourceSetting,+ createSlotTypeResponse_localeId,+ createSlotTypeResponse_parentSlotTypeSignature,+ createSlotTypeResponse_slotTypeId,+ createSlotTypeResponse_slotTypeName,+ createSlotTypeResponse_slotTypeValues,+ createSlotTypeResponse_valueSelectionSetting,+ createSlotTypeResponse_httpStatus,++ -- ** CreateUploadUrl+ createUploadUrlResponse_importId,+ createUploadUrlResponse_uploadUrl,+ createUploadUrlResponse_httpStatus,++ -- ** DeleteBot+ deleteBot_skipResourceInUseCheck,+ deleteBot_botId,+ deleteBotResponse_botId,+ deleteBotResponse_botStatus,+ deleteBotResponse_httpStatus,++ -- ** DeleteBotAlias+ deleteBotAlias_skipResourceInUseCheck,+ deleteBotAlias_botAliasId,+ deleteBotAlias_botId,+ deleteBotAliasResponse_botAliasId,+ deleteBotAliasResponse_botAliasStatus,+ deleteBotAliasResponse_botId,+ deleteBotAliasResponse_httpStatus,++ -- ** DeleteBotLocale+ deleteBotLocale_botId,+ deleteBotLocale_botVersion,+ deleteBotLocale_localeId,+ deleteBotLocaleResponse_botId,+ deleteBotLocaleResponse_botLocaleStatus,+ deleteBotLocaleResponse_botVersion,+ deleteBotLocaleResponse_localeId,+ deleteBotLocaleResponse_httpStatus,++ -- ** DeleteBotVersion+ deleteBotVersion_skipResourceInUseCheck,+ deleteBotVersion_botId,+ deleteBotVersion_botVersion,+ deleteBotVersionResponse_botId,+ deleteBotVersionResponse_botStatus,+ deleteBotVersionResponse_botVersion,+ deleteBotVersionResponse_httpStatus,++ -- ** DeleteCustomVocabulary+ deleteCustomVocabulary_botId,+ deleteCustomVocabulary_botVersion,+ deleteCustomVocabulary_localeId,+ deleteCustomVocabularyResponse_botId,+ deleteCustomVocabularyResponse_botVersion,+ deleteCustomVocabularyResponse_customVocabularyStatus,+ deleteCustomVocabularyResponse_localeId,+ deleteCustomVocabularyResponse_httpStatus,++ -- ** DeleteExport+ deleteExport_exportId,+ deleteExportResponse_exportId,+ deleteExportResponse_exportStatus,+ deleteExportResponse_httpStatus,++ -- ** DeleteImport+ deleteImport_importId,+ deleteImportResponse_importId,+ deleteImportResponse_importStatus,+ deleteImportResponse_httpStatus,++ -- ** DeleteIntent+ deleteIntent_intentId,+ deleteIntent_botId,+ deleteIntent_botVersion,+ deleteIntent_localeId,++ -- ** DeleteResourcePolicy+ deleteResourcePolicy_expectedRevisionId,+ deleteResourcePolicy_resourceArn,+ deleteResourcePolicyResponse_resourceArn,+ deleteResourcePolicyResponse_revisionId,+ deleteResourcePolicyResponse_httpStatus,++ -- ** DeleteResourcePolicyStatement+ deleteResourcePolicyStatement_expectedRevisionId,+ deleteResourcePolicyStatement_resourceArn,+ deleteResourcePolicyStatement_statementId,+ deleteResourcePolicyStatementResponse_resourceArn,+ deleteResourcePolicyStatementResponse_revisionId,+ deleteResourcePolicyStatementResponse_httpStatus,++ -- ** DeleteSlot+ deleteSlot_slotId,+ deleteSlot_botId,+ deleteSlot_botVersion,+ deleteSlot_localeId,+ deleteSlot_intentId,++ -- ** DeleteSlotType+ deleteSlotType_skipResourceInUseCheck,+ deleteSlotType_slotTypeId,+ deleteSlotType_botId,+ deleteSlotType_botVersion,+ deleteSlotType_localeId,++ -- ** DeleteUtterances+ deleteUtterances_localeId,+ deleteUtterances_sessionId,+ deleteUtterances_botId,+ deleteUtterancesResponse_httpStatus,++ -- ** DescribeBot+ describeBot_botId,+ describeBotResponse_botId,+ describeBotResponse_botName,+ describeBotResponse_botStatus,+ describeBotResponse_creationDateTime,+ describeBotResponse_dataPrivacy,+ describeBotResponse_description,+ describeBotResponse_idleSessionTTLInSeconds,+ describeBotResponse_lastUpdatedDateTime,+ describeBotResponse_roleArn,+ describeBotResponse_httpStatus,++ -- ** DescribeBotAlias+ describeBotAlias_botAliasId,+ describeBotAlias_botId,+ describeBotAliasResponse_botAliasHistoryEvents,+ describeBotAliasResponse_botAliasId,+ describeBotAliasResponse_botAliasLocaleSettings,+ describeBotAliasResponse_botAliasName,+ describeBotAliasResponse_botAliasStatus,+ describeBotAliasResponse_botId,+ describeBotAliasResponse_botVersion,+ describeBotAliasResponse_conversationLogSettings,+ describeBotAliasResponse_creationDateTime,+ describeBotAliasResponse_description,+ describeBotAliasResponse_lastUpdatedDateTime,+ describeBotAliasResponse_sentimentAnalysisSettings,+ describeBotAliasResponse_httpStatus,++ -- ** DescribeBotLocale+ describeBotLocale_botId,+ describeBotLocale_botVersion,+ describeBotLocale_localeId,+ describeBotLocaleResponse_botId,+ describeBotLocaleResponse_botLocaleHistoryEvents,+ describeBotLocaleResponse_botLocaleStatus,+ describeBotLocaleResponse_botVersion,+ describeBotLocaleResponse_creationDateTime,+ describeBotLocaleResponse_description,+ describeBotLocaleResponse_failureReasons,+ describeBotLocaleResponse_intentsCount,+ describeBotLocaleResponse_lastBuildSubmittedDateTime,+ describeBotLocaleResponse_lastUpdatedDateTime,+ describeBotLocaleResponse_localeId,+ describeBotLocaleResponse_localeName,+ describeBotLocaleResponse_nluIntentConfidenceThreshold,+ describeBotLocaleResponse_recommendedActions,+ describeBotLocaleResponse_slotTypesCount,+ describeBotLocaleResponse_voiceSettings,+ describeBotLocaleResponse_httpStatus,++ -- ** DescribeBotRecommendation+ describeBotRecommendation_botId,+ describeBotRecommendation_botVersion,+ describeBotRecommendation_localeId,+ describeBotRecommendation_botRecommendationId,+ describeBotRecommendationResponse_botId,+ describeBotRecommendationResponse_botRecommendationId,+ describeBotRecommendationResponse_botRecommendationResults,+ describeBotRecommendationResponse_botRecommendationStatus,+ describeBotRecommendationResponse_botVersion,+ describeBotRecommendationResponse_creationDateTime,+ describeBotRecommendationResponse_encryptionSetting,+ describeBotRecommendationResponse_failureReasons,+ describeBotRecommendationResponse_lastUpdatedDateTime,+ describeBotRecommendationResponse_localeId,+ describeBotRecommendationResponse_transcriptSourceSetting,+ describeBotRecommendationResponse_httpStatus,++ -- ** DescribeBotVersion+ describeBotVersion_botId,+ describeBotVersion_botVersion,+ describeBotVersionResponse_botId,+ describeBotVersionResponse_botName,+ describeBotVersionResponse_botStatus,+ describeBotVersionResponse_botVersion,+ describeBotVersionResponse_creationDateTime,+ describeBotVersionResponse_dataPrivacy,+ describeBotVersionResponse_description,+ describeBotVersionResponse_failureReasons,+ describeBotVersionResponse_idleSessionTTLInSeconds,+ describeBotVersionResponse_roleArn,+ describeBotVersionResponse_httpStatus,++ -- ** DescribeCustomVocabularyMetadata+ describeCustomVocabularyMetadata_botId,+ describeCustomVocabularyMetadata_botVersion,+ describeCustomVocabularyMetadata_localeId,+ describeCustomVocabularyMetadataResponse_botId,+ describeCustomVocabularyMetadataResponse_botVersion,+ describeCustomVocabularyMetadataResponse_creationDateTime,+ describeCustomVocabularyMetadataResponse_customVocabularyStatus,+ describeCustomVocabularyMetadataResponse_lastUpdatedDateTime,+ describeCustomVocabularyMetadataResponse_localeId,+ describeCustomVocabularyMetadataResponse_httpStatus,++ -- ** DescribeExport+ describeExport_exportId,+ describeExportResponse_creationDateTime,+ describeExportResponse_downloadUrl,+ describeExportResponse_exportId,+ describeExportResponse_exportStatus,+ describeExportResponse_failureReasons,+ describeExportResponse_fileFormat,+ describeExportResponse_lastUpdatedDateTime,+ describeExportResponse_resourceSpecification,+ describeExportResponse_httpStatus,++ -- ** DescribeImport+ describeImport_importId,+ describeImportResponse_creationDateTime,+ describeImportResponse_failureReasons,+ describeImportResponse_importId,+ describeImportResponse_importStatus,+ describeImportResponse_importedResourceId,+ describeImportResponse_importedResourceName,+ describeImportResponse_lastUpdatedDateTime,+ describeImportResponse_mergeStrategy,+ describeImportResponse_resourceSpecification,+ describeImportResponse_httpStatus,++ -- ** DescribeIntent+ describeIntent_intentId,+ describeIntent_botId,+ describeIntent_botVersion,+ describeIntent_localeId,+ describeIntentResponse_botId,+ describeIntentResponse_botVersion,+ describeIntentResponse_creationDateTime,+ describeIntentResponse_description,+ describeIntentResponse_dialogCodeHook,+ describeIntentResponse_fulfillmentCodeHook,+ describeIntentResponse_initialResponseSetting,+ describeIntentResponse_inputContexts,+ describeIntentResponse_intentClosingSetting,+ describeIntentResponse_intentConfirmationSetting,+ describeIntentResponse_intentId,+ describeIntentResponse_intentName,+ describeIntentResponse_kendraConfiguration,+ describeIntentResponse_lastUpdatedDateTime,+ describeIntentResponse_localeId,+ describeIntentResponse_outputContexts,+ describeIntentResponse_parentIntentSignature,+ describeIntentResponse_sampleUtterances,+ describeIntentResponse_slotPriorities,+ describeIntentResponse_httpStatus,++ -- ** DescribeResourcePolicy+ describeResourcePolicy_resourceArn,+ describeResourcePolicyResponse_policy,+ describeResourcePolicyResponse_resourceArn,+ describeResourcePolicyResponse_revisionId,+ describeResourcePolicyResponse_httpStatus,++ -- ** DescribeSlot+ describeSlot_slotId,+ describeSlot_botId,+ describeSlot_botVersion,+ describeSlot_localeId,+ describeSlot_intentId,+ describeSlotResponse_botId,+ describeSlotResponse_botVersion,+ describeSlotResponse_creationDateTime,+ describeSlotResponse_description,+ describeSlotResponse_intentId,+ describeSlotResponse_lastUpdatedDateTime,+ describeSlotResponse_localeId,+ describeSlotResponse_multipleValuesSetting,+ describeSlotResponse_obfuscationSetting,+ describeSlotResponse_slotId,+ describeSlotResponse_slotName,+ describeSlotResponse_slotTypeId,+ describeSlotResponse_subSlotSetting,+ describeSlotResponse_valueElicitationSetting,+ describeSlotResponse_httpStatus,++ -- ** DescribeSlotType+ describeSlotType_slotTypeId,+ describeSlotType_botId,+ describeSlotType_botVersion,+ describeSlotType_localeId,+ describeSlotTypeResponse_botId,+ describeSlotTypeResponse_botVersion,+ describeSlotTypeResponse_compositeSlotTypeSetting,+ describeSlotTypeResponse_creationDateTime,+ describeSlotTypeResponse_description,+ describeSlotTypeResponse_externalSourceSetting,+ describeSlotTypeResponse_lastUpdatedDateTime,+ describeSlotTypeResponse_localeId,+ describeSlotTypeResponse_parentSlotTypeSignature,+ describeSlotTypeResponse_slotTypeId,+ describeSlotTypeResponse_slotTypeName,+ describeSlotTypeResponse_slotTypeValues,+ describeSlotTypeResponse_valueSelectionSetting,+ describeSlotTypeResponse_httpStatus,++ -- ** ListAggregatedUtterances+ listAggregatedUtterances_botAliasId,+ listAggregatedUtterances_botVersion,+ listAggregatedUtterances_filters,+ listAggregatedUtterances_maxResults,+ listAggregatedUtterances_nextToken,+ listAggregatedUtterances_sortBy,+ listAggregatedUtterances_botId,+ listAggregatedUtterances_localeId,+ listAggregatedUtterances_aggregationDuration,+ listAggregatedUtterancesResponse_aggregatedUtterancesSummaries,+ listAggregatedUtterancesResponse_aggregationDuration,+ listAggregatedUtterancesResponse_aggregationLastRefreshedDateTime,+ listAggregatedUtterancesResponse_aggregationWindowEndTime,+ listAggregatedUtterancesResponse_aggregationWindowStartTime,+ listAggregatedUtterancesResponse_botAliasId,+ listAggregatedUtterancesResponse_botId,+ listAggregatedUtterancesResponse_botVersion,+ listAggregatedUtterancesResponse_localeId,+ listAggregatedUtterancesResponse_nextToken,+ listAggregatedUtterancesResponse_httpStatus,++ -- ** ListBotAliases+ listBotAliases_maxResults,+ listBotAliases_nextToken,+ listBotAliases_botId,+ listBotAliasesResponse_botAliasSummaries,+ listBotAliasesResponse_botId,+ listBotAliasesResponse_nextToken,+ listBotAliasesResponse_httpStatus,++ -- ** ListBotLocales+ listBotLocales_filters,+ listBotLocales_maxResults,+ listBotLocales_nextToken,+ listBotLocales_sortBy,+ listBotLocales_botId,+ listBotLocales_botVersion,+ listBotLocalesResponse_botId,+ listBotLocalesResponse_botLocaleSummaries,+ listBotLocalesResponse_botVersion,+ listBotLocalesResponse_nextToken,+ listBotLocalesResponse_httpStatus,++ -- ** ListBotRecommendations+ listBotRecommendations_maxResults,+ listBotRecommendations_nextToken,+ listBotRecommendations_botId,+ listBotRecommendations_botVersion,+ listBotRecommendations_localeId,+ listBotRecommendationsResponse_botId,+ listBotRecommendationsResponse_botRecommendationSummaries,+ listBotRecommendationsResponse_botVersion,+ listBotRecommendationsResponse_localeId,+ listBotRecommendationsResponse_nextToken,+ listBotRecommendationsResponse_httpStatus,++ -- ** ListBotVersions+ listBotVersions_maxResults,+ listBotVersions_nextToken,+ listBotVersions_sortBy,+ listBotVersions_botId,+ listBotVersionsResponse_botId,+ listBotVersionsResponse_botVersionSummaries,+ listBotVersionsResponse_nextToken,+ listBotVersionsResponse_httpStatus,++ -- ** ListBots+ listBots_filters,+ listBots_maxResults,+ listBots_nextToken,+ listBots_sortBy,+ listBotsResponse_botSummaries,+ listBotsResponse_nextToken,+ listBotsResponse_httpStatus,++ -- ** ListBuiltInIntents+ listBuiltInIntents_maxResults,+ listBuiltInIntents_nextToken,+ listBuiltInIntents_sortBy,+ listBuiltInIntents_localeId,+ listBuiltInIntentsResponse_builtInIntentSummaries,+ listBuiltInIntentsResponse_localeId,+ listBuiltInIntentsResponse_nextToken,+ listBuiltInIntentsResponse_httpStatus,++ -- ** ListBuiltInSlotTypes+ listBuiltInSlotTypes_maxResults,+ listBuiltInSlotTypes_nextToken,+ listBuiltInSlotTypes_sortBy,+ listBuiltInSlotTypes_localeId,+ listBuiltInSlotTypesResponse_builtInSlotTypeSummaries,+ listBuiltInSlotTypesResponse_localeId,+ listBuiltInSlotTypesResponse_nextToken,+ listBuiltInSlotTypesResponse_httpStatus,++ -- ** ListCustomVocabularyItems+ listCustomVocabularyItems_maxResults,+ listCustomVocabularyItems_nextToken,+ listCustomVocabularyItems_botId,+ listCustomVocabularyItems_botVersion,+ listCustomVocabularyItems_localeId,+ listCustomVocabularyItemsResponse_botId,+ listCustomVocabularyItemsResponse_botVersion,+ listCustomVocabularyItemsResponse_customVocabularyItems,+ listCustomVocabularyItemsResponse_localeId,+ listCustomVocabularyItemsResponse_nextToken,+ listCustomVocabularyItemsResponse_httpStatus,++ -- ** ListExports+ listExports_botId,+ listExports_botVersion,+ listExports_filters,+ listExports_localeId,+ listExports_maxResults,+ listExports_nextToken,+ listExports_sortBy,+ listExportsResponse_botId,+ listExportsResponse_botVersion,+ listExportsResponse_exportSummaries,+ listExportsResponse_localeId,+ listExportsResponse_nextToken,+ listExportsResponse_httpStatus,++ -- ** ListImports+ listImports_botId,+ listImports_botVersion,+ listImports_filters,+ listImports_localeId,+ listImports_maxResults,+ listImports_nextToken,+ listImports_sortBy,+ listImportsResponse_botId,+ listImportsResponse_botVersion,+ listImportsResponse_importSummaries,+ listImportsResponse_localeId,+ listImportsResponse_nextToken,+ listImportsResponse_httpStatus,++ -- ** ListIntents+ listIntents_filters,+ listIntents_maxResults,+ listIntents_nextToken,+ listIntents_sortBy,+ listIntents_botId,+ listIntents_botVersion,+ listIntents_localeId,+ listIntentsResponse_botId,+ listIntentsResponse_botVersion,+ listIntentsResponse_intentSummaries,+ listIntentsResponse_localeId,+ listIntentsResponse_nextToken,+ listIntentsResponse_httpStatus,++ -- ** ListRecommendedIntents+ listRecommendedIntents_maxResults,+ listRecommendedIntents_nextToken,+ listRecommendedIntents_botId,+ listRecommendedIntents_botVersion,+ listRecommendedIntents_localeId,+ listRecommendedIntents_botRecommendationId,+ listRecommendedIntentsResponse_botId,+ listRecommendedIntentsResponse_botRecommendationId,+ listRecommendedIntentsResponse_botVersion,+ listRecommendedIntentsResponse_localeId,+ listRecommendedIntentsResponse_nextToken,+ listRecommendedIntentsResponse_summaryList,+ listRecommendedIntentsResponse_httpStatus,++ -- ** ListSlotTypes+ listSlotTypes_filters,+ listSlotTypes_maxResults,+ listSlotTypes_nextToken,+ listSlotTypes_sortBy,+ listSlotTypes_botId,+ listSlotTypes_botVersion,+ listSlotTypes_localeId,+ listSlotTypesResponse_botId,+ listSlotTypesResponse_botVersion,+ listSlotTypesResponse_localeId,+ listSlotTypesResponse_nextToken,+ listSlotTypesResponse_slotTypeSummaries,+ listSlotTypesResponse_httpStatus,++ -- ** ListSlots+ listSlots_filters,+ listSlots_maxResults,+ listSlots_nextToken,+ listSlots_sortBy,+ listSlots_botId,+ listSlots_botVersion,+ listSlots_localeId,+ listSlots_intentId,+ listSlotsResponse_botId,+ listSlotsResponse_botVersion,+ listSlotsResponse_intentId,+ listSlotsResponse_localeId,+ listSlotsResponse_nextToken,+ listSlotsResponse_slotSummaries,+ listSlotsResponse_httpStatus,++ -- ** ListTagsForResource+ listTagsForResource_resourceARN,+ listTagsForResourceResponse_tags,+ listTagsForResourceResponse_httpStatus,++ -- ** SearchAssociatedTranscripts+ searchAssociatedTranscripts_maxResults,+ searchAssociatedTranscripts_nextIndex,+ searchAssociatedTranscripts_searchOrder,+ searchAssociatedTranscripts_botId,+ searchAssociatedTranscripts_botVersion,+ searchAssociatedTranscripts_localeId,+ searchAssociatedTranscripts_botRecommendationId,+ searchAssociatedTranscripts_filters,+ searchAssociatedTranscriptsResponse_associatedTranscripts,+ searchAssociatedTranscriptsResponse_botId,+ searchAssociatedTranscriptsResponse_botRecommendationId,+ searchAssociatedTranscriptsResponse_botVersion,+ searchAssociatedTranscriptsResponse_localeId,+ searchAssociatedTranscriptsResponse_nextIndex,+ searchAssociatedTranscriptsResponse_totalResults,+ searchAssociatedTranscriptsResponse_httpStatus,++ -- ** StartBotRecommendation+ startBotRecommendation_encryptionSetting,+ startBotRecommendation_botId,+ startBotRecommendation_botVersion,+ startBotRecommendation_localeId,+ startBotRecommendation_transcriptSourceSetting,+ startBotRecommendationResponse_botId,+ startBotRecommendationResponse_botRecommendationId,+ startBotRecommendationResponse_botRecommendationStatus,+ startBotRecommendationResponse_botVersion,+ startBotRecommendationResponse_creationDateTime,+ startBotRecommendationResponse_encryptionSetting,+ startBotRecommendationResponse_localeId,+ startBotRecommendationResponse_transcriptSourceSetting,+ startBotRecommendationResponse_httpStatus,++ -- ** StartImport+ startImport_filePassword,+ startImport_importId,+ startImport_resourceSpecification,+ startImport_mergeStrategy,+ startImportResponse_creationDateTime,+ startImportResponse_importId,+ startImportResponse_importStatus,+ startImportResponse_mergeStrategy,+ startImportResponse_resourceSpecification,+ startImportResponse_httpStatus,++ -- ** StopBotRecommendation+ stopBotRecommendation_botId,+ stopBotRecommendation_botVersion,+ stopBotRecommendation_localeId,+ stopBotRecommendation_botRecommendationId,+ stopBotRecommendationResponse_botId,+ stopBotRecommendationResponse_botRecommendationId,+ stopBotRecommendationResponse_botRecommendationStatus,+ stopBotRecommendationResponse_botVersion,+ stopBotRecommendationResponse_localeId,+ stopBotRecommendationResponse_httpStatus,++ -- ** TagResource+ tagResource_resourceARN,+ tagResource_tags,+ tagResourceResponse_httpStatus,++ -- ** UntagResource+ untagResource_resourceARN,+ untagResource_tagKeys,+ untagResourceResponse_httpStatus,++ -- ** UpdateBot+ updateBot_description,+ updateBot_botId,+ updateBot_botName,+ updateBot_roleArn,+ updateBot_dataPrivacy,+ updateBot_idleSessionTTLInSeconds,+ updateBotResponse_botId,+ updateBotResponse_botName,+ updateBotResponse_botStatus,+ updateBotResponse_creationDateTime,+ updateBotResponse_dataPrivacy,+ updateBotResponse_description,+ updateBotResponse_idleSessionTTLInSeconds,+ updateBotResponse_lastUpdatedDateTime,+ updateBotResponse_roleArn,+ updateBotResponse_httpStatus,++ -- ** UpdateBotAlias+ updateBotAlias_botAliasLocaleSettings,+ updateBotAlias_botVersion,+ updateBotAlias_conversationLogSettings,+ updateBotAlias_description,+ updateBotAlias_sentimentAnalysisSettings,+ updateBotAlias_botAliasId,+ updateBotAlias_botAliasName,+ updateBotAlias_botId,+ updateBotAliasResponse_botAliasId,+ updateBotAliasResponse_botAliasLocaleSettings,+ updateBotAliasResponse_botAliasName,+ updateBotAliasResponse_botAliasStatus,+ updateBotAliasResponse_botId,+ updateBotAliasResponse_botVersion,+ updateBotAliasResponse_conversationLogSettings,+ updateBotAliasResponse_creationDateTime,+ updateBotAliasResponse_description,+ updateBotAliasResponse_lastUpdatedDateTime,+ updateBotAliasResponse_sentimentAnalysisSettings,+ updateBotAliasResponse_httpStatus,++ -- ** UpdateBotLocale+ updateBotLocale_description,+ updateBotLocale_voiceSettings,+ updateBotLocale_botId,+ updateBotLocale_botVersion,+ updateBotLocale_localeId,+ updateBotLocale_nluIntentConfidenceThreshold,+ updateBotLocaleResponse_botId,+ updateBotLocaleResponse_botLocaleStatus,+ updateBotLocaleResponse_botVersion,+ updateBotLocaleResponse_creationDateTime,+ updateBotLocaleResponse_description,+ updateBotLocaleResponse_failureReasons,+ updateBotLocaleResponse_lastUpdatedDateTime,+ updateBotLocaleResponse_localeId,+ updateBotLocaleResponse_localeName,+ updateBotLocaleResponse_nluIntentConfidenceThreshold,+ updateBotLocaleResponse_recommendedActions,+ updateBotLocaleResponse_voiceSettings,+ updateBotLocaleResponse_httpStatus,++ -- ** UpdateBotRecommendation+ updateBotRecommendation_botId,+ updateBotRecommendation_botVersion,+ updateBotRecommendation_localeId,+ updateBotRecommendation_botRecommendationId,+ updateBotRecommendation_encryptionSetting,+ updateBotRecommendationResponse_botId,+ updateBotRecommendationResponse_botRecommendationId,+ updateBotRecommendationResponse_botRecommendationStatus,+ updateBotRecommendationResponse_botVersion,+ updateBotRecommendationResponse_creationDateTime,+ updateBotRecommendationResponse_encryptionSetting,+ updateBotRecommendationResponse_lastUpdatedDateTime,+ updateBotRecommendationResponse_localeId,+ updateBotRecommendationResponse_transcriptSourceSetting,+ updateBotRecommendationResponse_httpStatus,++ -- ** UpdateExport+ updateExport_filePassword,+ updateExport_exportId,+ updateExportResponse_creationDateTime,+ updateExportResponse_exportId,+ updateExportResponse_exportStatus,+ updateExportResponse_fileFormat,+ updateExportResponse_lastUpdatedDateTime,+ updateExportResponse_resourceSpecification,+ updateExportResponse_httpStatus,++ -- ** UpdateIntent+ updateIntent_description,+ updateIntent_dialogCodeHook,+ updateIntent_fulfillmentCodeHook,+ updateIntent_initialResponseSetting,+ updateIntent_inputContexts,+ updateIntent_intentClosingSetting,+ updateIntent_intentConfirmationSetting,+ updateIntent_kendraConfiguration,+ updateIntent_outputContexts,+ updateIntent_parentIntentSignature,+ updateIntent_sampleUtterances,+ updateIntent_slotPriorities,+ updateIntent_intentId,+ updateIntent_intentName,+ updateIntent_botId,+ updateIntent_botVersion,+ updateIntent_localeId,+ updateIntentResponse_botId,+ updateIntentResponse_botVersion,+ updateIntentResponse_creationDateTime,+ updateIntentResponse_description,+ updateIntentResponse_dialogCodeHook,+ updateIntentResponse_fulfillmentCodeHook,+ updateIntentResponse_initialResponseSetting,+ updateIntentResponse_inputContexts,+ updateIntentResponse_intentClosingSetting,+ updateIntentResponse_intentConfirmationSetting,+ updateIntentResponse_intentId,+ updateIntentResponse_intentName,+ updateIntentResponse_kendraConfiguration,+ updateIntentResponse_lastUpdatedDateTime,+ updateIntentResponse_localeId,+ updateIntentResponse_outputContexts,+ updateIntentResponse_parentIntentSignature,+ updateIntentResponse_sampleUtterances,+ updateIntentResponse_slotPriorities,+ updateIntentResponse_httpStatus,++ -- ** UpdateResourcePolicy+ updateResourcePolicy_expectedRevisionId,+ updateResourcePolicy_resourceArn,+ updateResourcePolicy_policy,+ updateResourcePolicyResponse_resourceArn,+ updateResourcePolicyResponse_revisionId,+ updateResourcePolicyResponse_httpStatus,++ -- ** UpdateSlot+ updateSlot_description,+ updateSlot_multipleValuesSetting,+ updateSlot_obfuscationSetting,+ updateSlot_slotTypeId,+ updateSlot_subSlotSetting,+ updateSlot_slotId,+ updateSlot_slotName,+ updateSlot_valueElicitationSetting,+ updateSlot_botId,+ updateSlot_botVersion,+ updateSlot_localeId,+ updateSlot_intentId,+ updateSlotResponse_botId,+ updateSlotResponse_botVersion,+ updateSlotResponse_creationDateTime,+ updateSlotResponse_description,+ updateSlotResponse_intentId,+ updateSlotResponse_lastUpdatedDateTime,+ updateSlotResponse_localeId,+ updateSlotResponse_multipleValuesSetting,+ updateSlotResponse_obfuscationSetting,+ updateSlotResponse_slotId,+ updateSlotResponse_slotName,+ updateSlotResponse_slotTypeId,+ updateSlotResponse_subSlotSetting,+ updateSlotResponse_valueElicitationSetting,+ updateSlotResponse_httpStatus,++ -- ** UpdateSlotType+ updateSlotType_compositeSlotTypeSetting,+ updateSlotType_description,+ updateSlotType_externalSourceSetting,+ updateSlotType_parentSlotTypeSignature,+ updateSlotType_slotTypeValues,+ updateSlotType_valueSelectionSetting,+ updateSlotType_slotTypeId,+ updateSlotType_slotTypeName,+ updateSlotType_botId,+ updateSlotType_botVersion,+ updateSlotType_localeId,+ updateSlotTypeResponse_botId,+ updateSlotTypeResponse_botVersion,+ updateSlotTypeResponse_compositeSlotTypeSetting,+ updateSlotTypeResponse_creationDateTime,+ updateSlotTypeResponse_description,+ updateSlotTypeResponse_externalSourceSetting,+ updateSlotTypeResponse_lastUpdatedDateTime,+ updateSlotTypeResponse_localeId,+ updateSlotTypeResponse_parentSlotTypeSignature,+ updateSlotTypeResponse_slotTypeId,+ updateSlotTypeResponse_slotTypeName,+ updateSlotTypeResponse_slotTypeValues,+ updateSlotTypeResponse_valueSelectionSetting,+ updateSlotTypeResponse_httpStatus,++ -- * Types++ -- ** AdvancedRecognitionSetting+ advancedRecognitionSetting_audioRecognitionStrategy,++ -- ** AggregatedUtterancesFilter+ aggregatedUtterancesFilter_name,+ aggregatedUtterancesFilter_values,+ aggregatedUtterancesFilter_operator,++ -- ** AggregatedUtterancesSortBy+ aggregatedUtterancesSortBy_attribute,+ aggregatedUtterancesSortBy_order,++ -- ** AggregatedUtterancesSummary+ aggregatedUtterancesSummary_containsDataFromDeletedResources,+ aggregatedUtterancesSummary_hitCount,+ aggregatedUtterancesSummary_missedCount,+ aggregatedUtterancesSummary_utterance,+ aggregatedUtterancesSummary_utteranceFirstRecordedInAggregationDuration,+ aggregatedUtterancesSummary_utteranceLastRecordedInAggregationDuration,++ -- ** AllowedInputTypes+ allowedInputTypes_allowAudioInput,+ allowedInputTypes_allowDTMFInput,++ -- ** AssociatedTranscript+ associatedTranscript_transcript,++ -- ** AssociatedTranscriptFilter+ associatedTranscriptFilter_name,+ associatedTranscriptFilter_values,++ -- ** AudioAndDTMFInputSpecification+ audioAndDTMFInputSpecification_audioSpecification,+ audioAndDTMFInputSpecification_dtmfSpecification,+ audioAndDTMFInputSpecification_startTimeoutMs,++ -- ** AudioLogDestination+ audioLogDestination_s3Bucket,++ -- ** AudioLogSetting+ audioLogSetting_enabled,+ audioLogSetting_destination,++ -- ** AudioSpecification+ audioSpecification_maxLengthMs,+ audioSpecification_endTimeoutMs,++ -- ** BotAliasHistoryEvent+ botAliasHistoryEvent_botVersion,+ botAliasHistoryEvent_endDate,+ botAliasHistoryEvent_startDate,++ -- ** BotAliasLocaleSettings+ botAliasLocaleSettings_codeHookSpecification,+ botAliasLocaleSettings_enabled,++ -- ** BotAliasSummary+ botAliasSummary_botAliasId,+ botAliasSummary_botAliasName,+ botAliasSummary_botAliasStatus,+ botAliasSummary_botVersion,+ botAliasSummary_creationDateTime,+ botAliasSummary_description,+ botAliasSummary_lastUpdatedDateTime,++ -- ** BotExportSpecification+ botExportSpecification_botId,+ botExportSpecification_botVersion,++ -- ** BotFilter+ botFilter_name,+ botFilter_values,+ botFilter_operator,++ -- ** BotImportSpecification+ botImportSpecification_botTags,+ botImportSpecification_idleSessionTTLInSeconds,+ botImportSpecification_testBotAliasTags,+ botImportSpecification_botName,+ botImportSpecification_roleArn,+ botImportSpecification_dataPrivacy,++ -- ** BotLocaleExportSpecification+ botLocaleExportSpecification_botId,+ botLocaleExportSpecification_botVersion,+ botLocaleExportSpecification_localeId,++ -- ** BotLocaleFilter+ botLocaleFilter_name,+ botLocaleFilter_values,+ botLocaleFilter_operator,++ -- ** BotLocaleHistoryEvent+ botLocaleHistoryEvent_event,+ botLocaleHistoryEvent_eventDate,++ -- ** BotLocaleImportSpecification+ botLocaleImportSpecification_nluIntentConfidenceThreshold,+ botLocaleImportSpecification_voiceSettings,+ botLocaleImportSpecification_botId,+ botLocaleImportSpecification_botVersion,+ botLocaleImportSpecification_localeId,++ -- ** BotLocaleSortBy+ botLocaleSortBy_attribute,+ botLocaleSortBy_order,++ -- ** BotLocaleSummary+ botLocaleSummary_botLocaleStatus,+ botLocaleSummary_description,+ botLocaleSummary_lastBuildSubmittedDateTime,+ botLocaleSummary_lastUpdatedDateTime,+ botLocaleSummary_localeId,+ botLocaleSummary_localeName,++ -- ** BotRecommendationResultStatistics+ botRecommendationResultStatistics_intents,+ botRecommendationResultStatistics_slotTypes,++ -- ** BotRecommendationResults+ botRecommendationResults_associatedTranscriptsUrl,+ botRecommendationResults_botLocaleExportUrl,+ botRecommendationResults_statistics,++ -- ** BotRecommendationSummary+ botRecommendationSummary_creationDateTime,+ botRecommendationSummary_lastUpdatedDateTime,+ botRecommendationSummary_botRecommendationStatus,+ botRecommendationSummary_botRecommendationId,++ -- ** BotSortBy+ botSortBy_attribute,+ botSortBy_order,++ -- ** BotSummary+ botSummary_botId,+ botSummary_botName,+ botSummary_botStatus,+ botSummary_description,+ botSummary_lastUpdatedDateTime,+ botSummary_latestBotVersion,++ -- ** BotVersionLocaleDetails+ botVersionLocaleDetails_sourceBotVersion,++ -- ** BotVersionSortBy+ botVersionSortBy_attribute,+ botVersionSortBy_order,++ -- ** BotVersionSummary+ botVersionSummary_botName,+ botVersionSummary_botStatus,+ botVersionSummary_botVersion,+ botVersionSummary_creationDateTime,+ botVersionSummary_description,++ -- ** BuiltInIntentSortBy+ builtInIntentSortBy_attribute,+ builtInIntentSortBy_order,++ -- ** BuiltInIntentSummary+ builtInIntentSummary_description,+ builtInIntentSummary_intentSignature,++ -- ** BuiltInSlotTypeSortBy+ builtInSlotTypeSortBy_attribute,+ builtInSlotTypeSortBy_order,++ -- ** BuiltInSlotTypeSummary+ builtInSlotTypeSummary_description,+ builtInSlotTypeSummary_slotTypeSignature,++ -- ** Button+ button_text,+ button_value,++ -- ** CloudWatchLogGroupLogDestination+ cloudWatchLogGroupLogDestination_cloudWatchLogGroupArn,+ cloudWatchLogGroupLogDestination_logPrefix,++ -- ** CodeHookSpecification+ codeHookSpecification_lambdaCodeHook,++ -- ** CompositeSlotTypeSetting+ compositeSlotTypeSetting_subSlots,++ -- ** Condition+ condition_expressionString,++ -- ** ConditionalBranch+ conditionalBranch_response,+ conditionalBranch_name,+ conditionalBranch_condition,+ conditionalBranch_nextStep,++ -- ** ConditionalSpecification+ conditionalSpecification_active,+ conditionalSpecification_conditionalBranches,+ conditionalSpecification_defaultBranch,++ -- ** ConversationLogSettings+ conversationLogSettings_audioLogSettings,+ conversationLogSettings_textLogSettings,++ -- ** CustomPayload+ customPayload_value,++ -- ** CustomVocabularyEntryId+ customVocabularyEntryId_itemId,++ -- ** CustomVocabularyExportSpecification+ customVocabularyExportSpecification_botId,+ customVocabularyExportSpecification_botVersion,+ customVocabularyExportSpecification_localeId,++ -- ** CustomVocabularyImportSpecification+ customVocabularyImportSpecification_botId,+ customVocabularyImportSpecification_botVersion,+ customVocabularyImportSpecification_localeId,++ -- ** CustomVocabularyItem+ customVocabularyItem_displayAs,+ customVocabularyItem_weight,+ customVocabularyItem_itemId,+ customVocabularyItem_phrase,++ -- ** DTMFSpecification+ dTMFSpecification_maxLength,+ dTMFSpecification_endTimeoutMs,+ dTMFSpecification_deletionCharacter,+ dTMFSpecification_endCharacter,++ -- ** DataPrivacy+ dataPrivacy_childDirected,++ -- ** DateRangeFilter+ dateRangeFilter_startDateTime,+ dateRangeFilter_endDateTime,++ -- ** DefaultConditionalBranch+ defaultConditionalBranch_nextStep,+ defaultConditionalBranch_response,++ -- ** DialogAction+ dialogAction_slotToElicit,+ dialogAction_suppressNextMessage,+ dialogAction_type,++ -- ** DialogCodeHookInvocationSetting+ dialogCodeHookInvocationSetting_invocationLabel,+ dialogCodeHookInvocationSetting_enableCodeHookInvocation,+ dialogCodeHookInvocationSetting_active,+ dialogCodeHookInvocationSetting_postCodeHookSpecification,++ -- ** DialogCodeHookSettings+ dialogCodeHookSettings_enabled,++ -- ** DialogState+ dialogState_dialogAction,+ dialogState_intent,+ dialogState_sessionAttributes,++ -- ** ElicitationCodeHookInvocationSetting+ elicitationCodeHookInvocationSetting_invocationLabel,+ elicitationCodeHookInvocationSetting_enableCodeHookInvocation,++ -- ** EncryptionSetting+ encryptionSetting_associatedTranscriptsPassword,+ encryptionSetting_botLocaleExportPassword,+ encryptionSetting_kmsKeyArn,++ -- ** ExportFilter+ exportFilter_name,+ exportFilter_values,+ exportFilter_operator,++ -- ** ExportResourceSpecification+ exportResourceSpecification_botExportSpecification,+ exportResourceSpecification_botLocaleExportSpecification,+ exportResourceSpecification_customVocabularyExportSpecification,++ -- ** ExportSortBy+ exportSortBy_attribute,+ exportSortBy_order,++ -- ** ExportSummary+ exportSummary_creationDateTime,+ exportSummary_exportId,+ exportSummary_exportStatus,+ exportSummary_fileFormat,+ exportSummary_lastUpdatedDateTime,+ exportSummary_resourceSpecification,++ -- ** ExternalSourceSetting+ externalSourceSetting_grammarSlotTypeSetting,++ -- ** FailedCustomVocabularyItem+ failedCustomVocabularyItem_errorCode,+ failedCustomVocabularyItem_errorMessage,+ failedCustomVocabularyItem_itemId,++ -- ** FulfillmentCodeHookSettings+ fulfillmentCodeHookSettings_active,+ fulfillmentCodeHookSettings_fulfillmentUpdatesSpecification,+ fulfillmentCodeHookSettings_postFulfillmentStatusSpecification,+ fulfillmentCodeHookSettings_enabled,++ -- ** FulfillmentStartResponseSpecification+ fulfillmentStartResponseSpecification_allowInterrupt,+ fulfillmentStartResponseSpecification_delayInSeconds,+ fulfillmentStartResponseSpecification_messageGroups,++ -- ** FulfillmentUpdateResponseSpecification+ fulfillmentUpdateResponseSpecification_allowInterrupt,+ fulfillmentUpdateResponseSpecification_frequencyInSeconds,+ fulfillmentUpdateResponseSpecification_messageGroups,++ -- ** FulfillmentUpdatesSpecification+ fulfillmentUpdatesSpecification_startResponse,+ fulfillmentUpdatesSpecification_timeoutInSeconds,+ fulfillmentUpdatesSpecification_updateResponse,+ fulfillmentUpdatesSpecification_active,++ -- ** GrammarSlotTypeSetting+ grammarSlotTypeSetting_source,++ -- ** GrammarSlotTypeSource+ grammarSlotTypeSource_kmsKeyArn,+ grammarSlotTypeSource_s3BucketName,+ grammarSlotTypeSource_s3ObjectKey,++ -- ** ImageResponseCard+ imageResponseCard_buttons,+ imageResponseCard_imageUrl,+ imageResponseCard_subtitle,+ imageResponseCard_title,++ -- ** ImportFilter+ importFilter_name,+ importFilter_values,+ importFilter_operator,++ -- ** ImportResourceSpecification+ importResourceSpecification_botImportSpecification,+ importResourceSpecification_botLocaleImportSpecification,+ importResourceSpecification_customVocabularyImportSpecification,++ -- ** ImportSortBy+ importSortBy_attribute,+ importSortBy_order,++ -- ** ImportSummary+ importSummary_creationDateTime,+ importSummary_importId,+ importSummary_importStatus,+ importSummary_importedResourceId,+ importSummary_importedResourceName,+ importSummary_importedResourceType,+ importSummary_lastUpdatedDateTime,+ importSummary_mergeStrategy,++ -- ** InitialResponseSetting+ initialResponseSetting_codeHook,+ initialResponseSetting_conditional,+ initialResponseSetting_initialResponse,+ initialResponseSetting_nextStep,++ -- ** InputContext+ inputContext_name,++ -- ** IntentClosingSetting+ intentClosingSetting_active,+ intentClosingSetting_closingResponse,+ intentClosingSetting_conditional,+ intentClosingSetting_nextStep,++ -- ** IntentConfirmationSetting+ intentConfirmationSetting_active,+ intentConfirmationSetting_codeHook,+ intentConfirmationSetting_confirmationConditional,+ intentConfirmationSetting_confirmationNextStep,+ intentConfirmationSetting_confirmationResponse,+ intentConfirmationSetting_declinationConditional,+ intentConfirmationSetting_declinationNextStep,+ intentConfirmationSetting_declinationResponse,+ intentConfirmationSetting_elicitationCodeHook,+ intentConfirmationSetting_failureConditional,+ intentConfirmationSetting_failureNextStep,+ intentConfirmationSetting_failureResponse,+ intentConfirmationSetting_promptSpecification,++ -- ** IntentFilter+ intentFilter_name,+ intentFilter_values,+ intentFilter_operator,++ -- ** IntentOverride+ intentOverride_name,+ intentOverride_slots,++ -- ** IntentSortBy+ intentSortBy_attribute,+ intentSortBy_order,++ -- ** IntentStatistics+ intentStatistics_discoveredIntentCount,++ -- ** IntentSummary+ intentSummary_description,+ intentSummary_inputContexts,+ intentSummary_intentId,+ intentSummary_intentName,+ intentSummary_lastUpdatedDateTime,+ intentSummary_outputContexts,+ intentSummary_parentIntentSignature,++ -- ** KendraConfiguration+ kendraConfiguration_queryFilterString,+ kendraConfiguration_queryFilterStringEnabled,+ kendraConfiguration_kendraIndex,++ -- ** LambdaCodeHook+ lambdaCodeHook_lambdaARN,+ lambdaCodeHook_codeHookInterfaceVersion,++ -- ** LexTranscriptFilter+ lexTranscriptFilter_dateRangeFilter,++ -- ** Message+ message_customPayload,+ message_imageResponseCard,+ message_plainTextMessage,+ message_ssmlMessage,++ -- ** MessageGroup+ messageGroup_variations,+ messageGroup_message,++ -- ** MultipleValuesSetting+ multipleValuesSetting_allowMultipleValues,++ -- ** NewCustomVocabularyItem+ newCustomVocabularyItem_displayAs,+ newCustomVocabularyItem_weight,+ newCustomVocabularyItem_phrase,++ -- ** ObfuscationSetting+ obfuscationSetting_obfuscationSettingType,++ -- ** OutputContext+ outputContext_name,+ outputContext_timeToLiveInSeconds,+ outputContext_turnsToLive,++ -- ** PathFormat+ pathFormat_objectPrefixes,++ -- ** PlainTextMessage+ plainTextMessage_value,++ -- ** PostDialogCodeHookInvocationSpecification+ postDialogCodeHookInvocationSpecification_failureConditional,+ postDialogCodeHookInvocationSpecification_failureNextStep,+ postDialogCodeHookInvocationSpecification_failureResponse,+ postDialogCodeHookInvocationSpecification_successConditional,+ postDialogCodeHookInvocationSpecification_successNextStep,+ postDialogCodeHookInvocationSpecification_successResponse,+ postDialogCodeHookInvocationSpecification_timeoutConditional,+ postDialogCodeHookInvocationSpecification_timeoutNextStep,+ postDialogCodeHookInvocationSpecification_timeoutResponse,++ -- ** PostFulfillmentStatusSpecification+ postFulfillmentStatusSpecification_failureConditional,+ postFulfillmentStatusSpecification_failureNextStep,+ postFulfillmentStatusSpecification_failureResponse,+ postFulfillmentStatusSpecification_successConditional,+ postFulfillmentStatusSpecification_successNextStep,+ postFulfillmentStatusSpecification_successResponse,+ postFulfillmentStatusSpecification_timeoutConditional,+ postFulfillmentStatusSpecification_timeoutNextStep,+ postFulfillmentStatusSpecification_timeoutResponse,++ -- ** Principal+ principal_arn,+ principal_service,++ -- ** PromptAttemptSpecification+ promptAttemptSpecification_allowInterrupt,+ promptAttemptSpecification_audioAndDTMFInputSpecification,+ promptAttemptSpecification_textInputSpecification,+ promptAttemptSpecification_allowedInputTypes,++ -- ** PromptSpecification+ promptSpecification_allowInterrupt,+ promptSpecification_messageSelectionStrategy,+ promptSpecification_promptAttemptsSpecification,+ promptSpecification_messageGroups,+ promptSpecification_maxRetries,++ -- ** RecommendedIntentSummary+ recommendedIntentSummary_intentId,+ recommendedIntentSummary_intentName,+ recommendedIntentSummary_sampleUtterancesCount,++ -- ** RelativeAggregationDuration+ relativeAggregationDuration_timeDimension,+ relativeAggregationDuration_timeValue,++ -- ** ResponseSpecification+ responseSpecification_allowInterrupt,+ responseSpecification_messageGroups,++ -- ** S3BucketLogDestination+ s3BucketLogDestination_kmsKeyArn,+ s3BucketLogDestination_s3BucketArn,+ s3BucketLogDestination_logPrefix,++ -- ** S3BucketTranscriptSource+ s3BucketTranscriptSource_kmsKeyArn,+ s3BucketTranscriptSource_pathFormat,+ s3BucketTranscriptSource_transcriptFilter,+ s3BucketTranscriptSource_s3BucketName,+ s3BucketTranscriptSource_transcriptFormat,++ -- ** SSMLMessage+ sSMLMessage_value,++ -- ** SampleUtterance+ sampleUtterance_utterance,++ -- ** SampleValue+ sampleValue_value,++ -- ** SentimentAnalysisSettings+ sentimentAnalysisSettings_detectSentiment,++ -- ** SlotCaptureSetting+ slotCaptureSetting_captureConditional,+ slotCaptureSetting_captureNextStep,+ slotCaptureSetting_captureResponse,+ slotCaptureSetting_codeHook,+ slotCaptureSetting_elicitationCodeHook,+ slotCaptureSetting_failureConditional,+ slotCaptureSetting_failureNextStep,+ slotCaptureSetting_failureResponse,++ -- ** SlotDefaultValue+ slotDefaultValue_defaultValue,++ -- ** SlotDefaultValueSpecification+ slotDefaultValueSpecification_defaultValueList,++ -- ** SlotFilter+ slotFilter_name,+ slotFilter_values,+ slotFilter_operator,++ -- ** SlotPriority+ slotPriority_priority,+ slotPriority_slotId,++ -- ** SlotSortBy+ slotSortBy_attribute,+ slotSortBy_order,++ -- ** SlotSummary+ slotSummary_description,+ slotSummary_lastUpdatedDateTime,+ slotSummary_slotConstraint,+ slotSummary_slotId,+ slotSummary_slotName,+ slotSummary_slotTypeId,+ slotSummary_valueElicitationPromptSpecification,++ -- ** SlotTypeFilter+ slotTypeFilter_name,+ slotTypeFilter_values,+ slotTypeFilter_operator,++ -- ** SlotTypeSortBy+ slotTypeSortBy_attribute,+ slotTypeSortBy_order,++ -- ** SlotTypeStatistics+ slotTypeStatistics_discoveredSlotTypeCount,++ -- ** SlotTypeSummary+ slotTypeSummary_description,+ slotTypeSummary_lastUpdatedDateTime,+ slotTypeSummary_parentSlotTypeSignature,+ slotTypeSummary_slotTypeCategory,+ slotTypeSummary_slotTypeId,+ slotTypeSummary_slotTypeName,++ -- ** SlotTypeValue+ slotTypeValue_sampleValue,+ slotTypeValue_synonyms,++ -- ** SlotValue+ slotValue_interpretedValue,++ -- ** SlotValueElicitationSetting+ slotValueElicitationSetting_defaultValueSpecification,+ slotValueElicitationSetting_promptSpecification,+ slotValueElicitationSetting_sampleUtterances,+ slotValueElicitationSetting_slotCaptureSetting,+ slotValueElicitationSetting_waitAndContinueSpecification,+ slotValueElicitationSetting_slotConstraint,++ -- ** SlotValueOverride+ slotValueOverride_shape,+ slotValueOverride_value,+ slotValueOverride_values,++ -- ** SlotValueRegexFilter+ slotValueRegexFilter_pattern,++ -- ** SlotValueSelectionSetting+ slotValueSelectionSetting_advancedRecognitionSetting,+ slotValueSelectionSetting_regexFilter,+ slotValueSelectionSetting_resolutionStrategy,++ -- ** Specifications+ specifications_slotTypeId,+ specifications_valueElicitationSetting,++ -- ** StillWaitingResponseSpecification+ stillWaitingResponseSpecification_allowInterrupt,+ stillWaitingResponseSpecification_messageGroups,+ stillWaitingResponseSpecification_frequencyInSeconds,+ stillWaitingResponseSpecification_timeoutInSeconds,++ -- ** SubSlotSetting+ subSlotSetting_expression,+ subSlotSetting_slotSpecifications,++ -- ** SubSlotTypeComposition+ subSlotTypeComposition_name,+ subSlotTypeComposition_slotTypeId,++ -- ** SubSlotValueElicitationSetting+ subSlotValueElicitationSetting_defaultValueSpecification,+ subSlotValueElicitationSetting_sampleUtterances,+ subSlotValueElicitationSetting_waitAndContinueSpecification,+ subSlotValueElicitationSetting_promptSpecification,++ -- ** TextInputSpecification+ textInputSpecification_startTimeoutMs,++ -- ** TextLogDestination+ textLogDestination_cloudWatch,++ -- ** TextLogSetting+ textLogSetting_enabled,+ textLogSetting_destination,++ -- ** TranscriptFilter+ transcriptFilter_lexTranscriptFilter,++ -- ** TranscriptSourceSetting+ transcriptSourceSetting_s3BucketTranscriptSource,++ -- ** UtteranceAggregationDuration+ utteranceAggregationDuration_relativeAggregationDuration,++ -- ** VoiceSettings+ voiceSettings_engine,+ voiceSettings_voiceId,++ -- ** WaitAndContinueSpecification+ waitAndContinueSpecification_active,+ waitAndContinueSpecification_stillWaitingResponse,+ waitAndContinueSpecification_waitingResponse,+ waitAndContinueSpecification_continueResponse,+ )+where++import Amazonka.LexV2Models.BatchCreateCustomVocabularyItem+import Amazonka.LexV2Models.BatchDeleteCustomVocabularyItem+import Amazonka.LexV2Models.BatchUpdateCustomVocabularyItem+import Amazonka.LexV2Models.BuildBotLocale+import Amazonka.LexV2Models.CreateBot+import Amazonka.LexV2Models.CreateBotAlias+import Amazonka.LexV2Models.CreateBotLocale+import Amazonka.LexV2Models.CreateBotVersion+import Amazonka.LexV2Models.CreateExport+import Amazonka.LexV2Models.CreateIntent+import Amazonka.LexV2Models.CreateResourcePolicy+import Amazonka.LexV2Models.CreateResourcePolicyStatement+import Amazonka.LexV2Models.CreateSlot+import Amazonka.LexV2Models.CreateSlotType+import Amazonka.LexV2Models.CreateUploadUrl+import Amazonka.LexV2Models.DeleteBot+import Amazonka.LexV2Models.DeleteBotAlias+import Amazonka.LexV2Models.DeleteBotLocale+import Amazonka.LexV2Models.DeleteBotVersion+import Amazonka.LexV2Models.DeleteCustomVocabulary+import Amazonka.LexV2Models.DeleteExport+import Amazonka.LexV2Models.DeleteImport+import Amazonka.LexV2Models.DeleteIntent+import Amazonka.LexV2Models.DeleteResourcePolicy+import Amazonka.LexV2Models.DeleteResourcePolicyStatement+import Amazonka.LexV2Models.DeleteSlot+import Amazonka.LexV2Models.DeleteSlotType+import Amazonka.LexV2Models.DeleteUtterances+import Amazonka.LexV2Models.DescribeBot+import Amazonka.LexV2Models.DescribeBotAlias+import Amazonka.LexV2Models.DescribeBotLocale+import Amazonka.LexV2Models.DescribeBotRecommendation+import Amazonka.LexV2Models.DescribeBotVersion+import Amazonka.LexV2Models.DescribeCustomVocabularyMetadata+import Amazonka.LexV2Models.DescribeExport+import Amazonka.LexV2Models.DescribeImport+import Amazonka.LexV2Models.DescribeIntent+import Amazonka.LexV2Models.DescribeResourcePolicy+import Amazonka.LexV2Models.DescribeSlot+import Amazonka.LexV2Models.DescribeSlotType+import Amazonka.LexV2Models.ListAggregatedUtterances+import Amazonka.LexV2Models.ListBotAliases+import Amazonka.LexV2Models.ListBotLocales+import Amazonka.LexV2Models.ListBotRecommendations+import Amazonka.LexV2Models.ListBotVersions+import Amazonka.LexV2Models.ListBots+import Amazonka.LexV2Models.ListBuiltInIntents+import Amazonka.LexV2Models.ListBuiltInSlotTypes+import Amazonka.LexV2Models.ListCustomVocabularyItems+import Amazonka.LexV2Models.ListExports+import Amazonka.LexV2Models.ListImports+import Amazonka.LexV2Models.ListIntents+import Amazonka.LexV2Models.ListRecommendedIntents+import Amazonka.LexV2Models.ListSlotTypes+import Amazonka.LexV2Models.ListSlots+import Amazonka.LexV2Models.ListTagsForResource+import Amazonka.LexV2Models.SearchAssociatedTranscripts+import Amazonka.LexV2Models.StartBotRecommendation+import Amazonka.LexV2Models.StartImport+import Amazonka.LexV2Models.StopBotRecommendation+import Amazonka.LexV2Models.TagResource+import Amazonka.LexV2Models.Types.AdvancedRecognitionSetting+import Amazonka.LexV2Models.Types.AggregatedUtterancesFilter+import Amazonka.LexV2Models.Types.AggregatedUtterancesSortBy+import Amazonka.LexV2Models.Types.AggregatedUtterancesSummary+import Amazonka.LexV2Models.Types.AllowedInputTypes+import Amazonka.LexV2Models.Types.AssociatedTranscript+import Amazonka.LexV2Models.Types.AssociatedTranscriptFilter+import Amazonka.LexV2Models.Types.AudioAndDTMFInputSpecification+import Amazonka.LexV2Models.Types.AudioLogDestination+import Amazonka.LexV2Models.Types.AudioLogSetting+import Amazonka.LexV2Models.Types.AudioSpecification+import Amazonka.LexV2Models.Types.BotAliasHistoryEvent+import Amazonka.LexV2Models.Types.BotAliasLocaleSettings+import Amazonka.LexV2Models.Types.BotAliasSummary+import Amazonka.LexV2Models.Types.BotExportSpecification+import Amazonka.LexV2Models.Types.BotFilter+import Amazonka.LexV2Models.Types.BotImportSpecification+import Amazonka.LexV2Models.Types.BotLocaleExportSpecification+import Amazonka.LexV2Models.Types.BotLocaleFilter+import Amazonka.LexV2Models.Types.BotLocaleHistoryEvent+import Amazonka.LexV2Models.Types.BotLocaleImportSpecification+import Amazonka.LexV2Models.Types.BotLocaleSortBy+import Amazonka.LexV2Models.Types.BotLocaleSummary+import Amazonka.LexV2Models.Types.BotRecommendationResultStatistics+import Amazonka.LexV2Models.Types.BotRecommendationResults+import Amazonka.LexV2Models.Types.BotRecommendationSummary+import Amazonka.LexV2Models.Types.BotSortBy+import Amazonka.LexV2Models.Types.BotSummary+import Amazonka.LexV2Models.Types.BotVersionLocaleDetails+import Amazonka.LexV2Models.Types.BotVersionSortBy+import Amazonka.LexV2Models.Types.BotVersionSummary+import Amazonka.LexV2Models.Types.BuiltInIntentSortBy+import Amazonka.LexV2Models.Types.BuiltInIntentSummary+import Amazonka.LexV2Models.Types.BuiltInSlotTypeSortBy+import Amazonka.LexV2Models.Types.BuiltInSlotTypeSummary+import Amazonka.LexV2Models.Types.Button+import Amazonka.LexV2Models.Types.CloudWatchLogGroupLogDestination+import Amazonka.LexV2Models.Types.CodeHookSpecification+import Amazonka.LexV2Models.Types.CompositeSlotTypeSetting+import Amazonka.LexV2Models.Types.Condition+import Amazonka.LexV2Models.Types.ConditionalBranch+import Amazonka.LexV2Models.Types.ConditionalSpecification+import Amazonka.LexV2Models.Types.ConversationLogSettings+import Amazonka.LexV2Models.Types.CustomPayload+import Amazonka.LexV2Models.Types.CustomVocabularyEntryId+import Amazonka.LexV2Models.Types.CustomVocabularyExportSpecification+import Amazonka.LexV2Models.Types.CustomVocabularyImportSpecification+import Amazonka.LexV2Models.Types.CustomVocabularyItem+import Amazonka.LexV2Models.Types.DTMFSpecification+import Amazonka.LexV2Models.Types.DataPrivacy+import Amazonka.LexV2Models.Types.DateRangeFilter+import Amazonka.LexV2Models.Types.DefaultConditionalBranch+import Amazonka.LexV2Models.Types.DialogAction+import Amazonka.LexV2Models.Types.DialogCodeHookInvocationSetting+import Amazonka.LexV2Models.Types.DialogCodeHookSettings+import Amazonka.LexV2Models.Types.DialogState+import Amazonka.LexV2Models.Types.ElicitationCodeHookInvocationSetting+import Amazonka.LexV2Models.Types.EncryptionSetting+import Amazonka.LexV2Models.Types.ExportFilter+import Amazonka.LexV2Models.Types.ExportResourceSpecification+import Amazonka.LexV2Models.Types.ExportSortBy+import Amazonka.LexV2Models.Types.ExportSummary+import Amazonka.LexV2Models.Types.ExternalSourceSetting+import Amazonka.LexV2Models.Types.FailedCustomVocabularyItem+import Amazonka.LexV2Models.Types.FulfillmentCodeHookSettings+import Amazonka.LexV2Models.Types.FulfillmentStartResponseSpecification+import Amazonka.LexV2Models.Types.FulfillmentUpdateResponseSpecification+import Amazonka.LexV2Models.Types.FulfillmentUpdatesSpecification+import Amazonka.LexV2Models.Types.GrammarSlotTypeSetting+import Amazonka.LexV2Models.Types.GrammarSlotTypeSource+import Amazonka.LexV2Models.Types.ImageResponseCard+import Amazonka.LexV2Models.Types.ImportFilter+import Amazonka.LexV2Models.Types.ImportResourceSpecification+import Amazonka.LexV2Models.Types.ImportSortBy+import Amazonka.LexV2Models.Types.ImportSummary+import Amazonka.LexV2Models.Types.InitialResponseSetting+import Amazonka.LexV2Models.Types.InputContext+import Amazonka.LexV2Models.Types.IntentClosingSetting+import Amazonka.LexV2Models.Types.IntentConfirmationSetting+import Amazonka.LexV2Models.Types.IntentFilter+import Amazonka.LexV2Models.Types.IntentOverride+import Amazonka.LexV2Models.Types.IntentSortBy+import Amazonka.LexV2Models.Types.IntentStatistics+import Amazonka.LexV2Models.Types.IntentSummary+import Amazonka.LexV2Models.Types.KendraConfiguration+import Amazonka.LexV2Models.Types.LambdaCodeHook+import Amazonka.LexV2Models.Types.LexTranscriptFilter+import Amazonka.LexV2Models.Types.Message+import Amazonka.LexV2Models.Types.MessageGroup+import Amazonka.LexV2Models.Types.MultipleValuesSetting+import Amazonka.LexV2Models.Types.NewCustomVocabularyItem+import Amazonka.LexV2Models.Types.ObfuscationSetting+import Amazonka.LexV2Models.Types.OutputContext+import Amazonka.LexV2Models.Types.PathFormat+import Amazonka.LexV2Models.Types.PlainTextMessage+import Amazonka.LexV2Models.Types.PostDialogCodeHookInvocationSpecification+import Amazonka.LexV2Models.Types.PostFulfillmentStatusSpecification+import Amazonka.LexV2Models.Types.Principal+import Amazonka.LexV2Models.Types.PromptAttemptSpecification+import Amazonka.LexV2Models.Types.PromptSpecification+import Amazonka.LexV2Models.Types.RecommendedIntentSummary+import Amazonka.LexV2Models.Types.RelativeAggregationDuration+import Amazonka.LexV2Models.Types.ResponseSpecification+import Amazonka.LexV2Models.Types.S3BucketLogDestination+import Amazonka.LexV2Models.Types.S3BucketTranscriptSource+import Amazonka.LexV2Models.Types.SSMLMessage+import Amazonka.LexV2Models.Types.SampleUtterance+import Amazonka.LexV2Models.Types.SampleValue+import Amazonka.LexV2Models.Types.SentimentAnalysisSettings+import Amazonka.LexV2Models.Types.SlotCaptureSetting+import Amazonka.LexV2Models.Types.SlotDefaultValue+import Amazonka.LexV2Models.Types.SlotDefaultValueSpecification+import Amazonka.LexV2Models.Types.SlotFilter+import Amazonka.LexV2Models.Types.SlotPriority+import Amazonka.LexV2Models.Types.SlotSortBy+import Amazonka.LexV2Models.Types.SlotSummary+import Amazonka.LexV2Models.Types.SlotTypeFilter+import Amazonka.LexV2Models.Types.SlotTypeSortBy+import Amazonka.LexV2Models.Types.SlotTypeStatistics+import Amazonka.LexV2Models.Types.SlotTypeSummary+import Amazonka.LexV2Models.Types.SlotTypeValue+import Amazonka.LexV2Models.Types.SlotValue+import Amazonka.LexV2Models.Types.SlotValueElicitationSetting+import Amazonka.LexV2Models.Types.SlotValueOverride+import Amazonka.LexV2Models.Types.SlotValueRegexFilter+import Amazonka.LexV2Models.Types.SlotValueSelectionSetting+import Amazonka.LexV2Models.Types.Specifications+import Amazonka.LexV2Models.Types.StillWaitingResponseSpecification+import Amazonka.LexV2Models.Types.SubSlotSetting+import Amazonka.LexV2Models.Types.SubSlotTypeComposition+import Amazonka.LexV2Models.Types.SubSlotValueElicitationSetting+import Amazonka.LexV2Models.Types.TextInputSpecification+import Amazonka.LexV2Models.Types.TextLogDestination+import Amazonka.LexV2Models.Types.TextLogSetting+import Amazonka.LexV2Models.Types.TranscriptFilter+import Amazonka.LexV2Models.Types.TranscriptSourceSetting+import Amazonka.LexV2Models.Types.UtteranceAggregationDuration+import Amazonka.LexV2Models.Types.VoiceSettings+import Amazonka.LexV2Models.Types.WaitAndContinueSpecification+import Amazonka.LexV2Models.UntagResource+import Amazonka.LexV2Models.UpdateBot+import Amazonka.LexV2Models.UpdateBotAlias+import Amazonka.LexV2Models.UpdateBotLocale+import Amazonka.LexV2Models.UpdateBotRecommendation+import Amazonka.LexV2Models.UpdateExport+import Amazonka.LexV2Models.UpdateIntent+import Amazonka.LexV2Models.UpdateResourcePolicy+import Amazonka.LexV2Models.UpdateSlot+import Amazonka.LexV2Models.UpdateSlotType
+ gen/Amazonka/LexV2Models/ListAggregatedUtterances.hs view
@@ -0,0 +1,525 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.ListAggregatedUtterances+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Provides a list of utterances that users have sent to the bot.+--+-- Utterances are aggregated by the text of the utterance. For example, all+-- instances where customers used the phrase \"I want to order pizza\" are+-- aggregated into the same line in the response.+--+-- You can see both detected utterances and missed utterances. A detected+-- utterance is where the bot properly recognized the utterance and+-- activated the associated intent. A missed utterance was not recognized+-- by the bot and didn\'t activate an intent.+--+-- Utterances can be aggregated for a bot alias or for a bot version, but+-- not both at the same time.+--+-- Utterances statistics are not generated under the following conditions:+--+-- - The @childDirected@ field was set to true when the bot was created.+--+-- - You are using slot obfuscation with one or more slots.+--+-- - You opted out of participating in improving Amazon Lex.+module Amazonka.LexV2Models.ListAggregatedUtterances+ ( -- * Creating a Request+ ListAggregatedUtterances (..),+ newListAggregatedUtterances,++ -- * Request Lenses+ listAggregatedUtterances_botAliasId,+ listAggregatedUtterances_botVersion,+ listAggregatedUtterances_filters,+ listAggregatedUtterances_maxResults,+ listAggregatedUtterances_nextToken,+ listAggregatedUtterances_sortBy,+ listAggregatedUtterances_botId,+ listAggregatedUtterances_localeId,+ listAggregatedUtterances_aggregationDuration,++ -- * Destructuring the Response+ ListAggregatedUtterancesResponse (..),+ newListAggregatedUtterancesResponse,++ -- * Response Lenses+ listAggregatedUtterancesResponse_aggregatedUtterancesSummaries,+ listAggregatedUtterancesResponse_aggregationDuration,+ listAggregatedUtterancesResponse_aggregationLastRefreshedDateTime,+ listAggregatedUtterancesResponse_aggregationWindowEndTime,+ listAggregatedUtterancesResponse_aggregationWindowStartTime,+ listAggregatedUtterancesResponse_botAliasId,+ listAggregatedUtterancesResponse_botId,+ listAggregatedUtterancesResponse_botVersion,+ listAggregatedUtterancesResponse_localeId,+ listAggregatedUtterancesResponse_nextToken,+ listAggregatedUtterancesResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListAggregatedUtterances' smart constructor.+data ListAggregatedUtterances = ListAggregatedUtterances'+ { -- | The identifier of the bot alias associated with this request. If you+ -- specify the bot alias, you can\'t specify the bot version.+ botAliasId :: Prelude.Maybe Prelude.Text,+ -- | The identifier of the bot version associated with this request. If you+ -- specify the bot version, you can\'t specify the bot alias.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | Provides the specification of a filter used to limit the utterances in+ -- the response to only those that match the filter specification. You can+ -- only specify one filter and one string to filter on.+ filters :: Prelude.Maybe (Prelude.NonEmpty AggregatedUtterancesFilter),+ -- | The maximum number of utterances to return in each page of results. If+ -- there are fewer results than the maximum page size, only the actual+ -- number of results are returned. If you don\'t specify the @maxResults@+ -- parameter, 1,000 results are returned.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | If the response from the @ListAggregatedUtterances@ operation contains+ -- more results that specified in the @maxResults@ parameter, a token is+ -- returned in the response. Use that token in the @nextToken@ parameter to+ -- return the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | Specifies sorting parameters for the list of utterances. You can sort by+ -- the hit count, the missed count, or the number of distinct sessions the+ -- utterance appeared in.+ sortBy :: Prelude.Maybe AggregatedUtterancesSortBy,+ -- | The unique identifier of the bot associated with this request.+ botId :: Prelude.Text,+ -- | The identifier of the language and locale where the utterances were+ -- collected. For more information, see+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+ localeId :: Prelude.Text,+ -- | The time window for aggregating the utterance information. You can+ -- specify a time between one hour and two weeks.+ aggregationDuration :: UtteranceAggregationDuration+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListAggregatedUtterances' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botAliasId', 'listAggregatedUtterances_botAliasId' - The identifier of the bot alias associated with this request. If you+-- specify the bot alias, you can\'t specify the bot version.+--+-- 'botVersion', 'listAggregatedUtterances_botVersion' - The identifier of the bot version associated with this request. If you+-- specify the bot version, you can\'t specify the bot alias.+--+-- 'filters', 'listAggregatedUtterances_filters' - Provides the specification of a filter used to limit the utterances in+-- the response to only those that match the filter specification. You can+-- only specify one filter and one string to filter on.+--+-- 'maxResults', 'listAggregatedUtterances_maxResults' - The maximum number of utterances to return in each page of results. If+-- there are fewer results than the maximum page size, only the actual+-- number of results are returned. If you don\'t specify the @maxResults@+-- parameter, 1,000 results are returned.+--+-- 'nextToken', 'listAggregatedUtterances_nextToken' - If the response from the @ListAggregatedUtterances@ operation contains+-- more results that specified in the @maxResults@ parameter, a token is+-- returned in the response. Use that token in the @nextToken@ parameter to+-- return the next page of results.+--+-- 'sortBy', 'listAggregatedUtterances_sortBy' - Specifies sorting parameters for the list of utterances. You can sort by+-- the hit count, the missed count, or the number of distinct sessions the+-- utterance appeared in.+--+-- 'botId', 'listAggregatedUtterances_botId' - The unique identifier of the bot associated with this request.+--+-- 'localeId', 'listAggregatedUtterances_localeId' - The identifier of the language and locale where the utterances were+-- collected. For more information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+--+-- 'aggregationDuration', 'listAggregatedUtterances_aggregationDuration' - The time window for aggregating the utterance information. You can+-- specify a time between one hour and two weeks.+newListAggregatedUtterances ::+ -- | 'botId'+ Prelude.Text ->+ -- | 'localeId'+ Prelude.Text ->+ -- | 'aggregationDuration'+ UtteranceAggregationDuration ->+ ListAggregatedUtterances+newListAggregatedUtterances+ pBotId_+ pLocaleId_+ pAggregationDuration_ =+ ListAggregatedUtterances'+ { botAliasId =+ Prelude.Nothing,+ botVersion = Prelude.Nothing,+ filters = Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ sortBy = Prelude.Nothing,+ botId = pBotId_,+ localeId = pLocaleId_,+ aggregationDuration = pAggregationDuration_+ }++-- | The identifier of the bot alias associated with this request. If you+-- specify the bot alias, you can\'t specify the bot version.+listAggregatedUtterances_botAliasId :: Lens.Lens' ListAggregatedUtterances (Prelude.Maybe Prelude.Text)+listAggregatedUtterances_botAliasId = Lens.lens (\ListAggregatedUtterances' {botAliasId} -> botAliasId) (\s@ListAggregatedUtterances' {} a -> s {botAliasId = a} :: ListAggregatedUtterances)++-- | The identifier of the bot version associated with this request. If you+-- specify the bot version, you can\'t specify the bot alias.+listAggregatedUtterances_botVersion :: Lens.Lens' ListAggregatedUtterances (Prelude.Maybe Prelude.Text)+listAggregatedUtterances_botVersion = Lens.lens (\ListAggregatedUtterances' {botVersion} -> botVersion) (\s@ListAggregatedUtterances' {} a -> s {botVersion = a} :: ListAggregatedUtterances)++-- | Provides the specification of a filter used to limit the utterances in+-- the response to only those that match the filter specification. You can+-- only specify one filter and one string to filter on.+listAggregatedUtterances_filters :: Lens.Lens' ListAggregatedUtterances (Prelude.Maybe (Prelude.NonEmpty AggregatedUtterancesFilter))+listAggregatedUtterances_filters = Lens.lens (\ListAggregatedUtterances' {filters} -> filters) (\s@ListAggregatedUtterances' {} a -> s {filters = a} :: ListAggregatedUtterances) Prelude.. Lens.mapping Lens.coerced++-- | The maximum number of utterances to return in each page of results. If+-- there are fewer results than the maximum page size, only the actual+-- number of results are returned. If you don\'t specify the @maxResults@+-- parameter, 1,000 results are returned.+listAggregatedUtterances_maxResults :: Lens.Lens' ListAggregatedUtterances (Prelude.Maybe Prelude.Natural)+listAggregatedUtterances_maxResults = Lens.lens (\ListAggregatedUtterances' {maxResults} -> maxResults) (\s@ListAggregatedUtterances' {} a -> s {maxResults = a} :: ListAggregatedUtterances)++-- | If the response from the @ListAggregatedUtterances@ operation contains+-- more results that specified in the @maxResults@ parameter, a token is+-- returned in the response. Use that token in the @nextToken@ parameter to+-- return the next page of results.+listAggregatedUtterances_nextToken :: Lens.Lens' ListAggregatedUtterances (Prelude.Maybe Prelude.Text)+listAggregatedUtterances_nextToken = Lens.lens (\ListAggregatedUtterances' {nextToken} -> nextToken) (\s@ListAggregatedUtterances' {} a -> s {nextToken = a} :: ListAggregatedUtterances)++-- | Specifies sorting parameters for the list of utterances. You can sort by+-- the hit count, the missed count, or the number of distinct sessions the+-- utterance appeared in.+listAggregatedUtterances_sortBy :: Lens.Lens' ListAggregatedUtterances (Prelude.Maybe AggregatedUtterancesSortBy)+listAggregatedUtterances_sortBy = Lens.lens (\ListAggregatedUtterances' {sortBy} -> sortBy) (\s@ListAggregatedUtterances' {} a -> s {sortBy = a} :: ListAggregatedUtterances)++-- | The unique identifier of the bot associated with this request.+listAggregatedUtterances_botId :: Lens.Lens' ListAggregatedUtterances Prelude.Text+listAggregatedUtterances_botId = Lens.lens (\ListAggregatedUtterances' {botId} -> botId) (\s@ListAggregatedUtterances' {} a -> s {botId = a} :: ListAggregatedUtterances)++-- | The identifier of the language and locale where the utterances were+-- collected. For more information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+listAggregatedUtterances_localeId :: Lens.Lens' ListAggregatedUtterances Prelude.Text+listAggregatedUtterances_localeId = Lens.lens (\ListAggregatedUtterances' {localeId} -> localeId) (\s@ListAggregatedUtterances' {} a -> s {localeId = a} :: ListAggregatedUtterances)++-- | The time window for aggregating the utterance information. You can+-- specify a time between one hour and two weeks.+listAggregatedUtterances_aggregationDuration :: Lens.Lens' ListAggregatedUtterances UtteranceAggregationDuration+listAggregatedUtterances_aggregationDuration = Lens.lens (\ListAggregatedUtterances' {aggregationDuration} -> aggregationDuration) (\s@ListAggregatedUtterances' {} a -> s {aggregationDuration = a} :: ListAggregatedUtterances)++instance Core.AWSRequest ListAggregatedUtterances where+ type+ AWSResponse ListAggregatedUtterances =+ ListAggregatedUtterancesResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListAggregatedUtterancesResponse'+ Prelude.<$> ( x+ Data..?> "aggregatedUtterancesSummaries"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "aggregationDuration")+ Prelude.<*> (x Data..?> "aggregationLastRefreshedDateTime")+ Prelude.<*> (x Data..?> "aggregationWindowEndTime")+ Prelude.<*> (x Data..?> "aggregationWindowStartTime")+ Prelude.<*> (x Data..?> "botAliasId")+ Prelude.<*> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botVersion")+ Prelude.<*> (x Data..?> "localeId")+ Prelude.<*> (x Data..?> "nextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListAggregatedUtterances where+ hashWithSalt _salt ListAggregatedUtterances' {..} =+ _salt+ `Prelude.hashWithSalt` botAliasId+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` sortBy+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` localeId+ `Prelude.hashWithSalt` aggregationDuration++instance Prelude.NFData ListAggregatedUtterances where+ rnf ListAggregatedUtterances' {..} =+ Prelude.rnf botAliasId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf filters+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf sortBy+ `Prelude.seq` Prelude.rnf botId+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf aggregationDuration++instance Data.ToHeaders ListAggregatedUtterances where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListAggregatedUtterances where+ toJSON ListAggregatedUtterances' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("botAliasId" Data..=) Prelude.<$> botAliasId,+ ("botVersion" Data..=) Prelude.<$> botVersion,+ ("filters" Data..=) Prelude.<$> filters,+ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken,+ ("sortBy" Data..=) Prelude.<$> sortBy,+ Prelude.Just ("localeId" Data..= localeId),+ Prelude.Just+ ("aggregationDuration" Data..= aggregationDuration)+ ]+ )++instance Data.ToPath ListAggregatedUtterances where+ toPath ListAggregatedUtterances' {..} =+ Prelude.mconcat+ ["/bots/", Data.toBS botId, "/aggregatedutterances/"]++instance Data.ToQuery ListAggregatedUtterances where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListAggregatedUtterancesResponse' smart constructor.+data ListAggregatedUtterancesResponse = ListAggregatedUtterancesResponse'+ { -- | Summaries of the aggregated utterance data. Each response contains+ -- information about the number of times that the utterance was seen during+ -- the time period, whether it was detected or missed, and when it was seen+ -- during the time period.+ aggregatedUtterancesSummaries :: Prelude.Maybe [AggregatedUtterancesSummary],+ -- | The time period used to aggregate the utterance data.+ aggregationDuration :: Prelude.Maybe UtteranceAggregationDuration,+ -- | The last date and time that the aggregated data was collected. The time+ -- period depends on the length of the aggregation window.+ --+ -- - __Hours__ - for 1 hour time window, every half hour; otherwise every+ -- hour.+ --+ -- - __Days__ - every 6 hours+ --+ -- - __Weeks__ - for a one week time window, every 12 hours; otherwise,+ -- every day+ aggregationLastRefreshedDateTime :: Prelude.Maybe Data.POSIX,+ -- | The date and time that the aggregation window ends. Only data collected+ -- between the start time and the end time are returned in the results.+ aggregationWindowEndTime :: Prelude.Maybe Data.POSIX,+ -- | The date and time that the aggregation window begins. Only data+ -- collected after this time is returned in the results.+ aggregationWindowStartTime :: Prelude.Maybe Data.POSIX,+ -- | The identifier of the bot alias that contains the utterances. If you+ -- specified the bot version, the bot alias ID isn\'t returned.+ botAliasId :: Prelude.Maybe Prelude.Text,+ -- | The identifier of the bot that contains the utterances.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The identifier of the bot version that contains the utterances. If you+ -- specified the bot alias, the bot version isn\'t returned.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | The identifier of the language and locale that the utterances are in.+ localeId :: Prelude.Maybe Prelude.Text,+ -- | A token that indicates whether there are more results to return in a+ -- response to the @ListAggregatedUtterances@ operation. If the @nextToken@+ -- field is present, you send the contents as the @nextToken@ parameter of+ -- a @ListAggregatedUtterances@ operation request to get the next page of+ -- results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListAggregatedUtterancesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'aggregatedUtterancesSummaries', 'listAggregatedUtterancesResponse_aggregatedUtterancesSummaries' - Summaries of the aggregated utterance data. Each response contains+-- information about the number of times that the utterance was seen during+-- the time period, whether it was detected or missed, and when it was seen+-- during the time period.+--+-- 'aggregationDuration', 'listAggregatedUtterancesResponse_aggregationDuration' - The time period used to aggregate the utterance data.+--+-- 'aggregationLastRefreshedDateTime', 'listAggregatedUtterancesResponse_aggregationLastRefreshedDateTime' - The last date and time that the aggregated data was collected. The time+-- period depends on the length of the aggregation window.+--+-- - __Hours__ - for 1 hour time window, every half hour; otherwise every+-- hour.+--+-- - __Days__ - every 6 hours+--+-- - __Weeks__ - for a one week time window, every 12 hours; otherwise,+-- every day+--+-- 'aggregationWindowEndTime', 'listAggregatedUtterancesResponse_aggregationWindowEndTime' - The date and time that the aggregation window ends. Only data collected+-- between the start time and the end time are returned in the results.+--+-- 'aggregationWindowStartTime', 'listAggregatedUtterancesResponse_aggregationWindowStartTime' - The date and time that the aggregation window begins. Only data+-- collected after this time is returned in the results.+--+-- 'botAliasId', 'listAggregatedUtterancesResponse_botAliasId' - The identifier of the bot alias that contains the utterances. If you+-- specified the bot version, the bot alias ID isn\'t returned.+--+-- 'botId', 'listAggregatedUtterancesResponse_botId' - The identifier of the bot that contains the utterances.+--+-- 'botVersion', 'listAggregatedUtterancesResponse_botVersion' - The identifier of the bot version that contains the utterances. If you+-- specified the bot alias, the bot version isn\'t returned.+--+-- 'localeId', 'listAggregatedUtterancesResponse_localeId' - The identifier of the language and locale that the utterances are in.+--+-- 'nextToken', 'listAggregatedUtterancesResponse_nextToken' - A token that indicates whether there are more results to return in a+-- response to the @ListAggregatedUtterances@ operation. If the @nextToken@+-- field is present, you send the contents as the @nextToken@ parameter of+-- a @ListAggregatedUtterances@ operation request to get the next page of+-- results.+--+-- 'httpStatus', 'listAggregatedUtterancesResponse_httpStatus' - The response's http status code.+newListAggregatedUtterancesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListAggregatedUtterancesResponse+newListAggregatedUtterancesResponse pHttpStatus_ =+ ListAggregatedUtterancesResponse'+ { aggregatedUtterancesSummaries =+ Prelude.Nothing,+ aggregationDuration = Prelude.Nothing,+ aggregationLastRefreshedDateTime =+ Prelude.Nothing,+ aggregationWindowEndTime =+ Prelude.Nothing,+ aggregationWindowStartTime =+ Prelude.Nothing,+ botAliasId = Prelude.Nothing,+ botId = Prelude.Nothing,+ botVersion = Prelude.Nothing,+ localeId = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Summaries of the aggregated utterance data. Each response contains+-- information about the number of times that the utterance was seen during+-- the time period, whether it was detected or missed, and when it was seen+-- during the time period.+listAggregatedUtterancesResponse_aggregatedUtterancesSummaries :: Lens.Lens' ListAggregatedUtterancesResponse (Prelude.Maybe [AggregatedUtterancesSummary])+listAggregatedUtterancesResponse_aggregatedUtterancesSummaries = Lens.lens (\ListAggregatedUtterancesResponse' {aggregatedUtterancesSummaries} -> aggregatedUtterancesSummaries) (\s@ListAggregatedUtterancesResponse' {} a -> s {aggregatedUtterancesSummaries = a} :: ListAggregatedUtterancesResponse) Prelude.. Lens.mapping Lens.coerced++-- | The time period used to aggregate the utterance data.+listAggregatedUtterancesResponse_aggregationDuration :: Lens.Lens' ListAggregatedUtterancesResponse (Prelude.Maybe UtteranceAggregationDuration)+listAggregatedUtterancesResponse_aggregationDuration = Lens.lens (\ListAggregatedUtterancesResponse' {aggregationDuration} -> aggregationDuration) (\s@ListAggregatedUtterancesResponse' {} a -> s {aggregationDuration = a} :: ListAggregatedUtterancesResponse)++-- | The last date and time that the aggregated data was collected. The time+-- period depends on the length of the aggregation window.+--+-- - __Hours__ - for 1 hour time window, every half hour; otherwise every+-- hour.+--+-- - __Days__ - every 6 hours+--+-- - __Weeks__ - for a one week time window, every 12 hours; otherwise,+-- every day+listAggregatedUtterancesResponse_aggregationLastRefreshedDateTime :: Lens.Lens' ListAggregatedUtterancesResponse (Prelude.Maybe Prelude.UTCTime)+listAggregatedUtterancesResponse_aggregationLastRefreshedDateTime = Lens.lens (\ListAggregatedUtterancesResponse' {aggregationLastRefreshedDateTime} -> aggregationLastRefreshedDateTime) (\s@ListAggregatedUtterancesResponse' {} a -> s {aggregationLastRefreshedDateTime = a} :: ListAggregatedUtterancesResponse) Prelude.. Lens.mapping Data._Time++-- | The date and time that the aggregation window ends. Only data collected+-- between the start time and the end time are returned in the results.+listAggregatedUtterancesResponse_aggregationWindowEndTime :: Lens.Lens' ListAggregatedUtterancesResponse (Prelude.Maybe Prelude.UTCTime)+listAggregatedUtterancesResponse_aggregationWindowEndTime = Lens.lens (\ListAggregatedUtterancesResponse' {aggregationWindowEndTime} -> aggregationWindowEndTime) (\s@ListAggregatedUtterancesResponse' {} a -> s {aggregationWindowEndTime = a} :: ListAggregatedUtterancesResponse) Prelude.. Lens.mapping Data._Time++-- | The date and time that the aggregation window begins. Only data+-- collected after this time is returned in the results.+listAggregatedUtterancesResponse_aggregationWindowStartTime :: Lens.Lens' ListAggregatedUtterancesResponse (Prelude.Maybe Prelude.UTCTime)+listAggregatedUtterancesResponse_aggregationWindowStartTime = Lens.lens (\ListAggregatedUtterancesResponse' {aggregationWindowStartTime} -> aggregationWindowStartTime) (\s@ListAggregatedUtterancesResponse' {} a -> s {aggregationWindowStartTime = a} :: ListAggregatedUtterancesResponse) Prelude.. Lens.mapping Data._Time++-- | The identifier of the bot alias that contains the utterances. If you+-- specified the bot version, the bot alias ID isn\'t returned.+listAggregatedUtterancesResponse_botAliasId :: Lens.Lens' ListAggregatedUtterancesResponse (Prelude.Maybe Prelude.Text)+listAggregatedUtterancesResponse_botAliasId = Lens.lens (\ListAggregatedUtterancesResponse' {botAliasId} -> botAliasId) (\s@ListAggregatedUtterancesResponse' {} a -> s {botAliasId = a} :: ListAggregatedUtterancesResponse)++-- | The identifier of the bot that contains the utterances.+listAggregatedUtterancesResponse_botId :: Lens.Lens' ListAggregatedUtterancesResponse (Prelude.Maybe Prelude.Text)+listAggregatedUtterancesResponse_botId = Lens.lens (\ListAggregatedUtterancesResponse' {botId} -> botId) (\s@ListAggregatedUtterancesResponse' {} a -> s {botId = a} :: ListAggregatedUtterancesResponse)++-- | The identifier of the bot version that contains the utterances. If you+-- specified the bot alias, the bot version isn\'t returned.+listAggregatedUtterancesResponse_botVersion :: Lens.Lens' ListAggregatedUtterancesResponse (Prelude.Maybe Prelude.Text)+listAggregatedUtterancesResponse_botVersion = Lens.lens (\ListAggregatedUtterancesResponse' {botVersion} -> botVersion) (\s@ListAggregatedUtterancesResponse' {} a -> s {botVersion = a} :: ListAggregatedUtterancesResponse)++-- | The identifier of the language and locale that the utterances are in.+listAggregatedUtterancesResponse_localeId :: Lens.Lens' ListAggregatedUtterancesResponse (Prelude.Maybe Prelude.Text)+listAggregatedUtterancesResponse_localeId = Lens.lens (\ListAggregatedUtterancesResponse' {localeId} -> localeId) (\s@ListAggregatedUtterancesResponse' {} a -> s {localeId = a} :: ListAggregatedUtterancesResponse)++-- | A token that indicates whether there are more results to return in a+-- response to the @ListAggregatedUtterances@ operation. If the @nextToken@+-- field is present, you send the contents as the @nextToken@ parameter of+-- a @ListAggregatedUtterances@ operation request to get the next page of+-- results.+listAggregatedUtterancesResponse_nextToken :: Lens.Lens' ListAggregatedUtterancesResponse (Prelude.Maybe Prelude.Text)+listAggregatedUtterancesResponse_nextToken = Lens.lens (\ListAggregatedUtterancesResponse' {nextToken} -> nextToken) (\s@ListAggregatedUtterancesResponse' {} a -> s {nextToken = a} :: ListAggregatedUtterancesResponse)++-- | The response's http status code.+listAggregatedUtterancesResponse_httpStatus :: Lens.Lens' ListAggregatedUtterancesResponse Prelude.Int+listAggregatedUtterancesResponse_httpStatus = Lens.lens (\ListAggregatedUtterancesResponse' {httpStatus} -> httpStatus) (\s@ListAggregatedUtterancesResponse' {} a -> s {httpStatus = a} :: ListAggregatedUtterancesResponse)++instance+ Prelude.NFData+ ListAggregatedUtterancesResponse+ where+ rnf ListAggregatedUtterancesResponse' {..} =+ Prelude.rnf aggregatedUtterancesSummaries+ `Prelude.seq` Prelude.rnf aggregationDuration+ `Prelude.seq` Prelude.rnf aggregationLastRefreshedDateTime+ `Prelude.seq` Prelude.rnf aggregationWindowEndTime+ `Prelude.seq` Prelude.rnf aggregationWindowStartTime+ `Prelude.seq` Prelude.rnf botAliasId+ `Prelude.seq` Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/ListBotAliases.hs view
@@ -0,0 +1,259 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.ListBotAliases+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets a list of aliases for the specified bot.+module Amazonka.LexV2Models.ListBotAliases+ ( -- * Creating a Request+ ListBotAliases (..),+ newListBotAliases,++ -- * Request Lenses+ listBotAliases_maxResults,+ listBotAliases_nextToken,+ listBotAliases_botId,++ -- * Destructuring the Response+ ListBotAliasesResponse (..),+ newListBotAliasesResponse,++ -- * Response Lenses+ listBotAliasesResponse_botAliasSummaries,+ listBotAliasesResponse_botId,+ listBotAliasesResponse_nextToken,+ listBotAliasesResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListBotAliases' smart constructor.+data ListBotAliases = ListBotAliases'+ { -- | The maximum number of aliases to return in each page of results. If+ -- there are fewer results than the max page size, only the actual number+ -- of results are returned.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | If the response from the @ListBotAliases@ operation contains more+ -- results than specified in the @maxResults@ parameter, a token is+ -- returned in the response. Use that token in the @nextToken@ parameter to+ -- return the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The identifier of the bot to list aliases for.+ botId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListBotAliases' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxResults', 'listBotAliases_maxResults' - The maximum number of aliases to return in each page of results. If+-- there are fewer results than the max page size, only the actual number+-- of results are returned.+--+-- 'nextToken', 'listBotAliases_nextToken' - If the response from the @ListBotAliases@ operation contains more+-- results than specified in the @maxResults@ parameter, a token is+-- returned in the response. Use that token in the @nextToken@ parameter to+-- return the next page of results.+--+-- 'botId', 'listBotAliases_botId' - The identifier of the bot to list aliases for.+newListBotAliases ::+ -- | 'botId'+ Prelude.Text ->+ ListBotAliases+newListBotAliases pBotId_ =+ ListBotAliases'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ botId = pBotId_+ }++-- | The maximum number of aliases to return in each page of results. If+-- there are fewer results than the max page size, only the actual number+-- of results are returned.+listBotAliases_maxResults :: Lens.Lens' ListBotAliases (Prelude.Maybe Prelude.Natural)+listBotAliases_maxResults = Lens.lens (\ListBotAliases' {maxResults} -> maxResults) (\s@ListBotAliases' {} a -> s {maxResults = a} :: ListBotAliases)++-- | If the response from the @ListBotAliases@ operation contains more+-- results than specified in the @maxResults@ parameter, a token is+-- returned in the response. Use that token in the @nextToken@ parameter to+-- return the next page of results.+listBotAliases_nextToken :: Lens.Lens' ListBotAliases (Prelude.Maybe Prelude.Text)+listBotAliases_nextToken = Lens.lens (\ListBotAliases' {nextToken} -> nextToken) (\s@ListBotAliases' {} a -> s {nextToken = a} :: ListBotAliases)++-- | The identifier of the bot to list aliases for.+listBotAliases_botId :: Lens.Lens' ListBotAliases Prelude.Text+listBotAliases_botId = Lens.lens (\ListBotAliases' {botId} -> botId) (\s@ListBotAliases' {} a -> s {botId = a} :: ListBotAliases)++instance Core.AWSRequest ListBotAliases where+ type+ AWSResponse ListBotAliases =+ ListBotAliasesResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListBotAliasesResponse'+ Prelude.<$> ( x+ Data..?> "botAliasSummaries"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "nextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListBotAliases where+ hashWithSalt _salt ListBotAliases' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` botId++instance Prelude.NFData ListBotAliases where+ rnf ListBotAliases' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf botId++instance Data.ToHeaders ListBotAliases where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListBotAliases where+ toJSON ListBotAliases' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken+ ]+ )++instance Data.ToPath ListBotAliases where+ toPath ListBotAliases' {..} =+ Prelude.mconcat+ ["/bots/", Data.toBS botId, "/botaliases/"]++instance Data.ToQuery ListBotAliases where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListBotAliasesResponse' smart constructor.+data ListBotAliasesResponse = ListBotAliasesResponse'+ { -- | Summary information for the bot aliases that meet the filter criteria+ -- specified in the request. The length of the list is specified in the+ -- @maxResults@ parameter of the request. If there are more aliases+ -- available, the @nextToken@ field contains a token to get the next page+ -- of results.+ botAliasSummaries :: Prelude.Maybe [BotAliasSummary],+ -- | The identifier of the bot associated with the aliases.+ botId :: Prelude.Maybe Prelude.Text,+ -- | A token that indicates whether there are more results to return in a+ -- response to the @ListBotAliases@ operation. If the @nextToken@ field is+ -- present, you send the contents as the @nextToken@ parameter of a+ -- @ListBotAliases@ operation request to get the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListBotAliasesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botAliasSummaries', 'listBotAliasesResponse_botAliasSummaries' - Summary information for the bot aliases that meet the filter criteria+-- specified in the request. The length of the list is specified in the+-- @maxResults@ parameter of the request. If there are more aliases+-- available, the @nextToken@ field contains a token to get the next page+-- of results.+--+-- 'botId', 'listBotAliasesResponse_botId' - The identifier of the bot associated with the aliases.+--+-- 'nextToken', 'listBotAliasesResponse_nextToken' - A token that indicates whether there are more results to return in a+-- response to the @ListBotAliases@ operation. If the @nextToken@ field is+-- present, you send the contents as the @nextToken@ parameter of a+-- @ListBotAliases@ operation request to get the next page of results.+--+-- 'httpStatus', 'listBotAliasesResponse_httpStatus' - The response's http status code.+newListBotAliasesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListBotAliasesResponse+newListBotAliasesResponse pHttpStatus_ =+ ListBotAliasesResponse'+ { botAliasSummaries =+ Prelude.Nothing,+ botId = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Summary information for the bot aliases that meet the filter criteria+-- specified in the request. The length of the list is specified in the+-- @maxResults@ parameter of the request. If there are more aliases+-- available, the @nextToken@ field contains a token to get the next page+-- of results.+listBotAliasesResponse_botAliasSummaries :: Lens.Lens' ListBotAliasesResponse (Prelude.Maybe [BotAliasSummary])+listBotAliasesResponse_botAliasSummaries = Lens.lens (\ListBotAliasesResponse' {botAliasSummaries} -> botAliasSummaries) (\s@ListBotAliasesResponse' {} a -> s {botAliasSummaries = a} :: ListBotAliasesResponse) Prelude.. Lens.mapping Lens.coerced++-- | The identifier of the bot associated with the aliases.+listBotAliasesResponse_botId :: Lens.Lens' ListBotAliasesResponse (Prelude.Maybe Prelude.Text)+listBotAliasesResponse_botId = Lens.lens (\ListBotAliasesResponse' {botId} -> botId) (\s@ListBotAliasesResponse' {} a -> s {botId = a} :: ListBotAliasesResponse)++-- | A token that indicates whether there are more results to return in a+-- response to the @ListBotAliases@ operation. If the @nextToken@ field is+-- present, you send the contents as the @nextToken@ parameter of a+-- @ListBotAliases@ operation request to get the next page of results.+listBotAliasesResponse_nextToken :: Lens.Lens' ListBotAliasesResponse (Prelude.Maybe Prelude.Text)+listBotAliasesResponse_nextToken = Lens.lens (\ListBotAliasesResponse' {nextToken} -> nextToken) (\s@ListBotAliasesResponse' {} a -> s {nextToken = a} :: ListBotAliasesResponse)++-- | The response's http status code.+listBotAliasesResponse_httpStatus :: Lens.Lens' ListBotAliasesResponse Prelude.Int+listBotAliasesResponse_httpStatus = Lens.lens (\ListBotAliasesResponse' {httpStatus} -> httpStatus) (\s@ListBotAliasesResponse' {} a -> s {httpStatus = a} :: ListBotAliasesResponse)++instance Prelude.NFData ListBotAliasesResponse where+ rnf ListBotAliasesResponse' {..} =+ Prelude.rnf botAliasSummaries+ `Prelude.seq` Prelude.rnf botId+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/ListBotLocales.hs view
@@ -0,0 +1,324 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.ListBotLocales+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets a list of locales for the specified bot.+module Amazonka.LexV2Models.ListBotLocales+ ( -- * Creating a Request+ ListBotLocales (..),+ newListBotLocales,++ -- * Request Lenses+ listBotLocales_filters,+ listBotLocales_maxResults,+ listBotLocales_nextToken,+ listBotLocales_sortBy,+ listBotLocales_botId,+ listBotLocales_botVersion,++ -- * Destructuring the Response+ ListBotLocalesResponse (..),+ newListBotLocalesResponse,++ -- * Response Lenses+ listBotLocalesResponse_botId,+ listBotLocalesResponse_botLocaleSummaries,+ listBotLocalesResponse_botVersion,+ listBotLocalesResponse_nextToken,+ listBotLocalesResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListBotLocales' smart constructor.+data ListBotLocales = ListBotLocales'+ { -- | Provides the specification for a filter used to limit the response to+ -- only those locales that match the filter specification. You can only+ -- specify one filter and one value to filter on.+ filters :: Prelude.Maybe (Prelude.NonEmpty BotLocaleFilter),+ -- | The maximum number of aliases to return in each page of results. If+ -- there are fewer results than the max page size, only the actual number+ -- of results are returned.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | If the response from the @ListBotLocales@ operation contains more+ -- results than specified in the @maxResults@ parameter, a token is+ -- returned in the response. Use that token as the @nextToken@ parameter to+ -- return the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | Specifies sorting parameters for the list of locales. You can sort by+ -- locale name in ascending or descending order.+ sortBy :: Prelude.Maybe BotLocaleSortBy,+ -- | The identifier of the bot to list locales for.+ botId :: Prelude.Text,+ -- | The version of the bot to list locales for.+ botVersion :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListBotLocales' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'filters', 'listBotLocales_filters' - Provides the specification for a filter used to limit the response to+-- only those locales that match the filter specification. You can only+-- specify one filter and one value to filter on.+--+-- 'maxResults', 'listBotLocales_maxResults' - The maximum number of aliases to return in each page of results. If+-- there are fewer results than the max page size, only the actual number+-- of results are returned.+--+-- 'nextToken', 'listBotLocales_nextToken' - If the response from the @ListBotLocales@ operation contains more+-- results than specified in the @maxResults@ parameter, a token is+-- returned in the response. Use that token as the @nextToken@ parameter to+-- return the next page of results.+--+-- 'sortBy', 'listBotLocales_sortBy' - Specifies sorting parameters for the list of locales. You can sort by+-- locale name in ascending or descending order.+--+-- 'botId', 'listBotLocales_botId' - The identifier of the bot to list locales for.+--+-- 'botVersion', 'listBotLocales_botVersion' - The version of the bot to list locales for.+newListBotLocales ::+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ ListBotLocales+newListBotLocales pBotId_ pBotVersion_ =+ ListBotLocales'+ { filters = Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ sortBy = Prelude.Nothing,+ botId = pBotId_,+ botVersion = pBotVersion_+ }++-- | Provides the specification for a filter used to limit the response to+-- only those locales that match the filter specification. You can only+-- specify one filter and one value to filter on.+listBotLocales_filters :: Lens.Lens' ListBotLocales (Prelude.Maybe (Prelude.NonEmpty BotLocaleFilter))+listBotLocales_filters = Lens.lens (\ListBotLocales' {filters} -> filters) (\s@ListBotLocales' {} a -> s {filters = a} :: ListBotLocales) Prelude.. Lens.mapping Lens.coerced++-- | The maximum number of aliases to return in each page of results. If+-- there are fewer results than the max page size, only the actual number+-- of results are returned.+listBotLocales_maxResults :: Lens.Lens' ListBotLocales (Prelude.Maybe Prelude.Natural)+listBotLocales_maxResults = Lens.lens (\ListBotLocales' {maxResults} -> maxResults) (\s@ListBotLocales' {} a -> s {maxResults = a} :: ListBotLocales)++-- | If the response from the @ListBotLocales@ operation contains more+-- results than specified in the @maxResults@ parameter, a token is+-- returned in the response. Use that token as the @nextToken@ parameter to+-- return the next page of results.+listBotLocales_nextToken :: Lens.Lens' ListBotLocales (Prelude.Maybe Prelude.Text)+listBotLocales_nextToken = Lens.lens (\ListBotLocales' {nextToken} -> nextToken) (\s@ListBotLocales' {} a -> s {nextToken = a} :: ListBotLocales)++-- | Specifies sorting parameters for the list of locales. You can sort by+-- locale name in ascending or descending order.+listBotLocales_sortBy :: Lens.Lens' ListBotLocales (Prelude.Maybe BotLocaleSortBy)+listBotLocales_sortBy = Lens.lens (\ListBotLocales' {sortBy} -> sortBy) (\s@ListBotLocales' {} a -> s {sortBy = a} :: ListBotLocales)++-- | The identifier of the bot to list locales for.+listBotLocales_botId :: Lens.Lens' ListBotLocales Prelude.Text+listBotLocales_botId = Lens.lens (\ListBotLocales' {botId} -> botId) (\s@ListBotLocales' {} a -> s {botId = a} :: ListBotLocales)++-- | The version of the bot to list locales for.+listBotLocales_botVersion :: Lens.Lens' ListBotLocales Prelude.Text+listBotLocales_botVersion = Lens.lens (\ListBotLocales' {botVersion} -> botVersion) (\s@ListBotLocales' {} a -> s {botVersion = a} :: ListBotLocales)++instance Core.AWSRequest ListBotLocales where+ type+ AWSResponse ListBotLocales =+ ListBotLocalesResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListBotLocalesResponse'+ Prelude.<$> (x Data..?> "botId")+ Prelude.<*> ( x+ Data..?> "botLocaleSummaries"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "botVersion")+ Prelude.<*> (x Data..?> "nextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListBotLocales where+ hashWithSalt _salt ListBotLocales' {..} =+ _salt+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` sortBy+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion++instance Prelude.NFData ListBotLocales where+ rnf ListBotLocales' {..} =+ Prelude.rnf filters+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf sortBy+ `Prelude.seq` Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion++instance Data.ToHeaders ListBotLocales where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListBotLocales where+ toJSON ListBotLocales' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("filters" Data..=) Prelude.<$> filters,+ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken,+ ("sortBy" Data..=) Prelude.<$> sortBy+ ]+ )++instance Data.ToPath ListBotLocales where+ toPath ListBotLocales' {..} =+ Prelude.mconcat+ [ "/bots/",+ Data.toBS botId,+ "/botversions/",+ Data.toBS botVersion,+ "/botlocales/"+ ]++instance Data.ToQuery ListBotLocales where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListBotLocalesResponse' smart constructor.+data ListBotLocalesResponse = ListBotLocalesResponse'+ { -- | The identifier of the bot to list locales for.+ botId :: Prelude.Maybe Prelude.Text,+ -- | Summary information for the locales that meet the filter criteria+ -- specified in the request. The length of the list is specified in the+ -- @maxResults@ parameter of the request. If there are more locales+ -- available, the @nextToken@ field contains a token to get the next page+ -- of results.+ botLocaleSummaries :: Prelude.Maybe [BotLocaleSummary],+ -- | The version of the bot.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | A token that indicates whether there are more results to return in a+ -- response to the @ListBotLocales@ operation. If the @nextToken@ field is+ -- present, you send the contents as the @nextToken@ parameter of a+ -- @ListBotLocales@ operation request to get the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListBotLocalesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'listBotLocalesResponse_botId' - The identifier of the bot to list locales for.+--+-- 'botLocaleSummaries', 'listBotLocalesResponse_botLocaleSummaries' - Summary information for the locales that meet the filter criteria+-- specified in the request. The length of the list is specified in the+-- @maxResults@ parameter of the request. If there are more locales+-- available, the @nextToken@ field contains a token to get the next page+-- of results.+--+-- 'botVersion', 'listBotLocalesResponse_botVersion' - The version of the bot.+--+-- 'nextToken', 'listBotLocalesResponse_nextToken' - A token that indicates whether there are more results to return in a+-- response to the @ListBotLocales@ operation. If the @nextToken@ field is+-- present, you send the contents as the @nextToken@ parameter of a+-- @ListBotLocales@ operation request to get the next page of results.+--+-- 'httpStatus', 'listBotLocalesResponse_httpStatus' - The response's http status code.+newListBotLocalesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListBotLocalesResponse+newListBotLocalesResponse pHttpStatus_ =+ ListBotLocalesResponse'+ { botId = Prelude.Nothing,+ botLocaleSummaries = Prelude.Nothing,+ botVersion = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The identifier of the bot to list locales for.+listBotLocalesResponse_botId :: Lens.Lens' ListBotLocalesResponse (Prelude.Maybe Prelude.Text)+listBotLocalesResponse_botId = Lens.lens (\ListBotLocalesResponse' {botId} -> botId) (\s@ListBotLocalesResponse' {} a -> s {botId = a} :: ListBotLocalesResponse)++-- | Summary information for the locales that meet the filter criteria+-- specified in the request. The length of the list is specified in the+-- @maxResults@ parameter of the request. If there are more locales+-- available, the @nextToken@ field contains a token to get the next page+-- of results.+listBotLocalesResponse_botLocaleSummaries :: Lens.Lens' ListBotLocalesResponse (Prelude.Maybe [BotLocaleSummary])+listBotLocalesResponse_botLocaleSummaries = Lens.lens (\ListBotLocalesResponse' {botLocaleSummaries} -> botLocaleSummaries) (\s@ListBotLocalesResponse' {} a -> s {botLocaleSummaries = a} :: ListBotLocalesResponse) Prelude.. Lens.mapping Lens.coerced++-- | The version of the bot.+listBotLocalesResponse_botVersion :: Lens.Lens' ListBotLocalesResponse (Prelude.Maybe Prelude.Text)+listBotLocalesResponse_botVersion = Lens.lens (\ListBotLocalesResponse' {botVersion} -> botVersion) (\s@ListBotLocalesResponse' {} a -> s {botVersion = a} :: ListBotLocalesResponse)++-- | A token that indicates whether there are more results to return in a+-- response to the @ListBotLocales@ operation. If the @nextToken@ field is+-- present, you send the contents as the @nextToken@ parameter of a+-- @ListBotLocales@ operation request to get the next page of results.+listBotLocalesResponse_nextToken :: Lens.Lens' ListBotLocalesResponse (Prelude.Maybe Prelude.Text)+listBotLocalesResponse_nextToken = Lens.lens (\ListBotLocalesResponse' {nextToken} -> nextToken) (\s@ListBotLocalesResponse' {} a -> s {nextToken = a} :: ListBotLocalesResponse)++-- | The response's http status code.+listBotLocalesResponse_httpStatus :: Lens.Lens' ListBotLocalesResponse Prelude.Int+listBotLocalesResponse_httpStatus = Lens.lens (\ListBotLocalesResponse' {httpStatus} -> httpStatus) (\s@ListBotLocalesResponse' {} a -> s {httpStatus = a} :: ListBotLocalesResponse)++instance Prelude.NFData ListBotLocalesResponse where+ rnf ListBotLocalesResponse' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botLocaleSummaries+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/ListBotRecommendations.hs view
@@ -0,0 +1,341 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.ListBotRecommendations+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Get a list of bot recommendations that meet the specified criteria.+module Amazonka.LexV2Models.ListBotRecommendations+ ( -- * Creating a Request+ ListBotRecommendations (..),+ newListBotRecommendations,++ -- * Request Lenses+ listBotRecommendations_maxResults,+ listBotRecommendations_nextToken,+ listBotRecommendations_botId,+ listBotRecommendations_botVersion,+ listBotRecommendations_localeId,++ -- * Destructuring the Response+ ListBotRecommendationsResponse (..),+ newListBotRecommendationsResponse,++ -- * Response Lenses+ listBotRecommendationsResponse_botId,+ listBotRecommendationsResponse_botRecommendationSummaries,+ listBotRecommendationsResponse_botVersion,+ listBotRecommendationsResponse_localeId,+ listBotRecommendationsResponse_nextToken,+ listBotRecommendationsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListBotRecommendations' smart constructor.+data ListBotRecommendations = ListBotRecommendations'+ { -- | The maximum number of bot recommendations to return in each page of+ -- results. If there are fewer results than the max page size, only the+ -- actual number of results are returned.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | If the response from the ListBotRecommendation operation contains more+ -- results than specified in the maxResults parameter, a token is returned+ -- in the response. Use that token in the nextToken parameter to return the+ -- next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier of the bot that contains the bot recommendation+ -- list.+ botId :: Prelude.Text,+ -- | The version of the bot that contains the bot recommendation list.+ botVersion :: Prelude.Text,+ -- | The identifier of the language and locale of the bot recommendation+ -- list.+ localeId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListBotRecommendations' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxResults', 'listBotRecommendations_maxResults' - The maximum number of bot recommendations to return in each page of+-- results. If there are fewer results than the max page size, only the+-- actual number of results are returned.+--+-- 'nextToken', 'listBotRecommendations_nextToken' - If the response from the ListBotRecommendation operation contains more+-- results than specified in the maxResults parameter, a token is returned+-- in the response. Use that token in the nextToken parameter to return the+-- next page of results.+--+-- 'botId', 'listBotRecommendations_botId' - The unique identifier of the bot that contains the bot recommendation+-- list.+--+-- 'botVersion', 'listBotRecommendations_botVersion' - The version of the bot that contains the bot recommendation list.+--+-- 'localeId', 'listBotRecommendations_localeId' - The identifier of the language and locale of the bot recommendation+-- list.+newListBotRecommendations ::+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ -- | 'localeId'+ Prelude.Text ->+ ListBotRecommendations+newListBotRecommendations+ pBotId_+ pBotVersion_+ pLocaleId_ =+ ListBotRecommendations'+ { maxResults =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ botId = pBotId_,+ botVersion = pBotVersion_,+ localeId = pLocaleId_+ }++-- | The maximum number of bot recommendations to return in each page of+-- results. If there are fewer results than the max page size, only the+-- actual number of results are returned.+listBotRecommendations_maxResults :: Lens.Lens' ListBotRecommendations (Prelude.Maybe Prelude.Natural)+listBotRecommendations_maxResults = Lens.lens (\ListBotRecommendations' {maxResults} -> maxResults) (\s@ListBotRecommendations' {} a -> s {maxResults = a} :: ListBotRecommendations)++-- | If the response from the ListBotRecommendation operation contains more+-- results than specified in the maxResults parameter, a token is returned+-- in the response. Use that token in the nextToken parameter to return the+-- next page of results.+listBotRecommendations_nextToken :: Lens.Lens' ListBotRecommendations (Prelude.Maybe Prelude.Text)+listBotRecommendations_nextToken = Lens.lens (\ListBotRecommendations' {nextToken} -> nextToken) (\s@ListBotRecommendations' {} a -> s {nextToken = a} :: ListBotRecommendations)++-- | The unique identifier of the bot that contains the bot recommendation+-- list.+listBotRecommendations_botId :: Lens.Lens' ListBotRecommendations Prelude.Text+listBotRecommendations_botId = Lens.lens (\ListBotRecommendations' {botId} -> botId) (\s@ListBotRecommendations' {} a -> s {botId = a} :: ListBotRecommendations)++-- | The version of the bot that contains the bot recommendation list.+listBotRecommendations_botVersion :: Lens.Lens' ListBotRecommendations Prelude.Text+listBotRecommendations_botVersion = Lens.lens (\ListBotRecommendations' {botVersion} -> botVersion) (\s@ListBotRecommendations' {} a -> s {botVersion = a} :: ListBotRecommendations)++-- | The identifier of the language and locale of the bot recommendation+-- list.+listBotRecommendations_localeId :: Lens.Lens' ListBotRecommendations Prelude.Text+listBotRecommendations_localeId = Lens.lens (\ListBotRecommendations' {localeId} -> localeId) (\s@ListBotRecommendations' {} a -> s {localeId = a} :: ListBotRecommendations)++instance Core.AWSRequest ListBotRecommendations where+ type+ AWSResponse ListBotRecommendations =+ ListBotRecommendationsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListBotRecommendationsResponse'+ Prelude.<$> (x Data..?> "botId")+ Prelude.<*> ( x+ Data..?> "botRecommendationSummaries"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "botVersion")+ Prelude.<*> (x Data..?> "localeId")+ Prelude.<*> (x Data..?> "nextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListBotRecommendations where+ hashWithSalt _salt ListBotRecommendations' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` localeId++instance Prelude.NFData ListBotRecommendations where+ rnf ListBotRecommendations' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId++instance Data.ToHeaders ListBotRecommendations where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListBotRecommendations where+ toJSON ListBotRecommendations' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken+ ]+ )++instance Data.ToPath ListBotRecommendations where+ toPath ListBotRecommendations' {..} =+ Prelude.mconcat+ [ "/bots/",+ Data.toBS botId,+ "/botversions/",+ Data.toBS botVersion,+ "/botlocales/",+ Data.toBS localeId,+ "/botrecommendations/"+ ]++instance Data.ToQuery ListBotRecommendations where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListBotRecommendationsResponse' smart constructor.+data ListBotRecommendationsResponse = ListBotRecommendationsResponse'+ { -- | The unique identifier of the bot that contains the bot recommendation+ -- list.+ botId :: Prelude.Maybe Prelude.Text,+ -- | Summary information for the bot recommendations that meet the filter+ -- specified in this request. The length of the list is specified in the+ -- maxResults parameter of the request. If there are more bot+ -- recommendations available, the nextToken field contains a token to get+ -- the next page of results.+ botRecommendationSummaries :: Prelude.Maybe [BotRecommendationSummary],+ -- | The version of the bot that contains the bot recommendation list.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | The identifier of the language and locale of the bot recommendation+ -- list.+ localeId :: Prelude.Maybe Prelude.Text,+ -- | A token that indicates whether there are more results to return in a+ -- response to the ListBotRecommendations operation. If the nextToken field+ -- is present, you send the contents as the nextToken parameter of a+ -- ListBotRecommendations operation request to get the next page of+ -- results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListBotRecommendationsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'listBotRecommendationsResponse_botId' - The unique identifier of the bot that contains the bot recommendation+-- list.+--+-- 'botRecommendationSummaries', 'listBotRecommendationsResponse_botRecommendationSummaries' - Summary information for the bot recommendations that meet the filter+-- specified in this request. The length of the list is specified in the+-- maxResults parameter of the request. If there are more bot+-- recommendations available, the nextToken field contains a token to get+-- the next page of results.+--+-- 'botVersion', 'listBotRecommendationsResponse_botVersion' - The version of the bot that contains the bot recommendation list.+--+-- 'localeId', 'listBotRecommendationsResponse_localeId' - The identifier of the language and locale of the bot recommendation+-- list.+--+-- 'nextToken', 'listBotRecommendationsResponse_nextToken' - A token that indicates whether there are more results to return in a+-- response to the ListBotRecommendations operation. If the nextToken field+-- is present, you send the contents as the nextToken parameter of a+-- ListBotRecommendations operation request to get the next page of+-- results.+--+-- 'httpStatus', 'listBotRecommendationsResponse_httpStatus' - The response's http status code.+newListBotRecommendationsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListBotRecommendationsResponse+newListBotRecommendationsResponse pHttpStatus_ =+ ListBotRecommendationsResponse'+ { botId =+ Prelude.Nothing,+ botRecommendationSummaries =+ Prelude.Nothing,+ botVersion = Prelude.Nothing,+ localeId = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The unique identifier of the bot that contains the bot recommendation+-- list.+listBotRecommendationsResponse_botId :: Lens.Lens' ListBotRecommendationsResponse (Prelude.Maybe Prelude.Text)+listBotRecommendationsResponse_botId = Lens.lens (\ListBotRecommendationsResponse' {botId} -> botId) (\s@ListBotRecommendationsResponse' {} a -> s {botId = a} :: ListBotRecommendationsResponse)++-- | Summary information for the bot recommendations that meet the filter+-- specified in this request. The length of the list is specified in the+-- maxResults parameter of the request. If there are more bot+-- recommendations available, the nextToken field contains a token to get+-- the next page of results.+listBotRecommendationsResponse_botRecommendationSummaries :: Lens.Lens' ListBotRecommendationsResponse (Prelude.Maybe [BotRecommendationSummary])+listBotRecommendationsResponse_botRecommendationSummaries = Lens.lens (\ListBotRecommendationsResponse' {botRecommendationSummaries} -> botRecommendationSummaries) (\s@ListBotRecommendationsResponse' {} a -> s {botRecommendationSummaries = a} :: ListBotRecommendationsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The version of the bot that contains the bot recommendation list.+listBotRecommendationsResponse_botVersion :: Lens.Lens' ListBotRecommendationsResponse (Prelude.Maybe Prelude.Text)+listBotRecommendationsResponse_botVersion = Lens.lens (\ListBotRecommendationsResponse' {botVersion} -> botVersion) (\s@ListBotRecommendationsResponse' {} a -> s {botVersion = a} :: ListBotRecommendationsResponse)++-- | The identifier of the language and locale of the bot recommendation+-- list.+listBotRecommendationsResponse_localeId :: Lens.Lens' ListBotRecommendationsResponse (Prelude.Maybe Prelude.Text)+listBotRecommendationsResponse_localeId = Lens.lens (\ListBotRecommendationsResponse' {localeId} -> localeId) (\s@ListBotRecommendationsResponse' {} a -> s {localeId = a} :: ListBotRecommendationsResponse)++-- | A token that indicates whether there are more results to return in a+-- response to the ListBotRecommendations operation. If the nextToken field+-- is present, you send the contents as the nextToken parameter of a+-- ListBotRecommendations operation request to get the next page of+-- results.+listBotRecommendationsResponse_nextToken :: Lens.Lens' ListBotRecommendationsResponse (Prelude.Maybe Prelude.Text)+listBotRecommendationsResponse_nextToken = Lens.lens (\ListBotRecommendationsResponse' {nextToken} -> nextToken) (\s@ListBotRecommendationsResponse' {} a -> s {nextToken = a} :: ListBotRecommendationsResponse)++-- | The response's http status code.+listBotRecommendationsResponse_httpStatus :: Lens.Lens' ListBotRecommendationsResponse Prelude.Int+listBotRecommendationsResponse_httpStatus = Lens.lens (\ListBotRecommendationsResponse' {httpStatus} -> httpStatus) (\s@ListBotRecommendationsResponse' {} a -> s {httpStatus = a} :: ListBotRecommendationsResponse)++instance+ Prelude.NFData+ ListBotRecommendationsResponse+ where+ rnf ListBotRecommendationsResponse' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botRecommendationSummaries+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/ListBotVersions.hs view
@@ -0,0 +1,285 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.ListBotVersions+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets information about all of the versions of a bot.+--+-- The @ListBotVersions@ operation returns a summary of each version of a+-- bot. For example, if a bot has three numbered versions, the+-- @ListBotVersions@ operation returns for summaries, one for each numbered+-- version and one for the @DRAFT@ version.+--+-- The @ListBotVersions@ operation always returns at least one version, the+-- @DRAFT@ version.+module Amazonka.LexV2Models.ListBotVersions+ ( -- * Creating a Request+ ListBotVersions (..),+ newListBotVersions,++ -- * Request Lenses+ listBotVersions_maxResults,+ listBotVersions_nextToken,+ listBotVersions_sortBy,+ listBotVersions_botId,++ -- * Destructuring the Response+ ListBotVersionsResponse (..),+ newListBotVersionsResponse,++ -- * Response Lenses+ listBotVersionsResponse_botId,+ listBotVersionsResponse_botVersionSummaries,+ listBotVersionsResponse_nextToken,+ listBotVersionsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListBotVersions' smart constructor.+data ListBotVersions = ListBotVersions'+ { -- | The maximum number of versions to return in each page of results. If+ -- there are fewer results than the max page size, only the actual number+ -- of results are returned.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | If the response to the @ListBotVersion@ operation contains more results+ -- than specified in the @maxResults@ parameter, a token is returned in the+ -- response. Use that token in the @nextToken@ parameter to return the next+ -- page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | Specifies sorting parameters for the list of versions. You can specify+ -- that the list be sorted by version name in either ascending or+ -- descending order.+ sortBy :: Prelude.Maybe BotVersionSortBy,+ -- | The identifier of the bot to list versions for.+ botId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListBotVersions' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxResults', 'listBotVersions_maxResults' - The maximum number of versions to return in each page of results. If+-- there are fewer results than the max page size, only the actual number+-- of results are returned.+--+-- 'nextToken', 'listBotVersions_nextToken' - If the response to the @ListBotVersion@ operation contains more results+-- than specified in the @maxResults@ parameter, a token is returned in the+-- response. Use that token in the @nextToken@ parameter to return the next+-- page of results.+--+-- 'sortBy', 'listBotVersions_sortBy' - Specifies sorting parameters for the list of versions. You can specify+-- that the list be sorted by version name in either ascending or+-- descending order.+--+-- 'botId', 'listBotVersions_botId' - The identifier of the bot to list versions for.+newListBotVersions ::+ -- | 'botId'+ Prelude.Text ->+ ListBotVersions+newListBotVersions pBotId_ =+ ListBotVersions'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ sortBy = Prelude.Nothing,+ botId = pBotId_+ }++-- | The maximum number of versions to return in each page of results. If+-- there are fewer results than the max page size, only the actual number+-- of results are returned.+listBotVersions_maxResults :: Lens.Lens' ListBotVersions (Prelude.Maybe Prelude.Natural)+listBotVersions_maxResults = Lens.lens (\ListBotVersions' {maxResults} -> maxResults) (\s@ListBotVersions' {} a -> s {maxResults = a} :: ListBotVersions)++-- | If the response to the @ListBotVersion@ operation contains more results+-- than specified in the @maxResults@ parameter, a token is returned in the+-- response. Use that token in the @nextToken@ parameter to return the next+-- page of results.+listBotVersions_nextToken :: Lens.Lens' ListBotVersions (Prelude.Maybe Prelude.Text)+listBotVersions_nextToken = Lens.lens (\ListBotVersions' {nextToken} -> nextToken) (\s@ListBotVersions' {} a -> s {nextToken = a} :: ListBotVersions)++-- | Specifies sorting parameters for the list of versions. You can specify+-- that the list be sorted by version name in either ascending or+-- descending order.+listBotVersions_sortBy :: Lens.Lens' ListBotVersions (Prelude.Maybe BotVersionSortBy)+listBotVersions_sortBy = Lens.lens (\ListBotVersions' {sortBy} -> sortBy) (\s@ListBotVersions' {} a -> s {sortBy = a} :: ListBotVersions)++-- | The identifier of the bot to list versions for.+listBotVersions_botId :: Lens.Lens' ListBotVersions Prelude.Text+listBotVersions_botId = Lens.lens (\ListBotVersions' {botId} -> botId) (\s@ListBotVersions' {} a -> s {botId = a} :: ListBotVersions)++instance Core.AWSRequest ListBotVersions where+ type+ AWSResponse ListBotVersions =+ ListBotVersionsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListBotVersionsResponse'+ Prelude.<$> (x Data..?> "botId")+ Prelude.<*> ( x+ Data..?> "botVersionSummaries"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "nextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListBotVersions where+ hashWithSalt _salt ListBotVersions' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` sortBy+ `Prelude.hashWithSalt` botId++instance Prelude.NFData ListBotVersions where+ rnf ListBotVersions' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf sortBy+ `Prelude.seq` Prelude.rnf botId++instance Data.ToHeaders ListBotVersions where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListBotVersions where+ toJSON ListBotVersions' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken,+ ("sortBy" Data..=) Prelude.<$> sortBy+ ]+ )++instance Data.ToPath ListBotVersions where+ toPath ListBotVersions' {..} =+ Prelude.mconcat+ ["/bots/", Data.toBS botId, "/botversions/"]++instance Data.ToQuery ListBotVersions where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListBotVersionsResponse' smart constructor.+data ListBotVersionsResponse = ListBotVersionsResponse'+ { -- | The identifier of the bot to list versions for.+ botId :: Prelude.Maybe Prelude.Text,+ -- | Summary information for the bot versions that meet the filter criteria+ -- specified in the request. The length of the list is specified in the+ -- @maxResults@ parameter of the request. If there are more versions+ -- available, the @nextToken@ field contains a token to get the next page+ -- of results.+ botVersionSummaries :: Prelude.Maybe [BotVersionSummary],+ -- | A token that indicates whether there are more results to return in a+ -- response to the @ListBotVersions@ operation. If the @nextToken@ field is+ -- present, you send the contents as the @nextToken@ parameter of a+ -- @ListBotAliases@ operation request to get the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListBotVersionsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'listBotVersionsResponse_botId' - The identifier of the bot to list versions for.+--+-- 'botVersionSummaries', 'listBotVersionsResponse_botVersionSummaries' - Summary information for the bot versions that meet the filter criteria+-- specified in the request. The length of the list is specified in the+-- @maxResults@ parameter of the request. If there are more versions+-- available, the @nextToken@ field contains a token to get the next page+-- of results.+--+-- 'nextToken', 'listBotVersionsResponse_nextToken' - A token that indicates whether there are more results to return in a+-- response to the @ListBotVersions@ operation. If the @nextToken@ field is+-- present, you send the contents as the @nextToken@ parameter of a+-- @ListBotAliases@ operation request to get the next page of results.+--+-- 'httpStatus', 'listBotVersionsResponse_httpStatus' - The response's http status code.+newListBotVersionsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListBotVersionsResponse+newListBotVersionsResponse pHttpStatus_ =+ ListBotVersionsResponse'+ { botId = Prelude.Nothing,+ botVersionSummaries = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The identifier of the bot to list versions for.+listBotVersionsResponse_botId :: Lens.Lens' ListBotVersionsResponse (Prelude.Maybe Prelude.Text)+listBotVersionsResponse_botId = Lens.lens (\ListBotVersionsResponse' {botId} -> botId) (\s@ListBotVersionsResponse' {} a -> s {botId = a} :: ListBotVersionsResponse)++-- | Summary information for the bot versions that meet the filter criteria+-- specified in the request. The length of the list is specified in the+-- @maxResults@ parameter of the request. If there are more versions+-- available, the @nextToken@ field contains a token to get the next page+-- of results.+listBotVersionsResponse_botVersionSummaries :: Lens.Lens' ListBotVersionsResponse (Prelude.Maybe [BotVersionSummary])+listBotVersionsResponse_botVersionSummaries = Lens.lens (\ListBotVersionsResponse' {botVersionSummaries} -> botVersionSummaries) (\s@ListBotVersionsResponse' {} a -> s {botVersionSummaries = a} :: ListBotVersionsResponse) Prelude.. Lens.mapping Lens.coerced++-- | A token that indicates whether there are more results to return in a+-- response to the @ListBotVersions@ operation. If the @nextToken@ field is+-- present, you send the contents as the @nextToken@ parameter of a+-- @ListBotAliases@ operation request to get the next page of results.+listBotVersionsResponse_nextToken :: Lens.Lens' ListBotVersionsResponse (Prelude.Maybe Prelude.Text)+listBotVersionsResponse_nextToken = Lens.lens (\ListBotVersionsResponse' {nextToken} -> nextToken) (\s@ListBotVersionsResponse' {} a -> s {nextToken = a} :: ListBotVersionsResponse)++-- | The response's http status code.+listBotVersionsResponse_httpStatus :: Lens.Lens' ListBotVersionsResponse Prelude.Int+listBotVersionsResponse_httpStatus = Lens.lens (\ListBotVersionsResponse' {httpStatus} -> httpStatus) (\s@ListBotVersionsResponse' {} a -> s {httpStatus = a} :: ListBotVersionsResponse)++instance Prelude.NFData ListBotVersionsResponse where+ rnf ListBotVersionsResponse' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersionSummaries+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/ListBots.hs view
@@ -0,0 +1,269 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.ListBots+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets a list of available bots.+module Amazonka.LexV2Models.ListBots+ ( -- * Creating a Request+ ListBots (..),+ newListBots,++ -- * Request Lenses+ listBots_filters,+ listBots_maxResults,+ listBots_nextToken,+ listBots_sortBy,++ -- * Destructuring the Response+ ListBotsResponse (..),+ newListBotsResponse,++ -- * Response Lenses+ listBotsResponse_botSummaries,+ listBotsResponse_nextToken,+ listBotsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListBots' smart constructor.+data ListBots = ListBots'+ { -- | Provides the specification of a filter used to limit the bots in the+ -- response to only those that match the filter specification. You can only+ -- specify one filter and one string to filter on.+ filters :: Prelude.Maybe (Prelude.NonEmpty BotFilter),+ -- | The maximum number of bots to return in each page of results. If there+ -- are fewer results than the maximum page size, only the actual number of+ -- results are returned.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | If the response from the @ListBots@ operation contains more results than+ -- specified in the @maxResults@ parameter, a token is returned in the+ -- response.+ --+ -- Use the returned token in the @nextToken@ parameter of a @ListBots@+ -- request to return the next page of results. For a complete set of+ -- results, call the @ListBots@ operation until the @nextToken@ returned in+ -- the response is null.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | Specifies sorting parameters for the list of bots. You can specify that+ -- the list be sorted by bot name in ascending or descending order.+ sortBy :: Prelude.Maybe BotSortBy+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListBots' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'filters', 'listBots_filters' - Provides the specification of a filter used to limit the bots in the+-- response to only those that match the filter specification. You can only+-- specify one filter and one string to filter on.+--+-- 'maxResults', 'listBots_maxResults' - The maximum number of bots to return in each page of results. If there+-- are fewer results than the maximum page size, only the actual number of+-- results are returned.+--+-- 'nextToken', 'listBots_nextToken' - If the response from the @ListBots@ operation contains more results than+-- specified in the @maxResults@ parameter, a token is returned in the+-- response.+--+-- Use the returned token in the @nextToken@ parameter of a @ListBots@+-- request to return the next page of results. For a complete set of+-- results, call the @ListBots@ operation until the @nextToken@ returned in+-- the response is null.+--+-- 'sortBy', 'listBots_sortBy' - Specifies sorting parameters for the list of bots. You can specify that+-- the list be sorted by bot name in ascending or descending order.+newListBots ::+ ListBots+newListBots =+ ListBots'+ { filters = Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ sortBy = Prelude.Nothing+ }++-- | Provides the specification of a filter used to limit the bots in the+-- response to only those that match the filter specification. You can only+-- specify one filter and one string to filter on.+listBots_filters :: Lens.Lens' ListBots (Prelude.Maybe (Prelude.NonEmpty BotFilter))+listBots_filters = Lens.lens (\ListBots' {filters} -> filters) (\s@ListBots' {} a -> s {filters = a} :: ListBots) Prelude.. Lens.mapping Lens.coerced++-- | The maximum number of bots to return in each page of results. If there+-- are fewer results than the maximum page size, only the actual number of+-- results are returned.+listBots_maxResults :: Lens.Lens' ListBots (Prelude.Maybe Prelude.Natural)+listBots_maxResults = Lens.lens (\ListBots' {maxResults} -> maxResults) (\s@ListBots' {} a -> s {maxResults = a} :: ListBots)++-- | If the response from the @ListBots@ operation contains more results than+-- specified in the @maxResults@ parameter, a token is returned in the+-- response.+--+-- Use the returned token in the @nextToken@ parameter of a @ListBots@+-- request to return the next page of results. For a complete set of+-- results, call the @ListBots@ operation until the @nextToken@ returned in+-- the response is null.+listBots_nextToken :: Lens.Lens' ListBots (Prelude.Maybe Prelude.Text)+listBots_nextToken = Lens.lens (\ListBots' {nextToken} -> nextToken) (\s@ListBots' {} a -> s {nextToken = a} :: ListBots)++-- | Specifies sorting parameters for the list of bots. You can specify that+-- the list be sorted by bot name in ascending or descending order.+listBots_sortBy :: Lens.Lens' ListBots (Prelude.Maybe BotSortBy)+listBots_sortBy = Lens.lens (\ListBots' {sortBy} -> sortBy) (\s@ListBots' {} a -> s {sortBy = a} :: ListBots)++instance Core.AWSRequest ListBots where+ type AWSResponse ListBots = ListBotsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListBotsResponse'+ Prelude.<$> (x Data..?> "botSummaries" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "nextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListBots where+ hashWithSalt _salt ListBots' {..} =+ _salt+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` sortBy++instance Prelude.NFData ListBots where+ rnf ListBots' {..} =+ Prelude.rnf filters+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf sortBy++instance Data.ToHeaders ListBots where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListBots where+ toJSON ListBots' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("filters" Data..=) Prelude.<$> filters,+ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken,+ ("sortBy" Data..=) Prelude.<$> sortBy+ ]+ )++instance Data.ToPath ListBots where+ toPath = Prelude.const "/bots/"++instance Data.ToQuery ListBots where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListBotsResponse' smart constructor.+data ListBotsResponse = ListBotsResponse'+ { -- | Summary information for the bots that meet the filter criteria specified+ -- in the request. The length of the list is specified in the @maxResults@+ -- parameter of the request. If there are more bots available, the+ -- @nextToken@ field contains a token to the next page of results.+ botSummaries :: Prelude.Maybe [BotSummary],+ -- | A token that indicates whether there are more results to return in a+ -- response to the @ListBots@ operation. If the @nextToken@ field is+ -- present, you send the contents as the @nextToken@ parameter of a+ -- @ListBots@ operation request to get the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListBotsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botSummaries', 'listBotsResponse_botSummaries' - Summary information for the bots that meet the filter criteria specified+-- in the request. The length of the list is specified in the @maxResults@+-- parameter of the request. If there are more bots available, the+-- @nextToken@ field contains a token to the next page of results.+--+-- 'nextToken', 'listBotsResponse_nextToken' - A token that indicates whether there are more results to return in a+-- response to the @ListBots@ operation. If the @nextToken@ field is+-- present, you send the contents as the @nextToken@ parameter of a+-- @ListBots@ operation request to get the next page of results.+--+-- 'httpStatus', 'listBotsResponse_httpStatus' - The response's http status code.+newListBotsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListBotsResponse+newListBotsResponse pHttpStatus_ =+ ListBotsResponse'+ { botSummaries = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Summary information for the bots that meet the filter criteria specified+-- in the request. The length of the list is specified in the @maxResults@+-- parameter of the request. If there are more bots available, the+-- @nextToken@ field contains a token to the next page of results.+listBotsResponse_botSummaries :: Lens.Lens' ListBotsResponse (Prelude.Maybe [BotSummary])+listBotsResponse_botSummaries = Lens.lens (\ListBotsResponse' {botSummaries} -> botSummaries) (\s@ListBotsResponse' {} a -> s {botSummaries = a} :: ListBotsResponse) Prelude.. Lens.mapping Lens.coerced++-- | A token that indicates whether there are more results to return in a+-- response to the @ListBots@ operation. If the @nextToken@ field is+-- present, you send the contents as the @nextToken@ parameter of a+-- @ListBots@ operation request to get the next page of results.+listBotsResponse_nextToken :: Lens.Lens' ListBotsResponse (Prelude.Maybe Prelude.Text)+listBotsResponse_nextToken = Lens.lens (\ListBotsResponse' {nextToken} -> nextToken) (\s@ListBotsResponse' {} a -> s {nextToken = a} :: ListBotsResponse)++-- | The response's http status code.+listBotsResponse_httpStatus :: Lens.Lens' ListBotsResponse Prelude.Int+listBotsResponse_httpStatus = Lens.lens (\ListBotsResponse' {httpStatus} -> httpStatus) (\s@ListBotsResponse' {} a -> s {httpStatus = a} :: ListBotsResponse)++instance Prelude.NFData ListBotsResponse where+ rnf ListBotsResponse' {..} =+ Prelude.rnf botSummaries+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/ListBuiltInIntents.hs view
@@ -0,0 +1,296 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.ListBuiltInIntents+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets a list of built-in intents provided by Amazon Lex that you can use+-- in your bot.+--+-- To use a built-in intent as a the base for your own intent, include the+-- built-in intent signature in the @parentIntentSignature@ parameter when+-- you call the @CreateIntent@ operation. For more information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_CreateIntent.html CreateIntent>.+module Amazonka.LexV2Models.ListBuiltInIntents+ ( -- * Creating a Request+ ListBuiltInIntents (..),+ newListBuiltInIntents,++ -- * Request Lenses+ listBuiltInIntents_maxResults,+ listBuiltInIntents_nextToken,+ listBuiltInIntents_sortBy,+ listBuiltInIntents_localeId,++ -- * Destructuring the Response+ ListBuiltInIntentsResponse (..),+ newListBuiltInIntentsResponse,++ -- * Response Lenses+ listBuiltInIntentsResponse_builtInIntentSummaries,+ listBuiltInIntentsResponse_localeId,+ listBuiltInIntentsResponse_nextToken,+ listBuiltInIntentsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListBuiltInIntents' smart constructor.+data ListBuiltInIntents = ListBuiltInIntents'+ { -- | The maximum number of built-in intents to return in each page of+ -- results. If there are fewer results than the max page size, only the+ -- actual number of results are returned.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | If the response from the @ListBuiltInIntents@ operation contains more+ -- results than specified in the @maxResults@ parameter, a token is+ -- returned in the response. Use that token in the @nextToken@ parameter to+ -- return the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | Specifies sorting parameters for the list of built-in intents. You can+ -- specify that the list be sorted by the built-in intent signature in+ -- either ascending or descending order.+ sortBy :: Prelude.Maybe BuiltInIntentSortBy,+ -- | The identifier of the language and locale of the intents to list. The+ -- string must match one of the supported locales. For more information,+ -- see+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+ localeId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListBuiltInIntents' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxResults', 'listBuiltInIntents_maxResults' - The maximum number of built-in intents to return in each page of+-- results. If there are fewer results than the max page size, only the+-- actual number of results are returned.+--+-- 'nextToken', 'listBuiltInIntents_nextToken' - If the response from the @ListBuiltInIntents@ operation contains more+-- results than specified in the @maxResults@ parameter, a token is+-- returned in the response. Use that token in the @nextToken@ parameter to+-- return the next page of results.+--+-- 'sortBy', 'listBuiltInIntents_sortBy' - Specifies sorting parameters for the list of built-in intents. You can+-- specify that the list be sorted by the built-in intent signature in+-- either ascending or descending order.+--+-- 'localeId', 'listBuiltInIntents_localeId' - The identifier of the language and locale of the intents to list. The+-- string must match one of the supported locales. For more information,+-- see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+newListBuiltInIntents ::+ -- | 'localeId'+ Prelude.Text ->+ ListBuiltInIntents+newListBuiltInIntents pLocaleId_ =+ ListBuiltInIntents'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ sortBy = Prelude.Nothing,+ localeId = pLocaleId_+ }++-- | The maximum number of built-in intents to return in each page of+-- results. If there are fewer results than the max page size, only the+-- actual number of results are returned.+listBuiltInIntents_maxResults :: Lens.Lens' ListBuiltInIntents (Prelude.Maybe Prelude.Natural)+listBuiltInIntents_maxResults = Lens.lens (\ListBuiltInIntents' {maxResults} -> maxResults) (\s@ListBuiltInIntents' {} a -> s {maxResults = a} :: ListBuiltInIntents)++-- | If the response from the @ListBuiltInIntents@ operation contains more+-- results than specified in the @maxResults@ parameter, a token is+-- returned in the response. Use that token in the @nextToken@ parameter to+-- return the next page of results.+listBuiltInIntents_nextToken :: Lens.Lens' ListBuiltInIntents (Prelude.Maybe Prelude.Text)+listBuiltInIntents_nextToken = Lens.lens (\ListBuiltInIntents' {nextToken} -> nextToken) (\s@ListBuiltInIntents' {} a -> s {nextToken = a} :: ListBuiltInIntents)++-- | Specifies sorting parameters for the list of built-in intents. You can+-- specify that the list be sorted by the built-in intent signature in+-- either ascending or descending order.+listBuiltInIntents_sortBy :: Lens.Lens' ListBuiltInIntents (Prelude.Maybe BuiltInIntentSortBy)+listBuiltInIntents_sortBy = Lens.lens (\ListBuiltInIntents' {sortBy} -> sortBy) (\s@ListBuiltInIntents' {} a -> s {sortBy = a} :: ListBuiltInIntents)++-- | The identifier of the language and locale of the intents to list. The+-- string must match one of the supported locales. For more information,+-- see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+listBuiltInIntents_localeId :: Lens.Lens' ListBuiltInIntents Prelude.Text+listBuiltInIntents_localeId = Lens.lens (\ListBuiltInIntents' {localeId} -> localeId) (\s@ListBuiltInIntents' {} a -> s {localeId = a} :: ListBuiltInIntents)++instance Core.AWSRequest ListBuiltInIntents where+ type+ AWSResponse ListBuiltInIntents =+ ListBuiltInIntentsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListBuiltInIntentsResponse'+ Prelude.<$> ( x+ Data..?> "builtInIntentSummaries"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "localeId")+ Prelude.<*> (x Data..?> "nextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListBuiltInIntents where+ hashWithSalt _salt ListBuiltInIntents' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` sortBy+ `Prelude.hashWithSalt` localeId++instance Prelude.NFData ListBuiltInIntents where+ rnf ListBuiltInIntents' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf sortBy+ `Prelude.seq` Prelude.rnf localeId++instance Data.ToHeaders ListBuiltInIntents where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListBuiltInIntents where+ toJSON ListBuiltInIntents' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken,+ ("sortBy" Data..=) Prelude.<$> sortBy+ ]+ )++instance Data.ToPath ListBuiltInIntents where+ toPath ListBuiltInIntents' {..} =+ Prelude.mconcat+ [ "/builtins/locales/",+ Data.toBS localeId,+ "/intents/"+ ]++instance Data.ToQuery ListBuiltInIntents where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListBuiltInIntentsResponse' smart constructor.+data ListBuiltInIntentsResponse = ListBuiltInIntentsResponse'+ { -- | Summary information for the built-in intents that meet the filter+ -- criteria specified in the request. The length of the list is specified+ -- in the @maxResults@ parameter of the request. If there are more intents+ -- available, the @nextToken@ field contains a token to get the next page+ -- of results.+ builtInIntentSummaries :: Prelude.Maybe [BuiltInIntentSummary],+ -- | The language and locale of the intents in the list.+ localeId :: Prelude.Maybe Prelude.Text,+ -- | A token that indicates whether there are more results to return in a+ -- response to the @ListBuiltInIntents@ operation. If the @nextToken@ field+ -- is present, you send the contents as the @nextToken@ parameter of a+ -- @ListBotAliases@ operation request to get the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListBuiltInIntentsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'builtInIntentSummaries', 'listBuiltInIntentsResponse_builtInIntentSummaries' - Summary information for the built-in intents that meet the filter+-- criteria specified in the request. The length of the list is specified+-- in the @maxResults@ parameter of the request. If there are more intents+-- available, the @nextToken@ field contains a token to get the next page+-- of results.+--+-- 'localeId', 'listBuiltInIntentsResponse_localeId' - The language and locale of the intents in the list.+--+-- 'nextToken', 'listBuiltInIntentsResponse_nextToken' - A token that indicates whether there are more results to return in a+-- response to the @ListBuiltInIntents@ operation. If the @nextToken@ field+-- is present, you send the contents as the @nextToken@ parameter of a+-- @ListBotAliases@ operation request to get the next page of results.+--+-- 'httpStatus', 'listBuiltInIntentsResponse_httpStatus' - The response's http status code.+newListBuiltInIntentsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListBuiltInIntentsResponse+newListBuiltInIntentsResponse pHttpStatus_ =+ ListBuiltInIntentsResponse'+ { builtInIntentSummaries =+ Prelude.Nothing,+ localeId = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Summary information for the built-in intents that meet the filter+-- criteria specified in the request. The length of the list is specified+-- in the @maxResults@ parameter of the request. If there are more intents+-- available, the @nextToken@ field contains a token to get the next page+-- of results.+listBuiltInIntentsResponse_builtInIntentSummaries :: Lens.Lens' ListBuiltInIntentsResponse (Prelude.Maybe [BuiltInIntentSummary])+listBuiltInIntentsResponse_builtInIntentSummaries = Lens.lens (\ListBuiltInIntentsResponse' {builtInIntentSummaries} -> builtInIntentSummaries) (\s@ListBuiltInIntentsResponse' {} a -> s {builtInIntentSummaries = a} :: ListBuiltInIntentsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The language and locale of the intents in the list.+listBuiltInIntentsResponse_localeId :: Lens.Lens' ListBuiltInIntentsResponse (Prelude.Maybe Prelude.Text)+listBuiltInIntentsResponse_localeId = Lens.lens (\ListBuiltInIntentsResponse' {localeId} -> localeId) (\s@ListBuiltInIntentsResponse' {} a -> s {localeId = a} :: ListBuiltInIntentsResponse)++-- | A token that indicates whether there are more results to return in a+-- response to the @ListBuiltInIntents@ operation. If the @nextToken@ field+-- is present, you send the contents as the @nextToken@ parameter of a+-- @ListBotAliases@ operation request to get the next page of results.+listBuiltInIntentsResponse_nextToken :: Lens.Lens' ListBuiltInIntentsResponse (Prelude.Maybe Prelude.Text)+listBuiltInIntentsResponse_nextToken = Lens.lens (\ListBuiltInIntentsResponse' {nextToken} -> nextToken) (\s@ListBuiltInIntentsResponse' {} a -> s {nextToken = a} :: ListBuiltInIntentsResponse)++-- | The response's http status code.+listBuiltInIntentsResponse_httpStatus :: Lens.Lens' ListBuiltInIntentsResponse Prelude.Int+listBuiltInIntentsResponse_httpStatus = Lens.lens (\ListBuiltInIntentsResponse' {httpStatus} -> httpStatus) (\s@ListBuiltInIntentsResponse' {} a -> s {httpStatus = a} :: ListBuiltInIntentsResponse)++instance Prelude.NFData ListBuiltInIntentsResponse where+ rnf ListBuiltInIntentsResponse' {..} =+ Prelude.rnf builtInIntentSummaries+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/ListBuiltInSlotTypes.hs view
@@ -0,0 +1,293 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.ListBuiltInSlotTypes+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets a list of built-in slot types that meet the specified criteria.+module Amazonka.LexV2Models.ListBuiltInSlotTypes+ ( -- * Creating a Request+ ListBuiltInSlotTypes (..),+ newListBuiltInSlotTypes,++ -- * Request Lenses+ listBuiltInSlotTypes_maxResults,+ listBuiltInSlotTypes_nextToken,+ listBuiltInSlotTypes_sortBy,+ listBuiltInSlotTypes_localeId,++ -- * Destructuring the Response+ ListBuiltInSlotTypesResponse (..),+ newListBuiltInSlotTypesResponse,++ -- * Response Lenses+ listBuiltInSlotTypesResponse_builtInSlotTypeSummaries,+ listBuiltInSlotTypesResponse_localeId,+ listBuiltInSlotTypesResponse_nextToken,+ listBuiltInSlotTypesResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListBuiltInSlotTypes' smart constructor.+data ListBuiltInSlotTypes = ListBuiltInSlotTypes'+ { -- | The maximum number of built-in slot types to return in each page of+ -- results. If there are fewer results than the max page size, only the+ -- actual number of results are returned.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | If the response from the @ListBuiltInSlotTypes@ operation contains more+ -- results than specified in the @maxResults@ parameter, a token is+ -- returned in the response. Use that token in the @nextToken@ parameter to+ -- return the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | Determines the sort order for the response from the+ -- @ListBuiltInSlotTypes@ operation. You can choose to sort by the slot+ -- type signature in either ascending or descending order.+ sortBy :: Prelude.Maybe BuiltInSlotTypeSortBy,+ -- | The identifier of the language and locale of the slot types to list. The+ -- string must match one of the supported locales. For more information,+ -- see+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+ localeId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListBuiltInSlotTypes' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxResults', 'listBuiltInSlotTypes_maxResults' - The maximum number of built-in slot types to return in each page of+-- results. If there are fewer results than the max page size, only the+-- actual number of results are returned.+--+-- 'nextToken', 'listBuiltInSlotTypes_nextToken' - If the response from the @ListBuiltInSlotTypes@ operation contains more+-- results than specified in the @maxResults@ parameter, a token is+-- returned in the response. Use that token in the @nextToken@ parameter to+-- return the next page of results.+--+-- 'sortBy', 'listBuiltInSlotTypes_sortBy' - Determines the sort order for the response from the+-- @ListBuiltInSlotTypes@ operation. You can choose to sort by the slot+-- type signature in either ascending or descending order.+--+-- 'localeId', 'listBuiltInSlotTypes_localeId' - The identifier of the language and locale of the slot types to list. The+-- string must match one of the supported locales. For more information,+-- see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+newListBuiltInSlotTypes ::+ -- | 'localeId'+ Prelude.Text ->+ ListBuiltInSlotTypes+newListBuiltInSlotTypes pLocaleId_ =+ ListBuiltInSlotTypes'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ sortBy = Prelude.Nothing,+ localeId = pLocaleId_+ }++-- | The maximum number of built-in slot types to return in each page of+-- results. If there are fewer results than the max page size, only the+-- actual number of results are returned.+listBuiltInSlotTypes_maxResults :: Lens.Lens' ListBuiltInSlotTypes (Prelude.Maybe Prelude.Natural)+listBuiltInSlotTypes_maxResults = Lens.lens (\ListBuiltInSlotTypes' {maxResults} -> maxResults) (\s@ListBuiltInSlotTypes' {} a -> s {maxResults = a} :: ListBuiltInSlotTypes)++-- | If the response from the @ListBuiltInSlotTypes@ operation contains more+-- results than specified in the @maxResults@ parameter, a token is+-- returned in the response. Use that token in the @nextToken@ parameter to+-- return the next page of results.+listBuiltInSlotTypes_nextToken :: Lens.Lens' ListBuiltInSlotTypes (Prelude.Maybe Prelude.Text)+listBuiltInSlotTypes_nextToken = Lens.lens (\ListBuiltInSlotTypes' {nextToken} -> nextToken) (\s@ListBuiltInSlotTypes' {} a -> s {nextToken = a} :: ListBuiltInSlotTypes)++-- | Determines the sort order for the response from the+-- @ListBuiltInSlotTypes@ operation. You can choose to sort by the slot+-- type signature in either ascending or descending order.+listBuiltInSlotTypes_sortBy :: Lens.Lens' ListBuiltInSlotTypes (Prelude.Maybe BuiltInSlotTypeSortBy)+listBuiltInSlotTypes_sortBy = Lens.lens (\ListBuiltInSlotTypes' {sortBy} -> sortBy) (\s@ListBuiltInSlotTypes' {} a -> s {sortBy = a} :: ListBuiltInSlotTypes)++-- | The identifier of the language and locale of the slot types to list. The+-- string must match one of the supported locales. For more information,+-- see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+listBuiltInSlotTypes_localeId :: Lens.Lens' ListBuiltInSlotTypes Prelude.Text+listBuiltInSlotTypes_localeId = Lens.lens (\ListBuiltInSlotTypes' {localeId} -> localeId) (\s@ListBuiltInSlotTypes' {} a -> s {localeId = a} :: ListBuiltInSlotTypes)++instance Core.AWSRequest ListBuiltInSlotTypes where+ type+ AWSResponse ListBuiltInSlotTypes =+ ListBuiltInSlotTypesResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListBuiltInSlotTypesResponse'+ Prelude.<$> ( x+ Data..?> "builtInSlotTypeSummaries"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "localeId")+ Prelude.<*> (x Data..?> "nextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListBuiltInSlotTypes where+ hashWithSalt _salt ListBuiltInSlotTypes' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` sortBy+ `Prelude.hashWithSalt` localeId++instance Prelude.NFData ListBuiltInSlotTypes where+ rnf ListBuiltInSlotTypes' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf sortBy+ `Prelude.seq` Prelude.rnf localeId++instance Data.ToHeaders ListBuiltInSlotTypes where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListBuiltInSlotTypes where+ toJSON ListBuiltInSlotTypes' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken,+ ("sortBy" Data..=) Prelude.<$> sortBy+ ]+ )++instance Data.ToPath ListBuiltInSlotTypes where+ toPath ListBuiltInSlotTypes' {..} =+ Prelude.mconcat+ [ "/builtins/locales/",+ Data.toBS localeId,+ "/slottypes/"+ ]++instance Data.ToQuery ListBuiltInSlotTypes where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListBuiltInSlotTypesResponse' smart constructor.+data ListBuiltInSlotTypesResponse = ListBuiltInSlotTypesResponse'+ { -- | Summary information for the built-in slot types that meet the filter+ -- criteria specified in the request. The length of the list is specified+ -- in the @maxResults@ parameter of the request. If there are more slot+ -- types available, the @nextToken@ field contains a token to get the next+ -- page of results.+ builtInSlotTypeSummaries :: Prelude.Maybe [BuiltInSlotTypeSummary],+ -- | The language and locale of the slot types in the list.+ localeId :: Prelude.Maybe Prelude.Text,+ -- | A token that indicates whether there are more results to return in a+ -- response to the @ListBuiltInSlotTypes@ operation. If the @nextToken@+ -- field is present, you send the contents as the @nextToken@ parameter of+ -- a @LIstBuiltInSlotTypes@ operation request to get the next page of+ -- results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListBuiltInSlotTypesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'builtInSlotTypeSummaries', 'listBuiltInSlotTypesResponse_builtInSlotTypeSummaries' - Summary information for the built-in slot types that meet the filter+-- criteria specified in the request. The length of the list is specified+-- in the @maxResults@ parameter of the request. If there are more slot+-- types available, the @nextToken@ field contains a token to get the next+-- page of results.+--+-- 'localeId', 'listBuiltInSlotTypesResponse_localeId' - The language and locale of the slot types in the list.+--+-- 'nextToken', 'listBuiltInSlotTypesResponse_nextToken' - A token that indicates whether there are more results to return in a+-- response to the @ListBuiltInSlotTypes@ operation. If the @nextToken@+-- field is present, you send the contents as the @nextToken@ parameter of+-- a @LIstBuiltInSlotTypes@ operation request to get the next page of+-- results.+--+-- 'httpStatus', 'listBuiltInSlotTypesResponse_httpStatus' - The response's http status code.+newListBuiltInSlotTypesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListBuiltInSlotTypesResponse+newListBuiltInSlotTypesResponse pHttpStatus_ =+ ListBuiltInSlotTypesResponse'+ { builtInSlotTypeSummaries =+ Prelude.Nothing,+ localeId = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Summary information for the built-in slot types that meet the filter+-- criteria specified in the request. The length of the list is specified+-- in the @maxResults@ parameter of the request. If there are more slot+-- types available, the @nextToken@ field contains a token to get the next+-- page of results.+listBuiltInSlotTypesResponse_builtInSlotTypeSummaries :: Lens.Lens' ListBuiltInSlotTypesResponse (Prelude.Maybe [BuiltInSlotTypeSummary])+listBuiltInSlotTypesResponse_builtInSlotTypeSummaries = Lens.lens (\ListBuiltInSlotTypesResponse' {builtInSlotTypeSummaries} -> builtInSlotTypeSummaries) (\s@ListBuiltInSlotTypesResponse' {} a -> s {builtInSlotTypeSummaries = a} :: ListBuiltInSlotTypesResponse) Prelude.. Lens.mapping Lens.coerced++-- | The language and locale of the slot types in the list.+listBuiltInSlotTypesResponse_localeId :: Lens.Lens' ListBuiltInSlotTypesResponse (Prelude.Maybe Prelude.Text)+listBuiltInSlotTypesResponse_localeId = Lens.lens (\ListBuiltInSlotTypesResponse' {localeId} -> localeId) (\s@ListBuiltInSlotTypesResponse' {} a -> s {localeId = a} :: ListBuiltInSlotTypesResponse)++-- | A token that indicates whether there are more results to return in a+-- response to the @ListBuiltInSlotTypes@ operation. If the @nextToken@+-- field is present, you send the contents as the @nextToken@ parameter of+-- a @LIstBuiltInSlotTypes@ operation request to get the next page of+-- results.+listBuiltInSlotTypesResponse_nextToken :: Lens.Lens' ListBuiltInSlotTypesResponse (Prelude.Maybe Prelude.Text)+listBuiltInSlotTypesResponse_nextToken = Lens.lens (\ListBuiltInSlotTypesResponse' {nextToken} -> nextToken) (\s@ListBuiltInSlotTypesResponse' {} a -> s {nextToken = a} :: ListBuiltInSlotTypesResponse)++-- | The response's http status code.+listBuiltInSlotTypesResponse_httpStatus :: Lens.Lens' ListBuiltInSlotTypesResponse Prelude.Int+listBuiltInSlotTypesResponse_httpStatus = Lens.lens (\ListBuiltInSlotTypesResponse' {httpStatus} -> httpStatus) (\s@ListBuiltInSlotTypesResponse' {} a -> s {httpStatus = a} :: ListBuiltInSlotTypesResponse)++instance Prelude.NFData ListBuiltInSlotTypesResponse where+ rnf ListBuiltInSlotTypesResponse' {..} =+ Prelude.rnf builtInSlotTypeSummaries+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/ListCustomVocabularyItems.hs view
@@ -0,0 +1,290 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.ListCustomVocabularyItems+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- List custom vocabulary items for the specified locale in the specified+-- bot.+module Amazonka.LexV2Models.ListCustomVocabularyItems+ ( -- * Creating a Request+ ListCustomVocabularyItems (..),+ newListCustomVocabularyItems,++ -- * Request Lenses+ listCustomVocabularyItems_maxResults,+ listCustomVocabularyItems_nextToken,+ listCustomVocabularyItems_botId,+ listCustomVocabularyItems_botVersion,+ listCustomVocabularyItems_localeId,++ -- * Destructuring the Response+ ListCustomVocabularyItemsResponse (..),+ newListCustomVocabularyItemsResponse,++ -- * Response Lenses+ listCustomVocabularyItemsResponse_botId,+ listCustomVocabularyItemsResponse_botVersion,+ listCustomVocabularyItemsResponse_customVocabularyItems,+ listCustomVocabularyItemsResponse_localeId,+ listCustomVocabularyItemsResponse_nextToken,+ listCustomVocabularyItemsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListCustomVocabularyItems' smart constructor.+data ListCustomVocabularyItems = ListCustomVocabularyItems'+ { -- | The maximum results to the list custom vocabulary request.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The nextToken identifier to the list custom vocabulary request.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier of the bot to the list custom vocabulary request.+ botId :: Prelude.Text,+ -- | The bot version of the bot to the list custom vocabulary request.+ botVersion :: Prelude.Text,+ -- | The locale identifier of the bot to the list custom vocabulary request.+ localeId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListCustomVocabularyItems' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxResults', 'listCustomVocabularyItems_maxResults' - The maximum results to the list custom vocabulary request.+--+-- 'nextToken', 'listCustomVocabularyItems_nextToken' - The nextToken identifier to the list custom vocabulary request.+--+-- 'botId', 'listCustomVocabularyItems_botId' - The unique identifier of the bot to the list custom vocabulary request.+--+-- 'botVersion', 'listCustomVocabularyItems_botVersion' - The bot version of the bot to the list custom vocabulary request.+--+-- 'localeId', 'listCustomVocabularyItems_localeId' - The locale identifier of the bot to the list custom vocabulary request.+newListCustomVocabularyItems ::+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ -- | 'localeId'+ Prelude.Text ->+ ListCustomVocabularyItems+newListCustomVocabularyItems+ pBotId_+ pBotVersion_+ pLocaleId_ =+ ListCustomVocabularyItems'+ { maxResults =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ botId = pBotId_,+ botVersion = pBotVersion_,+ localeId = pLocaleId_+ }++-- | The maximum results to the list custom vocabulary request.+listCustomVocabularyItems_maxResults :: Lens.Lens' ListCustomVocabularyItems (Prelude.Maybe Prelude.Natural)+listCustomVocabularyItems_maxResults = Lens.lens (\ListCustomVocabularyItems' {maxResults} -> maxResults) (\s@ListCustomVocabularyItems' {} a -> s {maxResults = a} :: ListCustomVocabularyItems)++-- | The nextToken identifier to the list custom vocabulary request.+listCustomVocabularyItems_nextToken :: Lens.Lens' ListCustomVocabularyItems (Prelude.Maybe Prelude.Text)+listCustomVocabularyItems_nextToken = Lens.lens (\ListCustomVocabularyItems' {nextToken} -> nextToken) (\s@ListCustomVocabularyItems' {} a -> s {nextToken = a} :: ListCustomVocabularyItems)++-- | The unique identifier of the bot to the list custom vocabulary request.+listCustomVocabularyItems_botId :: Lens.Lens' ListCustomVocabularyItems Prelude.Text+listCustomVocabularyItems_botId = Lens.lens (\ListCustomVocabularyItems' {botId} -> botId) (\s@ListCustomVocabularyItems' {} a -> s {botId = a} :: ListCustomVocabularyItems)++-- | The bot version of the bot to the list custom vocabulary request.+listCustomVocabularyItems_botVersion :: Lens.Lens' ListCustomVocabularyItems Prelude.Text+listCustomVocabularyItems_botVersion = Lens.lens (\ListCustomVocabularyItems' {botVersion} -> botVersion) (\s@ListCustomVocabularyItems' {} a -> s {botVersion = a} :: ListCustomVocabularyItems)++-- | The locale identifier of the bot to the list custom vocabulary request.+listCustomVocabularyItems_localeId :: Lens.Lens' ListCustomVocabularyItems Prelude.Text+listCustomVocabularyItems_localeId = Lens.lens (\ListCustomVocabularyItems' {localeId} -> localeId) (\s@ListCustomVocabularyItems' {} a -> s {localeId = a} :: ListCustomVocabularyItems)++instance Core.AWSRequest ListCustomVocabularyItems where+ type+ AWSResponse ListCustomVocabularyItems =+ ListCustomVocabularyItemsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListCustomVocabularyItemsResponse'+ Prelude.<$> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botVersion")+ Prelude.<*> ( x+ Data..?> "customVocabularyItems"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "localeId")+ Prelude.<*> (x Data..?> "nextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListCustomVocabularyItems where+ hashWithSalt _salt ListCustomVocabularyItems' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` localeId++instance Prelude.NFData ListCustomVocabularyItems where+ rnf ListCustomVocabularyItems' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId++instance Data.ToHeaders ListCustomVocabularyItems where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListCustomVocabularyItems where+ toJSON ListCustomVocabularyItems' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken+ ]+ )++instance Data.ToPath ListCustomVocabularyItems where+ toPath ListCustomVocabularyItems' {..} =+ Prelude.mconcat+ [ "/bots/",+ Data.toBS botId,+ "/botversions/",+ Data.toBS botVersion,+ "/botlocales/",+ Data.toBS localeId,+ "/customvocabulary/DEFAULT/list"+ ]++instance Data.ToQuery ListCustomVocabularyItems where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListCustomVocabularyItemsResponse' smart constructor.+data ListCustomVocabularyItemsResponse = ListCustomVocabularyItemsResponse'+ { -- | The unique identifier of the bot to the list custom vocabulary response.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The bot version of the bot to the list custom vocabulary response.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | The custom vocabulary items from the list custom vocabulary response.+ customVocabularyItems :: Prelude.Maybe [CustomVocabularyItem],+ -- | The locale identifier of the bot to the list custom vocabulary response.+ localeId :: Prelude.Maybe Prelude.Text,+ -- | The nextToken identifier to the list custom vocabulary response.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListCustomVocabularyItemsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'listCustomVocabularyItemsResponse_botId' - The unique identifier of the bot to the list custom vocabulary response.+--+-- 'botVersion', 'listCustomVocabularyItemsResponse_botVersion' - The bot version of the bot to the list custom vocabulary response.+--+-- 'customVocabularyItems', 'listCustomVocabularyItemsResponse_customVocabularyItems' - The custom vocabulary items from the list custom vocabulary response.+--+-- 'localeId', 'listCustomVocabularyItemsResponse_localeId' - The locale identifier of the bot to the list custom vocabulary response.+--+-- 'nextToken', 'listCustomVocabularyItemsResponse_nextToken' - The nextToken identifier to the list custom vocabulary response.+--+-- 'httpStatus', 'listCustomVocabularyItemsResponse_httpStatus' - The response's http status code.+newListCustomVocabularyItemsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListCustomVocabularyItemsResponse+newListCustomVocabularyItemsResponse pHttpStatus_ =+ ListCustomVocabularyItemsResponse'+ { botId =+ Prelude.Nothing,+ botVersion = Prelude.Nothing,+ customVocabularyItems = Prelude.Nothing,+ localeId = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The unique identifier of the bot to the list custom vocabulary response.+listCustomVocabularyItemsResponse_botId :: Lens.Lens' ListCustomVocabularyItemsResponse (Prelude.Maybe Prelude.Text)+listCustomVocabularyItemsResponse_botId = Lens.lens (\ListCustomVocabularyItemsResponse' {botId} -> botId) (\s@ListCustomVocabularyItemsResponse' {} a -> s {botId = a} :: ListCustomVocabularyItemsResponse)++-- | The bot version of the bot to the list custom vocabulary response.+listCustomVocabularyItemsResponse_botVersion :: Lens.Lens' ListCustomVocabularyItemsResponse (Prelude.Maybe Prelude.Text)+listCustomVocabularyItemsResponse_botVersion = Lens.lens (\ListCustomVocabularyItemsResponse' {botVersion} -> botVersion) (\s@ListCustomVocabularyItemsResponse' {} a -> s {botVersion = a} :: ListCustomVocabularyItemsResponse)++-- | The custom vocabulary items from the list custom vocabulary response.+listCustomVocabularyItemsResponse_customVocabularyItems :: Lens.Lens' ListCustomVocabularyItemsResponse (Prelude.Maybe [CustomVocabularyItem])+listCustomVocabularyItemsResponse_customVocabularyItems = Lens.lens (\ListCustomVocabularyItemsResponse' {customVocabularyItems} -> customVocabularyItems) (\s@ListCustomVocabularyItemsResponse' {} a -> s {customVocabularyItems = a} :: ListCustomVocabularyItemsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The locale identifier of the bot to the list custom vocabulary response.+listCustomVocabularyItemsResponse_localeId :: Lens.Lens' ListCustomVocabularyItemsResponse (Prelude.Maybe Prelude.Text)+listCustomVocabularyItemsResponse_localeId = Lens.lens (\ListCustomVocabularyItemsResponse' {localeId} -> localeId) (\s@ListCustomVocabularyItemsResponse' {} a -> s {localeId = a} :: ListCustomVocabularyItemsResponse)++-- | The nextToken identifier to the list custom vocabulary response.+listCustomVocabularyItemsResponse_nextToken :: Lens.Lens' ListCustomVocabularyItemsResponse (Prelude.Maybe Prelude.Text)+listCustomVocabularyItemsResponse_nextToken = Lens.lens (\ListCustomVocabularyItemsResponse' {nextToken} -> nextToken) (\s@ListCustomVocabularyItemsResponse' {} a -> s {nextToken = a} :: ListCustomVocabularyItemsResponse)++-- | The response's http status code.+listCustomVocabularyItemsResponse_httpStatus :: Lens.Lens' ListCustomVocabularyItemsResponse Prelude.Int+listCustomVocabularyItemsResponse_httpStatus = Lens.lens (\ListCustomVocabularyItemsResponse' {httpStatus} -> httpStatus) (\s@ListCustomVocabularyItemsResponse' {} a -> s {httpStatus = a} :: ListCustomVocabularyItemsResponse)++instance+ Prelude.NFData+ ListCustomVocabularyItemsResponse+ where+ rnf ListCustomVocabularyItemsResponse' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf customVocabularyItems+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/ListExports.hs view
@@ -0,0 +1,354 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.ListExports+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists the exports for a bot, bot locale, or custom vocabulary. Exports+-- are kept in the list for 7 days.+module Amazonka.LexV2Models.ListExports+ ( -- * Creating a Request+ ListExports (..),+ newListExports,++ -- * Request Lenses+ listExports_botId,+ listExports_botVersion,+ listExports_filters,+ listExports_localeId,+ listExports_maxResults,+ listExports_nextToken,+ listExports_sortBy,++ -- * Destructuring the Response+ ListExportsResponse (..),+ newListExportsResponse,++ -- * Response Lenses+ listExportsResponse_botId,+ listExportsResponse_botVersion,+ listExportsResponse_exportSummaries,+ listExportsResponse_localeId,+ listExportsResponse_nextToken,+ listExportsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListExports' smart constructor.+data ListExports = ListExports'+ { -- | The unique identifier that Amazon Lex assigned to the bot.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The version of the bot to list exports for.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | Provides the specification of a filter used to limit the exports in the+ -- response to only those that match the filter specification. You can only+ -- specify one filter and one string to filter on.+ filters :: Prelude.Maybe (Prelude.NonEmpty ExportFilter),+ -- | Specifies the resources that should be exported. If you don\'t specify a+ -- resource type in the @filters@ parameter, both bot locales and custom+ -- vocabularies are exported.+ localeId :: Prelude.Maybe Prelude.Text,+ -- | The maximum number of exports to return in each page of results. If+ -- there are fewer results than the max page size, only the actual number+ -- of results are returned.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | If the response from the @ListExports@ operation contains more results+ -- that specified in the @maxResults@ parameter, a token is returned in the+ -- response.+ --+ -- Use the returned token in the @nextToken@ parameter of a @ListExports@+ -- request to return the next page of results. For a complete set of+ -- results, call the @ListExports@ operation until the @nextToken@ returned+ -- in the response is null.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | Determines the field that the list of exports is sorted by. You can sort+ -- by the @LastUpdatedDateTime@ field in ascending or descending order.+ sortBy :: Prelude.Maybe ExportSortBy+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListExports' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'listExports_botId' - The unique identifier that Amazon Lex assigned to the bot.+--+-- 'botVersion', 'listExports_botVersion' - The version of the bot to list exports for.+--+-- 'filters', 'listExports_filters' - Provides the specification of a filter used to limit the exports in the+-- response to only those that match the filter specification. You can only+-- specify one filter and one string to filter on.+--+-- 'localeId', 'listExports_localeId' - Specifies the resources that should be exported. If you don\'t specify a+-- resource type in the @filters@ parameter, both bot locales and custom+-- vocabularies are exported.+--+-- 'maxResults', 'listExports_maxResults' - The maximum number of exports to return in each page of results. If+-- there are fewer results than the max page size, only the actual number+-- of results are returned.+--+-- 'nextToken', 'listExports_nextToken' - If the response from the @ListExports@ operation contains more results+-- that specified in the @maxResults@ parameter, a token is returned in the+-- response.+--+-- Use the returned token in the @nextToken@ parameter of a @ListExports@+-- request to return the next page of results. For a complete set of+-- results, call the @ListExports@ operation until the @nextToken@ returned+-- in the response is null.+--+-- 'sortBy', 'listExports_sortBy' - Determines the field that the list of exports is sorted by. You can sort+-- by the @LastUpdatedDateTime@ field in ascending or descending order.+newListExports ::+ ListExports+newListExports =+ ListExports'+ { botId = Prelude.Nothing,+ botVersion = Prelude.Nothing,+ filters = Prelude.Nothing,+ localeId = Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ sortBy = Prelude.Nothing+ }++-- | The unique identifier that Amazon Lex assigned to the bot.+listExports_botId :: Lens.Lens' ListExports (Prelude.Maybe Prelude.Text)+listExports_botId = Lens.lens (\ListExports' {botId} -> botId) (\s@ListExports' {} a -> s {botId = a} :: ListExports)++-- | The version of the bot to list exports for.+listExports_botVersion :: Lens.Lens' ListExports (Prelude.Maybe Prelude.Text)+listExports_botVersion = Lens.lens (\ListExports' {botVersion} -> botVersion) (\s@ListExports' {} a -> s {botVersion = a} :: ListExports)++-- | Provides the specification of a filter used to limit the exports in the+-- response to only those that match the filter specification. You can only+-- specify one filter and one string to filter on.+listExports_filters :: Lens.Lens' ListExports (Prelude.Maybe (Prelude.NonEmpty ExportFilter))+listExports_filters = Lens.lens (\ListExports' {filters} -> filters) (\s@ListExports' {} a -> s {filters = a} :: ListExports) Prelude.. Lens.mapping Lens.coerced++-- | Specifies the resources that should be exported. If you don\'t specify a+-- resource type in the @filters@ parameter, both bot locales and custom+-- vocabularies are exported.+listExports_localeId :: Lens.Lens' ListExports (Prelude.Maybe Prelude.Text)+listExports_localeId = Lens.lens (\ListExports' {localeId} -> localeId) (\s@ListExports' {} a -> s {localeId = a} :: ListExports)++-- | The maximum number of exports to return in each page of results. If+-- there are fewer results than the max page size, only the actual number+-- of results are returned.+listExports_maxResults :: Lens.Lens' ListExports (Prelude.Maybe Prelude.Natural)+listExports_maxResults = Lens.lens (\ListExports' {maxResults} -> maxResults) (\s@ListExports' {} a -> s {maxResults = a} :: ListExports)++-- | If the response from the @ListExports@ operation contains more results+-- that specified in the @maxResults@ parameter, a token is returned in the+-- response.+--+-- Use the returned token in the @nextToken@ parameter of a @ListExports@+-- request to return the next page of results. For a complete set of+-- results, call the @ListExports@ operation until the @nextToken@ returned+-- in the response is null.+listExports_nextToken :: Lens.Lens' ListExports (Prelude.Maybe Prelude.Text)+listExports_nextToken = Lens.lens (\ListExports' {nextToken} -> nextToken) (\s@ListExports' {} a -> s {nextToken = a} :: ListExports)++-- | Determines the field that the list of exports is sorted by. You can sort+-- by the @LastUpdatedDateTime@ field in ascending or descending order.+listExports_sortBy :: Lens.Lens' ListExports (Prelude.Maybe ExportSortBy)+listExports_sortBy = Lens.lens (\ListExports' {sortBy} -> sortBy) (\s@ListExports' {} a -> s {sortBy = a} :: ListExports)++instance Core.AWSRequest ListExports where+ type AWSResponse ListExports = ListExportsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListExportsResponse'+ Prelude.<$> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botVersion")+ Prelude.<*> ( x+ Data..?> "exportSummaries"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "localeId")+ Prelude.<*> (x Data..?> "nextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListExports where+ hashWithSalt _salt ListExports' {..} =+ _salt+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` localeId+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` sortBy++instance Prelude.NFData ListExports where+ rnf ListExports' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf filters+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf sortBy++instance Data.ToHeaders ListExports where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListExports where+ toJSON ListExports' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("botId" Data..=) Prelude.<$> botId,+ ("botVersion" Data..=) Prelude.<$> botVersion,+ ("filters" Data..=) Prelude.<$> filters,+ ("localeId" Data..=) Prelude.<$> localeId,+ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken,+ ("sortBy" Data..=) Prelude.<$> sortBy+ ]+ )++instance Data.ToPath ListExports where+ toPath = Prelude.const "/exports/"++instance Data.ToQuery ListExports where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListExportsResponse' smart constructor.+data ListExportsResponse = ListExportsResponse'+ { -- | The unique identifier assigned to the bot by Amazon Lex.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The version of the bot that was exported.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | Summary information for the exports that meet the filter criteria+ -- specified in the request. The length of the list is specified in the+ -- @maxResults@ parameter. If there are more exports available, the+ -- @nextToken@ field contains a token to get the next page of results.+ exportSummaries :: Prelude.Maybe [ExportSummary],+ -- | The locale specified in the request.+ localeId :: Prelude.Maybe Prelude.Text,+ -- | A token that indicates whether there are more results to return in a+ -- response to the @ListExports@ operation. If the @nextToken@ field is+ -- present, you send the contents as the @nextToken@ parameter of a+ -- @ListExports@ operation request to get the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListExportsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'listExportsResponse_botId' - The unique identifier assigned to the bot by Amazon Lex.+--+-- 'botVersion', 'listExportsResponse_botVersion' - The version of the bot that was exported.+--+-- 'exportSummaries', 'listExportsResponse_exportSummaries' - Summary information for the exports that meet the filter criteria+-- specified in the request. The length of the list is specified in the+-- @maxResults@ parameter. If there are more exports available, the+-- @nextToken@ field contains a token to get the next page of results.+--+-- 'localeId', 'listExportsResponse_localeId' - The locale specified in the request.+--+-- 'nextToken', 'listExportsResponse_nextToken' - A token that indicates whether there are more results to return in a+-- response to the @ListExports@ operation. If the @nextToken@ field is+-- present, you send the contents as the @nextToken@ parameter of a+-- @ListExports@ operation request to get the next page of results.+--+-- 'httpStatus', 'listExportsResponse_httpStatus' - The response's http status code.+newListExportsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListExportsResponse+newListExportsResponse pHttpStatus_ =+ ListExportsResponse'+ { botId = Prelude.Nothing,+ botVersion = Prelude.Nothing,+ exportSummaries = Prelude.Nothing,+ localeId = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The unique identifier assigned to the bot by Amazon Lex.+listExportsResponse_botId :: Lens.Lens' ListExportsResponse (Prelude.Maybe Prelude.Text)+listExportsResponse_botId = Lens.lens (\ListExportsResponse' {botId} -> botId) (\s@ListExportsResponse' {} a -> s {botId = a} :: ListExportsResponse)++-- | The version of the bot that was exported.+listExportsResponse_botVersion :: Lens.Lens' ListExportsResponse (Prelude.Maybe Prelude.Text)+listExportsResponse_botVersion = Lens.lens (\ListExportsResponse' {botVersion} -> botVersion) (\s@ListExportsResponse' {} a -> s {botVersion = a} :: ListExportsResponse)++-- | Summary information for the exports that meet the filter criteria+-- specified in the request. The length of the list is specified in the+-- @maxResults@ parameter. If there are more exports available, the+-- @nextToken@ field contains a token to get the next page of results.+listExportsResponse_exportSummaries :: Lens.Lens' ListExportsResponse (Prelude.Maybe [ExportSummary])+listExportsResponse_exportSummaries = Lens.lens (\ListExportsResponse' {exportSummaries} -> exportSummaries) (\s@ListExportsResponse' {} a -> s {exportSummaries = a} :: ListExportsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The locale specified in the request.+listExportsResponse_localeId :: Lens.Lens' ListExportsResponse (Prelude.Maybe Prelude.Text)+listExportsResponse_localeId = Lens.lens (\ListExportsResponse' {localeId} -> localeId) (\s@ListExportsResponse' {} a -> s {localeId = a} :: ListExportsResponse)++-- | A token that indicates whether there are more results to return in a+-- response to the @ListExports@ operation. If the @nextToken@ field is+-- present, you send the contents as the @nextToken@ parameter of a+-- @ListExports@ operation request to get the next page of results.+listExportsResponse_nextToken :: Lens.Lens' ListExportsResponse (Prelude.Maybe Prelude.Text)+listExportsResponse_nextToken = Lens.lens (\ListExportsResponse' {nextToken} -> nextToken) (\s@ListExportsResponse' {} a -> s {nextToken = a} :: ListExportsResponse)++-- | The response's http status code.+listExportsResponse_httpStatus :: Lens.Lens' ListExportsResponse Prelude.Int+listExportsResponse_httpStatus = Lens.lens (\ListExportsResponse' {httpStatus} -> httpStatus) (\s@ListExportsResponse' {} a -> s {httpStatus = a} :: ListExportsResponse)++instance Prelude.NFData ListExportsResponse where+ rnf ListExportsResponse' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf exportSummaries+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/ListImports.hs view
@@ -0,0 +1,354 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.ListImports+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists the imports for a bot, bot locale, or custom vocabulary. Imports+-- are kept in the list for 7 days.+module Amazonka.LexV2Models.ListImports+ ( -- * Creating a Request+ ListImports (..),+ newListImports,++ -- * Request Lenses+ listImports_botId,+ listImports_botVersion,+ listImports_filters,+ listImports_localeId,+ listImports_maxResults,+ listImports_nextToken,+ listImports_sortBy,++ -- * Destructuring the Response+ ListImportsResponse (..),+ newListImportsResponse,++ -- * Response Lenses+ listImportsResponse_botId,+ listImportsResponse_botVersion,+ listImportsResponse_importSummaries,+ listImportsResponse_localeId,+ listImportsResponse_nextToken,+ listImportsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListImports' smart constructor.+data ListImports = ListImports'+ { -- | The unique identifier that Amazon Lex assigned to the bot.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The version of the bot to list imports for.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | Provides the specification of a filter used to limit the bots in the+ -- response to only those that match the filter specification. You can only+ -- specify one filter and one string to filter on.+ filters :: Prelude.Maybe (Prelude.NonEmpty ImportFilter),+ -- | Specifies the locale that should be present in the list. If you don\'t+ -- specify a resource type in the @filters@ parameter, the list contains+ -- both bot locales and custom vocabularies.+ localeId :: Prelude.Maybe Prelude.Text,+ -- | The maximum number of imports to return in each page of results. If+ -- there are fewer results than the max page size, only the actual number+ -- of results are returned.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | If the response from the @ListImports@ operation contains more results+ -- than specified in the @maxResults@ parameter, a token is returned in the+ -- response.+ --+ -- Use the returned token in the @nextToken@ parameter of a @ListImports@+ -- request to return the next page of results. For a complete set of+ -- results, call the @ListImports@ operation until the @nextToken@ returned+ -- in the response is null.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | Determines the field that the list of imports is sorted by. You can sort+ -- by the @LastUpdatedDateTime@ field in ascending or descending order.+ sortBy :: Prelude.Maybe ImportSortBy+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListImports' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'listImports_botId' - The unique identifier that Amazon Lex assigned to the bot.+--+-- 'botVersion', 'listImports_botVersion' - The version of the bot to list imports for.+--+-- 'filters', 'listImports_filters' - Provides the specification of a filter used to limit the bots in the+-- response to only those that match the filter specification. You can only+-- specify one filter and one string to filter on.+--+-- 'localeId', 'listImports_localeId' - Specifies the locale that should be present in the list. If you don\'t+-- specify a resource type in the @filters@ parameter, the list contains+-- both bot locales and custom vocabularies.+--+-- 'maxResults', 'listImports_maxResults' - The maximum number of imports to return in each page of results. If+-- there are fewer results than the max page size, only the actual number+-- of results are returned.+--+-- 'nextToken', 'listImports_nextToken' - If the response from the @ListImports@ operation contains more results+-- than specified in the @maxResults@ parameter, a token is returned in the+-- response.+--+-- Use the returned token in the @nextToken@ parameter of a @ListImports@+-- request to return the next page of results. For a complete set of+-- results, call the @ListImports@ operation until the @nextToken@ returned+-- in the response is null.+--+-- 'sortBy', 'listImports_sortBy' - Determines the field that the list of imports is sorted by. You can sort+-- by the @LastUpdatedDateTime@ field in ascending or descending order.+newListImports ::+ ListImports+newListImports =+ ListImports'+ { botId = Prelude.Nothing,+ botVersion = Prelude.Nothing,+ filters = Prelude.Nothing,+ localeId = Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ sortBy = Prelude.Nothing+ }++-- | The unique identifier that Amazon Lex assigned to the bot.+listImports_botId :: Lens.Lens' ListImports (Prelude.Maybe Prelude.Text)+listImports_botId = Lens.lens (\ListImports' {botId} -> botId) (\s@ListImports' {} a -> s {botId = a} :: ListImports)++-- | The version of the bot to list imports for.+listImports_botVersion :: Lens.Lens' ListImports (Prelude.Maybe Prelude.Text)+listImports_botVersion = Lens.lens (\ListImports' {botVersion} -> botVersion) (\s@ListImports' {} a -> s {botVersion = a} :: ListImports)++-- | Provides the specification of a filter used to limit the bots in the+-- response to only those that match the filter specification. You can only+-- specify one filter and one string to filter on.+listImports_filters :: Lens.Lens' ListImports (Prelude.Maybe (Prelude.NonEmpty ImportFilter))+listImports_filters = Lens.lens (\ListImports' {filters} -> filters) (\s@ListImports' {} a -> s {filters = a} :: ListImports) Prelude.. Lens.mapping Lens.coerced++-- | Specifies the locale that should be present in the list. If you don\'t+-- specify a resource type in the @filters@ parameter, the list contains+-- both bot locales and custom vocabularies.+listImports_localeId :: Lens.Lens' ListImports (Prelude.Maybe Prelude.Text)+listImports_localeId = Lens.lens (\ListImports' {localeId} -> localeId) (\s@ListImports' {} a -> s {localeId = a} :: ListImports)++-- | The maximum number of imports to return in each page of results. If+-- there are fewer results than the max page size, only the actual number+-- of results are returned.+listImports_maxResults :: Lens.Lens' ListImports (Prelude.Maybe Prelude.Natural)+listImports_maxResults = Lens.lens (\ListImports' {maxResults} -> maxResults) (\s@ListImports' {} a -> s {maxResults = a} :: ListImports)++-- | If the response from the @ListImports@ operation contains more results+-- than specified in the @maxResults@ parameter, a token is returned in the+-- response.+--+-- Use the returned token in the @nextToken@ parameter of a @ListImports@+-- request to return the next page of results. For a complete set of+-- results, call the @ListImports@ operation until the @nextToken@ returned+-- in the response is null.+listImports_nextToken :: Lens.Lens' ListImports (Prelude.Maybe Prelude.Text)+listImports_nextToken = Lens.lens (\ListImports' {nextToken} -> nextToken) (\s@ListImports' {} a -> s {nextToken = a} :: ListImports)++-- | Determines the field that the list of imports is sorted by. You can sort+-- by the @LastUpdatedDateTime@ field in ascending or descending order.+listImports_sortBy :: Lens.Lens' ListImports (Prelude.Maybe ImportSortBy)+listImports_sortBy = Lens.lens (\ListImports' {sortBy} -> sortBy) (\s@ListImports' {} a -> s {sortBy = a} :: ListImports)++instance Core.AWSRequest ListImports where+ type AWSResponse ListImports = ListImportsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListImportsResponse'+ Prelude.<$> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botVersion")+ Prelude.<*> ( x+ Data..?> "importSummaries"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "localeId")+ Prelude.<*> (x Data..?> "nextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListImports where+ hashWithSalt _salt ListImports' {..} =+ _salt+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` localeId+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` sortBy++instance Prelude.NFData ListImports where+ rnf ListImports' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf filters+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf sortBy++instance Data.ToHeaders ListImports where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListImports where+ toJSON ListImports' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("botId" Data..=) Prelude.<$> botId,+ ("botVersion" Data..=) Prelude.<$> botVersion,+ ("filters" Data..=) Prelude.<$> filters,+ ("localeId" Data..=) Prelude.<$> localeId,+ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken,+ ("sortBy" Data..=) Prelude.<$> sortBy+ ]+ )++instance Data.ToPath ListImports where+ toPath = Prelude.const "/imports/"++instance Data.ToQuery ListImports where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListImportsResponse' smart constructor.+data ListImportsResponse = ListImportsResponse'+ { -- | The unique identifier assigned by Amazon Lex to the bot.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The version of the bot that was imported. It will always be @DRAFT@.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | Summary information for the imports that meet the filter criteria+ -- specified in the request. The length of the list is specified in the+ -- @maxResults@ parameter. If there are more imports available, the+ -- @nextToken@ field contains a token to get the next page of results.+ importSummaries :: Prelude.Maybe [ImportSummary],+ -- | The locale specified in the request.+ localeId :: Prelude.Maybe Prelude.Text,+ -- | A token that indicates whether there are more results to return in a+ -- response to the @ListImports@ operation. If the @nextToken@ field is+ -- present, you send the contents as the @nextToken@ parameter of a+ -- @ListImports@ operation request to get the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListImportsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'listImportsResponse_botId' - The unique identifier assigned by Amazon Lex to the bot.+--+-- 'botVersion', 'listImportsResponse_botVersion' - The version of the bot that was imported. It will always be @DRAFT@.+--+-- 'importSummaries', 'listImportsResponse_importSummaries' - Summary information for the imports that meet the filter criteria+-- specified in the request. The length of the list is specified in the+-- @maxResults@ parameter. If there are more imports available, the+-- @nextToken@ field contains a token to get the next page of results.+--+-- 'localeId', 'listImportsResponse_localeId' - The locale specified in the request.+--+-- 'nextToken', 'listImportsResponse_nextToken' - A token that indicates whether there are more results to return in a+-- response to the @ListImports@ operation. If the @nextToken@ field is+-- present, you send the contents as the @nextToken@ parameter of a+-- @ListImports@ operation request to get the next page of results.+--+-- 'httpStatus', 'listImportsResponse_httpStatus' - The response's http status code.+newListImportsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListImportsResponse+newListImportsResponse pHttpStatus_ =+ ListImportsResponse'+ { botId = Prelude.Nothing,+ botVersion = Prelude.Nothing,+ importSummaries = Prelude.Nothing,+ localeId = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The unique identifier assigned by Amazon Lex to the bot.+listImportsResponse_botId :: Lens.Lens' ListImportsResponse (Prelude.Maybe Prelude.Text)+listImportsResponse_botId = Lens.lens (\ListImportsResponse' {botId} -> botId) (\s@ListImportsResponse' {} a -> s {botId = a} :: ListImportsResponse)++-- | The version of the bot that was imported. It will always be @DRAFT@.+listImportsResponse_botVersion :: Lens.Lens' ListImportsResponse (Prelude.Maybe Prelude.Text)+listImportsResponse_botVersion = Lens.lens (\ListImportsResponse' {botVersion} -> botVersion) (\s@ListImportsResponse' {} a -> s {botVersion = a} :: ListImportsResponse)++-- | Summary information for the imports that meet the filter criteria+-- specified in the request. The length of the list is specified in the+-- @maxResults@ parameter. If there are more imports available, the+-- @nextToken@ field contains a token to get the next page of results.+listImportsResponse_importSummaries :: Lens.Lens' ListImportsResponse (Prelude.Maybe [ImportSummary])+listImportsResponse_importSummaries = Lens.lens (\ListImportsResponse' {importSummaries} -> importSummaries) (\s@ListImportsResponse' {} a -> s {importSummaries = a} :: ListImportsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The locale specified in the request.+listImportsResponse_localeId :: Lens.Lens' ListImportsResponse (Prelude.Maybe Prelude.Text)+listImportsResponse_localeId = Lens.lens (\ListImportsResponse' {localeId} -> localeId) (\s@ListImportsResponse' {} a -> s {localeId = a} :: ListImportsResponse)++-- | A token that indicates whether there are more results to return in a+-- response to the @ListImports@ operation. If the @nextToken@ field is+-- present, you send the contents as the @nextToken@ parameter of a+-- @ListImports@ operation request to get the next page of results.+listImportsResponse_nextToken :: Lens.Lens' ListImportsResponse (Prelude.Maybe Prelude.Text)+listImportsResponse_nextToken = Lens.lens (\ListImportsResponse' {nextToken} -> nextToken) (\s@ListImportsResponse' {} a -> s {nextToken = a} :: ListImportsResponse)++-- | The response's http status code.+listImportsResponse_httpStatus :: Lens.Lens' ListImportsResponse Prelude.Int+listImportsResponse_httpStatus = Lens.lens (\ListImportsResponse' {httpStatus} -> httpStatus) (\s@ListImportsResponse' {} a -> s {httpStatus = a} :: ListImportsResponse)++instance Prelude.NFData ListImportsResponse where+ rnf ListImportsResponse' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf importSummaries+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/ListIntents.hs view
@@ -0,0 +1,374 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.ListIntents+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Get a list of intents that meet the specified criteria.+module Amazonka.LexV2Models.ListIntents+ ( -- * Creating a Request+ ListIntents (..),+ newListIntents,++ -- * Request Lenses+ listIntents_filters,+ listIntents_maxResults,+ listIntents_nextToken,+ listIntents_sortBy,+ listIntents_botId,+ listIntents_botVersion,+ listIntents_localeId,++ -- * Destructuring the Response+ ListIntentsResponse (..),+ newListIntentsResponse,++ -- * Response Lenses+ listIntentsResponse_botId,+ listIntentsResponse_botVersion,+ listIntentsResponse_intentSummaries,+ listIntentsResponse_localeId,+ listIntentsResponse_nextToken,+ listIntentsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListIntents' smart constructor.+data ListIntents = ListIntents'+ { -- | Provides the specification of a filter used to limit the intents in the+ -- response to only those that match the filter specification. You can only+ -- specify one filter and only one string to filter on.+ filters :: Prelude.Maybe (Prelude.NonEmpty IntentFilter),+ -- | The maximum number of intents to return in each page of results. If+ -- there are fewer results than the max page size, only the actual number+ -- of results are returned.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | If the response from the @ListIntents@ operation contains more results+ -- than specified in the @maxResults@ parameter, a token is returned in the+ -- response.+ --+ -- Use the returned token in the @nextToken@ parameter of a @ListIntents@+ -- request to return the next page of results. For a complete set of+ -- results, call the @ListIntents@ operation until the @nextToken@ returned+ -- in the response is null.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | Determines the sort order for the response from the @ListIntents@+ -- operation. You can choose to sort by the intent name or last updated+ -- date in either ascending or descending order.+ sortBy :: Prelude.Maybe IntentSortBy,+ -- | The unique identifier of the bot that contains the intent.+ botId :: Prelude.Text,+ -- | The version of the bot that contains the intent.+ botVersion :: Prelude.Text,+ -- | The identifier of the language and locale of the intents to list. The+ -- string must match one of the supported locales. For more information,+ -- see+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+ localeId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListIntents' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'filters', 'listIntents_filters' - Provides the specification of a filter used to limit the intents in the+-- response to only those that match the filter specification. You can only+-- specify one filter and only one string to filter on.+--+-- 'maxResults', 'listIntents_maxResults' - The maximum number of intents to return in each page of results. If+-- there are fewer results than the max page size, only the actual number+-- of results are returned.+--+-- 'nextToken', 'listIntents_nextToken' - If the response from the @ListIntents@ operation contains more results+-- than specified in the @maxResults@ parameter, a token is returned in the+-- response.+--+-- Use the returned token in the @nextToken@ parameter of a @ListIntents@+-- request to return the next page of results. For a complete set of+-- results, call the @ListIntents@ operation until the @nextToken@ returned+-- in the response is null.+--+-- 'sortBy', 'listIntents_sortBy' - Determines the sort order for the response from the @ListIntents@+-- operation. You can choose to sort by the intent name or last updated+-- date in either ascending or descending order.+--+-- 'botId', 'listIntents_botId' - The unique identifier of the bot that contains the intent.+--+-- 'botVersion', 'listIntents_botVersion' - The version of the bot that contains the intent.+--+-- 'localeId', 'listIntents_localeId' - The identifier of the language and locale of the intents to list. The+-- string must match one of the supported locales. For more information,+-- see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+newListIntents ::+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ -- | 'localeId'+ Prelude.Text ->+ ListIntents+newListIntents pBotId_ pBotVersion_ pLocaleId_ =+ ListIntents'+ { filters = Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ sortBy = Prelude.Nothing,+ botId = pBotId_,+ botVersion = pBotVersion_,+ localeId = pLocaleId_+ }++-- | Provides the specification of a filter used to limit the intents in the+-- response to only those that match the filter specification. You can only+-- specify one filter and only one string to filter on.+listIntents_filters :: Lens.Lens' ListIntents (Prelude.Maybe (Prelude.NonEmpty IntentFilter))+listIntents_filters = Lens.lens (\ListIntents' {filters} -> filters) (\s@ListIntents' {} a -> s {filters = a} :: ListIntents) Prelude.. Lens.mapping Lens.coerced++-- | The maximum number of intents to return in each page of results. If+-- there are fewer results than the max page size, only the actual number+-- of results are returned.+listIntents_maxResults :: Lens.Lens' ListIntents (Prelude.Maybe Prelude.Natural)+listIntents_maxResults = Lens.lens (\ListIntents' {maxResults} -> maxResults) (\s@ListIntents' {} a -> s {maxResults = a} :: ListIntents)++-- | If the response from the @ListIntents@ operation contains more results+-- than specified in the @maxResults@ parameter, a token is returned in the+-- response.+--+-- Use the returned token in the @nextToken@ parameter of a @ListIntents@+-- request to return the next page of results. For a complete set of+-- results, call the @ListIntents@ operation until the @nextToken@ returned+-- in the response is null.+listIntents_nextToken :: Lens.Lens' ListIntents (Prelude.Maybe Prelude.Text)+listIntents_nextToken = Lens.lens (\ListIntents' {nextToken} -> nextToken) (\s@ListIntents' {} a -> s {nextToken = a} :: ListIntents)++-- | Determines the sort order for the response from the @ListIntents@+-- operation. You can choose to sort by the intent name or last updated+-- date in either ascending or descending order.+listIntents_sortBy :: Lens.Lens' ListIntents (Prelude.Maybe IntentSortBy)+listIntents_sortBy = Lens.lens (\ListIntents' {sortBy} -> sortBy) (\s@ListIntents' {} a -> s {sortBy = a} :: ListIntents)++-- | The unique identifier of the bot that contains the intent.+listIntents_botId :: Lens.Lens' ListIntents Prelude.Text+listIntents_botId = Lens.lens (\ListIntents' {botId} -> botId) (\s@ListIntents' {} a -> s {botId = a} :: ListIntents)++-- | The version of the bot that contains the intent.+listIntents_botVersion :: Lens.Lens' ListIntents Prelude.Text+listIntents_botVersion = Lens.lens (\ListIntents' {botVersion} -> botVersion) (\s@ListIntents' {} a -> s {botVersion = a} :: ListIntents)++-- | The identifier of the language and locale of the intents to list. The+-- string must match one of the supported locales. For more information,+-- see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+listIntents_localeId :: Lens.Lens' ListIntents Prelude.Text+listIntents_localeId = Lens.lens (\ListIntents' {localeId} -> localeId) (\s@ListIntents' {} a -> s {localeId = a} :: ListIntents)++instance Core.AWSRequest ListIntents where+ type AWSResponse ListIntents = ListIntentsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListIntentsResponse'+ Prelude.<$> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botVersion")+ Prelude.<*> ( x+ Data..?> "intentSummaries"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "localeId")+ Prelude.<*> (x Data..?> "nextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListIntents where+ hashWithSalt _salt ListIntents' {..} =+ _salt+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` sortBy+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` localeId++instance Prelude.NFData ListIntents where+ rnf ListIntents' {..} =+ Prelude.rnf filters+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf sortBy+ `Prelude.seq` Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId++instance Data.ToHeaders ListIntents where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListIntents where+ toJSON ListIntents' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("filters" Data..=) Prelude.<$> filters,+ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken,+ ("sortBy" Data..=) Prelude.<$> sortBy+ ]+ )++instance Data.ToPath ListIntents where+ toPath ListIntents' {..} =+ Prelude.mconcat+ [ "/bots/",+ Data.toBS botId,+ "/botversions/",+ Data.toBS botVersion,+ "/botlocales/",+ Data.toBS localeId,+ "/intents/"+ ]++instance Data.ToQuery ListIntents where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListIntentsResponse' smart constructor.+data ListIntentsResponse = ListIntentsResponse'+ { -- | The identifier of the bot that contains the intent.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The version of the bot that contains the intent.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | Summary information for the intents that meet the filter criteria+ -- specified in the request. The length of the list is specified in the+ -- @maxResults@ parameter of the request. If there are more intents+ -- available, the @nextToken@ field contains a token to get the next page+ -- of results.+ intentSummaries :: Prelude.Maybe [IntentSummary],+ -- | The language and locale of the intents in the list.+ localeId :: Prelude.Maybe Prelude.Text,+ -- | A token that indicates whether there are more results to return in a+ -- response to the @ListIntents@ operation. If the @nextToken@ field is+ -- present, you send the contents as the @nextToken@ parameter of a+ -- @ListIntents@ operation request to get the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListIntentsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'listIntentsResponse_botId' - The identifier of the bot that contains the intent.+--+-- 'botVersion', 'listIntentsResponse_botVersion' - The version of the bot that contains the intent.+--+-- 'intentSummaries', 'listIntentsResponse_intentSummaries' - Summary information for the intents that meet the filter criteria+-- specified in the request. The length of the list is specified in the+-- @maxResults@ parameter of the request. If there are more intents+-- available, the @nextToken@ field contains a token to get the next page+-- of results.+--+-- 'localeId', 'listIntentsResponse_localeId' - The language and locale of the intents in the list.+--+-- 'nextToken', 'listIntentsResponse_nextToken' - A token that indicates whether there are more results to return in a+-- response to the @ListIntents@ operation. If the @nextToken@ field is+-- present, you send the contents as the @nextToken@ parameter of a+-- @ListIntents@ operation request to get the next page of results.+--+-- 'httpStatus', 'listIntentsResponse_httpStatus' - The response's http status code.+newListIntentsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListIntentsResponse+newListIntentsResponse pHttpStatus_ =+ ListIntentsResponse'+ { botId = Prelude.Nothing,+ botVersion = Prelude.Nothing,+ intentSummaries = Prelude.Nothing,+ localeId = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The identifier of the bot that contains the intent.+listIntentsResponse_botId :: Lens.Lens' ListIntentsResponse (Prelude.Maybe Prelude.Text)+listIntentsResponse_botId = Lens.lens (\ListIntentsResponse' {botId} -> botId) (\s@ListIntentsResponse' {} a -> s {botId = a} :: ListIntentsResponse)++-- | The version of the bot that contains the intent.+listIntentsResponse_botVersion :: Lens.Lens' ListIntentsResponse (Prelude.Maybe Prelude.Text)+listIntentsResponse_botVersion = Lens.lens (\ListIntentsResponse' {botVersion} -> botVersion) (\s@ListIntentsResponse' {} a -> s {botVersion = a} :: ListIntentsResponse)++-- | Summary information for the intents that meet the filter criteria+-- specified in the request. The length of the list is specified in the+-- @maxResults@ parameter of the request. If there are more intents+-- available, the @nextToken@ field contains a token to get the next page+-- of results.+listIntentsResponse_intentSummaries :: Lens.Lens' ListIntentsResponse (Prelude.Maybe [IntentSummary])+listIntentsResponse_intentSummaries = Lens.lens (\ListIntentsResponse' {intentSummaries} -> intentSummaries) (\s@ListIntentsResponse' {} a -> s {intentSummaries = a} :: ListIntentsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The language and locale of the intents in the list.+listIntentsResponse_localeId :: Lens.Lens' ListIntentsResponse (Prelude.Maybe Prelude.Text)+listIntentsResponse_localeId = Lens.lens (\ListIntentsResponse' {localeId} -> localeId) (\s@ListIntentsResponse' {} a -> s {localeId = a} :: ListIntentsResponse)++-- | A token that indicates whether there are more results to return in a+-- response to the @ListIntents@ operation. If the @nextToken@ field is+-- present, you send the contents as the @nextToken@ parameter of a+-- @ListIntents@ operation request to get the next page of results.+listIntentsResponse_nextToken :: Lens.Lens' ListIntentsResponse (Prelude.Maybe Prelude.Text)+listIntentsResponse_nextToken = Lens.lens (\ListIntentsResponse' {nextToken} -> nextToken) (\s@ListIntentsResponse' {} a -> s {nextToken = a} :: ListIntentsResponse)++-- | The response's http status code.+listIntentsResponse_httpStatus :: Lens.Lens' ListIntentsResponse Prelude.Int+listIntentsResponse_httpStatus = Lens.lens (\ListIntentsResponse' {httpStatus} -> httpStatus) (\s@ListIntentsResponse' {} a -> s {httpStatus = a} :: ListIntentsResponse)++instance Prelude.NFData ListIntentsResponse where+ rnf ListIntentsResponse' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf intentSummaries+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/ListRecommendedIntents.hs view
@@ -0,0 +1,374 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.ListRecommendedIntents+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets a list of recommended intents provided by the bot recommendation+-- that you can use in your bot. Intents in the response are ordered by+-- relevance.+module Amazonka.LexV2Models.ListRecommendedIntents+ ( -- * Creating a Request+ ListRecommendedIntents (..),+ newListRecommendedIntents,++ -- * Request Lenses+ listRecommendedIntents_maxResults,+ listRecommendedIntents_nextToken,+ listRecommendedIntents_botId,+ listRecommendedIntents_botVersion,+ listRecommendedIntents_localeId,+ listRecommendedIntents_botRecommendationId,++ -- * Destructuring the Response+ ListRecommendedIntentsResponse (..),+ newListRecommendedIntentsResponse,++ -- * Response Lenses+ listRecommendedIntentsResponse_botId,+ listRecommendedIntentsResponse_botRecommendationId,+ listRecommendedIntentsResponse_botVersion,+ listRecommendedIntentsResponse_localeId,+ listRecommendedIntentsResponse_nextToken,+ listRecommendedIntentsResponse_summaryList,+ listRecommendedIntentsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListRecommendedIntents' smart constructor.+data ListRecommendedIntents = ListRecommendedIntents'+ { -- | The maximum number of bot recommendations to return in each page of+ -- results. If there are fewer results than the max page size, only the+ -- actual number of results are returned.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | If the response from the ListRecommendedIntents operation contains more+ -- results than specified in the maxResults parameter, a token is returned+ -- in the response. Use that token in the nextToken parameter to return the+ -- next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier of the bot associated with the recommended+ -- intents.+ botId :: Prelude.Text,+ -- | The version of the bot that contains the recommended intents.+ botVersion :: Prelude.Text,+ -- | The identifier of the language and locale of the recommended intents.+ localeId :: Prelude.Text,+ -- | The identifier of the bot recommendation that contains the recommended+ -- intents.+ botRecommendationId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListRecommendedIntents' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxResults', 'listRecommendedIntents_maxResults' - The maximum number of bot recommendations to return in each page of+-- results. If there are fewer results than the max page size, only the+-- actual number of results are returned.+--+-- 'nextToken', 'listRecommendedIntents_nextToken' - If the response from the ListRecommendedIntents operation contains more+-- results than specified in the maxResults parameter, a token is returned+-- in the response. Use that token in the nextToken parameter to return the+-- next page of results.+--+-- 'botId', 'listRecommendedIntents_botId' - The unique identifier of the bot associated with the recommended+-- intents.+--+-- 'botVersion', 'listRecommendedIntents_botVersion' - The version of the bot that contains the recommended intents.+--+-- 'localeId', 'listRecommendedIntents_localeId' - The identifier of the language and locale of the recommended intents.+--+-- 'botRecommendationId', 'listRecommendedIntents_botRecommendationId' - The identifier of the bot recommendation that contains the recommended+-- intents.+newListRecommendedIntents ::+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ -- | 'localeId'+ Prelude.Text ->+ -- | 'botRecommendationId'+ Prelude.Text ->+ ListRecommendedIntents+newListRecommendedIntents+ pBotId_+ pBotVersion_+ pLocaleId_+ pBotRecommendationId_ =+ ListRecommendedIntents'+ { maxResults =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ botId = pBotId_,+ botVersion = pBotVersion_,+ localeId = pLocaleId_,+ botRecommendationId = pBotRecommendationId_+ }++-- | The maximum number of bot recommendations to return in each page of+-- results. If there are fewer results than the max page size, only the+-- actual number of results are returned.+listRecommendedIntents_maxResults :: Lens.Lens' ListRecommendedIntents (Prelude.Maybe Prelude.Natural)+listRecommendedIntents_maxResults = Lens.lens (\ListRecommendedIntents' {maxResults} -> maxResults) (\s@ListRecommendedIntents' {} a -> s {maxResults = a} :: ListRecommendedIntents)++-- | If the response from the ListRecommendedIntents operation contains more+-- results than specified in the maxResults parameter, a token is returned+-- in the response. Use that token in the nextToken parameter to return the+-- next page of results.+listRecommendedIntents_nextToken :: Lens.Lens' ListRecommendedIntents (Prelude.Maybe Prelude.Text)+listRecommendedIntents_nextToken = Lens.lens (\ListRecommendedIntents' {nextToken} -> nextToken) (\s@ListRecommendedIntents' {} a -> s {nextToken = a} :: ListRecommendedIntents)++-- | The unique identifier of the bot associated with the recommended+-- intents.+listRecommendedIntents_botId :: Lens.Lens' ListRecommendedIntents Prelude.Text+listRecommendedIntents_botId = Lens.lens (\ListRecommendedIntents' {botId} -> botId) (\s@ListRecommendedIntents' {} a -> s {botId = a} :: ListRecommendedIntents)++-- | The version of the bot that contains the recommended intents.+listRecommendedIntents_botVersion :: Lens.Lens' ListRecommendedIntents Prelude.Text+listRecommendedIntents_botVersion = Lens.lens (\ListRecommendedIntents' {botVersion} -> botVersion) (\s@ListRecommendedIntents' {} a -> s {botVersion = a} :: ListRecommendedIntents)++-- | The identifier of the language and locale of the recommended intents.+listRecommendedIntents_localeId :: Lens.Lens' ListRecommendedIntents Prelude.Text+listRecommendedIntents_localeId = Lens.lens (\ListRecommendedIntents' {localeId} -> localeId) (\s@ListRecommendedIntents' {} a -> s {localeId = a} :: ListRecommendedIntents)++-- | The identifier of the bot recommendation that contains the recommended+-- intents.+listRecommendedIntents_botRecommendationId :: Lens.Lens' ListRecommendedIntents Prelude.Text+listRecommendedIntents_botRecommendationId = Lens.lens (\ListRecommendedIntents' {botRecommendationId} -> botRecommendationId) (\s@ListRecommendedIntents' {} a -> s {botRecommendationId = a} :: ListRecommendedIntents)++instance Core.AWSRequest ListRecommendedIntents where+ type+ AWSResponse ListRecommendedIntents =+ ListRecommendedIntentsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListRecommendedIntentsResponse'+ Prelude.<$> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botRecommendationId")+ Prelude.<*> (x Data..?> "botVersion")+ Prelude.<*> (x Data..?> "localeId")+ Prelude.<*> (x Data..?> "nextToken")+ Prelude.<*> (x Data..?> "summaryList" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListRecommendedIntents where+ hashWithSalt _salt ListRecommendedIntents' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` localeId+ `Prelude.hashWithSalt` botRecommendationId++instance Prelude.NFData ListRecommendedIntents where+ rnf ListRecommendedIntents' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf botRecommendationId++instance Data.ToHeaders ListRecommendedIntents where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListRecommendedIntents where+ toJSON ListRecommendedIntents' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken+ ]+ )++instance Data.ToPath ListRecommendedIntents where+ toPath ListRecommendedIntents' {..} =+ Prelude.mconcat+ [ "/bots/",+ Data.toBS botId,+ "/botversions/",+ Data.toBS botVersion,+ "/botlocales/",+ Data.toBS localeId,+ "/botrecommendations/",+ Data.toBS botRecommendationId,+ "/intents"+ ]++instance Data.ToQuery ListRecommendedIntents where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListRecommendedIntentsResponse' smart constructor.+data ListRecommendedIntentsResponse = ListRecommendedIntentsResponse'+ { -- | The unique identifier of the bot associated with the recommended intent.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The identifier of the bot recommendation that contains the recommended+ -- intent.+ botRecommendationId :: Prelude.Maybe Prelude.Text,+ -- | The version of the bot that contains the intent.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | The identifier of the language and locale of the intents to list. The+ -- string must match one of the supported locales. For more information,+ -- see+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+ localeId :: Prelude.Maybe Prelude.Text,+ -- | A token that indicates whether there are more results to return in a+ -- response to the ListRecommendedIntents operation. If the nextToken field+ -- is present, you send the contents as the nextToken parameter of a+ -- ListRecommendedIntents operation request to get the next page of+ -- results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | Summary information for the intents that meet the filter criteria+ -- specified in the request. The length of the list is specified in the+ -- maxResults parameter of the request. If there are more intents+ -- available, the nextToken field contains a token to get the next page of+ -- results.+ summaryList :: Prelude.Maybe [RecommendedIntentSummary],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListRecommendedIntentsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'listRecommendedIntentsResponse_botId' - The unique identifier of the bot associated with the recommended intent.+--+-- 'botRecommendationId', 'listRecommendedIntentsResponse_botRecommendationId' - The identifier of the bot recommendation that contains the recommended+-- intent.+--+-- 'botVersion', 'listRecommendedIntentsResponse_botVersion' - The version of the bot that contains the intent.+--+-- 'localeId', 'listRecommendedIntentsResponse_localeId' - The identifier of the language and locale of the intents to list. The+-- string must match one of the supported locales. For more information,+-- see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+--+-- 'nextToken', 'listRecommendedIntentsResponse_nextToken' - A token that indicates whether there are more results to return in a+-- response to the ListRecommendedIntents operation. If the nextToken field+-- is present, you send the contents as the nextToken parameter of a+-- ListRecommendedIntents operation request to get the next page of+-- results.+--+-- 'summaryList', 'listRecommendedIntentsResponse_summaryList' - Summary information for the intents that meet the filter criteria+-- specified in the request. The length of the list is specified in the+-- maxResults parameter of the request. If there are more intents+-- available, the nextToken field contains a token to get the next page of+-- results.+--+-- 'httpStatus', 'listRecommendedIntentsResponse_httpStatus' - The response's http status code.+newListRecommendedIntentsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListRecommendedIntentsResponse+newListRecommendedIntentsResponse pHttpStatus_ =+ ListRecommendedIntentsResponse'+ { botId =+ Prelude.Nothing,+ botRecommendationId = Prelude.Nothing,+ botVersion = Prelude.Nothing,+ localeId = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ summaryList = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The unique identifier of the bot associated with the recommended intent.+listRecommendedIntentsResponse_botId :: Lens.Lens' ListRecommendedIntentsResponse (Prelude.Maybe Prelude.Text)+listRecommendedIntentsResponse_botId = Lens.lens (\ListRecommendedIntentsResponse' {botId} -> botId) (\s@ListRecommendedIntentsResponse' {} a -> s {botId = a} :: ListRecommendedIntentsResponse)++-- | The identifier of the bot recommendation that contains the recommended+-- intent.+listRecommendedIntentsResponse_botRecommendationId :: Lens.Lens' ListRecommendedIntentsResponse (Prelude.Maybe Prelude.Text)+listRecommendedIntentsResponse_botRecommendationId = Lens.lens (\ListRecommendedIntentsResponse' {botRecommendationId} -> botRecommendationId) (\s@ListRecommendedIntentsResponse' {} a -> s {botRecommendationId = a} :: ListRecommendedIntentsResponse)++-- | The version of the bot that contains the intent.+listRecommendedIntentsResponse_botVersion :: Lens.Lens' ListRecommendedIntentsResponse (Prelude.Maybe Prelude.Text)+listRecommendedIntentsResponse_botVersion = Lens.lens (\ListRecommendedIntentsResponse' {botVersion} -> botVersion) (\s@ListRecommendedIntentsResponse' {} a -> s {botVersion = a} :: ListRecommendedIntentsResponse)++-- | The identifier of the language and locale of the intents to list. The+-- string must match one of the supported locales. For more information,+-- see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+listRecommendedIntentsResponse_localeId :: Lens.Lens' ListRecommendedIntentsResponse (Prelude.Maybe Prelude.Text)+listRecommendedIntentsResponse_localeId = Lens.lens (\ListRecommendedIntentsResponse' {localeId} -> localeId) (\s@ListRecommendedIntentsResponse' {} a -> s {localeId = a} :: ListRecommendedIntentsResponse)++-- | A token that indicates whether there are more results to return in a+-- response to the ListRecommendedIntents operation. If the nextToken field+-- is present, you send the contents as the nextToken parameter of a+-- ListRecommendedIntents operation request to get the next page of+-- results.+listRecommendedIntentsResponse_nextToken :: Lens.Lens' ListRecommendedIntentsResponse (Prelude.Maybe Prelude.Text)+listRecommendedIntentsResponse_nextToken = Lens.lens (\ListRecommendedIntentsResponse' {nextToken} -> nextToken) (\s@ListRecommendedIntentsResponse' {} a -> s {nextToken = a} :: ListRecommendedIntentsResponse)++-- | Summary information for the intents that meet the filter criteria+-- specified in the request. The length of the list is specified in the+-- maxResults parameter of the request. If there are more intents+-- available, the nextToken field contains a token to get the next page of+-- results.+listRecommendedIntentsResponse_summaryList :: Lens.Lens' ListRecommendedIntentsResponse (Prelude.Maybe [RecommendedIntentSummary])+listRecommendedIntentsResponse_summaryList = Lens.lens (\ListRecommendedIntentsResponse' {summaryList} -> summaryList) (\s@ListRecommendedIntentsResponse' {} a -> s {summaryList = a} :: ListRecommendedIntentsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listRecommendedIntentsResponse_httpStatus :: Lens.Lens' ListRecommendedIntentsResponse Prelude.Int+listRecommendedIntentsResponse_httpStatus = Lens.lens (\ListRecommendedIntentsResponse' {httpStatus} -> httpStatus) (\s@ListRecommendedIntentsResponse' {} a -> s {httpStatus = a} :: ListRecommendedIntentsResponse)++instance+ Prelude.NFData+ ListRecommendedIntentsResponse+ where+ rnf ListRecommendedIntentsResponse' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botRecommendationId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf summaryList+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/ListSlotTypes.hs view
@@ -0,0 +1,364 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.ListSlotTypes+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets a list of slot types that match the specified criteria.+module Amazonka.LexV2Models.ListSlotTypes+ ( -- * Creating a Request+ ListSlotTypes (..),+ newListSlotTypes,++ -- * Request Lenses+ listSlotTypes_filters,+ listSlotTypes_maxResults,+ listSlotTypes_nextToken,+ listSlotTypes_sortBy,+ listSlotTypes_botId,+ listSlotTypes_botVersion,+ listSlotTypes_localeId,++ -- * Destructuring the Response+ ListSlotTypesResponse (..),+ newListSlotTypesResponse,++ -- * Response Lenses+ listSlotTypesResponse_botId,+ listSlotTypesResponse_botVersion,+ listSlotTypesResponse_localeId,+ listSlotTypesResponse_nextToken,+ listSlotTypesResponse_slotTypeSummaries,+ listSlotTypesResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListSlotTypes' smart constructor.+data ListSlotTypes = ListSlotTypes'+ { -- | Provides the specification of a filter used to limit the slot types in+ -- the response to only those that match the filter specification. You can+ -- only specify one filter and only one string to filter on.+ filters :: Prelude.Maybe (Prelude.NonEmpty SlotTypeFilter),+ -- | The maximum number of slot types to return in each page of results. If+ -- there are fewer results than the max page size, only the actual number+ -- of results are returned.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | If the response from the @ListSlotTypes@ operation contains more results+ -- than specified in the @maxResults@ parameter, a token is returned in the+ -- response. Use that token in the @nextToken@ parameter to return the next+ -- page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | Determines the sort order for the response from the @ListSlotTypes@+ -- operation. You can choose to sort by the slot type name or last updated+ -- date in either ascending or descending order.+ sortBy :: Prelude.Maybe SlotTypeSortBy,+ -- | The unique identifier of the bot that contains the slot types.+ botId :: Prelude.Text,+ -- | The version of the bot that contains the slot type.+ botVersion :: Prelude.Text,+ -- | The identifier of the language and locale of the slot types to list. The+ -- string must match one of the supported locales. For more information,+ -- see+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+ localeId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListSlotTypes' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'filters', 'listSlotTypes_filters' - Provides the specification of a filter used to limit the slot types in+-- the response to only those that match the filter specification. You can+-- only specify one filter and only one string to filter on.+--+-- 'maxResults', 'listSlotTypes_maxResults' - The maximum number of slot types to return in each page of results. If+-- there are fewer results than the max page size, only the actual number+-- of results are returned.+--+-- 'nextToken', 'listSlotTypes_nextToken' - If the response from the @ListSlotTypes@ operation contains more results+-- than specified in the @maxResults@ parameter, a token is returned in the+-- response. Use that token in the @nextToken@ parameter to return the next+-- page of results.+--+-- 'sortBy', 'listSlotTypes_sortBy' - Determines the sort order for the response from the @ListSlotTypes@+-- operation. You can choose to sort by the slot type name or last updated+-- date in either ascending or descending order.+--+-- 'botId', 'listSlotTypes_botId' - The unique identifier of the bot that contains the slot types.+--+-- 'botVersion', 'listSlotTypes_botVersion' - The version of the bot that contains the slot type.+--+-- 'localeId', 'listSlotTypes_localeId' - The identifier of the language and locale of the slot types to list. The+-- string must match one of the supported locales. For more information,+-- see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+newListSlotTypes ::+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ -- | 'localeId'+ Prelude.Text ->+ ListSlotTypes+newListSlotTypes pBotId_ pBotVersion_ pLocaleId_ =+ ListSlotTypes'+ { filters = Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ sortBy = Prelude.Nothing,+ botId = pBotId_,+ botVersion = pBotVersion_,+ localeId = pLocaleId_+ }++-- | Provides the specification of a filter used to limit the slot types in+-- the response to only those that match the filter specification. You can+-- only specify one filter and only one string to filter on.+listSlotTypes_filters :: Lens.Lens' ListSlotTypes (Prelude.Maybe (Prelude.NonEmpty SlotTypeFilter))+listSlotTypes_filters = Lens.lens (\ListSlotTypes' {filters} -> filters) (\s@ListSlotTypes' {} a -> s {filters = a} :: ListSlotTypes) Prelude.. Lens.mapping Lens.coerced++-- | The maximum number of slot types to return in each page of results. If+-- there are fewer results than the max page size, only the actual number+-- of results are returned.+listSlotTypes_maxResults :: Lens.Lens' ListSlotTypes (Prelude.Maybe Prelude.Natural)+listSlotTypes_maxResults = Lens.lens (\ListSlotTypes' {maxResults} -> maxResults) (\s@ListSlotTypes' {} a -> s {maxResults = a} :: ListSlotTypes)++-- | If the response from the @ListSlotTypes@ operation contains more results+-- than specified in the @maxResults@ parameter, a token is returned in the+-- response. Use that token in the @nextToken@ parameter to return the next+-- page of results.+listSlotTypes_nextToken :: Lens.Lens' ListSlotTypes (Prelude.Maybe Prelude.Text)+listSlotTypes_nextToken = Lens.lens (\ListSlotTypes' {nextToken} -> nextToken) (\s@ListSlotTypes' {} a -> s {nextToken = a} :: ListSlotTypes)++-- | Determines the sort order for the response from the @ListSlotTypes@+-- operation. You can choose to sort by the slot type name or last updated+-- date in either ascending or descending order.+listSlotTypes_sortBy :: Lens.Lens' ListSlotTypes (Prelude.Maybe SlotTypeSortBy)+listSlotTypes_sortBy = Lens.lens (\ListSlotTypes' {sortBy} -> sortBy) (\s@ListSlotTypes' {} a -> s {sortBy = a} :: ListSlotTypes)++-- | The unique identifier of the bot that contains the slot types.+listSlotTypes_botId :: Lens.Lens' ListSlotTypes Prelude.Text+listSlotTypes_botId = Lens.lens (\ListSlotTypes' {botId} -> botId) (\s@ListSlotTypes' {} a -> s {botId = a} :: ListSlotTypes)++-- | The version of the bot that contains the slot type.+listSlotTypes_botVersion :: Lens.Lens' ListSlotTypes Prelude.Text+listSlotTypes_botVersion = Lens.lens (\ListSlotTypes' {botVersion} -> botVersion) (\s@ListSlotTypes' {} a -> s {botVersion = a} :: ListSlotTypes)++-- | The identifier of the language and locale of the slot types to list. The+-- string must match one of the supported locales. For more information,+-- see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+listSlotTypes_localeId :: Lens.Lens' ListSlotTypes Prelude.Text+listSlotTypes_localeId = Lens.lens (\ListSlotTypes' {localeId} -> localeId) (\s@ListSlotTypes' {} a -> s {localeId = a} :: ListSlotTypes)++instance Core.AWSRequest ListSlotTypes where+ type+ AWSResponse ListSlotTypes =+ ListSlotTypesResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListSlotTypesResponse'+ Prelude.<$> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botVersion")+ Prelude.<*> (x Data..?> "localeId")+ Prelude.<*> (x Data..?> "nextToken")+ Prelude.<*> ( x+ Data..?> "slotTypeSummaries"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListSlotTypes where+ hashWithSalt _salt ListSlotTypes' {..} =+ _salt+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` sortBy+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` localeId++instance Prelude.NFData ListSlotTypes where+ rnf ListSlotTypes' {..} =+ Prelude.rnf filters+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf sortBy+ `Prelude.seq` Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId++instance Data.ToHeaders ListSlotTypes where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListSlotTypes where+ toJSON ListSlotTypes' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("filters" Data..=) Prelude.<$> filters,+ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken,+ ("sortBy" Data..=) Prelude.<$> sortBy+ ]+ )++instance Data.ToPath ListSlotTypes where+ toPath ListSlotTypes' {..} =+ Prelude.mconcat+ [ "/bots/",+ Data.toBS botId,+ "/botversions/",+ Data.toBS botVersion,+ "/botlocales/",+ Data.toBS localeId,+ "/slottypes/"+ ]++instance Data.ToQuery ListSlotTypes where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListSlotTypesResponse' smart constructor.+data ListSlotTypesResponse = ListSlotTypesResponse'+ { -- | The identifier of the bot that contains the slot types.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The version of the bot that contains the slot types.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | The language and local of the slot types in the list.+ localeId :: Prelude.Maybe Prelude.Text,+ -- | A token that indicates whether there are more results to return in a+ -- response to the @ListSlotTypes@ operation. If the @nextToken@ field is+ -- present, you send the contents as the @nextToken@ parameter of a+ -- @ListSlotTypes@ operation request to get the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | Summary information for the slot types that meet the filter criteria+ -- specified in the request. The length of the list is specified in the+ -- @maxResults@ parameter of the request. If there are more slot types+ -- available, the @nextToken@ field contains a token to get the next page+ -- of results.+ slotTypeSummaries :: Prelude.Maybe [SlotTypeSummary],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListSlotTypesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'listSlotTypesResponse_botId' - The identifier of the bot that contains the slot types.+--+-- 'botVersion', 'listSlotTypesResponse_botVersion' - The version of the bot that contains the slot types.+--+-- 'localeId', 'listSlotTypesResponse_localeId' - The language and local of the slot types in the list.+--+-- 'nextToken', 'listSlotTypesResponse_nextToken' - A token that indicates whether there are more results to return in a+-- response to the @ListSlotTypes@ operation. If the @nextToken@ field is+-- present, you send the contents as the @nextToken@ parameter of a+-- @ListSlotTypes@ operation request to get the next page of results.+--+-- 'slotTypeSummaries', 'listSlotTypesResponse_slotTypeSummaries' - Summary information for the slot types that meet the filter criteria+-- specified in the request. The length of the list is specified in the+-- @maxResults@ parameter of the request. If there are more slot types+-- available, the @nextToken@ field contains a token to get the next page+-- of results.+--+-- 'httpStatus', 'listSlotTypesResponse_httpStatus' - The response's http status code.+newListSlotTypesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListSlotTypesResponse+newListSlotTypesResponse pHttpStatus_ =+ ListSlotTypesResponse'+ { botId = Prelude.Nothing,+ botVersion = Prelude.Nothing,+ localeId = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ slotTypeSummaries = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The identifier of the bot that contains the slot types.+listSlotTypesResponse_botId :: Lens.Lens' ListSlotTypesResponse (Prelude.Maybe Prelude.Text)+listSlotTypesResponse_botId = Lens.lens (\ListSlotTypesResponse' {botId} -> botId) (\s@ListSlotTypesResponse' {} a -> s {botId = a} :: ListSlotTypesResponse)++-- | The version of the bot that contains the slot types.+listSlotTypesResponse_botVersion :: Lens.Lens' ListSlotTypesResponse (Prelude.Maybe Prelude.Text)+listSlotTypesResponse_botVersion = Lens.lens (\ListSlotTypesResponse' {botVersion} -> botVersion) (\s@ListSlotTypesResponse' {} a -> s {botVersion = a} :: ListSlotTypesResponse)++-- | The language and local of the slot types in the list.+listSlotTypesResponse_localeId :: Lens.Lens' ListSlotTypesResponse (Prelude.Maybe Prelude.Text)+listSlotTypesResponse_localeId = Lens.lens (\ListSlotTypesResponse' {localeId} -> localeId) (\s@ListSlotTypesResponse' {} a -> s {localeId = a} :: ListSlotTypesResponse)++-- | A token that indicates whether there are more results to return in a+-- response to the @ListSlotTypes@ operation. If the @nextToken@ field is+-- present, you send the contents as the @nextToken@ parameter of a+-- @ListSlotTypes@ operation request to get the next page of results.+listSlotTypesResponse_nextToken :: Lens.Lens' ListSlotTypesResponse (Prelude.Maybe Prelude.Text)+listSlotTypesResponse_nextToken = Lens.lens (\ListSlotTypesResponse' {nextToken} -> nextToken) (\s@ListSlotTypesResponse' {} a -> s {nextToken = a} :: ListSlotTypesResponse)++-- | Summary information for the slot types that meet the filter criteria+-- specified in the request. The length of the list is specified in the+-- @maxResults@ parameter of the request. If there are more slot types+-- available, the @nextToken@ field contains a token to get the next page+-- of results.+listSlotTypesResponse_slotTypeSummaries :: Lens.Lens' ListSlotTypesResponse (Prelude.Maybe [SlotTypeSummary])+listSlotTypesResponse_slotTypeSummaries = Lens.lens (\ListSlotTypesResponse' {slotTypeSummaries} -> slotTypeSummaries) (\s@ListSlotTypesResponse' {} a -> s {slotTypeSummaries = a} :: ListSlotTypesResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listSlotTypesResponse_httpStatus :: Lens.Lens' ListSlotTypesResponse Prelude.Int+listSlotTypesResponse_httpStatus = Lens.lens (\ListSlotTypesResponse' {httpStatus} -> httpStatus) (\s@ListSlotTypesResponse' {} a -> s {httpStatus = a} :: ListSlotTypesResponse)++instance Prelude.NFData ListSlotTypesResponse where+ rnf ListSlotTypesResponse' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf slotTypeSummaries+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/ListSlots.hs view
@@ -0,0 +1,391 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.ListSlots+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets a list of slots that match the specified criteria.+module Amazonka.LexV2Models.ListSlots+ ( -- * Creating a Request+ ListSlots (..),+ newListSlots,++ -- * Request Lenses+ listSlots_filters,+ listSlots_maxResults,+ listSlots_nextToken,+ listSlots_sortBy,+ listSlots_botId,+ listSlots_botVersion,+ listSlots_localeId,+ listSlots_intentId,++ -- * Destructuring the Response+ ListSlotsResponse (..),+ newListSlotsResponse,++ -- * Response Lenses+ listSlotsResponse_botId,+ listSlotsResponse_botVersion,+ listSlotsResponse_intentId,+ listSlotsResponse_localeId,+ listSlotsResponse_nextToken,+ listSlotsResponse_slotSummaries,+ listSlotsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListSlots' smart constructor.+data ListSlots = ListSlots'+ { -- | Provides the specification of a filter used to limit the slots in the+ -- response to only those that match the filter specification. You can only+ -- specify one filter and only one string to filter on.+ filters :: Prelude.Maybe (Prelude.NonEmpty SlotFilter),+ -- | The maximum number of slots to return in each page of results. If there+ -- are fewer results than the max page size, only the actual number of+ -- results are returned.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | If the response from the @ListSlots@ operation contains more results+ -- than specified in the @maxResults@ parameter, a token is returned in the+ -- response. Use that token in the @nextToken@ parameter to return the next+ -- page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | Determines the sort order for the response from the @ListSlots@+ -- operation. You can choose to sort by the slot name or last updated date+ -- in either ascending or descending order.+ sortBy :: Prelude.Maybe SlotSortBy,+ -- | The identifier of the bot that contains the slot.+ botId :: Prelude.Text,+ -- | The version of the bot that contains the slot.+ botVersion :: Prelude.Text,+ -- | The identifier of the language and locale of the slots to list. The+ -- string must match one of the supported locales. For more information,+ -- see+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+ localeId :: Prelude.Text,+ -- | The unique identifier of the intent that contains the slot.+ intentId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListSlots' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'filters', 'listSlots_filters' - Provides the specification of a filter used to limit the slots in the+-- response to only those that match the filter specification. You can only+-- specify one filter and only one string to filter on.+--+-- 'maxResults', 'listSlots_maxResults' - The maximum number of slots to return in each page of results. If there+-- are fewer results than the max page size, only the actual number of+-- results are returned.+--+-- 'nextToken', 'listSlots_nextToken' - If the response from the @ListSlots@ operation contains more results+-- than specified in the @maxResults@ parameter, a token is returned in the+-- response. Use that token in the @nextToken@ parameter to return the next+-- page of results.+--+-- 'sortBy', 'listSlots_sortBy' - Determines the sort order for the response from the @ListSlots@+-- operation. You can choose to sort by the slot name or last updated date+-- in either ascending or descending order.+--+-- 'botId', 'listSlots_botId' - The identifier of the bot that contains the slot.+--+-- 'botVersion', 'listSlots_botVersion' - The version of the bot that contains the slot.+--+-- 'localeId', 'listSlots_localeId' - The identifier of the language and locale of the slots to list. The+-- string must match one of the supported locales. For more information,+-- see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+--+-- 'intentId', 'listSlots_intentId' - The unique identifier of the intent that contains the slot.+newListSlots ::+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ -- | 'localeId'+ Prelude.Text ->+ -- | 'intentId'+ Prelude.Text ->+ ListSlots+newListSlots+ pBotId_+ pBotVersion_+ pLocaleId_+ pIntentId_ =+ ListSlots'+ { filters = Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ sortBy = Prelude.Nothing,+ botId = pBotId_,+ botVersion = pBotVersion_,+ localeId = pLocaleId_,+ intentId = pIntentId_+ }++-- | Provides the specification of a filter used to limit the slots in the+-- response to only those that match the filter specification. You can only+-- specify one filter and only one string to filter on.+listSlots_filters :: Lens.Lens' ListSlots (Prelude.Maybe (Prelude.NonEmpty SlotFilter))+listSlots_filters = Lens.lens (\ListSlots' {filters} -> filters) (\s@ListSlots' {} a -> s {filters = a} :: ListSlots) Prelude.. Lens.mapping Lens.coerced++-- | The maximum number of slots to return in each page of results. If there+-- are fewer results than the max page size, only the actual number of+-- results are returned.+listSlots_maxResults :: Lens.Lens' ListSlots (Prelude.Maybe Prelude.Natural)+listSlots_maxResults = Lens.lens (\ListSlots' {maxResults} -> maxResults) (\s@ListSlots' {} a -> s {maxResults = a} :: ListSlots)++-- | If the response from the @ListSlots@ operation contains more results+-- than specified in the @maxResults@ parameter, a token is returned in the+-- response. Use that token in the @nextToken@ parameter to return the next+-- page of results.+listSlots_nextToken :: Lens.Lens' ListSlots (Prelude.Maybe Prelude.Text)+listSlots_nextToken = Lens.lens (\ListSlots' {nextToken} -> nextToken) (\s@ListSlots' {} a -> s {nextToken = a} :: ListSlots)++-- | Determines the sort order for the response from the @ListSlots@+-- operation. You can choose to sort by the slot name or last updated date+-- in either ascending or descending order.+listSlots_sortBy :: Lens.Lens' ListSlots (Prelude.Maybe SlotSortBy)+listSlots_sortBy = Lens.lens (\ListSlots' {sortBy} -> sortBy) (\s@ListSlots' {} a -> s {sortBy = a} :: ListSlots)++-- | The identifier of the bot that contains the slot.+listSlots_botId :: Lens.Lens' ListSlots Prelude.Text+listSlots_botId = Lens.lens (\ListSlots' {botId} -> botId) (\s@ListSlots' {} a -> s {botId = a} :: ListSlots)++-- | The version of the bot that contains the slot.+listSlots_botVersion :: Lens.Lens' ListSlots Prelude.Text+listSlots_botVersion = Lens.lens (\ListSlots' {botVersion} -> botVersion) (\s@ListSlots' {} a -> s {botVersion = a} :: ListSlots)++-- | The identifier of the language and locale of the slots to list. The+-- string must match one of the supported locales. For more information,+-- see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+listSlots_localeId :: Lens.Lens' ListSlots Prelude.Text+listSlots_localeId = Lens.lens (\ListSlots' {localeId} -> localeId) (\s@ListSlots' {} a -> s {localeId = a} :: ListSlots)++-- | The unique identifier of the intent that contains the slot.+listSlots_intentId :: Lens.Lens' ListSlots Prelude.Text+listSlots_intentId = Lens.lens (\ListSlots' {intentId} -> intentId) (\s@ListSlots' {} a -> s {intentId = a} :: ListSlots)++instance Core.AWSRequest ListSlots where+ type AWSResponse ListSlots = ListSlotsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListSlotsResponse'+ Prelude.<$> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botVersion")+ Prelude.<*> (x Data..?> "intentId")+ Prelude.<*> (x Data..?> "localeId")+ Prelude.<*> (x Data..?> "nextToken")+ Prelude.<*> (x Data..?> "slotSummaries" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListSlots where+ hashWithSalt _salt ListSlots' {..} =+ _salt+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` sortBy+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` localeId+ `Prelude.hashWithSalt` intentId++instance Prelude.NFData ListSlots where+ rnf ListSlots' {..} =+ Prelude.rnf filters+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf sortBy+ `Prelude.seq` Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf intentId++instance Data.ToHeaders ListSlots where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListSlots where+ toJSON ListSlots' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("filters" Data..=) Prelude.<$> filters,+ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken,+ ("sortBy" Data..=) Prelude.<$> sortBy+ ]+ )++instance Data.ToPath ListSlots where+ toPath ListSlots' {..} =+ Prelude.mconcat+ [ "/bots/",+ Data.toBS botId,+ "/botversions/",+ Data.toBS botVersion,+ "/botlocales/",+ Data.toBS localeId,+ "/intents/",+ Data.toBS intentId,+ "/slots/"+ ]++instance Data.ToQuery ListSlots where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListSlotsResponse' smart constructor.+data ListSlotsResponse = ListSlotsResponse'+ { -- | The identifier of the bot that contains the slots.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The version of the bot that contains the slots.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | The identifier of the intent that contains the slots.+ intentId :: Prelude.Maybe Prelude.Text,+ -- | The language and locale of the slots in the list.+ localeId :: Prelude.Maybe Prelude.Text,+ -- | A token that indicates whether there are more results to return in a+ -- response to the @ListSlots@ operation. If the @nextToken@ field is+ -- present, you send the contents as the @nextToken@ parameter of a+ -- @ListSlots@ operation request to get the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | Summary information for the slots that meet the filter criteria+ -- specified in the request. The length of the list is specified in the+ -- @maxResults@ parameter of the request. If there are more slots+ -- available, the @nextToken@ field contains a token to get the next page+ -- of results.+ slotSummaries :: Prelude.Maybe [SlotSummary],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListSlotsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'listSlotsResponse_botId' - The identifier of the bot that contains the slots.+--+-- 'botVersion', 'listSlotsResponse_botVersion' - The version of the bot that contains the slots.+--+-- 'intentId', 'listSlotsResponse_intentId' - The identifier of the intent that contains the slots.+--+-- 'localeId', 'listSlotsResponse_localeId' - The language and locale of the slots in the list.+--+-- 'nextToken', 'listSlotsResponse_nextToken' - A token that indicates whether there are more results to return in a+-- response to the @ListSlots@ operation. If the @nextToken@ field is+-- present, you send the contents as the @nextToken@ parameter of a+-- @ListSlots@ operation request to get the next page of results.+--+-- 'slotSummaries', 'listSlotsResponse_slotSummaries' - Summary information for the slots that meet the filter criteria+-- specified in the request. The length of the list is specified in the+-- @maxResults@ parameter of the request. If there are more slots+-- available, the @nextToken@ field contains a token to get the next page+-- of results.+--+-- 'httpStatus', 'listSlotsResponse_httpStatus' - The response's http status code.+newListSlotsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListSlotsResponse+newListSlotsResponse pHttpStatus_ =+ ListSlotsResponse'+ { botId = Prelude.Nothing,+ botVersion = Prelude.Nothing,+ intentId = Prelude.Nothing,+ localeId = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ slotSummaries = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The identifier of the bot that contains the slots.+listSlotsResponse_botId :: Lens.Lens' ListSlotsResponse (Prelude.Maybe Prelude.Text)+listSlotsResponse_botId = Lens.lens (\ListSlotsResponse' {botId} -> botId) (\s@ListSlotsResponse' {} a -> s {botId = a} :: ListSlotsResponse)++-- | The version of the bot that contains the slots.+listSlotsResponse_botVersion :: Lens.Lens' ListSlotsResponse (Prelude.Maybe Prelude.Text)+listSlotsResponse_botVersion = Lens.lens (\ListSlotsResponse' {botVersion} -> botVersion) (\s@ListSlotsResponse' {} a -> s {botVersion = a} :: ListSlotsResponse)++-- | The identifier of the intent that contains the slots.+listSlotsResponse_intentId :: Lens.Lens' ListSlotsResponse (Prelude.Maybe Prelude.Text)+listSlotsResponse_intentId = Lens.lens (\ListSlotsResponse' {intentId} -> intentId) (\s@ListSlotsResponse' {} a -> s {intentId = a} :: ListSlotsResponse)++-- | The language and locale of the slots in the list.+listSlotsResponse_localeId :: Lens.Lens' ListSlotsResponse (Prelude.Maybe Prelude.Text)+listSlotsResponse_localeId = Lens.lens (\ListSlotsResponse' {localeId} -> localeId) (\s@ListSlotsResponse' {} a -> s {localeId = a} :: ListSlotsResponse)++-- | A token that indicates whether there are more results to return in a+-- response to the @ListSlots@ operation. If the @nextToken@ field is+-- present, you send the contents as the @nextToken@ parameter of a+-- @ListSlots@ operation request to get the next page of results.+listSlotsResponse_nextToken :: Lens.Lens' ListSlotsResponse (Prelude.Maybe Prelude.Text)+listSlotsResponse_nextToken = Lens.lens (\ListSlotsResponse' {nextToken} -> nextToken) (\s@ListSlotsResponse' {} a -> s {nextToken = a} :: ListSlotsResponse)++-- | Summary information for the slots that meet the filter criteria+-- specified in the request. The length of the list is specified in the+-- @maxResults@ parameter of the request. If there are more slots+-- available, the @nextToken@ field contains a token to get the next page+-- of results.+listSlotsResponse_slotSummaries :: Lens.Lens' ListSlotsResponse (Prelude.Maybe [SlotSummary])+listSlotsResponse_slotSummaries = Lens.lens (\ListSlotsResponse' {slotSummaries} -> slotSummaries) (\s@ListSlotsResponse' {} a -> s {slotSummaries = a} :: ListSlotsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listSlotsResponse_httpStatus :: Lens.Lens' ListSlotsResponse Prelude.Int+listSlotsResponse_httpStatus = Lens.lens (\ListSlotsResponse' {httpStatus} -> httpStatus) (\s@ListSlotsResponse' {} a -> s {httpStatus = a} :: ListSlotsResponse)++instance Prelude.NFData ListSlotsResponse where+ rnf ListSlotsResponse' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf intentId+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf slotSummaries+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/ListTagsForResource.hs view
@@ -0,0 +1,163 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.ListTagsForResource+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets a list of tags associated with a resource. Only bots, bot aliases,+-- and bot channels can have tags associated with them.+module Amazonka.LexV2Models.ListTagsForResource+ ( -- * Creating a Request+ ListTagsForResource (..),+ newListTagsForResource,++ -- * Request Lenses+ listTagsForResource_resourceARN,++ -- * Destructuring the Response+ ListTagsForResourceResponse (..),+ newListTagsForResourceResponse,++ -- * Response Lenses+ listTagsForResourceResponse_tags,+ listTagsForResourceResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListTagsForResource' smart constructor.+data ListTagsForResource = ListTagsForResource'+ { -- | The Amazon Resource Name (ARN) of the resource to get a list of tags+ -- for.+ resourceARN :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListTagsForResource' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'resourceARN', 'listTagsForResource_resourceARN' - The Amazon Resource Name (ARN) of the resource to get a list of tags+-- for.+newListTagsForResource ::+ -- | 'resourceARN'+ Prelude.Text ->+ ListTagsForResource+newListTagsForResource pResourceARN_ =+ ListTagsForResource' {resourceARN = pResourceARN_}++-- | The Amazon Resource Name (ARN) of the resource to get a list of tags+-- for.+listTagsForResource_resourceARN :: Lens.Lens' ListTagsForResource Prelude.Text+listTagsForResource_resourceARN = Lens.lens (\ListTagsForResource' {resourceARN} -> resourceARN) (\s@ListTagsForResource' {} a -> s {resourceARN = a} :: ListTagsForResource)++instance Core.AWSRequest ListTagsForResource where+ type+ AWSResponse ListTagsForResource =+ ListTagsForResourceResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListTagsForResourceResponse'+ Prelude.<$> (x Data..?> "tags" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListTagsForResource where+ hashWithSalt _salt ListTagsForResource' {..} =+ _salt `Prelude.hashWithSalt` resourceARN++instance Prelude.NFData ListTagsForResource where+ rnf ListTagsForResource' {..} =+ Prelude.rnf resourceARN++instance Data.ToHeaders ListTagsForResource where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath ListTagsForResource where+ toPath ListTagsForResource' {..} =+ Prelude.mconcat ["/tags/", Data.toBS resourceARN]++instance Data.ToQuery ListTagsForResource where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListTagsForResourceResponse' smart constructor.+data ListTagsForResourceResponse = ListTagsForResourceResponse'+ { -- | The tags associated with a resource.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListTagsForResourceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'tags', 'listTagsForResourceResponse_tags' - The tags associated with a resource.+--+-- 'httpStatus', 'listTagsForResourceResponse_httpStatus' - The response's http status code.+newListTagsForResourceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListTagsForResourceResponse+newListTagsForResourceResponse pHttpStatus_ =+ ListTagsForResourceResponse'+ { tags =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The tags associated with a resource.+listTagsForResourceResponse_tags :: Lens.Lens' ListTagsForResourceResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+listTagsForResourceResponse_tags = Lens.lens (\ListTagsForResourceResponse' {tags} -> tags) (\s@ListTagsForResourceResponse' {} a -> s {tags = a} :: ListTagsForResourceResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listTagsForResourceResponse_httpStatus :: Lens.Lens' ListTagsForResourceResponse Prelude.Int+listTagsForResourceResponse_httpStatus = Lens.lens (\ListTagsForResourceResponse' {httpStatus} -> httpStatus) (\s@ListTagsForResourceResponse' {} a -> s {httpStatus = a} :: ListTagsForResourceResponse)++instance Prelude.NFData ListTagsForResourceResponse where+ rnf ListTagsForResourceResponse' {..} =+ Prelude.rnf tags+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/SearchAssociatedTranscripts.hs view
@@ -0,0 +1,428 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.SearchAssociatedTranscripts+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Search for associated transcripts that meet the specified criteria.+module Amazonka.LexV2Models.SearchAssociatedTranscripts+ ( -- * Creating a Request+ SearchAssociatedTranscripts (..),+ newSearchAssociatedTranscripts,++ -- * Request Lenses+ searchAssociatedTranscripts_maxResults,+ searchAssociatedTranscripts_nextIndex,+ searchAssociatedTranscripts_searchOrder,+ searchAssociatedTranscripts_botId,+ searchAssociatedTranscripts_botVersion,+ searchAssociatedTranscripts_localeId,+ searchAssociatedTranscripts_botRecommendationId,+ searchAssociatedTranscripts_filters,++ -- * Destructuring the Response+ SearchAssociatedTranscriptsResponse (..),+ newSearchAssociatedTranscriptsResponse,++ -- * Response Lenses+ searchAssociatedTranscriptsResponse_associatedTranscripts,+ searchAssociatedTranscriptsResponse_botId,+ searchAssociatedTranscriptsResponse_botRecommendationId,+ searchAssociatedTranscriptsResponse_botVersion,+ searchAssociatedTranscriptsResponse_localeId,+ searchAssociatedTranscriptsResponse_nextIndex,+ searchAssociatedTranscriptsResponse_totalResults,+ searchAssociatedTranscriptsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newSearchAssociatedTranscripts' smart constructor.+data SearchAssociatedTranscripts = SearchAssociatedTranscripts'+ { -- | The maximum number of bot recommendations to return in each page of+ -- results. If there are fewer results than the max page size, only the+ -- actual number of results are returned.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | If the response from the SearchAssociatedTranscriptsRequest operation+ -- contains more results than specified in the maxResults parameter, an+ -- index is returned in the response. Use that index in the nextIndex+ -- parameter to return the next page of results.+ nextIndex :: Prelude.Maybe Prelude.Natural,+ -- | How SearchResults are ordered. Valid values are Ascending or Descending.+ -- The default is Descending.+ searchOrder :: Prelude.Maybe SearchOrder,+ -- | The unique identifier of the bot associated with the transcripts that+ -- you are searching.+ botId :: Prelude.Text,+ -- | The version of the bot containing the transcripts that you are+ -- searching.+ botVersion :: Prelude.Text,+ -- | The identifier of the language and locale of the transcripts to search.+ -- The string must match one of the supported locales. For more+ -- information, see+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>+ localeId :: Prelude.Text,+ -- | The unique identifier of the bot recommendation associated with the+ -- transcripts to search.+ botRecommendationId :: Prelude.Text,+ -- | A list of filter objects.+ filters :: Prelude.NonEmpty AssociatedTranscriptFilter+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SearchAssociatedTranscripts' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxResults', 'searchAssociatedTranscripts_maxResults' - The maximum number of bot recommendations to return in each page of+-- results. If there are fewer results than the max page size, only the+-- actual number of results are returned.+--+-- 'nextIndex', 'searchAssociatedTranscripts_nextIndex' - If the response from the SearchAssociatedTranscriptsRequest operation+-- contains more results than specified in the maxResults parameter, an+-- index is returned in the response. Use that index in the nextIndex+-- parameter to return the next page of results.+--+-- 'searchOrder', 'searchAssociatedTranscripts_searchOrder' - How SearchResults are ordered. Valid values are Ascending or Descending.+-- The default is Descending.+--+-- 'botId', 'searchAssociatedTranscripts_botId' - The unique identifier of the bot associated with the transcripts that+-- you are searching.+--+-- 'botVersion', 'searchAssociatedTranscripts_botVersion' - The version of the bot containing the transcripts that you are+-- searching.+--+-- 'localeId', 'searchAssociatedTranscripts_localeId' - The identifier of the language and locale of the transcripts to search.+-- The string must match one of the supported locales. For more+-- information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>+--+-- 'botRecommendationId', 'searchAssociatedTranscripts_botRecommendationId' - The unique identifier of the bot recommendation associated with the+-- transcripts to search.+--+-- 'filters', 'searchAssociatedTranscripts_filters' - A list of filter objects.+newSearchAssociatedTranscripts ::+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ -- | 'localeId'+ Prelude.Text ->+ -- | 'botRecommendationId'+ Prelude.Text ->+ -- | 'filters'+ Prelude.NonEmpty AssociatedTranscriptFilter ->+ SearchAssociatedTranscripts+newSearchAssociatedTranscripts+ pBotId_+ pBotVersion_+ pLocaleId_+ pBotRecommendationId_+ pFilters_ =+ SearchAssociatedTranscripts'+ { maxResults =+ Prelude.Nothing,+ nextIndex = Prelude.Nothing,+ searchOrder = Prelude.Nothing,+ botId = pBotId_,+ botVersion = pBotVersion_,+ localeId = pLocaleId_,+ botRecommendationId = pBotRecommendationId_,+ filters = Lens.coerced Lens.# pFilters_+ }++-- | The maximum number of bot recommendations to return in each page of+-- results. If there are fewer results than the max page size, only the+-- actual number of results are returned.+searchAssociatedTranscripts_maxResults :: Lens.Lens' SearchAssociatedTranscripts (Prelude.Maybe Prelude.Natural)+searchAssociatedTranscripts_maxResults = Lens.lens (\SearchAssociatedTranscripts' {maxResults} -> maxResults) (\s@SearchAssociatedTranscripts' {} a -> s {maxResults = a} :: SearchAssociatedTranscripts)++-- | If the response from the SearchAssociatedTranscriptsRequest operation+-- contains more results than specified in the maxResults parameter, an+-- index is returned in the response. Use that index in the nextIndex+-- parameter to return the next page of results.+searchAssociatedTranscripts_nextIndex :: Lens.Lens' SearchAssociatedTranscripts (Prelude.Maybe Prelude.Natural)+searchAssociatedTranscripts_nextIndex = Lens.lens (\SearchAssociatedTranscripts' {nextIndex} -> nextIndex) (\s@SearchAssociatedTranscripts' {} a -> s {nextIndex = a} :: SearchAssociatedTranscripts)++-- | How SearchResults are ordered. Valid values are Ascending or Descending.+-- The default is Descending.+searchAssociatedTranscripts_searchOrder :: Lens.Lens' SearchAssociatedTranscripts (Prelude.Maybe SearchOrder)+searchAssociatedTranscripts_searchOrder = Lens.lens (\SearchAssociatedTranscripts' {searchOrder} -> searchOrder) (\s@SearchAssociatedTranscripts' {} a -> s {searchOrder = a} :: SearchAssociatedTranscripts)++-- | The unique identifier of the bot associated with the transcripts that+-- you are searching.+searchAssociatedTranscripts_botId :: Lens.Lens' SearchAssociatedTranscripts Prelude.Text+searchAssociatedTranscripts_botId = Lens.lens (\SearchAssociatedTranscripts' {botId} -> botId) (\s@SearchAssociatedTranscripts' {} a -> s {botId = a} :: SearchAssociatedTranscripts)++-- | The version of the bot containing the transcripts that you are+-- searching.+searchAssociatedTranscripts_botVersion :: Lens.Lens' SearchAssociatedTranscripts Prelude.Text+searchAssociatedTranscripts_botVersion = Lens.lens (\SearchAssociatedTranscripts' {botVersion} -> botVersion) (\s@SearchAssociatedTranscripts' {} a -> s {botVersion = a} :: SearchAssociatedTranscripts)++-- | The identifier of the language and locale of the transcripts to search.+-- The string must match one of the supported locales. For more+-- information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>+searchAssociatedTranscripts_localeId :: Lens.Lens' SearchAssociatedTranscripts Prelude.Text+searchAssociatedTranscripts_localeId = Lens.lens (\SearchAssociatedTranscripts' {localeId} -> localeId) (\s@SearchAssociatedTranscripts' {} a -> s {localeId = a} :: SearchAssociatedTranscripts)++-- | The unique identifier of the bot recommendation associated with the+-- transcripts to search.+searchAssociatedTranscripts_botRecommendationId :: Lens.Lens' SearchAssociatedTranscripts Prelude.Text+searchAssociatedTranscripts_botRecommendationId = Lens.lens (\SearchAssociatedTranscripts' {botRecommendationId} -> botRecommendationId) (\s@SearchAssociatedTranscripts' {} a -> s {botRecommendationId = a} :: SearchAssociatedTranscripts)++-- | A list of filter objects.+searchAssociatedTranscripts_filters :: Lens.Lens' SearchAssociatedTranscripts (Prelude.NonEmpty AssociatedTranscriptFilter)+searchAssociatedTranscripts_filters = Lens.lens (\SearchAssociatedTranscripts' {filters} -> filters) (\s@SearchAssociatedTranscripts' {} a -> s {filters = a} :: SearchAssociatedTranscripts) Prelude.. Lens.coerced++instance Core.AWSRequest SearchAssociatedTranscripts where+ type+ AWSResponse SearchAssociatedTranscripts =+ SearchAssociatedTranscriptsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ SearchAssociatedTranscriptsResponse'+ Prelude.<$> ( x+ Data..?> "associatedTranscripts"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botRecommendationId")+ Prelude.<*> (x Data..?> "botVersion")+ Prelude.<*> (x Data..?> "localeId")+ Prelude.<*> (x Data..?> "nextIndex")+ Prelude.<*> (x Data..?> "totalResults")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable SearchAssociatedTranscripts where+ hashWithSalt _salt SearchAssociatedTranscripts' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextIndex+ `Prelude.hashWithSalt` searchOrder+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` localeId+ `Prelude.hashWithSalt` botRecommendationId+ `Prelude.hashWithSalt` filters++instance Prelude.NFData SearchAssociatedTranscripts where+ rnf SearchAssociatedTranscripts' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextIndex+ `Prelude.seq` Prelude.rnf searchOrder+ `Prelude.seq` Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf botRecommendationId+ `Prelude.seq` Prelude.rnf filters++instance Data.ToHeaders SearchAssociatedTranscripts where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON SearchAssociatedTranscripts where+ toJSON SearchAssociatedTranscripts' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextIndex" Data..=) Prelude.<$> nextIndex,+ ("searchOrder" Data..=) Prelude.<$> searchOrder,+ Prelude.Just ("filters" Data..= filters)+ ]+ )++instance Data.ToPath SearchAssociatedTranscripts where+ toPath SearchAssociatedTranscripts' {..} =+ Prelude.mconcat+ [ "/bots/",+ Data.toBS botId,+ "/botversions/",+ Data.toBS botVersion,+ "/botlocales/",+ Data.toBS localeId,+ "/botrecommendations/",+ Data.toBS botRecommendationId,+ "/associatedtranscripts"+ ]++instance Data.ToQuery SearchAssociatedTranscripts where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newSearchAssociatedTranscriptsResponse' smart constructor.+data SearchAssociatedTranscriptsResponse = SearchAssociatedTranscriptsResponse'+ { -- | The object that contains the associated transcript that meet the+ -- criteria you specified.+ associatedTranscripts :: Prelude.Maybe [AssociatedTranscript],+ -- | The unique identifier of the bot associated with the transcripts that+ -- you are searching.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier of the bot recommendation associated with the+ -- transcripts to search.+ botRecommendationId :: Prelude.Maybe Prelude.Text,+ -- | The version of the bot containing the transcripts that you are+ -- searching.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | The identifier of the language and locale of the transcripts to search.+ -- The string must match one of the supported locales. For more+ -- information, see+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>+ localeId :: Prelude.Maybe Prelude.Text,+ -- | A index that indicates whether there are more results to return in a+ -- response to the SearchAssociatedTranscripts operation. If the nextIndex+ -- field is present, you send the contents as the nextIndex parameter of a+ -- SearchAssociatedTranscriptsRequest operation to get the next page of+ -- results.+ nextIndex :: Prelude.Maybe Prelude.Natural,+ -- | The total number of transcripts returned by the search.+ totalResults :: Prelude.Maybe Prelude.Natural,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SearchAssociatedTranscriptsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'associatedTranscripts', 'searchAssociatedTranscriptsResponse_associatedTranscripts' - The object that contains the associated transcript that meet the+-- criteria you specified.+--+-- 'botId', 'searchAssociatedTranscriptsResponse_botId' - The unique identifier of the bot associated with the transcripts that+-- you are searching.+--+-- 'botRecommendationId', 'searchAssociatedTranscriptsResponse_botRecommendationId' - The unique identifier of the bot recommendation associated with the+-- transcripts to search.+--+-- 'botVersion', 'searchAssociatedTranscriptsResponse_botVersion' - The version of the bot containing the transcripts that you are+-- searching.+--+-- 'localeId', 'searchAssociatedTranscriptsResponse_localeId' - The identifier of the language and locale of the transcripts to search.+-- The string must match one of the supported locales. For more+-- information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>+--+-- 'nextIndex', 'searchAssociatedTranscriptsResponse_nextIndex' - A index that indicates whether there are more results to return in a+-- response to the SearchAssociatedTranscripts operation. If the nextIndex+-- field is present, you send the contents as the nextIndex parameter of a+-- SearchAssociatedTranscriptsRequest operation to get the next page of+-- results.+--+-- 'totalResults', 'searchAssociatedTranscriptsResponse_totalResults' - The total number of transcripts returned by the search.+--+-- 'httpStatus', 'searchAssociatedTranscriptsResponse_httpStatus' - The response's http status code.+newSearchAssociatedTranscriptsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ SearchAssociatedTranscriptsResponse+newSearchAssociatedTranscriptsResponse pHttpStatus_ =+ SearchAssociatedTranscriptsResponse'+ { associatedTranscripts =+ Prelude.Nothing,+ botId = Prelude.Nothing,+ botRecommendationId = Prelude.Nothing,+ botVersion = Prelude.Nothing,+ localeId = Prelude.Nothing,+ nextIndex = Prelude.Nothing,+ totalResults = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The object that contains the associated transcript that meet the+-- criteria you specified.+searchAssociatedTranscriptsResponse_associatedTranscripts :: Lens.Lens' SearchAssociatedTranscriptsResponse (Prelude.Maybe [AssociatedTranscript])+searchAssociatedTranscriptsResponse_associatedTranscripts = Lens.lens (\SearchAssociatedTranscriptsResponse' {associatedTranscripts} -> associatedTranscripts) (\s@SearchAssociatedTranscriptsResponse' {} a -> s {associatedTranscripts = a} :: SearchAssociatedTranscriptsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The unique identifier of the bot associated with the transcripts that+-- you are searching.+searchAssociatedTranscriptsResponse_botId :: Lens.Lens' SearchAssociatedTranscriptsResponse (Prelude.Maybe Prelude.Text)+searchAssociatedTranscriptsResponse_botId = Lens.lens (\SearchAssociatedTranscriptsResponse' {botId} -> botId) (\s@SearchAssociatedTranscriptsResponse' {} a -> s {botId = a} :: SearchAssociatedTranscriptsResponse)++-- | The unique identifier of the bot recommendation associated with the+-- transcripts to search.+searchAssociatedTranscriptsResponse_botRecommendationId :: Lens.Lens' SearchAssociatedTranscriptsResponse (Prelude.Maybe Prelude.Text)+searchAssociatedTranscriptsResponse_botRecommendationId = Lens.lens (\SearchAssociatedTranscriptsResponse' {botRecommendationId} -> botRecommendationId) (\s@SearchAssociatedTranscriptsResponse' {} a -> s {botRecommendationId = a} :: SearchAssociatedTranscriptsResponse)++-- | The version of the bot containing the transcripts that you are+-- searching.+searchAssociatedTranscriptsResponse_botVersion :: Lens.Lens' SearchAssociatedTranscriptsResponse (Prelude.Maybe Prelude.Text)+searchAssociatedTranscriptsResponse_botVersion = Lens.lens (\SearchAssociatedTranscriptsResponse' {botVersion} -> botVersion) (\s@SearchAssociatedTranscriptsResponse' {} a -> s {botVersion = a} :: SearchAssociatedTranscriptsResponse)++-- | The identifier of the language and locale of the transcripts to search.+-- The string must match one of the supported locales. For more+-- information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>+searchAssociatedTranscriptsResponse_localeId :: Lens.Lens' SearchAssociatedTranscriptsResponse (Prelude.Maybe Prelude.Text)+searchAssociatedTranscriptsResponse_localeId = Lens.lens (\SearchAssociatedTranscriptsResponse' {localeId} -> localeId) (\s@SearchAssociatedTranscriptsResponse' {} a -> s {localeId = a} :: SearchAssociatedTranscriptsResponse)++-- | A index that indicates whether there are more results to return in a+-- response to the SearchAssociatedTranscripts operation. If the nextIndex+-- field is present, you send the contents as the nextIndex parameter of a+-- SearchAssociatedTranscriptsRequest operation to get the next page of+-- results.+searchAssociatedTranscriptsResponse_nextIndex :: Lens.Lens' SearchAssociatedTranscriptsResponse (Prelude.Maybe Prelude.Natural)+searchAssociatedTranscriptsResponse_nextIndex = Lens.lens (\SearchAssociatedTranscriptsResponse' {nextIndex} -> nextIndex) (\s@SearchAssociatedTranscriptsResponse' {} a -> s {nextIndex = a} :: SearchAssociatedTranscriptsResponse)++-- | The total number of transcripts returned by the search.+searchAssociatedTranscriptsResponse_totalResults :: Lens.Lens' SearchAssociatedTranscriptsResponse (Prelude.Maybe Prelude.Natural)+searchAssociatedTranscriptsResponse_totalResults = Lens.lens (\SearchAssociatedTranscriptsResponse' {totalResults} -> totalResults) (\s@SearchAssociatedTranscriptsResponse' {} a -> s {totalResults = a} :: SearchAssociatedTranscriptsResponse)++-- | The response's http status code.+searchAssociatedTranscriptsResponse_httpStatus :: Lens.Lens' SearchAssociatedTranscriptsResponse Prelude.Int+searchAssociatedTranscriptsResponse_httpStatus = Lens.lens (\SearchAssociatedTranscriptsResponse' {httpStatus} -> httpStatus) (\s@SearchAssociatedTranscriptsResponse' {} a -> s {httpStatus = a} :: SearchAssociatedTranscriptsResponse)++instance+ Prelude.NFData+ SearchAssociatedTranscriptsResponse+ where+ rnf SearchAssociatedTranscriptsResponse' {..} =+ Prelude.rnf associatedTranscripts+ `Prelude.seq` Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botRecommendationId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf nextIndex+ `Prelude.seq` Prelude.rnf totalResults+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/StartBotRecommendation.hs view
@@ -0,0 +1,378 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.StartBotRecommendation+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Use this to provide your transcript data, and to start the bot+-- recommendation process.+module Amazonka.LexV2Models.StartBotRecommendation+ ( -- * Creating a Request+ StartBotRecommendation (..),+ newStartBotRecommendation,++ -- * Request Lenses+ startBotRecommendation_encryptionSetting,+ startBotRecommendation_botId,+ startBotRecommendation_botVersion,+ startBotRecommendation_localeId,+ startBotRecommendation_transcriptSourceSetting,++ -- * Destructuring the Response+ StartBotRecommendationResponse (..),+ newStartBotRecommendationResponse,++ -- * Response Lenses+ startBotRecommendationResponse_botId,+ startBotRecommendationResponse_botRecommendationId,+ startBotRecommendationResponse_botRecommendationStatus,+ startBotRecommendationResponse_botVersion,+ startBotRecommendationResponse_creationDateTime,+ startBotRecommendationResponse_encryptionSetting,+ startBotRecommendationResponse_localeId,+ startBotRecommendationResponse_transcriptSourceSetting,+ startBotRecommendationResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newStartBotRecommendation' smart constructor.+data StartBotRecommendation = StartBotRecommendation'+ { -- | The object representing the passwords that will be used to encrypt the+ -- data related to the bot recommendation results, as well as the KMS key+ -- ARN used to encrypt the associated metadata.+ encryptionSetting :: Prelude.Maybe EncryptionSetting,+ -- | The unique identifier of the bot containing the bot recommendation.+ botId :: Prelude.Text,+ -- | The version of the bot containing the bot recommendation.+ botVersion :: Prelude.Text,+ -- | The identifier of the language and locale of the bot recommendation to+ -- start. The string must match one of the supported locales. For more+ -- information, see+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>+ localeId :: Prelude.Text,+ -- | The object representing the Amazon S3 bucket containing the transcript,+ -- as well as the associated metadata.+ transcriptSourceSetting :: TranscriptSourceSetting+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'StartBotRecommendation' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'encryptionSetting', 'startBotRecommendation_encryptionSetting' - The object representing the passwords that will be used to encrypt the+-- data related to the bot recommendation results, as well as the KMS key+-- ARN used to encrypt the associated metadata.+--+-- 'botId', 'startBotRecommendation_botId' - The unique identifier of the bot containing the bot recommendation.+--+-- 'botVersion', 'startBotRecommendation_botVersion' - The version of the bot containing the bot recommendation.+--+-- 'localeId', 'startBotRecommendation_localeId' - The identifier of the language and locale of the bot recommendation to+-- start. The string must match one of the supported locales. For more+-- information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>+--+-- 'transcriptSourceSetting', 'startBotRecommendation_transcriptSourceSetting' - The object representing the Amazon S3 bucket containing the transcript,+-- as well as the associated metadata.+newStartBotRecommendation ::+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ -- | 'localeId'+ Prelude.Text ->+ -- | 'transcriptSourceSetting'+ TranscriptSourceSetting ->+ StartBotRecommendation+newStartBotRecommendation+ pBotId_+ pBotVersion_+ pLocaleId_+ pTranscriptSourceSetting_ =+ StartBotRecommendation'+ { encryptionSetting =+ Prelude.Nothing,+ botId = pBotId_,+ botVersion = pBotVersion_,+ localeId = pLocaleId_,+ transcriptSourceSetting = pTranscriptSourceSetting_+ }++-- | The object representing the passwords that will be used to encrypt the+-- data related to the bot recommendation results, as well as the KMS key+-- ARN used to encrypt the associated metadata.+startBotRecommendation_encryptionSetting :: Lens.Lens' StartBotRecommendation (Prelude.Maybe EncryptionSetting)+startBotRecommendation_encryptionSetting = Lens.lens (\StartBotRecommendation' {encryptionSetting} -> encryptionSetting) (\s@StartBotRecommendation' {} a -> s {encryptionSetting = a} :: StartBotRecommendation)++-- | The unique identifier of the bot containing the bot recommendation.+startBotRecommendation_botId :: Lens.Lens' StartBotRecommendation Prelude.Text+startBotRecommendation_botId = Lens.lens (\StartBotRecommendation' {botId} -> botId) (\s@StartBotRecommendation' {} a -> s {botId = a} :: StartBotRecommendation)++-- | The version of the bot containing the bot recommendation.+startBotRecommendation_botVersion :: Lens.Lens' StartBotRecommendation Prelude.Text+startBotRecommendation_botVersion = Lens.lens (\StartBotRecommendation' {botVersion} -> botVersion) (\s@StartBotRecommendation' {} a -> s {botVersion = a} :: StartBotRecommendation)++-- | The identifier of the language and locale of the bot recommendation to+-- start. The string must match one of the supported locales. For more+-- information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>+startBotRecommendation_localeId :: Lens.Lens' StartBotRecommendation Prelude.Text+startBotRecommendation_localeId = Lens.lens (\StartBotRecommendation' {localeId} -> localeId) (\s@StartBotRecommendation' {} a -> s {localeId = a} :: StartBotRecommendation)++-- | The object representing the Amazon S3 bucket containing the transcript,+-- as well as the associated metadata.+startBotRecommendation_transcriptSourceSetting :: Lens.Lens' StartBotRecommendation TranscriptSourceSetting+startBotRecommendation_transcriptSourceSetting = Lens.lens (\StartBotRecommendation' {transcriptSourceSetting} -> transcriptSourceSetting) (\s@StartBotRecommendation' {} a -> s {transcriptSourceSetting = a} :: StartBotRecommendation)++instance Core.AWSRequest StartBotRecommendation where+ type+ AWSResponse StartBotRecommendation =+ StartBotRecommendationResponse+ request overrides =+ Request.putJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ StartBotRecommendationResponse'+ Prelude.<$> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botRecommendationId")+ Prelude.<*> (x Data..?> "botRecommendationStatus")+ Prelude.<*> (x Data..?> "botVersion")+ Prelude.<*> (x Data..?> "creationDateTime")+ Prelude.<*> (x Data..?> "encryptionSetting")+ Prelude.<*> (x Data..?> "localeId")+ Prelude.<*> (x Data..?> "transcriptSourceSetting")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable StartBotRecommendation where+ hashWithSalt _salt StartBotRecommendation' {..} =+ _salt+ `Prelude.hashWithSalt` encryptionSetting+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` localeId+ `Prelude.hashWithSalt` transcriptSourceSetting++instance Prelude.NFData StartBotRecommendation where+ rnf StartBotRecommendation' {..} =+ Prelude.rnf encryptionSetting+ `Prelude.seq` Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf transcriptSourceSetting++instance Data.ToHeaders StartBotRecommendation where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON StartBotRecommendation where+ toJSON StartBotRecommendation' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("encryptionSetting" Data..=)+ Prelude.<$> encryptionSetting,+ Prelude.Just+ ( "transcriptSourceSetting"+ Data..= transcriptSourceSetting+ )+ ]+ )++instance Data.ToPath StartBotRecommendation where+ toPath StartBotRecommendation' {..} =+ Prelude.mconcat+ [ "/bots/",+ Data.toBS botId,+ "/botversions/",+ Data.toBS botVersion,+ "/botlocales/",+ Data.toBS localeId,+ "/botrecommendations/"+ ]++instance Data.ToQuery StartBotRecommendation where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newStartBotRecommendationResponse' smart constructor.+data StartBotRecommendationResponse = StartBotRecommendationResponse'+ { -- | The unique identifier of the bot containing the bot recommendation.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The identifier of the bot recommendation that you have created.+ botRecommendationId :: Prelude.Maybe Prelude.Text,+ -- | The status of the bot recommendation.+ --+ -- If the status is Failed, then the reasons for the failure are listed in+ -- the failureReasons field.+ botRecommendationStatus :: Prelude.Maybe BotRecommendationStatus,+ -- | The version of the bot containing the bot recommendation.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | A timestamp of the date and time that the bot recommendation was+ -- created.+ creationDateTime :: Prelude.Maybe Data.POSIX,+ -- | The object representing the passwords that were used to encrypt the data+ -- related to the bot recommendation results, as well as the KMS key ARN+ -- used to encrypt the associated metadata.+ encryptionSetting :: Prelude.Maybe EncryptionSetting,+ -- | The identifier of the language and locale of the bot recommendation to+ -- start. The string must match one of the supported locales. For more+ -- information, see+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>+ localeId :: Prelude.Maybe Prelude.Text,+ -- | The object representing the Amazon S3 bucket containing the transcript,+ -- as well as the associated metadata.+ transcriptSourceSetting :: Prelude.Maybe TranscriptSourceSetting,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'StartBotRecommendationResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'startBotRecommendationResponse_botId' - The unique identifier of the bot containing the bot recommendation.+--+-- 'botRecommendationId', 'startBotRecommendationResponse_botRecommendationId' - The identifier of the bot recommendation that you have created.+--+-- 'botRecommendationStatus', 'startBotRecommendationResponse_botRecommendationStatus' - The status of the bot recommendation.+--+-- If the status is Failed, then the reasons for the failure are listed in+-- the failureReasons field.+--+-- 'botVersion', 'startBotRecommendationResponse_botVersion' - The version of the bot containing the bot recommendation.+--+-- 'creationDateTime', 'startBotRecommendationResponse_creationDateTime' - A timestamp of the date and time that the bot recommendation was+-- created.+--+-- 'encryptionSetting', 'startBotRecommendationResponse_encryptionSetting' - The object representing the passwords that were used to encrypt the data+-- related to the bot recommendation results, as well as the KMS key ARN+-- used to encrypt the associated metadata.+--+-- 'localeId', 'startBotRecommendationResponse_localeId' - The identifier of the language and locale of the bot recommendation to+-- start. The string must match one of the supported locales. For more+-- information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>+--+-- 'transcriptSourceSetting', 'startBotRecommendationResponse_transcriptSourceSetting' - The object representing the Amazon S3 bucket containing the transcript,+-- as well as the associated metadata.+--+-- 'httpStatus', 'startBotRecommendationResponse_httpStatus' - The response's http status code.+newStartBotRecommendationResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ StartBotRecommendationResponse+newStartBotRecommendationResponse pHttpStatus_ =+ StartBotRecommendationResponse'+ { botId =+ Prelude.Nothing,+ botRecommendationId = Prelude.Nothing,+ botRecommendationStatus = Prelude.Nothing,+ botVersion = Prelude.Nothing,+ creationDateTime = Prelude.Nothing,+ encryptionSetting = Prelude.Nothing,+ localeId = Prelude.Nothing,+ transcriptSourceSetting = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The unique identifier of the bot containing the bot recommendation.+startBotRecommendationResponse_botId :: Lens.Lens' StartBotRecommendationResponse (Prelude.Maybe Prelude.Text)+startBotRecommendationResponse_botId = Lens.lens (\StartBotRecommendationResponse' {botId} -> botId) (\s@StartBotRecommendationResponse' {} a -> s {botId = a} :: StartBotRecommendationResponse)++-- | The identifier of the bot recommendation that you have created.+startBotRecommendationResponse_botRecommendationId :: Lens.Lens' StartBotRecommendationResponse (Prelude.Maybe Prelude.Text)+startBotRecommendationResponse_botRecommendationId = Lens.lens (\StartBotRecommendationResponse' {botRecommendationId} -> botRecommendationId) (\s@StartBotRecommendationResponse' {} a -> s {botRecommendationId = a} :: StartBotRecommendationResponse)++-- | The status of the bot recommendation.+--+-- If the status is Failed, then the reasons for the failure are listed in+-- the failureReasons field.+startBotRecommendationResponse_botRecommendationStatus :: Lens.Lens' StartBotRecommendationResponse (Prelude.Maybe BotRecommendationStatus)+startBotRecommendationResponse_botRecommendationStatus = Lens.lens (\StartBotRecommendationResponse' {botRecommendationStatus} -> botRecommendationStatus) (\s@StartBotRecommendationResponse' {} a -> s {botRecommendationStatus = a} :: StartBotRecommendationResponse)++-- | The version of the bot containing the bot recommendation.+startBotRecommendationResponse_botVersion :: Lens.Lens' StartBotRecommendationResponse (Prelude.Maybe Prelude.Text)+startBotRecommendationResponse_botVersion = Lens.lens (\StartBotRecommendationResponse' {botVersion} -> botVersion) (\s@StartBotRecommendationResponse' {} a -> s {botVersion = a} :: StartBotRecommendationResponse)++-- | A timestamp of the date and time that the bot recommendation was+-- created.+startBotRecommendationResponse_creationDateTime :: Lens.Lens' StartBotRecommendationResponse (Prelude.Maybe Prelude.UTCTime)+startBotRecommendationResponse_creationDateTime = Lens.lens (\StartBotRecommendationResponse' {creationDateTime} -> creationDateTime) (\s@StartBotRecommendationResponse' {} a -> s {creationDateTime = a} :: StartBotRecommendationResponse) Prelude.. Lens.mapping Data._Time++-- | The object representing the passwords that were used to encrypt the data+-- related to the bot recommendation results, as well as the KMS key ARN+-- used to encrypt the associated metadata.+startBotRecommendationResponse_encryptionSetting :: Lens.Lens' StartBotRecommendationResponse (Prelude.Maybe EncryptionSetting)+startBotRecommendationResponse_encryptionSetting = Lens.lens (\StartBotRecommendationResponse' {encryptionSetting} -> encryptionSetting) (\s@StartBotRecommendationResponse' {} a -> s {encryptionSetting = a} :: StartBotRecommendationResponse)++-- | The identifier of the language and locale of the bot recommendation to+-- start. The string must match one of the supported locales. For more+-- information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>+startBotRecommendationResponse_localeId :: Lens.Lens' StartBotRecommendationResponse (Prelude.Maybe Prelude.Text)+startBotRecommendationResponse_localeId = Lens.lens (\StartBotRecommendationResponse' {localeId} -> localeId) (\s@StartBotRecommendationResponse' {} a -> s {localeId = a} :: StartBotRecommendationResponse)++-- | The object representing the Amazon S3 bucket containing the transcript,+-- as well as the associated metadata.+startBotRecommendationResponse_transcriptSourceSetting :: Lens.Lens' StartBotRecommendationResponse (Prelude.Maybe TranscriptSourceSetting)+startBotRecommendationResponse_transcriptSourceSetting = Lens.lens (\StartBotRecommendationResponse' {transcriptSourceSetting} -> transcriptSourceSetting) (\s@StartBotRecommendationResponse' {} a -> s {transcriptSourceSetting = a} :: StartBotRecommendationResponse)++-- | The response's http status code.+startBotRecommendationResponse_httpStatus :: Lens.Lens' StartBotRecommendationResponse Prelude.Int+startBotRecommendationResponse_httpStatus = Lens.lens (\StartBotRecommendationResponse' {httpStatus} -> httpStatus) (\s@StartBotRecommendationResponse' {} a -> s {httpStatus = a} :: StartBotRecommendationResponse)++instance+ Prelude.NFData+ StartBotRecommendationResponse+ where+ rnf StartBotRecommendationResponse' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botRecommendationId+ `Prelude.seq` Prelude.rnf botRecommendationStatus+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf encryptionSetting+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf transcriptSourceSetting+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/StartImport.hs view
@@ -0,0 +1,302 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.StartImport+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Starts importing a bot, bot locale, or custom vocabulary from a zip+-- archive that you uploaded to an S3 bucket.+module Amazonka.LexV2Models.StartImport+ ( -- * Creating a Request+ StartImport (..),+ newStartImport,++ -- * Request Lenses+ startImport_filePassword,+ startImport_importId,+ startImport_resourceSpecification,+ startImport_mergeStrategy,++ -- * Destructuring the Response+ StartImportResponse (..),+ newStartImportResponse,++ -- * Response Lenses+ startImportResponse_creationDateTime,+ startImportResponse_importId,+ startImportResponse_importStatus,+ startImportResponse_mergeStrategy,+ startImportResponse_resourceSpecification,+ startImportResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newStartImport' smart constructor.+data StartImport = StartImport'+ { -- | The password used to encrypt the zip archive that contains the resource+ -- definition. You should always encrypt the zip archive to protect it+ -- during transit between your site and Amazon Lex.+ filePassword :: Prelude.Maybe (Data.Sensitive Prelude.Text),+ -- | The unique identifier for the import. It is included in the response+ -- from the+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/API_CreateUploadUrl.html CreateUploadUrl>+ -- operation.+ importId :: Prelude.Text,+ -- | Parameters for creating the bot, bot locale or custom vocabulary.+ resourceSpecification :: ImportResourceSpecification,+ -- | The strategy to use when there is a name conflict between the imported+ -- resource and an existing resource. When the merge strategy is+ -- @FailOnConflict@ existing resources are not overwritten and the import+ -- fails.+ mergeStrategy :: MergeStrategy+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'StartImport' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'filePassword', 'startImport_filePassword' - The password used to encrypt the zip archive that contains the resource+-- definition. You should always encrypt the zip archive to protect it+-- during transit between your site and Amazon Lex.+--+-- 'importId', 'startImport_importId' - The unique identifier for the import. It is included in the response+-- from the+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_CreateUploadUrl.html CreateUploadUrl>+-- operation.+--+-- 'resourceSpecification', 'startImport_resourceSpecification' - Parameters for creating the bot, bot locale or custom vocabulary.+--+-- 'mergeStrategy', 'startImport_mergeStrategy' - The strategy to use when there is a name conflict between the imported+-- resource and an existing resource. When the merge strategy is+-- @FailOnConflict@ existing resources are not overwritten and the import+-- fails.+newStartImport ::+ -- | 'importId'+ Prelude.Text ->+ -- | 'resourceSpecification'+ ImportResourceSpecification ->+ -- | 'mergeStrategy'+ MergeStrategy ->+ StartImport+newStartImport+ pImportId_+ pResourceSpecification_+ pMergeStrategy_ =+ StartImport'+ { filePassword = Prelude.Nothing,+ importId = pImportId_,+ resourceSpecification = pResourceSpecification_,+ mergeStrategy = pMergeStrategy_+ }++-- | The password used to encrypt the zip archive that contains the resource+-- definition. You should always encrypt the zip archive to protect it+-- during transit between your site and Amazon Lex.+startImport_filePassword :: Lens.Lens' StartImport (Prelude.Maybe Prelude.Text)+startImport_filePassword = Lens.lens (\StartImport' {filePassword} -> filePassword) (\s@StartImport' {} a -> s {filePassword = a} :: StartImport) Prelude.. Lens.mapping Data._Sensitive++-- | The unique identifier for the import. It is included in the response+-- from the+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_CreateUploadUrl.html CreateUploadUrl>+-- operation.+startImport_importId :: Lens.Lens' StartImport Prelude.Text+startImport_importId = Lens.lens (\StartImport' {importId} -> importId) (\s@StartImport' {} a -> s {importId = a} :: StartImport)++-- | Parameters for creating the bot, bot locale or custom vocabulary.+startImport_resourceSpecification :: Lens.Lens' StartImport ImportResourceSpecification+startImport_resourceSpecification = Lens.lens (\StartImport' {resourceSpecification} -> resourceSpecification) (\s@StartImport' {} a -> s {resourceSpecification = a} :: StartImport)++-- | The strategy to use when there is a name conflict between the imported+-- resource and an existing resource. When the merge strategy is+-- @FailOnConflict@ existing resources are not overwritten and the import+-- fails.+startImport_mergeStrategy :: Lens.Lens' StartImport MergeStrategy+startImport_mergeStrategy = Lens.lens (\StartImport' {mergeStrategy} -> mergeStrategy) (\s@StartImport' {} a -> s {mergeStrategy = a} :: StartImport)++instance Core.AWSRequest StartImport where+ type AWSResponse StartImport = StartImportResponse+ request overrides =+ Request.putJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ StartImportResponse'+ Prelude.<$> (x Data..?> "creationDateTime")+ Prelude.<*> (x Data..?> "importId")+ Prelude.<*> (x Data..?> "importStatus")+ Prelude.<*> (x Data..?> "mergeStrategy")+ Prelude.<*> (x Data..?> "resourceSpecification")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable StartImport where+ hashWithSalt _salt StartImport' {..} =+ _salt+ `Prelude.hashWithSalt` filePassword+ `Prelude.hashWithSalt` importId+ `Prelude.hashWithSalt` resourceSpecification+ `Prelude.hashWithSalt` mergeStrategy++instance Prelude.NFData StartImport where+ rnf StartImport' {..} =+ Prelude.rnf filePassword+ `Prelude.seq` Prelude.rnf importId+ `Prelude.seq` Prelude.rnf resourceSpecification+ `Prelude.seq` Prelude.rnf mergeStrategy++instance Data.ToHeaders StartImport where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON StartImport where+ toJSON StartImport' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("filePassword" Data..=) Prelude.<$> filePassword,+ Prelude.Just ("importId" Data..= importId),+ Prelude.Just+ ( "resourceSpecification"+ Data..= resourceSpecification+ ),+ Prelude.Just+ ("mergeStrategy" Data..= mergeStrategy)+ ]+ )++instance Data.ToPath StartImport where+ toPath = Prelude.const "/imports/"++instance Data.ToQuery StartImport where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newStartImportResponse' smart constructor.+data StartImportResponse = StartImportResponse'+ { -- | The date and time that the import request was created.+ creationDateTime :: Prelude.Maybe Data.POSIX,+ -- | A unique identifier for the import.+ importId :: Prelude.Maybe Prelude.Text,+ -- | The current status of the import. When the status is @Complete@ the bot,+ -- bot alias, or custom vocabulary is ready to use.+ importStatus :: Prelude.Maybe ImportStatus,+ -- | The strategy used when there was a name conflict between the imported+ -- resource and an existing resource. When the merge strategy is+ -- @FailOnConflict@ existing resources are not overwritten and the import+ -- fails.+ mergeStrategy :: Prelude.Maybe MergeStrategy,+ -- | The parameters used when importing the resource.+ resourceSpecification :: Prelude.Maybe ImportResourceSpecification,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'StartImportResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'creationDateTime', 'startImportResponse_creationDateTime' - The date and time that the import request was created.+--+-- 'importId', 'startImportResponse_importId' - A unique identifier for the import.+--+-- 'importStatus', 'startImportResponse_importStatus' - The current status of the import. When the status is @Complete@ the bot,+-- bot alias, or custom vocabulary is ready to use.+--+-- 'mergeStrategy', 'startImportResponse_mergeStrategy' - The strategy used when there was a name conflict between the imported+-- resource and an existing resource. When the merge strategy is+-- @FailOnConflict@ existing resources are not overwritten and the import+-- fails.+--+-- 'resourceSpecification', 'startImportResponse_resourceSpecification' - The parameters used when importing the resource.+--+-- 'httpStatus', 'startImportResponse_httpStatus' - The response's http status code.+newStartImportResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ StartImportResponse+newStartImportResponse pHttpStatus_ =+ StartImportResponse'+ { creationDateTime =+ Prelude.Nothing,+ importId = Prelude.Nothing,+ importStatus = Prelude.Nothing,+ mergeStrategy = Prelude.Nothing,+ resourceSpecification = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The date and time that the import request was created.+startImportResponse_creationDateTime :: Lens.Lens' StartImportResponse (Prelude.Maybe Prelude.UTCTime)+startImportResponse_creationDateTime = Lens.lens (\StartImportResponse' {creationDateTime} -> creationDateTime) (\s@StartImportResponse' {} a -> s {creationDateTime = a} :: StartImportResponse) Prelude.. Lens.mapping Data._Time++-- | A unique identifier for the import.+startImportResponse_importId :: Lens.Lens' StartImportResponse (Prelude.Maybe Prelude.Text)+startImportResponse_importId = Lens.lens (\StartImportResponse' {importId} -> importId) (\s@StartImportResponse' {} a -> s {importId = a} :: StartImportResponse)++-- | The current status of the import. When the status is @Complete@ the bot,+-- bot alias, or custom vocabulary is ready to use.+startImportResponse_importStatus :: Lens.Lens' StartImportResponse (Prelude.Maybe ImportStatus)+startImportResponse_importStatus = Lens.lens (\StartImportResponse' {importStatus} -> importStatus) (\s@StartImportResponse' {} a -> s {importStatus = a} :: StartImportResponse)++-- | The strategy used when there was a name conflict between the imported+-- resource and an existing resource. When the merge strategy is+-- @FailOnConflict@ existing resources are not overwritten and the import+-- fails.+startImportResponse_mergeStrategy :: Lens.Lens' StartImportResponse (Prelude.Maybe MergeStrategy)+startImportResponse_mergeStrategy = Lens.lens (\StartImportResponse' {mergeStrategy} -> mergeStrategy) (\s@StartImportResponse' {} a -> s {mergeStrategy = a} :: StartImportResponse)++-- | The parameters used when importing the resource.+startImportResponse_resourceSpecification :: Lens.Lens' StartImportResponse (Prelude.Maybe ImportResourceSpecification)+startImportResponse_resourceSpecification = Lens.lens (\StartImportResponse' {resourceSpecification} -> resourceSpecification) (\s@StartImportResponse' {} a -> s {resourceSpecification = a} :: StartImportResponse)++-- | The response's http status code.+startImportResponse_httpStatus :: Lens.Lens' StartImportResponse Prelude.Int+startImportResponse_httpStatus = Lens.lens (\StartImportResponse' {httpStatus} -> httpStatus) (\s@StartImportResponse' {} a -> s {httpStatus = a} :: StartImportResponse)++instance Prelude.NFData StartImportResponse where+ rnf StartImportResponse' {..} =+ Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf importId+ `Prelude.seq` Prelude.rnf importStatus+ `Prelude.seq` Prelude.rnf mergeStrategy+ `Prelude.seq` Prelude.rnf resourceSpecification+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/StopBotRecommendation.hs view
@@ -0,0 +1,299 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.StopBotRecommendation+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Stop an already running Bot Recommendation request.+module Amazonka.LexV2Models.StopBotRecommendation+ ( -- * Creating a Request+ StopBotRecommendation (..),+ newStopBotRecommendation,++ -- * Request Lenses+ stopBotRecommendation_botId,+ stopBotRecommendation_botVersion,+ stopBotRecommendation_localeId,+ stopBotRecommendation_botRecommendationId,++ -- * Destructuring the Response+ StopBotRecommendationResponse (..),+ newStopBotRecommendationResponse,++ -- * Response Lenses+ stopBotRecommendationResponse_botId,+ stopBotRecommendationResponse_botRecommendationId,+ stopBotRecommendationResponse_botRecommendationStatus,+ stopBotRecommendationResponse_botVersion,+ stopBotRecommendationResponse_localeId,+ stopBotRecommendationResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newStopBotRecommendation' smart constructor.+data StopBotRecommendation = StopBotRecommendation'+ { -- | The unique identifier of the bot containing the bot recommendation to be+ -- stopped.+ botId :: Prelude.Text,+ -- | The version of the bot containing the bot recommendation.+ botVersion :: Prelude.Text,+ -- | The identifier of the language and locale of the bot recommendation to+ -- stop. The string must match one of the supported locales. For more+ -- information, see+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>+ localeId :: Prelude.Text,+ -- | The unique identifier of the bot recommendation to be stopped.+ botRecommendationId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'StopBotRecommendation' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'stopBotRecommendation_botId' - The unique identifier of the bot containing the bot recommendation to be+-- stopped.+--+-- 'botVersion', 'stopBotRecommendation_botVersion' - The version of the bot containing the bot recommendation.+--+-- 'localeId', 'stopBotRecommendation_localeId' - The identifier of the language and locale of the bot recommendation to+-- stop. The string must match one of the supported locales. For more+-- information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>+--+-- 'botRecommendationId', 'stopBotRecommendation_botRecommendationId' - The unique identifier of the bot recommendation to be stopped.+newStopBotRecommendation ::+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ -- | 'localeId'+ Prelude.Text ->+ -- | 'botRecommendationId'+ Prelude.Text ->+ StopBotRecommendation+newStopBotRecommendation+ pBotId_+ pBotVersion_+ pLocaleId_+ pBotRecommendationId_ =+ StopBotRecommendation'+ { botId = pBotId_,+ botVersion = pBotVersion_,+ localeId = pLocaleId_,+ botRecommendationId = pBotRecommendationId_+ }++-- | The unique identifier of the bot containing the bot recommendation to be+-- stopped.+stopBotRecommendation_botId :: Lens.Lens' StopBotRecommendation Prelude.Text+stopBotRecommendation_botId = Lens.lens (\StopBotRecommendation' {botId} -> botId) (\s@StopBotRecommendation' {} a -> s {botId = a} :: StopBotRecommendation)++-- | The version of the bot containing the bot recommendation.+stopBotRecommendation_botVersion :: Lens.Lens' StopBotRecommendation Prelude.Text+stopBotRecommendation_botVersion = Lens.lens (\StopBotRecommendation' {botVersion} -> botVersion) (\s@StopBotRecommendation' {} a -> s {botVersion = a} :: StopBotRecommendation)++-- | The identifier of the language and locale of the bot recommendation to+-- stop. The string must match one of the supported locales. For more+-- information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>+stopBotRecommendation_localeId :: Lens.Lens' StopBotRecommendation Prelude.Text+stopBotRecommendation_localeId = Lens.lens (\StopBotRecommendation' {localeId} -> localeId) (\s@StopBotRecommendation' {} a -> s {localeId = a} :: StopBotRecommendation)++-- | The unique identifier of the bot recommendation to be stopped.+stopBotRecommendation_botRecommendationId :: Lens.Lens' StopBotRecommendation Prelude.Text+stopBotRecommendation_botRecommendationId = Lens.lens (\StopBotRecommendation' {botRecommendationId} -> botRecommendationId) (\s@StopBotRecommendation' {} a -> s {botRecommendationId = a} :: StopBotRecommendation)++instance Core.AWSRequest StopBotRecommendation where+ type+ AWSResponse StopBotRecommendation =+ StopBotRecommendationResponse+ request overrides =+ Request.putJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ StopBotRecommendationResponse'+ Prelude.<$> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botRecommendationId")+ Prelude.<*> (x Data..?> "botRecommendationStatus")+ Prelude.<*> (x Data..?> "botVersion")+ Prelude.<*> (x Data..?> "localeId")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable StopBotRecommendation where+ hashWithSalt _salt StopBotRecommendation' {..} =+ _salt+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` localeId+ `Prelude.hashWithSalt` botRecommendationId++instance Prelude.NFData StopBotRecommendation where+ rnf StopBotRecommendation' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf botRecommendationId++instance Data.ToHeaders StopBotRecommendation where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON StopBotRecommendation where+ toJSON = Prelude.const (Data.Object Prelude.mempty)++instance Data.ToPath StopBotRecommendation where+ toPath StopBotRecommendation' {..} =+ Prelude.mconcat+ [ "/bots/",+ Data.toBS botId,+ "/botversions/",+ Data.toBS botVersion,+ "/botlocales/",+ Data.toBS localeId,+ "/botrecommendations/",+ Data.toBS botRecommendationId,+ "/stopbotrecommendation"+ ]++instance Data.ToQuery StopBotRecommendation where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newStopBotRecommendationResponse' smart constructor.+data StopBotRecommendationResponse = StopBotRecommendationResponse'+ { -- | The unique identifier of the bot containing the bot recommendation that+ -- is being stopped.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier of the bot recommendation that is being stopped.+ botRecommendationId :: Prelude.Maybe Prelude.Text,+ -- | The status of the bot recommendation. If the status is Failed, then the+ -- reasons for the failure are listed in the failureReasons field.+ botRecommendationStatus :: Prelude.Maybe BotRecommendationStatus,+ -- | The version of the bot containing the recommendation that is being+ -- stopped.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | The identifier of the language and locale of the bot response to stop.+ -- The string must match one of the supported locales. For more+ -- information, see+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>+ localeId :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'StopBotRecommendationResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'stopBotRecommendationResponse_botId' - The unique identifier of the bot containing the bot recommendation that+-- is being stopped.+--+-- 'botRecommendationId', 'stopBotRecommendationResponse_botRecommendationId' - The unique identifier of the bot recommendation that is being stopped.+--+-- 'botRecommendationStatus', 'stopBotRecommendationResponse_botRecommendationStatus' - The status of the bot recommendation. If the status is Failed, then the+-- reasons for the failure are listed in the failureReasons field.+--+-- 'botVersion', 'stopBotRecommendationResponse_botVersion' - The version of the bot containing the recommendation that is being+-- stopped.+--+-- 'localeId', 'stopBotRecommendationResponse_localeId' - The identifier of the language and locale of the bot response to stop.+-- The string must match one of the supported locales. For more+-- information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>+--+-- 'httpStatus', 'stopBotRecommendationResponse_httpStatus' - The response's http status code.+newStopBotRecommendationResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ StopBotRecommendationResponse+newStopBotRecommendationResponse pHttpStatus_ =+ StopBotRecommendationResponse'+ { botId =+ Prelude.Nothing,+ botRecommendationId = Prelude.Nothing,+ botRecommendationStatus = Prelude.Nothing,+ botVersion = Prelude.Nothing,+ localeId = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The unique identifier of the bot containing the bot recommendation that+-- is being stopped.+stopBotRecommendationResponse_botId :: Lens.Lens' StopBotRecommendationResponse (Prelude.Maybe Prelude.Text)+stopBotRecommendationResponse_botId = Lens.lens (\StopBotRecommendationResponse' {botId} -> botId) (\s@StopBotRecommendationResponse' {} a -> s {botId = a} :: StopBotRecommendationResponse)++-- | The unique identifier of the bot recommendation that is being stopped.+stopBotRecommendationResponse_botRecommendationId :: Lens.Lens' StopBotRecommendationResponse (Prelude.Maybe Prelude.Text)+stopBotRecommendationResponse_botRecommendationId = Lens.lens (\StopBotRecommendationResponse' {botRecommendationId} -> botRecommendationId) (\s@StopBotRecommendationResponse' {} a -> s {botRecommendationId = a} :: StopBotRecommendationResponse)++-- | The status of the bot recommendation. If the status is Failed, then the+-- reasons for the failure are listed in the failureReasons field.+stopBotRecommendationResponse_botRecommendationStatus :: Lens.Lens' StopBotRecommendationResponse (Prelude.Maybe BotRecommendationStatus)+stopBotRecommendationResponse_botRecommendationStatus = Lens.lens (\StopBotRecommendationResponse' {botRecommendationStatus} -> botRecommendationStatus) (\s@StopBotRecommendationResponse' {} a -> s {botRecommendationStatus = a} :: StopBotRecommendationResponse)++-- | The version of the bot containing the recommendation that is being+-- stopped.+stopBotRecommendationResponse_botVersion :: Lens.Lens' StopBotRecommendationResponse (Prelude.Maybe Prelude.Text)+stopBotRecommendationResponse_botVersion = Lens.lens (\StopBotRecommendationResponse' {botVersion} -> botVersion) (\s@StopBotRecommendationResponse' {} a -> s {botVersion = a} :: StopBotRecommendationResponse)++-- | The identifier of the language and locale of the bot response to stop.+-- The string must match one of the supported locales. For more+-- information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>+stopBotRecommendationResponse_localeId :: Lens.Lens' StopBotRecommendationResponse (Prelude.Maybe Prelude.Text)+stopBotRecommendationResponse_localeId = Lens.lens (\StopBotRecommendationResponse' {localeId} -> localeId) (\s@StopBotRecommendationResponse' {} a -> s {localeId = a} :: StopBotRecommendationResponse)++-- | The response's http status code.+stopBotRecommendationResponse_httpStatus :: Lens.Lens' StopBotRecommendationResponse Prelude.Int+stopBotRecommendationResponse_httpStatus = Lens.lens (\StopBotRecommendationResponse' {httpStatus} -> httpStatus) (\s@StopBotRecommendationResponse' {} a -> s {httpStatus = a} :: StopBotRecommendationResponse)++instance Prelude.NFData StopBotRecommendationResponse where+ rnf StopBotRecommendationResponse' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botRecommendationId+ `Prelude.seq` Prelude.rnf botRecommendationStatus+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/TagResource.hs view
@@ -0,0 +1,170 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.TagResource+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Adds the specified tags to the specified resource. If a tag key already+-- exists, the existing value is replaced with the new value.+module Amazonka.LexV2Models.TagResource+ ( -- * Creating a Request+ TagResource (..),+ newTagResource,++ -- * Request Lenses+ tagResource_resourceARN,+ tagResource_tags,++ -- * Destructuring the Response+ TagResourceResponse (..),+ newTagResourceResponse,++ -- * Response Lenses+ tagResourceResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newTagResource' smart constructor.+data TagResource = TagResource'+ { -- | The Amazon Resource Name (ARN) of the bot, bot alias, or bot channel to+ -- tag.+ resourceARN :: Prelude.Text,+ -- | A list of tag keys to add to the resource. If a tag key already exists,+ -- the existing value is replaced with the new value.+ tags :: Prelude.HashMap Prelude.Text Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TagResource' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'resourceARN', 'tagResource_resourceARN' - The Amazon Resource Name (ARN) of the bot, bot alias, or bot channel to+-- tag.+--+-- 'tags', 'tagResource_tags' - A list of tag keys to add to the resource. If a tag key already exists,+-- the existing value is replaced with the new value.+newTagResource ::+ -- | 'resourceARN'+ Prelude.Text ->+ TagResource+newTagResource pResourceARN_ =+ TagResource'+ { resourceARN = pResourceARN_,+ tags = Prelude.mempty+ }++-- | The Amazon Resource Name (ARN) of the bot, bot alias, or bot channel to+-- tag.+tagResource_resourceARN :: Lens.Lens' TagResource Prelude.Text+tagResource_resourceARN = Lens.lens (\TagResource' {resourceARN} -> resourceARN) (\s@TagResource' {} a -> s {resourceARN = a} :: TagResource)++-- | A list of tag keys to add to the resource. If a tag key already exists,+-- the existing value is replaced with the new value.+tagResource_tags :: Lens.Lens' TagResource (Prelude.HashMap Prelude.Text Prelude.Text)+tagResource_tags = Lens.lens (\TagResource' {tags} -> tags) (\s@TagResource' {} a -> s {tags = a} :: TagResource) Prelude.. Lens.coerced++instance Core.AWSRequest TagResource where+ type AWSResponse TagResource = TagResourceResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ TagResourceResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable TagResource where+ hashWithSalt _salt TagResource' {..} =+ _salt+ `Prelude.hashWithSalt` resourceARN+ `Prelude.hashWithSalt` tags++instance Prelude.NFData TagResource where+ rnf TagResource' {..} =+ Prelude.rnf resourceARN+ `Prelude.seq` Prelude.rnf tags++instance Data.ToHeaders TagResource where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON TagResource where+ toJSON TagResource' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("tags" Data..= tags)]+ )++instance Data.ToPath TagResource where+ toPath TagResource' {..} =+ Prelude.mconcat ["/tags/", Data.toBS resourceARN]++instance Data.ToQuery TagResource where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newTagResourceResponse' smart constructor.+data TagResourceResponse = TagResourceResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TagResourceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'tagResourceResponse_httpStatus' - The response's http status code.+newTagResourceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ TagResourceResponse+newTagResourceResponse pHttpStatus_ =+ TagResourceResponse' {httpStatus = pHttpStatus_}++-- | The response's http status code.+tagResourceResponse_httpStatus :: Lens.Lens' TagResourceResponse Prelude.Int+tagResourceResponse_httpStatus = Lens.lens (\TagResourceResponse' {httpStatus} -> httpStatus) (\s@TagResourceResponse' {} a -> s {httpStatus = a} :: TagResourceResponse)++instance Prelude.NFData TagResourceResponse where+ rnf TagResourceResponse' {..} = Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/Types.hs view
@@ -0,0 +1,1473 @@+{-# LANGUAGE DisambiguateRecordFields #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types+ ( -- * Service Configuration+ defaultService,++ -- * Errors+ _ConflictException,+ _InternalServerException,+ _PreconditionFailedException,+ _ResourceNotFoundException,+ _ServiceQuotaExceededException,+ _ThrottlingException,+ _ValidationException,++ -- * AggregatedUtterancesFilterName+ AggregatedUtterancesFilterName (..),++ -- * AggregatedUtterancesFilterOperator+ AggregatedUtterancesFilterOperator (..),++ -- * AggregatedUtterancesSortAttribute+ AggregatedUtterancesSortAttribute (..),++ -- * AssociatedTranscriptFilterName+ AssociatedTranscriptFilterName (..),++ -- * AudioRecognitionStrategy+ AudioRecognitionStrategy (..),++ -- * BotAliasStatus+ BotAliasStatus (..),++ -- * BotFilterName+ BotFilterName (..),++ -- * BotFilterOperator+ BotFilterOperator (..),++ -- * BotLocaleFilterName+ BotLocaleFilterName (..),++ -- * BotLocaleFilterOperator+ BotLocaleFilterOperator (..),++ -- * BotLocaleSortAttribute+ BotLocaleSortAttribute (..),++ -- * BotLocaleStatus+ BotLocaleStatus (..),++ -- * BotRecommendationStatus+ BotRecommendationStatus (..),++ -- * BotSortAttribute+ BotSortAttribute (..),++ -- * BotStatus+ BotStatus (..),++ -- * BotVersionSortAttribute+ BotVersionSortAttribute (..),++ -- * BuiltInIntentSortAttribute+ BuiltInIntentSortAttribute (..),++ -- * BuiltInSlotTypeSortAttribute+ BuiltInSlotTypeSortAttribute (..),++ -- * CustomVocabularyStatus+ CustomVocabularyStatus (..),++ -- * DialogActionType+ DialogActionType (..),++ -- * Effect+ Effect (..),++ -- * ErrorCode+ ErrorCode (..),++ -- * ExportFilterName+ ExportFilterName (..),++ -- * ExportFilterOperator+ ExportFilterOperator (..),++ -- * ExportSortAttribute+ ExportSortAttribute (..),++ -- * ExportStatus+ ExportStatus (..),++ -- * ImportExportFileFormat+ ImportExportFileFormat (..),++ -- * ImportFilterName+ ImportFilterName (..),++ -- * ImportFilterOperator+ ImportFilterOperator (..),++ -- * ImportResourceType+ ImportResourceType (..),++ -- * ImportSortAttribute+ ImportSortAttribute (..),++ -- * ImportStatus+ ImportStatus (..),++ -- * IntentFilterName+ IntentFilterName (..),++ -- * IntentFilterOperator+ IntentFilterOperator (..),++ -- * IntentSortAttribute+ IntentSortAttribute (..),++ -- * MergeStrategy+ MergeStrategy (..),++ -- * MessageSelectionStrategy+ MessageSelectionStrategy (..),++ -- * ObfuscationSettingType+ ObfuscationSettingType (..),++ -- * PromptAttempt+ PromptAttempt (..),++ -- * SearchOrder+ SearchOrder (..),++ -- * SlotConstraint+ SlotConstraint (..),++ -- * SlotFilterName+ SlotFilterName (..),++ -- * SlotFilterOperator+ SlotFilterOperator (..),++ -- * SlotShape+ SlotShape (..),++ -- * SlotSortAttribute+ SlotSortAttribute (..),++ -- * SlotTypeCategory+ SlotTypeCategory (..),++ -- * SlotTypeFilterName+ SlotTypeFilterName (..),++ -- * SlotTypeFilterOperator+ SlotTypeFilterOperator (..),++ -- * SlotTypeSortAttribute+ SlotTypeSortAttribute (..),++ -- * SlotValueResolutionStrategy+ SlotValueResolutionStrategy (..),++ -- * SortOrder+ SortOrder (..),++ -- * TimeDimension+ TimeDimension (..),++ -- * TranscriptFormat+ TranscriptFormat (..),++ -- * VoiceEngine+ VoiceEngine (..),++ -- * AdvancedRecognitionSetting+ AdvancedRecognitionSetting (..),+ newAdvancedRecognitionSetting,+ advancedRecognitionSetting_audioRecognitionStrategy,++ -- * AggregatedUtterancesFilter+ AggregatedUtterancesFilter (..),+ newAggregatedUtterancesFilter,+ aggregatedUtterancesFilter_name,+ aggregatedUtterancesFilter_values,+ aggregatedUtterancesFilter_operator,++ -- * AggregatedUtterancesSortBy+ AggregatedUtterancesSortBy (..),+ newAggregatedUtterancesSortBy,+ aggregatedUtterancesSortBy_attribute,+ aggregatedUtterancesSortBy_order,++ -- * AggregatedUtterancesSummary+ AggregatedUtterancesSummary (..),+ newAggregatedUtterancesSummary,+ aggregatedUtterancesSummary_containsDataFromDeletedResources,+ aggregatedUtterancesSummary_hitCount,+ aggregatedUtterancesSummary_missedCount,+ aggregatedUtterancesSummary_utterance,+ aggregatedUtterancesSummary_utteranceFirstRecordedInAggregationDuration,+ aggregatedUtterancesSummary_utteranceLastRecordedInAggregationDuration,++ -- * AllowedInputTypes+ AllowedInputTypes (..),+ newAllowedInputTypes,+ allowedInputTypes_allowAudioInput,+ allowedInputTypes_allowDTMFInput,++ -- * AssociatedTranscript+ AssociatedTranscript (..),+ newAssociatedTranscript,+ associatedTranscript_transcript,++ -- * AssociatedTranscriptFilter+ AssociatedTranscriptFilter (..),+ newAssociatedTranscriptFilter,+ associatedTranscriptFilter_name,+ associatedTranscriptFilter_values,++ -- * AudioAndDTMFInputSpecification+ AudioAndDTMFInputSpecification (..),+ newAudioAndDTMFInputSpecification,+ audioAndDTMFInputSpecification_audioSpecification,+ audioAndDTMFInputSpecification_dtmfSpecification,+ audioAndDTMFInputSpecification_startTimeoutMs,++ -- * AudioLogDestination+ AudioLogDestination (..),+ newAudioLogDestination,+ audioLogDestination_s3Bucket,++ -- * AudioLogSetting+ AudioLogSetting (..),+ newAudioLogSetting,+ audioLogSetting_enabled,+ audioLogSetting_destination,++ -- * AudioSpecification+ AudioSpecification (..),+ newAudioSpecification,+ audioSpecification_maxLengthMs,+ audioSpecification_endTimeoutMs,++ -- * BotAliasHistoryEvent+ BotAliasHistoryEvent (..),+ newBotAliasHistoryEvent,+ botAliasHistoryEvent_botVersion,+ botAliasHistoryEvent_endDate,+ botAliasHistoryEvent_startDate,++ -- * BotAliasLocaleSettings+ BotAliasLocaleSettings (..),+ newBotAliasLocaleSettings,+ botAliasLocaleSettings_codeHookSpecification,+ botAliasLocaleSettings_enabled,++ -- * BotAliasSummary+ BotAliasSummary (..),+ newBotAliasSummary,+ botAliasSummary_botAliasId,+ botAliasSummary_botAliasName,+ botAliasSummary_botAliasStatus,+ botAliasSummary_botVersion,+ botAliasSummary_creationDateTime,+ botAliasSummary_description,+ botAliasSummary_lastUpdatedDateTime,++ -- * BotExportSpecification+ BotExportSpecification (..),+ newBotExportSpecification,+ botExportSpecification_botId,+ botExportSpecification_botVersion,++ -- * BotFilter+ BotFilter (..),+ newBotFilter,+ botFilter_name,+ botFilter_values,+ botFilter_operator,++ -- * BotImportSpecification+ BotImportSpecification (..),+ newBotImportSpecification,+ botImportSpecification_botTags,+ botImportSpecification_idleSessionTTLInSeconds,+ botImportSpecification_testBotAliasTags,+ botImportSpecification_botName,+ botImportSpecification_roleArn,+ botImportSpecification_dataPrivacy,++ -- * BotLocaleExportSpecification+ BotLocaleExportSpecification (..),+ newBotLocaleExportSpecification,+ botLocaleExportSpecification_botId,+ botLocaleExportSpecification_botVersion,+ botLocaleExportSpecification_localeId,++ -- * BotLocaleFilter+ BotLocaleFilter (..),+ newBotLocaleFilter,+ botLocaleFilter_name,+ botLocaleFilter_values,+ botLocaleFilter_operator,++ -- * BotLocaleHistoryEvent+ BotLocaleHistoryEvent (..),+ newBotLocaleHistoryEvent,+ botLocaleHistoryEvent_event,+ botLocaleHistoryEvent_eventDate,++ -- * BotLocaleImportSpecification+ BotLocaleImportSpecification (..),+ newBotLocaleImportSpecification,+ botLocaleImportSpecification_nluIntentConfidenceThreshold,+ botLocaleImportSpecification_voiceSettings,+ botLocaleImportSpecification_botId,+ botLocaleImportSpecification_botVersion,+ botLocaleImportSpecification_localeId,++ -- * BotLocaleSortBy+ BotLocaleSortBy (..),+ newBotLocaleSortBy,+ botLocaleSortBy_attribute,+ botLocaleSortBy_order,++ -- * BotLocaleSummary+ BotLocaleSummary (..),+ newBotLocaleSummary,+ botLocaleSummary_botLocaleStatus,+ botLocaleSummary_description,+ botLocaleSummary_lastBuildSubmittedDateTime,+ botLocaleSummary_lastUpdatedDateTime,+ botLocaleSummary_localeId,+ botLocaleSummary_localeName,++ -- * BotRecommendationResultStatistics+ BotRecommendationResultStatistics (..),+ newBotRecommendationResultStatistics,+ botRecommendationResultStatistics_intents,+ botRecommendationResultStatistics_slotTypes,++ -- * BotRecommendationResults+ BotRecommendationResults (..),+ newBotRecommendationResults,+ botRecommendationResults_associatedTranscriptsUrl,+ botRecommendationResults_botLocaleExportUrl,+ botRecommendationResults_statistics,++ -- * BotRecommendationSummary+ BotRecommendationSummary (..),+ newBotRecommendationSummary,+ botRecommendationSummary_creationDateTime,+ botRecommendationSummary_lastUpdatedDateTime,+ botRecommendationSummary_botRecommendationStatus,+ botRecommendationSummary_botRecommendationId,++ -- * BotSortBy+ BotSortBy (..),+ newBotSortBy,+ botSortBy_attribute,+ botSortBy_order,++ -- * BotSummary+ BotSummary (..),+ newBotSummary,+ botSummary_botId,+ botSummary_botName,+ botSummary_botStatus,+ botSummary_description,+ botSummary_lastUpdatedDateTime,+ botSummary_latestBotVersion,++ -- * BotVersionLocaleDetails+ BotVersionLocaleDetails (..),+ newBotVersionLocaleDetails,+ botVersionLocaleDetails_sourceBotVersion,++ -- * BotVersionSortBy+ BotVersionSortBy (..),+ newBotVersionSortBy,+ botVersionSortBy_attribute,+ botVersionSortBy_order,++ -- * BotVersionSummary+ BotVersionSummary (..),+ newBotVersionSummary,+ botVersionSummary_botName,+ botVersionSummary_botStatus,+ botVersionSummary_botVersion,+ botVersionSummary_creationDateTime,+ botVersionSummary_description,++ -- * BuiltInIntentSortBy+ BuiltInIntentSortBy (..),+ newBuiltInIntentSortBy,+ builtInIntentSortBy_attribute,+ builtInIntentSortBy_order,++ -- * BuiltInIntentSummary+ BuiltInIntentSummary (..),+ newBuiltInIntentSummary,+ builtInIntentSummary_description,+ builtInIntentSummary_intentSignature,++ -- * BuiltInSlotTypeSortBy+ BuiltInSlotTypeSortBy (..),+ newBuiltInSlotTypeSortBy,+ builtInSlotTypeSortBy_attribute,+ builtInSlotTypeSortBy_order,++ -- * BuiltInSlotTypeSummary+ BuiltInSlotTypeSummary (..),+ newBuiltInSlotTypeSummary,+ builtInSlotTypeSummary_description,+ builtInSlotTypeSummary_slotTypeSignature,++ -- * Button+ Button (..),+ newButton,+ button_text,+ button_value,++ -- * CloudWatchLogGroupLogDestination+ CloudWatchLogGroupLogDestination (..),+ newCloudWatchLogGroupLogDestination,+ cloudWatchLogGroupLogDestination_cloudWatchLogGroupArn,+ cloudWatchLogGroupLogDestination_logPrefix,++ -- * CodeHookSpecification+ CodeHookSpecification (..),+ newCodeHookSpecification,+ codeHookSpecification_lambdaCodeHook,++ -- * CompositeSlotTypeSetting+ CompositeSlotTypeSetting (..),+ newCompositeSlotTypeSetting,+ compositeSlotTypeSetting_subSlots,++ -- * Condition+ Condition (..),+ newCondition,+ condition_expressionString,++ -- * ConditionalBranch+ ConditionalBranch (..),+ newConditionalBranch,+ conditionalBranch_response,+ conditionalBranch_name,+ conditionalBranch_condition,+ conditionalBranch_nextStep,++ -- * ConditionalSpecification+ ConditionalSpecification (..),+ newConditionalSpecification,+ conditionalSpecification_active,+ conditionalSpecification_conditionalBranches,+ conditionalSpecification_defaultBranch,++ -- * ConversationLogSettings+ ConversationLogSettings (..),+ newConversationLogSettings,+ conversationLogSettings_audioLogSettings,+ conversationLogSettings_textLogSettings,++ -- * CustomPayload+ CustomPayload (..),+ newCustomPayload,+ customPayload_value,++ -- * CustomVocabularyEntryId+ CustomVocabularyEntryId (..),+ newCustomVocabularyEntryId,+ customVocabularyEntryId_itemId,++ -- * CustomVocabularyExportSpecification+ CustomVocabularyExportSpecification (..),+ newCustomVocabularyExportSpecification,+ customVocabularyExportSpecification_botId,+ customVocabularyExportSpecification_botVersion,+ customVocabularyExportSpecification_localeId,++ -- * CustomVocabularyImportSpecification+ CustomVocabularyImportSpecification (..),+ newCustomVocabularyImportSpecification,+ customVocabularyImportSpecification_botId,+ customVocabularyImportSpecification_botVersion,+ customVocabularyImportSpecification_localeId,++ -- * CustomVocabularyItem+ CustomVocabularyItem (..),+ newCustomVocabularyItem,+ customVocabularyItem_displayAs,+ customVocabularyItem_weight,+ customVocabularyItem_itemId,+ customVocabularyItem_phrase,++ -- * DTMFSpecification+ DTMFSpecification (..),+ newDTMFSpecification,+ dTMFSpecification_maxLength,+ dTMFSpecification_endTimeoutMs,+ dTMFSpecification_deletionCharacter,+ dTMFSpecification_endCharacter,++ -- * DataPrivacy+ DataPrivacy (..),+ newDataPrivacy,+ dataPrivacy_childDirected,++ -- * DateRangeFilter+ DateRangeFilter (..),+ newDateRangeFilter,+ dateRangeFilter_startDateTime,+ dateRangeFilter_endDateTime,++ -- * DefaultConditionalBranch+ DefaultConditionalBranch (..),+ newDefaultConditionalBranch,+ defaultConditionalBranch_nextStep,+ defaultConditionalBranch_response,++ -- * DialogAction+ DialogAction (..),+ newDialogAction,+ dialogAction_slotToElicit,+ dialogAction_suppressNextMessage,+ dialogAction_type,++ -- * DialogCodeHookInvocationSetting+ DialogCodeHookInvocationSetting (..),+ newDialogCodeHookInvocationSetting,+ dialogCodeHookInvocationSetting_invocationLabel,+ dialogCodeHookInvocationSetting_enableCodeHookInvocation,+ dialogCodeHookInvocationSetting_active,+ dialogCodeHookInvocationSetting_postCodeHookSpecification,++ -- * DialogCodeHookSettings+ DialogCodeHookSettings (..),+ newDialogCodeHookSettings,+ dialogCodeHookSettings_enabled,++ -- * DialogState+ DialogState (..),+ newDialogState,+ dialogState_dialogAction,+ dialogState_intent,+ dialogState_sessionAttributes,++ -- * ElicitationCodeHookInvocationSetting+ ElicitationCodeHookInvocationSetting (..),+ newElicitationCodeHookInvocationSetting,+ elicitationCodeHookInvocationSetting_invocationLabel,+ elicitationCodeHookInvocationSetting_enableCodeHookInvocation,++ -- * EncryptionSetting+ EncryptionSetting (..),+ newEncryptionSetting,+ encryptionSetting_associatedTranscriptsPassword,+ encryptionSetting_botLocaleExportPassword,+ encryptionSetting_kmsKeyArn,++ -- * ExportFilter+ ExportFilter (..),+ newExportFilter,+ exportFilter_name,+ exportFilter_values,+ exportFilter_operator,++ -- * ExportResourceSpecification+ ExportResourceSpecification (..),+ newExportResourceSpecification,+ exportResourceSpecification_botExportSpecification,+ exportResourceSpecification_botLocaleExportSpecification,+ exportResourceSpecification_customVocabularyExportSpecification,++ -- * ExportSortBy+ ExportSortBy (..),+ newExportSortBy,+ exportSortBy_attribute,+ exportSortBy_order,++ -- * ExportSummary+ ExportSummary (..),+ newExportSummary,+ exportSummary_creationDateTime,+ exportSummary_exportId,+ exportSummary_exportStatus,+ exportSummary_fileFormat,+ exportSummary_lastUpdatedDateTime,+ exportSummary_resourceSpecification,++ -- * ExternalSourceSetting+ ExternalSourceSetting (..),+ newExternalSourceSetting,+ externalSourceSetting_grammarSlotTypeSetting,++ -- * FailedCustomVocabularyItem+ FailedCustomVocabularyItem (..),+ newFailedCustomVocabularyItem,+ failedCustomVocabularyItem_errorCode,+ failedCustomVocabularyItem_errorMessage,+ failedCustomVocabularyItem_itemId,++ -- * FulfillmentCodeHookSettings+ FulfillmentCodeHookSettings (..),+ newFulfillmentCodeHookSettings,+ fulfillmentCodeHookSettings_active,+ fulfillmentCodeHookSettings_fulfillmentUpdatesSpecification,+ fulfillmentCodeHookSettings_postFulfillmentStatusSpecification,+ fulfillmentCodeHookSettings_enabled,++ -- * FulfillmentStartResponseSpecification+ FulfillmentStartResponseSpecification (..),+ newFulfillmentStartResponseSpecification,+ fulfillmentStartResponseSpecification_allowInterrupt,+ fulfillmentStartResponseSpecification_delayInSeconds,+ fulfillmentStartResponseSpecification_messageGroups,++ -- * FulfillmentUpdateResponseSpecification+ FulfillmentUpdateResponseSpecification (..),+ newFulfillmentUpdateResponseSpecification,+ fulfillmentUpdateResponseSpecification_allowInterrupt,+ fulfillmentUpdateResponseSpecification_frequencyInSeconds,+ fulfillmentUpdateResponseSpecification_messageGroups,++ -- * FulfillmentUpdatesSpecification+ FulfillmentUpdatesSpecification (..),+ newFulfillmentUpdatesSpecification,+ fulfillmentUpdatesSpecification_startResponse,+ fulfillmentUpdatesSpecification_timeoutInSeconds,+ fulfillmentUpdatesSpecification_updateResponse,+ fulfillmentUpdatesSpecification_active,++ -- * GrammarSlotTypeSetting+ GrammarSlotTypeSetting (..),+ newGrammarSlotTypeSetting,+ grammarSlotTypeSetting_source,++ -- * GrammarSlotTypeSource+ GrammarSlotTypeSource (..),+ newGrammarSlotTypeSource,+ grammarSlotTypeSource_kmsKeyArn,+ grammarSlotTypeSource_s3BucketName,+ grammarSlotTypeSource_s3ObjectKey,++ -- * ImageResponseCard+ ImageResponseCard (..),+ newImageResponseCard,+ imageResponseCard_buttons,+ imageResponseCard_imageUrl,+ imageResponseCard_subtitle,+ imageResponseCard_title,++ -- * ImportFilter+ ImportFilter (..),+ newImportFilter,+ importFilter_name,+ importFilter_values,+ importFilter_operator,++ -- * ImportResourceSpecification+ ImportResourceSpecification (..),+ newImportResourceSpecification,+ importResourceSpecification_botImportSpecification,+ importResourceSpecification_botLocaleImportSpecification,+ importResourceSpecification_customVocabularyImportSpecification,++ -- * ImportSortBy+ ImportSortBy (..),+ newImportSortBy,+ importSortBy_attribute,+ importSortBy_order,++ -- * ImportSummary+ ImportSummary (..),+ newImportSummary,+ importSummary_creationDateTime,+ importSummary_importId,+ importSummary_importStatus,+ importSummary_importedResourceId,+ importSummary_importedResourceName,+ importSummary_importedResourceType,+ importSummary_lastUpdatedDateTime,+ importSummary_mergeStrategy,++ -- * InitialResponseSetting+ InitialResponseSetting (..),+ newInitialResponseSetting,+ initialResponseSetting_codeHook,+ initialResponseSetting_conditional,+ initialResponseSetting_initialResponse,+ initialResponseSetting_nextStep,++ -- * InputContext+ InputContext (..),+ newInputContext,+ inputContext_name,++ -- * IntentClosingSetting+ IntentClosingSetting (..),+ newIntentClosingSetting,+ intentClosingSetting_active,+ intentClosingSetting_closingResponse,+ intentClosingSetting_conditional,+ intentClosingSetting_nextStep,++ -- * IntentConfirmationSetting+ IntentConfirmationSetting (..),+ newIntentConfirmationSetting,+ intentConfirmationSetting_active,+ intentConfirmationSetting_codeHook,+ intentConfirmationSetting_confirmationConditional,+ intentConfirmationSetting_confirmationNextStep,+ intentConfirmationSetting_confirmationResponse,+ intentConfirmationSetting_declinationConditional,+ intentConfirmationSetting_declinationNextStep,+ intentConfirmationSetting_declinationResponse,+ intentConfirmationSetting_elicitationCodeHook,+ intentConfirmationSetting_failureConditional,+ intentConfirmationSetting_failureNextStep,+ intentConfirmationSetting_failureResponse,+ intentConfirmationSetting_promptSpecification,++ -- * IntentFilter+ IntentFilter (..),+ newIntentFilter,+ intentFilter_name,+ intentFilter_values,+ intentFilter_operator,++ -- * IntentOverride+ IntentOverride (..),+ newIntentOverride,+ intentOverride_name,+ intentOverride_slots,++ -- * IntentSortBy+ IntentSortBy (..),+ newIntentSortBy,+ intentSortBy_attribute,+ intentSortBy_order,++ -- * IntentStatistics+ IntentStatistics (..),+ newIntentStatistics,+ intentStatistics_discoveredIntentCount,++ -- * IntentSummary+ IntentSummary (..),+ newIntentSummary,+ intentSummary_description,+ intentSummary_inputContexts,+ intentSummary_intentId,+ intentSummary_intentName,+ intentSummary_lastUpdatedDateTime,+ intentSummary_outputContexts,+ intentSummary_parentIntentSignature,++ -- * KendraConfiguration+ KendraConfiguration (..),+ newKendraConfiguration,+ kendraConfiguration_queryFilterString,+ kendraConfiguration_queryFilterStringEnabled,+ kendraConfiguration_kendraIndex,++ -- * LambdaCodeHook+ LambdaCodeHook (..),+ newLambdaCodeHook,+ lambdaCodeHook_lambdaARN,+ lambdaCodeHook_codeHookInterfaceVersion,++ -- * LexTranscriptFilter+ LexTranscriptFilter (..),+ newLexTranscriptFilter,+ lexTranscriptFilter_dateRangeFilter,++ -- * Message+ Message (..),+ newMessage,+ message_customPayload,+ message_imageResponseCard,+ message_plainTextMessage,+ message_ssmlMessage,++ -- * MessageGroup+ MessageGroup (..),+ newMessageGroup,+ messageGroup_variations,+ messageGroup_message,++ -- * MultipleValuesSetting+ MultipleValuesSetting (..),+ newMultipleValuesSetting,+ multipleValuesSetting_allowMultipleValues,++ -- * NewCustomVocabularyItem+ NewCustomVocabularyItem (..),+ newNewCustomVocabularyItem,+ newCustomVocabularyItem_displayAs,+ newCustomVocabularyItem_weight,+ newCustomVocabularyItem_phrase,++ -- * ObfuscationSetting+ ObfuscationSetting (..),+ newObfuscationSetting,+ obfuscationSetting_obfuscationSettingType,++ -- * OutputContext+ OutputContext (..),+ newOutputContext,+ outputContext_name,+ outputContext_timeToLiveInSeconds,+ outputContext_turnsToLive,++ -- * PathFormat+ PathFormat (..),+ newPathFormat,+ pathFormat_objectPrefixes,++ -- * PlainTextMessage+ PlainTextMessage (..),+ newPlainTextMessage,+ plainTextMessage_value,++ -- * PostDialogCodeHookInvocationSpecification+ PostDialogCodeHookInvocationSpecification (..),+ newPostDialogCodeHookInvocationSpecification,+ postDialogCodeHookInvocationSpecification_failureConditional,+ postDialogCodeHookInvocationSpecification_failureNextStep,+ postDialogCodeHookInvocationSpecification_failureResponse,+ postDialogCodeHookInvocationSpecification_successConditional,+ postDialogCodeHookInvocationSpecification_successNextStep,+ postDialogCodeHookInvocationSpecification_successResponse,+ postDialogCodeHookInvocationSpecification_timeoutConditional,+ postDialogCodeHookInvocationSpecification_timeoutNextStep,+ postDialogCodeHookInvocationSpecification_timeoutResponse,++ -- * PostFulfillmentStatusSpecification+ PostFulfillmentStatusSpecification (..),+ newPostFulfillmentStatusSpecification,+ postFulfillmentStatusSpecification_failureConditional,+ postFulfillmentStatusSpecification_failureNextStep,+ postFulfillmentStatusSpecification_failureResponse,+ postFulfillmentStatusSpecification_successConditional,+ postFulfillmentStatusSpecification_successNextStep,+ postFulfillmentStatusSpecification_successResponse,+ postFulfillmentStatusSpecification_timeoutConditional,+ postFulfillmentStatusSpecification_timeoutNextStep,+ postFulfillmentStatusSpecification_timeoutResponse,++ -- * Principal+ Principal (..),+ newPrincipal,+ principal_arn,+ principal_service,++ -- * PromptAttemptSpecification+ PromptAttemptSpecification (..),+ newPromptAttemptSpecification,+ promptAttemptSpecification_allowInterrupt,+ promptAttemptSpecification_audioAndDTMFInputSpecification,+ promptAttemptSpecification_textInputSpecification,+ promptAttemptSpecification_allowedInputTypes,++ -- * PromptSpecification+ PromptSpecification (..),+ newPromptSpecification,+ promptSpecification_allowInterrupt,+ promptSpecification_messageSelectionStrategy,+ promptSpecification_promptAttemptsSpecification,+ promptSpecification_messageGroups,+ promptSpecification_maxRetries,++ -- * RecommendedIntentSummary+ RecommendedIntentSummary (..),+ newRecommendedIntentSummary,+ recommendedIntentSummary_intentId,+ recommendedIntentSummary_intentName,+ recommendedIntentSummary_sampleUtterancesCount,++ -- * RelativeAggregationDuration+ RelativeAggregationDuration (..),+ newRelativeAggregationDuration,+ relativeAggregationDuration_timeDimension,+ relativeAggregationDuration_timeValue,++ -- * ResponseSpecification+ ResponseSpecification (..),+ newResponseSpecification,+ responseSpecification_allowInterrupt,+ responseSpecification_messageGroups,++ -- * S3BucketLogDestination+ S3BucketLogDestination (..),+ newS3BucketLogDestination,+ s3BucketLogDestination_kmsKeyArn,+ s3BucketLogDestination_s3BucketArn,+ s3BucketLogDestination_logPrefix,++ -- * S3BucketTranscriptSource+ S3BucketTranscriptSource (..),+ newS3BucketTranscriptSource,+ s3BucketTranscriptSource_kmsKeyArn,+ s3BucketTranscriptSource_pathFormat,+ s3BucketTranscriptSource_transcriptFilter,+ s3BucketTranscriptSource_s3BucketName,+ s3BucketTranscriptSource_transcriptFormat,++ -- * SSMLMessage+ SSMLMessage (..),+ newSSMLMessage,+ sSMLMessage_value,++ -- * SampleUtterance+ SampleUtterance (..),+ newSampleUtterance,+ sampleUtterance_utterance,++ -- * SampleValue+ SampleValue (..),+ newSampleValue,+ sampleValue_value,++ -- * SentimentAnalysisSettings+ SentimentAnalysisSettings (..),+ newSentimentAnalysisSettings,+ sentimentAnalysisSettings_detectSentiment,++ -- * SlotCaptureSetting+ SlotCaptureSetting (..),+ newSlotCaptureSetting,+ slotCaptureSetting_captureConditional,+ slotCaptureSetting_captureNextStep,+ slotCaptureSetting_captureResponse,+ slotCaptureSetting_codeHook,+ slotCaptureSetting_elicitationCodeHook,+ slotCaptureSetting_failureConditional,+ slotCaptureSetting_failureNextStep,+ slotCaptureSetting_failureResponse,++ -- * SlotDefaultValue+ SlotDefaultValue (..),+ newSlotDefaultValue,+ slotDefaultValue_defaultValue,++ -- * SlotDefaultValueSpecification+ SlotDefaultValueSpecification (..),+ newSlotDefaultValueSpecification,+ slotDefaultValueSpecification_defaultValueList,++ -- * SlotFilter+ SlotFilter (..),+ newSlotFilter,+ slotFilter_name,+ slotFilter_values,+ slotFilter_operator,++ -- * SlotPriority+ SlotPriority (..),+ newSlotPriority,+ slotPriority_priority,+ slotPriority_slotId,++ -- * SlotSortBy+ SlotSortBy (..),+ newSlotSortBy,+ slotSortBy_attribute,+ slotSortBy_order,++ -- * SlotSummary+ SlotSummary (..),+ newSlotSummary,+ slotSummary_description,+ slotSummary_lastUpdatedDateTime,+ slotSummary_slotConstraint,+ slotSummary_slotId,+ slotSummary_slotName,+ slotSummary_slotTypeId,+ slotSummary_valueElicitationPromptSpecification,++ -- * SlotTypeFilter+ SlotTypeFilter (..),+ newSlotTypeFilter,+ slotTypeFilter_name,+ slotTypeFilter_values,+ slotTypeFilter_operator,++ -- * SlotTypeSortBy+ SlotTypeSortBy (..),+ newSlotTypeSortBy,+ slotTypeSortBy_attribute,+ slotTypeSortBy_order,++ -- * SlotTypeStatistics+ SlotTypeStatistics (..),+ newSlotTypeStatistics,+ slotTypeStatistics_discoveredSlotTypeCount,++ -- * SlotTypeSummary+ SlotTypeSummary (..),+ newSlotTypeSummary,+ slotTypeSummary_description,+ slotTypeSummary_lastUpdatedDateTime,+ slotTypeSummary_parentSlotTypeSignature,+ slotTypeSummary_slotTypeCategory,+ slotTypeSummary_slotTypeId,+ slotTypeSummary_slotTypeName,++ -- * SlotTypeValue+ SlotTypeValue (..),+ newSlotTypeValue,+ slotTypeValue_sampleValue,+ slotTypeValue_synonyms,++ -- * SlotValue+ SlotValue (..),+ newSlotValue,+ slotValue_interpretedValue,++ -- * SlotValueElicitationSetting+ SlotValueElicitationSetting (..),+ newSlotValueElicitationSetting,+ slotValueElicitationSetting_defaultValueSpecification,+ slotValueElicitationSetting_promptSpecification,+ slotValueElicitationSetting_sampleUtterances,+ slotValueElicitationSetting_slotCaptureSetting,+ slotValueElicitationSetting_waitAndContinueSpecification,+ slotValueElicitationSetting_slotConstraint,++ -- * SlotValueOverride+ SlotValueOverride (..),+ newSlotValueOverride,+ slotValueOverride_shape,+ slotValueOverride_value,+ slotValueOverride_values,++ -- * SlotValueRegexFilter+ SlotValueRegexFilter (..),+ newSlotValueRegexFilter,+ slotValueRegexFilter_pattern,++ -- * SlotValueSelectionSetting+ SlotValueSelectionSetting (..),+ newSlotValueSelectionSetting,+ slotValueSelectionSetting_advancedRecognitionSetting,+ slotValueSelectionSetting_regexFilter,+ slotValueSelectionSetting_resolutionStrategy,++ -- * Specifications+ Specifications (..),+ newSpecifications,+ specifications_slotTypeId,+ specifications_valueElicitationSetting,++ -- * StillWaitingResponseSpecification+ StillWaitingResponseSpecification (..),+ newStillWaitingResponseSpecification,+ stillWaitingResponseSpecification_allowInterrupt,+ stillWaitingResponseSpecification_messageGroups,+ stillWaitingResponseSpecification_frequencyInSeconds,+ stillWaitingResponseSpecification_timeoutInSeconds,++ -- * SubSlotSetting+ SubSlotSetting (..),+ newSubSlotSetting,+ subSlotSetting_expression,+ subSlotSetting_slotSpecifications,++ -- * SubSlotTypeComposition+ SubSlotTypeComposition (..),+ newSubSlotTypeComposition,+ subSlotTypeComposition_name,+ subSlotTypeComposition_slotTypeId,++ -- * SubSlotValueElicitationSetting+ SubSlotValueElicitationSetting (..),+ newSubSlotValueElicitationSetting,+ subSlotValueElicitationSetting_defaultValueSpecification,+ subSlotValueElicitationSetting_sampleUtterances,+ subSlotValueElicitationSetting_waitAndContinueSpecification,+ subSlotValueElicitationSetting_promptSpecification,++ -- * TextInputSpecification+ TextInputSpecification (..),+ newTextInputSpecification,+ textInputSpecification_startTimeoutMs,++ -- * TextLogDestination+ TextLogDestination (..),+ newTextLogDestination,+ textLogDestination_cloudWatch,++ -- * TextLogSetting+ TextLogSetting (..),+ newTextLogSetting,+ textLogSetting_enabled,+ textLogSetting_destination,++ -- * TranscriptFilter+ TranscriptFilter (..),+ newTranscriptFilter,+ transcriptFilter_lexTranscriptFilter,++ -- * TranscriptSourceSetting+ TranscriptSourceSetting (..),+ newTranscriptSourceSetting,+ transcriptSourceSetting_s3BucketTranscriptSource,++ -- * UtteranceAggregationDuration+ UtteranceAggregationDuration (..),+ newUtteranceAggregationDuration,+ utteranceAggregationDuration_relativeAggregationDuration,++ -- * VoiceSettings+ VoiceSettings (..),+ newVoiceSettings,+ voiceSettings_engine,+ voiceSettings_voiceId,++ -- * WaitAndContinueSpecification+ WaitAndContinueSpecification (..),+ newWaitAndContinueSpecification,+ waitAndContinueSpecification_active,+ waitAndContinueSpecification_stillWaitingResponse,+ waitAndContinueSpecification_waitingResponse,+ waitAndContinueSpecification_continueResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import Amazonka.LexV2Models.Types.AdvancedRecognitionSetting+import Amazonka.LexV2Models.Types.AggregatedUtterancesFilter+import Amazonka.LexV2Models.Types.AggregatedUtterancesFilterName+import Amazonka.LexV2Models.Types.AggregatedUtterancesFilterOperator+import Amazonka.LexV2Models.Types.AggregatedUtterancesSortAttribute+import Amazonka.LexV2Models.Types.AggregatedUtterancesSortBy+import Amazonka.LexV2Models.Types.AggregatedUtterancesSummary+import Amazonka.LexV2Models.Types.AllowedInputTypes+import Amazonka.LexV2Models.Types.AssociatedTranscript+import Amazonka.LexV2Models.Types.AssociatedTranscriptFilter+import Amazonka.LexV2Models.Types.AssociatedTranscriptFilterName+import Amazonka.LexV2Models.Types.AudioAndDTMFInputSpecification+import Amazonka.LexV2Models.Types.AudioLogDestination+import Amazonka.LexV2Models.Types.AudioLogSetting+import Amazonka.LexV2Models.Types.AudioRecognitionStrategy+import Amazonka.LexV2Models.Types.AudioSpecification+import Amazonka.LexV2Models.Types.BotAliasHistoryEvent+import Amazonka.LexV2Models.Types.BotAliasLocaleSettings+import Amazonka.LexV2Models.Types.BotAliasStatus+import Amazonka.LexV2Models.Types.BotAliasSummary+import Amazonka.LexV2Models.Types.BotExportSpecification+import Amazonka.LexV2Models.Types.BotFilter+import Amazonka.LexV2Models.Types.BotFilterName+import Amazonka.LexV2Models.Types.BotFilterOperator+import Amazonka.LexV2Models.Types.BotImportSpecification+import Amazonka.LexV2Models.Types.BotLocaleExportSpecification+import Amazonka.LexV2Models.Types.BotLocaleFilter+import Amazonka.LexV2Models.Types.BotLocaleFilterName+import Amazonka.LexV2Models.Types.BotLocaleFilterOperator+import Amazonka.LexV2Models.Types.BotLocaleHistoryEvent+import Amazonka.LexV2Models.Types.BotLocaleImportSpecification+import Amazonka.LexV2Models.Types.BotLocaleSortAttribute+import Amazonka.LexV2Models.Types.BotLocaleSortBy+import Amazonka.LexV2Models.Types.BotLocaleStatus+import Amazonka.LexV2Models.Types.BotLocaleSummary+import Amazonka.LexV2Models.Types.BotRecommendationResultStatistics+import Amazonka.LexV2Models.Types.BotRecommendationResults+import Amazonka.LexV2Models.Types.BotRecommendationStatus+import Amazonka.LexV2Models.Types.BotRecommendationSummary+import Amazonka.LexV2Models.Types.BotSortAttribute+import Amazonka.LexV2Models.Types.BotSortBy+import Amazonka.LexV2Models.Types.BotStatus+import Amazonka.LexV2Models.Types.BotSummary+import Amazonka.LexV2Models.Types.BotVersionLocaleDetails+import Amazonka.LexV2Models.Types.BotVersionSortAttribute+import Amazonka.LexV2Models.Types.BotVersionSortBy+import Amazonka.LexV2Models.Types.BotVersionSummary+import Amazonka.LexV2Models.Types.BuiltInIntentSortAttribute+import Amazonka.LexV2Models.Types.BuiltInIntentSortBy+import Amazonka.LexV2Models.Types.BuiltInIntentSummary+import Amazonka.LexV2Models.Types.BuiltInSlotTypeSortAttribute+import Amazonka.LexV2Models.Types.BuiltInSlotTypeSortBy+import Amazonka.LexV2Models.Types.BuiltInSlotTypeSummary+import Amazonka.LexV2Models.Types.Button+import Amazonka.LexV2Models.Types.CloudWatchLogGroupLogDestination+import Amazonka.LexV2Models.Types.CodeHookSpecification+import Amazonka.LexV2Models.Types.CompositeSlotTypeSetting+import Amazonka.LexV2Models.Types.Condition+import Amazonka.LexV2Models.Types.ConditionalBranch+import Amazonka.LexV2Models.Types.ConditionalSpecification+import Amazonka.LexV2Models.Types.ConversationLogSettings+import Amazonka.LexV2Models.Types.CustomPayload+import Amazonka.LexV2Models.Types.CustomVocabularyEntryId+import Amazonka.LexV2Models.Types.CustomVocabularyExportSpecification+import Amazonka.LexV2Models.Types.CustomVocabularyImportSpecification+import Amazonka.LexV2Models.Types.CustomVocabularyItem+import Amazonka.LexV2Models.Types.CustomVocabularyStatus+import Amazonka.LexV2Models.Types.DTMFSpecification+import Amazonka.LexV2Models.Types.DataPrivacy+import Amazonka.LexV2Models.Types.DateRangeFilter+import Amazonka.LexV2Models.Types.DefaultConditionalBranch+import Amazonka.LexV2Models.Types.DialogAction+import Amazonka.LexV2Models.Types.DialogActionType+import Amazonka.LexV2Models.Types.DialogCodeHookInvocationSetting+import Amazonka.LexV2Models.Types.DialogCodeHookSettings+import Amazonka.LexV2Models.Types.DialogState+import Amazonka.LexV2Models.Types.Effect+import Amazonka.LexV2Models.Types.ElicitationCodeHookInvocationSetting+import Amazonka.LexV2Models.Types.EncryptionSetting+import Amazonka.LexV2Models.Types.ErrorCode+import Amazonka.LexV2Models.Types.ExportFilter+import Amazonka.LexV2Models.Types.ExportFilterName+import Amazonka.LexV2Models.Types.ExportFilterOperator+import Amazonka.LexV2Models.Types.ExportResourceSpecification+import Amazonka.LexV2Models.Types.ExportSortAttribute+import Amazonka.LexV2Models.Types.ExportSortBy+import Amazonka.LexV2Models.Types.ExportStatus+import Amazonka.LexV2Models.Types.ExportSummary+import Amazonka.LexV2Models.Types.ExternalSourceSetting+import Amazonka.LexV2Models.Types.FailedCustomVocabularyItem+import Amazonka.LexV2Models.Types.FulfillmentCodeHookSettings+import Amazonka.LexV2Models.Types.FulfillmentStartResponseSpecification+import Amazonka.LexV2Models.Types.FulfillmentUpdateResponseSpecification+import Amazonka.LexV2Models.Types.FulfillmentUpdatesSpecification+import Amazonka.LexV2Models.Types.GrammarSlotTypeSetting+import Amazonka.LexV2Models.Types.GrammarSlotTypeSource+import Amazonka.LexV2Models.Types.ImageResponseCard+import Amazonka.LexV2Models.Types.ImportExportFileFormat+import Amazonka.LexV2Models.Types.ImportFilter+import Amazonka.LexV2Models.Types.ImportFilterName+import Amazonka.LexV2Models.Types.ImportFilterOperator+import Amazonka.LexV2Models.Types.ImportResourceSpecification+import Amazonka.LexV2Models.Types.ImportResourceType+import Amazonka.LexV2Models.Types.ImportSortAttribute+import Amazonka.LexV2Models.Types.ImportSortBy+import Amazonka.LexV2Models.Types.ImportStatus+import Amazonka.LexV2Models.Types.ImportSummary+import Amazonka.LexV2Models.Types.InitialResponseSetting+import Amazonka.LexV2Models.Types.InputContext+import Amazonka.LexV2Models.Types.IntentClosingSetting+import Amazonka.LexV2Models.Types.IntentConfirmationSetting+import Amazonka.LexV2Models.Types.IntentFilter+import Amazonka.LexV2Models.Types.IntentFilterName+import Amazonka.LexV2Models.Types.IntentFilterOperator+import Amazonka.LexV2Models.Types.IntentOverride+import Amazonka.LexV2Models.Types.IntentSortAttribute+import Amazonka.LexV2Models.Types.IntentSortBy+import Amazonka.LexV2Models.Types.IntentStatistics+import Amazonka.LexV2Models.Types.IntentSummary+import Amazonka.LexV2Models.Types.KendraConfiguration+import Amazonka.LexV2Models.Types.LambdaCodeHook+import Amazonka.LexV2Models.Types.LexTranscriptFilter+import Amazonka.LexV2Models.Types.MergeStrategy+import Amazonka.LexV2Models.Types.Message+import Amazonka.LexV2Models.Types.MessageGroup+import Amazonka.LexV2Models.Types.MessageSelectionStrategy+import Amazonka.LexV2Models.Types.MultipleValuesSetting+import Amazonka.LexV2Models.Types.NewCustomVocabularyItem+import Amazonka.LexV2Models.Types.ObfuscationSetting+import Amazonka.LexV2Models.Types.ObfuscationSettingType+import Amazonka.LexV2Models.Types.OutputContext+import Amazonka.LexV2Models.Types.PathFormat+import Amazonka.LexV2Models.Types.PlainTextMessage+import Amazonka.LexV2Models.Types.PostDialogCodeHookInvocationSpecification+import Amazonka.LexV2Models.Types.PostFulfillmentStatusSpecification+import Amazonka.LexV2Models.Types.Principal+import Amazonka.LexV2Models.Types.PromptAttempt+import Amazonka.LexV2Models.Types.PromptAttemptSpecification+import Amazonka.LexV2Models.Types.PromptSpecification+import Amazonka.LexV2Models.Types.RecommendedIntentSummary+import Amazonka.LexV2Models.Types.RelativeAggregationDuration+import Amazonka.LexV2Models.Types.ResponseSpecification+import Amazonka.LexV2Models.Types.S3BucketLogDestination+import Amazonka.LexV2Models.Types.S3BucketTranscriptSource+import Amazonka.LexV2Models.Types.SSMLMessage+import Amazonka.LexV2Models.Types.SampleUtterance+import Amazonka.LexV2Models.Types.SampleValue+import Amazonka.LexV2Models.Types.SearchOrder+import Amazonka.LexV2Models.Types.SentimentAnalysisSettings+import Amazonka.LexV2Models.Types.SlotCaptureSetting+import Amazonka.LexV2Models.Types.SlotConstraint+import Amazonka.LexV2Models.Types.SlotDefaultValue+import Amazonka.LexV2Models.Types.SlotDefaultValueSpecification+import Amazonka.LexV2Models.Types.SlotFilter+import Amazonka.LexV2Models.Types.SlotFilterName+import Amazonka.LexV2Models.Types.SlotFilterOperator+import Amazonka.LexV2Models.Types.SlotPriority+import Amazonka.LexV2Models.Types.SlotShape+import Amazonka.LexV2Models.Types.SlotSortAttribute+import Amazonka.LexV2Models.Types.SlotSortBy+import Amazonka.LexV2Models.Types.SlotSummary+import Amazonka.LexV2Models.Types.SlotTypeCategory+import Amazonka.LexV2Models.Types.SlotTypeFilter+import Amazonka.LexV2Models.Types.SlotTypeFilterName+import Amazonka.LexV2Models.Types.SlotTypeFilterOperator+import Amazonka.LexV2Models.Types.SlotTypeSortAttribute+import Amazonka.LexV2Models.Types.SlotTypeSortBy+import Amazonka.LexV2Models.Types.SlotTypeStatistics+import Amazonka.LexV2Models.Types.SlotTypeSummary+import Amazonka.LexV2Models.Types.SlotTypeValue+import Amazonka.LexV2Models.Types.SlotValue+import Amazonka.LexV2Models.Types.SlotValueElicitationSetting+import Amazonka.LexV2Models.Types.SlotValueOverride+import Amazonka.LexV2Models.Types.SlotValueRegexFilter+import Amazonka.LexV2Models.Types.SlotValueResolutionStrategy+import Amazonka.LexV2Models.Types.SlotValueSelectionSetting+import Amazonka.LexV2Models.Types.SortOrder+import Amazonka.LexV2Models.Types.Specifications+import Amazonka.LexV2Models.Types.StillWaitingResponseSpecification+import Amazonka.LexV2Models.Types.SubSlotSetting+import Amazonka.LexV2Models.Types.SubSlotTypeComposition+import Amazonka.LexV2Models.Types.SubSlotValueElicitationSetting+import Amazonka.LexV2Models.Types.TextInputSpecification+import Amazonka.LexV2Models.Types.TextLogDestination+import Amazonka.LexV2Models.Types.TextLogSetting+import Amazonka.LexV2Models.Types.TimeDimension+import Amazonka.LexV2Models.Types.TranscriptFilter+import Amazonka.LexV2Models.Types.TranscriptFormat+import Amazonka.LexV2Models.Types.TranscriptSourceSetting+import Amazonka.LexV2Models.Types.UtteranceAggregationDuration+import Amazonka.LexV2Models.Types.VoiceEngine+import Amazonka.LexV2Models.Types.VoiceSettings+import Amazonka.LexV2Models.Types.WaitAndContinueSpecification+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Sign.V4 as Sign++-- | API version @2020-08-07@ of the Amazon Lex Model Building V2 SDK configuration.+defaultService :: Core.Service+defaultService =+ Core.Service+ { Core.abbrev = "LexV2Models",+ Core.signer = Sign.v4,+ Core.endpointPrefix = "models-v2-lex",+ Core.signingName = "lex",+ Core.version = "2020-08-07",+ Core.s3AddressingStyle = Core.S3AddressingStyleAuto,+ Core.endpoint = Core.defaultEndpoint defaultService,+ Core.timeout = Prelude.Just 70,+ Core.check = Core.statusSuccess,+ Core.error = Core.parseJSONError "LexV2Models",+ Core.retry = retry+ }+ where+ retry =+ Core.Exponential+ { Core.base = 5.0e-2,+ Core.growth = 2,+ Core.attempts = 5,+ Core.check = check+ }+ check e+ | Lens.has (Core.hasStatus 502) e =+ Prelude.Just "bad_gateway"+ | Lens.has (Core.hasStatus 504) e =+ Prelude.Just "gateway_timeout"+ | Lens.has (Core.hasStatus 500) e =+ Prelude.Just "general_server_error"+ | Lens.has (Core.hasStatus 509) e =+ Prelude.Just "limit_exceeded"+ | Lens.has+ ( Core.hasCode "RequestThrottledException"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "request_throttled_exception"+ | Lens.has (Core.hasStatus 503) e =+ Prelude.Just "service_unavailable"+ | Lens.has+ ( Core.hasCode "ThrottledException"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "throttled_exception"+ | Lens.has+ ( Core.hasCode "Throttling"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "throttling"+ | Lens.has+ ( Core.hasCode "ThrottlingException"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "throttling_exception"+ | Lens.has+ ( Core.hasCode+ "ProvisionedThroughputExceededException"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "throughput_exceeded"+ | Lens.has (Core.hasStatus 429) e =+ Prelude.Just "too_many_requests"+ | Prelude.otherwise = Prelude.Nothing++-- | The action that you tried to perform couldn\'t be completed because the+-- resource is in a conflicting state. For example, deleting a bot that is+-- in the CREATING state. Try your request again.+_ConflictException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ConflictException =+ Core._MatchServiceError+ defaultService+ "ConflictException"+ Prelude.. Core.hasStatus 409++-- | The service encountered an unexpected condition. Try your request again.+_InternalServerException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InternalServerException =+ Core._MatchServiceError+ defaultService+ "InternalServerException"+ Prelude.. Core.hasStatus 500++-- | Your request couldn\'t be completed because one or more request fields+-- aren\'t valid. Check the fields in your request and try again.+_PreconditionFailedException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_PreconditionFailedException =+ Core._MatchServiceError+ defaultService+ "PreconditionFailedException"+ Prelude.. Core.hasStatus 412++-- | You asked to describe a resource that doesn\'t exist. Check the resource+-- that you are requesting and try again.+_ResourceNotFoundException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ResourceNotFoundException =+ Core._MatchServiceError+ defaultService+ "ResourceNotFoundException"+ Prelude.. Core.hasStatus 404++-- | You have reached a quota for your bot.+_ServiceQuotaExceededException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ServiceQuotaExceededException =+ Core._MatchServiceError+ defaultService+ "ServiceQuotaExceededException"+ Prelude.. Core.hasStatus 402++-- | Your request rate is too high. Reduce the frequency of requests.+_ThrottlingException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ThrottlingException =+ Core._MatchServiceError+ defaultService+ "ThrottlingException"+ Prelude.. Core.hasStatus 429++-- | One of the input parameters in your request isn\'t valid. Check the+-- parameters and try your request again.+_ValidationException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ValidationException =+ Core._MatchServiceError+ defaultService+ "ValidationException"+ Prelude.. Core.hasStatus 400
+ gen/Amazonka/LexV2Models/Types/AdvancedRecognitionSetting.hs view
@@ -0,0 +1,87 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.AdvancedRecognitionSetting+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.AdvancedRecognitionSetting where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.AudioRecognitionStrategy+import qualified Amazonka.Prelude as Prelude++-- | Provides settings that enable advanced recognition settings for slot+-- values.+--+-- /See:/ 'newAdvancedRecognitionSetting' smart constructor.+data AdvancedRecognitionSetting = AdvancedRecognitionSetting'+ { -- | Enables using the slot values as a custom vocabulary for recognizing+ -- user utterances.+ audioRecognitionStrategy :: Prelude.Maybe AudioRecognitionStrategy+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AdvancedRecognitionSetting' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'audioRecognitionStrategy', 'advancedRecognitionSetting_audioRecognitionStrategy' - Enables using the slot values as a custom vocabulary for recognizing+-- user utterances.+newAdvancedRecognitionSetting ::+ AdvancedRecognitionSetting+newAdvancedRecognitionSetting =+ AdvancedRecognitionSetting'+ { audioRecognitionStrategy =+ Prelude.Nothing+ }++-- | Enables using the slot values as a custom vocabulary for recognizing+-- user utterances.+advancedRecognitionSetting_audioRecognitionStrategy :: Lens.Lens' AdvancedRecognitionSetting (Prelude.Maybe AudioRecognitionStrategy)+advancedRecognitionSetting_audioRecognitionStrategy = Lens.lens (\AdvancedRecognitionSetting' {audioRecognitionStrategy} -> audioRecognitionStrategy) (\s@AdvancedRecognitionSetting' {} a -> s {audioRecognitionStrategy = a} :: AdvancedRecognitionSetting)++instance Data.FromJSON AdvancedRecognitionSetting where+ parseJSON =+ Data.withObject+ "AdvancedRecognitionSetting"+ ( \x ->+ AdvancedRecognitionSetting'+ Prelude.<$> (x Data..:? "audioRecognitionStrategy")+ )++instance Prelude.Hashable AdvancedRecognitionSetting where+ hashWithSalt _salt AdvancedRecognitionSetting' {..} =+ _salt+ `Prelude.hashWithSalt` audioRecognitionStrategy++instance Prelude.NFData AdvancedRecognitionSetting where+ rnf AdvancedRecognitionSetting' {..} =+ Prelude.rnf audioRecognitionStrategy++instance Data.ToJSON AdvancedRecognitionSetting where+ toJSON AdvancedRecognitionSetting' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("audioRecognitionStrategy" Data..=)+ Prelude.<$> audioRecognitionStrategy+ ]+ )
+ gen/Amazonka/LexV2Models/Types/AggregatedUtterancesFilter.hs view
@@ -0,0 +1,118 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.AggregatedUtterancesFilter+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.AggregatedUtterancesFilter where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.AggregatedUtterancesFilterName+import Amazonka.LexV2Models.Types.AggregatedUtterancesFilterOperator+import qualified Amazonka.Prelude as Prelude++-- | Filters responses returned by the @ListAggregatedUtterances@ operation.+--+-- /See:/ 'newAggregatedUtterancesFilter' smart constructor.+data AggregatedUtterancesFilter = AggregatedUtterancesFilter'+ { -- | The name of the field to filter the utterance list.+ name :: AggregatedUtterancesFilterName,+ -- | The value to use for filtering the list of bots.+ values :: Prelude.NonEmpty Prelude.Text,+ -- | The operator to use for the filter. Specify @EQ@ when the+ -- @ListAggregatedUtterances@ operation should return only utterances that+ -- equal the specified value. Specify @CO@ when the+ -- @ListAggregatedUtterances@ operation should return utterances that+ -- contain the specified value.+ operator :: AggregatedUtterancesFilterOperator+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AggregatedUtterancesFilter' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'name', 'aggregatedUtterancesFilter_name' - The name of the field to filter the utterance list.+--+-- 'values', 'aggregatedUtterancesFilter_values' - The value to use for filtering the list of bots.+--+-- 'operator', 'aggregatedUtterancesFilter_operator' - The operator to use for the filter. Specify @EQ@ when the+-- @ListAggregatedUtterances@ operation should return only utterances that+-- equal the specified value. Specify @CO@ when the+-- @ListAggregatedUtterances@ operation should return utterances that+-- contain the specified value.+newAggregatedUtterancesFilter ::+ -- | 'name'+ AggregatedUtterancesFilterName ->+ -- | 'values'+ Prelude.NonEmpty Prelude.Text ->+ -- | 'operator'+ AggregatedUtterancesFilterOperator ->+ AggregatedUtterancesFilter+newAggregatedUtterancesFilter+ pName_+ pValues_+ pOperator_ =+ AggregatedUtterancesFilter'+ { name = pName_,+ values = Lens.coerced Lens.# pValues_,+ operator = pOperator_+ }++-- | The name of the field to filter the utterance list.+aggregatedUtterancesFilter_name :: Lens.Lens' AggregatedUtterancesFilter AggregatedUtterancesFilterName+aggregatedUtterancesFilter_name = Lens.lens (\AggregatedUtterancesFilter' {name} -> name) (\s@AggregatedUtterancesFilter' {} a -> s {name = a} :: AggregatedUtterancesFilter)++-- | The value to use for filtering the list of bots.+aggregatedUtterancesFilter_values :: Lens.Lens' AggregatedUtterancesFilter (Prelude.NonEmpty Prelude.Text)+aggregatedUtterancesFilter_values = Lens.lens (\AggregatedUtterancesFilter' {values} -> values) (\s@AggregatedUtterancesFilter' {} a -> s {values = a} :: AggregatedUtterancesFilter) Prelude.. Lens.coerced++-- | The operator to use for the filter. Specify @EQ@ when the+-- @ListAggregatedUtterances@ operation should return only utterances that+-- equal the specified value. Specify @CO@ when the+-- @ListAggregatedUtterances@ operation should return utterances that+-- contain the specified value.+aggregatedUtterancesFilter_operator :: Lens.Lens' AggregatedUtterancesFilter AggregatedUtterancesFilterOperator+aggregatedUtterancesFilter_operator = Lens.lens (\AggregatedUtterancesFilter' {operator} -> operator) (\s@AggregatedUtterancesFilter' {} a -> s {operator = a} :: AggregatedUtterancesFilter)++instance Prelude.Hashable AggregatedUtterancesFilter where+ hashWithSalt _salt AggregatedUtterancesFilter' {..} =+ _salt+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` values+ `Prelude.hashWithSalt` operator++instance Prelude.NFData AggregatedUtterancesFilter where+ rnf AggregatedUtterancesFilter' {..} =+ Prelude.rnf name+ `Prelude.seq` Prelude.rnf values+ `Prelude.seq` Prelude.rnf operator++instance Data.ToJSON AggregatedUtterancesFilter where+ toJSON AggregatedUtterancesFilter' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("name" Data..= name),+ Prelude.Just ("values" Data..= values),+ Prelude.Just ("operator" Data..= operator)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/AggregatedUtterancesFilterName.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.AggregatedUtterancesFilterName+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.AggregatedUtterancesFilterName+ ( AggregatedUtterancesFilterName+ ( ..,+ AggregatedUtterancesFilterName_Utterance+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype AggregatedUtterancesFilterName = AggregatedUtterancesFilterName'+ { fromAggregatedUtterancesFilterName ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern AggregatedUtterancesFilterName_Utterance :: AggregatedUtterancesFilterName+pattern AggregatedUtterancesFilterName_Utterance = AggregatedUtterancesFilterName' "Utterance"++{-# COMPLETE+ AggregatedUtterancesFilterName_Utterance,+ AggregatedUtterancesFilterName'+ #-}
+ gen/Amazonka/LexV2Models/Types/AggregatedUtterancesFilterOperator.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.AggregatedUtterancesFilterOperator+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.AggregatedUtterancesFilterOperator+ ( AggregatedUtterancesFilterOperator+ ( ..,+ AggregatedUtterancesFilterOperator_CO,+ AggregatedUtterancesFilterOperator_EQ+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype AggregatedUtterancesFilterOperator = AggregatedUtterancesFilterOperator'+ { fromAggregatedUtterancesFilterOperator ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern AggregatedUtterancesFilterOperator_CO :: AggregatedUtterancesFilterOperator+pattern AggregatedUtterancesFilterOperator_CO = AggregatedUtterancesFilterOperator' "CO"++pattern AggregatedUtterancesFilterOperator_EQ :: AggregatedUtterancesFilterOperator+pattern AggregatedUtterancesFilterOperator_EQ = AggregatedUtterancesFilterOperator' "EQ"++{-# COMPLETE+ AggregatedUtterancesFilterOperator_CO,+ AggregatedUtterancesFilterOperator_EQ,+ AggregatedUtterancesFilterOperator'+ #-}
+ gen/Amazonka/LexV2Models/Types/AggregatedUtterancesSortAttribute.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.AggregatedUtterancesSortAttribute+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.AggregatedUtterancesSortAttribute+ ( AggregatedUtterancesSortAttribute+ ( ..,+ AggregatedUtterancesSortAttribute_HitCount,+ AggregatedUtterancesSortAttribute_MissedCount+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype AggregatedUtterancesSortAttribute = AggregatedUtterancesSortAttribute'+ { fromAggregatedUtterancesSortAttribute ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern AggregatedUtterancesSortAttribute_HitCount :: AggregatedUtterancesSortAttribute+pattern AggregatedUtterancesSortAttribute_HitCount = AggregatedUtterancesSortAttribute' "HitCount"++pattern AggregatedUtterancesSortAttribute_MissedCount :: AggregatedUtterancesSortAttribute+pattern AggregatedUtterancesSortAttribute_MissedCount = AggregatedUtterancesSortAttribute' "MissedCount"++{-# COMPLETE+ AggregatedUtterancesSortAttribute_HitCount,+ AggregatedUtterancesSortAttribute_MissedCount,+ AggregatedUtterancesSortAttribute'+ #-}
+ gen/Amazonka/LexV2Models/Types/AggregatedUtterancesSortBy.hs view
@@ -0,0 +1,93 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.AggregatedUtterancesSortBy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.AggregatedUtterancesSortBy where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.AggregatedUtterancesSortAttribute+import Amazonka.LexV2Models.Types.SortOrder+import qualified Amazonka.Prelude as Prelude++-- | Specifies attributes for sorting a list of utterances.+--+-- /See:/ 'newAggregatedUtterancesSortBy' smart constructor.+data AggregatedUtterancesSortBy = AggregatedUtterancesSortBy'+ { -- | The utterance attribute to sort by.+ attribute :: AggregatedUtterancesSortAttribute,+ -- | Specifies whether to sort the aggregated utterances in ascending or+ -- descending order.+ order :: SortOrder+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AggregatedUtterancesSortBy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'attribute', 'aggregatedUtterancesSortBy_attribute' - The utterance attribute to sort by.+--+-- 'order', 'aggregatedUtterancesSortBy_order' - Specifies whether to sort the aggregated utterances in ascending or+-- descending order.+newAggregatedUtterancesSortBy ::+ -- | 'attribute'+ AggregatedUtterancesSortAttribute ->+ -- | 'order'+ SortOrder ->+ AggregatedUtterancesSortBy+newAggregatedUtterancesSortBy pAttribute_ pOrder_ =+ AggregatedUtterancesSortBy'+ { attribute =+ pAttribute_,+ order = pOrder_+ }++-- | The utterance attribute to sort by.+aggregatedUtterancesSortBy_attribute :: Lens.Lens' AggregatedUtterancesSortBy AggregatedUtterancesSortAttribute+aggregatedUtterancesSortBy_attribute = Lens.lens (\AggregatedUtterancesSortBy' {attribute} -> attribute) (\s@AggregatedUtterancesSortBy' {} a -> s {attribute = a} :: AggregatedUtterancesSortBy)++-- | Specifies whether to sort the aggregated utterances in ascending or+-- descending order.+aggregatedUtterancesSortBy_order :: Lens.Lens' AggregatedUtterancesSortBy SortOrder+aggregatedUtterancesSortBy_order = Lens.lens (\AggregatedUtterancesSortBy' {order} -> order) (\s@AggregatedUtterancesSortBy' {} a -> s {order = a} :: AggregatedUtterancesSortBy)++instance Prelude.Hashable AggregatedUtterancesSortBy where+ hashWithSalt _salt AggregatedUtterancesSortBy' {..} =+ _salt+ `Prelude.hashWithSalt` attribute+ `Prelude.hashWithSalt` order++instance Prelude.NFData AggregatedUtterancesSortBy where+ rnf AggregatedUtterancesSortBy' {..} =+ Prelude.rnf attribute+ `Prelude.seq` Prelude.rnf order++instance Data.ToJSON AggregatedUtterancesSortBy where+ toJSON AggregatedUtterancesSortBy' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("attribute" Data..= attribute),+ Prelude.Just ("order" Data..= order)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/AggregatedUtterancesSummary.hs view
@@ -0,0 +1,179 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.AggregatedUtterancesSummary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.AggregatedUtterancesSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Provides summary information for aggregated utterances. The+-- @ListAggregatedUtterances@ operations combines all instances of the same+-- utterance into a single aggregated summary.+--+-- /See:/ 'newAggregatedUtterancesSummary' smart constructor.+data AggregatedUtterancesSummary = AggregatedUtterancesSummary'+ { -- | Aggregated utterance data may contain utterances from versions of your+ -- bot that have since been deleted. When the aggregated contains this kind+ -- of data, this field is set to true.+ containsDataFromDeletedResources :: Prelude.Maybe Prelude.Bool,+ -- | The number of times that the utterance was detected by Amazon Lex during+ -- the time period. When an utterance is detected, it activates an intent+ -- or a slot.+ hitCount :: Prelude.Maybe Prelude.Int,+ -- | The number of times that the utterance was missed by Amazon Lex An+ -- utterance is missed when it doesn\'t activate an intent or slot.+ missedCount :: Prelude.Maybe Prelude.Int,+ -- | The text of the utterance. If the utterance was used with the+ -- @RecognizeUtterance@ operation, the text is the transcription of the+ -- audio utterance.+ utterance :: Prelude.Maybe Prelude.Text,+ -- | The date and time that the utterance was first recorded in the time+ -- window for aggregation. An utterance may have been sent to Amazon Lex+ -- before that time, but only utterances within the time window are+ -- counted.+ utteranceFirstRecordedInAggregationDuration :: Prelude.Maybe Data.POSIX,+ -- | The last date and time that an utterance was recorded in the time window+ -- for aggregation. An utterance may be sent to Amazon Lex after that time,+ -- but only utterances within the time window are counted.+ utteranceLastRecordedInAggregationDuration :: Prelude.Maybe Data.POSIX+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AggregatedUtterancesSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'containsDataFromDeletedResources', 'aggregatedUtterancesSummary_containsDataFromDeletedResources' - Aggregated utterance data may contain utterances from versions of your+-- bot that have since been deleted. When the aggregated contains this kind+-- of data, this field is set to true.+--+-- 'hitCount', 'aggregatedUtterancesSummary_hitCount' - The number of times that the utterance was detected by Amazon Lex during+-- the time period. When an utterance is detected, it activates an intent+-- or a slot.+--+-- 'missedCount', 'aggregatedUtterancesSummary_missedCount' - The number of times that the utterance was missed by Amazon Lex An+-- utterance is missed when it doesn\'t activate an intent or slot.+--+-- 'utterance', 'aggregatedUtterancesSummary_utterance' - The text of the utterance. If the utterance was used with the+-- @RecognizeUtterance@ operation, the text is the transcription of the+-- audio utterance.+--+-- 'utteranceFirstRecordedInAggregationDuration', 'aggregatedUtterancesSummary_utteranceFirstRecordedInAggregationDuration' - The date and time that the utterance was first recorded in the time+-- window for aggregation. An utterance may have been sent to Amazon Lex+-- before that time, but only utterances within the time window are+-- counted.+--+-- 'utteranceLastRecordedInAggregationDuration', 'aggregatedUtterancesSummary_utteranceLastRecordedInAggregationDuration' - The last date and time that an utterance was recorded in the time window+-- for aggregation. An utterance may be sent to Amazon Lex after that time,+-- but only utterances within the time window are counted.+newAggregatedUtterancesSummary ::+ AggregatedUtterancesSummary+newAggregatedUtterancesSummary =+ AggregatedUtterancesSummary'+ { containsDataFromDeletedResources =+ Prelude.Nothing,+ hitCount = Prelude.Nothing,+ missedCount = Prelude.Nothing,+ utterance = Prelude.Nothing,+ utteranceFirstRecordedInAggregationDuration =+ Prelude.Nothing,+ utteranceLastRecordedInAggregationDuration =+ Prelude.Nothing+ }++-- | Aggregated utterance data may contain utterances from versions of your+-- bot that have since been deleted. When the aggregated contains this kind+-- of data, this field is set to true.+aggregatedUtterancesSummary_containsDataFromDeletedResources :: Lens.Lens' AggregatedUtterancesSummary (Prelude.Maybe Prelude.Bool)+aggregatedUtterancesSummary_containsDataFromDeletedResources = Lens.lens (\AggregatedUtterancesSummary' {containsDataFromDeletedResources} -> containsDataFromDeletedResources) (\s@AggregatedUtterancesSummary' {} a -> s {containsDataFromDeletedResources = a} :: AggregatedUtterancesSummary)++-- | The number of times that the utterance was detected by Amazon Lex during+-- the time period. When an utterance is detected, it activates an intent+-- or a slot.+aggregatedUtterancesSummary_hitCount :: Lens.Lens' AggregatedUtterancesSummary (Prelude.Maybe Prelude.Int)+aggregatedUtterancesSummary_hitCount = Lens.lens (\AggregatedUtterancesSummary' {hitCount} -> hitCount) (\s@AggregatedUtterancesSummary' {} a -> s {hitCount = a} :: AggregatedUtterancesSummary)++-- | The number of times that the utterance was missed by Amazon Lex An+-- utterance is missed when it doesn\'t activate an intent or slot.+aggregatedUtterancesSummary_missedCount :: Lens.Lens' AggregatedUtterancesSummary (Prelude.Maybe Prelude.Int)+aggregatedUtterancesSummary_missedCount = Lens.lens (\AggregatedUtterancesSummary' {missedCount} -> missedCount) (\s@AggregatedUtterancesSummary' {} a -> s {missedCount = a} :: AggregatedUtterancesSummary)++-- | The text of the utterance. If the utterance was used with the+-- @RecognizeUtterance@ operation, the text is the transcription of the+-- audio utterance.+aggregatedUtterancesSummary_utterance :: Lens.Lens' AggregatedUtterancesSummary (Prelude.Maybe Prelude.Text)+aggregatedUtterancesSummary_utterance = Lens.lens (\AggregatedUtterancesSummary' {utterance} -> utterance) (\s@AggregatedUtterancesSummary' {} a -> s {utterance = a} :: AggregatedUtterancesSummary)++-- | The date and time that the utterance was first recorded in the time+-- window for aggregation. An utterance may have been sent to Amazon Lex+-- before that time, but only utterances within the time window are+-- counted.+aggregatedUtterancesSummary_utteranceFirstRecordedInAggregationDuration :: Lens.Lens' AggregatedUtterancesSummary (Prelude.Maybe Prelude.UTCTime)+aggregatedUtterancesSummary_utteranceFirstRecordedInAggregationDuration = Lens.lens (\AggregatedUtterancesSummary' {utteranceFirstRecordedInAggregationDuration} -> utteranceFirstRecordedInAggregationDuration) (\s@AggregatedUtterancesSummary' {} a -> s {utteranceFirstRecordedInAggregationDuration = a} :: AggregatedUtterancesSummary) Prelude.. Lens.mapping Data._Time++-- | The last date and time that an utterance was recorded in the time window+-- for aggregation. An utterance may be sent to Amazon Lex after that time,+-- but only utterances within the time window are counted.+aggregatedUtterancesSummary_utteranceLastRecordedInAggregationDuration :: Lens.Lens' AggregatedUtterancesSummary (Prelude.Maybe Prelude.UTCTime)+aggregatedUtterancesSummary_utteranceLastRecordedInAggregationDuration = Lens.lens (\AggregatedUtterancesSummary' {utteranceLastRecordedInAggregationDuration} -> utteranceLastRecordedInAggregationDuration) (\s@AggregatedUtterancesSummary' {} a -> s {utteranceLastRecordedInAggregationDuration = a} :: AggregatedUtterancesSummary) Prelude.. Lens.mapping Data._Time++instance Data.FromJSON AggregatedUtterancesSummary where+ parseJSON =+ Data.withObject+ "AggregatedUtterancesSummary"+ ( \x ->+ AggregatedUtterancesSummary'+ Prelude.<$> (x Data..:? "containsDataFromDeletedResources")+ Prelude.<*> (x Data..:? "hitCount")+ Prelude.<*> (x Data..:? "missedCount")+ Prelude.<*> (x Data..:? "utterance")+ Prelude.<*> ( x+ Data..:? "utteranceFirstRecordedInAggregationDuration"+ )+ Prelude.<*> ( x+ Data..:? "utteranceLastRecordedInAggregationDuration"+ )+ )++instance Prelude.Hashable AggregatedUtterancesSummary where+ hashWithSalt _salt AggregatedUtterancesSummary' {..} =+ _salt+ `Prelude.hashWithSalt` containsDataFromDeletedResources+ `Prelude.hashWithSalt` hitCount+ `Prelude.hashWithSalt` missedCount+ `Prelude.hashWithSalt` utterance+ `Prelude.hashWithSalt` utteranceFirstRecordedInAggregationDuration+ `Prelude.hashWithSalt` utteranceLastRecordedInAggregationDuration++instance Prelude.NFData AggregatedUtterancesSummary where+ rnf AggregatedUtterancesSummary' {..} =+ Prelude.rnf containsDataFromDeletedResources+ `Prelude.seq` Prelude.rnf hitCount+ `Prelude.seq` Prelude.rnf missedCount+ `Prelude.seq` Prelude.rnf utterance+ `Prelude.seq` Prelude.rnf+ utteranceFirstRecordedInAggregationDuration+ `Prelude.seq` Prelude.rnf+ utteranceLastRecordedInAggregationDuration
+ gen/Amazonka/LexV2Models/Types/AllowedInputTypes.hs view
@@ -0,0 +1,102 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.AllowedInputTypes+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.AllowedInputTypes where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Specifies the allowed input types.+--+-- /See:/ 'newAllowedInputTypes' smart constructor.+data AllowedInputTypes = AllowedInputTypes'+ { -- | Indicates whether audio input is allowed.+ allowAudioInput :: Prelude.Bool,+ -- | Indicates whether DTMF input is allowed.+ allowDTMFInput :: Prelude.Bool+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AllowedInputTypes' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'allowAudioInput', 'allowedInputTypes_allowAudioInput' - Indicates whether audio input is allowed.+--+-- 'allowDTMFInput', 'allowedInputTypes_allowDTMFInput' - Indicates whether DTMF input is allowed.+newAllowedInputTypes ::+ -- | 'allowAudioInput'+ Prelude.Bool ->+ -- | 'allowDTMFInput'+ Prelude.Bool ->+ AllowedInputTypes+newAllowedInputTypes+ pAllowAudioInput_+ pAllowDTMFInput_ =+ AllowedInputTypes'+ { allowAudioInput =+ pAllowAudioInput_,+ allowDTMFInput = pAllowDTMFInput_+ }++-- | Indicates whether audio input is allowed.+allowedInputTypes_allowAudioInput :: Lens.Lens' AllowedInputTypes Prelude.Bool+allowedInputTypes_allowAudioInput = Lens.lens (\AllowedInputTypes' {allowAudioInput} -> allowAudioInput) (\s@AllowedInputTypes' {} a -> s {allowAudioInput = a} :: AllowedInputTypes)++-- | Indicates whether DTMF input is allowed.+allowedInputTypes_allowDTMFInput :: Lens.Lens' AllowedInputTypes Prelude.Bool+allowedInputTypes_allowDTMFInput = Lens.lens (\AllowedInputTypes' {allowDTMFInput} -> allowDTMFInput) (\s@AllowedInputTypes' {} a -> s {allowDTMFInput = a} :: AllowedInputTypes)++instance Data.FromJSON AllowedInputTypes where+ parseJSON =+ Data.withObject+ "AllowedInputTypes"+ ( \x ->+ AllowedInputTypes'+ Prelude.<$> (x Data..: "allowAudioInput")+ Prelude.<*> (x Data..: "allowDTMFInput")+ )++instance Prelude.Hashable AllowedInputTypes where+ hashWithSalt _salt AllowedInputTypes' {..} =+ _salt+ `Prelude.hashWithSalt` allowAudioInput+ `Prelude.hashWithSalt` allowDTMFInput++instance Prelude.NFData AllowedInputTypes where+ rnf AllowedInputTypes' {..} =+ Prelude.rnf allowAudioInput+ `Prelude.seq` Prelude.rnf allowDTMFInput++instance Data.ToJSON AllowedInputTypes where+ toJSON AllowedInputTypes' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("allowAudioInput" Data..= allowAudioInput),+ Prelude.Just+ ("allowDTMFInput" Data..= allowDTMFInput)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/AssociatedTranscript.hs view
@@ -0,0 +1,76 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.AssociatedTranscript+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.AssociatedTranscript where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The object containing information that associates the recommended+-- intent\/slot type with a conversation.+--+-- /See:/ 'newAssociatedTranscript' smart constructor.+data AssociatedTranscript = AssociatedTranscript'+ { -- | The content of the transcript that meets the search filter criteria. For+ -- the JSON format of the transcript, see+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/designing-output-format.html Output transcript format>.+ transcript :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AssociatedTranscript' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'transcript', 'associatedTranscript_transcript' - The content of the transcript that meets the search filter criteria. For+-- the JSON format of the transcript, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/designing-output-format.html Output transcript format>.+newAssociatedTranscript ::+ AssociatedTranscript+newAssociatedTranscript =+ AssociatedTranscript' {transcript = Prelude.Nothing}++-- | The content of the transcript that meets the search filter criteria. For+-- the JSON format of the transcript, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/designing-output-format.html Output transcript format>.+associatedTranscript_transcript :: Lens.Lens' AssociatedTranscript (Prelude.Maybe Prelude.Text)+associatedTranscript_transcript = Lens.lens (\AssociatedTranscript' {transcript} -> transcript) (\s@AssociatedTranscript' {} a -> s {transcript = a} :: AssociatedTranscript)++instance Data.FromJSON AssociatedTranscript where+ parseJSON =+ Data.withObject+ "AssociatedTranscript"+ ( \x ->+ AssociatedTranscript'+ Prelude.<$> (x Data..:? "transcript")+ )++instance Prelude.Hashable AssociatedTranscript where+ hashWithSalt _salt AssociatedTranscript' {..} =+ _salt `Prelude.hashWithSalt` transcript++instance Prelude.NFData AssociatedTranscript where+ rnf AssociatedTranscript' {..} =+ Prelude.rnf transcript
+ gen/Amazonka/LexV2Models/Types/AssociatedTranscriptFilter.hs view
@@ -0,0 +1,90 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.AssociatedTranscriptFilter+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.AssociatedTranscriptFilter where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.AssociatedTranscriptFilterName+import qualified Amazonka.Prelude as Prelude++-- | Filters to search for the associated transcript.+--+-- /See:/ 'newAssociatedTranscriptFilter' smart constructor.+data AssociatedTranscriptFilter = AssociatedTranscriptFilter'+ { -- | The name of the field to use for filtering. The allowed names are+ -- IntentId and SlotTypeId.+ name :: AssociatedTranscriptFilterName,+ -- | The values to use to filter the transcript.+ values :: Prelude.NonEmpty Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AssociatedTranscriptFilter' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'name', 'associatedTranscriptFilter_name' - The name of the field to use for filtering. The allowed names are+-- IntentId and SlotTypeId.+--+-- 'values', 'associatedTranscriptFilter_values' - The values to use to filter the transcript.+newAssociatedTranscriptFilter ::+ -- | 'name'+ AssociatedTranscriptFilterName ->+ -- | 'values'+ Prelude.NonEmpty Prelude.Text ->+ AssociatedTranscriptFilter+newAssociatedTranscriptFilter pName_ pValues_ =+ AssociatedTranscriptFilter'+ { name = pName_,+ values = Lens.coerced Lens.# pValues_+ }++-- | The name of the field to use for filtering. The allowed names are+-- IntentId and SlotTypeId.+associatedTranscriptFilter_name :: Lens.Lens' AssociatedTranscriptFilter AssociatedTranscriptFilterName+associatedTranscriptFilter_name = Lens.lens (\AssociatedTranscriptFilter' {name} -> name) (\s@AssociatedTranscriptFilter' {} a -> s {name = a} :: AssociatedTranscriptFilter)++-- | The values to use to filter the transcript.+associatedTranscriptFilter_values :: Lens.Lens' AssociatedTranscriptFilter (Prelude.NonEmpty Prelude.Text)+associatedTranscriptFilter_values = Lens.lens (\AssociatedTranscriptFilter' {values} -> values) (\s@AssociatedTranscriptFilter' {} a -> s {values = a} :: AssociatedTranscriptFilter) Prelude.. Lens.coerced++instance Prelude.Hashable AssociatedTranscriptFilter where+ hashWithSalt _salt AssociatedTranscriptFilter' {..} =+ _salt+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` values++instance Prelude.NFData AssociatedTranscriptFilter where+ rnf AssociatedTranscriptFilter' {..} =+ Prelude.rnf name `Prelude.seq` Prelude.rnf values++instance Data.ToJSON AssociatedTranscriptFilter where+ toJSON AssociatedTranscriptFilter' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("name" Data..= name),+ Prelude.Just ("values" Data..= values)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/AssociatedTranscriptFilterName.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.AssociatedTranscriptFilterName+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.AssociatedTranscriptFilterName+ ( AssociatedTranscriptFilterName+ ( ..,+ AssociatedTranscriptFilterName_IntentId,+ AssociatedTranscriptFilterName_SlotTypeId+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype AssociatedTranscriptFilterName = AssociatedTranscriptFilterName'+ { fromAssociatedTranscriptFilterName ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern AssociatedTranscriptFilterName_IntentId :: AssociatedTranscriptFilterName+pattern AssociatedTranscriptFilterName_IntentId = AssociatedTranscriptFilterName' "IntentId"++pattern AssociatedTranscriptFilterName_SlotTypeId :: AssociatedTranscriptFilterName+pattern AssociatedTranscriptFilterName_SlotTypeId = AssociatedTranscriptFilterName' "SlotTypeId"++{-# COMPLETE+ AssociatedTranscriptFilterName_IntentId,+ AssociatedTranscriptFilterName_SlotTypeId,+ AssociatedTranscriptFilterName'+ #-}
+ gen/Amazonka/LexV2Models/Types/AudioAndDTMFInputSpecification.hs view
@@ -0,0 +1,128 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.AudioAndDTMFInputSpecification+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.AudioAndDTMFInputSpecification where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.AudioSpecification+import Amazonka.LexV2Models.Types.DTMFSpecification+import qualified Amazonka.Prelude as Prelude++-- | Specifies the audio and DTMF input specification.+--+-- /See:/ 'newAudioAndDTMFInputSpecification' smart constructor.+data AudioAndDTMFInputSpecification = AudioAndDTMFInputSpecification'+ { -- | Specifies the settings on audio input.+ audioSpecification :: Prelude.Maybe AudioSpecification,+ -- | Specifies the settings on DTMF input.+ dtmfSpecification :: Prelude.Maybe DTMFSpecification,+ -- | Time for which a bot waits before assuming that the customer isn\'t+ -- going to speak or press a key. This timeout is shared between Audio and+ -- DTMF inputs.+ startTimeoutMs :: Prelude.Natural+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AudioAndDTMFInputSpecification' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'audioSpecification', 'audioAndDTMFInputSpecification_audioSpecification' - Specifies the settings on audio input.+--+-- 'dtmfSpecification', 'audioAndDTMFInputSpecification_dtmfSpecification' - Specifies the settings on DTMF input.+--+-- 'startTimeoutMs', 'audioAndDTMFInputSpecification_startTimeoutMs' - Time for which a bot waits before assuming that the customer isn\'t+-- going to speak or press a key. This timeout is shared between Audio and+-- DTMF inputs.+newAudioAndDTMFInputSpecification ::+ -- | 'startTimeoutMs'+ Prelude.Natural ->+ AudioAndDTMFInputSpecification+newAudioAndDTMFInputSpecification pStartTimeoutMs_ =+ AudioAndDTMFInputSpecification'+ { audioSpecification =+ Prelude.Nothing,+ dtmfSpecification = Prelude.Nothing,+ startTimeoutMs = pStartTimeoutMs_+ }++-- | Specifies the settings on audio input.+audioAndDTMFInputSpecification_audioSpecification :: Lens.Lens' AudioAndDTMFInputSpecification (Prelude.Maybe AudioSpecification)+audioAndDTMFInputSpecification_audioSpecification = Lens.lens (\AudioAndDTMFInputSpecification' {audioSpecification} -> audioSpecification) (\s@AudioAndDTMFInputSpecification' {} a -> s {audioSpecification = a} :: AudioAndDTMFInputSpecification)++-- | Specifies the settings on DTMF input.+audioAndDTMFInputSpecification_dtmfSpecification :: Lens.Lens' AudioAndDTMFInputSpecification (Prelude.Maybe DTMFSpecification)+audioAndDTMFInputSpecification_dtmfSpecification = Lens.lens (\AudioAndDTMFInputSpecification' {dtmfSpecification} -> dtmfSpecification) (\s@AudioAndDTMFInputSpecification' {} a -> s {dtmfSpecification = a} :: AudioAndDTMFInputSpecification)++-- | Time for which a bot waits before assuming that the customer isn\'t+-- going to speak or press a key. This timeout is shared between Audio and+-- DTMF inputs.+audioAndDTMFInputSpecification_startTimeoutMs :: Lens.Lens' AudioAndDTMFInputSpecification Prelude.Natural+audioAndDTMFInputSpecification_startTimeoutMs = Lens.lens (\AudioAndDTMFInputSpecification' {startTimeoutMs} -> startTimeoutMs) (\s@AudioAndDTMFInputSpecification' {} a -> s {startTimeoutMs = a} :: AudioAndDTMFInputSpecification)++instance Data.FromJSON AudioAndDTMFInputSpecification where+ parseJSON =+ Data.withObject+ "AudioAndDTMFInputSpecification"+ ( \x ->+ AudioAndDTMFInputSpecification'+ Prelude.<$> (x Data..:? "audioSpecification")+ Prelude.<*> (x Data..:? "dtmfSpecification")+ Prelude.<*> (x Data..: "startTimeoutMs")+ )++instance+ Prelude.Hashable+ AudioAndDTMFInputSpecification+ where+ hashWithSalt+ _salt+ AudioAndDTMFInputSpecification' {..} =+ _salt+ `Prelude.hashWithSalt` audioSpecification+ `Prelude.hashWithSalt` dtmfSpecification+ `Prelude.hashWithSalt` startTimeoutMs++instance+ Prelude.NFData+ AudioAndDTMFInputSpecification+ where+ rnf AudioAndDTMFInputSpecification' {..} =+ Prelude.rnf audioSpecification+ `Prelude.seq` Prelude.rnf dtmfSpecification+ `Prelude.seq` Prelude.rnf startTimeoutMs++instance Data.ToJSON AudioAndDTMFInputSpecification where+ toJSON AudioAndDTMFInputSpecification' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("audioSpecification" Data..=)+ Prelude.<$> audioSpecification,+ ("dtmfSpecification" Data..=)+ Prelude.<$> dtmfSpecification,+ Prelude.Just+ ("startTimeoutMs" Data..= startTimeoutMs)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/AudioLogDestination.hs view
@@ -0,0 +1,88 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.AudioLogDestination+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.AudioLogDestination where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.S3BucketLogDestination+import qualified Amazonka.Prelude as Prelude++-- | The location of audio log files collected when conversation logging is+-- enabled for a bot.+--+-- /See:/ 'newAudioLogDestination' smart constructor.+data AudioLogDestination = AudioLogDestination'+ { -- | The Amazon S3 bucket where the audio log files are stored. The IAM role+ -- specified in the @roleArn@ parameter of the+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/API_CreateBot.html CreateBot>+ -- operation must have permission to write to this bucket.+ s3Bucket :: S3BucketLogDestination+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AudioLogDestination' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 's3Bucket', 'audioLogDestination_s3Bucket' - The Amazon S3 bucket where the audio log files are stored. The IAM role+-- specified in the @roleArn@ parameter of the+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_CreateBot.html CreateBot>+-- operation must have permission to write to this bucket.+newAudioLogDestination ::+ -- | 's3Bucket'+ S3BucketLogDestination ->+ AudioLogDestination+newAudioLogDestination pS3Bucket_ =+ AudioLogDestination' {s3Bucket = pS3Bucket_}++-- | The Amazon S3 bucket where the audio log files are stored. The IAM role+-- specified in the @roleArn@ parameter of the+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_CreateBot.html CreateBot>+-- operation must have permission to write to this bucket.+audioLogDestination_s3Bucket :: Lens.Lens' AudioLogDestination S3BucketLogDestination+audioLogDestination_s3Bucket = Lens.lens (\AudioLogDestination' {s3Bucket} -> s3Bucket) (\s@AudioLogDestination' {} a -> s {s3Bucket = a} :: AudioLogDestination)++instance Data.FromJSON AudioLogDestination where+ parseJSON =+ Data.withObject+ "AudioLogDestination"+ ( \x ->+ AudioLogDestination'+ Prelude.<$> (x Data..: "s3Bucket")+ )++instance Prelude.Hashable AudioLogDestination where+ hashWithSalt _salt AudioLogDestination' {..} =+ _salt `Prelude.hashWithSalt` s3Bucket++instance Prelude.NFData AudioLogDestination where+ rnf AudioLogDestination' {..} = Prelude.rnf s3Bucket++instance Data.ToJSON AudioLogDestination where+ toJSON AudioLogDestination' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("s3Bucket" Data..= s3Bucket)]+ )
+ gen/Amazonka/LexV2Models/Types/AudioLogSetting.hs view
@@ -0,0 +1,99 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.AudioLogSetting+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.AudioLogSetting where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.AudioLogDestination+import qualified Amazonka.Prelude as Prelude++-- | Settings for logging audio of conversations between Amazon Lex and a+-- user. You specify whether to log audio and the Amazon S3 bucket where+-- the audio file is stored.+--+-- /See:/ 'newAudioLogSetting' smart constructor.+data AudioLogSetting = AudioLogSetting'+ { -- | Determines whether audio logging in enabled for the bot.+ enabled :: Prelude.Bool,+ destination :: AudioLogDestination+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AudioLogSetting' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'enabled', 'audioLogSetting_enabled' - Determines whether audio logging in enabled for the bot.+--+-- 'destination', 'audioLogSetting_destination' - Undocumented member.+newAudioLogSetting ::+ -- | 'enabled'+ Prelude.Bool ->+ -- | 'destination'+ AudioLogDestination ->+ AudioLogSetting+newAudioLogSetting pEnabled_ pDestination_ =+ AudioLogSetting'+ { enabled = pEnabled_,+ destination = pDestination_+ }++-- | Determines whether audio logging in enabled for the bot.+audioLogSetting_enabled :: Lens.Lens' AudioLogSetting Prelude.Bool+audioLogSetting_enabled = Lens.lens (\AudioLogSetting' {enabled} -> enabled) (\s@AudioLogSetting' {} a -> s {enabled = a} :: AudioLogSetting)++-- | Undocumented member.+audioLogSetting_destination :: Lens.Lens' AudioLogSetting AudioLogDestination+audioLogSetting_destination = Lens.lens (\AudioLogSetting' {destination} -> destination) (\s@AudioLogSetting' {} a -> s {destination = a} :: AudioLogSetting)++instance Data.FromJSON AudioLogSetting where+ parseJSON =+ Data.withObject+ "AudioLogSetting"+ ( \x ->+ AudioLogSetting'+ Prelude.<$> (x Data..: "enabled")+ Prelude.<*> (x Data..: "destination")+ )++instance Prelude.Hashable AudioLogSetting where+ hashWithSalt _salt AudioLogSetting' {..} =+ _salt+ `Prelude.hashWithSalt` enabled+ `Prelude.hashWithSalt` destination++instance Prelude.NFData AudioLogSetting where+ rnf AudioLogSetting' {..} =+ Prelude.rnf enabled+ `Prelude.seq` Prelude.rnf destination++instance Data.ToJSON AudioLogSetting where+ toJSON AudioLogSetting' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("enabled" Data..= enabled),+ Prelude.Just ("destination" Data..= destination)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/AudioRecognitionStrategy.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.AudioRecognitionStrategy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.AudioRecognitionStrategy+ ( AudioRecognitionStrategy+ ( ..,+ AudioRecognitionStrategy_UseSlotValuesAsCustomVocabulary+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype AudioRecognitionStrategy = AudioRecognitionStrategy'+ { fromAudioRecognitionStrategy ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern AudioRecognitionStrategy_UseSlotValuesAsCustomVocabulary :: AudioRecognitionStrategy+pattern AudioRecognitionStrategy_UseSlotValuesAsCustomVocabulary = AudioRecognitionStrategy' "UseSlotValuesAsCustomVocabulary"++{-# COMPLETE+ AudioRecognitionStrategy_UseSlotValuesAsCustomVocabulary,+ AudioRecognitionStrategy'+ #-}
+ gen/Amazonka/LexV2Models/Types/AudioSpecification.hs view
@@ -0,0 +1,103 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.AudioSpecification+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.AudioSpecification where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Specifies the audio input specifications.+--+-- /See:/ 'newAudioSpecification' smart constructor.+data AudioSpecification = AudioSpecification'+ { -- | Time for how long Amazon Lex waits before speech input is truncated and+ -- the speech is returned to application.+ maxLengthMs :: Prelude.Natural,+ -- | Time for which a bot waits after the customer stops speaking to assume+ -- the utterance is finished.+ endTimeoutMs :: Prelude.Natural+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AudioSpecification' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxLengthMs', 'audioSpecification_maxLengthMs' - Time for how long Amazon Lex waits before speech input is truncated and+-- the speech is returned to application.+--+-- 'endTimeoutMs', 'audioSpecification_endTimeoutMs' - Time for which a bot waits after the customer stops speaking to assume+-- the utterance is finished.+newAudioSpecification ::+ -- | 'maxLengthMs'+ Prelude.Natural ->+ -- | 'endTimeoutMs'+ Prelude.Natural ->+ AudioSpecification+newAudioSpecification pMaxLengthMs_ pEndTimeoutMs_ =+ AudioSpecification'+ { maxLengthMs = pMaxLengthMs_,+ endTimeoutMs = pEndTimeoutMs_+ }++-- | Time for how long Amazon Lex waits before speech input is truncated and+-- the speech is returned to application.+audioSpecification_maxLengthMs :: Lens.Lens' AudioSpecification Prelude.Natural+audioSpecification_maxLengthMs = Lens.lens (\AudioSpecification' {maxLengthMs} -> maxLengthMs) (\s@AudioSpecification' {} a -> s {maxLengthMs = a} :: AudioSpecification)++-- | Time for which a bot waits after the customer stops speaking to assume+-- the utterance is finished.+audioSpecification_endTimeoutMs :: Lens.Lens' AudioSpecification Prelude.Natural+audioSpecification_endTimeoutMs = Lens.lens (\AudioSpecification' {endTimeoutMs} -> endTimeoutMs) (\s@AudioSpecification' {} a -> s {endTimeoutMs = a} :: AudioSpecification)++instance Data.FromJSON AudioSpecification where+ parseJSON =+ Data.withObject+ "AudioSpecification"+ ( \x ->+ AudioSpecification'+ Prelude.<$> (x Data..: "maxLengthMs")+ Prelude.<*> (x Data..: "endTimeoutMs")+ )++instance Prelude.Hashable AudioSpecification where+ hashWithSalt _salt AudioSpecification' {..} =+ _salt+ `Prelude.hashWithSalt` maxLengthMs+ `Prelude.hashWithSalt` endTimeoutMs++instance Prelude.NFData AudioSpecification where+ rnf AudioSpecification' {..} =+ Prelude.rnf maxLengthMs+ `Prelude.seq` Prelude.rnf endTimeoutMs++instance Data.ToJSON AudioSpecification where+ toJSON AudioSpecification' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("maxLengthMs" Data..= maxLengthMs),+ Prelude.Just ("endTimeoutMs" Data..= endTimeoutMs)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/BotAliasHistoryEvent.hs view
@@ -0,0 +1,97 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.BotAliasHistoryEvent+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.BotAliasHistoryEvent where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Provides a record of an event that affects a bot alias. For example,+-- when the version of a bot that the alias points to changes.+--+-- /See:/ 'newBotAliasHistoryEvent' smart constructor.+data BotAliasHistoryEvent = BotAliasHistoryEvent'+ { -- | The version of the bot that was used in the event.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | The date and time that the event ended.+ endDate :: Prelude.Maybe Data.POSIX,+ -- | The date and time that the event started.+ startDate :: Prelude.Maybe Data.POSIX+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BotAliasHistoryEvent' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botVersion', 'botAliasHistoryEvent_botVersion' - The version of the bot that was used in the event.+--+-- 'endDate', 'botAliasHistoryEvent_endDate' - The date and time that the event ended.+--+-- 'startDate', 'botAliasHistoryEvent_startDate' - The date and time that the event started.+newBotAliasHistoryEvent ::+ BotAliasHistoryEvent+newBotAliasHistoryEvent =+ BotAliasHistoryEvent'+ { botVersion = Prelude.Nothing,+ endDate = Prelude.Nothing,+ startDate = Prelude.Nothing+ }++-- | The version of the bot that was used in the event.+botAliasHistoryEvent_botVersion :: Lens.Lens' BotAliasHistoryEvent (Prelude.Maybe Prelude.Text)+botAliasHistoryEvent_botVersion = Lens.lens (\BotAliasHistoryEvent' {botVersion} -> botVersion) (\s@BotAliasHistoryEvent' {} a -> s {botVersion = a} :: BotAliasHistoryEvent)++-- | The date and time that the event ended.+botAliasHistoryEvent_endDate :: Lens.Lens' BotAliasHistoryEvent (Prelude.Maybe Prelude.UTCTime)+botAliasHistoryEvent_endDate = Lens.lens (\BotAliasHistoryEvent' {endDate} -> endDate) (\s@BotAliasHistoryEvent' {} a -> s {endDate = a} :: BotAliasHistoryEvent) Prelude.. Lens.mapping Data._Time++-- | The date and time that the event started.+botAliasHistoryEvent_startDate :: Lens.Lens' BotAliasHistoryEvent (Prelude.Maybe Prelude.UTCTime)+botAliasHistoryEvent_startDate = Lens.lens (\BotAliasHistoryEvent' {startDate} -> startDate) (\s@BotAliasHistoryEvent' {} a -> s {startDate = a} :: BotAliasHistoryEvent) Prelude.. Lens.mapping Data._Time++instance Data.FromJSON BotAliasHistoryEvent where+ parseJSON =+ Data.withObject+ "BotAliasHistoryEvent"+ ( \x ->+ BotAliasHistoryEvent'+ Prelude.<$> (x Data..:? "botVersion")+ Prelude.<*> (x Data..:? "endDate")+ Prelude.<*> (x Data..:? "startDate")+ )++instance Prelude.Hashable BotAliasHistoryEvent where+ hashWithSalt _salt BotAliasHistoryEvent' {..} =+ _salt+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` endDate+ `Prelude.hashWithSalt` startDate++instance Prelude.NFData BotAliasHistoryEvent where+ rnf BotAliasHistoryEvent' {..} =+ Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf endDate+ `Prelude.seq` Prelude.rnf startDate
+ gen/Amazonka/LexV2Models/Types/BotAliasLocaleSettings.hs view
@@ -0,0 +1,102 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.BotAliasLocaleSettings+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.BotAliasLocaleSettings where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.CodeHookSpecification+import qualified Amazonka.Prelude as Prelude++-- | Specifies settings that are unique to a locale. For example, you can use+-- different Lambda function depending on the bot\'s locale.+--+-- /See:/ 'newBotAliasLocaleSettings' smart constructor.+data BotAliasLocaleSettings = BotAliasLocaleSettings'+ { -- | Specifies the Lambda function that should be used in the locale.+ codeHookSpecification :: Prelude.Maybe CodeHookSpecification,+ -- | Determines whether the locale is enabled for the bot. If the value is+ -- @false@, the locale isn\'t available for use.+ enabled :: Prelude.Bool+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BotAliasLocaleSettings' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'codeHookSpecification', 'botAliasLocaleSettings_codeHookSpecification' - Specifies the Lambda function that should be used in the locale.+--+-- 'enabled', 'botAliasLocaleSettings_enabled' - Determines whether the locale is enabled for the bot. If the value is+-- @false@, the locale isn\'t available for use.+newBotAliasLocaleSettings ::+ -- | 'enabled'+ Prelude.Bool ->+ BotAliasLocaleSettings+newBotAliasLocaleSettings pEnabled_ =+ BotAliasLocaleSettings'+ { codeHookSpecification =+ Prelude.Nothing,+ enabled = pEnabled_+ }++-- | Specifies the Lambda function that should be used in the locale.+botAliasLocaleSettings_codeHookSpecification :: Lens.Lens' BotAliasLocaleSettings (Prelude.Maybe CodeHookSpecification)+botAliasLocaleSettings_codeHookSpecification = Lens.lens (\BotAliasLocaleSettings' {codeHookSpecification} -> codeHookSpecification) (\s@BotAliasLocaleSettings' {} a -> s {codeHookSpecification = a} :: BotAliasLocaleSettings)++-- | Determines whether the locale is enabled for the bot. If the value is+-- @false@, the locale isn\'t available for use.+botAliasLocaleSettings_enabled :: Lens.Lens' BotAliasLocaleSettings Prelude.Bool+botAliasLocaleSettings_enabled = Lens.lens (\BotAliasLocaleSettings' {enabled} -> enabled) (\s@BotAliasLocaleSettings' {} a -> s {enabled = a} :: BotAliasLocaleSettings)++instance Data.FromJSON BotAliasLocaleSettings where+ parseJSON =+ Data.withObject+ "BotAliasLocaleSettings"+ ( \x ->+ BotAliasLocaleSettings'+ Prelude.<$> (x Data..:? "codeHookSpecification")+ Prelude.<*> (x Data..: "enabled")+ )++instance Prelude.Hashable BotAliasLocaleSettings where+ hashWithSalt _salt BotAliasLocaleSettings' {..} =+ _salt+ `Prelude.hashWithSalt` codeHookSpecification+ `Prelude.hashWithSalt` enabled++instance Prelude.NFData BotAliasLocaleSettings where+ rnf BotAliasLocaleSettings' {..} =+ Prelude.rnf codeHookSpecification+ `Prelude.seq` Prelude.rnf enabled++instance Data.ToJSON BotAliasLocaleSettings where+ toJSON BotAliasLocaleSettings' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("codeHookSpecification" Data..=)+ Prelude.<$> codeHookSpecification,+ Prelude.Just ("enabled" Data..= enabled)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/BotAliasStatus.hs view
@@ -0,0 +1,81 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.BotAliasStatus+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.BotAliasStatus+ ( BotAliasStatus+ ( ..,+ BotAliasStatus_Available,+ BotAliasStatus_Creating,+ BotAliasStatus_Deleting,+ BotAliasStatus_Failed+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype BotAliasStatus = BotAliasStatus'+ { fromBotAliasStatus ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern BotAliasStatus_Available :: BotAliasStatus+pattern BotAliasStatus_Available = BotAliasStatus' "Available"++pattern BotAliasStatus_Creating :: BotAliasStatus+pattern BotAliasStatus_Creating = BotAliasStatus' "Creating"++pattern BotAliasStatus_Deleting :: BotAliasStatus+pattern BotAliasStatus_Deleting = BotAliasStatus' "Deleting"++pattern BotAliasStatus_Failed :: BotAliasStatus+pattern BotAliasStatus_Failed = BotAliasStatus' "Failed"++{-# COMPLETE+ BotAliasStatus_Available,+ BotAliasStatus_Creating,+ BotAliasStatus_Deleting,+ BotAliasStatus_Failed,+ BotAliasStatus'+ #-}
+ gen/Amazonka/LexV2Models/Types/BotAliasSummary.hs view
@@ -0,0 +1,159 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.BotAliasSummary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.BotAliasSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.BotAliasStatus+import qualified Amazonka.Prelude as Prelude++-- | Summary information about bot aliases returned from the+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_ListBotAliases.html ListBotAliases>+-- operation.+--+-- /See:/ 'newBotAliasSummary' smart constructor.+data BotAliasSummary = BotAliasSummary'+ { -- | The unique identifier assigned to the bot alias. You can use this ID to+ -- get detailed information about the alias using the+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/API_DescribeBotAlias.html DescribeBotAlias>+ -- operation.+ botAliasId :: Prelude.Maybe Prelude.Text,+ -- | The name of the bot alias.+ botAliasName :: Prelude.Maybe Prelude.Text,+ -- | The current state of the bot alias. If the status is @Available@, the+ -- alias is ready for use.+ botAliasStatus :: Prelude.Maybe BotAliasStatus,+ -- | The version of the bot that the bot alias references.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | A timestamp of the date and time that the bot alias was created.+ creationDateTime :: Prelude.Maybe Data.POSIX,+ -- | The description of the bot alias.+ description :: Prelude.Maybe Prelude.Text,+ -- | A timestamp of the date and time that the bot alias was last updated.+ lastUpdatedDateTime :: Prelude.Maybe Data.POSIX+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BotAliasSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botAliasId', 'botAliasSummary_botAliasId' - The unique identifier assigned to the bot alias. You can use this ID to+-- get detailed information about the alias using the+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_DescribeBotAlias.html DescribeBotAlias>+-- operation.+--+-- 'botAliasName', 'botAliasSummary_botAliasName' - The name of the bot alias.+--+-- 'botAliasStatus', 'botAliasSummary_botAliasStatus' - The current state of the bot alias. If the status is @Available@, the+-- alias is ready for use.+--+-- 'botVersion', 'botAliasSummary_botVersion' - The version of the bot that the bot alias references.+--+-- 'creationDateTime', 'botAliasSummary_creationDateTime' - A timestamp of the date and time that the bot alias was created.+--+-- 'description', 'botAliasSummary_description' - The description of the bot alias.+--+-- 'lastUpdatedDateTime', 'botAliasSummary_lastUpdatedDateTime' - A timestamp of the date and time that the bot alias was last updated.+newBotAliasSummary ::+ BotAliasSummary+newBotAliasSummary =+ BotAliasSummary'+ { botAliasId = Prelude.Nothing,+ botAliasName = Prelude.Nothing,+ botAliasStatus = Prelude.Nothing,+ botVersion = Prelude.Nothing,+ creationDateTime = Prelude.Nothing,+ description = Prelude.Nothing,+ lastUpdatedDateTime = Prelude.Nothing+ }++-- | The unique identifier assigned to the bot alias. You can use this ID to+-- get detailed information about the alias using the+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_DescribeBotAlias.html DescribeBotAlias>+-- operation.+botAliasSummary_botAliasId :: Lens.Lens' BotAliasSummary (Prelude.Maybe Prelude.Text)+botAliasSummary_botAliasId = Lens.lens (\BotAliasSummary' {botAliasId} -> botAliasId) (\s@BotAliasSummary' {} a -> s {botAliasId = a} :: BotAliasSummary)++-- | The name of the bot alias.+botAliasSummary_botAliasName :: Lens.Lens' BotAliasSummary (Prelude.Maybe Prelude.Text)+botAliasSummary_botAliasName = Lens.lens (\BotAliasSummary' {botAliasName} -> botAliasName) (\s@BotAliasSummary' {} a -> s {botAliasName = a} :: BotAliasSummary)++-- | The current state of the bot alias. If the status is @Available@, the+-- alias is ready for use.+botAliasSummary_botAliasStatus :: Lens.Lens' BotAliasSummary (Prelude.Maybe BotAliasStatus)+botAliasSummary_botAliasStatus = Lens.lens (\BotAliasSummary' {botAliasStatus} -> botAliasStatus) (\s@BotAliasSummary' {} a -> s {botAliasStatus = a} :: BotAliasSummary)++-- | The version of the bot that the bot alias references.+botAliasSummary_botVersion :: Lens.Lens' BotAliasSummary (Prelude.Maybe Prelude.Text)+botAliasSummary_botVersion = Lens.lens (\BotAliasSummary' {botVersion} -> botVersion) (\s@BotAliasSummary' {} a -> s {botVersion = a} :: BotAliasSummary)++-- | A timestamp of the date and time that the bot alias was created.+botAliasSummary_creationDateTime :: Lens.Lens' BotAliasSummary (Prelude.Maybe Prelude.UTCTime)+botAliasSummary_creationDateTime = Lens.lens (\BotAliasSummary' {creationDateTime} -> creationDateTime) (\s@BotAliasSummary' {} a -> s {creationDateTime = a} :: BotAliasSummary) Prelude.. Lens.mapping Data._Time++-- | The description of the bot alias.+botAliasSummary_description :: Lens.Lens' BotAliasSummary (Prelude.Maybe Prelude.Text)+botAliasSummary_description = Lens.lens (\BotAliasSummary' {description} -> description) (\s@BotAliasSummary' {} a -> s {description = a} :: BotAliasSummary)++-- | A timestamp of the date and time that the bot alias was last updated.+botAliasSummary_lastUpdatedDateTime :: Lens.Lens' BotAliasSummary (Prelude.Maybe Prelude.UTCTime)+botAliasSummary_lastUpdatedDateTime = Lens.lens (\BotAliasSummary' {lastUpdatedDateTime} -> lastUpdatedDateTime) (\s@BotAliasSummary' {} a -> s {lastUpdatedDateTime = a} :: BotAliasSummary) Prelude.. Lens.mapping Data._Time++instance Data.FromJSON BotAliasSummary where+ parseJSON =+ Data.withObject+ "BotAliasSummary"+ ( \x ->+ BotAliasSummary'+ Prelude.<$> (x Data..:? "botAliasId")+ Prelude.<*> (x Data..:? "botAliasName")+ Prelude.<*> (x Data..:? "botAliasStatus")+ Prelude.<*> (x Data..:? "botVersion")+ Prelude.<*> (x Data..:? "creationDateTime")+ Prelude.<*> (x Data..:? "description")+ Prelude.<*> (x Data..:? "lastUpdatedDateTime")+ )++instance Prelude.Hashable BotAliasSummary where+ hashWithSalt _salt BotAliasSummary' {..} =+ _salt+ `Prelude.hashWithSalt` botAliasId+ `Prelude.hashWithSalt` botAliasName+ `Prelude.hashWithSalt` botAliasStatus+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` creationDateTime+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` lastUpdatedDateTime++instance Prelude.NFData BotAliasSummary where+ rnf BotAliasSummary' {..} =+ Prelude.rnf botAliasId+ `Prelude.seq` Prelude.rnf botAliasName+ `Prelude.seq` Prelude.rnf botAliasStatus+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf lastUpdatedDateTime
+ gen/Amazonka/LexV2Models/Types/BotExportSpecification.hs view
@@ -0,0 +1,100 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.BotExportSpecification+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.BotExportSpecification where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Provides the identity of a the bot that was exported.+--+-- /See:/ 'newBotExportSpecification' smart constructor.+data BotExportSpecification = BotExportSpecification'+ { -- | The identifier of the bot assigned by Amazon Lex.+ botId :: Prelude.Text,+ -- | The version of the bot that was exported. This will be either @DRAFT@ or+ -- the version number.+ botVersion :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BotExportSpecification' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'botExportSpecification_botId' - The identifier of the bot assigned by Amazon Lex.+--+-- 'botVersion', 'botExportSpecification_botVersion' - The version of the bot that was exported. This will be either @DRAFT@ or+-- the version number.+newBotExportSpecification ::+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ BotExportSpecification+newBotExportSpecification pBotId_ pBotVersion_ =+ BotExportSpecification'+ { botId = pBotId_,+ botVersion = pBotVersion_+ }++-- | The identifier of the bot assigned by Amazon Lex.+botExportSpecification_botId :: Lens.Lens' BotExportSpecification Prelude.Text+botExportSpecification_botId = Lens.lens (\BotExportSpecification' {botId} -> botId) (\s@BotExportSpecification' {} a -> s {botId = a} :: BotExportSpecification)++-- | The version of the bot that was exported. This will be either @DRAFT@ or+-- the version number.+botExportSpecification_botVersion :: Lens.Lens' BotExportSpecification Prelude.Text+botExportSpecification_botVersion = Lens.lens (\BotExportSpecification' {botVersion} -> botVersion) (\s@BotExportSpecification' {} a -> s {botVersion = a} :: BotExportSpecification)++instance Data.FromJSON BotExportSpecification where+ parseJSON =+ Data.withObject+ "BotExportSpecification"+ ( \x ->+ BotExportSpecification'+ Prelude.<$> (x Data..: "botId")+ Prelude.<*> (x Data..: "botVersion")+ )++instance Prelude.Hashable BotExportSpecification where+ hashWithSalt _salt BotExportSpecification' {..} =+ _salt+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion++instance Prelude.NFData BotExportSpecification where+ rnf BotExportSpecification' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion++instance Data.ToJSON BotExportSpecification where+ toJSON BotExportSpecification' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("botId" Data..= botId),+ Prelude.Just ("botVersion" Data..= botVersion)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/BotFilter.hs view
@@ -0,0 +1,112 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.BotFilter+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.BotFilter where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.BotFilterName+import Amazonka.LexV2Models.Types.BotFilterOperator+import qualified Amazonka.Prelude as Prelude++-- | Filters the responses returned by the @ListBots@ operation.+--+-- /See:/ 'newBotFilter' smart constructor.+data BotFilter = BotFilter'+ { -- | The name of the field to filter the list of bots.+ name :: BotFilterName,+ -- | The value to use for filtering the list of bots.+ values :: Prelude.NonEmpty Prelude.Text,+ -- | The operator to use for the filter. Specify @EQ@ when the @ListBots@+ -- operation should return only aliases that equal the specified value.+ -- Specify @CO@ when the @ListBots@ operation should return aliases that+ -- contain the specified value.+ operator :: BotFilterOperator+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BotFilter' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'name', 'botFilter_name' - The name of the field to filter the list of bots.+--+-- 'values', 'botFilter_values' - The value to use for filtering the list of bots.+--+-- 'operator', 'botFilter_operator' - The operator to use for the filter. Specify @EQ@ when the @ListBots@+-- operation should return only aliases that equal the specified value.+-- Specify @CO@ when the @ListBots@ operation should return aliases that+-- contain the specified value.+newBotFilter ::+ -- | 'name'+ BotFilterName ->+ -- | 'values'+ Prelude.NonEmpty Prelude.Text ->+ -- | 'operator'+ BotFilterOperator ->+ BotFilter+newBotFilter pName_ pValues_ pOperator_ =+ BotFilter'+ { name = pName_,+ values = Lens.coerced Lens.# pValues_,+ operator = pOperator_+ }++-- | The name of the field to filter the list of bots.+botFilter_name :: Lens.Lens' BotFilter BotFilterName+botFilter_name = Lens.lens (\BotFilter' {name} -> name) (\s@BotFilter' {} a -> s {name = a} :: BotFilter)++-- | The value to use for filtering the list of bots.+botFilter_values :: Lens.Lens' BotFilter (Prelude.NonEmpty Prelude.Text)+botFilter_values = Lens.lens (\BotFilter' {values} -> values) (\s@BotFilter' {} a -> s {values = a} :: BotFilter) Prelude.. Lens.coerced++-- | The operator to use for the filter. Specify @EQ@ when the @ListBots@+-- operation should return only aliases that equal the specified value.+-- Specify @CO@ when the @ListBots@ operation should return aliases that+-- contain the specified value.+botFilter_operator :: Lens.Lens' BotFilter BotFilterOperator+botFilter_operator = Lens.lens (\BotFilter' {operator} -> operator) (\s@BotFilter' {} a -> s {operator = a} :: BotFilter)++instance Prelude.Hashable BotFilter where+ hashWithSalt _salt BotFilter' {..} =+ _salt+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` values+ `Prelude.hashWithSalt` operator++instance Prelude.NFData BotFilter where+ rnf BotFilter' {..} =+ Prelude.rnf name+ `Prelude.seq` Prelude.rnf values+ `Prelude.seq` Prelude.rnf operator++instance Data.ToJSON BotFilter where+ toJSON BotFilter' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("name" Data..= name),+ Prelude.Just ("values" Data..= values),+ Prelude.Just ("operator" Data..= operator)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/BotFilterName.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.BotFilterName+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.BotFilterName+ ( BotFilterName+ ( ..,+ BotFilterName_BotName+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype BotFilterName = BotFilterName'+ { fromBotFilterName ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern BotFilterName_BotName :: BotFilterName+pattern BotFilterName_BotName = BotFilterName' "BotName"++{-# COMPLETE+ BotFilterName_BotName,+ BotFilterName'+ #-}
+ gen/Amazonka/LexV2Models/Types/BotFilterOperator.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.BotFilterOperator+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.BotFilterOperator+ ( BotFilterOperator+ ( ..,+ BotFilterOperator_CO,+ BotFilterOperator_EQ+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype BotFilterOperator = BotFilterOperator'+ { fromBotFilterOperator ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern BotFilterOperator_CO :: BotFilterOperator+pattern BotFilterOperator_CO = BotFilterOperator' "CO"++pattern BotFilterOperator_EQ :: BotFilterOperator+pattern BotFilterOperator_EQ = BotFilterOperator' "EQ"++{-# COMPLETE+ BotFilterOperator_CO,+ BotFilterOperator_EQ,+ BotFilterOperator'+ #-}
+ gen/Amazonka/LexV2Models/Types/BotImportSpecification.hs view
@@ -0,0 +1,198 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.BotImportSpecification+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.BotImportSpecification where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.DataPrivacy+import qualified Amazonka.Prelude as Prelude++-- | Provides the bot parameters required for importing a bot.+--+-- /See:/ 'newBotImportSpecification' smart constructor.+data BotImportSpecification = BotImportSpecification'+ { -- | A list of tags to add to the bot. You can only add tags when you import+ -- a bot. You can\'t use the @UpdateBot@ operation to update tags. To+ -- update tags, use the @TagResource@ operation.+ botTags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The time, in seconds, that Amazon Lex should keep information about a+ -- user\'s conversation with the bot.+ --+ -- A user interaction remains active for the amount of time specified. If+ -- no conversation occurs during this time, the session expires and Amazon+ -- Lex deletes any data provided before the timeout.+ --+ -- You can specify between 60 (1 minute) and 86,400 (24 hours) seconds.+ idleSessionTTLInSeconds :: Prelude.Maybe Prelude.Natural,+ -- | A list of tags to add to the test alias for a bot. You can only add tags+ -- when you import a bot. You can\'t use the @UpdateAlias@ operation to+ -- update tags. To update tags on the test alias, use the @TagResource@+ -- operation.+ testBotAliasTags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The name that Amazon Lex should use for the bot.+ botName :: Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the IAM role used to build and run the+ -- bot.+ roleArn :: Prelude.Text,+ dataPrivacy :: DataPrivacy+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BotImportSpecification' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botTags', 'botImportSpecification_botTags' - A list of tags to add to the bot. You can only add tags when you import+-- a bot. You can\'t use the @UpdateBot@ operation to update tags. To+-- update tags, use the @TagResource@ operation.+--+-- 'idleSessionTTLInSeconds', 'botImportSpecification_idleSessionTTLInSeconds' - The time, in seconds, that Amazon Lex should keep information about a+-- user\'s conversation with the bot.+--+-- A user interaction remains active for the amount of time specified. If+-- no conversation occurs during this time, the session expires and Amazon+-- Lex deletes any data provided before the timeout.+--+-- You can specify between 60 (1 minute) and 86,400 (24 hours) seconds.+--+-- 'testBotAliasTags', 'botImportSpecification_testBotAliasTags' - A list of tags to add to the test alias for a bot. You can only add tags+-- when you import a bot. You can\'t use the @UpdateAlias@ operation to+-- update tags. To update tags on the test alias, use the @TagResource@+-- operation.+--+-- 'botName', 'botImportSpecification_botName' - The name that Amazon Lex should use for the bot.+--+-- 'roleArn', 'botImportSpecification_roleArn' - The Amazon Resource Name (ARN) of the IAM role used to build and run the+-- bot.+--+-- 'dataPrivacy', 'botImportSpecification_dataPrivacy' - Undocumented member.+newBotImportSpecification ::+ -- | 'botName'+ Prelude.Text ->+ -- | 'roleArn'+ Prelude.Text ->+ -- | 'dataPrivacy'+ DataPrivacy ->+ BotImportSpecification+newBotImportSpecification+ pBotName_+ pRoleArn_+ pDataPrivacy_ =+ BotImportSpecification'+ { botTags = Prelude.Nothing,+ idleSessionTTLInSeconds = Prelude.Nothing,+ testBotAliasTags = Prelude.Nothing,+ botName = pBotName_,+ roleArn = pRoleArn_,+ dataPrivacy = pDataPrivacy_+ }++-- | A list of tags to add to the bot. You can only add tags when you import+-- a bot. You can\'t use the @UpdateBot@ operation to update tags. To+-- update tags, use the @TagResource@ operation.+botImportSpecification_botTags :: Lens.Lens' BotImportSpecification (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+botImportSpecification_botTags = Lens.lens (\BotImportSpecification' {botTags} -> botTags) (\s@BotImportSpecification' {} a -> s {botTags = a} :: BotImportSpecification) Prelude.. Lens.mapping Lens.coerced++-- | The time, in seconds, that Amazon Lex should keep information about a+-- user\'s conversation with the bot.+--+-- A user interaction remains active for the amount of time specified. If+-- no conversation occurs during this time, the session expires and Amazon+-- Lex deletes any data provided before the timeout.+--+-- You can specify between 60 (1 minute) and 86,400 (24 hours) seconds.+botImportSpecification_idleSessionTTLInSeconds :: Lens.Lens' BotImportSpecification (Prelude.Maybe Prelude.Natural)+botImportSpecification_idleSessionTTLInSeconds = Lens.lens (\BotImportSpecification' {idleSessionTTLInSeconds} -> idleSessionTTLInSeconds) (\s@BotImportSpecification' {} a -> s {idleSessionTTLInSeconds = a} :: BotImportSpecification)++-- | A list of tags to add to the test alias for a bot. You can only add tags+-- when you import a bot. You can\'t use the @UpdateAlias@ operation to+-- update tags. To update tags on the test alias, use the @TagResource@+-- operation.+botImportSpecification_testBotAliasTags :: Lens.Lens' BotImportSpecification (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+botImportSpecification_testBotAliasTags = Lens.lens (\BotImportSpecification' {testBotAliasTags} -> testBotAliasTags) (\s@BotImportSpecification' {} a -> s {testBotAliasTags = a} :: BotImportSpecification) Prelude.. Lens.mapping Lens.coerced++-- | The name that Amazon Lex should use for the bot.+botImportSpecification_botName :: Lens.Lens' BotImportSpecification Prelude.Text+botImportSpecification_botName = Lens.lens (\BotImportSpecification' {botName} -> botName) (\s@BotImportSpecification' {} a -> s {botName = a} :: BotImportSpecification)++-- | The Amazon Resource Name (ARN) of the IAM role used to build and run the+-- bot.+botImportSpecification_roleArn :: Lens.Lens' BotImportSpecification Prelude.Text+botImportSpecification_roleArn = Lens.lens (\BotImportSpecification' {roleArn} -> roleArn) (\s@BotImportSpecification' {} a -> s {roleArn = a} :: BotImportSpecification)++-- | Undocumented member.+botImportSpecification_dataPrivacy :: Lens.Lens' BotImportSpecification DataPrivacy+botImportSpecification_dataPrivacy = Lens.lens (\BotImportSpecification' {dataPrivacy} -> dataPrivacy) (\s@BotImportSpecification' {} a -> s {dataPrivacy = a} :: BotImportSpecification)++instance Data.FromJSON BotImportSpecification where+ parseJSON =+ Data.withObject+ "BotImportSpecification"+ ( \x ->+ BotImportSpecification'+ Prelude.<$> (x Data..:? "botTags" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "idleSessionTTLInSeconds")+ Prelude.<*> ( x+ Data..:? "testBotAliasTags"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..: "botName")+ Prelude.<*> (x Data..: "roleArn")+ Prelude.<*> (x Data..: "dataPrivacy")+ )++instance Prelude.Hashable BotImportSpecification where+ hashWithSalt _salt BotImportSpecification' {..} =+ _salt+ `Prelude.hashWithSalt` botTags+ `Prelude.hashWithSalt` idleSessionTTLInSeconds+ `Prelude.hashWithSalt` testBotAliasTags+ `Prelude.hashWithSalt` botName+ `Prelude.hashWithSalt` roleArn+ `Prelude.hashWithSalt` dataPrivacy++instance Prelude.NFData BotImportSpecification where+ rnf BotImportSpecification' {..} =+ Prelude.rnf botTags+ `Prelude.seq` Prelude.rnf idleSessionTTLInSeconds+ `Prelude.seq` Prelude.rnf testBotAliasTags+ `Prelude.seq` Prelude.rnf botName+ `Prelude.seq` Prelude.rnf roleArn+ `Prelude.seq` Prelude.rnf dataPrivacy++instance Data.ToJSON BotImportSpecification where+ toJSON BotImportSpecification' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("botTags" Data..=) Prelude.<$> botTags,+ ("idleSessionTTLInSeconds" Data..=)+ Prelude.<$> idleSessionTTLInSeconds,+ ("testBotAliasTags" Data..=)+ Prelude.<$> testBotAliasTags,+ Prelude.Just ("botName" Data..= botName),+ Prelude.Just ("roleArn" Data..= roleArn),+ Prelude.Just ("dataPrivacy" Data..= dataPrivacy)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/BotLocaleExportSpecification.hs view
@@ -0,0 +1,121 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.BotLocaleExportSpecification+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.BotLocaleExportSpecification where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Provides the bot locale parameters required for exporting a bot locale.+--+-- /See:/ 'newBotLocaleExportSpecification' smart constructor.+data BotLocaleExportSpecification = BotLocaleExportSpecification'+ { -- | The identifier of the bot to create the locale for.+ botId :: Prelude.Text,+ -- | The version of the bot to export.+ botVersion :: Prelude.Text,+ -- | The identifier of the language and locale to export. The string must+ -- match one of the locales in the bot.+ localeId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BotLocaleExportSpecification' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'botLocaleExportSpecification_botId' - The identifier of the bot to create the locale for.+--+-- 'botVersion', 'botLocaleExportSpecification_botVersion' - The version of the bot to export.+--+-- 'localeId', 'botLocaleExportSpecification_localeId' - The identifier of the language and locale to export. The string must+-- match one of the locales in the bot.+newBotLocaleExportSpecification ::+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ -- | 'localeId'+ Prelude.Text ->+ BotLocaleExportSpecification+newBotLocaleExportSpecification+ pBotId_+ pBotVersion_+ pLocaleId_ =+ BotLocaleExportSpecification'+ { botId = pBotId_,+ botVersion = pBotVersion_,+ localeId = pLocaleId_+ }++-- | The identifier of the bot to create the locale for.+botLocaleExportSpecification_botId :: Lens.Lens' BotLocaleExportSpecification Prelude.Text+botLocaleExportSpecification_botId = Lens.lens (\BotLocaleExportSpecification' {botId} -> botId) (\s@BotLocaleExportSpecification' {} a -> s {botId = a} :: BotLocaleExportSpecification)++-- | The version of the bot to export.+botLocaleExportSpecification_botVersion :: Lens.Lens' BotLocaleExportSpecification Prelude.Text+botLocaleExportSpecification_botVersion = Lens.lens (\BotLocaleExportSpecification' {botVersion} -> botVersion) (\s@BotLocaleExportSpecification' {} a -> s {botVersion = a} :: BotLocaleExportSpecification)++-- | The identifier of the language and locale to export. The string must+-- match one of the locales in the bot.+botLocaleExportSpecification_localeId :: Lens.Lens' BotLocaleExportSpecification Prelude.Text+botLocaleExportSpecification_localeId = Lens.lens (\BotLocaleExportSpecification' {localeId} -> localeId) (\s@BotLocaleExportSpecification' {} a -> s {localeId = a} :: BotLocaleExportSpecification)++instance Data.FromJSON BotLocaleExportSpecification where+ parseJSON =+ Data.withObject+ "BotLocaleExportSpecification"+ ( \x ->+ BotLocaleExportSpecification'+ Prelude.<$> (x Data..: "botId")+ Prelude.<*> (x Data..: "botVersion")+ Prelude.<*> (x Data..: "localeId")+ )++instance+ Prelude.Hashable+ BotLocaleExportSpecification+ where+ hashWithSalt _salt BotLocaleExportSpecification' {..} =+ _salt+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` localeId++instance Prelude.NFData BotLocaleExportSpecification where+ rnf BotLocaleExportSpecification' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId++instance Data.ToJSON BotLocaleExportSpecification where+ toJSON BotLocaleExportSpecification' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("botId" Data..= botId),+ Prelude.Just ("botVersion" Data..= botVersion),+ Prelude.Just ("localeId" Data..= localeId)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/BotLocaleFilter.hs view
@@ -0,0 +1,112 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.BotLocaleFilter+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.BotLocaleFilter where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.BotLocaleFilterName+import Amazonka.LexV2Models.Types.BotLocaleFilterOperator+import qualified Amazonka.Prelude as Prelude++-- | Filters responses returned by the @ListBotLocales@ operation.+--+-- /See:/ 'newBotLocaleFilter' smart constructor.+data BotLocaleFilter = BotLocaleFilter'+ { -- | The name of the field to filter the list of bots.+ name :: BotLocaleFilterName,+ -- | The value to use for filtering the list of bots.+ values :: Prelude.NonEmpty Prelude.Text,+ -- | The operator to use for the filter. Specify @EQ@ when the+ -- @ListBotLocales@ operation should return only aliases that equal the+ -- specified value. Specify @CO@ when the @ListBotLocales@ operation should+ -- return aliases that contain the specified value.+ operator :: BotLocaleFilterOperator+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BotLocaleFilter' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'name', 'botLocaleFilter_name' - The name of the field to filter the list of bots.+--+-- 'values', 'botLocaleFilter_values' - The value to use for filtering the list of bots.+--+-- 'operator', 'botLocaleFilter_operator' - The operator to use for the filter. Specify @EQ@ when the+-- @ListBotLocales@ operation should return only aliases that equal the+-- specified value. Specify @CO@ when the @ListBotLocales@ operation should+-- return aliases that contain the specified value.+newBotLocaleFilter ::+ -- | 'name'+ BotLocaleFilterName ->+ -- | 'values'+ Prelude.NonEmpty Prelude.Text ->+ -- | 'operator'+ BotLocaleFilterOperator ->+ BotLocaleFilter+newBotLocaleFilter pName_ pValues_ pOperator_ =+ BotLocaleFilter'+ { name = pName_,+ values = Lens.coerced Lens.# pValues_,+ operator = pOperator_+ }++-- | The name of the field to filter the list of bots.+botLocaleFilter_name :: Lens.Lens' BotLocaleFilter BotLocaleFilterName+botLocaleFilter_name = Lens.lens (\BotLocaleFilter' {name} -> name) (\s@BotLocaleFilter' {} a -> s {name = a} :: BotLocaleFilter)++-- | The value to use for filtering the list of bots.+botLocaleFilter_values :: Lens.Lens' BotLocaleFilter (Prelude.NonEmpty Prelude.Text)+botLocaleFilter_values = Lens.lens (\BotLocaleFilter' {values} -> values) (\s@BotLocaleFilter' {} a -> s {values = a} :: BotLocaleFilter) Prelude.. Lens.coerced++-- | The operator to use for the filter. Specify @EQ@ when the+-- @ListBotLocales@ operation should return only aliases that equal the+-- specified value. Specify @CO@ when the @ListBotLocales@ operation should+-- return aliases that contain the specified value.+botLocaleFilter_operator :: Lens.Lens' BotLocaleFilter BotLocaleFilterOperator+botLocaleFilter_operator = Lens.lens (\BotLocaleFilter' {operator} -> operator) (\s@BotLocaleFilter' {} a -> s {operator = a} :: BotLocaleFilter)++instance Prelude.Hashable BotLocaleFilter where+ hashWithSalt _salt BotLocaleFilter' {..} =+ _salt+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` values+ `Prelude.hashWithSalt` operator++instance Prelude.NFData BotLocaleFilter where+ rnf BotLocaleFilter' {..} =+ Prelude.rnf name+ `Prelude.seq` Prelude.rnf values+ `Prelude.seq` Prelude.rnf operator++instance Data.ToJSON BotLocaleFilter where+ toJSON BotLocaleFilter' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("name" Data..= name),+ Prelude.Just ("values" Data..= values),+ Prelude.Just ("operator" Data..= operator)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/BotLocaleFilterName.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.BotLocaleFilterName+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.BotLocaleFilterName+ ( BotLocaleFilterName+ ( ..,+ BotLocaleFilterName_BotLocaleName+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype BotLocaleFilterName = BotLocaleFilterName'+ { fromBotLocaleFilterName ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern BotLocaleFilterName_BotLocaleName :: BotLocaleFilterName+pattern BotLocaleFilterName_BotLocaleName = BotLocaleFilterName' "BotLocaleName"++{-# COMPLETE+ BotLocaleFilterName_BotLocaleName,+ BotLocaleFilterName'+ #-}
+ gen/Amazonka/LexV2Models/Types/BotLocaleFilterOperator.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.BotLocaleFilterOperator+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.BotLocaleFilterOperator+ ( BotLocaleFilterOperator+ ( ..,+ BotLocaleFilterOperator_CO,+ BotLocaleFilterOperator_EQ+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype BotLocaleFilterOperator = BotLocaleFilterOperator'+ { fromBotLocaleFilterOperator ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern BotLocaleFilterOperator_CO :: BotLocaleFilterOperator+pattern BotLocaleFilterOperator_CO = BotLocaleFilterOperator' "CO"++pattern BotLocaleFilterOperator_EQ :: BotLocaleFilterOperator+pattern BotLocaleFilterOperator_EQ = BotLocaleFilterOperator' "EQ"++{-# COMPLETE+ BotLocaleFilterOperator_CO,+ BotLocaleFilterOperator_EQ,+ BotLocaleFilterOperator'+ #-}
+ gen/Amazonka/LexV2Models/Types/BotLocaleHistoryEvent.hs view
@@ -0,0 +1,89 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.BotLocaleHistoryEvent+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.BotLocaleHistoryEvent where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Provides information about an event that occurred affecting the bot+-- locale.+--+-- /See:/ 'newBotLocaleHistoryEvent' smart constructor.+data BotLocaleHistoryEvent = BotLocaleHistoryEvent'+ { -- | A description of the event that occurred.+ event :: Prelude.Text,+ -- | A timestamp of the date and time that the event occurred.+ eventDate :: Data.POSIX+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BotLocaleHistoryEvent' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'event', 'botLocaleHistoryEvent_event' - A description of the event that occurred.+--+-- 'eventDate', 'botLocaleHistoryEvent_eventDate' - A timestamp of the date and time that the event occurred.+newBotLocaleHistoryEvent ::+ -- | 'event'+ Prelude.Text ->+ -- | 'eventDate'+ Prelude.UTCTime ->+ BotLocaleHistoryEvent+newBotLocaleHistoryEvent pEvent_ pEventDate_ =+ BotLocaleHistoryEvent'+ { event = pEvent_,+ eventDate = Data._Time Lens.# pEventDate_+ }++-- | A description of the event that occurred.+botLocaleHistoryEvent_event :: Lens.Lens' BotLocaleHistoryEvent Prelude.Text+botLocaleHistoryEvent_event = Lens.lens (\BotLocaleHistoryEvent' {event} -> event) (\s@BotLocaleHistoryEvent' {} a -> s {event = a} :: BotLocaleHistoryEvent)++-- | A timestamp of the date and time that the event occurred.+botLocaleHistoryEvent_eventDate :: Lens.Lens' BotLocaleHistoryEvent Prelude.UTCTime+botLocaleHistoryEvent_eventDate = Lens.lens (\BotLocaleHistoryEvent' {eventDate} -> eventDate) (\s@BotLocaleHistoryEvent' {} a -> s {eventDate = a} :: BotLocaleHistoryEvent) Prelude.. Data._Time++instance Data.FromJSON BotLocaleHistoryEvent where+ parseJSON =+ Data.withObject+ "BotLocaleHistoryEvent"+ ( \x ->+ BotLocaleHistoryEvent'+ Prelude.<$> (x Data..: "event")+ Prelude.<*> (x Data..: "eventDate")+ )++instance Prelude.Hashable BotLocaleHistoryEvent where+ hashWithSalt _salt BotLocaleHistoryEvent' {..} =+ _salt+ `Prelude.hashWithSalt` event+ `Prelude.hashWithSalt` eventDate++instance Prelude.NFData BotLocaleHistoryEvent where+ rnf BotLocaleHistoryEvent' {..} =+ Prelude.rnf event+ `Prelude.seq` Prelude.rnf eventDate
+ gen/Amazonka/LexV2Models/Types/BotLocaleImportSpecification.hs view
@@ -0,0 +1,215 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.BotLocaleImportSpecification+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.BotLocaleImportSpecification where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.VoiceSettings+import qualified Amazonka.Prelude as Prelude++-- | Provides the bot locale parameters required for importing a bot locale.+--+-- /See:/ 'newBotLocaleImportSpecification' smart constructor.+data BotLocaleImportSpecification = BotLocaleImportSpecification'+ { -- | Determines the threshold where Amazon Lex will insert the+ -- @AMAZON.FallbackIntent@, @AMAZON.KendraSearchIntent@, or both when+ -- returning alternative intents. @AMAZON.FallbackIntent@ and+ -- @AMAZON.KendraSearchIntent@ are only inserted if they are configured for+ -- the bot.+ --+ -- For example, suppose a bot is configured with the confidence threshold+ -- of 0.80 and the @AMAZON.FallbackIntent@. Amazon Lex returns three+ -- alternative intents with the following confidence scores: IntentA+ -- (0.70), IntentB (0.60), IntentC (0.50). The response from the @PostText@+ -- operation would be:+ --+ -- - @AMAZON.FallbackIntent@+ --+ -- - @IntentA@+ --+ -- - @IntentB@+ --+ -- - @IntentC@+ nluIntentConfidenceThreshold :: Prelude.Maybe Prelude.Double,+ voiceSettings :: Prelude.Maybe VoiceSettings,+ -- | The identifier of the bot to import the locale to.+ botId :: Prelude.Text,+ -- | The version of the bot to import the locale to. This can only be the+ -- @DRAFT@ version of the bot.+ botVersion :: Prelude.Text,+ -- | The identifier of the language and locale that the bot will be used in.+ -- The string must match one of the supported locales. All of the intents,+ -- slot types, and slots used in the bot must have the same locale. For+ -- more information, see+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+ localeId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BotLocaleImportSpecification' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nluIntentConfidenceThreshold', 'botLocaleImportSpecification_nluIntentConfidenceThreshold' - Determines the threshold where Amazon Lex will insert the+-- @AMAZON.FallbackIntent@, @AMAZON.KendraSearchIntent@, or both when+-- returning alternative intents. @AMAZON.FallbackIntent@ and+-- @AMAZON.KendraSearchIntent@ are only inserted if they are configured for+-- the bot.+--+-- For example, suppose a bot is configured with the confidence threshold+-- of 0.80 and the @AMAZON.FallbackIntent@. Amazon Lex returns three+-- alternative intents with the following confidence scores: IntentA+-- (0.70), IntentB (0.60), IntentC (0.50). The response from the @PostText@+-- operation would be:+--+-- - @AMAZON.FallbackIntent@+--+-- - @IntentA@+--+-- - @IntentB@+--+-- - @IntentC@+--+-- 'voiceSettings', 'botLocaleImportSpecification_voiceSettings' - Undocumented member.+--+-- 'botId', 'botLocaleImportSpecification_botId' - The identifier of the bot to import the locale to.+--+-- 'botVersion', 'botLocaleImportSpecification_botVersion' - The version of the bot to import the locale to. This can only be the+-- @DRAFT@ version of the bot.+--+-- 'localeId', 'botLocaleImportSpecification_localeId' - The identifier of the language and locale that the bot will be used in.+-- The string must match one of the supported locales. All of the intents,+-- slot types, and slots used in the bot must have the same locale. For+-- more information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+newBotLocaleImportSpecification ::+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ -- | 'localeId'+ Prelude.Text ->+ BotLocaleImportSpecification+newBotLocaleImportSpecification+ pBotId_+ pBotVersion_+ pLocaleId_ =+ BotLocaleImportSpecification'+ { nluIntentConfidenceThreshold =+ Prelude.Nothing,+ voiceSettings = Prelude.Nothing,+ botId = pBotId_,+ botVersion = pBotVersion_,+ localeId = pLocaleId_+ }++-- | Determines the threshold where Amazon Lex will insert the+-- @AMAZON.FallbackIntent@, @AMAZON.KendraSearchIntent@, or both when+-- returning alternative intents. @AMAZON.FallbackIntent@ and+-- @AMAZON.KendraSearchIntent@ are only inserted if they are configured for+-- the bot.+--+-- For example, suppose a bot is configured with the confidence threshold+-- of 0.80 and the @AMAZON.FallbackIntent@. Amazon Lex returns three+-- alternative intents with the following confidence scores: IntentA+-- (0.70), IntentB (0.60), IntentC (0.50). The response from the @PostText@+-- operation would be:+--+-- - @AMAZON.FallbackIntent@+--+-- - @IntentA@+--+-- - @IntentB@+--+-- - @IntentC@+botLocaleImportSpecification_nluIntentConfidenceThreshold :: Lens.Lens' BotLocaleImportSpecification (Prelude.Maybe Prelude.Double)+botLocaleImportSpecification_nluIntentConfidenceThreshold = Lens.lens (\BotLocaleImportSpecification' {nluIntentConfidenceThreshold} -> nluIntentConfidenceThreshold) (\s@BotLocaleImportSpecification' {} a -> s {nluIntentConfidenceThreshold = a} :: BotLocaleImportSpecification)++-- | Undocumented member.+botLocaleImportSpecification_voiceSettings :: Lens.Lens' BotLocaleImportSpecification (Prelude.Maybe VoiceSettings)+botLocaleImportSpecification_voiceSettings = Lens.lens (\BotLocaleImportSpecification' {voiceSettings} -> voiceSettings) (\s@BotLocaleImportSpecification' {} a -> s {voiceSettings = a} :: BotLocaleImportSpecification)++-- | The identifier of the bot to import the locale to.+botLocaleImportSpecification_botId :: Lens.Lens' BotLocaleImportSpecification Prelude.Text+botLocaleImportSpecification_botId = Lens.lens (\BotLocaleImportSpecification' {botId} -> botId) (\s@BotLocaleImportSpecification' {} a -> s {botId = a} :: BotLocaleImportSpecification)++-- | The version of the bot to import the locale to. This can only be the+-- @DRAFT@ version of the bot.+botLocaleImportSpecification_botVersion :: Lens.Lens' BotLocaleImportSpecification Prelude.Text+botLocaleImportSpecification_botVersion = Lens.lens (\BotLocaleImportSpecification' {botVersion} -> botVersion) (\s@BotLocaleImportSpecification' {} a -> s {botVersion = a} :: BotLocaleImportSpecification)++-- | The identifier of the language and locale that the bot will be used in.+-- The string must match one of the supported locales. All of the intents,+-- slot types, and slots used in the bot must have the same locale. For+-- more information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+botLocaleImportSpecification_localeId :: Lens.Lens' BotLocaleImportSpecification Prelude.Text+botLocaleImportSpecification_localeId = Lens.lens (\BotLocaleImportSpecification' {localeId} -> localeId) (\s@BotLocaleImportSpecification' {} a -> s {localeId = a} :: BotLocaleImportSpecification)++instance Data.FromJSON BotLocaleImportSpecification where+ parseJSON =+ Data.withObject+ "BotLocaleImportSpecification"+ ( \x ->+ BotLocaleImportSpecification'+ Prelude.<$> (x Data..:? "nluIntentConfidenceThreshold")+ Prelude.<*> (x Data..:? "voiceSettings")+ Prelude.<*> (x Data..: "botId")+ Prelude.<*> (x Data..: "botVersion")+ Prelude.<*> (x Data..: "localeId")+ )++instance+ Prelude.Hashable+ BotLocaleImportSpecification+ where+ hashWithSalt _salt BotLocaleImportSpecification' {..} =+ _salt+ `Prelude.hashWithSalt` nluIntentConfidenceThreshold+ `Prelude.hashWithSalt` voiceSettings+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` localeId++instance Prelude.NFData BotLocaleImportSpecification where+ rnf BotLocaleImportSpecification' {..} =+ Prelude.rnf nluIntentConfidenceThreshold+ `Prelude.seq` Prelude.rnf voiceSettings+ `Prelude.seq` Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId++instance Data.ToJSON BotLocaleImportSpecification where+ toJSON BotLocaleImportSpecification' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("nluIntentConfidenceThreshold" Data..=)+ Prelude.<$> nluIntentConfidenceThreshold,+ ("voiceSettings" Data..=) Prelude.<$> voiceSettings,+ Prelude.Just ("botId" Data..= botId),+ Prelude.Just ("botVersion" Data..= botVersion),+ Prelude.Just ("localeId" Data..= localeId)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/BotLocaleSortAttribute.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.BotLocaleSortAttribute+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.BotLocaleSortAttribute+ ( BotLocaleSortAttribute+ ( ..,+ BotLocaleSortAttribute_BotLocaleName+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype BotLocaleSortAttribute = BotLocaleSortAttribute'+ { fromBotLocaleSortAttribute ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern BotLocaleSortAttribute_BotLocaleName :: BotLocaleSortAttribute+pattern BotLocaleSortAttribute_BotLocaleName = BotLocaleSortAttribute' "BotLocaleName"++{-# COMPLETE+ BotLocaleSortAttribute_BotLocaleName,+ BotLocaleSortAttribute'+ #-}
+ gen/Amazonka/LexV2Models/Types/BotLocaleSortBy.hs view
@@ -0,0 +1,92 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.BotLocaleSortBy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.BotLocaleSortBy where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.BotLocaleSortAttribute+import Amazonka.LexV2Models.Types.SortOrder+import qualified Amazonka.Prelude as Prelude++-- | Specifies attributes for sorting a list of bot locales.+--+-- /See:/ 'newBotLocaleSortBy' smart constructor.+data BotLocaleSortBy = BotLocaleSortBy'+ { -- | The bot locale attribute to sort by.+ attribute :: BotLocaleSortAttribute,+ -- | Specifies whether to sort the bot locales in ascending or descending+ -- order.+ order :: SortOrder+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BotLocaleSortBy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'attribute', 'botLocaleSortBy_attribute' - The bot locale attribute to sort by.+--+-- 'order', 'botLocaleSortBy_order' - Specifies whether to sort the bot locales in ascending or descending+-- order.+newBotLocaleSortBy ::+ -- | 'attribute'+ BotLocaleSortAttribute ->+ -- | 'order'+ SortOrder ->+ BotLocaleSortBy+newBotLocaleSortBy pAttribute_ pOrder_ =+ BotLocaleSortBy'+ { attribute = pAttribute_,+ order = pOrder_+ }++-- | The bot locale attribute to sort by.+botLocaleSortBy_attribute :: Lens.Lens' BotLocaleSortBy BotLocaleSortAttribute+botLocaleSortBy_attribute = Lens.lens (\BotLocaleSortBy' {attribute} -> attribute) (\s@BotLocaleSortBy' {} a -> s {attribute = a} :: BotLocaleSortBy)++-- | Specifies whether to sort the bot locales in ascending or descending+-- order.+botLocaleSortBy_order :: Lens.Lens' BotLocaleSortBy SortOrder+botLocaleSortBy_order = Lens.lens (\BotLocaleSortBy' {order} -> order) (\s@BotLocaleSortBy' {} a -> s {order = a} :: BotLocaleSortBy)++instance Prelude.Hashable BotLocaleSortBy where+ hashWithSalt _salt BotLocaleSortBy' {..} =+ _salt+ `Prelude.hashWithSalt` attribute+ `Prelude.hashWithSalt` order++instance Prelude.NFData BotLocaleSortBy where+ rnf BotLocaleSortBy' {..} =+ Prelude.rnf attribute+ `Prelude.seq` Prelude.rnf order++instance Data.ToJSON BotLocaleSortBy where+ toJSON BotLocaleSortBy' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("attribute" Data..= attribute),+ Prelude.Just ("order" Data..= order)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/BotLocaleStatus.hs view
@@ -0,0 +1,106 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.BotLocaleStatus+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.BotLocaleStatus+ ( BotLocaleStatus+ ( ..,+ BotLocaleStatus_Building,+ BotLocaleStatus_Built,+ BotLocaleStatus_Creating,+ BotLocaleStatus_Deleting,+ BotLocaleStatus_Failed,+ BotLocaleStatus_Importing,+ BotLocaleStatus_NotBuilt,+ BotLocaleStatus_Processing,+ BotLocaleStatus_ReadyExpressTesting+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype BotLocaleStatus = BotLocaleStatus'+ { fromBotLocaleStatus ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern BotLocaleStatus_Building :: BotLocaleStatus+pattern BotLocaleStatus_Building = BotLocaleStatus' "Building"++pattern BotLocaleStatus_Built :: BotLocaleStatus+pattern BotLocaleStatus_Built = BotLocaleStatus' "Built"++pattern BotLocaleStatus_Creating :: BotLocaleStatus+pattern BotLocaleStatus_Creating = BotLocaleStatus' "Creating"++pattern BotLocaleStatus_Deleting :: BotLocaleStatus+pattern BotLocaleStatus_Deleting = BotLocaleStatus' "Deleting"++pattern BotLocaleStatus_Failed :: BotLocaleStatus+pattern BotLocaleStatus_Failed = BotLocaleStatus' "Failed"++pattern BotLocaleStatus_Importing :: BotLocaleStatus+pattern BotLocaleStatus_Importing = BotLocaleStatus' "Importing"++pattern BotLocaleStatus_NotBuilt :: BotLocaleStatus+pattern BotLocaleStatus_NotBuilt = BotLocaleStatus' "NotBuilt"++pattern BotLocaleStatus_Processing :: BotLocaleStatus+pattern BotLocaleStatus_Processing = BotLocaleStatus' "Processing"++pattern BotLocaleStatus_ReadyExpressTesting :: BotLocaleStatus+pattern BotLocaleStatus_ReadyExpressTesting = BotLocaleStatus' "ReadyExpressTesting"++{-# COMPLETE+ BotLocaleStatus_Building,+ BotLocaleStatus_Built,+ BotLocaleStatus_Creating,+ BotLocaleStatus_Deleting,+ BotLocaleStatus_Failed,+ BotLocaleStatus_Importing,+ BotLocaleStatus_NotBuilt,+ BotLocaleStatus_Processing,+ BotLocaleStatus_ReadyExpressTesting,+ BotLocaleStatus'+ #-}
+ gen/Amazonka/LexV2Models/Types/BotLocaleSummary.hs view
@@ -0,0 +1,139 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.BotLocaleSummary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.BotLocaleSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.BotLocaleStatus+import qualified Amazonka.Prelude as Prelude++-- | Summary information about bot locales returned by the+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_ListBotLocales.html ListBotLocales>+-- operation.+--+-- /See:/ 'newBotLocaleSummary' smart constructor.+data BotLocaleSummary = BotLocaleSummary'+ { -- | The current status of the bot locale. When the status is @Built@ the+ -- locale is ready for use.+ botLocaleStatus :: Prelude.Maybe BotLocaleStatus,+ -- | The description of the bot locale.+ description :: Prelude.Maybe Prelude.Text,+ -- | A timestamp of the date and time that the bot locale was last built.+ lastBuildSubmittedDateTime :: Prelude.Maybe Data.POSIX,+ -- | A timestamp of the date and time that the bot locale was last updated.+ lastUpdatedDateTime :: Prelude.Maybe Data.POSIX,+ -- | The language and locale of the bot locale.+ localeId :: Prelude.Maybe Prelude.Text,+ -- | The name of the bot locale.+ localeName :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BotLocaleSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botLocaleStatus', 'botLocaleSummary_botLocaleStatus' - The current status of the bot locale. When the status is @Built@ the+-- locale is ready for use.+--+-- 'description', 'botLocaleSummary_description' - The description of the bot locale.+--+-- 'lastBuildSubmittedDateTime', 'botLocaleSummary_lastBuildSubmittedDateTime' - A timestamp of the date and time that the bot locale was last built.+--+-- 'lastUpdatedDateTime', 'botLocaleSummary_lastUpdatedDateTime' - A timestamp of the date and time that the bot locale was last updated.+--+-- 'localeId', 'botLocaleSummary_localeId' - The language and locale of the bot locale.+--+-- 'localeName', 'botLocaleSummary_localeName' - The name of the bot locale.+newBotLocaleSummary ::+ BotLocaleSummary+newBotLocaleSummary =+ BotLocaleSummary'+ { botLocaleStatus =+ Prelude.Nothing,+ description = Prelude.Nothing,+ lastBuildSubmittedDateTime = Prelude.Nothing,+ lastUpdatedDateTime = Prelude.Nothing,+ localeId = Prelude.Nothing,+ localeName = Prelude.Nothing+ }++-- | The current status of the bot locale. When the status is @Built@ the+-- locale is ready for use.+botLocaleSummary_botLocaleStatus :: Lens.Lens' BotLocaleSummary (Prelude.Maybe BotLocaleStatus)+botLocaleSummary_botLocaleStatus = Lens.lens (\BotLocaleSummary' {botLocaleStatus} -> botLocaleStatus) (\s@BotLocaleSummary' {} a -> s {botLocaleStatus = a} :: BotLocaleSummary)++-- | The description of the bot locale.+botLocaleSummary_description :: Lens.Lens' BotLocaleSummary (Prelude.Maybe Prelude.Text)+botLocaleSummary_description = Lens.lens (\BotLocaleSummary' {description} -> description) (\s@BotLocaleSummary' {} a -> s {description = a} :: BotLocaleSummary)++-- | A timestamp of the date and time that the bot locale was last built.+botLocaleSummary_lastBuildSubmittedDateTime :: Lens.Lens' BotLocaleSummary (Prelude.Maybe Prelude.UTCTime)+botLocaleSummary_lastBuildSubmittedDateTime = Lens.lens (\BotLocaleSummary' {lastBuildSubmittedDateTime} -> lastBuildSubmittedDateTime) (\s@BotLocaleSummary' {} a -> s {lastBuildSubmittedDateTime = a} :: BotLocaleSummary) Prelude.. Lens.mapping Data._Time++-- | A timestamp of the date and time that the bot locale was last updated.+botLocaleSummary_lastUpdatedDateTime :: Lens.Lens' BotLocaleSummary (Prelude.Maybe Prelude.UTCTime)+botLocaleSummary_lastUpdatedDateTime = Lens.lens (\BotLocaleSummary' {lastUpdatedDateTime} -> lastUpdatedDateTime) (\s@BotLocaleSummary' {} a -> s {lastUpdatedDateTime = a} :: BotLocaleSummary) Prelude.. Lens.mapping Data._Time++-- | The language and locale of the bot locale.+botLocaleSummary_localeId :: Lens.Lens' BotLocaleSummary (Prelude.Maybe Prelude.Text)+botLocaleSummary_localeId = Lens.lens (\BotLocaleSummary' {localeId} -> localeId) (\s@BotLocaleSummary' {} a -> s {localeId = a} :: BotLocaleSummary)++-- | The name of the bot locale.+botLocaleSummary_localeName :: Lens.Lens' BotLocaleSummary (Prelude.Maybe Prelude.Text)+botLocaleSummary_localeName = Lens.lens (\BotLocaleSummary' {localeName} -> localeName) (\s@BotLocaleSummary' {} a -> s {localeName = a} :: BotLocaleSummary)++instance Data.FromJSON BotLocaleSummary where+ parseJSON =+ Data.withObject+ "BotLocaleSummary"+ ( \x ->+ BotLocaleSummary'+ Prelude.<$> (x Data..:? "botLocaleStatus")+ Prelude.<*> (x Data..:? "description")+ Prelude.<*> (x Data..:? "lastBuildSubmittedDateTime")+ Prelude.<*> (x Data..:? "lastUpdatedDateTime")+ Prelude.<*> (x Data..:? "localeId")+ Prelude.<*> (x Data..:? "localeName")+ )++instance Prelude.Hashable BotLocaleSummary where+ hashWithSalt _salt BotLocaleSummary' {..} =+ _salt+ `Prelude.hashWithSalt` botLocaleStatus+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` lastBuildSubmittedDateTime+ `Prelude.hashWithSalt` lastUpdatedDateTime+ `Prelude.hashWithSalt` localeId+ `Prelude.hashWithSalt` localeName++instance Prelude.NFData BotLocaleSummary where+ rnf BotLocaleSummary' {..} =+ Prelude.rnf botLocaleStatus+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf lastBuildSubmittedDateTime+ `Prelude.seq` Prelude.rnf lastUpdatedDateTime+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf localeName
+ gen/Amazonka/LexV2Models/Types/BotRecommendationResultStatistics.hs view
@@ -0,0 +1,104 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.BotRecommendationResultStatistics+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.BotRecommendationResultStatistics where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.IntentStatistics+import Amazonka.LexV2Models.Types.SlotTypeStatistics+import qualified Amazonka.Prelude as Prelude++-- | A statistical summary of the bot recommendation results.+--+-- /See:/ 'newBotRecommendationResultStatistics' smart constructor.+data BotRecommendationResultStatistics = BotRecommendationResultStatistics'+ { -- | Statistical information about about the intents associated with the bot+ -- recommendation results.+ intents :: Prelude.Maybe IntentStatistics,+ -- | Statistical information about the slot types associated with the bot+ -- recommendation results.+ slotTypes :: Prelude.Maybe SlotTypeStatistics+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BotRecommendationResultStatistics' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'intents', 'botRecommendationResultStatistics_intents' - Statistical information about about the intents associated with the bot+-- recommendation results.+--+-- 'slotTypes', 'botRecommendationResultStatistics_slotTypes' - Statistical information about the slot types associated with the bot+-- recommendation results.+newBotRecommendationResultStatistics ::+ BotRecommendationResultStatistics+newBotRecommendationResultStatistics =+ BotRecommendationResultStatistics'+ { intents =+ Prelude.Nothing,+ slotTypes = Prelude.Nothing+ }++-- | Statistical information about about the intents associated with the bot+-- recommendation results.+botRecommendationResultStatistics_intents :: Lens.Lens' BotRecommendationResultStatistics (Prelude.Maybe IntentStatistics)+botRecommendationResultStatistics_intents = Lens.lens (\BotRecommendationResultStatistics' {intents} -> intents) (\s@BotRecommendationResultStatistics' {} a -> s {intents = a} :: BotRecommendationResultStatistics)++-- | Statistical information about the slot types associated with the bot+-- recommendation results.+botRecommendationResultStatistics_slotTypes :: Lens.Lens' BotRecommendationResultStatistics (Prelude.Maybe SlotTypeStatistics)+botRecommendationResultStatistics_slotTypes = Lens.lens (\BotRecommendationResultStatistics' {slotTypes} -> slotTypes) (\s@BotRecommendationResultStatistics' {} a -> s {slotTypes = a} :: BotRecommendationResultStatistics)++instance+ Data.FromJSON+ BotRecommendationResultStatistics+ where+ parseJSON =+ Data.withObject+ "BotRecommendationResultStatistics"+ ( \x ->+ BotRecommendationResultStatistics'+ Prelude.<$> (x Data..:? "intents")+ Prelude.<*> (x Data..:? "slotTypes")+ )++instance+ Prelude.Hashable+ BotRecommendationResultStatistics+ where+ hashWithSalt+ _salt+ BotRecommendationResultStatistics' {..} =+ _salt+ `Prelude.hashWithSalt` intents+ `Prelude.hashWithSalt` slotTypes++instance+ Prelude.NFData+ BotRecommendationResultStatistics+ where+ rnf BotRecommendationResultStatistics' {..} =+ Prelude.rnf intents+ `Prelude.seq` Prelude.rnf slotTypes
+ gen/Amazonka/LexV2Models/Types/BotRecommendationResults.hs view
@@ -0,0 +1,100 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.BotRecommendationResults+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.BotRecommendationResults where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.BotRecommendationResultStatistics+import qualified Amazonka.Prelude as Prelude++-- | The object representing the URL of the bot definition, the URL of the+-- associated transcript, and a statistical summary of the bot+-- recommendation results.+--+-- /See:/ 'newBotRecommendationResults' smart constructor.+data BotRecommendationResults = BotRecommendationResults'+ { -- | The presigned url link of the associated transcript.+ associatedTranscriptsUrl :: Prelude.Maybe Prelude.Text,+ -- | The presigned URL link of the recommended bot definition.+ botLocaleExportUrl :: Prelude.Maybe Prelude.Text,+ -- | The statistical summary of the bot recommendation results.+ statistics :: Prelude.Maybe BotRecommendationResultStatistics+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BotRecommendationResults' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'associatedTranscriptsUrl', 'botRecommendationResults_associatedTranscriptsUrl' - The presigned url link of the associated transcript.+--+-- 'botLocaleExportUrl', 'botRecommendationResults_botLocaleExportUrl' - The presigned URL link of the recommended bot definition.+--+-- 'statistics', 'botRecommendationResults_statistics' - The statistical summary of the bot recommendation results.+newBotRecommendationResults ::+ BotRecommendationResults+newBotRecommendationResults =+ BotRecommendationResults'+ { associatedTranscriptsUrl =+ Prelude.Nothing,+ botLocaleExportUrl = Prelude.Nothing,+ statistics = Prelude.Nothing+ }++-- | The presigned url link of the associated transcript.+botRecommendationResults_associatedTranscriptsUrl :: Lens.Lens' BotRecommendationResults (Prelude.Maybe Prelude.Text)+botRecommendationResults_associatedTranscriptsUrl = Lens.lens (\BotRecommendationResults' {associatedTranscriptsUrl} -> associatedTranscriptsUrl) (\s@BotRecommendationResults' {} a -> s {associatedTranscriptsUrl = a} :: BotRecommendationResults)++-- | The presigned URL link of the recommended bot definition.+botRecommendationResults_botLocaleExportUrl :: Lens.Lens' BotRecommendationResults (Prelude.Maybe Prelude.Text)+botRecommendationResults_botLocaleExportUrl = Lens.lens (\BotRecommendationResults' {botLocaleExportUrl} -> botLocaleExportUrl) (\s@BotRecommendationResults' {} a -> s {botLocaleExportUrl = a} :: BotRecommendationResults)++-- | The statistical summary of the bot recommendation results.+botRecommendationResults_statistics :: Lens.Lens' BotRecommendationResults (Prelude.Maybe BotRecommendationResultStatistics)+botRecommendationResults_statistics = Lens.lens (\BotRecommendationResults' {statistics} -> statistics) (\s@BotRecommendationResults' {} a -> s {statistics = a} :: BotRecommendationResults)++instance Data.FromJSON BotRecommendationResults where+ parseJSON =+ Data.withObject+ "BotRecommendationResults"+ ( \x ->+ BotRecommendationResults'+ Prelude.<$> (x Data..:? "associatedTranscriptsUrl")+ Prelude.<*> (x Data..:? "botLocaleExportUrl")+ Prelude.<*> (x Data..:? "statistics")+ )++instance Prelude.Hashable BotRecommendationResults where+ hashWithSalt _salt BotRecommendationResults' {..} =+ _salt+ `Prelude.hashWithSalt` associatedTranscriptsUrl+ `Prelude.hashWithSalt` botLocaleExportUrl+ `Prelude.hashWithSalt` statistics++instance Prelude.NFData BotRecommendationResults where+ rnf BotRecommendationResults' {..} =+ Prelude.rnf associatedTranscriptsUrl+ `Prelude.seq` Prelude.rnf botLocaleExportUrl+ `Prelude.seq` Prelude.rnf statistics
+ gen/Amazonka/LexV2Models/Types/BotRecommendationStatus.hs view
@@ -0,0 +1,106 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.BotRecommendationStatus+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.BotRecommendationStatus+ ( BotRecommendationStatus+ ( ..,+ BotRecommendationStatus_Available,+ BotRecommendationStatus_Deleted,+ BotRecommendationStatus_Deleting,+ BotRecommendationStatus_Downloading,+ BotRecommendationStatus_Failed,+ BotRecommendationStatus_Processing,+ BotRecommendationStatus_Stopped,+ BotRecommendationStatus_Stopping,+ BotRecommendationStatus_Updating+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype BotRecommendationStatus = BotRecommendationStatus'+ { fromBotRecommendationStatus ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern BotRecommendationStatus_Available :: BotRecommendationStatus+pattern BotRecommendationStatus_Available = BotRecommendationStatus' "Available"++pattern BotRecommendationStatus_Deleted :: BotRecommendationStatus+pattern BotRecommendationStatus_Deleted = BotRecommendationStatus' "Deleted"++pattern BotRecommendationStatus_Deleting :: BotRecommendationStatus+pattern BotRecommendationStatus_Deleting = BotRecommendationStatus' "Deleting"++pattern BotRecommendationStatus_Downloading :: BotRecommendationStatus+pattern BotRecommendationStatus_Downloading = BotRecommendationStatus' "Downloading"++pattern BotRecommendationStatus_Failed :: BotRecommendationStatus+pattern BotRecommendationStatus_Failed = BotRecommendationStatus' "Failed"++pattern BotRecommendationStatus_Processing :: BotRecommendationStatus+pattern BotRecommendationStatus_Processing = BotRecommendationStatus' "Processing"++pattern BotRecommendationStatus_Stopped :: BotRecommendationStatus+pattern BotRecommendationStatus_Stopped = BotRecommendationStatus' "Stopped"++pattern BotRecommendationStatus_Stopping :: BotRecommendationStatus+pattern BotRecommendationStatus_Stopping = BotRecommendationStatus' "Stopping"++pattern BotRecommendationStatus_Updating :: BotRecommendationStatus+pattern BotRecommendationStatus_Updating = BotRecommendationStatus' "Updating"++{-# COMPLETE+ BotRecommendationStatus_Available,+ BotRecommendationStatus_Deleted,+ BotRecommendationStatus_Deleting,+ BotRecommendationStatus_Downloading,+ BotRecommendationStatus_Failed,+ BotRecommendationStatus_Processing,+ BotRecommendationStatus_Stopped,+ BotRecommendationStatus_Stopping,+ BotRecommendationStatus_Updating,+ BotRecommendationStatus'+ #-}
+ gen/Amazonka/LexV2Models/Types/BotRecommendationSummary.hs view
@@ -0,0 +1,132 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.BotRecommendationSummary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.BotRecommendationSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.BotRecommendationStatus+import qualified Amazonka.Prelude as Prelude++-- | A summary of the bot recommendation.+--+-- /See:/ 'newBotRecommendationSummary' smart constructor.+data BotRecommendationSummary = BotRecommendationSummary'+ { -- | A timestamp of the date and time that the bot recommendation was+ -- created.+ creationDateTime :: Prelude.Maybe Data.POSIX,+ -- | A timestamp of the date and time that the bot recommendation was last+ -- updated.+ lastUpdatedDateTime :: Prelude.Maybe Data.POSIX,+ -- | The status of the bot recommendation.+ --+ -- If the status is Failed, then the reasons for the failure are listed in+ -- the failureReasons field.+ botRecommendationStatus :: BotRecommendationStatus,+ -- | The unique identifier of the bot recommendation to be updated.+ botRecommendationId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BotRecommendationSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'creationDateTime', 'botRecommendationSummary_creationDateTime' - A timestamp of the date and time that the bot recommendation was+-- created.+--+-- 'lastUpdatedDateTime', 'botRecommendationSummary_lastUpdatedDateTime' - A timestamp of the date and time that the bot recommendation was last+-- updated.+--+-- 'botRecommendationStatus', 'botRecommendationSummary_botRecommendationStatus' - The status of the bot recommendation.+--+-- If the status is Failed, then the reasons for the failure are listed in+-- the failureReasons field.+--+-- 'botRecommendationId', 'botRecommendationSummary_botRecommendationId' - The unique identifier of the bot recommendation to be updated.+newBotRecommendationSummary ::+ -- | 'botRecommendationStatus'+ BotRecommendationStatus ->+ -- | 'botRecommendationId'+ Prelude.Text ->+ BotRecommendationSummary+newBotRecommendationSummary+ pBotRecommendationStatus_+ pBotRecommendationId_ =+ BotRecommendationSummary'+ { creationDateTime =+ Prelude.Nothing,+ lastUpdatedDateTime = Prelude.Nothing,+ botRecommendationStatus =+ pBotRecommendationStatus_,+ botRecommendationId = pBotRecommendationId_+ }++-- | A timestamp of the date and time that the bot recommendation was+-- created.+botRecommendationSummary_creationDateTime :: Lens.Lens' BotRecommendationSummary (Prelude.Maybe Prelude.UTCTime)+botRecommendationSummary_creationDateTime = Lens.lens (\BotRecommendationSummary' {creationDateTime} -> creationDateTime) (\s@BotRecommendationSummary' {} a -> s {creationDateTime = a} :: BotRecommendationSummary) Prelude.. Lens.mapping Data._Time++-- | A timestamp of the date and time that the bot recommendation was last+-- updated.+botRecommendationSummary_lastUpdatedDateTime :: Lens.Lens' BotRecommendationSummary (Prelude.Maybe Prelude.UTCTime)+botRecommendationSummary_lastUpdatedDateTime = Lens.lens (\BotRecommendationSummary' {lastUpdatedDateTime} -> lastUpdatedDateTime) (\s@BotRecommendationSummary' {} a -> s {lastUpdatedDateTime = a} :: BotRecommendationSummary) Prelude.. Lens.mapping Data._Time++-- | The status of the bot recommendation.+--+-- If the status is Failed, then the reasons for the failure are listed in+-- the failureReasons field.+botRecommendationSummary_botRecommendationStatus :: Lens.Lens' BotRecommendationSummary BotRecommendationStatus+botRecommendationSummary_botRecommendationStatus = Lens.lens (\BotRecommendationSummary' {botRecommendationStatus} -> botRecommendationStatus) (\s@BotRecommendationSummary' {} a -> s {botRecommendationStatus = a} :: BotRecommendationSummary)++-- | The unique identifier of the bot recommendation to be updated.+botRecommendationSummary_botRecommendationId :: Lens.Lens' BotRecommendationSummary Prelude.Text+botRecommendationSummary_botRecommendationId = Lens.lens (\BotRecommendationSummary' {botRecommendationId} -> botRecommendationId) (\s@BotRecommendationSummary' {} a -> s {botRecommendationId = a} :: BotRecommendationSummary)++instance Data.FromJSON BotRecommendationSummary where+ parseJSON =+ Data.withObject+ "BotRecommendationSummary"+ ( \x ->+ BotRecommendationSummary'+ Prelude.<$> (x Data..:? "creationDateTime")+ Prelude.<*> (x Data..:? "lastUpdatedDateTime")+ Prelude.<*> (x Data..: "botRecommendationStatus")+ Prelude.<*> (x Data..: "botRecommendationId")+ )++instance Prelude.Hashable BotRecommendationSummary where+ hashWithSalt _salt BotRecommendationSummary' {..} =+ _salt+ `Prelude.hashWithSalt` creationDateTime+ `Prelude.hashWithSalt` lastUpdatedDateTime+ `Prelude.hashWithSalt` botRecommendationStatus+ `Prelude.hashWithSalt` botRecommendationId++instance Prelude.NFData BotRecommendationSummary where+ rnf BotRecommendationSummary' {..} =+ Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf lastUpdatedDateTime+ `Prelude.seq` Prelude.rnf botRecommendationStatus+ `Prelude.seq` Prelude.rnf botRecommendationId
+ gen/Amazonka/LexV2Models/Types/BotSortAttribute.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.BotSortAttribute+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.BotSortAttribute+ ( BotSortAttribute+ ( ..,+ BotSortAttribute_BotName+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype BotSortAttribute = BotSortAttribute'+ { fromBotSortAttribute ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern BotSortAttribute_BotName :: BotSortAttribute+pattern BotSortAttribute_BotName = BotSortAttribute' "BotName"++{-# COMPLETE+ BotSortAttribute_BotName,+ BotSortAttribute'+ #-}
+ gen/Amazonka/LexV2Models/Types/BotSortBy.hs view
@@ -0,0 +1,89 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.BotSortBy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.BotSortBy where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.BotSortAttribute+import Amazonka.LexV2Models.Types.SortOrder+import qualified Amazonka.Prelude as Prelude++-- | Specifies attributes for sorting a list of bots.+--+-- /See:/ 'newBotSortBy' smart constructor.+data BotSortBy = BotSortBy'+ { -- | The attribute to use to sort the list of bots.+ attribute :: BotSortAttribute,+ -- | The order to sort the list. You can choose ascending or descending.+ order :: SortOrder+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BotSortBy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'attribute', 'botSortBy_attribute' - The attribute to use to sort the list of bots.+--+-- 'order', 'botSortBy_order' - The order to sort the list. You can choose ascending or descending.+newBotSortBy ::+ -- | 'attribute'+ BotSortAttribute ->+ -- | 'order'+ SortOrder ->+ BotSortBy+newBotSortBy pAttribute_ pOrder_ =+ BotSortBy'+ { attribute = pAttribute_,+ order = pOrder_+ }++-- | The attribute to use to sort the list of bots.+botSortBy_attribute :: Lens.Lens' BotSortBy BotSortAttribute+botSortBy_attribute = Lens.lens (\BotSortBy' {attribute} -> attribute) (\s@BotSortBy' {} a -> s {attribute = a} :: BotSortBy)++-- | The order to sort the list. You can choose ascending or descending.+botSortBy_order :: Lens.Lens' BotSortBy SortOrder+botSortBy_order = Lens.lens (\BotSortBy' {order} -> order) (\s@BotSortBy' {} a -> s {order = a} :: BotSortBy)++instance Prelude.Hashable BotSortBy where+ hashWithSalt _salt BotSortBy' {..} =+ _salt+ `Prelude.hashWithSalt` attribute+ `Prelude.hashWithSalt` order++instance Prelude.NFData BotSortBy where+ rnf BotSortBy' {..} =+ Prelude.rnf attribute+ `Prelude.seq` Prelude.rnf order++instance Data.ToJSON BotSortBy where+ toJSON BotSortBy' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("attribute" Data..= attribute),+ Prelude.Just ("order" Data..= order)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/BotStatus.hs view
@@ -0,0 +1,96 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.BotStatus+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.BotStatus+ ( BotStatus+ ( ..,+ BotStatus_Available,+ BotStatus_Creating,+ BotStatus_Deleting,+ BotStatus_Failed,+ BotStatus_Importing,+ BotStatus_Inactive,+ BotStatus_Versioning+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype BotStatus = BotStatus'+ { fromBotStatus ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern BotStatus_Available :: BotStatus+pattern BotStatus_Available = BotStatus' "Available"++pattern BotStatus_Creating :: BotStatus+pattern BotStatus_Creating = BotStatus' "Creating"++pattern BotStatus_Deleting :: BotStatus+pattern BotStatus_Deleting = BotStatus' "Deleting"++pattern BotStatus_Failed :: BotStatus+pattern BotStatus_Failed = BotStatus' "Failed"++pattern BotStatus_Importing :: BotStatus+pattern BotStatus_Importing = BotStatus' "Importing"++pattern BotStatus_Inactive :: BotStatus+pattern BotStatus_Inactive = BotStatus' "Inactive"++pattern BotStatus_Versioning :: BotStatus+pattern BotStatus_Versioning = BotStatus' "Versioning"++{-# COMPLETE+ BotStatus_Available,+ BotStatus_Creating,+ BotStatus_Deleting,+ BotStatus_Failed,+ BotStatus_Importing,+ BotStatus_Inactive,+ BotStatus_Versioning,+ BotStatus'+ #-}
+ gen/Amazonka/LexV2Models/Types/BotSummary.hs view
@@ -0,0 +1,147 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.BotSummary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.BotSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.BotStatus+import qualified Amazonka.Prelude as Prelude++-- | Summary information about a bot returned by the+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_ListBots.html ListBots>+-- operation.+--+-- /See:/ 'newBotSummary' smart constructor.+data BotSummary = BotSummary'+ { -- | The unique identifier assigned to the bot. Use this ID to get detailed+ -- information about the bot with the+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/API_DescribeBot.html DescribeBot>+ -- operation.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The name of the bot.+ botName :: Prelude.Maybe Prelude.Text,+ -- | The current status of the bot. When the status is @Available@ the bot is+ -- ready for use.+ botStatus :: Prelude.Maybe BotStatus,+ -- | The description of the bot.+ description :: Prelude.Maybe Prelude.Text,+ -- | The date and time that the bot was last updated.+ lastUpdatedDateTime :: Prelude.Maybe Data.POSIX,+ -- | The latest numerical version in use for the bot.+ latestBotVersion :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BotSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'botSummary_botId' - The unique identifier assigned to the bot. Use this ID to get detailed+-- information about the bot with the+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_DescribeBot.html DescribeBot>+-- operation.+--+-- 'botName', 'botSummary_botName' - The name of the bot.+--+-- 'botStatus', 'botSummary_botStatus' - The current status of the bot. When the status is @Available@ the bot is+-- ready for use.+--+-- 'description', 'botSummary_description' - The description of the bot.+--+-- 'lastUpdatedDateTime', 'botSummary_lastUpdatedDateTime' - The date and time that the bot was last updated.+--+-- 'latestBotVersion', 'botSummary_latestBotVersion' - The latest numerical version in use for the bot.+newBotSummary ::+ BotSummary+newBotSummary =+ BotSummary'+ { botId = Prelude.Nothing,+ botName = Prelude.Nothing,+ botStatus = Prelude.Nothing,+ description = Prelude.Nothing,+ lastUpdatedDateTime = Prelude.Nothing,+ latestBotVersion = Prelude.Nothing+ }++-- | The unique identifier assigned to the bot. Use this ID to get detailed+-- information about the bot with the+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_DescribeBot.html DescribeBot>+-- operation.+botSummary_botId :: Lens.Lens' BotSummary (Prelude.Maybe Prelude.Text)+botSummary_botId = Lens.lens (\BotSummary' {botId} -> botId) (\s@BotSummary' {} a -> s {botId = a} :: BotSummary)++-- | The name of the bot.+botSummary_botName :: Lens.Lens' BotSummary (Prelude.Maybe Prelude.Text)+botSummary_botName = Lens.lens (\BotSummary' {botName} -> botName) (\s@BotSummary' {} a -> s {botName = a} :: BotSummary)++-- | The current status of the bot. When the status is @Available@ the bot is+-- ready for use.+botSummary_botStatus :: Lens.Lens' BotSummary (Prelude.Maybe BotStatus)+botSummary_botStatus = Lens.lens (\BotSummary' {botStatus} -> botStatus) (\s@BotSummary' {} a -> s {botStatus = a} :: BotSummary)++-- | The description of the bot.+botSummary_description :: Lens.Lens' BotSummary (Prelude.Maybe Prelude.Text)+botSummary_description = Lens.lens (\BotSummary' {description} -> description) (\s@BotSummary' {} a -> s {description = a} :: BotSummary)++-- | The date and time that the bot was last updated.+botSummary_lastUpdatedDateTime :: Lens.Lens' BotSummary (Prelude.Maybe Prelude.UTCTime)+botSummary_lastUpdatedDateTime = Lens.lens (\BotSummary' {lastUpdatedDateTime} -> lastUpdatedDateTime) (\s@BotSummary' {} a -> s {lastUpdatedDateTime = a} :: BotSummary) Prelude.. Lens.mapping Data._Time++-- | The latest numerical version in use for the bot.+botSummary_latestBotVersion :: Lens.Lens' BotSummary (Prelude.Maybe Prelude.Text)+botSummary_latestBotVersion = Lens.lens (\BotSummary' {latestBotVersion} -> latestBotVersion) (\s@BotSummary' {} a -> s {latestBotVersion = a} :: BotSummary)++instance Data.FromJSON BotSummary where+ parseJSON =+ Data.withObject+ "BotSummary"+ ( \x ->+ BotSummary'+ Prelude.<$> (x Data..:? "botId")+ Prelude.<*> (x Data..:? "botName")+ Prelude.<*> (x Data..:? "botStatus")+ Prelude.<*> (x Data..:? "description")+ Prelude.<*> (x Data..:? "lastUpdatedDateTime")+ Prelude.<*> (x Data..:? "latestBotVersion")+ )++instance Prelude.Hashable BotSummary where+ hashWithSalt _salt BotSummary' {..} =+ _salt+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botName+ `Prelude.hashWithSalt` botStatus+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` lastUpdatedDateTime+ `Prelude.hashWithSalt` latestBotVersion++instance Prelude.NFData BotSummary where+ rnf BotSummary' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botName+ `Prelude.seq` Prelude.rnf botStatus+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf lastUpdatedDateTime+ `Prelude.seq` Prelude.rnf latestBotVersion
+ gen/Amazonka/LexV2Models/Types/BotVersionLocaleDetails.hs view
@@ -0,0 +1,83 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.BotVersionLocaleDetails+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.BotVersionLocaleDetails where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The version of a bot used for a bot locale.+--+-- /See:/ 'newBotVersionLocaleDetails' smart constructor.+data BotVersionLocaleDetails = BotVersionLocaleDetails'+ { -- | The version of a bot used for a bot locale.+ sourceBotVersion :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BotVersionLocaleDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'sourceBotVersion', 'botVersionLocaleDetails_sourceBotVersion' - The version of a bot used for a bot locale.+newBotVersionLocaleDetails ::+ -- | 'sourceBotVersion'+ Prelude.Text ->+ BotVersionLocaleDetails+newBotVersionLocaleDetails pSourceBotVersion_ =+ BotVersionLocaleDetails'+ { sourceBotVersion =+ pSourceBotVersion_+ }++-- | The version of a bot used for a bot locale.+botVersionLocaleDetails_sourceBotVersion :: Lens.Lens' BotVersionLocaleDetails Prelude.Text+botVersionLocaleDetails_sourceBotVersion = Lens.lens (\BotVersionLocaleDetails' {sourceBotVersion} -> sourceBotVersion) (\s@BotVersionLocaleDetails' {} a -> s {sourceBotVersion = a} :: BotVersionLocaleDetails)++instance Data.FromJSON BotVersionLocaleDetails where+ parseJSON =+ Data.withObject+ "BotVersionLocaleDetails"+ ( \x ->+ BotVersionLocaleDetails'+ Prelude.<$> (x Data..: "sourceBotVersion")+ )++instance Prelude.Hashable BotVersionLocaleDetails where+ hashWithSalt _salt BotVersionLocaleDetails' {..} =+ _salt `Prelude.hashWithSalt` sourceBotVersion++instance Prelude.NFData BotVersionLocaleDetails where+ rnf BotVersionLocaleDetails' {..} =+ Prelude.rnf sourceBotVersion++instance Data.ToJSON BotVersionLocaleDetails where+ toJSON BotVersionLocaleDetails' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("sourceBotVersion" Data..= sourceBotVersion)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/BotVersionSortAttribute.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.BotVersionSortAttribute+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.BotVersionSortAttribute+ ( BotVersionSortAttribute+ ( ..,+ BotVersionSortAttribute_BotVersion+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype BotVersionSortAttribute = BotVersionSortAttribute'+ { fromBotVersionSortAttribute ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern BotVersionSortAttribute_BotVersion :: BotVersionSortAttribute+pattern BotVersionSortAttribute_BotVersion = BotVersionSortAttribute' "BotVersion"++{-# COMPLETE+ BotVersionSortAttribute_BotVersion,+ BotVersionSortAttribute'+ #-}
+ gen/Amazonka/LexV2Models/Types/BotVersionSortBy.hs view
@@ -0,0 +1,92 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.BotVersionSortBy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.BotVersionSortBy where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.BotVersionSortAttribute+import Amazonka.LexV2Models.Types.SortOrder+import qualified Amazonka.Prelude as Prelude++-- | Specifies attributes for sorting a list of bot versions.+--+-- /See:/ 'newBotVersionSortBy' smart constructor.+data BotVersionSortBy = BotVersionSortBy'+ { -- | The attribute to use to sort the list of versions.+ attribute :: BotVersionSortAttribute,+ -- | The order to sort the list. You can specify ascending or descending+ -- order.+ order :: SortOrder+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BotVersionSortBy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'attribute', 'botVersionSortBy_attribute' - The attribute to use to sort the list of versions.+--+-- 'order', 'botVersionSortBy_order' - The order to sort the list. You can specify ascending or descending+-- order.+newBotVersionSortBy ::+ -- | 'attribute'+ BotVersionSortAttribute ->+ -- | 'order'+ SortOrder ->+ BotVersionSortBy+newBotVersionSortBy pAttribute_ pOrder_ =+ BotVersionSortBy'+ { attribute = pAttribute_,+ order = pOrder_+ }++-- | The attribute to use to sort the list of versions.+botVersionSortBy_attribute :: Lens.Lens' BotVersionSortBy BotVersionSortAttribute+botVersionSortBy_attribute = Lens.lens (\BotVersionSortBy' {attribute} -> attribute) (\s@BotVersionSortBy' {} a -> s {attribute = a} :: BotVersionSortBy)++-- | The order to sort the list. You can specify ascending or descending+-- order.+botVersionSortBy_order :: Lens.Lens' BotVersionSortBy SortOrder+botVersionSortBy_order = Lens.lens (\BotVersionSortBy' {order} -> order) (\s@BotVersionSortBy' {} a -> s {order = a} :: BotVersionSortBy)++instance Prelude.Hashable BotVersionSortBy where+ hashWithSalt _salt BotVersionSortBy' {..} =+ _salt+ `Prelude.hashWithSalt` attribute+ `Prelude.hashWithSalt` order++instance Prelude.NFData BotVersionSortBy where+ rnf BotVersionSortBy' {..} =+ Prelude.rnf attribute+ `Prelude.seq` Prelude.rnf order++instance Data.ToJSON BotVersionSortBy where+ toJSON BotVersionSortBy' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("attribute" Data..= attribute),+ Prelude.Just ("order" Data..= order)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/BotVersionSummary.hs view
@@ -0,0 +1,129 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.BotVersionSummary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.BotVersionSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.BotStatus+import qualified Amazonka.Prelude as Prelude++-- | Summary information about a bot version returned by the+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_ListBotVersions.html ListBotVersions>+-- operation.+--+-- /See:/ 'newBotVersionSummary' smart constructor.+data BotVersionSummary = BotVersionSummary'+ { -- | The name of the bot associated with the version.+ botName :: Prelude.Maybe Prelude.Text,+ -- | The status of the bot. When the status is available, the version of the+ -- bot is ready for use.+ botStatus :: Prelude.Maybe BotStatus,+ -- | The numeric version of the bot, or @DRAFT@ to indicate that this is the+ -- version of the bot that can be updated..+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | A timestamp of the date and time that the version was created.+ creationDateTime :: Prelude.Maybe Data.POSIX,+ -- | The description of the version.+ description :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BotVersionSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botName', 'botVersionSummary_botName' - The name of the bot associated with the version.+--+-- 'botStatus', 'botVersionSummary_botStatus' - The status of the bot. When the status is available, the version of the+-- bot is ready for use.+--+-- 'botVersion', 'botVersionSummary_botVersion' - The numeric version of the bot, or @DRAFT@ to indicate that this is the+-- version of the bot that can be updated..+--+-- 'creationDateTime', 'botVersionSummary_creationDateTime' - A timestamp of the date and time that the version was created.+--+-- 'description', 'botVersionSummary_description' - The description of the version.+newBotVersionSummary ::+ BotVersionSummary+newBotVersionSummary =+ BotVersionSummary'+ { botName = Prelude.Nothing,+ botStatus = Prelude.Nothing,+ botVersion = Prelude.Nothing,+ creationDateTime = Prelude.Nothing,+ description = Prelude.Nothing+ }++-- | The name of the bot associated with the version.+botVersionSummary_botName :: Lens.Lens' BotVersionSummary (Prelude.Maybe Prelude.Text)+botVersionSummary_botName = Lens.lens (\BotVersionSummary' {botName} -> botName) (\s@BotVersionSummary' {} a -> s {botName = a} :: BotVersionSummary)++-- | The status of the bot. When the status is available, the version of the+-- bot is ready for use.+botVersionSummary_botStatus :: Lens.Lens' BotVersionSummary (Prelude.Maybe BotStatus)+botVersionSummary_botStatus = Lens.lens (\BotVersionSummary' {botStatus} -> botStatus) (\s@BotVersionSummary' {} a -> s {botStatus = a} :: BotVersionSummary)++-- | The numeric version of the bot, or @DRAFT@ to indicate that this is the+-- version of the bot that can be updated..+botVersionSummary_botVersion :: Lens.Lens' BotVersionSummary (Prelude.Maybe Prelude.Text)+botVersionSummary_botVersion = Lens.lens (\BotVersionSummary' {botVersion} -> botVersion) (\s@BotVersionSummary' {} a -> s {botVersion = a} :: BotVersionSummary)++-- | A timestamp of the date and time that the version was created.+botVersionSummary_creationDateTime :: Lens.Lens' BotVersionSummary (Prelude.Maybe Prelude.UTCTime)+botVersionSummary_creationDateTime = Lens.lens (\BotVersionSummary' {creationDateTime} -> creationDateTime) (\s@BotVersionSummary' {} a -> s {creationDateTime = a} :: BotVersionSummary) Prelude.. Lens.mapping Data._Time++-- | The description of the version.+botVersionSummary_description :: Lens.Lens' BotVersionSummary (Prelude.Maybe Prelude.Text)+botVersionSummary_description = Lens.lens (\BotVersionSummary' {description} -> description) (\s@BotVersionSummary' {} a -> s {description = a} :: BotVersionSummary)++instance Data.FromJSON BotVersionSummary where+ parseJSON =+ Data.withObject+ "BotVersionSummary"+ ( \x ->+ BotVersionSummary'+ Prelude.<$> (x Data..:? "botName")+ Prelude.<*> (x Data..:? "botStatus")+ Prelude.<*> (x Data..:? "botVersion")+ Prelude.<*> (x Data..:? "creationDateTime")+ Prelude.<*> (x Data..:? "description")+ )++instance Prelude.Hashable BotVersionSummary where+ hashWithSalt _salt BotVersionSummary' {..} =+ _salt+ `Prelude.hashWithSalt` botName+ `Prelude.hashWithSalt` botStatus+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` creationDateTime+ `Prelude.hashWithSalt` description++instance Prelude.NFData BotVersionSummary where+ rnf BotVersionSummary' {..} =+ Prelude.rnf botName+ `Prelude.seq` Prelude.rnf botStatus+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf description
+ gen/Amazonka/LexV2Models/Types/BuiltInIntentSortAttribute.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.BuiltInIntentSortAttribute+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.BuiltInIntentSortAttribute+ ( BuiltInIntentSortAttribute+ ( ..,+ BuiltInIntentSortAttribute_IntentSignature+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype BuiltInIntentSortAttribute = BuiltInIntentSortAttribute'+ { fromBuiltInIntentSortAttribute ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern BuiltInIntentSortAttribute_IntentSignature :: BuiltInIntentSortAttribute+pattern BuiltInIntentSortAttribute_IntentSignature = BuiltInIntentSortAttribute' "IntentSignature"++{-# COMPLETE+ BuiltInIntentSortAttribute_IntentSignature,+ BuiltInIntentSortAttribute'+ #-}
+ gen/Amazonka/LexV2Models/Types/BuiltInIntentSortBy.hs view
@@ -0,0 +1,92 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.BuiltInIntentSortBy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.BuiltInIntentSortBy where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.BuiltInIntentSortAttribute+import Amazonka.LexV2Models.Types.SortOrder+import qualified Amazonka.Prelude as Prelude++-- | Specifies attributes for sorting a list of built-in intents.+--+-- /See:/ 'newBuiltInIntentSortBy' smart constructor.+data BuiltInIntentSortBy = BuiltInIntentSortBy'+ { -- | The attribute to use to sort the list of built-in intents.+ attribute :: BuiltInIntentSortAttribute,+ -- | The order to sort the list. You can specify ascending or descending+ -- order.+ order :: SortOrder+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BuiltInIntentSortBy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'attribute', 'builtInIntentSortBy_attribute' - The attribute to use to sort the list of built-in intents.+--+-- 'order', 'builtInIntentSortBy_order' - The order to sort the list. You can specify ascending or descending+-- order.+newBuiltInIntentSortBy ::+ -- | 'attribute'+ BuiltInIntentSortAttribute ->+ -- | 'order'+ SortOrder ->+ BuiltInIntentSortBy+newBuiltInIntentSortBy pAttribute_ pOrder_ =+ BuiltInIntentSortBy'+ { attribute = pAttribute_,+ order = pOrder_+ }++-- | The attribute to use to sort the list of built-in intents.+builtInIntentSortBy_attribute :: Lens.Lens' BuiltInIntentSortBy BuiltInIntentSortAttribute+builtInIntentSortBy_attribute = Lens.lens (\BuiltInIntentSortBy' {attribute} -> attribute) (\s@BuiltInIntentSortBy' {} a -> s {attribute = a} :: BuiltInIntentSortBy)++-- | The order to sort the list. You can specify ascending or descending+-- order.+builtInIntentSortBy_order :: Lens.Lens' BuiltInIntentSortBy SortOrder+builtInIntentSortBy_order = Lens.lens (\BuiltInIntentSortBy' {order} -> order) (\s@BuiltInIntentSortBy' {} a -> s {order = a} :: BuiltInIntentSortBy)++instance Prelude.Hashable BuiltInIntentSortBy where+ hashWithSalt _salt BuiltInIntentSortBy' {..} =+ _salt+ `Prelude.hashWithSalt` attribute+ `Prelude.hashWithSalt` order++instance Prelude.NFData BuiltInIntentSortBy where+ rnf BuiltInIntentSortBy' {..} =+ Prelude.rnf attribute+ `Prelude.seq` Prelude.rnf order++instance Data.ToJSON BuiltInIntentSortBy where+ toJSON BuiltInIntentSortBy' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("attribute" Data..= attribute),+ Prelude.Just ("order" Data..= order)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/BuiltInIntentSummary.hs view
@@ -0,0 +1,90 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.BuiltInIntentSummary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.BuiltInIntentSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Provides summary information about a built-in intent for the+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_ListBuiltInIntents.html ListBuiltInIntents>+-- operation.+--+-- /See:/ 'newBuiltInIntentSummary' smart constructor.+data BuiltInIntentSummary = BuiltInIntentSummary'+ { -- | The description of the intent.+ description :: Prelude.Maybe Prelude.Text,+ -- | The signature of the built-in intent. Use this to specify the parent+ -- intent of a derived intent.+ intentSignature :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BuiltInIntentSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'description', 'builtInIntentSummary_description' - The description of the intent.+--+-- 'intentSignature', 'builtInIntentSummary_intentSignature' - The signature of the built-in intent. Use this to specify the parent+-- intent of a derived intent.+newBuiltInIntentSummary ::+ BuiltInIntentSummary+newBuiltInIntentSummary =+ BuiltInIntentSummary'+ { description =+ Prelude.Nothing,+ intentSignature = Prelude.Nothing+ }++-- | The description of the intent.+builtInIntentSummary_description :: Lens.Lens' BuiltInIntentSummary (Prelude.Maybe Prelude.Text)+builtInIntentSummary_description = Lens.lens (\BuiltInIntentSummary' {description} -> description) (\s@BuiltInIntentSummary' {} a -> s {description = a} :: BuiltInIntentSummary)++-- | The signature of the built-in intent. Use this to specify the parent+-- intent of a derived intent.+builtInIntentSummary_intentSignature :: Lens.Lens' BuiltInIntentSummary (Prelude.Maybe Prelude.Text)+builtInIntentSummary_intentSignature = Lens.lens (\BuiltInIntentSummary' {intentSignature} -> intentSignature) (\s@BuiltInIntentSummary' {} a -> s {intentSignature = a} :: BuiltInIntentSummary)++instance Data.FromJSON BuiltInIntentSummary where+ parseJSON =+ Data.withObject+ "BuiltInIntentSummary"+ ( \x ->+ BuiltInIntentSummary'+ Prelude.<$> (x Data..:? "description")+ Prelude.<*> (x Data..:? "intentSignature")+ )++instance Prelude.Hashable BuiltInIntentSummary where+ hashWithSalt _salt BuiltInIntentSummary' {..} =+ _salt+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` intentSignature++instance Prelude.NFData BuiltInIntentSummary where+ rnf BuiltInIntentSummary' {..} =+ Prelude.rnf description+ `Prelude.seq` Prelude.rnf intentSignature
+ gen/Amazonka/LexV2Models/Types/BuiltInSlotTypeSortAttribute.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.BuiltInSlotTypeSortAttribute+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.BuiltInSlotTypeSortAttribute+ ( BuiltInSlotTypeSortAttribute+ ( ..,+ BuiltInSlotTypeSortAttribute_SlotTypeSignature+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype BuiltInSlotTypeSortAttribute = BuiltInSlotTypeSortAttribute'+ { fromBuiltInSlotTypeSortAttribute ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern BuiltInSlotTypeSortAttribute_SlotTypeSignature :: BuiltInSlotTypeSortAttribute+pattern BuiltInSlotTypeSortAttribute_SlotTypeSignature = BuiltInSlotTypeSortAttribute' "SlotTypeSignature"++{-# COMPLETE+ BuiltInSlotTypeSortAttribute_SlotTypeSignature,+ BuiltInSlotTypeSortAttribute'+ #-}
+ gen/Amazonka/LexV2Models/Types/BuiltInSlotTypeSortBy.hs view
@@ -0,0 +1,89 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.BuiltInSlotTypeSortBy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.BuiltInSlotTypeSortBy where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.BuiltInSlotTypeSortAttribute+import Amazonka.LexV2Models.Types.SortOrder+import qualified Amazonka.Prelude as Prelude++-- | Specifies attributes for sorting a list of built-in slot types.+--+-- /See:/ 'newBuiltInSlotTypeSortBy' smart constructor.+data BuiltInSlotTypeSortBy = BuiltInSlotTypeSortBy'+ { -- | The attribute to use to sort the list of built-in intents.+ attribute :: BuiltInSlotTypeSortAttribute,+ -- | The order to sort the list. You can choose ascending or descending.+ order :: SortOrder+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BuiltInSlotTypeSortBy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'attribute', 'builtInSlotTypeSortBy_attribute' - The attribute to use to sort the list of built-in intents.+--+-- 'order', 'builtInSlotTypeSortBy_order' - The order to sort the list. You can choose ascending or descending.+newBuiltInSlotTypeSortBy ::+ -- | 'attribute'+ BuiltInSlotTypeSortAttribute ->+ -- | 'order'+ SortOrder ->+ BuiltInSlotTypeSortBy+newBuiltInSlotTypeSortBy pAttribute_ pOrder_ =+ BuiltInSlotTypeSortBy'+ { attribute = pAttribute_,+ order = pOrder_+ }++-- | The attribute to use to sort the list of built-in intents.+builtInSlotTypeSortBy_attribute :: Lens.Lens' BuiltInSlotTypeSortBy BuiltInSlotTypeSortAttribute+builtInSlotTypeSortBy_attribute = Lens.lens (\BuiltInSlotTypeSortBy' {attribute} -> attribute) (\s@BuiltInSlotTypeSortBy' {} a -> s {attribute = a} :: BuiltInSlotTypeSortBy)++-- | The order to sort the list. You can choose ascending or descending.+builtInSlotTypeSortBy_order :: Lens.Lens' BuiltInSlotTypeSortBy SortOrder+builtInSlotTypeSortBy_order = Lens.lens (\BuiltInSlotTypeSortBy' {order} -> order) (\s@BuiltInSlotTypeSortBy' {} a -> s {order = a} :: BuiltInSlotTypeSortBy)++instance Prelude.Hashable BuiltInSlotTypeSortBy where+ hashWithSalt _salt BuiltInSlotTypeSortBy' {..} =+ _salt+ `Prelude.hashWithSalt` attribute+ `Prelude.hashWithSalt` order++instance Prelude.NFData BuiltInSlotTypeSortBy where+ rnf BuiltInSlotTypeSortBy' {..} =+ Prelude.rnf attribute+ `Prelude.seq` Prelude.rnf order++instance Data.ToJSON BuiltInSlotTypeSortBy where+ toJSON BuiltInSlotTypeSortBy' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("attribute" Data..= attribute),+ Prelude.Just ("order" Data..= order)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/BuiltInSlotTypeSummary.hs view
@@ -0,0 +1,90 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.BuiltInSlotTypeSummary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.BuiltInSlotTypeSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Provides summary information about a built-in slot type for the+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_ListBuiltInSlotTypes.html ListBuiltInSlotTypes>+-- operation.+--+-- /See:/ 'newBuiltInSlotTypeSummary' smart constructor.+data BuiltInSlotTypeSummary = BuiltInSlotTypeSummary'+ { -- | The description of the built-in slot type.+ description :: Prelude.Maybe Prelude.Text,+ -- | The signature of the built-in slot type. Use this to specify the parent+ -- slot type of a derived slot type.+ slotTypeSignature :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BuiltInSlotTypeSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'description', 'builtInSlotTypeSummary_description' - The description of the built-in slot type.+--+-- 'slotTypeSignature', 'builtInSlotTypeSummary_slotTypeSignature' - The signature of the built-in slot type. Use this to specify the parent+-- slot type of a derived slot type.+newBuiltInSlotTypeSummary ::+ BuiltInSlotTypeSummary+newBuiltInSlotTypeSummary =+ BuiltInSlotTypeSummary'+ { description =+ Prelude.Nothing,+ slotTypeSignature = Prelude.Nothing+ }++-- | The description of the built-in slot type.+builtInSlotTypeSummary_description :: Lens.Lens' BuiltInSlotTypeSummary (Prelude.Maybe Prelude.Text)+builtInSlotTypeSummary_description = Lens.lens (\BuiltInSlotTypeSummary' {description} -> description) (\s@BuiltInSlotTypeSummary' {} a -> s {description = a} :: BuiltInSlotTypeSummary)++-- | The signature of the built-in slot type. Use this to specify the parent+-- slot type of a derived slot type.+builtInSlotTypeSummary_slotTypeSignature :: Lens.Lens' BuiltInSlotTypeSummary (Prelude.Maybe Prelude.Text)+builtInSlotTypeSummary_slotTypeSignature = Lens.lens (\BuiltInSlotTypeSummary' {slotTypeSignature} -> slotTypeSignature) (\s@BuiltInSlotTypeSummary' {} a -> s {slotTypeSignature = a} :: BuiltInSlotTypeSummary)++instance Data.FromJSON BuiltInSlotTypeSummary where+ parseJSON =+ Data.withObject+ "BuiltInSlotTypeSummary"+ ( \x ->+ BuiltInSlotTypeSummary'+ Prelude.<$> (x Data..:? "description")+ Prelude.<*> (x Data..:? "slotTypeSignature")+ )++instance Prelude.Hashable BuiltInSlotTypeSummary where+ hashWithSalt _salt BuiltInSlotTypeSummary' {..} =+ _salt+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` slotTypeSignature++instance Prelude.NFData BuiltInSlotTypeSummary where+ rnf BuiltInSlotTypeSummary' {..} =+ Prelude.rnf description+ `Prelude.seq` Prelude.rnf slotTypeSignature
+ gen/Amazonka/LexV2Models/Types/Button.hs view
@@ -0,0 +1,100 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.Button+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.Button where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Describes a button to use on a response card used to gather slot values+-- from a user.+--+-- /See:/ 'newButton' smart constructor.+data Button = Button'+ { -- | The text that appears on the button. Use this to tell the user what+ -- value is returned when they choose this button.+ text :: Prelude.Text,+ -- | The value returned to Amazon Lex when the user chooses this button. This+ -- must be one of the slot values configured for the slot.+ value :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Button' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'text', 'button_text' - The text that appears on the button. Use this to tell the user what+-- value is returned when they choose this button.+--+-- 'value', 'button_value' - The value returned to Amazon Lex when the user chooses this button. This+-- must be one of the slot values configured for the slot.+newButton ::+ -- | 'text'+ Prelude.Text ->+ -- | 'value'+ Prelude.Text ->+ Button+newButton pText_ pValue_ =+ Button' {text = pText_, value = pValue_}++-- | The text that appears on the button. Use this to tell the user what+-- value is returned when they choose this button.+button_text :: Lens.Lens' Button Prelude.Text+button_text = Lens.lens (\Button' {text} -> text) (\s@Button' {} a -> s {text = a} :: Button)++-- | The value returned to Amazon Lex when the user chooses this button. This+-- must be one of the slot values configured for the slot.+button_value :: Lens.Lens' Button Prelude.Text+button_value = Lens.lens (\Button' {value} -> value) (\s@Button' {} a -> s {value = a} :: Button)++instance Data.FromJSON Button where+ parseJSON =+ Data.withObject+ "Button"+ ( \x ->+ Button'+ Prelude.<$> (x Data..: "text")+ Prelude.<*> (x Data..: "value")+ )++instance Prelude.Hashable Button where+ hashWithSalt _salt Button' {..} =+ _salt+ `Prelude.hashWithSalt` text+ `Prelude.hashWithSalt` value++instance Prelude.NFData Button where+ rnf Button' {..} =+ Prelude.rnf text `Prelude.seq` Prelude.rnf value++instance Data.ToJSON Button where+ toJSON Button' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("text" Data..= text),+ Prelude.Just ("value" Data..= value)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/CloudWatchLogGroupLogDestination.hs view
@@ -0,0 +1,121 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.CloudWatchLogGroupLogDestination+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.CloudWatchLogGroupLogDestination where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The Amazon CloudWatch Logs log group where the text and metadata logs+-- are delivered. The log group must exist before you enable logging.+--+-- /See:/ 'newCloudWatchLogGroupLogDestination' smart constructor.+data CloudWatchLogGroupLogDestination = CloudWatchLogGroupLogDestination'+ { -- | The Amazon Resource Name (ARN) of the log group where text and metadata+ -- logs are delivered.+ cloudWatchLogGroupArn :: Prelude.Text,+ -- | The prefix of the log stream name within the log group that you+ -- specified+ logPrefix :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CloudWatchLogGroupLogDestination' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'cloudWatchLogGroupArn', 'cloudWatchLogGroupLogDestination_cloudWatchLogGroupArn' - The Amazon Resource Name (ARN) of the log group where text and metadata+-- logs are delivered.+--+-- 'logPrefix', 'cloudWatchLogGroupLogDestination_logPrefix' - The prefix of the log stream name within the log group that you+-- specified+newCloudWatchLogGroupLogDestination ::+ -- | 'cloudWatchLogGroupArn'+ Prelude.Text ->+ -- | 'logPrefix'+ Prelude.Text ->+ CloudWatchLogGroupLogDestination+newCloudWatchLogGroupLogDestination+ pCloudWatchLogGroupArn_+ pLogPrefix_ =+ CloudWatchLogGroupLogDestination'+ { cloudWatchLogGroupArn =+ pCloudWatchLogGroupArn_,+ logPrefix = pLogPrefix_+ }++-- | The Amazon Resource Name (ARN) of the log group where text and metadata+-- logs are delivered.+cloudWatchLogGroupLogDestination_cloudWatchLogGroupArn :: Lens.Lens' CloudWatchLogGroupLogDestination Prelude.Text+cloudWatchLogGroupLogDestination_cloudWatchLogGroupArn = Lens.lens (\CloudWatchLogGroupLogDestination' {cloudWatchLogGroupArn} -> cloudWatchLogGroupArn) (\s@CloudWatchLogGroupLogDestination' {} a -> s {cloudWatchLogGroupArn = a} :: CloudWatchLogGroupLogDestination)++-- | The prefix of the log stream name within the log group that you+-- specified+cloudWatchLogGroupLogDestination_logPrefix :: Lens.Lens' CloudWatchLogGroupLogDestination Prelude.Text+cloudWatchLogGroupLogDestination_logPrefix = Lens.lens (\CloudWatchLogGroupLogDestination' {logPrefix} -> logPrefix) (\s@CloudWatchLogGroupLogDestination' {} a -> s {logPrefix = a} :: CloudWatchLogGroupLogDestination)++instance+ Data.FromJSON+ CloudWatchLogGroupLogDestination+ where+ parseJSON =+ Data.withObject+ "CloudWatchLogGroupLogDestination"+ ( \x ->+ CloudWatchLogGroupLogDestination'+ Prelude.<$> (x Data..: "cloudWatchLogGroupArn")+ Prelude.<*> (x Data..: "logPrefix")+ )++instance+ Prelude.Hashable+ CloudWatchLogGroupLogDestination+ where+ hashWithSalt+ _salt+ CloudWatchLogGroupLogDestination' {..} =+ _salt+ `Prelude.hashWithSalt` cloudWatchLogGroupArn+ `Prelude.hashWithSalt` logPrefix++instance+ Prelude.NFData+ CloudWatchLogGroupLogDestination+ where+ rnf CloudWatchLogGroupLogDestination' {..} =+ Prelude.rnf cloudWatchLogGroupArn+ `Prelude.seq` Prelude.rnf logPrefix++instance Data.ToJSON CloudWatchLogGroupLogDestination where+ toJSON CloudWatchLogGroupLogDestination' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ( "cloudWatchLogGroupArn"+ Data..= cloudWatchLogGroupArn+ ),+ Prelude.Just ("logPrefix" Data..= logPrefix)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/CodeHookSpecification.hs view
@@ -0,0 +1,84 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.CodeHookSpecification+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.CodeHookSpecification where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.LambdaCodeHook+import qualified Amazonka.Prelude as Prelude++-- | Contains information about code hooks that Amazon Lex calls during a+-- conversation.+--+-- /See:/ 'newCodeHookSpecification' smart constructor.+data CodeHookSpecification = CodeHookSpecification'+ { lambdaCodeHook :: LambdaCodeHook+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CodeHookSpecification' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'lambdaCodeHook', 'codeHookSpecification_lambdaCodeHook' - Undocumented member.+newCodeHookSpecification ::+ -- | 'lambdaCodeHook'+ LambdaCodeHook ->+ CodeHookSpecification+newCodeHookSpecification pLambdaCodeHook_ =+ CodeHookSpecification'+ { lambdaCodeHook =+ pLambdaCodeHook_+ }++-- | Undocumented member.+codeHookSpecification_lambdaCodeHook :: Lens.Lens' CodeHookSpecification LambdaCodeHook+codeHookSpecification_lambdaCodeHook = Lens.lens (\CodeHookSpecification' {lambdaCodeHook} -> lambdaCodeHook) (\s@CodeHookSpecification' {} a -> s {lambdaCodeHook = a} :: CodeHookSpecification)++instance Data.FromJSON CodeHookSpecification where+ parseJSON =+ Data.withObject+ "CodeHookSpecification"+ ( \x ->+ CodeHookSpecification'+ Prelude.<$> (x Data..: "lambdaCodeHook")+ )++instance Prelude.Hashable CodeHookSpecification where+ hashWithSalt _salt CodeHookSpecification' {..} =+ _salt `Prelude.hashWithSalt` lambdaCodeHook++instance Prelude.NFData CodeHookSpecification where+ rnf CodeHookSpecification' {..} =+ Prelude.rnf lambdaCodeHook++instance Data.ToJSON CodeHookSpecification where+ toJSON CodeHookSpecification' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("lambdaCodeHook" Data..= lambdaCodeHook)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/CompositeSlotTypeSetting.hs view
@@ -0,0 +1,81 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.CompositeSlotTypeSetting+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.CompositeSlotTypeSetting where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.SubSlotTypeComposition+import qualified Amazonka.Prelude as Prelude++-- | A composite slot is a combination of two or more slots that capture+-- multiple pieces of information in a single user input.+--+-- /See:/ 'newCompositeSlotTypeSetting' smart constructor.+data CompositeSlotTypeSetting = CompositeSlotTypeSetting'+ { -- | Subslots in the composite slot.+ subSlots :: Prelude.Maybe [SubSlotTypeComposition]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CompositeSlotTypeSetting' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'subSlots', 'compositeSlotTypeSetting_subSlots' - Subslots in the composite slot.+newCompositeSlotTypeSetting ::+ CompositeSlotTypeSetting+newCompositeSlotTypeSetting =+ CompositeSlotTypeSetting'+ { subSlots =+ Prelude.Nothing+ }++-- | Subslots in the composite slot.+compositeSlotTypeSetting_subSlots :: Lens.Lens' CompositeSlotTypeSetting (Prelude.Maybe [SubSlotTypeComposition])+compositeSlotTypeSetting_subSlots = Lens.lens (\CompositeSlotTypeSetting' {subSlots} -> subSlots) (\s@CompositeSlotTypeSetting' {} a -> s {subSlots = a} :: CompositeSlotTypeSetting) Prelude.. Lens.mapping Lens.coerced++instance Data.FromJSON CompositeSlotTypeSetting where+ parseJSON =+ Data.withObject+ "CompositeSlotTypeSetting"+ ( \x ->+ CompositeSlotTypeSetting'+ Prelude.<$> (x Data..:? "subSlots" Data..!= Prelude.mempty)+ )++instance Prelude.Hashable CompositeSlotTypeSetting where+ hashWithSalt _salt CompositeSlotTypeSetting' {..} =+ _salt `Prelude.hashWithSalt` subSlots++instance Prelude.NFData CompositeSlotTypeSetting where+ rnf CompositeSlotTypeSetting' {..} =+ Prelude.rnf subSlots++instance Data.ToJSON CompositeSlotTypeSetting where+ toJSON CompositeSlotTypeSetting' {..} =+ Data.object+ ( Prelude.catMaybes+ [("subSlots" Data..=) Prelude.<$> subSlots]+ )
+ gen/Amazonka/LexV2Models/Types/Condition.hs view
@@ -0,0 +1,79 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.Condition+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.Condition where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Provides an expression that evaluates to true or false.+--+-- /See:/ 'newCondition' smart constructor.+data Condition = Condition'+ { -- | The expression string that is evaluated.+ expressionString :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Condition' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'expressionString', 'condition_expressionString' - The expression string that is evaluated.+newCondition ::+ -- | 'expressionString'+ Prelude.Text ->+ Condition+newCondition pExpressionString_ =+ Condition' {expressionString = pExpressionString_}++-- | The expression string that is evaluated.+condition_expressionString :: Lens.Lens' Condition Prelude.Text+condition_expressionString = Lens.lens (\Condition' {expressionString} -> expressionString) (\s@Condition' {} a -> s {expressionString = a} :: Condition)++instance Data.FromJSON Condition where+ parseJSON =+ Data.withObject+ "Condition"+ ( \x ->+ Condition'+ Prelude.<$> (x Data..: "expressionString")+ )++instance Prelude.Hashable Condition where+ hashWithSalt _salt Condition' {..} =+ _salt `Prelude.hashWithSalt` expressionString++instance Prelude.NFData Condition where+ rnf Condition' {..} = Prelude.rnf expressionString++instance Data.ToJSON Condition where+ toJSON Condition' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("expressionString" Data..= expressionString)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/ConditionalBranch.hs view
@@ -0,0 +1,130 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.ConditionalBranch+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.ConditionalBranch where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.Condition+import Amazonka.LexV2Models.Types.DialogState+import Amazonka.LexV2Models.Types.ResponseSpecification+import qualified Amazonka.Prelude as Prelude++-- | A set of actions that Amazon Lex should run if the condition is matched.+--+-- /See:/ 'newConditionalBranch' smart constructor.+data ConditionalBranch = ConditionalBranch'+ { response :: Prelude.Maybe ResponseSpecification,+ -- | The name of the branch.+ name :: Prelude.Text,+ -- | Contains the expression to evaluate. If the condition is true, the+ -- branch\'s actions are taken.+ condition :: Condition,+ -- | The next step in the conversation.+ nextStep :: DialogState+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ConditionalBranch' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'response', 'conditionalBranch_response' - Undocumented member.+--+-- 'name', 'conditionalBranch_name' - The name of the branch.+--+-- 'condition', 'conditionalBranch_condition' - Contains the expression to evaluate. If the condition is true, the+-- branch\'s actions are taken.+--+-- 'nextStep', 'conditionalBranch_nextStep' - The next step in the conversation.+newConditionalBranch ::+ -- | 'name'+ Prelude.Text ->+ -- | 'condition'+ Condition ->+ -- | 'nextStep'+ DialogState ->+ ConditionalBranch+newConditionalBranch pName_ pCondition_ pNextStep_ =+ ConditionalBranch'+ { response = Prelude.Nothing,+ name = pName_,+ condition = pCondition_,+ nextStep = pNextStep_+ }++-- | Undocumented member.+conditionalBranch_response :: Lens.Lens' ConditionalBranch (Prelude.Maybe ResponseSpecification)+conditionalBranch_response = Lens.lens (\ConditionalBranch' {response} -> response) (\s@ConditionalBranch' {} a -> s {response = a} :: ConditionalBranch)++-- | The name of the branch.+conditionalBranch_name :: Lens.Lens' ConditionalBranch Prelude.Text+conditionalBranch_name = Lens.lens (\ConditionalBranch' {name} -> name) (\s@ConditionalBranch' {} a -> s {name = a} :: ConditionalBranch)++-- | Contains the expression to evaluate. If the condition is true, the+-- branch\'s actions are taken.+conditionalBranch_condition :: Lens.Lens' ConditionalBranch Condition+conditionalBranch_condition = Lens.lens (\ConditionalBranch' {condition} -> condition) (\s@ConditionalBranch' {} a -> s {condition = a} :: ConditionalBranch)++-- | The next step in the conversation.+conditionalBranch_nextStep :: Lens.Lens' ConditionalBranch DialogState+conditionalBranch_nextStep = Lens.lens (\ConditionalBranch' {nextStep} -> nextStep) (\s@ConditionalBranch' {} a -> s {nextStep = a} :: ConditionalBranch)++instance Data.FromJSON ConditionalBranch where+ parseJSON =+ Data.withObject+ "ConditionalBranch"+ ( \x ->+ ConditionalBranch'+ Prelude.<$> (x Data..:? "response")+ Prelude.<*> (x Data..: "name")+ Prelude.<*> (x Data..: "condition")+ Prelude.<*> (x Data..: "nextStep")+ )++instance Prelude.Hashable ConditionalBranch where+ hashWithSalt _salt ConditionalBranch' {..} =+ _salt+ `Prelude.hashWithSalt` response+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` condition+ `Prelude.hashWithSalt` nextStep++instance Prelude.NFData ConditionalBranch where+ rnf ConditionalBranch' {..} =+ Prelude.rnf response+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf condition+ `Prelude.seq` Prelude.rnf nextStep++instance Data.ToJSON ConditionalBranch where+ toJSON ConditionalBranch' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("response" Data..=) Prelude.<$> response,+ Prelude.Just ("name" Data..= name),+ Prelude.Just ("condition" Data..= condition),+ Prelude.Just ("nextStep" Data..= nextStep)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/ConditionalSpecification.hs view
@@ -0,0 +1,140 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.ConditionalSpecification+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.ConditionalSpecification where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.ConditionalBranch+import Amazonka.LexV2Models.Types.DefaultConditionalBranch+import qualified Amazonka.Prelude as Prelude++-- | Provides a list of conditional branches. Branches are evaluated in the+-- order that they are entered in the list. The first branch with a+-- condition that evaluates to true is executed. The last branch in the+-- list is the default branch. The default branch should not have any+-- condition expression. The default branch is executed if no other branch+-- has a matching condition.+--+-- /See:/ 'newConditionalSpecification' smart constructor.+data ConditionalSpecification = ConditionalSpecification'+ { -- | Determines whether a conditional branch is active. When @active@ is+ -- false, the conditions are not evaluated.+ active :: Prelude.Bool,+ -- | A list of conditional branches. A conditional branch is made up of a+ -- condition, a response and a next step. The response and next step are+ -- executed when the condition is true.+ conditionalBranches :: Prelude.NonEmpty ConditionalBranch,+ -- | The conditional branch that should be followed when the conditions for+ -- other branches are not satisfied. A conditional branch is made up of a+ -- condition, a response and a next step.+ defaultBranch :: DefaultConditionalBranch+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ConditionalSpecification' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'active', 'conditionalSpecification_active' - Determines whether a conditional branch is active. When @active@ is+-- false, the conditions are not evaluated.+--+-- 'conditionalBranches', 'conditionalSpecification_conditionalBranches' - A list of conditional branches. A conditional branch is made up of a+-- condition, a response and a next step. The response and next step are+-- executed when the condition is true.+--+-- 'defaultBranch', 'conditionalSpecification_defaultBranch' - The conditional branch that should be followed when the conditions for+-- other branches are not satisfied. A conditional branch is made up of a+-- condition, a response and a next step.+newConditionalSpecification ::+ -- | 'active'+ Prelude.Bool ->+ -- | 'conditionalBranches'+ Prelude.NonEmpty ConditionalBranch ->+ -- | 'defaultBranch'+ DefaultConditionalBranch ->+ ConditionalSpecification+newConditionalSpecification+ pActive_+ pConditionalBranches_+ pDefaultBranch_ =+ ConditionalSpecification'+ { active = pActive_,+ conditionalBranches =+ Lens.coerced Lens.# pConditionalBranches_,+ defaultBranch = pDefaultBranch_+ }++-- | Determines whether a conditional branch is active. When @active@ is+-- false, the conditions are not evaluated.+conditionalSpecification_active :: Lens.Lens' ConditionalSpecification Prelude.Bool+conditionalSpecification_active = Lens.lens (\ConditionalSpecification' {active} -> active) (\s@ConditionalSpecification' {} a -> s {active = a} :: ConditionalSpecification)++-- | A list of conditional branches. A conditional branch is made up of a+-- condition, a response and a next step. The response and next step are+-- executed when the condition is true.+conditionalSpecification_conditionalBranches :: Lens.Lens' ConditionalSpecification (Prelude.NonEmpty ConditionalBranch)+conditionalSpecification_conditionalBranches = Lens.lens (\ConditionalSpecification' {conditionalBranches} -> conditionalBranches) (\s@ConditionalSpecification' {} a -> s {conditionalBranches = a} :: ConditionalSpecification) Prelude.. Lens.coerced++-- | The conditional branch that should be followed when the conditions for+-- other branches are not satisfied. A conditional branch is made up of a+-- condition, a response and a next step.+conditionalSpecification_defaultBranch :: Lens.Lens' ConditionalSpecification DefaultConditionalBranch+conditionalSpecification_defaultBranch = Lens.lens (\ConditionalSpecification' {defaultBranch} -> defaultBranch) (\s@ConditionalSpecification' {} a -> s {defaultBranch = a} :: ConditionalSpecification)++instance Data.FromJSON ConditionalSpecification where+ parseJSON =+ Data.withObject+ "ConditionalSpecification"+ ( \x ->+ ConditionalSpecification'+ Prelude.<$> (x Data..: "active")+ Prelude.<*> (x Data..: "conditionalBranches")+ Prelude.<*> (x Data..: "defaultBranch")+ )++instance Prelude.Hashable ConditionalSpecification where+ hashWithSalt _salt ConditionalSpecification' {..} =+ _salt+ `Prelude.hashWithSalt` active+ `Prelude.hashWithSalt` conditionalBranches+ `Prelude.hashWithSalt` defaultBranch++instance Prelude.NFData ConditionalSpecification where+ rnf ConditionalSpecification' {..} =+ Prelude.rnf active+ `Prelude.seq` Prelude.rnf conditionalBranches+ `Prelude.seq` Prelude.rnf defaultBranch++instance Data.ToJSON ConditionalSpecification where+ toJSON ConditionalSpecification' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("active" Data..= active),+ Prelude.Just+ ("conditionalBranches" Data..= conditionalBranches),+ Prelude.Just+ ("defaultBranch" Data..= defaultBranch)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/ConversationLogSettings.hs view
@@ -0,0 +1,99 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.ConversationLogSettings+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.ConversationLogSettings where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.AudioLogSetting+import Amazonka.LexV2Models.Types.TextLogSetting+import qualified Amazonka.Prelude as Prelude++-- | Configures conversation logging that saves audio, text, and metadata for+-- the conversations with your users.+--+-- /See:/ 'newConversationLogSettings' smart constructor.+data ConversationLogSettings = ConversationLogSettings'+ { -- | The Amazon S3 settings for logging audio to an S3 bucket.+ audioLogSettings :: Prelude.Maybe (Prelude.NonEmpty AudioLogSetting),+ -- | The Amazon CloudWatch Logs settings for logging text and metadata.+ textLogSettings :: Prelude.Maybe (Prelude.NonEmpty TextLogSetting)+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ConversationLogSettings' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'audioLogSettings', 'conversationLogSettings_audioLogSettings' - The Amazon S3 settings for logging audio to an S3 bucket.+--+-- 'textLogSettings', 'conversationLogSettings_textLogSettings' - The Amazon CloudWatch Logs settings for logging text and metadata.+newConversationLogSettings ::+ ConversationLogSettings+newConversationLogSettings =+ ConversationLogSettings'+ { audioLogSettings =+ Prelude.Nothing,+ textLogSettings = Prelude.Nothing+ }++-- | The Amazon S3 settings for logging audio to an S3 bucket.+conversationLogSettings_audioLogSettings :: Lens.Lens' ConversationLogSettings (Prelude.Maybe (Prelude.NonEmpty AudioLogSetting))+conversationLogSettings_audioLogSettings = Lens.lens (\ConversationLogSettings' {audioLogSettings} -> audioLogSettings) (\s@ConversationLogSettings' {} a -> s {audioLogSettings = a} :: ConversationLogSettings) Prelude.. Lens.mapping Lens.coerced++-- | The Amazon CloudWatch Logs settings for logging text and metadata.+conversationLogSettings_textLogSettings :: Lens.Lens' ConversationLogSettings (Prelude.Maybe (Prelude.NonEmpty TextLogSetting))+conversationLogSettings_textLogSettings = Lens.lens (\ConversationLogSettings' {textLogSettings} -> textLogSettings) (\s@ConversationLogSettings' {} a -> s {textLogSettings = a} :: ConversationLogSettings) Prelude.. Lens.mapping Lens.coerced++instance Data.FromJSON ConversationLogSettings where+ parseJSON =+ Data.withObject+ "ConversationLogSettings"+ ( \x ->+ ConversationLogSettings'+ Prelude.<$> (x Data..:? "audioLogSettings")+ Prelude.<*> (x Data..:? "textLogSettings")+ )++instance Prelude.Hashable ConversationLogSettings where+ hashWithSalt _salt ConversationLogSettings' {..} =+ _salt+ `Prelude.hashWithSalt` audioLogSettings+ `Prelude.hashWithSalt` textLogSettings++instance Prelude.NFData ConversationLogSettings where+ rnf ConversationLogSettings' {..} =+ Prelude.rnf audioLogSettings+ `Prelude.seq` Prelude.rnf textLogSettings++instance Data.ToJSON ConversationLogSettings where+ toJSON ConversationLogSettings' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("audioLogSettings" Data..=)+ Prelude.<$> audioLogSettings,+ ("textLogSettings" Data..=)+ Prelude.<$> textLogSettings+ ]+ )
+ gen/Amazonka/LexV2Models/Types/CustomPayload.hs view
@@ -0,0 +1,77 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.CustomPayload+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.CustomPayload where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | A custom response string that Amazon Lex sends to your application. You+-- define the content and structure the string.+--+-- /See:/ 'newCustomPayload' smart constructor.+data CustomPayload = CustomPayload'+ { -- | The string that is sent to your application.+ value :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CustomPayload' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'value', 'customPayload_value' - The string that is sent to your application.+newCustomPayload ::+ -- | 'value'+ Prelude.Text ->+ CustomPayload+newCustomPayload pValue_ =+ CustomPayload' {value = pValue_}++-- | The string that is sent to your application.+customPayload_value :: Lens.Lens' CustomPayload Prelude.Text+customPayload_value = Lens.lens (\CustomPayload' {value} -> value) (\s@CustomPayload' {} a -> s {value = a} :: CustomPayload)++instance Data.FromJSON CustomPayload where+ parseJSON =+ Data.withObject+ "CustomPayload"+ ( \x ->+ CustomPayload' Prelude.<$> (x Data..: "value")+ )++instance Prelude.Hashable CustomPayload where+ hashWithSalt _salt CustomPayload' {..} =+ _salt `Prelude.hashWithSalt` value++instance Prelude.NFData CustomPayload where+ rnf CustomPayload' {..} = Prelude.rnf value++instance Data.ToJSON CustomPayload where+ toJSON CustomPayload' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("value" Data..= value)]+ )
+ gen/Amazonka/LexV2Models/Types/CustomVocabularyEntryId.hs view
@@ -0,0 +1,68 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.CustomVocabularyEntryId+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.CustomVocabularyEntryId where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The unique entry identifier for the custom vocabulary items.+--+-- /See:/ 'newCustomVocabularyEntryId' smart constructor.+data CustomVocabularyEntryId = CustomVocabularyEntryId'+ { -- | The unique item identifier for the custom vocabulary items.+ itemId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CustomVocabularyEntryId' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'itemId', 'customVocabularyEntryId_itemId' - The unique item identifier for the custom vocabulary items.+newCustomVocabularyEntryId ::+ -- | 'itemId'+ Prelude.Text ->+ CustomVocabularyEntryId+newCustomVocabularyEntryId pItemId_ =+ CustomVocabularyEntryId' {itemId = pItemId_}++-- | The unique item identifier for the custom vocabulary items.+customVocabularyEntryId_itemId :: Lens.Lens' CustomVocabularyEntryId Prelude.Text+customVocabularyEntryId_itemId = Lens.lens (\CustomVocabularyEntryId' {itemId} -> itemId) (\s@CustomVocabularyEntryId' {} a -> s {itemId = a} :: CustomVocabularyEntryId)++instance Prelude.Hashable CustomVocabularyEntryId where+ hashWithSalt _salt CustomVocabularyEntryId' {..} =+ _salt `Prelude.hashWithSalt` itemId++instance Prelude.NFData CustomVocabularyEntryId where+ rnf CustomVocabularyEntryId' {..} = Prelude.rnf itemId++instance Data.ToJSON CustomVocabularyEntryId where+ toJSON CustomVocabularyEntryId' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("itemId" Data..= itemId)]+ )
+ gen/Amazonka/LexV2Models/Types/CustomVocabularyExportSpecification.hs view
@@ -0,0 +1,130 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.CustomVocabularyExportSpecification+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.CustomVocabularyExportSpecification where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Provides the parameters required for exporting a custom vocabulary.+--+-- /See:/ 'newCustomVocabularyExportSpecification' smart constructor.+data CustomVocabularyExportSpecification = CustomVocabularyExportSpecification'+ { -- | The identifier of the bot that contains the custom vocabulary to export.+ botId :: Prelude.Text,+ -- | The version of the bot that contains the custom vocabulary to export.+ botVersion :: Prelude.Text,+ -- | The locale of the bot that contains the custom vocabulary to export.+ localeId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CustomVocabularyExportSpecification' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'customVocabularyExportSpecification_botId' - The identifier of the bot that contains the custom vocabulary to export.+--+-- 'botVersion', 'customVocabularyExportSpecification_botVersion' - The version of the bot that contains the custom vocabulary to export.+--+-- 'localeId', 'customVocabularyExportSpecification_localeId' - The locale of the bot that contains the custom vocabulary to export.+newCustomVocabularyExportSpecification ::+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ -- | 'localeId'+ Prelude.Text ->+ CustomVocabularyExportSpecification+newCustomVocabularyExportSpecification+ pBotId_+ pBotVersion_+ pLocaleId_ =+ CustomVocabularyExportSpecification'+ { botId =+ pBotId_,+ botVersion = pBotVersion_,+ localeId = pLocaleId_+ }++-- | The identifier of the bot that contains the custom vocabulary to export.+customVocabularyExportSpecification_botId :: Lens.Lens' CustomVocabularyExportSpecification Prelude.Text+customVocabularyExportSpecification_botId = Lens.lens (\CustomVocabularyExportSpecification' {botId} -> botId) (\s@CustomVocabularyExportSpecification' {} a -> s {botId = a} :: CustomVocabularyExportSpecification)++-- | The version of the bot that contains the custom vocabulary to export.+customVocabularyExportSpecification_botVersion :: Lens.Lens' CustomVocabularyExportSpecification Prelude.Text+customVocabularyExportSpecification_botVersion = Lens.lens (\CustomVocabularyExportSpecification' {botVersion} -> botVersion) (\s@CustomVocabularyExportSpecification' {} a -> s {botVersion = a} :: CustomVocabularyExportSpecification)++-- | The locale of the bot that contains the custom vocabulary to export.+customVocabularyExportSpecification_localeId :: Lens.Lens' CustomVocabularyExportSpecification Prelude.Text+customVocabularyExportSpecification_localeId = Lens.lens (\CustomVocabularyExportSpecification' {localeId} -> localeId) (\s@CustomVocabularyExportSpecification' {} a -> s {localeId = a} :: CustomVocabularyExportSpecification)++instance+ Data.FromJSON+ CustomVocabularyExportSpecification+ where+ parseJSON =+ Data.withObject+ "CustomVocabularyExportSpecification"+ ( \x ->+ CustomVocabularyExportSpecification'+ Prelude.<$> (x Data..: "botId")+ Prelude.<*> (x Data..: "botVersion")+ Prelude.<*> (x Data..: "localeId")+ )++instance+ Prelude.Hashable+ CustomVocabularyExportSpecification+ where+ hashWithSalt+ _salt+ CustomVocabularyExportSpecification' {..} =+ _salt+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` localeId++instance+ Prelude.NFData+ CustomVocabularyExportSpecification+ where+ rnf CustomVocabularyExportSpecification' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId++instance+ Data.ToJSON+ CustomVocabularyExportSpecification+ where+ toJSON CustomVocabularyExportSpecification' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("botId" Data..= botId),+ Prelude.Just ("botVersion" Data..= botVersion),+ Prelude.Just ("localeId" Data..= localeId)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/CustomVocabularyImportSpecification.hs view
@@ -0,0 +1,133 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.CustomVocabularyImportSpecification+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.CustomVocabularyImportSpecification where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Provides the parameters required for importing a custom vocabulary.+--+-- /See:/ 'newCustomVocabularyImportSpecification' smart constructor.+data CustomVocabularyImportSpecification = CustomVocabularyImportSpecification'+ { -- | The identifier of the bot to import the custom vocabulary to.+ botId :: Prelude.Text,+ -- | The version of the bot to import the custom vocabulary to.+ botVersion :: Prelude.Text,+ -- | The identifier of the local to import the custom vocabulary to. The+ -- value must be @en_GB@.+ localeId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CustomVocabularyImportSpecification' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'customVocabularyImportSpecification_botId' - The identifier of the bot to import the custom vocabulary to.+--+-- 'botVersion', 'customVocabularyImportSpecification_botVersion' - The version of the bot to import the custom vocabulary to.+--+-- 'localeId', 'customVocabularyImportSpecification_localeId' - The identifier of the local to import the custom vocabulary to. The+-- value must be @en_GB@.+newCustomVocabularyImportSpecification ::+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ -- | 'localeId'+ Prelude.Text ->+ CustomVocabularyImportSpecification+newCustomVocabularyImportSpecification+ pBotId_+ pBotVersion_+ pLocaleId_ =+ CustomVocabularyImportSpecification'+ { botId =+ pBotId_,+ botVersion = pBotVersion_,+ localeId = pLocaleId_+ }++-- | The identifier of the bot to import the custom vocabulary to.+customVocabularyImportSpecification_botId :: Lens.Lens' CustomVocabularyImportSpecification Prelude.Text+customVocabularyImportSpecification_botId = Lens.lens (\CustomVocabularyImportSpecification' {botId} -> botId) (\s@CustomVocabularyImportSpecification' {} a -> s {botId = a} :: CustomVocabularyImportSpecification)++-- | The version of the bot to import the custom vocabulary to.+customVocabularyImportSpecification_botVersion :: Lens.Lens' CustomVocabularyImportSpecification Prelude.Text+customVocabularyImportSpecification_botVersion = Lens.lens (\CustomVocabularyImportSpecification' {botVersion} -> botVersion) (\s@CustomVocabularyImportSpecification' {} a -> s {botVersion = a} :: CustomVocabularyImportSpecification)++-- | The identifier of the local to import the custom vocabulary to. The+-- value must be @en_GB@.+customVocabularyImportSpecification_localeId :: Lens.Lens' CustomVocabularyImportSpecification Prelude.Text+customVocabularyImportSpecification_localeId = Lens.lens (\CustomVocabularyImportSpecification' {localeId} -> localeId) (\s@CustomVocabularyImportSpecification' {} a -> s {localeId = a} :: CustomVocabularyImportSpecification)++instance+ Data.FromJSON+ CustomVocabularyImportSpecification+ where+ parseJSON =+ Data.withObject+ "CustomVocabularyImportSpecification"+ ( \x ->+ CustomVocabularyImportSpecification'+ Prelude.<$> (x Data..: "botId")+ Prelude.<*> (x Data..: "botVersion")+ Prelude.<*> (x Data..: "localeId")+ )++instance+ Prelude.Hashable+ CustomVocabularyImportSpecification+ where+ hashWithSalt+ _salt+ CustomVocabularyImportSpecification' {..} =+ _salt+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` localeId++instance+ Prelude.NFData+ CustomVocabularyImportSpecification+ where+ rnf CustomVocabularyImportSpecification' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId++instance+ Data.ToJSON+ CustomVocabularyImportSpecification+ where+ toJSON CustomVocabularyImportSpecification' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("botId" Data..= botId),+ Prelude.Just ("botVersion" Data..= botVersion),+ Prelude.Just ("localeId" Data..= localeId)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/CustomVocabularyItem.hs view
@@ -0,0 +1,135 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.CustomVocabularyItem+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.CustomVocabularyItem where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The unique custom vocabulary item from the custom vocabulary list.+--+-- /See:/ 'newCustomVocabularyItem' smart constructor.+data CustomVocabularyItem = CustomVocabularyItem'+ { -- | The display as value for the custom vocabulary item from the custom+ -- vocabulary list.+ displayAs :: Prelude.Maybe Prelude.Text,+ -- | The weight assigned for the custom vocabulary item from the custom+ -- vocabulary list.+ weight :: Prelude.Maybe Prelude.Natural,+ -- | The unique item identifer for the custom vocabulary item from the custom+ -- vocabulary list.+ itemId :: Prelude.Text,+ -- | The unique phrase for the custom vocabulary item from the custom+ -- vocabulary list.+ phrase :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CustomVocabularyItem' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'displayAs', 'customVocabularyItem_displayAs' - The display as value for the custom vocabulary item from the custom+-- vocabulary list.+--+-- 'weight', 'customVocabularyItem_weight' - The weight assigned for the custom vocabulary item from the custom+-- vocabulary list.+--+-- 'itemId', 'customVocabularyItem_itemId' - The unique item identifer for the custom vocabulary item from the custom+-- vocabulary list.+--+-- 'phrase', 'customVocabularyItem_phrase' - The unique phrase for the custom vocabulary item from the custom+-- vocabulary list.+newCustomVocabularyItem ::+ -- | 'itemId'+ Prelude.Text ->+ -- | 'phrase'+ Prelude.Text ->+ CustomVocabularyItem+newCustomVocabularyItem pItemId_ pPhrase_ =+ CustomVocabularyItem'+ { displayAs = Prelude.Nothing,+ weight = Prelude.Nothing,+ itemId = pItemId_,+ phrase = pPhrase_+ }++-- | The display as value for the custom vocabulary item from the custom+-- vocabulary list.+customVocabularyItem_displayAs :: Lens.Lens' CustomVocabularyItem (Prelude.Maybe Prelude.Text)+customVocabularyItem_displayAs = Lens.lens (\CustomVocabularyItem' {displayAs} -> displayAs) (\s@CustomVocabularyItem' {} a -> s {displayAs = a} :: CustomVocabularyItem)++-- | The weight assigned for the custom vocabulary item from the custom+-- vocabulary list.+customVocabularyItem_weight :: Lens.Lens' CustomVocabularyItem (Prelude.Maybe Prelude.Natural)+customVocabularyItem_weight = Lens.lens (\CustomVocabularyItem' {weight} -> weight) (\s@CustomVocabularyItem' {} a -> s {weight = a} :: CustomVocabularyItem)++-- | The unique item identifer for the custom vocabulary item from the custom+-- vocabulary list.+customVocabularyItem_itemId :: Lens.Lens' CustomVocabularyItem Prelude.Text+customVocabularyItem_itemId = Lens.lens (\CustomVocabularyItem' {itemId} -> itemId) (\s@CustomVocabularyItem' {} a -> s {itemId = a} :: CustomVocabularyItem)++-- | The unique phrase for the custom vocabulary item from the custom+-- vocabulary list.+customVocabularyItem_phrase :: Lens.Lens' CustomVocabularyItem Prelude.Text+customVocabularyItem_phrase = Lens.lens (\CustomVocabularyItem' {phrase} -> phrase) (\s@CustomVocabularyItem' {} a -> s {phrase = a} :: CustomVocabularyItem)++instance Data.FromJSON CustomVocabularyItem where+ parseJSON =+ Data.withObject+ "CustomVocabularyItem"+ ( \x ->+ CustomVocabularyItem'+ Prelude.<$> (x Data..:? "displayAs")+ Prelude.<*> (x Data..:? "weight")+ Prelude.<*> (x Data..: "itemId")+ Prelude.<*> (x Data..: "phrase")+ )++instance Prelude.Hashable CustomVocabularyItem where+ hashWithSalt _salt CustomVocabularyItem' {..} =+ _salt+ `Prelude.hashWithSalt` displayAs+ `Prelude.hashWithSalt` weight+ `Prelude.hashWithSalt` itemId+ `Prelude.hashWithSalt` phrase++instance Prelude.NFData CustomVocabularyItem where+ rnf CustomVocabularyItem' {..} =+ Prelude.rnf displayAs+ `Prelude.seq` Prelude.rnf weight+ `Prelude.seq` Prelude.rnf itemId+ `Prelude.seq` Prelude.rnf phrase++instance Data.ToJSON CustomVocabularyItem where+ toJSON CustomVocabularyItem' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("displayAs" Data..=) Prelude.<$> displayAs,+ ("weight" Data..=) Prelude.<$> weight,+ Prelude.Just ("itemId" Data..= itemId),+ Prelude.Just ("phrase" Data..= phrase)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/CustomVocabularyStatus.hs view
@@ -0,0 +1,86 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.CustomVocabularyStatus+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.CustomVocabularyStatus+ ( CustomVocabularyStatus+ ( ..,+ CustomVocabularyStatus_Creating,+ CustomVocabularyStatus_Deleting,+ CustomVocabularyStatus_Exporting,+ CustomVocabularyStatus_Importing,+ CustomVocabularyStatus_Ready+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype CustomVocabularyStatus = CustomVocabularyStatus'+ { fromCustomVocabularyStatus ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern CustomVocabularyStatus_Creating :: CustomVocabularyStatus+pattern CustomVocabularyStatus_Creating = CustomVocabularyStatus' "Creating"++pattern CustomVocabularyStatus_Deleting :: CustomVocabularyStatus+pattern CustomVocabularyStatus_Deleting = CustomVocabularyStatus' "Deleting"++pattern CustomVocabularyStatus_Exporting :: CustomVocabularyStatus+pattern CustomVocabularyStatus_Exporting = CustomVocabularyStatus' "Exporting"++pattern CustomVocabularyStatus_Importing :: CustomVocabularyStatus+pattern CustomVocabularyStatus_Importing = CustomVocabularyStatus' "Importing"++pattern CustomVocabularyStatus_Ready :: CustomVocabularyStatus+pattern CustomVocabularyStatus_Ready = CustomVocabularyStatus' "Ready"++{-# COMPLETE+ CustomVocabularyStatus_Creating,+ CustomVocabularyStatus_Deleting,+ CustomVocabularyStatus_Exporting,+ CustomVocabularyStatus_Importing,+ CustomVocabularyStatus_Ready,+ CustomVocabularyStatus'+ #-}
+ gen/Amazonka/LexV2Models/Types/DTMFSpecification.hs view
@@ -0,0 +1,141 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.DTMFSpecification+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.DTMFSpecification where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Specifies the DTMF input specifications.+--+-- /See:/ 'newDTMFSpecification' smart constructor.+data DTMFSpecification = DTMFSpecification'+ { -- | The maximum number of DTMF digits allowed in an utterance.+ maxLength :: Prelude.Natural,+ -- | How long the bot should wait after the last DTMF character input before+ -- assuming that the input has concluded.+ endTimeoutMs :: Prelude.Natural,+ -- | The DTMF character that clears the accumulated DTMF digits and+ -- immediately ends the input.+ deletionCharacter :: Prelude.Text,+ -- | The DTMF character that immediately ends input. If the user does not+ -- press this character, the input ends after the end timeout.+ endCharacter :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DTMFSpecification' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxLength', 'dTMFSpecification_maxLength' - The maximum number of DTMF digits allowed in an utterance.+--+-- 'endTimeoutMs', 'dTMFSpecification_endTimeoutMs' - How long the bot should wait after the last DTMF character input before+-- assuming that the input has concluded.+--+-- 'deletionCharacter', 'dTMFSpecification_deletionCharacter' - The DTMF character that clears the accumulated DTMF digits and+-- immediately ends the input.+--+-- 'endCharacter', 'dTMFSpecification_endCharacter' - The DTMF character that immediately ends input. If the user does not+-- press this character, the input ends after the end timeout.+newDTMFSpecification ::+ -- | 'maxLength'+ Prelude.Natural ->+ -- | 'endTimeoutMs'+ Prelude.Natural ->+ -- | 'deletionCharacter'+ Prelude.Text ->+ -- | 'endCharacter'+ Prelude.Text ->+ DTMFSpecification+newDTMFSpecification+ pMaxLength_+ pEndTimeoutMs_+ pDeletionCharacter_+ pEndCharacter_ =+ DTMFSpecification'+ { maxLength = pMaxLength_,+ endTimeoutMs = pEndTimeoutMs_,+ deletionCharacter = pDeletionCharacter_,+ endCharacter = pEndCharacter_+ }++-- | The maximum number of DTMF digits allowed in an utterance.+dTMFSpecification_maxLength :: Lens.Lens' DTMFSpecification Prelude.Natural+dTMFSpecification_maxLength = Lens.lens (\DTMFSpecification' {maxLength} -> maxLength) (\s@DTMFSpecification' {} a -> s {maxLength = a} :: DTMFSpecification)++-- | How long the bot should wait after the last DTMF character input before+-- assuming that the input has concluded.+dTMFSpecification_endTimeoutMs :: Lens.Lens' DTMFSpecification Prelude.Natural+dTMFSpecification_endTimeoutMs = Lens.lens (\DTMFSpecification' {endTimeoutMs} -> endTimeoutMs) (\s@DTMFSpecification' {} a -> s {endTimeoutMs = a} :: DTMFSpecification)++-- | The DTMF character that clears the accumulated DTMF digits and+-- immediately ends the input.+dTMFSpecification_deletionCharacter :: Lens.Lens' DTMFSpecification Prelude.Text+dTMFSpecification_deletionCharacter = Lens.lens (\DTMFSpecification' {deletionCharacter} -> deletionCharacter) (\s@DTMFSpecification' {} a -> s {deletionCharacter = a} :: DTMFSpecification)++-- | The DTMF character that immediately ends input. If the user does not+-- press this character, the input ends after the end timeout.+dTMFSpecification_endCharacter :: Lens.Lens' DTMFSpecification Prelude.Text+dTMFSpecification_endCharacter = Lens.lens (\DTMFSpecification' {endCharacter} -> endCharacter) (\s@DTMFSpecification' {} a -> s {endCharacter = a} :: DTMFSpecification)++instance Data.FromJSON DTMFSpecification where+ parseJSON =+ Data.withObject+ "DTMFSpecification"+ ( \x ->+ DTMFSpecification'+ Prelude.<$> (x Data..: "maxLength")+ Prelude.<*> (x Data..: "endTimeoutMs")+ Prelude.<*> (x Data..: "deletionCharacter")+ Prelude.<*> (x Data..: "endCharacter")+ )++instance Prelude.Hashable DTMFSpecification where+ hashWithSalt _salt DTMFSpecification' {..} =+ _salt+ `Prelude.hashWithSalt` maxLength+ `Prelude.hashWithSalt` endTimeoutMs+ `Prelude.hashWithSalt` deletionCharacter+ `Prelude.hashWithSalt` endCharacter++instance Prelude.NFData DTMFSpecification where+ rnf DTMFSpecification' {..} =+ Prelude.rnf maxLength+ `Prelude.seq` Prelude.rnf endTimeoutMs+ `Prelude.seq` Prelude.rnf deletionCharacter+ `Prelude.seq` Prelude.rnf endCharacter++instance Data.ToJSON DTMFSpecification where+ toJSON DTMFSpecification' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("maxLength" Data..= maxLength),+ Prelude.Just ("endTimeoutMs" Data..= endTimeoutMs),+ Prelude.Just+ ("deletionCharacter" Data..= deletionCharacter),+ Prelude.Just ("endCharacter" Data..= endCharacter)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/DataPrivacy.hs view
@@ -0,0 +1,149 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.DataPrivacy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.DataPrivacy where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | By default, data stored by Amazon Lex is encrypted. The @DataPrivacy@+-- structure provides settings that determine how Amazon Lex handles+-- special cases of securing the data for your bot.+--+-- /See:/ 'newDataPrivacy' smart constructor.+data DataPrivacy = DataPrivacy'+ { -- | For each Amazon Lex bot created with the Amazon Lex Model Building+ -- Service, you must specify whether your use of Amazon Lex is related to a+ -- website, program, or other application that is directed or targeted, in+ -- whole or in part, to children under age 13 and subject to the+ -- Children\'s Online Privacy Protection Act (COPPA) by specifying @true@+ -- or @false@ in the @childDirected@ field. By specifying @true@ in the+ -- @childDirected@ field, you confirm that your use of Amazon Lex __is__+ -- related to a website, program, or other application that is directed or+ -- targeted, in whole or in part, to children under age 13 and subject to+ -- COPPA. By specifying @false@ in the @childDirected@ field, you confirm+ -- that your use of Amazon Lex __is not__ related to a website, program, or+ -- other application that is directed or targeted, in whole or in part, to+ -- children under age 13 and subject to COPPA. You may not specify a+ -- default value for the @childDirected@ field that does not accurately+ -- reflect whether your use of Amazon Lex is related to a website, program,+ -- or other application that is directed or targeted, in whole or in part,+ -- to children under age 13 and subject to COPPA. If your use of Amazon Lex+ -- relates to a website, program, or other application that is directed in+ -- whole or in part, to children under age 13, you must obtain any required+ -- verifiable parental consent under COPPA. For information regarding the+ -- use of Amazon Lex in connection with websites, programs, or other+ -- applications that are directed or targeted, in whole or in part, to+ -- children under age 13, see the+ -- <https://aws.amazon.com/lex/faqs#data-security Amazon Lex FAQ>.+ childDirected :: Prelude.Bool+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DataPrivacy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'childDirected', 'dataPrivacy_childDirected' - For each Amazon Lex bot created with the Amazon Lex Model Building+-- Service, you must specify whether your use of Amazon Lex is related to a+-- website, program, or other application that is directed or targeted, in+-- whole or in part, to children under age 13 and subject to the+-- Children\'s Online Privacy Protection Act (COPPA) by specifying @true@+-- or @false@ in the @childDirected@ field. By specifying @true@ in the+-- @childDirected@ field, you confirm that your use of Amazon Lex __is__+-- related to a website, program, or other application that is directed or+-- targeted, in whole or in part, to children under age 13 and subject to+-- COPPA. By specifying @false@ in the @childDirected@ field, you confirm+-- that your use of Amazon Lex __is not__ related to a website, program, or+-- other application that is directed or targeted, in whole or in part, to+-- children under age 13 and subject to COPPA. You may not specify a+-- default value for the @childDirected@ field that does not accurately+-- reflect whether your use of Amazon Lex is related to a website, program,+-- or other application that is directed or targeted, in whole or in part,+-- to children under age 13 and subject to COPPA. If your use of Amazon Lex+-- relates to a website, program, or other application that is directed in+-- whole or in part, to children under age 13, you must obtain any required+-- verifiable parental consent under COPPA. For information regarding the+-- use of Amazon Lex in connection with websites, programs, or other+-- applications that are directed or targeted, in whole or in part, to+-- children under age 13, see the+-- <https://aws.amazon.com/lex/faqs#data-security Amazon Lex FAQ>.+newDataPrivacy ::+ -- | 'childDirected'+ Prelude.Bool ->+ DataPrivacy+newDataPrivacy pChildDirected_ =+ DataPrivacy' {childDirected = pChildDirected_}++-- | For each Amazon Lex bot created with the Amazon Lex Model Building+-- Service, you must specify whether your use of Amazon Lex is related to a+-- website, program, or other application that is directed or targeted, in+-- whole or in part, to children under age 13 and subject to the+-- Children\'s Online Privacy Protection Act (COPPA) by specifying @true@+-- or @false@ in the @childDirected@ field. By specifying @true@ in the+-- @childDirected@ field, you confirm that your use of Amazon Lex __is__+-- related to a website, program, or other application that is directed or+-- targeted, in whole or in part, to children under age 13 and subject to+-- COPPA. By specifying @false@ in the @childDirected@ field, you confirm+-- that your use of Amazon Lex __is not__ related to a website, program, or+-- other application that is directed or targeted, in whole or in part, to+-- children under age 13 and subject to COPPA. You may not specify a+-- default value for the @childDirected@ field that does not accurately+-- reflect whether your use of Amazon Lex is related to a website, program,+-- or other application that is directed or targeted, in whole or in part,+-- to children under age 13 and subject to COPPA. If your use of Amazon Lex+-- relates to a website, program, or other application that is directed in+-- whole or in part, to children under age 13, you must obtain any required+-- verifiable parental consent under COPPA. For information regarding the+-- use of Amazon Lex in connection with websites, programs, or other+-- applications that are directed or targeted, in whole or in part, to+-- children under age 13, see the+-- <https://aws.amazon.com/lex/faqs#data-security Amazon Lex FAQ>.+dataPrivacy_childDirected :: Lens.Lens' DataPrivacy Prelude.Bool+dataPrivacy_childDirected = Lens.lens (\DataPrivacy' {childDirected} -> childDirected) (\s@DataPrivacy' {} a -> s {childDirected = a} :: DataPrivacy)++instance Data.FromJSON DataPrivacy where+ parseJSON =+ Data.withObject+ "DataPrivacy"+ ( \x ->+ DataPrivacy' Prelude.<$> (x Data..: "childDirected")+ )++instance Prelude.Hashable DataPrivacy where+ hashWithSalt _salt DataPrivacy' {..} =+ _salt `Prelude.hashWithSalt` childDirected++instance Prelude.NFData DataPrivacy where+ rnf DataPrivacy' {..} = Prelude.rnf childDirected++instance Data.ToJSON DataPrivacy where+ toJSON DataPrivacy' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("childDirected" Data..= childDirected)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/DateRangeFilter.hs view
@@ -0,0 +1,100 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.DateRangeFilter+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.DateRangeFilter where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The object used for specifying the data range that the customer wants+-- Amazon Lex to read through in the input transcripts.+--+-- /See:/ 'newDateRangeFilter' smart constructor.+data DateRangeFilter = DateRangeFilter'+ { -- | A timestamp indicating the start date for the date range filter.+ startDateTime :: Data.POSIX,+ -- | A timestamp indicating the end date for the date range filter.+ endDateTime :: Data.POSIX+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DateRangeFilter' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'startDateTime', 'dateRangeFilter_startDateTime' - A timestamp indicating the start date for the date range filter.+--+-- 'endDateTime', 'dateRangeFilter_endDateTime' - A timestamp indicating the end date for the date range filter.+newDateRangeFilter ::+ -- | 'startDateTime'+ Prelude.UTCTime ->+ -- | 'endDateTime'+ Prelude.UTCTime ->+ DateRangeFilter+newDateRangeFilter pStartDateTime_ pEndDateTime_ =+ DateRangeFilter'+ { startDateTime =+ Data._Time Lens.# pStartDateTime_,+ endDateTime = Data._Time Lens.# pEndDateTime_+ }++-- | A timestamp indicating the start date for the date range filter.+dateRangeFilter_startDateTime :: Lens.Lens' DateRangeFilter Prelude.UTCTime+dateRangeFilter_startDateTime = Lens.lens (\DateRangeFilter' {startDateTime} -> startDateTime) (\s@DateRangeFilter' {} a -> s {startDateTime = a} :: DateRangeFilter) Prelude.. Data._Time++-- | A timestamp indicating the end date for the date range filter.+dateRangeFilter_endDateTime :: Lens.Lens' DateRangeFilter Prelude.UTCTime+dateRangeFilter_endDateTime = Lens.lens (\DateRangeFilter' {endDateTime} -> endDateTime) (\s@DateRangeFilter' {} a -> s {endDateTime = a} :: DateRangeFilter) Prelude.. Data._Time++instance Data.FromJSON DateRangeFilter where+ parseJSON =+ Data.withObject+ "DateRangeFilter"+ ( \x ->+ DateRangeFilter'+ Prelude.<$> (x Data..: "startDateTime")+ Prelude.<*> (x Data..: "endDateTime")+ )++instance Prelude.Hashable DateRangeFilter where+ hashWithSalt _salt DateRangeFilter' {..} =+ _salt+ `Prelude.hashWithSalt` startDateTime+ `Prelude.hashWithSalt` endDateTime++instance Prelude.NFData DateRangeFilter where+ rnf DateRangeFilter' {..} =+ Prelude.rnf startDateTime+ `Prelude.seq` Prelude.rnf endDateTime++instance Data.ToJSON DateRangeFilter where+ toJSON DateRangeFilter' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("startDateTime" Data..= startDateTime),+ Prelude.Just ("endDateTime" Data..= endDateTime)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/DefaultConditionalBranch.hs view
@@ -0,0 +1,96 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.DefaultConditionalBranch+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.DefaultConditionalBranch where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.DialogState+import Amazonka.LexV2Models.Types.ResponseSpecification+import qualified Amazonka.Prelude as Prelude++-- | A set of actions that Amazon Lex should run if none of the other+-- conditions are met.+--+-- /See:/ 'newDefaultConditionalBranch' smart constructor.+data DefaultConditionalBranch = DefaultConditionalBranch'+ { -- | The next step in the conversation.+ nextStep :: Prelude.Maybe DialogState,+ response :: Prelude.Maybe ResponseSpecification+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DefaultConditionalBranch' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextStep', 'defaultConditionalBranch_nextStep' - The next step in the conversation.+--+-- 'response', 'defaultConditionalBranch_response' - Undocumented member.+newDefaultConditionalBranch ::+ DefaultConditionalBranch+newDefaultConditionalBranch =+ DefaultConditionalBranch'+ { nextStep =+ Prelude.Nothing,+ response = Prelude.Nothing+ }++-- | The next step in the conversation.+defaultConditionalBranch_nextStep :: Lens.Lens' DefaultConditionalBranch (Prelude.Maybe DialogState)+defaultConditionalBranch_nextStep = Lens.lens (\DefaultConditionalBranch' {nextStep} -> nextStep) (\s@DefaultConditionalBranch' {} a -> s {nextStep = a} :: DefaultConditionalBranch)++-- | Undocumented member.+defaultConditionalBranch_response :: Lens.Lens' DefaultConditionalBranch (Prelude.Maybe ResponseSpecification)+defaultConditionalBranch_response = Lens.lens (\DefaultConditionalBranch' {response} -> response) (\s@DefaultConditionalBranch' {} a -> s {response = a} :: DefaultConditionalBranch)++instance Data.FromJSON DefaultConditionalBranch where+ parseJSON =+ Data.withObject+ "DefaultConditionalBranch"+ ( \x ->+ DefaultConditionalBranch'+ Prelude.<$> (x Data..:? "nextStep")+ Prelude.<*> (x Data..:? "response")+ )++instance Prelude.Hashable DefaultConditionalBranch where+ hashWithSalt _salt DefaultConditionalBranch' {..} =+ _salt+ `Prelude.hashWithSalt` nextStep+ `Prelude.hashWithSalt` response++instance Prelude.NFData DefaultConditionalBranch where+ rnf DefaultConditionalBranch' {..} =+ Prelude.rnf nextStep+ `Prelude.seq` Prelude.rnf response++instance Data.ToJSON DefaultConditionalBranch where+ toJSON DefaultConditionalBranch' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("nextStep" Data..=) Prelude.<$> nextStep,+ ("response" Data..=) Prelude.<$> response+ ]+ )
+ gen/Amazonka/LexV2Models/Types/DialogAction.hs view
@@ -0,0 +1,114 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.DialogAction+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.DialogAction where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.DialogActionType+import qualified Amazonka.Prelude as Prelude++-- | Defines the action that the bot executes at runtime when the+-- conversation reaches this step.+--+-- /See:/ 'newDialogAction' smart constructor.+data DialogAction = DialogAction'+ { -- | If the dialog action is @ElicitSlot@, defines the slot to elicit from+ -- the user.+ slotToElicit :: Prelude.Maybe Prelude.Text,+ -- | When true the next message for the intent is not used.+ suppressNextMessage :: Prelude.Maybe Prelude.Bool,+ -- | The action that the bot should execute.+ type' :: DialogActionType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DialogAction' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'slotToElicit', 'dialogAction_slotToElicit' - If the dialog action is @ElicitSlot@, defines the slot to elicit from+-- the user.+--+-- 'suppressNextMessage', 'dialogAction_suppressNextMessage' - When true the next message for the intent is not used.+--+-- 'type'', 'dialogAction_type' - The action that the bot should execute.+newDialogAction ::+ -- | 'type''+ DialogActionType ->+ DialogAction+newDialogAction pType_ =+ DialogAction'+ { slotToElicit = Prelude.Nothing,+ suppressNextMessage = Prelude.Nothing,+ type' = pType_+ }++-- | If the dialog action is @ElicitSlot@, defines the slot to elicit from+-- the user.+dialogAction_slotToElicit :: Lens.Lens' DialogAction (Prelude.Maybe Prelude.Text)+dialogAction_slotToElicit = Lens.lens (\DialogAction' {slotToElicit} -> slotToElicit) (\s@DialogAction' {} a -> s {slotToElicit = a} :: DialogAction)++-- | When true the next message for the intent is not used.+dialogAction_suppressNextMessage :: Lens.Lens' DialogAction (Prelude.Maybe Prelude.Bool)+dialogAction_suppressNextMessage = Lens.lens (\DialogAction' {suppressNextMessage} -> suppressNextMessage) (\s@DialogAction' {} a -> s {suppressNextMessage = a} :: DialogAction)++-- | The action that the bot should execute.+dialogAction_type :: Lens.Lens' DialogAction DialogActionType+dialogAction_type = Lens.lens (\DialogAction' {type'} -> type') (\s@DialogAction' {} a -> s {type' = a} :: DialogAction)++instance Data.FromJSON DialogAction where+ parseJSON =+ Data.withObject+ "DialogAction"+ ( \x ->+ DialogAction'+ Prelude.<$> (x Data..:? "slotToElicit")+ Prelude.<*> (x Data..:? "suppressNextMessage")+ Prelude.<*> (x Data..: "type")+ )++instance Prelude.Hashable DialogAction where+ hashWithSalt _salt DialogAction' {..} =+ _salt+ `Prelude.hashWithSalt` slotToElicit+ `Prelude.hashWithSalt` suppressNextMessage+ `Prelude.hashWithSalt` type'++instance Prelude.NFData DialogAction where+ rnf DialogAction' {..} =+ Prelude.rnf slotToElicit+ `Prelude.seq` Prelude.rnf suppressNextMessage+ `Prelude.seq` Prelude.rnf type'++instance Data.ToJSON DialogAction where+ toJSON DialogAction' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("slotToElicit" Data..=) Prelude.<$> slotToElicit,+ ("suppressNextMessage" Data..=)+ Prelude.<$> suppressNextMessage,+ Prelude.Just ("type" Data..= type')+ ]+ )
+ gen/Amazonka/LexV2Models/Types/DialogActionType.hs view
@@ -0,0 +1,106 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.DialogActionType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.DialogActionType+ ( DialogActionType+ ( ..,+ DialogActionType_CloseIntent,+ DialogActionType_ConfirmIntent,+ DialogActionType_ElicitIntent,+ DialogActionType_ElicitSlot,+ DialogActionType_EndConversation,+ DialogActionType_EvaluateConditional,+ DialogActionType_FulfillIntent,+ DialogActionType_InvokeDialogCodeHook,+ DialogActionType_StartIntent+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype DialogActionType = DialogActionType'+ { fromDialogActionType ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern DialogActionType_CloseIntent :: DialogActionType+pattern DialogActionType_CloseIntent = DialogActionType' "CloseIntent"++pattern DialogActionType_ConfirmIntent :: DialogActionType+pattern DialogActionType_ConfirmIntent = DialogActionType' "ConfirmIntent"++pattern DialogActionType_ElicitIntent :: DialogActionType+pattern DialogActionType_ElicitIntent = DialogActionType' "ElicitIntent"++pattern DialogActionType_ElicitSlot :: DialogActionType+pattern DialogActionType_ElicitSlot = DialogActionType' "ElicitSlot"++pattern DialogActionType_EndConversation :: DialogActionType+pattern DialogActionType_EndConversation = DialogActionType' "EndConversation"++pattern DialogActionType_EvaluateConditional :: DialogActionType+pattern DialogActionType_EvaluateConditional = DialogActionType' "EvaluateConditional"++pattern DialogActionType_FulfillIntent :: DialogActionType+pattern DialogActionType_FulfillIntent = DialogActionType' "FulfillIntent"++pattern DialogActionType_InvokeDialogCodeHook :: DialogActionType+pattern DialogActionType_InvokeDialogCodeHook = DialogActionType' "InvokeDialogCodeHook"++pattern DialogActionType_StartIntent :: DialogActionType+pattern DialogActionType_StartIntent = DialogActionType' "StartIntent"++{-# COMPLETE+ DialogActionType_CloseIntent,+ DialogActionType_ConfirmIntent,+ DialogActionType_ElicitIntent,+ DialogActionType_ElicitSlot,+ DialogActionType_EndConversation,+ DialogActionType_EvaluateConditional,+ DialogActionType_FulfillIntent,+ DialogActionType_InvokeDialogCodeHook,+ DialogActionType_StartIntent,+ DialogActionType'+ #-}
+ gen/Amazonka/LexV2Models/Types/DialogCodeHookInvocationSetting.hs view
@@ -0,0 +1,160 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.DialogCodeHookInvocationSetting+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.DialogCodeHookInvocationSetting where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.PostDialogCodeHookInvocationSpecification+import qualified Amazonka.Prelude as Prelude++-- | Settings that specify the dialog code hook that is called by Amazon Lex+-- at a step of the conversation.+--+-- /See:/ 'newDialogCodeHookInvocationSetting' smart constructor.+data DialogCodeHookInvocationSetting = DialogCodeHookInvocationSetting'+ { -- | A label that indicates the dialog step from which the dialog code hook+ -- is happening.+ invocationLabel :: Prelude.Maybe Prelude.Text,+ -- | Indicates whether a Lambda function should be invoked for the dialog.+ enableCodeHookInvocation :: Prelude.Bool,+ -- | Determines whether a dialog code hook is used when the intent is+ -- activated.+ active :: Prelude.Bool,+ -- | Contains the responses and actions that Amazon Lex takes after the+ -- Lambda function is complete.+ postCodeHookSpecification :: PostDialogCodeHookInvocationSpecification+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DialogCodeHookInvocationSetting' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'invocationLabel', 'dialogCodeHookInvocationSetting_invocationLabel' - A label that indicates the dialog step from which the dialog code hook+-- is happening.+--+-- 'enableCodeHookInvocation', 'dialogCodeHookInvocationSetting_enableCodeHookInvocation' - Indicates whether a Lambda function should be invoked for the dialog.+--+-- 'active', 'dialogCodeHookInvocationSetting_active' - Determines whether a dialog code hook is used when the intent is+-- activated.+--+-- 'postCodeHookSpecification', 'dialogCodeHookInvocationSetting_postCodeHookSpecification' - Contains the responses and actions that Amazon Lex takes after the+-- Lambda function is complete.+newDialogCodeHookInvocationSetting ::+ -- | 'enableCodeHookInvocation'+ Prelude.Bool ->+ -- | 'active'+ Prelude.Bool ->+ -- | 'postCodeHookSpecification'+ PostDialogCodeHookInvocationSpecification ->+ DialogCodeHookInvocationSetting+newDialogCodeHookInvocationSetting+ pEnableCodeHookInvocation_+ pActive_+ pPostCodeHookSpecification_ =+ DialogCodeHookInvocationSetting'+ { invocationLabel =+ Prelude.Nothing,+ enableCodeHookInvocation =+ pEnableCodeHookInvocation_,+ active = pActive_,+ postCodeHookSpecification =+ pPostCodeHookSpecification_+ }++-- | A label that indicates the dialog step from which the dialog code hook+-- is happening.+dialogCodeHookInvocationSetting_invocationLabel :: Lens.Lens' DialogCodeHookInvocationSetting (Prelude.Maybe Prelude.Text)+dialogCodeHookInvocationSetting_invocationLabel = Lens.lens (\DialogCodeHookInvocationSetting' {invocationLabel} -> invocationLabel) (\s@DialogCodeHookInvocationSetting' {} a -> s {invocationLabel = a} :: DialogCodeHookInvocationSetting)++-- | Indicates whether a Lambda function should be invoked for the dialog.+dialogCodeHookInvocationSetting_enableCodeHookInvocation :: Lens.Lens' DialogCodeHookInvocationSetting Prelude.Bool+dialogCodeHookInvocationSetting_enableCodeHookInvocation = Lens.lens (\DialogCodeHookInvocationSetting' {enableCodeHookInvocation} -> enableCodeHookInvocation) (\s@DialogCodeHookInvocationSetting' {} a -> s {enableCodeHookInvocation = a} :: DialogCodeHookInvocationSetting)++-- | Determines whether a dialog code hook is used when the intent is+-- activated.+dialogCodeHookInvocationSetting_active :: Lens.Lens' DialogCodeHookInvocationSetting Prelude.Bool+dialogCodeHookInvocationSetting_active = Lens.lens (\DialogCodeHookInvocationSetting' {active} -> active) (\s@DialogCodeHookInvocationSetting' {} a -> s {active = a} :: DialogCodeHookInvocationSetting)++-- | Contains the responses and actions that Amazon Lex takes after the+-- Lambda function is complete.+dialogCodeHookInvocationSetting_postCodeHookSpecification :: Lens.Lens' DialogCodeHookInvocationSetting PostDialogCodeHookInvocationSpecification+dialogCodeHookInvocationSetting_postCodeHookSpecification = Lens.lens (\DialogCodeHookInvocationSetting' {postCodeHookSpecification} -> postCodeHookSpecification) (\s@DialogCodeHookInvocationSetting' {} a -> s {postCodeHookSpecification = a} :: DialogCodeHookInvocationSetting)++instance+ Data.FromJSON+ DialogCodeHookInvocationSetting+ where+ parseJSON =+ Data.withObject+ "DialogCodeHookInvocationSetting"+ ( \x ->+ DialogCodeHookInvocationSetting'+ Prelude.<$> (x Data..:? "invocationLabel")+ Prelude.<*> (x Data..: "enableCodeHookInvocation")+ Prelude.<*> (x Data..: "active")+ Prelude.<*> (x Data..: "postCodeHookSpecification")+ )++instance+ Prelude.Hashable+ DialogCodeHookInvocationSetting+ where+ hashWithSalt+ _salt+ DialogCodeHookInvocationSetting' {..} =+ _salt+ `Prelude.hashWithSalt` invocationLabel+ `Prelude.hashWithSalt` enableCodeHookInvocation+ `Prelude.hashWithSalt` active+ `Prelude.hashWithSalt` postCodeHookSpecification++instance+ Prelude.NFData+ DialogCodeHookInvocationSetting+ where+ rnf DialogCodeHookInvocationSetting' {..} =+ Prelude.rnf invocationLabel+ `Prelude.seq` Prelude.rnf enableCodeHookInvocation+ `Prelude.seq` Prelude.rnf active+ `Prelude.seq` Prelude.rnf postCodeHookSpecification++instance Data.ToJSON DialogCodeHookInvocationSetting where+ toJSON DialogCodeHookInvocationSetting' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("invocationLabel" Data..=)+ Prelude.<$> invocationLabel,+ Prelude.Just+ ( "enableCodeHookInvocation"+ Data..= enableCodeHookInvocation+ ),+ Prelude.Just ("active" Data..= active),+ Prelude.Just+ ( "postCodeHookSpecification"+ Data..= postCodeHookSpecification+ )+ ]+ )
+ gen/Amazonka/LexV2Models/Types/DialogCodeHookSettings.hs view
@@ -0,0 +1,78 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.DialogCodeHookSettings+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.DialogCodeHookSettings where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Settings that determine the Lambda function that Amazon Lex uses for+-- processing user responses.+--+-- /See:/ 'newDialogCodeHookSettings' smart constructor.+data DialogCodeHookSettings = DialogCodeHookSettings'+ { -- | Enables the dialog code hook so that it processes user requests.+ enabled :: Prelude.Bool+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DialogCodeHookSettings' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'enabled', 'dialogCodeHookSettings_enabled' - Enables the dialog code hook so that it processes user requests.+newDialogCodeHookSettings ::+ -- | 'enabled'+ Prelude.Bool ->+ DialogCodeHookSettings+newDialogCodeHookSettings pEnabled_ =+ DialogCodeHookSettings' {enabled = pEnabled_}++-- | Enables the dialog code hook so that it processes user requests.+dialogCodeHookSettings_enabled :: Lens.Lens' DialogCodeHookSettings Prelude.Bool+dialogCodeHookSettings_enabled = Lens.lens (\DialogCodeHookSettings' {enabled} -> enabled) (\s@DialogCodeHookSettings' {} a -> s {enabled = a} :: DialogCodeHookSettings)++instance Data.FromJSON DialogCodeHookSettings where+ parseJSON =+ Data.withObject+ "DialogCodeHookSettings"+ ( \x ->+ DialogCodeHookSettings'+ Prelude.<$> (x Data..: "enabled")+ )++instance Prelude.Hashable DialogCodeHookSettings where+ hashWithSalt _salt DialogCodeHookSettings' {..} =+ _salt `Prelude.hashWithSalt` enabled++instance Prelude.NFData DialogCodeHookSettings where+ rnf DialogCodeHookSettings' {..} = Prelude.rnf enabled++instance Data.ToJSON DialogCodeHookSettings where+ toJSON DialogCodeHookSettings' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("enabled" Data..= enabled)]+ )
+ gen/Amazonka/LexV2Models/Types/DialogState.hs view
@@ -0,0 +1,116 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.DialogState+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.DialogState where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.DialogAction+import Amazonka.LexV2Models.Types.IntentOverride+import qualified Amazonka.Prelude as Prelude++-- | The current state of the conversation with the user.+--+-- /See:/ 'newDialogState' smart constructor.+data DialogState = DialogState'+ { dialogAction :: Prelude.Maybe DialogAction,+ intent :: Prelude.Maybe IntentOverride,+ -- | Map of key\/value pairs representing session-specific context+ -- information. It contains application information passed between Amazon+ -- Lex and a client application.+ sessionAttributes :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text)+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DialogState' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dialogAction', 'dialogState_dialogAction' - Undocumented member.+--+-- 'intent', 'dialogState_intent' - Undocumented member.+--+-- 'sessionAttributes', 'dialogState_sessionAttributes' - Map of key\/value pairs representing session-specific context+-- information. It contains application information passed between Amazon+-- Lex and a client application.+newDialogState ::+ DialogState+newDialogState =+ DialogState'+ { dialogAction = Prelude.Nothing,+ intent = Prelude.Nothing,+ sessionAttributes = Prelude.Nothing+ }++-- | Undocumented member.+dialogState_dialogAction :: Lens.Lens' DialogState (Prelude.Maybe DialogAction)+dialogState_dialogAction = Lens.lens (\DialogState' {dialogAction} -> dialogAction) (\s@DialogState' {} a -> s {dialogAction = a} :: DialogState)++-- | Undocumented member.+dialogState_intent :: Lens.Lens' DialogState (Prelude.Maybe IntentOverride)+dialogState_intent = Lens.lens (\DialogState' {intent} -> intent) (\s@DialogState' {} a -> s {intent = a} :: DialogState)++-- | Map of key\/value pairs representing session-specific context+-- information. It contains application information passed between Amazon+-- Lex and a client application.+dialogState_sessionAttributes :: Lens.Lens' DialogState (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+dialogState_sessionAttributes = Lens.lens (\DialogState' {sessionAttributes} -> sessionAttributes) (\s@DialogState' {} a -> s {sessionAttributes = a} :: DialogState) Prelude.. Lens.mapping Lens.coerced++instance Data.FromJSON DialogState where+ parseJSON =+ Data.withObject+ "DialogState"+ ( \x ->+ DialogState'+ Prelude.<$> (x Data..:? "dialogAction")+ Prelude.<*> (x Data..:? "intent")+ Prelude.<*> ( x+ Data..:? "sessionAttributes"+ Data..!= Prelude.mempty+ )+ )++instance Prelude.Hashable DialogState where+ hashWithSalt _salt DialogState' {..} =+ _salt+ `Prelude.hashWithSalt` dialogAction+ `Prelude.hashWithSalt` intent+ `Prelude.hashWithSalt` sessionAttributes++instance Prelude.NFData DialogState where+ rnf DialogState' {..} =+ Prelude.rnf dialogAction+ `Prelude.seq` Prelude.rnf intent+ `Prelude.seq` Prelude.rnf sessionAttributes++instance Data.ToJSON DialogState where+ toJSON DialogState' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("dialogAction" Data..=) Prelude.<$> dialogAction,+ ("intent" Data..=) Prelude.<$> intent,+ ("sessionAttributes" Data..=)+ Prelude.<$> sessionAttributes+ ]+ )
+ gen/Amazonka/LexV2Models/Types/Effect.hs view
@@ -0,0 +1,68 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.Effect+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.Effect+ ( Effect+ ( ..,+ Effect_Allow,+ Effect_Deny+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype Effect = Effect' {fromEffect :: Data.Text}+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern Effect_Allow :: Effect+pattern Effect_Allow = Effect' "Allow"++pattern Effect_Deny :: Effect+pattern Effect_Deny = Effect' "Deny"++{-# COMPLETE+ Effect_Allow,+ Effect_Deny,+ Effect'+ #-}
+ gen/Amazonka/LexV2Models/Types/ElicitationCodeHookInvocationSetting.hs view
@@ -0,0 +1,120 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.ElicitationCodeHookInvocationSetting+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.ElicitationCodeHookInvocationSetting where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Settings that specify the dialog code hook that is called by Amazon Lex+-- between eliciting slot values.+--+-- /See:/ 'newElicitationCodeHookInvocationSetting' smart constructor.+data ElicitationCodeHookInvocationSetting = ElicitationCodeHookInvocationSetting'+ { -- | A label that indicates the dialog step from which the dialog code hook+ -- is happening.+ invocationLabel :: Prelude.Maybe Prelude.Text,+ -- | Indicates whether a Lambda function should be invoked for the dialog.+ enableCodeHookInvocation :: Prelude.Bool+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ElicitationCodeHookInvocationSetting' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'invocationLabel', 'elicitationCodeHookInvocationSetting_invocationLabel' - A label that indicates the dialog step from which the dialog code hook+-- is happening.+--+-- 'enableCodeHookInvocation', 'elicitationCodeHookInvocationSetting_enableCodeHookInvocation' - Indicates whether a Lambda function should be invoked for the dialog.+newElicitationCodeHookInvocationSetting ::+ -- | 'enableCodeHookInvocation'+ Prelude.Bool ->+ ElicitationCodeHookInvocationSetting+newElicitationCodeHookInvocationSetting+ pEnableCodeHookInvocation_ =+ ElicitationCodeHookInvocationSetting'+ { invocationLabel =+ Prelude.Nothing,+ enableCodeHookInvocation =+ pEnableCodeHookInvocation_+ }++-- | A label that indicates the dialog step from which the dialog code hook+-- is happening.+elicitationCodeHookInvocationSetting_invocationLabel :: Lens.Lens' ElicitationCodeHookInvocationSetting (Prelude.Maybe Prelude.Text)+elicitationCodeHookInvocationSetting_invocationLabel = Lens.lens (\ElicitationCodeHookInvocationSetting' {invocationLabel} -> invocationLabel) (\s@ElicitationCodeHookInvocationSetting' {} a -> s {invocationLabel = a} :: ElicitationCodeHookInvocationSetting)++-- | Indicates whether a Lambda function should be invoked for the dialog.+elicitationCodeHookInvocationSetting_enableCodeHookInvocation :: Lens.Lens' ElicitationCodeHookInvocationSetting Prelude.Bool+elicitationCodeHookInvocationSetting_enableCodeHookInvocation = Lens.lens (\ElicitationCodeHookInvocationSetting' {enableCodeHookInvocation} -> enableCodeHookInvocation) (\s@ElicitationCodeHookInvocationSetting' {} a -> s {enableCodeHookInvocation = a} :: ElicitationCodeHookInvocationSetting)++instance+ Data.FromJSON+ ElicitationCodeHookInvocationSetting+ where+ parseJSON =+ Data.withObject+ "ElicitationCodeHookInvocationSetting"+ ( \x ->+ ElicitationCodeHookInvocationSetting'+ Prelude.<$> (x Data..:? "invocationLabel")+ Prelude.<*> (x Data..: "enableCodeHookInvocation")+ )++instance+ Prelude.Hashable+ ElicitationCodeHookInvocationSetting+ where+ hashWithSalt+ _salt+ ElicitationCodeHookInvocationSetting' {..} =+ _salt+ `Prelude.hashWithSalt` invocationLabel+ `Prelude.hashWithSalt` enableCodeHookInvocation++instance+ Prelude.NFData+ ElicitationCodeHookInvocationSetting+ where+ rnf ElicitationCodeHookInvocationSetting' {..} =+ Prelude.rnf invocationLabel+ `Prelude.seq` Prelude.rnf enableCodeHookInvocation++instance+ Data.ToJSON+ ElicitationCodeHookInvocationSetting+ where+ toJSON ElicitationCodeHookInvocationSetting' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("invocationLabel" Data..=)+ Prelude.<$> invocationLabel,+ Prelude.Just+ ( "enableCodeHookInvocation"+ Data..= enableCodeHookInvocation+ )+ ]+ )
+ gen/Amazonka/LexV2Models/Types/EncryptionSetting.hs view
@@ -0,0 +1,114 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.EncryptionSetting+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.EncryptionSetting where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The object representing the passwords that were used to encrypt the data+-- related to the bot recommendation, as well as the KMS key ARN used to+-- encrypt the associated metadata.+--+-- /See:/ 'newEncryptionSetting' smart constructor.+data EncryptionSetting = EncryptionSetting'+ { -- | The password used to encrypt the associated transcript file.+ associatedTranscriptsPassword :: Prelude.Maybe (Data.Sensitive Prelude.Text),+ -- | The password used to encrypt the recommended bot recommendation file.+ botLocaleExportPassword :: Prelude.Maybe (Data.Sensitive Prelude.Text),+ -- | The KMS key ARN used to encrypt the metadata associated with the bot+ -- recommendation.+ kmsKeyArn :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'EncryptionSetting' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'associatedTranscriptsPassword', 'encryptionSetting_associatedTranscriptsPassword' - The password used to encrypt the associated transcript file.+--+-- 'botLocaleExportPassword', 'encryptionSetting_botLocaleExportPassword' - The password used to encrypt the recommended bot recommendation file.+--+-- 'kmsKeyArn', 'encryptionSetting_kmsKeyArn' - The KMS key ARN used to encrypt the metadata associated with the bot+-- recommendation.+newEncryptionSetting ::+ EncryptionSetting+newEncryptionSetting =+ EncryptionSetting'+ { associatedTranscriptsPassword =+ Prelude.Nothing,+ botLocaleExportPassword = Prelude.Nothing,+ kmsKeyArn = Prelude.Nothing+ }++-- | The password used to encrypt the associated transcript file.+encryptionSetting_associatedTranscriptsPassword :: Lens.Lens' EncryptionSetting (Prelude.Maybe Prelude.Text)+encryptionSetting_associatedTranscriptsPassword = Lens.lens (\EncryptionSetting' {associatedTranscriptsPassword} -> associatedTranscriptsPassword) (\s@EncryptionSetting' {} a -> s {associatedTranscriptsPassword = a} :: EncryptionSetting) Prelude.. Lens.mapping Data._Sensitive++-- | The password used to encrypt the recommended bot recommendation file.+encryptionSetting_botLocaleExportPassword :: Lens.Lens' EncryptionSetting (Prelude.Maybe Prelude.Text)+encryptionSetting_botLocaleExportPassword = Lens.lens (\EncryptionSetting' {botLocaleExportPassword} -> botLocaleExportPassword) (\s@EncryptionSetting' {} a -> s {botLocaleExportPassword = a} :: EncryptionSetting) Prelude.. Lens.mapping Data._Sensitive++-- | The KMS key ARN used to encrypt the metadata associated with the bot+-- recommendation.+encryptionSetting_kmsKeyArn :: Lens.Lens' EncryptionSetting (Prelude.Maybe Prelude.Text)+encryptionSetting_kmsKeyArn = Lens.lens (\EncryptionSetting' {kmsKeyArn} -> kmsKeyArn) (\s@EncryptionSetting' {} a -> s {kmsKeyArn = a} :: EncryptionSetting)++instance Data.FromJSON EncryptionSetting where+ parseJSON =+ Data.withObject+ "EncryptionSetting"+ ( \x ->+ EncryptionSetting'+ Prelude.<$> (x Data..:? "associatedTranscriptsPassword")+ Prelude.<*> (x Data..:? "botLocaleExportPassword")+ Prelude.<*> (x Data..:? "kmsKeyArn")+ )++instance Prelude.Hashable EncryptionSetting where+ hashWithSalt _salt EncryptionSetting' {..} =+ _salt+ `Prelude.hashWithSalt` associatedTranscriptsPassword+ `Prelude.hashWithSalt` botLocaleExportPassword+ `Prelude.hashWithSalt` kmsKeyArn++instance Prelude.NFData EncryptionSetting where+ rnf EncryptionSetting' {..} =+ Prelude.rnf associatedTranscriptsPassword+ `Prelude.seq` Prelude.rnf botLocaleExportPassword+ `Prelude.seq` Prelude.rnf kmsKeyArn++instance Data.ToJSON EncryptionSetting where+ toJSON EncryptionSetting' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("associatedTranscriptsPassword" Data..=)+ Prelude.<$> associatedTranscriptsPassword,+ ("botLocaleExportPassword" Data..=)+ Prelude.<$> botLocaleExportPassword,+ ("kmsKeyArn" Data..=) Prelude.<$> kmsKeyArn+ ]+ )
+ gen/Amazonka/LexV2Models/Types/ErrorCode.hs view
@@ -0,0 +1,81 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.ErrorCode+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.ErrorCode+ ( ErrorCode+ ( ..,+ ErrorCode_DUPLICATE_INPUT,+ ErrorCode_INTERNAL_SERVER_FAILURE,+ ErrorCode_RESOURCE_ALREADY_EXISTS,+ ErrorCode_RESOURCE_DOES_NOT_EXIST+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ErrorCode = ErrorCode'+ { fromErrorCode ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern ErrorCode_DUPLICATE_INPUT :: ErrorCode+pattern ErrorCode_DUPLICATE_INPUT = ErrorCode' "DUPLICATE_INPUT"++pattern ErrorCode_INTERNAL_SERVER_FAILURE :: ErrorCode+pattern ErrorCode_INTERNAL_SERVER_FAILURE = ErrorCode' "INTERNAL_SERVER_FAILURE"++pattern ErrorCode_RESOURCE_ALREADY_EXISTS :: ErrorCode+pattern ErrorCode_RESOURCE_ALREADY_EXISTS = ErrorCode' "RESOURCE_ALREADY_EXISTS"++pattern ErrorCode_RESOURCE_DOES_NOT_EXIST :: ErrorCode+pattern ErrorCode_RESOURCE_DOES_NOT_EXIST = ErrorCode' "RESOURCE_DOES_NOT_EXIST"++{-# COMPLETE+ ErrorCode_DUPLICATE_INPUT,+ ErrorCode_INTERNAL_SERVER_FAILURE,+ ErrorCode_RESOURCE_ALREADY_EXISTS,+ ErrorCode_RESOURCE_DOES_NOT_EXIST,+ ErrorCode'+ #-}
+ gen/Amazonka/LexV2Models/Types/ExportFilter.hs view
@@ -0,0 +1,117 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.ExportFilter+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.ExportFilter where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.ExportFilterName+import Amazonka.LexV2Models.Types.ExportFilterOperator+import qualified Amazonka.Prelude as Prelude++-- | Filters the response form the+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_ListExports.html ListExports>+-- operation+--+-- /See:/ 'newExportFilter' smart constructor.+data ExportFilter = ExportFilter'+ { -- | The name of the field to use for filtering.+ name :: ExportFilterName,+ -- | The values to use to filter the response. The values must be @Bot@,+ -- @BotLocale@, or @CustomVocabulary@.+ values :: Prelude.NonEmpty Prelude.Text,+ -- | The operator to use for the filter. Specify EQ when the @ListExports@+ -- operation should return only resource types that equal the specified+ -- value. Specify CO when the @ListExports@ operation should return+ -- resource types that contain the specified value.+ operator :: ExportFilterOperator+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ExportFilter' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'name', 'exportFilter_name' - The name of the field to use for filtering.+--+-- 'values', 'exportFilter_values' - The values to use to filter the response. The values must be @Bot@,+-- @BotLocale@, or @CustomVocabulary@.+--+-- 'operator', 'exportFilter_operator' - The operator to use for the filter. Specify EQ when the @ListExports@+-- operation should return only resource types that equal the specified+-- value. Specify CO when the @ListExports@ operation should return+-- resource types that contain the specified value.+newExportFilter ::+ -- | 'name'+ ExportFilterName ->+ -- | 'values'+ Prelude.NonEmpty Prelude.Text ->+ -- | 'operator'+ ExportFilterOperator ->+ ExportFilter+newExportFilter pName_ pValues_ pOperator_ =+ ExportFilter'+ { name = pName_,+ values = Lens.coerced Lens.# pValues_,+ operator = pOperator_+ }++-- | The name of the field to use for filtering.+exportFilter_name :: Lens.Lens' ExportFilter ExportFilterName+exportFilter_name = Lens.lens (\ExportFilter' {name} -> name) (\s@ExportFilter' {} a -> s {name = a} :: ExportFilter)++-- | The values to use to filter the response. The values must be @Bot@,+-- @BotLocale@, or @CustomVocabulary@.+exportFilter_values :: Lens.Lens' ExportFilter (Prelude.NonEmpty Prelude.Text)+exportFilter_values = Lens.lens (\ExportFilter' {values} -> values) (\s@ExportFilter' {} a -> s {values = a} :: ExportFilter) Prelude.. Lens.coerced++-- | The operator to use for the filter. Specify EQ when the @ListExports@+-- operation should return only resource types that equal the specified+-- value. Specify CO when the @ListExports@ operation should return+-- resource types that contain the specified value.+exportFilter_operator :: Lens.Lens' ExportFilter ExportFilterOperator+exportFilter_operator = Lens.lens (\ExportFilter' {operator} -> operator) (\s@ExportFilter' {} a -> s {operator = a} :: ExportFilter)++instance Prelude.Hashable ExportFilter where+ hashWithSalt _salt ExportFilter' {..} =+ _salt+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` values+ `Prelude.hashWithSalt` operator++instance Prelude.NFData ExportFilter where+ rnf ExportFilter' {..} =+ Prelude.rnf name+ `Prelude.seq` Prelude.rnf values+ `Prelude.seq` Prelude.rnf operator++instance Data.ToJSON ExportFilter where+ toJSON ExportFilter' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("name" Data..= name),+ Prelude.Just ("values" Data..= values),+ Prelude.Just ("operator" Data..= operator)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/ExportFilterName.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.ExportFilterName+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.ExportFilterName+ ( ExportFilterName+ ( ..,+ ExportFilterName_ExportResourceType+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ExportFilterName = ExportFilterName'+ { fromExportFilterName ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern ExportFilterName_ExportResourceType :: ExportFilterName+pattern ExportFilterName_ExportResourceType = ExportFilterName' "ExportResourceType"++{-# COMPLETE+ ExportFilterName_ExportResourceType,+ ExportFilterName'+ #-}
+ gen/Amazonka/LexV2Models/Types/ExportFilterOperator.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.ExportFilterOperator+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.ExportFilterOperator+ ( ExportFilterOperator+ ( ..,+ ExportFilterOperator_CO,+ ExportFilterOperator_EQ+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ExportFilterOperator = ExportFilterOperator'+ { fromExportFilterOperator ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern ExportFilterOperator_CO :: ExportFilterOperator+pattern ExportFilterOperator_CO = ExportFilterOperator' "CO"++pattern ExportFilterOperator_EQ :: ExportFilterOperator+pattern ExportFilterOperator_EQ = ExportFilterOperator' "EQ"++{-# COMPLETE+ ExportFilterOperator_CO,+ ExportFilterOperator_EQ,+ ExportFilterOperator'+ #-}
+ gen/Amazonka/LexV2Models/Types/ExportResourceSpecification.hs view
@@ -0,0 +1,116 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.ExportResourceSpecification+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.ExportResourceSpecification where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.BotExportSpecification+import Amazonka.LexV2Models.Types.BotLocaleExportSpecification+import Amazonka.LexV2Models.Types.CustomVocabularyExportSpecification+import qualified Amazonka.Prelude as Prelude++-- | Provides information about the bot or bot locale that you want to+-- export. You can specify the @botExportSpecification@ or the+-- @botLocaleExportSpecification@, but not both.+--+-- /See:/ 'newExportResourceSpecification' smart constructor.+data ExportResourceSpecification = ExportResourceSpecification'+ { -- | Parameters for exporting a bot.+ botExportSpecification :: Prelude.Maybe BotExportSpecification,+ -- | Parameters for exporting a bot locale.+ botLocaleExportSpecification :: Prelude.Maybe BotLocaleExportSpecification,+ -- | The parameters required to export a custom vocabulary.+ customVocabularyExportSpecification :: Prelude.Maybe CustomVocabularyExportSpecification+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ExportResourceSpecification' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botExportSpecification', 'exportResourceSpecification_botExportSpecification' - Parameters for exporting a bot.+--+-- 'botLocaleExportSpecification', 'exportResourceSpecification_botLocaleExportSpecification' - Parameters for exporting a bot locale.+--+-- 'customVocabularyExportSpecification', 'exportResourceSpecification_customVocabularyExportSpecification' - The parameters required to export a custom vocabulary.+newExportResourceSpecification ::+ ExportResourceSpecification+newExportResourceSpecification =+ ExportResourceSpecification'+ { botExportSpecification =+ Prelude.Nothing,+ botLocaleExportSpecification = Prelude.Nothing,+ customVocabularyExportSpecification =+ Prelude.Nothing+ }++-- | Parameters for exporting a bot.+exportResourceSpecification_botExportSpecification :: Lens.Lens' ExportResourceSpecification (Prelude.Maybe BotExportSpecification)+exportResourceSpecification_botExportSpecification = Lens.lens (\ExportResourceSpecification' {botExportSpecification} -> botExportSpecification) (\s@ExportResourceSpecification' {} a -> s {botExportSpecification = a} :: ExportResourceSpecification)++-- | Parameters for exporting a bot locale.+exportResourceSpecification_botLocaleExportSpecification :: Lens.Lens' ExportResourceSpecification (Prelude.Maybe BotLocaleExportSpecification)+exportResourceSpecification_botLocaleExportSpecification = Lens.lens (\ExportResourceSpecification' {botLocaleExportSpecification} -> botLocaleExportSpecification) (\s@ExportResourceSpecification' {} a -> s {botLocaleExportSpecification = a} :: ExportResourceSpecification)++-- | The parameters required to export a custom vocabulary.+exportResourceSpecification_customVocabularyExportSpecification :: Lens.Lens' ExportResourceSpecification (Prelude.Maybe CustomVocabularyExportSpecification)+exportResourceSpecification_customVocabularyExportSpecification = Lens.lens (\ExportResourceSpecification' {customVocabularyExportSpecification} -> customVocabularyExportSpecification) (\s@ExportResourceSpecification' {} a -> s {customVocabularyExportSpecification = a} :: ExportResourceSpecification)++instance Data.FromJSON ExportResourceSpecification where+ parseJSON =+ Data.withObject+ "ExportResourceSpecification"+ ( \x ->+ ExportResourceSpecification'+ Prelude.<$> (x Data..:? "botExportSpecification")+ Prelude.<*> (x Data..:? "botLocaleExportSpecification")+ Prelude.<*> (x Data..:? "customVocabularyExportSpecification")+ )++instance Prelude.Hashable ExportResourceSpecification where+ hashWithSalt _salt ExportResourceSpecification' {..} =+ _salt+ `Prelude.hashWithSalt` botExportSpecification+ `Prelude.hashWithSalt` botLocaleExportSpecification+ `Prelude.hashWithSalt` customVocabularyExportSpecification++instance Prelude.NFData ExportResourceSpecification where+ rnf ExportResourceSpecification' {..} =+ Prelude.rnf botExportSpecification+ `Prelude.seq` Prelude.rnf botLocaleExportSpecification+ `Prelude.seq` Prelude.rnf customVocabularyExportSpecification++instance Data.ToJSON ExportResourceSpecification where+ toJSON ExportResourceSpecification' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("botExportSpecification" Data..=)+ Prelude.<$> botExportSpecification,+ ("botLocaleExportSpecification" Data..=)+ Prelude.<$> botLocaleExportSpecification,+ ("customVocabularyExportSpecification" Data..=)+ Prelude.<$> customVocabularyExportSpecification+ ]+ )
+ gen/Amazonka/LexV2Models/Types/ExportSortAttribute.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.ExportSortAttribute+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.ExportSortAttribute+ ( ExportSortAttribute+ ( ..,+ ExportSortAttribute_LastUpdatedDateTime+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ExportSortAttribute = ExportSortAttribute'+ { fromExportSortAttribute ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern ExportSortAttribute_LastUpdatedDateTime :: ExportSortAttribute+pattern ExportSortAttribute_LastUpdatedDateTime = ExportSortAttribute' "LastUpdatedDateTime"++{-# COMPLETE+ ExportSortAttribute_LastUpdatedDateTime,+ ExportSortAttribute'+ #-}
+ gen/Amazonka/LexV2Models/Types/ExportSortBy.hs view
@@ -0,0 +1,89 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.ExportSortBy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.ExportSortBy where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.ExportSortAttribute+import Amazonka.LexV2Models.Types.SortOrder+import qualified Amazonka.Prelude as Prelude++-- | Provides information about sorting a list of exports.+--+-- /See:/ 'newExportSortBy' smart constructor.+data ExportSortBy = ExportSortBy'+ { -- | The export field to use for sorting.+ attribute :: ExportSortAttribute,+ -- | The order to sort the list.+ order :: SortOrder+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ExportSortBy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'attribute', 'exportSortBy_attribute' - The export field to use for sorting.+--+-- 'order', 'exportSortBy_order' - The order to sort the list.+newExportSortBy ::+ -- | 'attribute'+ ExportSortAttribute ->+ -- | 'order'+ SortOrder ->+ ExportSortBy+newExportSortBy pAttribute_ pOrder_ =+ ExportSortBy'+ { attribute = pAttribute_,+ order = pOrder_+ }++-- | The export field to use for sorting.+exportSortBy_attribute :: Lens.Lens' ExportSortBy ExportSortAttribute+exportSortBy_attribute = Lens.lens (\ExportSortBy' {attribute} -> attribute) (\s@ExportSortBy' {} a -> s {attribute = a} :: ExportSortBy)++-- | The order to sort the list.+exportSortBy_order :: Lens.Lens' ExportSortBy SortOrder+exportSortBy_order = Lens.lens (\ExportSortBy' {order} -> order) (\s@ExportSortBy' {} a -> s {order = a} :: ExportSortBy)++instance Prelude.Hashable ExportSortBy where+ hashWithSalt _salt ExportSortBy' {..} =+ _salt+ `Prelude.hashWithSalt` attribute+ `Prelude.hashWithSalt` order++instance Prelude.NFData ExportSortBy where+ rnf ExportSortBy' {..} =+ Prelude.rnf attribute+ `Prelude.seq` Prelude.rnf order++instance Data.ToJSON ExportSortBy where+ toJSON ExportSortBy' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("attribute" Data..= attribute),+ Prelude.Just ("order" Data..= order)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/ExportStatus.hs view
@@ -0,0 +1,81 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.ExportStatus+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.ExportStatus+ ( ExportStatus+ ( ..,+ ExportStatus_Completed,+ ExportStatus_Deleting,+ ExportStatus_Failed,+ ExportStatus_InProgress+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ExportStatus = ExportStatus'+ { fromExportStatus ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern ExportStatus_Completed :: ExportStatus+pattern ExportStatus_Completed = ExportStatus' "Completed"++pattern ExportStatus_Deleting :: ExportStatus+pattern ExportStatus_Deleting = ExportStatus' "Deleting"++pattern ExportStatus_Failed :: ExportStatus+pattern ExportStatus_Failed = ExportStatus' "Failed"++pattern ExportStatus_InProgress :: ExportStatus+pattern ExportStatus_InProgress = ExportStatus' "InProgress"++{-# COMPLETE+ ExportStatus_Completed,+ ExportStatus_Deleting,+ ExportStatus_Failed,+ ExportStatus_InProgress,+ ExportStatus'+ #-}
+ gen/Amazonka/LexV2Models/Types/ExportSummary.hs view
@@ -0,0 +1,138 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.ExportSummary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.ExportSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.ExportResourceSpecification+import Amazonka.LexV2Models.Types.ExportStatus+import Amazonka.LexV2Models.Types.ImportExportFileFormat+import qualified Amazonka.Prelude as Prelude++-- | Provides summary information about an export in an export list.+--+-- /See:/ 'newExportSummary' smart constructor.+data ExportSummary = ExportSummary'+ { -- | The date and time that the export was created.+ creationDateTime :: Prelude.Maybe Data.POSIX,+ -- | The unique identifier that Amazon Lex assigned to the export.+ exportId :: Prelude.Maybe Prelude.Text,+ -- | The status of the export. When the status is @Completed@ the export is+ -- ready to download.+ exportStatus :: Prelude.Maybe ExportStatus,+ -- | The file format used in the export files.+ fileFormat :: Prelude.Maybe ImportExportFileFormat,+ -- | The date and time that the export was last updated.+ lastUpdatedDateTime :: Prelude.Maybe Data.POSIX,+ -- | Information about the bot or bot locale that was exported.+ resourceSpecification :: Prelude.Maybe ExportResourceSpecification+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ExportSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'creationDateTime', 'exportSummary_creationDateTime' - The date and time that the export was created.+--+-- 'exportId', 'exportSummary_exportId' - The unique identifier that Amazon Lex assigned to the export.+--+-- 'exportStatus', 'exportSummary_exportStatus' - The status of the export. When the status is @Completed@ the export is+-- ready to download.+--+-- 'fileFormat', 'exportSummary_fileFormat' - The file format used in the export files.+--+-- 'lastUpdatedDateTime', 'exportSummary_lastUpdatedDateTime' - The date and time that the export was last updated.+--+-- 'resourceSpecification', 'exportSummary_resourceSpecification' - Information about the bot or bot locale that was exported.+newExportSummary ::+ ExportSummary+newExportSummary =+ ExportSummary'+ { creationDateTime = Prelude.Nothing,+ exportId = Prelude.Nothing,+ exportStatus = Prelude.Nothing,+ fileFormat = Prelude.Nothing,+ lastUpdatedDateTime = Prelude.Nothing,+ resourceSpecification = Prelude.Nothing+ }++-- | The date and time that the export was created.+exportSummary_creationDateTime :: Lens.Lens' ExportSummary (Prelude.Maybe Prelude.UTCTime)+exportSummary_creationDateTime = Lens.lens (\ExportSummary' {creationDateTime} -> creationDateTime) (\s@ExportSummary' {} a -> s {creationDateTime = a} :: ExportSummary) Prelude.. Lens.mapping Data._Time++-- | The unique identifier that Amazon Lex assigned to the export.+exportSummary_exportId :: Lens.Lens' ExportSummary (Prelude.Maybe Prelude.Text)+exportSummary_exportId = Lens.lens (\ExportSummary' {exportId} -> exportId) (\s@ExportSummary' {} a -> s {exportId = a} :: ExportSummary)++-- | The status of the export. When the status is @Completed@ the export is+-- ready to download.+exportSummary_exportStatus :: Lens.Lens' ExportSummary (Prelude.Maybe ExportStatus)+exportSummary_exportStatus = Lens.lens (\ExportSummary' {exportStatus} -> exportStatus) (\s@ExportSummary' {} a -> s {exportStatus = a} :: ExportSummary)++-- | The file format used in the export files.+exportSummary_fileFormat :: Lens.Lens' ExportSummary (Prelude.Maybe ImportExportFileFormat)+exportSummary_fileFormat = Lens.lens (\ExportSummary' {fileFormat} -> fileFormat) (\s@ExportSummary' {} a -> s {fileFormat = a} :: ExportSummary)++-- | The date and time that the export was last updated.+exportSummary_lastUpdatedDateTime :: Lens.Lens' ExportSummary (Prelude.Maybe Prelude.UTCTime)+exportSummary_lastUpdatedDateTime = Lens.lens (\ExportSummary' {lastUpdatedDateTime} -> lastUpdatedDateTime) (\s@ExportSummary' {} a -> s {lastUpdatedDateTime = a} :: ExportSummary) Prelude.. Lens.mapping Data._Time++-- | Information about the bot or bot locale that was exported.+exportSummary_resourceSpecification :: Lens.Lens' ExportSummary (Prelude.Maybe ExportResourceSpecification)+exportSummary_resourceSpecification = Lens.lens (\ExportSummary' {resourceSpecification} -> resourceSpecification) (\s@ExportSummary' {} a -> s {resourceSpecification = a} :: ExportSummary)++instance Data.FromJSON ExportSummary where+ parseJSON =+ Data.withObject+ "ExportSummary"+ ( \x ->+ ExportSummary'+ Prelude.<$> (x Data..:? "creationDateTime")+ Prelude.<*> (x Data..:? "exportId")+ Prelude.<*> (x Data..:? "exportStatus")+ Prelude.<*> (x Data..:? "fileFormat")+ Prelude.<*> (x Data..:? "lastUpdatedDateTime")+ Prelude.<*> (x Data..:? "resourceSpecification")+ )++instance Prelude.Hashable ExportSummary where+ hashWithSalt _salt ExportSummary' {..} =+ _salt+ `Prelude.hashWithSalt` creationDateTime+ `Prelude.hashWithSalt` exportId+ `Prelude.hashWithSalt` exportStatus+ `Prelude.hashWithSalt` fileFormat+ `Prelude.hashWithSalt` lastUpdatedDateTime+ `Prelude.hashWithSalt` resourceSpecification++instance Prelude.NFData ExportSummary where+ rnf ExportSummary' {..} =+ Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf exportId+ `Prelude.seq` Prelude.rnf exportStatus+ `Prelude.seq` Prelude.rnf fileFormat+ `Prelude.seq` Prelude.rnf lastUpdatedDateTime+ `Prelude.seq` Prelude.rnf resourceSpecification
+ gen/Amazonka/LexV2Models/Types/ExternalSourceSetting.hs view
@@ -0,0 +1,83 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.ExternalSourceSetting+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.ExternalSourceSetting where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.GrammarSlotTypeSetting+import qualified Amazonka.Prelude as Prelude++-- | Provides information about the external source of the slot type\'s+-- definition.+--+-- /See:/ 'newExternalSourceSetting' smart constructor.+data ExternalSourceSetting = ExternalSourceSetting'+ { -- | Settings required for a slot type based on a grammar that you provide.+ grammarSlotTypeSetting :: Prelude.Maybe GrammarSlotTypeSetting+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ExternalSourceSetting' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'grammarSlotTypeSetting', 'externalSourceSetting_grammarSlotTypeSetting' - Settings required for a slot type based on a grammar that you provide.+newExternalSourceSetting ::+ ExternalSourceSetting+newExternalSourceSetting =+ ExternalSourceSetting'+ { grammarSlotTypeSetting =+ Prelude.Nothing+ }++-- | Settings required for a slot type based on a grammar that you provide.+externalSourceSetting_grammarSlotTypeSetting :: Lens.Lens' ExternalSourceSetting (Prelude.Maybe GrammarSlotTypeSetting)+externalSourceSetting_grammarSlotTypeSetting = Lens.lens (\ExternalSourceSetting' {grammarSlotTypeSetting} -> grammarSlotTypeSetting) (\s@ExternalSourceSetting' {} a -> s {grammarSlotTypeSetting = a} :: ExternalSourceSetting)++instance Data.FromJSON ExternalSourceSetting where+ parseJSON =+ Data.withObject+ "ExternalSourceSetting"+ ( \x ->+ ExternalSourceSetting'+ Prelude.<$> (x Data..:? "grammarSlotTypeSetting")+ )++instance Prelude.Hashable ExternalSourceSetting where+ hashWithSalt _salt ExternalSourceSetting' {..} =+ _salt `Prelude.hashWithSalt` grammarSlotTypeSetting++instance Prelude.NFData ExternalSourceSetting where+ rnf ExternalSourceSetting' {..} =+ Prelude.rnf grammarSlotTypeSetting++instance Data.ToJSON ExternalSourceSetting where+ toJSON ExternalSourceSetting' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("grammarSlotTypeSetting" Data..=)+ Prelude.<$> grammarSlotTypeSetting+ ]+ )
+ gen/Amazonka/LexV2Models/Types/FailedCustomVocabularyItem.hs view
@@ -0,0 +1,108 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.FailedCustomVocabularyItem+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.FailedCustomVocabularyItem where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.ErrorCode+import qualified Amazonka.Prelude as Prelude++-- | The unique failed custom vocabulary item from the custom vocabulary+-- list.+--+-- /See:/ 'newFailedCustomVocabularyItem' smart constructor.+data FailedCustomVocabularyItem = FailedCustomVocabularyItem'+ { -- | The unique error code for the failed custom vocabulary item from the+ -- custom vocabulary list.+ errorCode :: Prelude.Maybe ErrorCode,+ -- | The error message for the failed custom vocabulary item from the custom+ -- vocabulary list.+ errorMessage :: Prelude.Maybe Prelude.Text,+ -- | The unique item identifer for the failed custom vocabulary item from the+ -- custom vocabulary list.+ itemId :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'FailedCustomVocabularyItem' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'errorCode', 'failedCustomVocabularyItem_errorCode' - The unique error code for the failed custom vocabulary item from the+-- custom vocabulary list.+--+-- 'errorMessage', 'failedCustomVocabularyItem_errorMessage' - The error message for the failed custom vocabulary item from the custom+-- vocabulary list.+--+-- 'itemId', 'failedCustomVocabularyItem_itemId' - The unique item identifer for the failed custom vocabulary item from the+-- custom vocabulary list.+newFailedCustomVocabularyItem ::+ FailedCustomVocabularyItem+newFailedCustomVocabularyItem =+ FailedCustomVocabularyItem'+ { errorCode =+ Prelude.Nothing,+ errorMessage = Prelude.Nothing,+ itemId = Prelude.Nothing+ }++-- | The unique error code for the failed custom vocabulary item from the+-- custom vocabulary list.+failedCustomVocabularyItem_errorCode :: Lens.Lens' FailedCustomVocabularyItem (Prelude.Maybe ErrorCode)+failedCustomVocabularyItem_errorCode = Lens.lens (\FailedCustomVocabularyItem' {errorCode} -> errorCode) (\s@FailedCustomVocabularyItem' {} a -> s {errorCode = a} :: FailedCustomVocabularyItem)++-- | The error message for the failed custom vocabulary item from the custom+-- vocabulary list.+failedCustomVocabularyItem_errorMessage :: Lens.Lens' FailedCustomVocabularyItem (Prelude.Maybe Prelude.Text)+failedCustomVocabularyItem_errorMessage = Lens.lens (\FailedCustomVocabularyItem' {errorMessage} -> errorMessage) (\s@FailedCustomVocabularyItem' {} a -> s {errorMessage = a} :: FailedCustomVocabularyItem)++-- | The unique item identifer for the failed custom vocabulary item from the+-- custom vocabulary list.+failedCustomVocabularyItem_itemId :: Lens.Lens' FailedCustomVocabularyItem (Prelude.Maybe Prelude.Text)+failedCustomVocabularyItem_itemId = Lens.lens (\FailedCustomVocabularyItem' {itemId} -> itemId) (\s@FailedCustomVocabularyItem' {} a -> s {itemId = a} :: FailedCustomVocabularyItem)++instance Data.FromJSON FailedCustomVocabularyItem where+ parseJSON =+ Data.withObject+ "FailedCustomVocabularyItem"+ ( \x ->+ FailedCustomVocabularyItem'+ Prelude.<$> (x Data..:? "errorCode")+ Prelude.<*> (x Data..:? "errorMessage")+ Prelude.<*> (x Data..:? "itemId")+ )++instance Prelude.Hashable FailedCustomVocabularyItem where+ hashWithSalt _salt FailedCustomVocabularyItem' {..} =+ _salt+ `Prelude.hashWithSalt` errorCode+ `Prelude.hashWithSalt` errorMessage+ `Prelude.hashWithSalt` itemId++instance Prelude.NFData FailedCustomVocabularyItem where+ rnf FailedCustomVocabularyItem' {..} =+ Prelude.rnf errorCode+ `Prelude.seq` Prelude.rnf errorMessage+ `Prelude.seq` Prelude.rnf itemId
+ gen/Amazonka/LexV2Models/Types/FulfillmentCodeHookSettings.hs view
@@ -0,0 +1,146 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.FulfillmentCodeHookSettings+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.FulfillmentCodeHookSettings where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.FulfillmentUpdatesSpecification+import Amazonka.LexV2Models.Types.PostFulfillmentStatusSpecification+import qualified Amazonka.Prelude as Prelude++-- | Determines if a Lambda function should be invoked for a specific intent.+--+-- /See:/ 'newFulfillmentCodeHookSettings' smart constructor.+data FulfillmentCodeHookSettings = FulfillmentCodeHookSettings'+ { -- | Determines whether the fulfillment code hook is used. When @active@ is+ -- false, the code hook doesn\'t run.+ active :: Prelude.Maybe Prelude.Bool,+ -- | Provides settings for update messages sent to the user for long-running+ -- Lambda fulfillment functions. Fulfillment updates can be used only with+ -- streaming conversations.+ fulfillmentUpdatesSpecification :: Prelude.Maybe FulfillmentUpdatesSpecification,+ -- | Provides settings for messages sent to the user for after the Lambda+ -- fulfillment function completes. Post-fulfillment messages can be sent+ -- for both streaming and non-streaming conversations.+ postFulfillmentStatusSpecification :: Prelude.Maybe PostFulfillmentStatusSpecification,+ -- | Indicates whether a Lambda function should be invoked to fulfill a+ -- specific intent.+ enabled :: Prelude.Bool+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'FulfillmentCodeHookSettings' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'active', 'fulfillmentCodeHookSettings_active' - Determines whether the fulfillment code hook is used. When @active@ is+-- false, the code hook doesn\'t run.+--+-- 'fulfillmentUpdatesSpecification', 'fulfillmentCodeHookSettings_fulfillmentUpdatesSpecification' - Provides settings for update messages sent to the user for long-running+-- Lambda fulfillment functions. Fulfillment updates can be used only with+-- streaming conversations.+--+-- 'postFulfillmentStatusSpecification', 'fulfillmentCodeHookSettings_postFulfillmentStatusSpecification' - Provides settings for messages sent to the user for after the Lambda+-- fulfillment function completes. Post-fulfillment messages can be sent+-- for both streaming and non-streaming conversations.+--+-- 'enabled', 'fulfillmentCodeHookSettings_enabled' - Indicates whether a Lambda function should be invoked to fulfill a+-- specific intent.+newFulfillmentCodeHookSettings ::+ -- | 'enabled'+ Prelude.Bool ->+ FulfillmentCodeHookSettings+newFulfillmentCodeHookSettings pEnabled_ =+ FulfillmentCodeHookSettings'+ { active =+ Prelude.Nothing,+ fulfillmentUpdatesSpecification =+ Prelude.Nothing,+ postFulfillmentStatusSpecification =+ Prelude.Nothing,+ enabled = pEnabled_+ }++-- | Determines whether the fulfillment code hook is used. When @active@ is+-- false, the code hook doesn\'t run.+fulfillmentCodeHookSettings_active :: Lens.Lens' FulfillmentCodeHookSettings (Prelude.Maybe Prelude.Bool)+fulfillmentCodeHookSettings_active = Lens.lens (\FulfillmentCodeHookSettings' {active} -> active) (\s@FulfillmentCodeHookSettings' {} a -> s {active = a} :: FulfillmentCodeHookSettings)++-- | Provides settings for update messages sent to the user for long-running+-- Lambda fulfillment functions. Fulfillment updates can be used only with+-- streaming conversations.+fulfillmentCodeHookSettings_fulfillmentUpdatesSpecification :: Lens.Lens' FulfillmentCodeHookSettings (Prelude.Maybe FulfillmentUpdatesSpecification)+fulfillmentCodeHookSettings_fulfillmentUpdatesSpecification = Lens.lens (\FulfillmentCodeHookSettings' {fulfillmentUpdatesSpecification} -> fulfillmentUpdatesSpecification) (\s@FulfillmentCodeHookSettings' {} a -> s {fulfillmentUpdatesSpecification = a} :: FulfillmentCodeHookSettings)++-- | Provides settings for messages sent to the user for after the Lambda+-- fulfillment function completes. Post-fulfillment messages can be sent+-- for both streaming and non-streaming conversations.+fulfillmentCodeHookSettings_postFulfillmentStatusSpecification :: Lens.Lens' FulfillmentCodeHookSettings (Prelude.Maybe PostFulfillmentStatusSpecification)+fulfillmentCodeHookSettings_postFulfillmentStatusSpecification = Lens.lens (\FulfillmentCodeHookSettings' {postFulfillmentStatusSpecification} -> postFulfillmentStatusSpecification) (\s@FulfillmentCodeHookSettings' {} a -> s {postFulfillmentStatusSpecification = a} :: FulfillmentCodeHookSettings)++-- | Indicates whether a Lambda function should be invoked to fulfill a+-- specific intent.+fulfillmentCodeHookSettings_enabled :: Lens.Lens' FulfillmentCodeHookSettings Prelude.Bool+fulfillmentCodeHookSettings_enabled = Lens.lens (\FulfillmentCodeHookSettings' {enabled} -> enabled) (\s@FulfillmentCodeHookSettings' {} a -> s {enabled = a} :: FulfillmentCodeHookSettings)++instance Data.FromJSON FulfillmentCodeHookSettings where+ parseJSON =+ Data.withObject+ "FulfillmentCodeHookSettings"+ ( \x ->+ FulfillmentCodeHookSettings'+ Prelude.<$> (x Data..:? "active")+ Prelude.<*> (x Data..:? "fulfillmentUpdatesSpecification")+ Prelude.<*> (x Data..:? "postFulfillmentStatusSpecification")+ Prelude.<*> (x Data..: "enabled")+ )++instance Prelude.Hashable FulfillmentCodeHookSettings where+ hashWithSalt _salt FulfillmentCodeHookSettings' {..} =+ _salt+ `Prelude.hashWithSalt` active+ `Prelude.hashWithSalt` fulfillmentUpdatesSpecification+ `Prelude.hashWithSalt` postFulfillmentStatusSpecification+ `Prelude.hashWithSalt` enabled++instance Prelude.NFData FulfillmentCodeHookSettings where+ rnf FulfillmentCodeHookSettings' {..} =+ Prelude.rnf active+ `Prelude.seq` Prelude.rnf fulfillmentUpdatesSpecification+ `Prelude.seq` Prelude.rnf postFulfillmentStatusSpecification+ `Prelude.seq` Prelude.rnf enabled++instance Data.ToJSON FulfillmentCodeHookSettings where+ toJSON FulfillmentCodeHookSettings' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("active" Data..=) Prelude.<$> active,+ ("fulfillmentUpdatesSpecification" Data..=)+ Prelude.<$> fulfillmentUpdatesSpecification,+ ("postFulfillmentStatusSpecification" Data..=)+ Prelude.<$> postFulfillmentStatusSpecification,+ Prelude.Just ("enabled" Data..= enabled)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/FulfillmentStartResponseSpecification.hs view
@@ -0,0 +1,146 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.FulfillmentStartResponseSpecification+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.FulfillmentStartResponseSpecification where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.MessageGroup+import qualified Amazonka.Prelude as Prelude++-- | Provides settings for a message that is sent to the user when a+-- fulfillment Lambda function starts running.+--+-- /See:/ 'newFulfillmentStartResponseSpecification' smart constructor.+data FulfillmentStartResponseSpecification = FulfillmentStartResponseSpecification'+ { -- | Determines whether the user can interrupt the start message while it is+ -- playing.+ allowInterrupt :: Prelude.Maybe Prelude.Bool,+ -- | The delay between when the Lambda fulfillment function starts running+ -- and the start message is played. If the Lambda function returns before+ -- the delay is over, the start message isn\'t played.+ delayInSeconds :: Prelude.Natural,+ -- | One to 5 message groups that contain start messages. Amazon Lex chooses+ -- one of the messages to play to the user.+ messageGroups :: Prelude.NonEmpty MessageGroup+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'FulfillmentStartResponseSpecification' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'allowInterrupt', 'fulfillmentStartResponseSpecification_allowInterrupt' - Determines whether the user can interrupt the start message while it is+-- playing.+--+-- 'delayInSeconds', 'fulfillmentStartResponseSpecification_delayInSeconds' - The delay between when the Lambda fulfillment function starts running+-- and the start message is played. If the Lambda function returns before+-- the delay is over, the start message isn\'t played.+--+-- 'messageGroups', 'fulfillmentStartResponseSpecification_messageGroups' - One to 5 message groups that contain start messages. Amazon Lex chooses+-- one of the messages to play to the user.+newFulfillmentStartResponseSpecification ::+ -- | 'delayInSeconds'+ Prelude.Natural ->+ -- | 'messageGroups'+ Prelude.NonEmpty MessageGroup ->+ FulfillmentStartResponseSpecification+newFulfillmentStartResponseSpecification+ pDelayInSeconds_+ pMessageGroups_ =+ FulfillmentStartResponseSpecification'+ { allowInterrupt =+ Prelude.Nothing,+ delayInSeconds = pDelayInSeconds_,+ messageGroups =+ Lens.coerced+ Lens.# pMessageGroups_+ }++-- | Determines whether the user can interrupt the start message while it is+-- playing.+fulfillmentStartResponseSpecification_allowInterrupt :: Lens.Lens' FulfillmentStartResponseSpecification (Prelude.Maybe Prelude.Bool)+fulfillmentStartResponseSpecification_allowInterrupt = Lens.lens (\FulfillmentStartResponseSpecification' {allowInterrupt} -> allowInterrupt) (\s@FulfillmentStartResponseSpecification' {} a -> s {allowInterrupt = a} :: FulfillmentStartResponseSpecification)++-- | The delay between when the Lambda fulfillment function starts running+-- and the start message is played. If the Lambda function returns before+-- the delay is over, the start message isn\'t played.+fulfillmentStartResponseSpecification_delayInSeconds :: Lens.Lens' FulfillmentStartResponseSpecification Prelude.Natural+fulfillmentStartResponseSpecification_delayInSeconds = Lens.lens (\FulfillmentStartResponseSpecification' {delayInSeconds} -> delayInSeconds) (\s@FulfillmentStartResponseSpecification' {} a -> s {delayInSeconds = a} :: FulfillmentStartResponseSpecification)++-- | One to 5 message groups that contain start messages. Amazon Lex chooses+-- one of the messages to play to the user.+fulfillmentStartResponseSpecification_messageGroups :: Lens.Lens' FulfillmentStartResponseSpecification (Prelude.NonEmpty MessageGroup)+fulfillmentStartResponseSpecification_messageGroups = Lens.lens (\FulfillmentStartResponseSpecification' {messageGroups} -> messageGroups) (\s@FulfillmentStartResponseSpecification' {} a -> s {messageGroups = a} :: FulfillmentStartResponseSpecification) Prelude.. Lens.coerced++instance+ Data.FromJSON+ FulfillmentStartResponseSpecification+ where+ parseJSON =+ Data.withObject+ "FulfillmentStartResponseSpecification"+ ( \x ->+ FulfillmentStartResponseSpecification'+ Prelude.<$> (x Data..:? "allowInterrupt")+ Prelude.<*> (x Data..: "delayInSeconds")+ Prelude.<*> (x Data..: "messageGroups")+ )++instance+ Prelude.Hashable+ FulfillmentStartResponseSpecification+ where+ hashWithSalt+ _salt+ FulfillmentStartResponseSpecification' {..} =+ _salt+ `Prelude.hashWithSalt` allowInterrupt+ `Prelude.hashWithSalt` delayInSeconds+ `Prelude.hashWithSalt` messageGroups++instance+ Prelude.NFData+ FulfillmentStartResponseSpecification+ where+ rnf FulfillmentStartResponseSpecification' {..} =+ Prelude.rnf allowInterrupt+ `Prelude.seq` Prelude.rnf delayInSeconds+ `Prelude.seq` Prelude.rnf messageGroups++instance+ Data.ToJSON+ FulfillmentStartResponseSpecification+ where+ toJSON FulfillmentStartResponseSpecification' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("allowInterrupt" Data..=)+ Prelude.<$> allowInterrupt,+ Prelude.Just+ ("delayInSeconds" Data..= delayInSeconds),+ Prelude.Just+ ("messageGroups" Data..= messageGroups)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/FulfillmentUpdateResponseSpecification.hs view
@@ -0,0 +1,150 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.FulfillmentUpdateResponseSpecification+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.FulfillmentUpdateResponseSpecification where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.MessageGroup+import qualified Amazonka.Prelude as Prelude++-- | Provides settings for a message that is sent periodically to the user+-- while a fulfillment Lambda function is running.+--+-- /See:/ 'newFulfillmentUpdateResponseSpecification' smart constructor.+data FulfillmentUpdateResponseSpecification = FulfillmentUpdateResponseSpecification'+ { -- | Determines whether the user can interrupt an update message while it is+ -- playing.+ allowInterrupt :: Prelude.Maybe Prelude.Bool,+ -- | The frequency that a message is sent to the user. When the period ends,+ -- Amazon Lex chooses a message from the message groups and plays it to the+ -- user. If the fulfillment Lambda returns before the first period ends, an+ -- update message is not played to the user.+ frequencyInSeconds :: Prelude.Natural,+ -- | One to 5 message groups that contain update messages. Amazon Lex chooses+ -- one of the messages to play to the user.+ messageGroups :: Prelude.NonEmpty MessageGroup+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'FulfillmentUpdateResponseSpecification' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'allowInterrupt', 'fulfillmentUpdateResponseSpecification_allowInterrupt' - Determines whether the user can interrupt an update message while it is+-- playing.+--+-- 'frequencyInSeconds', 'fulfillmentUpdateResponseSpecification_frequencyInSeconds' - The frequency that a message is sent to the user. When the period ends,+-- Amazon Lex chooses a message from the message groups and plays it to the+-- user. If the fulfillment Lambda returns before the first period ends, an+-- update message is not played to the user.+--+-- 'messageGroups', 'fulfillmentUpdateResponseSpecification_messageGroups' - One to 5 message groups that contain update messages. Amazon Lex chooses+-- one of the messages to play to the user.+newFulfillmentUpdateResponseSpecification ::+ -- | 'frequencyInSeconds'+ Prelude.Natural ->+ -- | 'messageGroups'+ Prelude.NonEmpty MessageGroup ->+ FulfillmentUpdateResponseSpecification+newFulfillmentUpdateResponseSpecification+ pFrequencyInSeconds_+ pMessageGroups_ =+ FulfillmentUpdateResponseSpecification'+ { allowInterrupt =+ Prelude.Nothing,+ frequencyInSeconds =+ pFrequencyInSeconds_,+ messageGroups =+ Lens.coerced+ Lens.# pMessageGroups_+ }++-- | Determines whether the user can interrupt an update message while it is+-- playing.+fulfillmentUpdateResponseSpecification_allowInterrupt :: Lens.Lens' FulfillmentUpdateResponseSpecification (Prelude.Maybe Prelude.Bool)+fulfillmentUpdateResponseSpecification_allowInterrupt = Lens.lens (\FulfillmentUpdateResponseSpecification' {allowInterrupt} -> allowInterrupt) (\s@FulfillmentUpdateResponseSpecification' {} a -> s {allowInterrupt = a} :: FulfillmentUpdateResponseSpecification)++-- | The frequency that a message is sent to the user. When the period ends,+-- Amazon Lex chooses a message from the message groups and plays it to the+-- user. If the fulfillment Lambda returns before the first period ends, an+-- update message is not played to the user.+fulfillmentUpdateResponseSpecification_frequencyInSeconds :: Lens.Lens' FulfillmentUpdateResponseSpecification Prelude.Natural+fulfillmentUpdateResponseSpecification_frequencyInSeconds = Lens.lens (\FulfillmentUpdateResponseSpecification' {frequencyInSeconds} -> frequencyInSeconds) (\s@FulfillmentUpdateResponseSpecification' {} a -> s {frequencyInSeconds = a} :: FulfillmentUpdateResponseSpecification)++-- | One to 5 message groups that contain update messages. Amazon Lex chooses+-- one of the messages to play to the user.+fulfillmentUpdateResponseSpecification_messageGroups :: Lens.Lens' FulfillmentUpdateResponseSpecification (Prelude.NonEmpty MessageGroup)+fulfillmentUpdateResponseSpecification_messageGroups = Lens.lens (\FulfillmentUpdateResponseSpecification' {messageGroups} -> messageGroups) (\s@FulfillmentUpdateResponseSpecification' {} a -> s {messageGroups = a} :: FulfillmentUpdateResponseSpecification) Prelude.. Lens.coerced++instance+ Data.FromJSON+ FulfillmentUpdateResponseSpecification+ where+ parseJSON =+ Data.withObject+ "FulfillmentUpdateResponseSpecification"+ ( \x ->+ FulfillmentUpdateResponseSpecification'+ Prelude.<$> (x Data..:? "allowInterrupt")+ Prelude.<*> (x Data..: "frequencyInSeconds")+ Prelude.<*> (x Data..: "messageGroups")+ )++instance+ Prelude.Hashable+ FulfillmentUpdateResponseSpecification+ where+ hashWithSalt+ _salt+ FulfillmentUpdateResponseSpecification' {..} =+ _salt+ `Prelude.hashWithSalt` allowInterrupt+ `Prelude.hashWithSalt` frequencyInSeconds+ `Prelude.hashWithSalt` messageGroups++instance+ Prelude.NFData+ FulfillmentUpdateResponseSpecification+ where+ rnf FulfillmentUpdateResponseSpecification' {..} =+ Prelude.rnf allowInterrupt+ `Prelude.seq` Prelude.rnf frequencyInSeconds+ `Prelude.seq` Prelude.rnf messageGroups++instance+ Data.ToJSON+ FulfillmentUpdateResponseSpecification+ where+ toJSON FulfillmentUpdateResponseSpecification' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("allowInterrupt" Data..=)+ Prelude.<$> allowInterrupt,+ Prelude.Just+ ("frequencyInSeconds" Data..= frequencyInSeconds),+ Prelude.Just+ ("messageGroups" Data..= messageGroups)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/FulfillmentUpdatesSpecification.hs view
@@ -0,0 +1,159 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.FulfillmentUpdatesSpecification+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.FulfillmentUpdatesSpecification where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.FulfillmentStartResponseSpecification+import Amazonka.LexV2Models.Types.FulfillmentUpdateResponseSpecification+import qualified Amazonka.Prelude as Prelude++-- | Provides information for updating the user on the progress of fulfilling+-- an intent.+--+-- /See:/ 'newFulfillmentUpdatesSpecification' smart constructor.+data FulfillmentUpdatesSpecification = FulfillmentUpdatesSpecification'+ { -- | Provides configuration information for the message sent to users when+ -- the fulfillment Lambda functions starts running.+ startResponse :: Prelude.Maybe FulfillmentStartResponseSpecification,+ -- | The length of time that the fulfillment Lambda function should run+ -- before it times out.+ timeoutInSeconds :: Prelude.Maybe Prelude.Natural,+ -- | Provides configuration information for messages sent periodically to the+ -- user while the fulfillment Lambda function is running.+ updateResponse :: Prelude.Maybe FulfillmentUpdateResponseSpecification,+ -- | Determines whether fulfillment updates are sent to the user. When this+ -- field is true, updates are sent.+ --+ -- If the @active@ field is set to true, the @startResponse@,+ -- @updateResponse@, and @timeoutInSeconds@ fields are required.+ active :: Prelude.Bool+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'FulfillmentUpdatesSpecification' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'startResponse', 'fulfillmentUpdatesSpecification_startResponse' - Provides configuration information for the message sent to users when+-- the fulfillment Lambda functions starts running.+--+-- 'timeoutInSeconds', 'fulfillmentUpdatesSpecification_timeoutInSeconds' - The length of time that the fulfillment Lambda function should run+-- before it times out.+--+-- 'updateResponse', 'fulfillmentUpdatesSpecification_updateResponse' - Provides configuration information for messages sent periodically to the+-- user while the fulfillment Lambda function is running.+--+-- 'active', 'fulfillmentUpdatesSpecification_active' - Determines whether fulfillment updates are sent to the user. When this+-- field is true, updates are sent.+--+-- If the @active@ field is set to true, the @startResponse@,+-- @updateResponse@, and @timeoutInSeconds@ fields are required.+newFulfillmentUpdatesSpecification ::+ -- | 'active'+ Prelude.Bool ->+ FulfillmentUpdatesSpecification+newFulfillmentUpdatesSpecification pActive_ =+ FulfillmentUpdatesSpecification'+ { startResponse =+ Prelude.Nothing,+ timeoutInSeconds = Prelude.Nothing,+ updateResponse = Prelude.Nothing,+ active = pActive_+ }++-- | Provides configuration information for the message sent to users when+-- the fulfillment Lambda functions starts running.+fulfillmentUpdatesSpecification_startResponse :: Lens.Lens' FulfillmentUpdatesSpecification (Prelude.Maybe FulfillmentStartResponseSpecification)+fulfillmentUpdatesSpecification_startResponse = Lens.lens (\FulfillmentUpdatesSpecification' {startResponse} -> startResponse) (\s@FulfillmentUpdatesSpecification' {} a -> s {startResponse = a} :: FulfillmentUpdatesSpecification)++-- | The length of time that the fulfillment Lambda function should run+-- before it times out.+fulfillmentUpdatesSpecification_timeoutInSeconds :: Lens.Lens' FulfillmentUpdatesSpecification (Prelude.Maybe Prelude.Natural)+fulfillmentUpdatesSpecification_timeoutInSeconds = Lens.lens (\FulfillmentUpdatesSpecification' {timeoutInSeconds} -> timeoutInSeconds) (\s@FulfillmentUpdatesSpecification' {} a -> s {timeoutInSeconds = a} :: FulfillmentUpdatesSpecification)++-- | Provides configuration information for messages sent periodically to the+-- user while the fulfillment Lambda function is running.+fulfillmentUpdatesSpecification_updateResponse :: Lens.Lens' FulfillmentUpdatesSpecification (Prelude.Maybe FulfillmentUpdateResponseSpecification)+fulfillmentUpdatesSpecification_updateResponse = Lens.lens (\FulfillmentUpdatesSpecification' {updateResponse} -> updateResponse) (\s@FulfillmentUpdatesSpecification' {} a -> s {updateResponse = a} :: FulfillmentUpdatesSpecification)++-- | Determines whether fulfillment updates are sent to the user. When this+-- field is true, updates are sent.+--+-- If the @active@ field is set to true, the @startResponse@,+-- @updateResponse@, and @timeoutInSeconds@ fields are required.+fulfillmentUpdatesSpecification_active :: Lens.Lens' FulfillmentUpdatesSpecification Prelude.Bool+fulfillmentUpdatesSpecification_active = Lens.lens (\FulfillmentUpdatesSpecification' {active} -> active) (\s@FulfillmentUpdatesSpecification' {} a -> s {active = a} :: FulfillmentUpdatesSpecification)++instance+ Data.FromJSON+ FulfillmentUpdatesSpecification+ where+ parseJSON =+ Data.withObject+ "FulfillmentUpdatesSpecification"+ ( \x ->+ FulfillmentUpdatesSpecification'+ Prelude.<$> (x Data..:? "startResponse")+ Prelude.<*> (x Data..:? "timeoutInSeconds")+ Prelude.<*> (x Data..:? "updateResponse")+ Prelude.<*> (x Data..: "active")+ )++instance+ Prelude.Hashable+ FulfillmentUpdatesSpecification+ where+ hashWithSalt+ _salt+ FulfillmentUpdatesSpecification' {..} =+ _salt+ `Prelude.hashWithSalt` startResponse+ `Prelude.hashWithSalt` timeoutInSeconds+ `Prelude.hashWithSalt` updateResponse+ `Prelude.hashWithSalt` active++instance+ Prelude.NFData+ FulfillmentUpdatesSpecification+ where+ rnf FulfillmentUpdatesSpecification' {..} =+ Prelude.rnf startResponse+ `Prelude.seq` Prelude.rnf timeoutInSeconds+ `Prelude.seq` Prelude.rnf updateResponse+ `Prelude.seq` Prelude.rnf active++instance Data.ToJSON FulfillmentUpdatesSpecification where+ toJSON FulfillmentUpdatesSpecification' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("startResponse" Data..=) Prelude.<$> startResponse,+ ("timeoutInSeconds" Data..=)+ Prelude.<$> timeoutInSeconds,+ ("updateResponse" Data..=)+ Prelude.<$> updateResponse,+ Prelude.Just ("active" Data..= active)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/GrammarSlotTypeSetting.hs view
@@ -0,0 +1,76 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.GrammarSlotTypeSetting+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.GrammarSlotTypeSetting where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.GrammarSlotTypeSource+import qualified Amazonka.Prelude as Prelude++-- | Settings requried for a slot type based on a grammar that you provide.+--+-- /See:/ 'newGrammarSlotTypeSetting' smart constructor.+data GrammarSlotTypeSetting = GrammarSlotTypeSetting'+ { -- | The source of the grammar used to create the slot type.+ source :: Prelude.Maybe GrammarSlotTypeSource+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GrammarSlotTypeSetting' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'source', 'grammarSlotTypeSetting_source' - The source of the grammar used to create the slot type.+newGrammarSlotTypeSetting ::+ GrammarSlotTypeSetting+newGrammarSlotTypeSetting =+ GrammarSlotTypeSetting' {source = Prelude.Nothing}++-- | The source of the grammar used to create the slot type.+grammarSlotTypeSetting_source :: Lens.Lens' GrammarSlotTypeSetting (Prelude.Maybe GrammarSlotTypeSource)+grammarSlotTypeSetting_source = Lens.lens (\GrammarSlotTypeSetting' {source} -> source) (\s@GrammarSlotTypeSetting' {} a -> s {source = a} :: GrammarSlotTypeSetting)++instance Data.FromJSON GrammarSlotTypeSetting where+ parseJSON =+ Data.withObject+ "GrammarSlotTypeSetting"+ ( \x ->+ GrammarSlotTypeSetting'+ Prelude.<$> (x Data..:? "source")+ )++instance Prelude.Hashable GrammarSlotTypeSetting where+ hashWithSalt _salt GrammarSlotTypeSetting' {..} =+ _salt `Prelude.hashWithSalt` source++instance Prelude.NFData GrammarSlotTypeSetting where+ rnf GrammarSlotTypeSetting' {..} = Prelude.rnf source++instance Data.ToJSON GrammarSlotTypeSetting where+ toJSON GrammarSlotTypeSetting' {..} =+ Data.object+ ( Prelude.catMaybes+ [("source" Data..=) Prelude.<$> source]+ )
+ gen/Amazonka/LexV2Models/Types/GrammarSlotTypeSource.hs view
@@ -0,0 +1,114 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.GrammarSlotTypeSource+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.GrammarSlotTypeSource where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Describes the Amazon S3 bucket name and location for the grammar that is+-- the source for the slot type.+--+-- /See:/ 'newGrammarSlotTypeSource' smart constructor.+data GrammarSlotTypeSource = GrammarSlotTypeSource'+ { -- | The Amazon KMS key required to decrypt the contents of the grammar, if+ -- any.+ kmsKeyArn :: Prelude.Maybe Prelude.Text,+ -- | The name of the S3 bucket that contains the grammar source.+ s3BucketName :: Prelude.Text,+ -- | The path to the grammar in the S3 bucket.+ s3ObjectKey :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GrammarSlotTypeSource' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'kmsKeyArn', 'grammarSlotTypeSource_kmsKeyArn' - The Amazon KMS key required to decrypt the contents of the grammar, if+-- any.+--+-- 's3BucketName', 'grammarSlotTypeSource_s3BucketName' - The name of the S3 bucket that contains the grammar source.+--+-- 's3ObjectKey', 'grammarSlotTypeSource_s3ObjectKey' - The path to the grammar in the S3 bucket.+newGrammarSlotTypeSource ::+ -- | 's3BucketName'+ Prelude.Text ->+ -- | 's3ObjectKey'+ Prelude.Text ->+ GrammarSlotTypeSource+newGrammarSlotTypeSource pS3BucketName_ pS3ObjectKey_ =+ GrammarSlotTypeSource'+ { kmsKeyArn = Prelude.Nothing,+ s3BucketName = pS3BucketName_,+ s3ObjectKey = pS3ObjectKey_+ }++-- | The Amazon KMS key required to decrypt the contents of the grammar, if+-- any.+grammarSlotTypeSource_kmsKeyArn :: Lens.Lens' GrammarSlotTypeSource (Prelude.Maybe Prelude.Text)+grammarSlotTypeSource_kmsKeyArn = Lens.lens (\GrammarSlotTypeSource' {kmsKeyArn} -> kmsKeyArn) (\s@GrammarSlotTypeSource' {} a -> s {kmsKeyArn = a} :: GrammarSlotTypeSource)++-- | The name of the S3 bucket that contains the grammar source.+grammarSlotTypeSource_s3BucketName :: Lens.Lens' GrammarSlotTypeSource Prelude.Text+grammarSlotTypeSource_s3BucketName = Lens.lens (\GrammarSlotTypeSource' {s3BucketName} -> s3BucketName) (\s@GrammarSlotTypeSource' {} a -> s {s3BucketName = a} :: GrammarSlotTypeSource)++-- | The path to the grammar in the S3 bucket.+grammarSlotTypeSource_s3ObjectKey :: Lens.Lens' GrammarSlotTypeSource Prelude.Text+grammarSlotTypeSource_s3ObjectKey = Lens.lens (\GrammarSlotTypeSource' {s3ObjectKey} -> s3ObjectKey) (\s@GrammarSlotTypeSource' {} a -> s {s3ObjectKey = a} :: GrammarSlotTypeSource)++instance Data.FromJSON GrammarSlotTypeSource where+ parseJSON =+ Data.withObject+ "GrammarSlotTypeSource"+ ( \x ->+ GrammarSlotTypeSource'+ Prelude.<$> (x Data..:? "kmsKeyArn")+ Prelude.<*> (x Data..: "s3BucketName")+ Prelude.<*> (x Data..: "s3ObjectKey")+ )++instance Prelude.Hashable GrammarSlotTypeSource where+ hashWithSalt _salt GrammarSlotTypeSource' {..} =+ _salt+ `Prelude.hashWithSalt` kmsKeyArn+ `Prelude.hashWithSalt` s3BucketName+ `Prelude.hashWithSalt` s3ObjectKey++instance Prelude.NFData GrammarSlotTypeSource where+ rnf GrammarSlotTypeSource' {..} =+ Prelude.rnf kmsKeyArn+ `Prelude.seq` Prelude.rnf s3BucketName+ `Prelude.seq` Prelude.rnf s3ObjectKey++instance Data.ToJSON GrammarSlotTypeSource where+ toJSON GrammarSlotTypeSource' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("kmsKeyArn" Data..=) Prelude.<$> kmsKeyArn,+ Prelude.Just ("s3BucketName" Data..= s3BucketName),+ Prelude.Just ("s3ObjectKey" Data..= s3ObjectKey)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/ImageResponseCard.hs view
@@ -0,0 +1,144 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.ImageResponseCard+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.ImageResponseCard where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.Button+import qualified Amazonka.Prelude as Prelude++-- | A card that is shown to the user by a messaging platform. You define the+-- contents of the card, the card is displayed by the platform.+--+-- When you use a response card, the response from the user is constrained+-- to the text associated with a button on the card.+--+-- /See:/ 'newImageResponseCard' smart constructor.+data ImageResponseCard = ImageResponseCard'+ { -- | A list of buttons that should be displayed on the response card. The+ -- arrangement of the buttons is determined by the platform that displays+ -- the button.+ buttons :: Prelude.Maybe [Button],+ -- | The URL of an image to display on the response card. The image URL must+ -- be publicly available so that the platform displaying the response card+ -- has access to the image.+ imageUrl :: Prelude.Maybe Prelude.Text,+ -- | The subtitle to display on the response card. The format of the subtitle+ -- is determined by the platform displaying the response card.+ subtitle :: Prelude.Maybe Prelude.Text,+ -- | The title to display on the response card. The format of the title is+ -- determined by the platform displaying the response card.+ title :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ImageResponseCard' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'buttons', 'imageResponseCard_buttons' - A list of buttons that should be displayed on the response card. The+-- arrangement of the buttons is determined by the platform that displays+-- the button.+--+-- 'imageUrl', 'imageResponseCard_imageUrl' - The URL of an image to display on the response card. The image URL must+-- be publicly available so that the platform displaying the response card+-- has access to the image.+--+-- 'subtitle', 'imageResponseCard_subtitle' - The subtitle to display on the response card. The format of the subtitle+-- is determined by the platform displaying the response card.+--+-- 'title', 'imageResponseCard_title' - The title to display on the response card. The format of the title is+-- determined by the platform displaying the response card.+newImageResponseCard ::+ -- | 'title'+ Prelude.Text ->+ ImageResponseCard+newImageResponseCard pTitle_ =+ ImageResponseCard'+ { buttons = Prelude.Nothing,+ imageUrl = Prelude.Nothing,+ subtitle = Prelude.Nothing,+ title = pTitle_+ }++-- | A list of buttons that should be displayed on the response card. The+-- arrangement of the buttons is determined by the platform that displays+-- the button.+imageResponseCard_buttons :: Lens.Lens' ImageResponseCard (Prelude.Maybe [Button])+imageResponseCard_buttons = Lens.lens (\ImageResponseCard' {buttons} -> buttons) (\s@ImageResponseCard' {} a -> s {buttons = a} :: ImageResponseCard) Prelude.. Lens.mapping Lens.coerced++-- | The URL of an image to display on the response card. The image URL must+-- be publicly available so that the platform displaying the response card+-- has access to the image.+imageResponseCard_imageUrl :: Lens.Lens' ImageResponseCard (Prelude.Maybe Prelude.Text)+imageResponseCard_imageUrl = Lens.lens (\ImageResponseCard' {imageUrl} -> imageUrl) (\s@ImageResponseCard' {} a -> s {imageUrl = a} :: ImageResponseCard)++-- | The subtitle to display on the response card. The format of the subtitle+-- is determined by the platform displaying the response card.+imageResponseCard_subtitle :: Lens.Lens' ImageResponseCard (Prelude.Maybe Prelude.Text)+imageResponseCard_subtitle = Lens.lens (\ImageResponseCard' {subtitle} -> subtitle) (\s@ImageResponseCard' {} a -> s {subtitle = a} :: ImageResponseCard)++-- | The title to display on the response card. The format of the title is+-- determined by the platform displaying the response card.+imageResponseCard_title :: Lens.Lens' ImageResponseCard Prelude.Text+imageResponseCard_title = Lens.lens (\ImageResponseCard' {title} -> title) (\s@ImageResponseCard' {} a -> s {title = a} :: ImageResponseCard)++instance Data.FromJSON ImageResponseCard where+ parseJSON =+ Data.withObject+ "ImageResponseCard"+ ( \x ->+ ImageResponseCard'+ Prelude.<$> (x Data..:? "buttons" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "imageUrl")+ Prelude.<*> (x Data..:? "subtitle")+ Prelude.<*> (x Data..: "title")+ )++instance Prelude.Hashable ImageResponseCard where+ hashWithSalt _salt ImageResponseCard' {..} =+ _salt+ `Prelude.hashWithSalt` buttons+ `Prelude.hashWithSalt` imageUrl+ `Prelude.hashWithSalt` subtitle+ `Prelude.hashWithSalt` title++instance Prelude.NFData ImageResponseCard where+ rnf ImageResponseCard' {..} =+ Prelude.rnf buttons+ `Prelude.seq` Prelude.rnf imageUrl+ `Prelude.seq` Prelude.rnf subtitle+ `Prelude.seq` Prelude.rnf title++instance Data.ToJSON ImageResponseCard where+ toJSON ImageResponseCard' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("buttons" Data..=) Prelude.<$> buttons,+ ("imageUrl" Data..=) Prelude.<$> imageUrl,+ ("subtitle" Data..=) Prelude.<$> subtitle,+ Prelude.Just ("title" Data..= title)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/ImportExportFileFormat.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.ImportExportFileFormat+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.ImportExportFileFormat+ ( ImportExportFileFormat+ ( ..,+ ImportExportFileFormat_LexJson,+ ImportExportFileFormat_TSV+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ImportExportFileFormat = ImportExportFileFormat'+ { fromImportExportFileFormat ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern ImportExportFileFormat_LexJson :: ImportExportFileFormat+pattern ImportExportFileFormat_LexJson = ImportExportFileFormat' "LexJson"++pattern ImportExportFileFormat_TSV :: ImportExportFileFormat+pattern ImportExportFileFormat_TSV = ImportExportFileFormat' "TSV"++{-# COMPLETE+ ImportExportFileFormat_LexJson,+ ImportExportFileFormat_TSV,+ ImportExportFileFormat'+ #-}
+ gen/Amazonka/LexV2Models/Types/ImportFilter.hs view
@@ -0,0 +1,117 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.ImportFilter+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.ImportFilter where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.ImportFilterName+import Amazonka.LexV2Models.Types.ImportFilterOperator+import qualified Amazonka.Prelude as Prelude++-- | Filters the response from the+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_ListImports.html ListImports>+-- operation.+--+-- /See:/ 'newImportFilter' smart constructor.+data ImportFilter = ImportFilter'+ { -- | The name of the field to use for filtering.+ name :: ImportFilterName,+ -- | The values to use to filter the response. The values must be @Bot@,+ -- @BotLocale@, or @CustomVocabulary@.+ values :: Prelude.NonEmpty Prelude.Text,+ -- | The operator to use for the filter. Specify EQ when the @ListImports@+ -- operation should return only resource types that equal the specified+ -- value. Specify CO when the @ListImports@ operation should return+ -- resource types that contain the specified value.+ operator :: ImportFilterOperator+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ImportFilter' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'name', 'importFilter_name' - The name of the field to use for filtering.+--+-- 'values', 'importFilter_values' - The values to use to filter the response. The values must be @Bot@,+-- @BotLocale@, or @CustomVocabulary@.+--+-- 'operator', 'importFilter_operator' - The operator to use for the filter. Specify EQ when the @ListImports@+-- operation should return only resource types that equal the specified+-- value. Specify CO when the @ListImports@ operation should return+-- resource types that contain the specified value.+newImportFilter ::+ -- | 'name'+ ImportFilterName ->+ -- | 'values'+ Prelude.NonEmpty Prelude.Text ->+ -- | 'operator'+ ImportFilterOperator ->+ ImportFilter+newImportFilter pName_ pValues_ pOperator_ =+ ImportFilter'+ { name = pName_,+ values = Lens.coerced Lens.# pValues_,+ operator = pOperator_+ }++-- | The name of the field to use for filtering.+importFilter_name :: Lens.Lens' ImportFilter ImportFilterName+importFilter_name = Lens.lens (\ImportFilter' {name} -> name) (\s@ImportFilter' {} a -> s {name = a} :: ImportFilter)++-- | The values to use to filter the response. The values must be @Bot@,+-- @BotLocale@, or @CustomVocabulary@.+importFilter_values :: Lens.Lens' ImportFilter (Prelude.NonEmpty Prelude.Text)+importFilter_values = Lens.lens (\ImportFilter' {values} -> values) (\s@ImportFilter' {} a -> s {values = a} :: ImportFilter) Prelude.. Lens.coerced++-- | The operator to use for the filter. Specify EQ when the @ListImports@+-- operation should return only resource types that equal the specified+-- value. Specify CO when the @ListImports@ operation should return+-- resource types that contain the specified value.+importFilter_operator :: Lens.Lens' ImportFilter ImportFilterOperator+importFilter_operator = Lens.lens (\ImportFilter' {operator} -> operator) (\s@ImportFilter' {} a -> s {operator = a} :: ImportFilter)++instance Prelude.Hashable ImportFilter where+ hashWithSalt _salt ImportFilter' {..} =+ _salt+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` values+ `Prelude.hashWithSalt` operator++instance Prelude.NFData ImportFilter where+ rnf ImportFilter' {..} =+ Prelude.rnf name+ `Prelude.seq` Prelude.rnf values+ `Prelude.seq` Prelude.rnf operator++instance Data.ToJSON ImportFilter where+ toJSON ImportFilter' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("name" Data..= name),+ Prelude.Just ("values" Data..= values),+ Prelude.Just ("operator" Data..= operator)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/ImportFilterName.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.ImportFilterName+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.ImportFilterName+ ( ImportFilterName+ ( ..,+ ImportFilterName_ImportResourceType+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ImportFilterName = ImportFilterName'+ { fromImportFilterName ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern ImportFilterName_ImportResourceType :: ImportFilterName+pattern ImportFilterName_ImportResourceType = ImportFilterName' "ImportResourceType"++{-# COMPLETE+ ImportFilterName_ImportResourceType,+ ImportFilterName'+ #-}
+ gen/Amazonka/LexV2Models/Types/ImportFilterOperator.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.ImportFilterOperator+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.ImportFilterOperator+ ( ImportFilterOperator+ ( ..,+ ImportFilterOperator_CO,+ ImportFilterOperator_EQ+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ImportFilterOperator = ImportFilterOperator'+ { fromImportFilterOperator ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern ImportFilterOperator_CO :: ImportFilterOperator+pattern ImportFilterOperator_CO = ImportFilterOperator' "CO"++pattern ImportFilterOperator_EQ :: ImportFilterOperator+pattern ImportFilterOperator_EQ = ImportFilterOperator' "EQ"++{-# COMPLETE+ ImportFilterOperator_CO,+ ImportFilterOperator_EQ,+ ImportFilterOperator'+ #-}
+ gen/Amazonka/LexV2Models/Types/ImportResourceSpecification.hs view
@@ -0,0 +1,115 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.ImportResourceSpecification+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.ImportResourceSpecification where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.BotImportSpecification+import Amazonka.LexV2Models.Types.BotLocaleImportSpecification+import Amazonka.LexV2Models.Types.CustomVocabularyImportSpecification+import qualified Amazonka.Prelude as Prelude++-- | Provides information about the bot or bot locale that you want to+-- import. You can specify the @botImportSpecification@ or the+-- @botLocaleImportSpecification@, but not both.+--+-- /See:/ 'newImportResourceSpecification' smart constructor.+data ImportResourceSpecification = ImportResourceSpecification'+ { -- | Parameters for importing a bot.+ botImportSpecification :: Prelude.Maybe BotImportSpecification,+ -- | Parameters for importing a bot locale.+ botLocaleImportSpecification :: Prelude.Maybe BotLocaleImportSpecification,+ customVocabularyImportSpecification :: Prelude.Maybe CustomVocabularyImportSpecification+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ImportResourceSpecification' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botImportSpecification', 'importResourceSpecification_botImportSpecification' - Parameters for importing a bot.+--+-- 'botLocaleImportSpecification', 'importResourceSpecification_botLocaleImportSpecification' - Parameters for importing a bot locale.+--+-- 'customVocabularyImportSpecification', 'importResourceSpecification_customVocabularyImportSpecification' - Undocumented member.+newImportResourceSpecification ::+ ImportResourceSpecification+newImportResourceSpecification =+ ImportResourceSpecification'+ { botImportSpecification =+ Prelude.Nothing,+ botLocaleImportSpecification = Prelude.Nothing,+ customVocabularyImportSpecification =+ Prelude.Nothing+ }++-- | Parameters for importing a bot.+importResourceSpecification_botImportSpecification :: Lens.Lens' ImportResourceSpecification (Prelude.Maybe BotImportSpecification)+importResourceSpecification_botImportSpecification = Lens.lens (\ImportResourceSpecification' {botImportSpecification} -> botImportSpecification) (\s@ImportResourceSpecification' {} a -> s {botImportSpecification = a} :: ImportResourceSpecification)++-- | Parameters for importing a bot locale.+importResourceSpecification_botLocaleImportSpecification :: Lens.Lens' ImportResourceSpecification (Prelude.Maybe BotLocaleImportSpecification)+importResourceSpecification_botLocaleImportSpecification = Lens.lens (\ImportResourceSpecification' {botLocaleImportSpecification} -> botLocaleImportSpecification) (\s@ImportResourceSpecification' {} a -> s {botLocaleImportSpecification = a} :: ImportResourceSpecification)++-- | Undocumented member.+importResourceSpecification_customVocabularyImportSpecification :: Lens.Lens' ImportResourceSpecification (Prelude.Maybe CustomVocabularyImportSpecification)+importResourceSpecification_customVocabularyImportSpecification = Lens.lens (\ImportResourceSpecification' {customVocabularyImportSpecification} -> customVocabularyImportSpecification) (\s@ImportResourceSpecification' {} a -> s {customVocabularyImportSpecification = a} :: ImportResourceSpecification)++instance Data.FromJSON ImportResourceSpecification where+ parseJSON =+ Data.withObject+ "ImportResourceSpecification"+ ( \x ->+ ImportResourceSpecification'+ Prelude.<$> (x Data..:? "botImportSpecification")+ Prelude.<*> (x Data..:? "botLocaleImportSpecification")+ Prelude.<*> (x Data..:? "customVocabularyImportSpecification")+ )++instance Prelude.Hashable ImportResourceSpecification where+ hashWithSalt _salt ImportResourceSpecification' {..} =+ _salt+ `Prelude.hashWithSalt` botImportSpecification+ `Prelude.hashWithSalt` botLocaleImportSpecification+ `Prelude.hashWithSalt` customVocabularyImportSpecification++instance Prelude.NFData ImportResourceSpecification where+ rnf ImportResourceSpecification' {..} =+ Prelude.rnf botImportSpecification+ `Prelude.seq` Prelude.rnf botLocaleImportSpecification+ `Prelude.seq` Prelude.rnf customVocabularyImportSpecification++instance Data.ToJSON ImportResourceSpecification where+ toJSON ImportResourceSpecification' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("botImportSpecification" Data..=)+ Prelude.<$> botImportSpecification,+ ("botLocaleImportSpecification" Data..=)+ Prelude.<$> botLocaleImportSpecification,+ ("customVocabularyImportSpecification" Data..=)+ Prelude.<$> customVocabularyImportSpecification+ ]+ )
+ gen/Amazonka/LexV2Models/Types/ImportResourceType.hs view
@@ -0,0 +1,76 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.ImportResourceType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.ImportResourceType+ ( ImportResourceType+ ( ..,+ ImportResourceType_Bot,+ ImportResourceType_BotLocale,+ ImportResourceType_CustomVocabulary+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ImportResourceType = ImportResourceType'+ { fromImportResourceType ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern ImportResourceType_Bot :: ImportResourceType+pattern ImportResourceType_Bot = ImportResourceType' "Bot"++pattern ImportResourceType_BotLocale :: ImportResourceType+pattern ImportResourceType_BotLocale = ImportResourceType' "BotLocale"++pattern ImportResourceType_CustomVocabulary :: ImportResourceType+pattern ImportResourceType_CustomVocabulary = ImportResourceType' "CustomVocabulary"++{-# COMPLETE+ ImportResourceType_Bot,+ ImportResourceType_BotLocale,+ ImportResourceType_CustomVocabulary,+ ImportResourceType'+ #-}
+ gen/Amazonka/LexV2Models/Types/ImportSortAttribute.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.ImportSortAttribute+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.ImportSortAttribute+ ( ImportSortAttribute+ ( ..,+ ImportSortAttribute_LastUpdatedDateTime+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ImportSortAttribute = ImportSortAttribute'+ { fromImportSortAttribute ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern ImportSortAttribute_LastUpdatedDateTime :: ImportSortAttribute+pattern ImportSortAttribute_LastUpdatedDateTime = ImportSortAttribute' "LastUpdatedDateTime"++{-# COMPLETE+ ImportSortAttribute_LastUpdatedDateTime,+ ImportSortAttribute'+ #-}
+ gen/Amazonka/LexV2Models/Types/ImportSortBy.hs view
@@ -0,0 +1,89 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.ImportSortBy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.ImportSortBy where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.ImportSortAttribute+import Amazonka.LexV2Models.Types.SortOrder+import qualified Amazonka.Prelude as Prelude++-- | Provides information for sorting a list of imports.+--+-- /See:/ 'newImportSortBy' smart constructor.+data ImportSortBy = ImportSortBy'+ { -- | The export field to use for sorting.+ attribute :: ImportSortAttribute,+ -- | The order to sort the list.+ order :: SortOrder+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ImportSortBy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'attribute', 'importSortBy_attribute' - The export field to use for sorting.+--+-- 'order', 'importSortBy_order' - The order to sort the list.+newImportSortBy ::+ -- | 'attribute'+ ImportSortAttribute ->+ -- | 'order'+ SortOrder ->+ ImportSortBy+newImportSortBy pAttribute_ pOrder_ =+ ImportSortBy'+ { attribute = pAttribute_,+ order = pOrder_+ }++-- | The export field to use for sorting.+importSortBy_attribute :: Lens.Lens' ImportSortBy ImportSortAttribute+importSortBy_attribute = Lens.lens (\ImportSortBy' {attribute} -> attribute) (\s@ImportSortBy' {} a -> s {attribute = a} :: ImportSortBy)++-- | The order to sort the list.+importSortBy_order :: Lens.Lens' ImportSortBy SortOrder+importSortBy_order = Lens.lens (\ImportSortBy' {order} -> order) (\s@ImportSortBy' {} a -> s {order = a} :: ImportSortBy)++instance Prelude.Hashable ImportSortBy where+ hashWithSalt _salt ImportSortBy' {..} =+ _salt+ `Prelude.hashWithSalt` attribute+ `Prelude.hashWithSalt` order++instance Prelude.NFData ImportSortBy where+ rnf ImportSortBy' {..} =+ Prelude.rnf attribute+ `Prelude.seq` Prelude.rnf order++instance Data.ToJSON ImportSortBy where+ toJSON ImportSortBy' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("attribute" Data..= attribute),+ Prelude.Just ("order" Data..= order)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/ImportStatus.hs view
@@ -0,0 +1,81 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.ImportStatus+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.ImportStatus+ ( ImportStatus+ ( ..,+ ImportStatus_Completed,+ ImportStatus_Deleting,+ ImportStatus_Failed,+ ImportStatus_InProgress+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ImportStatus = ImportStatus'+ { fromImportStatus ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern ImportStatus_Completed :: ImportStatus+pattern ImportStatus_Completed = ImportStatus' "Completed"++pattern ImportStatus_Deleting :: ImportStatus+pattern ImportStatus_Deleting = ImportStatus' "Deleting"++pattern ImportStatus_Failed :: ImportStatus+pattern ImportStatus_Failed = ImportStatus' "Failed"++pattern ImportStatus_InProgress :: ImportStatus+pattern ImportStatus_InProgress = ImportStatus' "InProgress"++{-# COMPLETE+ ImportStatus_Completed,+ ImportStatus_Deleting,+ ImportStatus_Failed,+ ImportStatus_InProgress,+ ImportStatus'+ #-}
+ gen/Amazonka/LexV2Models/Types/ImportSummary.hs view
@@ -0,0 +1,165 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.ImportSummary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.ImportSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.ImportResourceType+import Amazonka.LexV2Models.Types.ImportStatus+import Amazonka.LexV2Models.Types.MergeStrategy+import qualified Amazonka.Prelude as Prelude++-- | Provides summary information about an import in an import list.+--+-- /See:/ 'newImportSummary' smart constructor.+data ImportSummary = ImportSummary'+ { -- | The date and time that the import was created.+ creationDateTime :: Prelude.Maybe Data.POSIX,+ -- | The unique identifier that Amazon Lex assigned to the import.+ importId :: Prelude.Maybe Prelude.Text,+ -- | The status of the resource. When the status is @Completed@ the resource+ -- is ready to build.+ importStatus :: Prelude.Maybe ImportStatus,+ -- | The unique identifier that Amazon Lex assigned to the imported resource.+ importedResourceId :: Prelude.Maybe Prelude.Text,+ -- | The name that you gave the imported resource.+ importedResourceName :: Prelude.Maybe Prelude.Text,+ -- | The type of resource that was imported.+ importedResourceType :: Prelude.Maybe ImportResourceType,+ -- | The date and time that the import was last updated.+ lastUpdatedDateTime :: Prelude.Maybe Data.POSIX,+ -- | The strategy used to merge existing bot or bot locale definitions with+ -- the imported definition.+ mergeStrategy :: Prelude.Maybe MergeStrategy+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ImportSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'creationDateTime', 'importSummary_creationDateTime' - The date and time that the import was created.+--+-- 'importId', 'importSummary_importId' - The unique identifier that Amazon Lex assigned to the import.+--+-- 'importStatus', 'importSummary_importStatus' - The status of the resource. When the status is @Completed@ the resource+-- is ready to build.+--+-- 'importedResourceId', 'importSummary_importedResourceId' - The unique identifier that Amazon Lex assigned to the imported resource.+--+-- 'importedResourceName', 'importSummary_importedResourceName' - The name that you gave the imported resource.+--+-- 'importedResourceType', 'importSummary_importedResourceType' - The type of resource that was imported.+--+-- 'lastUpdatedDateTime', 'importSummary_lastUpdatedDateTime' - The date and time that the import was last updated.+--+-- 'mergeStrategy', 'importSummary_mergeStrategy' - The strategy used to merge existing bot or bot locale definitions with+-- the imported definition.+newImportSummary ::+ ImportSummary+newImportSummary =+ ImportSummary'+ { creationDateTime = Prelude.Nothing,+ importId = Prelude.Nothing,+ importStatus = Prelude.Nothing,+ importedResourceId = Prelude.Nothing,+ importedResourceName = Prelude.Nothing,+ importedResourceType = Prelude.Nothing,+ lastUpdatedDateTime = Prelude.Nothing,+ mergeStrategy = Prelude.Nothing+ }++-- | The date and time that the import was created.+importSummary_creationDateTime :: Lens.Lens' ImportSummary (Prelude.Maybe Prelude.UTCTime)+importSummary_creationDateTime = Lens.lens (\ImportSummary' {creationDateTime} -> creationDateTime) (\s@ImportSummary' {} a -> s {creationDateTime = a} :: ImportSummary) Prelude.. Lens.mapping Data._Time++-- | The unique identifier that Amazon Lex assigned to the import.+importSummary_importId :: Lens.Lens' ImportSummary (Prelude.Maybe Prelude.Text)+importSummary_importId = Lens.lens (\ImportSummary' {importId} -> importId) (\s@ImportSummary' {} a -> s {importId = a} :: ImportSummary)++-- | The status of the resource. When the status is @Completed@ the resource+-- is ready to build.+importSummary_importStatus :: Lens.Lens' ImportSummary (Prelude.Maybe ImportStatus)+importSummary_importStatus = Lens.lens (\ImportSummary' {importStatus} -> importStatus) (\s@ImportSummary' {} a -> s {importStatus = a} :: ImportSummary)++-- | The unique identifier that Amazon Lex assigned to the imported resource.+importSummary_importedResourceId :: Lens.Lens' ImportSummary (Prelude.Maybe Prelude.Text)+importSummary_importedResourceId = Lens.lens (\ImportSummary' {importedResourceId} -> importedResourceId) (\s@ImportSummary' {} a -> s {importedResourceId = a} :: ImportSummary)++-- | The name that you gave the imported resource.+importSummary_importedResourceName :: Lens.Lens' ImportSummary (Prelude.Maybe Prelude.Text)+importSummary_importedResourceName = Lens.lens (\ImportSummary' {importedResourceName} -> importedResourceName) (\s@ImportSummary' {} a -> s {importedResourceName = a} :: ImportSummary)++-- | The type of resource that was imported.+importSummary_importedResourceType :: Lens.Lens' ImportSummary (Prelude.Maybe ImportResourceType)+importSummary_importedResourceType = Lens.lens (\ImportSummary' {importedResourceType} -> importedResourceType) (\s@ImportSummary' {} a -> s {importedResourceType = a} :: ImportSummary)++-- | The date and time that the import was last updated.+importSummary_lastUpdatedDateTime :: Lens.Lens' ImportSummary (Prelude.Maybe Prelude.UTCTime)+importSummary_lastUpdatedDateTime = Lens.lens (\ImportSummary' {lastUpdatedDateTime} -> lastUpdatedDateTime) (\s@ImportSummary' {} a -> s {lastUpdatedDateTime = a} :: ImportSummary) Prelude.. Lens.mapping Data._Time++-- | The strategy used to merge existing bot or bot locale definitions with+-- the imported definition.+importSummary_mergeStrategy :: Lens.Lens' ImportSummary (Prelude.Maybe MergeStrategy)+importSummary_mergeStrategy = Lens.lens (\ImportSummary' {mergeStrategy} -> mergeStrategy) (\s@ImportSummary' {} a -> s {mergeStrategy = a} :: ImportSummary)++instance Data.FromJSON ImportSummary where+ parseJSON =+ Data.withObject+ "ImportSummary"+ ( \x ->+ ImportSummary'+ Prelude.<$> (x Data..:? "creationDateTime")+ Prelude.<*> (x Data..:? "importId")+ Prelude.<*> (x Data..:? "importStatus")+ Prelude.<*> (x Data..:? "importedResourceId")+ Prelude.<*> (x Data..:? "importedResourceName")+ Prelude.<*> (x Data..:? "importedResourceType")+ Prelude.<*> (x Data..:? "lastUpdatedDateTime")+ Prelude.<*> (x Data..:? "mergeStrategy")+ )++instance Prelude.Hashable ImportSummary where+ hashWithSalt _salt ImportSummary' {..} =+ _salt+ `Prelude.hashWithSalt` creationDateTime+ `Prelude.hashWithSalt` importId+ `Prelude.hashWithSalt` importStatus+ `Prelude.hashWithSalt` importedResourceId+ `Prelude.hashWithSalt` importedResourceName+ `Prelude.hashWithSalt` importedResourceType+ `Prelude.hashWithSalt` lastUpdatedDateTime+ `Prelude.hashWithSalt` mergeStrategy++instance Prelude.NFData ImportSummary where+ rnf ImportSummary' {..} =+ Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf importId+ `Prelude.seq` Prelude.rnf importStatus+ `Prelude.seq` Prelude.rnf importedResourceId+ `Prelude.seq` Prelude.rnf importedResourceName+ `Prelude.seq` Prelude.rnf importedResourceType+ `Prelude.seq` Prelude.rnf lastUpdatedDateTime+ `Prelude.seq` Prelude.rnf mergeStrategy
+ gen/Amazonka/LexV2Models/Types/InitialResponseSetting.hs view
@@ -0,0 +1,122 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.InitialResponseSetting+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.InitialResponseSetting where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.ConditionalSpecification+import Amazonka.LexV2Models.Types.DialogCodeHookInvocationSetting+import Amazonka.LexV2Models.Types.DialogState+import Amazonka.LexV2Models.Types.ResponseSpecification+import qualified Amazonka.Prelude as Prelude++-- | Configuration setting for a response sent to the user before Amazon Lex+-- starts eliciting slots.+--+-- /See:/ 'newInitialResponseSetting' smart constructor.+data InitialResponseSetting = InitialResponseSetting'+ { codeHook :: Prelude.Maybe DialogCodeHookInvocationSetting,+ conditional :: Prelude.Maybe ConditionalSpecification,+ initialResponse :: Prelude.Maybe ResponseSpecification,+ -- | The next step in the conversation.+ nextStep :: Prelude.Maybe DialogState+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'InitialResponseSetting' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'codeHook', 'initialResponseSetting_codeHook' - Undocumented member.+--+-- 'conditional', 'initialResponseSetting_conditional' - Undocumented member.+--+-- 'initialResponse', 'initialResponseSetting_initialResponse' - Undocumented member.+--+-- 'nextStep', 'initialResponseSetting_nextStep' - The next step in the conversation.+newInitialResponseSetting ::+ InitialResponseSetting+newInitialResponseSetting =+ InitialResponseSetting'+ { codeHook = Prelude.Nothing,+ conditional = Prelude.Nothing,+ initialResponse = Prelude.Nothing,+ nextStep = Prelude.Nothing+ }++-- | Undocumented member.+initialResponseSetting_codeHook :: Lens.Lens' InitialResponseSetting (Prelude.Maybe DialogCodeHookInvocationSetting)+initialResponseSetting_codeHook = Lens.lens (\InitialResponseSetting' {codeHook} -> codeHook) (\s@InitialResponseSetting' {} a -> s {codeHook = a} :: InitialResponseSetting)++-- | Undocumented member.+initialResponseSetting_conditional :: Lens.Lens' InitialResponseSetting (Prelude.Maybe ConditionalSpecification)+initialResponseSetting_conditional = Lens.lens (\InitialResponseSetting' {conditional} -> conditional) (\s@InitialResponseSetting' {} a -> s {conditional = a} :: InitialResponseSetting)++-- | Undocumented member.+initialResponseSetting_initialResponse :: Lens.Lens' InitialResponseSetting (Prelude.Maybe ResponseSpecification)+initialResponseSetting_initialResponse = Lens.lens (\InitialResponseSetting' {initialResponse} -> initialResponse) (\s@InitialResponseSetting' {} a -> s {initialResponse = a} :: InitialResponseSetting)++-- | The next step in the conversation.+initialResponseSetting_nextStep :: Lens.Lens' InitialResponseSetting (Prelude.Maybe DialogState)+initialResponseSetting_nextStep = Lens.lens (\InitialResponseSetting' {nextStep} -> nextStep) (\s@InitialResponseSetting' {} a -> s {nextStep = a} :: InitialResponseSetting)++instance Data.FromJSON InitialResponseSetting where+ parseJSON =+ Data.withObject+ "InitialResponseSetting"+ ( \x ->+ InitialResponseSetting'+ Prelude.<$> (x Data..:? "codeHook")+ Prelude.<*> (x Data..:? "conditional")+ Prelude.<*> (x Data..:? "initialResponse")+ Prelude.<*> (x Data..:? "nextStep")+ )++instance Prelude.Hashable InitialResponseSetting where+ hashWithSalt _salt InitialResponseSetting' {..} =+ _salt+ `Prelude.hashWithSalt` codeHook+ `Prelude.hashWithSalt` conditional+ `Prelude.hashWithSalt` initialResponse+ `Prelude.hashWithSalt` nextStep++instance Prelude.NFData InitialResponseSetting where+ rnf InitialResponseSetting' {..} =+ Prelude.rnf codeHook+ `Prelude.seq` Prelude.rnf conditional+ `Prelude.seq` Prelude.rnf initialResponse+ `Prelude.seq` Prelude.rnf nextStep++instance Data.ToJSON InitialResponseSetting where+ toJSON InitialResponseSetting' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("codeHook" Data..=) Prelude.<$> codeHook,+ ("conditional" Data..=) Prelude.<$> conditional,+ ("initialResponse" Data..=)+ Prelude.<$> initialResponse,+ ("nextStep" Data..=) Prelude.<$> nextStep+ ]+ )
+ gen/Amazonka/LexV2Models/Types/InputContext.hs view
@@ -0,0 +1,74 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.InputContext+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.InputContext where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The name of a context that must be active for an intent to be selected+-- by Amazon Lex.+--+-- /See:/ 'newInputContext' smart constructor.+data InputContext = InputContext'+ { -- | The name of the context.+ name :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'InputContext' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'name', 'inputContext_name' - The name of the context.+newInputContext ::+ -- | 'name'+ Prelude.Text ->+ InputContext+newInputContext pName_ = InputContext' {name = pName_}++-- | The name of the context.+inputContext_name :: Lens.Lens' InputContext Prelude.Text+inputContext_name = Lens.lens (\InputContext' {name} -> name) (\s@InputContext' {} a -> s {name = a} :: InputContext)++instance Data.FromJSON InputContext where+ parseJSON =+ Data.withObject+ "InputContext"+ (\x -> InputContext' Prelude.<$> (x Data..: "name"))++instance Prelude.Hashable InputContext where+ hashWithSalt _salt InputContext' {..} =+ _salt `Prelude.hashWithSalt` name++instance Prelude.NFData InputContext where+ rnf InputContext' {..} = Prelude.rnf name++instance Data.ToJSON InputContext where+ toJSON InputContext' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("name" Data..= name)]+ )
+ gen/Amazonka/LexV2Models/Types/IntentClosingSetting.hs view
@@ -0,0 +1,142 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.IntentClosingSetting+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.IntentClosingSetting where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.ConditionalSpecification+import Amazonka.LexV2Models.Types.DialogState+import Amazonka.LexV2Models.Types.ResponseSpecification+import qualified Amazonka.Prelude as Prelude++-- | Provides a statement the Amazon Lex conveys to the user when the intent+-- is successfully fulfilled.+--+-- /See:/ 'newIntentClosingSetting' smart constructor.+data IntentClosingSetting = IntentClosingSetting'+ { -- | Specifies whether an intent\'s closing response is used. When this field+ -- is false, the closing response isn\'t sent to the user. If the @active@+ -- field isn\'t specified, the default is true.+ active :: Prelude.Maybe Prelude.Bool,+ -- | The response that Amazon Lex sends to the user when the intent is+ -- complete.+ closingResponse :: Prelude.Maybe ResponseSpecification,+ -- | A list of conditional branches associated with the intent\'s closing+ -- response. These branches are executed when the @nextStep@ attribute is+ -- set to @EvalutateConditional@.+ conditional :: Prelude.Maybe ConditionalSpecification,+ -- | Specifies the next step that the bot executes after playing the+ -- intent\'s closing response.+ nextStep :: Prelude.Maybe DialogState+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'IntentClosingSetting' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'active', 'intentClosingSetting_active' - Specifies whether an intent\'s closing response is used. When this field+-- is false, the closing response isn\'t sent to the user. If the @active@+-- field isn\'t specified, the default is true.+--+-- 'closingResponse', 'intentClosingSetting_closingResponse' - The response that Amazon Lex sends to the user when the intent is+-- complete.+--+-- 'conditional', 'intentClosingSetting_conditional' - A list of conditional branches associated with the intent\'s closing+-- response. These branches are executed when the @nextStep@ attribute is+-- set to @EvalutateConditional@.+--+-- 'nextStep', 'intentClosingSetting_nextStep' - Specifies the next step that the bot executes after playing the+-- intent\'s closing response.+newIntentClosingSetting ::+ IntentClosingSetting+newIntentClosingSetting =+ IntentClosingSetting'+ { active = Prelude.Nothing,+ closingResponse = Prelude.Nothing,+ conditional = Prelude.Nothing,+ nextStep = Prelude.Nothing+ }++-- | Specifies whether an intent\'s closing response is used. When this field+-- is false, the closing response isn\'t sent to the user. If the @active@+-- field isn\'t specified, the default is true.+intentClosingSetting_active :: Lens.Lens' IntentClosingSetting (Prelude.Maybe Prelude.Bool)+intentClosingSetting_active = Lens.lens (\IntentClosingSetting' {active} -> active) (\s@IntentClosingSetting' {} a -> s {active = a} :: IntentClosingSetting)++-- | The response that Amazon Lex sends to the user when the intent is+-- complete.+intentClosingSetting_closingResponse :: Lens.Lens' IntentClosingSetting (Prelude.Maybe ResponseSpecification)+intentClosingSetting_closingResponse = Lens.lens (\IntentClosingSetting' {closingResponse} -> closingResponse) (\s@IntentClosingSetting' {} a -> s {closingResponse = a} :: IntentClosingSetting)++-- | A list of conditional branches associated with the intent\'s closing+-- response. These branches are executed when the @nextStep@ attribute is+-- set to @EvalutateConditional@.+intentClosingSetting_conditional :: Lens.Lens' IntentClosingSetting (Prelude.Maybe ConditionalSpecification)+intentClosingSetting_conditional = Lens.lens (\IntentClosingSetting' {conditional} -> conditional) (\s@IntentClosingSetting' {} a -> s {conditional = a} :: IntentClosingSetting)++-- | Specifies the next step that the bot executes after playing the+-- intent\'s closing response.+intentClosingSetting_nextStep :: Lens.Lens' IntentClosingSetting (Prelude.Maybe DialogState)+intentClosingSetting_nextStep = Lens.lens (\IntentClosingSetting' {nextStep} -> nextStep) (\s@IntentClosingSetting' {} a -> s {nextStep = a} :: IntentClosingSetting)++instance Data.FromJSON IntentClosingSetting where+ parseJSON =+ Data.withObject+ "IntentClosingSetting"+ ( \x ->+ IntentClosingSetting'+ Prelude.<$> (x Data..:? "active")+ Prelude.<*> (x Data..:? "closingResponse")+ Prelude.<*> (x Data..:? "conditional")+ Prelude.<*> (x Data..:? "nextStep")+ )++instance Prelude.Hashable IntentClosingSetting where+ hashWithSalt _salt IntentClosingSetting' {..} =+ _salt+ `Prelude.hashWithSalt` active+ `Prelude.hashWithSalt` closingResponse+ `Prelude.hashWithSalt` conditional+ `Prelude.hashWithSalt` nextStep++instance Prelude.NFData IntentClosingSetting where+ rnf IntentClosingSetting' {..} =+ Prelude.rnf active+ `Prelude.seq` Prelude.rnf closingResponse+ `Prelude.seq` Prelude.rnf conditional+ `Prelude.seq` Prelude.rnf nextStep++instance Data.ToJSON IntentClosingSetting where+ toJSON IntentClosingSetting' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("active" Data..=) Prelude.<$> active,+ ("closingResponse" Data..=)+ Prelude.<$> closingResponse,+ ("conditional" Data..=) Prelude.<$> conditional,+ ("nextStep" Data..=) Prelude.<$> nextStep+ ]+ )
+ gen/Amazonka/LexV2Models/Types/IntentConfirmationSetting.hs view
@@ -0,0 +1,311 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.IntentConfirmationSetting+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.IntentConfirmationSetting where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.ConditionalSpecification+import Amazonka.LexV2Models.Types.DialogCodeHookInvocationSetting+import Amazonka.LexV2Models.Types.DialogState+import Amazonka.LexV2Models.Types.ElicitationCodeHookInvocationSetting+import Amazonka.LexV2Models.Types.PromptSpecification+import Amazonka.LexV2Models.Types.ResponseSpecification+import qualified Amazonka.Prelude as Prelude++-- | Provides a prompt for making sure that the user is ready for the intent+-- to be fulfilled.+--+-- /See:/ 'newIntentConfirmationSetting' smart constructor.+data IntentConfirmationSetting = IntentConfirmationSetting'+ { -- | Specifies whether the intent\'s confirmation is sent to the user. When+ -- this field is false, confirmation and declination responses aren\'t+ -- sent. If the @active@ field isn\'t specified, the default is true.+ active :: Prelude.Maybe Prelude.Bool,+ -- | The @DialogCodeHookInvocationSetting@ object associated with intent\'s+ -- confirmation step. The dialog code hook is triggered based on these+ -- invocation settings when the confirmation next step or declination next+ -- step or failure next step is @InvokeDialogCodeHook@.+ codeHook :: Prelude.Maybe DialogCodeHookInvocationSetting,+ -- | A list of conditional branches to evaluate after the intent is closed.+ confirmationConditional :: Prelude.Maybe ConditionalSpecification,+ -- | Specifies the next step that the bot executes when the customer confirms+ -- the intent.+ confirmationNextStep :: Prelude.Maybe DialogState,+ confirmationResponse :: Prelude.Maybe ResponseSpecification,+ -- | A list of conditional branches to evaluate after the intent is declined.+ declinationConditional :: Prelude.Maybe ConditionalSpecification,+ -- | Specifies the next step that the bot executes when the customer declines+ -- the intent.+ declinationNextStep :: Prelude.Maybe DialogState,+ -- | When the user answers \"no\" to the question defined in+ -- @promptSpecification@, Amazon Lex responds with this response to+ -- acknowledge that the intent was canceled.+ declinationResponse :: Prelude.Maybe ResponseSpecification,+ -- | The @DialogCodeHookInvocationSetting@ used when the code hook is invoked+ -- during confirmation prompt retries.+ elicitationCodeHook :: Prelude.Maybe ElicitationCodeHookInvocationSetting,+ failureConditional :: Prelude.Maybe ConditionalSpecification,+ -- | The next step to take in the conversation if the confirmation step+ -- fails.+ failureNextStep :: Prelude.Maybe DialogState,+ failureResponse :: Prelude.Maybe ResponseSpecification,+ -- | Prompts the user to confirm the intent. This question should have a yes+ -- or no answer.+ --+ -- Amazon Lex uses this prompt to ensure that the user acknowledges that+ -- the intent is ready for fulfillment. For example, with the @OrderPizza@+ -- intent, you might want to confirm that the order is correct before+ -- placing it. For other intents, such as intents that simply respond to+ -- user questions, you might not need to ask the user for confirmation+ -- before providing the information.+ promptSpecification :: PromptSpecification+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'IntentConfirmationSetting' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'active', 'intentConfirmationSetting_active' - Specifies whether the intent\'s confirmation is sent to the user. When+-- this field is false, confirmation and declination responses aren\'t+-- sent. If the @active@ field isn\'t specified, the default is true.+--+-- 'codeHook', 'intentConfirmationSetting_codeHook' - The @DialogCodeHookInvocationSetting@ object associated with intent\'s+-- confirmation step. The dialog code hook is triggered based on these+-- invocation settings when the confirmation next step or declination next+-- step or failure next step is @InvokeDialogCodeHook@.+--+-- 'confirmationConditional', 'intentConfirmationSetting_confirmationConditional' - A list of conditional branches to evaluate after the intent is closed.+--+-- 'confirmationNextStep', 'intentConfirmationSetting_confirmationNextStep' - Specifies the next step that the bot executes when the customer confirms+-- the intent.+--+-- 'confirmationResponse', 'intentConfirmationSetting_confirmationResponse' - Undocumented member.+--+-- 'declinationConditional', 'intentConfirmationSetting_declinationConditional' - A list of conditional branches to evaluate after the intent is declined.+--+-- 'declinationNextStep', 'intentConfirmationSetting_declinationNextStep' - Specifies the next step that the bot executes when the customer declines+-- the intent.+--+-- 'declinationResponse', 'intentConfirmationSetting_declinationResponse' - When the user answers \"no\" to the question defined in+-- @promptSpecification@, Amazon Lex responds with this response to+-- acknowledge that the intent was canceled.+--+-- 'elicitationCodeHook', 'intentConfirmationSetting_elicitationCodeHook' - The @DialogCodeHookInvocationSetting@ used when the code hook is invoked+-- during confirmation prompt retries.+--+-- 'failureConditional', 'intentConfirmationSetting_failureConditional' - Undocumented member.+--+-- 'failureNextStep', 'intentConfirmationSetting_failureNextStep' - The next step to take in the conversation if the confirmation step+-- fails.+--+-- 'failureResponse', 'intentConfirmationSetting_failureResponse' - Undocumented member.+--+-- 'promptSpecification', 'intentConfirmationSetting_promptSpecification' - Prompts the user to confirm the intent. This question should have a yes+-- or no answer.+--+-- Amazon Lex uses this prompt to ensure that the user acknowledges that+-- the intent is ready for fulfillment. For example, with the @OrderPizza@+-- intent, you might want to confirm that the order is correct before+-- placing it. For other intents, such as intents that simply respond to+-- user questions, you might not need to ask the user for confirmation+-- before providing the information.+newIntentConfirmationSetting ::+ -- | 'promptSpecification'+ PromptSpecification ->+ IntentConfirmationSetting+newIntentConfirmationSetting pPromptSpecification_ =+ IntentConfirmationSetting'+ { active =+ Prelude.Nothing,+ codeHook = Prelude.Nothing,+ confirmationConditional = Prelude.Nothing,+ confirmationNextStep = Prelude.Nothing,+ confirmationResponse = Prelude.Nothing,+ declinationConditional = Prelude.Nothing,+ declinationNextStep = Prelude.Nothing,+ declinationResponse = Prelude.Nothing,+ elicitationCodeHook = Prelude.Nothing,+ failureConditional = Prelude.Nothing,+ failureNextStep = Prelude.Nothing,+ failureResponse = Prelude.Nothing,+ promptSpecification = pPromptSpecification_+ }++-- | Specifies whether the intent\'s confirmation is sent to the user. When+-- this field is false, confirmation and declination responses aren\'t+-- sent. If the @active@ field isn\'t specified, the default is true.+intentConfirmationSetting_active :: Lens.Lens' IntentConfirmationSetting (Prelude.Maybe Prelude.Bool)+intentConfirmationSetting_active = Lens.lens (\IntentConfirmationSetting' {active} -> active) (\s@IntentConfirmationSetting' {} a -> s {active = a} :: IntentConfirmationSetting)++-- | The @DialogCodeHookInvocationSetting@ object associated with intent\'s+-- confirmation step. The dialog code hook is triggered based on these+-- invocation settings when the confirmation next step or declination next+-- step or failure next step is @InvokeDialogCodeHook@.+intentConfirmationSetting_codeHook :: Lens.Lens' IntentConfirmationSetting (Prelude.Maybe DialogCodeHookInvocationSetting)+intentConfirmationSetting_codeHook = Lens.lens (\IntentConfirmationSetting' {codeHook} -> codeHook) (\s@IntentConfirmationSetting' {} a -> s {codeHook = a} :: IntentConfirmationSetting)++-- | A list of conditional branches to evaluate after the intent is closed.+intentConfirmationSetting_confirmationConditional :: Lens.Lens' IntentConfirmationSetting (Prelude.Maybe ConditionalSpecification)+intentConfirmationSetting_confirmationConditional = Lens.lens (\IntentConfirmationSetting' {confirmationConditional} -> confirmationConditional) (\s@IntentConfirmationSetting' {} a -> s {confirmationConditional = a} :: IntentConfirmationSetting)++-- | Specifies the next step that the bot executes when the customer confirms+-- the intent.+intentConfirmationSetting_confirmationNextStep :: Lens.Lens' IntentConfirmationSetting (Prelude.Maybe DialogState)+intentConfirmationSetting_confirmationNextStep = Lens.lens (\IntentConfirmationSetting' {confirmationNextStep} -> confirmationNextStep) (\s@IntentConfirmationSetting' {} a -> s {confirmationNextStep = a} :: IntentConfirmationSetting)++-- | Undocumented member.+intentConfirmationSetting_confirmationResponse :: Lens.Lens' IntentConfirmationSetting (Prelude.Maybe ResponseSpecification)+intentConfirmationSetting_confirmationResponse = Lens.lens (\IntentConfirmationSetting' {confirmationResponse} -> confirmationResponse) (\s@IntentConfirmationSetting' {} a -> s {confirmationResponse = a} :: IntentConfirmationSetting)++-- | A list of conditional branches to evaluate after the intent is declined.+intentConfirmationSetting_declinationConditional :: Lens.Lens' IntentConfirmationSetting (Prelude.Maybe ConditionalSpecification)+intentConfirmationSetting_declinationConditional = Lens.lens (\IntentConfirmationSetting' {declinationConditional} -> declinationConditional) (\s@IntentConfirmationSetting' {} a -> s {declinationConditional = a} :: IntentConfirmationSetting)++-- | Specifies the next step that the bot executes when the customer declines+-- the intent.+intentConfirmationSetting_declinationNextStep :: Lens.Lens' IntentConfirmationSetting (Prelude.Maybe DialogState)+intentConfirmationSetting_declinationNextStep = Lens.lens (\IntentConfirmationSetting' {declinationNextStep} -> declinationNextStep) (\s@IntentConfirmationSetting' {} a -> s {declinationNextStep = a} :: IntentConfirmationSetting)++-- | When the user answers \"no\" to the question defined in+-- @promptSpecification@, Amazon Lex responds with this response to+-- acknowledge that the intent was canceled.+intentConfirmationSetting_declinationResponse :: Lens.Lens' IntentConfirmationSetting (Prelude.Maybe ResponseSpecification)+intentConfirmationSetting_declinationResponse = Lens.lens (\IntentConfirmationSetting' {declinationResponse} -> declinationResponse) (\s@IntentConfirmationSetting' {} a -> s {declinationResponse = a} :: IntentConfirmationSetting)++-- | The @DialogCodeHookInvocationSetting@ used when the code hook is invoked+-- during confirmation prompt retries.+intentConfirmationSetting_elicitationCodeHook :: Lens.Lens' IntentConfirmationSetting (Prelude.Maybe ElicitationCodeHookInvocationSetting)+intentConfirmationSetting_elicitationCodeHook = Lens.lens (\IntentConfirmationSetting' {elicitationCodeHook} -> elicitationCodeHook) (\s@IntentConfirmationSetting' {} a -> s {elicitationCodeHook = a} :: IntentConfirmationSetting)++-- | Undocumented member.+intentConfirmationSetting_failureConditional :: Lens.Lens' IntentConfirmationSetting (Prelude.Maybe ConditionalSpecification)+intentConfirmationSetting_failureConditional = Lens.lens (\IntentConfirmationSetting' {failureConditional} -> failureConditional) (\s@IntentConfirmationSetting' {} a -> s {failureConditional = a} :: IntentConfirmationSetting)++-- | The next step to take in the conversation if the confirmation step+-- fails.+intentConfirmationSetting_failureNextStep :: Lens.Lens' IntentConfirmationSetting (Prelude.Maybe DialogState)+intentConfirmationSetting_failureNextStep = Lens.lens (\IntentConfirmationSetting' {failureNextStep} -> failureNextStep) (\s@IntentConfirmationSetting' {} a -> s {failureNextStep = a} :: IntentConfirmationSetting)++-- | Undocumented member.+intentConfirmationSetting_failureResponse :: Lens.Lens' IntentConfirmationSetting (Prelude.Maybe ResponseSpecification)+intentConfirmationSetting_failureResponse = Lens.lens (\IntentConfirmationSetting' {failureResponse} -> failureResponse) (\s@IntentConfirmationSetting' {} a -> s {failureResponse = a} :: IntentConfirmationSetting)++-- | Prompts the user to confirm the intent. This question should have a yes+-- or no answer.+--+-- Amazon Lex uses this prompt to ensure that the user acknowledges that+-- the intent is ready for fulfillment. For example, with the @OrderPizza@+-- intent, you might want to confirm that the order is correct before+-- placing it. For other intents, such as intents that simply respond to+-- user questions, you might not need to ask the user for confirmation+-- before providing the information.+intentConfirmationSetting_promptSpecification :: Lens.Lens' IntentConfirmationSetting PromptSpecification+intentConfirmationSetting_promptSpecification = Lens.lens (\IntentConfirmationSetting' {promptSpecification} -> promptSpecification) (\s@IntentConfirmationSetting' {} a -> s {promptSpecification = a} :: IntentConfirmationSetting)++instance Data.FromJSON IntentConfirmationSetting where+ parseJSON =+ Data.withObject+ "IntentConfirmationSetting"+ ( \x ->+ IntentConfirmationSetting'+ Prelude.<$> (x Data..:? "active")+ Prelude.<*> (x Data..:? "codeHook")+ Prelude.<*> (x Data..:? "confirmationConditional")+ Prelude.<*> (x Data..:? "confirmationNextStep")+ Prelude.<*> (x Data..:? "confirmationResponse")+ Prelude.<*> (x Data..:? "declinationConditional")+ Prelude.<*> (x Data..:? "declinationNextStep")+ Prelude.<*> (x Data..:? "declinationResponse")+ Prelude.<*> (x Data..:? "elicitationCodeHook")+ Prelude.<*> (x Data..:? "failureConditional")+ Prelude.<*> (x Data..:? "failureNextStep")+ Prelude.<*> (x Data..:? "failureResponse")+ Prelude.<*> (x Data..: "promptSpecification")+ )++instance Prelude.Hashable IntentConfirmationSetting where+ hashWithSalt _salt IntentConfirmationSetting' {..} =+ _salt+ `Prelude.hashWithSalt` active+ `Prelude.hashWithSalt` codeHook+ `Prelude.hashWithSalt` confirmationConditional+ `Prelude.hashWithSalt` confirmationNextStep+ `Prelude.hashWithSalt` confirmationResponse+ `Prelude.hashWithSalt` declinationConditional+ `Prelude.hashWithSalt` declinationNextStep+ `Prelude.hashWithSalt` declinationResponse+ `Prelude.hashWithSalt` elicitationCodeHook+ `Prelude.hashWithSalt` failureConditional+ `Prelude.hashWithSalt` failureNextStep+ `Prelude.hashWithSalt` failureResponse+ `Prelude.hashWithSalt` promptSpecification++instance Prelude.NFData IntentConfirmationSetting where+ rnf IntentConfirmationSetting' {..} =+ Prelude.rnf active+ `Prelude.seq` Prelude.rnf codeHook+ `Prelude.seq` Prelude.rnf confirmationConditional+ `Prelude.seq` Prelude.rnf confirmationNextStep+ `Prelude.seq` Prelude.rnf confirmationResponse+ `Prelude.seq` Prelude.rnf declinationConditional+ `Prelude.seq` Prelude.rnf declinationNextStep+ `Prelude.seq` Prelude.rnf declinationResponse+ `Prelude.seq` Prelude.rnf elicitationCodeHook+ `Prelude.seq` Prelude.rnf failureConditional+ `Prelude.seq` Prelude.rnf failureNextStep+ `Prelude.seq` Prelude.rnf failureResponse+ `Prelude.seq` Prelude.rnf promptSpecification++instance Data.ToJSON IntentConfirmationSetting where+ toJSON IntentConfirmationSetting' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("active" Data..=) Prelude.<$> active,+ ("codeHook" Data..=) Prelude.<$> codeHook,+ ("confirmationConditional" Data..=)+ Prelude.<$> confirmationConditional,+ ("confirmationNextStep" Data..=)+ Prelude.<$> confirmationNextStep,+ ("confirmationResponse" Data..=)+ Prelude.<$> confirmationResponse,+ ("declinationConditional" Data..=)+ Prelude.<$> declinationConditional,+ ("declinationNextStep" Data..=)+ Prelude.<$> declinationNextStep,+ ("declinationResponse" Data..=)+ Prelude.<$> declinationResponse,+ ("elicitationCodeHook" Data..=)+ Prelude.<$> elicitationCodeHook,+ ("failureConditional" Data..=)+ Prelude.<$> failureConditional,+ ("failureNextStep" Data..=)+ Prelude.<$> failureNextStep,+ ("failureResponse" Data..=)+ Prelude.<$> failureResponse,+ Prelude.Just+ ("promptSpecification" Data..= promptSpecification)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/IntentFilter.hs view
@@ -0,0 +1,112 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.IntentFilter+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.IntentFilter where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.IntentFilterName+import Amazonka.LexV2Models.Types.IntentFilterOperator+import qualified Amazonka.Prelude as Prelude++-- | Filters the response from the @ListIntents@ operation.+--+-- /See:/ 'newIntentFilter' smart constructor.+data IntentFilter = IntentFilter'+ { -- | The name of the field to use for the filter.+ name :: IntentFilterName,+ -- | The value to use for the filter.+ values :: Prelude.NonEmpty Prelude.Text,+ -- | The operator to use for the filter. Specify @EQ@ when the @ListIntents@+ -- operation should return only aliases that equal the specified value.+ -- Specify @CO@ when the @ListIntents@ operation should return aliases that+ -- contain the specified value.+ operator :: IntentFilterOperator+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'IntentFilter' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'name', 'intentFilter_name' - The name of the field to use for the filter.+--+-- 'values', 'intentFilter_values' - The value to use for the filter.+--+-- 'operator', 'intentFilter_operator' - The operator to use for the filter. Specify @EQ@ when the @ListIntents@+-- operation should return only aliases that equal the specified value.+-- Specify @CO@ when the @ListIntents@ operation should return aliases that+-- contain the specified value.+newIntentFilter ::+ -- | 'name'+ IntentFilterName ->+ -- | 'values'+ Prelude.NonEmpty Prelude.Text ->+ -- | 'operator'+ IntentFilterOperator ->+ IntentFilter+newIntentFilter pName_ pValues_ pOperator_ =+ IntentFilter'+ { name = pName_,+ values = Lens.coerced Lens.# pValues_,+ operator = pOperator_+ }++-- | The name of the field to use for the filter.+intentFilter_name :: Lens.Lens' IntentFilter IntentFilterName+intentFilter_name = Lens.lens (\IntentFilter' {name} -> name) (\s@IntentFilter' {} a -> s {name = a} :: IntentFilter)++-- | The value to use for the filter.+intentFilter_values :: Lens.Lens' IntentFilter (Prelude.NonEmpty Prelude.Text)+intentFilter_values = Lens.lens (\IntentFilter' {values} -> values) (\s@IntentFilter' {} a -> s {values = a} :: IntentFilter) Prelude.. Lens.coerced++-- | The operator to use for the filter. Specify @EQ@ when the @ListIntents@+-- operation should return only aliases that equal the specified value.+-- Specify @CO@ when the @ListIntents@ operation should return aliases that+-- contain the specified value.+intentFilter_operator :: Lens.Lens' IntentFilter IntentFilterOperator+intentFilter_operator = Lens.lens (\IntentFilter' {operator} -> operator) (\s@IntentFilter' {} a -> s {operator = a} :: IntentFilter)++instance Prelude.Hashable IntentFilter where+ hashWithSalt _salt IntentFilter' {..} =+ _salt+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` values+ `Prelude.hashWithSalt` operator++instance Prelude.NFData IntentFilter where+ rnf IntentFilter' {..} =+ Prelude.rnf name+ `Prelude.seq` Prelude.rnf values+ `Prelude.seq` Prelude.rnf operator++instance Data.ToJSON IntentFilter where+ toJSON IntentFilter' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("name" Data..= name),+ Prelude.Just ("values" Data..= values),+ Prelude.Just ("operator" Data..= operator)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/IntentFilterName.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.IntentFilterName+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.IntentFilterName+ ( IntentFilterName+ ( ..,+ IntentFilterName_IntentName+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype IntentFilterName = IntentFilterName'+ { fromIntentFilterName ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern IntentFilterName_IntentName :: IntentFilterName+pattern IntentFilterName_IntentName = IntentFilterName' "IntentName"++{-# COMPLETE+ IntentFilterName_IntentName,+ IntentFilterName'+ #-}
+ gen/Amazonka/LexV2Models/Types/IntentFilterOperator.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.IntentFilterOperator+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.IntentFilterOperator+ ( IntentFilterOperator+ ( ..,+ IntentFilterOperator_CO,+ IntentFilterOperator_EQ+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype IntentFilterOperator = IntentFilterOperator'+ { fromIntentFilterOperator ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern IntentFilterOperator_CO :: IntentFilterOperator+pattern IntentFilterOperator_CO = IntentFilterOperator' "CO"++pattern IntentFilterOperator_EQ :: IntentFilterOperator+pattern IntentFilterOperator_EQ = IntentFilterOperator' "EQ"++{-# COMPLETE+ IntentFilterOperator_CO,+ IntentFilterOperator_EQ,+ IntentFilterOperator'+ #-}
+ gen/Amazonka/LexV2Models/Types/IntentOverride.hs view
@@ -0,0 +1,99 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.IntentOverride+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.IntentOverride where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.SlotValueOverride+import qualified Amazonka.Prelude as Prelude++-- | Override settings to configure the intent state.+--+-- /See:/ 'newIntentOverride' smart constructor.+data IntentOverride = IntentOverride'+ { -- | The name of the intent. Only required when you\'re switching intents.+ name :: Prelude.Maybe Prelude.Text,+ -- | A map of all of the slot value overrides for the intent. The name of the+ -- slot maps to the value of the slot. Slots that are not included in the+ -- map aren\'t overridden.,+ slots :: Prelude.Maybe (Prelude.HashMap Prelude.Text SlotValueOverride)+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'IntentOverride' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'name', 'intentOverride_name' - The name of the intent. Only required when you\'re switching intents.+--+-- 'slots', 'intentOverride_slots' - A map of all of the slot value overrides for the intent. The name of the+-- slot maps to the value of the slot. Slots that are not included in the+-- map aren\'t overridden.,+newIntentOverride ::+ IntentOverride+newIntentOverride =+ IntentOverride'+ { name = Prelude.Nothing,+ slots = Prelude.Nothing+ }++-- | The name of the intent. Only required when you\'re switching intents.+intentOverride_name :: Lens.Lens' IntentOverride (Prelude.Maybe Prelude.Text)+intentOverride_name = Lens.lens (\IntentOverride' {name} -> name) (\s@IntentOverride' {} a -> s {name = a} :: IntentOverride)++-- | A map of all of the slot value overrides for the intent. The name of the+-- slot maps to the value of the slot. Slots that are not included in the+-- map aren\'t overridden.,+intentOverride_slots :: Lens.Lens' IntentOverride (Prelude.Maybe (Prelude.HashMap Prelude.Text SlotValueOverride))+intentOverride_slots = Lens.lens (\IntentOverride' {slots} -> slots) (\s@IntentOverride' {} a -> s {slots = a} :: IntentOverride) Prelude.. Lens.mapping Lens.coerced++instance Data.FromJSON IntentOverride where+ parseJSON =+ Data.withObject+ "IntentOverride"+ ( \x ->+ IntentOverride'+ Prelude.<$> (x Data..:? "name")+ Prelude.<*> (x Data..:? "slots" Data..!= Prelude.mempty)+ )++instance Prelude.Hashable IntentOverride where+ hashWithSalt _salt IntentOverride' {..} =+ _salt+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` slots++instance Prelude.NFData IntentOverride where+ rnf IntentOverride' {..} =+ Prelude.rnf name `Prelude.seq` Prelude.rnf slots++instance Data.ToJSON IntentOverride where+ toJSON IntentOverride' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("name" Data..=) Prelude.<$> name,+ ("slots" Data..=) Prelude.<$> slots+ ]+ )
+ gen/Amazonka/LexV2Models/Types/IntentSortAttribute.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.IntentSortAttribute+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.IntentSortAttribute+ ( IntentSortAttribute+ ( ..,+ IntentSortAttribute_IntentName,+ IntentSortAttribute_LastUpdatedDateTime+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype IntentSortAttribute = IntentSortAttribute'+ { fromIntentSortAttribute ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern IntentSortAttribute_IntentName :: IntentSortAttribute+pattern IntentSortAttribute_IntentName = IntentSortAttribute' "IntentName"++pattern IntentSortAttribute_LastUpdatedDateTime :: IntentSortAttribute+pattern IntentSortAttribute_LastUpdatedDateTime = IntentSortAttribute' "LastUpdatedDateTime"++{-# COMPLETE+ IntentSortAttribute_IntentName,+ IntentSortAttribute_LastUpdatedDateTime,+ IntentSortAttribute'+ #-}
+ gen/Amazonka/LexV2Models/Types/IntentSortBy.hs view
@@ -0,0 +1,89 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.IntentSortBy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.IntentSortBy where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.IntentSortAttribute+import Amazonka.LexV2Models.Types.SortOrder+import qualified Amazonka.Prelude as Prelude++-- | Specifies attributes for sorting a list of intents.+--+-- /See:/ 'newIntentSortBy' smart constructor.+data IntentSortBy = IntentSortBy'+ { -- | The attribute to use to sort the list of intents.+ attribute :: IntentSortAttribute,+ -- | The order to sort the list. You can choose ascending or descending.+ order :: SortOrder+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'IntentSortBy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'attribute', 'intentSortBy_attribute' - The attribute to use to sort the list of intents.+--+-- 'order', 'intentSortBy_order' - The order to sort the list. You can choose ascending or descending.+newIntentSortBy ::+ -- | 'attribute'+ IntentSortAttribute ->+ -- | 'order'+ SortOrder ->+ IntentSortBy+newIntentSortBy pAttribute_ pOrder_ =+ IntentSortBy'+ { attribute = pAttribute_,+ order = pOrder_+ }++-- | The attribute to use to sort the list of intents.+intentSortBy_attribute :: Lens.Lens' IntentSortBy IntentSortAttribute+intentSortBy_attribute = Lens.lens (\IntentSortBy' {attribute} -> attribute) (\s@IntentSortBy' {} a -> s {attribute = a} :: IntentSortBy)++-- | The order to sort the list. You can choose ascending or descending.+intentSortBy_order :: Lens.Lens' IntentSortBy SortOrder+intentSortBy_order = Lens.lens (\IntentSortBy' {order} -> order) (\s@IntentSortBy' {} a -> s {order = a} :: IntentSortBy)++instance Prelude.Hashable IntentSortBy where+ hashWithSalt _salt IntentSortBy' {..} =+ _salt+ `Prelude.hashWithSalt` attribute+ `Prelude.hashWithSalt` order++instance Prelude.NFData IntentSortBy where+ rnf IntentSortBy' {..} =+ Prelude.rnf attribute+ `Prelude.seq` Prelude.rnf order++instance Data.ToJSON IntentSortBy where+ toJSON IntentSortBy' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("attribute" Data..= attribute),+ Prelude.Just ("order" Data..= order)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/IntentStatistics.hs view
@@ -0,0 +1,76 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.IntentStatistics+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.IntentStatistics where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The object that contains the statistical summary of recommended intents+-- associated with the bot recommendation.+--+-- /See:/ 'newIntentStatistics' smart constructor.+data IntentStatistics = IntentStatistics'+ { -- | The number of recommended intents associated with the bot+ -- recommendation.+ discoveredIntentCount :: Prelude.Maybe Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'IntentStatistics' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'discoveredIntentCount', 'intentStatistics_discoveredIntentCount' - The number of recommended intents associated with the bot+-- recommendation.+newIntentStatistics ::+ IntentStatistics+newIntentStatistics =+ IntentStatistics'+ { discoveredIntentCount =+ Prelude.Nothing+ }++-- | The number of recommended intents associated with the bot+-- recommendation.+intentStatistics_discoveredIntentCount :: Lens.Lens' IntentStatistics (Prelude.Maybe Prelude.Int)+intentStatistics_discoveredIntentCount = Lens.lens (\IntentStatistics' {discoveredIntentCount} -> discoveredIntentCount) (\s@IntentStatistics' {} a -> s {discoveredIntentCount = a} :: IntentStatistics)++instance Data.FromJSON IntentStatistics where+ parseJSON =+ Data.withObject+ "IntentStatistics"+ ( \x ->+ IntentStatistics'+ Prelude.<$> (x Data..:? "discoveredIntentCount")+ )++instance Prelude.Hashable IntentStatistics where+ hashWithSalt _salt IntentStatistics' {..} =+ _salt `Prelude.hashWithSalt` discoveredIntentCount++instance Prelude.NFData IntentStatistics where+ rnf IntentStatistics' {..} =+ Prelude.rnf discoveredIntentCount
+ gen/Amazonka/LexV2Models/Types/IntentSummary.hs view
@@ -0,0 +1,159 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.IntentSummary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.IntentSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.InputContext+import Amazonka.LexV2Models.Types.OutputContext+import qualified Amazonka.Prelude as Prelude++-- | Summary information about an intent returned by the @ListIntents@+-- operation.+--+-- /See:/ 'newIntentSummary' smart constructor.+data IntentSummary = IntentSummary'+ { -- | The description of the intent.+ description :: Prelude.Maybe Prelude.Text,+ -- | The input contexts that must be active for this intent to be considered+ -- for recognition.+ inputContexts :: Prelude.Maybe [InputContext],+ -- | The unique identifier assigned to the intent. Use this ID to get+ -- detailed information about the intent with the @DescribeIntent@+ -- operation.+ intentId :: Prelude.Maybe Prelude.Text,+ -- | The name of the intent.+ intentName :: Prelude.Maybe Prelude.Text,+ -- | The timestamp of the date and time that the intent was last updated.+ lastUpdatedDateTime :: Prelude.Maybe Data.POSIX,+ -- | The output contexts that are activated when this intent is fulfilled.+ outputContexts :: Prelude.Maybe [OutputContext],+ -- | If this intent is derived from a built-in intent, the name of the parent+ -- intent.+ parentIntentSignature :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'IntentSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'description', 'intentSummary_description' - The description of the intent.+--+-- 'inputContexts', 'intentSummary_inputContexts' - The input contexts that must be active for this intent to be considered+-- for recognition.+--+-- 'intentId', 'intentSummary_intentId' - The unique identifier assigned to the intent. Use this ID to get+-- detailed information about the intent with the @DescribeIntent@+-- operation.+--+-- 'intentName', 'intentSummary_intentName' - The name of the intent.+--+-- 'lastUpdatedDateTime', 'intentSummary_lastUpdatedDateTime' - The timestamp of the date and time that the intent was last updated.+--+-- 'outputContexts', 'intentSummary_outputContexts' - The output contexts that are activated when this intent is fulfilled.+--+-- 'parentIntentSignature', 'intentSummary_parentIntentSignature' - If this intent is derived from a built-in intent, the name of the parent+-- intent.+newIntentSummary ::+ IntentSummary+newIntentSummary =+ IntentSummary'+ { description = Prelude.Nothing,+ inputContexts = Prelude.Nothing,+ intentId = Prelude.Nothing,+ intentName = Prelude.Nothing,+ lastUpdatedDateTime = Prelude.Nothing,+ outputContexts = Prelude.Nothing,+ parentIntentSignature = Prelude.Nothing+ }++-- | The description of the intent.+intentSummary_description :: Lens.Lens' IntentSummary (Prelude.Maybe Prelude.Text)+intentSummary_description = Lens.lens (\IntentSummary' {description} -> description) (\s@IntentSummary' {} a -> s {description = a} :: IntentSummary)++-- | The input contexts that must be active for this intent to be considered+-- for recognition.+intentSummary_inputContexts :: Lens.Lens' IntentSummary (Prelude.Maybe [InputContext])+intentSummary_inputContexts = Lens.lens (\IntentSummary' {inputContexts} -> inputContexts) (\s@IntentSummary' {} a -> s {inputContexts = a} :: IntentSummary) Prelude.. Lens.mapping Lens.coerced++-- | The unique identifier assigned to the intent. Use this ID to get+-- detailed information about the intent with the @DescribeIntent@+-- operation.+intentSummary_intentId :: Lens.Lens' IntentSummary (Prelude.Maybe Prelude.Text)+intentSummary_intentId = Lens.lens (\IntentSummary' {intentId} -> intentId) (\s@IntentSummary' {} a -> s {intentId = a} :: IntentSummary)++-- | The name of the intent.+intentSummary_intentName :: Lens.Lens' IntentSummary (Prelude.Maybe Prelude.Text)+intentSummary_intentName = Lens.lens (\IntentSummary' {intentName} -> intentName) (\s@IntentSummary' {} a -> s {intentName = a} :: IntentSummary)++-- | The timestamp of the date and time that the intent was last updated.+intentSummary_lastUpdatedDateTime :: Lens.Lens' IntentSummary (Prelude.Maybe Prelude.UTCTime)+intentSummary_lastUpdatedDateTime = Lens.lens (\IntentSummary' {lastUpdatedDateTime} -> lastUpdatedDateTime) (\s@IntentSummary' {} a -> s {lastUpdatedDateTime = a} :: IntentSummary) Prelude.. Lens.mapping Data._Time++-- | The output contexts that are activated when this intent is fulfilled.+intentSummary_outputContexts :: Lens.Lens' IntentSummary (Prelude.Maybe [OutputContext])+intentSummary_outputContexts = Lens.lens (\IntentSummary' {outputContexts} -> outputContexts) (\s@IntentSummary' {} a -> s {outputContexts = a} :: IntentSummary) Prelude.. Lens.mapping Lens.coerced++-- | If this intent is derived from a built-in intent, the name of the parent+-- intent.+intentSummary_parentIntentSignature :: Lens.Lens' IntentSummary (Prelude.Maybe Prelude.Text)+intentSummary_parentIntentSignature = Lens.lens (\IntentSummary' {parentIntentSignature} -> parentIntentSignature) (\s@IntentSummary' {} a -> s {parentIntentSignature = a} :: IntentSummary)++instance Data.FromJSON IntentSummary where+ parseJSON =+ Data.withObject+ "IntentSummary"+ ( \x ->+ IntentSummary'+ Prelude.<$> (x Data..:? "description")+ Prelude.<*> (x Data..:? "inputContexts" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "intentId")+ Prelude.<*> (x Data..:? "intentName")+ Prelude.<*> (x Data..:? "lastUpdatedDateTime")+ Prelude.<*> (x Data..:? "outputContexts" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "parentIntentSignature")+ )++instance Prelude.Hashable IntentSummary where+ hashWithSalt _salt IntentSummary' {..} =+ _salt+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` inputContexts+ `Prelude.hashWithSalt` intentId+ `Prelude.hashWithSalt` intentName+ `Prelude.hashWithSalt` lastUpdatedDateTime+ `Prelude.hashWithSalt` outputContexts+ `Prelude.hashWithSalt` parentIntentSignature++instance Prelude.NFData IntentSummary where+ rnf IntentSummary' {..} =+ Prelude.rnf description+ `Prelude.seq` Prelude.rnf inputContexts+ `Prelude.seq` Prelude.rnf intentId+ `Prelude.seq` Prelude.rnf intentName+ `Prelude.seq` Prelude.rnf lastUpdatedDateTime+ `Prelude.seq` Prelude.rnf outputContexts+ `Prelude.seq` Prelude.rnf parentIntentSignature
+ gen/Amazonka/LexV2Models/Types/KendraConfiguration.hs view
@@ -0,0 +1,132 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.KendraConfiguration+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.KendraConfiguration where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Provides configuration information for the AMAZON.KendraSearchIntent+-- intent. When you use this intent, Amazon Lex searches the specified+-- Amazon Kendra index and returns documents from the index that match the+-- user\'s utterance.+--+-- /See:/ 'newKendraConfiguration' smart constructor.+data KendraConfiguration = KendraConfiguration'+ { -- | A query filter that Amazon Lex sends to Amazon Kendra to filter the+ -- response from a query. The filter is in the format defined by Amazon+ -- Kendra. For more information, see+ -- <https://docs.aws.amazon.com/kendra/latest/dg/filtering.html Filtering queries>.+ queryFilterString :: Prelude.Maybe Prelude.Text,+ -- | Determines whether the AMAZON.KendraSearchIntent intent uses a custom+ -- query string to query the Amazon Kendra index.+ queryFilterStringEnabled :: Prelude.Maybe Prelude.Bool,+ -- | The Amazon Resource Name (ARN) of the Amazon Kendra index that you want+ -- the AMAZON.KendraSearchIntent intent to search. The index must be in the+ -- same account and Region as the Amazon Lex bot.+ kendraIndex :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'KendraConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'queryFilterString', 'kendraConfiguration_queryFilterString' - A query filter that Amazon Lex sends to Amazon Kendra to filter the+-- response from a query. The filter is in the format defined by Amazon+-- Kendra. For more information, see+-- <https://docs.aws.amazon.com/kendra/latest/dg/filtering.html Filtering queries>.+--+-- 'queryFilterStringEnabled', 'kendraConfiguration_queryFilterStringEnabled' - Determines whether the AMAZON.KendraSearchIntent intent uses a custom+-- query string to query the Amazon Kendra index.+--+-- 'kendraIndex', 'kendraConfiguration_kendraIndex' - The Amazon Resource Name (ARN) of the Amazon Kendra index that you want+-- the AMAZON.KendraSearchIntent intent to search. The index must be in the+-- same account and Region as the Amazon Lex bot.+newKendraConfiguration ::+ -- | 'kendraIndex'+ Prelude.Text ->+ KendraConfiguration+newKendraConfiguration pKendraIndex_ =+ KendraConfiguration'+ { queryFilterString =+ Prelude.Nothing,+ queryFilterStringEnabled = Prelude.Nothing,+ kendraIndex = pKendraIndex_+ }++-- | A query filter that Amazon Lex sends to Amazon Kendra to filter the+-- response from a query. The filter is in the format defined by Amazon+-- Kendra. For more information, see+-- <https://docs.aws.amazon.com/kendra/latest/dg/filtering.html Filtering queries>.+kendraConfiguration_queryFilterString :: Lens.Lens' KendraConfiguration (Prelude.Maybe Prelude.Text)+kendraConfiguration_queryFilterString = Lens.lens (\KendraConfiguration' {queryFilterString} -> queryFilterString) (\s@KendraConfiguration' {} a -> s {queryFilterString = a} :: KendraConfiguration)++-- | Determines whether the AMAZON.KendraSearchIntent intent uses a custom+-- query string to query the Amazon Kendra index.+kendraConfiguration_queryFilterStringEnabled :: Lens.Lens' KendraConfiguration (Prelude.Maybe Prelude.Bool)+kendraConfiguration_queryFilterStringEnabled = Lens.lens (\KendraConfiguration' {queryFilterStringEnabled} -> queryFilterStringEnabled) (\s@KendraConfiguration' {} a -> s {queryFilterStringEnabled = a} :: KendraConfiguration)++-- | The Amazon Resource Name (ARN) of the Amazon Kendra index that you want+-- the AMAZON.KendraSearchIntent intent to search. The index must be in the+-- same account and Region as the Amazon Lex bot.+kendraConfiguration_kendraIndex :: Lens.Lens' KendraConfiguration Prelude.Text+kendraConfiguration_kendraIndex = Lens.lens (\KendraConfiguration' {kendraIndex} -> kendraIndex) (\s@KendraConfiguration' {} a -> s {kendraIndex = a} :: KendraConfiguration)++instance Data.FromJSON KendraConfiguration where+ parseJSON =+ Data.withObject+ "KendraConfiguration"+ ( \x ->+ KendraConfiguration'+ Prelude.<$> (x Data..:? "queryFilterString")+ Prelude.<*> (x Data..:? "queryFilterStringEnabled")+ Prelude.<*> (x Data..: "kendraIndex")+ )++instance Prelude.Hashable KendraConfiguration where+ hashWithSalt _salt KendraConfiguration' {..} =+ _salt+ `Prelude.hashWithSalt` queryFilterString+ `Prelude.hashWithSalt` queryFilterStringEnabled+ `Prelude.hashWithSalt` kendraIndex++instance Prelude.NFData KendraConfiguration where+ rnf KendraConfiguration' {..} =+ Prelude.rnf queryFilterString+ `Prelude.seq` Prelude.rnf queryFilterStringEnabled+ `Prelude.seq` Prelude.rnf kendraIndex++instance Data.ToJSON KendraConfiguration where+ toJSON KendraConfiguration' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("queryFilterString" Data..=)+ Prelude.<$> queryFilterString,+ ("queryFilterStringEnabled" Data..=)+ Prelude.<$> queryFilterStringEnabled,+ Prelude.Just ("kendraIndex" Data..= kendraIndex)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/LambdaCodeHook.hs view
@@ -0,0 +1,107 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.LambdaCodeHook+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.LambdaCodeHook where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Specifies a Lambda function that verifies requests to a bot or fulfills+-- the user\'s request to a bot.+--+-- /See:/ 'newLambdaCodeHook' smart constructor.+data LambdaCodeHook = LambdaCodeHook'+ { -- | The Amazon Resource Name (ARN) of the Lambda function.+ lambdaARN :: Prelude.Text,+ -- | The version of the request-response that you want Amazon Lex to use to+ -- invoke your Lambda function.+ codeHookInterfaceVersion :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LambdaCodeHook' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'lambdaARN', 'lambdaCodeHook_lambdaARN' - The Amazon Resource Name (ARN) of the Lambda function.+--+-- 'codeHookInterfaceVersion', 'lambdaCodeHook_codeHookInterfaceVersion' - The version of the request-response that you want Amazon Lex to use to+-- invoke your Lambda function.+newLambdaCodeHook ::+ -- | 'lambdaARN'+ Prelude.Text ->+ -- | 'codeHookInterfaceVersion'+ Prelude.Text ->+ LambdaCodeHook+newLambdaCodeHook+ pLambdaARN_+ pCodeHookInterfaceVersion_ =+ LambdaCodeHook'+ { lambdaARN = pLambdaARN_,+ codeHookInterfaceVersion =+ pCodeHookInterfaceVersion_+ }++-- | The Amazon Resource Name (ARN) of the Lambda function.+lambdaCodeHook_lambdaARN :: Lens.Lens' LambdaCodeHook Prelude.Text+lambdaCodeHook_lambdaARN = Lens.lens (\LambdaCodeHook' {lambdaARN} -> lambdaARN) (\s@LambdaCodeHook' {} a -> s {lambdaARN = a} :: LambdaCodeHook)++-- | The version of the request-response that you want Amazon Lex to use to+-- invoke your Lambda function.+lambdaCodeHook_codeHookInterfaceVersion :: Lens.Lens' LambdaCodeHook Prelude.Text+lambdaCodeHook_codeHookInterfaceVersion = Lens.lens (\LambdaCodeHook' {codeHookInterfaceVersion} -> codeHookInterfaceVersion) (\s@LambdaCodeHook' {} a -> s {codeHookInterfaceVersion = a} :: LambdaCodeHook)++instance Data.FromJSON LambdaCodeHook where+ parseJSON =+ Data.withObject+ "LambdaCodeHook"+ ( \x ->+ LambdaCodeHook'+ Prelude.<$> (x Data..: "lambdaARN")+ Prelude.<*> (x Data..: "codeHookInterfaceVersion")+ )++instance Prelude.Hashable LambdaCodeHook where+ hashWithSalt _salt LambdaCodeHook' {..} =+ _salt+ `Prelude.hashWithSalt` lambdaARN+ `Prelude.hashWithSalt` codeHookInterfaceVersion++instance Prelude.NFData LambdaCodeHook where+ rnf LambdaCodeHook' {..} =+ Prelude.rnf lambdaARN+ `Prelude.seq` Prelude.rnf codeHookInterfaceVersion++instance Data.ToJSON LambdaCodeHook where+ toJSON LambdaCodeHook' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("lambdaARN" Data..= lambdaARN),+ Prelude.Just+ ( "codeHookInterfaceVersion"+ Data..= codeHookInterfaceVersion+ )+ ]+ )
+ gen/Amazonka/LexV2Models/Types/LexTranscriptFilter.hs view
@@ -0,0 +1,89 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.LexTranscriptFilter+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.LexTranscriptFilter where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.DateRangeFilter+import qualified Amazonka.Prelude as Prelude++-- | The object that contains transcript filter details that are associated+-- with a bot recommendation.+--+-- /See:/ 'newLexTranscriptFilter' smart constructor.+data LexTranscriptFilter = LexTranscriptFilter'+ { -- | The object that contains a date range filter that will be applied to the+ -- transcript. Specify this object if you want Amazon Lex to only read the+ -- files that are within the date range.+ dateRangeFilter :: Prelude.Maybe DateRangeFilter+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LexTranscriptFilter' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dateRangeFilter', 'lexTranscriptFilter_dateRangeFilter' - The object that contains a date range filter that will be applied to the+-- transcript. Specify this object if you want Amazon Lex to only read the+-- files that are within the date range.+newLexTranscriptFilter ::+ LexTranscriptFilter+newLexTranscriptFilter =+ LexTranscriptFilter'+ { dateRangeFilter =+ Prelude.Nothing+ }++-- | The object that contains a date range filter that will be applied to the+-- transcript. Specify this object if you want Amazon Lex to only read the+-- files that are within the date range.+lexTranscriptFilter_dateRangeFilter :: Lens.Lens' LexTranscriptFilter (Prelude.Maybe DateRangeFilter)+lexTranscriptFilter_dateRangeFilter = Lens.lens (\LexTranscriptFilter' {dateRangeFilter} -> dateRangeFilter) (\s@LexTranscriptFilter' {} a -> s {dateRangeFilter = a} :: LexTranscriptFilter)++instance Data.FromJSON LexTranscriptFilter where+ parseJSON =+ Data.withObject+ "LexTranscriptFilter"+ ( \x ->+ LexTranscriptFilter'+ Prelude.<$> (x Data..:? "dateRangeFilter")+ )++instance Prelude.Hashable LexTranscriptFilter where+ hashWithSalt _salt LexTranscriptFilter' {..} =+ _salt `Prelude.hashWithSalt` dateRangeFilter++instance Prelude.NFData LexTranscriptFilter where+ rnf LexTranscriptFilter' {..} =+ Prelude.rnf dateRangeFilter++instance Data.ToJSON LexTranscriptFilter where+ toJSON LexTranscriptFilter' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("dateRangeFilter" Data..=)+ Prelude.<$> dateRangeFilter+ ]+ )
+ gen/Amazonka/LexV2Models/Types/MergeStrategy.hs view
@@ -0,0 +1,76 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.MergeStrategy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.MergeStrategy+ ( MergeStrategy+ ( ..,+ MergeStrategy_Append,+ MergeStrategy_FailOnConflict,+ MergeStrategy_Overwrite+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype MergeStrategy = MergeStrategy'+ { fromMergeStrategy ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern MergeStrategy_Append :: MergeStrategy+pattern MergeStrategy_Append = MergeStrategy' "Append"++pattern MergeStrategy_FailOnConflict :: MergeStrategy+pattern MergeStrategy_FailOnConflict = MergeStrategy' "FailOnConflict"++pattern MergeStrategy_Overwrite :: MergeStrategy+pattern MergeStrategy_Overwrite = MergeStrategy' "Overwrite"++{-# COMPLETE+ MergeStrategy_Append,+ MergeStrategy_FailOnConflict,+ MergeStrategy_Overwrite,+ MergeStrategy'+ #-}
+ gen/Amazonka/LexV2Models/Types/Message.hs view
@@ -0,0 +1,128 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.Message+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.Message where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.CustomPayload+import Amazonka.LexV2Models.Types.ImageResponseCard+import Amazonka.LexV2Models.Types.PlainTextMessage+import Amazonka.LexV2Models.Types.SSMLMessage+import qualified Amazonka.Prelude as Prelude++-- | The object that provides message text and it\'s type.+--+-- /See:/ 'newMessage' smart constructor.+data Message = Message'+ { -- | A message in a custom format defined by the client application.+ customPayload :: Prelude.Maybe CustomPayload,+ -- | A message that defines a response card that the client application can+ -- show to the user.+ imageResponseCard :: Prelude.Maybe ImageResponseCard,+ -- | A message in plain text format.+ plainTextMessage :: Prelude.Maybe PlainTextMessage,+ -- | A message in Speech Synthesis Markup Language (SSML).+ ssmlMessage :: Prelude.Maybe SSMLMessage+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Message' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'customPayload', 'message_customPayload' - A message in a custom format defined by the client application.+--+-- 'imageResponseCard', 'message_imageResponseCard' - A message that defines a response card that the client application can+-- show to the user.+--+-- 'plainTextMessage', 'message_plainTextMessage' - A message in plain text format.+--+-- 'ssmlMessage', 'message_ssmlMessage' - A message in Speech Synthesis Markup Language (SSML).+newMessage ::+ Message+newMessage =+ Message'+ { customPayload = Prelude.Nothing,+ imageResponseCard = Prelude.Nothing,+ plainTextMessage = Prelude.Nothing,+ ssmlMessage = Prelude.Nothing+ }++-- | A message in a custom format defined by the client application.+message_customPayload :: Lens.Lens' Message (Prelude.Maybe CustomPayload)+message_customPayload = Lens.lens (\Message' {customPayload} -> customPayload) (\s@Message' {} a -> s {customPayload = a} :: Message)++-- | A message that defines a response card that the client application can+-- show to the user.+message_imageResponseCard :: Lens.Lens' Message (Prelude.Maybe ImageResponseCard)+message_imageResponseCard = Lens.lens (\Message' {imageResponseCard} -> imageResponseCard) (\s@Message' {} a -> s {imageResponseCard = a} :: Message)++-- | A message in plain text format.+message_plainTextMessage :: Lens.Lens' Message (Prelude.Maybe PlainTextMessage)+message_plainTextMessage = Lens.lens (\Message' {plainTextMessage} -> plainTextMessage) (\s@Message' {} a -> s {plainTextMessage = a} :: Message)++-- | A message in Speech Synthesis Markup Language (SSML).+message_ssmlMessage :: Lens.Lens' Message (Prelude.Maybe SSMLMessage)+message_ssmlMessage = Lens.lens (\Message' {ssmlMessage} -> ssmlMessage) (\s@Message' {} a -> s {ssmlMessage = a} :: Message)++instance Data.FromJSON Message where+ parseJSON =+ Data.withObject+ "Message"+ ( \x ->+ Message'+ Prelude.<$> (x Data..:? "customPayload")+ Prelude.<*> (x Data..:? "imageResponseCard")+ Prelude.<*> (x Data..:? "plainTextMessage")+ Prelude.<*> (x Data..:? "ssmlMessage")+ )++instance Prelude.Hashable Message where+ hashWithSalt _salt Message' {..} =+ _salt+ `Prelude.hashWithSalt` customPayload+ `Prelude.hashWithSalt` imageResponseCard+ `Prelude.hashWithSalt` plainTextMessage+ `Prelude.hashWithSalt` ssmlMessage++instance Prelude.NFData Message where+ rnf Message' {..} =+ Prelude.rnf customPayload+ `Prelude.seq` Prelude.rnf imageResponseCard+ `Prelude.seq` Prelude.rnf plainTextMessage+ `Prelude.seq` Prelude.rnf ssmlMessage++instance Data.ToJSON Message where+ toJSON Message' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("customPayload" Data..=) Prelude.<$> customPayload,+ ("imageResponseCard" Data..=)+ Prelude.<$> imageResponseCard,+ ("plainTextMessage" Data..=)+ Prelude.<$> plainTextMessage,+ ("ssmlMessage" Data..=) Prelude.<$> ssmlMessage+ ]+ )
+ gen/Amazonka/LexV2Models/Types/MessageGroup.hs view
@@ -0,0 +1,102 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.MessageGroup+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.MessageGroup where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.Message+import qualified Amazonka.Prelude as Prelude++-- | Provides one or more messages that Amazon Lex should send to the user.+--+-- /See:/ 'newMessageGroup' smart constructor.+data MessageGroup = MessageGroup'+ { -- | Message variations to send to the user. When variations are defined,+ -- Amazon Lex chooses the primary message or one of the variations to send+ -- to the user.+ variations :: Prelude.Maybe [Message],+ -- | The primary message that Amazon Lex should send to the user.+ message :: Message+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'MessageGroup' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'variations', 'messageGroup_variations' - Message variations to send to the user. When variations are defined,+-- Amazon Lex chooses the primary message or one of the variations to send+-- to the user.+--+-- 'message', 'messageGroup_message' - The primary message that Amazon Lex should send to the user.+newMessageGroup ::+ -- | 'message'+ Message ->+ MessageGroup+newMessageGroup pMessage_ =+ MessageGroup'+ { variations = Prelude.Nothing,+ message = pMessage_+ }++-- | Message variations to send to the user. When variations are defined,+-- Amazon Lex chooses the primary message or one of the variations to send+-- to the user.+messageGroup_variations :: Lens.Lens' MessageGroup (Prelude.Maybe [Message])+messageGroup_variations = Lens.lens (\MessageGroup' {variations} -> variations) (\s@MessageGroup' {} a -> s {variations = a} :: MessageGroup) Prelude.. Lens.mapping Lens.coerced++-- | The primary message that Amazon Lex should send to the user.+messageGroup_message :: Lens.Lens' MessageGroup Message+messageGroup_message = Lens.lens (\MessageGroup' {message} -> message) (\s@MessageGroup' {} a -> s {message = a} :: MessageGroup)++instance Data.FromJSON MessageGroup where+ parseJSON =+ Data.withObject+ "MessageGroup"+ ( \x ->+ MessageGroup'+ Prelude.<$> (x Data..:? "variations" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..: "message")+ )++instance Prelude.Hashable MessageGroup where+ hashWithSalt _salt MessageGroup' {..} =+ _salt+ `Prelude.hashWithSalt` variations+ `Prelude.hashWithSalt` message++instance Prelude.NFData MessageGroup where+ rnf MessageGroup' {..} =+ Prelude.rnf variations+ `Prelude.seq` Prelude.rnf message++instance Data.ToJSON MessageGroup where+ toJSON MessageGroup' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("variations" Data..=) Prelude.<$> variations,+ Prelude.Just ("message" Data..= message)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/MessageSelectionStrategy.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.MessageSelectionStrategy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.MessageSelectionStrategy+ ( MessageSelectionStrategy+ ( ..,+ MessageSelectionStrategy_Ordered,+ MessageSelectionStrategy_Random+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype MessageSelectionStrategy = MessageSelectionStrategy'+ { fromMessageSelectionStrategy ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern MessageSelectionStrategy_Ordered :: MessageSelectionStrategy+pattern MessageSelectionStrategy_Ordered = MessageSelectionStrategy' "Ordered"++pattern MessageSelectionStrategy_Random :: MessageSelectionStrategy+pattern MessageSelectionStrategy_Random = MessageSelectionStrategy' "Random"++{-# COMPLETE+ MessageSelectionStrategy_Ordered,+ MessageSelectionStrategy_Random,+ MessageSelectionStrategy'+ #-}
+ gen/Amazonka/LexV2Models/Types/MultipleValuesSetting.hs view
@@ -0,0 +1,105 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.MultipleValuesSetting+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.MultipleValuesSetting where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Indicates whether a slot can return multiple values.+--+-- /See:/ 'newMultipleValuesSetting' smart constructor.+data MultipleValuesSetting = MultipleValuesSetting'+ { -- | Indicates whether a slot can return multiple values. When @true@, the+ -- slot may return more than one value in a response. When @false@, the+ -- slot returns only a single value.+ --+ -- Multi-value slots are only available in the en-US locale. If you set+ -- this value to @true@ in any other locale, Amazon Lex throws a+ -- @ValidationException@.+ --+ -- If the @allowMutlipleValues@ is not set, the default value is @false@.+ allowMultipleValues :: Prelude.Maybe Prelude.Bool+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'MultipleValuesSetting' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'allowMultipleValues', 'multipleValuesSetting_allowMultipleValues' - Indicates whether a slot can return multiple values. When @true@, the+-- slot may return more than one value in a response. When @false@, the+-- slot returns only a single value.+--+-- Multi-value slots are only available in the en-US locale. If you set+-- this value to @true@ in any other locale, Amazon Lex throws a+-- @ValidationException@.+--+-- If the @allowMutlipleValues@ is not set, the default value is @false@.+newMultipleValuesSetting ::+ MultipleValuesSetting+newMultipleValuesSetting =+ MultipleValuesSetting'+ { allowMultipleValues =+ Prelude.Nothing+ }++-- | Indicates whether a slot can return multiple values. When @true@, the+-- slot may return more than one value in a response. When @false@, the+-- slot returns only a single value.+--+-- Multi-value slots are only available in the en-US locale. If you set+-- this value to @true@ in any other locale, Amazon Lex throws a+-- @ValidationException@.+--+-- If the @allowMutlipleValues@ is not set, the default value is @false@.+multipleValuesSetting_allowMultipleValues :: Lens.Lens' MultipleValuesSetting (Prelude.Maybe Prelude.Bool)+multipleValuesSetting_allowMultipleValues = Lens.lens (\MultipleValuesSetting' {allowMultipleValues} -> allowMultipleValues) (\s@MultipleValuesSetting' {} a -> s {allowMultipleValues = a} :: MultipleValuesSetting)++instance Data.FromJSON MultipleValuesSetting where+ parseJSON =+ Data.withObject+ "MultipleValuesSetting"+ ( \x ->+ MultipleValuesSetting'+ Prelude.<$> (x Data..:? "allowMultipleValues")+ )++instance Prelude.Hashable MultipleValuesSetting where+ hashWithSalt _salt MultipleValuesSetting' {..} =+ _salt `Prelude.hashWithSalt` allowMultipleValues++instance Prelude.NFData MultipleValuesSetting where+ rnf MultipleValuesSetting' {..} =+ Prelude.rnf allowMultipleValues++instance Data.ToJSON MultipleValuesSetting where+ toJSON MultipleValuesSetting' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("allowMultipleValues" Data..=)+ Prelude.<$> allowMultipleValues+ ]+ )
+ gen/Amazonka/LexV2Models/Types/NewCustomVocabularyItem.hs view
@@ -0,0 +1,107 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.NewCustomVocabularyItem+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.NewCustomVocabularyItem where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The new custom vocabulary item from the custom vocabulary list.+--+-- /See:/ 'newNewCustomVocabularyItem' smart constructor.+data NewCustomVocabularyItem = NewCustomVocabularyItem'+ { -- | The display as value assigned to the new custom vocabulary item from the+ -- custom vocabulary list.+ displayAs :: Prelude.Maybe Prelude.Text,+ -- | The weight assigned to the new custom vocabulary item from the custom+ -- vocabulary list.+ weight :: Prelude.Maybe Prelude.Natural,+ -- | The unique phrase for the new custom vocabulary item from the custom+ -- vocabulary list.+ phrase :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'NewCustomVocabularyItem' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'displayAs', 'newCustomVocabularyItem_displayAs' - The display as value assigned to the new custom vocabulary item from the+-- custom vocabulary list.+--+-- 'weight', 'newCustomVocabularyItem_weight' - The weight assigned to the new custom vocabulary item from the custom+-- vocabulary list.+--+-- 'phrase', 'newCustomVocabularyItem_phrase' - The unique phrase for the new custom vocabulary item from the custom+-- vocabulary list.+newNewCustomVocabularyItem ::+ -- | 'phrase'+ Prelude.Text ->+ NewCustomVocabularyItem+newNewCustomVocabularyItem pPhrase_ =+ NewCustomVocabularyItem'+ { displayAs =+ Prelude.Nothing,+ weight = Prelude.Nothing,+ phrase = pPhrase_+ }++-- | The display as value assigned to the new custom vocabulary item from the+-- custom vocabulary list.+newCustomVocabularyItem_displayAs :: Lens.Lens' NewCustomVocabularyItem (Prelude.Maybe Prelude.Text)+newCustomVocabularyItem_displayAs = Lens.lens (\NewCustomVocabularyItem' {displayAs} -> displayAs) (\s@NewCustomVocabularyItem' {} a -> s {displayAs = a} :: NewCustomVocabularyItem)++-- | The weight assigned to the new custom vocabulary item from the custom+-- vocabulary list.+newCustomVocabularyItem_weight :: Lens.Lens' NewCustomVocabularyItem (Prelude.Maybe Prelude.Natural)+newCustomVocabularyItem_weight = Lens.lens (\NewCustomVocabularyItem' {weight} -> weight) (\s@NewCustomVocabularyItem' {} a -> s {weight = a} :: NewCustomVocabularyItem)++-- | The unique phrase for the new custom vocabulary item from the custom+-- vocabulary list.+newCustomVocabularyItem_phrase :: Lens.Lens' NewCustomVocabularyItem Prelude.Text+newCustomVocabularyItem_phrase = Lens.lens (\NewCustomVocabularyItem' {phrase} -> phrase) (\s@NewCustomVocabularyItem' {} a -> s {phrase = a} :: NewCustomVocabularyItem)++instance Prelude.Hashable NewCustomVocabularyItem where+ hashWithSalt _salt NewCustomVocabularyItem' {..} =+ _salt+ `Prelude.hashWithSalt` displayAs+ `Prelude.hashWithSalt` weight+ `Prelude.hashWithSalt` phrase++instance Prelude.NFData NewCustomVocabularyItem where+ rnf NewCustomVocabularyItem' {..} =+ Prelude.rnf displayAs+ `Prelude.seq` Prelude.rnf weight+ `Prelude.seq` Prelude.rnf phrase++instance Data.ToJSON NewCustomVocabularyItem where+ toJSON NewCustomVocabularyItem' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("displayAs" Data..=) Prelude.<$> displayAs,+ ("weight" Data..=) Prelude.<$> weight,+ Prelude.Just ("phrase" Data..= phrase)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/ObfuscationSetting.hs view
@@ -0,0 +1,89 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.ObfuscationSetting+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.ObfuscationSetting where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.ObfuscationSettingType+import qualified Amazonka.Prelude as Prelude++-- | Determines whether Amazon Lex obscures slot values in conversation logs.+--+-- /See:/ 'newObfuscationSetting' smart constructor.+data ObfuscationSetting = ObfuscationSetting'+ { -- | Value that determines whether Amazon Lex obscures slot values in+ -- conversation logs. The default is to obscure the values.+ obfuscationSettingType :: ObfuscationSettingType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ObfuscationSetting' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'obfuscationSettingType', 'obfuscationSetting_obfuscationSettingType' - Value that determines whether Amazon Lex obscures slot values in+-- conversation logs. The default is to obscure the values.+newObfuscationSetting ::+ -- | 'obfuscationSettingType'+ ObfuscationSettingType ->+ ObfuscationSetting+newObfuscationSetting pObfuscationSettingType_ =+ ObfuscationSetting'+ { obfuscationSettingType =+ pObfuscationSettingType_+ }++-- | Value that determines whether Amazon Lex obscures slot values in+-- conversation logs. The default is to obscure the values.+obfuscationSetting_obfuscationSettingType :: Lens.Lens' ObfuscationSetting ObfuscationSettingType+obfuscationSetting_obfuscationSettingType = Lens.lens (\ObfuscationSetting' {obfuscationSettingType} -> obfuscationSettingType) (\s@ObfuscationSetting' {} a -> s {obfuscationSettingType = a} :: ObfuscationSetting)++instance Data.FromJSON ObfuscationSetting where+ parseJSON =+ Data.withObject+ "ObfuscationSetting"+ ( \x ->+ ObfuscationSetting'+ Prelude.<$> (x Data..: "obfuscationSettingType")+ )++instance Prelude.Hashable ObfuscationSetting where+ hashWithSalt _salt ObfuscationSetting' {..} =+ _salt `Prelude.hashWithSalt` obfuscationSettingType++instance Prelude.NFData ObfuscationSetting where+ rnf ObfuscationSetting' {..} =+ Prelude.rnf obfuscationSettingType++instance Data.ToJSON ObfuscationSetting where+ toJSON ObfuscationSetting' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ( "obfuscationSettingType"+ Data..= obfuscationSettingType+ )+ ]+ )
+ gen/Amazonka/LexV2Models/Types/ObfuscationSettingType.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.ObfuscationSettingType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.ObfuscationSettingType+ ( ObfuscationSettingType+ ( ..,+ ObfuscationSettingType_DefaultObfuscation,+ ObfuscationSettingType_None+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ObfuscationSettingType = ObfuscationSettingType'+ { fromObfuscationSettingType ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern ObfuscationSettingType_DefaultObfuscation :: ObfuscationSettingType+pattern ObfuscationSettingType_DefaultObfuscation = ObfuscationSettingType' "DefaultObfuscation"++pattern ObfuscationSettingType_None :: ObfuscationSettingType+pattern ObfuscationSettingType_None = ObfuscationSettingType' "None"++{-# COMPLETE+ ObfuscationSettingType_DefaultObfuscation,+ ObfuscationSettingType_None,+ ObfuscationSettingType'+ #-}
+ gen/Amazonka/LexV2Models/Types/OutputContext.hs view
@@ -0,0 +1,129 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.OutputContext+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.OutputContext where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Describes a session context that is activated when an intent is+-- fulfilled.+--+-- /See:/ 'newOutputContext' smart constructor.+data OutputContext = OutputContext'+ { -- | The name of the output context.+ name :: Prelude.Text,+ -- | The amount of time, in seconds, that the output context should remain+ -- active. The time is figured from the first time the context is sent to+ -- the user.+ timeToLiveInSeconds :: Prelude.Natural,+ -- | The number of conversation turns that the output context should remain+ -- active. The number of turns is counted from the first time that the+ -- context is sent to the user.+ turnsToLive :: Prelude.Natural+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'OutputContext' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'name', 'outputContext_name' - The name of the output context.+--+-- 'timeToLiveInSeconds', 'outputContext_timeToLiveInSeconds' - The amount of time, in seconds, that the output context should remain+-- active. The time is figured from the first time the context is sent to+-- the user.+--+-- 'turnsToLive', 'outputContext_turnsToLive' - The number of conversation turns that the output context should remain+-- active. The number of turns is counted from the first time that the+-- context is sent to the user.+newOutputContext ::+ -- | 'name'+ Prelude.Text ->+ -- | 'timeToLiveInSeconds'+ Prelude.Natural ->+ -- | 'turnsToLive'+ Prelude.Natural ->+ OutputContext+newOutputContext+ pName_+ pTimeToLiveInSeconds_+ pTurnsToLive_ =+ OutputContext'+ { name = pName_,+ timeToLiveInSeconds = pTimeToLiveInSeconds_,+ turnsToLive = pTurnsToLive_+ }++-- | The name of the output context.+outputContext_name :: Lens.Lens' OutputContext Prelude.Text+outputContext_name = Lens.lens (\OutputContext' {name} -> name) (\s@OutputContext' {} a -> s {name = a} :: OutputContext)++-- | The amount of time, in seconds, that the output context should remain+-- active. The time is figured from the first time the context is sent to+-- the user.+outputContext_timeToLiveInSeconds :: Lens.Lens' OutputContext Prelude.Natural+outputContext_timeToLiveInSeconds = Lens.lens (\OutputContext' {timeToLiveInSeconds} -> timeToLiveInSeconds) (\s@OutputContext' {} a -> s {timeToLiveInSeconds = a} :: OutputContext)++-- | The number of conversation turns that the output context should remain+-- active. The number of turns is counted from the first time that the+-- context is sent to the user.+outputContext_turnsToLive :: Lens.Lens' OutputContext Prelude.Natural+outputContext_turnsToLive = Lens.lens (\OutputContext' {turnsToLive} -> turnsToLive) (\s@OutputContext' {} a -> s {turnsToLive = a} :: OutputContext)++instance Data.FromJSON OutputContext where+ parseJSON =+ Data.withObject+ "OutputContext"+ ( \x ->+ OutputContext'+ Prelude.<$> (x Data..: "name")+ Prelude.<*> (x Data..: "timeToLiveInSeconds")+ Prelude.<*> (x Data..: "turnsToLive")+ )++instance Prelude.Hashable OutputContext where+ hashWithSalt _salt OutputContext' {..} =+ _salt+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` timeToLiveInSeconds+ `Prelude.hashWithSalt` turnsToLive++instance Prelude.NFData OutputContext where+ rnf OutputContext' {..} =+ Prelude.rnf name+ `Prelude.seq` Prelude.rnf timeToLiveInSeconds+ `Prelude.seq` Prelude.rnf turnsToLive++instance Data.ToJSON OutputContext where+ toJSON OutputContext' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("name" Data..= name),+ Prelude.Just+ ("timeToLiveInSeconds" Data..= timeToLiveInSeconds),+ Prelude.Just ("turnsToLive" Data..= turnsToLive)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/PathFormat.hs view
@@ -0,0 +1,86 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.PathFormat+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.PathFormat where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The object that contains a path format that will be applied when Amazon+-- Lex reads the transcript file in the bucket you provide. Specify this+-- object if you only want Lex to read a subset of files in your Amazon S3+-- bucket.+--+-- /See:/ 'newPathFormat' smart constructor.+data PathFormat = PathFormat'+ { -- | A list of Amazon S3 prefixes that points to sub-folders in the Amazon S3+ -- bucket. Specify this list if you only want Lex to read the files under+ -- this set of sub-folders.+ objectPrefixes :: Prelude.Maybe (Prelude.NonEmpty Prelude.Text)+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PathFormat' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'objectPrefixes', 'pathFormat_objectPrefixes' - A list of Amazon S3 prefixes that points to sub-folders in the Amazon S3+-- bucket. Specify this list if you only want Lex to read the files under+-- this set of sub-folders.+newPathFormat ::+ PathFormat+newPathFormat =+ PathFormat' {objectPrefixes = Prelude.Nothing}++-- | A list of Amazon S3 prefixes that points to sub-folders in the Amazon S3+-- bucket. Specify this list if you only want Lex to read the files under+-- this set of sub-folders.+pathFormat_objectPrefixes :: Lens.Lens' PathFormat (Prelude.Maybe (Prelude.NonEmpty Prelude.Text))+pathFormat_objectPrefixes = Lens.lens (\PathFormat' {objectPrefixes} -> objectPrefixes) (\s@PathFormat' {} a -> s {objectPrefixes = a} :: PathFormat) Prelude.. Lens.mapping Lens.coerced++instance Data.FromJSON PathFormat where+ parseJSON =+ Data.withObject+ "PathFormat"+ ( \x ->+ PathFormat'+ Prelude.<$> (x Data..:? "objectPrefixes")+ )++instance Prelude.Hashable PathFormat where+ hashWithSalt _salt PathFormat' {..} =+ _salt `Prelude.hashWithSalt` objectPrefixes++instance Prelude.NFData PathFormat where+ rnf PathFormat' {..} = Prelude.rnf objectPrefixes++instance Data.ToJSON PathFormat where+ toJSON PathFormat' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("objectPrefixes" Data..=)+ Prelude.<$> objectPrefixes+ ]+ )
+ gen/Amazonka/LexV2Models/Types/PlainTextMessage.hs view
@@ -0,0 +1,76 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.PlainTextMessage+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.PlainTextMessage where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Defines an ASCII text message to send to the user.+--+-- /See:/ 'newPlainTextMessage' smart constructor.+data PlainTextMessage = PlainTextMessage'+ { -- | The message to send to the user.+ value :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PlainTextMessage' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'value', 'plainTextMessage_value' - The message to send to the user.+newPlainTextMessage ::+ -- | 'value'+ Prelude.Text ->+ PlainTextMessage+newPlainTextMessage pValue_ =+ PlainTextMessage' {value = pValue_}++-- | The message to send to the user.+plainTextMessage_value :: Lens.Lens' PlainTextMessage Prelude.Text+plainTextMessage_value = Lens.lens (\PlainTextMessage' {value} -> value) (\s@PlainTextMessage' {} a -> s {value = a} :: PlainTextMessage)++instance Data.FromJSON PlainTextMessage where+ parseJSON =+ Data.withObject+ "PlainTextMessage"+ ( \x ->+ PlainTextMessage' Prelude.<$> (x Data..: "value")+ )++instance Prelude.Hashable PlainTextMessage where+ hashWithSalt _salt PlainTextMessage' {..} =+ _salt `Prelude.hashWithSalt` value++instance Prelude.NFData PlainTextMessage where+ rnf PlainTextMessage' {..} = Prelude.rnf value++instance Data.ToJSON PlainTextMessage where+ toJSON PlainTextMessage' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("value" Data..= value)]+ )
+ gen/Amazonka/LexV2Models/Types/PostDialogCodeHookInvocationSpecification.hs view
@@ -0,0 +1,234 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.PostDialogCodeHookInvocationSpecification+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.PostDialogCodeHookInvocationSpecification where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.ConditionalSpecification+import Amazonka.LexV2Models.Types.DialogState+import Amazonka.LexV2Models.Types.ResponseSpecification+import qualified Amazonka.Prelude as Prelude++-- | Specifies next steps to run after the dialog code hook finishes.+--+-- /See:/ 'newPostDialogCodeHookInvocationSpecification' smart constructor.+data PostDialogCodeHookInvocationSpecification = PostDialogCodeHookInvocationSpecification'+ { -- | A list of conditional branches to evaluate after the dialog code hook+ -- throws an exception or returns with the @State@ field of the @Intent@+ -- object set to @Failed@.+ failureConditional :: Prelude.Maybe ConditionalSpecification,+ -- | Specifies the next step the bot runs after the dialog code hook throws+ -- an exception or returns with the @State@ field of the @Intent@ object+ -- set to @Failed@.+ failureNextStep :: Prelude.Maybe DialogState,+ failureResponse :: Prelude.Maybe ResponseSpecification,+ -- | A list of conditional branches to evaluate after the dialog code hook+ -- finishes successfully.+ successConditional :: Prelude.Maybe ConditionalSpecification,+ -- | Specifics the next step the bot runs after the dialog code hook finishes+ -- successfully.+ successNextStep :: Prelude.Maybe DialogState,+ successResponse :: Prelude.Maybe ResponseSpecification,+ -- | A list of conditional branches to evaluate if the code hook times out.+ timeoutConditional :: Prelude.Maybe ConditionalSpecification,+ -- | Specifies the next step that the bot runs when the code hook times out.+ timeoutNextStep :: Prelude.Maybe DialogState,+ timeoutResponse :: Prelude.Maybe ResponseSpecification+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PostDialogCodeHookInvocationSpecification' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'failureConditional', 'postDialogCodeHookInvocationSpecification_failureConditional' - A list of conditional branches to evaluate after the dialog code hook+-- throws an exception or returns with the @State@ field of the @Intent@+-- object set to @Failed@.+--+-- 'failureNextStep', 'postDialogCodeHookInvocationSpecification_failureNextStep' - Specifies the next step the bot runs after the dialog code hook throws+-- an exception or returns with the @State@ field of the @Intent@ object+-- set to @Failed@.+--+-- 'failureResponse', 'postDialogCodeHookInvocationSpecification_failureResponse' - Undocumented member.+--+-- 'successConditional', 'postDialogCodeHookInvocationSpecification_successConditional' - A list of conditional branches to evaluate after the dialog code hook+-- finishes successfully.+--+-- 'successNextStep', 'postDialogCodeHookInvocationSpecification_successNextStep' - Specifics the next step the bot runs after the dialog code hook finishes+-- successfully.+--+-- 'successResponse', 'postDialogCodeHookInvocationSpecification_successResponse' - Undocumented member.+--+-- 'timeoutConditional', 'postDialogCodeHookInvocationSpecification_timeoutConditional' - A list of conditional branches to evaluate if the code hook times out.+--+-- 'timeoutNextStep', 'postDialogCodeHookInvocationSpecification_timeoutNextStep' - Specifies the next step that the bot runs when the code hook times out.+--+-- 'timeoutResponse', 'postDialogCodeHookInvocationSpecification_timeoutResponse' - Undocumented member.+newPostDialogCodeHookInvocationSpecification ::+ PostDialogCodeHookInvocationSpecification+newPostDialogCodeHookInvocationSpecification =+ PostDialogCodeHookInvocationSpecification'+ { failureConditional =+ Prelude.Nothing,+ failureNextStep =+ Prelude.Nothing,+ failureResponse =+ Prelude.Nothing,+ successConditional =+ Prelude.Nothing,+ successNextStep =+ Prelude.Nothing,+ successResponse =+ Prelude.Nothing,+ timeoutConditional =+ Prelude.Nothing,+ timeoutNextStep =+ Prelude.Nothing,+ timeoutResponse =+ Prelude.Nothing+ }++-- | A list of conditional branches to evaluate after the dialog code hook+-- throws an exception or returns with the @State@ field of the @Intent@+-- object set to @Failed@.+postDialogCodeHookInvocationSpecification_failureConditional :: Lens.Lens' PostDialogCodeHookInvocationSpecification (Prelude.Maybe ConditionalSpecification)+postDialogCodeHookInvocationSpecification_failureConditional = Lens.lens (\PostDialogCodeHookInvocationSpecification' {failureConditional} -> failureConditional) (\s@PostDialogCodeHookInvocationSpecification' {} a -> s {failureConditional = a} :: PostDialogCodeHookInvocationSpecification)++-- | Specifies the next step the bot runs after the dialog code hook throws+-- an exception or returns with the @State@ field of the @Intent@ object+-- set to @Failed@.+postDialogCodeHookInvocationSpecification_failureNextStep :: Lens.Lens' PostDialogCodeHookInvocationSpecification (Prelude.Maybe DialogState)+postDialogCodeHookInvocationSpecification_failureNextStep = Lens.lens (\PostDialogCodeHookInvocationSpecification' {failureNextStep} -> failureNextStep) (\s@PostDialogCodeHookInvocationSpecification' {} a -> s {failureNextStep = a} :: PostDialogCodeHookInvocationSpecification)++-- | Undocumented member.+postDialogCodeHookInvocationSpecification_failureResponse :: Lens.Lens' PostDialogCodeHookInvocationSpecification (Prelude.Maybe ResponseSpecification)+postDialogCodeHookInvocationSpecification_failureResponse = Lens.lens (\PostDialogCodeHookInvocationSpecification' {failureResponse} -> failureResponse) (\s@PostDialogCodeHookInvocationSpecification' {} a -> s {failureResponse = a} :: PostDialogCodeHookInvocationSpecification)++-- | A list of conditional branches to evaluate after the dialog code hook+-- finishes successfully.+postDialogCodeHookInvocationSpecification_successConditional :: Lens.Lens' PostDialogCodeHookInvocationSpecification (Prelude.Maybe ConditionalSpecification)+postDialogCodeHookInvocationSpecification_successConditional = Lens.lens (\PostDialogCodeHookInvocationSpecification' {successConditional} -> successConditional) (\s@PostDialogCodeHookInvocationSpecification' {} a -> s {successConditional = a} :: PostDialogCodeHookInvocationSpecification)++-- | Specifics the next step the bot runs after the dialog code hook finishes+-- successfully.+postDialogCodeHookInvocationSpecification_successNextStep :: Lens.Lens' PostDialogCodeHookInvocationSpecification (Prelude.Maybe DialogState)+postDialogCodeHookInvocationSpecification_successNextStep = Lens.lens (\PostDialogCodeHookInvocationSpecification' {successNextStep} -> successNextStep) (\s@PostDialogCodeHookInvocationSpecification' {} a -> s {successNextStep = a} :: PostDialogCodeHookInvocationSpecification)++-- | Undocumented member.+postDialogCodeHookInvocationSpecification_successResponse :: Lens.Lens' PostDialogCodeHookInvocationSpecification (Prelude.Maybe ResponseSpecification)+postDialogCodeHookInvocationSpecification_successResponse = Lens.lens (\PostDialogCodeHookInvocationSpecification' {successResponse} -> successResponse) (\s@PostDialogCodeHookInvocationSpecification' {} a -> s {successResponse = a} :: PostDialogCodeHookInvocationSpecification)++-- | A list of conditional branches to evaluate if the code hook times out.+postDialogCodeHookInvocationSpecification_timeoutConditional :: Lens.Lens' PostDialogCodeHookInvocationSpecification (Prelude.Maybe ConditionalSpecification)+postDialogCodeHookInvocationSpecification_timeoutConditional = Lens.lens (\PostDialogCodeHookInvocationSpecification' {timeoutConditional} -> timeoutConditional) (\s@PostDialogCodeHookInvocationSpecification' {} a -> s {timeoutConditional = a} :: PostDialogCodeHookInvocationSpecification)++-- | Specifies the next step that the bot runs when the code hook times out.+postDialogCodeHookInvocationSpecification_timeoutNextStep :: Lens.Lens' PostDialogCodeHookInvocationSpecification (Prelude.Maybe DialogState)+postDialogCodeHookInvocationSpecification_timeoutNextStep = Lens.lens (\PostDialogCodeHookInvocationSpecification' {timeoutNextStep} -> timeoutNextStep) (\s@PostDialogCodeHookInvocationSpecification' {} a -> s {timeoutNextStep = a} :: PostDialogCodeHookInvocationSpecification)++-- | Undocumented member.+postDialogCodeHookInvocationSpecification_timeoutResponse :: Lens.Lens' PostDialogCodeHookInvocationSpecification (Prelude.Maybe ResponseSpecification)+postDialogCodeHookInvocationSpecification_timeoutResponse = Lens.lens (\PostDialogCodeHookInvocationSpecification' {timeoutResponse} -> timeoutResponse) (\s@PostDialogCodeHookInvocationSpecification' {} a -> s {timeoutResponse = a} :: PostDialogCodeHookInvocationSpecification)++instance+ Data.FromJSON+ PostDialogCodeHookInvocationSpecification+ where+ parseJSON =+ Data.withObject+ "PostDialogCodeHookInvocationSpecification"+ ( \x ->+ PostDialogCodeHookInvocationSpecification'+ Prelude.<$> (x Data..:? "failureConditional")+ Prelude.<*> (x Data..:? "failureNextStep")+ Prelude.<*> (x Data..:? "failureResponse")+ Prelude.<*> (x Data..:? "successConditional")+ Prelude.<*> (x Data..:? "successNextStep")+ Prelude.<*> (x Data..:? "successResponse")+ Prelude.<*> (x Data..:? "timeoutConditional")+ Prelude.<*> (x Data..:? "timeoutNextStep")+ Prelude.<*> (x Data..:? "timeoutResponse")+ )++instance+ Prelude.Hashable+ PostDialogCodeHookInvocationSpecification+ where+ hashWithSalt+ _salt+ PostDialogCodeHookInvocationSpecification' {..} =+ _salt+ `Prelude.hashWithSalt` failureConditional+ `Prelude.hashWithSalt` failureNextStep+ `Prelude.hashWithSalt` failureResponse+ `Prelude.hashWithSalt` successConditional+ `Prelude.hashWithSalt` successNextStep+ `Prelude.hashWithSalt` successResponse+ `Prelude.hashWithSalt` timeoutConditional+ `Prelude.hashWithSalt` timeoutNextStep+ `Prelude.hashWithSalt` timeoutResponse++instance+ Prelude.NFData+ PostDialogCodeHookInvocationSpecification+ where+ rnf PostDialogCodeHookInvocationSpecification' {..} =+ Prelude.rnf failureConditional+ `Prelude.seq` Prelude.rnf failureNextStep+ `Prelude.seq` Prelude.rnf failureResponse+ `Prelude.seq` Prelude.rnf successConditional+ `Prelude.seq` Prelude.rnf successNextStep+ `Prelude.seq` Prelude.rnf successResponse+ `Prelude.seq` Prelude.rnf timeoutConditional+ `Prelude.seq` Prelude.rnf timeoutNextStep+ `Prelude.seq` Prelude.rnf timeoutResponse++instance+ Data.ToJSON+ PostDialogCodeHookInvocationSpecification+ where+ toJSON PostDialogCodeHookInvocationSpecification' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("failureConditional" Data..=)+ Prelude.<$> failureConditional,+ ("failureNextStep" Data..=)+ Prelude.<$> failureNextStep,+ ("failureResponse" Data..=)+ Prelude.<$> failureResponse,+ ("successConditional" Data..=)+ Prelude.<$> successConditional,+ ("successNextStep" Data..=)+ Prelude.<$> successNextStep,+ ("successResponse" Data..=)+ Prelude.<$> successResponse,+ ("timeoutConditional" Data..=)+ Prelude.<$> timeoutConditional,+ ("timeoutNextStep" Data..=)+ Prelude.<$> timeoutNextStep,+ ("timeoutResponse" Data..=)+ Prelude.<$> timeoutResponse+ ]+ )
+ gen/Amazonka/LexV2Models/Types/PostFulfillmentStatusSpecification.hs view
@@ -0,0 +1,234 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.PostFulfillmentStatusSpecification+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.PostFulfillmentStatusSpecification where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.ConditionalSpecification+import Amazonka.LexV2Models.Types.DialogState+import Amazonka.LexV2Models.Types.ResponseSpecification+import qualified Amazonka.Prelude as Prelude++-- | Provides a setting that determines whether the post-fulfillment response+-- is sent to the user. For more information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/streaming-progress.html#progress-complete>+--+-- /See:/ 'newPostFulfillmentStatusSpecification' smart constructor.+data PostFulfillmentStatusSpecification = PostFulfillmentStatusSpecification'+ { -- | A list of conditional branches to evaluate after the fulfillment code+ -- hook throws an exception or returns with the @State@ field of the+ -- @Intent@ object set to @Failed@.+ failureConditional :: Prelude.Maybe ConditionalSpecification,+ -- | Specifies the next step the bot runs after the fulfillment code hook+ -- throws an exception or returns with the @State@ field of the @Intent@+ -- object set to @Failed@.+ failureNextStep :: Prelude.Maybe DialogState,+ failureResponse :: Prelude.Maybe ResponseSpecification,+ -- | A list of conditional branches to evaluate after the fulfillment code+ -- hook finishes successfully.+ successConditional :: Prelude.Maybe ConditionalSpecification,+ -- | Specifies the next step in the conversation that Amazon Lex invokes when+ -- the fulfillment code hook completes successfully.+ successNextStep :: Prelude.Maybe DialogState,+ successResponse :: Prelude.Maybe ResponseSpecification,+ -- | A list of conditional branches to evaluate if the fulfillment code hook+ -- times out.+ timeoutConditional :: Prelude.Maybe ConditionalSpecification,+ -- | Specifies the next step that the bot runs when the fulfillment code hook+ -- times out.+ timeoutNextStep :: Prelude.Maybe DialogState,+ timeoutResponse :: Prelude.Maybe ResponseSpecification+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PostFulfillmentStatusSpecification' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'failureConditional', 'postFulfillmentStatusSpecification_failureConditional' - A list of conditional branches to evaluate after the fulfillment code+-- hook throws an exception or returns with the @State@ field of the+-- @Intent@ object set to @Failed@.+--+-- 'failureNextStep', 'postFulfillmentStatusSpecification_failureNextStep' - Specifies the next step the bot runs after the fulfillment code hook+-- throws an exception or returns with the @State@ field of the @Intent@+-- object set to @Failed@.+--+-- 'failureResponse', 'postFulfillmentStatusSpecification_failureResponse' - Undocumented member.+--+-- 'successConditional', 'postFulfillmentStatusSpecification_successConditional' - A list of conditional branches to evaluate after the fulfillment code+-- hook finishes successfully.+--+-- 'successNextStep', 'postFulfillmentStatusSpecification_successNextStep' - Specifies the next step in the conversation that Amazon Lex invokes when+-- the fulfillment code hook completes successfully.+--+-- 'successResponse', 'postFulfillmentStatusSpecification_successResponse' - Undocumented member.+--+-- 'timeoutConditional', 'postFulfillmentStatusSpecification_timeoutConditional' - A list of conditional branches to evaluate if the fulfillment code hook+-- times out.+--+-- 'timeoutNextStep', 'postFulfillmentStatusSpecification_timeoutNextStep' - Specifies the next step that the bot runs when the fulfillment code hook+-- times out.+--+-- 'timeoutResponse', 'postFulfillmentStatusSpecification_timeoutResponse' - Undocumented member.+newPostFulfillmentStatusSpecification ::+ PostFulfillmentStatusSpecification+newPostFulfillmentStatusSpecification =+ PostFulfillmentStatusSpecification'+ { failureConditional =+ Prelude.Nothing,+ failureNextStep = Prelude.Nothing,+ failureResponse = Prelude.Nothing,+ successConditional = Prelude.Nothing,+ successNextStep = Prelude.Nothing,+ successResponse = Prelude.Nothing,+ timeoutConditional = Prelude.Nothing,+ timeoutNextStep = Prelude.Nothing,+ timeoutResponse = Prelude.Nothing+ }++-- | A list of conditional branches to evaluate after the fulfillment code+-- hook throws an exception or returns with the @State@ field of the+-- @Intent@ object set to @Failed@.+postFulfillmentStatusSpecification_failureConditional :: Lens.Lens' PostFulfillmentStatusSpecification (Prelude.Maybe ConditionalSpecification)+postFulfillmentStatusSpecification_failureConditional = Lens.lens (\PostFulfillmentStatusSpecification' {failureConditional} -> failureConditional) (\s@PostFulfillmentStatusSpecification' {} a -> s {failureConditional = a} :: PostFulfillmentStatusSpecification)++-- | Specifies the next step the bot runs after the fulfillment code hook+-- throws an exception or returns with the @State@ field of the @Intent@+-- object set to @Failed@.+postFulfillmentStatusSpecification_failureNextStep :: Lens.Lens' PostFulfillmentStatusSpecification (Prelude.Maybe DialogState)+postFulfillmentStatusSpecification_failureNextStep = Lens.lens (\PostFulfillmentStatusSpecification' {failureNextStep} -> failureNextStep) (\s@PostFulfillmentStatusSpecification' {} a -> s {failureNextStep = a} :: PostFulfillmentStatusSpecification)++-- | Undocumented member.+postFulfillmentStatusSpecification_failureResponse :: Lens.Lens' PostFulfillmentStatusSpecification (Prelude.Maybe ResponseSpecification)+postFulfillmentStatusSpecification_failureResponse = Lens.lens (\PostFulfillmentStatusSpecification' {failureResponse} -> failureResponse) (\s@PostFulfillmentStatusSpecification' {} a -> s {failureResponse = a} :: PostFulfillmentStatusSpecification)++-- | A list of conditional branches to evaluate after the fulfillment code+-- hook finishes successfully.+postFulfillmentStatusSpecification_successConditional :: Lens.Lens' PostFulfillmentStatusSpecification (Prelude.Maybe ConditionalSpecification)+postFulfillmentStatusSpecification_successConditional = Lens.lens (\PostFulfillmentStatusSpecification' {successConditional} -> successConditional) (\s@PostFulfillmentStatusSpecification' {} a -> s {successConditional = a} :: PostFulfillmentStatusSpecification)++-- | Specifies the next step in the conversation that Amazon Lex invokes when+-- the fulfillment code hook completes successfully.+postFulfillmentStatusSpecification_successNextStep :: Lens.Lens' PostFulfillmentStatusSpecification (Prelude.Maybe DialogState)+postFulfillmentStatusSpecification_successNextStep = Lens.lens (\PostFulfillmentStatusSpecification' {successNextStep} -> successNextStep) (\s@PostFulfillmentStatusSpecification' {} a -> s {successNextStep = a} :: PostFulfillmentStatusSpecification)++-- | Undocumented member.+postFulfillmentStatusSpecification_successResponse :: Lens.Lens' PostFulfillmentStatusSpecification (Prelude.Maybe ResponseSpecification)+postFulfillmentStatusSpecification_successResponse = Lens.lens (\PostFulfillmentStatusSpecification' {successResponse} -> successResponse) (\s@PostFulfillmentStatusSpecification' {} a -> s {successResponse = a} :: PostFulfillmentStatusSpecification)++-- | A list of conditional branches to evaluate if the fulfillment code hook+-- times out.+postFulfillmentStatusSpecification_timeoutConditional :: Lens.Lens' PostFulfillmentStatusSpecification (Prelude.Maybe ConditionalSpecification)+postFulfillmentStatusSpecification_timeoutConditional = Lens.lens (\PostFulfillmentStatusSpecification' {timeoutConditional} -> timeoutConditional) (\s@PostFulfillmentStatusSpecification' {} a -> s {timeoutConditional = a} :: PostFulfillmentStatusSpecification)++-- | Specifies the next step that the bot runs when the fulfillment code hook+-- times out.+postFulfillmentStatusSpecification_timeoutNextStep :: Lens.Lens' PostFulfillmentStatusSpecification (Prelude.Maybe DialogState)+postFulfillmentStatusSpecification_timeoutNextStep = Lens.lens (\PostFulfillmentStatusSpecification' {timeoutNextStep} -> timeoutNextStep) (\s@PostFulfillmentStatusSpecification' {} a -> s {timeoutNextStep = a} :: PostFulfillmentStatusSpecification)++-- | Undocumented member.+postFulfillmentStatusSpecification_timeoutResponse :: Lens.Lens' PostFulfillmentStatusSpecification (Prelude.Maybe ResponseSpecification)+postFulfillmentStatusSpecification_timeoutResponse = Lens.lens (\PostFulfillmentStatusSpecification' {timeoutResponse} -> timeoutResponse) (\s@PostFulfillmentStatusSpecification' {} a -> s {timeoutResponse = a} :: PostFulfillmentStatusSpecification)++instance+ Data.FromJSON+ PostFulfillmentStatusSpecification+ where+ parseJSON =+ Data.withObject+ "PostFulfillmentStatusSpecification"+ ( \x ->+ PostFulfillmentStatusSpecification'+ Prelude.<$> (x Data..:? "failureConditional")+ Prelude.<*> (x Data..:? "failureNextStep")+ Prelude.<*> (x Data..:? "failureResponse")+ Prelude.<*> (x Data..:? "successConditional")+ Prelude.<*> (x Data..:? "successNextStep")+ Prelude.<*> (x Data..:? "successResponse")+ Prelude.<*> (x Data..:? "timeoutConditional")+ Prelude.<*> (x Data..:? "timeoutNextStep")+ Prelude.<*> (x Data..:? "timeoutResponse")+ )++instance+ Prelude.Hashable+ PostFulfillmentStatusSpecification+ where+ hashWithSalt+ _salt+ PostFulfillmentStatusSpecification' {..} =+ _salt+ `Prelude.hashWithSalt` failureConditional+ `Prelude.hashWithSalt` failureNextStep+ `Prelude.hashWithSalt` failureResponse+ `Prelude.hashWithSalt` successConditional+ `Prelude.hashWithSalt` successNextStep+ `Prelude.hashWithSalt` successResponse+ `Prelude.hashWithSalt` timeoutConditional+ `Prelude.hashWithSalt` timeoutNextStep+ `Prelude.hashWithSalt` timeoutResponse++instance+ Prelude.NFData+ PostFulfillmentStatusSpecification+ where+ rnf PostFulfillmentStatusSpecification' {..} =+ Prelude.rnf failureConditional+ `Prelude.seq` Prelude.rnf failureNextStep+ `Prelude.seq` Prelude.rnf failureResponse+ `Prelude.seq` Prelude.rnf successConditional+ `Prelude.seq` Prelude.rnf successNextStep+ `Prelude.seq` Prelude.rnf successResponse+ `Prelude.seq` Prelude.rnf timeoutConditional+ `Prelude.seq` Prelude.rnf timeoutNextStep+ `Prelude.seq` Prelude.rnf timeoutResponse++instance+ Data.ToJSON+ PostFulfillmentStatusSpecification+ where+ toJSON PostFulfillmentStatusSpecification' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("failureConditional" Data..=)+ Prelude.<$> failureConditional,+ ("failureNextStep" Data..=)+ Prelude.<$> failureNextStep,+ ("failureResponse" Data..=)+ Prelude.<$> failureResponse,+ ("successConditional" Data..=)+ Prelude.<$> successConditional,+ ("successNextStep" Data..=)+ Prelude.<$> successNextStep,+ ("successResponse" Data..=)+ Prelude.<$> successResponse,+ ("timeoutConditional" Data..=)+ Prelude.<$> timeoutConditional,+ ("timeoutNextStep" Data..=)+ Prelude.<$> timeoutNextStep,+ ("timeoutResponse" Data..=)+ Prelude.<$> timeoutResponse+ ]+ )
+ gen/Amazonka/LexV2Models/Types/Principal.hs view
@@ -0,0 +1,89 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.Principal+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.Principal where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The IAM principal that you allowing or denying access to an Amazon Lex+-- action. You must provide a @service@ or an @arn@, but not both in the+-- same statement. For more information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html AWS JSON policy elements: Principal>+-- .+--+-- /See:/ 'newPrincipal' smart constructor.+data Principal = Principal'+ { -- | The Amazon Resource Name (ARN) of the principal.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The name of the AWS service that should allowed or denied access to an+ -- Amazon Lex action.+ service :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Principal' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'arn', 'principal_arn' - The Amazon Resource Name (ARN) of the principal.+--+-- 'service', 'principal_service' - The name of the AWS service that should allowed or denied access to an+-- Amazon Lex action.+newPrincipal ::+ Principal+newPrincipal =+ Principal'+ { arn = Prelude.Nothing,+ service = Prelude.Nothing+ }++-- | The Amazon Resource Name (ARN) of the principal.+principal_arn :: Lens.Lens' Principal (Prelude.Maybe Prelude.Text)+principal_arn = Lens.lens (\Principal' {arn} -> arn) (\s@Principal' {} a -> s {arn = a} :: Principal)++-- | The name of the AWS service that should allowed or denied access to an+-- Amazon Lex action.+principal_service :: Lens.Lens' Principal (Prelude.Maybe Prelude.Text)+principal_service = Lens.lens (\Principal' {service} -> service) (\s@Principal' {} a -> s {service = a} :: Principal)++instance Prelude.Hashable Principal where+ hashWithSalt _salt Principal' {..} =+ _salt+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` service++instance Prelude.NFData Principal where+ rnf Principal' {..} =+ Prelude.rnf arn `Prelude.seq` Prelude.rnf service++instance Data.ToJSON Principal where+ toJSON Principal' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("arn" Data..=) Prelude.<$> arn,+ ("service" Data..=) Prelude.<$> service+ ]+ )
+ gen/Amazonka/LexV2Models/Types/PromptAttempt.hs view
@@ -0,0 +1,92 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.PromptAttempt+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.PromptAttempt+ ( PromptAttempt+ ( ..,+ PromptAttempt_Initial,+ PromptAttempt_Retry1,+ PromptAttempt_Retry2,+ PromptAttempt_Retry3,+ PromptAttempt_Retry4,+ PromptAttempt_Retry5+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The attempt name of attempts of a prompt.+newtype PromptAttempt = PromptAttempt'+ { fromPromptAttempt ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern PromptAttempt_Initial :: PromptAttempt+pattern PromptAttempt_Initial = PromptAttempt' "Initial"++pattern PromptAttempt_Retry1 :: PromptAttempt+pattern PromptAttempt_Retry1 = PromptAttempt' "Retry1"++pattern PromptAttempt_Retry2 :: PromptAttempt+pattern PromptAttempt_Retry2 = PromptAttempt' "Retry2"++pattern PromptAttempt_Retry3 :: PromptAttempt+pattern PromptAttempt_Retry3 = PromptAttempt' "Retry3"++pattern PromptAttempt_Retry4 :: PromptAttempt+pattern PromptAttempt_Retry4 = PromptAttempt' "Retry4"++pattern PromptAttempt_Retry5 :: PromptAttempt+pattern PromptAttempt_Retry5 = PromptAttempt' "Retry5"++{-# COMPLETE+ PromptAttempt_Initial,+ PromptAttempt_Retry1,+ PromptAttempt_Retry2,+ PromptAttempt_Retry3,+ PromptAttempt_Retry4,+ PromptAttempt_Retry5,+ PromptAttempt'+ #-}
+ gen/Amazonka/LexV2Models/Types/PromptAttemptSpecification.hs view
@@ -0,0 +1,133 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.PromptAttemptSpecification+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.PromptAttemptSpecification where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.AllowedInputTypes+import Amazonka.LexV2Models.Types.AudioAndDTMFInputSpecification+import Amazonka.LexV2Models.Types.TextInputSpecification+import qualified Amazonka.Prelude as Prelude++-- | Specifies the settings on a prompt attempt.+--+-- /See:/ 'newPromptAttemptSpecification' smart constructor.+data PromptAttemptSpecification = PromptAttemptSpecification'+ { -- | Indicates whether the user can interrupt a speech prompt attempt from+ -- the bot.+ allowInterrupt :: Prelude.Maybe Prelude.Bool,+ -- | Specifies the settings on audio and DTMF input.+ audioAndDTMFInputSpecification :: Prelude.Maybe AudioAndDTMFInputSpecification,+ -- | Specifies the settings on text input.+ textInputSpecification :: Prelude.Maybe TextInputSpecification,+ -- | Indicates the allowed input types of the prompt attempt.+ allowedInputTypes :: AllowedInputTypes+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PromptAttemptSpecification' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'allowInterrupt', 'promptAttemptSpecification_allowInterrupt' - Indicates whether the user can interrupt a speech prompt attempt from+-- the bot.+--+-- 'audioAndDTMFInputSpecification', 'promptAttemptSpecification_audioAndDTMFInputSpecification' - Specifies the settings on audio and DTMF input.+--+-- 'textInputSpecification', 'promptAttemptSpecification_textInputSpecification' - Specifies the settings on text input.+--+-- 'allowedInputTypes', 'promptAttemptSpecification_allowedInputTypes' - Indicates the allowed input types of the prompt attempt.+newPromptAttemptSpecification ::+ -- | 'allowedInputTypes'+ AllowedInputTypes ->+ PromptAttemptSpecification+newPromptAttemptSpecification pAllowedInputTypes_ =+ PromptAttemptSpecification'+ { allowInterrupt =+ Prelude.Nothing,+ audioAndDTMFInputSpecification =+ Prelude.Nothing,+ textInputSpecification = Prelude.Nothing,+ allowedInputTypes = pAllowedInputTypes_+ }++-- | Indicates whether the user can interrupt a speech prompt attempt from+-- the bot.+promptAttemptSpecification_allowInterrupt :: Lens.Lens' PromptAttemptSpecification (Prelude.Maybe Prelude.Bool)+promptAttemptSpecification_allowInterrupt = Lens.lens (\PromptAttemptSpecification' {allowInterrupt} -> allowInterrupt) (\s@PromptAttemptSpecification' {} a -> s {allowInterrupt = a} :: PromptAttemptSpecification)++-- | Specifies the settings on audio and DTMF input.+promptAttemptSpecification_audioAndDTMFInputSpecification :: Lens.Lens' PromptAttemptSpecification (Prelude.Maybe AudioAndDTMFInputSpecification)+promptAttemptSpecification_audioAndDTMFInputSpecification = Lens.lens (\PromptAttemptSpecification' {audioAndDTMFInputSpecification} -> audioAndDTMFInputSpecification) (\s@PromptAttemptSpecification' {} a -> s {audioAndDTMFInputSpecification = a} :: PromptAttemptSpecification)++-- | Specifies the settings on text input.+promptAttemptSpecification_textInputSpecification :: Lens.Lens' PromptAttemptSpecification (Prelude.Maybe TextInputSpecification)+promptAttemptSpecification_textInputSpecification = Lens.lens (\PromptAttemptSpecification' {textInputSpecification} -> textInputSpecification) (\s@PromptAttemptSpecification' {} a -> s {textInputSpecification = a} :: PromptAttemptSpecification)++-- | Indicates the allowed input types of the prompt attempt.+promptAttemptSpecification_allowedInputTypes :: Lens.Lens' PromptAttemptSpecification AllowedInputTypes+promptAttemptSpecification_allowedInputTypes = Lens.lens (\PromptAttemptSpecification' {allowedInputTypes} -> allowedInputTypes) (\s@PromptAttemptSpecification' {} a -> s {allowedInputTypes = a} :: PromptAttemptSpecification)++instance Data.FromJSON PromptAttemptSpecification where+ parseJSON =+ Data.withObject+ "PromptAttemptSpecification"+ ( \x ->+ PromptAttemptSpecification'+ Prelude.<$> (x Data..:? "allowInterrupt")+ Prelude.<*> (x Data..:? "audioAndDTMFInputSpecification")+ Prelude.<*> (x Data..:? "textInputSpecification")+ Prelude.<*> (x Data..: "allowedInputTypes")+ )++instance Prelude.Hashable PromptAttemptSpecification where+ hashWithSalt _salt PromptAttemptSpecification' {..} =+ _salt+ `Prelude.hashWithSalt` allowInterrupt+ `Prelude.hashWithSalt` audioAndDTMFInputSpecification+ `Prelude.hashWithSalt` textInputSpecification+ `Prelude.hashWithSalt` allowedInputTypes++instance Prelude.NFData PromptAttemptSpecification where+ rnf PromptAttemptSpecification' {..} =+ Prelude.rnf allowInterrupt+ `Prelude.seq` Prelude.rnf audioAndDTMFInputSpecification+ `Prelude.seq` Prelude.rnf textInputSpecification+ `Prelude.seq` Prelude.rnf allowedInputTypes++instance Data.ToJSON PromptAttemptSpecification where+ toJSON PromptAttemptSpecification' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("allowInterrupt" Data..=)+ Prelude.<$> allowInterrupt,+ ("audioAndDTMFInputSpecification" Data..=)+ Prelude.<$> audioAndDTMFInputSpecification,+ ("textInputSpecification" Data..=)+ Prelude.<$> textInputSpecification,+ Prelude.Just+ ("allowedInputTypes" Data..= allowedInputTypes)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/PromptSpecification.hs view
@@ -0,0 +1,154 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.PromptSpecification+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.PromptSpecification where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.MessageGroup+import Amazonka.LexV2Models.Types.MessageSelectionStrategy+import Amazonka.LexV2Models.Types.PromptAttempt+import Amazonka.LexV2Models.Types.PromptAttemptSpecification+import qualified Amazonka.Prelude as Prelude++-- | Specifies a list of message groups that Amazon Lex sends to a user to+-- elicit a response.+--+-- /See:/ 'newPromptSpecification' smart constructor.+data PromptSpecification = PromptSpecification'+ { -- | Indicates whether the user can interrupt a speech prompt from the bot.+ allowInterrupt :: Prelude.Maybe Prelude.Bool,+ -- | Indicates how a message is selected from a message group among retries.+ messageSelectionStrategy :: Prelude.Maybe MessageSelectionStrategy,+ -- | Specifies the advanced settings on each attempt of the prompt.+ promptAttemptsSpecification :: Prelude.Maybe (Prelude.HashMap PromptAttempt PromptAttemptSpecification),+ -- | A collection of messages that Amazon Lex can send to the user. Amazon+ -- Lex chooses the actual message to send at runtime.+ messageGroups :: Prelude.NonEmpty MessageGroup,+ -- | The maximum number of times the bot tries to elicit a response from the+ -- user using this prompt.+ maxRetries :: Prelude.Natural+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PromptSpecification' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'allowInterrupt', 'promptSpecification_allowInterrupt' - Indicates whether the user can interrupt a speech prompt from the bot.+--+-- 'messageSelectionStrategy', 'promptSpecification_messageSelectionStrategy' - Indicates how a message is selected from a message group among retries.+--+-- 'promptAttemptsSpecification', 'promptSpecification_promptAttemptsSpecification' - Specifies the advanced settings on each attempt of the prompt.+--+-- 'messageGroups', 'promptSpecification_messageGroups' - A collection of messages that Amazon Lex can send to the user. Amazon+-- Lex chooses the actual message to send at runtime.+--+-- 'maxRetries', 'promptSpecification_maxRetries' - The maximum number of times the bot tries to elicit a response from the+-- user using this prompt.+newPromptSpecification ::+ -- | 'messageGroups'+ Prelude.NonEmpty MessageGroup ->+ -- | 'maxRetries'+ Prelude.Natural ->+ PromptSpecification+newPromptSpecification pMessageGroups_ pMaxRetries_ =+ PromptSpecification'+ { allowInterrupt =+ Prelude.Nothing,+ messageSelectionStrategy = Prelude.Nothing,+ promptAttemptsSpecification = Prelude.Nothing,+ messageGroups = Lens.coerced Lens.# pMessageGroups_,+ maxRetries = pMaxRetries_+ }++-- | Indicates whether the user can interrupt a speech prompt from the bot.+promptSpecification_allowInterrupt :: Lens.Lens' PromptSpecification (Prelude.Maybe Prelude.Bool)+promptSpecification_allowInterrupt = Lens.lens (\PromptSpecification' {allowInterrupt} -> allowInterrupt) (\s@PromptSpecification' {} a -> s {allowInterrupt = a} :: PromptSpecification)++-- | Indicates how a message is selected from a message group among retries.+promptSpecification_messageSelectionStrategy :: Lens.Lens' PromptSpecification (Prelude.Maybe MessageSelectionStrategy)+promptSpecification_messageSelectionStrategy = Lens.lens (\PromptSpecification' {messageSelectionStrategy} -> messageSelectionStrategy) (\s@PromptSpecification' {} a -> s {messageSelectionStrategy = a} :: PromptSpecification)++-- | Specifies the advanced settings on each attempt of the prompt.+promptSpecification_promptAttemptsSpecification :: Lens.Lens' PromptSpecification (Prelude.Maybe (Prelude.HashMap PromptAttempt PromptAttemptSpecification))+promptSpecification_promptAttemptsSpecification = Lens.lens (\PromptSpecification' {promptAttemptsSpecification} -> promptAttemptsSpecification) (\s@PromptSpecification' {} a -> s {promptAttemptsSpecification = a} :: PromptSpecification) Prelude.. Lens.mapping Lens.coerced++-- | A collection of messages that Amazon Lex can send to the user. Amazon+-- Lex chooses the actual message to send at runtime.+promptSpecification_messageGroups :: Lens.Lens' PromptSpecification (Prelude.NonEmpty MessageGroup)+promptSpecification_messageGroups = Lens.lens (\PromptSpecification' {messageGroups} -> messageGroups) (\s@PromptSpecification' {} a -> s {messageGroups = a} :: PromptSpecification) Prelude.. Lens.coerced++-- | The maximum number of times the bot tries to elicit a response from the+-- user using this prompt.+promptSpecification_maxRetries :: Lens.Lens' PromptSpecification Prelude.Natural+promptSpecification_maxRetries = Lens.lens (\PromptSpecification' {maxRetries} -> maxRetries) (\s@PromptSpecification' {} a -> s {maxRetries = a} :: PromptSpecification)++instance Data.FromJSON PromptSpecification where+ parseJSON =+ Data.withObject+ "PromptSpecification"+ ( \x ->+ PromptSpecification'+ Prelude.<$> (x Data..:? "allowInterrupt")+ Prelude.<*> (x Data..:? "messageSelectionStrategy")+ Prelude.<*> ( x+ Data..:? "promptAttemptsSpecification"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..: "messageGroups")+ Prelude.<*> (x Data..: "maxRetries")+ )++instance Prelude.Hashable PromptSpecification where+ hashWithSalt _salt PromptSpecification' {..} =+ _salt+ `Prelude.hashWithSalt` allowInterrupt+ `Prelude.hashWithSalt` messageSelectionStrategy+ `Prelude.hashWithSalt` promptAttemptsSpecification+ `Prelude.hashWithSalt` messageGroups+ `Prelude.hashWithSalt` maxRetries++instance Prelude.NFData PromptSpecification where+ rnf PromptSpecification' {..} =+ Prelude.rnf allowInterrupt+ `Prelude.seq` Prelude.rnf messageSelectionStrategy+ `Prelude.seq` Prelude.rnf promptAttemptsSpecification+ `Prelude.seq` Prelude.rnf messageGroups+ `Prelude.seq` Prelude.rnf maxRetries++instance Data.ToJSON PromptSpecification where+ toJSON PromptSpecification' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("allowInterrupt" Data..=)+ Prelude.<$> allowInterrupt,+ ("messageSelectionStrategy" Data..=)+ Prelude.<$> messageSelectionStrategy,+ ("promptAttemptsSpecification" Data..=)+ Prelude.<$> promptAttemptsSpecification,+ Prelude.Just ("messageGroups" Data..= messageGroups),+ Prelude.Just ("maxRetries" Data..= maxRetries)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/RecommendedIntentSummary.hs view
@@ -0,0 +1,103 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.RecommendedIntentSummary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.RecommendedIntentSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | An object that contains a summary of a recommended intent.+--+-- /See:/ 'newRecommendedIntentSummary' smart constructor.+data RecommendedIntentSummary = RecommendedIntentSummary'+ { -- | The unique identifier of a recommended intent associated with the bot+ -- recommendation.+ intentId :: Prelude.Maybe Prelude.Text,+ -- | The name of a recommended intent associated with the bot recommendation.+ intentName :: Prelude.Maybe Prelude.Text,+ -- | The count of sample utterances of a recommended intent that is+ -- associated with a bot recommendation.+ sampleUtterancesCount :: Prelude.Maybe Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RecommendedIntentSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'intentId', 'recommendedIntentSummary_intentId' - The unique identifier of a recommended intent associated with the bot+-- recommendation.+--+-- 'intentName', 'recommendedIntentSummary_intentName' - The name of a recommended intent associated with the bot recommendation.+--+-- 'sampleUtterancesCount', 'recommendedIntentSummary_sampleUtterancesCount' - The count of sample utterances of a recommended intent that is+-- associated with a bot recommendation.+newRecommendedIntentSummary ::+ RecommendedIntentSummary+newRecommendedIntentSummary =+ RecommendedIntentSummary'+ { intentId =+ Prelude.Nothing,+ intentName = Prelude.Nothing,+ sampleUtterancesCount = Prelude.Nothing+ }++-- | The unique identifier of a recommended intent associated with the bot+-- recommendation.+recommendedIntentSummary_intentId :: Lens.Lens' RecommendedIntentSummary (Prelude.Maybe Prelude.Text)+recommendedIntentSummary_intentId = Lens.lens (\RecommendedIntentSummary' {intentId} -> intentId) (\s@RecommendedIntentSummary' {} a -> s {intentId = a} :: RecommendedIntentSummary)++-- | The name of a recommended intent associated with the bot recommendation.+recommendedIntentSummary_intentName :: Lens.Lens' RecommendedIntentSummary (Prelude.Maybe Prelude.Text)+recommendedIntentSummary_intentName = Lens.lens (\RecommendedIntentSummary' {intentName} -> intentName) (\s@RecommendedIntentSummary' {} a -> s {intentName = a} :: RecommendedIntentSummary)++-- | The count of sample utterances of a recommended intent that is+-- associated with a bot recommendation.+recommendedIntentSummary_sampleUtterancesCount :: Lens.Lens' RecommendedIntentSummary (Prelude.Maybe Prelude.Int)+recommendedIntentSummary_sampleUtterancesCount = Lens.lens (\RecommendedIntentSummary' {sampleUtterancesCount} -> sampleUtterancesCount) (\s@RecommendedIntentSummary' {} a -> s {sampleUtterancesCount = a} :: RecommendedIntentSummary)++instance Data.FromJSON RecommendedIntentSummary where+ parseJSON =+ Data.withObject+ "RecommendedIntentSummary"+ ( \x ->+ RecommendedIntentSummary'+ Prelude.<$> (x Data..:? "intentId")+ Prelude.<*> (x Data..:? "intentName")+ Prelude.<*> (x Data..:? "sampleUtterancesCount")+ )++instance Prelude.Hashable RecommendedIntentSummary where+ hashWithSalt _salt RecommendedIntentSummary' {..} =+ _salt+ `Prelude.hashWithSalt` intentId+ `Prelude.hashWithSalt` intentName+ `Prelude.hashWithSalt` sampleUtterancesCount++instance Prelude.NFData RecommendedIntentSummary where+ rnf RecommendedIntentSummary' {..} =+ Prelude.rnf intentId+ `Prelude.seq` Prelude.rnf intentName+ `Prelude.seq` Prelude.rnf sampleUtterancesCount
+ gen/Amazonka/LexV2Models/Types/RelativeAggregationDuration.hs view
@@ -0,0 +1,141 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.RelativeAggregationDuration+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.RelativeAggregationDuration where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.TimeDimension+import qualified Amazonka.Prelude as Prelude++-- | Specifies the time window that utterance statistics are returned for.+-- The time window is always relative to the last time that the that+-- utterances were aggregated. For example, if the+-- @ListAggregatedUtterances@ operation is called at 1600, the time window+-- is set to 1 hour, and the last refresh time was 1530, only utterances+-- made between 1430 and 1530 are returned.+--+-- You can choose the time window that statistics should be returned for.+--+-- - __Hours__ - You can request utterance statistics for 1, 3, 6, 12, or+-- 24 hour time windows. Statistics are refreshed every half hour for 1+-- hour time windows, and hourly for the other time windows.+--+-- - __Days__ - You can request utterance statistics for 3 days.+-- Statistics are refreshed every 6 hours.+--+-- - __Weeks__ - You can see statistics for one or two weeks. Statistics+-- are refreshed every 12 hours for one week time windows, and once per+-- day for two week time windows.+--+-- /See:/ 'newRelativeAggregationDuration' smart constructor.+data RelativeAggregationDuration = RelativeAggregationDuration'+ { -- | The type of time period that the @timeValue@ field represents.+ timeDimension :: TimeDimension,+ -- | The period of the time window to gather statistics for. The valid value+ -- depends on the setting of the @timeDimension@ field.+ --+ -- - @Hours@ - 1\/3\/6\/12\/24+ --+ -- - @Days@ - 3+ --+ -- - @Weeks@ - 1\/2+ timeValue :: Prelude.Natural+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RelativeAggregationDuration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'timeDimension', 'relativeAggregationDuration_timeDimension' - The type of time period that the @timeValue@ field represents.+--+-- 'timeValue', 'relativeAggregationDuration_timeValue' - The period of the time window to gather statistics for. The valid value+-- depends on the setting of the @timeDimension@ field.+--+-- - @Hours@ - 1\/3\/6\/12\/24+--+-- - @Days@ - 3+--+-- - @Weeks@ - 1\/2+newRelativeAggregationDuration ::+ -- | 'timeDimension'+ TimeDimension ->+ -- | 'timeValue'+ Prelude.Natural ->+ RelativeAggregationDuration+newRelativeAggregationDuration+ pTimeDimension_+ pTimeValue_ =+ RelativeAggregationDuration'+ { timeDimension =+ pTimeDimension_,+ timeValue = pTimeValue_+ }++-- | The type of time period that the @timeValue@ field represents.+relativeAggregationDuration_timeDimension :: Lens.Lens' RelativeAggregationDuration TimeDimension+relativeAggregationDuration_timeDimension = Lens.lens (\RelativeAggregationDuration' {timeDimension} -> timeDimension) (\s@RelativeAggregationDuration' {} a -> s {timeDimension = a} :: RelativeAggregationDuration)++-- | The period of the time window to gather statistics for. The valid value+-- depends on the setting of the @timeDimension@ field.+--+-- - @Hours@ - 1\/3\/6\/12\/24+--+-- - @Days@ - 3+--+-- - @Weeks@ - 1\/2+relativeAggregationDuration_timeValue :: Lens.Lens' RelativeAggregationDuration Prelude.Natural+relativeAggregationDuration_timeValue = Lens.lens (\RelativeAggregationDuration' {timeValue} -> timeValue) (\s@RelativeAggregationDuration' {} a -> s {timeValue = a} :: RelativeAggregationDuration)++instance Data.FromJSON RelativeAggregationDuration where+ parseJSON =+ Data.withObject+ "RelativeAggregationDuration"+ ( \x ->+ RelativeAggregationDuration'+ Prelude.<$> (x Data..: "timeDimension")+ Prelude.<*> (x Data..: "timeValue")+ )++instance Prelude.Hashable RelativeAggregationDuration where+ hashWithSalt _salt RelativeAggregationDuration' {..} =+ _salt+ `Prelude.hashWithSalt` timeDimension+ `Prelude.hashWithSalt` timeValue++instance Prelude.NFData RelativeAggregationDuration where+ rnf RelativeAggregationDuration' {..} =+ Prelude.rnf timeDimension+ `Prelude.seq` Prelude.rnf timeValue++instance Data.ToJSON RelativeAggregationDuration where+ toJSON RelativeAggregationDuration' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("timeDimension" Data..= timeDimension),+ Prelude.Just ("timeValue" Data..= timeValue)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/ResponseSpecification.hs view
@@ -0,0 +1,106 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.ResponseSpecification+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.ResponseSpecification where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.MessageGroup+import qualified Amazonka.Prelude as Prelude++-- | Specifies a list of message groups that Amazon Lex uses to respond the+-- user input.+--+-- /See:/ 'newResponseSpecification' smart constructor.+data ResponseSpecification = ResponseSpecification'+ { -- | Indicates whether the user can interrupt a speech response from Amazon+ -- Lex.+ allowInterrupt :: Prelude.Maybe Prelude.Bool,+ -- | A collection of responses that Amazon Lex can send to the user. Amazon+ -- Lex chooses the actual response to send at runtime.+ messageGroups :: Prelude.NonEmpty MessageGroup+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ResponseSpecification' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'allowInterrupt', 'responseSpecification_allowInterrupt' - Indicates whether the user can interrupt a speech response from Amazon+-- Lex.+--+-- 'messageGroups', 'responseSpecification_messageGroups' - A collection of responses that Amazon Lex can send to the user. Amazon+-- Lex chooses the actual response to send at runtime.+newResponseSpecification ::+ -- | 'messageGroups'+ Prelude.NonEmpty MessageGroup ->+ ResponseSpecification+newResponseSpecification pMessageGroups_ =+ ResponseSpecification'+ { allowInterrupt =+ Prelude.Nothing,+ messageGroups = Lens.coerced Lens.# pMessageGroups_+ }++-- | Indicates whether the user can interrupt a speech response from Amazon+-- Lex.+responseSpecification_allowInterrupt :: Lens.Lens' ResponseSpecification (Prelude.Maybe Prelude.Bool)+responseSpecification_allowInterrupt = Lens.lens (\ResponseSpecification' {allowInterrupt} -> allowInterrupt) (\s@ResponseSpecification' {} a -> s {allowInterrupt = a} :: ResponseSpecification)++-- | A collection of responses that Amazon Lex can send to the user. Amazon+-- Lex chooses the actual response to send at runtime.+responseSpecification_messageGroups :: Lens.Lens' ResponseSpecification (Prelude.NonEmpty MessageGroup)+responseSpecification_messageGroups = Lens.lens (\ResponseSpecification' {messageGroups} -> messageGroups) (\s@ResponseSpecification' {} a -> s {messageGroups = a} :: ResponseSpecification) Prelude.. Lens.coerced++instance Data.FromJSON ResponseSpecification where+ parseJSON =+ Data.withObject+ "ResponseSpecification"+ ( \x ->+ ResponseSpecification'+ Prelude.<$> (x Data..:? "allowInterrupt")+ Prelude.<*> (x Data..: "messageGroups")+ )++instance Prelude.Hashable ResponseSpecification where+ hashWithSalt _salt ResponseSpecification' {..} =+ _salt+ `Prelude.hashWithSalt` allowInterrupt+ `Prelude.hashWithSalt` messageGroups++instance Prelude.NFData ResponseSpecification where+ rnf ResponseSpecification' {..} =+ Prelude.rnf allowInterrupt+ `Prelude.seq` Prelude.rnf messageGroups++instance Data.ToJSON ResponseSpecification where+ toJSON ResponseSpecification' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("allowInterrupt" Data..=)+ Prelude.<$> allowInterrupt,+ Prelude.Just+ ("messageGroups" Data..= messageGroups)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/S3BucketLogDestination.hs view
@@ -0,0 +1,117 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.S3BucketLogDestination+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.S3BucketLogDestination where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Specifies an Amazon S3 bucket for logging audio conversations+--+-- /See:/ 'newS3BucketLogDestination' smart constructor.+data S3BucketLogDestination = S3BucketLogDestination'+ { -- | The Amazon Resource Name (ARN) of an AWS Key Management Service (KMS)+ -- key for encrypting audio log files stored in an S3 bucket.+ kmsKeyArn :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Resource Name (ARN) of an Amazon S3 bucket where audio log+ -- files are stored.+ s3BucketArn :: Prelude.Text,+ -- | The S3 prefix to assign to audio log files.+ logPrefix :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'S3BucketLogDestination' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'kmsKeyArn', 's3BucketLogDestination_kmsKeyArn' - The Amazon Resource Name (ARN) of an AWS Key Management Service (KMS)+-- key for encrypting audio log files stored in an S3 bucket.+--+-- 's3BucketArn', 's3BucketLogDestination_s3BucketArn' - The Amazon Resource Name (ARN) of an Amazon S3 bucket where audio log+-- files are stored.+--+-- 'logPrefix', 's3BucketLogDestination_logPrefix' - The S3 prefix to assign to audio log files.+newS3BucketLogDestination ::+ -- | 's3BucketArn'+ Prelude.Text ->+ -- | 'logPrefix'+ Prelude.Text ->+ S3BucketLogDestination+newS3BucketLogDestination pS3BucketArn_ pLogPrefix_ =+ S3BucketLogDestination'+ { kmsKeyArn =+ Prelude.Nothing,+ s3BucketArn = pS3BucketArn_,+ logPrefix = pLogPrefix_+ }++-- | The Amazon Resource Name (ARN) of an AWS Key Management Service (KMS)+-- key for encrypting audio log files stored in an S3 bucket.+s3BucketLogDestination_kmsKeyArn :: Lens.Lens' S3BucketLogDestination (Prelude.Maybe Prelude.Text)+s3BucketLogDestination_kmsKeyArn = Lens.lens (\S3BucketLogDestination' {kmsKeyArn} -> kmsKeyArn) (\s@S3BucketLogDestination' {} a -> s {kmsKeyArn = a} :: S3BucketLogDestination)++-- | The Amazon Resource Name (ARN) of an Amazon S3 bucket where audio log+-- files are stored.+s3BucketLogDestination_s3BucketArn :: Lens.Lens' S3BucketLogDestination Prelude.Text+s3BucketLogDestination_s3BucketArn = Lens.lens (\S3BucketLogDestination' {s3BucketArn} -> s3BucketArn) (\s@S3BucketLogDestination' {} a -> s {s3BucketArn = a} :: S3BucketLogDestination)++-- | The S3 prefix to assign to audio log files.+s3BucketLogDestination_logPrefix :: Lens.Lens' S3BucketLogDestination Prelude.Text+s3BucketLogDestination_logPrefix = Lens.lens (\S3BucketLogDestination' {logPrefix} -> logPrefix) (\s@S3BucketLogDestination' {} a -> s {logPrefix = a} :: S3BucketLogDestination)++instance Data.FromJSON S3BucketLogDestination where+ parseJSON =+ Data.withObject+ "S3BucketLogDestination"+ ( \x ->+ S3BucketLogDestination'+ Prelude.<$> (x Data..:? "kmsKeyArn")+ Prelude.<*> (x Data..: "s3BucketArn")+ Prelude.<*> (x Data..: "logPrefix")+ )++instance Prelude.Hashable S3BucketLogDestination where+ hashWithSalt _salt S3BucketLogDestination' {..} =+ _salt+ `Prelude.hashWithSalt` kmsKeyArn+ `Prelude.hashWithSalt` s3BucketArn+ `Prelude.hashWithSalt` logPrefix++instance Prelude.NFData S3BucketLogDestination where+ rnf S3BucketLogDestination' {..} =+ Prelude.rnf kmsKeyArn+ `Prelude.seq` Prelude.rnf s3BucketArn+ `Prelude.seq` Prelude.rnf logPrefix++instance Data.ToJSON S3BucketLogDestination where+ toJSON S3BucketLogDestination' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("kmsKeyArn" Data..=) Prelude.<$> kmsKeyArn,+ Prelude.Just ("s3BucketArn" Data..= s3BucketArn),+ Prelude.Just ("logPrefix" Data..= logPrefix)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/S3BucketTranscriptSource.hs view
@@ -0,0 +1,175 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.S3BucketTranscriptSource+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.S3BucketTranscriptSource where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.PathFormat+import Amazonka.LexV2Models.Types.TranscriptFilter+import Amazonka.LexV2Models.Types.TranscriptFormat+import qualified Amazonka.Prelude as Prelude++-- | The object representing the Amazon S3 bucket containing the transcript,+-- as well as the associated metadata.+--+-- /See:/ 'newS3BucketTranscriptSource' smart constructor.+data S3BucketTranscriptSource = S3BucketTranscriptSource'+ { -- | The ARN of the KMS key that customer use to encrypt their Amazon S3+ -- bucket. Only use this field if your bucket is encrypted using a customer+ -- managed KMS key.+ kmsKeyArn :: Prelude.Maybe Prelude.Text,+ -- | The object that contains a path format that will be applied when Amazon+ -- Lex reads the transcript file in the bucket you provide. Specify this+ -- object if you only want Lex to read a subset of files in your Amazon S3+ -- bucket.+ pathFormat :: Prelude.Maybe PathFormat,+ -- | The object that contains the filter which will be applied when Amazon+ -- Lex reads through the Amazon S3 bucket. Specify this object if you want+ -- Amazon Lex to read only a subset of the Amazon S3 bucket based on the+ -- filter you provide.+ transcriptFilter :: Prelude.Maybe TranscriptFilter,+ -- | The name of the bucket containing the transcript and the associated+ -- metadata.+ s3BucketName :: Prelude.Text,+ -- | The format of the transcript content. Currently, Genie only supports the+ -- Amazon Lex transcript format.+ transcriptFormat :: TranscriptFormat+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'S3BucketTranscriptSource' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'kmsKeyArn', 's3BucketTranscriptSource_kmsKeyArn' - The ARN of the KMS key that customer use to encrypt their Amazon S3+-- bucket. Only use this field if your bucket is encrypted using a customer+-- managed KMS key.+--+-- 'pathFormat', 's3BucketTranscriptSource_pathFormat' - The object that contains a path format that will be applied when Amazon+-- Lex reads the transcript file in the bucket you provide. Specify this+-- object if you only want Lex to read a subset of files in your Amazon S3+-- bucket.+--+-- 'transcriptFilter', 's3BucketTranscriptSource_transcriptFilter' - The object that contains the filter which will be applied when Amazon+-- Lex reads through the Amazon S3 bucket. Specify this object if you want+-- Amazon Lex to read only a subset of the Amazon S3 bucket based on the+-- filter you provide.+--+-- 's3BucketName', 's3BucketTranscriptSource_s3BucketName' - The name of the bucket containing the transcript and the associated+-- metadata.+--+-- 'transcriptFormat', 's3BucketTranscriptSource_transcriptFormat' - The format of the transcript content. Currently, Genie only supports the+-- Amazon Lex transcript format.+newS3BucketTranscriptSource ::+ -- | 's3BucketName'+ Prelude.Text ->+ -- | 'transcriptFormat'+ TranscriptFormat ->+ S3BucketTranscriptSource+newS3BucketTranscriptSource+ pS3BucketName_+ pTranscriptFormat_ =+ S3BucketTranscriptSource'+ { kmsKeyArn =+ Prelude.Nothing,+ pathFormat = Prelude.Nothing,+ transcriptFilter = Prelude.Nothing,+ s3BucketName = pS3BucketName_,+ transcriptFormat = pTranscriptFormat_+ }++-- | The ARN of the KMS key that customer use to encrypt their Amazon S3+-- bucket. Only use this field if your bucket is encrypted using a customer+-- managed KMS key.+s3BucketTranscriptSource_kmsKeyArn :: Lens.Lens' S3BucketTranscriptSource (Prelude.Maybe Prelude.Text)+s3BucketTranscriptSource_kmsKeyArn = Lens.lens (\S3BucketTranscriptSource' {kmsKeyArn} -> kmsKeyArn) (\s@S3BucketTranscriptSource' {} a -> s {kmsKeyArn = a} :: S3BucketTranscriptSource)++-- | The object that contains a path format that will be applied when Amazon+-- Lex reads the transcript file in the bucket you provide. Specify this+-- object if you only want Lex to read a subset of files in your Amazon S3+-- bucket.+s3BucketTranscriptSource_pathFormat :: Lens.Lens' S3BucketTranscriptSource (Prelude.Maybe PathFormat)+s3BucketTranscriptSource_pathFormat = Lens.lens (\S3BucketTranscriptSource' {pathFormat} -> pathFormat) (\s@S3BucketTranscriptSource' {} a -> s {pathFormat = a} :: S3BucketTranscriptSource)++-- | The object that contains the filter which will be applied when Amazon+-- Lex reads through the Amazon S3 bucket. Specify this object if you want+-- Amazon Lex to read only a subset of the Amazon S3 bucket based on the+-- filter you provide.+s3BucketTranscriptSource_transcriptFilter :: Lens.Lens' S3BucketTranscriptSource (Prelude.Maybe TranscriptFilter)+s3BucketTranscriptSource_transcriptFilter = Lens.lens (\S3BucketTranscriptSource' {transcriptFilter} -> transcriptFilter) (\s@S3BucketTranscriptSource' {} a -> s {transcriptFilter = a} :: S3BucketTranscriptSource)++-- | The name of the bucket containing the transcript and the associated+-- metadata.+s3BucketTranscriptSource_s3BucketName :: Lens.Lens' S3BucketTranscriptSource Prelude.Text+s3BucketTranscriptSource_s3BucketName = Lens.lens (\S3BucketTranscriptSource' {s3BucketName} -> s3BucketName) (\s@S3BucketTranscriptSource' {} a -> s {s3BucketName = a} :: S3BucketTranscriptSource)++-- | The format of the transcript content. Currently, Genie only supports the+-- Amazon Lex transcript format.+s3BucketTranscriptSource_transcriptFormat :: Lens.Lens' S3BucketTranscriptSource TranscriptFormat+s3BucketTranscriptSource_transcriptFormat = Lens.lens (\S3BucketTranscriptSource' {transcriptFormat} -> transcriptFormat) (\s@S3BucketTranscriptSource' {} a -> s {transcriptFormat = a} :: S3BucketTranscriptSource)++instance Data.FromJSON S3BucketTranscriptSource where+ parseJSON =+ Data.withObject+ "S3BucketTranscriptSource"+ ( \x ->+ S3BucketTranscriptSource'+ Prelude.<$> (x Data..:? "kmsKeyArn")+ Prelude.<*> (x Data..:? "pathFormat")+ Prelude.<*> (x Data..:? "transcriptFilter")+ Prelude.<*> (x Data..: "s3BucketName")+ Prelude.<*> (x Data..: "transcriptFormat")+ )++instance Prelude.Hashable S3BucketTranscriptSource where+ hashWithSalt _salt S3BucketTranscriptSource' {..} =+ _salt+ `Prelude.hashWithSalt` kmsKeyArn+ `Prelude.hashWithSalt` pathFormat+ `Prelude.hashWithSalt` transcriptFilter+ `Prelude.hashWithSalt` s3BucketName+ `Prelude.hashWithSalt` transcriptFormat++instance Prelude.NFData S3BucketTranscriptSource where+ rnf S3BucketTranscriptSource' {..} =+ Prelude.rnf kmsKeyArn+ `Prelude.seq` Prelude.rnf pathFormat+ `Prelude.seq` Prelude.rnf transcriptFilter+ `Prelude.seq` Prelude.rnf s3BucketName+ `Prelude.seq` Prelude.rnf transcriptFormat++instance Data.ToJSON S3BucketTranscriptSource where+ toJSON S3BucketTranscriptSource' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("kmsKeyArn" Data..=) Prelude.<$> kmsKeyArn,+ ("pathFormat" Data..=) Prelude.<$> pathFormat,+ ("transcriptFilter" Data..=)+ Prelude.<$> transcriptFilter,+ Prelude.Just ("s3BucketName" Data..= s3BucketName),+ Prelude.Just+ ("transcriptFormat" Data..= transcriptFormat)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/SSMLMessage.hs view
@@ -0,0 +1,74 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.SSMLMessage+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.SSMLMessage where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Defines a Speech Synthesis Markup Language (SSML) prompt.+--+-- /See:/ 'newSSMLMessage' smart constructor.+data SSMLMessage = SSMLMessage'+ { -- | The SSML text that defines the prompt.+ value :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SSMLMessage' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'value', 'sSMLMessage_value' - The SSML text that defines the prompt.+newSSMLMessage ::+ -- | 'value'+ Prelude.Text ->+ SSMLMessage+newSSMLMessage pValue_ =+ SSMLMessage' {value = pValue_}++-- | The SSML text that defines the prompt.+sSMLMessage_value :: Lens.Lens' SSMLMessage Prelude.Text+sSMLMessage_value = Lens.lens (\SSMLMessage' {value} -> value) (\s@SSMLMessage' {} a -> s {value = a} :: SSMLMessage)++instance Data.FromJSON SSMLMessage where+ parseJSON =+ Data.withObject+ "SSMLMessage"+ (\x -> SSMLMessage' Prelude.<$> (x Data..: "value"))++instance Prelude.Hashable SSMLMessage where+ hashWithSalt _salt SSMLMessage' {..} =+ _salt `Prelude.hashWithSalt` value++instance Prelude.NFData SSMLMessage where+ rnf SSMLMessage' {..} = Prelude.rnf value++instance Data.ToJSON SSMLMessage where+ toJSON SSMLMessage' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("value" Data..= value)]+ )
+ gen/Amazonka/LexV2Models/Types/SampleUtterance.hs view
@@ -0,0 +1,80 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.SampleUtterance+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.SampleUtterance where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | A sample utterance that invokes an intent or respond to a slot+-- elicitation prompt.+--+-- /See:/ 'newSampleUtterance' smart constructor.+data SampleUtterance = SampleUtterance'+ { -- | The sample utterance that Amazon Lex uses to build its machine-learning+ -- model to recognize intents.+ utterance :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SampleUtterance' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'utterance', 'sampleUtterance_utterance' - The sample utterance that Amazon Lex uses to build its machine-learning+-- model to recognize intents.+newSampleUtterance ::+ -- | 'utterance'+ Prelude.Text ->+ SampleUtterance+newSampleUtterance pUtterance_ =+ SampleUtterance' {utterance = pUtterance_}++-- | The sample utterance that Amazon Lex uses to build its machine-learning+-- model to recognize intents.+sampleUtterance_utterance :: Lens.Lens' SampleUtterance Prelude.Text+sampleUtterance_utterance = Lens.lens (\SampleUtterance' {utterance} -> utterance) (\s@SampleUtterance' {} a -> s {utterance = a} :: SampleUtterance)++instance Data.FromJSON SampleUtterance where+ parseJSON =+ Data.withObject+ "SampleUtterance"+ ( \x ->+ SampleUtterance' Prelude.<$> (x Data..: "utterance")+ )++instance Prelude.Hashable SampleUtterance where+ hashWithSalt _salt SampleUtterance' {..} =+ _salt `Prelude.hashWithSalt` utterance++instance Prelude.NFData SampleUtterance where+ rnf SampleUtterance' {..} = Prelude.rnf utterance++instance Data.ToJSON SampleUtterance where+ toJSON SampleUtterance' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("utterance" Data..= utterance)]+ )
+ gen/Amazonka/LexV2Models/Types/SampleValue.hs view
@@ -0,0 +1,74 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.SampleValue+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.SampleValue where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Defines one of the values for a slot type.+--+-- /See:/ 'newSampleValue' smart constructor.+data SampleValue = SampleValue'+ { -- | The value that can be used for a slot type.+ value :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SampleValue' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'value', 'sampleValue_value' - The value that can be used for a slot type.+newSampleValue ::+ -- | 'value'+ Prelude.Text ->+ SampleValue+newSampleValue pValue_ =+ SampleValue' {value = pValue_}++-- | The value that can be used for a slot type.+sampleValue_value :: Lens.Lens' SampleValue Prelude.Text+sampleValue_value = Lens.lens (\SampleValue' {value} -> value) (\s@SampleValue' {} a -> s {value = a} :: SampleValue)++instance Data.FromJSON SampleValue where+ parseJSON =+ Data.withObject+ "SampleValue"+ (\x -> SampleValue' Prelude.<$> (x Data..: "value"))++instance Prelude.Hashable SampleValue where+ hashWithSalt _salt SampleValue' {..} =+ _salt `Prelude.hashWithSalt` value++instance Prelude.NFData SampleValue where+ rnf SampleValue' {..} = Prelude.rnf value++instance Data.ToJSON SampleValue where+ toJSON SampleValue' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("value" Data..= value)]+ )
+ gen/Amazonka/LexV2Models/Types/SearchOrder.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.SearchOrder+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.SearchOrder+ ( SearchOrder+ ( ..,+ SearchOrder_Ascending,+ SearchOrder_Descending+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype SearchOrder = SearchOrder'+ { fromSearchOrder ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern SearchOrder_Ascending :: SearchOrder+pattern SearchOrder_Ascending = SearchOrder' "Ascending"++pattern SearchOrder_Descending :: SearchOrder+pattern SearchOrder_Descending = SearchOrder' "Descending"++{-# COMPLETE+ SearchOrder_Ascending,+ SearchOrder_Descending,+ SearchOrder'+ #-}
+ gen/Amazonka/LexV2Models/Types/SentimentAnalysisSettings.hs view
@@ -0,0 +1,87 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.SentimentAnalysisSettings+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.SentimentAnalysisSettings where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Determines whether Amazon Lex will use Amazon Comprehend to detect the+-- sentiment of user utterances.+--+-- /See:/ 'newSentimentAnalysisSettings' smart constructor.+data SentimentAnalysisSettings = SentimentAnalysisSettings'+ { -- | Sets whether Amazon Lex uses Amazon Comprehend to detect the sentiment+ -- of user utterances.+ detectSentiment :: Prelude.Bool+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SentimentAnalysisSettings' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'detectSentiment', 'sentimentAnalysisSettings_detectSentiment' - Sets whether Amazon Lex uses Amazon Comprehend to detect the sentiment+-- of user utterances.+newSentimentAnalysisSettings ::+ -- | 'detectSentiment'+ Prelude.Bool ->+ SentimentAnalysisSettings+newSentimentAnalysisSettings pDetectSentiment_ =+ SentimentAnalysisSettings'+ { detectSentiment =+ pDetectSentiment_+ }++-- | Sets whether Amazon Lex uses Amazon Comprehend to detect the sentiment+-- of user utterances.+sentimentAnalysisSettings_detectSentiment :: Lens.Lens' SentimentAnalysisSettings Prelude.Bool+sentimentAnalysisSettings_detectSentiment = Lens.lens (\SentimentAnalysisSettings' {detectSentiment} -> detectSentiment) (\s@SentimentAnalysisSettings' {} a -> s {detectSentiment = a} :: SentimentAnalysisSettings)++instance Data.FromJSON SentimentAnalysisSettings where+ parseJSON =+ Data.withObject+ "SentimentAnalysisSettings"+ ( \x ->+ SentimentAnalysisSettings'+ Prelude.<$> (x Data..: "detectSentiment")+ )++instance Prelude.Hashable SentimentAnalysisSettings where+ hashWithSalt _salt SentimentAnalysisSettings' {..} =+ _salt `Prelude.hashWithSalt` detectSentiment++instance Prelude.NFData SentimentAnalysisSettings where+ rnf SentimentAnalysisSettings' {..} =+ Prelude.rnf detectSentiment++instance Data.ToJSON SentimentAnalysisSettings where+ toJSON SentimentAnalysisSettings' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("detectSentiment" Data..= detectSentiment)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/SlotCaptureSetting.hs view
@@ -0,0 +1,195 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.SlotCaptureSetting+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.SlotCaptureSetting where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.ConditionalSpecification+import Amazonka.LexV2Models.Types.DialogCodeHookInvocationSetting+import Amazonka.LexV2Models.Types.DialogState+import Amazonka.LexV2Models.Types.ElicitationCodeHookInvocationSetting+import Amazonka.LexV2Models.Types.ResponseSpecification+import qualified Amazonka.Prelude as Prelude++-- | Settings used when Amazon Lex successfully captures a slot value from a+-- user.+--+-- /See:/ 'newSlotCaptureSetting' smart constructor.+data SlotCaptureSetting = SlotCaptureSetting'+ { -- | A list of conditional branches to evaluate after the slot value is+ -- captured.+ captureConditional :: Prelude.Maybe ConditionalSpecification,+ -- | Specifies the next step that the bot runs when the slot value is+ -- captured before the code hook times out.+ captureNextStep :: Prelude.Maybe DialogState,+ captureResponse :: Prelude.Maybe ResponseSpecification,+ -- | Code hook called after Amazon Lex successfully captures a slot value.+ codeHook :: Prelude.Maybe DialogCodeHookInvocationSetting,+ -- | Code hook called when Amazon Lex doesn\'t capture a slot value.+ elicitationCodeHook :: Prelude.Maybe ElicitationCodeHookInvocationSetting,+ -- | A list of conditional branches to evaluate when the slot value isn\'t+ -- captured.+ failureConditional :: Prelude.Maybe ConditionalSpecification,+ -- | Specifies the next step that the bot runs when the slot value code is+ -- not recognized.+ failureNextStep :: Prelude.Maybe DialogState,+ failureResponse :: Prelude.Maybe ResponseSpecification+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SlotCaptureSetting' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'captureConditional', 'slotCaptureSetting_captureConditional' - A list of conditional branches to evaluate after the slot value is+-- captured.+--+-- 'captureNextStep', 'slotCaptureSetting_captureNextStep' - Specifies the next step that the bot runs when the slot value is+-- captured before the code hook times out.+--+-- 'captureResponse', 'slotCaptureSetting_captureResponse' - Undocumented member.+--+-- 'codeHook', 'slotCaptureSetting_codeHook' - Code hook called after Amazon Lex successfully captures a slot value.+--+-- 'elicitationCodeHook', 'slotCaptureSetting_elicitationCodeHook' - Code hook called when Amazon Lex doesn\'t capture a slot value.+--+-- 'failureConditional', 'slotCaptureSetting_failureConditional' - A list of conditional branches to evaluate when the slot value isn\'t+-- captured.+--+-- 'failureNextStep', 'slotCaptureSetting_failureNextStep' - Specifies the next step that the bot runs when the slot value code is+-- not recognized.+--+-- 'failureResponse', 'slotCaptureSetting_failureResponse' - Undocumented member.+newSlotCaptureSetting ::+ SlotCaptureSetting+newSlotCaptureSetting =+ SlotCaptureSetting'+ { captureConditional =+ Prelude.Nothing,+ captureNextStep = Prelude.Nothing,+ captureResponse = Prelude.Nothing,+ codeHook = Prelude.Nothing,+ elicitationCodeHook = Prelude.Nothing,+ failureConditional = Prelude.Nothing,+ failureNextStep = Prelude.Nothing,+ failureResponse = Prelude.Nothing+ }++-- | A list of conditional branches to evaluate after the slot value is+-- captured.+slotCaptureSetting_captureConditional :: Lens.Lens' SlotCaptureSetting (Prelude.Maybe ConditionalSpecification)+slotCaptureSetting_captureConditional = Lens.lens (\SlotCaptureSetting' {captureConditional} -> captureConditional) (\s@SlotCaptureSetting' {} a -> s {captureConditional = a} :: SlotCaptureSetting)++-- | Specifies the next step that the bot runs when the slot value is+-- captured before the code hook times out.+slotCaptureSetting_captureNextStep :: Lens.Lens' SlotCaptureSetting (Prelude.Maybe DialogState)+slotCaptureSetting_captureNextStep = Lens.lens (\SlotCaptureSetting' {captureNextStep} -> captureNextStep) (\s@SlotCaptureSetting' {} a -> s {captureNextStep = a} :: SlotCaptureSetting)++-- | Undocumented member.+slotCaptureSetting_captureResponse :: Lens.Lens' SlotCaptureSetting (Prelude.Maybe ResponseSpecification)+slotCaptureSetting_captureResponse = Lens.lens (\SlotCaptureSetting' {captureResponse} -> captureResponse) (\s@SlotCaptureSetting' {} a -> s {captureResponse = a} :: SlotCaptureSetting)++-- | Code hook called after Amazon Lex successfully captures a slot value.+slotCaptureSetting_codeHook :: Lens.Lens' SlotCaptureSetting (Prelude.Maybe DialogCodeHookInvocationSetting)+slotCaptureSetting_codeHook = Lens.lens (\SlotCaptureSetting' {codeHook} -> codeHook) (\s@SlotCaptureSetting' {} a -> s {codeHook = a} :: SlotCaptureSetting)++-- | Code hook called when Amazon Lex doesn\'t capture a slot value.+slotCaptureSetting_elicitationCodeHook :: Lens.Lens' SlotCaptureSetting (Prelude.Maybe ElicitationCodeHookInvocationSetting)+slotCaptureSetting_elicitationCodeHook = Lens.lens (\SlotCaptureSetting' {elicitationCodeHook} -> elicitationCodeHook) (\s@SlotCaptureSetting' {} a -> s {elicitationCodeHook = a} :: SlotCaptureSetting)++-- | A list of conditional branches to evaluate when the slot value isn\'t+-- captured.+slotCaptureSetting_failureConditional :: Lens.Lens' SlotCaptureSetting (Prelude.Maybe ConditionalSpecification)+slotCaptureSetting_failureConditional = Lens.lens (\SlotCaptureSetting' {failureConditional} -> failureConditional) (\s@SlotCaptureSetting' {} a -> s {failureConditional = a} :: SlotCaptureSetting)++-- | Specifies the next step that the bot runs when the slot value code is+-- not recognized.+slotCaptureSetting_failureNextStep :: Lens.Lens' SlotCaptureSetting (Prelude.Maybe DialogState)+slotCaptureSetting_failureNextStep = Lens.lens (\SlotCaptureSetting' {failureNextStep} -> failureNextStep) (\s@SlotCaptureSetting' {} a -> s {failureNextStep = a} :: SlotCaptureSetting)++-- | Undocumented member.+slotCaptureSetting_failureResponse :: Lens.Lens' SlotCaptureSetting (Prelude.Maybe ResponseSpecification)+slotCaptureSetting_failureResponse = Lens.lens (\SlotCaptureSetting' {failureResponse} -> failureResponse) (\s@SlotCaptureSetting' {} a -> s {failureResponse = a} :: SlotCaptureSetting)++instance Data.FromJSON SlotCaptureSetting where+ parseJSON =+ Data.withObject+ "SlotCaptureSetting"+ ( \x ->+ SlotCaptureSetting'+ Prelude.<$> (x Data..:? "captureConditional")+ Prelude.<*> (x Data..:? "captureNextStep")+ Prelude.<*> (x Data..:? "captureResponse")+ Prelude.<*> (x Data..:? "codeHook")+ Prelude.<*> (x Data..:? "elicitationCodeHook")+ Prelude.<*> (x Data..:? "failureConditional")+ Prelude.<*> (x Data..:? "failureNextStep")+ Prelude.<*> (x Data..:? "failureResponse")+ )++instance Prelude.Hashable SlotCaptureSetting where+ hashWithSalt _salt SlotCaptureSetting' {..} =+ _salt+ `Prelude.hashWithSalt` captureConditional+ `Prelude.hashWithSalt` captureNextStep+ `Prelude.hashWithSalt` captureResponse+ `Prelude.hashWithSalt` codeHook+ `Prelude.hashWithSalt` elicitationCodeHook+ `Prelude.hashWithSalt` failureConditional+ `Prelude.hashWithSalt` failureNextStep+ `Prelude.hashWithSalt` failureResponse++instance Prelude.NFData SlotCaptureSetting where+ rnf SlotCaptureSetting' {..} =+ Prelude.rnf captureConditional+ `Prelude.seq` Prelude.rnf captureNextStep+ `Prelude.seq` Prelude.rnf captureResponse+ `Prelude.seq` Prelude.rnf codeHook+ `Prelude.seq` Prelude.rnf elicitationCodeHook+ `Prelude.seq` Prelude.rnf failureConditional+ `Prelude.seq` Prelude.rnf failureNextStep+ `Prelude.seq` Prelude.rnf failureResponse++instance Data.ToJSON SlotCaptureSetting where+ toJSON SlotCaptureSetting' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("captureConditional" Data..=)+ Prelude.<$> captureConditional,+ ("captureNextStep" Data..=)+ Prelude.<$> captureNextStep,+ ("captureResponse" Data..=)+ Prelude.<$> captureResponse,+ ("codeHook" Data..=) Prelude.<$> codeHook,+ ("elicitationCodeHook" Data..=)+ Prelude.<$> elicitationCodeHook,+ ("failureConditional" Data..=)+ Prelude.<$> failureConditional,+ ("failureNextStep" Data..=)+ Prelude.<$> failureNextStep,+ ("failureResponse" Data..=)+ Prelude.<$> failureResponse+ ]+ )
+ gen/Amazonka/LexV2Models/Types/SlotConstraint.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.SlotConstraint+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.SlotConstraint+ ( SlotConstraint+ ( ..,+ SlotConstraint_Optional,+ SlotConstraint_Required+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype SlotConstraint = SlotConstraint'+ { fromSlotConstraint ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern SlotConstraint_Optional :: SlotConstraint+pattern SlotConstraint_Optional = SlotConstraint' "Optional"++pattern SlotConstraint_Required :: SlotConstraint+pattern SlotConstraint_Required = SlotConstraint' "Required"++{-# COMPLETE+ SlotConstraint_Optional,+ SlotConstraint_Required,+ SlotConstraint'+ #-}
+ gen/Amazonka/LexV2Models/Types/SlotDefaultValue.hs view
@@ -0,0 +1,81 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.SlotDefaultValue+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.SlotDefaultValue where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Specifies the default value to use when a user doesn\'t provide a value+-- for a slot.+--+-- /See:/ 'newSlotDefaultValue' smart constructor.+data SlotDefaultValue = SlotDefaultValue'+ { -- | The default value to use when a user doesn\'t provide a value for a+ -- slot.+ defaultValue :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SlotDefaultValue' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'defaultValue', 'slotDefaultValue_defaultValue' - The default value to use when a user doesn\'t provide a value for a+-- slot.+newSlotDefaultValue ::+ -- | 'defaultValue'+ Prelude.Text ->+ SlotDefaultValue+newSlotDefaultValue pDefaultValue_ =+ SlotDefaultValue' {defaultValue = pDefaultValue_}++-- | The default value to use when a user doesn\'t provide a value for a+-- slot.+slotDefaultValue_defaultValue :: Lens.Lens' SlotDefaultValue Prelude.Text+slotDefaultValue_defaultValue = Lens.lens (\SlotDefaultValue' {defaultValue} -> defaultValue) (\s@SlotDefaultValue' {} a -> s {defaultValue = a} :: SlotDefaultValue)++instance Data.FromJSON SlotDefaultValue where+ parseJSON =+ Data.withObject+ "SlotDefaultValue"+ ( \x ->+ SlotDefaultValue'+ Prelude.<$> (x Data..: "defaultValue")+ )++instance Prelude.Hashable SlotDefaultValue where+ hashWithSalt _salt SlotDefaultValue' {..} =+ _salt `Prelude.hashWithSalt` defaultValue++instance Prelude.NFData SlotDefaultValue where+ rnf SlotDefaultValue' {..} = Prelude.rnf defaultValue++instance Data.ToJSON SlotDefaultValue where+ toJSON SlotDefaultValue' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("defaultValue" Data..= defaultValue)]+ )
+ gen/Amazonka/LexV2Models/Types/SlotDefaultValueSpecification.hs view
@@ -0,0 +1,92 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.SlotDefaultValueSpecification+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.SlotDefaultValueSpecification where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.SlotDefaultValue+import qualified Amazonka.Prelude as Prelude++-- | Defines a list of values that Amazon Lex should use as the default value+-- for a slot.+--+-- /See:/ 'newSlotDefaultValueSpecification' smart constructor.+data SlotDefaultValueSpecification = SlotDefaultValueSpecification'+ { -- | A list of default values. Amazon Lex chooses the default value to use in+ -- the order that they are presented in the list.+ defaultValueList :: [SlotDefaultValue]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SlotDefaultValueSpecification' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'defaultValueList', 'slotDefaultValueSpecification_defaultValueList' - A list of default values. Amazon Lex chooses the default value to use in+-- the order that they are presented in the list.+newSlotDefaultValueSpecification ::+ SlotDefaultValueSpecification+newSlotDefaultValueSpecification =+ SlotDefaultValueSpecification'+ { defaultValueList =+ Prelude.mempty+ }++-- | A list of default values. Amazon Lex chooses the default value to use in+-- the order that they are presented in the list.+slotDefaultValueSpecification_defaultValueList :: Lens.Lens' SlotDefaultValueSpecification [SlotDefaultValue]+slotDefaultValueSpecification_defaultValueList = Lens.lens (\SlotDefaultValueSpecification' {defaultValueList} -> defaultValueList) (\s@SlotDefaultValueSpecification' {} a -> s {defaultValueList = a} :: SlotDefaultValueSpecification) Prelude.. Lens.coerced++instance Data.FromJSON SlotDefaultValueSpecification where+ parseJSON =+ Data.withObject+ "SlotDefaultValueSpecification"+ ( \x ->+ SlotDefaultValueSpecification'+ Prelude.<$> ( x+ Data..:? "defaultValueList"+ Data..!= Prelude.mempty+ )+ )++instance+ Prelude.Hashable+ SlotDefaultValueSpecification+ where+ hashWithSalt _salt SlotDefaultValueSpecification' {..} =+ _salt `Prelude.hashWithSalt` defaultValueList++instance Prelude.NFData SlotDefaultValueSpecification where+ rnf SlotDefaultValueSpecification' {..} =+ Prelude.rnf defaultValueList++instance Data.ToJSON SlotDefaultValueSpecification where+ toJSON SlotDefaultValueSpecification' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("defaultValueList" Data..= defaultValueList)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/SlotFilter.hs view
@@ -0,0 +1,112 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.SlotFilter+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.SlotFilter where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.SlotFilterName+import Amazonka.LexV2Models.Types.SlotFilterOperator+import qualified Amazonka.Prelude as Prelude++-- | Filters the response from the @ListSlots@ operation.+--+-- /See:/ 'newSlotFilter' smart constructor.+data SlotFilter = SlotFilter'+ { -- | The name of the field to use for filtering.+ name :: SlotFilterName,+ -- | The value to use to filter the response.+ values :: Prelude.NonEmpty Prelude.Text,+ -- | The operator to use for the filter. Specify @EQ@ when the @ListSlots@+ -- operation should return only aliases that equal the specified value.+ -- Specify @CO@ when the @ListSlots@ operation should return aliases that+ -- contain the specified value.+ operator :: SlotFilterOperator+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SlotFilter' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'name', 'slotFilter_name' - The name of the field to use for filtering.+--+-- 'values', 'slotFilter_values' - The value to use to filter the response.+--+-- 'operator', 'slotFilter_operator' - The operator to use for the filter. Specify @EQ@ when the @ListSlots@+-- operation should return only aliases that equal the specified value.+-- Specify @CO@ when the @ListSlots@ operation should return aliases that+-- contain the specified value.+newSlotFilter ::+ -- | 'name'+ SlotFilterName ->+ -- | 'values'+ Prelude.NonEmpty Prelude.Text ->+ -- | 'operator'+ SlotFilterOperator ->+ SlotFilter+newSlotFilter pName_ pValues_ pOperator_ =+ SlotFilter'+ { name = pName_,+ values = Lens.coerced Lens.# pValues_,+ operator = pOperator_+ }++-- | The name of the field to use for filtering.+slotFilter_name :: Lens.Lens' SlotFilter SlotFilterName+slotFilter_name = Lens.lens (\SlotFilter' {name} -> name) (\s@SlotFilter' {} a -> s {name = a} :: SlotFilter)++-- | The value to use to filter the response.+slotFilter_values :: Lens.Lens' SlotFilter (Prelude.NonEmpty Prelude.Text)+slotFilter_values = Lens.lens (\SlotFilter' {values} -> values) (\s@SlotFilter' {} a -> s {values = a} :: SlotFilter) Prelude.. Lens.coerced++-- | The operator to use for the filter. Specify @EQ@ when the @ListSlots@+-- operation should return only aliases that equal the specified value.+-- Specify @CO@ when the @ListSlots@ operation should return aliases that+-- contain the specified value.+slotFilter_operator :: Lens.Lens' SlotFilter SlotFilterOperator+slotFilter_operator = Lens.lens (\SlotFilter' {operator} -> operator) (\s@SlotFilter' {} a -> s {operator = a} :: SlotFilter)++instance Prelude.Hashable SlotFilter where+ hashWithSalt _salt SlotFilter' {..} =+ _salt+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` values+ `Prelude.hashWithSalt` operator++instance Prelude.NFData SlotFilter where+ rnf SlotFilter' {..} =+ Prelude.rnf name+ `Prelude.seq` Prelude.rnf values+ `Prelude.seq` Prelude.rnf operator++instance Data.ToJSON SlotFilter where+ toJSON SlotFilter' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("name" Data..= name),+ Prelude.Just ("values" Data..= values),+ Prelude.Just ("operator" Data..= operator)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/SlotFilterName.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.SlotFilterName+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.SlotFilterName+ ( SlotFilterName+ ( ..,+ SlotFilterName_SlotName+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype SlotFilterName = SlotFilterName'+ { fromSlotFilterName ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern SlotFilterName_SlotName :: SlotFilterName+pattern SlotFilterName_SlotName = SlotFilterName' "SlotName"++{-# COMPLETE+ SlotFilterName_SlotName,+ SlotFilterName'+ #-}
+ gen/Amazonka/LexV2Models/Types/SlotFilterOperator.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.SlotFilterOperator+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.SlotFilterOperator+ ( SlotFilterOperator+ ( ..,+ SlotFilterOperator_CO,+ SlotFilterOperator_EQ+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype SlotFilterOperator = SlotFilterOperator'+ { fromSlotFilterOperator ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern SlotFilterOperator_CO :: SlotFilterOperator+pattern SlotFilterOperator_CO = SlotFilterOperator' "CO"++pattern SlotFilterOperator_EQ :: SlotFilterOperator+pattern SlotFilterOperator_EQ = SlotFilterOperator' "EQ"++{-# COMPLETE+ SlotFilterOperator_CO,+ SlotFilterOperator_EQ,+ SlotFilterOperator'+ #-}
+ gen/Amazonka/LexV2Models/Types/SlotPriority.hs view
@@ -0,0 +1,98 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.SlotPriority+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.SlotPriority where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Sets the priority that Amazon Lex should use when eliciting slot values+-- from a user.+--+-- /See:/ 'newSlotPriority' smart constructor.+data SlotPriority = SlotPriority'+ { -- | The priority that a slot should be elicited.+ priority :: Prelude.Natural,+ -- | The unique identifier of the slot.+ slotId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SlotPriority' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'priority', 'slotPriority_priority' - The priority that a slot should be elicited.+--+-- 'slotId', 'slotPriority_slotId' - The unique identifier of the slot.+newSlotPriority ::+ -- | 'priority'+ Prelude.Natural ->+ -- | 'slotId'+ Prelude.Text ->+ SlotPriority+newSlotPriority pPriority_ pSlotId_ =+ SlotPriority'+ { priority = pPriority_,+ slotId = pSlotId_+ }++-- | The priority that a slot should be elicited.+slotPriority_priority :: Lens.Lens' SlotPriority Prelude.Natural+slotPriority_priority = Lens.lens (\SlotPriority' {priority} -> priority) (\s@SlotPriority' {} a -> s {priority = a} :: SlotPriority)++-- | The unique identifier of the slot.+slotPriority_slotId :: Lens.Lens' SlotPriority Prelude.Text+slotPriority_slotId = Lens.lens (\SlotPriority' {slotId} -> slotId) (\s@SlotPriority' {} a -> s {slotId = a} :: SlotPriority)++instance Data.FromJSON SlotPriority where+ parseJSON =+ Data.withObject+ "SlotPriority"+ ( \x ->+ SlotPriority'+ Prelude.<$> (x Data..: "priority")+ Prelude.<*> (x Data..: "slotId")+ )++instance Prelude.Hashable SlotPriority where+ hashWithSalt _salt SlotPriority' {..} =+ _salt+ `Prelude.hashWithSalt` priority+ `Prelude.hashWithSalt` slotId++instance Prelude.NFData SlotPriority where+ rnf SlotPriority' {..} =+ Prelude.rnf priority+ `Prelude.seq` Prelude.rnf slotId++instance Data.ToJSON SlotPriority where+ toJSON SlotPriority' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("priority" Data..= priority),+ Prelude.Just ("slotId" Data..= slotId)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/SlotShape.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.SlotShape+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.SlotShape+ ( SlotShape+ ( ..,+ SlotShape_List,+ SlotShape_Scalar+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype SlotShape = SlotShape'+ { fromSlotShape ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern SlotShape_List :: SlotShape+pattern SlotShape_List = SlotShape' "List"++pattern SlotShape_Scalar :: SlotShape+pattern SlotShape_Scalar = SlotShape' "Scalar"++{-# COMPLETE+ SlotShape_List,+ SlotShape_Scalar,+ SlotShape'+ #-}
+ gen/Amazonka/LexV2Models/Types/SlotSortAttribute.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.SlotSortAttribute+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.SlotSortAttribute+ ( SlotSortAttribute+ ( ..,+ SlotSortAttribute_LastUpdatedDateTime,+ SlotSortAttribute_SlotName+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype SlotSortAttribute = SlotSortAttribute'+ { fromSlotSortAttribute ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern SlotSortAttribute_LastUpdatedDateTime :: SlotSortAttribute+pattern SlotSortAttribute_LastUpdatedDateTime = SlotSortAttribute' "LastUpdatedDateTime"++pattern SlotSortAttribute_SlotName :: SlotSortAttribute+pattern SlotSortAttribute_SlotName = SlotSortAttribute' "SlotName"++{-# COMPLETE+ SlotSortAttribute_LastUpdatedDateTime,+ SlotSortAttribute_SlotName,+ SlotSortAttribute'+ #-}
+ gen/Amazonka/LexV2Models/Types/SlotSortBy.hs view
@@ -0,0 +1,89 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.SlotSortBy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.SlotSortBy where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.SlotSortAttribute+import Amazonka.LexV2Models.Types.SortOrder+import qualified Amazonka.Prelude as Prelude++-- | Specifies attributes for sorting a list of bots.+--+-- /See:/ 'newSlotSortBy' smart constructor.+data SlotSortBy = SlotSortBy'+ { -- | The attribute to use to sort the list.+ attribute :: SlotSortAttribute,+ -- | The order to sort the list. You can choose ascending or descending.+ order :: SortOrder+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SlotSortBy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'attribute', 'slotSortBy_attribute' - The attribute to use to sort the list.+--+-- 'order', 'slotSortBy_order' - The order to sort the list. You can choose ascending or descending.+newSlotSortBy ::+ -- | 'attribute'+ SlotSortAttribute ->+ -- | 'order'+ SortOrder ->+ SlotSortBy+newSlotSortBy pAttribute_ pOrder_ =+ SlotSortBy'+ { attribute = pAttribute_,+ order = pOrder_+ }++-- | The attribute to use to sort the list.+slotSortBy_attribute :: Lens.Lens' SlotSortBy SlotSortAttribute+slotSortBy_attribute = Lens.lens (\SlotSortBy' {attribute} -> attribute) (\s@SlotSortBy' {} a -> s {attribute = a} :: SlotSortBy)++-- | The order to sort the list. You can choose ascending or descending.+slotSortBy_order :: Lens.Lens' SlotSortBy SortOrder+slotSortBy_order = Lens.lens (\SlotSortBy' {order} -> order) (\s@SlotSortBy' {} a -> s {order = a} :: SlotSortBy)++instance Prelude.Hashable SlotSortBy where+ hashWithSalt _salt SlotSortBy' {..} =+ _salt+ `Prelude.hashWithSalt` attribute+ `Prelude.hashWithSalt` order++instance Prelude.NFData SlotSortBy where+ rnf SlotSortBy' {..} =+ Prelude.rnf attribute+ `Prelude.seq` Prelude.rnf order++instance Data.ToJSON SlotSortBy where+ toJSON SlotSortBy' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("attribute" Data..= attribute),+ Prelude.Just ("order" Data..= order)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/SlotSummary.hs view
@@ -0,0 +1,154 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.SlotSummary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.SlotSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.PromptSpecification+import Amazonka.LexV2Models.Types.SlotConstraint+import qualified Amazonka.Prelude as Prelude++-- | Summary information about a slot, a value that the bot elicits from the+-- user.+--+-- /See:/ 'newSlotSummary' smart constructor.+data SlotSummary = SlotSummary'+ { -- | The description of the slot.+ description :: Prelude.Maybe Prelude.Text,+ -- | The timestamp of the last date and time that the slot was updated.+ lastUpdatedDateTime :: Prelude.Maybe Data.POSIX,+ -- | Whether the slot is required or optional. An intent is complete when all+ -- required slots are filled.+ slotConstraint :: Prelude.Maybe SlotConstraint,+ -- | The unique identifier of the slot.+ slotId :: Prelude.Maybe Prelude.Text,+ -- | The name given to the slot.+ slotName :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier for the slot type that defines the values for the+ -- slot.+ slotTypeId :: Prelude.Maybe Prelude.Text,+ -- | Prompts that are sent to the user to elicit a value for the slot.+ valueElicitationPromptSpecification :: Prelude.Maybe PromptSpecification+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SlotSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'description', 'slotSummary_description' - The description of the slot.+--+-- 'lastUpdatedDateTime', 'slotSummary_lastUpdatedDateTime' - The timestamp of the last date and time that the slot was updated.+--+-- 'slotConstraint', 'slotSummary_slotConstraint' - Whether the slot is required or optional. An intent is complete when all+-- required slots are filled.+--+-- 'slotId', 'slotSummary_slotId' - The unique identifier of the slot.+--+-- 'slotName', 'slotSummary_slotName' - The name given to the slot.+--+-- 'slotTypeId', 'slotSummary_slotTypeId' - The unique identifier for the slot type that defines the values for the+-- slot.+--+-- 'valueElicitationPromptSpecification', 'slotSummary_valueElicitationPromptSpecification' - Prompts that are sent to the user to elicit a value for the slot.+newSlotSummary ::+ SlotSummary+newSlotSummary =+ SlotSummary'+ { description = Prelude.Nothing,+ lastUpdatedDateTime = Prelude.Nothing,+ slotConstraint = Prelude.Nothing,+ slotId = Prelude.Nothing,+ slotName = Prelude.Nothing,+ slotTypeId = Prelude.Nothing,+ valueElicitationPromptSpecification =+ Prelude.Nothing+ }++-- | The description of the slot.+slotSummary_description :: Lens.Lens' SlotSummary (Prelude.Maybe Prelude.Text)+slotSummary_description = Lens.lens (\SlotSummary' {description} -> description) (\s@SlotSummary' {} a -> s {description = a} :: SlotSummary)++-- | The timestamp of the last date and time that the slot was updated.+slotSummary_lastUpdatedDateTime :: Lens.Lens' SlotSummary (Prelude.Maybe Prelude.UTCTime)+slotSummary_lastUpdatedDateTime = Lens.lens (\SlotSummary' {lastUpdatedDateTime} -> lastUpdatedDateTime) (\s@SlotSummary' {} a -> s {lastUpdatedDateTime = a} :: SlotSummary) Prelude.. Lens.mapping Data._Time++-- | Whether the slot is required or optional. An intent is complete when all+-- required slots are filled.+slotSummary_slotConstraint :: Lens.Lens' SlotSummary (Prelude.Maybe SlotConstraint)+slotSummary_slotConstraint = Lens.lens (\SlotSummary' {slotConstraint} -> slotConstraint) (\s@SlotSummary' {} a -> s {slotConstraint = a} :: SlotSummary)++-- | The unique identifier of the slot.+slotSummary_slotId :: Lens.Lens' SlotSummary (Prelude.Maybe Prelude.Text)+slotSummary_slotId = Lens.lens (\SlotSummary' {slotId} -> slotId) (\s@SlotSummary' {} a -> s {slotId = a} :: SlotSummary)++-- | The name given to the slot.+slotSummary_slotName :: Lens.Lens' SlotSummary (Prelude.Maybe Prelude.Text)+slotSummary_slotName = Lens.lens (\SlotSummary' {slotName} -> slotName) (\s@SlotSummary' {} a -> s {slotName = a} :: SlotSummary)++-- | The unique identifier for the slot type that defines the values for the+-- slot.+slotSummary_slotTypeId :: Lens.Lens' SlotSummary (Prelude.Maybe Prelude.Text)+slotSummary_slotTypeId = Lens.lens (\SlotSummary' {slotTypeId} -> slotTypeId) (\s@SlotSummary' {} a -> s {slotTypeId = a} :: SlotSummary)++-- | Prompts that are sent to the user to elicit a value for the slot.+slotSummary_valueElicitationPromptSpecification :: Lens.Lens' SlotSummary (Prelude.Maybe PromptSpecification)+slotSummary_valueElicitationPromptSpecification = Lens.lens (\SlotSummary' {valueElicitationPromptSpecification} -> valueElicitationPromptSpecification) (\s@SlotSummary' {} a -> s {valueElicitationPromptSpecification = a} :: SlotSummary)++instance Data.FromJSON SlotSummary where+ parseJSON =+ Data.withObject+ "SlotSummary"+ ( \x ->+ SlotSummary'+ Prelude.<$> (x Data..:? "description")+ Prelude.<*> (x Data..:? "lastUpdatedDateTime")+ Prelude.<*> (x Data..:? "slotConstraint")+ Prelude.<*> (x Data..:? "slotId")+ Prelude.<*> (x Data..:? "slotName")+ Prelude.<*> (x Data..:? "slotTypeId")+ Prelude.<*> (x Data..:? "valueElicitationPromptSpecification")+ )++instance Prelude.Hashable SlotSummary where+ hashWithSalt _salt SlotSummary' {..} =+ _salt+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` lastUpdatedDateTime+ `Prelude.hashWithSalt` slotConstraint+ `Prelude.hashWithSalt` slotId+ `Prelude.hashWithSalt` slotName+ `Prelude.hashWithSalt` slotTypeId+ `Prelude.hashWithSalt` valueElicitationPromptSpecification++instance Prelude.NFData SlotSummary where+ rnf SlotSummary' {..} =+ Prelude.rnf description+ `Prelude.seq` Prelude.rnf lastUpdatedDateTime+ `Prelude.seq` Prelude.rnf slotConstraint+ `Prelude.seq` Prelude.rnf slotId+ `Prelude.seq` Prelude.rnf slotName+ `Prelude.seq` Prelude.rnf slotTypeId+ `Prelude.seq` Prelude.rnf valueElicitationPromptSpecification
+ gen/Amazonka/LexV2Models/Types/SlotTypeCategory.hs view
@@ -0,0 +1,81 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.SlotTypeCategory+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.SlotTypeCategory+ ( SlotTypeCategory+ ( ..,+ SlotTypeCategory_Composite,+ SlotTypeCategory_Custom,+ SlotTypeCategory_Extended,+ SlotTypeCategory_ExternalGrammar+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype SlotTypeCategory = SlotTypeCategory'+ { fromSlotTypeCategory ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern SlotTypeCategory_Composite :: SlotTypeCategory+pattern SlotTypeCategory_Composite = SlotTypeCategory' "Composite"++pattern SlotTypeCategory_Custom :: SlotTypeCategory+pattern SlotTypeCategory_Custom = SlotTypeCategory' "Custom"++pattern SlotTypeCategory_Extended :: SlotTypeCategory+pattern SlotTypeCategory_Extended = SlotTypeCategory' "Extended"++pattern SlotTypeCategory_ExternalGrammar :: SlotTypeCategory+pattern SlotTypeCategory_ExternalGrammar = SlotTypeCategory' "ExternalGrammar"++{-# COMPLETE+ SlotTypeCategory_Composite,+ SlotTypeCategory_Custom,+ SlotTypeCategory_Extended,+ SlotTypeCategory_ExternalGrammar,+ SlotTypeCategory'+ #-}
+ gen/Amazonka/LexV2Models/Types/SlotTypeFilter.hs view
@@ -0,0 +1,112 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.SlotTypeFilter+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.SlotTypeFilter where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.SlotTypeFilterName+import Amazonka.LexV2Models.Types.SlotTypeFilterOperator+import qualified Amazonka.Prelude as Prelude++-- | Filters the response from the @ListSlotTypes@ operation.+--+-- /See:/ 'newSlotTypeFilter' smart constructor.+data SlotTypeFilter = SlotTypeFilter'+ { -- | The name of the field to use for filtering.+ name :: SlotTypeFilterName,+ -- | The value to use to filter the response.+ values :: Prelude.NonEmpty Prelude.Text,+ -- | The operator to use for the filter. Specify @EQ@ when the+ -- @ListSlotTypes@ operation should return only aliases that equal the+ -- specified value. Specify @CO@ when the @ListSlotTypes@ operation should+ -- return aliases that contain the specified value.+ operator :: SlotTypeFilterOperator+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SlotTypeFilter' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'name', 'slotTypeFilter_name' - The name of the field to use for filtering.+--+-- 'values', 'slotTypeFilter_values' - The value to use to filter the response.+--+-- 'operator', 'slotTypeFilter_operator' - The operator to use for the filter. Specify @EQ@ when the+-- @ListSlotTypes@ operation should return only aliases that equal the+-- specified value. Specify @CO@ when the @ListSlotTypes@ operation should+-- return aliases that contain the specified value.+newSlotTypeFilter ::+ -- | 'name'+ SlotTypeFilterName ->+ -- | 'values'+ Prelude.NonEmpty Prelude.Text ->+ -- | 'operator'+ SlotTypeFilterOperator ->+ SlotTypeFilter+newSlotTypeFilter pName_ pValues_ pOperator_ =+ SlotTypeFilter'+ { name = pName_,+ values = Lens.coerced Lens.# pValues_,+ operator = pOperator_+ }++-- | The name of the field to use for filtering.+slotTypeFilter_name :: Lens.Lens' SlotTypeFilter SlotTypeFilterName+slotTypeFilter_name = Lens.lens (\SlotTypeFilter' {name} -> name) (\s@SlotTypeFilter' {} a -> s {name = a} :: SlotTypeFilter)++-- | The value to use to filter the response.+slotTypeFilter_values :: Lens.Lens' SlotTypeFilter (Prelude.NonEmpty Prelude.Text)+slotTypeFilter_values = Lens.lens (\SlotTypeFilter' {values} -> values) (\s@SlotTypeFilter' {} a -> s {values = a} :: SlotTypeFilter) Prelude.. Lens.coerced++-- | The operator to use for the filter. Specify @EQ@ when the+-- @ListSlotTypes@ operation should return only aliases that equal the+-- specified value. Specify @CO@ when the @ListSlotTypes@ operation should+-- return aliases that contain the specified value.+slotTypeFilter_operator :: Lens.Lens' SlotTypeFilter SlotTypeFilterOperator+slotTypeFilter_operator = Lens.lens (\SlotTypeFilter' {operator} -> operator) (\s@SlotTypeFilter' {} a -> s {operator = a} :: SlotTypeFilter)++instance Prelude.Hashable SlotTypeFilter where+ hashWithSalt _salt SlotTypeFilter' {..} =+ _salt+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` values+ `Prelude.hashWithSalt` operator++instance Prelude.NFData SlotTypeFilter where+ rnf SlotTypeFilter' {..} =+ Prelude.rnf name+ `Prelude.seq` Prelude.rnf values+ `Prelude.seq` Prelude.rnf operator++instance Data.ToJSON SlotTypeFilter where+ toJSON SlotTypeFilter' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("name" Data..= name),+ Prelude.Just ("values" Data..= values),+ Prelude.Just ("operator" Data..= operator)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/SlotTypeFilterName.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.SlotTypeFilterName+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.SlotTypeFilterName+ ( SlotTypeFilterName+ ( ..,+ SlotTypeFilterName_ExternalSourceType,+ SlotTypeFilterName_SlotTypeName+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype SlotTypeFilterName = SlotTypeFilterName'+ { fromSlotTypeFilterName ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern SlotTypeFilterName_ExternalSourceType :: SlotTypeFilterName+pattern SlotTypeFilterName_ExternalSourceType = SlotTypeFilterName' "ExternalSourceType"++pattern SlotTypeFilterName_SlotTypeName :: SlotTypeFilterName+pattern SlotTypeFilterName_SlotTypeName = SlotTypeFilterName' "SlotTypeName"++{-# COMPLETE+ SlotTypeFilterName_ExternalSourceType,+ SlotTypeFilterName_SlotTypeName,+ SlotTypeFilterName'+ #-}
+ gen/Amazonka/LexV2Models/Types/SlotTypeFilterOperator.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.SlotTypeFilterOperator+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.SlotTypeFilterOperator+ ( SlotTypeFilterOperator+ ( ..,+ SlotTypeFilterOperator_CO,+ SlotTypeFilterOperator_EQ+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype SlotTypeFilterOperator = SlotTypeFilterOperator'+ { fromSlotTypeFilterOperator ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern SlotTypeFilterOperator_CO :: SlotTypeFilterOperator+pattern SlotTypeFilterOperator_CO = SlotTypeFilterOperator' "CO"++pattern SlotTypeFilterOperator_EQ :: SlotTypeFilterOperator+pattern SlotTypeFilterOperator_EQ = SlotTypeFilterOperator' "EQ"++{-# COMPLETE+ SlotTypeFilterOperator_CO,+ SlotTypeFilterOperator_EQ,+ SlotTypeFilterOperator'+ #-}
+ gen/Amazonka/LexV2Models/Types/SlotTypeSortAttribute.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.SlotTypeSortAttribute+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.SlotTypeSortAttribute+ ( SlotTypeSortAttribute+ ( ..,+ SlotTypeSortAttribute_LastUpdatedDateTime,+ SlotTypeSortAttribute_SlotTypeName+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype SlotTypeSortAttribute = SlotTypeSortAttribute'+ { fromSlotTypeSortAttribute ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern SlotTypeSortAttribute_LastUpdatedDateTime :: SlotTypeSortAttribute+pattern SlotTypeSortAttribute_LastUpdatedDateTime = SlotTypeSortAttribute' "LastUpdatedDateTime"++pattern SlotTypeSortAttribute_SlotTypeName :: SlotTypeSortAttribute+pattern SlotTypeSortAttribute_SlotTypeName = SlotTypeSortAttribute' "SlotTypeName"++{-# COMPLETE+ SlotTypeSortAttribute_LastUpdatedDateTime,+ SlotTypeSortAttribute_SlotTypeName,+ SlotTypeSortAttribute'+ #-}
+ gen/Amazonka/LexV2Models/Types/SlotTypeSortBy.hs view
@@ -0,0 +1,89 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.SlotTypeSortBy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.SlotTypeSortBy where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.SlotTypeSortAttribute+import Amazonka.LexV2Models.Types.SortOrder+import qualified Amazonka.Prelude as Prelude++-- | Specifies attributes for sorting a list of slot types.+--+-- /See:/ 'newSlotTypeSortBy' smart constructor.+data SlotTypeSortBy = SlotTypeSortBy'+ { -- | The attribute to use to sort the list of slot types.+ attribute :: SlotTypeSortAttribute,+ -- | The order to sort the list. You can say ascending or descending.+ order :: SortOrder+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SlotTypeSortBy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'attribute', 'slotTypeSortBy_attribute' - The attribute to use to sort the list of slot types.+--+-- 'order', 'slotTypeSortBy_order' - The order to sort the list. You can say ascending or descending.+newSlotTypeSortBy ::+ -- | 'attribute'+ SlotTypeSortAttribute ->+ -- | 'order'+ SortOrder ->+ SlotTypeSortBy+newSlotTypeSortBy pAttribute_ pOrder_ =+ SlotTypeSortBy'+ { attribute = pAttribute_,+ order = pOrder_+ }++-- | The attribute to use to sort the list of slot types.+slotTypeSortBy_attribute :: Lens.Lens' SlotTypeSortBy SlotTypeSortAttribute+slotTypeSortBy_attribute = Lens.lens (\SlotTypeSortBy' {attribute} -> attribute) (\s@SlotTypeSortBy' {} a -> s {attribute = a} :: SlotTypeSortBy)++-- | The order to sort the list. You can say ascending or descending.+slotTypeSortBy_order :: Lens.Lens' SlotTypeSortBy SortOrder+slotTypeSortBy_order = Lens.lens (\SlotTypeSortBy' {order} -> order) (\s@SlotTypeSortBy' {} a -> s {order = a} :: SlotTypeSortBy)++instance Prelude.Hashable SlotTypeSortBy where+ hashWithSalt _salt SlotTypeSortBy' {..} =+ _salt+ `Prelude.hashWithSalt` attribute+ `Prelude.hashWithSalt` order++instance Prelude.NFData SlotTypeSortBy where+ rnf SlotTypeSortBy' {..} =+ Prelude.rnf attribute+ `Prelude.seq` Prelude.rnf order++instance Data.ToJSON SlotTypeSortBy where+ toJSON SlotTypeSortBy' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("attribute" Data..= attribute),+ Prelude.Just ("order" Data..= order)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/SlotTypeStatistics.hs view
@@ -0,0 +1,77 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.SlotTypeStatistics+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.SlotTypeStatistics where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The object that contains the statistical summary of the recommended slot+-- type associated with the bot recommendation.+--+-- /See:/ 'newSlotTypeStatistics' smart constructor.+data SlotTypeStatistics = SlotTypeStatistics'+ { -- | The number of recommended slot types associated with the bot+ -- recommendation.+ discoveredSlotTypeCount :: Prelude.Maybe Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SlotTypeStatistics' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'discoveredSlotTypeCount', 'slotTypeStatistics_discoveredSlotTypeCount' - The number of recommended slot types associated with the bot+-- recommendation.+newSlotTypeStatistics ::+ SlotTypeStatistics+newSlotTypeStatistics =+ SlotTypeStatistics'+ { discoveredSlotTypeCount =+ Prelude.Nothing+ }++-- | The number of recommended slot types associated with the bot+-- recommendation.+slotTypeStatistics_discoveredSlotTypeCount :: Lens.Lens' SlotTypeStatistics (Prelude.Maybe Prelude.Int)+slotTypeStatistics_discoveredSlotTypeCount = Lens.lens (\SlotTypeStatistics' {discoveredSlotTypeCount} -> discoveredSlotTypeCount) (\s@SlotTypeStatistics' {} a -> s {discoveredSlotTypeCount = a} :: SlotTypeStatistics)++instance Data.FromJSON SlotTypeStatistics where+ parseJSON =+ Data.withObject+ "SlotTypeStatistics"+ ( \x ->+ SlotTypeStatistics'+ Prelude.<$> (x Data..:? "discoveredSlotTypeCount")+ )++instance Prelude.Hashable SlotTypeStatistics where+ hashWithSalt _salt SlotTypeStatistics' {..} =+ _salt+ `Prelude.hashWithSalt` discoveredSlotTypeCount++instance Prelude.NFData SlotTypeStatistics where+ rnf SlotTypeStatistics' {..} =+ Prelude.rnf discoveredSlotTypeCount
+ gen/Amazonka/LexV2Models/Types/SlotTypeSummary.hs view
@@ -0,0 +1,172 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.SlotTypeSummary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.SlotTypeSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.SlotTypeCategory+import qualified Amazonka.Prelude as Prelude++-- | Provides summary information about a slot type.+--+-- /See:/ 'newSlotTypeSummary' smart constructor.+data SlotTypeSummary = SlotTypeSummary'+ { -- | The description of the slot type.+ description :: Prelude.Maybe Prelude.Text,+ -- | A timestamp of the date and time that the slot type was last updated.+ lastUpdatedDateTime :: Prelude.Maybe Data.POSIX,+ -- | If the slot type is derived from a built-on slot type, the name of the+ -- parent slot type.+ parentSlotTypeSignature :: Prelude.Maybe Prelude.Text,+ -- | Indicates the type of the slot type.+ --+ -- - @Custom@ - A slot type that you created using custom values. For+ -- more information, see+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/custom-slot-types.html Creating custom slot types>.+ --+ -- - @Extended@ - A slot type created by extending the+ -- AMAZON.AlphaNumeric built-in slot type. For more information, see+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/built-in-slot-alphanumerice.html AMAZON.AlphaNumeric>.+ --+ -- - @ExternalGrammar@ - A slot type using a custom GRXML grammar to+ -- define values. For more information, see+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/building-grxml.html Using a custom grammar slot type>.+ slotTypeCategory :: Prelude.Maybe SlotTypeCategory,+ -- | The unique identifier assigned to the slot type.+ slotTypeId :: Prelude.Maybe Prelude.Text,+ -- | The name of the slot type.+ slotTypeName :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SlotTypeSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'description', 'slotTypeSummary_description' - The description of the slot type.+--+-- 'lastUpdatedDateTime', 'slotTypeSummary_lastUpdatedDateTime' - A timestamp of the date and time that the slot type was last updated.+--+-- 'parentSlotTypeSignature', 'slotTypeSummary_parentSlotTypeSignature' - If the slot type is derived from a built-on slot type, the name of the+-- parent slot type.+--+-- 'slotTypeCategory', 'slotTypeSummary_slotTypeCategory' - Indicates the type of the slot type.+--+-- - @Custom@ - A slot type that you created using custom values. For+-- more information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/custom-slot-types.html Creating custom slot types>.+--+-- - @Extended@ - A slot type created by extending the+-- AMAZON.AlphaNumeric built-in slot type. For more information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/built-in-slot-alphanumerice.html AMAZON.AlphaNumeric>.+--+-- - @ExternalGrammar@ - A slot type using a custom GRXML grammar to+-- define values. For more information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/building-grxml.html Using a custom grammar slot type>.+--+-- 'slotTypeId', 'slotTypeSummary_slotTypeId' - The unique identifier assigned to the slot type.+--+-- 'slotTypeName', 'slotTypeSummary_slotTypeName' - The name of the slot type.+newSlotTypeSummary ::+ SlotTypeSummary+newSlotTypeSummary =+ SlotTypeSummary'+ { description = Prelude.Nothing,+ lastUpdatedDateTime = Prelude.Nothing,+ parentSlotTypeSignature = Prelude.Nothing,+ slotTypeCategory = Prelude.Nothing,+ slotTypeId = Prelude.Nothing,+ slotTypeName = Prelude.Nothing+ }++-- | The description of the slot type.+slotTypeSummary_description :: Lens.Lens' SlotTypeSummary (Prelude.Maybe Prelude.Text)+slotTypeSummary_description = Lens.lens (\SlotTypeSummary' {description} -> description) (\s@SlotTypeSummary' {} a -> s {description = a} :: SlotTypeSummary)++-- | A timestamp of the date and time that the slot type was last updated.+slotTypeSummary_lastUpdatedDateTime :: Lens.Lens' SlotTypeSummary (Prelude.Maybe Prelude.UTCTime)+slotTypeSummary_lastUpdatedDateTime = Lens.lens (\SlotTypeSummary' {lastUpdatedDateTime} -> lastUpdatedDateTime) (\s@SlotTypeSummary' {} a -> s {lastUpdatedDateTime = a} :: SlotTypeSummary) Prelude.. Lens.mapping Data._Time++-- | If the slot type is derived from a built-on slot type, the name of the+-- parent slot type.+slotTypeSummary_parentSlotTypeSignature :: Lens.Lens' SlotTypeSummary (Prelude.Maybe Prelude.Text)+slotTypeSummary_parentSlotTypeSignature = Lens.lens (\SlotTypeSummary' {parentSlotTypeSignature} -> parentSlotTypeSignature) (\s@SlotTypeSummary' {} a -> s {parentSlotTypeSignature = a} :: SlotTypeSummary)++-- | Indicates the type of the slot type.+--+-- - @Custom@ - A slot type that you created using custom values. For+-- more information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/custom-slot-types.html Creating custom slot types>.+--+-- - @Extended@ - A slot type created by extending the+-- AMAZON.AlphaNumeric built-in slot type. For more information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/built-in-slot-alphanumerice.html AMAZON.AlphaNumeric>.+--+-- - @ExternalGrammar@ - A slot type using a custom GRXML grammar to+-- define values. For more information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/building-grxml.html Using a custom grammar slot type>.+slotTypeSummary_slotTypeCategory :: Lens.Lens' SlotTypeSummary (Prelude.Maybe SlotTypeCategory)+slotTypeSummary_slotTypeCategory = Lens.lens (\SlotTypeSummary' {slotTypeCategory} -> slotTypeCategory) (\s@SlotTypeSummary' {} a -> s {slotTypeCategory = a} :: SlotTypeSummary)++-- | The unique identifier assigned to the slot type.+slotTypeSummary_slotTypeId :: Lens.Lens' SlotTypeSummary (Prelude.Maybe Prelude.Text)+slotTypeSummary_slotTypeId = Lens.lens (\SlotTypeSummary' {slotTypeId} -> slotTypeId) (\s@SlotTypeSummary' {} a -> s {slotTypeId = a} :: SlotTypeSummary)++-- | The name of the slot type.+slotTypeSummary_slotTypeName :: Lens.Lens' SlotTypeSummary (Prelude.Maybe Prelude.Text)+slotTypeSummary_slotTypeName = Lens.lens (\SlotTypeSummary' {slotTypeName} -> slotTypeName) (\s@SlotTypeSummary' {} a -> s {slotTypeName = a} :: SlotTypeSummary)++instance Data.FromJSON SlotTypeSummary where+ parseJSON =+ Data.withObject+ "SlotTypeSummary"+ ( \x ->+ SlotTypeSummary'+ Prelude.<$> (x Data..:? "description")+ Prelude.<*> (x Data..:? "lastUpdatedDateTime")+ Prelude.<*> (x Data..:? "parentSlotTypeSignature")+ Prelude.<*> (x Data..:? "slotTypeCategory")+ Prelude.<*> (x Data..:? "slotTypeId")+ Prelude.<*> (x Data..:? "slotTypeName")+ )++instance Prelude.Hashable SlotTypeSummary where+ hashWithSalt _salt SlotTypeSummary' {..} =+ _salt+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` lastUpdatedDateTime+ `Prelude.hashWithSalt` parentSlotTypeSignature+ `Prelude.hashWithSalt` slotTypeCategory+ `Prelude.hashWithSalt` slotTypeId+ `Prelude.hashWithSalt` slotTypeName++instance Prelude.NFData SlotTypeSummary where+ rnf SlotTypeSummary' {..} =+ Prelude.rnf description+ `Prelude.seq` Prelude.rnf lastUpdatedDateTime+ `Prelude.seq` Prelude.rnf parentSlotTypeSignature+ `Prelude.seq` Prelude.rnf slotTypeCategory+ `Prelude.seq` Prelude.rnf slotTypeId+ `Prelude.seq` Prelude.rnf slotTypeName
+ gen/Amazonka/LexV2Models/Types/SlotTypeValue.hs view
@@ -0,0 +1,95 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.SlotTypeValue+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.SlotTypeValue where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.SampleValue+import qualified Amazonka.Prelude as Prelude++-- | Each slot type can have a set of values. Each @SlotTypeValue@ represents+-- a value that the slot type can take.+--+-- /See:/ 'newSlotTypeValue' smart constructor.+data SlotTypeValue = SlotTypeValue'+ { -- | The value of the slot type entry.+ sampleValue :: Prelude.Maybe SampleValue,+ -- | Additional values related to the slot type entry.+ synonyms :: Prelude.Maybe (Prelude.NonEmpty SampleValue)+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SlotTypeValue' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'sampleValue', 'slotTypeValue_sampleValue' - The value of the slot type entry.+--+-- 'synonyms', 'slotTypeValue_synonyms' - Additional values related to the slot type entry.+newSlotTypeValue ::+ SlotTypeValue+newSlotTypeValue =+ SlotTypeValue'+ { sampleValue = Prelude.Nothing,+ synonyms = Prelude.Nothing+ }++-- | The value of the slot type entry.+slotTypeValue_sampleValue :: Lens.Lens' SlotTypeValue (Prelude.Maybe SampleValue)+slotTypeValue_sampleValue = Lens.lens (\SlotTypeValue' {sampleValue} -> sampleValue) (\s@SlotTypeValue' {} a -> s {sampleValue = a} :: SlotTypeValue)++-- | Additional values related to the slot type entry.+slotTypeValue_synonyms :: Lens.Lens' SlotTypeValue (Prelude.Maybe (Prelude.NonEmpty SampleValue))+slotTypeValue_synonyms = Lens.lens (\SlotTypeValue' {synonyms} -> synonyms) (\s@SlotTypeValue' {} a -> s {synonyms = a} :: SlotTypeValue) Prelude.. Lens.mapping Lens.coerced++instance Data.FromJSON SlotTypeValue where+ parseJSON =+ Data.withObject+ "SlotTypeValue"+ ( \x ->+ SlotTypeValue'+ Prelude.<$> (x Data..:? "sampleValue")+ Prelude.<*> (x Data..:? "synonyms")+ )++instance Prelude.Hashable SlotTypeValue where+ hashWithSalt _salt SlotTypeValue' {..} =+ _salt+ `Prelude.hashWithSalt` sampleValue+ `Prelude.hashWithSalt` synonyms++instance Prelude.NFData SlotTypeValue where+ rnf SlotTypeValue' {..} =+ Prelude.rnf sampleValue+ `Prelude.seq` Prelude.rnf synonyms++instance Data.ToJSON SlotTypeValue where+ toJSON SlotTypeValue' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("sampleValue" Data..=) Prelude.<$> sampleValue,+ ("synonyms" Data..=) Prelude.<$> synonyms+ ]+ )
+ gen/Amazonka/LexV2Models/Types/SlotValue.hs view
@@ -0,0 +1,86 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.SlotValue+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.SlotValue where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The value to set in a slot.+--+-- /See:/ 'newSlotValue' smart constructor.+data SlotValue = SlotValue'+ { -- | The value that Amazon Lex determines for the slot. The actual value+ -- depends on the setting of the value selection strategy for the bot. You+ -- can choose to use the value entered by the user, or you can have Amazon+ -- Lex choose the first value in the @resolvedValues@ list.+ interpretedValue :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SlotValue' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'interpretedValue', 'slotValue_interpretedValue' - The value that Amazon Lex determines for the slot. The actual value+-- depends on the setting of the value selection strategy for the bot. You+-- can choose to use the value entered by the user, or you can have Amazon+-- Lex choose the first value in the @resolvedValues@ list.+newSlotValue ::+ SlotValue+newSlotValue =+ SlotValue' {interpretedValue = Prelude.Nothing}++-- | The value that Amazon Lex determines for the slot. The actual value+-- depends on the setting of the value selection strategy for the bot. You+-- can choose to use the value entered by the user, or you can have Amazon+-- Lex choose the first value in the @resolvedValues@ list.+slotValue_interpretedValue :: Lens.Lens' SlotValue (Prelude.Maybe Prelude.Text)+slotValue_interpretedValue = Lens.lens (\SlotValue' {interpretedValue} -> interpretedValue) (\s@SlotValue' {} a -> s {interpretedValue = a} :: SlotValue)++instance Data.FromJSON SlotValue where+ parseJSON =+ Data.withObject+ "SlotValue"+ ( \x ->+ SlotValue'+ Prelude.<$> (x Data..:? "interpretedValue")+ )++instance Prelude.Hashable SlotValue where+ hashWithSalt _salt SlotValue' {..} =+ _salt `Prelude.hashWithSalt` interpretedValue++instance Prelude.NFData SlotValue where+ rnf SlotValue' {..} = Prelude.rnf interpretedValue++instance Data.ToJSON SlotValue where+ toJSON SlotValue' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("interpretedValue" Data..=)+ Prelude.<$> interpretedValue+ ]+ )
+ gen/Amazonka/LexV2Models/Types/SlotValueElicitationSetting.hs view
@@ -0,0 +1,181 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.SlotValueElicitationSetting+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.SlotValueElicitationSetting where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.PromptSpecification+import Amazonka.LexV2Models.Types.SampleUtterance+import Amazonka.LexV2Models.Types.SlotCaptureSetting+import Amazonka.LexV2Models.Types.SlotConstraint+import Amazonka.LexV2Models.Types.SlotDefaultValueSpecification+import Amazonka.LexV2Models.Types.WaitAndContinueSpecification+import qualified Amazonka.Prelude as Prelude++-- | Specifies the elicitation setting details for constituent sub slots of a+-- composite slot.+--+-- /See:/ 'newSlotValueElicitationSetting' smart constructor.+data SlotValueElicitationSetting = SlotValueElicitationSetting'+ { -- | A list of default values for a slot. Default values are used when Amazon+ -- Lex hasn\'t determined a value for a slot. You can specify default+ -- values from context variables, session attributes, and defined values.+ defaultValueSpecification :: Prelude.Maybe SlotDefaultValueSpecification,+ -- | The prompt that Amazon Lex uses to elicit the slot value from the user.+ promptSpecification :: Prelude.Maybe PromptSpecification,+ -- | If you know a specific pattern that users might respond to an Amazon Lex+ -- request for a slot value, you can provide those utterances to improve+ -- accuracy. This is optional. In most cases, Amazon Lex is capable of+ -- understanding user utterances.+ sampleUtterances :: Prelude.Maybe [SampleUtterance],+ -- | Specifies the settings that Amazon Lex uses when a slot value is+ -- successfully entered by a user.+ slotCaptureSetting :: Prelude.Maybe SlotCaptureSetting,+ waitAndContinueSpecification :: Prelude.Maybe WaitAndContinueSpecification,+ -- | Specifies whether the slot is required or optional.+ slotConstraint :: SlotConstraint+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SlotValueElicitationSetting' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'defaultValueSpecification', 'slotValueElicitationSetting_defaultValueSpecification' - A list of default values for a slot. Default values are used when Amazon+-- Lex hasn\'t determined a value for a slot. You can specify default+-- values from context variables, session attributes, and defined values.+--+-- 'promptSpecification', 'slotValueElicitationSetting_promptSpecification' - The prompt that Amazon Lex uses to elicit the slot value from the user.+--+-- 'sampleUtterances', 'slotValueElicitationSetting_sampleUtterances' - If you know a specific pattern that users might respond to an Amazon Lex+-- request for a slot value, you can provide those utterances to improve+-- accuracy. This is optional. In most cases, Amazon Lex is capable of+-- understanding user utterances.+--+-- 'slotCaptureSetting', 'slotValueElicitationSetting_slotCaptureSetting' - Specifies the settings that Amazon Lex uses when a slot value is+-- successfully entered by a user.+--+-- 'waitAndContinueSpecification', 'slotValueElicitationSetting_waitAndContinueSpecification' - Undocumented member.+--+-- 'slotConstraint', 'slotValueElicitationSetting_slotConstraint' - Specifies whether the slot is required or optional.+newSlotValueElicitationSetting ::+ -- | 'slotConstraint'+ SlotConstraint ->+ SlotValueElicitationSetting+newSlotValueElicitationSetting pSlotConstraint_ =+ SlotValueElicitationSetting'+ { defaultValueSpecification =+ Prelude.Nothing,+ promptSpecification = Prelude.Nothing,+ sampleUtterances = Prelude.Nothing,+ slotCaptureSetting = Prelude.Nothing,+ waitAndContinueSpecification = Prelude.Nothing,+ slotConstraint = pSlotConstraint_+ }++-- | A list of default values for a slot. Default values are used when Amazon+-- Lex hasn\'t determined a value for a slot. You can specify default+-- values from context variables, session attributes, and defined values.+slotValueElicitationSetting_defaultValueSpecification :: Lens.Lens' SlotValueElicitationSetting (Prelude.Maybe SlotDefaultValueSpecification)+slotValueElicitationSetting_defaultValueSpecification = Lens.lens (\SlotValueElicitationSetting' {defaultValueSpecification} -> defaultValueSpecification) (\s@SlotValueElicitationSetting' {} a -> s {defaultValueSpecification = a} :: SlotValueElicitationSetting)++-- | The prompt that Amazon Lex uses to elicit the slot value from the user.+slotValueElicitationSetting_promptSpecification :: Lens.Lens' SlotValueElicitationSetting (Prelude.Maybe PromptSpecification)+slotValueElicitationSetting_promptSpecification = Lens.lens (\SlotValueElicitationSetting' {promptSpecification} -> promptSpecification) (\s@SlotValueElicitationSetting' {} a -> s {promptSpecification = a} :: SlotValueElicitationSetting)++-- | If you know a specific pattern that users might respond to an Amazon Lex+-- request for a slot value, you can provide those utterances to improve+-- accuracy. This is optional. In most cases, Amazon Lex is capable of+-- understanding user utterances.+slotValueElicitationSetting_sampleUtterances :: Lens.Lens' SlotValueElicitationSetting (Prelude.Maybe [SampleUtterance])+slotValueElicitationSetting_sampleUtterances = Lens.lens (\SlotValueElicitationSetting' {sampleUtterances} -> sampleUtterances) (\s@SlotValueElicitationSetting' {} a -> s {sampleUtterances = a} :: SlotValueElicitationSetting) Prelude.. Lens.mapping Lens.coerced++-- | Specifies the settings that Amazon Lex uses when a slot value is+-- successfully entered by a user.+slotValueElicitationSetting_slotCaptureSetting :: Lens.Lens' SlotValueElicitationSetting (Prelude.Maybe SlotCaptureSetting)+slotValueElicitationSetting_slotCaptureSetting = Lens.lens (\SlotValueElicitationSetting' {slotCaptureSetting} -> slotCaptureSetting) (\s@SlotValueElicitationSetting' {} a -> s {slotCaptureSetting = a} :: SlotValueElicitationSetting)++-- | Undocumented member.+slotValueElicitationSetting_waitAndContinueSpecification :: Lens.Lens' SlotValueElicitationSetting (Prelude.Maybe WaitAndContinueSpecification)+slotValueElicitationSetting_waitAndContinueSpecification = Lens.lens (\SlotValueElicitationSetting' {waitAndContinueSpecification} -> waitAndContinueSpecification) (\s@SlotValueElicitationSetting' {} a -> s {waitAndContinueSpecification = a} :: SlotValueElicitationSetting)++-- | Specifies whether the slot is required or optional.+slotValueElicitationSetting_slotConstraint :: Lens.Lens' SlotValueElicitationSetting SlotConstraint+slotValueElicitationSetting_slotConstraint = Lens.lens (\SlotValueElicitationSetting' {slotConstraint} -> slotConstraint) (\s@SlotValueElicitationSetting' {} a -> s {slotConstraint = a} :: SlotValueElicitationSetting)++instance Data.FromJSON SlotValueElicitationSetting where+ parseJSON =+ Data.withObject+ "SlotValueElicitationSetting"+ ( \x ->+ SlotValueElicitationSetting'+ Prelude.<$> (x Data..:? "defaultValueSpecification")+ Prelude.<*> (x Data..:? "promptSpecification")+ Prelude.<*> ( x+ Data..:? "sampleUtterances"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..:? "slotCaptureSetting")+ Prelude.<*> (x Data..:? "waitAndContinueSpecification")+ Prelude.<*> (x Data..: "slotConstraint")+ )++instance Prelude.Hashable SlotValueElicitationSetting where+ hashWithSalt _salt SlotValueElicitationSetting' {..} =+ _salt+ `Prelude.hashWithSalt` defaultValueSpecification+ `Prelude.hashWithSalt` promptSpecification+ `Prelude.hashWithSalt` sampleUtterances+ `Prelude.hashWithSalt` slotCaptureSetting+ `Prelude.hashWithSalt` waitAndContinueSpecification+ `Prelude.hashWithSalt` slotConstraint++instance Prelude.NFData SlotValueElicitationSetting where+ rnf SlotValueElicitationSetting' {..} =+ Prelude.rnf defaultValueSpecification+ `Prelude.seq` Prelude.rnf promptSpecification+ `Prelude.seq` Prelude.rnf sampleUtterances+ `Prelude.seq` Prelude.rnf slotCaptureSetting+ `Prelude.seq` Prelude.rnf waitAndContinueSpecification+ `Prelude.seq` Prelude.rnf slotConstraint++instance Data.ToJSON SlotValueElicitationSetting where+ toJSON SlotValueElicitationSetting' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("defaultValueSpecification" Data..=)+ Prelude.<$> defaultValueSpecification,+ ("promptSpecification" Data..=)+ Prelude.<$> promptSpecification,+ ("sampleUtterances" Data..=)+ Prelude.<$> sampleUtterances,+ ("slotCaptureSetting" Data..=)+ Prelude.<$> slotCaptureSetting,+ ("waitAndContinueSpecification" Data..=)+ Prelude.<$> waitAndContinueSpecification,+ Prelude.Just+ ("slotConstraint" Data..= slotConstraint)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/SlotValueOverride.hs view
@@ -0,0 +1,121 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.SlotValueOverride+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.SlotValueOverride where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.SlotShape+import Amazonka.LexV2Models.Types.SlotValue+import qualified Amazonka.Prelude as Prelude++-- | The slot values that Amazon Lex uses when it sets slot values in a+-- dialog step.+--+-- /See:/ 'newSlotValueOverride' smart constructor.+data SlotValueOverride = SlotValueOverride'+ { -- | When the shape value is @List@, it indicates that the @values@ field+ -- contains a list of slot values. When the value is @Scalar@, it indicates+ -- that the @value@ field contains a single value.+ shape :: Prelude.Maybe SlotShape,+ -- | The current value of the slot.+ value :: Prelude.Maybe SlotValue,+ -- | A list of one or more values that the user provided for the slot. For+ -- example, for a slot that elicits pizza toppings, the values might be+ -- \"pepperoni\" and \"pineapple.\"+ values :: Prelude.Maybe [SlotValueOverride]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SlotValueOverride' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'shape', 'slotValueOverride_shape' - When the shape value is @List@, it indicates that the @values@ field+-- contains a list of slot values. When the value is @Scalar@, it indicates+-- that the @value@ field contains a single value.+--+-- 'value', 'slotValueOverride_value' - The current value of the slot.+--+-- 'values', 'slotValueOverride_values' - A list of one or more values that the user provided for the slot. For+-- example, for a slot that elicits pizza toppings, the values might be+-- \"pepperoni\" and \"pineapple.\"+newSlotValueOverride ::+ SlotValueOverride+newSlotValueOverride =+ SlotValueOverride'+ { shape = Prelude.Nothing,+ value = Prelude.Nothing,+ values = Prelude.Nothing+ }++-- | When the shape value is @List@, it indicates that the @values@ field+-- contains a list of slot values. When the value is @Scalar@, it indicates+-- that the @value@ field contains a single value.+slotValueOverride_shape :: Lens.Lens' SlotValueOverride (Prelude.Maybe SlotShape)+slotValueOverride_shape = Lens.lens (\SlotValueOverride' {shape} -> shape) (\s@SlotValueOverride' {} a -> s {shape = a} :: SlotValueOverride)++-- | The current value of the slot.+slotValueOverride_value :: Lens.Lens' SlotValueOverride (Prelude.Maybe SlotValue)+slotValueOverride_value = Lens.lens (\SlotValueOverride' {value} -> value) (\s@SlotValueOverride' {} a -> s {value = a} :: SlotValueOverride)++-- | A list of one or more values that the user provided for the slot. For+-- example, for a slot that elicits pizza toppings, the values might be+-- \"pepperoni\" and \"pineapple.\"+slotValueOverride_values :: Lens.Lens' SlotValueOverride (Prelude.Maybe [SlotValueOverride])+slotValueOverride_values = Lens.lens (\SlotValueOverride' {values} -> values) (\s@SlotValueOverride' {} a -> s {values = a} :: SlotValueOverride) Prelude.. Lens.mapping Lens.coerced++instance Data.FromJSON SlotValueOverride where+ parseJSON =+ Data.withObject+ "SlotValueOverride"+ ( \x ->+ SlotValueOverride'+ Prelude.<$> (x Data..:? "shape")+ Prelude.<*> (x Data..:? "value")+ Prelude.<*> (x Data..:? "values" Data..!= Prelude.mempty)+ )++instance Prelude.Hashable SlotValueOverride where+ hashWithSalt _salt SlotValueOverride' {..} =+ _salt+ `Prelude.hashWithSalt` shape+ `Prelude.hashWithSalt` value+ `Prelude.hashWithSalt` values++instance Prelude.NFData SlotValueOverride where+ rnf SlotValueOverride' {..} =+ Prelude.rnf shape+ `Prelude.seq` Prelude.rnf value+ `Prelude.seq` Prelude.rnf values++instance Data.ToJSON SlotValueOverride where+ toJSON SlotValueOverride' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("shape" Data..=) Prelude.<$> shape,+ ("value" Data..=) Prelude.<$> value,+ ("values" Data..=) Prelude.<$> values+ ]+ )
+ gen/Amazonka/LexV2Models/Types/SlotValueRegexFilter.hs view
@@ -0,0 +1,131 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.SlotValueRegexFilter+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.SlotValueRegexFilter where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Provides a regular expression used to validate the value of a slot.+--+-- /See:/ 'newSlotValueRegexFilter' smart constructor.+data SlotValueRegexFilter = SlotValueRegexFilter'+ { -- | A regular expression used to validate the value of a slot.+ --+ -- Use a standard regular expression. Amazon Lex supports the following+ -- characters in the regular expression:+ --+ -- - A-Z, a-z+ --+ -- - 0-9+ --+ -- - Unicode characters (\"\\ u\<Unicode>\")+ --+ -- Represent Unicode characters with four digits, for example \"\\u0041\"+ -- or \"\\u005A\".+ --+ -- The following regular expression operators are not supported:+ --+ -- - Infinite repeaters: *, +, or {x,} with no upper bound.+ --+ -- - Wild card (.)+ pattern' :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SlotValueRegexFilter' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'pattern'', 'slotValueRegexFilter_pattern' - A regular expression used to validate the value of a slot.+--+-- Use a standard regular expression. Amazon Lex supports the following+-- characters in the regular expression:+--+-- - A-Z, a-z+--+-- - 0-9+--+-- - Unicode characters (\"\\ u\<Unicode>\")+--+-- Represent Unicode characters with four digits, for example \"\\u0041\"+-- or \"\\u005A\".+--+-- The following regular expression operators are not supported:+--+-- - Infinite repeaters: *, +, or {x,} with no upper bound.+--+-- - Wild card (.)+newSlotValueRegexFilter ::+ -- | 'pattern''+ Prelude.Text ->+ SlotValueRegexFilter+newSlotValueRegexFilter pPattern_ =+ SlotValueRegexFilter' {pattern' = pPattern_}++-- | A regular expression used to validate the value of a slot.+--+-- Use a standard regular expression. Amazon Lex supports the following+-- characters in the regular expression:+--+-- - A-Z, a-z+--+-- - 0-9+--+-- - Unicode characters (\"\\ u\<Unicode>\")+--+-- Represent Unicode characters with four digits, for example \"\\u0041\"+-- or \"\\u005A\".+--+-- The following regular expression operators are not supported:+--+-- - Infinite repeaters: *, +, or {x,} with no upper bound.+--+-- - Wild card (.)+slotValueRegexFilter_pattern :: Lens.Lens' SlotValueRegexFilter Prelude.Text+slotValueRegexFilter_pattern = Lens.lens (\SlotValueRegexFilter' {pattern'} -> pattern') (\s@SlotValueRegexFilter' {} a -> s {pattern' = a} :: SlotValueRegexFilter)++instance Data.FromJSON SlotValueRegexFilter where+ parseJSON =+ Data.withObject+ "SlotValueRegexFilter"+ ( \x ->+ SlotValueRegexFilter'+ Prelude.<$> (x Data..: "pattern")+ )++instance Prelude.Hashable SlotValueRegexFilter where+ hashWithSalt _salt SlotValueRegexFilter' {..} =+ _salt `Prelude.hashWithSalt` pattern'++instance Prelude.NFData SlotValueRegexFilter where+ rnf SlotValueRegexFilter' {..} = Prelude.rnf pattern'++instance Data.ToJSON SlotValueRegexFilter where+ toJSON SlotValueRegexFilter' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("pattern" Data..= pattern')]+ )
+ gen/Amazonka/LexV2Models/Types/SlotValueResolutionStrategy.hs view
@@ -0,0 +1,76 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.SlotValueResolutionStrategy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.SlotValueResolutionStrategy+ ( SlotValueResolutionStrategy+ ( ..,+ SlotValueResolutionStrategy_Concatenation,+ SlotValueResolutionStrategy_OriginalValue,+ SlotValueResolutionStrategy_TopResolution+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype SlotValueResolutionStrategy = SlotValueResolutionStrategy'+ { fromSlotValueResolutionStrategy ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern SlotValueResolutionStrategy_Concatenation :: SlotValueResolutionStrategy+pattern SlotValueResolutionStrategy_Concatenation = SlotValueResolutionStrategy' "Concatenation"++pattern SlotValueResolutionStrategy_OriginalValue :: SlotValueResolutionStrategy+pattern SlotValueResolutionStrategy_OriginalValue = SlotValueResolutionStrategy' "OriginalValue"++pattern SlotValueResolutionStrategy_TopResolution :: SlotValueResolutionStrategy+pattern SlotValueResolutionStrategy_TopResolution = SlotValueResolutionStrategy' "TopResolution"++{-# COMPLETE+ SlotValueResolutionStrategy_Concatenation,+ SlotValueResolutionStrategy_OriginalValue,+ SlotValueResolutionStrategy_TopResolution,+ SlotValueResolutionStrategy'+ #-}
+ gen/Amazonka/LexV2Models/Types/SlotValueSelectionSetting.hs view
@@ -0,0 +1,150 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.SlotValueSelectionSetting+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.SlotValueSelectionSetting where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.AdvancedRecognitionSetting+import Amazonka.LexV2Models.Types.SlotValueRegexFilter+import Amazonka.LexV2Models.Types.SlotValueResolutionStrategy+import qualified Amazonka.Prelude as Prelude++-- | Contains settings used by Amazon Lex to select a slot value.+--+-- /See:/ 'newSlotValueSelectionSetting' smart constructor.+data SlotValueSelectionSetting = SlotValueSelectionSetting'+ { -- | Provides settings that enable advanced recognition settings for slot+ -- values.+ advancedRecognitionSetting :: Prelude.Maybe AdvancedRecognitionSetting,+ -- | A regular expression used to validate the value of a slot.+ regexFilter :: Prelude.Maybe SlotValueRegexFilter,+ -- | Determines the slot resolution strategy that Amazon Lex uses to return+ -- slot type values. The field can be set to one of the following values:+ --+ -- - OriginalValue - Returns the value entered by the user, if the user+ -- value is similar to the slot value.+ --+ -- - TopResolution - If there is a resolution list for the slot, return+ -- the first value in the resolution list as the slot type value. If+ -- there is no resolution list, null is returned.+ --+ -- If you don\'t specify the valueSelectionStrategy, the default is+ -- OriginalValue.+ resolutionStrategy :: SlotValueResolutionStrategy+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SlotValueSelectionSetting' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'advancedRecognitionSetting', 'slotValueSelectionSetting_advancedRecognitionSetting' - Provides settings that enable advanced recognition settings for slot+-- values.+--+-- 'regexFilter', 'slotValueSelectionSetting_regexFilter' - A regular expression used to validate the value of a slot.+--+-- 'resolutionStrategy', 'slotValueSelectionSetting_resolutionStrategy' - Determines the slot resolution strategy that Amazon Lex uses to return+-- slot type values. The field can be set to one of the following values:+--+-- - OriginalValue - Returns the value entered by the user, if the user+-- value is similar to the slot value.+--+-- - TopResolution - If there is a resolution list for the slot, return+-- the first value in the resolution list as the slot type value. If+-- there is no resolution list, null is returned.+--+-- If you don\'t specify the valueSelectionStrategy, the default is+-- OriginalValue.+newSlotValueSelectionSetting ::+ -- | 'resolutionStrategy'+ SlotValueResolutionStrategy ->+ SlotValueSelectionSetting+newSlotValueSelectionSetting pResolutionStrategy_ =+ SlotValueSelectionSetting'+ { advancedRecognitionSetting =+ Prelude.Nothing,+ regexFilter = Prelude.Nothing,+ resolutionStrategy = pResolutionStrategy_+ }++-- | Provides settings that enable advanced recognition settings for slot+-- values.+slotValueSelectionSetting_advancedRecognitionSetting :: Lens.Lens' SlotValueSelectionSetting (Prelude.Maybe AdvancedRecognitionSetting)+slotValueSelectionSetting_advancedRecognitionSetting = Lens.lens (\SlotValueSelectionSetting' {advancedRecognitionSetting} -> advancedRecognitionSetting) (\s@SlotValueSelectionSetting' {} a -> s {advancedRecognitionSetting = a} :: SlotValueSelectionSetting)++-- | A regular expression used to validate the value of a slot.+slotValueSelectionSetting_regexFilter :: Lens.Lens' SlotValueSelectionSetting (Prelude.Maybe SlotValueRegexFilter)+slotValueSelectionSetting_regexFilter = Lens.lens (\SlotValueSelectionSetting' {regexFilter} -> regexFilter) (\s@SlotValueSelectionSetting' {} a -> s {regexFilter = a} :: SlotValueSelectionSetting)++-- | Determines the slot resolution strategy that Amazon Lex uses to return+-- slot type values. The field can be set to one of the following values:+--+-- - OriginalValue - Returns the value entered by the user, if the user+-- value is similar to the slot value.+--+-- - TopResolution - If there is a resolution list for the slot, return+-- the first value in the resolution list as the slot type value. If+-- there is no resolution list, null is returned.+--+-- If you don\'t specify the valueSelectionStrategy, the default is+-- OriginalValue.+slotValueSelectionSetting_resolutionStrategy :: Lens.Lens' SlotValueSelectionSetting SlotValueResolutionStrategy+slotValueSelectionSetting_resolutionStrategy = Lens.lens (\SlotValueSelectionSetting' {resolutionStrategy} -> resolutionStrategy) (\s@SlotValueSelectionSetting' {} a -> s {resolutionStrategy = a} :: SlotValueSelectionSetting)++instance Data.FromJSON SlotValueSelectionSetting where+ parseJSON =+ Data.withObject+ "SlotValueSelectionSetting"+ ( \x ->+ SlotValueSelectionSetting'+ Prelude.<$> (x Data..:? "advancedRecognitionSetting")+ Prelude.<*> (x Data..:? "regexFilter")+ Prelude.<*> (x Data..: "resolutionStrategy")+ )++instance Prelude.Hashable SlotValueSelectionSetting where+ hashWithSalt _salt SlotValueSelectionSetting' {..} =+ _salt+ `Prelude.hashWithSalt` advancedRecognitionSetting+ `Prelude.hashWithSalt` regexFilter+ `Prelude.hashWithSalt` resolutionStrategy++instance Prelude.NFData SlotValueSelectionSetting where+ rnf SlotValueSelectionSetting' {..} =+ Prelude.rnf advancedRecognitionSetting+ `Prelude.seq` Prelude.rnf regexFilter+ `Prelude.seq` Prelude.rnf resolutionStrategy++instance Data.ToJSON SlotValueSelectionSetting where+ toJSON SlotValueSelectionSetting' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("advancedRecognitionSetting" Data..=)+ Prelude.<$> advancedRecognitionSetting,+ ("regexFilter" Data..=) Prelude.<$> regexFilter,+ Prelude.Just+ ("resolutionStrategy" Data..= resolutionStrategy)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/SortOrder.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.SortOrder+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.SortOrder+ ( SortOrder+ ( ..,+ SortOrder_Ascending,+ SortOrder_Descending+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype SortOrder = SortOrder'+ { fromSortOrder ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern SortOrder_Ascending :: SortOrder+pattern SortOrder_Ascending = SortOrder' "Ascending"++pattern SortOrder_Descending :: SortOrder+pattern SortOrder_Descending = SortOrder' "Descending"++{-# COMPLETE+ SortOrder_Ascending,+ SortOrder_Descending,+ SortOrder'+ #-}
+ gen/Amazonka/LexV2Models/Types/Specifications.hs view
@@ -0,0 +1,106 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.Specifications+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.Specifications where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.SubSlotValueElicitationSetting+import qualified Amazonka.Prelude as Prelude++-- | Subslot specifications.+--+-- /See:/ 'newSpecifications' smart constructor.+data Specifications = Specifications'+ { -- | The unique identifier assigned to the slot type.+ slotTypeId :: Prelude.Text,+ -- | Specifies the elicitation setting details for constituent sub slots of a+ -- composite slot.+ valueElicitationSetting :: SubSlotValueElicitationSetting+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Specifications' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'slotTypeId', 'specifications_slotTypeId' - The unique identifier assigned to the slot type.+--+-- 'valueElicitationSetting', 'specifications_valueElicitationSetting' - Specifies the elicitation setting details for constituent sub slots of a+-- composite slot.+newSpecifications ::+ -- | 'slotTypeId'+ Prelude.Text ->+ -- | 'valueElicitationSetting'+ SubSlotValueElicitationSetting ->+ Specifications+newSpecifications+ pSlotTypeId_+ pValueElicitationSetting_ =+ Specifications'+ { slotTypeId = pSlotTypeId_,+ valueElicitationSetting = pValueElicitationSetting_+ }++-- | The unique identifier assigned to the slot type.+specifications_slotTypeId :: Lens.Lens' Specifications Prelude.Text+specifications_slotTypeId = Lens.lens (\Specifications' {slotTypeId} -> slotTypeId) (\s@Specifications' {} a -> s {slotTypeId = a} :: Specifications)++-- | Specifies the elicitation setting details for constituent sub slots of a+-- composite slot.+specifications_valueElicitationSetting :: Lens.Lens' Specifications SubSlotValueElicitationSetting+specifications_valueElicitationSetting = Lens.lens (\Specifications' {valueElicitationSetting} -> valueElicitationSetting) (\s@Specifications' {} a -> s {valueElicitationSetting = a} :: Specifications)++instance Data.FromJSON Specifications where+ parseJSON =+ Data.withObject+ "Specifications"+ ( \x ->+ Specifications'+ Prelude.<$> (x Data..: "slotTypeId")+ Prelude.<*> (x Data..: "valueElicitationSetting")+ )++instance Prelude.Hashable Specifications where+ hashWithSalt _salt Specifications' {..} =+ _salt+ `Prelude.hashWithSalt` slotTypeId+ `Prelude.hashWithSalt` valueElicitationSetting++instance Prelude.NFData Specifications where+ rnf Specifications' {..} =+ Prelude.rnf slotTypeId+ `Prelude.seq` Prelude.rnf valueElicitationSetting++instance Data.ToJSON Specifications where+ toJSON Specifications' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("slotTypeId" Data..= slotTypeId),+ Prelude.Just+ ( "valueElicitationSetting"+ Data..= valueElicitationSetting+ )+ ]+ )
+ gen/Amazonka/LexV2Models/Types/StillWaitingResponseSpecification.hs view
@@ -0,0 +1,162 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.StillWaitingResponseSpecification+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.StillWaitingResponseSpecification where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.MessageGroup+import qualified Amazonka.Prelude as Prelude++-- | Defines the messages that Amazon Lex sends to a user to remind them that+-- the bot is waiting for a response.+--+-- /See:/ 'newStillWaitingResponseSpecification' smart constructor.+data StillWaitingResponseSpecification = StillWaitingResponseSpecification'+ { -- | Indicates that the user can interrupt the response by speaking while the+ -- message is being played.+ allowInterrupt :: Prelude.Maybe Prelude.Bool,+ -- | One or more message groups, each containing one or more messages, that+ -- define the prompts that Amazon Lex sends to the user.+ messageGroups :: Prelude.NonEmpty MessageGroup,+ -- | How often a message should be sent to the user. Minimum of 1 second,+ -- maximum of 5 minutes.+ frequencyInSeconds :: Prelude.Natural,+ -- | If Amazon Lex waits longer than this length of time for a response, it+ -- will stop sending messages.+ timeoutInSeconds :: Prelude.Natural+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'StillWaitingResponseSpecification' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'allowInterrupt', 'stillWaitingResponseSpecification_allowInterrupt' - Indicates that the user can interrupt the response by speaking while the+-- message is being played.+--+-- 'messageGroups', 'stillWaitingResponseSpecification_messageGroups' - One or more message groups, each containing one or more messages, that+-- define the prompts that Amazon Lex sends to the user.+--+-- 'frequencyInSeconds', 'stillWaitingResponseSpecification_frequencyInSeconds' - How often a message should be sent to the user. Minimum of 1 second,+-- maximum of 5 minutes.+--+-- 'timeoutInSeconds', 'stillWaitingResponseSpecification_timeoutInSeconds' - If Amazon Lex waits longer than this length of time for a response, it+-- will stop sending messages.+newStillWaitingResponseSpecification ::+ -- | 'messageGroups'+ Prelude.NonEmpty MessageGroup ->+ -- | 'frequencyInSeconds'+ Prelude.Natural ->+ -- | 'timeoutInSeconds'+ Prelude.Natural ->+ StillWaitingResponseSpecification+newStillWaitingResponseSpecification+ pMessageGroups_+ pFrequencyInSeconds_+ pTimeoutInSeconds_ =+ StillWaitingResponseSpecification'+ { allowInterrupt =+ Prelude.Nothing,+ messageGroups =+ Lens.coerced Lens.# pMessageGroups_,+ frequencyInSeconds =+ pFrequencyInSeconds_,+ timeoutInSeconds = pTimeoutInSeconds_+ }++-- | Indicates that the user can interrupt the response by speaking while the+-- message is being played.+stillWaitingResponseSpecification_allowInterrupt :: Lens.Lens' StillWaitingResponseSpecification (Prelude.Maybe Prelude.Bool)+stillWaitingResponseSpecification_allowInterrupt = Lens.lens (\StillWaitingResponseSpecification' {allowInterrupt} -> allowInterrupt) (\s@StillWaitingResponseSpecification' {} a -> s {allowInterrupt = a} :: StillWaitingResponseSpecification)++-- | One or more message groups, each containing one or more messages, that+-- define the prompts that Amazon Lex sends to the user.+stillWaitingResponseSpecification_messageGroups :: Lens.Lens' StillWaitingResponseSpecification (Prelude.NonEmpty MessageGroup)+stillWaitingResponseSpecification_messageGroups = Lens.lens (\StillWaitingResponseSpecification' {messageGroups} -> messageGroups) (\s@StillWaitingResponseSpecification' {} a -> s {messageGroups = a} :: StillWaitingResponseSpecification) Prelude.. Lens.coerced++-- | How often a message should be sent to the user. Minimum of 1 second,+-- maximum of 5 minutes.+stillWaitingResponseSpecification_frequencyInSeconds :: Lens.Lens' StillWaitingResponseSpecification Prelude.Natural+stillWaitingResponseSpecification_frequencyInSeconds = Lens.lens (\StillWaitingResponseSpecification' {frequencyInSeconds} -> frequencyInSeconds) (\s@StillWaitingResponseSpecification' {} a -> s {frequencyInSeconds = a} :: StillWaitingResponseSpecification)++-- | If Amazon Lex waits longer than this length of time for a response, it+-- will stop sending messages.+stillWaitingResponseSpecification_timeoutInSeconds :: Lens.Lens' StillWaitingResponseSpecification Prelude.Natural+stillWaitingResponseSpecification_timeoutInSeconds = Lens.lens (\StillWaitingResponseSpecification' {timeoutInSeconds} -> timeoutInSeconds) (\s@StillWaitingResponseSpecification' {} a -> s {timeoutInSeconds = a} :: StillWaitingResponseSpecification)++instance+ Data.FromJSON+ StillWaitingResponseSpecification+ where+ parseJSON =+ Data.withObject+ "StillWaitingResponseSpecification"+ ( \x ->+ StillWaitingResponseSpecification'+ Prelude.<$> (x Data..:? "allowInterrupt")+ Prelude.<*> (x Data..: "messageGroups")+ Prelude.<*> (x Data..: "frequencyInSeconds")+ Prelude.<*> (x Data..: "timeoutInSeconds")+ )++instance+ Prelude.Hashable+ StillWaitingResponseSpecification+ where+ hashWithSalt+ _salt+ StillWaitingResponseSpecification' {..} =+ _salt+ `Prelude.hashWithSalt` allowInterrupt+ `Prelude.hashWithSalt` messageGroups+ `Prelude.hashWithSalt` frequencyInSeconds+ `Prelude.hashWithSalt` timeoutInSeconds++instance+ Prelude.NFData+ StillWaitingResponseSpecification+ where+ rnf StillWaitingResponseSpecification' {..} =+ Prelude.rnf allowInterrupt+ `Prelude.seq` Prelude.rnf messageGroups+ `Prelude.seq` Prelude.rnf frequencyInSeconds+ `Prelude.seq` Prelude.rnf timeoutInSeconds++instance+ Data.ToJSON+ StillWaitingResponseSpecification+ where+ toJSON StillWaitingResponseSpecification' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("allowInterrupt" Data..=)+ Prelude.<$> allowInterrupt,+ Prelude.Just ("messageGroups" Data..= messageGroups),+ Prelude.Just+ ("frequencyInSeconds" Data..= frequencyInSeconds),+ Prelude.Just+ ("timeoutInSeconds" Data..= timeoutInSeconds)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/SubSlotSetting.hs view
@@ -0,0 +1,102 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.SubSlotSetting+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.SubSlotSetting where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.Specifications+import qualified Amazonka.Prelude as Prelude++-- | Specifications for the constituent sub slots and the expression for the+-- composite slot.+--+-- /See:/ 'newSubSlotSetting' smart constructor.+data SubSlotSetting = SubSlotSetting'+ { -- | The expression text for defining the constituent sub slots in the+ -- composite slot using logical AND and OR operators.+ expression :: Prelude.Maybe Prelude.Text,+ -- | Specifications for the constituent sub slots of a composite slot.+ slotSpecifications :: Prelude.Maybe (Prelude.HashMap Prelude.Text Specifications)+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SubSlotSetting' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'expression', 'subSlotSetting_expression' - The expression text for defining the constituent sub slots in the+-- composite slot using logical AND and OR operators.+--+-- 'slotSpecifications', 'subSlotSetting_slotSpecifications' - Specifications for the constituent sub slots of a composite slot.+newSubSlotSetting ::+ SubSlotSetting+newSubSlotSetting =+ SubSlotSetting'+ { expression = Prelude.Nothing,+ slotSpecifications = Prelude.Nothing+ }++-- | The expression text for defining the constituent sub slots in the+-- composite slot using logical AND and OR operators.+subSlotSetting_expression :: Lens.Lens' SubSlotSetting (Prelude.Maybe Prelude.Text)+subSlotSetting_expression = Lens.lens (\SubSlotSetting' {expression} -> expression) (\s@SubSlotSetting' {} a -> s {expression = a} :: SubSlotSetting)++-- | Specifications for the constituent sub slots of a composite slot.+subSlotSetting_slotSpecifications :: Lens.Lens' SubSlotSetting (Prelude.Maybe (Prelude.HashMap Prelude.Text Specifications))+subSlotSetting_slotSpecifications = Lens.lens (\SubSlotSetting' {slotSpecifications} -> slotSpecifications) (\s@SubSlotSetting' {} a -> s {slotSpecifications = a} :: SubSlotSetting) Prelude.. Lens.mapping Lens.coerced++instance Data.FromJSON SubSlotSetting where+ parseJSON =+ Data.withObject+ "SubSlotSetting"+ ( \x ->+ SubSlotSetting'+ Prelude.<$> (x Data..:? "expression")+ Prelude.<*> ( x+ Data..:? "slotSpecifications"+ Data..!= Prelude.mempty+ )+ )++instance Prelude.Hashable SubSlotSetting where+ hashWithSalt _salt SubSlotSetting' {..} =+ _salt+ `Prelude.hashWithSalt` expression+ `Prelude.hashWithSalt` slotSpecifications++instance Prelude.NFData SubSlotSetting where+ rnf SubSlotSetting' {..} =+ Prelude.rnf expression+ `Prelude.seq` Prelude.rnf slotSpecifications++instance Data.ToJSON SubSlotSetting where+ toJSON SubSlotSetting' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("expression" Data..=) Prelude.<$> expression,+ ("slotSpecifications" Data..=)+ Prelude.<$> slotSpecifications+ ]+ )
+ gen/Amazonka/LexV2Models/Types/SubSlotTypeComposition.hs view
@@ -0,0 +1,100 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.SubSlotTypeComposition+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.SubSlotTypeComposition where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Subslot type composition.+--+-- /See:/ 'newSubSlotTypeComposition' smart constructor.+data SubSlotTypeComposition = SubSlotTypeComposition'+ { -- | Name of a constituent sub slot inside a composite slot.+ name :: Prelude.Text,+ -- | The unique identifier assigned to a slot type. This refers to either a+ -- built-in slot type or the unique slotTypeId of a custom slot type.+ slotTypeId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SubSlotTypeComposition' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'name', 'subSlotTypeComposition_name' - Name of a constituent sub slot inside a composite slot.+--+-- 'slotTypeId', 'subSlotTypeComposition_slotTypeId' - The unique identifier assigned to a slot type. This refers to either a+-- built-in slot type or the unique slotTypeId of a custom slot type.+newSubSlotTypeComposition ::+ -- | 'name'+ Prelude.Text ->+ -- | 'slotTypeId'+ Prelude.Text ->+ SubSlotTypeComposition+newSubSlotTypeComposition pName_ pSlotTypeId_ =+ SubSlotTypeComposition'+ { name = pName_,+ slotTypeId = pSlotTypeId_+ }++-- | Name of a constituent sub slot inside a composite slot.+subSlotTypeComposition_name :: Lens.Lens' SubSlotTypeComposition Prelude.Text+subSlotTypeComposition_name = Lens.lens (\SubSlotTypeComposition' {name} -> name) (\s@SubSlotTypeComposition' {} a -> s {name = a} :: SubSlotTypeComposition)++-- | The unique identifier assigned to a slot type. This refers to either a+-- built-in slot type or the unique slotTypeId of a custom slot type.+subSlotTypeComposition_slotTypeId :: Lens.Lens' SubSlotTypeComposition Prelude.Text+subSlotTypeComposition_slotTypeId = Lens.lens (\SubSlotTypeComposition' {slotTypeId} -> slotTypeId) (\s@SubSlotTypeComposition' {} a -> s {slotTypeId = a} :: SubSlotTypeComposition)++instance Data.FromJSON SubSlotTypeComposition where+ parseJSON =+ Data.withObject+ "SubSlotTypeComposition"+ ( \x ->+ SubSlotTypeComposition'+ Prelude.<$> (x Data..: "name")+ Prelude.<*> (x Data..: "slotTypeId")+ )++instance Prelude.Hashable SubSlotTypeComposition where+ hashWithSalt _salt SubSlotTypeComposition' {..} =+ _salt+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` slotTypeId++instance Prelude.NFData SubSlotTypeComposition where+ rnf SubSlotTypeComposition' {..} =+ Prelude.rnf name+ `Prelude.seq` Prelude.rnf slotTypeId++instance Data.ToJSON SubSlotTypeComposition where+ toJSON SubSlotTypeComposition' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("name" Data..= name),+ Prelude.Just ("slotTypeId" Data..= slotTypeId)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/SubSlotValueElicitationSetting.hs view
@@ -0,0 +1,162 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.SubSlotValueElicitationSetting+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.SubSlotValueElicitationSetting where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.PromptSpecification+import Amazonka.LexV2Models.Types.SampleUtterance+import Amazonka.LexV2Models.Types.SlotDefaultValueSpecification+import Amazonka.LexV2Models.Types.WaitAndContinueSpecification+import qualified Amazonka.Prelude as Prelude++-- | Subslot elicitation settings.+--+-- @DefaultValueSpecification@ is a list of default values for a+-- constituent sub slot in a composite slot. Default values are used when+-- Amazon Lex hasn\'t determined a value for a slot. You can specify+-- default values from context variables, session attributes, and defined+-- values. This is similar to @DefaultValueSpecification@ for slots.+--+-- @PromptSpecification@ is the prompt that Amazon Lex uses to elicit the+-- sub slot value from the user. This is similar to @PromptSpecification@+-- for slots.+--+-- /See:/ 'newSubSlotValueElicitationSetting' smart constructor.+data SubSlotValueElicitationSetting = SubSlotValueElicitationSetting'+ { defaultValueSpecification :: Prelude.Maybe SlotDefaultValueSpecification,+ -- | If you know a specific pattern that users might respond to an Amazon Lex+ -- request for a sub slot value, you can provide those utterances to+ -- improve accuracy. This is optional. In most cases Amazon Lex is capable+ -- of understanding user utterances. This is similar to @SampleUtterances@+ -- for slots.+ sampleUtterances :: Prelude.Maybe [SampleUtterance],+ waitAndContinueSpecification :: Prelude.Maybe WaitAndContinueSpecification,+ promptSpecification :: PromptSpecification+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SubSlotValueElicitationSetting' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'defaultValueSpecification', 'subSlotValueElicitationSetting_defaultValueSpecification' - Undocumented member.+--+-- 'sampleUtterances', 'subSlotValueElicitationSetting_sampleUtterances' - If you know a specific pattern that users might respond to an Amazon Lex+-- request for a sub slot value, you can provide those utterances to+-- improve accuracy. This is optional. In most cases Amazon Lex is capable+-- of understanding user utterances. This is similar to @SampleUtterances@+-- for slots.+--+-- 'waitAndContinueSpecification', 'subSlotValueElicitationSetting_waitAndContinueSpecification' - Undocumented member.+--+-- 'promptSpecification', 'subSlotValueElicitationSetting_promptSpecification' - Undocumented member.+newSubSlotValueElicitationSetting ::+ -- | 'promptSpecification'+ PromptSpecification ->+ SubSlotValueElicitationSetting+newSubSlotValueElicitationSetting+ pPromptSpecification_ =+ SubSlotValueElicitationSetting'+ { defaultValueSpecification =+ Prelude.Nothing,+ sampleUtterances = Prelude.Nothing,+ waitAndContinueSpecification =+ Prelude.Nothing,+ promptSpecification = pPromptSpecification_+ }++-- | Undocumented member.+subSlotValueElicitationSetting_defaultValueSpecification :: Lens.Lens' SubSlotValueElicitationSetting (Prelude.Maybe SlotDefaultValueSpecification)+subSlotValueElicitationSetting_defaultValueSpecification = Lens.lens (\SubSlotValueElicitationSetting' {defaultValueSpecification} -> defaultValueSpecification) (\s@SubSlotValueElicitationSetting' {} a -> s {defaultValueSpecification = a} :: SubSlotValueElicitationSetting)++-- | If you know a specific pattern that users might respond to an Amazon Lex+-- request for a sub slot value, you can provide those utterances to+-- improve accuracy. This is optional. In most cases Amazon Lex is capable+-- of understanding user utterances. This is similar to @SampleUtterances@+-- for slots.+subSlotValueElicitationSetting_sampleUtterances :: Lens.Lens' SubSlotValueElicitationSetting (Prelude.Maybe [SampleUtterance])+subSlotValueElicitationSetting_sampleUtterances = Lens.lens (\SubSlotValueElicitationSetting' {sampleUtterances} -> sampleUtterances) (\s@SubSlotValueElicitationSetting' {} a -> s {sampleUtterances = a} :: SubSlotValueElicitationSetting) Prelude.. Lens.mapping Lens.coerced++-- | Undocumented member.+subSlotValueElicitationSetting_waitAndContinueSpecification :: Lens.Lens' SubSlotValueElicitationSetting (Prelude.Maybe WaitAndContinueSpecification)+subSlotValueElicitationSetting_waitAndContinueSpecification = Lens.lens (\SubSlotValueElicitationSetting' {waitAndContinueSpecification} -> waitAndContinueSpecification) (\s@SubSlotValueElicitationSetting' {} a -> s {waitAndContinueSpecification = a} :: SubSlotValueElicitationSetting)++-- | Undocumented member.+subSlotValueElicitationSetting_promptSpecification :: Lens.Lens' SubSlotValueElicitationSetting PromptSpecification+subSlotValueElicitationSetting_promptSpecification = Lens.lens (\SubSlotValueElicitationSetting' {promptSpecification} -> promptSpecification) (\s@SubSlotValueElicitationSetting' {} a -> s {promptSpecification = a} :: SubSlotValueElicitationSetting)++instance Data.FromJSON SubSlotValueElicitationSetting where+ parseJSON =+ Data.withObject+ "SubSlotValueElicitationSetting"+ ( \x ->+ SubSlotValueElicitationSetting'+ Prelude.<$> (x Data..:? "defaultValueSpecification")+ Prelude.<*> ( x+ Data..:? "sampleUtterances"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..:? "waitAndContinueSpecification")+ Prelude.<*> (x Data..: "promptSpecification")+ )++instance+ Prelude.Hashable+ SubSlotValueElicitationSetting+ where+ hashWithSalt+ _salt+ SubSlotValueElicitationSetting' {..} =+ _salt+ `Prelude.hashWithSalt` defaultValueSpecification+ `Prelude.hashWithSalt` sampleUtterances+ `Prelude.hashWithSalt` waitAndContinueSpecification+ `Prelude.hashWithSalt` promptSpecification++instance+ Prelude.NFData+ SubSlotValueElicitationSetting+ where+ rnf SubSlotValueElicitationSetting' {..} =+ Prelude.rnf defaultValueSpecification+ `Prelude.seq` Prelude.rnf sampleUtterances+ `Prelude.seq` Prelude.rnf waitAndContinueSpecification+ `Prelude.seq` Prelude.rnf promptSpecification++instance Data.ToJSON SubSlotValueElicitationSetting where+ toJSON SubSlotValueElicitationSetting' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("defaultValueSpecification" Data..=)+ Prelude.<$> defaultValueSpecification,+ ("sampleUtterances" Data..=)+ Prelude.<$> sampleUtterances,+ ("waitAndContinueSpecification" Data..=)+ Prelude.<$> waitAndContinueSpecification,+ Prelude.Just+ ("promptSpecification" Data..= promptSpecification)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/TextInputSpecification.hs view
@@ -0,0 +1,86 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.TextInputSpecification+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.TextInputSpecification where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Specifies the text input specifications.+--+-- /See:/ 'newTextInputSpecification' smart constructor.+data TextInputSpecification = TextInputSpecification'+ { -- | Time for which a bot waits before re-prompting a customer for text+ -- input.+ startTimeoutMs :: Prelude.Natural+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TextInputSpecification' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'startTimeoutMs', 'textInputSpecification_startTimeoutMs' - Time for which a bot waits before re-prompting a customer for text+-- input.+newTextInputSpecification ::+ -- | 'startTimeoutMs'+ Prelude.Natural ->+ TextInputSpecification+newTextInputSpecification pStartTimeoutMs_ =+ TextInputSpecification'+ { startTimeoutMs =+ pStartTimeoutMs_+ }++-- | Time for which a bot waits before re-prompting a customer for text+-- input.+textInputSpecification_startTimeoutMs :: Lens.Lens' TextInputSpecification Prelude.Natural+textInputSpecification_startTimeoutMs = Lens.lens (\TextInputSpecification' {startTimeoutMs} -> startTimeoutMs) (\s@TextInputSpecification' {} a -> s {startTimeoutMs = a} :: TextInputSpecification)++instance Data.FromJSON TextInputSpecification where+ parseJSON =+ Data.withObject+ "TextInputSpecification"+ ( \x ->+ TextInputSpecification'+ Prelude.<$> (x Data..: "startTimeoutMs")+ )++instance Prelude.Hashable TextInputSpecification where+ hashWithSalt _salt TextInputSpecification' {..} =+ _salt `Prelude.hashWithSalt` startTimeoutMs++instance Prelude.NFData TextInputSpecification where+ rnf TextInputSpecification' {..} =+ Prelude.rnf startTimeoutMs++instance Data.ToJSON TextInputSpecification where+ toJSON TextInputSpecification' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("startTimeoutMs" Data..= startTimeoutMs)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/TextLogDestination.hs view
@@ -0,0 +1,82 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.TextLogDestination+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.TextLogDestination where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.CloudWatchLogGroupLogDestination+import qualified Amazonka.Prelude as Prelude++-- | Defines the Amazon CloudWatch Logs destination log group for+-- conversation text logs.+--+-- /See:/ 'newTextLogDestination' smart constructor.+data TextLogDestination = TextLogDestination'+ { -- | Defines the Amazon CloudWatch Logs log group where text and metadata+ -- logs are delivered.+ cloudWatch :: CloudWatchLogGroupLogDestination+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TextLogDestination' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'cloudWatch', 'textLogDestination_cloudWatch' - Defines the Amazon CloudWatch Logs log group where text and metadata+-- logs are delivered.+newTextLogDestination ::+ -- | 'cloudWatch'+ CloudWatchLogGroupLogDestination ->+ TextLogDestination+newTextLogDestination pCloudWatch_ =+ TextLogDestination' {cloudWatch = pCloudWatch_}++-- | Defines the Amazon CloudWatch Logs log group where text and metadata+-- logs are delivered.+textLogDestination_cloudWatch :: Lens.Lens' TextLogDestination CloudWatchLogGroupLogDestination+textLogDestination_cloudWatch = Lens.lens (\TextLogDestination' {cloudWatch} -> cloudWatch) (\s@TextLogDestination' {} a -> s {cloudWatch = a} :: TextLogDestination)++instance Data.FromJSON TextLogDestination where+ parseJSON =+ Data.withObject+ "TextLogDestination"+ ( \x ->+ TextLogDestination'+ Prelude.<$> (x Data..: "cloudWatch")+ )++instance Prelude.Hashable TextLogDestination where+ hashWithSalt _salt TextLogDestination' {..} =+ _salt `Prelude.hashWithSalt` cloudWatch++instance Prelude.NFData TextLogDestination where+ rnf TextLogDestination' {..} = Prelude.rnf cloudWatch++instance Data.ToJSON TextLogDestination where+ toJSON TextLogDestination' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("cloudWatch" Data..= cloudWatch)]+ )
+ gen/Amazonka/LexV2Models/Types/TextLogSetting.hs view
@@ -0,0 +1,97 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.TextLogSetting+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.TextLogSetting where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.TextLogDestination+import qualified Amazonka.Prelude as Prelude++-- | Defines settings to enable text conversation logs.+--+-- /See:/ 'newTextLogSetting' smart constructor.+data TextLogSetting = TextLogSetting'+ { -- | Determines whether conversation logs should be stored for an alias.+ enabled :: Prelude.Bool,+ destination :: TextLogDestination+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TextLogSetting' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'enabled', 'textLogSetting_enabled' - Determines whether conversation logs should be stored for an alias.+--+-- 'destination', 'textLogSetting_destination' - Undocumented member.+newTextLogSetting ::+ -- | 'enabled'+ Prelude.Bool ->+ -- | 'destination'+ TextLogDestination ->+ TextLogSetting+newTextLogSetting pEnabled_ pDestination_ =+ TextLogSetting'+ { enabled = pEnabled_,+ destination = pDestination_+ }++-- | Determines whether conversation logs should be stored for an alias.+textLogSetting_enabled :: Lens.Lens' TextLogSetting Prelude.Bool+textLogSetting_enabled = Lens.lens (\TextLogSetting' {enabled} -> enabled) (\s@TextLogSetting' {} a -> s {enabled = a} :: TextLogSetting)++-- | Undocumented member.+textLogSetting_destination :: Lens.Lens' TextLogSetting TextLogDestination+textLogSetting_destination = Lens.lens (\TextLogSetting' {destination} -> destination) (\s@TextLogSetting' {} a -> s {destination = a} :: TextLogSetting)++instance Data.FromJSON TextLogSetting where+ parseJSON =+ Data.withObject+ "TextLogSetting"+ ( \x ->+ TextLogSetting'+ Prelude.<$> (x Data..: "enabled")+ Prelude.<*> (x Data..: "destination")+ )++instance Prelude.Hashable TextLogSetting where+ hashWithSalt _salt TextLogSetting' {..} =+ _salt+ `Prelude.hashWithSalt` enabled+ `Prelude.hashWithSalt` destination++instance Prelude.NFData TextLogSetting where+ rnf TextLogSetting' {..} =+ Prelude.rnf enabled+ `Prelude.seq` Prelude.rnf destination++instance Data.ToJSON TextLogSetting where+ toJSON TextLogSetting' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("enabled" Data..= enabled),+ Prelude.Just ("destination" Data..= destination)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/TimeDimension.hs view
@@ -0,0 +1,76 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.TimeDimension+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.TimeDimension+ ( TimeDimension+ ( ..,+ TimeDimension_Days,+ TimeDimension_Hours,+ TimeDimension_Weeks+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype TimeDimension = TimeDimension'+ { fromTimeDimension ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern TimeDimension_Days :: TimeDimension+pattern TimeDimension_Days = TimeDimension' "Days"++pattern TimeDimension_Hours :: TimeDimension+pattern TimeDimension_Hours = TimeDimension' "Hours"++pattern TimeDimension_Weeks :: TimeDimension+pattern TimeDimension_Weeks = TimeDimension' "Weeks"++{-# COMPLETE+ TimeDimension_Days,+ TimeDimension_Hours,+ TimeDimension_Weeks,+ TimeDimension'+ #-}
+ gen/Amazonka/LexV2Models/Types/TranscriptFilter.hs view
@@ -0,0 +1,89 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.TranscriptFilter+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.TranscriptFilter where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.LexTranscriptFilter+import qualified Amazonka.Prelude as Prelude++-- | The object representing the filter that Amazon Lex will use to select+-- the appropriate transcript.+--+-- /See:/ 'newTranscriptFilter' smart constructor.+data TranscriptFilter = TranscriptFilter'+ { -- | The object representing the filter that Amazon Lex will use to select+ -- the appropriate transcript when the transcript format is the Amazon Lex+ -- format.+ lexTranscriptFilter :: Prelude.Maybe LexTranscriptFilter+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TranscriptFilter' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'lexTranscriptFilter', 'transcriptFilter_lexTranscriptFilter' - The object representing the filter that Amazon Lex will use to select+-- the appropriate transcript when the transcript format is the Amazon Lex+-- format.+newTranscriptFilter ::+ TranscriptFilter+newTranscriptFilter =+ TranscriptFilter'+ { lexTranscriptFilter =+ Prelude.Nothing+ }++-- | The object representing the filter that Amazon Lex will use to select+-- the appropriate transcript when the transcript format is the Amazon Lex+-- format.+transcriptFilter_lexTranscriptFilter :: Lens.Lens' TranscriptFilter (Prelude.Maybe LexTranscriptFilter)+transcriptFilter_lexTranscriptFilter = Lens.lens (\TranscriptFilter' {lexTranscriptFilter} -> lexTranscriptFilter) (\s@TranscriptFilter' {} a -> s {lexTranscriptFilter = a} :: TranscriptFilter)++instance Data.FromJSON TranscriptFilter where+ parseJSON =+ Data.withObject+ "TranscriptFilter"+ ( \x ->+ TranscriptFilter'+ Prelude.<$> (x Data..:? "lexTranscriptFilter")+ )++instance Prelude.Hashable TranscriptFilter where+ hashWithSalt _salt TranscriptFilter' {..} =+ _salt `Prelude.hashWithSalt` lexTranscriptFilter++instance Prelude.NFData TranscriptFilter where+ rnf TranscriptFilter' {..} =+ Prelude.rnf lexTranscriptFilter++instance Data.ToJSON TranscriptFilter where+ toJSON TranscriptFilter' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("lexTranscriptFilter" Data..=)+ Prelude.<$> lexTranscriptFilter+ ]+ )
+ gen/Amazonka/LexV2Models/Types/TranscriptFormat.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.TranscriptFormat+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.TranscriptFormat+ ( TranscriptFormat+ ( ..,+ TranscriptFormat_Lex+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype TranscriptFormat = TranscriptFormat'+ { fromTranscriptFormat ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern TranscriptFormat_Lex :: TranscriptFormat+pattern TranscriptFormat_Lex = TranscriptFormat' "Lex"++{-# COMPLETE+ TranscriptFormat_Lex,+ TranscriptFormat'+ #-}
+ gen/Amazonka/LexV2Models/Types/TranscriptSourceSetting.hs view
@@ -0,0 +1,86 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.TranscriptSourceSetting+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.TranscriptSourceSetting where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.S3BucketTranscriptSource+import qualified Amazonka.Prelude as Prelude++-- | Indicates the setting of the location where the transcript is stored.+--+-- /See:/ 'newTranscriptSourceSetting' smart constructor.+data TranscriptSourceSetting = TranscriptSourceSetting'+ { -- | Indicates the setting of the Amazon S3 bucket where the transcript is+ -- stored.+ s3BucketTranscriptSource :: Prelude.Maybe S3BucketTranscriptSource+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TranscriptSourceSetting' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 's3BucketTranscriptSource', 'transcriptSourceSetting_s3BucketTranscriptSource' - Indicates the setting of the Amazon S3 bucket where the transcript is+-- stored.+newTranscriptSourceSetting ::+ TranscriptSourceSetting+newTranscriptSourceSetting =+ TranscriptSourceSetting'+ { s3BucketTranscriptSource =+ Prelude.Nothing+ }++-- | Indicates the setting of the Amazon S3 bucket where the transcript is+-- stored.+transcriptSourceSetting_s3BucketTranscriptSource :: Lens.Lens' TranscriptSourceSetting (Prelude.Maybe S3BucketTranscriptSource)+transcriptSourceSetting_s3BucketTranscriptSource = Lens.lens (\TranscriptSourceSetting' {s3BucketTranscriptSource} -> s3BucketTranscriptSource) (\s@TranscriptSourceSetting' {} a -> s {s3BucketTranscriptSource = a} :: TranscriptSourceSetting)++instance Data.FromJSON TranscriptSourceSetting where+ parseJSON =+ Data.withObject+ "TranscriptSourceSetting"+ ( \x ->+ TranscriptSourceSetting'+ Prelude.<$> (x Data..:? "s3BucketTranscriptSource")+ )++instance Prelude.Hashable TranscriptSourceSetting where+ hashWithSalt _salt TranscriptSourceSetting' {..} =+ _salt+ `Prelude.hashWithSalt` s3BucketTranscriptSource++instance Prelude.NFData TranscriptSourceSetting where+ rnf TranscriptSourceSetting' {..} =+ Prelude.rnf s3BucketTranscriptSource++instance Data.ToJSON TranscriptSourceSetting where+ toJSON TranscriptSourceSetting' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("s3BucketTranscriptSource" Data..=)+ Prelude.<$> s3BucketTranscriptSource+ ]+ )
+ gen/Amazonka/LexV2Models/Types/UtteranceAggregationDuration.hs view
@@ -0,0 +1,92 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.UtteranceAggregationDuration+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.UtteranceAggregationDuration where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.RelativeAggregationDuration+import qualified Amazonka.Prelude as Prelude++-- | Provides parameters for setting the time window and duration for+-- aggregating utterance data.+--+-- /See:/ 'newUtteranceAggregationDuration' smart constructor.+data UtteranceAggregationDuration = UtteranceAggregationDuration'+ { -- | The desired time window for aggregating utterances.+ relativeAggregationDuration :: RelativeAggregationDuration+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UtteranceAggregationDuration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'relativeAggregationDuration', 'utteranceAggregationDuration_relativeAggregationDuration' - The desired time window for aggregating utterances.+newUtteranceAggregationDuration ::+ -- | 'relativeAggregationDuration'+ RelativeAggregationDuration ->+ UtteranceAggregationDuration+newUtteranceAggregationDuration+ pRelativeAggregationDuration_ =+ UtteranceAggregationDuration'+ { relativeAggregationDuration =+ pRelativeAggregationDuration_+ }++-- | The desired time window for aggregating utterances.+utteranceAggregationDuration_relativeAggregationDuration :: Lens.Lens' UtteranceAggregationDuration RelativeAggregationDuration+utteranceAggregationDuration_relativeAggregationDuration = Lens.lens (\UtteranceAggregationDuration' {relativeAggregationDuration} -> relativeAggregationDuration) (\s@UtteranceAggregationDuration' {} a -> s {relativeAggregationDuration = a} :: UtteranceAggregationDuration)++instance Data.FromJSON UtteranceAggregationDuration where+ parseJSON =+ Data.withObject+ "UtteranceAggregationDuration"+ ( \x ->+ UtteranceAggregationDuration'+ Prelude.<$> (x Data..: "relativeAggregationDuration")+ )++instance+ Prelude.Hashable+ UtteranceAggregationDuration+ where+ hashWithSalt _salt UtteranceAggregationDuration' {..} =+ _salt+ `Prelude.hashWithSalt` relativeAggregationDuration++instance Prelude.NFData UtteranceAggregationDuration where+ rnf UtteranceAggregationDuration' {..} =+ Prelude.rnf relativeAggregationDuration++instance Data.ToJSON UtteranceAggregationDuration where+ toJSON UtteranceAggregationDuration' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ( "relativeAggregationDuration"+ Data..= relativeAggregationDuration+ )+ ]+ )
+ gen/Amazonka/LexV2Models/Types/VoiceEngine.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.VoiceEngine+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.VoiceEngine+ ( VoiceEngine+ ( ..,+ VoiceEngine_Neural,+ VoiceEngine_Standard+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype VoiceEngine = VoiceEngine'+ { fromVoiceEngine ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern VoiceEngine_Neural :: VoiceEngine+pattern VoiceEngine_Neural = VoiceEngine' "neural"++pattern VoiceEngine_Standard :: VoiceEngine+pattern VoiceEngine_Standard = VoiceEngine' "standard"++{-# COMPLETE+ VoiceEngine_Neural,+ VoiceEngine_Standard,+ VoiceEngine'+ #-}
+ gen/Amazonka/LexV2Models/Types/VoiceSettings.hs view
@@ -0,0 +1,112 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.VoiceSettings+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.VoiceSettings where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.VoiceEngine+import qualified Amazonka.Prelude as Prelude++-- | Defines settings for using an Amazon Polly voice to communicate with a+-- user.+--+-- /See:/ 'newVoiceSettings' smart constructor.+data VoiceSettings = VoiceSettings'+ { -- | Indicates the type of Amazon Polly voice that Amazon Lex should use for+ -- voice interaction with the user. For more information, see the+ -- <https://docs.aws.amazon.com/polly/latest/dg/API_SynthesizeSpeech.html#polly-SynthesizeSpeech-request-Engine engine parameter of the SynthesizeSpeech operation>+ -- in the /Amazon Polly developer guide/.+ --+ -- If you do not specify a value, the default is @standard@.+ engine :: Prelude.Maybe VoiceEngine,+ -- | The identifier of the Amazon Polly voice to use.+ voiceId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'VoiceSettings' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'engine', 'voiceSettings_engine' - Indicates the type of Amazon Polly voice that Amazon Lex should use for+-- voice interaction with the user. For more information, see the+-- <https://docs.aws.amazon.com/polly/latest/dg/API_SynthesizeSpeech.html#polly-SynthesizeSpeech-request-Engine engine parameter of the SynthesizeSpeech operation>+-- in the /Amazon Polly developer guide/.+--+-- If you do not specify a value, the default is @standard@.+--+-- 'voiceId', 'voiceSettings_voiceId' - The identifier of the Amazon Polly voice to use.+newVoiceSettings ::+ -- | 'voiceId'+ Prelude.Text ->+ VoiceSettings+newVoiceSettings pVoiceId_ =+ VoiceSettings'+ { engine = Prelude.Nothing,+ voiceId = pVoiceId_+ }++-- | Indicates the type of Amazon Polly voice that Amazon Lex should use for+-- voice interaction with the user. For more information, see the+-- <https://docs.aws.amazon.com/polly/latest/dg/API_SynthesizeSpeech.html#polly-SynthesizeSpeech-request-Engine engine parameter of the SynthesizeSpeech operation>+-- in the /Amazon Polly developer guide/.+--+-- If you do not specify a value, the default is @standard@.+voiceSettings_engine :: Lens.Lens' VoiceSettings (Prelude.Maybe VoiceEngine)+voiceSettings_engine = Lens.lens (\VoiceSettings' {engine} -> engine) (\s@VoiceSettings' {} a -> s {engine = a} :: VoiceSettings)++-- | The identifier of the Amazon Polly voice to use.+voiceSettings_voiceId :: Lens.Lens' VoiceSettings Prelude.Text+voiceSettings_voiceId = Lens.lens (\VoiceSettings' {voiceId} -> voiceId) (\s@VoiceSettings' {} a -> s {voiceId = a} :: VoiceSettings)++instance Data.FromJSON VoiceSettings where+ parseJSON =+ Data.withObject+ "VoiceSettings"+ ( \x ->+ VoiceSettings'+ Prelude.<$> (x Data..:? "engine")+ Prelude.<*> (x Data..: "voiceId")+ )++instance Prelude.Hashable VoiceSettings where+ hashWithSalt _salt VoiceSettings' {..} =+ _salt+ `Prelude.hashWithSalt` engine+ `Prelude.hashWithSalt` voiceId++instance Prelude.NFData VoiceSettings where+ rnf VoiceSettings' {..} =+ Prelude.rnf engine+ `Prelude.seq` Prelude.rnf voiceId++instance Data.ToJSON VoiceSettings where+ toJSON VoiceSettings' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("engine" Data..=) Prelude.<$> engine,+ Prelude.Just ("voiceId" Data..= voiceId)+ ]+ )
+ gen/Amazonka/LexV2Models/Types/WaitAndContinueSpecification.hs view
@@ -0,0 +1,150 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Types.WaitAndContinueSpecification+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Types.WaitAndContinueSpecification where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types.ResponseSpecification+import Amazonka.LexV2Models.Types.StillWaitingResponseSpecification+import qualified Amazonka.Prelude as Prelude++-- | Specifies the prompts that Amazon Lex uses while a bot is waiting for+-- customer input.+--+-- /See:/ 'newWaitAndContinueSpecification' smart constructor.+data WaitAndContinueSpecification = WaitAndContinueSpecification'+ { -- | Specifies whether the bot will wait for a user to respond. When this+ -- field is false, wait and continue responses for a slot aren\'t used. If+ -- the @active@ field isn\'t specified, the default is true.+ active :: Prelude.Maybe Prelude.Bool,+ -- | A response that Amazon Lex sends periodically to the user to indicate+ -- that the bot is still waiting for input from the user.+ stillWaitingResponse :: Prelude.Maybe StillWaitingResponseSpecification,+ -- | The response that Amazon Lex sends to indicate that the bot is waiting+ -- for the conversation to continue.+ waitingResponse :: ResponseSpecification,+ -- | The response that Amazon Lex sends to indicate that the bot is ready to+ -- continue the conversation.+ continueResponse :: ResponseSpecification+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'WaitAndContinueSpecification' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'active', 'waitAndContinueSpecification_active' - Specifies whether the bot will wait for a user to respond. When this+-- field is false, wait and continue responses for a slot aren\'t used. If+-- the @active@ field isn\'t specified, the default is true.+--+-- 'stillWaitingResponse', 'waitAndContinueSpecification_stillWaitingResponse' - A response that Amazon Lex sends periodically to the user to indicate+-- that the bot is still waiting for input from the user.+--+-- 'waitingResponse', 'waitAndContinueSpecification_waitingResponse' - The response that Amazon Lex sends to indicate that the bot is waiting+-- for the conversation to continue.+--+-- 'continueResponse', 'waitAndContinueSpecification_continueResponse' - The response that Amazon Lex sends to indicate that the bot is ready to+-- continue the conversation.+newWaitAndContinueSpecification ::+ -- | 'waitingResponse'+ ResponseSpecification ->+ -- | 'continueResponse'+ ResponseSpecification ->+ WaitAndContinueSpecification+newWaitAndContinueSpecification+ pWaitingResponse_+ pContinueResponse_ =+ WaitAndContinueSpecification'+ { active =+ Prelude.Nothing,+ stillWaitingResponse = Prelude.Nothing,+ waitingResponse = pWaitingResponse_,+ continueResponse = pContinueResponse_+ }++-- | Specifies whether the bot will wait for a user to respond. When this+-- field is false, wait and continue responses for a slot aren\'t used. If+-- the @active@ field isn\'t specified, the default is true.+waitAndContinueSpecification_active :: Lens.Lens' WaitAndContinueSpecification (Prelude.Maybe Prelude.Bool)+waitAndContinueSpecification_active = Lens.lens (\WaitAndContinueSpecification' {active} -> active) (\s@WaitAndContinueSpecification' {} a -> s {active = a} :: WaitAndContinueSpecification)++-- | A response that Amazon Lex sends periodically to the user to indicate+-- that the bot is still waiting for input from the user.+waitAndContinueSpecification_stillWaitingResponse :: Lens.Lens' WaitAndContinueSpecification (Prelude.Maybe StillWaitingResponseSpecification)+waitAndContinueSpecification_stillWaitingResponse = Lens.lens (\WaitAndContinueSpecification' {stillWaitingResponse} -> stillWaitingResponse) (\s@WaitAndContinueSpecification' {} a -> s {stillWaitingResponse = a} :: WaitAndContinueSpecification)++-- | The response that Amazon Lex sends to indicate that the bot is waiting+-- for the conversation to continue.+waitAndContinueSpecification_waitingResponse :: Lens.Lens' WaitAndContinueSpecification ResponseSpecification+waitAndContinueSpecification_waitingResponse = Lens.lens (\WaitAndContinueSpecification' {waitingResponse} -> waitingResponse) (\s@WaitAndContinueSpecification' {} a -> s {waitingResponse = a} :: WaitAndContinueSpecification)++-- | The response that Amazon Lex sends to indicate that the bot is ready to+-- continue the conversation.+waitAndContinueSpecification_continueResponse :: Lens.Lens' WaitAndContinueSpecification ResponseSpecification+waitAndContinueSpecification_continueResponse = Lens.lens (\WaitAndContinueSpecification' {continueResponse} -> continueResponse) (\s@WaitAndContinueSpecification' {} a -> s {continueResponse = a} :: WaitAndContinueSpecification)++instance Data.FromJSON WaitAndContinueSpecification where+ parseJSON =+ Data.withObject+ "WaitAndContinueSpecification"+ ( \x ->+ WaitAndContinueSpecification'+ Prelude.<$> (x Data..:? "active")+ Prelude.<*> (x Data..:? "stillWaitingResponse")+ Prelude.<*> (x Data..: "waitingResponse")+ Prelude.<*> (x Data..: "continueResponse")+ )++instance+ Prelude.Hashable+ WaitAndContinueSpecification+ where+ hashWithSalt _salt WaitAndContinueSpecification' {..} =+ _salt+ `Prelude.hashWithSalt` active+ `Prelude.hashWithSalt` stillWaitingResponse+ `Prelude.hashWithSalt` waitingResponse+ `Prelude.hashWithSalt` continueResponse++instance Prelude.NFData WaitAndContinueSpecification where+ rnf WaitAndContinueSpecification' {..} =+ Prelude.rnf active+ `Prelude.seq` Prelude.rnf stillWaitingResponse+ `Prelude.seq` Prelude.rnf waitingResponse+ `Prelude.seq` Prelude.rnf continueResponse++instance Data.ToJSON WaitAndContinueSpecification where+ toJSON WaitAndContinueSpecification' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("active" Data..=) Prelude.<$> active,+ ("stillWaitingResponse" Data..=)+ Prelude.<$> stillWaitingResponse,+ Prelude.Just+ ("waitingResponse" Data..= waitingResponse),+ Prelude.Just+ ("continueResponse" Data..= continueResponse)+ ]+ )
+ gen/Amazonka/LexV2Models/UntagResource.hs view
@@ -0,0 +1,164 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.UntagResource+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Removes tags from a bot, bot alias, or bot channel.+module Amazonka.LexV2Models.UntagResource+ ( -- * Creating a Request+ UntagResource (..),+ newUntagResource,++ -- * Request Lenses+ untagResource_resourceARN,+ untagResource_tagKeys,++ -- * Destructuring the Response+ UntagResourceResponse (..),+ newUntagResourceResponse,++ -- * Response Lenses+ untagResourceResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUntagResource' smart constructor.+data UntagResource = UntagResource'+ { -- | The Amazon Resource Name (ARN) of the resource to remove the tags from.+ resourceARN :: Prelude.Text,+ -- | A list of tag keys to remove from the resource. If a tag key does not+ -- exist on the resource, it is ignored.+ tagKeys :: [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UntagResource' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'resourceARN', 'untagResource_resourceARN' - The Amazon Resource Name (ARN) of the resource to remove the tags from.+--+-- 'tagKeys', 'untagResource_tagKeys' - A list of tag keys to remove from the resource. If a tag key does not+-- exist on the resource, it is ignored.+newUntagResource ::+ -- | 'resourceARN'+ Prelude.Text ->+ UntagResource+newUntagResource pResourceARN_ =+ UntagResource'+ { resourceARN = pResourceARN_,+ tagKeys = Prelude.mempty+ }++-- | The Amazon Resource Name (ARN) of the resource to remove the tags from.+untagResource_resourceARN :: Lens.Lens' UntagResource Prelude.Text+untagResource_resourceARN = Lens.lens (\UntagResource' {resourceARN} -> resourceARN) (\s@UntagResource' {} a -> s {resourceARN = a} :: UntagResource)++-- | A list of tag keys to remove from the resource. If a tag key does not+-- exist on the resource, it is ignored.+untagResource_tagKeys :: Lens.Lens' UntagResource [Prelude.Text]+untagResource_tagKeys = Lens.lens (\UntagResource' {tagKeys} -> tagKeys) (\s@UntagResource' {} a -> s {tagKeys = a} :: UntagResource) Prelude.. Lens.coerced++instance Core.AWSRequest UntagResource where+ type+ AWSResponse UntagResource =+ UntagResourceResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ UntagResourceResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UntagResource where+ hashWithSalt _salt UntagResource' {..} =+ _salt+ `Prelude.hashWithSalt` resourceARN+ `Prelude.hashWithSalt` tagKeys++instance Prelude.NFData UntagResource where+ rnf UntagResource' {..} =+ Prelude.rnf resourceARN+ `Prelude.seq` Prelude.rnf tagKeys++instance Data.ToHeaders UntagResource where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath UntagResource where+ toPath UntagResource' {..} =+ Prelude.mconcat ["/tags/", Data.toBS resourceARN]++instance Data.ToQuery UntagResource where+ toQuery UntagResource' {..} =+ Prelude.mconcat+ ["tagKeys" Data.=: Data.toQueryList "member" tagKeys]++-- | /See:/ 'newUntagResourceResponse' smart constructor.+data UntagResourceResponse = UntagResourceResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UntagResourceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'untagResourceResponse_httpStatus' - The response's http status code.+newUntagResourceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UntagResourceResponse+newUntagResourceResponse pHttpStatus_ =+ UntagResourceResponse' {httpStatus = pHttpStatus_}++-- | The response's http status code.+untagResourceResponse_httpStatus :: Lens.Lens' UntagResourceResponse Prelude.Int+untagResourceResponse_httpStatus = Lens.lens (\UntagResourceResponse' {httpStatus} -> httpStatus) (\s@UntagResourceResponse' {} a -> s {httpStatus = a} :: UntagResourceResponse)++instance Prelude.NFData UntagResourceResponse where+ rnf UntagResourceResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/UpdateBot.hs view
@@ -0,0 +1,394 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.UpdateBot+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Updates the configuration of an existing bot.+module Amazonka.LexV2Models.UpdateBot+ ( -- * Creating a Request+ UpdateBot (..),+ newUpdateBot,++ -- * Request Lenses+ updateBot_description,+ updateBot_botId,+ updateBot_botName,+ updateBot_roleArn,+ updateBot_dataPrivacy,+ updateBot_idleSessionTTLInSeconds,++ -- * Destructuring the Response+ UpdateBotResponse (..),+ newUpdateBotResponse,++ -- * Response Lenses+ updateBotResponse_botId,+ updateBotResponse_botName,+ updateBotResponse_botStatus,+ updateBotResponse_creationDateTime,+ updateBotResponse_dataPrivacy,+ updateBotResponse_description,+ updateBotResponse_idleSessionTTLInSeconds,+ updateBotResponse_lastUpdatedDateTime,+ updateBotResponse_roleArn,+ updateBotResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateBot' smart constructor.+data UpdateBot = UpdateBot'+ { -- | A description of the bot.+ description :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier of the bot to update. This identifier is returned+ -- by the+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/API_CreateBot.html CreateBot>+ -- operation.+ botId :: Prelude.Text,+ -- | The new name of the bot. The name must be unique in the account that+ -- creates the bot.+ botName :: Prelude.Text,+ -- | The Amazon Resource Name (ARN) of an IAM role that has permissions to+ -- access the bot.+ roleArn :: Prelude.Text,+ -- | Provides information on additional privacy protections Amazon Lex should+ -- use with the bot\'s data.+ dataPrivacy :: DataPrivacy,+ -- | The time, in seconds, that Amazon Lex should keep information about a+ -- user\'s conversation with the bot.+ --+ -- A user interaction remains active for the amount of time specified. If+ -- no conversation occurs during this time, the session expires and Amazon+ -- Lex deletes any data provided before the timeout.+ --+ -- You can specify between 60 (1 minute) and 86,400 (24 hours) seconds.+ idleSessionTTLInSeconds :: Prelude.Natural+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateBot' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'description', 'updateBot_description' - A description of the bot.+--+-- 'botId', 'updateBot_botId' - The unique identifier of the bot to update. This identifier is returned+-- by the+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_CreateBot.html CreateBot>+-- operation.+--+-- 'botName', 'updateBot_botName' - The new name of the bot. The name must be unique in the account that+-- creates the bot.+--+-- 'roleArn', 'updateBot_roleArn' - The Amazon Resource Name (ARN) of an IAM role that has permissions to+-- access the bot.+--+-- 'dataPrivacy', 'updateBot_dataPrivacy' - Provides information on additional privacy protections Amazon Lex should+-- use with the bot\'s data.+--+-- 'idleSessionTTLInSeconds', 'updateBot_idleSessionTTLInSeconds' - The time, in seconds, that Amazon Lex should keep information about a+-- user\'s conversation with the bot.+--+-- A user interaction remains active for the amount of time specified. If+-- no conversation occurs during this time, the session expires and Amazon+-- Lex deletes any data provided before the timeout.+--+-- You can specify between 60 (1 minute) and 86,400 (24 hours) seconds.+newUpdateBot ::+ -- | 'botId'+ Prelude.Text ->+ -- | 'botName'+ Prelude.Text ->+ -- | 'roleArn'+ Prelude.Text ->+ -- | 'dataPrivacy'+ DataPrivacy ->+ -- | 'idleSessionTTLInSeconds'+ Prelude.Natural ->+ UpdateBot+newUpdateBot+ pBotId_+ pBotName_+ pRoleArn_+ pDataPrivacy_+ pIdleSessionTTLInSeconds_ =+ UpdateBot'+ { description = Prelude.Nothing,+ botId = pBotId_,+ botName = pBotName_,+ roleArn = pRoleArn_,+ dataPrivacy = pDataPrivacy_,+ idleSessionTTLInSeconds = pIdleSessionTTLInSeconds_+ }++-- | A description of the bot.+updateBot_description :: Lens.Lens' UpdateBot (Prelude.Maybe Prelude.Text)+updateBot_description = Lens.lens (\UpdateBot' {description} -> description) (\s@UpdateBot' {} a -> s {description = a} :: UpdateBot)++-- | The unique identifier of the bot to update. This identifier is returned+-- by the+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_CreateBot.html CreateBot>+-- operation.+updateBot_botId :: Lens.Lens' UpdateBot Prelude.Text+updateBot_botId = Lens.lens (\UpdateBot' {botId} -> botId) (\s@UpdateBot' {} a -> s {botId = a} :: UpdateBot)++-- | The new name of the bot. The name must be unique in the account that+-- creates the bot.+updateBot_botName :: Lens.Lens' UpdateBot Prelude.Text+updateBot_botName = Lens.lens (\UpdateBot' {botName} -> botName) (\s@UpdateBot' {} a -> s {botName = a} :: UpdateBot)++-- | The Amazon Resource Name (ARN) of an IAM role that has permissions to+-- access the bot.+updateBot_roleArn :: Lens.Lens' UpdateBot Prelude.Text+updateBot_roleArn = Lens.lens (\UpdateBot' {roleArn} -> roleArn) (\s@UpdateBot' {} a -> s {roleArn = a} :: UpdateBot)++-- | Provides information on additional privacy protections Amazon Lex should+-- use with the bot\'s data.+updateBot_dataPrivacy :: Lens.Lens' UpdateBot DataPrivacy+updateBot_dataPrivacy = Lens.lens (\UpdateBot' {dataPrivacy} -> dataPrivacy) (\s@UpdateBot' {} a -> s {dataPrivacy = a} :: UpdateBot)++-- | The time, in seconds, that Amazon Lex should keep information about a+-- user\'s conversation with the bot.+--+-- A user interaction remains active for the amount of time specified. If+-- no conversation occurs during this time, the session expires and Amazon+-- Lex deletes any data provided before the timeout.+--+-- You can specify between 60 (1 minute) and 86,400 (24 hours) seconds.+updateBot_idleSessionTTLInSeconds :: Lens.Lens' UpdateBot Prelude.Natural+updateBot_idleSessionTTLInSeconds = Lens.lens (\UpdateBot' {idleSessionTTLInSeconds} -> idleSessionTTLInSeconds) (\s@UpdateBot' {} a -> s {idleSessionTTLInSeconds = a} :: UpdateBot)++instance Core.AWSRequest UpdateBot where+ type AWSResponse UpdateBot = UpdateBotResponse+ request overrides =+ Request.putJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdateBotResponse'+ Prelude.<$> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botName")+ Prelude.<*> (x Data..?> "botStatus")+ Prelude.<*> (x Data..?> "creationDateTime")+ Prelude.<*> (x Data..?> "dataPrivacy")+ Prelude.<*> (x Data..?> "description")+ Prelude.<*> (x Data..?> "idleSessionTTLInSeconds")+ Prelude.<*> (x Data..?> "lastUpdatedDateTime")+ Prelude.<*> (x Data..?> "roleArn")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UpdateBot where+ hashWithSalt _salt UpdateBot' {..} =+ _salt+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botName+ `Prelude.hashWithSalt` roleArn+ `Prelude.hashWithSalt` dataPrivacy+ `Prelude.hashWithSalt` idleSessionTTLInSeconds++instance Prelude.NFData UpdateBot where+ rnf UpdateBot' {..} =+ Prelude.rnf description+ `Prelude.seq` Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botName+ `Prelude.seq` Prelude.rnf roleArn+ `Prelude.seq` Prelude.rnf dataPrivacy+ `Prelude.seq` Prelude.rnf idleSessionTTLInSeconds++instance Data.ToHeaders UpdateBot where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdateBot where+ toJSON UpdateBot' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("description" Data..=) Prelude.<$> description,+ Prelude.Just ("botName" Data..= botName),+ Prelude.Just ("roleArn" Data..= roleArn),+ Prelude.Just ("dataPrivacy" Data..= dataPrivacy),+ Prelude.Just+ ( "idleSessionTTLInSeconds"+ Data..= idleSessionTTLInSeconds+ )+ ]+ )++instance Data.ToPath UpdateBot where+ toPath UpdateBot' {..} =+ Prelude.mconcat ["/bots/", Data.toBS botId, "/"]++instance Data.ToQuery UpdateBot where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUpdateBotResponse' smart constructor.+data UpdateBotResponse = UpdateBotResponse'+ { -- | The unique identifier of the bot that was updated.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The name of the bot after the update.+ botName :: Prelude.Maybe Prelude.Text,+ -- | Shows the current status of the bot. The bot is first in the @Creating@+ -- status. Once the bot is read for use, it changes to the @Available@+ -- status. After the bot is created, you can use the @DRAFT@ version of the+ -- bot.+ botStatus :: Prelude.Maybe BotStatus,+ -- | A timestamp of the date and time that the bot was created.+ creationDateTime :: Prelude.Maybe Data.POSIX,+ -- | The data privacy settings for the bot after the update.+ dataPrivacy :: Prelude.Maybe DataPrivacy,+ -- | The description of the bot after the update.+ description :: Prelude.Maybe Prelude.Text,+ -- | The session timeout, in seconds, for the bot after the update.+ idleSessionTTLInSeconds :: Prelude.Maybe Prelude.Natural,+ -- | A timestamp of the date and time that the bot was last updated.+ lastUpdatedDateTime :: Prelude.Maybe Data.POSIX,+ -- | The Amazon Resource Name (ARN) of the IAM role used by the bot after the+ -- update.+ roleArn :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateBotResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'updateBotResponse_botId' - The unique identifier of the bot that was updated.+--+-- 'botName', 'updateBotResponse_botName' - The name of the bot after the update.+--+-- 'botStatus', 'updateBotResponse_botStatus' - Shows the current status of the bot. The bot is first in the @Creating@+-- status. Once the bot is read for use, it changes to the @Available@+-- status. After the bot is created, you can use the @DRAFT@ version of the+-- bot.+--+-- 'creationDateTime', 'updateBotResponse_creationDateTime' - A timestamp of the date and time that the bot was created.+--+-- 'dataPrivacy', 'updateBotResponse_dataPrivacy' - The data privacy settings for the bot after the update.+--+-- 'description', 'updateBotResponse_description' - The description of the bot after the update.+--+-- 'idleSessionTTLInSeconds', 'updateBotResponse_idleSessionTTLInSeconds' - The session timeout, in seconds, for the bot after the update.+--+-- 'lastUpdatedDateTime', 'updateBotResponse_lastUpdatedDateTime' - A timestamp of the date and time that the bot was last updated.+--+-- 'roleArn', 'updateBotResponse_roleArn' - The Amazon Resource Name (ARN) of the IAM role used by the bot after the+-- update.+--+-- 'httpStatus', 'updateBotResponse_httpStatus' - The response's http status code.+newUpdateBotResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UpdateBotResponse+newUpdateBotResponse pHttpStatus_ =+ UpdateBotResponse'+ { botId = Prelude.Nothing,+ botName = Prelude.Nothing,+ botStatus = Prelude.Nothing,+ creationDateTime = Prelude.Nothing,+ dataPrivacy = Prelude.Nothing,+ description = Prelude.Nothing,+ idleSessionTTLInSeconds = Prelude.Nothing,+ lastUpdatedDateTime = Prelude.Nothing,+ roleArn = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The unique identifier of the bot that was updated.+updateBotResponse_botId :: Lens.Lens' UpdateBotResponse (Prelude.Maybe Prelude.Text)+updateBotResponse_botId = Lens.lens (\UpdateBotResponse' {botId} -> botId) (\s@UpdateBotResponse' {} a -> s {botId = a} :: UpdateBotResponse)++-- | The name of the bot after the update.+updateBotResponse_botName :: Lens.Lens' UpdateBotResponse (Prelude.Maybe Prelude.Text)+updateBotResponse_botName = Lens.lens (\UpdateBotResponse' {botName} -> botName) (\s@UpdateBotResponse' {} a -> s {botName = a} :: UpdateBotResponse)++-- | Shows the current status of the bot. The bot is first in the @Creating@+-- status. Once the bot is read for use, it changes to the @Available@+-- status. After the bot is created, you can use the @DRAFT@ version of the+-- bot.+updateBotResponse_botStatus :: Lens.Lens' UpdateBotResponse (Prelude.Maybe BotStatus)+updateBotResponse_botStatus = Lens.lens (\UpdateBotResponse' {botStatus} -> botStatus) (\s@UpdateBotResponse' {} a -> s {botStatus = a} :: UpdateBotResponse)++-- | A timestamp of the date and time that the bot was created.+updateBotResponse_creationDateTime :: Lens.Lens' UpdateBotResponse (Prelude.Maybe Prelude.UTCTime)+updateBotResponse_creationDateTime = Lens.lens (\UpdateBotResponse' {creationDateTime} -> creationDateTime) (\s@UpdateBotResponse' {} a -> s {creationDateTime = a} :: UpdateBotResponse) Prelude.. Lens.mapping Data._Time++-- | The data privacy settings for the bot after the update.+updateBotResponse_dataPrivacy :: Lens.Lens' UpdateBotResponse (Prelude.Maybe DataPrivacy)+updateBotResponse_dataPrivacy = Lens.lens (\UpdateBotResponse' {dataPrivacy} -> dataPrivacy) (\s@UpdateBotResponse' {} a -> s {dataPrivacy = a} :: UpdateBotResponse)++-- | The description of the bot after the update.+updateBotResponse_description :: Lens.Lens' UpdateBotResponse (Prelude.Maybe Prelude.Text)+updateBotResponse_description = Lens.lens (\UpdateBotResponse' {description} -> description) (\s@UpdateBotResponse' {} a -> s {description = a} :: UpdateBotResponse)++-- | The session timeout, in seconds, for the bot after the update.+updateBotResponse_idleSessionTTLInSeconds :: Lens.Lens' UpdateBotResponse (Prelude.Maybe Prelude.Natural)+updateBotResponse_idleSessionTTLInSeconds = Lens.lens (\UpdateBotResponse' {idleSessionTTLInSeconds} -> idleSessionTTLInSeconds) (\s@UpdateBotResponse' {} a -> s {idleSessionTTLInSeconds = a} :: UpdateBotResponse)++-- | A timestamp of the date and time that the bot was last updated.+updateBotResponse_lastUpdatedDateTime :: Lens.Lens' UpdateBotResponse (Prelude.Maybe Prelude.UTCTime)+updateBotResponse_lastUpdatedDateTime = Lens.lens (\UpdateBotResponse' {lastUpdatedDateTime} -> lastUpdatedDateTime) (\s@UpdateBotResponse' {} a -> s {lastUpdatedDateTime = a} :: UpdateBotResponse) Prelude.. Lens.mapping Data._Time++-- | The Amazon Resource Name (ARN) of the IAM role used by the bot after the+-- update.+updateBotResponse_roleArn :: Lens.Lens' UpdateBotResponse (Prelude.Maybe Prelude.Text)+updateBotResponse_roleArn = Lens.lens (\UpdateBotResponse' {roleArn} -> roleArn) (\s@UpdateBotResponse' {} a -> s {roleArn = a} :: UpdateBotResponse)++-- | The response's http status code.+updateBotResponse_httpStatus :: Lens.Lens' UpdateBotResponse Prelude.Int+updateBotResponse_httpStatus = Lens.lens (\UpdateBotResponse' {httpStatus} -> httpStatus) (\s@UpdateBotResponse' {} a -> s {httpStatus = a} :: UpdateBotResponse)++instance Prelude.NFData UpdateBotResponse where+ rnf UpdateBotResponse' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botName+ `Prelude.seq` Prelude.rnf botStatus+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf dataPrivacy+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf idleSessionTTLInSeconds+ `Prelude.seq` Prelude.rnf lastUpdatedDateTime+ `Prelude.seq` Prelude.rnf roleArn+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/UpdateBotAlias.hs view
@@ -0,0 +1,403 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.UpdateBotAlias+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Updates the configuration of an existing bot alias.+module Amazonka.LexV2Models.UpdateBotAlias+ ( -- * Creating a Request+ UpdateBotAlias (..),+ newUpdateBotAlias,++ -- * Request Lenses+ updateBotAlias_botAliasLocaleSettings,+ updateBotAlias_botVersion,+ updateBotAlias_conversationLogSettings,+ updateBotAlias_description,+ updateBotAlias_sentimentAnalysisSettings,+ updateBotAlias_botAliasId,+ updateBotAlias_botAliasName,+ updateBotAlias_botId,++ -- * Destructuring the Response+ UpdateBotAliasResponse (..),+ newUpdateBotAliasResponse,++ -- * Response Lenses+ updateBotAliasResponse_botAliasId,+ updateBotAliasResponse_botAliasLocaleSettings,+ updateBotAliasResponse_botAliasName,+ updateBotAliasResponse_botAliasStatus,+ updateBotAliasResponse_botId,+ updateBotAliasResponse_botVersion,+ updateBotAliasResponse_conversationLogSettings,+ updateBotAliasResponse_creationDateTime,+ updateBotAliasResponse_description,+ updateBotAliasResponse_lastUpdatedDateTime,+ updateBotAliasResponse_sentimentAnalysisSettings,+ updateBotAliasResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateBotAlias' smart constructor.+data UpdateBotAlias = UpdateBotAlias'+ { -- | The new Lambda functions to use in each locale for the bot alias.+ botAliasLocaleSettings :: Prelude.Maybe (Prelude.HashMap Prelude.Text BotAliasLocaleSettings),+ -- | The new bot version to assign to the bot alias.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | The new settings for storing conversation logs in Amazon CloudWatch Logs+ -- and Amazon S3 buckets.+ conversationLogSettings :: Prelude.Maybe ConversationLogSettings,+ -- | The new description to assign to the bot alias.+ description :: Prelude.Maybe Prelude.Text,+ sentimentAnalysisSettings :: Prelude.Maybe SentimentAnalysisSettings,+ -- | The unique identifier of the bot alias.+ botAliasId :: Prelude.Text,+ -- | The new name to assign to the bot alias.+ botAliasName :: Prelude.Text,+ -- | The identifier of the bot with the updated alias.+ botId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateBotAlias' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botAliasLocaleSettings', 'updateBotAlias_botAliasLocaleSettings' - The new Lambda functions to use in each locale for the bot alias.+--+-- 'botVersion', 'updateBotAlias_botVersion' - The new bot version to assign to the bot alias.+--+-- 'conversationLogSettings', 'updateBotAlias_conversationLogSettings' - The new settings for storing conversation logs in Amazon CloudWatch Logs+-- and Amazon S3 buckets.+--+-- 'description', 'updateBotAlias_description' - The new description to assign to the bot alias.+--+-- 'sentimentAnalysisSettings', 'updateBotAlias_sentimentAnalysisSettings' - Undocumented member.+--+-- 'botAliasId', 'updateBotAlias_botAliasId' - The unique identifier of the bot alias.+--+-- 'botAliasName', 'updateBotAlias_botAliasName' - The new name to assign to the bot alias.+--+-- 'botId', 'updateBotAlias_botId' - The identifier of the bot with the updated alias.+newUpdateBotAlias ::+ -- | 'botAliasId'+ Prelude.Text ->+ -- | 'botAliasName'+ Prelude.Text ->+ -- | 'botId'+ Prelude.Text ->+ UpdateBotAlias+newUpdateBotAlias pBotAliasId_ pBotAliasName_ pBotId_ =+ UpdateBotAlias'+ { botAliasLocaleSettings =+ Prelude.Nothing,+ botVersion = Prelude.Nothing,+ conversationLogSettings = Prelude.Nothing,+ description = Prelude.Nothing,+ sentimentAnalysisSettings = Prelude.Nothing,+ botAliasId = pBotAliasId_,+ botAliasName = pBotAliasName_,+ botId = pBotId_+ }++-- | The new Lambda functions to use in each locale for the bot alias.+updateBotAlias_botAliasLocaleSettings :: Lens.Lens' UpdateBotAlias (Prelude.Maybe (Prelude.HashMap Prelude.Text BotAliasLocaleSettings))+updateBotAlias_botAliasLocaleSettings = Lens.lens (\UpdateBotAlias' {botAliasLocaleSettings} -> botAliasLocaleSettings) (\s@UpdateBotAlias' {} a -> s {botAliasLocaleSettings = a} :: UpdateBotAlias) Prelude.. Lens.mapping Lens.coerced++-- | The new bot version to assign to the bot alias.+updateBotAlias_botVersion :: Lens.Lens' UpdateBotAlias (Prelude.Maybe Prelude.Text)+updateBotAlias_botVersion = Lens.lens (\UpdateBotAlias' {botVersion} -> botVersion) (\s@UpdateBotAlias' {} a -> s {botVersion = a} :: UpdateBotAlias)++-- | The new settings for storing conversation logs in Amazon CloudWatch Logs+-- and Amazon S3 buckets.+updateBotAlias_conversationLogSettings :: Lens.Lens' UpdateBotAlias (Prelude.Maybe ConversationLogSettings)+updateBotAlias_conversationLogSettings = Lens.lens (\UpdateBotAlias' {conversationLogSettings} -> conversationLogSettings) (\s@UpdateBotAlias' {} a -> s {conversationLogSettings = a} :: UpdateBotAlias)++-- | The new description to assign to the bot alias.+updateBotAlias_description :: Lens.Lens' UpdateBotAlias (Prelude.Maybe Prelude.Text)+updateBotAlias_description = Lens.lens (\UpdateBotAlias' {description} -> description) (\s@UpdateBotAlias' {} a -> s {description = a} :: UpdateBotAlias)++-- | Undocumented member.+updateBotAlias_sentimentAnalysisSettings :: Lens.Lens' UpdateBotAlias (Prelude.Maybe SentimentAnalysisSettings)+updateBotAlias_sentimentAnalysisSettings = Lens.lens (\UpdateBotAlias' {sentimentAnalysisSettings} -> sentimentAnalysisSettings) (\s@UpdateBotAlias' {} a -> s {sentimentAnalysisSettings = a} :: UpdateBotAlias)++-- | The unique identifier of the bot alias.+updateBotAlias_botAliasId :: Lens.Lens' UpdateBotAlias Prelude.Text+updateBotAlias_botAliasId = Lens.lens (\UpdateBotAlias' {botAliasId} -> botAliasId) (\s@UpdateBotAlias' {} a -> s {botAliasId = a} :: UpdateBotAlias)++-- | The new name to assign to the bot alias.+updateBotAlias_botAliasName :: Lens.Lens' UpdateBotAlias Prelude.Text+updateBotAlias_botAliasName = Lens.lens (\UpdateBotAlias' {botAliasName} -> botAliasName) (\s@UpdateBotAlias' {} a -> s {botAliasName = a} :: UpdateBotAlias)++-- | The identifier of the bot with the updated alias.+updateBotAlias_botId :: Lens.Lens' UpdateBotAlias Prelude.Text+updateBotAlias_botId = Lens.lens (\UpdateBotAlias' {botId} -> botId) (\s@UpdateBotAlias' {} a -> s {botId = a} :: UpdateBotAlias)++instance Core.AWSRequest UpdateBotAlias where+ type+ AWSResponse UpdateBotAlias =+ UpdateBotAliasResponse+ request overrides =+ Request.putJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdateBotAliasResponse'+ Prelude.<$> (x Data..?> "botAliasId")+ Prelude.<*> ( x+ Data..?> "botAliasLocaleSettings"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "botAliasName")+ Prelude.<*> (x Data..?> "botAliasStatus")+ Prelude.<*> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botVersion")+ Prelude.<*> (x Data..?> "conversationLogSettings")+ Prelude.<*> (x Data..?> "creationDateTime")+ Prelude.<*> (x Data..?> "description")+ Prelude.<*> (x Data..?> "lastUpdatedDateTime")+ Prelude.<*> (x Data..?> "sentimentAnalysisSettings")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UpdateBotAlias where+ hashWithSalt _salt UpdateBotAlias' {..} =+ _salt+ `Prelude.hashWithSalt` botAliasLocaleSettings+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` conversationLogSettings+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` sentimentAnalysisSettings+ `Prelude.hashWithSalt` botAliasId+ `Prelude.hashWithSalt` botAliasName+ `Prelude.hashWithSalt` botId++instance Prelude.NFData UpdateBotAlias where+ rnf UpdateBotAlias' {..} =+ Prelude.rnf botAliasLocaleSettings+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf conversationLogSettings+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf sentimentAnalysisSettings+ `Prelude.seq` Prelude.rnf botAliasId+ `Prelude.seq` Prelude.rnf botAliasName+ `Prelude.seq` Prelude.rnf botId++instance Data.ToHeaders UpdateBotAlias where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdateBotAlias where+ toJSON UpdateBotAlias' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("botAliasLocaleSettings" Data..=)+ Prelude.<$> botAliasLocaleSettings,+ ("botVersion" Data..=) Prelude.<$> botVersion,+ ("conversationLogSettings" Data..=)+ Prelude.<$> conversationLogSettings,+ ("description" Data..=) Prelude.<$> description,+ ("sentimentAnalysisSettings" Data..=)+ Prelude.<$> sentimentAnalysisSettings,+ Prelude.Just ("botAliasName" Data..= botAliasName)+ ]+ )++instance Data.ToPath UpdateBotAlias where+ toPath UpdateBotAlias' {..} =+ Prelude.mconcat+ [ "/bots/",+ Data.toBS botId,+ "/botaliases/",+ Data.toBS botAliasId,+ "/"+ ]++instance Data.ToQuery UpdateBotAlias where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUpdateBotAliasResponse' smart constructor.+data UpdateBotAliasResponse = UpdateBotAliasResponse'+ { -- | The identifier of the updated bot alias.+ botAliasId :: Prelude.Maybe Prelude.Text,+ -- | The updated Lambda functions to use in each locale for the bot alias.+ botAliasLocaleSettings :: Prelude.Maybe (Prelude.HashMap Prelude.Text BotAliasLocaleSettings),+ -- | The updated name of the bot alias.+ botAliasName :: Prelude.Maybe Prelude.Text,+ -- | The current status of the bot alias. When the status is @Available@ the+ -- alias is ready for use.+ botAliasStatus :: Prelude.Maybe BotAliasStatus,+ -- | The identifier of the bot with the updated alias.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The updated version of the bot that the alias points to.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | The updated settings for storing conversation logs in Amazon CloudWatch+ -- Logs and Amazon S3 buckets.+ conversationLogSettings :: Prelude.Maybe ConversationLogSettings,+ -- | A timestamp of the date and time that the bot was created.+ creationDateTime :: Prelude.Maybe Data.POSIX,+ -- | The updated description of the bot alias.+ description :: Prelude.Maybe Prelude.Text,+ -- | A timestamp of the date and time that the bot was last updated.+ lastUpdatedDateTime :: Prelude.Maybe Data.POSIX,+ sentimentAnalysisSettings :: Prelude.Maybe SentimentAnalysisSettings,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateBotAliasResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botAliasId', 'updateBotAliasResponse_botAliasId' - The identifier of the updated bot alias.+--+-- 'botAliasLocaleSettings', 'updateBotAliasResponse_botAliasLocaleSettings' - The updated Lambda functions to use in each locale for the bot alias.+--+-- 'botAliasName', 'updateBotAliasResponse_botAliasName' - The updated name of the bot alias.+--+-- 'botAliasStatus', 'updateBotAliasResponse_botAliasStatus' - The current status of the bot alias. When the status is @Available@ the+-- alias is ready for use.+--+-- 'botId', 'updateBotAliasResponse_botId' - The identifier of the bot with the updated alias.+--+-- 'botVersion', 'updateBotAliasResponse_botVersion' - The updated version of the bot that the alias points to.+--+-- 'conversationLogSettings', 'updateBotAliasResponse_conversationLogSettings' - The updated settings for storing conversation logs in Amazon CloudWatch+-- Logs and Amazon S3 buckets.+--+-- 'creationDateTime', 'updateBotAliasResponse_creationDateTime' - A timestamp of the date and time that the bot was created.+--+-- 'description', 'updateBotAliasResponse_description' - The updated description of the bot alias.+--+-- 'lastUpdatedDateTime', 'updateBotAliasResponse_lastUpdatedDateTime' - A timestamp of the date and time that the bot was last updated.+--+-- 'sentimentAnalysisSettings', 'updateBotAliasResponse_sentimentAnalysisSettings' - Undocumented member.+--+-- 'httpStatus', 'updateBotAliasResponse_httpStatus' - The response's http status code.+newUpdateBotAliasResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UpdateBotAliasResponse+newUpdateBotAliasResponse pHttpStatus_ =+ UpdateBotAliasResponse'+ { botAliasId =+ Prelude.Nothing,+ botAliasLocaleSettings = Prelude.Nothing,+ botAliasName = Prelude.Nothing,+ botAliasStatus = Prelude.Nothing,+ botId = Prelude.Nothing,+ botVersion = Prelude.Nothing,+ conversationLogSettings = Prelude.Nothing,+ creationDateTime = Prelude.Nothing,+ description = Prelude.Nothing,+ lastUpdatedDateTime = Prelude.Nothing,+ sentimentAnalysisSettings = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The identifier of the updated bot alias.+updateBotAliasResponse_botAliasId :: Lens.Lens' UpdateBotAliasResponse (Prelude.Maybe Prelude.Text)+updateBotAliasResponse_botAliasId = Lens.lens (\UpdateBotAliasResponse' {botAliasId} -> botAliasId) (\s@UpdateBotAliasResponse' {} a -> s {botAliasId = a} :: UpdateBotAliasResponse)++-- | The updated Lambda functions to use in each locale for the bot alias.+updateBotAliasResponse_botAliasLocaleSettings :: Lens.Lens' UpdateBotAliasResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text BotAliasLocaleSettings))+updateBotAliasResponse_botAliasLocaleSettings = Lens.lens (\UpdateBotAliasResponse' {botAliasLocaleSettings} -> botAliasLocaleSettings) (\s@UpdateBotAliasResponse' {} a -> s {botAliasLocaleSettings = a} :: UpdateBotAliasResponse) Prelude.. Lens.mapping Lens.coerced++-- | The updated name of the bot alias.+updateBotAliasResponse_botAliasName :: Lens.Lens' UpdateBotAliasResponse (Prelude.Maybe Prelude.Text)+updateBotAliasResponse_botAliasName = Lens.lens (\UpdateBotAliasResponse' {botAliasName} -> botAliasName) (\s@UpdateBotAliasResponse' {} a -> s {botAliasName = a} :: UpdateBotAliasResponse)++-- | The current status of the bot alias. When the status is @Available@ the+-- alias is ready for use.+updateBotAliasResponse_botAliasStatus :: Lens.Lens' UpdateBotAliasResponse (Prelude.Maybe BotAliasStatus)+updateBotAliasResponse_botAliasStatus = Lens.lens (\UpdateBotAliasResponse' {botAliasStatus} -> botAliasStatus) (\s@UpdateBotAliasResponse' {} a -> s {botAliasStatus = a} :: UpdateBotAliasResponse)++-- | The identifier of the bot with the updated alias.+updateBotAliasResponse_botId :: Lens.Lens' UpdateBotAliasResponse (Prelude.Maybe Prelude.Text)+updateBotAliasResponse_botId = Lens.lens (\UpdateBotAliasResponse' {botId} -> botId) (\s@UpdateBotAliasResponse' {} a -> s {botId = a} :: UpdateBotAliasResponse)++-- | The updated version of the bot that the alias points to.+updateBotAliasResponse_botVersion :: Lens.Lens' UpdateBotAliasResponse (Prelude.Maybe Prelude.Text)+updateBotAliasResponse_botVersion = Lens.lens (\UpdateBotAliasResponse' {botVersion} -> botVersion) (\s@UpdateBotAliasResponse' {} a -> s {botVersion = a} :: UpdateBotAliasResponse)++-- | The updated settings for storing conversation logs in Amazon CloudWatch+-- Logs and Amazon S3 buckets.+updateBotAliasResponse_conversationLogSettings :: Lens.Lens' UpdateBotAliasResponse (Prelude.Maybe ConversationLogSettings)+updateBotAliasResponse_conversationLogSettings = Lens.lens (\UpdateBotAliasResponse' {conversationLogSettings} -> conversationLogSettings) (\s@UpdateBotAliasResponse' {} a -> s {conversationLogSettings = a} :: UpdateBotAliasResponse)++-- | A timestamp of the date and time that the bot was created.+updateBotAliasResponse_creationDateTime :: Lens.Lens' UpdateBotAliasResponse (Prelude.Maybe Prelude.UTCTime)+updateBotAliasResponse_creationDateTime = Lens.lens (\UpdateBotAliasResponse' {creationDateTime} -> creationDateTime) (\s@UpdateBotAliasResponse' {} a -> s {creationDateTime = a} :: UpdateBotAliasResponse) Prelude.. Lens.mapping Data._Time++-- | The updated description of the bot alias.+updateBotAliasResponse_description :: Lens.Lens' UpdateBotAliasResponse (Prelude.Maybe Prelude.Text)+updateBotAliasResponse_description = Lens.lens (\UpdateBotAliasResponse' {description} -> description) (\s@UpdateBotAliasResponse' {} a -> s {description = a} :: UpdateBotAliasResponse)++-- | A timestamp of the date and time that the bot was last updated.+updateBotAliasResponse_lastUpdatedDateTime :: Lens.Lens' UpdateBotAliasResponse (Prelude.Maybe Prelude.UTCTime)+updateBotAliasResponse_lastUpdatedDateTime = Lens.lens (\UpdateBotAliasResponse' {lastUpdatedDateTime} -> lastUpdatedDateTime) (\s@UpdateBotAliasResponse' {} a -> s {lastUpdatedDateTime = a} :: UpdateBotAliasResponse) Prelude.. Lens.mapping Data._Time++-- | Undocumented member.+updateBotAliasResponse_sentimentAnalysisSettings :: Lens.Lens' UpdateBotAliasResponse (Prelude.Maybe SentimentAnalysisSettings)+updateBotAliasResponse_sentimentAnalysisSettings = Lens.lens (\UpdateBotAliasResponse' {sentimentAnalysisSettings} -> sentimentAnalysisSettings) (\s@UpdateBotAliasResponse' {} a -> s {sentimentAnalysisSettings = a} :: UpdateBotAliasResponse)++-- | The response's http status code.+updateBotAliasResponse_httpStatus :: Lens.Lens' UpdateBotAliasResponse Prelude.Int+updateBotAliasResponse_httpStatus = Lens.lens (\UpdateBotAliasResponse' {httpStatus} -> httpStatus) (\s@UpdateBotAliasResponse' {} a -> s {httpStatus = a} :: UpdateBotAliasResponse)++instance Prelude.NFData UpdateBotAliasResponse where+ rnf UpdateBotAliasResponse' {..} =+ Prelude.rnf botAliasId+ `Prelude.seq` Prelude.rnf botAliasLocaleSettings+ `Prelude.seq` Prelude.rnf botAliasName+ `Prelude.seq` Prelude.rnf botAliasStatus+ `Prelude.seq` Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf conversationLogSettings+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf lastUpdatedDateTime+ `Prelude.seq` Prelude.rnf sentimentAnalysisSettings+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/UpdateBotLocale.hs view
@@ -0,0 +1,424 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.UpdateBotLocale+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Updates the settings that a bot has for a specific locale.+module Amazonka.LexV2Models.UpdateBotLocale+ ( -- * Creating a Request+ UpdateBotLocale (..),+ newUpdateBotLocale,++ -- * Request Lenses+ updateBotLocale_description,+ updateBotLocale_voiceSettings,+ updateBotLocale_botId,+ updateBotLocale_botVersion,+ updateBotLocale_localeId,+ updateBotLocale_nluIntentConfidenceThreshold,++ -- * Destructuring the Response+ UpdateBotLocaleResponse (..),+ newUpdateBotLocaleResponse,++ -- * Response Lenses+ updateBotLocaleResponse_botId,+ updateBotLocaleResponse_botLocaleStatus,+ updateBotLocaleResponse_botVersion,+ updateBotLocaleResponse_creationDateTime,+ updateBotLocaleResponse_description,+ updateBotLocaleResponse_failureReasons,+ updateBotLocaleResponse_lastUpdatedDateTime,+ updateBotLocaleResponse_localeId,+ updateBotLocaleResponse_localeName,+ updateBotLocaleResponse_nluIntentConfidenceThreshold,+ updateBotLocaleResponse_recommendedActions,+ updateBotLocaleResponse_voiceSettings,+ updateBotLocaleResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateBotLocale' smart constructor.+data UpdateBotLocale = UpdateBotLocale'+ { -- | The new description of the locale.+ description :: Prelude.Maybe Prelude.Text,+ -- | The new Amazon Polly voice Amazon Lex should use for voice interaction+ -- with the user.+ voiceSettings :: Prelude.Maybe VoiceSettings,+ -- | The unique identifier of the bot that contains the locale.+ botId :: Prelude.Text,+ -- | The version of the bot that contains the locale to be updated. The+ -- version can only be the @DRAFT@ version.+ botVersion :: Prelude.Text,+ -- | The identifier of the language and locale to update. The string must+ -- match one of the supported locales. For more information, see+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+ localeId :: Prelude.Text,+ -- | The new confidence threshold where Amazon Lex inserts the+ -- @AMAZON.FallbackIntent@ and @AMAZON.KendraSearchIntent@ intents in the+ -- list of possible intents for an utterance.+ nluIntentConfidenceThreshold :: Prelude.Double+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateBotLocale' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'description', 'updateBotLocale_description' - The new description of the locale.+--+-- 'voiceSettings', 'updateBotLocale_voiceSettings' - The new Amazon Polly voice Amazon Lex should use for voice interaction+-- with the user.+--+-- 'botId', 'updateBotLocale_botId' - The unique identifier of the bot that contains the locale.+--+-- 'botVersion', 'updateBotLocale_botVersion' - The version of the bot that contains the locale to be updated. The+-- version can only be the @DRAFT@ version.+--+-- 'localeId', 'updateBotLocale_localeId' - The identifier of the language and locale to update. The string must+-- match one of the supported locales. For more information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+--+-- 'nluIntentConfidenceThreshold', 'updateBotLocale_nluIntentConfidenceThreshold' - The new confidence threshold where Amazon Lex inserts the+-- @AMAZON.FallbackIntent@ and @AMAZON.KendraSearchIntent@ intents in the+-- list of possible intents for an utterance.+newUpdateBotLocale ::+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ -- | 'localeId'+ Prelude.Text ->+ -- | 'nluIntentConfidenceThreshold'+ Prelude.Double ->+ UpdateBotLocale+newUpdateBotLocale+ pBotId_+ pBotVersion_+ pLocaleId_+ pNluIntentConfidenceThreshold_ =+ UpdateBotLocale'+ { description = Prelude.Nothing,+ voiceSettings = Prelude.Nothing,+ botId = pBotId_,+ botVersion = pBotVersion_,+ localeId = pLocaleId_,+ nluIntentConfidenceThreshold =+ pNluIntentConfidenceThreshold_+ }++-- | The new description of the locale.+updateBotLocale_description :: Lens.Lens' UpdateBotLocale (Prelude.Maybe Prelude.Text)+updateBotLocale_description = Lens.lens (\UpdateBotLocale' {description} -> description) (\s@UpdateBotLocale' {} a -> s {description = a} :: UpdateBotLocale)++-- | The new Amazon Polly voice Amazon Lex should use for voice interaction+-- with the user.+updateBotLocale_voiceSettings :: Lens.Lens' UpdateBotLocale (Prelude.Maybe VoiceSettings)+updateBotLocale_voiceSettings = Lens.lens (\UpdateBotLocale' {voiceSettings} -> voiceSettings) (\s@UpdateBotLocale' {} a -> s {voiceSettings = a} :: UpdateBotLocale)++-- | The unique identifier of the bot that contains the locale.+updateBotLocale_botId :: Lens.Lens' UpdateBotLocale Prelude.Text+updateBotLocale_botId = Lens.lens (\UpdateBotLocale' {botId} -> botId) (\s@UpdateBotLocale' {} a -> s {botId = a} :: UpdateBotLocale)++-- | The version of the bot that contains the locale to be updated. The+-- version can only be the @DRAFT@ version.+updateBotLocale_botVersion :: Lens.Lens' UpdateBotLocale Prelude.Text+updateBotLocale_botVersion = Lens.lens (\UpdateBotLocale' {botVersion} -> botVersion) (\s@UpdateBotLocale' {} a -> s {botVersion = a} :: UpdateBotLocale)++-- | The identifier of the language and locale to update. The string must+-- match one of the supported locales. For more information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+updateBotLocale_localeId :: Lens.Lens' UpdateBotLocale Prelude.Text+updateBotLocale_localeId = Lens.lens (\UpdateBotLocale' {localeId} -> localeId) (\s@UpdateBotLocale' {} a -> s {localeId = a} :: UpdateBotLocale)++-- | The new confidence threshold where Amazon Lex inserts the+-- @AMAZON.FallbackIntent@ and @AMAZON.KendraSearchIntent@ intents in the+-- list of possible intents for an utterance.+updateBotLocale_nluIntentConfidenceThreshold :: Lens.Lens' UpdateBotLocale Prelude.Double+updateBotLocale_nluIntentConfidenceThreshold = Lens.lens (\UpdateBotLocale' {nluIntentConfidenceThreshold} -> nluIntentConfidenceThreshold) (\s@UpdateBotLocale' {} a -> s {nluIntentConfidenceThreshold = a} :: UpdateBotLocale)++instance Core.AWSRequest UpdateBotLocale where+ type+ AWSResponse UpdateBotLocale =+ UpdateBotLocaleResponse+ request overrides =+ Request.putJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdateBotLocaleResponse'+ Prelude.<$> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botLocaleStatus")+ Prelude.<*> (x Data..?> "botVersion")+ Prelude.<*> (x Data..?> "creationDateTime")+ Prelude.<*> (x Data..?> "description")+ Prelude.<*> (x Data..?> "failureReasons" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "lastUpdatedDateTime")+ Prelude.<*> (x Data..?> "localeId")+ Prelude.<*> (x Data..?> "localeName")+ Prelude.<*> (x Data..?> "nluIntentConfidenceThreshold")+ Prelude.<*> ( x+ Data..?> "recommendedActions"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "voiceSettings")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UpdateBotLocale where+ hashWithSalt _salt UpdateBotLocale' {..} =+ _salt+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` voiceSettings+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` localeId+ `Prelude.hashWithSalt` nluIntentConfidenceThreshold++instance Prelude.NFData UpdateBotLocale where+ rnf UpdateBotLocale' {..} =+ Prelude.rnf description+ `Prelude.seq` Prelude.rnf voiceSettings+ `Prelude.seq` Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf nluIntentConfidenceThreshold++instance Data.ToHeaders UpdateBotLocale where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdateBotLocale where+ toJSON UpdateBotLocale' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("description" Data..=) Prelude.<$> description,+ ("voiceSettings" Data..=) Prelude.<$> voiceSettings,+ Prelude.Just+ ( "nluIntentConfidenceThreshold"+ Data..= nluIntentConfidenceThreshold+ )+ ]+ )++instance Data.ToPath UpdateBotLocale where+ toPath UpdateBotLocale' {..} =+ Prelude.mconcat+ [ "/bots/",+ Data.toBS botId,+ "/botversions/",+ Data.toBS botVersion,+ "/botlocales/",+ Data.toBS localeId,+ "/"+ ]++instance Data.ToQuery UpdateBotLocale where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUpdateBotLocaleResponse' smart constructor.+data UpdateBotLocaleResponse = UpdateBotLocaleResponse'+ { -- | The identifier of the bot that contains the updated locale.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The current status of the locale. When the bot status is @Built@ the+ -- locale is ready for use.+ botLocaleStatus :: Prelude.Maybe BotLocaleStatus,+ -- | The version of the bot that contains the updated locale.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | A timestamp of the date and time that the locale was created.+ creationDateTime :: Prelude.Maybe Data.POSIX,+ -- | The updated description of the locale.+ description :: Prelude.Maybe Prelude.Text,+ -- | If the @botLocaleStatus@ is @Failed@, the @failureReasons@ field lists+ -- the errors that occurred while building the bot.+ failureReasons :: Prelude.Maybe [Prelude.Text],+ -- | A timestamp of the date and time that the locale was last updated.+ lastUpdatedDateTime :: Prelude.Maybe Data.POSIX,+ -- | The language and locale of the updated bot locale.+ localeId :: Prelude.Maybe Prelude.Text,+ -- | The updated locale name for the locale.+ localeName :: Prelude.Maybe Prelude.Text,+ -- | The updated confidence threshold for inserting the+ -- @AMAZON.FallbackIntent@ and @AMAZON.KendraSearchIntent@ intents in the+ -- list of possible intents for an utterance.+ nluIntentConfidenceThreshold :: Prelude.Maybe Prelude.Double,+ -- | Recommended actions to take to resolve an error in the @failureReasons@+ -- field.+ recommendedActions :: Prelude.Maybe [Prelude.Text],+ -- | The updated Amazon Polly voice to use for voice interaction with the+ -- user.+ voiceSettings :: Prelude.Maybe VoiceSettings,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateBotLocaleResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'updateBotLocaleResponse_botId' - The identifier of the bot that contains the updated locale.+--+-- 'botLocaleStatus', 'updateBotLocaleResponse_botLocaleStatus' - The current status of the locale. When the bot status is @Built@ the+-- locale is ready for use.+--+-- 'botVersion', 'updateBotLocaleResponse_botVersion' - The version of the bot that contains the updated locale.+--+-- 'creationDateTime', 'updateBotLocaleResponse_creationDateTime' - A timestamp of the date and time that the locale was created.+--+-- 'description', 'updateBotLocaleResponse_description' - The updated description of the locale.+--+-- 'failureReasons', 'updateBotLocaleResponse_failureReasons' - If the @botLocaleStatus@ is @Failed@, the @failureReasons@ field lists+-- the errors that occurred while building the bot.+--+-- 'lastUpdatedDateTime', 'updateBotLocaleResponse_lastUpdatedDateTime' - A timestamp of the date and time that the locale was last updated.+--+-- 'localeId', 'updateBotLocaleResponse_localeId' - The language and locale of the updated bot locale.+--+-- 'localeName', 'updateBotLocaleResponse_localeName' - The updated locale name for the locale.+--+-- 'nluIntentConfidenceThreshold', 'updateBotLocaleResponse_nluIntentConfidenceThreshold' - The updated confidence threshold for inserting the+-- @AMAZON.FallbackIntent@ and @AMAZON.KendraSearchIntent@ intents in the+-- list of possible intents for an utterance.+--+-- 'recommendedActions', 'updateBotLocaleResponse_recommendedActions' - Recommended actions to take to resolve an error in the @failureReasons@+-- field.+--+-- 'voiceSettings', 'updateBotLocaleResponse_voiceSettings' - The updated Amazon Polly voice to use for voice interaction with the+-- user.+--+-- 'httpStatus', 'updateBotLocaleResponse_httpStatus' - The response's http status code.+newUpdateBotLocaleResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UpdateBotLocaleResponse+newUpdateBotLocaleResponse pHttpStatus_ =+ UpdateBotLocaleResponse'+ { botId = Prelude.Nothing,+ botLocaleStatus = Prelude.Nothing,+ botVersion = Prelude.Nothing,+ creationDateTime = Prelude.Nothing,+ description = Prelude.Nothing,+ failureReasons = Prelude.Nothing,+ lastUpdatedDateTime = Prelude.Nothing,+ localeId = Prelude.Nothing,+ localeName = Prelude.Nothing,+ nluIntentConfidenceThreshold = Prelude.Nothing,+ recommendedActions = Prelude.Nothing,+ voiceSettings = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The identifier of the bot that contains the updated locale.+updateBotLocaleResponse_botId :: Lens.Lens' UpdateBotLocaleResponse (Prelude.Maybe Prelude.Text)+updateBotLocaleResponse_botId = Lens.lens (\UpdateBotLocaleResponse' {botId} -> botId) (\s@UpdateBotLocaleResponse' {} a -> s {botId = a} :: UpdateBotLocaleResponse)++-- | The current status of the locale. When the bot status is @Built@ the+-- locale is ready for use.+updateBotLocaleResponse_botLocaleStatus :: Lens.Lens' UpdateBotLocaleResponse (Prelude.Maybe BotLocaleStatus)+updateBotLocaleResponse_botLocaleStatus = Lens.lens (\UpdateBotLocaleResponse' {botLocaleStatus} -> botLocaleStatus) (\s@UpdateBotLocaleResponse' {} a -> s {botLocaleStatus = a} :: UpdateBotLocaleResponse)++-- | The version of the bot that contains the updated locale.+updateBotLocaleResponse_botVersion :: Lens.Lens' UpdateBotLocaleResponse (Prelude.Maybe Prelude.Text)+updateBotLocaleResponse_botVersion = Lens.lens (\UpdateBotLocaleResponse' {botVersion} -> botVersion) (\s@UpdateBotLocaleResponse' {} a -> s {botVersion = a} :: UpdateBotLocaleResponse)++-- | A timestamp of the date and time that the locale was created.+updateBotLocaleResponse_creationDateTime :: Lens.Lens' UpdateBotLocaleResponse (Prelude.Maybe Prelude.UTCTime)+updateBotLocaleResponse_creationDateTime = Lens.lens (\UpdateBotLocaleResponse' {creationDateTime} -> creationDateTime) (\s@UpdateBotLocaleResponse' {} a -> s {creationDateTime = a} :: UpdateBotLocaleResponse) Prelude.. Lens.mapping Data._Time++-- | The updated description of the locale.+updateBotLocaleResponse_description :: Lens.Lens' UpdateBotLocaleResponse (Prelude.Maybe Prelude.Text)+updateBotLocaleResponse_description = Lens.lens (\UpdateBotLocaleResponse' {description} -> description) (\s@UpdateBotLocaleResponse' {} a -> s {description = a} :: UpdateBotLocaleResponse)++-- | If the @botLocaleStatus@ is @Failed@, the @failureReasons@ field lists+-- the errors that occurred while building the bot.+updateBotLocaleResponse_failureReasons :: Lens.Lens' UpdateBotLocaleResponse (Prelude.Maybe [Prelude.Text])+updateBotLocaleResponse_failureReasons = Lens.lens (\UpdateBotLocaleResponse' {failureReasons} -> failureReasons) (\s@UpdateBotLocaleResponse' {} a -> s {failureReasons = a} :: UpdateBotLocaleResponse) Prelude.. Lens.mapping Lens.coerced++-- | A timestamp of the date and time that the locale was last updated.+updateBotLocaleResponse_lastUpdatedDateTime :: Lens.Lens' UpdateBotLocaleResponse (Prelude.Maybe Prelude.UTCTime)+updateBotLocaleResponse_lastUpdatedDateTime = Lens.lens (\UpdateBotLocaleResponse' {lastUpdatedDateTime} -> lastUpdatedDateTime) (\s@UpdateBotLocaleResponse' {} a -> s {lastUpdatedDateTime = a} :: UpdateBotLocaleResponse) Prelude.. Lens.mapping Data._Time++-- | The language and locale of the updated bot locale.+updateBotLocaleResponse_localeId :: Lens.Lens' UpdateBotLocaleResponse (Prelude.Maybe Prelude.Text)+updateBotLocaleResponse_localeId = Lens.lens (\UpdateBotLocaleResponse' {localeId} -> localeId) (\s@UpdateBotLocaleResponse' {} a -> s {localeId = a} :: UpdateBotLocaleResponse)++-- | The updated locale name for the locale.+updateBotLocaleResponse_localeName :: Lens.Lens' UpdateBotLocaleResponse (Prelude.Maybe Prelude.Text)+updateBotLocaleResponse_localeName = Lens.lens (\UpdateBotLocaleResponse' {localeName} -> localeName) (\s@UpdateBotLocaleResponse' {} a -> s {localeName = a} :: UpdateBotLocaleResponse)++-- | The updated confidence threshold for inserting the+-- @AMAZON.FallbackIntent@ and @AMAZON.KendraSearchIntent@ intents in the+-- list of possible intents for an utterance.+updateBotLocaleResponse_nluIntentConfidenceThreshold :: Lens.Lens' UpdateBotLocaleResponse (Prelude.Maybe Prelude.Double)+updateBotLocaleResponse_nluIntentConfidenceThreshold = Lens.lens (\UpdateBotLocaleResponse' {nluIntentConfidenceThreshold} -> nluIntentConfidenceThreshold) (\s@UpdateBotLocaleResponse' {} a -> s {nluIntentConfidenceThreshold = a} :: UpdateBotLocaleResponse)++-- | Recommended actions to take to resolve an error in the @failureReasons@+-- field.+updateBotLocaleResponse_recommendedActions :: Lens.Lens' UpdateBotLocaleResponse (Prelude.Maybe [Prelude.Text])+updateBotLocaleResponse_recommendedActions = Lens.lens (\UpdateBotLocaleResponse' {recommendedActions} -> recommendedActions) (\s@UpdateBotLocaleResponse' {} a -> s {recommendedActions = a} :: UpdateBotLocaleResponse) Prelude.. Lens.mapping Lens.coerced++-- | The updated Amazon Polly voice to use for voice interaction with the+-- user.+updateBotLocaleResponse_voiceSettings :: Lens.Lens' UpdateBotLocaleResponse (Prelude.Maybe VoiceSettings)+updateBotLocaleResponse_voiceSettings = Lens.lens (\UpdateBotLocaleResponse' {voiceSettings} -> voiceSettings) (\s@UpdateBotLocaleResponse' {} a -> s {voiceSettings = a} :: UpdateBotLocaleResponse)++-- | The response's http status code.+updateBotLocaleResponse_httpStatus :: Lens.Lens' UpdateBotLocaleResponse Prelude.Int+updateBotLocaleResponse_httpStatus = Lens.lens (\UpdateBotLocaleResponse' {httpStatus} -> httpStatus) (\s@UpdateBotLocaleResponse' {} a -> s {httpStatus = a} :: UpdateBotLocaleResponse)++instance Prelude.NFData UpdateBotLocaleResponse where+ rnf UpdateBotLocaleResponse' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botLocaleStatus+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf failureReasons+ `Prelude.seq` Prelude.rnf lastUpdatedDateTime+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf localeName+ `Prelude.seq` Prelude.rnf nluIntentConfidenceThreshold+ `Prelude.seq` Prelude.rnf recommendedActions+ `Prelude.seq` Prelude.rnf voiceSettings+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/UpdateBotRecommendation.hs view
@@ -0,0 +1,398 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.UpdateBotRecommendation+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Updates an existing bot recommendation request.+module Amazonka.LexV2Models.UpdateBotRecommendation+ ( -- * Creating a Request+ UpdateBotRecommendation (..),+ newUpdateBotRecommendation,++ -- * Request Lenses+ updateBotRecommendation_botId,+ updateBotRecommendation_botVersion,+ updateBotRecommendation_localeId,+ updateBotRecommendation_botRecommendationId,+ updateBotRecommendation_encryptionSetting,++ -- * Destructuring the Response+ UpdateBotRecommendationResponse (..),+ newUpdateBotRecommendationResponse,++ -- * Response Lenses+ updateBotRecommendationResponse_botId,+ updateBotRecommendationResponse_botRecommendationId,+ updateBotRecommendationResponse_botRecommendationStatus,+ updateBotRecommendationResponse_botVersion,+ updateBotRecommendationResponse_creationDateTime,+ updateBotRecommendationResponse_encryptionSetting,+ updateBotRecommendationResponse_lastUpdatedDateTime,+ updateBotRecommendationResponse_localeId,+ updateBotRecommendationResponse_transcriptSourceSetting,+ updateBotRecommendationResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateBotRecommendation' smart constructor.+data UpdateBotRecommendation = UpdateBotRecommendation'+ { -- | The unique identifier of the bot containing the bot recommendation to be+ -- updated.+ botId :: Prelude.Text,+ -- | The version of the bot containing the bot recommendation to be updated.+ botVersion :: Prelude.Text,+ -- | The identifier of the language and locale of the bot recommendation to+ -- update. The string must match one of the supported locales. For more+ -- information, see+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>+ localeId :: Prelude.Text,+ -- | The unique identifier of the bot recommendation to be updated.+ botRecommendationId :: Prelude.Text,+ -- | The object representing the passwords that will be used to encrypt the+ -- data related to the bot recommendation results, as well as the KMS key+ -- ARN used to encrypt the associated metadata.+ encryptionSetting :: EncryptionSetting+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateBotRecommendation' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'updateBotRecommendation_botId' - The unique identifier of the bot containing the bot recommendation to be+-- updated.+--+-- 'botVersion', 'updateBotRecommendation_botVersion' - The version of the bot containing the bot recommendation to be updated.+--+-- 'localeId', 'updateBotRecommendation_localeId' - The identifier of the language and locale of the bot recommendation to+-- update. The string must match one of the supported locales. For more+-- information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>+--+-- 'botRecommendationId', 'updateBotRecommendation_botRecommendationId' - The unique identifier of the bot recommendation to be updated.+--+-- 'encryptionSetting', 'updateBotRecommendation_encryptionSetting' - The object representing the passwords that will be used to encrypt the+-- data related to the bot recommendation results, as well as the KMS key+-- ARN used to encrypt the associated metadata.+newUpdateBotRecommendation ::+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ -- | 'localeId'+ Prelude.Text ->+ -- | 'botRecommendationId'+ Prelude.Text ->+ -- | 'encryptionSetting'+ EncryptionSetting ->+ UpdateBotRecommendation+newUpdateBotRecommendation+ pBotId_+ pBotVersion_+ pLocaleId_+ pBotRecommendationId_+ pEncryptionSetting_ =+ UpdateBotRecommendation'+ { botId = pBotId_,+ botVersion = pBotVersion_,+ localeId = pLocaleId_,+ botRecommendationId = pBotRecommendationId_,+ encryptionSetting = pEncryptionSetting_+ }++-- | The unique identifier of the bot containing the bot recommendation to be+-- updated.+updateBotRecommendation_botId :: Lens.Lens' UpdateBotRecommendation Prelude.Text+updateBotRecommendation_botId = Lens.lens (\UpdateBotRecommendation' {botId} -> botId) (\s@UpdateBotRecommendation' {} a -> s {botId = a} :: UpdateBotRecommendation)++-- | The version of the bot containing the bot recommendation to be updated.+updateBotRecommendation_botVersion :: Lens.Lens' UpdateBotRecommendation Prelude.Text+updateBotRecommendation_botVersion = Lens.lens (\UpdateBotRecommendation' {botVersion} -> botVersion) (\s@UpdateBotRecommendation' {} a -> s {botVersion = a} :: UpdateBotRecommendation)++-- | The identifier of the language and locale of the bot recommendation to+-- update. The string must match one of the supported locales. For more+-- information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>+updateBotRecommendation_localeId :: Lens.Lens' UpdateBotRecommendation Prelude.Text+updateBotRecommendation_localeId = Lens.lens (\UpdateBotRecommendation' {localeId} -> localeId) (\s@UpdateBotRecommendation' {} a -> s {localeId = a} :: UpdateBotRecommendation)++-- | The unique identifier of the bot recommendation to be updated.+updateBotRecommendation_botRecommendationId :: Lens.Lens' UpdateBotRecommendation Prelude.Text+updateBotRecommendation_botRecommendationId = Lens.lens (\UpdateBotRecommendation' {botRecommendationId} -> botRecommendationId) (\s@UpdateBotRecommendation' {} a -> s {botRecommendationId = a} :: UpdateBotRecommendation)++-- | The object representing the passwords that will be used to encrypt the+-- data related to the bot recommendation results, as well as the KMS key+-- ARN used to encrypt the associated metadata.+updateBotRecommendation_encryptionSetting :: Lens.Lens' UpdateBotRecommendation EncryptionSetting+updateBotRecommendation_encryptionSetting = Lens.lens (\UpdateBotRecommendation' {encryptionSetting} -> encryptionSetting) (\s@UpdateBotRecommendation' {} a -> s {encryptionSetting = a} :: UpdateBotRecommendation)++instance Core.AWSRequest UpdateBotRecommendation where+ type+ AWSResponse UpdateBotRecommendation =+ UpdateBotRecommendationResponse+ request overrides =+ Request.putJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdateBotRecommendationResponse'+ Prelude.<$> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botRecommendationId")+ Prelude.<*> (x Data..?> "botRecommendationStatus")+ Prelude.<*> (x Data..?> "botVersion")+ Prelude.<*> (x Data..?> "creationDateTime")+ Prelude.<*> (x Data..?> "encryptionSetting")+ Prelude.<*> (x Data..?> "lastUpdatedDateTime")+ Prelude.<*> (x Data..?> "localeId")+ Prelude.<*> (x Data..?> "transcriptSourceSetting")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UpdateBotRecommendation where+ hashWithSalt _salt UpdateBotRecommendation' {..} =+ _salt+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` localeId+ `Prelude.hashWithSalt` botRecommendationId+ `Prelude.hashWithSalt` encryptionSetting++instance Prelude.NFData UpdateBotRecommendation where+ rnf UpdateBotRecommendation' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf botRecommendationId+ `Prelude.seq` Prelude.rnf encryptionSetting++instance Data.ToHeaders UpdateBotRecommendation where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdateBotRecommendation where+ toJSON UpdateBotRecommendation' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("encryptionSetting" Data..= encryptionSetting)+ ]+ )++instance Data.ToPath UpdateBotRecommendation where+ toPath UpdateBotRecommendation' {..} =+ Prelude.mconcat+ [ "/bots/",+ Data.toBS botId,+ "/botversions/",+ Data.toBS botVersion,+ "/botlocales/",+ Data.toBS localeId,+ "/botrecommendations/",+ Data.toBS botRecommendationId,+ "/"+ ]++instance Data.ToQuery UpdateBotRecommendation where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUpdateBotRecommendationResponse' smart constructor.+data UpdateBotRecommendationResponse = UpdateBotRecommendationResponse'+ { -- | The unique identifier of the bot containing the bot recommendation that+ -- has been updated.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier of the bot recommendation to be updated.+ botRecommendationId :: Prelude.Maybe Prelude.Text,+ -- | The status of the bot recommendation.+ --+ -- If the status is Failed, then the reasons for the failure are listed in+ -- the failureReasons field.+ botRecommendationStatus :: Prelude.Maybe BotRecommendationStatus,+ -- | The version of the bot containing the bot recommendation that has been+ -- updated.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | A timestamp of the date and time that the bot recommendation was+ -- created.+ creationDateTime :: Prelude.Maybe Data.POSIX,+ -- | The object representing the passwords that were used to encrypt the data+ -- related to the bot recommendation results, as well as the KMS key ARN+ -- used to encrypt the associated metadata.+ encryptionSetting :: Prelude.Maybe EncryptionSetting,+ -- | A timestamp of the date and time that the bot recommendation was last+ -- updated.+ lastUpdatedDateTime :: Prelude.Maybe Data.POSIX,+ -- | The identifier of the language and locale of the bot recommendation to+ -- update. The string must match one of the supported locales. For more+ -- information, see+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>+ localeId :: Prelude.Maybe Prelude.Text,+ -- | The object representing the Amazon S3 bucket containing the transcript,+ -- as well as the associated metadata.+ transcriptSourceSetting :: Prelude.Maybe TranscriptSourceSetting,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateBotRecommendationResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'updateBotRecommendationResponse_botId' - The unique identifier of the bot containing the bot recommendation that+-- has been updated.+--+-- 'botRecommendationId', 'updateBotRecommendationResponse_botRecommendationId' - The unique identifier of the bot recommendation to be updated.+--+-- 'botRecommendationStatus', 'updateBotRecommendationResponse_botRecommendationStatus' - The status of the bot recommendation.+--+-- If the status is Failed, then the reasons for the failure are listed in+-- the failureReasons field.+--+-- 'botVersion', 'updateBotRecommendationResponse_botVersion' - The version of the bot containing the bot recommendation that has been+-- updated.+--+-- 'creationDateTime', 'updateBotRecommendationResponse_creationDateTime' - A timestamp of the date and time that the bot recommendation was+-- created.+--+-- 'encryptionSetting', 'updateBotRecommendationResponse_encryptionSetting' - The object representing the passwords that were used to encrypt the data+-- related to the bot recommendation results, as well as the KMS key ARN+-- used to encrypt the associated metadata.+--+-- 'lastUpdatedDateTime', 'updateBotRecommendationResponse_lastUpdatedDateTime' - A timestamp of the date and time that the bot recommendation was last+-- updated.+--+-- 'localeId', 'updateBotRecommendationResponse_localeId' - The identifier of the language and locale of the bot recommendation to+-- update. The string must match one of the supported locales. For more+-- information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>+--+-- 'transcriptSourceSetting', 'updateBotRecommendationResponse_transcriptSourceSetting' - The object representing the Amazon S3 bucket containing the transcript,+-- as well as the associated metadata.+--+-- 'httpStatus', 'updateBotRecommendationResponse_httpStatus' - The response's http status code.+newUpdateBotRecommendationResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UpdateBotRecommendationResponse+newUpdateBotRecommendationResponse pHttpStatus_ =+ UpdateBotRecommendationResponse'+ { botId =+ Prelude.Nothing,+ botRecommendationId = Prelude.Nothing,+ botRecommendationStatus = Prelude.Nothing,+ botVersion = Prelude.Nothing,+ creationDateTime = Prelude.Nothing,+ encryptionSetting = Prelude.Nothing,+ lastUpdatedDateTime = Prelude.Nothing,+ localeId = Prelude.Nothing,+ transcriptSourceSetting = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The unique identifier of the bot containing the bot recommendation that+-- has been updated.+updateBotRecommendationResponse_botId :: Lens.Lens' UpdateBotRecommendationResponse (Prelude.Maybe Prelude.Text)+updateBotRecommendationResponse_botId = Lens.lens (\UpdateBotRecommendationResponse' {botId} -> botId) (\s@UpdateBotRecommendationResponse' {} a -> s {botId = a} :: UpdateBotRecommendationResponse)++-- | The unique identifier of the bot recommendation to be updated.+updateBotRecommendationResponse_botRecommendationId :: Lens.Lens' UpdateBotRecommendationResponse (Prelude.Maybe Prelude.Text)+updateBotRecommendationResponse_botRecommendationId = Lens.lens (\UpdateBotRecommendationResponse' {botRecommendationId} -> botRecommendationId) (\s@UpdateBotRecommendationResponse' {} a -> s {botRecommendationId = a} :: UpdateBotRecommendationResponse)++-- | The status of the bot recommendation.+--+-- If the status is Failed, then the reasons for the failure are listed in+-- the failureReasons field.+updateBotRecommendationResponse_botRecommendationStatus :: Lens.Lens' UpdateBotRecommendationResponse (Prelude.Maybe BotRecommendationStatus)+updateBotRecommendationResponse_botRecommendationStatus = Lens.lens (\UpdateBotRecommendationResponse' {botRecommendationStatus} -> botRecommendationStatus) (\s@UpdateBotRecommendationResponse' {} a -> s {botRecommendationStatus = a} :: UpdateBotRecommendationResponse)++-- | The version of the bot containing the bot recommendation that has been+-- updated.+updateBotRecommendationResponse_botVersion :: Lens.Lens' UpdateBotRecommendationResponse (Prelude.Maybe Prelude.Text)+updateBotRecommendationResponse_botVersion = Lens.lens (\UpdateBotRecommendationResponse' {botVersion} -> botVersion) (\s@UpdateBotRecommendationResponse' {} a -> s {botVersion = a} :: UpdateBotRecommendationResponse)++-- | A timestamp of the date and time that the bot recommendation was+-- created.+updateBotRecommendationResponse_creationDateTime :: Lens.Lens' UpdateBotRecommendationResponse (Prelude.Maybe Prelude.UTCTime)+updateBotRecommendationResponse_creationDateTime = Lens.lens (\UpdateBotRecommendationResponse' {creationDateTime} -> creationDateTime) (\s@UpdateBotRecommendationResponse' {} a -> s {creationDateTime = a} :: UpdateBotRecommendationResponse) Prelude.. Lens.mapping Data._Time++-- | The object representing the passwords that were used to encrypt the data+-- related to the bot recommendation results, as well as the KMS key ARN+-- used to encrypt the associated metadata.+updateBotRecommendationResponse_encryptionSetting :: Lens.Lens' UpdateBotRecommendationResponse (Prelude.Maybe EncryptionSetting)+updateBotRecommendationResponse_encryptionSetting = Lens.lens (\UpdateBotRecommendationResponse' {encryptionSetting} -> encryptionSetting) (\s@UpdateBotRecommendationResponse' {} a -> s {encryptionSetting = a} :: UpdateBotRecommendationResponse)++-- | A timestamp of the date and time that the bot recommendation was last+-- updated.+updateBotRecommendationResponse_lastUpdatedDateTime :: Lens.Lens' UpdateBotRecommendationResponse (Prelude.Maybe Prelude.UTCTime)+updateBotRecommendationResponse_lastUpdatedDateTime = Lens.lens (\UpdateBotRecommendationResponse' {lastUpdatedDateTime} -> lastUpdatedDateTime) (\s@UpdateBotRecommendationResponse' {} a -> s {lastUpdatedDateTime = a} :: UpdateBotRecommendationResponse) Prelude.. Lens.mapping Data._Time++-- | The identifier of the language and locale of the bot recommendation to+-- update. The string must match one of the supported locales. For more+-- information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>+updateBotRecommendationResponse_localeId :: Lens.Lens' UpdateBotRecommendationResponse (Prelude.Maybe Prelude.Text)+updateBotRecommendationResponse_localeId = Lens.lens (\UpdateBotRecommendationResponse' {localeId} -> localeId) (\s@UpdateBotRecommendationResponse' {} a -> s {localeId = a} :: UpdateBotRecommendationResponse)++-- | The object representing the Amazon S3 bucket containing the transcript,+-- as well as the associated metadata.+updateBotRecommendationResponse_transcriptSourceSetting :: Lens.Lens' UpdateBotRecommendationResponse (Prelude.Maybe TranscriptSourceSetting)+updateBotRecommendationResponse_transcriptSourceSetting = Lens.lens (\UpdateBotRecommendationResponse' {transcriptSourceSetting} -> transcriptSourceSetting) (\s@UpdateBotRecommendationResponse' {} a -> s {transcriptSourceSetting = a} :: UpdateBotRecommendationResponse)++-- | The response's http status code.+updateBotRecommendationResponse_httpStatus :: Lens.Lens' UpdateBotRecommendationResponse Prelude.Int+updateBotRecommendationResponse_httpStatus = Lens.lens (\UpdateBotRecommendationResponse' {httpStatus} -> httpStatus) (\s@UpdateBotRecommendationResponse' {} a -> s {httpStatus = a} :: UpdateBotRecommendationResponse)++instance+ Prelude.NFData+ UpdateBotRecommendationResponse+ where+ rnf UpdateBotRecommendationResponse' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botRecommendationId+ `Prelude.seq` Prelude.rnf botRecommendationStatus+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf encryptionSetting+ `Prelude.seq` Prelude.rnf lastUpdatedDateTime+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf transcriptSourceSetting+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/UpdateExport.hs view
@@ -0,0 +1,258 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.UpdateExport+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Updates the password used to protect an export zip archive.+--+-- The password is not required. If you don\'t supply a password, Amazon+-- Lex generates a zip file that is not protected by a password. This is+-- the archive that is available at the pre-signed S3 URL provided by the+-- <https://docs.aws.amazon.com/lexv2/latest/dg/API_DescribeExport.html DescribeExport>+-- operation.+module Amazonka.LexV2Models.UpdateExport+ ( -- * Creating a Request+ UpdateExport (..),+ newUpdateExport,++ -- * Request Lenses+ updateExport_filePassword,+ updateExport_exportId,++ -- * Destructuring the Response+ UpdateExportResponse (..),+ newUpdateExportResponse,++ -- * Response Lenses+ updateExportResponse_creationDateTime,+ updateExportResponse_exportId,+ updateExportResponse_exportStatus,+ updateExportResponse_fileFormat,+ updateExportResponse_lastUpdatedDateTime,+ updateExportResponse_resourceSpecification,+ updateExportResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateExport' smart constructor.+data UpdateExport = UpdateExport'+ { -- | The new password to use to encrypt the export zip archive.+ filePassword :: Prelude.Maybe (Data.Sensitive Prelude.Text),+ -- | The unique identifier Amazon Lex assigned to the export.+ exportId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateExport' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'filePassword', 'updateExport_filePassword' - The new password to use to encrypt the export zip archive.+--+-- 'exportId', 'updateExport_exportId' - The unique identifier Amazon Lex assigned to the export.+newUpdateExport ::+ -- | 'exportId'+ Prelude.Text ->+ UpdateExport+newUpdateExport pExportId_ =+ UpdateExport'+ { filePassword = Prelude.Nothing,+ exportId = pExportId_+ }++-- | The new password to use to encrypt the export zip archive.+updateExport_filePassword :: Lens.Lens' UpdateExport (Prelude.Maybe Prelude.Text)+updateExport_filePassword = Lens.lens (\UpdateExport' {filePassword} -> filePassword) (\s@UpdateExport' {} a -> s {filePassword = a} :: UpdateExport) Prelude.. Lens.mapping Data._Sensitive++-- | The unique identifier Amazon Lex assigned to the export.+updateExport_exportId :: Lens.Lens' UpdateExport Prelude.Text+updateExport_exportId = Lens.lens (\UpdateExport' {exportId} -> exportId) (\s@UpdateExport' {} a -> s {exportId = a} :: UpdateExport)++instance Core.AWSRequest UpdateExport where+ type AWSResponse UpdateExport = UpdateExportResponse+ request overrides =+ Request.putJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdateExportResponse'+ Prelude.<$> (x Data..?> "creationDateTime")+ Prelude.<*> (x Data..?> "exportId")+ Prelude.<*> (x Data..?> "exportStatus")+ Prelude.<*> (x Data..?> "fileFormat")+ Prelude.<*> (x Data..?> "lastUpdatedDateTime")+ Prelude.<*> (x Data..?> "resourceSpecification")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UpdateExport where+ hashWithSalt _salt UpdateExport' {..} =+ _salt+ `Prelude.hashWithSalt` filePassword+ `Prelude.hashWithSalt` exportId++instance Prelude.NFData UpdateExport where+ rnf UpdateExport' {..} =+ Prelude.rnf filePassword+ `Prelude.seq` Prelude.rnf exportId++instance Data.ToHeaders UpdateExport where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdateExport where+ toJSON UpdateExport' {..} =+ Data.object+ ( Prelude.catMaybes+ [("filePassword" Data..=) Prelude.<$> filePassword]+ )++instance Data.ToPath UpdateExport where+ toPath UpdateExport' {..} =+ Prelude.mconcat+ ["/exports/", Data.toBS exportId, "/"]++instance Data.ToQuery UpdateExport where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUpdateExportResponse' smart constructor.+data UpdateExportResponse = UpdateExportResponse'+ { -- | The date and time that the export was created.+ creationDateTime :: Prelude.Maybe Data.POSIX,+ -- | The unique identifier Amazon Lex assigned to the export.+ exportId :: Prelude.Maybe Prelude.Text,+ -- | The status of the export. When the status is @Completed@ the export+ -- archive is available for download.+ exportStatus :: Prelude.Maybe ExportStatus,+ -- | The file format used for the files that define the resource. The @TSV@+ -- format is required to export a custom vocabulary only; otherwise use+ -- @LexJson@ format.+ fileFormat :: Prelude.Maybe ImportExportFileFormat,+ -- | The date and time that the export was last updated.+ lastUpdatedDateTime :: Prelude.Maybe Data.POSIX,+ -- | A description of the type of resource that was exported, either a bot or+ -- a bot locale.+ resourceSpecification :: Prelude.Maybe ExportResourceSpecification,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateExportResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'creationDateTime', 'updateExportResponse_creationDateTime' - The date and time that the export was created.+--+-- 'exportId', 'updateExportResponse_exportId' - The unique identifier Amazon Lex assigned to the export.+--+-- 'exportStatus', 'updateExportResponse_exportStatus' - The status of the export. When the status is @Completed@ the export+-- archive is available for download.+--+-- 'fileFormat', 'updateExportResponse_fileFormat' - The file format used for the files that define the resource. The @TSV@+-- format is required to export a custom vocabulary only; otherwise use+-- @LexJson@ format.+--+-- 'lastUpdatedDateTime', 'updateExportResponse_lastUpdatedDateTime' - The date and time that the export was last updated.+--+-- 'resourceSpecification', 'updateExportResponse_resourceSpecification' - A description of the type of resource that was exported, either a bot or+-- a bot locale.+--+-- 'httpStatus', 'updateExportResponse_httpStatus' - The response's http status code.+newUpdateExportResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UpdateExportResponse+newUpdateExportResponse pHttpStatus_ =+ UpdateExportResponse'+ { creationDateTime =+ Prelude.Nothing,+ exportId = Prelude.Nothing,+ exportStatus = Prelude.Nothing,+ fileFormat = Prelude.Nothing,+ lastUpdatedDateTime = Prelude.Nothing,+ resourceSpecification = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The date and time that the export was created.+updateExportResponse_creationDateTime :: Lens.Lens' UpdateExportResponse (Prelude.Maybe Prelude.UTCTime)+updateExportResponse_creationDateTime = Lens.lens (\UpdateExportResponse' {creationDateTime} -> creationDateTime) (\s@UpdateExportResponse' {} a -> s {creationDateTime = a} :: UpdateExportResponse) Prelude.. Lens.mapping Data._Time++-- | The unique identifier Amazon Lex assigned to the export.+updateExportResponse_exportId :: Lens.Lens' UpdateExportResponse (Prelude.Maybe Prelude.Text)+updateExportResponse_exportId = Lens.lens (\UpdateExportResponse' {exportId} -> exportId) (\s@UpdateExportResponse' {} a -> s {exportId = a} :: UpdateExportResponse)++-- | The status of the export. When the status is @Completed@ the export+-- archive is available for download.+updateExportResponse_exportStatus :: Lens.Lens' UpdateExportResponse (Prelude.Maybe ExportStatus)+updateExportResponse_exportStatus = Lens.lens (\UpdateExportResponse' {exportStatus} -> exportStatus) (\s@UpdateExportResponse' {} a -> s {exportStatus = a} :: UpdateExportResponse)++-- | The file format used for the files that define the resource. The @TSV@+-- format is required to export a custom vocabulary only; otherwise use+-- @LexJson@ format.+updateExportResponse_fileFormat :: Lens.Lens' UpdateExportResponse (Prelude.Maybe ImportExportFileFormat)+updateExportResponse_fileFormat = Lens.lens (\UpdateExportResponse' {fileFormat} -> fileFormat) (\s@UpdateExportResponse' {} a -> s {fileFormat = a} :: UpdateExportResponse)++-- | The date and time that the export was last updated.+updateExportResponse_lastUpdatedDateTime :: Lens.Lens' UpdateExportResponse (Prelude.Maybe Prelude.UTCTime)+updateExportResponse_lastUpdatedDateTime = Lens.lens (\UpdateExportResponse' {lastUpdatedDateTime} -> lastUpdatedDateTime) (\s@UpdateExportResponse' {} a -> s {lastUpdatedDateTime = a} :: UpdateExportResponse) Prelude.. Lens.mapping Data._Time++-- | A description of the type of resource that was exported, either a bot or+-- a bot locale.+updateExportResponse_resourceSpecification :: Lens.Lens' UpdateExportResponse (Prelude.Maybe ExportResourceSpecification)+updateExportResponse_resourceSpecification = Lens.lens (\UpdateExportResponse' {resourceSpecification} -> resourceSpecification) (\s@UpdateExportResponse' {} a -> s {resourceSpecification = a} :: UpdateExportResponse)++-- | The response's http status code.+updateExportResponse_httpStatus :: Lens.Lens' UpdateExportResponse Prelude.Int+updateExportResponse_httpStatus = Lens.lens (\UpdateExportResponse' {httpStatus} -> httpStatus) (\s@UpdateExportResponse' {} a -> s {httpStatus = a} :: UpdateExportResponse)++instance Prelude.NFData UpdateExportResponse where+ rnf UpdateExportResponse' {..} =+ Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf exportId+ `Prelude.seq` Prelude.rnf exportStatus+ `Prelude.seq` Prelude.rnf fileFormat+ `Prelude.seq` Prelude.rnf lastUpdatedDateTime+ `Prelude.seq` Prelude.rnf resourceSpecification+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/UpdateIntent.hs view
@@ -0,0 +1,676 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.UpdateIntent+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Updates the settings for an intent.+module Amazonka.LexV2Models.UpdateIntent+ ( -- * Creating a Request+ UpdateIntent (..),+ newUpdateIntent,++ -- * Request Lenses+ updateIntent_description,+ updateIntent_dialogCodeHook,+ updateIntent_fulfillmentCodeHook,+ updateIntent_initialResponseSetting,+ updateIntent_inputContexts,+ updateIntent_intentClosingSetting,+ updateIntent_intentConfirmationSetting,+ updateIntent_kendraConfiguration,+ updateIntent_outputContexts,+ updateIntent_parentIntentSignature,+ updateIntent_sampleUtterances,+ updateIntent_slotPriorities,+ updateIntent_intentId,+ updateIntent_intentName,+ updateIntent_botId,+ updateIntent_botVersion,+ updateIntent_localeId,++ -- * Destructuring the Response+ UpdateIntentResponse (..),+ newUpdateIntentResponse,++ -- * Response Lenses+ updateIntentResponse_botId,+ updateIntentResponse_botVersion,+ updateIntentResponse_creationDateTime,+ updateIntentResponse_description,+ updateIntentResponse_dialogCodeHook,+ updateIntentResponse_fulfillmentCodeHook,+ updateIntentResponse_initialResponseSetting,+ updateIntentResponse_inputContexts,+ updateIntentResponse_intentClosingSetting,+ updateIntentResponse_intentConfirmationSetting,+ updateIntentResponse_intentId,+ updateIntentResponse_intentName,+ updateIntentResponse_kendraConfiguration,+ updateIntentResponse_lastUpdatedDateTime,+ updateIntentResponse_localeId,+ updateIntentResponse_outputContexts,+ updateIntentResponse_parentIntentSignature,+ updateIntentResponse_sampleUtterances,+ updateIntentResponse_slotPriorities,+ updateIntentResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateIntent' smart constructor.+data UpdateIntent = UpdateIntent'+ { -- | The new description of the intent.+ description :: Prelude.Maybe Prelude.Text,+ -- | The new Lambda function to use between each turn of the conversation+ -- with the bot.+ dialogCodeHook :: Prelude.Maybe DialogCodeHookSettings,+ -- | The new Lambda function to call when all of the intents required slots+ -- are provided and the intent is ready for fulfillment.+ fulfillmentCodeHook :: Prelude.Maybe FulfillmentCodeHookSettings,+ initialResponseSetting :: Prelude.Maybe InitialResponseSetting,+ -- | A new list of contexts that must be active in order for Amazon Lex to+ -- consider the intent.+ inputContexts :: Prelude.Maybe [InputContext],+ -- | The new response that Amazon Lex sends the user when the intent is+ -- closed.+ intentClosingSetting :: Prelude.Maybe IntentClosingSetting,+ -- | New prompts that Amazon Lex sends to the user to confirm the completion+ -- of an intent.+ intentConfirmationSetting :: Prelude.Maybe IntentConfirmationSetting,+ -- | New configuration settings for connecting to an Amazon Kendra index.+ kendraConfiguration :: Prelude.Maybe KendraConfiguration,+ -- | A new list of contexts that Amazon Lex activates when the intent is+ -- fulfilled.+ outputContexts :: Prelude.Maybe [OutputContext],+ -- | The signature of the new built-in intent to use as the parent of this+ -- intent.+ parentIntentSignature :: Prelude.Maybe Prelude.Text,+ -- | New utterances used to invoke the intent.+ sampleUtterances :: Prelude.Maybe [SampleUtterance],+ -- | A new list of slots and their priorities that are contained by the+ -- intent.+ slotPriorities :: Prelude.Maybe [SlotPriority],+ -- | The unique identifier of the intent to update.+ intentId :: Prelude.Text,+ -- | The new name for the intent.+ intentName :: Prelude.Text,+ -- | The identifier of the bot that contains the intent.+ botId :: Prelude.Text,+ -- | The version of the bot that contains the intent. Must be @DRAFT@.+ botVersion :: Prelude.Text,+ -- | The identifier of the language and locale where this intent is used. The+ -- string must match one of the supported locales. For more information,+ -- see+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+ localeId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateIntent' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'description', 'updateIntent_description' - The new description of the intent.+--+-- 'dialogCodeHook', 'updateIntent_dialogCodeHook' - The new Lambda function to use between each turn of the conversation+-- with the bot.+--+-- 'fulfillmentCodeHook', 'updateIntent_fulfillmentCodeHook' - The new Lambda function to call when all of the intents required slots+-- are provided and the intent is ready for fulfillment.+--+-- 'initialResponseSetting', 'updateIntent_initialResponseSetting' -+--+-- 'inputContexts', 'updateIntent_inputContexts' - A new list of contexts that must be active in order for Amazon Lex to+-- consider the intent.+--+-- 'intentClosingSetting', 'updateIntent_intentClosingSetting' - The new response that Amazon Lex sends the user when the intent is+-- closed.+--+-- 'intentConfirmationSetting', 'updateIntent_intentConfirmationSetting' - New prompts that Amazon Lex sends to the user to confirm the completion+-- of an intent.+--+-- 'kendraConfiguration', 'updateIntent_kendraConfiguration' - New configuration settings for connecting to an Amazon Kendra index.+--+-- 'outputContexts', 'updateIntent_outputContexts' - A new list of contexts that Amazon Lex activates when the intent is+-- fulfilled.+--+-- 'parentIntentSignature', 'updateIntent_parentIntentSignature' - The signature of the new built-in intent to use as the parent of this+-- intent.+--+-- 'sampleUtterances', 'updateIntent_sampleUtterances' - New utterances used to invoke the intent.+--+-- 'slotPriorities', 'updateIntent_slotPriorities' - A new list of slots and their priorities that are contained by the+-- intent.+--+-- 'intentId', 'updateIntent_intentId' - The unique identifier of the intent to update.+--+-- 'intentName', 'updateIntent_intentName' - The new name for the intent.+--+-- 'botId', 'updateIntent_botId' - The identifier of the bot that contains the intent.+--+-- 'botVersion', 'updateIntent_botVersion' - The version of the bot that contains the intent. Must be @DRAFT@.+--+-- 'localeId', 'updateIntent_localeId' - The identifier of the language and locale where this intent is used. The+-- string must match one of the supported locales. For more information,+-- see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+newUpdateIntent ::+ -- | 'intentId'+ Prelude.Text ->+ -- | 'intentName'+ Prelude.Text ->+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ -- | 'localeId'+ Prelude.Text ->+ UpdateIntent+newUpdateIntent+ pIntentId_+ pIntentName_+ pBotId_+ pBotVersion_+ pLocaleId_ =+ UpdateIntent'+ { description = Prelude.Nothing,+ dialogCodeHook = Prelude.Nothing,+ fulfillmentCodeHook = Prelude.Nothing,+ initialResponseSetting = Prelude.Nothing,+ inputContexts = Prelude.Nothing,+ intentClosingSetting = Prelude.Nothing,+ intentConfirmationSetting = Prelude.Nothing,+ kendraConfiguration = Prelude.Nothing,+ outputContexts = Prelude.Nothing,+ parentIntentSignature = Prelude.Nothing,+ sampleUtterances = Prelude.Nothing,+ slotPriorities = Prelude.Nothing,+ intentId = pIntentId_,+ intentName = pIntentName_,+ botId = pBotId_,+ botVersion = pBotVersion_,+ localeId = pLocaleId_+ }++-- | The new description of the intent.+updateIntent_description :: Lens.Lens' UpdateIntent (Prelude.Maybe Prelude.Text)+updateIntent_description = Lens.lens (\UpdateIntent' {description} -> description) (\s@UpdateIntent' {} a -> s {description = a} :: UpdateIntent)++-- | The new Lambda function to use between each turn of the conversation+-- with the bot.+updateIntent_dialogCodeHook :: Lens.Lens' UpdateIntent (Prelude.Maybe DialogCodeHookSettings)+updateIntent_dialogCodeHook = Lens.lens (\UpdateIntent' {dialogCodeHook} -> dialogCodeHook) (\s@UpdateIntent' {} a -> s {dialogCodeHook = a} :: UpdateIntent)++-- | The new Lambda function to call when all of the intents required slots+-- are provided and the intent is ready for fulfillment.+updateIntent_fulfillmentCodeHook :: Lens.Lens' UpdateIntent (Prelude.Maybe FulfillmentCodeHookSettings)+updateIntent_fulfillmentCodeHook = Lens.lens (\UpdateIntent' {fulfillmentCodeHook} -> fulfillmentCodeHook) (\s@UpdateIntent' {} a -> s {fulfillmentCodeHook = a} :: UpdateIntent)++updateIntent_initialResponseSetting :: Lens.Lens' UpdateIntent (Prelude.Maybe InitialResponseSetting)+updateIntent_initialResponseSetting = Lens.lens (\UpdateIntent' {initialResponseSetting} -> initialResponseSetting) (\s@UpdateIntent' {} a -> s {initialResponseSetting = a} :: UpdateIntent)++-- | A new list of contexts that must be active in order for Amazon Lex to+-- consider the intent.+updateIntent_inputContexts :: Lens.Lens' UpdateIntent (Prelude.Maybe [InputContext])+updateIntent_inputContexts = Lens.lens (\UpdateIntent' {inputContexts} -> inputContexts) (\s@UpdateIntent' {} a -> s {inputContexts = a} :: UpdateIntent) Prelude.. Lens.mapping Lens.coerced++-- | The new response that Amazon Lex sends the user when the intent is+-- closed.+updateIntent_intentClosingSetting :: Lens.Lens' UpdateIntent (Prelude.Maybe IntentClosingSetting)+updateIntent_intentClosingSetting = Lens.lens (\UpdateIntent' {intentClosingSetting} -> intentClosingSetting) (\s@UpdateIntent' {} a -> s {intentClosingSetting = a} :: UpdateIntent)++-- | New prompts that Amazon Lex sends to the user to confirm the completion+-- of an intent.+updateIntent_intentConfirmationSetting :: Lens.Lens' UpdateIntent (Prelude.Maybe IntentConfirmationSetting)+updateIntent_intentConfirmationSetting = Lens.lens (\UpdateIntent' {intentConfirmationSetting} -> intentConfirmationSetting) (\s@UpdateIntent' {} a -> s {intentConfirmationSetting = a} :: UpdateIntent)++-- | New configuration settings for connecting to an Amazon Kendra index.+updateIntent_kendraConfiguration :: Lens.Lens' UpdateIntent (Prelude.Maybe KendraConfiguration)+updateIntent_kendraConfiguration = Lens.lens (\UpdateIntent' {kendraConfiguration} -> kendraConfiguration) (\s@UpdateIntent' {} a -> s {kendraConfiguration = a} :: UpdateIntent)++-- | A new list of contexts that Amazon Lex activates when the intent is+-- fulfilled.+updateIntent_outputContexts :: Lens.Lens' UpdateIntent (Prelude.Maybe [OutputContext])+updateIntent_outputContexts = Lens.lens (\UpdateIntent' {outputContexts} -> outputContexts) (\s@UpdateIntent' {} a -> s {outputContexts = a} :: UpdateIntent) Prelude.. Lens.mapping Lens.coerced++-- | The signature of the new built-in intent to use as the parent of this+-- intent.+updateIntent_parentIntentSignature :: Lens.Lens' UpdateIntent (Prelude.Maybe Prelude.Text)+updateIntent_parentIntentSignature = Lens.lens (\UpdateIntent' {parentIntentSignature} -> parentIntentSignature) (\s@UpdateIntent' {} a -> s {parentIntentSignature = a} :: UpdateIntent)++-- | New utterances used to invoke the intent.+updateIntent_sampleUtterances :: Lens.Lens' UpdateIntent (Prelude.Maybe [SampleUtterance])+updateIntent_sampleUtterances = Lens.lens (\UpdateIntent' {sampleUtterances} -> sampleUtterances) (\s@UpdateIntent' {} a -> s {sampleUtterances = a} :: UpdateIntent) Prelude.. Lens.mapping Lens.coerced++-- | A new list of slots and their priorities that are contained by the+-- intent.+updateIntent_slotPriorities :: Lens.Lens' UpdateIntent (Prelude.Maybe [SlotPriority])+updateIntent_slotPriorities = Lens.lens (\UpdateIntent' {slotPriorities} -> slotPriorities) (\s@UpdateIntent' {} a -> s {slotPriorities = a} :: UpdateIntent) Prelude.. Lens.mapping Lens.coerced++-- | The unique identifier of the intent to update.+updateIntent_intentId :: Lens.Lens' UpdateIntent Prelude.Text+updateIntent_intentId = Lens.lens (\UpdateIntent' {intentId} -> intentId) (\s@UpdateIntent' {} a -> s {intentId = a} :: UpdateIntent)++-- | The new name for the intent.+updateIntent_intentName :: Lens.Lens' UpdateIntent Prelude.Text+updateIntent_intentName = Lens.lens (\UpdateIntent' {intentName} -> intentName) (\s@UpdateIntent' {} a -> s {intentName = a} :: UpdateIntent)++-- | The identifier of the bot that contains the intent.+updateIntent_botId :: Lens.Lens' UpdateIntent Prelude.Text+updateIntent_botId = Lens.lens (\UpdateIntent' {botId} -> botId) (\s@UpdateIntent' {} a -> s {botId = a} :: UpdateIntent)++-- | The version of the bot that contains the intent. Must be @DRAFT@.+updateIntent_botVersion :: Lens.Lens' UpdateIntent Prelude.Text+updateIntent_botVersion = Lens.lens (\UpdateIntent' {botVersion} -> botVersion) (\s@UpdateIntent' {} a -> s {botVersion = a} :: UpdateIntent)++-- | The identifier of the language and locale where this intent is used. The+-- string must match one of the supported locales. For more information,+-- see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+updateIntent_localeId :: Lens.Lens' UpdateIntent Prelude.Text+updateIntent_localeId = Lens.lens (\UpdateIntent' {localeId} -> localeId) (\s@UpdateIntent' {} a -> s {localeId = a} :: UpdateIntent)++instance Core.AWSRequest UpdateIntent where+ type AWSResponse UpdateIntent = UpdateIntentResponse+ request overrides =+ Request.putJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdateIntentResponse'+ Prelude.<$> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botVersion")+ Prelude.<*> (x Data..?> "creationDateTime")+ Prelude.<*> (x Data..?> "description")+ Prelude.<*> (x Data..?> "dialogCodeHook")+ Prelude.<*> (x Data..?> "fulfillmentCodeHook")+ Prelude.<*> (x Data..?> "initialResponseSetting")+ Prelude.<*> (x Data..?> "inputContexts" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "intentClosingSetting")+ Prelude.<*> (x Data..?> "intentConfirmationSetting")+ Prelude.<*> (x Data..?> "intentId")+ Prelude.<*> (x Data..?> "intentName")+ Prelude.<*> (x Data..?> "kendraConfiguration")+ Prelude.<*> (x Data..?> "lastUpdatedDateTime")+ Prelude.<*> (x Data..?> "localeId")+ Prelude.<*> (x Data..?> "outputContexts" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "parentIntentSignature")+ Prelude.<*> ( x+ Data..?> "sampleUtterances"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "slotPriorities" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UpdateIntent where+ hashWithSalt _salt UpdateIntent' {..} =+ _salt+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` dialogCodeHook+ `Prelude.hashWithSalt` fulfillmentCodeHook+ `Prelude.hashWithSalt` initialResponseSetting+ `Prelude.hashWithSalt` inputContexts+ `Prelude.hashWithSalt` intentClosingSetting+ `Prelude.hashWithSalt` intentConfirmationSetting+ `Prelude.hashWithSalt` kendraConfiguration+ `Prelude.hashWithSalt` outputContexts+ `Prelude.hashWithSalt` parentIntentSignature+ `Prelude.hashWithSalt` sampleUtterances+ `Prelude.hashWithSalt` slotPriorities+ `Prelude.hashWithSalt` intentId+ `Prelude.hashWithSalt` intentName+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` localeId++instance Prelude.NFData UpdateIntent where+ rnf UpdateIntent' {..} =+ Prelude.rnf description+ `Prelude.seq` Prelude.rnf dialogCodeHook+ `Prelude.seq` Prelude.rnf fulfillmentCodeHook+ `Prelude.seq` Prelude.rnf initialResponseSetting+ `Prelude.seq` Prelude.rnf inputContexts+ `Prelude.seq` Prelude.rnf intentClosingSetting+ `Prelude.seq` Prelude.rnf intentConfirmationSetting+ `Prelude.seq` Prelude.rnf kendraConfiguration+ `Prelude.seq` Prelude.rnf outputContexts+ `Prelude.seq` Prelude.rnf parentIntentSignature+ `Prelude.seq` Prelude.rnf sampleUtterances+ `Prelude.seq` Prelude.rnf slotPriorities+ `Prelude.seq` Prelude.rnf intentId+ `Prelude.seq` Prelude.rnf intentName+ `Prelude.seq` Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId++instance Data.ToHeaders UpdateIntent where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdateIntent where+ toJSON UpdateIntent' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("description" Data..=) Prelude.<$> description,+ ("dialogCodeHook" Data..=)+ Prelude.<$> dialogCodeHook,+ ("fulfillmentCodeHook" Data..=)+ Prelude.<$> fulfillmentCodeHook,+ ("initialResponseSetting" Data..=)+ Prelude.<$> initialResponseSetting,+ ("inputContexts" Data..=) Prelude.<$> inputContexts,+ ("intentClosingSetting" Data..=)+ Prelude.<$> intentClosingSetting,+ ("intentConfirmationSetting" Data..=)+ Prelude.<$> intentConfirmationSetting,+ ("kendraConfiguration" Data..=)+ Prelude.<$> kendraConfiguration,+ ("outputContexts" Data..=)+ Prelude.<$> outputContexts,+ ("parentIntentSignature" Data..=)+ Prelude.<$> parentIntentSignature,+ ("sampleUtterances" Data..=)+ Prelude.<$> sampleUtterances,+ ("slotPriorities" Data..=)+ Prelude.<$> slotPriorities,+ Prelude.Just ("intentName" Data..= intentName)+ ]+ )++instance Data.ToPath UpdateIntent where+ toPath UpdateIntent' {..} =+ Prelude.mconcat+ [ "/bots/",+ Data.toBS botId,+ "/botversions/",+ Data.toBS botVersion,+ "/botlocales/",+ Data.toBS localeId,+ "/intents/",+ Data.toBS intentId,+ "/"+ ]++instance Data.ToQuery UpdateIntent where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUpdateIntentResponse' smart constructor.+data UpdateIntentResponse = UpdateIntentResponse'+ { -- | The identifier of the bot that contains the intent.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The version of the bot that contains the intent. Will always be @DRAFT@.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | A timestamp of when the intent was created.+ creationDateTime :: Prelude.Maybe Data.POSIX,+ -- | The updated description of the intent.+ description :: Prelude.Maybe Prelude.Text,+ -- | The updated Lambda function called during each turn of the conversation+ -- with the user.+ dialogCodeHook :: Prelude.Maybe DialogCodeHookSettings,+ -- | The updated Lambda function called when the intent is ready for+ -- fulfillment.+ fulfillmentCodeHook :: Prelude.Maybe FulfillmentCodeHookSettings,+ initialResponseSetting :: Prelude.Maybe InitialResponseSetting,+ -- | The updated list of contexts that must be active for the intent to be+ -- considered by Amazon Lex.+ inputContexts :: Prelude.Maybe [InputContext],+ -- | The updated response that Amazon Lex sends the user when the intent is+ -- closed.+ intentClosingSetting :: Prelude.Maybe IntentClosingSetting,+ -- | The updated prompts that Amazon Lex sends to the user to confirm the+ -- completion of an intent.+ intentConfirmationSetting :: Prelude.Maybe IntentConfirmationSetting,+ -- | The identifier of the intent that was updated.+ intentId :: Prelude.Maybe Prelude.Text,+ -- | The updated name of the intent.+ intentName :: Prelude.Maybe Prelude.Text,+ -- | The updated configuration for connecting to an Amazon Kendra index with+ -- the @AMAZON.KendraSearchIntent@ intent.+ kendraConfiguration :: Prelude.Maybe KendraConfiguration,+ -- | A timestamp of the last time that the intent was modified.+ lastUpdatedDateTime :: Prelude.Maybe Data.POSIX,+ -- | The updated language and locale of the intent.+ localeId :: Prelude.Maybe Prelude.Text,+ -- | The updated list of contexts that Amazon Lex activates when the intent+ -- is fulfilled.+ outputContexts :: Prelude.Maybe [OutputContext],+ -- | The updated built-in intent that is the parent of this intent.+ parentIntentSignature :: Prelude.Maybe Prelude.Text,+ -- | The updated list of sample utterances for the intent.+ sampleUtterances :: Prelude.Maybe [SampleUtterance],+ -- | The updated list of slots and their priorities that are elicited from+ -- the user for the intent.+ slotPriorities :: Prelude.Maybe [SlotPriority],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateIntentResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'updateIntentResponse_botId' - The identifier of the bot that contains the intent.+--+-- 'botVersion', 'updateIntentResponse_botVersion' - The version of the bot that contains the intent. Will always be @DRAFT@.+--+-- 'creationDateTime', 'updateIntentResponse_creationDateTime' - A timestamp of when the intent was created.+--+-- 'description', 'updateIntentResponse_description' - The updated description of the intent.+--+-- 'dialogCodeHook', 'updateIntentResponse_dialogCodeHook' - The updated Lambda function called during each turn of the conversation+-- with the user.+--+-- 'fulfillmentCodeHook', 'updateIntentResponse_fulfillmentCodeHook' - The updated Lambda function called when the intent is ready for+-- fulfillment.+--+-- 'initialResponseSetting', 'updateIntentResponse_initialResponseSetting' -+--+-- 'inputContexts', 'updateIntentResponse_inputContexts' - The updated list of contexts that must be active for the intent to be+-- considered by Amazon Lex.+--+-- 'intentClosingSetting', 'updateIntentResponse_intentClosingSetting' - The updated response that Amazon Lex sends the user when the intent is+-- closed.+--+-- 'intentConfirmationSetting', 'updateIntentResponse_intentConfirmationSetting' - The updated prompts that Amazon Lex sends to the user to confirm the+-- completion of an intent.+--+-- 'intentId', 'updateIntentResponse_intentId' - The identifier of the intent that was updated.+--+-- 'intentName', 'updateIntentResponse_intentName' - The updated name of the intent.+--+-- 'kendraConfiguration', 'updateIntentResponse_kendraConfiguration' - The updated configuration for connecting to an Amazon Kendra index with+-- the @AMAZON.KendraSearchIntent@ intent.+--+-- 'lastUpdatedDateTime', 'updateIntentResponse_lastUpdatedDateTime' - A timestamp of the last time that the intent was modified.+--+-- 'localeId', 'updateIntentResponse_localeId' - The updated language and locale of the intent.+--+-- 'outputContexts', 'updateIntentResponse_outputContexts' - The updated list of contexts that Amazon Lex activates when the intent+-- is fulfilled.+--+-- 'parentIntentSignature', 'updateIntentResponse_parentIntentSignature' - The updated built-in intent that is the parent of this intent.+--+-- 'sampleUtterances', 'updateIntentResponse_sampleUtterances' - The updated list of sample utterances for the intent.+--+-- 'slotPriorities', 'updateIntentResponse_slotPriorities' - The updated list of slots and their priorities that are elicited from+-- the user for the intent.+--+-- 'httpStatus', 'updateIntentResponse_httpStatus' - The response's http status code.+newUpdateIntentResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UpdateIntentResponse+newUpdateIntentResponse pHttpStatus_ =+ UpdateIntentResponse'+ { botId = Prelude.Nothing,+ botVersion = Prelude.Nothing,+ creationDateTime = Prelude.Nothing,+ description = Prelude.Nothing,+ dialogCodeHook = Prelude.Nothing,+ fulfillmentCodeHook = Prelude.Nothing,+ initialResponseSetting = Prelude.Nothing,+ inputContexts = Prelude.Nothing,+ intentClosingSetting = Prelude.Nothing,+ intentConfirmationSetting = Prelude.Nothing,+ intentId = Prelude.Nothing,+ intentName = Prelude.Nothing,+ kendraConfiguration = Prelude.Nothing,+ lastUpdatedDateTime = Prelude.Nothing,+ localeId = Prelude.Nothing,+ outputContexts = Prelude.Nothing,+ parentIntentSignature = Prelude.Nothing,+ sampleUtterances = Prelude.Nothing,+ slotPriorities = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The identifier of the bot that contains the intent.+updateIntentResponse_botId :: Lens.Lens' UpdateIntentResponse (Prelude.Maybe Prelude.Text)+updateIntentResponse_botId = Lens.lens (\UpdateIntentResponse' {botId} -> botId) (\s@UpdateIntentResponse' {} a -> s {botId = a} :: UpdateIntentResponse)++-- | The version of the bot that contains the intent. Will always be @DRAFT@.+updateIntentResponse_botVersion :: Lens.Lens' UpdateIntentResponse (Prelude.Maybe Prelude.Text)+updateIntentResponse_botVersion = Lens.lens (\UpdateIntentResponse' {botVersion} -> botVersion) (\s@UpdateIntentResponse' {} a -> s {botVersion = a} :: UpdateIntentResponse)++-- | A timestamp of when the intent was created.+updateIntentResponse_creationDateTime :: Lens.Lens' UpdateIntentResponse (Prelude.Maybe Prelude.UTCTime)+updateIntentResponse_creationDateTime = Lens.lens (\UpdateIntentResponse' {creationDateTime} -> creationDateTime) (\s@UpdateIntentResponse' {} a -> s {creationDateTime = a} :: UpdateIntentResponse) Prelude.. Lens.mapping Data._Time++-- | The updated description of the intent.+updateIntentResponse_description :: Lens.Lens' UpdateIntentResponse (Prelude.Maybe Prelude.Text)+updateIntentResponse_description = Lens.lens (\UpdateIntentResponse' {description} -> description) (\s@UpdateIntentResponse' {} a -> s {description = a} :: UpdateIntentResponse)++-- | The updated Lambda function called during each turn of the conversation+-- with the user.+updateIntentResponse_dialogCodeHook :: Lens.Lens' UpdateIntentResponse (Prelude.Maybe DialogCodeHookSettings)+updateIntentResponse_dialogCodeHook = Lens.lens (\UpdateIntentResponse' {dialogCodeHook} -> dialogCodeHook) (\s@UpdateIntentResponse' {} a -> s {dialogCodeHook = a} :: UpdateIntentResponse)++-- | The updated Lambda function called when the intent is ready for+-- fulfillment.+updateIntentResponse_fulfillmentCodeHook :: Lens.Lens' UpdateIntentResponse (Prelude.Maybe FulfillmentCodeHookSettings)+updateIntentResponse_fulfillmentCodeHook = Lens.lens (\UpdateIntentResponse' {fulfillmentCodeHook} -> fulfillmentCodeHook) (\s@UpdateIntentResponse' {} a -> s {fulfillmentCodeHook = a} :: UpdateIntentResponse)++updateIntentResponse_initialResponseSetting :: Lens.Lens' UpdateIntentResponse (Prelude.Maybe InitialResponseSetting)+updateIntentResponse_initialResponseSetting = Lens.lens (\UpdateIntentResponse' {initialResponseSetting} -> initialResponseSetting) (\s@UpdateIntentResponse' {} a -> s {initialResponseSetting = a} :: UpdateIntentResponse)++-- | The updated list of contexts that must be active for the intent to be+-- considered by Amazon Lex.+updateIntentResponse_inputContexts :: Lens.Lens' UpdateIntentResponse (Prelude.Maybe [InputContext])+updateIntentResponse_inputContexts = Lens.lens (\UpdateIntentResponse' {inputContexts} -> inputContexts) (\s@UpdateIntentResponse' {} a -> s {inputContexts = a} :: UpdateIntentResponse) Prelude.. Lens.mapping Lens.coerced++-- | The updated response that Amazon Lex sends the user when the intent is+-- closed.+updateIntentResponse_intentClosingSetting :: Lens.Lens' UpdateIntentResponse (Prelude.Maybe IntentClosingSetting)+updateIntentResponse_intentClosingSetting = Lens.lens (\UpdateIntentResponse' {intentClosingSetting} -> intentClosingSetting) (\s@UpdateIntentResponse' {} a -> s {intentClosingSetting = a} :: UpdateIntentResponse)++-- | The updated prompts that Amazon Lex sends to the user to confirm the+-- completion of an intent.+updateIntentResponse_intentConfirmationSetting :: Lens.Lens' UpdateIntentResponse (Prelude.Maybe IntentConfirmationSetting)+updateIntentResponse_intentConfirmationSetting = Lens.lens (\UpdateIntentResponse' {intentConfirmationSetting} -> intentConfirmationSetting) (\s@UpdateIntentResponse' {} a -> s {intentConfirmationSetting = a} :: UpdateIntentResponse)++-- | The identifier of the intent that was updated.+updateIntentResponse_intentId :: Lens.Lens' UpdateIntentResponse (Prelude.Maybe Prelude.Text)+updateIntentResponse_intentId = Lens.lens (\UpdateIntentResponse' {intentId} -> intentId) (\s@UpdateIntentResponse' {} a -> s {intentId = a} :: UpdateIntentResponse)++-- | The updated name of the intent.+updateIntentResponse_intentName :: Lens.Lens' UpdateIntentResponse (Prelude.Maybe Prelude.Text)+updateIntentResponse_intentName = Lens.lens (\UpdateIntentResponse' {intentName} -> intentName) (\s@UpdateIntentResponse' {} a -> s {intentName = a} :: UpdateIntentResponse)++-- | The updated configuration for connecting to an Amazon Kendra index with+-- the @AMAZON.KendraSearchIntent@ intent.+updateIntentResponse_kendraConfiguration :: Lens.Lens' UpdateIntentResponse (Prelude.Maybe KendraConfiguration)+updateIntentResponse_kendraConfiguration = Lens.lens (\UpdateIntentResponse' {kendraConfiguration} -> kendraConfiguration) (\s@UpdateIntentResponse' {} a -> s {kendraConfiguration = a} :: UpdateIntentResponse)++-- | A timestamp of the last time that the intent was modified.+updateIntentResponse_lastUpdatedDateTime :: Lens.Lens' UpdateIntentResponse (Prelude.Maybe Prelude.UTCTime)+updateIntentResponse_lastUpdatedDateTime = Lens.lens (\UpdateIntentResponse' {lastUpdatedDateTime} -> lastUpdatedDateTime) (\s@UpdateIntentResponse' {} a -> s {lastUpdatedDateTime = a} :: UpdateIntentResponse) Prelude.. Lens.mapping Data._Time++-- | The updated language and locale of the intent.+updateIntentResponse_localeId :: Lens.Lens' UpdateIntentResponse (Prelude.Maybe Prelude.Text)+updateIntentResponse_localeId = Lens.lens (\UpdateIntentResponse' {localeId} -> localeId) (\s@UpdateIntentResponse' {} a -> s {localeId = a} :: UpdateIntentResponse)++-- | The updated list of contexts that Amazon Lex activates when the intent+-- is fulfilled.+updateIntentResponse_outputContexts :: Lens.Lens' UpdateIntentResponse (Prelude.Maybe [OutputContext])+updateIntentResponse_outputContexts = Lens.lens (\UpdateIntentResponse' {outputContexts} -> outputContexts) (\s@UpdateIntentResponse' {} a -> s {outputContexts = a} :: UpdateIntentResponse) Prelude.. Lens.mapping Lens.coerced++-- | The updated built-in intent that is the parent of this intent.+updateIntentResponse_parentIntentSignature :: Lens.Lens' UpdateIntentResponse (Prelude.Maybe Prelude.Text)+updateIntentResponse_parentIntentSignature = Lens.lens (\UpdateIntentResponse' {parentIntentSignature} -> parentIntentSignature) (\s@UpdateIntentResponse' {} a -> s {parentIntentSignature = a} :: UpdateIntentResponse)++-- | The updated list of sample utterances for the intent.+updateIntentResponse_sampleUtterances :: Lens.Lens' UpdateIntentResponse (Prelude.Maybe [SampleUtterance])+updateIntentResponse_sampleUtterances = Lens.lens (\UpdateIntentResponse' {sampleUtterances} -> sampleUtterances) (\s@UpdateIntentResponse' {} a -> s {sampleUtterances = a} :: UpdateIntentResponse) Prelude.. Lens.mapping Lens.coerced++-- | The updated list of slots and their priorities that are elicited from+-- the user for the intent.+updateIntentResponse_slotPriorities :: Lens.Lens' UpdateIntentResponse (Prelude.Maybe [SlotPriority])+updateIntentResponse_slotPriorities = Lens.lens (\UpdateIntentResponse' {slotPriorities} -> slotPriorities) (\s@UpdateIntentResponse' {} a -> s {slotPriorities = a} :: UpdateIntentResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+updateIntentResponse_httpStatus :: Lens.Lens' UpdateIntentResponse Prelude.Int+updateIntentResponse_httpStatus = Lens.lens (\UpdateIntentResponse' {httpStatus} -> httpStatus) (\s@UpdateIntentResponse' {} a -> s {httpStatus = a} :: UpdateIntentResponse)++instance Prelude.NFData UpdateIntentResponse where+ rnf UpdateIntentResponse' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf dialogCodeHook+ `Prelude.seq` Prelude.rnf fulfillmentCodeHook+ `Prelude.seq` Prelude.rnf initialResponseSetting+ `Prelude.seq` Prelude.rnf inputContexts+ `Prelude.seq` Prelude.rnf intentClosingSetting+ `Prelude.seq` Prelude.rnf intentConfirmationSetting+ `Prelude.seq` Prelude.rnf intentId+ `Prelude.seq` Prelude.rnf intentName+ `Prelude.seq` Prelude.rnf kendraConfiguration+ `Prelude.seq` Prelude.rnf lastUpdatedDateTime+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf outputContexts+ `Prelude.seq` Prelude.rnf parentIntentSignature+ `Prelude.seq` Prelude.rnf sampleUtterances+ `Prelude.seq` Prelude.rnf slotPriorities+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/UpdateResourcePolicy.hs view
@@ -0,0 +1,263 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.UpdateResourcePolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Replaces the existing resource policy for a bot or bot alias with a new+-- one. If the policy doesn\'t exist, Amazon Lex returns an exception.+module Amazonka.LexV2Models.UpdateResourcePolicy+ ( -- * Creating a Request+ UpdateResourcePolicy (..),+ newUpdateResourcePolicy,++ -- * Request Lenses+ updateResourcePolicy_expectedRevisionId,+ updateResourcePolicy_resourceArn,+ updateResourcePolicy_policy,++ -- * Destructuring the Response+ UpdateResourcePolicyResponse (..),+ newUpdateResourcePolicyResponse,++ -- * Response Lenses+ updateResourcePolicyResponse_resourceArn,+ updateResourcePolicyResponse_revisionId,+ updateResourcePolicyResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateResourcePolicy' smart constructor.+data UpdateResourcePolicy = UpdateResourcePolicy'+ { -- | The identifier of the revision of the policy to update. If this revision+ -- ID doesn\'t match the current revision ID, Amazon Lex throws an+ -- exception.+ --+ -- If you don\'t specify a revision, Amazon Lex overwrites the contents of+ -- the policy with the new values.+ expectedRevisionId :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the bot or bot alias that the resource+ -- policy is attached to.+ resourceArn :: Prelude.Text,+ -- | A resource policy to add to the resource. The policy is a JSON structure+ -- that contains one or more statements that define the policy. The policy+ -- must follow the IAM syntax. For more information about the contents of a+ -- JSON policy document, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies.html IAM JSON policy reference>+ -- .+ --+ -- If the policy isn\'t valid, Amazon Lex returns a validation exception.+ policy :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateResourcePolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'expectedRevisionId', 'updateResourcePolicy_expectedRevisionId' - The identifier of the revision of the policy to update. If this revision+-- ID doesn\'t match the current revision ID, Amazon Lex throws an+-- exception.+--+-- If you don\'t specify a revision, Amazon Lex overwrites the contents of+-- the policy with the new values.+--+-- 'resourceArn', 'updateResourcePolicy_resourceArn' - The Amazon Resource Name (ARN) of the bot or bot alias that the resource+-- policy is attached to.+--+-- 'policy', 'updateResourcePolicy_policy' - A resource policy to add to the resource. The policy is a JSON structure+-- that contains one or more statements that define the policy. The policy+-- must follow the IAM syntax. For more information about the contents of a+-- JSON policy document, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies.html IAM JSON policy reference>+-- .+--+-- If the policy isn\'t valid, Amazon Lex returns a validation exception.+newUpdateResourcePolicy ::+ -- | 'resourceArn'+ Prelude.Text ->+ -- | 'policy'+ Prelude.Text ->+ UpdateResourcePolicy+newUpdateResourcePolicy pResourceArn_ pPolicy_ =+ UpdateResourcePolicy'+ { expectedRevisionId =+ Prelude.Nothing,+ resourceArn = pResourceArn_,+ policy = pPolicy_+ }++-- | The identifier of the revision of the policy to update. If this revision+-- ID doesn\'t match the current revision ID, Amazon Lex throws an+-- exception.+--+-- If you don\'t specify a revision, Amazon Lex overwrites the contents of+-- the policy with the new values.+updateResourcePolicy_expectedRevisionId :: Lens.Lens' UpdateResourcePolicy (Prelude.Maybe Prelude.Text)+updateResourcePolicy_expectedRevisionId = Lens.lens (\UpdateResourcePolicy' {expectedRevisionId} -> expectedRevisionId) (\s@UpdateResourcePolicy' {} a -> s {expectedRevisionId = a} :: UpdateResourcePolicy)++-- | The Amazon Resource Name (ARN) of the bot or bot alias that the resource+-- policy is attached to.+updateResourcePolicy_resourceArn :: Lens.Lens' UpdateResourcePolicy Prelude.Text+updateResourcePolicy_resourceArn = Lens.lens (\UpdateResourcePolicy' {resourceArn} -> resourceArn) (\s@UpdateResourcePolicy' {} a -> s {resourceArn = a} :: UpdateResourcePolicy)++-- | A resource policy to add to the resource. The policy is a JSON structure+-- that contains one or more statements that define the policy. The policy+-- must follow the IAM syntax. For more information about the contents of a+-- JSON policy document, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies.html IAM JSON policy reference>+-- .+--+-- If the policy isn\'t valid, Amazon Lex returns a validation exception.+updateResourcePolicy_policy :: Lens.Lens' UpdateResourcePolicy Prelude.Text+updateResourcePolicy_policy = Lens.lens (\UpdateResourcePolicy' {policy} -> policy) (\s@UpdateResourcePolicy' {} a -> s {policy = a} :: UpdateResourcePolicy)++instance Core.AWSRequest UpdateResourcePolicy where+ type+ AWSResponse UpdateResourcePolicy =+ UpdateResourcePolicyResponse+ request overrides =+ Request.putJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdateResourcePolicyResponse'+ Prelude.<$> (x Data..?> "resourceArn")+ Prelude.<*> (x Data..?> "revisionId")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UpdateResourcePolicy where+ hashWithSalt _salt UpdateResourcePolicy' {..} =+ _salt+ `Prelude.hashWithSalt` expectedRevisionId+ `Prelude.hashWithSalt` resourceArn+ `Prelude.hashWithSalt` policy++instance Prelude.NFData UpdateResourcePolicy where+ rnf UpdateResourcePolicy' {..} =+ Prelude.rnf expectedRevisionId+ `Prelude.seq` Prelude.rnf resourceArn+ `Prelude.seq` Prelude.rnf policy++instance Data.ToHeaders UpdateResourcePolicy where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdateResourcePolicy where+ toJSON UpdateResourcePolicy' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("policy" Data..= policy)]+ )++instance Data.ToPath UpdateResourcePolicy where+ toPath UpdateResourcePolicy' {..} =+ Prelude.mconcat+ ["/policy/", Data.toBS resourceArn, "/"]++instance Data.ToQuery UpdateResourcePolicy where+ toQuery UpdateResourcePolicy' {..} =+ Prelude.mconcat+ ["expectedRevisionId" Data.=: expectedRevisionId]++-- | /See:/ 'newUpdateResourcePolicyResponse' smart constructor.+data UpdateResourcePolicyResponse = UpdateResourcePolicyResponse'+ { -- | The Amazon Resource Name (ARN) of the bot or bot alias that the resource+ -- policy is attached to.+ resourceArn :: Prelude.Maybe Prelude.Text,+ -- | The current revision of the resource policy. Use the revision ID to make+ -- sure that you are updating the most current version of a resource policy+ -- when you add a policy statement to a resource, delete a resource, or+ -- update a resource.+ revisionId :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateResourcePolicyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'resourceArn', 'updateResourcePolicyResponse_resourceArn' - The Amazon Resource Name (ARN) of the bot or bot alias that the resource+-- policy is attached to.+--+-- 'revisionId', 'updateResourcePolicyResponse_revisionId' - The current revision of the resource policy. Use the revision ID to make+-- sure that you are updating the most current version of a resource policy+-- when you add a policy statement to a resource, delete a resource, or+-- update a resource.+--+-- 'httpStatus', 'updateResourcePolicyResponse_httpStatus' - The response's http status code.+newUpdateResourcePolicyResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UpdateResourcePolicyResponse+newUpdateResourcePolicyResponse pHttpStatus_ =+ UpdateResourcePolicyResponse'+ { resourceArn =+ Prelude.Nothing,+ revisionId = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The Amazon Resource Name (ARN) of the bot or bot alias that the resource+-- policy is attached to.+updateResourcePolicyResponse_resourceArn :: Lens.Lens' UpdateResourcePolicyResponse (Prelude.Maybe Prelude.Text)+updateResourcePolicyResponse_resourceArn = Lens.lens (\UpdateResourcePolicyResponse' {resourceArn} -> resourceArn) (\s@UpdateResourcePolicyResponse' {} a -> s {resourceArn = a} :: UpdateResourcePolicyResponse)++-- | The current revision of the resource policy. Use the revision ID to make+-- sure that you are updating the most current version of a resource policy+-- when you add a policy statement to a resource, delete a resource, or+-- update a resource.+updateResourcePolicyResponse_revisionId :: Lens.Lens' UpdateResourcePolicyResponse (Prelude.Maybe Prelude.Text)+updateResourcePolicyResponse_revisionId = Lens.lens (\UpdateResourcePolicyResponse' {revisionId} -> revisionId) (\s@UpdateResourcePolicyResponse' {} a -> s {revisionId = a} :: UpdateResourcePolicyResponse)++-- | The response's http status code.+updateResourcePolicyResponse_httpStatus :: Lens.Lens' UpdateResourcePolicyResponse Prelude.Int+updateResourcePolicyResponse_httpStatus = Lens.lens (\UpdateResourcePolicyResponse' {httpStatus} -> httpStatus) (\s@UpdateResourcePolicyResponse' {} a -> s {httpStatus = a} :: UpdateResourcePolicyResponse)++instance Prelude.NFData UpdateResourcePolicyResponse where+ rnf UpdateResourcePolicyResponse' {..} =+ Prelude.rnf resourceArn+ `Prelude.seq` Prelude.rnf revisionId+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/UpdateSlot.hs view
@@ -0,0 +1,546 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.UpdateSlot+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Updates the settings for a slot.+module Amazonka.LexV2Models.UpdateSlot+ ( -- * Creating a Request+ UpdateSlot (..),+ newUpdateSlot,++ -- * Request Lenses+ updateSlot_description,+ updateSlot_multipleValuesSetting,+ updateSlot_obfuscationSetting,+ updateSlot_slotTypeId,+ updateSlot_subSlotSetting,+ updateSlot_slotId,+ updateSlot_slotName,+ updateSlot_valueElicitationSetting,+ updateSlot_botId,+ updateSlot_botVersion,+ updateSlot_localeId,+ updateSlot_intentId,++ -- * Destructuring the Response+ UpdateSlotResponse (..),+ newUpdateSlotResponse,++ -- * Response Lenses+ updateSlotResponse_botId,+ updateSlotResponse_botVersion,+ updateSlotResponse_creationDateTime,+ updateSlotResponse_description,+ updateSlotResponse_intentId,+ updateSlotResponse_lastUpdatedDateTime,+ updateSlotResponse_localeId,+ updateSlotResponse_multipleValuesSetting,+ updateSlotResponse_obfuscationSetting,+ updateSlotResponse_slotId,+ updateSlotResponse_slotName,+ updateSlotResponse_slotTypeId,+ updateSlotResponse_subSlotSetting,+ updateSlotResponse_valueElicitationSetting,+ updateSlotResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateSlot' smart constructor.+data UpdateSlot = UpdateSlot'+ { -- | The new description for the slot.+ description :: Prelude.Maybe Prelude.Text,+ -- | Determines whether the slot accepts multiple values in one response.+ -- Multiple value slots are only available in the en-US locale. If you set+ -- this value to @true@ in any other locale, Amazon Lex throws a+ -- @ValidationException@.+ --+ -- If the @multipleValuesSetting@ is not set, the default value is @false@.+ multipleValuesSetting :: Prelude.Maybe MultipleValuesSetting,+ -- | New settings that determine how slot values are formatted in Amazon+ -- CloudWatch logs.+ obfuscationSetting :: Prelude.Maybe ObfuscationSetting,+ -- | The unique identifier of the new slot type to associate with this slot.+ slotTypeId :: Prelude.Maybe Prelude.Text,+ -- | Specifications for the constituent sub slots and the expression for the+ -- composite slot.+ subSlotSetting :: Prelude.Maybe SubSlotSetting,+ -- | The unique identifier for the slot to update.+ slotId :: Prelude.Text,+ -- | The new name for the slot.+ slotName :: Prelude.Text,+ -- | A new set of prompts that Amazon Lex sends to the user to elicit a+ -- response the provides a value for the slot.+ valueElicitationSetting :: SlotValueElicitationSetting,+ -- | The unique identifier of the bot that contains the slot.+ botId :: Prelude.Text,+ -- | The version of the bot that contains the slot. Must always be @DRAFT@.+ botVersion :: Prelude.Text,+ -- | The identifier of the language and locale that contains the slot. The+ -- string must match one of the supported locales. For more information,+ -- see+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+ localeId :: Prelude.Text,+ -- | The identifier of the intent that contains the slot.+ intentId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateSlot' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'description', 'updateSlot_description' - The new description for the slot.+--+-- 'multipleValuesSetting', 'updateSlot_multipleValuesSetting' - Determines whether the slot accepts multiple values in one response.+-- Multiple value slots are only available in the en-US locale. If you set+-- this value to @true@ in any other locale, Amazon Lex throws a+-- @ValidationException@.+--+-- If the @multipleValuesSetting@ is not set, the default value is @false@.+--+-- 'obfuscationSetting', 'updateSlot_obfuscationSetting' - New settings that determine how slot values are formatted in Amazon+-- CloudWatch logs.+--+-- 'slotTypeId', 'updateSlot_slotTypeId' - The unique identifier of the new slot type to associate with this slot.+--+-- 'subSlotSetting', 'updateSlot_subSlotSetting' - Specifications for the constituent sub slots and the expression for the+-- composite slot.+--+-- 'slotId', 'updateSlot_slotId' - The unique identifier for the slot to update.+--+-- 'slotName', 'updateSlot_slotName' - The new name for the slot.+--+-- 'valueElicitationSetting', 'updateSlot_valueElicitationSetting' - A new set of prompts that Amazon Lex sends to the user to elicit a+-- response the provides a value for the slot.+--+-- 'botId', 'updateSlot_botId' - The unique identifier of the bot that contains the slot.+--+-- 'botVersion', 'updateSlot_botVersion' - The version of the bot that contains the slot. Must always be @DRAFT@.+--+-- 'localeId', 'updateSlot_localeId' - The identifier of the language and locale that contains the slot. The+-- string must match one of the supported locales. For more information,+-- see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+--+-- 'intentId', 'updateSlot_intentId' - The identifier of the intent that contains the slot.+newUpdateSlot ::+ -- | 'slotId'+ Prelude.Text ->+ -- | 'slotName'+ Prelude.Text ->+ -- | 'valueElicitationSetting'+ SlotValueElicitationSetting ->+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ -- | 'localeId'+ Prelude.Text ->+ -- | 'intentId'+ Prelude.Text ->+ UpdateSlot+newUpdateSlot+ pSlotId_+ pSlotName_+ pValueElicitationSetting_+ pBotId_+ pBotVersion_+ pLocaleId_+ pIntentId_ =+ UpdateSlot'+ { description = Prelude.Nothing,+ multipleValuesSetting = Prelude.Nothing,+ obfuscationSetting = Prelude.Nothing,+ slotTypeId = Prelude.Nothing,+ subSlotSetting = Prelude.Nothing,+ slotId = pSlotId_,+ slotName = pSlotName_,+ valueElicitationSetting = pValueElicitationSetting_,+ botId = pBotId_,+ botVersion = pBotVersion_,+ localeId = pLocaleId_,+ intentId = pIntentId_+ }++-- | The new description for the slot.+updateSlot_description :: Lens.Lens' UpdateSlot (Prelude.Maybe Prelude.Text)+updateSlot_description = Lens.lens (\UpdateSlot' {description} -> description) (\s@UpdateSlot' {} a -> s {description = a} :: UpdateSlot)++-- | Determines whether the slot accepts multiple values in one response.+-- Multiple value slots are only available in the en-US locale. If you set+-- this value to @true@ in any other locale, Amazon Lex throws a+-- @ValidationException@.+--+-- If the @multipleValuesSetting@ is not set, the default value is @false@.+updateSlot_multipleValuesSetting :: Lens.Lens' UpdateSlot (Prelude.Maybe MultipleValuesSetting)+updateSlot_multipleValuesSetting = Lens.lens (\UpdateSlot' {multipleValuesSetting} -> multipleValuesSetting) (\s@UpdateSlot' {} a -> s {multipleValuesSetting = a} :: UpdateSlot)++-- | New settings that determine how slot values are formatted in Amazon+-- CloudWatch logs.+updateSlot_obfuscationSetting :: Lens.Lens' UpdateSlot (Prelude.Maybe ObfuscationSetting)+updateSlot_obfuscationSetting = Lens.lens (\UpdateSlot' {obfuscationSetting} -> obfuscationSetting) (\s@UpdateSlot' {} a -> s {obfuscationSetting = a} :: UpdateSlot)++-- | The unique identifier of the new slot type to associate with this slot.+updateSlot_slotTypeId :: Lens.Lens' UpdateSlot (Prelude.Maybe Prelude.Text)+updateSlot_slotTypeId = Lens.lens (\UpdateSlot' {slotTypeId} -> slotTypeId) (\s@UpdateSlot' {} a -> s {slotTypeId = a} :: UpdateSlot)++-- | Specifications for the constituent sub slots and the expression for the+-- composite slot.+updateSlot_subSlotSetting :: Lens.Lens' UpdateSlot (Prelude.Maybe SubSlotSetting)+updateSlot_subSlotSetting = Lens.lens (\UpdateSlot' {subSlotSetting} -> subSlotSetting) (\s@UpdateSlot' {} a -> s {subSlotSetting = a} :: UpdateSlot)++-- | The unique identifier for the slot to update.+updateSlot_slotId :: Lens.Lens' UpdateSlot Prelude.Text+updateSlot_slotId = Lens.lens (\UpdateSlot' {slotId} -> slotId) (\s@UpdateSlot' {} a -> s {slotId = a} :: UpdateSlot)++-- | The new name for the slot.+updateSlot_slotName :: Lens.Lens' UpdateSlot Prelude.Text+updateSlot_slotName = Lens.lens (\UpdateSlot' {slotName} -> slotName) (\s@UpdateSlot' {} a -> s {slotName = a} :: UpdateSlot)++-- | A new set of prompts that Amazon Lex sends to the user to elicit a+-- response the provides a value for the slot.+updateSlot_valueElicitationSetting :: Lens.Lens' UpdateSlot SlotValueElicitationSetting+updateSlot_valueElicitationSetting = Lens.lens (\UpdateSlot' {valueElicitationSetting} -> valueElicitationSetting) (\s@UpdateSlot' {} a -> s {valueElicitationSetting = a} :: UpdateSlot)++-- | The unique identifier of the bot that contains the slot.+updateSlot_botId :: Lens.Lens' UpdateSlot Prelude.Text+updateSlot_botId = Lens.lens (\UpdateSlot' {botId} -> botId) (\s@UpdateSlot' {} a -> s {botId = a} :: UpdateSlot)++-- | The version of the bot that contains the slot. Must always be @DRAFT@.+updateSlot_botVersion :: Lens.Lens' UpdateSlot Prelude.Text+updateSlot_botVersion = Lens.lens (\UpdateSlot' {botVersion} -> botVersion) (\s@UpdateSlot' {} a -> s {botVersion = a} :: UpdateSlot)++-- | The identifier of the language and locale that contains the slot. The+-- string must match one of the supported locales. For more information,+-- see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+updateSlot_localeId :: Lens.Lens' UpdateSlot Prelude.Text+updateSlot_localeId = Lens.lens (\UpdateSlot' {localeId} -> localeId) (\s@UpdateSlot' {} a -> s {localeId = a} :: UpdateSlot)++-- | The identifier of the intent that contains the slot.+updateSlot_intentId :: Lens.Lens' UpdateSlot Prelude.Text+updateSlot_intentId = Lens.lens (\UpdateSlot' {intentId} -> intentId) (\s@UpdateSlot' {} a -> s {intentId = a} :: UpdateSlot)++instance Core.AWSRequest UpdateSlot where+ type AWSResponse UpdateSlot = UpdateSlotResponse+ request overrides =+ Request.putJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdateSlotResponse'+ Prelude.<$> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botVersion")+ Prelude.<*> (x Data..?> "creationDateTime")+ Prelude.<*> (x Data..?> "description")+ Prelude.<*> (x Data..?> "intentId")+ Prelude.<*> (x Data..?> "lastUpdatedDateTime")+ Prelude.<*> (x Data..?> "localeId")+ Prelude.<*> (x Data..?> "multipleValuesSetting")+ Prelude.<*> (x Data..?> "obfuscationSetting")+ Prelude.<*> (x Data..?> "slotId")+ Prelude.<*> (x Data..?> "slotName")+ Prelude.<*> (x Data..?> "slotTypeId")+ Prelude.<*> (x Data..?> "subSlotSetting")+ Prelude.<*> (x Data..?> "valueElicitationSetting")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UpdateSlot where+ hashWithSalt _salt UpdateSlot' {..} =+ _salt+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` multipleValuesSetting+ `Prelude.hashWithSalt` obfuscationSetting+ `Prelude.hashWithSalt` slotTypeId+ `Prelude.hashWithSalt` subSlotSetting+ `Prelude.hashWithSalt` slotId+ `Prelude.hashWithSalt` slotName+ `Prelude.hashWithSalt` valueElicitationSetting+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` localeId+ `Prelude.hashWithSalt` intentId++instance Prelude.NFData UpdateSlot where+ rnf UpdateSlot' {..} =+ Prelude.rnf description+ `Prelude.seq` Prelude.rnf multipleValuesSetting+ `Prelude.seq` Prelude.rnf obfuscationSetting+ `Prelude.seq` Prelude.rnf slotTypeId+ `Prelude.seq` Prelude.rnf subSlotSetting+ `Prelude.seq` Prelude.rnf slotId+ `Prelude.seq` Prelude.rnf slotName+ `Prelude.seq` Prelude.rnf valueElicitationSetting+ `Prelude.seq` Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf intentId++instance Data.ToHeaders UpdateSlot where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdateSlot where+ toJSON UpdateSlot' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("description" Data..=) Prelude.<$> description,+ ("multipleValuesSetting" Data..=)+ Prelude.<$> multipleValuesSetting,+ ("obfuscationSetting" Data..=)+ Prelude.<$> obfuscationSetting,+ ("slotTypeId" Data..=) Prelude.<$> slotTypeId,+ ("subSlotSetting" Data..=)+ Prelude.<$> subSlotSetting,+ Prelude.Just ("slotName" Data..= slotName),+ Prelude.Just+ ( "valueElicitationSetting"+ Data..= valueElicitationSetting+ )+ ]+ )++instance Data.ToPath UpdateSlot where+ toPath UpdateSlot' {..} =+ Prelude.mconcat+ [ "/bots/",+ Data.toBS botId,+ "/botversions/",+ Data.toBS botVersion,+ "/botlocales/",+ Data.toBS localeId,+ "/intents/",+ Data.toBS intentId,+ "/slots/",+ Data.toBS slotId,+ "/"+ ]++instance Data.ToQuery UpdateSlot where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUpdateSlotResponse' smart constructor.+data UpdateSlotResponse = UpdateSlotResponse'+ { -- | The identifier of the bot that contains the slot.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The identifier of the slot version that contains the slot. Will always+ -- be @DRAFT@.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | The timestamp of the date and time that the slot was created.+ creationDateTime :: Prelude.Maybe Data.POSIX,+ -- | The updated description of the bot.+ description :: Prelude.Maybe Prelude.Text,+ -- | The intent that contains the slot.+ intentId :: Prelude.Maybe Prelude.Text,+ -- | The timestamp of the date and time that the slot was last updated.+ lastUpdatedDateTime :: Prelude.Maybe Data.POSIX,+ -- | The locale that contains the slot.+ localeId :: Prelude.Maybe Prelude.Text,+ -- | Indicates whether the slot accepts multiple values in one response.+ multipleValuesSetting :: Prelude.Maybe MultipleValuesSetting,+ -- | The updated setting that determines whether the slot value is obfuscated+ -- in the Amazon CloudWatch logs.+ obfuscationSetting :: Prelude.Maybe ObfuscationSetting,+ -- | The unique identifier of the slot that was updated.+ slotId :: Prelude.Maybe Prelude.Text,+ -- | The updated name of the slot.+ slotName :: Prelude.Maybe Prelude.Text,+ -- | The updated identifier of the slot type that provides values for the+ -- slot.+ slotTypeId :: Prelude.Maybe Prelude.Text,+ -- | Specifications for the constituent sub slots and the expression for the+ -- composite slot.+ subSlotSetting :: Prelude.Maybe SubSlotSetting,+ -- | The updated prompts that Amazon Lex sends to the user to elicit a+ -- response that provides a value for the slot.+ valueElicitationSetting :: Prelude.Maybe SlotValueElicitationSetting,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateSlotResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'updateSlotResponse_botId' - The identifier of the bot that contains the slot.+--+-- 'botVersion', 'updateSlotResponse_botVersion' - The identifier of the slot version that contains the slot. Will always+-- be @DRAFT@.+--+-- 'creationDateTime', 'updateSlotResponse_creationDateTime' - The timestamp of the date and time that the slot was created.+--+-- 'description', 'updateSlotResponse_description' - The updated description of the bot.+--+-- 'intentId', 'updateSlotResponse_intentId' - The intent that contains the slot.+--+-- 'lastUpdatedDateTime', 'updateSlotResponse_lastUpdatedDateTime' - The timestamp of the date and time that the slot was last updated.+--+-- 'localeId', 'updateSlotResponse_localeId' - The locale that contains the slot.+--+-- 'multipleValuesSetting', 'updateSlotResponse_multipleValuesSetting' - Indicates whether the slot accepts multiple values in one response.+--+-- 'obfuscationSetting', 'updateSlotResponse_obfuscationSetting' - The updated setting that determines whether the slot value is obfuscated+-- in the Amazon CloudWatch logs.+--+-- 'slotId', 'updateSlotResponse_slotId' - The unique identifier of the slot that was updated.+--+-- 'slotName', 'updateSlotResponse_slotName' - The updated name of the slot.+--+-- 'slotTypeId', 'updateSlotResponse_slotTypeId' - The updated identifier of the slot type that provides values for the+-- slot.+--+-- 'subSlotSetting', 'updateSlotResponse_subSlotSetting' - Specifications for the constituent sub slots and the expression for the+-- composite slot.+--+-- 'valueElicitationSetting', 'updateSlotResponse_valueElicitationSetting' - The updated prompts that Amazon Lex sends to the user to elicit a+-- response that provides a value for the slot.+--+-- 'httpStatus', 'updateSlotResponse_httpStatus' - The response's http status code.+newUpdateSlotResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UpdateSlotResponse+newUpdateSlotResponse pHttpStatus_ =+ UpdateSlotResponse'+ { botId = Prelude.Nothing,+ botVersion = Prelude.Nothing,+ creationDateTime = Prelude.Nothing,+ description = Prelude.Nothing,+ intentId = Prelude.Nothing,+ lastUpdatedDateTime = Prelude.Nothing,+ localeId = Prelude.Nothing,+ multipleValuesSetting = Prelude.Nothing,+ obfuscationSetting = Prelude.Nothing,+ slotId = Prelude.Nothing,+ slotName = Prelude.Nothing,+ slotTypeId = Prelude.Nothing,+ subSlotSetting = Prelude.Nothing,+ valueElicitationSetting = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The identifier of the bot that contains the slot.+updateSlotResponse_botId :: Lens.Lens' UpdateSlotResponse (Prelude.Maybe Prelude.Text)+updateSlotResponse_botId = Lens.lens (\UpdateSlotResponse' {botId} -> botId) (\s@UpdateSlotResponse' {} a -> s {botId = a} :: UpdateSlotResponse)++-- | The identifier of the slot version that contains the slot. Will always+-- be @DRAFT@.+updateSlotResponse_botVersion :: Lens.Lens' UpdateSlotResponse (Prelude.Maybe Prelude.Text)+updateSlotResponse_botVersion = Lens.lens (\UpdateSlotResponse' {botVersion} -> botVersion) (\s@UpdateSlotResponse' {} a -> s {botVersion = a} :: UpdateSlotResponse)++-- | The timestamp of the date and time that the slot was created.+updateSlotResponse_creationDateTime :: Lens.Lens' UpdateSlotResponse (Prelude.Maybe Prelude.UTCTime)+updateSlotResponse_creationDateTime = Lens.lens (\UpdateSlotResponse' {creationDateTime} -> creationDateTime) (\s@UpdateSlotResponse' {} a -> s {creationDateTime = a} :: UpdateSlotResponse) Prelude.. Lens.mapping Data._Time++-- | The updated description of the bot.+updateSlotResponse_description :: Lens.Lens' UpdateSlotResponse (Prelude.Maybe Prelude.Text)+updateSlotResponse_description = Lens.lens (\UpdateSlotResponse' {description} -> description) (\s@UpdateSlotResponse' {} a -> s {description = a} :: UpdateSlotResponse)++-- | The intent that contains the slot.+updateSlotResponse_intentId :: Lens.Lens' UpdateSlotResponse (Prelude.Maybe Prelude.Text)+updateSlotResponse_intentId = Lens.lens (\UpdateSlotResponse' {intentId} -> intentId) (\s@UpdateSlotResponse' {} a -> s {intentId = a} :: UpdateSlotResponse)++-- | The timestamp of the date and time that the slot was last updated.+updateSlotResponse_lastUpdatedDateTime :: Lens.Lens' UpdateSlotResponse (Prelude.Maybe Prelude.UTCTime)+updateSlotResponse_lastUpdatedDateTime = Lens.lens (\UpdateSlotResponse' {lastUpdatedDateTime} -> lastUpdatedDateTime) (\s@UpdateSlotResponse' {} a -> s {lastUpdatedDateTime = a} :: UpdateSlotResponse) Prelude.. Lens.mapping Data._Time++-- | The locale that contains the slot.+updateSlotResponse_localeId :: Lens.Lens' UpdateSlotResponse (Prelude.Maybe Prelude.Text)+updateSlotResponse_localeId = Lens.lens (\UpdateSlotResponse' {localeId} -> localeId) (\s@UpdateSlotResponse' {} a -> s {localeId = a} :: UpdateSlotResponse)++-- | Indicates whether the slot accepts multiple values in one response.+updateSlotResponse_multipleValuesSetting :: Lens.Lens' UpdateSlotResponse (Prelude.Maybe MultipleValuesSetting)+updateSlotResponse_multipleValuesSetting = Lens.lens (\UpdateSlotResponse' {multipleValuesSetting} -> multipleValuesSetting) (\s@UpdateSlotResponse' {} a -> s {multipleValuesSetting = a} :: UpdateSlotResponse)++-- | The updated setting that determines whether the slot value is obfuscated+-- in the Amazon CloudWatch logs.+updateSlotResponse_obfuscationSetting :: Lens.Lens' UpdateSlotResponse (Prelude.Maybe ObfuscationSetting)+updateSlotResponse_obfuscationSetting = Lens.lens (\UpdateSlotResponse' {obfuscationSetting} -> obfuscationSetting) (\s@UpdateSlotResponse' {} a -> s {obfuscationSetting = a} :: UpdateSlotResponse)++-- | The unique identifier of the slot that was updated.+updateSlotResponse_slotId :: Lens.Lens' UpdateSlotResponse (Prelude.Maybe Prelude.Text)+updateSlotResponse_slotId = Lens.lens (\UpdateSlotResponse' {slotId} -> slotId) (\s@UpdateSlotResponse' {} a -> s {slotId = a} :: UpdateSlotResponse)++-- | The updated name of the slot.+updateSlotResponse_slotName :: Lens.Lens' UpdateSlotResponse (Prelude.Maybe Prelude.Text)+updateSlotResponse_slotName = Lens.lens (\UpdateSlotResponse' {slotName} -> slotName) (\s@UpdateSlotResponse' {} a -> s {slotName = a} :: UpdateSlotResponse)++-- | The updated identifier of the slot type that provides values for the+-- slot.+updateSlotResponse_slotTypeId :: Lens.Lens' UpdateSlotResponse (Prelude.Maybe Prelude.Text)+updateSlotResponse_slotTypeId = Lens.lens (\UpdateSlotResponse' {slotTypeId} -> slotTypeId) (\s@UpdateSlotResponse' {} a -> s {slotTypeId = a} :: UpdateSlotResponse)++-- | Specifications for the constituent sub slots and the expression for the+-- composite slot.+updateSlotResponse_subSlotSetting :: Lens.Lens' UpdateSlotResponse (Prelude.Maybe SubSlotSetting)+updateSlotResponse_subSlotSetting = Lens.lens (\UpdateSlotResponse' {subSlotSetting} -> subSlotSetting) (\s@UpdateSlotResponse' {} a -> s {subSlotSetting = a} :: UpdateSlotResponse)++-- | The updated prompts that Amazon Lex sends to the user to elicit a+-- response that provides a value for the slot.+updateSlotResponse_valueElicitationSetting :: Lens.Lens' UpdateSlotResponse (Prelude.Maybe SlotValueElicitationSetting)+updateSlotResponse_valueElicitationSetting = Lens.lens (\UpdateSlotResponse' {valueElicitationSetting} -> valueElicitationSetting) (\s@UpdateSlotResponse' {} a -> s {valueElicitationSetting = a} :: UpdateSlotResponse)++-- | The response's http status code.+updateSlotResponse_httpStatus :: Lens.Lens' UpdateSlotResponse Prelude.Int+updateSlotResponse_httpStatus = Lens.lens (\UpdateSlotResponse' {httpStatus} -> httpStatus) (\s@UpdateSlotResponse' {} a -> s {httpStatus = a} :: UpdateSlotResponse)++instance Prelude.NFData UpdateSlotResponse where+ rnf UpdateSlotResponse' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf intentId+ `Prelude.seq` Prelude.rnf lastUpdatedDateTime+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf multipleValuesSetting+ `Prelude.seq` Prelude.rnf obfuscationSetting+ `Prelude.seq` Prelude.rnf slotId+ `Prelude.seq` Prelude.rnf slotName+ `Prelude.seq` Prelude.rnf slotTypeId+ `Prelude.seq` Prelude.rnf subSlotSetting+ `Prelude.seq` Prelude.rnf valueElicitationSetting+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/UpdateSlotType.hs view
@@ -0,0 +1,493 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.UpdateSlotType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Updates the configuration of an existing slot type.+module Amazonka.LexV2Models.UpdateSlotType+ ( -- * Creating a Request+ UpdateSlotType (..),+ newUpdateSlotType,++ -- * Request Lenses+ updateSlotType_compositeSlotTypeSetting,+ updateSlotType_description,+ updateSlotType_externalSourceSetting,+ updateSlotType_parentSlotTypeSignature,+ updateSlotType_slotTypeValues,+ updateSlotType_valueSelectionSetting,+ updateSlotType_slotTypeId,+ updateSlotType_slotTypeName,+ updateSlotType_botId,+ updateSlotType_botVersion,+ updateSlotType_localeId,++ -- * Destructuring the Response+ UpdateSlotTypeResponse (..),+ newUpdateSlotTypeResponse,++ -- * Response Lenses+ updateSlotTypeResponse_botId,+ updateSlotTypeResponse_botVersion,+ updateSlotTypeResponse_compositeSlotTypeSetting,+ updateSlotTypeResponse_creationDateTime,+ updateSlotTypeResponse_description,+ updateSlotTypeResponse_externalSourceSetting,+ updateSlotTypeResponse_lastUpdatedDateTime,+ updateSlotTypeResponse_localeId,+ updateSlotTypeResponse_parentSlotTypeSignature,+ updateSlotTypeResponse_slotTypeId,+ updateSlotTypeResponse_slotTypeName,+ updateSlotTypeResponse_slotTypeValues,+ updateSlotTypeResponse_valueSelectionSetting,+ updateSlotTypeResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateSlotType' smart constructor.+data UpdateSlotType = UpdateSlotType'+ { -- | Specifications for a composite slot type.+ compositeSlotTypeSetting :: Prelude.Maybe CompositeSlotTypeSetting,+ -- | The new description of the slot type.+ description :: Prelude.Maybe Prelude.Text,+ externalSourceSetting :: Prelude.Maybe ExternalSourceSetting,+ -- | The new built-in slot type that should be used as the parent of this+ -- slot type.+ parentSlotTypeSignature :: Prelude.Maybe Prelude.Text,+ -- | A new list of values and their optional synonyms that define the values+ -- that the slot type can take.+ slotTypeValues :: Prelude.Maybe (Prelude.NonEmpty SlotTypeValue),+ -- | The strategy that Amazon Lex should use when deciding on a value from+ -- the list of slot type values.+ valueSelectionSetting :: Prelude.Maybe SlotValueSelectionSetting,+ -- | The unique identifier of the slot type to update.+ slotTypeId :: Prelude.Text,+ -- | The new name of the slot type.+ slotTypeName :: Prelude.Text,+ -- | The identifier of the bot that contains the slot type.+ botId :: Prelude.Text,+ -- | The version of the bot that contains the slot type. Must be @DRAFT@.+ botVersion :: Prelude.Text,+ -- | The identifier of the language and locale that contains the slot type.+ -- The string must match one of the supported locales. For more+ -- information, see+ -- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+ localeId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateSlotType' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'compositeSlotTypeSetting', 'updateSlotType_compositeSlotTypeSetting' - Specifications for a composite slot type.+--+-- 'description', 'updateSlotType_description' - The new description of the slot type.+--+-- 'externalSourceSetting', 'updateSlotType_externalSourceSetting' - Undocumented member.+--+-- 'parentSlotTypeSignature', 'updateSlotType_parentSlotTypeSignature' - The new built-in slot type that should be used as the parent of this+-- slot type.+--+-- 'slotTypeValues', 'updateSlotType_slotTypeValues' - A new list of values and their optional synonyms that define the values+-- that the slot type can take.+--+-- 'valueSelectionSetting', 'updateSlotType_valueSelectionSetting' - The strategy that Amazon Lex should use when deciding on a value from+-- the list of slot type values.+--+-- 'slotTypeId', 'updateSlotType_slotTypeId' - The unique identifier of the slot type to update.+--+-- 'slotTypeName', 'updateSlotType_slotTypeName' - The new name of the slot type.+--+-- 'botId', 'updateSlotType_botId' - The identifier of the bot that contains the slot type.+--+-- 'botVersion', 'updateSlotType_botVersion' - The version of the bot that contains the slot type. Must be @DRAFT@.+--+-- 'localeId', 'updateSlotType_localeId' - The identifier of the language and locale that contains the slot type.+-- The string must match one of the supported locales. For more+-- information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+newUpdateSlotType ::+ -- | 'slotTypeId'+ Prelude.Text ->+ -- | 'slotTypeName'+ Prelude.Text ->+ -- | 'botId'+ Prelude.Text ->+ -- | 'botVersion'+ Prelude.Text ->+ -- | 'localeId'+ Prelude.Text ->+ UpdateSlotType+newUpdateSlotType+ pSlotTypeId_+ pSlotTypeName_+ pBotId_+ pBotVersion_+ pLocaleId_ =+ UpdateSlotType'+ { compositeSlotTypeSetting =+ Prelude.Nothing,+ description = Prelude.Nothing,+ externalSourceSetting = Prelude.Nothing,+ parentSlotTypeSignature = Prelude.Nothing,+ slotTypeValues = Prelude.Nothing,+ valueSelectionSetting = Prelude.Nothing,+ slotTypeId = pSlotTypeId_,+ slotTypeName = pSlotTypeName_,+ botId = pBotId_,+ botVersion = pBotVersion_,+ localeId = pLocaleId_+ }++-- | Specifications for a composite slot type.+updateSlotType_compositeSlotTypeSetting :: Lens.Lens' UpdateSlotType (Prelude.Maybe CompositeSlotTypeSetting)+updateSlotType_compositeSlotTypeSetting = Lens.lens (\UpdateSlotType' {compositeSlotTypeSetting} -> compositeSlotTypeSetting) (\s@UpdateSlotType' {} a -> s {compositeSlotTypeSetting = a} :: UpdateSlotType)++-- | The new description of the slot type.+updateSlotType_description :: Lens.Lens' UpdateSlotType (Prelude.Maybe Prelude.Text)+updateSlotType_description = Lens.lens (\UpdateSlotType' {description} -> description) (\s@UpdateSlotType' {} a -> s {description = a} :: UpdateSlotType)++-- | Undocumented member.+updateSlotType_externalSourceSetting :: Lens.Lens' UpdateSlotType (Prelude.Maybe ExternalSourceSetting)+updateSlotType_externalSourceSetting = Lens.lens (\UpdateSlotType' {externalSourceSetting} -> externalSourceSetting) (\s@UpdateSlotType' {} a -> s {externalSourceSetting = a} :: UpdateSlotType)++-- | The new built-in slot type that should be used as the parent of this+-- slot type.+updateSlotType_parentSlotTypeSignature :: Lens.Lens' UpdateSlotType (Prelude.Maybe Prelude.Text)+updateSlotType_parentSlotTypeSignature = Lens.lens (\UpdateSlotType' {parentSlotTypeSignature} -> parentSlotTypeSignature) (\s@UpdateSlotType' {} a -> s {parentSlotTypeSignature = a} :: UpdateSlotType)++-- | A new list of values and their optional synonyms that define the values+-- that the slot type can take.+updateSlotType_slotTypeValues :: Lens.Lens' UpdateSlotType (Prelude.Maybe (Prelude.NonEmpty SlotTypeValue))+updateSlotType_slotTypeValues = Lens.lens (\UpdateSlotType' {slotTypeValues} -> slotTypeValues) (\s@UpdateSlotType' {} a -> s {slotTypeValues = a} :: UpdateSlotType) Prelude.. Lens.mapping Lens.coerced++-- | The strategy that Amazon Lex should use when deciding on a value from+-- the list of slot type values.+updateSlotType_valueSelectionSetting :: Lens.Lens' UpdateSlotType (Prelude.Maybe SlotValueSelectionSetting)+updateSlotType_valueSelectionSetting = Lens.lens (\UpdateSlotType' {valueSelectionSetting} -> valueSelectionSetting) (\s@UpdateSlotType' {} a -> s {valueSelectionSetting = a} :: UpdateSlotType)++-- | The unique identifier of the slot type to update.+updateSlotType_slotTypeId :: Lens.Lens' UpdateSlotType Prelude.Text+updateSlotType_slotTypeId = Lens.lens (\UpdateSlotType' {slotTypeId} -> slotTypeId) (\s@UpdateSlotType' {} a -> s {slotTypeId = a} :: UpdateSlotType)++-- | The new name of the slot type.+updateSlotType_slotTypeName :: Lens.Lens' UpdateSlotType Prelude.Text+updateSlotType_slotTypeName = Lens.lens (\UpdateSlotType' {slotTypeName} -> slotTypeName) (\s@UpdateSlotType' {} a -> s {slotTypeName = a} :: UpdateSlotType)++-- | The identifier of the bot that contains the slot type.+updateSlotType_botId :: Lens.Lens' UpdateSlotType Prelude.Text+updateSlotType_botId = Lens.lens (\UpdateSlotType' {botId} -> botId) (\s@UpdateSlotType' {} a -> s {botId = a} :: UpdateSlotType)++-- | The version of the bot that contains the slot type. Must be @DRAFT@.+updateSlotType_botVersion :: Lens.Lens' UpdateSlotType Prelude.Text+updateSlotType_botVersion = Lens.lens (\UpdateSlotType' {botVersion} -> botVersion) (\s@UpdateSlotType' {} a -> s {botVersion = a} :: UpdateSlotType)++-- | The identifier of the language and locale that contains the slot type.+-- The string must match one of the supported locales. For more+-- information, see+-- <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html Supported languages>.+updateSlotType_localeId :: Lens.Lens' UpdateSlotType Prelude.Text+updateSlotType_localeId = Lens.lens (\UpdateSlotType' {localeId} -> localeId) (\s@UpdateSlotType' {} a -> s {localeId = a} :: UpdateSlotType)++instance Core.AWSRequest UpdateSlotType where+ type+ AWSResponse UpdateSlotType =+ UpdateSlotTypeResponse+ request overrides =+ Request.putJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdateSlotTypeResponse'+ Prelude.<$> (x Data..?> "botId")+ Prelude.<*> (x Data..?> "botVersion")+ Prelude.<*> (x Data..?> "compositeSlotTypeSetting")+ Prelude.<*> (x Data..?> "creationDateTime")+ Prelude.<*> (x Data..?> "description")+ Prelude.<*> (x Data..?> "externalSourceSetting")+ Prelude.<*> (x Data..?> "lastUpdatedDateTime")+ Prelude.<*> (x Data..?> "localeId")+ Prelude.<*> (x Data..?> "parentSlotTypeSignature")+ Prelude.<*> (x Data..?> "slotTypeId")+ Prelude.<*> (x Data..?> "slotTypeName")+ Prelude.<*> (x Data..?> "slotTypeValues")+ Prelude.<*> (x Data..?> "valueSelectionSetting")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UpdateSlotType where+ hashWithSalt _salt UpdateSlotType' {..} =+ _salt+ `Prelude.hashWithSalt` compositeSlotTypeSetting+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` externalSourceSetting+ `Prelude.hashWithSalt` parentSlotTypeSignature+ `Prelude.hashWithSalt` slotTypeValues+ `Prelude.hashWithSalt` valueSelectionSetting+ `Prelude.hashWithSalt` slotTypeId+ `Prelude.hashWithSalt` slotTypeName+ `Prelude.hashWithSalt` botId+ `Prelude.hashWithSalt` botVersion+ `Prelude.hashWithSalt` localeId++instance Prelude.NFData UpdateSlotType where+ rnf UpdateSlotType' {..} =+ Prelude.rnf compositeSlotTypeSetting+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf externalSourceSetting+ `Prelude.seq` Prelude.rnf parentSlotTypeSignature+ `Prelude.seq` Prelude.rnf slotTypeValues+ `Prelude.seq` Prelude.rnf valueSelectionSetting+ `Prelude.seq` Prelude.rnf slotTypeId+ `Prelude.seq` Prelude.rnf slotTypeName+ `Prelude.seq` Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf localeId++instance Data.ToHeaders UpdateSlotType where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdateSlotType where+ toJSON UpdateSlotType' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("compositeSlotTypeSetting" Data..=)+ Prelude.<$> compositeSlotTypeSetting,+ ("description" Data..=) Prelude.<$> description,+ ("externalSourceSetting" Data..=)+ Prelude.<$> externalSourceSetting,+ ("parentSlotTypeSignature" Data..=)+ Prelude.<$> parentSlotTypeSignature,+ ("slotTypeValues" Data..=)+ Prelude.<$> slotTypeValues,+ ("valueSelectionSetting" Data..=)+ Prelude.<$> valueSelectionSetting,+ Prelude.Just ("slotTypeName" Data..= slotTypeName)+ ]+ )++instance Data.ToPath UpdateSlotType where+ toPath UpdateSlotType' {..} =+ Prelude.mconcat+ [ "/bots/",+ Data.toBS botId,+ "/botversions/",+ Data.toBS botVersion,+ "/botlocales/",+ Data.toBS localeId,+ "/slottypes/",+ Data.toBS slotTypeId,+ "/"+ ]++instance Data.ToQuery UpdateSlotType where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUpdateSlotTypeResponse' smart constructor.+data UpdateSlotTypeResponse = UpdateSlotTypeResponse'+ { -- | The identifier of the bot that contains the slot type.+ botId :: Prelude.Maybe Prelude.Text,+ -- | The version of the bot that contains the slot type. This is always+ -- @DRAFT@.+ botVersion :: Prelude.Maybe Prelude.Text,+ -- | Specifications for a composite slot type.+ compositeSlotTypeSetting :: Prelude.Maybe CompositeSlotTypeSetting,+ -- | The timestamp of the date and time that the slot type was created.+ creationDateTime :: Prelude.Maybe Data.POSIX,+ -- | The updated description of the slot type.+ description :: Prelude.Maybe Prelude.Text,+ externalSourceSetting :: Prelude.Maybe ExternalSourceSetting,+ -- | A timestamp of the date and time that the slot type was last updated.+ lastUpdatedDateTime :: Prelude.Maybe Data.POSIX,+ -- | The language and locale of the updated slot type.+ localeId :: Prelude.Maybe Prelude.Text,+ -- | The updated signature of the built-in slot type that is the parent of+ -- this slot type.+ parentSlotTypeSignature :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier of the updated slot type.+ slotTypeId :: Prelude.Maybe Prelude.Text,+ -- | The updated name of the slot type.+ slotTypeName :: Prelude.Maybe Prelude.Text,+ -- | The updated values that the slot type provides.+ slotTypeValues :: Prelude.Maybe (Prelude.NonEmpty SlotTypeValue),+ -- | The updated strategy that Amazon Lex uses to determine which value to+ -- select from the slot type.+ valueSelectionSetting :: Prelude.Maybe SlotValueSelectionSetting,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateSlotTypeResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'botId', 'updateSlotTypeResponse_botId' - The identifier of the bot that contains the slot type.+--+-- 'botVersion', 'updateSlotTypeResponse_botVersion' - The version of the bot that contains the slot type. This is always+-- @DRAFT@.+--+-- 'compositeSlotTypeSetting', 'updateSlotTypeResponse_compositeSlotTypeSetting' - Specifications for a composite slot type.+--+-- 'creationDateTime', 'updateSlotTypeResponse_creationDateTime' - The timestamp of the date and time that the slot type was created.+--+-- 'description', 'updateSlotTypeResponse_description' - The updated description of the slot type.+--+-- 'externalSourceSetting', 'updateSlotTypeResponse_externalSourceSetting' - Undocumented member.+--+-- 'lastUpdatedDateTime', 'updateSlotTypeResponse_lastUpdatedDateTime' - A timestamp of the date and time that the slot type was last updated.+--+-- 'localeId', 'updateSlotTypeResponse_localeId' - The language and locale of the updated slot type.+--+-- 'parentSlotTypeSignature', 'updateSlotTypeResponse_parentSlotTypeSignature' - The updated signature of the built-in slot type that is the parent of+-- this slot type.+--+-- 'slotTypeId', 'updateSlotTypeResponse_slotTypeId' - The unique identifier of the updated slot type.+--+-- 'slotTypeName', 'updateSlotTypeResponse_slotTypeName' - The updated name of the slot type.+--+-- 'slotTypeValues', 'updateSlotTypeResponse_slotTypeValues' - The updated values that the slot type provides.+--+-- 'valueSelectionSetting', 'updateSlotTypeResponse_valueSelectionSetting' - The updated strategy that Amazon Lex uses to determine which value to+-- select from the slot type.+--+-- 'httpStatus', 'updateSlotTypeResponse_httpStatus' - The response's http status code.+newUpdateSlotTypeResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UpdateSlotTypeResponse+newUpdateSlotTypeResponse pHttpStatus_ =+ UpdateSlotTypeResponse'+ { botId = Prelude.Nothing,+ botVersion = Prelude.Nothing,+ compositeSlotTypeSetting = Prelude.Nothing,+ creationDateTime = Prelude.Nothing,+ description = Prelude.Nothing,+ externalSourceSetting = Prelude.Nothing,+ lastUpdatedDateTime = Prelude.Nothing,+ localeId = Prelude.Nothing,+ parentSlotTypeSignature = Prelude.Nothing,+ slotTypeId = Prelude.Nothing,+ slotTypeName = Prelude.Nothing,+ slotTypeValues = Prelude.Nothing,+ valueSelectionSetting = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The identifier of the bot that contains the slot type.+updateSlotTypeResponse_botId :: Lens.Lens' UpdateSlotTypeResponse (Prelude.Maybe Prelude.Text)+updateSlotTypeResponse_botId = Lens.lens (\UpdateSlotTypeResponse' {botId} -> botId) (\s@UpdateSlotTypeResponse' {} a -> s {botId = a} :: UpdateSlotTypeResponse)++-- | The version of the bot that contains the slot type. This is always+-- @DRAFT@.+updateSlotTypeResponse_botVersion :: Lens.Lens' UpdateSlotTypeResponse (Prelude.Maybe Prelude.Text)+updateSlotTypeResponse_botVersion = Lens.lens (\UpdateSlotTypeResponse' {botVersion} -> botVersion) (\s@UpdateSlotTypeResponse' {} a -> s {botVersion = a} :: UpdateSlotTypeResponse)++-- | Specifications for a composite slot type.+updateSlotTypeResponse_compositeSlotTypeSetting :: Lens.Lens' UpdateSlotTypeResponse (Prelude.Maybe CompositeSlotTypeSetting)+updateSlotTypeResponse_compositeSlotTypeSetting = Lens.lens (\UpdateSlotTypeResponse' {compositeSlotTypeSetting} -> compositeSlotTypeSetting) (\s@UpdateSlotTypeResponse' {} a -> s {compositeSlotTypeSetting = a} :: UpdateSlotTypeResponse)++-- | The timestamp of the date and time that the slot type was created.+updateSlotTypeResponse_creationDateTime :: Lens.Lens' UpdateSlotTypeResponse (Prelude.Maybe Prelude.UTCTime)+updateSlotTypeResponse_creationDateTime = Lens.lens (\UpdateSlotTypeResponse' {creationDateTime} -> creationDateTime) (\s@UpdateSlotTypeResponse' {} a -> s {creationDateTime = a} :: UpdateSlotTypeResponse) Prelude.. Lens.mapping Data._Time++-- | The updated description of the slot type.+updateSlotTypeResponse_description :: Lens.Lens' UpdateSlotTypeResponse (Prelude.Maybe Prelude.Text)+updateSlotTypeResponse_description = Lens.lens (\UpdateSlotTypeResponse' {description} -> description) (\s@UpdateSlotTypeResponse' {} a -> s {description = a} :: UpdateSlotTypeResponse)++-- | Undocumented member.+updateSlotTypeResponse_externalSourceSetting :: Lens.Lens' UpdateSlotTypeResponse (Prelude.Maybe ExternalSourceSetting)+updateSlotTypeResponse_externalSourceSetting = Lens.lens (\UpdateSlotTypeResponse' {externalSourceSetting} -> externalSourceSetting) (\s@UpdateSlotTypeResponse' {} a -> s {externalSourceSetting = a} :: UpdateSlotTypeResponse)++-- | A timestamp of the date and time that the slot type was last updated.+updateSlotTypeResponse_lastUpdatedDateTime :: Lens.Lens' UpdateSlotTypeResponse (Prelude.Maybe Prelude.UTCTime)+updateSlotTypeResponse_lastUpdatedDateTime = Lens.lens (\UpdateSlotTypeResponse' {lastUpdatedDateTime} -> lastUpdatedDateTime) (\s@UpdateSlotTypeResponse' {} a -> s {lastUpdatedDateTime = a} :: UpdateSlotTypeResponse) Prelude.. Lens.mapping Data._Time++-- | The language and locale of the updated slot type.+updateSlotTypeResponse_localeId :: Lens.Lens' UpdateSlotTypeResponse (Prelude.Maybe Prelude.Text)+updateSlotTypeResponse_localeId = Lens.lens (\UpdateSlotTypeResponse' {localeId} -> localeId) (\s@UpdateSlotTypeResponse' {} a -> s {localeId = a} :: UpdateSlotTypeResponse)++-- | The updated signature of the built-in slot type that is the parent of+-- this slot type.+updateSlotTypeResponse_parentSlotTypeSignature :: Lens.Lens' UpdateSlotTypeResponse (Prelude.Maybe Prelude.Text)+updateSlotTypeResponse_parentSlotTypeSignature = Lens.lens (\UpdateSlotTypeResponse' {parentSlotTypeSignature} -> parentSlotTypeSignature) (\s@UpdateSlotTypeResponse' {} a -> s {parentSlotTypeSignature = a} :: UpdateSlotTypeResponse)++-- | The unique identifier of the updated slot type.+updateSlotTypeResponse_slotTypeId :: Lens.Lens' UpdateSlotTypeResponse (Prelude.Maybe Prelude.Text)+updateSlotTypeResponse_slotTypeId = Lens.lens (\UpdateSlotTypeResponse' {slotTypeId} -> slotTypeId) (\s@UpdateSlotTypeResponse' {} a -> s {slotTypeId = a} :: UpdateSlotTypeResponse)++-- | The updated name of the slot type.+updateSlotTypeResponse_slotTypeName :: Lens.Lens' UpdateSlotTypeResponse (Prelude.Maybe Prelude.Text)+updateSlotTypeResponse_slotTypeName = Lens.lens (\UpdateSlotTypeResponse' {slotTypeName} -> slotTypeName) (\s@UpdateSlotTypeResponse' {} a -> s {slotTypeName = a} :: UpdateSlotTypeResponse)++-- | The updated values that the slot type provides.+updateSlotTypeResponse_slotTypeValues :: Lens.Lens' UpdateSlotTypeResponse (Prelude.Maybe (Prelude.NonEmpty SlotTypeValue))+updateSlotTypeResponse_slotTypeValues = Lens.lens (\UpdateSlotTypeResponse' {slotTypeValues} -> slotTypeValues) (\s@UpdateSlotTypeResponse' {} a -> s {slotTypeValues = a} :: UpdateSlotTypeResponse) Prelude.. Lens.mapping Lens.coerced++-- | The updated strategy that Amazon Lex uses to determine which value to+-- select from the slot type.+updateSlotTypeResponse_valueSelectionSetting :: Lens.Lens' UpdateSlotTypeResponse (Prelude.Maybe SlotValueSelectionSetting)+updateSlotTypeResponse_valueSelectionSetting = Lens.lens (\UpdateSlotTypeResponse' {valueSelectionSetting} -> valueSelectionSetting) (\s@UpdateSlotTypeResponse' {} a -> s {valueSelectionSetting = a} :: UpdateSlotTypeResponse)++-- | The response's http status code.+updateSlotTypeResponse_httpStatus :: Lens.Lens' UpdateSlotTypeResponse Prelude.Int+updateSlotTypeResponse_httpStatus = Lens.lens (\UpdateSlotTypeResponse' {httpStatus} -> httpStatus) (\s@UpdateSlotTypeResponse' {} a -> s {httpStatus = a} :: UpdateSlotTypeResponse)++instance Prelude.NFData UpdateSlotTypeResponse where+ rnf UpdateSlotTypeResponse' {..} =+ Prelude.rnf botId+ `Prelude.seq` Prelude.rnf botVersion+ `Prelude.seq` Prelude.rnf compositeSlotTypeSetting+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf externalSourceSetting+ `Prelude.seq` Prelude.rnf lastUpdatedDateTime+ `Prelude.seq` Prelude.rnf localeId+ `Prelude.seq` Prelude.rnf parentSlotTypeSignature+ `Prelude.seq` Prelude.rnf slotTypeId+ `Prelude.seq` Prelude.rnf slotTypeName+ `Prelude.seq` Prelude.rnf slotTypeValues+ `Prelude.seq` Prelude.rnf valueSelectionSetting+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LexV2Models/Waiters.hs view
@@ -0,0 +1,330 @@+{-# LANGUAGE DisambiguateRecordFields #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LexV2Models.Waiters+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LexV2Models.Waiters where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LexV2Models.DescribeBot+import Amazonka.LexV2Models.DescribeBotAlias+import Amazonka.LexV2Models.DescribeBotLocale+import Amazonka.LexV2Models.DescribeBotVersion+import Amazonka.LexV2Models.DescribeExport+import Amazonka.LexV2Models.DescribeImport+import Amazonka.LexV2Models.Lens+import Amazonka.LexV2Models.Types+import qualified Amazonka.Prelude as Prelude++-- | Polls 'Amazonka.LexV2Models.DescribeBotAlias' every 10 seconds until a successful state is reached. An error is returned after 35 failed checks.+newBotAliasAvailable :: Core.Wait DescribeBotAlias+newBotAliasAvailable =+ Core.Wait+ { Core.name = "BotAliasAvailable",+ Core.attempts = 35,+ Core.delay = 10,+ Core.acceptors =+ [ Core.matchAll+ "Available"+ Core.AcceptSuccess+ ( describeBotAliasResponse_botAliasStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ ),+ Core.matchAll+ "Failed"+ Core.AcceptFailure+ ( describeBotAliasResponse_botAliasStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ ),+ Core.matchAll+ "Deleting"+ Core.AcceptFailure+ ( describeBotAliasResponse_botAliasStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ )+ ]+ }++-- | Polls 'Amazonka.LexV2Models.DescribeBot' every 10 seconds until a successful state is reached. An error is returned after 35 failed checks.+newBotAvailable :: Core.Wait DescribeBot+newBotAvailable =+ Core.Wait+ { Core.name = "BotAvailable",+ Core.attempts = 35,+ Core.delay = 10,+ Core.acceptors =+ [ Core.matchAll+ "Available"+ Core.AcceptSuccess+ ( describeBotResponse_botStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ ),+ Core.matchAll+ "Deleting"+ Core.AcceptFailure+ ( describeBotResponse_botStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ ),+ Core.matchAll+ "Failed"+ Core.AcceptFailure+ ( describeBotResponse_botStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ ),+ Core.matchAll+ "Inactive"+ Core.AcceptFailure+ ( describeBotResponse_botStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ )+ ]+ }++-- | Polls 'Amazonka.LexV2Models.DescribeExport' every 10 seconds until a successful state is reached. An error is returned after 35 failed checks.+newBotExportCompleted :: Core.Wait DescribeExport+newBotExportCompleted =+ Core.Wait+ { Core.name = "BotExportCompleted",+ Core.attempts = 35,+ Core.delay = 10,+ Core.acceptors =+ [ Core.matchAll+ "Completed"+ Core.AcceptSuccess+ ( describeExportResponse_exportStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ ),+ Core.matchAll+ "Deleting"+ Core.AcceptFailure+ ( describeExportResponse_exportStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ ),+ Core.matchAll+ "Failed"+ Core.AcceptFailure+ ( describeExportResponse_exportStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ )+ ]+ }++-- | Polls 'Amazonka.LexV2Models.DescribeImport' every 10 seconds until a successful state is reached. An error is returned after 35 failed checks.+newBotImportCompleted :: Core.Wait DescribeImport+newBotImportCompleted =+ Core.Wait+ { Core.name = "BotImportCompleted",+ Core.attempts = 35,+ Core.delay = 10,+ Core.acceptors =+ [ Core.matchAll+ "Completed"+ Core.AcceptSuccess+ ( describeImportResponse_importStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ ),+ Core.matchAll+ "Deleting"+ Core.AcceptFailure+ ( describeImportResponse_importStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ ),+ Core.matchAll+ "Failed"+ Core.AcceptFailure+ ( describeImportResponse_importStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ )+ ]+ }++-- | Polls 'Amazonka.LexV2Models.DescribeBotLocale' every 10 seconds until a successful state is reached. An error is returned after 35 failed checks.+newBotLocaleBuilt :: Core.Wait DescribeBotLocale+newBotLocaleBuilt =+ Core.Wait+ { Core.name = "BotLocaleBuilt",+ Core.attempts = 35,+ Core.delay = 10,+ Core.acceptors =+ [ Core.matchAll+ "Built"+ Core.AcceptSuccess+ ( describeBotLocaleResponse_botLocaleStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ ),+ Core.matchAll+ "Deleting"+ Core.AcceptFailure+ ( describeBotLocaleResponse_botLocaleStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ ),+ Core.matchAll+ "Failed"+ Core.AcceptFailure+ ( describeBotLocaleResponse_botLocaleStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ ),+ Core.matchAll+ "NotBuilt"+ Core.AcceptFailure+ ( describeBotLocaleResponse_botLocaleStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ )+ ]+ }++-- | Polls 'Amazonka.LexV2Models.DescribeBotLocale' every 10 seconds until a successful state is reached. An error is returned after 35 failed checks.+newBotLocaleCreated :: Core.Wait DescribeBotLocale+newBotLocaleCreated =+ Core.Wait+ { Core.name = "BotLocaleCreated",+ Core.attempts = 35,+ Core.delay = 10,+ Core.acceptors =+ [ Core.matchAll+ "Built"+ Core.AcceptSuccess+ ( describeBotLocaleResponse_botLocaleStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ ),+ Core.matchAll+ "ReadyExpressTesting"+ Core.AcceptSuccess+ ( describeBotLocaleResponse_botLocaleStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ ),+ Core.matchAll+ "NotBuilt"+ Core.AcceptSuccess+ ( describeBotLocaleResponse_botLocaleStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ ),+ Core.matchAll+ "Deleting"+ Core.AcceptFailure+ ( describeBotLocaleResponse_botLocaleStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ ),+ Core.matchAll+ "Failed"+ Core.AcceptFailure+ ( describeBotLocaleResponse_botLocaleStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ )+ ]+ }++-- | Polls 'Amazonka.LexV2Models.DescribeBotLocale' every 10 seconds until a successful state is reached. An error is returned after 35 failed checks.+newBotLocaleExpressTestingAvailable :: Core.Wait DescribeBotLocale+newBotLocaleExpressTestingAvailable =+ Core.Wait+ { Core.name =+ "BotLocaleExpressTestingAvailable",+ Core.attempts = 35,+ Core.delay = 10,+ Core.acceptors =+ [ Core.matchAll+ "Built"+ Core.AcceptSuccess+ ( describeBotLocaleResponse_botLocaleStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ ),+ Core.matchAll+ "ReadyExpressTesting"+ Core.AcceptSuccess+ ( describeBotLocaleResponse_botLocaleStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ ),+ Core.matchAll+ "Deleting"+ Core.AcceptFailure+ ( describeBotLocaleResponse_botLocaleStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ ),+ Core.matchAll+ "Failed"+ Core.AcceptFailure+ ( describeBotLocaleResponse_botLocaleStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ ),+ Core.matchAll+ "NotBuilt"+ Core.AcceptFailure+ ( describeBotLocaleResponse_botLocaleStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ )+ ]+ }++-- | Polls 'Amazonka.LexV2Models.DescribeBotVersion' every 10 seconds until a successful state is reached. An error is returned after 35 failed checks.+newBotVersionAvailable :: Core.Wait DescribeBotVersion+newBotVersionAvailable =+ Core.Wait+ { Core.name = "BotVersionAvailable",+ Core.attempts = 35,+ Core.delay = 10,+ Core.acceptors =+ [ Core.matchAll+ "Available"+ Core.AcceptSuccess+ ( describeBotVersionResponse_botStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ ),+ Core.matchAll+ "Deleting"+ Core.AcceptFailure+ ( describeBotVersionResponse_botStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ ),+ Core.matchAll+ "Failed"+ Core.AcceptFailure+ ( describeBotVersionResponse_botStatus+ Prelude.. Lens._Just+ Prelude.. Lens.to Data.toTextCI+ ),+ Core.matchStatus 404 Core.AcceptRetry+ ]+ }
+ src/.gitkeep view
+ test/Main.hs view
@@ -0,0 +1,23 @@+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Main+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Main (main) where++import Test.Amazonka.LexV2Models+import Test.Amazonka.LexV2Models.Internal+import Test.Tasty++main :: IO ()+main =+ defaultMain $+ testGroup+ "LexV2Models"+ [ testGroup "tests" tests,+ testGroup "fixtures" fixtures+ ]
+ test/Test/Amazonka/Gen/LexV2Models.hs view
@@ -0,0 +1,1458 @@+{-# OPTIONS_GHC -fno-warn-orphans #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Test.Amazonka.Gen.LexV2Models+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Test.Amazonka.Gen.LexV2Models where++import Amazonka.LexV2Models+import qualified Data.Proxy as Proxy+import Test.Amazonka.Fixture+import Test.Amazonka.LexV2Models.Internal+import Test.Amazonka.Prelude+import Test.Tasty++-- Auto-generated: the actual test selection needs to be manually placed into+-- the top-level so that real test data can be incrementally added.+--+-- This commented snippet is what the entire set should look like:++-- fixtures :: TestTree+-- fixtures =+-- [ testGroup "request"+-- [ requestBatchCreateCustomVocabularyItem $+-- newBatchCreateCustomVocabularyItem+--+-- , requestBatchDeleteCustomVocabularyItem $+-- newBatchDeleteCustomVocabularyItem+--+-- , requestBatchUpdateCustomVocabularyItem $+-- newBatchUpdateCustomVocabularyItem+--+-- , requestBuildBotLocale $+-- newBuildBotLocale+--+-- , requestCreateBot $+-- newCreateBot+--+-- , requestCreateBotAlias $+-- newCreateBotAlias+--+-- , requestCreateBotLocale $+-- newCreateBotLocale+--+-- , requestCreateBotVersion $+-- newCreateBotVersion+--+-- , requestCreateExport $+-- newCreateExport+--+-- , requestCreateIntent $+-- newCreateIntent+--+-- , requestCreateResourcePolicy $+-- newCreateResourcePolicy+--+-- , requestCreateResourcePolicyStatement $+-- newCreateResourcePolicyStatement+--+-- , requestCreateSlot $+-- newCreateSlot+--+-- , requestCreateSlotType $+-- newCreateSlotType+--+-- , requestCreateUploadUrl $+-- newCreateUploadUrl+--+-- , requestDeleteBot $+-- newDeleteBot+--+-- , requestDeleteBotAlias $+-- newDeleteBotAlias+--+-- , requestDeleteBotLocale $+-- newDeleteBotLocale+--+-- , requestDeleteBotVersion $+-- newDeleteBotVersion+--+-- , requestDeleteCustomVocabulary $+-- newDeleteCustomVocabulary+--+-- , requestDeleteExport $+-- newDeleteExport+--+-- , requestDeleteImport $+-- newDeleteImport+--+-- , requestDeleteIntent $+-- newDeleteIntent+--+-- , requestDeleteResourcePolicy $+-- newDeleteResourcePolicy+--+-- , requestDeleteResourcePolicyStatement $+-- newDeleteResourcePolicyStatement+--+-- , requestDeleteSlot $+-- newDeleteSlot+--+-- , requestDeleteSlotType $+-- newDeleteSlotType+--+-- , requestDeleteUtterances $+-- newDeleteUtterances+--+-- , requestDescribeBot $+-- newDescribeBot+--+-- , requestDescribeBotAlias $+-- newDescribeBotAlias+--+-- , requestDescribeBotLocale $+-- newDescribeBotLocale+--+-- , requestDescribeBotRecommendation $+-- newDescribeBotRecommendation+--+-- , requestDescribeBotVersion $+-- newDescribeBotVersion+--+-- , requestDescribeCustomVocabularyMetadata $+-- newDescribeCustomVocabularyMetadata+--+-- , requestDescribeExport $+-- newDescribeExport+--+-- , requestDescribeImport $+-- newDescribeImport+--+-- , requestDescribeIntent $+-- newDescribeIntent+--+-- , requestDescribeResourcePolicy $+-- newDescribeResourcePolicy+--+-- , requestDescribeSlot $+-- newDescribeSlot+--+-- , requestDescribeSlotType $+-- newDescribeSlotType+--+-- , requestListAggregatedUtterances $+-- newListAggregatedUtterances+--+-- , requestListBotAliases $+-- newListBotAliases+--+-- , requestListBotLocales $+-- newListBotLocales+--+-- , requestListBotRecommendations $+-- newListBotRecommendations+--+-- , requestListBotVersions $+-- newListBotVersions+--+-- , requestListBots $+-- newListBots+--+-- , requestListBuiltInIntents $+-- newListBuiltInIntents+--+-- , requestListBuiltInSlotTypes $+-- newListBuiltInSlotTypes+--+-- , requestListCustomVocabularyItems $+-- newListCustomVocabularyItems+--+-- , requestListExports $+-- newListExports+--+-- , requestListImports $+-- newListImports+--+-- , requestListIntents $+-- newListIntents+--+-- , requestListRecommendedIntents $+-- newListRecommendedIntents+--+-- , requestListSlotTypes $+-- newListSlotTypes+--+-- , requestListSlots $+-- newListSlots+--+-- , requestListTagsForResource $+-- newListTagsForResource+--+-- , requestSearchAssociatedTranscripts $+-- newSearchAssociatedTranscripts+--+-- , requestStartBotRecommendation $+-- newStartBotRecommendation+--+-- , requestStartImport $+-- newStartImport+--+-- , requestStopBotRecommendation $+-- newStopBotRecommendation+--+-- , requestTagResource $+-- newTagResource+--+-- , requestUntagResource $+-- newUntagResource+--+-- , requestUpdateBot $+-- newUpdateBot+--+-- , requestUpdateBotAlias $+-- newUpdateBotAlias+--+-- , requestUpdateBotLocale $+-- newUpdateBotLocale+--+-- , requestUpdateBotRecommendation $+-- newUpdateBotRecommendation+--+-- , requestUpdateExport $+-- newUpdateExport+--+-- , requestUpdateIntent $+-- newUpdateIntent+--+-- , requestUpdateResourcePolicy $+-- newUpdateResourcePolicy+--+-- , requestUpdateSlot $+-- newUpdateSlot+--+-- , requestUpdateSlotType $+-- newUpdateSlotType+--+-- ]++-- , testGroup "response"+-- [ responseBatchCreateCustomVocabularyItem $+-- newBatchCreateCustomVocabularyItemResponse+--+-- , responseBatchDeleteCustomVocabularyItem $+-- newBatchDeleteCustomVocabularyItemResponse+--+-- , responseBatchUpdateCustomVocabularyItem $+-- newBatchUpdateCustomVocabularyItemResponse+--+-- , responseBuildBotLocale $+-- newBuildBotLocaleResponse+--+-- , responseCreateBot $+-- newCreateBotResponse+--+-- , responseCreateBotAlias $+-- newCreateBotAliasResponse+--+-- , responseCreateBotLocale $+-- newCreateBotLocaleResponse+--+-- , responseCreateBotVersion $+-- newCreateBotVersionResponse+--+-- , responseCreateExport $+-- newCreateExportResponse+--+-- , responseCreateIntent $+-- newCreateIntentResponse+--+-- , responseCreateResourcePolicy $+-- newCreateResourcePolicyResponse+--+-- , responseCreateResourcePolicyStatement $+-- newCreateResourcePolicyStatementResponse+--+-- , responseCreateSlot $+-- newCreateSlotResponse+--+-- , responseCreateSlotType $+-- newCreateSlotTypeResponse+--+-- , responseCreateUploadUrl $+-- newCreateUploadUrlResponse+--+-- , responseDeleteBot $+-- newDeleteBotResponse+--+-- , responseDeleteBotAlias $+-- newDeleteBotAliasResponse+--+-- , responseDeleteBotLocale $+-- newDeleteBotLocaleResponse+--+-- , responseDeleteBotVersion $+-- newDeleteBotVersionResponse+--+-- , responseDeleteCustomVocabulary $+-- newDeleteCustomVocabularyResponse+--+-- , responseDeleteExport $+-- newDeleteExportResponse+--+-- , responseDeleteImport $+-- newDeleteImportResponse+--+-- , responseDeleteIntent $+-- newDeleteIntentResponse+--+-- , responseDeleteResourcePolicy $+-- newDeleteResourcePolicyResponse+--+-- , responseDeleteResourcePolicyStatement $+-- newDeleteResourcePolicyStatementResponse+--+-- , responseDeleteSlot $+-- newDeleteSlotResponse+--+-- , responseDeleteSlotType $+-- newDeleteSlotTypeResponse+--+-- , responseDeleteUtterances $+-- newDeleteUtterancesResponse+--+-- , responseDescribeBot $+-- newDescribeBotResponse+--+-- , responseDescribeBotAlias $+-- newDescribeBotAliasResponse+--+-- , responseDescribeBotLocale $+-- newDescribeBotLocaleResponse+--+-- , responseDescribeBotRecommendation $+-- newDescribeBotRecommendationResponse+--+-- , responseDescribeBotVersion $+-- newDescribeBotVersionResponse+--+-- , responseDescribeCustomVocabularyMetadata $+-- newDescribeCustomVocabularyMetadataResponse+--+-- , responseDescribeExport $+-- newDescribeExportResponse+--+-- , responseDescribeImport $+-- newDescribeImportResponse+--+-- , responseDescribeIntent $+-- newDescribeIntentResponse+--+-- , responseDescribeResourcePolicy $+-- newDescribeResourcePolicyResponse+--+-- , responseDescribeSlot $+-- newDescribeSlotResponse+--+-- , responseDescribeSlotType $+-- newDescribeSlotTypeResponse+--+-- , responseListAggregatedUtterances $+-- newListAggregatedUtterancesResponse+--+-- , responseListBotAliases $+-- newListBotAliasesResponse+--+-- , responseListBotLocales $+-- newListBotLocalesResponse+--+-- , responseListBotRecommendations $+-- newListBotRecommendationsResponse+--+-- , responseListBotVersions $+-- newListBotVersionsResponse+--+-- , responseListBots $+-- newListBotsResponse+--+-- , responseListBuiltInIntents $+-- newListBuiltInIntentsResponse+--+-- , responseListBuiltInSlotTypes $+-- newListBuiltInSlotTypesResponse+--+-- , responseListCustomVocabularyItems $+-- newListCustomVocabularyItemsResponse+--+-- , responseListExports $+-- newListExportsResponse+--+-- , responseListImports $+-- newListImportsResponse+--+-- , responseListIntents $+-- newListIntentsResponse+--+-- , responseListRecommendedIntents $+-- newListRecommendedIntentsResponse+--+-- , responseListSlotTypes $+-- newListSlotTypesResponse+--+-- , responseListSlots $+-- newListSlotsResponse+--+-- , responseListTagsForResource $+-- newListTagsForResourceResponse+--+-- , responseSearchAssociatedTranscripts $+-- newSearchAssociatedTranscriptsResponse+--+-- , responseStartBotRecommendation $+-- newStartBotRecommendationResponse+--+-- , responseStartImport $+-- newStartImportResponse+--+-- , responseStopBotRecommendation $+-- newStopBotRecommendationResponse+--+-- , responseTagResource $+-- newTagResourceResponse+--+-- , responseUntagResource $+-- newUntagResourceResponse+--+-- , responseUpdateBot $+-- newUpdateBotResponse+--+-- , responseUpdateBotAlias $+-- newUpdateBotAliasResponse+--+-- , responseUpdateBotLocale $+-- newUpdateBotLocaleResponse+--+-- , responseUpdateBotRecommendation $+-- newUpdateBotRecommendationResponse+--+-- , responseUpdateExport $+-- newUpdateExportResponse+--+-- , responseUpdateIntent $+-- newUpdateIntentResponse+--+-- , responseUpdateResourcePolicy $+-- newUpdateResourcePolicyResponse+--+-- , responseUpdateSlot $+-- newUpdateSlotResponse+--+-- , responseUpdateSlotType $+-- newUpdateSlotTypeResponse+--+-- ]+-- ]++-- Requests++requestBatchCreateCustomVocabularyItem :: BatchCreateCustomVocabularyItem -> TestTree+requestBatchCreateCustomVocabularyItem =+ req+ "BatchCreateCustomVocabularyItem"+ "fixture/BatchCreateCustomVocabularyItem.yaml"++requestBatchDeleteCustomVocabularyItem :: BatchDeleteCustomVocabularyItem -> TestTree+requestBatchDeleteCustomVocabularyItem =+ req+ "BatchDeleteCustomVocabularyItem"+ "fixture/BatchDeleteCustomVocabularyItem.yaml"++requestBatchUpdateCustomVocabularyItem :: BatchUpdateCustomVocabularyItem -> TestTree+requestBatchUpdateCustomVocabularyItem =+ req+ "BatchUpdateCustomVocabularyItem"+ "fixture/BatchUpdateCustomVocabularyItem.yaml"++requestBuildBotLocale :: BuildBotLocale -> TestTree+requestBuildBotLocale =+ req+ "BuildBotLocale"+ "fixture/BuildBotLocale.yaml"++requestCreateBot :: CreateBot -> TestTree+requestCreateBot =+ req+ "CreateBot"+ "fixture/CreateBot.yaml"++requestCreateBotAlias :: CreateBotAlias -> TestTree+requestCreateBotAlias =+ req+ "CreateBotAlias"+ "fixture/CreateBotAlias.yaml"++requestCreateBotLocale :: CreateBotLocale -> TestTree+requestCreateBotLocale =+ req+ "CreateBotLocale"+ "fixture/CreateBotLocale.yaml"++requestCreateBotVersion :: CreateBotVersion -> TestTree+requestCreateBotVersion =+ req+ "CreateBotVersion"+ "fixture/CreateBotVersion.yaml"++requestCreateExport :: CreateExport -> TestTree+requestCreateExport =+ req+ "CreateExport"+ "fixture/CreateExport.yaml"++requestCreateIntent :: CreateIntent -> TestTree+requestCreateIntent =+ req+ "CreateIntent"+ "fixture/CreateIntent.yaml"++requestCreateResourcePolicy :: CreateResourcePolicy -> TestTree+requestCreateResourcePolicy =+ req+ "CreateResourcePolicy"+ "fixture/CreateResourcePolicy.yaml"++requestCreateResourcePolicyStatement :: CreateResourcePolicyStatement -> TestTree+requestCreateResourcePolicyStatement =+ req+ "CreateResourcePolicyStatement"+ "fixture/CreateResourcePolicyStatement.yaml"++requestCreateSlot :: CreateSlot -> TestTree+requestCreateSlot =+ req+ "CreateSlot"+ "fixture/CreateSlot.yaml"++requestCreateSlotType :: CreateSlotType -> TestTree+requestCreateSlotType =+ req+ "CreateSlotType"+ "fixture/CreateSlotType.yaml"++requestCreateUploadUrl :: CreateUploadUrl -> TestTree+requestCreateUploadUrl =+ req+ "CreateUploadUrl"+ "fixture/CreateUploadUrl.yaml"++requestDeleteBot :: DeleteBot -> TestTree+requestDeleteBot =+ req+ "DeleteBot"+ "fixture/DeleteBot.yaml"++requestDeleteBotAlias :: DeleteBotAlias -> TestTree+requestDeleteBotAlias =+ req+ "DeleteBotAlias"+ "fixture/DeleteBotAlias.yaml"++requestDeleteBotLocale :: DeleteBotLocale -> TestTree+requestDeleteBotLocale =+ req+ "DeleteBotLocale"+ "fixture/DeleteBotLocale.yaml"++requestDeleteBotVersion :: DeleteBotVersion -> TestTree+requestDeleteBotVersion =+ req+ "DeleteBotVersion"+ "fixture/DeleteBotVersion.yaml"++requestDeleteCustomVocabulary :: DeleteCustomVocabulary -> TestTree+requestDeleteCustomVocabulary =+ req+ "DeleteCustomVocabulary"+ "fixture/DeleteCustomVocabulary.yaml"++requestDeleteExport :: DeleteExport -> TestTree+requestDeleteExport =+ req+ "DeleteExport"+ "fixture/DeleteExport.yaml"++requestDeleteImport :: DeleteImport -> TestTree+requestDeleteImport =+ req+ "DeleteImport"+ "fixture/DeleteImport.yaml"++requestDeleteIntent :: DeleteIntent -> TestTree+requestDeleteIntent =+ req+ "DeleteIntent"+ "fixture/DeleteIntent.yaml"++requestDeleteResourcePolicy :: DeleteResourcePolicy -> TestTree+requestDeleteResourcePolicy =+ req+ "DeleteResourcePolicy"+ "fixture/DeleteResourcePolicy.yaml"++requestDeleteResourcePolicyStatement :: DeleteResourcePolicyStatement -> TestTree+requestDeleteResourcePolicyStatement =+ req+ "DeleteResourcePolicyStatement"+ "fixture/DeleteResourcePolicyStatement.yaml"++requestDeleteSlot :: DeleteSlot -> TestTree+requestDeleteSlot =+ req+ "DeleteSlot"+ "fixture/DeleteSlot.yaml"++requestDeleteSlotType :: DeleteSlotType -> TestTree+requestDeleteSlotType =+ req+ "DeleteSlotType"+ "fixture/DeleteSlotType.yaml"++requestDeleteUtterances :: DeleteUtterances -> TestTree+requestDeleteUtterances =+ req+ "DeleteUtterances"+ "fixture/DeleteUtterances.yaml"++requestDescribeBot :: DescribeBot -> TestTree+requestDescribeBot =+ req+ "DescribeBot"+ "fixture/DescribeBot.yaml"++requestDescribeBotAlias :: DescribeBotAlias -> TestTree+requestDescribeBotAlias =+ req+ "DescribeBotAlias"+ "fixture/DescribeBotAlias.yaml"++requestDescribeBotLocale :: DescribeBotLocale -> TestTree+requestDescribeBotLocale =+ req+ "DescribeBotLocale"+ "fixture/DescribeBotLocale.yaml"++requestDescribeBotRecommendation :: DescribeBotRecommendation -> TestTree+requestDescribeBotRecommendation =+ req+ "DescribeBotRecommendation"+ "fixture/DescribeBotRecommendation.yaml"++requestDescribeBotVersion :: DescribeBotVersion -> TestTree+requestDescribeBotVersion =+ req+ "DescribeBotVersion"+ "fixture/DescribeBotVersion.yaml"++requestDescribeCustomVocabularyMetadata :: DescribeCustomVocabularyMetadata -> TestTree+requestDescribeCustomVocabularyMetadata =+ req+ "DescribeCustomVocabularyMetadata"+ "fixture/DescribeCustomVocabularyMetadata.yaml"++requestDescribeExport :: DescribeExport -> TestTree+requestDescribeExport =+ req+ "DescribeExport"+ "fixture/DescribeExport.yaml"++requestDescribeImport :: DescribeImport -> TestTree+requestDescribeImport =+ req+ "DescribeImport"+ "fixture/DescribeImport.yaml"++requestDescribeIntent :: DescribeIntent -> TestTree+requestDescribeIntent =+ req+ "DescribeIntent"+ "fixture/DescribeIntent.yaml"++requestDescribeResourcePolicy :: DescribeResourcePolicy -> TestTree+requestDescribeResourcePolicy =+ req+ "DescribeResourcePolicy"+ "fixture/DescribeResourcePolicy.yaml"++requestDescribeSlot :: DescribeSlot -> TestTree+requestDescribeSlot =+ req+ "DescribeSlot"+ "fixture/DescribeSlot.yaml"++requestDescribeSlotType :: DescribeSlotType -> TestTree+requestDescribeSlotType =+ req+ "DescribeSlotType"+ "fixture/DescribeSlotType.yaml"++requestListAggregatedUtterances :: ListAggregatedUtterances -> TestTree+requestListAggregatedUtterances =+ req+ "ListAggregatedUtterances"+ "fixture/ListAggregatedUtterances.yaml"++requestListBotAliases :: ListBotAliases -> TestTree+requestListBotAliases =+ req+ "ListBotAliases"+ "fixture/ListBotAliases.yaml"++requestListBotLocales :: ListBotLocales -> TestTree+requestListBotLocales =+ req+ "ListBotLocales"+ "fixture/ListBotLocales.yaml"++requestListBotRecommendations :: ListBotRecommendations -> TestTree+requestListBotRecommendations =+ req+ "ListBotRecommendations"+ "fixture/ListBotRecommendations.yaml"++requestListBotVersions :: ListBotVersions -> TestTree+requestListBotVersions =+ req+ "ListBotVersions"+ "fixture/ListBotVersions.yaml"++requestListBots :: ListBots -> TestTree+requestListBots =+ req+ "ListBots"+ "fixture/ListBots.yaml"++requestListBuiltInIntents :: ListBuiltInIntents -> TestTree+requestListBuiltInIntents =+ req+ "ListBuiltInIntents"+ "fixture/ListBuiltInIntents.yaml"++requestListBuiltInSlotTypes :: ListBuiltInSlotTypes -> TestTree+requestListBuiltInSlotTypes =+ req+ "ListBuiltInSlotTypes"+ "fixture/ListBuiltInSlotTypes.yaml"++requestListCustomVocabularyItems :: ListCustomVocabularyItems -> TestTree+requestListCustomVocabularyItems =+ req+ "ListCustomVocabularyItems"+ "fixture/ListCustomVocabularyItems.yaml"++requestListExports :: ListExports -> TestTree+requestListExports =+ req+ "ListExports"+ "fixture/ListExports.yaml"++requestListImports :: ListImports -> TestTree+requestListImports =+ req+ "ListImports"+ "fixture/ListImports.yaml"++requestListIntents :: ListIntents -> TestTree+requestListIntents =+ req+ "ListIntents"+ "fixture/ListIntents.yaml"++requestListRecommendedIntents :: ListRecommendedIntents -> TestTree+requestListRecommendedIntents =+ req+ "ListRecommendedIntents"+ "fixture/ListRecommendedIntents.yaml"++requestListSlotTypes :: ListSlotTypes -> TestTree+requestListSlotTypes =+ req+ "ListSlotTypes"+ "fixture/ListSlotTypes.yaml"++requestListSlots :: ListSlots -> TestTree+requestListSlots =+ req+ "ListSlots"+ "fixture/ListSlots.yaml"++requestListTagsForResource :: ListTagsForResource -> TestTree+requestListTagsForResource =+ req+ "ListTagsForResource"+ "fixture/ListTagsForResource.yaml"++requestSearchAssociatedTranscripts :: SearchAssociatedTranscripts -> TestTree+requestSearchAssociatedTranscripts =+ req+ "SearchAssociatedTranscripts"+ "fixture/SearchAssociatedTranscripts.yaml"++requestStartBotRecommendation :: StartBotRecommendation -> TestTree+requestStartBotRecommendation =+ req+ "StartBotRecommendation"+ "fixture/StartBotRecommendation.yaml"++requestStartImport :: StartImport -> TestTree+requestStartImport =+ req+ "StartImport"+ "fixture/StartImport.yaml"++requestStopBotRecommendation :: StopBotRecommendation -> TestTree+requestStopBotRecommendation =+ req+ "StopBotRecommendation"+ "fixture/StopBotRecommendation.yaml"++requestTagResource :: TagResource -> TestTree+requestTagResource =+ req+ "TagResource"+ "fixture/TagResource.yaml"++requestUntagResource :: UntagResource -> TestTree+requestUntagResource =+ req+ "UntagResource"+ "fixture/UntagResource.yaml"++requestUpdateBot :: UpdateBot -> TestTree+requestUpdateBot =+ req+ "UpdateBot"+ "fixture/UpdateBot.yaml"++requestUpdateBotAlias :: UpdateBotAlias -> TestTree+requestUpdateBotAlias =+ req+ "UpdateBotAlias"+ "fixture/UpdateBotAlias.yaml"++requestUpdateBotLocale :: UpdateBotLocale -> TestTree+requestUpdateBotLocale =+ req+ "UpdateBotLocale"+ "fixture/UpdateBotLocale.yaml"++requestUpdateBotRecommendation :: UpdateBotRecommendation -> TestTree+requestUpdateBotRecommendation =+ req+ "UpdateBotRecommendation"+ "fixture/UpdateBotRecommendation.yaml"++requestUpdateExport :: UpdateExport -> TestTree+requestUpdateExport =+ req+ "UpdateExport"+ "fixture/UpdateExport.yaml"++requestUpdateIntent :: UpdateIntent -> TestTree+requestUpdateIntent =+ req+ "UpdateIntent"+ "fixture/UpdateIntent.yaml"++requestUpdateResourcePolicy :: UpdateResourcePolicy -> TestTree+requestUpdateResourcePolicy =+ req+ "UpdateResourcePolicy"+ "fixture/UpdateResourcePolicy.yaml"++requestUpdateSlot :: UpdateSlot -> TestTree+requestUpdateSlot =+ req+ "UpdateSlot"+ "fixture/UpdateSlot.yaml"++requestUpdateSlotType :: UpdateSlotType -> TestTree+requestUpdateSlotType =+ req+ "UpdateSlotType"+ "fixture/UpdateSlotType.yaml"++-- Responses++responseBatchCreateCustomVocabularyItem :: BatchCreateCustomVocabularyItemResponse -> TestTree+responseBatchCreateCustomVocabularyItem =+ res+ "BatchCreateCustomVocabularyItemResponse"+ "fixture/BatchCreateCustomVocabularyItemResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy BatchCreateCustomVocabularyItem)++responseBatchDeleteCustomVocabularyItem :: BatchDeleteCustomVocabularyItemResponse -> TestTree+responseBatchDeleteCustomVocabularyItem =+ res+ "BatchDeleteCustomVocabularyItemResponse"+ "fixture/BatchDeleteCustomVocabularyItemResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy BatchDeleteCustomVocabularyItem)++responseBatchUpdateCustomVocabularyItem :: BatchUpdateCustomVocabularyItemResponse -> TestTree+responseBatchUpdateCustomVocabularyItem =+ res+ "BatchUpdateCustomVocabularyItemResponse"+ "fixture/BatchUpdateCustomVocabularyItemResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy BatchUpdateCustomVocabularyItem)++responseBuildBotLocale :: BuildBotLocaleResponse -> TestTree+responseBuildBotLocale =+ res+ "BuildBotLocaleResponse"+ "fixture/BuildBotLocaleResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy BuildBotLocale)++responseCreateBot :: CreateBotResponse -> TestTree+responseCreateBot =+ res+ "CreateBotResponse"+ "fixture/CreateBotResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateBot)++responseCreateBotAlias :: CreateBotAliasResponse -> TestTree+responseCreateBotAlias =+ res+ "CreateBotAliasResponse"+ "fixture/CreateBotAliasResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateBotAlias)++responseCreateBotLocale :: CreateBotLocaleResponse -> TestTree+responseCreateBotLocale =+ res+ "CreateBotLocaleResponse"+ "fixture/CreateBotLocaleResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateBotLocale)++responseCreateBotVersion :: CreateBotVersionResponse -> TestTree+responseCreateBotVersion =+ res+ "CreateBotVersionResponse"+ "fixture/CreateBotVersionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateBotVersion)++responseCreateExport :: CreateExportResponse -> TestTree+responseCreateExport =+ res+ "CreateExportResponse"+ "fixture/CreateExportResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateExport)++responseCreateIntent :: CreateIntentResponse -> TestTree+responseCreateIntent =+ res+ "CreateIntentResponse"+ "fixture/CreateIntentResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateIntent)++responseCreateResourcePolicy :: CreateResourcePolicyResponse -> TestTree+responseCreateResourcePolicy =+ res+ "CreateResourcePolicyResponse"+ "fixture/CreateResourcePolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateResourcePolicy)++responseCreateResourcePolicyStatement :: CreateResourcePolicyStatementResponse -> TestTree+responseCreateResourcePolicyStatement =+ res+ "CreateResourcePolicyStatementResponse"+ "fixture/CreateResourcePolicyStatementResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateResourcePolicyStatement)++responseCreateSlot :: CreateSlotResponse -> TestTree+responseCreateSlot =+ res+ "CreateSlotResponse"+ "fixture/CreateSlotResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateSlot)++responseCreateSlotType :: CreateSlotTypeResponse -> TestTree+responseCreateSlotType =+ res+ "CreateSlotTypeResponse"+ "fixture/CreateSlotTypeResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateSlotType)++responseCreateUploadUrl :: CreateUploadUrlResponse -> TestTree+responseCreateUploadUrl =+ res+ "CreateUploadUrlResponse"+ "fixture/CreateUploadUrlResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateUploadUrl)++responseDeleteBot :: DeleteBotResponse -> TestTree+responseDeleteBot =+ res+ "DeleteBotResponse"+ "fixture/DeleteBotResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteBot)++responseDeleteBotAlias :: DeleteBotAliasResponse -> TestTree+responseDeleteBotAlias =+ res+ "DeleteBotAliasResponse"+ "fixture/DeleteBotAliasResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteBotAlias)++responseDeleteBotLocale :: DeleteBotLocaleResponse -> TestTree+responseDeleteBotLocale =+ res+ "DeleteBotLocaleResponse"+ "fixture/DeleteBotLocaleResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteBotLocale)++responseDeleteBotVersion :: DeleteBotVersionResponse -> TestTree+responseDeleteBotVersion =+ res+ "DeleteBotVersionResponse"+ "fixture/DeleteBotVersionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteBotVersion)++responseDeleteCustomVocabulary :: DeleteCustomVocabularyResponse -> TestTree+responseDeleteCustomVocabulary =+ res+ "DeleteCustomVocabularyResponse"+ "fixture/DeleteCustomVocabularyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteCustomVocabulary)++responseDeleteExport :: DeleteExportResponse -> TestTree+responseDeleteExport =+ res+ "DeleteExportResponse"+ "fixture/DeleteExportResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteExport)++responseDeleteImport :: DeleteImportResponse -> TestTree+responseDeleteImport =+ res+ "DeleteImportResponse"+ "fixture/DeleteImportResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteImport)++responseDeleteIntent :: DeleteIntentResponse -> TestTree+responseDeleteIntent =+ res+ "DeleteIntentResponse"+ "fixture/DeleteIntentResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteIntent)++responseDeleteResourcePolicy :: DeleteResourcePolicyResponse -> TestTree+responseDeleteResourcePolicy =+ res+ "DeleteResourcePolicyResponse"+ "fixture/DeleteResourcePolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteResourcePolicy)++responseDeleteResourcePolicyStatement :: DeleteResourcePolicyStatementResponse -> TestTree+responseDeleteResourcePolicyStatement =+ res+ "DeleteResourcePolicyStatementResponse"+ "fixture/DeleteResourcePolicyStatementResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteResourcePolicyStatement)++responseDeleteSlot :: DeleteSlotResponse -> TestTree+responseDeleteSlot =+ res+ "DeleteSlotResponse"+ "fixture/DeleteSlotResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteSlot)++responseDeleteSlotType :: DeleteSlotTypeResponse -> TestTree+responseDeleteSlotType =+ res+ "DeleteSlotTypeResponse"+ "fixture/DeleteSlotTypeResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteSlotType)++responseDeleteUtterances :: DeleteUtterancesResponse -> TestTree+responseDeleteUtterances =+ res+ "DeleteUtterancesResponse"+ "fixture/DeleteUtterancesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteUtterances)++responseDescribeBot :: DescribeBotResponse -> TestTree+responseDescribeBot =+ res+ "DescribeBotResponse"+ "fixture/DescribeBotResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeBot)++responseDescribeBotAlias :: DescribeBotAliasResponse -> TestTree+responseDescribeBotAlias =+ res+ "DescribeBotAliasResponse"+ "fixture/DescribeBotAliasResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeBotAlias)++responseDescribeBotLocale :: DescribeBotLocaleResponse -> TestTree+responseDescribeBotLocale =+ res+ "DescribeBotLocaleResponse"+ "fixture/DescribeBotLocaleResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeBotLocale)++responseDescribeBotRecommendation :: DescribeBotRecommendationResponse -> TestTree+responseDescribeBotRecommendation =+ res+ "DescribeBotRecommendationResponse"+ "fixture/DescribeBotRecommendationResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeBotRecommendation)++responseDescribeBotVersion :: DescribeBotVersionResponse -> TestTree+responseDescribeBotVersion =+ res+ "DescribeBotVersionResponse"+ "fixture/DescribeBotVersionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeBotVersion)++responseDescribeCustomVocabularyMetadata :: DescribeCustomVocabularyMetadataResponse -> TestTree+responseDescribeCustomVocabularyMetadata =+ res+ "DescribeCustomVocabularyMetadataResponse"+ "fixture/DescribeCustomVocabularyMetadataResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeCustomVocabularyMetadata)++responseDescribeExport :: DescribeExportResponse -> TestTree+responseDescribeExport =+ res+ "DescribeExportResponse"+ "fixture/DescribeExportResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeExport)++responseDescribeImport :: DescribeImportResponse -> TestTree+responseDescribeImport =+ res+ "DescribeImportResponse"+ "fixture/DescribeImportResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeImport)++responseDescribeIntent :: DescribeIntentResponse -> TestTree+responseDescribeIntent =+ res+ "DescribeIntentResponse"+ "fixture/DescribeIntentResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeIntent)++responseDescribeResourcePolicy :: DescribeResourcePolicyResponse -> TestTree+responseDescribeResourcePolicy =+ res+ "DescribeResourcePolicyResponse"+ "fixture/DescribeResourcePolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeResourcePolicy)++responseDescribeSlot :: DescribeSlotResponse -> TestTree+responseDescribeSlot =+ res+ "DescribeSlotResponse"+ "fixture/DescribeSlotResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeSlot)++responseDescribeSlotType :: DescribeSlotTypeResponse -> TestTree+responseDescribeSlotType =+ res+ "DescribeSlotTypeResponse"+ "fixture/DescribeSlotTypeResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeSlotType)++responseListAggregatedUtterances :: ListAggregatedUtterancesResponse -> TestTree+responseListAggregatedUtterances =+ res+ "ListAggregatedUtterancesResponse"+ "fixture/ListAggregatedUtterancesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListAggregatedUtterances)++responseListBotAliases :: ListBotAliasesResponse -> TestTree+responseListBotAliases =+ res+ "ListBotAliasesResponse"+ "fixture/ListBotAliasesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListBotAliases)++responseListBotLocales :: ListBotLocalesResponse -> TestTree+responseListBotLocales =+ res+ "ListBotLocalesResponse"+ "fixture/ListBotLocalesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListBotLocales)++responseListBotRecommendations :: ListBotRecommendationsResponse -> TestTree+responseListBotRecommendations =+ res+ "ListBotRecommendationsResponse"+ "fixture/ListBotRecommendationsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListBotRecommendations)++responseListBotVersions :: ListBotVersionsResponse -> TestTree+responseListBotVersions =+ res+ "ListBotVersionsResponse"+ "fixture/ListBotVersionsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListBotVersions)++responseListBots :: ListBotsResponse -> TestTree+responseListBots =+ res+ "ListBotsResponse"+ "fixture/ListBotsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListBots)++responseListBuiltInIntents :: ListBuiltInIntentsResponse -> TestTree+responseListBuiltInIntents =+ res+ "ListBuiltInIntentsResponse"+ "fixture/ListBuiltInIntentsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListBuiltInIntents)++responseListBuiltInSlotTypes :: ListBuiltInSlotTypesResponse -> TestTree+responseListBuiltInSlotTypes =+ res+ "ListBuiltInSlotTypesResponse"+ "fixture/ListBuiltInSlotTypesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListBuiltInSlotTypes)++responseListCustomVocabularyItems :: ListCustomVocabularyItemsResponse -> TestTree+responseListCustomVocabularyItems =+ res+ "ListCustomVocabularyItemsResponse"+ "fixture/ListCustomVocabularyItemsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListCustomVocabularyItems)++responseListExports :: ListExportsResponse -> TestTree+responseListExports =+ res+ "ListExportsResponse"+ "fixture/ListExportsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListExports)++responseListImports :: ListImportsResponse -> TestTree+responseListImports =+ res+ "ListImportsResponse"+ "fixture/ListImportsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListImports)++responseListIntents :: ListIntentsResponse -> TestTree+responseListIntents =+ res+ "ListIntentsResponse"+ "fixture/ListIntentsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListIntents)++responseListRecommendedIntents :: ListRecommendedIntentsResponse -> TestTree+responseListRecommendedIntents =+ res+ "ListRecommendedIntentsResponse"+ "fixture/ListRecommendedIntentsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListRecommendedIntents)++responseListSlotTypes :: ListSlotTypesResponse -> TestTree+responseListSlotTypes =+ res+ "ListSlotTypesResponse"+ "fixture/ListSlotTypesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListSlotTypes)++responseListSlots :: ListSlotsResponse -> TestTree+responseListSlots =+ res+ "ListSlotsResponse"+ "fixture/ListSlotsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListSlots)++responseListTagsForResource :: ListTagsForResourceResponse -> TestTree+responseListTagsForResource =+ res+ "ListTagsForResourceResponse"+ "fixture/ListTagsForResourceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListTagsForResource)++responseSearchAssociatedTranscripts :: SearchAssociatedTranscriptsResponse -> TestTree+responseSearchAssociatedTranscripts =+ res+ "SearchAssociatedTranscriptsResponse"+ "fixture/SearchAssociatedTranscriptsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy SearchAssociatedTranscripts)++responseStartBotRecommendation :: StartBotRecommendationResponse -> TestTree+responseStartBotRecommendation =+ res+ "StartBotRecommendationResponse"+ "fixture/StartBotRecommendationResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy StartBotRecommendation)++responseStartImport :: StartImportResponse -> TestTree+responseStartImport =+ res+ "StartImportResponse"+ "fixture/StartImportResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy StartImport)++responseStopBotRecommendation :: StopBotRecommendationResponse -> TestTree+responseStopBotRecommendation =+ res+ "StopBotRecommendationResponse"+ "fixture/StopBotRecommendationResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy StopBotRecommendation)++responseTagResource :: TagResourceResponse -> TestTree+responseTagResource =+ res+ "TagResourceResponse"+ "fixture/TagResourceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy TagResource)++responseUntagResource :: UntagResourceResponse -> TestTree+responseUntagResource =+ res+ "UntagResourceResponse"+ "fixture/UntagResourceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UntagResource)++responseUpdateBot :: UpdateBotResponse -> TestTree+responseUpdateBot =+ res+ "UpdateBotResponse"+ "fixture/UpdateBotResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateBot)++responseUpdateBotAlias :: UpdateBotAliasResponse -> TestTree+responseUpdateBotAlias =+ res+ "UpdateBotAliasResponse"+ "fixture/UpdateBotAliasResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateBotAlias)++responseUpdateBotLocale :: UpdateBotLocaleResponse -> TestTree+responseUpdateBotLocale =+ res+ "UpdateBotLocaleResponse"+ "fixture/UpdateBotLocaleResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateBotLocale)++responseUpdateBotRecommendation :: UpdateBotRecommendationResponse -> TestTree+responseUpdateBotRecommendation =+ res+ "UpdateBotRecommendationResponse"+ "fixture/UpdateBotRecommendationResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateBotRecommendation)++responseUpdateExport :: UpdateExportResponse -> TestTree+responseUpdateExport =+ res+ "UpdateExportResponse"+ "fixture/UpdateExportResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateExport)++responseUpdateIntent :: UpdateIntentResponse -> TestTree+responseUpdateIntent =+ res+ "UpdateIntentResponse"+ "fixture/UpdateIntentResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateIntent)++responseUpdateResourcePolicy :: UpdateResourcePolicyResponse -> TestTree+responseUpdateResourcePolicy =+ res+ "UpdateResourcePolicyResponse"+ "fixture/UpdateResourcePolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateResourcePolicy)++responseUpdateSlot :: UpdateSlotResponse -> TestTree+responseUpdateSlot =+ res+ "UpdateSlotResponse"+ "fixture/UpdateSlotResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateSlot)++responseUpdateSlotType :: UpdateSlotTypeResponse -> TestTree+responseUpdateSlotType =+ res+ "UpdateSlotTypeResponse"+ "fixture/UpdateSlotTypeResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateSlotType)
+ test/Test/Amazonka/LexV2Models.hs view
@@ -0,0 +1,20 @@+-- |+-- Module : Test.Amazonka.LexV2Models+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Test.Amazonka.LexV2Models+ ( tests,+ fixtures,+ )+where++import Test.Tasty (TestTree)++tests :: [TestTree]+tests = []++fixtures :: [TestTree]+fixtures = []
+ test/Test/Amazonka/LexV2Models/Internal.hs view
@@ -0,0 +1,8 @@+-- |+-- Module : Test.Amazonka.LexV2Models.Internal+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Test.Amazonka.LexV2Models.Internal where