amazonka-lexv2-models-2.0: gen/Amazonka/LexV2Models/UpdateSlotType.hs
{-# 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