UNPKG

73.4 kBTypeScriptView Raw
1import {Request} from '../lib/request';
2import {Response} from '../lib/response';
3import {AWSError} from '../lib/error';
4import {Service} from '../lib/service';
5import {WaiterConfiguration} from '../lib/service';
6import {ServiceConfigurationOptions} from '../lib/service';
7import {ConfigBase as Config} from '../lib/config';
8interface Blob {}
9declare class ECR extends Service {
10 /**
11 * Constructs a service object. This object has one method for each API operation.
12 */
13 constructor(options?: ECR.Types.ClientConfiguration)
14 config: Config & ECR.Types.ClientConfiguration;
15 /**
16 * Checks the availability of one or more image layers in a repository. When an image is pushed to a repository, each image layer is checked to verify if it has been uploaded before. If it is, then the image layer is skipped. When an image is pulled from a repository, each image layer is checked once to verify it is available to be pulled. This operation is used by the Amazon ECR proxy, and it is not intended for general use by customers for pulling and pushing images. In most cases, you should use the docker CLI to pull, tag, and push images.
17 */
18 batchCheckLayerAvailability(params: ECR.Types.BatchCheckLayerAvailabilityRequest, callback?: (err: AWSError, data: ECR.Types.BatchCheckLayerAvailabilityResponse) => void): Request<ECR.Types.BatchCheckLayerAvailabilityResponse, AWSError>;
19 /**
20 * Checks the availability of one or more image layers in a repository. When an image is pushed to a repository, each image layer is checked to verify if it has been uploaded before. If it is, then the image layer is skipped. When an image is pulled from a repository, each image layer is checked once to verify it is available to be pulled. This operation is used by the Amazon ECR proxy, and it is not intended for general use by customers for pulling and pushing images. In most cases, you should use the docker CLI to pull, tag, and push images.
21 */
22 batchCheckLayerAvailability(callback?: (err: AWSError, data: ECR.Types.BatchCheckLayerAvailabilityResponse) => void): Request<ECR.Types.BatchCheckLayerAvailabilityResponse, AWSError>;
23 /**
24 * Deletes a list of specified images within a repository. Images are specified with either an imageTag or imageDigest. 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. You can completely delete an image (and all of its tags) by specifying the image's digest in your request.
25 */
26 batchDeleteImage(params: ECR.Types.BatchDeleteImageRequest, callback?: (err: AWSError, data: ECR.Types.BatchDeleteImageResponse) => void): Request<ECR.Types.BatchDeleteImageResponse, AWSError>;
27 /**
28 * Deletes a list of specified images within a repository. Images are specified with either an imageTag or imageDigest. 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. You can completely delete an image (and all of its tags) by specifying the image's digest in your request.
29 */
30 batchDeleteImage(callback?: (err: AWSError, data: ECR.Types.BatchDeleteImageResponse) => void): Request<ECR.Types.BatchDeleteImageResponse, AWSError>;
31 /**
32 * Gets detailed information for an image. Images are specified with either an imageTag or imageDigest. When an image is pulled, the BatchGetImage API is called once to retrieve the image manifest.
33 */
34 batchGetImage(params: ECR.Types.BatchGetImageRequest, callback?: (err: AWSError, data: ECR.Types.BatchGetImageResponse) => void): Request<ECR.Types.BatchGetImageResponse, AWSError>;
35 /**
36 * Gets detailed information for an image. Images are specified with either an imageTag or imageDigest. When an image is pulled, the BatchGetImage API is called once to retrieve the image manifest.
37 */
38 batchGetImage(callback?: (err: AWSError, data: ECR.Types.BatchGetImageResponse) => void): Request<ECR.Types.BatchGetImageResponse, AWSError>;
39 /**
40 * Informs Amazon ECR that the image layer upload has completed for a specified registry, repository name, and upload ID. You can optionally provide a sha256 digest of the image layer for data validation purposes. When an image is pushed, the CompleteLayerUpload API is called once per each new image layer to verify that the upload has completed. This operation is used by the Amazon ECR proxy, and it is not intended for general use by customers for pulling and pushing images. In most cases, you should use the docker CLI to pull, tag, and push images.
41 */
42 completeLayerUpload(params: ECR.Types.CompleteLayerUploadRequest, callback?: (err: AWSError, data: ECR.Types.CompleteLayerUploadResponse) => void): Request<ECR.Types.CompleteLayerUploadResponse, AWSError>;
43 /**
44 * Informs Amazon ECR that the image layer upload has completed for a specified registry, repository name, and upload ID. You can optionally provide a sha256 digest of the image layer for data validation purposes. When an image is pushed, the CompleteLayerUpload API is called once per each new image layer to verify that the upload has completed. This operation is used by the Amazon ECR proxy, and it is not intended for general use by customers for pulling and pushing images. In most cases, you should use the docker CLI to pull, tag, and push images.
45 */
46 completeLayerUpload(callback?: (err: AWSError, data: ECR.Types.CompleteLayerUploadResponse) => void): Request<ECR.Types.CompleteLayerUploadResponse, AWSError>;
47 /**
48 * Creates a repository. For more information, see Amazon ECR Repositories in the Amazon Elastic Container Registry User Guide.
49 */
50 createRepository(params: ECR.Types.CreateRepositoryRequest, callback?: (err: AWSError, data: ECR.Types.CreateRepositoryResponse) => void): Request<ECR.Types.CreateRepositoryResponse, AWSError>;
51 /**
52 * Creates a repository. For more information, see Amazon ECR Repositories in the Amazon Elastic Container Registry User Guide.
53 */
54 createRepository(callback?: (err: AWSError, data: ECR.Types.CreateRepositoryResponse) => void): Request<ECR.Types.CreateRepositoryResponse, AWSError>;
55 /**
56 * Deletes the lifecycle policy associated with the specified repository.
57 */
58 deleteLifecyclePolicy(params: ECR.Types.DeleteLifecyclePolicyRequest, callback?: (err: AWSError, data: ECR.Types.DeleteLifecyclePolicyResponse) => void): Request<ECR.Types.DeleteLifecyclePolicyResponse, AWSError>;
59 /**
60 * Deletes the lifecycle policy associated with the specified repository.
61 */
62 deleteLifecyclePolicy(callback?: (err: AWSError, data: ECR.Types.DeleteLifecyclePolicyResponse) => void): Request<ECR.Types.DeleteLifecyclePolicyResponse, AWSError>;
63 /**
64 * Deletes a repository. If the repository contains images, you must either delete all images in the repository or use the force option to delete the repository.
65 */
66 deleteRepository(params: ECR.Types.DeleteRepositoryRequest, callback?: (err: AWSError, data: ECR.Types.DeleteRepositoryResponse) => void): Request<ECR.Types.DeleteRepositoryResponse, AWSError>;
67 /**
68 * Deletes a repository. If the repository contains images, you must either delete all images in the repository or use the force option to delete the repository.
69 */
70 deleteRepository(callback?: (err: AWSError, data: ECR.Types.DeleteRepositoryResponse) => void): Request<ECR.Types.DeleteRepositoryResponse, AWSError>;
71 /**
72 * Deletes the repository policy associated with the specified repository.
73 */
74 deleteRepositoryPolicy(params: ECR.Types.DeleteRepositoryPolicyRequest, callback?: (err: AWSError, data: ECR.Types.DeleteRepositoryPolicyResponse) => void): Request<ECR.Types.DeleteRepositoryPolicyResponse, AWSError>;
75 /**
76 * Deletes the repository policy associated with the specified repository.
77 */
78 deleteRepositoryPolicy(callback?: (err: AWSError, data: ECR.Types.DeleteRepositoryPolicyResponse) => void): Request<ECR.Types.DeleteRepositoryPolicyResponse, AWSError>;
79 /**
80 * Returns the scan findings for the specified image.
81 */
82 describeImageScanFindings(params: ECR.Types.DescribeImageScanFindingsRequest, callback?: (err: AWSError, data: ECR.Types.DescribeImageScanFindingsResponse) => void): Request<ECR.Types.DescribeImageScanFindingsResponse, AWSError>;
83 /**
84 * Returns the scan findings for the specified image.
85 */
86 describeImageScanFindings(callback?: (err: AWSError, data: ECR.Types.DescribeImageScanFindingsResponse) => void): Request<ECR.Types.DescribeImageScanFindingsResponse, AWSError>;
87 /**
88 * Returns metadata about the images in a repository. Beginning with Docker version 1.9, the Docker client compresses image layers before pushing them to a V2 Docker registry. The output of the docker images command shows the uncompressed image size, so it may return a larger image size than the image sizes returned by DescribeImages.
89 */
90 describeImages(params: ECR.Types.DescribeImagesRequest, callback?: (err: AWSError, data: ECR.Types.DescribeImagesResponse) => void): Request<ECR.Types.DescribeImagesResponse, AWSError>;
91 /**
92 * Returns metadata about the images in a repository. Beginning with Docker version 1.9, the Docker client compresses image layers before pushing them to a V2 Docker registry. The output of the docker images command shows the uncompressed image size, so it may return a larger image size than the image sizes returned by DescribeImages.
93 */
94 describeImages(callback?: (err: AWSError, data: ECR.Types.DescribeImagesResponse) => void): Request<ECR.Types.DescribeImagesResponse, AWSError>;
95 /**
96 * Describes image repositories in a registry.
97 */
98 describeRepositories(params: ECR.Types.DescribeRepositoriesRequest, callback?: (err: AWSError, data: ECR.Types.DescribeRepositoriesResponse) => void): Request<ECR.Types.DescribeRepositoriesResponse, AWSError>;
99 /**
100 * Describes image repositories in a registry.
101 */
102 describeRepositories(callback?: (err: AWSError, data: ECR.Types.DescribeRepositoriesResponse) => void): Request<ECR.Types.DescribeRepositoriesResponse, AWSError>;
103 /**
104 * 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. The authorizationToken returned is a base64 encoded string that can be decoded and used in a docker login command to authenticate to a registry. The AWS CLI offers an get-login-password command that simplifies the login process. For more information, see Registry Authentication in the Amazon Elastic Container Registry User Guide.
105 */
106 getAuthorizationToken(params: ECR.Types.GetAuthorizationTokenRequest, callback?: (err: AWSError, data: ECR.Types.GetAuthorizationTokenResponse) => void): Request<ECR.Types.GetAuthorizationTokenResponse, AWSError>;
107 /**
108 * 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. The authorizationToken returned is a base64 encoded string that can be decoded and used in a docker login command to authenticate to a registry. The AWS CLI offers an get-login-password command that simplifies the login process. For more information, see Registry Authentication in the Amazon Elastic Container Registry User Guide.
109 */
110 getAuthorizationToken(callback?: (err: AWSError, data: ECR.Types.GetAuthorizationTokenResponse) => void): Request<ECR.Types.GetAuthorizationTokenResponse, AWSError>;
111 /**
112 * 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. When an image is pulled, the GetDownloadUrlForLayer API is called once per image layer. This operation is used by the Amazon ECR proxy, and it is not intended for general use by customers for pulling and pushing images. In most cases, you should use the docker CLI to pull, tag, and push images.
113 */
114 getDownloadUrlForLayer(params: ECR.Types.GetDownloadUrlForLayerRequest, callback?: (err: AWSError, data: ECR.Types.GetDownloadUrlForLayerResponse) => void): Request<ECR.Types.GetDownloadUrlForLayerResponse, AWSError>;
115 /**
116 * 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. When an image is pulled, the GetDownloadUrlForLayer API is called once per image layer. This operation is used by the Amazon ECR proxy, and it is not intended for general use by customers for pulling and pushing images. In most cases, you should use the docker CLI to pull, tag, and push images.
117 */
118 getDownloadUrlForLayer(callback?: (err: AWSError, data: ECR.Types.GetDownloadUrlForLayerResponse) => void): Request<ECR.Types.GetDownloadUrlForLayerResponse, AWSError>;
119 /**
120 * Retrieves the lifecycle policy for the specified repository.
121 */
122 getLifecyclePolicy(params: ECR.Types.GetLifecyclePolicyRequest, callback?: (err: AWSError, data: ECR.Types.GetLifecyclePolicyResponse) => void): Request<ECR.Types.GetLifecyclePolicyResponse, AWSError>;
123 /**
124 * Retrieves the lifecycle policy for the specified repository.
125 */
126 getLifecyclePolicy(callback?: (err: AWSError, data: ECR.Types.GetLifecyclePolicyResponse) => void): Request<ECR.Types.GetLifecyclePolicyResponse, AWSError>;
127 /**
128 * Retrieves the results of the lifecycle policy preview request for the specified repository.
129 */
130 getLifecyclePolicyPreview(params: ECR.Types.GetLifecyclePolicyPreviewRequest, callback?: (err: AWSError, data: ECR.Types.GetLifecyclePolicyPreviewResponse) => void): Request<ECR.Types.GetLifecyclePolicyPreviewResponse, AWSError>;
131 /**
132 * Retrieves the results of the lifecycle policy preview request for the specified repository.
133 */
134 getLifecyclePolicyPreview(callback?: (err: AWSError, data: ECR.Types.GetLifecyclePolicyPreviewResponse) => void): Request<ECR.Types.GetLifecyclePolicyPreviewResponse, AWSError>;
135 /**
136 * Retrieves the repository policy for the specified repository.
137 */
138 getRepositoryPolicy(params: ECR.Types.GetRepositoryPolicyRequest, callback?: (err: AWSError, data: ECR.Types.GetRepositoryPolicyResponse) => void): Request<ECR.Types.GetRepositoryPolicyResponse, AWSError>;
139 /**
140 * Retrieves the repository policy for the specified repository.
141 */
142 getRepositoryPolicy(callback?: (err: AWSError, data: ECR.Types.GetRepositoryPolicyResponse) => void): Request<ECR.Types.GetRepositoryPolicyResponse, AWSError>;
143 /**
144 * Notifies Amazon ECR that you intend to upload an image layer. When an image is pushed, the InitiateLayerUpload API is called once per image layer that has not already been uploaded. Whether an image layer has been uploaded before is determined by the BatchCheckLayerAvailability API action. This operation is used by the Amazon ECR proxy, and it is not intended for general use by customers for pulling and pushing images. In most cases, you should use the docker CLI to pull, tag, and push images.
145 */
146 initiateLayerUpload(params: ECR.Types.InitiateLayerUploadRequest, callback?: (err: AWSError, data: ECR.Types.InitiateLayerUploadResponse) => void): Request<ECR.Types.InitiateLayerUploadResponse, AWSError>;
147 /**
148 * Notifies Amazon ECR that you intend to upload an image layer. When an image is pushed, the InitiateLayerUpload API is called once per image layer that has not already been uploaded. Whether an image layer has been uploaded before is determined by the BatchCheckLayerAvailability API action. This operation is used by the Amazon ECR proxy, and it is not intended for general use by customers for pulling and pushing images. In most cases, you should use the docker CLI to pull, tag, and push images.
149 */
150 initiateLayerUpload(callback?: (err: AWSError, data: ECR.Types.InitiateLayerUploadResponse) => void): Request<ECR.Types.InitiateLayerUploadResponse, AWSError>;
151 /**
152 * Lists all the image IDs for the specified repository. You can filter images based on whether or not they are tagged by using the tagStatus filter and specifying either TAGGED, UNTAGGED or ANY. For example, you can filter your results to return only UNTAGGED images and then pipe that result to a BatchDeleteImage operation to delete them. Or, you can filter your results to return only TAGGED images to list all of the tags in your repository.
153 */
154 listImages(params: ECR.Types.ListImagesRequest, callback?: (err: AWSError, data: ECR.Types.ListImagesResponse) => void): Request<ECR.Types.ListImagesResponse, AWSError>;
155 /**
156 * Lists all the image IDs for the specified repository. You can filter images based on whether or not they are tagged by using the tagStatus filter and specifying either TAGGED, UNTAGGED or ANY. For example, you can filter your results to return only UNTAGGED images and then pipe that result to a BatchDeleteImage operation to delete them. Or, you can filter your results to return only TAGGED images to list all of the tags in your repository.
157 */
158 listImages(callback?: (err: AWSError, data: ECR.Types.ListImagesResponse) => void): Request<ECR.Types.ListImagesResponse, AWSError>;
159 /**
160 * List the tags for an Amazon ECR resource.
161 */
162 listTagsForResource(params: ECR.Types.ListTagsForResourceRequest, callback?: (err: AWSError, data: ECR.Types.ListTagsForResourceResponse) => void): Request<ECR.Types.ListTagsForResourceResponse, AWSError>;
163 /**
164 * List the tags for an Amazon ECR resource.
165 */
166 listTagsForResource(callback?: (err: AWSError, data: ECR.Types.ListTagsForResourceResponse) => void): Request<ECR.Types.ListTagsForResourceResponse, AWSError>;
167 /**
168 * Creates or updates the image manifest and tags associated with an image. 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 tags associated with the image. This operation is used by the Amazon ECR proxy, and it is not intended for general use by customers for pulling and pushing images. In most cases, you should use the docker CLI to pull, tag, and push images.
169 */
170 putImage(params: ECR.Types.PutImageRequest, callback?: (err: AWSError, data: ECR.Types.PutImageResponse) => void): Request<ECR.Types.PutImageResponse, AWSError>;
171 /**
172 * Creates or updates the image manifest and tags associated with an image. 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 tags associated with the image. This operation is used by the Amazon ECR proxy, and it is not intended for general use by customers for pulling and pushing images. In most cases, you should use the docker CLI to pull, tag, and push images.
173 */
174 putImage(callback?: (err: AWSError, data: ECR.Types.PutImageResponse) => void): Request<ECR.Types.PutImageResponse, AWSError>;
175 /**
176 * Updates the image scanning configuration for the specified repository.
177 */
178 putImageScanningConfiguration(params: ECR.Types.PutImageScanningConfigurationRequest, callback?: (err: AWSError, data: ECR.Types.PutImageScanningConfigurationResponse) => void): Request<ECR.Types.PutImageScanningConfigurationResponse, AWSError>;
179 /**
180 * Updates the image scanning configuration for the specified repository.
181 */
182 putImageScanningConfiguration(callback?: (err: AWSError, data: ECR.Types.PutImageScanningConfigurationResponse) => void): Request<ECR.Types.PutImageScanningConfigurationResponse, AWSError>;
183 /**
184 * Updates the image tag mutability settings for the specified repository. For more information, see Image Tag Mutability in the Amazon Elastic Container Registry User Guide.
185 */
186 putImageTagMutability(params: ECR.Types.PutImageTagMutabilityRequest, callback?: (err: AWSError, data: ECR.Types.PutImageTagMutabilityResponse) => void): Request<ECR.Types.PutImageTagMutabilityResponse, AWSError>;
187 /**
188 * Updates the image tag mutability settings for the specified repository. For more information, see Image Tag Mutability in the Amazon Elastic Container Registry User Guide.
189 */
190 putImageTagMutability(callback?: (err: AWSError, data: ECR.Types.PutImageTagMutabilityResponse) => void): Request<ECR.Types.PutImageTagMutabilityResponse, AWSError>;
191 /**
192 * Creates or updates the lifecycle policy for the specified repository. For more information, see Lifecycle Policy Template.
193 */
194 putLifecyclePolicy(params: ECR.Types.PutLifecyclePolicyRequest, callback?: (err: AWSError, data: ECR.Types.PutLifecyclePolicyResponse) => void): Request<ECR.Types.PutLifecyclePolicyResponse, AWSError>;
195 /**
196 * Creates or updates the lifecycle policy for the specified repository. For more information, see Lifecycle Policy Template.
197 */
198 putLifecyclePolicy(callback?: (err: AWSError, data: ECR.Types.PutLifecyclePolicyResponse) => void): Request<ECR.Types.PutLifecyclePolicyResponse, AWSError>;
199 /**
200 * Applies a repository policy to the specified repository to control access permissions. For more information, see Amazon ECR Repository Policies in the Amazon Elastic Container Registry User Guide.
201 */
202 setRepositoryPolicy(params: ECR.Types.SetRepositoryPolicyRequest, callback?: (err: AWSError, data: ECR.Types.SetRepositoryPolicyResponse) => void): Request<ECR.Types.SetRepositoryPolicyResponse, AWSError>;
203 /**
204 * Applies a repository policy to the specified repository to control access permissions. For more information, see Amazon ECR Repository Policies in the Amazon Elastic Container Registry User Guide.
205 */
206 setRepositoryPolicy(callback?: (err: AWSError, data: ECR.Types.SetRepositoryPolicyResponse) => void): Request<ECR.Types.SetRepositoryPolicyResponse, AWSError>;
207 /**
208 * Starts an image vulnerability scan. An image scan can only be started once per day on an individual image. This limit includes if an image was scanned on initial push. For more information, see Image Scanning in the Amazon Elastic Container Registry User Guide.
209 */
210 startImageScan(params: ECR.Types.StartImageScanRequest, callback?: (err: AWSError, data: ECR.Types.StartImageScanResponse) => void): Request<ECR.Types.StartImageScanResponse, AWSError>;
211 /**
212 * Starts an image vulnerability scan. An image scan can only be started once per day on an individual image. This limit includes if an image was scanned on initial push. For more information, see Image Scanning in the Amazon Elastic Container Registry User Guide.
213 */
214 startImageScan(callback?: (err: AWSError, data: ECR.Types.StartImageScanResponse) => void): Request<ECR.Types.StartImageScanResponse, AWSError>;
215 /**
216 * 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.
217 */
218 startLifecyclePolicyPreview(params: ECR.Types.StartLifecyclePolicyPreviewRequest, callback?: (err: AWSError, data: ECR.Types.StartLifecyclePolicyPreviewResponse) => void): Request<ECR.Types.StartLifecyclePolicyPreviewResponse, AWSError>;
219 /**
220 * 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.
221 */
222 startLifecyclePolicyPreview(callback?: (err: AWSError, data: ECR.Types.StartLifecyclePolicyPreviewResponse) => void): Request<ECR.Types.StartLifecyclePolicyPreviewResponse, AWSError>;
223 /**
224 * 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.
225 */
226 tagResource(params: ECR.Types.TagResourceRequest, callback?: (err: AWSError, data: ECR.Types.TagResourceResponse) => void): Request<ECR.Types.TagResourceResponse, AWSError>;
227 /**
228 * 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.
229 */
230 tagResource(callback?: (err: AWSError, data: ECR.Types.TagResourceResponse) => void): Request<ECR.Types.TagResourceResponse, AWSError>;
231 /**
232 * Deletes specified tags from a resource.
233 */
234 untagResource(params: ECR.Types.UntagResourceRequest, callback?: (err: AWSError, data: ECR.Types.UntagResourceResponse) => void): Request<ECR.Types.UntagResourceResponse, AWSError>;
235 /**
236 * Deletes specified tags from a resource.
237 */
238 untagResource(callback?: (err: AWSError, data: ECR.Types.UntagResourceResponse) => void): Request<ECR.Types.UntagResourceResponse, AWSError>;
239 /**
240 * Uploads an image layer part to Amazon ECR. 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. This operation is used by the Amazon ECR proxy, and it is not intended for general use by customers for pulling and pushing images. In most cases, you should use the docker CLI to pull, tag, and push images.
241 */
242 uploadLayerPart(params: ECR.Types.UploadLayerPartRequest, callback?: (err: AWSError, data: ECR.Types.UploadLayerPartResponse) => void): Request<ECR.Types.UploadLayerPartResponse, AWSError>;
243 /**
244 * Uploads an image layer part to Amazon ECR. 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. This operation is used by the Amazon ECR proxy, and it is not intended for general use by customers for pulling and pushing images. In most cases, you should use the docker CLI to pull, tag, and push images.
245 */
246 uploadLayerPart(callback?: (err: AWSError, data: ECR.Types.UploadLayerPartResponse) => void): Request<ECR.Types.UploadLayerPartResponse, AWSError>;
247 /**
248 * Waits for the imageScanComplete state by periodically calling the underlying ECR.describeImageScanFindingsoperation every 5 seconds (at most 60 times). Wait until an image scan is complete and findings can be accessed
249 */
250 waitFor(state: "imageScanComplete", params: ECR.Types.DescribeImageScanFindingsRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: ECR.Types.DescribeImageScanFindingsResponse) => void): Request<ECR.Types.DescribeImageScanFindingsResponse, AWSError>;
251 /**
252 * Waits for the imageScanComplete state by periodically calling the underlying ECR.describeImageScanFindingsoperation every 5 seconds (at most 60 times). Wait until an image scan is complete and findings can be accessed
253 */
254 waitFor(state: "imageScanComplete", callback?: (err: AWSError, data: ECR.Types.DescribeImageScanFindingsResponse) => void): Request<ECR.Types.DescribeImageScanFindingsResponse, AWSError>;
255 /**
256 * Waits for the lifecyclePolicyPreviewComplete state by periodically calling the underlying ECR.getLifecyclePolicyPreviewoperation every 5 seconds (at most 20 times). Wait until a lifecycle policy preview request is complete and results can be accessed
257 */
258 waitFor(state: "lifecyclePolicyPreviewComplete", params: ECR.Types.GetLifecyclePolicyPreviewRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: ECR.Types.GetLifecyclePolicyPreviewResponse) => void): Request<ECR.Types.GetLifecyclePolicyPreviewResponse, AWSError>;
259 /**
260 * Waits for the lifecyclePolicyPreviewComplete state by periodically calling the underlying ECR.getLifecyclePolicyPreviewoperation every 5 seconds (at most 20 times). Wait until a lifecycle policy preview request is complete and results can be accessed
261 */
262 waitFor(state: "lifecyclePolicyPreviewComplete", callback?: (err: AWSError, data: ECR.Types.GetLifecyclePolicyPreviewResponse) => void): Request<ECR.Types.GetLifecyclePolicyPreviewResponse, AWSError>;
263}
264declare namespace ECR {
265 export type Arn = string;
266 export interface Attribute {
267 /**
268 * The attribute key.
269 */
270 key: AttributeKey;
271 /**
272 * The value assigned to the attribute key.
273 */
274 value?: AttributeValue;
275 }
276 export type AttributeKey = string;
277 export type AttributeList = Attribute[];
278 export type AttributeValue = string;
279 export interface AuthorizationData {
280 /**
281 * A base64-encoded string that contains authorization data for the specified Amazon ECR registry. When the string is decoded, it is presented in the format user:password for private registry authentication using docker login.
282 */
283 authorizationToken?: Base64;
284 /**
285 * The Unix time in seconds and milliseconds when the authorization token expires. Authorization tokens are valid for 12 hours.
286 */
287 expiresAt?: ExpirationTimestamp;
288 /**
289 * The registry URL to use for this authorization token in a docker login command. The Amazon ECR registry URL format is https://aws_account_id.dkr.ecr.region.amazonaws.com. For example, https://012345678910.dkr.ecr.us-east-1.amazonaws.com..
290 */
291 proxyEndpoint?: ProxyEndpoint;
292 }
293 export type AuthorizationDataList = AuthorizationData[];
294 export type Base64 = string;
295 export interface BatchCheckLayerAvailabilityRequest {
296 /**
297 * The AWS account ID associated with the registry that contains the image layers to check. If you do not specify a registry, the default registry is assumed.
298 */
299 registryId?: RegistryId;
300 /**
301 * The name of the repository that is associated with the image layers to check.
302 */
303 repositoryName: RepositoryName;
304 /**
305 * The digests of the image layers to check.
306 */
307 layerDigests: BatchedOperationLayerDigestList;
308 }
309 export interface BatchCheckLayerAvailabilityResponse {
310 /**
311 * A list of image layer objects corresponding to the image layer references in the request.
312 */
313 layers?: LayerList;
314 /**
315 * Any failures associated with the call.
316 */
317 failures?: LayerFailureList;
318 }
319 export interface BatchDeleteImageRequest {
320 /**
321 * The AWS account ID associated with the registry that contains the image to delete. If you do not specify a registry, the default registry is assumed.
322 */
323 registryId?: RegistryId;
324 /**
325 * The repository that contains the image to delete.
326 */
327 repositoryName: RepositoryName;
328 /**
329 * A list of image ID references that correspond to images to delete. The format of the imageIds reference is imageTag=tag or imageDigest=digest.
330 */
331 imageIds: ImageIdentifierList;
332 }
333 export interface BatchDeleteImageResponse {
334 /**
335 * The image IDs of the deleted images.
336 */
337 imageIds?: ImageIdentifierList;
338 /**
339 * Any failures associated with the call.
340 */
341 failures?: ImageFailureList;
342 }
343 export interface BatchGetImageRequest {
344 /**
345 * The AWS account ID associated with the registry that contains the images to describe. If you do not specify a registry, the default registry is assumed.
346 */
347 registryId?: RegistryId;
348 /**
349 * The repository that contains the images to describe.
350 */
351 repositoryName: RepositoryName;
352 /**
353 * A list of image ID references that correspond to images to describe. The format of the imageIds reference is imageTag=tag or imageDigest=digest.
354 */
355 imageIds: ImageIdentifierList;
356 /**
357 * The accepted media types for the request. Valid values: application/vnd.docker.distribution.manifest.v1+json | application/vnd.docker.distribution.manifest.v2+json | application/vnd.oci.image.manifest.v1+json
358 */
359 acceptedMediaTypes?: MediaTypeList;
360 }
361 export interface BatchGetImageResponse {
362 /**
363 * A list of image objects corresponding to the image references in the request.
364 */
365 images?: ImageList;
366 /**
367 * Any failures associated with the call.
368 */
369 failures?: ImageFailureList;
370 }
371 export type BatchedOperationLayerDigest = string;
372 export type BatchedOperationLayerDigestList = BatchedOperationLayerDigest[];
373 export interface CompleteLayerUploadRequest {
374 /**
375 * The AWS account ID associated with the registry to which to upload layers. If you do not specify a registry, the default registry is assumed.
376 */
377 registryId?: RegistryId;
378 /**
379 * The name of the repository to associate with the image layer.
380 */
381 repositoryName: RepositoryName;
382 /**
383 * The upload ID from a previous InitiateLayerUpload operation to associate with the image layer.
384 */
385 uploadId: UploadId;
386 /**
387 * The sha256 digest of the image layer.
388 */
389 layerDigests: LayerDigestList;
390 }
391 export interface CompleteLayerUploadResponse {
392 /**
393 * The registry ID associated with the request.
394 */
395 registryId?: RegistryId;
396 /**
397 * The repository name associated with the request.
398 */
399 repositoryName?: RepositoryName;
400 /**
401 * The upload ID associated with the layer.
402 */
403 uploadId?: UploadId;
404 /**
405 * The sha256 digest of the image layer.
406 */
407 layerDigest?: LayerDigest;
408 }
409 export interface CreateRepositoryRequest {
410 /**
411 * The name to use for the repository. The repository name may be specified on its own (such as nginx-web-app) or it can be prepended with a namespace to group the repository into a category (such as project-a/nginx-web-app).
412 */
413 repositoryName: RepositoryName;
414 /**
415 * The metadata that you apply to the repository to help you categorize and organize them. Each tag consists of a key and an optional value, both of which you define. Tag keys can have a maximum character length of 128 characters, and tag values can have a maximum length of 256 characters.
416 */
417 tags?: TagList;
418 /**
419 * The tag mutability setting for the repository. If this parameter is omitted, the default setting of MUTABLE will be used which will allow image tags to be overwritten. If IMMUTABLE is specified, all image tags within the repository will be immutable which will prevent them from being overwritten.
420 */
421 imageTagMutability?: ImageTagMutability;
422 /**
423 * The image scanning configuration for the repository. This setting determines whether images are scanned for known vulnerabilities after being pushed to the repository.
424 */
425 imageScanningConfiguration?: ImageScanningConfiguration;
426 }
427 export interface CreateRepositoryResponse {
428 /**
429 * The repository that was created.
430 */
431 repository?: Repository;
432 }
433 export type CreationTimestamp = Date;
434 export interface DeleteLifecyclePolicyRequest {
435 /**
436 * The AWS account ID associated with the registry that contains the repository. If you do not specify a registry, the default registry is assumed.
437 */
438 registryId?: RegistryId;
439 /**
440 * The name of the repository.
441 */
442 repositoryName: RepositoryName;
443 }
444 export interface DeleteLifecyclePolicyResponse {
445 /**
446 * The registry ID associated with the request.
447 */
448 registryId?: RegistryId;
449 /**
450 * The repository name associated with the request.
451 */
452 repositoryName?: RepositoryName;
453 /**
454 * The JSON lifecycle policy text.
455 */
456 lifecyclePolicyText?: LifecyclePolicyText;
457 /**
458 * The time stamp of the last time that the lifecycle policy was run.
459 */
460 lastEvaluatedAt?: EvaluationTimestamp;
461 }
462 export interface DeleteRepositoryPolicyRequest {
463 /**
464 * The AWS account ID associated with the registry that contains the repository policy to delete. If you do not specify a registry, the default registry is assumed.
465 */
466 registryId?: RegistryId;
467 /**
468 * The name of the repository that is associated with the repository policy to delete.
469 */
470 repositoryName: RepositoryName;
471 }
472 export interface DeleteRepositoryPolicyResponse {
473 /**
474 * The registry ID associated with the request.
475 */
476 registryId?: RegistryId;
477 /**
478 * The repository name associated with the request.
479 */
480 repositoryName?: RepositoryName;
481 /**
482 * The JSON repository policy that was deleted from the repository.
483 */
484 policyText?: RepositoryPolicyText;
485 }
486 export interface DeleteRepositoryRequest {
487 /**
488 * The AWS account ID associated with the registry that contains the repository to delete. If you do not specify a registry, the default registry is assumed.
489 */
490 registryId?: RegistryId;
491 /**
492 * The name of the repository to delete.
493 */
494 repositoryName: RepositoryName;
495 /**
496 * If a repository contains images, forces the deletion.
497 */
498 force?: ForceFlag;
499 }
500 export interface DeleteRepositoryResponse {
501 /**
502 * The repository that was deleted.
503 */
504 repository?: Repository;
505 }
506 export interface DescribeImageScanFindingsRequest {
507 /**
508 * The AWS account ID associated with the registry that contains the repository in which to describe the image scan findings for. If you do not specify a registry, the default registry is assumed.
509 */
510 registryId?: RegistryId;
511 /**
512 * The repository for the image for which to describe the scan findings.
513 */
514 repositoryName: RepositoryName;
515 imageId: ImageIdentifier;
516 /**
517 * The nextToken value returned from a previous paginated DescribeImageScanFindings request where maxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value. This value is null when there are no more results to return.
518 */
519 nextToken?: NextToken;
520 /**
521 * The maximum number of image scan results returned by DescribeImageScanFindings in paginated output. When this parameter is used, DescribeImageScanFindings only returns maxResults results in a single page along with a nextToken response element. The remaining results of the initial request can be seen by sending another DescribeImageScanFindings request with the returned nextToken value. This value can be between 1 and 1000. If this parameter is not used, then DescribeImageScanFindings returns up to 100 results and a nextToken value, if applicable.
522 */
523 maxResults?: MaxResults;
524 }
525 export interface DescribeImageScanFindingsResponse {
526 /**
527 * The registry ID associated with the request.
528 */
529 registryId?: RegistryId;
530 /**
531 * The repository name associated with the request.
532 */
533 repositoryName?: RepositoryName;
534 imageId?: ImageIdentifier;
535 /**
536 * The current state of the scan.
537 */
538 imageScanStatus?: ImageScanStatus;
539 /**
540 * The information contained in the image scan findings.
541 */
542 imageScanFindings?: ImageScanFindings;
543 /**
544 * The nextToken value to include in a future DescribeImageScanFindings request. When the results of a DescribeImageScanFindings request exceed maxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.
545 */
546 nextToken?: NextToken;
547 }
548 export interface DescribeImagesFilter {
549 /**
550 * The tag status with which to filter your DescribeImages results. You can filter results based on whether they are TAGGED or UNTAGGED.
551 */
552 tagStatus?: TagStatus;
553 }
554 export interface DescribeImagesRequest {
555 /**
556 * The AWS account ID associated with the registry that contains the repository in which to describe images. If you do not specify a registry, the default registry is assumed.
557 */
558 registryId?: RegistryId;
559 /**
560 * The repository that contains the images to describe.
561 */
562 repositoryName: RepositoryName;
563 /**
564 * The list of image IDs for the requested repository.
565 */
566 imageIds?: ImageIdentifierList;
567 /**
568 * The nextToken value returned from a previous paginated DescribeImages request where maxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value. This value is null when there are no more results to return. This option cannot be used when you specify images with imageIds.
569 */
570 nextToken?: NextToken;
571 /**
572 * The maximum number of repository results returned by DescribeImages in paginated output. When this parameter is used, DescribeImages only returns maxResults results in a single page along with a nextToken response element. The remaining results of the initial request can be seen by sending another DescribeImages request with the returned nextToken value. This value can be between 1 and 1000. If this parameter is not used, then DescribeImages returns up to 100 results and a nextToken value, if applicable. This option cannot be used when you specify images with imageIds.
573 */
574 maxResults?: MaxResults;
575 /**
576 * The filter key and value with which to filter your DescribeImages results.
577 */
578 filter?: DescribeImagesFilter;
579 }
580 export interface DescribeImagesResponse {
581 /**
582 * A list of ImageDetail objects that contain data about the image.
583 */
584 imageDetails?: ImageDetailList;
585 /**
586 * The nextToken value to include in a future DescribeImages request. When the results of a DescribeImages request exceed maxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.
587 */
588 nextToken?: NextToken;
589 }
590 export interface DescribeRepositoriesRequest {
591 /**
592 * The AWS account ID associated with the registry that contains the repositories to be described. If you do not specify a registry, the default registry is assumed.
593 */
594 registryId?: RegistryId;
595 /**
596 * A list of repositories to describe. If this parameter is omitted, then all repositories in a registry are described.
597 */
598 repositoryNames?: RepositoryNameList;
599 /**
600 * The nextToken value returned from a previous paginated DescribeRepositories request where maxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value. This value is null when there are no more results to return. This option cannot be used when you specify repositories with repositoryNames. This token should be treated as an opaque identifier that is only used to retrieve the next items in a list and not for other programmatic purposes.
601 */
602 nextToken?: NextToken;
603 /**
604 * The maximum number of repository results returned by DescribeRepositories in paginated output. When this parameter is used, DescribeRepositories only returns maxResults results in a single page along with a nextToken response element. The remaining results of the initial request can be seen by sending another DescribeRepositories request with the returned nextToken value. This value can be between 1 and 1000. If this parameter is not used, then DescribeRepositories returns up to 100 results and a nextToken value, if applicable. This option cannot be used when you specify repositories with repositoryNames.
605 */
606 maxResults?: MaxResults;
607 }
608 export interface DescribeRepositoriesResponse {
609 /**
610 * A list of repository objects corresponding to valid repositories.
611 */
612 repositories?: RepositoryList;
613 /**
614 * The nextToken value to include in a future DescribeRepositories request. When the results of a DescribeRepositories request exceed maxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.
615 */
616 nextToken?: NextToken;
617 }
618 export type EvaluationTimestamp = Date;
619 export type ExpirationTimestamp = Date;
620 export type FindingDescription = string;
621 export type FindingName = string;
622 export type FindingSeverity = "INFORMATIONAL"|"LOW"|"MEDIUM"|"HIGH"|"CRITICAL"|"UNDEFINED"|string;
623 export type FindingSeverityCounts = {[key: string]: SeverityCount};
624 export type ForceFlag = boolean;
625 export type GetAuthorizationTokenRegistryIdList = RegistryId[];
626 export interface GetAuthorizationTokenRequest {
627 /**
628 * A list of AWS account IDs that are associated with the registries for which to get AuthorizationData objects. If you do not specify a registry, the default registry is assumed.
629 */
630 registryIds?: GetAuthorizationTokenRegistryIdList;
631 }
632 export interface GetAuthorizationTokenResponse {
633 /**
634 * A list of authorization token data objects that correspond to the registryIds values in the request.
635 */
636 authorizationData?: AuthorizationDataList;
637 }
638 export interface GetDownloadUrlForLayerRequest {
639 /**
640 * The AWS account ID associated with the registry that contains the image layer to download. If you do not specify a registry, the default registry is assumed.
641 */
642 registryId?: RegistryId;
643 /**
644 * The name of the repository that is associated with the image layer to download.
645 */
646 repositoryName: RepositoryName;
647 /**
648 * The digest of the image layer to download.
649 */
650 layerDigest: LayerDigest;
651 }
652 export interface GetDownloadUrlForLayerResponse {
653 /**
654 * The pre-signed Amazon S3 download URL for the requested layer.
655 */
656 downloadUrl?: Url;
657 /**
658 * The digest of the image layer to download.
659 */
660 layerDigest?: LayerDigest;
661 }
662 export interface GetLifecyclePolicyPreviewRequest {
663 /**
664 * The AWS account ID associated with the registry that contains the repository. If you do not specify a registry, the default registry is assumed.
665 */
666 registryId?: RegistryId;
667 /**
668 * The name of the repository.
669 */
670 repositoryName: RepositoryName;
671 /**
672 * The list of imageIDs to be included.
673 */
674 imageIds?: ImageIdentifierList;
675 /**
676 * The nextToken value returned from a previous paginated&#x2028; GetLifecyclePolicyPreviewRequest request where maxResults was used and the&#x2028; results exceeded the value of that parameter. Pagination continues from the end of the&#x2028; previous results that returned the nextToken value. This value is&#x2028; null when there are no more results to return. This option cannot be used when you specify images with imageIds.
677 */
678 nextToken?: NextToken;
679 /**
680 * The maximum number of repository results returned by GetLifecyclePolicyPreviewRequest in&#x2028; paginated output. When this parameter is used, GetLifecyclePolicyPreviewRequest only returns&#x2028; maxResults results in a single page along with a nextToken&#x2028; response element. The remaining results of the initial request can be seen by sending&#x2028; another GetLifecyclePolicyPreviewRequest request with the returned nextToken&#x2028; value. This value can be between 1 and 1000. If this&#x2028; parameter is not used, then GetLifecyclePolicyPreviewRequest returns up to&#x2028; 100 results and a nextToken value, if&#x2028; applicable. This option cannot be used when you specify images with imageIds.
681 */
682 maxResults?: LifecyclePreviewMaxResults;
683 /**
684 * An optional parameter that filters results based on image tag status and all tags, if tagged.
685 */
686 filter?: LifecyclePolicyPreviewFilter;
687 }
688 export interface GetLifecyclePolicyPreviewResponse {
689 /**
690 * The registry ID associated with the request.
691 */
692 registryId?: RegistryId;
693 /**
694 * The repository name associated with the request.
695 */
696 repositoryName?: RepositoryName;
697 /**
698 * The JSON lifecycle policy text.
699 */
700 lifecyclePolicyText?: LifecyclePolicyText;
701 /**
702 * The status of the lifecycle policy preview request.
703 */
704 status?: LifecyclePolicyPreviewStatus;
705 /**
706 * The nextToken value to include in a future GetLifecyclePolicyPreview request. When the results of a GetLifecyclePolicyPreview request exceed maxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.
707 */
708 nextToken?: NextToken;
709 /**
710 * The results of the lifecycle policy preview request.
711 */
712 previewResults?: LifecyclePolicyPreviewResultList;
713 /**
714 * The list of images that is returned as a result of the action.
715 */
716 summary?: LifecyclePolicyPreviewSummary;
717 }
718 export interface GetLifecyclePolicyRequest {
719 /**
720 * The AWS account ID associated with the registry that contains the repository. If you do not specify a registry, the default registry is assumed.
721 */
722 registryId?: RegistryId;
723 /**
724 * The name of the repository.
725 */
726 repositoryName: RepositoryName;
727 }
728 export interface GetLifecyclePolicyResponse {
729 /**
730 * The registry ID associated with the request.
731 */
732 registryId?: RegistryId;
733 /**
734 * The repository name associated with the request.
735 */
736 repositoryName?: RepositoryName;
737 /**
738 * The JSON lifecycle policy text.
739 */
740 lifecyclePolicyText?: LifecyclePolicyText;
741 /**
742 * The time stamp of the last time that the lifecycle policy was run.
743 */
744 lastEvaluatedAt?: EvaluationTimestamp;
745 }
746 export interface GetRepositoryPolicyRequest {
747 /**
748 * The AWS account ID associated with the registry that contains the repository. If you do not specify a registry, the default registry is assumed.
749 */
750 registryId?: RegistryId;
751 /**
752 * The name of the repository with the policy to retrieve.
753 */
754 repositoryName: RepositoryName;
755 }
756 export interface GetRepositoryPolicyResponse {
757 /**
758 * The registry ID associated with the request.
759 */
760 registryId?: RegistryId;
761 /**
762 * The repository name associated with the request.
763 */
764 repositoryName?: RepositoryName;
765 /**
766 * The JSON repository policy text associated with the repository.
767 */
768 policyText?: RepositoryPolicyText;
769 }
770 export interface Image {
771 /**
772 * The AWS account ID associated with the registry containing the image.
773 */
774 registryId?: RegistryId;
775 /**
776 * The name of the repository associated with the image.
777 */
778 repositoryName?: RepositoryName;
779 /**
780 * An object containing the image tag and image digest associated with an image.
781 */
782 imageId?: ImageIdentifier;
783 /**
784 * The image manifest associated with the image.
785 */
786 imageManifest?: ImageManifest;
787 }
788 export type ImageActionType = "EXPIRE"|string;
789 export type ImageCount = number;
790 export interface ImageDetail {
791 /**
792 * The AWS account ID associated with the registry to which this image belongs.
793 */
794 registryId?: RegistryId;
795 /**
796 * The name of the repository to which this image belongs.
797 */
798 repositoryName?: RepositoryName;
799 /**
800 * The sha256 digest of the image manifest.
801 */
802 imageDigest?: ImageDigest;
803 /**
804 * The list of tags associated with this image.
805 */
806 imageTags?: ImageTagList;
807 /**
808 * The size, in bytes, of the image in the repository. Beginning with Docker version 1.9, the Docker client compresses image layers before pushing them to a V2 Docker registry. The output of the docker images command shows the uncompressed image size, so it may return a larger image size than the image sizes returned by DescribeImages.
809 */
810 imageSizeInBytes?: ImageSizeInBytes;
811 /**
812 * The date and time, expressed in standard JavaScript date format, at which the current image was pushed to the repository.
813 */
814 imagePushedAt?: PushTimestamp;
815 /**
816 * The current state of the scan.
817 */
818 imageScanStatus?: ImageScanStatus;
819 /**
820 * A summary of the last completed image scan.
821 */
822 imageScanFindingsSummary?: ImageScanFindingsSummary;
823 }
824 export type ImageDetailList = ImageDetail[];
825 export type ImageDigest = string;
826 export interface ImageFailure {
827 /**
828 * The image ID associated with the failure.
829 */
830 imageId?: ImageIdentifier;
831 /**
832 * The code associated with the failure.
833 */
834 failureCode?: ImageFailureCode;
835 /**
836 * The reason for the failure.
837 */
838 failureReason?: ImageFailureReason;
839 }
840 export type ImageFailureCode = "InvalidImageDigest"|"InvalidImageTag"|"ImageTagDoesNotMatchDigest"|"ImageNotFound"|"MissingDigestAndTag"|string;
841 export type ImageFailureList = ImageFailure[];
842 export type ImageFailureReason = string;
843 export interface ImageIdentifier {
844 /**
845 * The sha256 digest of the image manifest.
846 */
847 imageDigest?: ImageDigest;
848 /**
849 * The tag used for the image.
850 */
851 imageTag?: ImageTag;
852 }
853 export type ImageIdentifierList = ImageIdentifier[];
854 export type ImageList = Image[];
855 export type ImageManifest = string;
856 export interface ImageScanFinding {
857 /**
858 * The name associated with the finding, usually a CVE number.
859 */
860 name?: FindingName;
861 /**
862 * The description of the finding.
863 */
864 description?: FindingDescription;
865 /**
866 * A link containing additional details about the security vulnerability.
867 */
868 uri?: Url;
869 /**
870 * The finding severity.
871 */
872 severity?: FindingSeverity;
873 /**
874 * A collection of attributes of the host from which the finding is generated.
875 */
876 attributes?: AttributeList;
877 }
878 export type ImageScanFindingList = ImageScanFinding[];
879 export interface ImageScanFindings {
880 /**
881 * The time of the last completed image scan.
882 */
883 imageScanCompletedAt?: ScanTimestamp;
884 /**
885 * The time when the vulnerability data was last scanned.
886 */
887 vulnerabilitySourceUpdatedAt?: VulnerabilitySourceUpdateTimestamp;
888 /**
889 * The findings from the image scan.
890 */
891 findings?: ImageScanFindingList;
892 /**
893 * The image vulnerability counts, sorted by severity.
894 */
895 findingSeverityCounts?: FindingSeverityCounts;
896 }
897 export interface ImageScanFindingsSummary {
898 /**
899 * The time of the last completed image scan.
900 */
901 imageScanCompletedAt?: ScanTimestamp;
902 /**
903 * The time when the vulnerability data was last scanned.
904 */
905 vulnerabilitySourceUpdatedAt?: VulnerabilitySourceUpdateTimestamp;
906 /**
907 * The image vulnerability counts, sorted by severity.
908 */
909 findingSeverityCounts?: FindingSeverityCounts;
910 }
911 export interface ImageScanStatus {
912 /**
913 * The current state of an image scan.
914 */
915 status?: ScanStatus;
916 /**
917 * The description of the image scan status.
918 */
919 description?: ScanStatusDescription;
920 }
921 export interface ImageScanningConfiguration {
922 /**
923 * The setting that determines whether images are scanned after being pushed to a repository. If set to true, images will be scanned after being pushed. If this parameter is not specified, it will default to false and images will not be scanned unless a scan is manually started with the StartImageScan API.
924 */
925 scanOnPush?: ScanOnPushFlag;
926 }
927 export type ImageSizeInBytes = number;
928 export type ImageTag = string;
929 export type ImageTagList = ImageTag[];
930 export type ImageTagMutability = "MUTABLE"|"IMMUTABLE"|string;
931 export interface InitiateLayerUploadRequest {
932 /**
933 * The AWS account ID associated with the registry to which you intend to upload layers. If you do not specify a registry, the default registry is assumed.
934 */
935 registryId?: RegistryId;
936 /**
937 * The name of the repository to which you intend to upload layers.
938 */
939 repositoryName: RepositoryName;
940 }
941 export interface InitiateLayerUploadResponse {
942 /**
943 * The upload ID for the layer upload. This parameter is passed to further UploadLayerPart and CompleteLayerUpload operations.
944 */
945 uploadId?: UploadId;
946 /**
947 * The size, in bytes, that Amazon ECR expects future layer part uploads to be.
948 */
949 partSize?: PartSize;
950 }
951 export interface Layer {
952 /**
953 * The sha256 digest of the image layer.
954 */
955 layerDigest?: LayerDigest;
956 /**
957 * The availability status of the image layer.
958 */
959 layerAvailability?: LayerAvailability;
960 /**
961 * The size, in bytes, of the image layer.
962 */
963 layerSize?: LayerSizeInBytes;
964 /**
965 * The media type of the layer, such as application/vnd.docker.image.rootfs.diff.tar.gzip or application/vnd.oci.image.layer.v1.tar+gzip.
966 */
967 mediaType?: MediaType;
968 }
969 export type LayerAvailability = "AVAILABLE"|"UNAVAILABLE"|string;
970 export type LayerDigest = string;
971 export type LayerDigestList = LayerDigest[];
972 export interface LayerFailure {
973 /**
974 * The layer digest associated with the failure.
975 */
976 layerDigest?: BatchedOperationLayerDigest;
977 /**
978 * The failure code associated with the failure.
979 */
980 failureCode?: LayerFailureCode;
981 /**
982 * The reason for the failure.
983 */
984 failureReason?: LayerFailureReason;
985 }
986 export type LayerFailureCode = "InvalidLayerDigest"|"MissingLayerDigest"|string;
987 export type LayerFailureList = LayerFailure[];
988 export type LayerFailureReason = string;
989 export type LayerList = Layer[];
990 export type LayerPartBlob = Buffer|Uint8Array|Blob|string;
991 export type LayerSizeInBytes = number;
992 export interface LifecyclePolicyPreviewFilter {
993 /**
994 * The tag status of the image.
995 */
996 tagStatus?: TagStatus;
997 }
998 export interface LifecyclePolicyPreviewResult {
999 /**
1000 * The list of tags associated with this image.
1001 */
1002 imageTags?: ImageTagList;
1003 /**
1004 * The sha256 digest of the image manifest.
1005 */
1006 imageDigest?: ImageDigest;
1007 /**
1008 * The date and time, expressed in standard JavaScript date format, at which the current image was pushed to the repository.
1009 */
1010 imagePushedAt?: PushTimestamp;
1011 /**
1012 * The type of action to be taken.
1013 */
1014 action?: LifecyclePolicyRuleAction;
1015 /**
1016 * The priority of the applied rule.
1017 */
1018 appliedRulePriority?: LifecyclePolicyRulePriority;
1019 }
1020 export type LifecyclePolicyPreviewResultList = LifecyclePolicyPreviewResult[];
1021 export type LifecyclePolicyPreviewStatus = "IN_PROGRESS"|"COMPLETE"|"EXPIRED"|"FAILED"|string;
1022 export interface LifecyclePolicyPreviewSummary {
1023 /**
1024 * The number of expiring images.
1025 */
1026 expiringImageTotalCount?: ImageCount;
1027 }
1028 export interface LifecyclePolicyRuleAction {
1029 /**
1030 * The type of action to be taken.
1031 */
1032 type?: ImageActionType;
1033 }
1034 export type LifecyclePolicyRulePriority = number;
1035 export type LifecyclePolicyText = string;
1036 export type LifecyclePreviewMaxResults = number;
1037 export interface ListImagesFilter {
1038 /**
1039 * The tag status with which to filter your ListImages results. You can filter results based on whether they are TAGGED or UNTAGGED.
1040 */
1041 tagStatus?: TagStatus;
1042 }
1043 export interface ListImagesRequest {
1044 /**
1045 * The AWS account ID associated with the registry that contains the repository in which to list images. If you do not specify a registry, the default registry is assumed.
1046 */
1047 registryId?: RegistryId;
1048 /**
1049 * The repository with image IDs to be listed.
1050 */
1051 repositoryName: RepositoryName;
1052 /**
1053 * The nextToken value returned from a previous paginated ListImages request where maxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value. This value is null when there are no more results to return. This token should be treated as an opaque identifier that is only used to retrieve the next items in a list and not for other programmatic purposes.
1054 */
1055 nextToken?: NextToken;
1056 /**
1057 * The maximum number of image results returned by ListImages in paginated output. When this parameter is used, ListImages only returns maxResults results in a single page along with a nextToken response element. The remaining results of the initial request can be seen by sending another ListImages request with the returned nextToken value. This value can be between 1 and 1000. If this parameter is not used, then ListImages returns up to 100 results and a nextToken value, if applicable.
1058 */
1059 maxResults?: MaxResults;
1060 /**
1061 * The filter key and value with which to filter your ListImages results.
1062 */
1063 filter?: ListImagesFilter;
1064 }
1065 export interface ListImagesResponse {
1066 /**
1067 * The list of image IDs for the requested repository.
1068 */
1069 imageIds?: ImageIdentifierList;
1070 /**
1071 * The nextToken value to include in a future ListImages request. When the results of a ListImages request exceed maxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.
1072 */
1073 nextToken?: NextToken;
1074 }
1075 export interface ListTagsForResourceRequest {
1076 /**
1077 * The Amazon Resource Name (ARN) that identifies the resource for which to list the tags. Currently, the only supported resource is an Amazon ECR repository.
1078 */
1079 resourceArn: Arn;
1080 }
1081 export interface ListTagsForResourceResponse {
1082 /**
1083 * The tags for the resource.
1084 */
1085 tags?: TagList;
1086 }
1087 export type MaxResults = number;
1088 export type MediaType = string;
1089 export type MediaTypeList = MediaType[];
1090 export type NextToken = string;
1091 export type PartSize = number;
1092 export type ProxyEndpoint = string;
1093 export type PushTimestamp = Date;
1094 export interface PutImageRequest {
1095 /**
1096 * The AWS account ID associated with the registry that contains the repository in which to put the image. If you do not specify a registry, the default registry is assumed.
1097 */
1098 registryId?: RegistryId;
1099 /**
1100 * The name of the repository in which to put the image.
1101 */
1102 repositoryName: RepositoryName;
1103 /**
1104 * The image manifest corresponding to the image to be uploaded.
1105 */
1106 imageManifest: ImageManifest;
1107 /**
1108 * The tag to associate with the image. This parameter is required for images that use the Docker Image Manifest V2 Schema 2 or OCI formats.
1109 */
1110 imageTag?: ImageTag;
1111 }
1112 export interface PutImageResponse {
1113 /**
1114 * Details of the image uploaded.
1115 */
1116 image?: Image;
1117 }
1118 export interface PutImageScanningConfigurationRequest {
1119 /**
1120 * The AWS account ID associated with the registry that contains the repository in which to update the image scanning configuration setting. If you do not specify a registry, the default registry is assumed.
1121 */
1122 registryId?: RegistryId;
1123 /**
1124 * The name of the repository in which to update the image scanning configuration setting.
1125 */
1126 repositoryName: RepositoryName;
1127 /**
1128 * The image scanning configuration for the repository. This setting determines whether images are scanned for known vulnerabilities after being pushed to the repository.
1129 */
1130 imageScanningConfiguration: ImageScanningConfiguration;
1131 }
1132 export interface PutImageScanningConfigurationResponse {
1133 /**
1134 * The registry ID associated with the request.
1135 */
1136 registryId?: RegistryId;
1137 /**
1138 * The repository name associated with the request.
1139 */
1140 repositoryName?: RepositoryName;
1141 /**
1142 * The image scanning configuration setting for the repository.
1143 */
1144 imageScanningConfiguration?: ImageScanningConfiguration;
1145 }
1146 export interface PutImageTagMutabilityRequest {
1147 /**
1148 * The AWS account ID associated with the registry that contains the repository in which to update the image tag mutability settings. If you do not specify a registry, the default registry is assumed.
1149 */
1150 registryId?: RegistryId;
1151 /**
1152 * The name of the repository in which to update the image tag mutability settings.
1153 */
1154 repositoryName: RepositoryName;
1155 /**
1156 * The tag mutability setting for the repository. If MUTABLE is specified, image tags can be overwritten. If IMMUTABLE is specified, all image tags within the repository will be immutable which will prevent them from being overwritten.
1157 */
1158 imageTagMutability: ImageTagMutability;
1159 }
1160 export interface PutImageTagMutabilityResponse {
1161 /**
1162 * The registry ID associated with the request.
1163 */
1164 registryId?: RegistryId;
1165 /**
1166 * The repository name associated with the request.
1167 */
1168 repositoryName?: RepositoryName;
1169 /**
1170 * The image tag mutability setting for the repository.
1171 */
1172 imageTagMutability?: ImageTagMutability;
1173 }
1174 export interface PutLifecyclePolicyRequest {
1175 /**
1176 * The AWS account ID associated with the registry that contains the repository. If you do&#x2028; not specify a registry, the default registry is assumed.
1177 */
1178 registryId?: RegistryId;
1179 /**
1180 * The name of the repository to receive the policy.
1181 */
1182 repositoryName: RepositoryName;
1183 /**
1184 * The JSON repository policy text to apply to the repository.
1185 */
1186 lifecyclePolicyText: LifecyclePolicyText;
1187 }
1188 export interface PutLifecyclePolicyResponse {
1189 /**
1190 * The registry ID associated with the request.
1191 */
1192 registryId?: RegistryId;
1193 /**
1194 * The repository name associated with the request.
1195 */
1196 repositoryName?: RepositoryName;
1197 /**
1198 * The JSON repository policy text.
1199 */
1200 lifecyclePolicyText?: LifecyclePolicyText;
1201 }
1202 export type RegistryId = string;
1203 export interface Repository {
1204 /**
1205 * The Amazon Resource Name (ARN) that identifies the repository. The ARN contains the arn:aws:ecr namespace, followed by the region of the repository, AWS account ID of the repository owner, repository namespace, and repository name. For example, arn:aws:ecr:region:012345678910:repository/test.
1206 */
1207 repositoryArn?: Arn;
1208 /**
1209 * The AWS account ID associated with the registry that contains the repository.
1210 */
1211 registryId?: RegistryId;
1212 /**
1213 * The name of the repository.
1214 */
1215 repositoryName?: RepositoryName;
1216 /**
1217 * The URI for the repository. You can use this URI for Docker push or pull operations.
1218 */
1219 repositoryUri?: Url;
1220 /**
1221 * The date and time, in JavaScript date format, when the repository was created.
1222 */
1223 createdAt?: CreationTimestamp;
1224 /**
1225 * The tag mutability setting for the repository.
1226 */
1227 imageTagMutability?: ImageTagMutability;
1228 imageScanningConfiguration?: ImageScanningConfiguration;
1229 }
1230 export type RepositoryList = Repository[];
1231 export type RepositoryName = string;
1232 export type RepositoryNameList = RepositoryName[];
1233 export type RepositoryPolicyText = string;
1234 export type ScanOnPushFlag = boolean;
1235 export type ScanStatus = "IN_PROGRESS"|"COMPLETE"|"FAILED"|string;
1236 export type ScanStatusDescription = string;
1237 export type ScanTimestamp = Date;
1238 export interface SetRepositoryPolicyRequest {
1239 /**
1240 * The AWS account ID associated with the registry that contains the repository. If you do not specify a registry, the default registry is assumed.
1241 */
1242 registryId?: RegistryId;
1243 /**
1244 * The name of the repository to receive the policy.
1245 */
1246 repositoryName: RepositoryName;
1247 /**
1248 * The JSON repository policy text to apply to the repository. For more information, see Amazon ECR Repository Policy Examples in the Amazon Elastic Container Registry User Guide.
1249 */
1250 policyText: RepositoryPolicyText;
1251 /**
1252 * If the policy you are attempting to set on a repository policy would prevent you from setting another policy in the future, you must force the SetRepositoryPolicy operation. This is intended to prevent accidental repository lock outs.
1253 */
1254 force?: ForceFlag;
1255 }
1256 export interface SetRepositoryPolicyResponse {
1257 /**
1258 * The registry ID associated with the request.
1259 */
1260 registryId?: RegistryId;
1261 /**
1262 * The repository name associated with the request.
1263 */
1264 repositoryName?: RepositoryName;
1265 /**
1266 * The JSON repository policy text applied to the repository.
1267 */
1268 policyText?: RepositoryPolicyText;
1269 }
1270 export type SeverityCount = number;
1271 export interface StartImageScanRequest {
1272 /**
1273 * The AWS account ID associated with the registry that contains the repository in which to start an image scan request. If you do not specify a registry, the default registry is assumed.
1274 */
1275 registryId?: RegistryId;
1276 /**
1277 * The name of the repository that contains the images to scan.
1278 */
1279 repositoryName: RepositoryName;
1280 imageId: ImageIdentifier;
1281 }
1282 export interface StartImageScanResponse {
1283 /**
1284 * The registry ID associated with the request.
1285 */
1286 registryId?: RegistryId;
1287 /**
1288 * The repository name associated with the request.
1289 */
1290 repositoryName?: RepositoryName;
1291 imageId?: ImageIdentifier;
1292 /**
1293 * The current state of the scan.
1294 */
1295 imageScanStatus?: ImageScanStatus;
1296 }
1297 export interface StartLifecyclePolicyPreviewRequest {
1298 /**
1299 * The AWS account ID associated with the registry that contains the repository. If you do not specify a registry, the default registry is assumed.
1300 */
1301 registryId?: RegistryId;
1302 /**
1303 * The name of the repository to be evaluated.
1304 */
1305 repositoryName: RepositoryName;
1306 /**
1307 * The policy to be evaluated against. If you do not specify a policy, the current policy for the repository is used.
1308 */
1309 lifecyclePolicyText?: LifecyclePolicyText;
1310 }
1311 export interface StartLifecyclePolicyPreviewResponse {
1312 /**
1313 * The registry ID associated with the request.
1314 */
1315 registryId?: RegistryId;
1316 /**
1317 * The repository name associated with the request.
1318 */
1319 repositoryName?: RepositoryName;
1320 /**
1321 * The JSON repository policy text.
1322 */
1323 lifecyclePolicyText?: LifecyclePolicyText;
1324 /**
1325 * The status of the lifecycle policy preview request.
1326 */
1327 status?: LifecyclePolicyPreviewStatus;
1328 }
1329 export interface Tag {
1330 /**
1331 * One part of a key-value pair that make up a tag. A key is a general label that acts like a category for more specific tag values.
1332 */
1333 Key?: TagKey;
1334 /**
1335 * The optional part of a key-value pair that make up a tag. A value acts as a descriptor within a tag category (key).
1336 */
1337 Value?: TagValue;
1338 }
1339 export type TagKey = string;
1340 export type TagKeyList = TagKey[];
1341 export type TagList = Tag[];
1342 export interface TagResourceRequest {
1343 /**
1344 * The Amazon Resource Name (ARN) of the the resource to which to add tags. Currently, the only supported resource is an Amazon ECR repository.
1345 */
1346 resourceArn: Arn;
1347 /**
1348 * The tags to add to the resource. A tag is an array of key-value pairs. Tag keys can have a maximum character length of 128 characters, and tag values can have a maximum length of 256 characters.
1349 */
1350 tags: TagList;
1351 }
1352 export interface TagResourceResponse {
1353 }
1354 export type TagStatus = "TAGGED"|"UNTAGGED"|"ANY"|string;
1355 export type TagValue = string;
1356 export interface UntagResourceRequest {
1357 /**
1358 * The Amazon Resource Name (ARN) of the resource from which to remove tags. Currently, the only supported resource is an Amazon ECR repository.
1359 */
1360 resourceArn: Arn;
1361 /**
1362 * The keys of the tags to be removed.
1363 */
1364 tagKeys: TagKeyList;
1365 }
1366 export interface UntagResourceResponse {
1367 }
1368 export type UploadId = string;
1369 export interface UploadLayerPartRequest {
1370 /**
1371 * The AWS account ID associated with the registry to which you are uploading layer parts. If you do not specify a registry, the default registry is assumed.
1372 */
1373 registryId?: RegistryId;
1374 /**
1375 * The name of the repository to which you are uploading layer parts.
1376 */
1377 repositoryName: RepositoryName;
1378 /**
1379 * The upload ID from a previous InitiateLayerUpload operation to associate with the layer part upload.
1380 */
1381 uploadId: UploadId;
1382 /**
1383 * The integer value of the first byte of the layer part.
1384 */
1385 partFirstByte: PartSize;
1386 /**
1387 * The integer value of the last byte of the layer part.
1388 */
1389 partLastByte: PartSize;
1390 /**
1391 * The base64-encoded layer part payload.
1392 */
1393 layerPartBlob: LayerPartBlob;
1394 }
1395 export interface UploadLayerPartResponse {
1396 /**
1397 * The registry ID associated with the request.
1398 */
1399 registryId?: RegistryId;
1400 /**
1401 * The repository name associated with the request.
1402 */
1403 repositoryName?: RepositoryName;
1404 /**
1405 * The upload ID associated with the request.
1406 */
1407 uploadId?: UploadId;
1408 /**
1409 * The integer value of the last byte received in the request.
1410 */
1411 lastByteReceived?: PartSize;
1412 }
1413 export type Url = string;
1414 export type VulnerabilitySourceUpdateTimestamp = Date;
1415 /**
1416 * A string in YYYY-MM-DD format that represents the latest possible API version that can be used in this service. Specify 'latest' to use the latest possible version.
1417 */
1418 export type apiVersion = "2015-09-21"|"latest"|string;
1419 export interface ClientApiVersions {
1420 /**
1421 * A string in YYYY-MM-DD format that represents the latest possible API version that can be used in this service. Specify 'latest' to use the latest possible version.
1422 */
1423 apiVersion?: apiVersion;
1424 }
1425 export type ClientConfiguration = ServiceConfigurationOptions & ClientApiVersions;
1426 /**
1427 * Contains interfaces for use with the ECR client.
1428 */
1429 export import Types = ECR;
1430}
1431export = ECR;