using System.Runtime.Serialization;
namespace Amazon.Lambda.LexV2Events
{
///
/// The class that represents the next action that Amazon Lex V2 should take.
/// https://docs.aws.amazon.com/lexv2/latest/dg/API_runtime_DialogAction.html
///
[DataContract]
public class LexV2DialogAction
{
///
/// Configures the slot to use spell-by-letter or spell-by-word style. When you use a style on a slot, users can spell out their input to make it clear to your bot.
///
[DataMember(Name = "slotElicitationStyle", EmitDefaultValue = false)]
[System.Text.Json.Serialization.JsonPropertyName("slotElicitationStyle")]
public string SlotElicitationStyle { get; set; }
///
/// The name of the slot that should be elicited from the user.
///
[DataMember(Name = "slotToElicit", EmitDefaultValue = false)]
[System.Text.Json.Serialization.JsonPropertyName("slotToElicit")]
public string SlotToElicit { get; set; }
///
/// The next action that the bot should take in its interaction with the user. Could be one of Close, ConfirmIntent, Delegate, ElicitIntent or ElicitSlot.
///
[DataMember(Name = "type", EmitDefaultValue = false)]
[System.Text.Json.Serialization.JsonPropertyName("type")]
public string Type { get; set; }
}
}