// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`ListStudioComponents`](crate::operation::list_studio_components::builders::ListStudioComponentsFluentBuilder) operation.
/// This operation supports pagination; See [`into_paginator()`](crate::operation::list_studio_components::builders::ListStudioComponentsFluentBuilder::into_paginator).
///
/// - The fluent builder is configurable:
/// - [`max_results(i32)`](crate::operation::list_studio_components::builders::ListStudioComponentsFluentBuilder::max_results) / [`set_max_results(Option<i32>)`](crate::operation::list_studio_components::builders::ListStudioComponentsFluentBuilder::set_max_results):<br>required: **false**<br><p>The max number of results to return in the response.</p><br>
/// - [`next_token(impl Into<String>)`](crate::operation::list_studio_components::builders::ListStudioComponentsFluentBuilder::next_token) / [`set_next_token(Option<String>)`](crate::operation::list_studio_components::builders::ListStudioComponentsFluentBuilder::set_next_token):<br>required: **false**<br><p>The token for the next set of results, or null if there are no more results.</p><br>
/// - [`states(StudioComponentState)`](crate::operation::list_studio_components::builders::ListStudioComponentsFluentBuilder::states) / [`set_states(Option<Vec::<StudioComponentState>>)`](crate::operation::list_studio_components::builders::ListStudioComponentsFluentBuilder::set_states):<br>required: **false**<br><p>Filters the request to studio components that are in one of the given states. </p><br>
/// - [`studio_id(impl Into<String>)`](crate::operation::list_studio_components::builders::ListStudioComponentsFluentBuilder::studio_id) / [`set_studio_id(Option<String>)`](crate::operation::list_studio_components::builders::ListStudioComponentsFluentBuilder::set_studio_id):<br>required: **true**<br><p>The studio ID. </p><br>
/// - [`types(StudioComponentType)`](crate::operation::list_studio_components::builders::ListStudioComponentsFluentBuilder::types) / [`set_types(Option<Vec::<StudioComponentType>>)`](crate::operation::list_studio_components::builders::ListStudioComponentsFluentBuilder::set_types):<br>required: **false**<br><p>Filters the request to studio components that are of one of the given types.</p><br>
/// - On success, responds with [`ListStudioComponentsOutput`](crate::operation::list_studio_components::ListStudioComponentsOutput) with field(s):
/// - [`next_token(Option<String>)`](crate::operation::list_studio_components::ListStudioComponentsOutput::next_token): <p>The token for the next set of results, or null if there are no more results.</p>
/// - [`studio_components(Option<Vec::<StudioComponent>>)`](crate::operation::list_studio_components::ListStudioComponentsOutput::studio_components): <p>A collection of studio components.</p>
/// - On failure, responds with [`SdkError<ListStudioComponentsError>`](crate::operation::list_studio_components::ListStudioComponentsError)
pub fn list_studio_components(&self) -> crate::operation::list_studio_components::builders::ListStudioComponentsFluentBuilder {
crate::operation::list_studio_components::builders::ListStudioComponentsFluentBuilder::new(self.handle.clone())
}
}