// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`GetCatalogs`](crate::operation::get_catalogs::builders::GetCatalogsFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`parent_catalog_id(impl Into<String>)`](crate::operation::get_catalogs::builders::GetCatalogsFluentBuilder::parent_catalog_id) / [`set_parent_catalog_id(Option<String>)`](crate::operation::get_catalogs::builders::GetCatalogsFluentBuilder::set_parent_catalog_id):<br>required: **false**<br><p>The ID of the parent catalog in which the catalog resides. If none is provided, the Amazon Web Services Account Number is used by default.</p><br>
/// - [`next_token(impl Into<String>)`](crate::operation::get_catalogs::builders::GetCatalogsFluentBuilder::next_token) / [`set_next_token(Option<String>)`](crate::operation::get_catalogs::builders::GetCatalogsFluentBuilder::set_next_token):<br>required: **false**<br><p>A continuation token, if this is a continuation call.</p><br>
/// - [`max_results(i32)`](crate::operation::get_catalogs::builders::GetCatalogsFluentBuilder::max_results) / [`set_max_results(Option<i32>)`](crate::operation::get_catalogs::builders::GetCatalogsFluentBuilder::set_max_results):<br>required: **false**<br><p>The maximum number of catalogs to return in one response.</p><br>
/// - [`recursive(bool)`](crate::operation::get_catalogs::builders::GetCatalogsFluentBuilder::recursive) / [`set_recursive(Option<bool>)`](crate::operation::get_catalogs::builders::GetCatalogsFluentBuilder::set_recursive):<br>required: **false**<br><p>Whether to list all catalogs across the catalog hierarchy, starting from the <code>ParentCatalogId</code>. Defaults to <code>false</code> . When <code>true</code>, all catalog objects in the <code>ParentCatalogID</code> hierarchy are enumerated in the response.</p><br>
/// - [`include_root(bool)`](crate::operation::get_catalogs::builders::GetCatalogsFluentBuilder::include_root) / [`set_include_root(Option<bool>)`](crate::operation::get_catalogs::builders::GetCatalogsFluentBuilder::set_include_root):<br>required: **false**<br><p>Whether to list the default catalog in the account and region in the response. Defaults to <code>false</code>. When <code>true</code> and <code>ParentCatalogId = NULL | Amazon Web Services Account ID</code>, all catalogs and the default catalog are enumerated in the response.</p> <p>When the <code>ParentCatalogId</code> is not equal to null, and this attribute is passed as <code>false</code> or <code>true</code>, an <code>InvalidInputException</code> is thrown.</p><br>
/// - [`has_databases(bool)`](crate::operation::get_catalogs::builders::GetCatalogsFluentBuilder::has_databases) / [`set_has_databases(Option<bool>)`](crate::operation::get_catalogs::builders::GetCatalogsFluentBuilder::set_has_databases):<br>required: **false**<br><p>When <code>true</code>, the response only includes catalogs that can contain databases. Some catalogs are organizational containers that hold only other catalogs, not databases. When this parameter is set to <code>true</code>, those container-only catalogs are excluded, and only catalogs capable of containing databases are returned. Defaults to <code>false</code>.</p><br>
/// - On success, responds with [`GetCatalogsOutput`](crate::operation::get_catalogs::GetCatalogsOutput) with field(s):
/// - [`catalog_list(Vec::<Catalog>)`](crate::operation::get_catalogs::GetCatalogsOutput::catalog_list): <p>An array of <code>Catalog</code> objects. A list of <code>Catalog</code> objects from the specified parent catalog.</p>
/// - [`next_token(Option<String>)`](crate::operation::get_catalogs::GetCatalogsOutput::next_token): <p>A continuation token for paginating the returned list of tokens, returned if the current segment of the list is not the last.</p>
/// - On failure, responds with [`SdkError<GetCatalogsError>`](crate::operation::get_catalogs::GetCatalogsError)
pub fn get_catalogs(&self) -> crate::operation::get_catalogs::builders::GetCatalogsFluentBuilder {
crate::operation::get_catalogs::builders::GetCatalogsFluentBuilder::new(self.handle.clone())
}
}