// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`UpdateMemory`](crate::operation::update_memory::builders::UpdateMemoryFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`client_token(impl Into<String>)`](crate::operation::update_memory::builders::UpdateMemoryFluentBuilder::client_token) / [`set_client_token(Option<String>)`](crate::operation::update_memory::builders::UpdateMemoryFluentBuilder::set_client_token):<br>required: **false**<br><p>A client token is used for keeping track of idempotent requests. It can contain a session id which can be around 250 chars, combined with a unique AWS identifier.</p><br>
/// - [`memory_id(impl Into<String>)`](crate::operation::update_memory::builders::UpdateMemoryFluentBuilder::memory_id) / [`set_memory_id(Option<String>)`](crate::operation::update_memory::builders::UpdateMemoryFluentBuilder::set_memory_id):<br>required: **true**<br><p>The unique identifier of the memory to update.</p><br>
/// - [`description(impl Into<String>)`](crate::operation::update_memory::builders::UpdateMemoryFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::update_memory::builders::UpdateMemoryFluentBuilder::set_description):<br>required: **false**<br><p>The updated description of the AgentCore Memory resource.</p><br>
/// - [`event_expiry_duration(i32)`](crate::operation::update_memory::builders::UpdateMemoryFluentBuilder::event_expiry_duration) / [`set_event_expiry_duration(Option<i32>)`](crate::operation::update_memory::builders::UpdateMemoryFluentBuilder::set_event_expiry_duration):<br>required: **false**<br><p>The number of days after which memory events will expire, between 7 and 365 days.</p><br>
/// - [`memory_execution_role_arn(impl Into<String>)`](crate::operation::update_memory::builders::UpdateMemoryFluentBuilder::memory_execution_role_arn) / [`set_memory_execution_role_arn(Option<String>)`](crate::operation::update_memory::builders::UpdateMemoryFluentBuilder::set_memory_execution_role_arn):<br>required: **false**<br><p>The ARN of the IAM role that provides permissions for the AgentCore Memory resource.</p><br>
/// - [`memory_strategies(ModifyMemoryStrategies)`](crate::operation::update_memory::builders::UpdateMemoryFluentBuilder::memory_strategies) / [`set_memory_strategies(Option<ModifyMemoryStrategies>)`](crate::operation::update_memory::builders::UpdateMemoryFluentBuilder::set_memory_strategies):<br>required: **false**<br><p>The memory strategies to add, modify, or delete.</p><br>
/// - [`add_indexed_keys(IndexedKey)`](crate::operation::update_memory::builders::UpdateMemoryFluentBuilder::add_indexed_keys) / [`set_add_indexed_keys(Option<Vec::<IndexedKey>>)`](crate::operation::update_memory::builders::UpdateMemoryFluentBuilder::set_add_indexed_keys):<br>required: **false**<br><p>Additional metadata keys to index. Previously indexed keys cannot be removed.</p><br>
/// - [`stream_delivery_resources(StreamDeliveryResources)`](crate::operation::update_memory::builders::UpdateMemoryFluentBuilder::stream_delivery_resources) / [`set_stream_delivery_resources(Option<StreamDeliveryResources>)`](crate::operation::update_memory::builders::UpdateMemoryFluentBuilder::set_stream_delivery_resources):<br>required: **false**<br><p>Configuration for streaming memory record data to external resources.</p><br>
/// - On success, responds with [`UpdateMemoryOutput`](crate::operation::update_memory::UpdateMemoryOutput) with field(s):
/// - [`memory(Option<Memory>)`](crate::operation::update_memory::UpdateMemoryOutput::memory): <p>The updated AgentCore Memory resource details.</p>
/// - On failure, responds with [`SdkError<UpdateMemoryError>`](crate::operation::update_memory::UpdateMemoryError)
pub fn update_memory(&self) -> crate::operation::update_memory::builders::UpdateMemoryFluentBuilder {
crate::operation::update_memory::builders::UpdateMemoryFluentBuilder::new(self.handle.clone())
}
}