// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`CreatePackageVersion`](crate::operation::create_package_version::builders::CreatePackageVersionFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`package_name(impl Into<String>)`](crate::operation::create_package_version::builders::CreatePackageVersionFluentBuilder::package_name) / [`set_package_name(Option<String>)`](crate::operation::create_package_version::builders::CreatePackageVersionFluentBuilder::set_package_name):<br>required: **true**<br><p>The name of the associated software package.</p><br>
/// - [`version_name(impl Into<String>)`](crate::operation::create_package_version::builders::CreatePackageVersionFluentBuilder::version_name) / [`set_version_name(Option<String>)`](crate::operation::create_package_version::builders::CreatePackageVersionFluentBuilder::set_version_name):<br>required: **true**<br><p>The name of the new package version.</p><br>
/// - [`description(impl Into<String>)`](crate::operation::create_package_version::builders::CreatePackageVersionFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::create_package_version::builders::CreatePackageVersionFluentBuilder::set_description):<br>required: **false**<br><p>A summary of the package version being created. This can be used to outline the package's contents or purpose.</p><br>
/// - [`attributes(impl Into<String>, impl Into<String>)`](crate::operation::create_package_version::builders::CreatePackageVersionFluentBuilder::attributes) / [`set_attributes(Option<HashMap::<String, String>>)`](crate::operation::create_package_version::builders::CreatePackageVersionFluentBuilder::set_attributes):<br>required: **false**<br><p>Metadata that can be used to define a package version’s configuration. For example, the S3 file location, configuration options that are being sent to the device or fleet.</p> <p>The combined size of all the attributes on a package version is limited to 3KB.</p><br>
/// - [`tags(impl Into<String>, impl Into<String>)`](crate::operation::create_package_version::builders::CreatePackageVersionFluentBuilder::tags) / [`set_tags(Option<HashMap::<String, String>>)`](crate::operation::create_package_version::builders::CreatePackageVersionFluentBuilder::set_tags):<br>required: **false**<br><p>Metadata that can be used to manage the package version.</p><br>
/// - [`client_token(impl Into<String>)`](crate::operation::create_package_version::builders::CreatePackageVersionFluentBuilder::client_token) / [`set_client_token(Option<String>)`](crate::operation::create_package_version::builders::CreatePackageVersionFluentBuilder::set_client_token):<br>required: **false**<br><p>A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required.</p><br>
/// - On success, responds with [`CreatePackageVersionOutput`](crate::operation::create_package_version::CreatePackageVersionOutput) with field(s):
/// - [`package_version_arn(Option<String>)`](crate::operation::create_package_version::CreatePackageVersionOutput::package_version_arn): <p>The Amazon Resource Name (ARN) for the package.</p>
/// - [`package_name(Option<String>)`](crate::operation::create_package_version::CreatePackageVersionOutput::package_name): <p>The name of the associated software package.</p>
/// - [`version_name(Option<String>)`](crate::operation::create_package_version::CreatePackageVersionOutput::version_name): <p>The name of the new package version.</p>
/// - [`description(Option<String>)`](crate::operation::create_package_version::CreatePackageVersionOutput::description): <p>The package version description.</p>
/// - [`attributes(Option<HashMap::<String, String>>)`](crate::operation::create_package_version::CreatePackageVersionOutput::attributes): <p>Metadata that were added to the package version that can be used to define a package version’s configuration.</p>
/// - [`status(Option<PackageVersionStatus>)`](crate::operation::create_package_version::CreatePackageVersionOutput::status): <p>The status of the package version. For more information, see <a href="https://docs.aws.amazon.com/iot/latest/developerguide/preparing-to-use-software-package-catalog.html#package-version-lifecycle">Package version lifecycle</a>.</p>
/// - [`error_reason(Option<String>)`](crate::operation::create_package_version::CreatePackageVersionOutput::error_reason): <p>Error reason for a package version failure during creation or update.</p>
/// - On failure, responds with [`SdkError<CreatePackageVersionError>`](crate::operation::create_package_version::CreatePackageVersionError)
pub fn create_package_version(&self) -> crate::operation::create_package_version::builders::CreatePackageVersionFluentBuilder {
crate::operation::create_package_version::builders::CreatePackageVersionFluentBuilder::new(self.handle.clone())
}
}