import { HttpHandlerOptions as __HttpHandlerOptions } from "@aws-sdk/types" ; import { BatchCheckLayerAvailabilityCommand , BatchCheckLayerAvailabilityCommandInput , BatchCheckLayerAvailabilityCommandOutput , } from "./commands/BatchCheckLayerAvailabilityCommand" ; import { BatchDeleteImageCommand , BatchDeleteImageCommandInput , BatchDeleteImageCommandOutput , } from "./commands/BatchDeleteImageCommand" ; import { BatchGetImageCommand , BatchGetImageCommandInput , BatchGetImageCommandOutput , } from "./commands/BatchGetImageCommand" ; import { BatchGetRepositoryScanningConfigurationCommand , BatchGetRepositoryScanningConfigurationCommandInput , BatchGetRepositoryScanningConfigurationCommandOutput , } from "./commands/BatchGetRepositoryScanningConfigurationCommand" ; import { CompleteLayerUploadCommand , CompleteLayerUploadCommandInput , CompleteLayerUploadCommandOutput , } from "./commands/CompleteLayerUploadCommand" ; import { CreatePullThroughCacheRuleCommand , CreatePullThroughCacheRuleCommandInput , CreatePullThroughCacheRuleCommandOutput , } from "./commands/CreatePullThroughCacheRuleCommand" ; import { CreateRepositoryCommand , CreateRepositoryCommandInput , CreateRepositoryCommandOutput , } from "./commands/CreateRepositoryCommand" ; import { DeleteLifecyclePolicyCommand , DeleteLifecyclePolicyCommandInput , DeleteLifecyclePolicyCommandOutput , } from "./commands/DeleteLifecyclePolicyCommand" ; import { DeletePullThroughCacheRuleCommand , DeletePullThroughCacheRuleCommandInput , DeletePullThroughCacheRuleCommandOutput , } from "./commands/DeletePullThroughCacheRuleCommand" ; import { DeleteRegistryPolicyCommand , DeleteRegistryPolicyCommandInput , DeleteRegistryPolicyCommandOutput , } from "./commands/DeleteRegistryPolicyCommand" ; import { DeleteRepositoryCommand , DeleteRepositoryCommandInput , DeleteRepositoryCommandOutput , } from "./commands/DeleteRepositoryCommand" ; import { DeleteRepositoryPolicyCommand , DeleteRepositoryPolicyCommandInput , DeleteRepositoryPolicyCommandOutput , } from "./commands/DeleteRepositoryPolicyCommand" ; import { DescribeImageReplicationStatusCommand , DescribeImageReplicationStatusCommandInput , DescribeImageReplicationStatusCommandOutput , } from "./commands/DescribeImageReplicationStatusCommand" ; import { DescribeImageScanFindingsCommand , DescribeImageScanFindingsCommandInput , DescribeImageScanFindingsCommandOutput , } from "./commands/DescribeImageScanFindingsCommand" ; import { DescribeImagesCommand , DescribeImagesCommandInput , DescribeImagesCommandOutput , } from "./commands/DescribeImagesCommand" ; import { DescribePullThroughCacheRulesCommand , DescribePullThroughCacheRulesCommandInput , DescribePullThroughCacheRulesCommandOutput , } from "./commands/DescribePullThroughCacheRulesCommand" ; import { DescribeRegistryCommand , DescribeRegistryCommandInput , DescribeRegistryCommandOutput , } from "./commands/DescribeRegistryCommand" ; import { DescribeRepositoriesCommand , DescribeRepositoriesCommandInput , DescribeRepositoriesCommandOutput , } from "./commands/DescribeRepositoriesCommand" ; import { GetAuthorizationTokenCommand , GetAuthorizationTokenCommandInput , GetAuthorizationTokenCommandOutput , } from "./commands/GetAuthorizationTokenCommand" ; import { GetDownloadUrlForLayerCommand , GetDownloadUrlForLayerCommandInput , GetDownloadUrlForLayerCommandOutput , } from "./commands/GetDownloadUrlForLayerCommand" ; import { GetLifecyclePolicyCommand , GetLifecyclePolicyCommandInput , GetLifecyclePolicyCommandOutput , } from "./commands/GetLifecyclePolicyCommand" ; import { GetLifecyclePolicyPreviewCommand , GetLifecyclePolicyPreviewCommandInput , GetLifecyclePolicyPreviewCommandOutput , } from "./commands/GetLifecyclePolicyPreviewCommand" ; import { GetRegistryPolicyCommand , GetRegistryPolicyCommandInput , GetRegistryPolicyCommandOutput , } from "./commands/GetRegistryPolicyCommand" ; import { GetRegistryScanningConfigurationCommand , GetRegistryScanningConfigurationCommandInput , GetRegistryScanningConfigurationCommandOutput , } from "./commands/GetRegistryScanningConfigurationCommand" ; import { GetRepositoryPolicyCommand , GetRepositoryPolicyCommandInput , GetRepositoryPolicyCommandOutput , } from "./commands/GetRepositoryPolicyCommand" ; import { InitiateLayerUploadCommand , InitiateLayerUploadCommandInput , InitiateLayerUploadCommandOutput , } from "./commands/InitiateLayerUploadCommand" ; import { ListImagesCommand , ListImagesCommandInput , ListImagesCommandOutput } from "./commands/ListImagesCommand" ; import { ListTagsForResourceCommand , ListTagsForResourceCommandInput , ListTagsForResourceCommandOutput , } from "./commands/ListTagsForResourceCommand" ; import { PutImageCommand , PutImageCommandInput , PutImageCommandOutput } from "./commands/PutImageCommand" ; import { PutImageScanningConfigurationCommand , PutImageScanningConfigurationCommandInput , PutImageScanningConfigurationCommandOutput , } from "./commands/PutImageScanningConfigurationCommand" ; import { PutImageTagMutabilityCommand , PutImageTagMutabilityCommandInput , PutImageTagMutabilityCommandOutput , } from "./commands/PutImageTagMutabilityCommand" ; import { PutLifecyclePolicyCommand , PutLifecyclePolicyCommandInput , PutLifecyclePolicyCommandOutput , } from "./commands/PutLifecyclePolicyCommand" ; import { PutRegistryPolicyCommand , PutRegistryPolicyCommandInput , PutRegistryPolicyCommandOutput , } from "./commands/PutRegistryPolicyCommand" ; import { PutRegistryScanningConfigurationCommand , PutRegistryScanningConfigurationCommandInput , PutRegistryScanningConfigurationCommandOutput , } from "./commands/PutRegistryScanningConfigurationCommand" ; import { PutReplicationConfigurationCommand , PutReplicationConfigurationCommandInput , PutReplicationConfigurationCommandOutput , } from "./commands/PutReplicationConfigurationCommand" ; import { SetRepositoryPolicyCommand , SetRepositoryPolicyCommandInput , SetRepositoryPolicyCommandOutput , } from "./commands/SetRepositoryPolicyCommand" ; import { StartImageScanCommand , StartImageScanCommandInput , StartImageScanCommandOutput , } from "./commands/StartImageScanCommand" ; import { StartLifecyclePolicyPreviewCommand , StartLifecyclePolicyPreviewCommandInput , StartLifecyclePolicyPreviewCommandOutput , } from "./commands/StartLifecyclePolicyPreviewCommand" ; import { TagResourceCommand , TagResourceCommandInput , TagResourceCommandOutput } from "./commands/TagResourceCommand" ; import { UntagResourceCommand , UntagResourceCommandInput , UntagResourceCommandOutput , } from "./commands/UntagResourceCommand" ; import { UploadLayerPartCommand , UploadLayerPartCommandInput , UploadLayerPartCommandOutput , } from "./commands/UploadLayerPartCommand" ; import { ECRClient } from "./ECRClient" ; /**
 * <fullname>Amazon Elastic Container Registry</fullname>
 *         <p>Amazon Elastic Container Registry (Amazon ECR) is a managed container image registry service. Customers 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 private repositories with resource-based
 *             permissions using IAM so that specific users or Amazon EC2 instances can access
 *             repositories and images.</p>
 *         <p>Amazon ECR has service endpoints in each supported Region. For more information, see <a href="https://docs.aws.amazon.com/general/latest/gr/ecr.html">Amazon ECR endpoints</a> in the
 *                 <i>Amazon Web Services General Reference</i>.</p>
 */ export class ECR extends ECRClient { /**
     * <p>Checks the availability of one or more image layers in a repository.</p>
     *         <p>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. 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>Gets detailed information for an image. Images are specified with either an
     *                 <code>imageTag</code> or <code>imageDigest</code>.</p>
     *         <p>When an image is pulled, the BatchGetImage API is called once to retrieve the image
     *             manifest.</p>
     */ public batchGetImage ( args , options ? ) ; public batchGetImage ( args , cb ) ; public batchGetImage ( args , options , cb ) ; public batchGetImage ( args , optionsOrCb ? , cb ? ) { const command = new BatchGetImageCommand ( 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>Gets the scanning configuration for one or more repositories.</p>
     */ public batchGetRepositoryScanningConfiguration ( args , options ? ) ; public batchGetRepositoryScanningConfiguration ( args , cb ) ; public batchGetRepositoryScanningConfiguration ( args , options , cb ) ; public batchGetRepositoryScanningConfiguration ( args , optionsOrCb ? , cb ? ) { const command = new BatchGetRepositoryScanningConfigurationCommand ( 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 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 pull through cache rule. A pull through cache rule provides a way to cache
     *             images from an external public registry in your Amazon ECR private registry.</p>
     */ public createPullThroughCacheRule ( args , options ? ) ; public createPullThroughCacheRule ( args , cb ) ; public createPullThroughCacheRule ( args , options , cb ) ; public createPullThroughCacheRule ( args , optionsOrCb ? , cb ? ) { const command = new CreatePullThroughCacheRuleCommand ( 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. 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 the lifecycle policy associated with the specified repository.</p>
     */ public deleteLifecyclePolicy ( args , options ? ) ; public deleteLifecyclePolicy ( args , cb ) ; public deleteLifecyclePolicy ( args , options , cb ) ; public deleteLifecyclePolicy ( args , optionsOrCb ? , cb ? ) { const command = new DeleteLifecyclePolicyCommand ( 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 pull through cache rule.</p>
     */ public deletePullThroughCacheRule ( args , options ? ) ; public deletePullThroughCacheRule ( args , cb ) ; public deletePullThroughCacheRule ( args , options , cb ) ; public deletePullThroughCacheRule ( args , optionsOrCb ? , cb ? ) { const command = new DeletePullThroughCacheRuleCommand ( 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 registry permissions policy.</p>
     */ public deleteRegistryPolicy ( args , options ? ) ; public deleteRegistryPolicy ( args , cb ) ; public deleteRegistryPolicy ( args , options , cb ) ; public deleteRegistryPolicy ( args , optionsOrCb ? , cb ? ) { const command = new DeleteRegistryPolicyCommand ( 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. If the repository contains images, you must either delete all
     *             images in the repository or use the <code>force</code> option to delete 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 the replication status for a specified image.</p>
     */ public describeImageReplicationStatus ( args , options ? ) ; public describeImageReplicationStatus ( args , cb ) ; public describeImageReplicationStatus ( args , options , cb ) ; public describeImageReplicationStatus ( args , optionsOrCb ? , cb ? ) { const command = new DescribeImageReplicationStatusCommand ( 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.</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 scan findings for the specified image.</p>
     */ public describeImageScanFindings ( args , options ? ) ; public describeImageScanFindings ( args , cb ) ; public describeImageScanFindings ( args , options , cb ) ; public describeImageScanFindings ( args , optionsOrCb ? , cb ? ) { const command = new DescribeImageScanFindingsCommand ( 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 pull through cache rules for a registry.</p>
     */ public describePullThroughCacheRules ( args , options ? ) ; public describePullThroughCacheRules ( args , cb ) ; public describePullThroughCacheRules ( args , options , cb ) ; public describePullThroughCacheRules ( args , optionsOrCb ? , cb ? ) { const command = new DescribePullThroughCacheRulesCommand ( 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 the settings for a registry. The replication configuration for a repository
     *             can be created or updated with the <a>PutReplicationConfiguration</a> API
     *             action.</p>
     */ public describeRegistry ( args , options ? ) ; public describeRegistry ( args , cb ) ; public describeRegistry ( args , options , cb ) ; public describeRegistry ( args , optionsOrCb ? , cb ? ) { const command = new DescribeRegistryCommand ( 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 image repositories in a 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.</p>
     *         <p>The <code>authorizationToken</code> returned is a base64 encoded string that can be
     *             decoded and used in a <code>docker login</code> command to authenticate to a registry.
     *             The CLI offers an <code>get-login-password</code> command that simplifies the login
     *             process. For more information, see <a href="https://docs.aws.amazon.com/AmazonECR/latest/userguide/Registries.html#registry_auth">Registry
     *                 authentication</a> in the <i>Amazon Elastic Container Registry User Guide</i>.</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 the pre-signed Amazon S3 download URL corresponding to an image layer. You can
     *             only get URLs for image layers that are referenced in an image.</p>
     *         <p>When an image is pulled, the GetDownloadUrlForLayer API is called once per image layer
     *             that is not already cached.</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 getDownloadUrlForLayer ( args , options ? ) ; public getDownloadUrlForLayer ( args , cb ) ; public getDownloadUrlForLayer ( args , options , cb ) ; public getDownloadUrlForLayer ( args , optionsOrCb ? , cb ? ) { const command = new GetDownloadUrlForLayerCommand ( 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 lifecycle policy for the specified repository.</p>
     */ public getLifecyclePolicy ( args , options ? ) ; public getLifecyclePolicy ( args , cb ) ; public getLifecyclePolicy ( args , options , cb ) ; public getLifecyclePolicy ( args , optionsOrCb ? , cb ? ) { const command = new GetLifecyclePolicyCommand ( 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 results of the lifecycle policy preview request for the specified
     *             repository.</p>
     */ public getLifecyclePolicyPreview ( args , options ? ) ; public getLifecyclePolicyPreview ( args , cb ) ; public getLifecyclePolicyPreview ( args , options , cb ) ; public getLifecyclePolicyPreview ( args , optionsOrCb ? , cb ? ) { const command = new GetLifecyclePolicyPreviewCommand ( 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 permissions policy for a registry.</p>
     */ public getRegistryPolicy ( args , options ? ) ; public getRegistryPolicy ( args , cb ) ; public getRegistryPolicy ( args , options , cb ) ; public getRegistryPolicy ( args , optionsOrCb ? , cb ? ) { const command = new GetRegistryPolicyCommand ( 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 scanning configuration for a registry.</p>
     */ public getRegistryScanningConfiguration ( args , options ? ) ; public getRegistryScanningConfiguration ( args , cb ) ; public getRegistryScanningConfiguration ( args , options , cb ) ; public getRegistryScanningConfiguration ( args , optionsOrCb ? , cb ? ) { const command = new GetRegistryScanningConfigurationCommand ( 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>Lists all the image IDs for the specified repository.</p>
     *         <p>You can filter images based on whether or not they are tagged by using the
     *                 <code>tagStatus</code> filter and specifying either <code>TAGGED</code>,
     *                 <code>UNTAGGED</code> or <code>ANY</code>. For example, you can filter your results
     *             to return only <code>UNTAGGED</code> images and then pipe that result to a <a>BatchDeleteImage</a> operation to delete them. Or, you can filter your
     *             results to return only <code>TAGGED</code> images to list all of the tags in your
     *             repository.</p>
     */ public listImages ( args , options ? ) ; public listImages ( args , cb ) ; public listImages ( args , options , cb ) ; public listImages ( args , optionsOrCb ? , cb ? ) { const command = new ListImagesCommand ( 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 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>Updates the image scanning configuration for the specified repository.</p>
     */ public putImageScanningConfiguration ( args , options ? ) ; public putImageScanningConfiguration ( args , cb ) ; public putImageScanningConfiguration ( args , options , cb ) ; public putImageScanningConfiguration ( args , optionsOrCb ? , cb ? ) { const command = new PutImageScanningConfigurationCommand ( 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>Updates the image tag mutability settings for the specified repository. For more
     *             information, see <a href="https://docs.aws.amazon.com/AmazonECR/latest/userguide/image-tag-mutability.html">Image tag
     *                 mutability</a> in the <i>Amazon Elastic Container Registry User Guide</i>.</p>
     */ public putImageTagMutability ( args , options ? ) ; public putImageTagMutability ( args , cb ) ; public putImageTagMutability ( args , options , cb ) ; public putImageTagMutability ( args , optionsOrCb ? , cb ? ) { const command = new PutImageTagMutabilityCommand ( 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 lifecycle policy for the specified repository. For more
     *             information, see <a href="https://docs.aws.amazon.com/AmazonECR/latest/userguide/LifecyclePolicies.html">Lifecycle policy
     *                 template</a>.</p>
     */ public putLifecyclePolicy ( args , options ? ) ; public putLifecyclePolicy ( args , cb ) ; public putLifecyclePolicy ( args , options , cb ) ; public putLifecyclePolicy ( args , optionsOrCb ? , cb ? ) { const command = new PutLifecyclePolicyCommand ( 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 permissions policy for your registry.</p>
     *         <p>A registry policy is used to specify permissions for another Amazon Web Services account and is used
     *             when configuring cross-account replication. For more information, see <a href="https://docs.aws.amazon.com/AmazonECR/latest/userguide/registry-permissions.html">Registry permissions</a> in the <i>Amazon Elastic Container Registry User Guide</i>.</p>
     */ public putRegistryPolicy ( args , options ? ) ; public putRegistryPolicy ( args , cb ) ; public putRegistryPolicy ( args , options , cb ) ; public putRegistryPolicy ( args , optionsOrCb ? , cb ? ) { const command = new PutRegistryPolicyCommand ( 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 scanning configuration for your private registry.</p>
     */ public putRegistryScanningConfiguration ( args , options ? ) ; public putRegistryScanningConfiguration ( args , cb ) ; public putRegistryScanningConfiguration ( args , options , cb ) ; public putRegistryScanningConfiguration ( args , optionsOrCb ? , cb ? ) { const command = new PutRegistryScanningConfigurationCommand ( 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 replication configuration for a registry. The existing
     *             replication configuration for a repository can be retrieved with the <a>DescribeRegistry</a> API action. The first time the
     *             PutReplicationConfiguration API is called, a service-linked IAM role is created in
     *             your account for the replication process. For more information, see <a href="https://docs.aws.amazon.com/AmazonECR/latest/userguide/using-service-linked-roles.html">Using
     *                 service-linked roles for Amazon ECR</a> in the
     *             <i>Amazon Elastic Container Registry User Guide</i>.</p>
     *         <note>
     *             <p>When configuring cross-account replication, the destination account must grant the
     *                 source account permission to replicate. This permission is controlled using a
     *                 registry permissions policy. For more information, see <a>PutRegistryPolicy</a>.</p>
     *         </note>
     */ public putReplicationConfiguration ( args , options ? ) ; public putReplicationConfiguration ( args , cb ) ; public putReplicationConfiguration ( args , options , cb ) ; public putReplicationConfiguration ( args , optionsOrCb ? , cb ? ) { const command = new PutReplicationConfigurationCommand ( 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 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>Starts an image vulnerability scan. An image scan can only be started once per 24
     *             hours on an individual image. This limit includes if an image was scanned on initial
     *             push. For more information, see <a href="https://docs.aws.amazon.com/AmazonECR/latest/userguide/image-scanning.html">Image scanning</a> in the
     *                 <i>Amazon Elastic Container Registry User Guide</i>.</p>
     */ public startImageScan ( args , options ? ) ; public startImageScan ( args , cb ) ; public startImageScan ( args , options , cb ) ; public startImageScan ( args , optionsOrCb ? , cb ? ) { const command = new StartImageScanCommand ( 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>Starts a preview of a lifecycle policy for the specified repository. This allows you
     *             to see the results before associating the lifecycle policy with the repository.</p>
     */ public startLifecyclePolicyPreview ( args , options ? ) ; public startLifecyclePolicyPreview ( args , cb ) ; public startLifecyclePolicyPreview ( args , options , cb ) ; public startLifecyclePolicyPreview ( args , optionsOrCb ? , cb ? ) { const command = new StartLifecyclePolicyPreviewCommand ( 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>Adds specified tags to a resource with the specified ARN. Existing tags on a resource
     *             are not changed if they are not specified in the request parameters.</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 ) ; } } }