// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`DisposePackageVersions`](crate::operation::dispose_package_versions::builders::DisposePackageVersionsFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`domain(impl Into<String>)`](crate::operation::dispose_package_versions::builders::DisposePackageVersionsFluentBuilder::domain) / [`set_domain(Option<String>)`](crate::operation::dispose_package_versions::builders::DisposePackageVersionsFluentBuilder::set_domain): <p> The name of the domain that contains the repository you want to dispose. </p>
/// - [`domain_owner(impl Into<String>)`](crate::operation::dispose_package_versions::builders::DisposePackageVersionsFluentBuilder::domain_owner) / [`set_domain_owner(Option<String>)`](crate::operation::dispose_package_versions::builders::DisposePackageVersionsFluentBuilder::set_domain_owner): <p> The 12-digit account number of the Amazon Web Services account that owns the domain. It does not include dashes or spaces. </p>
/// - [`repository(impl Into<String>)`](crate::operation::dispose_package_versions::builders::DisposePackageVersionsFluentBuilder::repository) / [`set_repository(Option<String>)`](crate::operation::dispose_package_versions::builders::DisposePackageVersionsFluentBuilder::set_repository): <p> The name of the repository that contains the package versions you want to dispose. </p>
/// - [`format(PackageFormat)`](crate::operation::dispose_package_versions::builders::DisposePackageVersionsFluentBuilder::format) / [`set_format(Option<PackageFormat>)`](crate::operation::dispose_package_versions::builders::DisposePackageVersionsFluentBuilder::set_format): <p> A format that specifies the type of package versions you want to dispose. </p>
/// - [`namespace(impl Into<String>)`](crate::operation::dispose_package_versions::builders::DisposePackageVersionsFluentBuilder::namespace) / [`set_namespace(Option<String>)`](crate::operation::dispose_package_versions::builders::DisposePackageVersionsFluentBuilder::set_namespace): <p>The namespace of the package versions to be disposed. The package version component that specifies its namespace depends on its type. For example:</p> <ul> <li> <p> The namespace of a Maven package version is its <code>groupId</code>. </p> </li> <li> <p> The namespace of an npm package version is its <code>scope</code>. </p> </li> <li> <p> Python and NuGet package versions do not contain a corresponding component, package versions of those formats do not have a namespace. </p> </li> <li> <p> The namespace of a generic package is its <code>namespace</code>. </p> </li> </ul>
/// - [`package(impl Into<String>)`](crate::operation::dispose_package_versions::builders::DisposePackageVersionsFluentBuilder::package) / [`set_package(Option<String>)`](crate::operation::dispose_package_versions::builders::DisposePackageVersionsFluentBuilder::set_package): <p> The name of the package with the versions you want to dispose. </p>
/// - [`versions(Vec<String>)`](crate::operation::dispose_package_versions::builders::DisposePackageVersionsFluentBuilder::versions) / [`set_versions(Option<Vec<String>>)`](crate::operation::dispose_package_versions::builders::DisposePackageVersionsFluentBuilder::set_versions): <p> The versions of the package you want to dispose. </p>
/// - [`version_revisions(HashMap<String, String>)`](crate::operation::dispose_package_versions::builders::DisposePackageVersionsFluentBuilder::version_revisions) / [`set_version_revisions(Option<HashMap<String, String>>)`](crate::operation::dispose_package_versions::builders::DisposePackageVersionsFluentBuilder::set_version_revisions): <p> The revisions of the package versions you want to dispose. </p>
/// - [`expected_status(PackageVersionStatus)`](crate::operation::dispose_package_versions::builders::DisposePackageVersionsFluentBuilder::expected_status) / [`set_expected_status(Option<PackageVersionStatus>)`](crate::operation::dispose_package_versions::builders::DisposePackageVersionsFluentBuilder::set_expected_status): <p> The expected status of the package version to dispose. </p>
/// - On success, responds with [`DisposePackageVersionsOutput`](crate::operation::dispose_package_versions::DisposePackageVersionsOutput) with field(s):
/// - [`successful_versions(Option<HashMap<String, SuccessfulPackageVersionInfo>>)`](crate::operation::dispose_package_versions::DisposePackageVersionsOutput::successful_versions): <p> A list of the package versions that were successfully disposed. </p>
/// - [`failed_versions(Option<HashMap<String, PackageVersionError>>)`](crate::operation::dispose_package_versions::DisposePackageVersionsOutput::failed_versions): <p> A <code>PackageVersionError</code> object that contains a map of errors codes for the disposed package versions that failed. The possible error codes are: </p> <ul> <li> <p> <code>ALREADY_EXISTS</code> </p> </li> <li> <p> <code>MISMATCHED_REVISION</code> </p> </li> <li> <p> <code>MISMATCHED_STATUS</code> </p> </li> <li> <p> <code>NOT_ALLOWED</code> </p> </li> <li> <p> <code>NOT_FOUND</code> </p> </li> <li> <p> <code>SKIPPED</code> </p> </li> </ul>
/// - On failure, responds with [`SdkError<DisposePackageVersionsError>`](crate::operation::dispose_package_versions::DisposePackageVersionsError)
pub fn dispose_package_versions(
&self,
) -> crate::operation::dispose_package_versions::builders::DisposePackageVersionsFluentBuilder
{
crate::operation::dispose_package_versions::builders::DisposePackageVersionsFluentBuilder::new(self.handle.clone())
}
}