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