aws_sdk_lexmodelsv2/operation/describe_intent/
_describe_intent_output.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2#[allow(missing_docs)] // documentation missing in model
3#[non_exhaustive]
4#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
5pub struct DescribeIntentOutput {
6    /// <p>The unique identifier assigned to the intent when it was created.</p>
7    pub intent_id: ::std::option::Option<::std::string::String>,
8    /// <p>The name specified for the intent.</p>
9    pub intent_name: ::std::option::Option<::std::string::String>,
10    /// <p>The description of the intent.</p>
11    pub description: ::std::option::Option<::std::string::String>,
12    /// <p>The identifier of the built-in intent that this intent is derived from, if any.</p>
13    pub parent_intent_signature: ::std::option::Option<::std::string::String>,
14    /// <p>User utterances that trigger this intent.</p>
15    pub sample_utterances: ::std::option::Option<::std::vec::Vec<crate::types::SampleUtterance>>,
16    /// <p>The Lambda function called during each turn of a conversation with the intent.</p>
17    pub dialog_code_hook: ::std::option::Option<crate::types::DialogCodeHookSettings>,
18    /// <p>The Lambda function called when the intent is complete and ready for fulfillment.</p>
19    pub fulfillment_code_hook: ::std::option::Option<crate::types::FulfillmentCodeHookSettings>,
20    /// <p>The list that determines the priority that slots should be elicited from the user.</p>
21    pub slot_priorities: ::std::option::Option<::std::vec::Vec<crate::types::SlotPriority>>,
22    /// <p>Prompts that Amazon Lex sends to the user to confirm completion of an intent.</p>
23    pub intent_confirmation_setting: ::std::option::Option<crate::types::IntentConfirmationSetting>,
24    /// <p>The response that Amazon Lex sends to when the intent is closed.</p>
25    pub intent_closing_setting: ::std::option::Option<crate::types::IntentClosingSetting>,
26    /// <p>A list of contexts that must be active for the intent to be considered for sending to the user.</p>
27    pub input_contexts: ::std::option::Option<::std::vec::Vec<crate::types::InputContext>>,
28    /// <p>A list of contexts that are activated when the intent is fulfilled.</p>
29    pub output_contexts: ::std::option::Option<::std::vec::Vec<crate::types::OutputContext>>,
30    /// <p>Configuration information required to use the <code>AMAZON.KendraSearchIntent</code> intent.</p>
31    pub kendra_configuration: ::std::option::Option<crate::types::KendraConfiguration>,
32    /// <p>The identifier of the bot associated with the intent.</p>
33    pub bot_id: ::std::option::Option<::std::string::String>,
34    /// <p>The version of the bot associated with the intent.</p>
35    pub bot_version: ::std::option::Option<::std::string::String>,
36    /// <p>The language and locale specified for the intent.</p>
37    pub locale_id: ::std::option::Option<::std::string::String>,
38    /// <p>A timestamp of the date and time that the intent was created.</p>
39    pub creation_date_time: ::std::option::Option<::aws_smithy_types::DateTime>,
40    /// <p>A timestamp of the date and time that the intent was last updated.</p>
41    pub last_updated_date_time: ::std::option::Option<::aws_smithy_types::DateTime>,
42    /// <p>Configuration setting for a response sent to the user before Amazon Lex starts eliciting slots.</p>
43    pub initial_response_setting: ::std::option::Option<crate::types::InitialResponseSetting>,
44    /// <p>Details about the configuration of the built-in <code>Amazon.QnAIntent</code>.</p>
45    pub qn_a_intent_configuration: ::std::option::Option<crate::types::QnAIntentConfiguration>,
46    /// <p>Qinconnect intent configuration details for the describe intent response.</p>
47    pub q_in_connect_intent_configuration: ::std::option::Option<crate::types::QInConnectIntentConfiguration>,
48    _request_id: Option<String>,
49}
50impl DescribeIntentOutput {
51    /// <p>The unique identifier assigned to the intent when it was created.</p>
52    pub fn intent_id(&self) -> ::std::option::Option<&str> {
53        self.intent_id.as_deref()
54    }
55    /// <p>The name specified for the intent.</p>
56    pub fn intent_name(&self) -> ::std::option::Option<&str> {
57        self.intent_name.as_deref()
58    }
59    /// <p>The description of the intent.</p>
60    pub fn description(&self) -> ::std::option::Option<&str> {
61        self.description.as_deref()
62    }
63    /// <p>The identifier of the built-in intent that this intent is derived from, if any.</p>
64    pub fn parent_intent_signature(&self) -> ::std::option::Option<&str> {
65        self.parent_intent_signature.as_deref()
66    }
67    /// <p>User utterances that trigger this intent.</p>
68    ///
69    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.sample_utterances.is_none()`.
70    pub fn sample_utterances(&self) -> &[crate::types::SampleUtterance] {
71        self.sample_utterances.as_deref().unwrap_or_default()
72    }
73    /// <p>The Lambda function called during each turn of a conversation with the intent.</p>
74    pub fn dialog_code_hook(&self) -> ::std::option::Option<&crate::types::DialogCodeHookSettings> {
75        self.dialog_code_hook.as_ref()
76    }
77    /// <p>The Lambda function called when the intent is complete and ready for fulfillment.</p>
78    pub fn fulfillment_code_hook(&self) -> ::std::option::Option<&crate::types::FulfillmentCodeHookSettings> {
79        self.fulfillment_code_hook.as_ref()
80    }
81    /// <p>The list that determines the priority that slots should be elicited from the user.</p>
82    ///
83    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.slot_priorities.is_none()`.
84    pub fn slot_priorities(&self) -> &[crate::types::SlotPriority] {
85        self.slot_priorities.as_deref().unwrap_or_default()
86    }
87    /// <p>Prompts that Amazon Lex sends to the user to confirm completion of an intent.</p>
88    pub fn intent_confirmation_setting(&self) -> ::std::option::Option<&crate::types::IntentConfirmationSetting> {
89        self.intent_confirmation_setting.as_ref()
90    }
91    /// <p>The response that Amazon Lex sends to when the intent is closed.</p>
92    pub fn intent_closing_setting(&self) -> ::std::option::Option<&crate::types::IntentClosingSetting> {
93        self.intent_closing_setting.as_ref()
94    }
95    /// <p>A list of contexts that must be active for the intent to be considered for sending to the user.</p>
96    ///
97    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.input_contexts.is_none()`.
98    pub fn input_contexts(&self) -> &[crate::types::InputContext] {
99        self.input_contexts.as_deref().unwrap_or_default()
100    }
101    /// <p>A list of contexts that are activated when the intent is fulfilled.</p>
102    ///
103    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.output_contexts.is_none()`.
104    pub fn output_contexts(&self) -> &[crate::types::OutputContext] {
105        self.output_contexts.as_deref().unwrap_or_default()
106    }
107    /// <p>Configuration information required to use the <code>AMAZON.KendraSearchIntent</code> intent.</p>
108    pub fn kendra_configuration(&self) -> ::std::option::Option<&crate::types::KendraConfiguration> {
109        self.kendra_configuration.as_ref()
110    }
111    /// <p>The identifier of the bot associated with the intent.</p>
112    pub fn bot_id(&self) -> ::std::option::Option<&str> {
113        self.bot_id.as_deref()
114    }
115    /// <p>The version of the bot associated with the intent.</p>
116    pub fn bot_version(&self) -> ::std::option::Option<&str> {
117        self.bot_version.as_deref()
118    }
119    /// <p>The language and locale specified for the intent.</p>
120    pub fn locale_id(&self) -> ::std::option::Option<&str> {
121        self.locale_id.as_deref()
122    }
123    /// <p>A timestamp of the date and time that the intent was created.</p>
124    pub fn creation_date_time(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
125        self.creation_date_time.as_ref()
126    }
127    /// <p>A timestamp of the date and time that the intent was last updated.</p>
128    pub fn last_updated_date_time(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
129        self.last_updated_date_time.as_ref()
130    }
131    /// <p>Configuration setting for a response sent to the user before Amazon Lex starts eliciting slots.</p>
132    pub fn initial_response_setting(&self) -> ::std::option::Option<&crate::types::InitialResponseSetting> {
133        self.initial_response_setting.as_ref()
134    }
135    /// <p>Details about the configuration of the built-in <code>Amazon.QnAIntent</code>.</p>
136    pub fn qn_a_intent_configuration(&self) -> ::std::option::Option<&crate::types::QnAIntentConfiguration> {
137        self.qn_a_intent_configuration.as_ref()
138    }
139    /// <p>Qinconnect intent configuration details for the describe intent response.</p>
140    pub fn q_in_connect_intent_configuration(&self) -> ::std::option::Option<&crate::types::QInConnectIntentConfiguration> {
141        self.q_in_connect_intent_configuration.as_ref()
142    }
143}
144impl ::aws_types::request_id::RequestId for DescribeIntentOutput {
145    fn request_id(&self) -> Option<&str> {
146        self._request_id.as_deref()
147    }
148}
149impl DescribeIntentOutput {
150    /// Creates a new builder-style object to manufacture [`DescribeIntentOutput`](crate::operation::describe_intent::DescribeIntentOutput).
151    pub fn builder() -> crate::operation::describe_intent::builders::DescribeIntentOutputBuilder {
152        crate::operation::describe_intent::builders::DescribeIntentOutputBuilder::default()
153    }
154}
155
156/// A builder for [`DescribeIntentOutput`](crate::operation::describe_intent::DescribeIntentOutput).
157#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
158#[non_exhaustive]
159pub struct DescribeIntentOutputBuilder {
160    pub(crate) intent_id: ::std::option::Option<::std::string::String>,
161    pub(crate) intent_name: ::std::option::Option<::std::string::String>,
162    pub(crate) description: ::std::option::Option<::std::string::String>,
163    pub(crate) parent_intent_signature: ::std::option::Option<::std::string::String>,
164    pub(crate) sample_utterances: ::std::option::Option<::std::vec::Vec<crate::types::SampleUtterance>>,
165    pub(crate) dialog_code_hook: ::std::option::Option<crate::types::DialogCodeHookSettings>,
166    pub(crate) fulfillment_code_hook: ::std::option::Option<crate::types::FulfillmentCodeHookSettings>,
167    pub(crate) slot_priorities: ::std::option::Option<::std::vec::Vec<crate::types::SlotPriority>>,
168    pub(crate) intent_confirmation_setting: ::std::option::Option<crate::types::IntentConfirmationSetting>,
169    pub(crate) intent_closing_setting: ::std::option::Option<crate::types::IntentClosingSetting>,
170    pub(crate) input_contexts: ::std::option::Option<::std::vec::Vec<crate::types::InputContext>>,
171    pub(crate) output_contexts: ::std::option::Option<::std::vec::Vec<crate::types::OutputContext>>,
172    pub(crate) kendra_configuration: ::std::option::Option<crate::types::KendraConfiguration>,
173    pub(crate) bot_id: ::std::option::Option<::std::string::String>,
174    pub(crate) bot_version: ::std::option::Option<::std::string::String>,
175    pub(crate) locale_id: ::std::option::Option<::std::string::String>,
176    pub(crate) creation_date_time: ::std::option::Option<::aws_smithy_types::DateTime>,
177    pub(crate) last_updated_date_time: ::std::option::Option<::aws_smithy_types::DateTime>,
178    pub(crate) initial_response_setting: ::std::option::Option<crate::types::InitialResponseSetting>,
179    pub(crate) qn_a_intent_configuration: ::std::option::Option<crate::types::QnAIntentConfiguration>,
180    pub(crate) q_in_connect_intent_configuration: ::std::option::Option<crate::types::QInConnectIntentConfiguration>,
181    _request_id: Option<String>,
182}
183impl DescribeIntentOutputBuilder {
184    /// <p>The unique identifier assigned to the intent when it was created.</p>
185    pub fn intent_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
186        self.intent_id = ::std::option::Option::Some(input.into());
187        self
188    }
189    /// <p>The unique identifier assigned to the intent when it was created.</p>
190    pub fn set_intent_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
191        self.intent_id = input;
192        self
193    }
194    /// <p>The unique identifier assigned to the intent when it was created.</p>
195    pub fn get_intent_id(&self) -> &::std::option::Option<::std::string::String> {
196        &self.intent_id
197    }
198    /// <p>The name specified for the intent.</p>
199    pub fn intent_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
200        self.intent_name = ::std::option::Option::Some(input.into());
201        self
202    }
203    /// <p>The name specified for the intent.</p>
204    pub fn set_intent_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
205        self.intent_name = input;
206        self
207    }
208    /// <p>The name specified for the intent.</p>
209    pub fn get_intent_name(&self) -> &::std::option::Option<::std::string::String> {
210        &self.intent_name
211    }
212    /// <p>The description of the intent.</p>
213    pub fn description(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
214        self.description = ::std::option::Option::Some(input.into());
215        self
216    }
217    /// <p>The description of the intent.</p>
218    pub fn set_description(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
219        self.description = input;
220        self
221    }
222    /// <p>The description of the intent.</p>
223    pub fn get_description(&self) -> &::std::option::Option<::std::string::String> {
224        &self.description
225    }
226    /// <p>The identifier of the built-in intent that this intent is derived from, if any.</p>
227    pub fn parent_intent_signature(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
228        self.parent_intent_signature = ::std::option::Option::Some(input.into());
229        self
230    }
231    /// <p>The identifier of the built-in intent that this intent is derived from, if any.</p>
232    pub fn set_parent_intent_signature(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
233        self.parent_intent_signature = input;
234        self
235    }
236    /// <p>The identifier of the built-in intent that this intent is derived from, if any.</p>
237    pub fn get_parent_intent_signature(&self) -> &::std::option::Option<::std::string::String> {
238        &self.parent_intent_signature
239    }
240    /// Appends an item to `sample_utterances`.
241    ///
242    /// To override the contents of this collection use [`set_sample_utterances`](Self::set_sample_utterances).
243    ///
244    /// <p>User utterances that trigger this intent.</p>
245    pub fn sample_utterances(mut self, input: crate::types::SampleUtterance) -> Self {
246        let mut v = self.sample_utterances.unwrap_or_default();
247        v.push(input);
248        self.sample_utterances = ::std::option::Option::Some(v);
249        self
250    }
251    /// <p>User utterances that trigger this intent.</p>
252    pub fn set_sample_utterances(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::SampleUtterance>>) -> Self {
253        self.sample_utterances = input;
254        self
255    }
256    /// <p>User utterances that trigger this intent.</p>
257    pub fn get_sample_utterances(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::SampleUtterance>> {
258        &self.sample_utterances
259    }
260    /// <p>The Lambda function called during each turn of a conversation with the intent.</p>
261    pub fn dialog_code_hook(mut self, input: crate::types::DialogCodeHookSettings) -> Self {
262        self.dialog_code_hook = ::std::option::Option::Some(input);
263        self
264    }
265    /// <p>The Lambda function called during each turn of a conversation with the intent.</p>
266    pub fn set_dialog_code_hook(mut self, input: ::std::option::Option<crate::types::DialogCodeHookSettings>) -> Self {
267        self.dialog_code_hook = input;
268        self
269    }
270    /// <p>The Lambda function called during each turn of a conversation with the intent.</p>
271    pub fn get_dialog_code_hook(&self) -> &::std::option::Option<crate::types::DialogCodeHookSettings> {
272        &self.dialog_code_hook
273    }
274    /// <p>The Lambda function called when the intent is complete and ready for fulfillment.</p>
275    pub fn fulfillment_code_hook(mut self, input: crate::types::FulfillmentCodeHookSettings) -> Self {
276        self.fulfillment_code_hook = ::std::option::Option::Some(input);
277        self
278    }
279    /// <p>The Lambda function called when the intent is complete and ready for fulfillment.</p>
280    pub fn set_fulfillment_code_hook(mut self, input: ::std::option::Option<crate::types::FulfillmentCodeHookSettings>) -> Self {
281        self.fulfillment_code_hook = input;
282        self
283    }
284    /// <p>The Lambda function called when the intent is complete and ready for fulfillment.</p>
285    pub fn get_fulfillment_code_hook(&self) -> &::std::option::Option<crate::types::FulfillmentCodeHookSettings> {
286        &self.fulfillment_code_hook
287    }
288    /// Appends an item to `slot_priorities`.
289    ///
290    /// To override the contents of this collection use [`set_slot_priorities`](Self::set_slot_priorities).
291    ///
292    /// <p>The list that determines the priority that slots should be elicited from the user.</p>
293    pub fn slot_priorities(mut self, input: crate::types::SlotPriority) -> Self {
294        let mut v = self.slot_priorities.unwrap_or_default();
295        v.push(input);
296        self.slot_priorities = ::std::option::Option::Some(v);
297        self
298    }
299    /// <p>The list that determines the priority that slots should be elicited from the user.</p>
300    pub fn set_slot_priorities(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::SlotPriority>>) -> Self {
301        self.slot_priorities = input;
302        self
303    }
304    /// <p>The list that determines the priority that slots should be elicited from the user.</p>
305    pub fn get_slot_priorities(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::SlotPriority>> {
306        &self.slot_priorities
307    }
308    /// <p>Prompts that Amazon Lex sends to the user to confirm completion of an intent.</p>
309    pub fn intent_confirmation_setting(mut self, input: crate::types::IntentConfirmationSetting) -> Self {
310        self.intent_confirmation_setting = ::std::option::Option::Some(input);
311        self
312    }
313    /// <p>Prompts that Amazon Lex sends to the user to confirm completion of an intent.</p>
314    pub fn set_intent_confirmation_setting(mut self, input: ::std::option::Option<crate::types::IntentConfirmationSetting>) -> Self {
315        self.intent_confirmation_setting = input;
316        self
317    }
318    /// <p>Prompts that Amazon Lex sends to the user to confirm completion of an intent.</p>
319    pub fn get_intent_confirmation_setting(&self) -> &::std::option::Option<crate::types::IntentConfirmationSetting> {
320        &self.intent_confirmation_setting
321    }
322    /// <p>The response that Amazon Lex sends to when the intent is closed.</p>
323    pub fn intent_closing_setting(mut self, input: crate::types::IntentClosingSetting) -> Self {
324        self.intent_closing_setting = ::std::option::Option::Some(input);
325        self
326    }
327    /// <p>The response that Amazon Lex sends to when the intent is closed.</p>
328    pub fn set_intent_closing_setting(mut self, input: ::std::option::Option<crate::types::IntentClosingSetting>) -> Self {
329        self.intent_closing_setting = input;
330        self
331    }
332    /// <p>The response that Amazon Lex sends to when the intent is closed.</p>
333    pub fn get_intent_closing_setting(&self) -> &::std::option::Option<crate::types::IntentClosingSetting> {
334        &self.intent_closing_setting
335    }
336    /// Appends an item to `input_contexts`.
337    ///
338    /// To override the contents of this collection use [`set_input_contexts`](Self::set_input_contexts).
339    ///
340    /// <p>A list of contexts that must be active for the intent to be considered for sending to the user.</p>
341    pub fn input_contexts(mut self, input: crate::types::InputContext) -> Self {
342        let mut v = self.input_contexts.unwrap_or_default();
343        v.push(input);
344        self.input_contexts = ::std::option::Option::Some(v);
345        self
346    }
347    /// <p>A list of contexts that must be active for the intent to be considered for sending to the user.</p>
348    pub fn set_input_contexts(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::InputContext>>) -> Self {
349        self.input_contexts = input;
350        self
351    }
352    /// <p>A list of contexts that must be active for the intent to be considered for sending to the user.</p>
353    pub fn get_input_contexts(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::InputContext>> {
354        &self.input_contexts
355    }
356    /// Appends an item to `output_contexts`.
357    ///
358    /// To override the contents of this collection use [`set_output_contexts`](Self::set_output_contexts).
359    ///
360    /// <p>A list of contexts that are activated when the intent is fulfilled.</p>
361    pub fn output_contexts(mut self, input: crate::types::OutputContext) -> Self {
362        let mut v = self.output_contexts.unwrap_or_default();
363        v.push(input);
364        self.output_contexts = ::std::option::Option::Some(v);
365        self
366    }
367    /// <p>A list of contexts that are activated when the intent is fulfilled.</p>
368    pub fn set_output_contexts(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::OutputContext>>) -> Self {
369        self.output_contexts = input;
370        self
371    }
372    /// <p>A list of contexts that are activated when the intent is fulfilled.</p>
373    pub fn get_output_contexts(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::OutputContext>> {
374        &self.output_contexts
375    }
376    /// <p>Configuration information required to use the <code>AMAZON.KendraSearchIntent</code> intent.</p>
377    pub fn kendra_configuration(mut self, input: crate::types::KendraConfiguration) -> Self {
378        self.kendra_configuration = ::std::option::Option::Some(input);
379        self
380    }
381    /// <p>Configuration information required to use the <code>AMAZON.KendraSearchIntent</code> intent.</p>
382    pub fn set_kendra_configuration(mut self, input: ::std::option::Option<crate::types::KendraConfiguration>) -> Self {
383        self.kendra_configuration = input;
384        self
385    }
386    /// <p>Configuration information required to use the <code>AMAZON.KendraSearchIntent</code> intent.</p>
387    pub fn get_kendra_configuration(&self) -> &::std::option::Option<crate::types::KendraConfiguration> {
388        &self.kendra_configuration
389    }
390    /// <p>The identifier of the bot associated with the intent.</p>
391    pub fn bot_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
392        self.bot_id = ::std::option::Option::Some(input.into());
393        self
394    }
395    /// <p>The identifier of the bot associated with the intent.</p>
396    pub fn set_bot_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
397        self.bot_id = input;
398        self
399    }
400    /// <p>The identifier of the bot associated with the intent.</p>
401    pub fn get_bot_id(&self) -> &::std::option::Option<::std::string::String> {
402        &self.bot_id
403    }
404    /// <p>The version of the bot associated with the intent.</p>
405    pub fn bot_version(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
406        self.bot_version = ::std::option::Option::Some(input.into());
407        self
408    }
409    /// <p>The version of the bot associated with the intent.</p>
410    pub fn set_bot_version(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
411        self.bot_version = input;
412        self
413    }
414    /// <p>The version of the bot associated with the intent.</p>
415    pub fn get_bot_version(&self) -> &::std::option::Option<::std::string::String> {
416        &self.bot_version
417    }
418    /// <p>The language and locale specified for the intent.</p>
419    pub fn locale_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
420        self.locale_id = ::std::option::Option::Some(input.into());
421        self
422    }
423    /// <p>The language and locale specified for the intent.</p>
424    pub fn set_locale_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
425        self.locale_id = input;
426        self
427    }
428    /// <p>The language and locale specified for the intent.</p>
429    pub fn get_locale_id(&self) -> &::std::option::Option<::std::string::String> {
430        &self.locale_id
431    }
432    /// <p>A timestamp of the date and time that the intent was created.</p>
433    pub fn creation_date_time(mut self, input: ::aws_smithy_types::DateTime) -> Self {
434        self.creation_date_time = ::std::option::Option::Some(input);
435        self
436    }
437    /// <p>A timestamp of the date and time that the intent was created.</p>
438    pub fn set_creation_date_time(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
439        self.creation_date_time = input;
440        self
441    }
442    /// <p>A timestamp of the date and time that the intent was created.</p>
443    pub fn get_creation_date_time(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
444        &self.creation_date_time
445    }
446    /// <p>A timestamp of the date and time that the intent was last updated.</p>
447    pub fn last_updated_date_time(mut self, input: ::aws_smithy_types::DateTime) -> Self {
448        self.last_updated_date_time = ::std::option::Option::Some(input);
449        self
450    }
451    /// <p>A timestamp of the date and time that the intent was last updated.</p>
452    pub fn set_last_updated_date_time(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
453        self.last_updated_date_time = input;
454        self
455    }
456    /// <p>A timestamp of the date and time that the intent was last updated.</p>
457    pub fn get_last_updated_date_time(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
458        &self.last_updated_date_time
459    }
460    /// <p>Configuration setting for a response sent to the user before Amazon Lex starts eliciting slots.</p>
461    pub fn initial_response_setting(mut self, input: crate::types::InitialResponseSetting) -> Self {
462        self.initial_response_setting = ::std::option::Option::Some(input);
463        self
464    }
465    /// <p>Configuration setting for a response sent to the user before Amazon Lex starts eliciting slots.</p>
466    pub fn set_initial_response_setting(mut self, input: ::std::option::Option<crate::types::InitialResponseSetting>) -> Self {
467        self.initial_response_setting = input;
468        self
469    }
470    /// <p>Configuration setting for a response sent to the user before Amazon Lex starts eliciting slots.</p>
471    pub fn get_initial_response_setting(&self) -> &::std::option::Option<crate::types::InitialResponseSetting> {
472        &self.initial_response_setting
473    }
474    /// <p>Details about the configuration of the built-in <code>Amazon.QnAIntent</code>.</p>
475    pub fn qn_a_intent_configuration(mut self, input: crate::types::QnAIntentConfiguration) -> Self {
476        self.qn_a_intent_configuration = ::std::option::Option::Some(input);
477        self
478    }
479    /// <p>Details about the configuration of the built-in <code>Amazon.QnAIntent</code>.</p>
480    pub fn set_qn_a_intent_configuration(mut self, input: ::std::option::Option<crate::types::QnAIntentConfiguration>) -> Self {
481        self.qn_a_intent_configuration = input;
482        self
483    }
484    /// <p>Details about the configuration of the built-in <code>Amazon.QnAIntent</code>.</p>
485    pub fn get_qn_a_intent_configuration(&self) -> &::std::option::Option<crate::types::QnAIntentConfiguration> {
486        &self.qn_a_intent_configuration
487    }
488    /// <p>Qinconnect intent configuration details for the describe intent response.</p>
489    pub fn q_in_connect_intent_configuration(mut self, input: crate::types::QInConnectIntentConfiguration) -> Self {
490        self.q_in_connect_intent_configuration = ::std::option::Option::Some(input);
491        self
492    }
493    /// <p>Qinconnect intent configuration details for the describe intent response.</p>
494    pub fn set_q_in_connect_intent_configuration(mut self, input: ::std::option::Option<crate::types::QInConnectIntentConfiguration>) -> Self {
495        self.q_in_connect_intent_configuration = input;
496        self
497    }
498    /// <p>Qinconnect intent configuration details for the describe intent response.</p>
499    pub fn get_q_in_connect_intent_configuration(&self) -> &::std::option::Option<crate::types::QInConnectIntentConfiguration> {
500        &self.q_in_connect_intent_configuration
501    }
502    pub(crate) fn _request_id(mut self, request_id: impl Into<String>) -> Self {
503        self._request_id = Some(request_id.into());
504        self
505    }
506
507    pub(crate) fn _set_request_id(&mut self, request_id: Option<String>) -> &mut Self {
508        self._request_id = request_id;
509        self
510    }
511    /// Consumes the builder and constructs a [`DescribeIntentOutput`](crate::operation::describe_intent::DescribeIntentOutput).
512    pub fn build(self) -> crate::operation::describe_intent::DescribeIntentOutput {
513        crate::operation::describe_intent::DescribeIntentOutput {
514            intent_id: self.intent_id,
515            intent_name: self.intent_name,
516            description: self.description,
517            parent_intent_signature: self.parent_intent_signature,
518            sample_utterances: self.sample_utterances,
519            dialog_code_hook: self.dialog_code_hook,
520            fulfillment_code_hook: self.fulfillment_code_hook,
521            slot_priorities: self.slot_priorities,
522            intent_confirmation_setting: self.intent_confirmation_setting,
523            intent_closing_setting: self.intent_closing_setting,
524            input_contexts: self.input_contexts,
525            output_contexts: self.output_contexts,
526            kendra_configuration: self.kendra_configuration,
527            bot_id: self.bot_id,
528            bot_version: self.bot_version,
529            locale_id: self.locale_id,
530            creation_date_time: self.creation_date_time,
531            last_updated_date_time: self.last_updated_date_time,
532            initial_response_setting: self.initial_response_setting,
533            qn_a_intent_configuration: self.qn_a_intent_configuration,
534            q_in_connect_intent_configuration: self.q_in_connect_intent_configuration,
535            _request_id: self._request_id,
536        }
537    }
538}