import { HttpHandlerOptions as __HttpHandlerOptions } from "@aws-sdk/types" ; import { BatchCheckLayerAvailabilityCommand , BatchCheckLayerAvailabilityCommandInput , BatchCheckLayerAvailabilityCommandOutput , } from "./commands/BatchCheckLayerAvailabilityCommand" ; import { BatchDeleteImageCommand , BatchDeleteImageCommandInput , BatchDeleteImageCommandOutput , } from "./commands/BatchDeleteImageCommand" ; import { CompleteLayerUploadCommand , CompleteLayerUploadCommandInput , CompleteLayerUploadCommandOutput , } from "./commands/CompleteLayerUploadCommand" ; import { CreateRepositoryCommand , CreateRepositoryCommandInput , CreateRepositoryCommandOutput , } from "./commands/CreateRepositoryCommand" ; import { DeleteRepositoryCommand , DeleteRepositoryCommandInput , DeleteRepositoryCommandOutput , } from "./commands/DeleteRepositoryCommand" ; import { DeleteRepositoryPolicyCommand , DeleteRepositoryPolicyCommandInput , DeleteRepositoryPolicyCommandOutput , } from "./commands/DeleteRepositoryPolicyCommand" ; import { DescribeImagesCommand , DescribeImagesCommandInput , DescribeImagesCommandOutput , } from "./commands/DescribeImagesCommand" ; import { DescribeImageTagsCommand , DescribeImageTagsCommandInput , DescribeImageTagsCommandOutput , } from "./commands/DescribeImageTagsCommand" ; import { DescribeRegistriesCommand , DescribeRegistriesCommandInput , DescribeRegistriesCommandOutput , } from "./commands/DescribeRegistriesCommand" ; import { DescribeRepositoriesCommand , DescribeRepositoriesCommandInput , DescribeRepositoriesCommandOutput , } from "./commands/DescribeRepositoriesCommand" ; import { GetAuthorizationTokenCommand , GetAuthorizationTokenCommandInput , GetAuthorizationTokenCommandOutput , } from "./commands/GetAuthorizationTokenCommand" ; import { GetRegistryCatalogDataCommand , GetRegistryCatalogDataCommandInput , GetRegistryCatalogDataCommandOutput , } from "./commands/GetRegistryCatalogDataCommand" ; import { GetRepositoryCatalogDataCommand , GetRepositoryCatalogDataCommandInput , GetRepositoryCatalogDataCommandOutput , } from "./commands/GetRepositoryCatalogDataCommand" ; import { GetRepositoryPolicyCommand , GetRepositoryPolicyCommandInput , GetRepositoryPolicyCommandOutput , } from "./commands/GetRepositoryPolicyCommand" ; import { InitiateLayerUploadCommand , InitiateLayerUploadCommandInput , InitiateLayerUploadCommandOutput , } from "./commands/InitiateLayerUploadCommand" ; import { ListTagsForResourceCommand , ListTagsForResourceCommandInput , ListTagsForResourceCommandOutput , } from "./commands/ListTagsForResourceCommand" ; import { PutImageCommand , PutImageCommandInput , PutImageCommandOutput } from "./commands/PutImageCommand" ; import { PutRegistryCatalogDataCommand , PutRegistryCatalogDataCommandInput , PutRegistryCatalogDataCommandOutput , } from "./commands/PutRegistryCatalogDataCommand" ; import { PutRepositoryCatalogDataCommand , PutRepositoryCatalogDataCommandInput , PutRepositoryCatalogDataCommandOutput , } from "./commands/PutRepositoryCatalogDataCommand" ; import { SetRepositoryPolicyCommand , SetRepositoryPolicyCommandInput , SetRepositoryPolicyCommandOutput , } from "./commands/SetRepositoryPolicyCommand" ; import { TagResourceCommand , TagResourceCommandInput , TagResourceCommandOutput } from "./commands/TagResourceCommand" ; import { UntagResourceCommand , UntagResourceCommandInput , UntagResourceCommandOutput , } from "./commands/UntagResourceCommand" ; import { UploadLayerPartCommand , UploadLayerPartCommandInput , UploadLayerPartCommandOutput , } from "./commands/UploadLayerPartCommand" ; import { ECRPUBLICClient } from "./ECRPUBLICClient" ; /**
 * <fullname>Amazon Elastic Container Registry Public</fullname>
 *          <p>Amazon Elastic Container Registry (Amazon ECR) is a managed container image registry service. Amazon ECR provides both
 *          public and private registries to host your container images. You can use the familiar
 *          Docker CLI, or their preferred client, to push, pull, and manage images. Amazon ECR provides a
 *          secure, scalable, and reliable registry for your Docker or Open Container Initiative (OCI)
 *          images. Amazon ECR supports public repositories with this API. For information about the Amazon ECR
 *          API for private repositories, see <a href="https://docs.aws.amazon.com/AmazonECR/latest/APIReference/Welcome.html">Amazon Elastic Container Registry API Reference</a>.</p>
 */ export class ECRPUBLIC extends ECRPUBLICClient { /**
     * <p>Checks the availability of one or more image layers within a repository in a public
     *          registry. When an image is pushed to a repository, each image layer is checked to verify if
     *          it has been uploaded before. If it has been uploaded, then the image layer is
     *          skipped.</p>
     *          <note>
     *             <p>This operation is used by the Amazon ECR proxy and is not generally used by customers for pulling and pushing images. In most cases, you should use the <code>docker</code> CLI to pull, tag, and push images.</p>
     *          </note>
     */ public batchCheckLayerAvailability ( args , options ? ) ; public batchCheckLayerAvailability ( args , cb ) ; public batchCheckLayerAvailability ( args , options , cb ) ; public batchCheckLayerAvailability ( args , optionsOrCb ? , cb ? ) { const command = new BatchCheckLayerAvailabilityCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Deletes a list of specified images within a repository in a public registry. Images are
     *          specified with either an <code>imageTag</code> or <code>imageDigest</code>.</p>
     *          <p>You can remove a tag from an image by specifying the image's tag in your request. When
     *          you remove the last tag from an image, the image is deleted from your repository.</p>
     *          <p>You can completely delete an image (and all of its tags) by specifying the image's
     *          digest in your request.</p>
     */ public batchDeleteImage ( args , options ? ) ; public batchDeleteImage ( args , cb ) ; public batchDeleteImage ( args , options , cb ) ; public batchDeleteImage ( args , optionsOrCb ? , cb ? ) { const command = new BatchDeleteImageCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Informs Amazon ECR that the image layer upload has completed for a specified public registry,
     *          repository name, and upload ID. You can optionally provide a <code>sha256</code> digest of
     *          the image layer for data validation purposes.</p>
     *          <p>When an image is pushed, the CompleteLayerUpload API is called once per each new image
     *          layer to verify that the upload has completed.</p>
     *          <note>
     *             <p>This operation is used by the Amazon ECR proxy and is not generally used by customers for pulling and pushing images. In most cases, you should use the <code>docker</code> CLI to pull, tag, and push images.</p>
     *          </note>
     */ public completeLayerUpload ( args , options ? ) ; public completeLayerUpload ( args , cb ) ; public completeLayerUpload ( args , options , cb ) ; public completeLayerUpload ( args , optionsOrCb ? , cb ? ) { const command = new CompleteLayerUploadCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Creates a repository in a public registry. For more information, see <a href="https://docs.aws.amazon.com/AmazonECR/latest/userguide/Repositories.html">Amazon ECR
     *             repositories</a> in the <i>Amazon Elastic Container Registry User Guide</i>.</p>
     */ public createRepository ( args , options ? ) ; public createRepository ( args , cb ) ; public createRepository ( args , options , cb ) ; public createRepository ( args , optionsOrCb ? , cb ? ) { const command = new CreateRepositoryCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Deletes a repository in a public registry. If the repository contains images, you must
     *          either delete all images in the repository or use the <code>force</code> option which
     *          deletes all images on your behalf before deleting the repository.</p>
     */ public deleteRepository ( args , options ? ) ; public deleteRepository ( args , cb ) ; public deleteRepository ( args , options , cb ) ; public deleteRepository ( args , optionsOrCb ? , cb ? ) { const command = new DeleteRepositoryCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Deletes the repository policy associated with the specified repository.</p>
     */ public deleteRepositoryPolicy ( args , options ? ) ; public deleteRepositoryPolicy ( args , cb ) ; public deleteRepositoryPolicy ( args , options , cb ) ; public deleteRepositoryPolicy ( args , optionsOrCb ? , cb ? ) { const command = new DeleteRepositoryPolicyCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Returns metadata about the images in a repository in a public registry.</p>
     *          <note>
     *             <p>Beginning with Docker version 1.9, the Docker client compresses image layers before
     *             pushing them to a V2 Docker registry. The output of the <code>docker images</code>
     *             command shows the uncompressed image size, so it may return a larger image size than the
     *             image sizes returned by <a>DescribeImages</a>.</p>
     *          </note>
     */ public describeImages ( args , options ? ) ; public describeImages ( args , cb ) ; public describeImages ( args , options , cb ) ; public describeImages ( args , optionsOrCb ? , cb ? ) { const command = new DescribeImagesCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Returns the image tag details for a repository in a public registry.</p>
     */ public describeImageTags ( args , options ? ) ; public describeImageTags ( args , cb ) ; public describeImageTags ( args , options , cb ) ; public describeImageTags ( args , optionsOrCb ? , cb ? ) { const command = new DescribeImageTagsCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Returns details for a public registry.</p>
     */ public describeRegistries ( args , options ? ) ; public describeRegistries ( args , cb ) ; public describeRegistries ( args , options , cb ) ; public describeRegistries ( args , optionsOrCb ? , cb ? ) { const command = new DescribeRegistriesCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Describes repositories in a public registry.</p>
     */ public describeRepositories ( args , options ? ) ; public describeRepositories ( args , cb ) ; public describeRepositories ( args , options , cb ) ; public describeRepositories ( args , optionsOrCb ? , cb ? ) { const command = new DescribeRepositoriesCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Retrieves an authorization token. An authorization token represents your IAM
     *          authentication credentials and can be used to access any Amazon ECR registry that your IAM
     *          principal has access to. The authorization token is valid for 12 hours. This API requires
     *          the <code>ecr-public:GetAuthorizationToken</code> and
     *             <code>sts:GetServiceBearerToken</code> permissions.</p>
     */ public getAuthorizationToken ( args , options ? ) ; public getAuthorizationToken ( args , cb ) ; public getAuthorizationToken ( args , options , cb ) ; public getAuthorizationToken ( args , optionsOrCb ? , cb ? ) { const command = new GetAuthorizationTokenCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Retrieves catalog metadata for a public registry.</p>
     */ public getRegistryCatalogData ( args , options ? ) ; public getRegistryCatalogData ( args , cb ) ; public getRegistryCatalogData ( args , options , cb ) ; public getRegistryCatalogData ( args , optionsOrCb ? , cb ? ) { const command = new GetRegistryCatalogDataCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Retrieve catalog metadata for a repository in a public registry. This metadata is
     *          displayed publicly in the Amazon ECR Public Gallery.</p>
     */ public getRepositoryCatalogData ( args , options ? ) ; public getRepositoryCatalogData ( args , cb ) ; public getRepositoryCatalogData ( args , options , cb ) ; public getRepositoryCatalogData ( args , optionsOrCb ? , cb ? ) { const command = new GetRepositoryCatalogDataCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Retrieves the repository policy for the specified repository.</p>
     */ public getRepositoryPolicy ( args , options ? ) ; public getRepositoryPolicy ( args , cb ) ; public getRepositoryPolicy ( args , options , cb ) ; public getRepositoryPolicy ( args , optionsOrCb ? , cb ? ) { const command = new GetRepositoryPolicyCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Notifies Amazon ECR that you intend to upload an image layer.</p>
     *          <p>When an image is pushed, the InitiateLayerUpload API is called once per image layer that
     *          has not already been uploaded. Whether or not an image layer has been uploaded is
     *          determined by the BatchCheckLayerAvailability API action.</p>
     *          <note>
     *             <p>This operation is used by the Amazon ECR proxy and is not generally used by customers for pulling and pushing images. In most cases, you should use the <code>docker</code> CLI to pull, tag, and push images.</p>
     *          </note>
     */ public initiateLayerUpload ( args , options ? ) ; public initiateLayerUpload ( args , cb ) ; public initiateLayerUpload ( args , options , cb ) ; public initiateLayerUpload ( args , optionsOrCb ? , cb ? ) { const command = new InitiateLayerUploadCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>List the tags for an Amazon ECR Public resource.</p>
     */ public listTagsForResource ( args , options ? ) ; public listTagsForResource ( args , cb ) ; public listTagsForResource ( args , options , cb ) ; public listTagsForResource ( args , optionsOrCb ? , cb ? ) { const command = new ListTagsForResourceCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Creates or updates the image manifest and tags associated with an image.</p>
     *          <p>When an image is pushed and all new image layers have been uploaded, the PutImage API is
     *          called once to create or update the image manifest and the tags associated with the
     *          image.</p>
     *
     *          <note>
     *             <p>This operation is used by the Amazon ECR proxy and is not generally used by customers for pulling and pushing images. In most cases, you should use the <code>docker</code> CLI to pull, tag, and push images.</p>
     *          </note>
     */ public putImage ( args , options ? ) ; public putImage ( args , cb ) ; public putImage ( args , options , cb ) ; public putImage ( args , optionsOrCb ? , cb ? ) { const command = new PutImageCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Create or updates the catalog data for a public registry.</p>
     */ public putRegistryCatalogData ( args , options ? ) ; public putRegistryCatalogData ( args , cb ) ; public putRegistryCatalogData ( args , options , cb ) ; public putRegistryCatalogData ( args , optionsOrCb ? , cb ? ) { const command = new PutRegistryCatalogDataCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Creates or updates the catalog data for a repository in a public registry.</p>
     */ public putRepositoryCatalogData ( args , options ? ) ; public putRepositoryCatalogData ( args , cb ) ; public putRepositoryCatalogData ( args , options , cb ) ; public putRepositoryCatalogData ( args , optionsOrCb ? , cb ? ) { const command = new PutRepositoryCatalogDataCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Applies a repository policy to the specified public repository to control access
     *          permissions. For more information, see <a href="https://docs.aws.amazon.com/AmazonECR/latest/userguide/repository-policies.html">Amazon ECR Repository
     *             Policies</a> in the <i>Amazon Elastic Container Registry User Guide</i>.</p>
     */ public setRepositoryPolicy ( args , options ? ) ; public setRepositoryPolicy ( args , cb ) ; public setRepositoryPolicy ( args , options , cb ) ; public setRepositoryPolicy ( args , optionsOrCb ? , cb ? ) { const command = new SetRepositoryPolicyCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Associates the specified tags to a resource with the specified <code>resourceArn</code>.
     *          If existing tags on a resource are not specified in the request parameters, they are not
     *          changed. When a resource is deleted, the tags associated with that resource are deleted as
     *          well.</p>
     */ public tagResource ( args , options ? ) ; public tagResource ( args , cb ) ; public tagResource ( args , options , cb ) ; public tagResource ( args , optionsOrCb ? , cb ? ) { const command = new TagResourceCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Deletes specified tags from a resource.</p>
     */ public untagResource ( args , options ? ) ; public untagResource ( args , cb ) ; public untagResource ( args , options , cb ) ; public untagResource ( args , optionsOrCb ? , cb ? ) { const command = new UntagResourceCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Uploads an image layer part to Amazon ECR.</p>
     *          <p>When an image is pushed, each new image layer is uploaded in parts. The maximum size of
     *          each image layer part can be 20971520 bytes (or about 20MB). The UploadLayerPart API is
     *          called once per each new image layer part.</p>
     *          <note>
     *             <p>This operation is used by the Amazon ECR proxy and is not generally used by customers for pulling and pushing images. In most cases, you should use the <code>docker</code> CLI to pull, tag, and push images.</p>
     *          </note>
     */ public uploadLayerPart ( args , options ? ) ; public uploadLayerPart ( args , cb ) ; public uploadLayerPart ( args , options , cb ) ; public uploadLayerPart ( args , optionsOrCb ? , cb ? ) { const command = new UploadLayerPartCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } }