// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`DescribeCreateCaseOptions`](crate::operation::describe_create_case_options::builders::DescribeCreateCaseOptionsFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`issue_type(impl Into<String>)`](crate::operation::describe_create_case_options::builders::DescribeCreateCaseOptionsFluentBuilder::issue_type) / [`set_issue_type(Option<String>)`](crate::operation::describe_create_case_options::builders::DescribeCreateCaseOptionsFluentBuilder::set_issue_type):<br>required: **true**<br><p>The type of issue for the case. You can specify <code>customer-service</code> or <code>technical</code>. If you don't specify a value, the default is <code>technical</code>.</p><br>
/// - [`service_code(impl Into<String>)`](crate::operation::describe_create_case_options::builders::DescribeCreateCaseOptionsFluentBuilder::service_code) / [`set_service_code(Option<String>)`](crate::operation::describe_create_case_options::builders::DescribeCreateCaseOptionsFluentBuilder::set_service_code):<br>required: **true**<br><p>The code for the Amazon Web Services service. You can use the <code>DescribeServices</code> operation to get the possible <code>serviceCode</code> values.</p><br>
/// - [`language(impl Into<String>)`](crate::operation::describe_create_case_options::builders::DescribeCreateCaseOptionsFluentBuilder::language) / [`set_language(Option<String>)`](crate::operation::describe_create_case_options::builders::DescribeCreateCaseOptionsFluentBuilder::set_language):<br>required: **true**<br><p>The language in which Amazon Web Services Support handles the case. Amazon Web Services Support currently supports Chinese (“zh”), English ("en"), Japanese ("ja") , Chinese ("zh"), Spanish ("es"), Portuguese ("pt"), French ("fr"), Korean (“ko”), and Turkish ("tr"). You must specify the ISO 639-1 code for the <code>language</code> parameter if you want support in that language.</p><br>
/// - [`category_code(impl Into<String>)`](crate::operation::describe_create_case_options::builders::DescribeCreateCaseOptionsFluentBuilder::category_code) / [`set_category_code(Option<String>)`](crate::operation::describe_create_case_options::builders::DescribeCreateCaseOptionsFluentBuilder::set_category_code):<br>required: **true**<br><p>The category of problem for the support case. You also use the <code>DescribeServices</code> operation to get the category code for a service. Each Amazon Web Services service defines its own set of category codes.</p><br>
/// - [`dry_run(bool)`](crate::operation::describe_create_case_options::builders::DescribeCreateCaseOptionsFluentBuilder::dry_run) / [`set_dry_run(Option<bool>)`](crate::operation::describe_create_case_options::builders::DescribeCreateCaseOptionsFluentBuilder::set_dry_run):<br>required: **false**<br><p>Specifies whether to validate the request without actually returning case option data. When set to <code>true</code>, the request is validated but no options are returned, and the operation returns a <code>DryRunOperationException</code>. When omitted or set to <code>false</code>, the request runs normally.</p><br>
/// - On success, responds with [`DescribeCreateCaseOptionsOutput`](crate::operation::describe_create_case_options::DescribeCreateCaseOptionsOutput) with field(s):
/// - [`language_availability(Option<String>)`](crate::operation::describe_create_case_options::DescribeCreateCaseOptionsOutput::language_availability): <p>Language availability can be any of the following:</p> <ul> <li> <p>available</p></li> <li> <p>best_effort</p></li> <li> <p>unavailable</p></li> </ul>
/// - [`communication_types(Option<Vec::<CommunicationTypeOptions>>)`](crate::operation::describe_create_case_options::DescribeCreateCaseOptionsOutput::communication_types): <p>A JSON-formatted array that contains the available communication type options, along with the available support timeframes for the given inputs.</p>
/// - On failure, responds with [`SdkError<DescribeCreateCaseOptionsError>`](crate::operation::describe_create_case_options::DescribeCreateCaseOptionsError)
pub fn describe_create_case_options(&self) -> crate::operation::describe_create_case_options::builders::DescribeCreateCaseOptionsFluentBuilder {
crate::operation::describe_create_case_options::builders::DescribeCreateCaseOptionsFluentBuilder::new(self.handle.clone())
}
}