use crate::gen::manager::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct InputReaderV2ApplicationSettings {
#[serde(rename = "flowEndApplication", skip_serializing_if = "Option::is_none")]
pub flow_end_application: Option<Box<models::ResourceReference>>,
#[serde(rename = "prompts", skip_serializing_if = "Option::is_none")]
pub prompts: Option<Vec<models::ApplicationPrompt>>,
#[serde(rename = "textToSpeech", skip_serializing_if = "Option::is_none")]
pub text_to_speech: Option<Box<models::DefaultTextToSpeechSettings>>,
#[serde(rename = "routes", skip_serializing_if = "Option::is_none")]
pub routes: Option<Vec<models::ApplicationRoutesInner>>,
#[serde(rename = "resultVariableName")]
pub result_variable_name: String,
#[serde(rename = "bargeIn", skip_serializing_if = "Option::is_none")]
pub barge_in: Option<Box<models::InputReaderV2ApplicationSettingsBargeIn>>,
#[serde(rename = "dtmf", skip_serializing_if = "Option::is_none")]
pub dtmf: Option<Box<models::InputReaderV2ApplicationSettingsDtmf>>,
#[serde(rename = "voice", skip_serializing_if = "Option::is_none")]
pub voice: Option<Box<models::InputReaderV2ApplicationSettingsVoice>>,
#[serde(rename = "confirmation", skip_serializing_if = "Option::is_none")]
pub confirmation: Option<bool>,
#[serde(rename = "numeric", skip_serializing_if = "Option::is_none")]
pub numeric: Option<Box<models::InputReaderV2ApplicationSettingsNumeric>>,
#[serde(rename = "maxAttempts", skip_serializing_if = "Option::is_none")]
pub max_attempts: Option<i32>,
#[serde(rename = "ignoreNoInput", skip_serializing_if = "Option::is_none")]
pub ignore_no_input: Option<bool>,
#[serde(rename = "timeouts", skip_serializing_if = "Option::is_none")]
pub timeouts: Option<Box<models::InputReaderV2ApplicationSettingsTimeouts>>,
}
impl InputReaderV2ApplicationSettings {
pub fn new(result_variable_name: String) -> InputReaderV2ApplicationSettings {
InputReaderV2ApplicationSettings {
flow_end_application: None,
prompts: None,
text_to_speech: None,
routes: None,
result_variable_name,
barge_in: None,
dtmf: None,
voice: None,
confirmation: None,
numeric: None,
max_attempts: None,
ignore_no_input: None,
timeouts: None,
}
}
}