// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`DescribeHostReservations`](crate::operation::describe_host_reservations::builders::DescribeHostReservationsFluentBuilder) operation.
/// This operation supports pagination; See [`into_paginator()`](crate::operation::describe_host_reservations::builders::DescribeHostReservationsFluentBuilder::into_paginator).
///
/// - The fluent builder is configurable:
/// - [`filter(Filter)`](crate::operation::describe_host_reservations::builders::DescribeHostReservationsFluentBuilder::filter) / [`set_filter(Option<Vec::<Filter>>)`](crate::operation::describe_host_reservations::builders::DescribeHostReservationsFluentBuilder::set_filter):<br>required: **false**<br><p>The filters.</p> <ul> <li> <p><code>instance-family</code> - The instance family (for example, <code>m4</code>).</p></li> <li> <p><code>payment-option</code> - The payment option (<code>NoUpfront</code> | <code>PartialUpfront</code> | <code>AllUpfront</code>).</p></li> <li> <p><code>state</code> - The state of the reservation (<code>payment-pending</code> | <code>payment-failed</code> | <code>active</code> | <code>retired</code>).</p></li> <li> <p><code>tag:<key></key></code> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key <code>Owner</code> and the value <code>TeamA</code>, specify <code>tag:Owner</code> for the filter name and <code>TeamA</code> for the filter value.</p></li> <li> <p><code>tag-key</code> - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.</p></li> </ul><br>
/// - [`host_reservation_id_set(impl Into<String>)`](crate::operation::describe_host_reservations::builders::DescribeHostReservationsFluentBuilder::host_reservation_id_set) / [`set_host_reservation_id_set(Option<Vec::<String>>)`](crate::operation::describe_host_reservations::builders::DescribeHostReservationsFluentBuilder::set_host_reservation_id_set):<br>required: **false**<br><p>The host reservation IDs.</p><br>
/// - [`max_results(i32)`](crate::operation::describe_host_reservations::builders::DescribeHostReservationsFluentBuilder::max_results) / [`set_max_results(Option<i32>)`](crate::operation::describe_host_reservations::builders::DescribeHostReservationsFluentBuilder::set_max_results):<br>required: **false**<br><p>The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the returned <code>nextToken</code> value. This value can be between 5 and 500. If <code>maxResults</code> is given a larger value than 500, you receive an error.</p><br>
/// - [`next_token(impl Into<String>)`](crate::operation::describe_host_reservations::builders::DescribeHostReservationsFluentBuilder::next_token) / [`set_next_token(Option<String>)`](crate::operation::describe_host_reservations::builders::DescribeHostReservationsFluentBuilder::set_next_token):<br>required: **false**<br><p>The token to use to retrieve the next page of results.</p><br>
/// - On success, responds with [`DescribeHostReservationsOutput`](crate::operation::describe_host_reservations::DescribeHostReservationsOutput) with field(s):
/// - [`host_reservation_set(Option<Vec::<HostReservation>>)`](crate::operation::describe_host_reservations::DescribeHostReservationsOutput::host_reservation_set): <p>Details about the reservation's configuration.</p>
/// - [`next_token(Option<String>)`](crate::operation::describe_host_reservations::DescribeHostReservationsOutput::next_token): <p>The token to use to retrieve the next page of results. This value is <code>null</code> when there are no more results to return.</p>
/// - On failure, responds with [`SdkError<DescribeHostReservationsError>`](crate::operation::describe_host_reservations::DescribeHostReservationsError)
pub fn describe_host_reservations(&self) -> crate::operation::describe_host_reservations::builders::DescribeHostReservationsFluentBuilder {
crate::operation::describe_host_reservations::builders::DescribeHostReservationsFluentBuilder::new(self.handle.clone())
}
}