// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`ListPackageVersions`](crate::operation::list_package_versions::builders::ListPackageVersionsFluentBuilder) operation.
/// This operation supports pagination; See [`into_paginator()`](crate::operation::list_package_versions::builders::ListPackageVersionsFluentBuilder::into_paginator).
///
/// - The fluent builder is configurable:
/// - [`domain(impl Into<String>)`](crate::operation::list_package_versions::builders::ListPackageVersionsFluentBuilder::domain) / [`set_domain(Option<String>)`](crate::operation::list_package_versions::builders::ListPackageVersionsFluentBuilder::set_domain): <p> The name of the domain that contains the repository that contains the requested package versions. </p>
/// - [`domain_owner(impl Into<String>)`](crate::operation::list_package_versions::builders::ListPackageVersionsFluentBuilder::domain_owner) / [`set_domain_owner(Option<String>)`](crate::operation::list_package_versions::builders::ListPackageVersionsFluentBuilder::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::list_package_versions::builders::ListPackageVersionsFluentBuilder::repository) / [`set_repository(Option<String>)`](crate::operation::list_package_versions::builders::ListPackageVersionsFluentBuilder::set_repository): <p> The name of the repository that contains the requested package versions. </p>
/// - [`format(PackageFormat)`](crate::operation::list_package_versions::builders::ListPackageVersionsFluentBuilder::format) / [`set_format(Option<PackageFormat>)`](crate::operation::list_package_versions::builders::ListPackageVersionsFluentBuilder::set_format): <p> The format of the package versions you want to list. </p>
/// - [`namespace(impl Into<String>)`](crate::operation::list_package_versions::builders::ListPackageVersionsFluentBuilder::namespace) / [`set_namespace(Option<String>)`](crate::operation::list_package_versions::builders::ListPackageVersionsFluentBuilder::set_namespace): <p>The namespace of the package that contains the requested package versions. The package component that specifies its namespace depends on its type. For example:</p> <ul> <li> <p> The namespace of a Maven package is its <code>groupId</code>. </p> </li> <li> <p> The namespace of an npm package is its <code>scope</code>. </p> </li> <li> <p> Python and NuGet packages do not contain a corresponding component, packages 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::list_package_versions::builders::ListPackageVersionsFluentBuilder::package) / [`set_package(Option<String>)`](crate::operation::list_package_versions::builders::ListPackageVersionsFluentBuilder::set_package): <p> The name of the package for which you want to request package versions. </p>
/// - [`status(PackageVersionStatus)`](crate::operation::list_package_versions::builders::ListPackageVersionsFluentBuilder::status) / [`set_status(Option<PackageVersionStatus>)`](crate::operation::list_package_versions::builders::ListPackageVersionsFluentBuilder::set_status): <p> A string that filters the requested package versions by status. </p>
/// - [`sort_by(PackageVersionSortType)`](crate::operation::list_package_versions::builders::ListPackageVersionsFluentBuilder::sort_by) / [`set_sort_by(Option<PackageVersionSortType>)`](crate::operation::list_package_versions::builders::ListPackageVersionsFluentBuilder::set_sort_by): <p> How to sort the requested list of package versions. </p>
/// - [`max_results(i32)`](crate::operation::list_package_versions::builders::ListPackageVersionsFluentBuilder::max_results) / [`set_max_results(Option<i32>)`](crate::operation::list_package_versions::builders::ListPackageVersionsFluentBuilder::set_max_results): <p> The maximum number of results to return per page. </p>
/// - [`next_token(impl Into<String>)`](crate::operation::list_package_versions::builders::ListPackageVersionsFluentBuilder::next_token) / [`set_next_token(Option<String>)`](crate::operation::list_package_versions::builders::ListPackageVersionsFluentBuilder::set_next_token): <p> The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results. </p>
/// - [`origin_type(PackageVersionOriginType)`](crate::operation::list_package_versions::builders::ListPackageVersionsFluentBuilder::origin_type) / [`set_origin_type(Option<PackageVersionOriginType>)`](crate::operation::list_package_versions::builders::ListPackageVersionsFluentBuilder::set_origin_type): <p>The <code>originType</code> used to filter package versions. Only package versions with the provided <code>originType</code> will be returned.</p>
/// - On success, responds with [`ListPackageVersionsOutput`](crate::operation::list_package_versions::ListPackageVersionsOutput) with field(s):
/// - [`default_display_version(Option<String>)`](crate::operation::list_package_versions::ListPackageVersionsOutput::default_display_version): <p> The default package version to display. This depends on the package format: </p> <ul> <li> <p> For Maven and PyPI packages, it's the most recently published package version. </p> </li> <li> <p> For npm packages, it's the version referenced by the <code>latest</code> tag. If the <code>latest</code> tag is not set, it's the most recently published package version. </p> </li> </ul>
/// - [`format(Option<PackageFormat>)`](crate::operation::list_package_versions::ListPackageVersionsOutput::format): <p> A format of the package. </p>
/// - [`namespace(Option<String>)`](crate::operation::list_package_versions::ListPackageVersionsOutput::namespace): <p>The namespace of the package that contains the requested package versions. The package component that specifies its namespace depends on its type. For example:</p> <ul> <li> <p> The namespace of a Maven package is its <code>groupId</code>. </p> </li> <li> <p> The namespace of an npm package is its <code>scope</code>. </p> </li> <li> <p> Python and NuGet packages do not contain a corresponding component, packages of those formats do not have a namespace. </p> </li> </ul>
/// - [`package(Option<String>)`](crate::operation::list_package_versions::ListPackageVersionsOutput::package): <p> The name of the package. </p>
/// - [`versions(Option<Vec<PackageVersionSummary>>)`](crate::operation::list_package_versions::ListPackageVersionsOutput::versions): <p> The returned list of <a href="https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageVersionSummary.html">PackageVersionSummary</a> objects. </p>
/// - [`next_token(Option<String>)`](crate::operation::list_package_versions::ListPackageVersionsOutput::next_token): <p> If there are additional results, this is the token for the next set of results. </p>
/// - On failure, responds with [`SdkError<ListPackageVersionsError>`](crate::operation::list_package_versions::ListPackageVersionsError)
pub fn list_package_versions(
&self,
) -> crate::operation::list_package_versions::builders::ListPackageVersionsFluentBuilder {
crate::operation::list_package_versions::builders::ListPackageVersionsFluentBuilder::new(
self.handle.clone(),
)
}
}