@aws-sdk/client-cloudfront 3.697.0 → 3.698.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (26) hide show
  1. package/dist-cjs/index.js +24 -10
  2. package/dist-es/models/models_0.js +4 -0
  3. package/dist-es/protocols/Aws_restXml.js +18 -10
  4. package/dist-types/commands/CopyDistributionCommand.d.ts +1 -0
  5. package/dist-types/commands/CreateDistributionCommand.d.ts +2 -0
  6. package/dist-types/commands/CreateDistributionWithTagsCommand.d.ts +2 -0
  7. package/dist-types/commands/CreateKeyValueStoreCommand.d.ts +1 -1
  8. package/dist-types/commands/CreateVpcOriginCommand.d.ts +51 -0
  9. package/dist-types/commands/DeleteVpcOriginCommand.d.ts +38 -0
  10. package/dist-types/commands/GetDistributionCommand.d.ts +1 -0
  11. package/dist-types/commands/GetDistributionConfigCommand.d.ts +1 -0
  12. package/dist-types/commands/GetVpcOriginCommand.d.ts +37 -0
  13. package/dist-types/commands/ListDistributionsByAnycastIpListIdCommand.d.ts +1 -0
  14. package/dist-types/commands/ListDistributionsByRealtimeLogConfigCommand.d.ts +1 -0
  15. package/dist-types/commands/ListDistributionsByVpcOriginIdCommand.d.ts +22 -0
  16. package/dist-types/commands/ListDistributionsByWebACLIdCommand.d.ts +1 -0
  17. package/dist-types/commands/ListDistributionsCommand.d.ts +1 -0
  18. package/dist-types/commands/ListVpcOriginsCommand.d.ts +30 -0
  19. package/dist-types/commands/UpdateDistributionCommand.d.ts +2 -0
  20. package/dist-types/commands/UpdateDistributionWithStagingConfigCommand.d.ts +1 -0
  21. package/dist-types/commands/UpdateVpcOriginCommand.d.ts +52 -0
  22. package/dist-types/models/models_0.d.ts +24 -69
  23. package/dist-types/models/models_1.d.ts +65 -1
  24. package/dist-types/ts3.4/models/models_0.d.ts +7 -4
  25. package/dist-types/ts3.4/models/models_1.d.ts +5 -1
  26. package/package.json +1 -1
package/dist-cjs/index.js CHANGED
@@ -246,6 +246,7 @@ __export(src_exports, {
246
246
  OriginAccessControlSigningProtocols: () => OriginAccessControlSigningProtocols,
247
247
  OriginCustomHeaderFilterSensitiveLog: () => OriginCustomHeaderFilterSensitiveLog,
248
248
  OriginFilterSensitiveLog: () => OriginFilterSensitiveLog,
249
+ OriginGroupSelectionCriteria: () => OriginGroupSelectionCriteria,
249
250
  OriginProtocolPolicy: () => OriginProtocolPolicy,
250
251
  OriginRequestPolicyAlreadyExists: () => OriginRequestPolicyAlreadyExists,
251
252
  OriginRequestPolicyCookieBehavior: () => OriginRequestPolicyCookieBehavior,
@@ -829,6 +830,10 @@ var HttpVersion = {
829
830
  http2and3: "http2and3",
830
831
  http3: "http3"
831
832
  };
833
+ var OriginGroupSelectionCriteria = {
834
+ Default: "default",
835
+ MediaQualityBased: "media-quality-based"
836
+ };
832
837
  var OriginProtocolPolicy = {
833
838
  http_only: "http-only",
834
839
  https_only: "https-only",
@@ -9783,12 +9788,15 @@ var se_OriginGroup = /* @__PURE__ */ __name((input, context) => {
9783
9788
  if (input[_Mem] != null) {
9784
9789
  bn.c(se_OriginGroupMembers(input[_Mem], context).n(_Mem));
9785
9790
  }
9791
+ if (input[_SC] != null) {
9792
+ bn.c(import_xml_builder.XmlNode.of(_OGSC, input[_SC]).n(_SC));
9793
+ }
9786
9794
  return bn;
9787
9795
  }, "se_OriginGroup");
9788
9796
  var se_OriginGroupFailoverCriteria = /* @__PURE__ */ __name((input, context) => {
9789
9797
  const bn = new import_xml_builder.XmlNode(_OGFC);
9790
- if (input[_SC] != null) {
9791
- bn.c(se_StatusCodes(input[_SC], context).n(_SC));
9798
+ if (input[_SCt] != null) {
9799
+ bn.c(se_StatusCodes(input[_SCt], context).n(_SCt));
9792
9800
  }
9793
9801
  return bn;
9794
9802
  }, "se_OriginGroupFailoverCriteria");
@@ -10316,11 +10324,11 @@ var se_StagingDistributionDnsNames = /* @__PURE__ */ __name((input, context) =>
10316
10324
  var se_StatusCodeList = /* @__PURE__ */ __name((input, context) => {
10317
10325
  return input.filter((e) => e != null).map((entry) => {
10318
10326
  const n = import_xml_builder.XmlNode.of(_i, String(entry));
10319
- return n.n(_SCt);
10327
+ return n.n(_SCta);
10320
10328
  });
10321
10329
  }, "se_StatusCodeList");
10322
10330
  var se_StatusCodes = /* @__PURE__ */ __name((input, context) => {
10323
- const bn = new import_xml_builder.XmlNode(_SC);
10331
+ const bn = new import_xml_builder.XmlNode(_SCt);
10324
10332
  if (input[_Q] != null) {
10325
10333
  bn.c(import_xml_builder.XmlNode.of(_i, String(input[_Q])).n(_Q));
10326
10334
  }
@@ -12280,12 +12288,15 @@ var de_OriginGroup = /* @__PURE__ */ __name((output, context) => {
12280
12288
  if (output[_Mem] != null) {
12281
12289
  contents[_Mem] = de_OriginGroupMembers(output[_Mem], context);
12282
12290
  }
12291
+ if (output[_SC] != null) {
12292
+ contents[_SC] = (0, import_smithy_client.expectString)(output[_SC]);
12293
+ }
12283
12294
  return contents;
12284
12295
  }, "de_OriginGroup");
12285
12296
  var de_OriginGroupFailoverCriteria = /* @__PURE__ */ __name((output, context) => {
12286
12297
  const contents = {};
12287
- if (output[_SC] != null) {
12288
- contents[_SC] = de_StatusCodes(output[_SC], context);
12298
+ if (output[_SCt] != null) {
12299
+ contents[_SCt] = de_StatusCodes(output[_SCt], context);
12289
12300
  }
12290
12301
  return contents;
12291
12302
  }, "de_OriginGroupFailoverCriteria");
@@ -13085,8 +13096,8 @@ var de_StatusCodes = /* @__PURE__ */ __name((output, context) => {
13085
13096
  }
13086
13097
  if (output.Items === "") {
13087
13098
  contents[_I] = [];
13088
- } else if (output[_I] != null && output[_I][_SCt] != null) {
13089
- contents[_I] = de_StatusCodeList((0, import_smithy_client.getArrayIfSingleItem)(output[_I][_SCt]), context);
13099
+ } else if (output[_I] != null && output[_I][_SCta] != null) {
13100
+ contents[_I] = de_StatusCodeList((0, import_smithy_client.getArrayIfSingleItem)(output[_I][_SCta]), context);
13090
13101
  }
13091
13102
  return contents;
13092
13103
  }, "de_StatusCodes");
@@ -13672,6 +13683,7 @@ var _OG = "OriginGroups";
13672
13683
  var _OGFC = "OriginGroupFailoverCriteria";
13673
13684
  var _OGM = "OriginGroupMember";
13674
13685
  var _OGMr = "OriginGroupMembers";
13686
+ var _OGSC = "OriginGroupSelectionCriteria";
13675
13687
  var _OGr = "OriginGroup";
13676
13688
  var _OI = "OriginId";
13677
13689
  var _OKT = "OriginKeepaliveTimeout";
@@ -13762,9 +13774,10 @@ var _S = "Staging";
13762
13774
  var _SARN = "SourceARN";
13763
13775
  var _SARNt = "StreamARN";
13764
13776
  var _SB = "SigningBehavior";
13765
- var _SC = "StatusCodes";
13777
+ var _SC = "SelectionCriteria";
13766
13778
  var _SCUI = "S3CanonicalUserId";
13767
- var _SCt = "StatusCode";
13779
+ var _SCt = "StatusCodes";
13780
+ var _SCta = "StatusCode";
13768
13781
  var _SDC = "StreamingDistributionConfig";
13769
13782
  var _SDCWT = "StreamingDistributionConfigWithTags";
13770
13783
  var _SDDN = "StagingDistributionDnsNames";
@@ -15954,6 +15967,7 @@ var waitUntilStreamingDistributionDeployed = /* @__PURE__ */ __name(async (param
15954
15967
  CertificateSource,
15955
15968
  CNAMEAlreadyExists,
15956
15969
  HttpVersion,
15970
+ OriginGroupSelectionCriteria,
15957
15971
  OriginProtocolPolicy,
15958
15972
  SslProtocol,
15959
15973
  PriceClass,
@@ -227,6 +227,10 @@ export const HttpVersion = {
227
227
  http2and3: "http2and3",
228
228
  http3: "http3",
229
229
  };
230
+ export const OriginGroupSelectionCriteria = {
231
+ Default: "default",
232
+ MediaQualityBased: "media-quality-based",
233
+ };
230
234
  export const OriginProtocolPolicy = {
231
235
  http_only: "http-only",
232
236
  https_only: "https-only",
@@ -6287,12 +6287,15 @@ const se_OriginGroup = (input, context) => {
6287
6287
  if (input[_Mem] != null) {
6288
6288
  bn.c(se_OriginGroupMembers(input[_Mem], context).n(_Mem));
6289
6289
  }
6290
+ if (input[_SC] != null) {
6291
+ bn.c(__XmlNode.of(_OGSC, input[_SC]).n(_SC));
6292
+ }
6290
6293
  return bn;
6291
6294
  };
6292
6295
  const se_OriginGroupFailoverCriteria = (input, context) => {
6293
6296
  const bn = new __XmlNode(_OGFC);
6294
- if (input[_SC] != null) {
6295
- bn.c(se_StatusCodes(input[_SC], context).n(_SC));
6297
+ if (input[_SCt] != null) {
6298
+ bn.c(se_StatusCodes(input[_SCt], context).n(_SCt));
6296
6299
  }
6297
6300
  return bn;
6298
6301
  };
@@ -6846,11 +6849,11 @@ const se_StatusCodeList = (input, context) => {
6846
6849
  .filter((e) => e != null)
6847
6850
  .map((entry) => {
6848
6851
  const n = __XmlNode.of(_i, String(entry));
6849
- return n.n(_SCt);
6852
+ return n.n(_SCta);
6850
6853
  });
6851
6854
  };
6852
6855
  const se_StatusCodes = (input, context) => {
6853
- const bn = new __XmlNode(_SC);
6856
+ const bn = new __XmlNode(_SCt);
6854
6857
  if (input[_Q] != null) {
6855
6858
  bn.c(__XmlNode.of(_i, String(input[_Q])).n(_Q));
6856
6859
  }
@@ -8932,12 +8935,15 @@ const de_OriginGroup = (output, context) => {
8932
8935
  if (output[_Mem] != null) {
8933
8936
  contents[_Mem] = de_OriginGroupMembers(output[_Mem], context);
8934
8937
  }
8938
+ if (output[_SC] != null) {
8939
+ contents[_SC] = __expectString(output[_SC]);
8940
+ }
8935
8941
  return contents;
8936
8942
  };
8937
8943
  const de_OriginGroupFailoverCriteria = (output, context) => {
8938
8944
  const contents = {};
8939
- if (output[_SC] != null) {
8940
- contents[_SC] = de_StatusCodes(output[_SC], context);
8945
+ if (output[_SCt] != null) {
8946
+ contents[_SCt] = de_StatusCodes(output[_SCt], context);
8941
8947
  }
8942
8948
  return contents;
8943
8949
  };
@@ -9795,8 +9801,8 @@ const de_StatusCodes = (output, context) => {
9795
9801
  if (output.Items === "") {
9796
9802
  contents[_I] = [];
9797
9803
  }
9798
- else if (output[_I] != null && output[_I][_SCt] != null) {
9799
- contents[_I] = de_StatusCodeList(__getArrayIfSingleItem(output[_I][_SCt]), context);
9804
+ else if (output[_I] != null && output[_I][_SCta] != null) {
9805
+ contents[_I] = de_StatusCodeList(__getArrayIfSingleItem(output[_I][_SCta]), context);
9800
9806
  }
9801
9807
  return contents;
9802
9808
  };
@@ -10397,6 +10403,7 @@ const _OG = "OriginGroups";
10397
10403
  const _OGFC = "OriginGroupFailoverCriteria";
10398
10404
  const _OGM = "OriginGroupMember";
10399
10405
  const _OGMr = "OriginGroupMembers";
10406
+ const _OGSC = "OriginGroupSelectionCriteria";
10400
10407
  const _OGr = "OriginGroup";
10401
10408
  const _OI = "OriginId";
10402
10409
  const _OKT = "OriginKeepaliveTimeout";
@@ -10487,9 +10494,10 @@ const _S = "Staging";
10487
10494
  const _SARN = "SourceARN";
10488
10495
  const _SARNt = "StreamARN";
10489
10496
  const _SB = "SigningBehavior";
10490
- const _SC = "StatusCodes";
10497
+ const _SC = "SelectionCriteria";
10491
10498
  const _SCUI = "S3CanonicalUserId";
10492
- const _SCt = "StatusCode";
10499
+ const _SCt = "StatusCodes";
10500
+ const _SCta = "StatusCode";
10493
10501
  const _SDC = "StreamingDistributionConfig";
10494
10502
  const _SDCWT = "StreamingDistributionConfigWithTags";
10495
10503
  const _SDDN = "StagingDistributionDnsNames";
@@ -180,6 +180,7 @@ declare const CopyDistributionCommand_base: {
180
180
  * // },
181
181
  * // ],
182
182
  * // },
183
+ * // SelectionCriteria: "default" || "media-quality-based",
183
184
  * // },
184
185
  * // ],
185
186
  * // },
@@ -110,6 +110,7 @@ declare const CreateDistributionCommand_base: {
110
110
  * },
111
111
  * ],
112
112
  * },
113
+ * SelectionCriteria: "default" || "media-quality-based",
113
114
  * },
114
115
  * ],
115
116
  * },
@@ -448,6 +449,7 @@ declare const CreateDistributionCommand_base: {
448
449
  * // },
449
450
  * // ],
450
451
  * // },
452
+ * // SelectionCriteria: "default" || "media-quality-based",
451
453
  * // },
452
454
  * // ],
453
455
  * // },
@@ -124,6 +124,7 @@ declare const CreateDistributionWithTagsCommand_base: {
124
124
  * },
125
125
  * ],
126
126
  * },
127
+ * SelectionCriteria: "default" || "media-quality-based",
127
128
  * },
128
129
  * ],
129
130
  * },
@@ -471,6 +472,7 @@ declare const CreateDistributionWithTagsCommand_base: {
471
472
  * // },
472
473
  * // ],
473
474
  * // },
475
+ * // SelectionCriteria: "default" || "media-quality-based",
474
476
  * // },
475
477
  * // ],
476
478
  * // },
@@ -94,7 +94,7 @@ declare const CreateKeyValueStoreCommand_base: {
94
94
  * const input = {
95
95
  * "Comment": "my-key-valuestore-comment",
96
96
  * "ImportSource": {
97
- * "SourceARN": "arn:aws:s3:::my-bucket/validJSON.json",
97
+ * "SourceARN": "arn:aws:s3:::amzn-s3-demo-bucket/validJSON.json",
98
98
  * "SourceType": "S3"
99
99
  * },
100
100
  * "Name": "my-keyvaluestore-name"
@@ -119,6 +119,57 @@ declare const CreateVpcOriginCommand_base: {
119
119
  * <p>Base exception class for all service exceptions from CloudFront service.</p>
120
120
  *
121
121
  * @public
122
+ * @example To create a VPC origin
123
+ * ```javascript
124
+ * // The following command creates a VPC origin:
125
+ * const input = {
126
+ * "VpcOriginEndpointConfig": {
127
+ * "Arn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-alb-us-west-2/e6aa5c7d26415c6d",
128
+ * "HTTPPort": 80,
129
+ * "HTTPSPort": 443,
130
+ * "Name": "my-vpcorigin-name",
131
+ * "OriginProtocolPolicy": "match-viewer",
132
+ * "OriginSslProtocols": {
133
+ * "Items": [
134
+ * "TLSv1.1",
135
+ * "TLSv1.2"
136
+ * ],
137
+ * "Quantity": 2
138
+ * }
139
+ * }
140
+ * };
141
+ * const command = new CreateVpcOriginCommand(input);
142
+ * const response = await client.send(command);
143
+ * /* response ==
144
+ * {
145
+ * "ETag": "E23ZP02F085DFQ",
146
+ * "Location": "https://cloudfront.amazonaws.com/2020-05-31/vpc-origin/vo_BQwjxxQxjCaBcQLzJUFkDM",
147
+ * "VpcOrigin": {
148
+ * "Arn": "arn:aws:cloudfront::123456789012:vpcorigin/vo_BQwjxxQxjCaBcQLzJUFkDM",
149
+ * "CreatedTime": "2024-10-15T17:19:42.318Z",
150
+ * "Id": "vo_BQwjxxQxjCaBcQLzJUFkDM",
151
+ * "LastModifiedTime": "2024-10-15T17:19:42.318Z",
152
+ * "Status": "Deploying",
153
+ * "VpcOriginEndpointConfig": {
154
+ * "Arn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-alb-us-west-2/e6aa5c7d26415c6d",
155
+ * "HTTPPort": 80,
156
+ * "HTTPSPort": 443,
157
+ * "Name": "my-vpcorigin-name",
158
+ * "OriginProtocolPolicy": "match-viewer",
159
+ * "OriginSslProtocols": {
160
+ * "Items": [
161
+ * "TLSv1.1",
162
+ * "TLSv1.2"
163
+ * ],
164
+ * "Quantity": 2
165
+ * }
166
+ * }
167
+ * }
168
+ * }
169
+ * *\/
170
+ * // example id: example-1
171
+ * ```
172
+ *
122
173
  */
123
174
  export declare class CreateVpcOriginCommand extends CreateVpcOriginCommand_base {
124
175
  /** @internal type navigation helper, not in runtime. */
@@ -101,6 +101,44 @@ declare const DeleteVpcOriginCommand_base: {
101
101
  * <p>Base exception class for all service exceptions from CloudFront service.</p>
102
102
  *
103
103
  * @public
104
+ * @example To delete a VPC origin
105
+ * ```javascript
106
+ * // The following command deletes a VPC origin:
107
+ * const input = {
108
+ * "Id": "vo_BQwjxxQxjCaBcQLzJUFkDM",
109
+ * "IfMatch": "E1F83G8C2ARO7P"
110
+ * };
111
+ * const command = new DeleteVpcOriginCommand(input);
112
+ * const response = await client.send(command);
113
+ * /* response ==
114
+ * {
115
+ * "ETag": "E1PA6795UKMFR9",
116
+ * "VpcOrigin": {
117
+ * "Arn": "arn:aws:cloudfront::123456789012:vpcorigin/vo_BQwjxxQxjCaBcQLzJUFkDM",
118
+ * "CreatedTime": "2024-10-15T17:19:42.318Z",
119
+ * "Id": "vo_BQwjxxQxjCaBcQLzJUFkDM",
120
+ * "LastModifiedTime": "2024-10-15T17:57:08.965Z",
121
+ * "Status": "Deploying",
122
+ * "VpcOriginEndpointConfig": {
123
+ * "Arn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-alb-us-west-2/e6aa5c7d26415c6d",
124
+ * "HTTPPort": 80,
125
+ * "HTTPSPort": 443,
126
+ * "Name": "my-vpcorigin-name",
127
+ * "OriginProtocolPolicy": "match-viewer",
128
+ * "OriginSslProtocols": {
129
+ * "Items": [
130
+ * "TLSv1.1",
131
+ * "TLSv1.2"
132
+ * ],
133
+ * "Quantity": 2
134
+ * }
135
+ * }
136
+ * }
137
+ * }
138
+ * *\/
139
+ * // example id: example-1
140
+ * ```
141
+ *
104
142
  */
105
143
  export declare class DeleteVpcOriginCommand extends DeleteVpcOriginCommand_base {
106
144
  /** @internal type navigation helper, not in runtime. */
@@ -152,6 +152,7 @@ declare const GetDistributionCommand_base: {
152
152
  * // },
153
153
  * // ],
154
154
  * // },
155
+ * // SelectionCriteria: "default" || "media-quality-based",
155
156
  * // },
156
157
  * // ],
157
158
  * // },
@@ -115,6 +115,7 @@ declare const GetDistributionConfigCommand_base: {
115
115
  * // },
116
116
  * // ],
117
117
  * // },
118
+ * // SelectionCriteria: "default" || "media-quality-based",
118
119
  * // },
119
120
  * // ],
120
121
  * // },
@@ -87,6 +87,43 @@ declare const GetVpcOriginCommand_base: {
87
87
  * <p>Base exception class for all service exceptions from CloudFront service.</p>
88
88
  *
89
89
  * @public
90
+ * @example To get a VPC origin
91
+ * ```javascript
92
+ * // The following command gets a VPC origin:
93
+ * const input = {
94
+ * "Id": "vo_BQwjxxQxjCaBcQLzJUFkDM"
95
+ * };
96
+ * const command = new GetVpcOriginCommand(input);
97
+ * const response = await client.send(command);
98
+ * /* response ==
99
+ * {
100
+ * "ETag": "ETVPDKIKX0DER",
101
+ * "VpcOrigin": {
102
+ * "Arn": "arn:aws:cloudfront::123456789012:vpcorigin/vo_BQwjxxQxjCaBcQLzJUFkDM",
103
+ * "CreatedTime": "2024-10-15T17:19:42.318Z",
104
+ * "Id": "vo_BQwjxxQxjCaBcQLzJUFkDM",
105
+ * "LastModifiedTime": "2024-10-15T17:24:35.188Z",
106
+ * "Status": "Deployed",
107
+ * "VpcOriginEndpointConfig": {
108
+ * "Arn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-alb-us-west-2/e6aa5c7d26415c6d",
109
+ * "HTTPPort": 80,
110
+ * "HTTPSPort": 443,
111
+ * "Name": "my-vpcorigin-name",
112
+ * "OriginProtocolPolicy": "match-viewer",
113
+ * "OriginSslProtocols": {
114
+ * "Items": [
115
+ * "TLSv1.1",
116
+ * "TLSv1.2"
117
+ * ],
118
+ * "Quantity": 2
119
+ * }
120
+ * }
121
+ * }
122
+ * }
123
+ * *\/
124
+ * // example id: example-1
125
+ * ```
126
+ *
90
127
  */
91
128
  export declare class GetVpcOriginCommand extends GetVpcOriginCommand_base {
92
129
  /** @internal type navigation helper, not in runtime. */
@@ -127,6 +127,7 @@ declare const ListDistributionsByAnycastIpListIdCommand_base: {
127
127
  * // },
128
128
  * // ],
129
129
  * // },
130
+ * // SelectionCriteria: "default" || "media-quality-based",
130
131
  * // },
131
132
  * // ],
132
133
  * // },
@@ -137,6 +137,7 @@ declare const ListDistributionsByRealtimeLogConfigCommand_base: {
137
137
  * // },
138
138
  * // ],
139
139
  * // },
140
+ * // SelectionCriteria: "default" || "media-quality-based",
140
141
  * // },
141
142
  * // ],
142
143
  * // },
@@ -78,6 +78,28 @@ declare const ListDistributionsByVpcOriginIdCommand_base: {
78
78
  * <p>Base exception class for all service exceptions from CloudFront service.</p>
79
79
  *
80
80
  * @public
81
+ * @example To list distributions by VPC origin ID
82
+ * ```javascript
83
+ * // The following command lists distributions by VPC origin ID:
84
+ * const input = {
85
+ * "VpcOriginId": "vo_BQwjxxQxjCaBcQLzJUFkDM"
86
+ * };
87
+ * const command = new ListDistributionsByVpcOriginIdCommand(input);
88
+ * const response = await client.send(command);
89
+ * /* response ==
90
+ * {
91
+ * "DistributionIdList": {
92
+ * "IsTruncated": false,
93
+ * "Items": [],
94
+ * "Marker": "a",
95
+ * "MaxItems": 100,
96
+ * "Quantity": 0
97
+ * }
98
+ * }
99
+ * *\/
100
+ * // example id: example-1
101
+ * ```
102
+ *
81
103
  */
82
104
  export declare class ListDistributionsByVpcOriginIdCommand extends ListDistributionsByVpcOriginIdCommand_base {
83
105
  /** @internal type navigation helper, not in runtime. */
@@ -127,6 +127,7 @@ declare const ListDistributionsByWebACLIdCommand_base: {
127
127
  * // },
128
128
  * // ],
129
129
  * // },
130
+ * // SelectionCriteria: "default" || "media-quality-based",
130
131
  * // },
131
132
  * // ],
132
133
  * // },
@@ -126,6 +126,7 @@ declare const ListDistributionsCommand_base: {
126
126
  * // },
127
127
  * // ],
128
128
  * // },
129
+ * // SelectionCriteria: "default" || "media-quality-based",
129
130
  * // },
130
131
  * // ],
131
132
  * // },
@@ -85,6 +85,36 @@ declare const ListVpcOriginsCommand_base: {
85
85
  * <p>Base exception class for all service exceptions from CloudFront service.</p>
86
86
  *
87
87
  * @public
88
+ * @example To list VPC origins
89
+ * ```javascript
90
+ * // The following command lists VPC origins:
91
+ * const input = {};
92
+ * const command = new ListVpcOriginsCommand(input);
93
+ * const response = await client.send(command);
94
+ * /* response ==
95
+ * {
96
+ * "VpcOriginList": {
97
+ * "IsTruncated": true,
98
+ * "Items": [
99
+ * {
100
+ * "Arn": "arn:aws:cloudfront::123456789012:vpcorigin/vo_BQwjxxQxjCaBcQLzJUFkDM",
101
+ * "CreatedTime": "2024-10-15T17:19:42.318Z",
102
+ * "Id": "vo_BQwjxxQxjCaBcQLzJUFkDM",
103
+ * "LastModifiedTime": "2024-10-15T17:24:35.188Z",
104
+ * "Name": "my-vpcorigin-name",
105
+ * "OriginEndpointArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-alb-us-west-2/e6aa5c7d26415c6d",
106
+ * "Status": "Deployed"
107
+ * }
108
+ * ],
109
+ * "Marker": "a",
110
+ * "MaxItems": 100,
111
+ * "Quantity": 1
112
+ * }
113
+ * }
114
+ * *\/
115
+ * // example id: example-1
116
+ * ```
117
+ *
88
118
  */
89
119
  export declare class ListVpcOriginsCommand extends ListVpcOriginsCommand_base {
90
120
  /** @internal type navigation helper, not in runtime. */
@@ -143,6 +143,7 @@ declare const UpdateDistributionCommand_base: {
143
143
  * },
144
144
  * ],
145
145
  * },
146
+ * SelectionCriteria: "default" || "media-quality-based",
146
147
  * },
147
148
  * ],
148
149
  * },
@@ -483,6 +484,7 @@ declare const UpdateDistributionCommand_base: {
483
484
  * // },
484
485
  * // ],
485
486
  * // },
487
+ * // SelectionCriteria: "default" || "media-quality-based",
486
488
  * // },
487
489
  * // ],
488
490
  * // },
@@ -176,6 +176,7 @@ declare const UpdateDistributionWithStagingConfigCommand_base: {
176
176
  * // },
177
177
  * // ],
178
178
  * // },
179
+ * // SelectionCriteria: "default" || "media-quality-based",
179
180
  * // },
180
181
  * // ],
181
182
  * // },
@@ -125,6 +125,58 @@ declare const UpdateVpcOriginCommand_base: {
125
125
  * <p>Base exception class for all service exceptions from CloudFront service.</p>
126
126
  *
127
127
  * @public
128
+ * @example To update a VPC origin
129
+ * ```javascript
130
+ * // The following command updates a VPC origin:
131
+ * const input = {
132
+ * "Id": "vo_BQwjxxQxjCaBcQLzJUFkDM",
133
+ * "IfMatch": "ETVPDKIKX0DER",
134
+ * "VpcOriginEndpointConfig": {
135
+ * "Arn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-alb-us-west-2/e6aa5c7d26415c6d",
136
+ * "HTTPPort": 80,
137
+ * "HTTPSPort": 443,
138
+ * "Name": "my-vpcorigin-name",
139
+ * "OriginProtocolPolicy": "match-viewer",
140
+ * "OriginSslProtocols": {
141
+ * "Items": [
142
+ * "TLSv1.1",
143
+ * "TLSv1.2"
144
+ * ],
145
+ * "Quantity": 2
146
+ * }
147
+ * }
148
+ * };
149
+ * const command = new UpdateVpcOriginCommand(input);
150
+ * const response = await client.send(command);
151
+ * /* response ==
152
+ * {
153
+ * "ETag": "E3UN6WX5RRO2AG",
154
+ * "VpcOrigin": {
155
+ * "Arn": "arn:aws:cloudfront::123456789012:vpcorigin/vo_BQwjxxQxjCaBcQLzJUFkDM",
156
+ * "CreatedTime": "2024-10-15T17:19:42.318Z",
157
+ * "Id": "vo_BQwjxxQxjCaBcQLzJUFkDM",
158
+ * "LastModifiedTime": "2024-10-15T17:47:08.133Z",
159
+ * "Status": "Deploying",
160
+ * "VpcOriginEndpointConfig": {
161
+ * "Arn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-alb-us-west-2/e6aa5c7d26415c6d",
162
+ * "HTTPPort": 80,
163
+ * "HTTPSPort": 443,
164
+ * "Name": "my-vpcorigin-name",
165
+ * "OriginProtocolPolicy": "match-viewer",
166
+ * "OriginSslProtocols": {
167
+ * "Items": [
168
+ * "TLSv1.1",
169
+ * "TLSv1.2"
170
+ * ],
171
+ * "Quantity": 2
172
+ * }
173
+ * }
174
+ * }
175
+ * }
176
+ * *\/
177
+ * // example id: example-1
178
+ * ```
179
+ *
128
180
  */
129
181
  export declare class UpdateVpcOriginCommand extends UpdateVpcOriginCommand_base {
130
182
  /** @internal type navigation helper, not in runtime. */
@@ -2330,11 +2330,24 @@ export interface OriginGroupMembers {
2330
2330
  Items: OriginGroupMember[] | undefined;
2331
2331
  }
2332
2332
  /**
2333
- * <p>An origin group includes two origins (a primary origin and a second origin to failover to)
2334
- * and a failover criteria that you specify. You create an origin group to support origin
2335
- * failover in CloudFront. When you create or update a distribution, you can specify the
2336
- * origin group instead of a single origin, and CloudFront will failover from the primary
2337
- * origin to the second origin under the failover conditions that you've chosen.</p>
2333
+ * @public
2334
+ * @enum
2335
+ */
2336
+ export declare const OriginGroupSelectionCriteria: {
2337
+ readonly Default: "default";
2338
+ readonly MediaQualityBased: "media-quality-based";
2339
+ };
2340
+ /**
2341
+ * @public
2342
+ */
2343
+ export type OriginGroupSelectionCriteria = (typeof OriginGroupSelectionCriteria)[keyof typeof OriginGroupSelectionCriteria];
2344
+ /**
2345
+ * <p>An origin group includes two origins (a primary origin and a secondary origin to failover
2346
+ * to) and a failover criteria that you specify. You create an origin group to support
2347
+ * origin failover in CloudFront. When you create or update a distribution, you can specify the
2348
+ * origin group instead of a single origin, and CloudFront will failover from the primary origin
2349
+ * to the secondary origin under the failover conditions that you've chosen.</p>
2350
+ * <p>Optionally, you can choose selection criteria for your origin group to specify how your origins are selected when your distribution routes viewer requests.</p>
2338
2351
  * @public
2339
2352
  */
2340
2353
  export interface OriginGroup {
@@ -2354,6 +2367,12 @@ export interface OriginGroup {
2354
2367
  * @public
2355
2368
  */
2356
2369
  Members: OriginGroupMembers | undefined;
2370
+ /**
2371
+ * <p>The selection criteria for the origin group. For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/high_availability_origin_failover.html#concept_origin_groups.creating">Create an origin group</a> in the <i>Amazon CloudFront
2372
+ * Developer Guide</i>.</p>
2373
+ * @public
2374
+ */
2375
+ SelectionCriteria?: OriginGroupSelectionCriteria | undefined;
2357
2376
  }
2358
2377
  /**
2359
2378
  * <p>A complex data type for the origin groups specified for a distribution.</p>
@@ -6934,70 +6953,6 @@ export interface ResponseHeadersPolicyAccessControlAllowHeaders {
6934
6953
  */
6935
6954
  Items: string[] | undefined;
6936
6955
  }
6937
- /**
6938
- * <p>A list of HTTP methods that CloudFront includes as values for the
6939
- * <code>Access-Control-Allow-Methods</code> HTTP response header.</p>
6940
- * <p>For more information about the <code>Access-Control-Allow-Methods</code> HTTP response
6941
- * header, see <a href="https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Methods">Access-Control-Allow-Methods</a> in the MDN Web Docs.</p>
6942
- * @public
6943
- */
6944
- export interface ResponseHeadersPolicyAccessControlAllowMethods {
6945
- /**
6946
- * <p>The number of HTTP methods in the list.</p>
6947
- * @public
6948
- */
6949
- Quantity: number | undefined;
6950
- /**
6951
- * <p>The list of HTTP methods. Valid values are:</p>
6952
- * <ul>
6953
- * <li>
6954
- * <p>
6955
- * <code>GET</code>
6956
- * </p>
6957
- * </li>
6958
- * <li>
6959
- * <p>
6960
- * <code>DELETE</code>
6961
- * </p>
6962
- * </li>
6963
- * <li>
6964
- * <p>
6965
- * <code>HEAD</code>
6966
- * </p>
6967
- * </li>
6968
- * <li>
6969
- * <p>
6970
- * <code>OPTIONS</code>
6971
- * </p>
6972
- * </li>
6973
- * <li>
6974
- * <p>
6975
- * <code>PATCH</code>
6976
- * </p>
6977
- * </li>
6978
- * <li>
6979
- * <p>
6980
- * <code>POST</code>
6981
- * </p>
6982
- * </li>
6983
- * <li>
6984
- * <p>
6985
- * <code>PUT</code>
6986
- * </p>
6987
- * </li>
6988
- * <li>
6989
- * <p>
6990
- * <code>ALL</code>
6991
- * </p>
6992
- * </li>
6993
- * </ul>
6994
- * <p>
6995
- * <code>ALL</code> is a special value that includes all of the listed HTTP
6996
- * methods.</p>
6997
- * @public
6998
- */
6999
- Items: ResponseHeadersPolicyAccessControlAllowMethodsValues[] | undefined;
7000
- }
7001
6956
  /**
7002
6957
  * @internal
7003
6958
  */
@@ -1,6 +1,70 @@
1
1
  import { ExceptionOptionType as __ExceptionOptionType } from "@smithy/smithy-client";
2
2
  import { CloudFrontServiceException as __BaseException } from "./CloudFrontServiceException";
3
- import { ActiveTrustedSigners, Aliases, AliasICPRecordal, AnycastIpList, AnycastIpListCollection, CacheBehaviors, CachePolicy, CachePolicyConfig, CachePolicyList, CachePolicyType, CloudFrontOriginAccessIdentity, CloudFrontOriginAccessIdentityConfig, ContentTypeProfileConfig, ContinuousDeploymentPolicy, ContinuousDeploymentPolicyConfig, CustomErrorResponses, DefaultCacheBehavior, Distribution, DistributionConfig, EncryptionEntities, EndPoint, FieldLevelEncryption, FieldLevelEncryptionConfig, FieldLevelEncryptionProfile, FieldLevelEncryptionProfileConfig, FunctionConfig, FunctionStage, FunctionSummary, HttpVersion, Invalidation, KeyGroup, KeyGroupConfig, KeyValueStore, MonitoringSubscription, OriginAccessControl, OriginAccessControlConfig, OriginAccessControlOriginTypes, OriginAccessControlSigningBehaviors, OriginAccessControlSigningProtocols, OriginGroups, OriginProtocolPolicy, OriginRequestPolicy, OriginRequestPolicyConfig, Origins, OriginSslProtocols, PriceClass, PublicKey, PublicKeyConfig, QueryArgProfileConfig, RealtimeLogConfig, ResponseHeadersPolicyAccessControlAllowHeaders, ResponseHeadersPolicyAccessControlAllowMethods, Restrictions, Tags, TrustedSigners, ViewerCertificate } from "./models_0";
3
+ import { ActiveTrustedSigners, Aliases, AliasICPRecordal, AnycastIpList, AnycastIpListCollection, CacheBehaviors, CachePolicy, CachePolicyConfig, CachePolicyList, CachePolicyType, CloudFrontOriginAccessIdentity, CloudFrontOriginAccessIdentityConfig, ContentTypeProfileConfig, ContinuousDeploymentPolicy, ContinuousDeploymentPolicyConfig, CustomErrorResponses, DefaultCacheBehavior, Distribution, DistributionConfig, EncryptionEntities, EndPoint, FieldLevelEncryption, FieldLevelEncryptionConfig, FieldLevelEncryptionProfile, FieldLevelEncryptionProfileConfig, FunctionConfig, FunctionStage, FunctionSummary, HttpVersion, Invalidation, KeyGroup, KeyGroupConfig, KeyValueStore, MonitoringSubscription, OriginAccessControl, OriginAccessControlConfig, OriginAccessControlOriginTypes, OriginAccessControlSigningBehaviors, OriginAccessControlSigningProtocols, OriginGroups, OriginProtocolPolicy, OriginRequestPolicy, OriginRequestPolicyConfig, Origins, OriginSslProtocols, PriceClass, PublicKey, PublicKeyConfig, QueryArgProfileConfig, RealtimeLogConfig, ResponseHeadersPolicyAccessControlAllowHeaders, ResponseHeadersPolicyAccessControlAllowMethodsValues, Restrictions, Tags, TrustedSigners, ViewerCertificate } from "./models_0";
4
+ /**
5
+ * <p>A list of HTTP methods that CloudFront includes as values for the
6
+ * <code>Access-Control-Allow-Methods</code> HTTP response header.</p>
7
+ * <p>For more information about the <code>Access-Control-Allow-Methods</code> HTTP response
8
+ * header, see <a href="https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Methods">Access-Control-Allow-Methods</a> in the MDN Web Docs.</p>
9
+ * @public
10
+ */
11
+ export interface ResponseHeadersPolicyAccessControlAllowMethods {
12
+ /**
13
+ * <p>The number of HTTP methods in the list.</p>
14
+ * @public
15
+ */
16
+ Quantity: number | undefined;
17
+ /**
18
+ * <p>The list of HTTP methods. Valid values are:</p>
19
+ * <ul>
20
+ * <li>
21
+ * <p>
22
+ * <code>GET</code>
23
+ * </p>
24
+ * </li>
25
+ * <li>
26
+ * <p>
27
+ * <code>DELETE</code>
28
+ * </p>
29
+ * </li>
30
+ * <li>
31
+ * <p>
32
+ * <code>HEAD</code>
33
+ * </p>
34
+ * </li>
35
+ * <li>
36
+ * <p>
37
+ * <code>OPTIONS</code>
38
+ * </p>
39
+ * </li>
40
+ * <li>
41
+ * <p>
42
+ * <code>PATCH</code>
43
+ * </p>
44
+ * </li>
45
+ * <li>
46
+ * <p>
47
+ * <code>POST</code>
48
+ * </p>
49
+ * </li>
50
+ * <li>
51
+ * <p>
52
+ * <code>PUT</code>
53
+ * </p>
54
+ * </li>
55
+ * <li>
56
+ * <p>
57
+ * <code>ALL</code>
58
+ * </p>
59
+ * </li>
60
+ * </ul>
61
+ * <p>
62
+ * <code>ALL</code> is a special value that includes all of the listed HTTP
63
+ * methods.</p>
64
+ * @public
65
+ */
66
+ Items: ResponseHeadersPolicyAccessControlAllowMethodsValues[] | undefined;
67
+ }
4
68
  /**
5
69
  * <p>A list of origins (domain names) that CloudFront can use as the value for the
6
70
  * <code>Access-Control-Allow-Origin</code> HTTP response header.</p>
@@ -428,10 +428,17 @@ export interface OriginGroupMembers {
428
428
  Quantity: number | undefined;
429
429
  Items: OriginGroupMember[] | undefined;
430
430
  }
431
+ export declare const OriginGroupSelectionCriteria: {
432
+ readonly Default: "default";
433
+ readonly MediaQualityBased: "media-quality-based";
434
+ };
435
+ export type OriginGroupSelectionCriteria =
436
+ (typeof OriginGroupSelectionCriteria)[keyof typeof OriginGroupSelectionCriteria];
431
437
  export interface OriginGroup {
432
438
  Id: string | undefined;
433
439
  FailoverCriteria: OriginGroupFailoverCriteria | undefined;
434
440
  Members: OriginGroupMembers | undefined;
441
+ SelectionCriteria?: OriginGroupSelectionCriteria | undefined;
435
442
  }
436
443
  export interface OriginGroups {
437
444
  Quantity: number | undefined;
@@ -2026,10 +2033,6 @@ export interface ResponseHeadersPolicyAccessControlAllowHeaders {
2026
2033
  Quantity: number | undefined;
2027
2034
  Items: string[] | undefined;
2028
2035
  }
2029
- export interface ResponseHeadersPolicyAccessControlAllowMethods {
2030
- Quantity: number | undefined;
2031
- Items: ResponseHeadersPolicyAccessControlAllowMethodsValues[] | undefined;
2032
- }
2033
2036
  export declare const OriginCustomHeaderFilterSensitiveLog: (
2034
2037
  obj: OriginCustomHeader
2035
2038
  ) => any;
@@ -52,12 +52,16 @@ import {
52
52
  QueryArgProfileConfig,
53
53
  RealtimeLogConfig,
54
54
  ResponseHeadersPolicyAccessControlAllowHeaders,
55
- ResponseHeadersPolicyAccessControlAllowMethods,
55
+ ResponseHeadersPolicyAccessControlAllowMethodsValues,
56
56
  Restrictions,
57
57
  Tags,
58
58
  TrustedSigners,
59
59
  ViewerCertificate,
60
60
  } from "./models_0";
61
+ export interface ResponseHeadersPolicyAccessControlAllowMethods {
62
+ Quantity: number | undefined;
63
+ Items: ResponseHeadersPolicyAccessControlAllowMethodsValues[] | undefined;
64
+ }
61
65
  export interface ResponseHeadersPolicyAccessControlAllowOrigins {
62
66
  Quantity: number | undefined;
63
67
  Items: string[] | undefined;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@aws-sdk/client-cloudfront",
3
3
  "description": "AWS SDK for JavaScript Cloudfront Client for Node.js, Browser and React Native",
4
- "version": "3.697.0",
4
+ "version": "3.698.0",
5
5
  "scripts": {
6
6
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
7
7
  "build:cjs": "node ../../scripts/compilation/inline client-cloudfront",