UNPKG

908 kBPlain TextView Raw
1{
2 "author": {
3 "name": "Amazon Web Services",
4 "organization": true,
5 "roles": [
6 "author"
7 ],
8 "url": "https://aws.amazon.com"
9 },
10 "dependencies": {
11 "@aws-cdk/aws-certificatemanager": "1.157.0",
12 "@aws-cdk/aws-cloudwatch": "1.157.0",
13 "@aws-cdk/aws-ec2": "1.157.0",
14 "@aws-cdk/aws-iam": "1.157.0",
15 "@aws-cdk/aws-kms": "1.157.0",
16 "@aws-cdk/aws-lambda": "1.157.0",
17 "@aws-cdk/aws-s3": "1.157.0",
18 "@aws-cdk/aws-ssm": "1.157.0",
19 "@aws-cdk/core": "1.157.0",
20 "@aws-cdk/cx-api": "1.157.0",
21 "constructs": "^3.3.69"
22 },
23 "dependencyClosure": {
24 "@aws-cdk/assets": {
25 "targets": {
26 "dotnet": {
27 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
28 "namespace": "Amazon.CDK.Assets",
29 "packageId": "Amazon.CDK.Assets"
30 },
31 "java": {
32 "maven": {
33 "artifactId": "cdk-assets",
34 "groupId": "software.amazon.awscdk"
35 },
36 "package": "software.amazon.awscdk.assets"
37 },
38 "js": {
39 "npm": "@aws-cdk/assets"
40 },
41 "python": {
42 "classifiers": [
43 "Framework :: AWS CDK",
44 "Framework :: AWS CDK :: 1"
45 ],
46 "distName": "aws-cdk.assets",
47 "module": "aws_cdk.assets"
48 }
49 }
50 },
51 "@aws-cdk/aws-acmpca": {
52 "targets": {
53 "dotnet": {
54 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
55 "namespace": "Amazon.CDK.AWS.ACMPCA",
56 "packageId": "Amazon.CDK.AWS.ACMPCA"
57 },
58 "java": {
59 "maven": {
60 "artifactId": "acmpca",
61 "groupId": "software.amazon.awscdk"
62 },
63 "package": "software.amazon.awscdk.services.acmpca"
64 },
65 "js": {
66 "npm": "@aws-cdk/aws-acmpca"
67 },
68 "python": {
69 "classifiers": [
70 "Framework :: AWS CDK",
71 "Framework :: AWS CDK :: 1"
72 ],
73 "distName": "aws-cdk.aws-acmpca",
74 "module": "aws_cdk.aws_acmpca"
75 }
76 }
77 },
78 "@aws-cdk/aws-applicationautoscaling": {
79 "targets": {
80 "dotnet": {
81 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
82 "namespace": "Amazon.CDK.AWS.ApplicationAutoScaling",
83 "packageId": "Amazon.CDK.AWS.ApplicationAutoScaling"
84 },
85 "java": {
86 "maven": {
87 "artifactId": "applicationautoscaling",
88 "groupId": "software.amazon.awscdk"
89 },
90 "package": "software.amazon.awscdk.services.applicationautoscaling"
91 },
92 "js": {
93 "npm": "@aws-cdk/aws-applicationautoscaling"
94 },
95 "python": {
96 "classifiers": [
97 "Framework :: AWS CDK",
98 "Framework :: AWS CDK :: 1"
99 ],
100 "distName": "aws-cdk.aws-applicationautoscaling",
101 "module": "aws_cdk.aws_applicationautoscaling"
102 }
103 }
104 },
105 "@aws-cdk/aws-autoscaling-common": {
106 "targets": {
107 "dotnet": {
108 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
109 "namespace": "Amazon.CDK.AWS.AutoScaling.Common",
110 "packageId": "Amazon.CDK.AWS.AutoScaling.Common"
111 },
112 "java": {
113 "maven": {
114 "artifactId": "autoscaling-common",
115 "groupId": "software.amazon.awscdk"
116 },
117 "package": "software.amazon.awscdk.services.autoscaling.common"
118 },
119 "js": {
120 "npm": "@aws-cdk/aws-autoscaling-common"
121 },
122 "python": {
123 "classifiers": [
124 "Framework :: AWS CDK",
125 "Framework :: AWS CDK :: 1"
126 ],
127 "distName": "aws-cdk.aws-autoscaling-common",
128 "module": "aws_cdk.aws_autoscaling_common"
129 }
130 }
131 },
132 "@aws-cdk/aws-certificatemanager": {
133 "targets": {
134 "dotnet": {
135 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
136 "namespace": "Amazon.CDK.AWS.CertificateManager",
137 "packageId": "Amazon.CDK.AWS.CertificateManager"
138 },
139 "java": {
140 "maven": {
141 "artifactId": "certificatemanager",
142 "groupId": "software.amazon.awscdk"
143 },
144 "package": "software.amazon.awscdk.services.certificatemanager"
145 },
146 "js": {
147 "npm": "@aws-cdk/aws-certificatemanager"
148 },
149 "python": {
150 "classifiers": [
151 "Framework :: AWS CDK",
152 "Framework :: AWS CDK :: 1"
153 ],
154 "distName": "aws-cdk.aws-certificatemanager",
155 "module": "aws_cdk.aws_certificatemanager"
156 }
157 }
158 },
159 "@aws-cdk/aws-cloudformation": {
160 "targets": {
161 "dotnet": {
162 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
163 "namespace": "Amazon.CDK.AWS.CloudFormation",
164 "packageId": "Amazon.CDK.AWS.CloudFormation"
165 },
166 "java": {
167 "maven": {
168 "artifactId": "cloudformation",
169 "groupId": "software.amazon.awscdk"
170 },
171 "package": "software.amazon.awscdk.services.cloudformation"
172 },
173 "js": {
174 "npm": "@aws-cdk/aws-cloudformation"
175 },
176 "python": {
177 "classifiers": [
178 "Framework :: AWS CDK",
179 "Framework :: AWS CDK :: 1"
180 ],
181 "distName": "aws-cdk.aws-cloudformation",
182 "module": "aws_cdk.aws_cloudformation"
183 }
184 }
185 },
186 "@aws-cdk/aws-cloudwatch": {
187 "targets": {
188 "dotnet": {
189 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
190 "namespace": "Amazon.CDK.AWS.CloudWatch",
191 "packageId": "Amazon.CDK.AWS.CloudWatch"
192 },
193 "java": {
194 "maven": {
195 "artifactId": "cloudwatch",
196 "groupId": "software.amazon.awscdk"
197 },
198 "package": "software.amazon.awscdk.services.cloudwatch"
199 },
200 "js": {
201 "npm": "@aws-cdk/aws-cloudwatch"
202 },
203 "python": {
204 "classifiers": [
205 "Framework :: AWS CDK",
206 "Framework :: AWS CDK :: 1"
207 ],
208 "distName": "aws-cdk.aws-cloudwatch",
209 "module": "aws_cdk.aws_cloudwatch"
210 }
211 }
212 },
213 "@aws-cdk/aws-codeguruprofiler": {
214 "targets": {
215 "dotnet": {
216 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
217 "namespace": "Amazon.CDK.AWS.CodeGuruProfiler",
218 "packageId": "Amazon.CDK.AWS.CodeGuruProfiler"
219 },
220 "java": {
221 "maven": {
222 "artifactId": "codeguruprofiler",
223 "groupId": "software.amazon.awscdk"
224 },
225 "package": "software.amazon.awscdk.services.codeguruprofiler"
226 },
227 "js": {
228 "npm": "@aws-cdk/aws-codeguruprofiler"
229 },
230 "python": {
231 "classifiers": [
232 "Framework :: AWS CDK",
233 "Framework :: AWS CDK :: 1"
234 ],
235 "distName": "aws-cdk.aws-codeguruprofiler",
236 "module": "aws_cdk.aws_codeguruprofiler"
237 }
238 }
239 },
240 "@aws-cdk/aws-codestarnotifications": {
241 "targets": {
242 "dotnet": {
243 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
244 "namespace": "Amazon.CDK.AWS.CodeStarNotifications",
245 "packageId": "Amazon.CDK.AWS.CodeStarNotifications"
246 },
247 "java": {
248 "maven": {
249 "artifactId": "codestarnotifications",
250 "groupId": "software.amazon.awscdk"
251 },
252 "package": "software.amazon.awscdk.services.codestarnotifications"
253 },
254 "js": {
255 "npm": "@aws-cdk/aws-codestarnotifications"
256 },
257 "python": {
258 "classifiers": [
259 "Framework :: AWS CDK",
260 "Framework :: AWS CDK :: 1"
261 ],
262 "distName": "aws-cdk.aws-codestarnotifications",
263 "module": "aws_cdk.aws_codestarnotifications"
264 }
265 }
266 },
267 "@aws-cdk/aws-ec2": {
268 "targets": {
269 "dotnet": {
270 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
271 "namespace": "Amazon.CDK.AWS.EC2",
272 "packageId": "Amazon.CDK.AWS.EC2"
273 },
274 "java": {
275 "maven": {
276 "artifactId": "ec2",
277 "groupId": "software.amazon.awscdk"
278 },
279 "package": "software.amazon.awscdk.services.ec2"
280 },
281 "js": {
282 "npm": "@aws-cdk/aws-ec2"
283 },
284 "python": {
285 "classifiers": [
286 "Framework :: AWS CDK",
287 "Framework :: AWS CDK :: 1"
288 ],
289 "distName": "aws-cdk.aws-ec2",
290 "module": "aws_cdk.aws_ec2"
291 }
292 }
293 },
294 "@aws-cdk/aws-ecr": {
295 "targets": {
296 "dotnet": {
297 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
298 "namespace": "Amazon.CDK.AWS.ECR",
299 "packageId": "Amazon.CDK.AWS.ECR"
300 },
301 "java": {
302 "maven": {
303 "artifactId": "ecr",
304 "groupId": "software.amazon.awscdk"
305 },
306 "package": "software.amazon.awscdk.services.ecr"
307 },
308 "js": {
309 "npm": "@aws-cdk/aws-ecr"
310 },
311 "python": {
312 "classifiers": [
313 "Framework :: AWS CDK",
314 "Framework :: AWS CDK :: 1"
315 ],
316 "distName": "aws-cdk.aws-ecr",
317 "module": "aws_cdk.aws_ecr"
318 }
319 }
320 },
321 "@aws-cdk/aws-ecr-assets": {
322 "targets": {
323 "dotnet": {
324 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
325 "namespace": "Amazon.CDK.AWS.Ecr.Assets",
326 "packageId": "Amazon.CDK.ECR.Assets"
327 },
328 "java": {
329 "maven": {
330 "artifactId": "ecr-assets",
331 "groupId": "software.amazon.awscdk"
332 },
333 "package": "software.amazon.awscdk.services.ecr.assets"
334 },
335 "js": {
336 "npm": "@aws-cdk/aws-ecr-assets"
337 },
338 "python": {
339 "classifiers": [
340 "Framework :: AWS CDK",
341 "Framework :: AWS CDK :: 1"
342 ],
343 "distName": "aws-cdk.aws-ecr-assets",
344 "module": "aws_cdk.aws_ecr_assets"
345 }
346 }
347 },
348 "@aws-cdk/aws-efs": {
349 "targets": {
350 "dotnet": {
351 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
352 "namespace": "Amazon.CDK.AWS.EFS",
353 "packageId": "Amazon.CDK.AWS.EFS"
354 },
355 "java": {
356 "maven": {
357 "artifactId": "efs",
358 "groupId": "software.amazon.awscdk"
359 },
360 "package": "software.amazon.awscdk.services.efs"
361 },
362 "js": {
363 "npm": "@aws-cdk/aws-efs"
364 },
365 "python": {
366 "classifiers": [
367 "Framework :: AWS CDK",
368 "Framework :: AWS CDK :: 1"
369 ],
370 "distName": "aws-cdk.aws-efs",
371 "module": "aws_cdk.aws_efs"
372 }
373 }
374 },
375 "@aws-cdk/aws-events": {
376 "targets": {
377 "dotnet": {
378 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
379 "namespace": "Amazon.CDK.AWS.Events",
380 "packageId": "Amazon.CDK.AWS.Events"
381 },
382 "java": {
383 "maven": {
384 "artifactId": "events",
385 "groupId": "software.amazon.awscdk"
386 },
387 "package": "software.amazon.awscdk.services.events"
388 },
389 "js": {
390 "npm": "@aws-cdk/aws-events"
391 },
392 "python": {
393 "classifiers": [
394 "Framework :: AWS CDK",
395 "Framework :: AWS CDK :: 1"
396 ],
397 "distName": "aws-cdk.aws-events",
398 "module": "aws_cdk.aws_events"
399 }
400 }
401 },
402 "@aws-cdk/aws-iam": {
403 "targets": {
404 "dotnet": {
405 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
406 "namespace": "Amazon.CDK.AWS.IAM",
407 "packageId": "Amazon.CDK.AWS.IAM"
408 },
409 "java": {
410 "maven": {
411 "artifactId": "iam",
412 "groupId": "software.amazon.awscdk"
413 },
414 "package": "software.amazon.awscdk.services.iam"
415 },
416 "js": {
417 "npm": "@aws-cdk/aws-iam"
418 },
419 "python": {
420 "classifiers": [
421 "Framework :: AWS CDK",
422 "Framework :: AWS CDK :: 1"
423 ],
424 "distName": "aws-cdk.aws-iam",
425 "module": "aws_cdk.aws_iam"
426 }
427 }
428 },
429 "@aws-cdk/aws-kms": {
430 "targets": {
431 "dotnet": {
432 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
433 "namespace": "Amazon.CDK.AWS.KMS",
434 "packageId": "Amazon.CDK.AWS.KMS"
435 },
436 "java": {
437 "maven": {
438 "artifactId": "kms",
439 "groupId": "software.amazon.awscdk"
440 },
441 "package": "software.amazon.awscdk.services.kms"
442 },
443 "js": {
444 "npm": "@aws-cdk/aws-kms"
445 },
446 "python": {
447 "classifiers": [
448 "Framework :: AWS CDK",
449 "Framework :: AWS CDK :: 1"
450 ],
451 "distName": "aws-cdk.aws-kms",
452 "module": "aws_cdk.aws_kms"
453 }
454 }
455 },
456 "@aws-cdk/aws-lambda": {
457 "targets": {
458 "dotnet": {
459 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
460 "namespace": "Amazon.CDK.AWS.Lambda",
461 "packageId": "Amazon.CDK.AWS.Lambda"
462 },
463 "java": {
464 "maven": {
465 "artifactId": "lambda",
466 "groupId": "software.amazon.awscdk"
467 },
468 "package": "software.amazon.awscdk.services.lambda"
469 },
470 "js": {
471 "npm": "@aws-cdk/aws-lambda"
472 },
473 "python": {
474 "classifiers": [
475 "Framework :: AWS CDK",
476 "Framework :: AWS CDK :: 1"
477 ],
478 "distName": "aws-cdk.aws-lambda",
479 "module": "aws_cdk.aws_lambda"
480 }
481 }
482 },
483 "@aws-cdk/aws-logs": {
484 "targets": {
485 "dotnet": {
486 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
487 "namespace": "Amazon.CDK.AWS.Logs",
488 "packageId": "Amazon.CDK.AWS.Logs"
489 },
490 "java": {
491 "maven": {
492 "artifactId": "logs",
493 "groupId": "software.amazon.awscdk"
494 },
495 "package": "software.amazon.awscdk.services.logs"
496 },
497 "js": {
498 "npm": "@aws-cdk/aws-logs"
499 },
500 "python": {
501 "classifiers": [
502 "Framework :: AWS CDK",
503 "Framework :: AWS CDK :: 1"
504 ],
505 "distName": "aws-cdk.aws-logs",
506 "module": "aws_cdk.aws_logs"
507 }
508 }
509 },
510 "@aws-cdk/aws-route53": {
511 "targets": {
512 "dotnet": {
513 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
514 "namespace": "Amazon.CDK.AWS.Route53",
515 "packageId": "Amazon.CDK.AWS.Route53"
516 },
517 "java": {
518 "maven": {
519 "artifactId": "route53",
520 "groupId": "software.amazon.awscdk"
521 },
522 "package": "software.amazon.awscdk.services.route53"
523 },
524 "js": {
525 "npm": "@aws-cdk/aws-route53"
526 },
527 "python": {
528 "classifiers": [
529 "Framework :: AWS CDK",
530 "Framework :: AWS CDK :: 1"
531 ],
532 "distName": "aws-cdk.aws-route53",
533 "module": "aws_cdk.aws_route53"
534 }
535 }
536 },
537 "@aws-cdk/aws-s3": {
538 "targets": {
539 "dotnet": {
540 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
541 "namespace": "Amazon.CDK.AWS.S3",
542 "packageId": "Amazon.CDK.AWS.S3"
543 },
544 "java": {
545 "maven": {
546 "artifactId": "s3",
547 "groupId": "software.amazon.awscdk"
548 },
549 "package": "software.amazon.awscdk.services.s3"
550 },
551 "js": {
552 "npm": "@aws-cdk/aws-s3"
553 },
554 "python": {
555 "classifiers": [
556 "Framework :: AWS CDK",
557 "Framework :: AWS CDK :: 1"
558 ],
559 "distName": "aws-cdk.aws-s3",
560 "module": "aws_cdk.aws_s3"
561 }
562 }
563 },
564 "@aws-cdk/aws-s3-assets": {
565 "targets": {
566 "dotnet": {
567 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
568 "namespace": "Amazon.CDK.AWS.S3.Assets",
569 "packageId": "Amazon.CDK.AWS.S3.Assets"
570 },
571 "java": {
572 "maven": {
573 "artifactId": "s3-assets",
574 "groupId": "software.amazon.awscdk"
575 },
576 "package": "software.amazon.awscdk.services.s3.assets"
577 },
578 "js": {
579 "npm": "@aws-cdk/aws-s3-assets"
580 },
581 "python": {
582 "classifiers": [
583 "Framework :: AWS CDK",
584 "Framework :: AWS CDK :: 1"
585 ],
586 "distName": "aws-cdk.aws-s3-assets",
587 "module": "aws_cdk.aws_s3_assets"
588 }
589 }
590 },
591 "@aws-cdk/aws-signer": {
592 "targets": {
593 "dotnet": {
594 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
595 "namespace": "Amazon.CDK.AWS.Signer",
596 "packageId": "Amazon.CDK.AWS.Signer"
597 },
598 "java": {
599 "maven": {
600 "artifactId": "signer",
601 "groupId": "software.amazon.awscdk"
602 },
603 "package": "software.amazon.awscdk.services.signer"
604 },
605 "js": {
606 "npm": "@aws-cdk/aws-signer"
607 },
608 "python": {
609 "classifiers": [
610 "Framework :: AWS CDK",
611 "Framework :: AWS CDK :: 1"
612 ],
613 "distName": "aws-cdk.aws-signer",
614 "module": "aws_cdk.aws_signer"
615 }
616 }
617 },
618 "@aws-cdk/aws-sns": {
619 "targets": {
620 "dotnet": {
621 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
622 "namespace": "Amazon.CDK.AWS.SNS",
623 "packageId": "Amazon.CDK.AWS.SNS"
624 },
625 "java": {
626 "maven": {
627 "artifactId": "sns",
628 "groupId": "software.amazon.awscdk"
629 },
630 "package": "software.amazon.awscdk.services.sns"
631 },
632 "js": {
633 "npm": "@aws-cdk/aws-sns"
634 },
635 "python": {
636 "classifiers": [
637 "Framework :: AWS CDK",
638 "Framework :: AWS CDK :: 1"
639 ],
640 "distName": "aws-cdk.aws-sns",
641 "module": "aws_cdk.aws_sns"
642 }
643 }
644 },
645 "@aws-cdk/aws-sqs": {
646 "targets": {
647 "dotnet": {
648 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
649 "namespace": "Amazon.CDK.AWS.SQS",
650 "packageId": "Amazon.CDK.AWS.SQS"
651 },
652 "java": {
653 "maven": {
654 "artifactId": "sqs",
655 "groupId": "software.amazon.awscdk"
656 },
657 "package": "software.amazon.awscdk.services.sqs"
658 },
659 "js": {
660 "npm": "@aws-cdk/aws-sqs"
661 },
662 "python": {
663 "classifiers": [
664 "Framework :: AWS CDK",
665 "Framework :: AWS CDK :: 1"
666 ],
667 "distName": "aws-cdk.aws-sqs",
668 "module": "aws_cdk.aws_sqs"
669 }
670 }
671 },
672 "@aws-cdk/aws-ssm": {
673 "targets": {
674 "dotnet": {
675 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
676 "namespace": "Amazon.CDK.AWS.SSM",
677 "packageId": "Amazon.CDK.AWS.SSM"
678 },
679 "java": {
680 "maven": {
681 "artifactId": "ssm",
682 "groupId": "software.amazon.awscdk"
683 },
684 "package": "software.amazon.awscdk.services.ssm"
685 },
686 "js": {
687 "npm": "@aws-cdk/aws-ssm"
688 },
689 "python": {
690 "classifiers": [
691 "Framework :: AWS CDK",
692 "Framework :: AWS CDK :: 1"
693 ],
694 "distName": "aws-cdk.aws-ssm",
695 "module": "aws_cdk.aws_ssm"
696 }
697 }
698 },
699 "@aws-cdk/cloud-assembly-schema": {
700 "targets": {
701 "dotnet": {
702 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
703 "namespace": "Amazon.CDK.CloudAssembly.Schema",
704 "packageId": "Amazon.CDK.CloudAssembly.Schema"
705 },
706 "java": {
707 "maven": {
708 "artifactId": "cdk-cloud-assembly-schema",
709 "groupId": "software.amazon.awscdk"
710 },
711 "package": "software.amazon.awscdk.cloudassembly.schema"
712 },
713 "js": {
714 "npm": "@aws-cdk/cloud-assembly-schema"
715 },
716 "python": {
717 "classifiers": [
718 "Framework :: AWS CDK",
719 "Framework :: AWS CDK :: 1"
720 ],
721 "distName": "aws-cdk.cloud-assembly-schema",
722 "module": "aws_cdk.cloud_assembly_schema"
723 }
724 }
725 },
726 "@aws-cdk/core": {
727 "targets": {
728 "dotnet": {
729 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
730 "namespace": "Amazon.CDK",
731 "packageId": "Amazon.CDK"
732 },
733 "java": {
734 "maven": {
735 "artifactId": "core",
736 "groupId": "software.amazon.awscdk"
737 },
738 "package": "software.amazon.awscdk.core"
739 },
740 "js": {
741 "npm": "@aws-cdk/core"
742 },
743 "python": {
744 "classifiers": [
745 "Framework :: AWS CDK",
746 "Framework :: AWS CDK :: 1"
747 ],
748 "distName": "aws-cdk.core",
749 "module": "aws_cdk.core"
750 }
751 }
752 },
753 "@aws-cdk/custom-resources": {
754 "targets": {
755 "dotnet": {
756 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
757 "namespace": "Amazon.CDK.CustomResources",
758 "packageId": "Amazon.CDK.AWS.CustomResources"
759 },
760 "java": {
761 "maven": {
762 "artifactId": "cdk-customresources",
763 "groupId": "software.amazon.awscdk"
764 },
765 "package": "software.amazon.awscdk.customresources"
766 },
767 "js": {
768 "npm": "@aws-cdk/custom-resources"
769 },
770 "python": {
771 "classifiers": [
772 "Framework :: AWS CDK",
773 "Framework :: AWS CDK :: 1"
774 ],
775 "distName": "aws-cdk.custom-resources",
776 "module": "aws_cdk.custom_resources"
777 }
778 }
779 },
780 "@aws-cdk/cx-api": {
781 "targets": {
782 "dotnet": {
783 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
784 "namespace": "Amazon.CDK.CXAPI",
785 "packageId": "Amazon.CDK.CXAPI"
786 },
787 "java": {
788 "maven": {
789 "artifactId": "cdk-cx-api",
790 "groupId": "software.amazon.awscdk"
791 },
792 "package": "software.amazon.awscdk.cxapi"
793 },
794 "js": {
795 "npm": "@aws-cdk/cx-api"
796 },
797 "python": {
798 "classifiers": [
799 "Framework :: AWS CDK",
800 "Framework :: AWS CDK :: 1"
801 ],
802 "distName": "aws-cdk.cx-api",
803 "module": "aws_cdk.cx_api"
804 }
805 }
806 },
807 "@aws-cdk/region-info": {
808 "targets": {
809 "dotnet": {
810 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
811 "namespace": "Amazon.CDK.RegionInfo",
812 "packageId": "Amazon.CDK.RegionInfo"
813 },
814 "java": {
815 "maven": {
816 "artifactId": "cdk-region-info",
817 "groupId": "software.amazon.awscdk"
818 },
819 "package": "software.amazon.awscdk.regioninfo"
820 },
821 "js": {
822 "npm": "@aws-cdk/region-info"
823 },
824 "python": {
825 "classifiers": [
826 "Framework :: AWS CDK",
827 "Framework :: AWS CDK :: 1"
828 ],
829 "distName": "aws-cdk.region-info",
830 "module": "aws_cdk.region_info"
831 }
832 }
833 },
834 "constructs": {
835 "targets": {
836 "dotnet": {
837 "namespace": "Constructs",
838 "packageId": "Constructs"
839 },
840 "go": {
841 "moduleName": "github.com/aws/constructs-go"
842 },
843 "java": {
844 "maven": {
845 "artifactId": "constructs",
846 "groupId": "software.constructs"
847 },
848 "package": "software.constructs"
849 },
850 "js": {
851 "npm": "constructs"
852 },
853 "python": {
854 "distName": "constructs",
855 "module": "constructs"
856 }
857 }
858 }
859 },
860 "description": "The CDK Construct Library for AWS::CloudFront",
861 "docs": {
862 "stability": "stable"
863 },
864 "homepage": "https://github.com/aws/aws-cdk",
865 "jsiiVersion": "1.58.0 (build f8ba112)",
866 "keywords": [
867 "aws",
868 "cdk",
869 "constructs",
870 "cloudfront"
871 ],
872 "license": "Apache-2.0",
873 "metadata": {
874 "jsii": {
875 "compiledWithDeprecationWarnings": true,
876 "pacmak": {
877 "hasDefaultInterfaces": true
878 },
879 "rosetta": {
880 "strict": true
881 }
882 }
883 },
884 "name": "@aws-cdk/aws-cloudfront",
885 "readme": {
886 "markdown": "# Amazon CloudFront Construct Library\n<!--BEGIN STABILITY BANNER-->\n\n---\n\n![cfn-resources: Stable](https://img.shields.io/badge/cfn--resources-stable-success.svg?style=for-the-badge)\n\n![cdk-constructs: Stable](https://img.shields.io/badge/cdk--constructs-stable-success.svg?style=for-the-badge)\n\n---\n\n<!--END STABILITY BANNER-->\n\nAmazon CloudFront is a web service that speeds up distribution of your static and dynamic web content, such as .html, .css, .js, and image files, to\nyour users. CloudFront delivers your content through a worldwide network of data centers called edge locations. When a user requests content that\nyou're serving with CloudFront, the user is routed to the edge location that provides the lowest latency, so that content is delivered with the best\npossible performance.\n\n## Distribution API\n\nThe `Distribution` API is currently being built to replace the existing `CloudFrontWebDistribution` API. The `Distribution` API is optimized for the\nmost common use cases of CloudFront distributions (e.g., single origin and behavior, few customizations) while still providing the ability for more\nadvanced use cases. The API focuses on simplicity for the common use cases, and convenience methods for creating the behaviors and origins necessary\nfor more complex use cases.\n\n### Creating a distribution\n\nCloudFront distributions deliver your content from one or more origins; an origin is the location where you store the original version of your\ncontent. Origins can be created from S3 buckets or a custom origin (HTTP server). Constructs to define origins are in the `@aws-cdk/aws-cloudfront-origins` module.\n\nEach distribution has a default behavior which applies to all requests to that distribution, and routes requests to a primary origin.\nAdditional behaviors may be specified for an origin with a given URL path pattern. Behaviors allow routing with multiple origins,\ncontrolling which HTTP methods to support, whether to require users to use HTTPS, and what query strings or cookies to forward to your origin,\namong other settings.\n\n#### From an S3 Bucket\n\nAn S3 bucket can be added as an origin. If the bucket is configured as a website endpoint, the distribution can use S3 redirects and S3 custom error\ndocuments.\n\n```ts\n// Creates a distribution from an S3 bucket.\nconst myBucket = new s3.Bucket(this, 'myBucket');\nnew cloudfront.Distribution(this, 'myDist', {\n defaultBehavior: { origin: new origins.S3Origin(myBucket) },\n});\n```\n\nThe above will treat the bucket differently based on if `IBucket.isWebsite` is set or not. If the bucket is configured as a website, the bucket is\ntreated as an HTTP origin, and the built-in S3 redirects and error pages can be used. Otherwise, the bucket is handled as a bucket origin and\nCloudFront's redirect and error handling will be used. In the latter case, the Origin will create an origin access identity and grant it access to the\nunderlying bucket. This can be used in conjunction with a bucket that is not public to require that your users access your content using CloudFront\nURLs and not S3 URLs directly.\n\n#### ELBv2 Load Balancer\n\nAn Elastic Load Balancing (ELB) v2 load balancer may be used as an origin. In order for a load balancer to serve as an origin, it must be publicly\naccessible (`internetFacing` is true). Both Application and Network load balancers are supported.\n\n```ts\n// Creates a distribution from an ELBv2 load balancer\ndeclare const vpc: ec2.Vpc;\n// Create an application load balancer in a VPC. 'internetFacing' must be 'true'\n// for CloudFront to access the load balancer and use it as an origin.\nconst lb = new elbv2.ApplicationLoadBalancer(this, 'LB', {\n vpc,\n internetFacing: true,\n});\nnew cloudfront.Distribution(this, 'myDist', {\n defaultBehavior: { origin: new origins.LoadBalancerV2Origin(lb) },\n});\n```\n\n#### From an HTTP endpoint\n\nOrigins can also be created from any other HTTP endpoint, given the domain name, and optionally, other origin properties.\n\n```ts\n// Creates a distribution from an HTTP endpoint\nnew cloudfront.Distribution(this, 'myDist', {\n defaultBehavior: { origin: new origins.HttpOrigin('www.example.com') },\n});\n```\n\n### Domain Names and Certificates\n\nWhen you create a distribution, CloudFront assigns a domain name for the distribution, for example: `d111111abcdef8.cloudfront.net`; this value can\nbe retrieved from `distribution.distributionDomainName`. CloudFront distributions use a default certificate (`*.cloudfront.net`) to support HTTPS by\ndefault. If you want to use your own domain name, such as `www.example.com`, you must associate a certificate with your distribution that contains\nyour domain name, and provide one (or more) domain names from the certificate for the distribution.\n\nThe certificate must be present in the AWS Certificate Manager (ACM) service in the US East (N. Virginia) region; the certificate\nmay either be created by ACM, or created elsewhere and imported into ACM. When a certificate is used, the distribution will support HTTPS connections\nfrom SNI only and a minimum protocol version of TLSv1.2_2021 if the `@aws-cdk/aws-cloudfront:defaultSecurityPolicyTLSv1.2_2021` feature flag is set, and TLSv1.2_2019 otherwise.\n\n```ts\n// To use your own domain name in a Distribution, you must associate a certificate\nimport * as acm from '@aws-cdk/aws-certificatemanager';\nimport * as route53 from '@aws-cdk/aws-route53';\n\ndeclare const hostedZone: route53.HostedZone;\nconst myCertificate = new acm.DnsValidatedCertificate(this, 'mySiteCert', {\n domainName: 'www.example.com',\n hostedZone,\n});\n\ndeclare const myBucket: s3.Bucket;\nnew cloudfront.Distribution(this, 'myDist', {\n defaultBehavior: { origin: new origins.S3Origin(myBucket) },\n domainNames: ['www.example.com'],\n certificate: myCertificate,\n});\n```\n\nHowever, you can customize the minimum protocol version for the certificate while creating the distribution using `minimumProtocolVersion` property.\n\n```ts\n// Create a Distribution with a custom domain name and a minimum protocol version.\ndeclare const myBucket: s3.Bucket;\nnew cloudfront.Distribution(this, 'myDist', {\n defaultBehavior: { origin: new origins.S3Origin(myBucket) },\n domainNames: ['www.example.com'],\n minimumProtocolVersion: cloudfront.SecurityPolicyProtocol.TLS_V1_2016,\n sslSupportMethod: cloudfront.SSLMethod.SNI,\n});\n```\n\n### Multiple Behaviors & Origins\n\nEach distribution has a default behavior which applies to all requests to that distribution; additional behaviors may be specified for a\ngiven URL path pattern. Behaviors allow routing with multiple origins, controlling which HTTP methods to support, whether to require users to\nuse HTTPS, and what query strings or cookies to forward to your origin, among others.\n\nThe properties of the default behavior can be adjusted as part of the distribution creation. The following example shows configuring the HTTP\nmethods and viewer protocol policy of the cache.\n\n```ts\n// Create a Distribution with configured HTTP methods and viewer protocol policy of the cache.\ndeclare const myBucket: s3.Bucket;\nconst myWebDistribution = new cloudfront.Distribution(this, 'myDist', {\n defaultBehavior: {\n origin: new origins.S3Origin(myBucket),\n allowedMethods: cloudfront.AllowedMethods.ALLOW_ALL,\n viewerProtocolPolicy: cloudfront.ViewerProtocolPolicy.REDIRECT_TO_HTTPS,\n },\n});\n```\n\nAdditional behaviors can be specified at creation, or added after the initial creation. Each additional behavior is associated with an origin,\nand enable customization for a specific set of resources based on a URL path pattern. For example, we can add a behavior to `myWebDistribution` to\noverride the default viewer protocol policy for all of the images.\n\n```ts\n// Add a behavior to a Distribution after initial creation.\ndeclare const myBucket: s3.Bucket;\ndeclare const myWebDistribution: cloudfront.Distribution;\nmyWebDistribution.addBehavior('/images/*.jpg', new origins.S3Origin(myBucket), {\n viewerProtocolPolicy: cloudfront.ViewerProtocolPolicy.REDIRECT_TO_HTTPS,\n});\n```\n\nThese behaviors can also be specified at distribution creation time.\n\n```ts\n// Create a Distribution with additional behaviors at creation time.\ndeclare const myBucket: s3.Bucket;\nconst bucketOrigin = new origins.S3Origin(myBucket);\nnew cloudfront.Distribution(this, 'myDist', {\n defaultBehavior: {\n origin: bucketOrigin,\n allowedMethods: cloudfront.AllowedMethods.ALLOW_ALL,\n viewerProtocolPolicy: cloudfront.ViewerProtocolPolicy.REDIRECT_TO_HTTPS,\n },\n additionalBehaviors: {\n '/images/*.jpg': {\n origin: bucketOrigin,\n viewerProtocolPolicy: cloudfront.ViewerProtocolPolicy.REDIRECT_TO_HTTPS,\n },\n },\n});\n```\n\n### Customizing Cache Keys and TTLs with Cache Policies\n\nYou can use a cache policy to improve your cache hit ratio by controlling the values (URL query strings, HTTP headers, and cookies)\nthat are included in the cache key, and/or adjusting how long items remain in the cache via the time-to-live (TTL) settings.\nCloudFront provides some predefined cache policies, known as managed policies, for common use cases. You can use these managed policies,\nor you can create your own cache policy that’s specific to your needs.\nSee https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html for more details.\n\n```ts\n// Using an existing cache policy for a Distribution\ndeclare const bucketOrigin: origins.S3Origin;\nnew cloudfront.Distribution(this, 'myDistManagedPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n cachePolicy: cloudfront.CachePolicy.CACHING_OPTIMIZED,\n },\n});\n```\n\n```ts\n// Creating a custom cache policy for a Distribution -- all parameters optional\ndeclare const bucketOrigin: origins.S3Origin;\nconst myCachePolicy = new cloudfront.CachePolicy(this, 'myCachePolicy', {\n cachePolicyName: 'MyPolicy',\n comment: 'A default policy',\n defaultTtl: Duration.days(2),\n minTtl: Duration.minutes(1),\n maxTtl: Duration.days(10),\n cookieBehavior: cloudfront.CacheCookieBehavior.all(),\n headerBehavior: cloudfront.CacheHeaderBehavior.allowList('X-CustomHeader'),\n queryStringBehavior: cloudfront.CacheQueryStringBehavior.denyList('username'),\n enableAcceptEncodingGzip: true,\n enableAcceptEncodingBrotli: true,\n});\nnew cloudfront.Distribution(this, 'myDistCustomPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n cachePolicy: myCachePolicy,\n },\n});\n```\n\n### Customizing Origin Requests with Origin Request Policies\n\nWhen CloudFront makes a request to an origin, the URL path, request body (if present), and a few standard headers are included.\nOther information from the viewer request, such as URL query strings, HTTP headers, and cookies, is not included in the origin request by default.\nYou can use an origin request policy to control the information that’s included in an origin request.\nCloudFront provides some predefined origin request policies, known as managed policies, for common use cases. You can use these managed policies,\nor you can create your own origin request policy that’s specific to your needs.\nSee https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html for more details.\n\n```ts\n// Using an existing origin request policy for a Distribution\ndeclare const bucketOrigin: origins.S3Origin;\nnew cloudfront.Distribution(this, 'myDistManagedPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n originRequestPolicy: cloudfront.OriginRequestPolicy.CORS_S3_ORIGIN,\n },\n});\n```\n\n```ts\n// Creating a custom origin request policy for a Distribution -- all parameters optional\ndeclare const bucketOrigin: origins.S3Origin;\nconst myOriginRequestPolicy = new cloudfront.OriginRequestPolicy(this, 'OriginRequestPolicy', {\n originRequestPolicyName: 'MyPolicy',\n comment: 'A default policy',\n cookieBehavior: cloudfront.OriginRequestCookieBehavior.none(),\n headerBehavior: cloudfront.OriginRequestHeaderBehavior.all('CloudFront-Is-Android-Viewer'),\n queryStringBehavior: cloudfront.OriginRequestQueryStringBehavior.allowList('username'),\n});\n\nnew cloudfront.Distribution(this, 'myDistCustomPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n originRequestPolicy: myOriginRequestPolicy,\n },\n});\n```\n\n### Customizing Response Headers with Response Headers Policies\n\nYou can configure CloudFront to add one or more HTTP headers to the responses that it sends to viewers (web browsers or other clients), without making any changes to the origin or writing any code.\nTo specify the headers that CloudFront adds to HTTP responses, you use a response headers policy. CloudFront adds the headers regardless of whether it serves the object from the cache or has to retrieve the object from the origin. If the origin response includes one or more of the headers that’s in a response headers policy, the policy can specify whether CloudFront uses the header it received from the origin or overwrites it with the one in the policy.\nSee https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/adding-response-headers.html\n\n```ts\n// Using an existing managed response headers policy\ndeclare const bucketOrigin: origins.S3Origin;\nnew cloudfront.Distribution(this, 'myDistManagedPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n responseHeadersPolicy: cloudfront.ResponseHeadersPolicy.CORS_ALLOW_ALL_ORIGINS,\n },\n});\n\n// Creating a custom response headers policy -- all parameters optional\nconst myResponseHeadersPolicy = new cloudfront.ResponseHeadersPolicy(this, 'ResponseHeadersPolicy', {\n responseHeadersPolicyName: 'MyPolicy',\n comment: 'A default policy',\n corsBehavior: {\n accessControlAllowCredentials: false,\n accessControlAllowHeaders: ['X-Custom-Header-1', 'X-Custom-Header-2'],\n accessControlAllowMethods: ['GET', 'POST'],\n accessControlAllowOrigins: ['*'],\n accessControlExposeHeaders: ['X-Custom-Header-1', 'X-Custom-Header-2'],\n accessControlMaxAge: Duration.seconds(600),\n originOverride: true,\n },\n customHeadersBehavior: {\n customHeaders: [\n { header: 'X-Amz-Date', value: 'some-value', override: true },\n { header: 'X-Amz-Security-Token', value: 'some-value', override: false },\n ],\n },\n securityHeadersBehavior: {\n contentSecurityPolicy: { contentSecurityPolicy: 'default-src https:;', override: true },\n contentTypeOptions: { override: true },\n frameOptions: { frameOption: cloudfront.HeadersFrameOption.DENY, override: true },\n referrerPolicy: { referrerPolicy: cloudfront.HeadersReferrerPolicy.NO_REFERRER, override: true },\n strictTransportSecurity: { accessControlMaxAge: Duration.seconds(600), includeSubdomains: true, override: true },\n xssProtection: { protection: true, modeBlock: true, reportUri: 'https://example.com/csp-report', override: true },\n },\n});\nnew cloudfront.Distribution(this, 'myDistCustomPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n responseHeadersPolicy: myResponseHeadersPolicy,\n },\n});\n```\n\n### Validating signed URLs or signed cookies with Trusted Key Groups\n\nCloudFront Distribution supports validating signed URLs or signed cookies using key groups.\nWhen a cache behavior contains trusted key groups, CloudFront requires signed URLs or signed\ncookies for all requests that match the cache behavior.\n\n```ts\n// Validating signed URLs or signed cookies with Trusted Key Groups\n\n// public key in PEM format\ndeclare const publicKey: string;\nconst pubKey = new cloudfront.PublicKey(this, 'MyPubKey', {\n encodedKey: publicKey,\n});\n\nconst keyGroup = new cloudfront.KeyGroup(this, 'MyKeyGroup', {\n items: [\n pubKey,\n ],\n});\n\nnew cloudfront.Distribution(this, 'Dist', {\n defaultBehavior: {\n origin: new origins.HttpOrigin('www.example.com'),\n trustedKeyGroups: [\n keyGroup,\n ],\n },\n});\n```\n\n### Lambda@Edge\n\nLambda@Edge is an extension of AWS Lambda, a compute service that lets you execute\nfunctions that customize the content that CloudFront delivers. You can author Node.js\nor Python functions in the US East (N. Virginia) region, and then execute them in AWS\nlocations globally that are closer to the viewer, without provisioning or managing servers.\nLambda@Edge functions are associated with a specific behavior and event type. Lambda@Edge\ncan be used to rewrite URLs, alter responses based on headers or cookies, or authorize\nrequests based on headers or authorization tokens.\n\nThe following shows a Lambda@Edge function added to the default behavior and triggered\non every request:\n\n```ts\n// A Lambda@Edge function added to default behavior of a Distribution\n// and triggered on every request\nconst myFunc = new cloudfront.experimental.EdgeFunction(this, 'MyFunction', {\n runtime: lambda.Runtime.NODEJS_12_X,\n handler: 'index.handler',\n code: lambda.Code.fromAsset(path.join(__dirname, 'lambda-handler')),\n});\n\ndeclare const myBucket: s3.Bucket;\nnew cloudfront.Distribution(this, 'myDist', {\n defaultBehavior: {\n origin: new origins.S3Origin(myBucket),\n edgeLambdas: [\n {\n functionVersion: myFunc.currentVersion,\n eventType: cloudfront.LambdaEdgeEventType.VIEWER_REQUEST,\n }\n ],\n },\n});\n```\n\n> **Note:** Lambda@Edge functions must be created in the `us-east-1` region, regardless of the region of the CloudFront distribution and stack.\n> To make it easier to request functions for Lambda@Edge, the `EdgeFunction` construct can be used.\n> The `EdgeFunction` construct will automatically request a function in `us-east-1`, regardless of the region of the current stack.\n> `EdgeFunction` has the same interface as `Function` and can be created and used interchangeably.\n> Please note that using `EdgeFunction` requires that the `us-east-1` region has been bootstrapped.\n> See https://docs.aws.amazon.com/cdk/latest/guide/bootstrapping.html for more about bootstrapping regions.\n\nIf the stack is in `us-east-1`, a \"normal\" `lambda.Function` can be used instead of an `EdgeFunction`.\n\n```ts\n// Using a lambda Function instead of an EdgeFunction for stacks in `us-east-`.\nconst myFunc = new lambda.Function(this, 'MyFunction', {\n runtime: lambda.Runtime.NODEJS_12_X,\n handler: 'index.handler',\n code: lambda.Code.fromAsset(path.join(__dirname, 'lambda-handler')),\n});\n```\n\nIf the stack is not in `us-east-1`, and you need references from different applications on the same account,\nyou can also set a specific stack ID for each Lambda@Edge.\n\n```ts\n// Setting stackIds for EdgeFunctions that can be referenced from different applications\n// on the same account.\nconst myFunc1 = new cloudfront.experimental.EdgeFunction(this, 'MyFunction1', {\n runtime: lambda.Runtime.NODEJS_12_X,\n handler: 'index.handler',\n code: lambda.Code.fromAsset(path.join(__dirname, 'lambda-handler1')),\n stackId: 'edge-lambda-stack-id-1',\n});\n\nconst myFunc2 = new cloudfront.experimental.EdgeFunction(this, 'MyFunction2', {\n runtime: lambda.Runtime.NODEJS_12_X,\n handler: 'index.handler',\n code: lambda.Code.fromAsset(path.join(__dirname, 'lambda-handler2')),\n stackId: 'edge-lambda-stack-id-2',\n});\n```\n\nLambda@Edge functions can also be associated with additional behaviors,\neither at or after Distribution creation time.\n\n```ts\n// Associating a Lambda@Edge function with additional behaviors.\n\ndeclare const myFunc: cloudfront.experimental.EdgeFunction;\n// assigning at Distribution creation\ndeclare const myBucket: s3.Bucket;\nconst myOrigin = new origins.S3Origin(myBucket);\nconst myDistribution = new cloudfront.Distribution(this, 'myDist', {\n defaultBehavior: { origin: myOrigin },\n additionalBehaviors: {\n 'images/*': {\n origin: myOrigin,\n edgeLambdas: [\n {\n functionVersion: myFunc.currentVersion,\n eventType: cloudfront.LambdaEdgeEventType.ORIGIN_REQUEST,\n includeBody: true, // Optional - defaults to false\n },\n ],\n },\n },\n});\n\n// assigning after creation\nmyDistribution.addBehavior('images/*', myOrigin, {\n edgeLambdas: [\n {\n functionVersion: myFunc.currentVersion,\n eventType: cloudfront.LambdaEdgeEventType.VIEWER_RESPONSE,\n },\n ],\n});\n```\n\nAdding an existing Lambda@Edge function created in a different stack to a CloudFront distribution.\n\n```ts\n// Adding an existing Lambda@Edge function created in a different stack\n// to a CloudFront distribution.\ndeclare const s3Bucket: s3.Bucket;\nconst functionVersion = lambda.Version.fromVersionArn(this, 'Version', 'arn:aws:lambda:us-east-1:123456789012:function:functionName:1');\n\nnew cloudfront.Distribution(this, 'distro', {\n defaultBehavior: {\n origin: new origins.S3Origin(s3Bucket),\n edgeLambdas: [\n {\n functionVersion,\n eventType: cloudfront.LambdaEdgeEventType.VIEWER_REQUEST,\n },\n ],\n },\n});\n```\n\n### CloudFront Function\n\nYou can also deploy CloudFront functions and add them to a CloudFront distribution.\n\n```ts\n// Add a cloudfront Function to a Distribution\nconst cfFunction = new cloudfront.Function(this, 'Function', {\n code: cloudfront.FunctionCode.fromInline('function handler(event) { return event.request }'),\n});\n\ndeclare const s3Bucket: s3.Bucket;\nnew cloudfront.Distribution(this, 'distro', {\n defaultBehavior: {\n origin: new origins.S3Origin(s3Bucket),\n functionAssociations: [{\n function: cfFunction,\n eventType: cloudfront.FunctionEventType.VIEWER_REQUEST,\n }],\n },\n});\n```\n\nIt will auto-generate the name of the function and deploy it to the `live` stage.\n\nAdditionally, you can load the function's code from a file using the `FunctionCode.fromFile()` method.\n\n### Logging\n\nYou can configure CloudFront to create log files that contain detailed information about every user request that CloudFront receives.\nThe logs can go to either an existing bucket, or a bucket will be created for you.\n\n```ts\n// Configure logging for Distributions\n\n// Simplest form - creates a new bucket and logs to it.\nnew cloudfront.Distribution(this, 'myDist', {\n defaultBehavior: { origin: new origins.HttpOrigin('www.example.com') },\n enableLogging: true,\n});\n\n// You can optionally log to a specific bucket, configure whether cookies are logged, and give the log files a prefix.\nnew cloudfront.Distribution(this, 'myDist', {\n defaultBehavior: { origin: new origins.HttpOrigin('www.example.com') },\n enableLogging: true, // Optional, this is implied if logBucket is specified\n logBucket: new s3.Bucket(this, 'LogBucket'),\n logFilePrefix: 'distribution-access-logs/',\n logIncludesCookies: true,\n});\n```\n\n### Importing Distributions\n\nExisting distributions can be imported as well; note that like most imported constructs, an imported distribution cannot be modified.\nHowever, it can be used as a reference for other higher-level constructs.\n\n```ts\n// Using a reference to an imported Distribution\nconst distribution = cloudfront.Distribution.fromDistributionAttributes(this, 'ImportedDist', {\n domainName: 'd111111abcdef8.cloudfront.net',\n distributionId: '012345ABCDEF',\n});\n```\n\n## Migrating from the original CloudFrontWebDistribution to the newer Distribution construct\n\nIt's possible to migrate a distribution from the original to the modern API.\nThe changes necessary are the following:\n\n### The Distribution\n\nReplace `new CloudFrontWebDistribution` with `new Distribution`. Some\nconfiguration properties have been changed:\n\n| Old API | New API |\n|--------------------------------|------------------------------------------------------------------------------------------------|\n| `originConfigs` | `defaultBehavior`; use `additionalBehaviors` if necessary |\n| `viewerCertificate` | `certificate`; use `domainNames` for aliases |\n| `errorConfigurations` | `errorResponses` |\n| `loggingConfig` | `enableLogging`; configure with `logBucket` `logFilePrefix` and `logIncludesCookies` |\n| `viewerProtocolPolicy` | removed; set on each behavior instead. default changed from `REDIRECT_TO_HTTPS` to `ALLOW_ALL` |\n\nAfter switching constructs, you need to maintain the same logical ID for the underlying [CfnDistribution](https://docs.aws.amazon.com/cdk/api/v1/docs/@aws-cdk_aws-cloudfront.CfnDistribution.html) if you wish to avoid the deletion and recreation of your distribution.\nTo do this, use [escape hatches](https://docs.aws.amazon.com/cdk/v2/guide/cfn_layer.html) to override the logical ID created by the new Distribution construct with the logical ID created by the old construct.\n\nExample:\n\n```ts\ndeclare const sourceBucket: s3.Bucket;\n\nconst myDistribution = new cloudfront.Distribution(this, 'MyCfWebDistribution', {\n defaultBehavior: {\n origin: new origins.S3Origin(sourceBucket),\n },\n});\nconst cfnDistribution = myDistribution.node.defaultChild as cloudfront.CfnDistribution;\ncfnDistribution.overrideLogicalId('MyDistributionCFDistribution3H55TI9Q');\n```\n\n### Behaviors\n\nThe modern API makes use of the [CloudFront Origins](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_cloudfront_origins-readme.html) module to easily configure your origin. Replace your origin configuration with the relevant CloudFront Origins class. For example, here's a behavior with an S3 origin:\n\n```ts\ndeclare const sourceBucket: s3.Bucket;\ndeclare const oai: cloudfront.OriginAccessIdentity;\n\nnew cloudfront.CloudFrontWebDistribution(this, 'MyCfWebDistribution', {\n originConfigs: [\n {\n s3OriginSource: {\n s3BucketSource: sourceBucket,\n originAccessIdentity: oai,\n },\n behaviors : [ {isDefaultBehavior: true}],\n },\n ],\n});\n```\n\nBecomes:\n\n```ts\ndeclare const sourceBucket: s3.Bucket;\n\nconst distribution = new cloudfront.Distribution(this, 'MyCfWebDistribution', {\n defaultBehavior: {\n origin: new origins.S3Origin(sourceBucket) // This class automatically creates an Origin Access Identity\n },\n});\n```\n\nIn the original API all behaviors are defined in the `originConfigs` property. The new API is optimized for a single origin and behavior, so the default behavior and additional behaviors will be defined separately.\n\n```ts\ndeclare const sourceBucket: s3.Bucket;\ndeclare const oai: cloudfront.OriginAccessIdentity;\n\nnew cloudfront.CloudFrontWebDistribution(this, 'MyCfWebDistribution', {\n originConfigs: [\n {\n s3OriginSource: {\n s3BucketSource: sourceBucket,\n originAccessIdentity: oai,\n },\n behaviors: [ {isDefaultBehavior: true}],\n },\n {\n customOriginSource: {\n domainName: 'MYALIAS',\n },\n behaviors: [{ pathPattern: '/somewhere' }]\n }\n ],\n});\n```\n\nBecomes:\n\n```ts\ndeclare const sourceBucket: s3.Bucket;\n\nconst distribution = new cloudfront.Distribution(this, 'MyCfWebDistribution', {\n defaultBehavior: {\n origin: new origins.S3Origin(sourceBucket) // This class automatically creates an Origin Access Identity\n },\n additionalBehaviors: {\n '/somewhere': {\n origin: new origins.HttpOrigin('MYALIAS'),\n }\n }\n});\n```\n\n### Certificates\n\nIf you are using an ACM certificate, you can pass the certificate directly to the `certificate` prop.\nAny aliases used before in the `ViewerCertificate` class should be passed in to the `domainNames` prop in the modern API.\n\n```ts\nimport * as acm from '@aws-cdk/aws-certificatemanager';\ndeclare const certificate: acm.Certificate;\ndeclare const sourceBucket: s3.Bucket;\n\nconst viewerCertificate = cloudfront.ViewerCertificate.fromAcmCertificate(certificate, {\n aliases: ['MYALIAS'],\n});\n\nnew cloudfront.CloudFrontWebDistribution(this, 'MyCfWebDistribution', {\n originConfigs: [\n {\n s3OriginSource: {\n s3BucketSource: sourceBucket,\n },\n behaviors : [ {isDefaultBehavior: true} ],\n },\n ],\n viewerCertificate: viewerCertificate,\n});\n```\n\nBecomes:\n\n```ts\nimport * as acm from '@aws-cdk/aws-certificatemanager';\ndeclare const certificate: acm.Certificate;\ndeclare const sourceBucket: s3.Bucket;\n\nconst distribution = new cloudfront.Distribution(this, 'MyCfWebDistribution', {\n defaultBehavior: {\n origin: new origins.S3Origin(sourceBucket),\n },\n domainNames: ['MYALIAS'],\n certificate: certificate,\n});\n```\n\nIAM certificates aren't directly supported by the new API, but can be easily configured through [escape hatches](https://docs.aws.amazon.com/cdk/v2/guide/cfn_layer.html)\n\n```ts\ndeclare const sourceBucket: s3.Bucket;\nconst viewerCertificate = cloudfront.ViewerCertificate.fromIamCertificate('MYIAMROLEIDENTIFIER', {\n aliases: ['MYALIAS'],\n});\n\nnew cloudfront.CloudFrontWebDistribution(this, 'MyCfWebDistribution', {\n originConfigs: [\n {\n s3OriginSource: {\n s3BucketSource: sourceBucket,\n },\n behaviors : [ {isDefaultBehavior: true} ],\n },\n ],\n viewerCertificate: viewerCertificate,\n});\n```\n\nBecomes:\n\n```ts\ndeclare const sourceBucket: s3.Bucket;\nconst distribution = new cloudfront.Distribution(this, 'MyCfWebDistribution', {\n defaultBehavior: {\n origin: new origins.S3Origin(sourceBucket),\n },\n domainNames: ['MYALIAS'],\n});\n\nconst cfnDistribution = distribution.node.defaultChild as cloudfront.CfnDistribution;\n\ncfnDistribution.addPropertyOverride('ViewerCertificate.IamCertificateId', 'MYIAMROLEIDENTIFIER');\ncfnDistribution.addPropertyOverride('ViewerCertificate.SslSupportMethod', 'sni-only');\n```\n\n### Other changes\n\nA number of default settings have changed on the new API when creating a new distribution, behavior, and origin.\nAfter making the major changes needed for the migration, run `cdk diff` to see what settings have changed.\nIf no changes are desired during migration, you will at the least be able to use [escape hatches](https://docs.aws.amazon.com/cdk/v2/guide/cfn_layer.html) to override what the CDK synthesizes, if you can't change the properties directly.\n\n## CloudFrontWebDistribution API\n\n> The `CloudFrontWebDistribution` construct is the original construct written for working with CloudFront distributions.\n> Users are encouraged to use the newer `Distribution` instead, as it has a simpler interface and receives new features faster.\n\nExample usage:\n\n```ts\n// Using a CloudFrontWebDistribution construct.\n\ndeclare const sourceBucket: s3.Bucket;\nconst distribution = new cloudfront.CloudFrontWebDistribution(this, 'MyDistribution', {\n originConfigs: [\n {\n s3OriginSource: {\n s3BucketSource: sourceBucket,\n },\n behaviors : [ {isDefaultBehavior: true}],\n },\n ],\n});\n```\n\n### Viewer certificate\n\nBy default, CloudFront Web Distributions will answer HTTPS requests with CloudFront's default certificate,\nonly containing the distribution `domainName` (e.g. d111111abcdef8.cloudfront.net).\nYou can customize the viewer certificate property to provide a custom certificate and/or list of domain name aliases to fit your needs.\n\nSee [Using Alternate Domain Names and HTTPS](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-https-alternate-domain-names.html) in the CloudFront User Guide.\n\n#### Default certificate\n\nYou can customize the default certificate aliases. This is intended to be used in combination with CNAME records in your DNS zone.\n\nExample:\n\n```ts lit=test/example.default-cert-alias.lit.ts\n const s3BucketSource = new s3.Bucket(this, 'Bucket');\n\n const distribution = new cloudfront.CloudFrontWebDistribution(this, 'AnAmazingWebsiteProbably', {\n originConfigs: [{\n s3OriginSource: { s3BucketSource },\n behaviors: [{ isDefaultBehavior: true }],\n }],\n viewerCertificate: cloudfront.ViewerCertificate.fromCloudFrontDefaultCertificate(\n 'www.example.com',\n ),\n });\n```\n\n#### ACM certificate\n\nYou can change the default certificate by one stored AWS Certificate Manager, or ACM.\nThose certificate can either be generated by AWS, or purchased by another CA imported into ACM.\n\nFor more information, see\n[the aws-certificatemanager module documentation](https://docs.aws.amazon.com/cdk/api/latest/docs/aws-certificatemanager-readme.html)\nor [Importing Certificates into AWS Certificate Manager](https://docs.aws.amazon.com/acm/latest/userguide/import-certificate.html)\nin the AWS Certificate Manager User Guide.\n\nExample:\n\n```ts lit=test/example.acm-cert-alias.lit.ts\n const s3BucketSource = new s3.Bucket(this, 'Bucket');\n\n const certificate = new certificatemanager.Certificate(this, 'Certificate', {\n domainName: 'example.com',\n subjectAlternativeNames: ['*.example.com'],\n });\n\n const distribution = new cloudfront.CloudFrontWebDistribution(this, 'AnAmazingWebsiteProbably', {\n originConfigs: [{\n s3OriginSource: { s3BucketSource },\n behaviors: [{ isDefaultBehavior: true }],\n }],\n viewerCertificate: cloudfront.ViewerCertificate.fromAcmCertificate(\n certificate,\n {\n aliases: ['example.com', 'www.example.com'],\n securityPolicy: cloudfront.SecurityPolicyProtocol.TLS_V1, // default\n sslMethod: cloudfront.SSLMethod.SNI, // default\n },\n ),\n });\n```\n\n#### IAM certificate\n\nYou can also import a certificate into the IAM certificate store.\n\nSee [Importing an SSL/TLS Certificate](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/cnames-and-https-procedures.html#cnames-and-https-uploading-certificates) in the CloudFront User Guide.\n\nExample:\n\n```ts lit=test/example.iam-cert-alias.lit.ts\n const s3BucketSource = new s3.Bucket(this, 'Bucket');\n\n const distribution = new cloudfront.CloudFrontWebDistribution(this, 'AnAmazingWebsiteProbably', {\n originConfigs: [{\n s3OriginSource: { s3BucketSource },\n behaviors: [{ isDefaultBehavior: true }],\n }],\n viewerCertificate: cloudfront.ViewerCertificate.fromIamCertificate(\n 'certificateId',\n {\n aliases: ['example.com'],\n securityPolicy: cloudfront.SecurityPolicyProtocol.SSL_V3, // default\n sslMethod: cloudfront.SSLMethod.SNI, // default\n },\n ),\n });\n```\n\n### Trusted Key Groups\n\nCloudFront Web Distributions supports validating signed URLs or signed cookies using key groups.\nWhen a cache behavior contains trusted key groups, CloudFront requires signed URLs or signed cookies for all requests that match the cache behavior.\n\nExample:\n\n```ts\n// Using trusted key groups for Cloudfront Web Distributions.\ndeclare const sourceBucket: s3.Bucket;\ndeclare const publicKey: string;\nconst pubKey = new cloudfront.PublicKey(this, 'MyPubKey', {\n encodedKey: publicKey,\n});\n\nconst keyGroup = new cloudfront.KeyGroup(this, 'MyKeyGroup', {\n items: [\n pubKey,\n ],\n});\n\nnew cloudfront.CloudFrontWebDistribution(this, 'AnAmazingWebsiteProbably', {\n originConfigs: [\n {\n s3OriginSource: {\n s3BucketSource: sourceBucket,\n },\n behaviors: [\n {\n isDefaultBehavior: true,\n trustedKeyGroups: [\n keyGroup,\n ],\n },\n ],\n },\n ],\n});\n```\n\n### Restrictions\n\nCloudFront supports adding restrictions to your distribution.\n\nSee [Restricting the Geographic Distribution of Your Content](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/georestrictions.html) in the CloudFront User Guide.\n\nExample:\n\n```ts\n// Adding restrictions to a Cloudfront Web Distribution.\ndeclare const sourceBucket: s3.Bucket;\nnew cloudfront.CloudFrontWebDistribution(this, 'MyDistribution', {\n originConfigs: [\n {\n s3OriginSource: {\n s3BucketSource: sourceBucket,\n },\n behaviors : [ {isDefaultBehavior: true}],\n },\n ],\n geoRestriction: cloudfront.GeoRestriction.allowlist('US', 'GB'),\n});\n```\n\n### Connection behaviors between CloudFront and your origin\n\nCloudFront provides you even more control over the connection behaviors between CloudFront and your origin.\nYou can now configure the number of connection attempts CloudFront will make to your origin and the origin connection timeout for each attempt.\n\nSee [Origin Connection Attempts](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#origin-connection-attempts)\n\nSee [Origin Connection Timeout](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#origin-connection-timeout)\n\nExample usage:\n\n```ts\n// Configuring connection behaviors between Cloudfront and your origin\nconst distribution = new cloudfront.CloudFrontWebDistribution(this, 'MyDistribution', {\n originConfigs: [\n {\n connectionAttempts: 3,\n connectionTimeout: Duration.seconds(10),\n behaviors: [\n {\n isDefaultBehavior: true,\n },\n ],\n },\n ],\n});\n```\n\n#### Origin Fallback\n\nIn case the origin source is not available and answers with one of the\nspecified status codes the failover origin source will be used.\n\n```ts\n// Configuring origin fallback options for the CloudFrontWebDistribution\nnew cloudfront.CloudFrontWebDistribution(this, 'ADistribution', {\n originConfigs: [\n {\n s3OriginSource: {\n s3BucketSource: s3.Bucket.fromBucketName(this, 'aBucket', 'myoriginbucket'),\n originPath: '/',\n originHeaders: {\n 'myHeader': '42',\n },\n originShieldRegion: 'us-west-2',\n },\n failoverS3OriginSource: {\n s3BucketSource: s3.Bucket.fromBucketName(this, 'aBucketFallback', 'myoriginbucketfallback'),\n originPath: '/somewhere',\n originHeaders: {\n 'myHeader2': '21',\n },\n originShieldRegion: 'us-east-1',\n },\n failoverCriteriaStatusCodes: [cloudfront.FailoverStatusCode.INTERNAL_SERVER_ERROR],\n behaviors: [\n {\n isDefaultBehavior: true,\n },\n ],\n },\n ],\n});\n```\n\n## KeyGroup & PublicKey API\n\nYou can create a key group to use with CloudFront signed URLs and signed cookies\nYou can add public keys to use with CloudFront features such as signed URLs, signed cookies, and field-level encryption.\n\nThe following example command uses OpenSSL to generate an RSA key pair with a length of 2048 bits and save to the file named `private_key.pem`.\n\n```bash\nopenssl genrsa -out private_key.pem 2048\n```\n\nThe resulting file contains both the public and the private key. The following example command extracts the public key from the file named `private_key.pem` and stores it in `public_key.pem`.\n\n```bash\nopenssl rsa -pubout -in private_key.pem -out public_key.pem\n```\n\nNote: Don't forget to copy/paste the contents of `public_key.pem` file including `-----BEGIN PUBLIC KEY-----` and `-----END PUBLIC KEY-----` lines into `encodedKey` parameter when creating a `PublicKey`.\n\nExample:\n\n```ts\n// Create a key group to use with CloudFront signed URLs and signed cookies.\nnew cloudfront.KeyGroup(this, 'MyKeyGroup', {\n items: [\n new cloudfront.PublicKey(this, 'MyPublicKey', {\n encodedKey: '...', // contents of public_key.pem file\n // comment: 'Key is expiring on ...',\n }),\n ],\n // comment: 'Key group containing public keys ...',\n});\n```\n\nSee:\n\n* https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html\n* https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-trusted-signers.html\n"
887 },
888 "repository": {
889 "directory": "packages/@aws-cdk/aws-cloudfront",
890 "type": "git",
891 "url": "https://github.com/aws/aws-cdk.git"
892 },
893 "schema": "jsii/0.10.0",
894 "submodules": {
895 "@aws-cdk/aws-cloudfront.experimental": {
896 "locationInModule": {
897 "filename": "lib/index.ts",
898 "line": 13
899 },
900 "symbolId": "lib/experimental/index:"
901 }
902 },
903 "targets": {
904 "dotnet": {
905 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
906 "namespace": "Amazon.CDK.AWS.CloudFront",
907 "packageId": "Amazon.CDK.AWS.CloudFront"
908 },
909 "java": {
910 "maven": {
911 "artifactId": "cloudfront",
912 "groupId": "software.amazon.awscdk"
913 },
914 "package": "software.amazon.awscdk.services.cloudfront"
915 },
916 "js": {
917 "npm": "@aws-cdk/aws-cloudfront"
918 },
919 "python": {
920 "classifiers": [
921 "Framework :: AWS CDK",
922 "Framework :: AWS CDK :: 1"
923 ],
924 "distName": "aws-cdk.aws-cloudfront",
925 "module": "aws_cdk.aws_cloudfront"
926 }
927 },
928 "types": {
929 "@aws-cdk/aws-cloudfront.AddBehaviorOptions": {
930 "assembly": "@aws-cdk/aws-cloudfront",
931 "datatype": true,
932 "docs": {
933 "custom": {
934 "exampleMetadata": "infused"
935 },
936 "example": "// Add a behavior to a Distribution after initial creation.\ndeclare const myBucket: s3.Bucket;\ndeclare const myWebDistribution: cloudfront.Distribution;\nmyWebDistribution.addBehavior('/images/*.jpg', new origins.S3Origin(myBucket), {\n viewerProtocolPolicy: cloudfront.ViewerProtocolPolicy.REDIRECT_TO_HTTPS,\n});",
937 "stability": "stable",
938 "summary": "Options for adding a new behavior to a Distribution."
939 },
940 "fqn": "@aws-cdk/aws-cloudfront.AddBehaviorOptions",
941 "kind": "interface",
942 "locationInModule": {
943 "filename": "lib/distribution.ts",
944 "line": 686
945 },
946 "name": "AddBehaviorOptions",
947 "properties": [
948 {
949 "abstract": true,
950 "docs": {
951 "default": "AllowedMethods.ALLOW_GET_HEAD",
952 "stability": "stable",
953 "summary": "HTTP methods to allow for this behavior."
954 },
955 "immutable": true,
956 "locationInModule": {
957 "filename": "lib/distribution.ts",
958 "line": 692
959 },
960 "name": "allowedMethods",
961 "optional": true,
962 "type": {
963 "fqn": "@aws-cdk/aws-cloudfront.AllowedMethods"
964 }
965 },
966 {
967 "abstract": true,
968 "docs": {
969 "default": "CachedMethods.CACHE_GET_HEAD",
970 "stability": "stable",
971 "summary": "HTTP methods to cache for this behavior."
972 },
973 "immutable": true,
974 "locationInModule": {
975 "filename": "lib/distribution.ts",
976 "line": 699
977 },
978 "name": "cachedMethods",
979 "optional": true,
980 "type": {
981 "fqn": "@aws-cdk/aws-cloudfront.CachedMethods"
982 }
983 },
984 {
985 "abstract": true,
986 "docs": {
987 "default": "CachePolicy.CACHING_OPTIMIZED",
988 "remarks": "The cache policy determines what values are included in the cache key,\nand the time-to-live (TTL) values for the cache.",
989 "see": "https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html.",
990 "stability": "stable",
991 "summary": "The cache policy for this behavior."
992 },
993 "immutable": true,
994 "locationInModule": {
995 "filename": "lib/distribution.ts",
996 "line": 708
997 },
998 "name": "cachePolicy",
999 "optional": true,
1000 "type": {
1001 "fqn": "@aws-cdk/aws-cloudfront.ICachePolicy"
1002 }
1003 },
1004 {
1005 "abstract": true,
1006 "docs": {
1007 "default": "true",
1008 "remarks": "See https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/ServingCompressedFiles.html#compressed-content-cloudfront-file-types\nfor file types CloudFront will compress.",
1009 "stability": "stable",
1010 "summary": "Whether you want CloudFront to automatically compress certain files for this cache behavior."
1011 },
1012 "immutable": true,
1013 "locationInModule": {
1014 "filename": "lib/distribution.ts",
1015 "line": 717
1016 },
1017 "name": "compress",
1018 "optional": true,
1019 "type": {
1020 "primitive": "boolean"
1021 }
1022 },
1023 {
1024 "abstract": true,
1025 "docs": {
1026 "default": "- no Lambda functions will be invoked",
1027 "see": "https://aws.amazon.com/lambda/edge",
1028 "stability": "stable",
1029 "summary": "The Lambda@Edge functions to invoke before serving the contents."
1030 },
1031 "immutable": true,
1032 "locationInModule": {
1033 "filename": "lib/distribution.ts",
1034 "line": 761
1035 },
1036 "name": "edgeLambdas",
1037 "optional": true,
1038 "type": {
1039 "collection": {
1040 "elementtype": {
1041 "fqn": "@aws-cdk/aws-cloudfront.EdgeLambda"
1042 },
1043 "kind": "array"
1044 }
1045 }
1046 },
1047 {
1048 "abstract": true,
1049 "docs": {
1050 "default": "- no functions will be invoked",
1051 "stability": "stable",
1052 "summary": "The CloudFront functions to invoke before serving the contents."
1053 },
1054 "immutable": true,
1055 "locationInModule": {
1056 "filename": "lib/distribution.ts",
1057 "line": 753
1058 },
1059 "name": "functionAssociations",
1060 "optional": true,
1061 "type": {
1062 "collection": {
1063 "elementtype": {
1064 "fqn": "@aws-cdk/aws-cloudfront.FunctionAssociation"
1065 },
1066 "kind": "array"
1067 }
1068 }
1069 },
1070 {
1071 "abstract": true,
1072 "docs": {
1073 "default": "- none",
1074 "remarks": "The origin request policy determines which values (e.g., headers, cookies)\nare included in requests that CloudFront sends to the origin.",
1075 "stability": "stable",
1076 "summary": "The origin request policy for this behavior."
1077 },
1078 "immutable": true,
1079 "locationInModule": {
1080 "filename": "lib/distribution.ts",
1081 "line": 725
1082 },
1083 "name": "originRequestPolicy",
1084 "optional": true,
1085 "type": {
1086 "fqn": "@aws-cdk/aws-cloudfront.IOriginRequestPolicy"
1087 }
1088 },
1089 {
1090 "abstract": true,
1091 "docs": {
1092 "default": "- none",
1093 "remarks": "The response headers policy determines which headers are included in responses",
1094 "stability": "stable",
1095 "summary": "The response headers policy for this behavior."
1096 },
1097 "immutable": true,
1098 "locationInModule": {
1099 "filename": "lib/distribution.ts",
1100 "line": 732
1101 },
1102 "name": "responseHeadersPolicy",
1103 "optional": true,
1104 "type": {
1105 "fqn": "@aws-cdk/aws-cloudfront.IResponseHeadersPolicy"
1106 }
1107 },
1108 {
1109 "abstract": true,
1110 "docs": {
1111 "default": "false",
1112 "stability": "stable",
1113 "summary": "Set this to true to indicate you want to distribute media files in the Microsoft Smooth Streaming format using this behavior."
1114 },
1115 "immutable": true,
1116 "locationInModule": {
1117 "filename": "lib/distribution.ts",
1118 "line": 739
1119 },
1120 "name": "smoothStreaming",
1121 "optional": true,
1122 "type": {
1123 "primitive": "boolean"
1124 }
1125 },
1126 {
1127 "abstract": true,
1128 "docs": {
1129 "default": "- no KeyGroups are associated with cache behavior",
1130 "see": "https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html",
1131 "stability": "stable",
1132 "summary": "A list of Key Groups that CloudFront can use to validate signed URLs or signed cookies."
1133 },
1134 "immutable": true,
1135 "locationInModule": {
1136 "filename": "lib/distribution.ts",
1137 "line": 769
1138 },
1139 "name": "trustedKeyGroups",
1140 "optional": true,
1141 "type": {
1142 "collection": {
1143 "elementtype": {
1144 "fqn": "@aws-cdk/aws-cloudfront.IKeyGroup"
1145 },
1146 "kind": "array"
1147 }
1148 }
1149 },
1150 {
1151 "abstract": true,
1152 "docs": {
1153 "default": "ViewerProtocolPolicy.ALLOW_ALL",
1154 "stability": "stable",
1155 "summary": "The protocol that viewers can use to access the files controlled by this behavior."
1156 },
1157 "immutable": true,
1158 "locationInModule": {
1159 "filename": "lib/distribution.ts",
1160 "line": 746
1161 },
1162 "name": "viewerProtocolPolicy",
1163 "optional": true,
1164 "type": {
1165 "fqn": "@aws-cdk/aws-cloudfront.ViewerProtocolPolicy"
1166 }
1167 }
1168 ],
1169 "symbolId": "lib/distribution:AddBehaviorOptions"
1170 },
1171 "@aws-cdk/aws-cloudfront.AliasConfiguration": {
1172 "assembly": "@aws-cdk/aws-cloudfront",
1173 "datatype": true,
1174 "docs": {
1175 "deprecated": "see {@link CloudFrontWebDistributionProps#viewerCertificate} with {@link ViewerCertificate#acmCertificate}",
1176 "remarks": "CloudFront can use a custom domain that you provide instead of a\n\"cloudfront.net\" domain. To use this feature you must provide the list of\nadditional domains, and the ACM Certificate that CloudFront should use for\nthese additional domains.",
1177 "stability": "deprecated",
1178 "summary": "Configuration for custom domain names.",
1179 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst aliasConfiguration: cloudfront.AliasConfiguration = {\n acmCertRef: 'acmCertRef',\n names: ['names'],\n\n // the properties below are optional\n securityPolicy: cloudfront.SecurityPolicyProtocol.SSL_V3,\n sslMethod: cloudfront.SSLMethod.SNI,\n};",
1180 "custom": {
1181 "exampleMetadata": "fixture=_generated"
1182 }
1183 },
1184 "fqn": "@aws-cdk/aws-cloudfront.AliasConfiguration",
1185 "kind": "interface",
1186 "locationInModule": {
1187 "filename": "lib/web-distribution.ts",
1188 "line": 58
1189 },
1190 "name": "AliasConfiguration",
1191 "properties": [
1192 {
1193 "abstract": true,
1194 "docs": {
1195 "stability": "deprecated",
1196 "summary": "ARN of an AWS Certificate Manager (ACM) certificate."
1197 },
1198 "immutable": true,
1199 "locationInModule": {
1200 "filename": "lib/web-distribution.ts",
1201 "line": 62
1202 },
1203 "name": "acmCertRef",
1204 "type": {
1205 "primitive": "string"
1206 }
1207 },
1208 {
1209 "abstract": true,
1210 "docs": {
1211 "remarks": "Both main domain name and Subject Alternative Names.",
1212 "stability": "deprecated",
1213 "summary": "Domain names on the certificate."
1214 },
1215 "immutable": true,
1216 "locationInModule": {
1217 "filename": "lib/web-distribution.ts",
1218 "line": 69
1219 },
1220 "name": "names",
1221 "type": {
1222 "collection": {
1223 "elementtype": {
1224 "primitive": "string"
1225 },
1226 "kind": "array"
1227 }
1228 }
1229 },
1230 {
1231 "abstract": true,
1232 "docs": {
1233 "default": "- SSLv3 if sslMethod VIP, TLSv1 if sslMethod SNI",
1234 "remarks": "CloudFront serves your objects only to browsers or devices that support at\nleast the SSL version that you specify.",
1235 "stability": "deprecated",
1236 "summary": "The minimum version of the SSL protocol that you want CloudFront to use for HTTPS connections."
1237 },
1238 "immutable": true,
1239 "locationInModule": {
1240 "filename": "lib/web-distribution.ts",
1241 "line": 89
1242 },
1243 "name": "securityPolicy",
1244 "optional": true,
1245 "type": {
1246 "fqn": "@aws-cdk/aws-cloudfront.SecurityPolicyProtocol"
1247 }
1248 },
1249 {
1250 "abstract": true,
1251 "docs": {
1252 "default": "SSLMethod.SNI",
1253 "remarks": "See the notes on SSLMethod if you wish to use other SSL termination types.",
1254 "see": "https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_ViewerCertificate.html",
1255 "stability": "deprecated",
1256 "summary": "How CloudFront should serve HTTPS requests."
1257 },
1258 "immutable": true,
1259 "locationInModule": {
1260 "filename": "lib/web-distribution.ts",
1261 "line": 79
1262 },
1263 "name": "sslMethod",
1264 "optional": true,
1265 "type": {
1266 "fqn": "@aws-cdk/aws-cloudfront.SSLMethod"
1267 }
1268 }
1269 ],
1270 "symbolId": "lib/web-distribution:AliasConfiguration"
1271 },
1272 "@aws-cdk/aws-cloudfront.AllowedMethods": {
1273 "assembly": "@aws-cdk/aws-cloudfront",
1274 "docs": {
1275 "custom": {
1276 "exampleMetadata": "infused"
1277 },
1278 "example": "// Create a Distribution with configured HTTP methods and viewer protocol policy of the cache.\ndeclare const myBucket: s3.Bucket;\nconst myWebDistribution = new cloudfront.Distribution(this, 'myDist', {\n defaultBehavior: {\n origin: new origins.S3Origin(myBucket),\n allowedMethods: cloudfront.AllowedMethods.ALLOW_ALL,\n viewerProtocolPolicy: cloudfront.ViewerProtocolPolicy.REDIRECT_TO_HTTPS,\n },\n});",
1279 "stability": "stable",
1280 "summary": "The HTTP methods that the Behavior will accept requests on."
1281 },
1282 "fqn": "@aws-cdk/aws-cloudfront.AllowedMethods",
1283 "kind": "class",
1284 "locationInModule": {
1285 "filename": "lib/distribution.ts",
1286 "line": 571
1287 },
1288 "name": "AllowedMethods",
1289 "properties": [
1290 {
1291 "const": true,
1292 "docs": {
1293 "stability": "stable",
1294 "summary": "All supported HTTP methods."
1295 },
1296 "immutable": true,
1297 "locationInModule": {
1298 "filename": "lib/distribution.ts",
1299 "line": 577
1300 },
1301 "name": "ALLOW_ALL",
1302 "static": true,
1303 "type": {
1304 "fqn": "@aws-cdk/aws-cloudfront.AllowedMethods"
1305 }
1306 },
1307 {
1308 "const": true,
1309 "docs": {
1310 "stability": "stable",
1311 "summary": "HEAD and GET."
1312 },
1313 "immutable": true,
1314 "locationInModule": {
1315 "filename": "lib/distribution.ts",
1316 "line": 573
1317 },
1318 "name": "ALLOW_GET_HEAD",
1319 "static": true,
1320 "type": {
1321 "fqn": "@aws-cdk/aws-cloudfront.AllowedMethods"
1322 }
1323 },
1324 {
1325 "const": true,
1326 "docs": {
1327 "stability": "stable",
1328 "summary": "HEAD, GET, and OPTIONS."
1329 },
1330 "immutable": true,
1331 "locationInModule": {
1332 "filename": "lib/distribution.ts",
1333 "line": 575
1334 },
1335 "name": "ALLOW_GET_HEAD_OPTIONS",
1336 "static": true,
1337 "type": {
1338 "fqn": "@aws-cdk/aws-cloudfront.AllowedMethods"
1339 }
1340 },
1341 {
1342 "docs": {
1343 "stability": "stable",
1344 "summary": "HTTP methods supported."
1345 },
1346 "immutable": true,
1347 "locationInModule": {
1348 "filename": "lib/distribution.ts",
1349 "line": 580
1350 },
1351 "name": "methods",
1352 "type": {
1353 "collection": {
1354 "elementtype": {
1355 "primitive": "string"
1356 },
1357 "kind": "array"
1358 }
1359 }
1360 }
1361 ],
1362 "symbolId": "lib/distribution:AllowedMethods"
1363 },
1364 "@aws-cdk/aws-cloudfront.Behavior": {
1365 "assembly": "@aws-cdk/aws-cloudfront",
1366 "datatype": true,
1367 "docs": {
1368 "stability": "stable",
1369 "summary": "A CloudFront behavior wrapper.",
1370 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nimport * as lambda from '@aws-cdk/aws-lambda';\nimport * as cdk from '@aws-cdk/core';\n\ndeclare const function_: cloudfront.Function;\ndeclare const keyGroup: cloudfront.KeyGroup;\ndeclare const version: lambda.Version;\nconst behavior: cloudfront.Behavior = {\n allowedMethods: cloudfront.CloudFrontAllowedMethods.GET_HEAD,\n cachedMethods: cloudfront.CloudFrontAllowedCachedMethods.GET_HEAD,\n compress: false,\n defaultTtl: cdk.Duration.minutes(30),\n forwardedValues: {\n queryString: false,\n\n // the properties below are optional\n cookies: {\n forward: 'forward',\n\n // the properties below are optional\n whitelistedNames: ['whitelistedNames'],\n },\n headers: ['headers'],\n queryStringCacheKeys: ['queryStringCacheKeys'],\n },\n functionAssociations: [{\n eventType: cloudfront.FunctionEventType.VIEWER_REQUEST,\n function: function_,\n }],\n isDefaultBehavior: false,\n lambdaFunctionAssociations: [{\n eventType: cloudfront.LambdaEdgeEventType.ORIGIN_REQUEST,\n lambdaFunction: version,\n\n // the properties below are optional\n includeBody: false,\n }],\n maxTtl: cdk.Duration.minutes(30),\n minTtl: cdk.Duration.minutes(30),\n pathPattern: 'pathPattern',\n trustedKeyGroups: [keyGroup],\n trustedSigners: ['trustedSigners'],\n viewerProtocolPolicy: cloudfront.ViewerProtocolPolicy.HTTPS_ONLY,\n};",
1371 "custom": {
1372 "exampleMetadata": "fixture=_generated"
1373 }
1374 },
1375 "fqn": "@aws-cdk/aws-cloudfront.Behavior",
1376 "kind": "interface",
1377 "locationInModule": {
1378 "filename": "lib/web-distribution.ts",
1379 "line": 355
1380 },
1381 "name": "Behavior",
1382 "properties": [
1383 {
1384 "abstract": true,
1385 "docs": {
1386 "default": "GET_HEAD",
1387 "stability": "stable",
1388 "summary": "The method this CloudFront distribution responds do."
1389 },
1390 "immutable": true,
1391 "locationInModule": {
1392 "filename": "lib/web-distribution.ts",
1393 "line": 405
1394 },
1395 "name": "allowedMethods",
1396 "optional": true,
1397 "type": {
1398 "fqn": "@aws-cdk/aws-cloudfront.CloudFrontAllowedMethods"
1399 }
1400 },
1401 {
1402 "abstract": true,
1403 "docs": {
1404 "default": "GET_HEAD",
1405 "stability": "stable",
1406 "summary": "Which methods are cached by CloudFront by default."
1407 },
1408 "immutable": true,
1409 "locationInModule": {
1410 "filename": "lib/web-distribution.ts",
1411 "line": 419
1412 },
1413 "name": "cachedMethods",
1414 "optional": true,
1415 "type": {
1416 "fqn": "@aws-cdk/aws-cloudfront.CloudFrontAllowedCachedMethods"
1417 }
1418 },
1419 {
1420 "abstract": true,
1421 "docs": {
1422 "default": "true",
1423 "stability": "stable",
1424 "summary": "If CloudFront should automatically compress some content types."
1425 },
1426 "immutable": true,
1427 "locationInModule": {
1428 "filename": "lib/web-distribution.ts",
1429 "line": 362
1430 },
1431 "name": "compress",
1432 "optional": true,
1433 "type": {
1434 "primitive": "boolean"
1435 }
1436 },
1437 {
1438 "abstract": true,
1439 "docs": {
1440 "default": "86400 (1 day)",
1441 "remarks": "This value applies only when your custom origin does not add HTTP headers,\nsuch as Cache-Control max-age, Cache-Control s-maxage, and Expires to objects.",
1442 "stability": "stable",
1443 "summary": "The default amount of time CloudFront will cache an object."
1444 },
1445 "immutable": true,
1446 "locationInModule": {
1447 "filename": "lib/web-distribution.ts",
1448 "line": 398
1449 },
1450 "name": "defaultTtl",
1451 "optional": true,
1452 "type": {
1453 "fqn": "@aws-cdk/core.Duration"
1454 }
1455 },
1456 {
1457 "abstract": true,
1458 "docs": {
1459 "default": "none (no cookies - no headers)",
1460 "stability": "stable",
1461 "summary": "The values CloudFront will forward to the origin when making a request."
1462 },
1463 "immutable": true,
1464 "locationInModule": {
1465 "filename": "lib/web-distribution.ts",
1466 "line": 427
1467 },
1468 "name": "forwardedValues",
1469 "optional": true,
1470 "type": {
1471 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.ForwardedValuesProperty"
1472 }
1473 },
1474 {
1475 "abstract": true,
1476 "docs": {
1477 "default": "- no functions will be invoked",
1478 "stability": "stable",
1479 "summary": "The CloudFront functions to invoke before serving the contents."
1480 },
1481 "immutable": true,
1482 "locationInModule": {
1483 "filename": "lib/web-distribution.ts",
1484 "line": 455
1485 },
1486 "name": "functionAssociations",
1487 "optional": true,
1488 "type": {
1489 "collection": {
1490 "elementtype": {
1491 "fqn": "@aws-cdk/aws-cloudfront.FunctionAssociation"
1492 },
1493 "kind": "array"
1494 }
1495 }
1496 },
1497 {
1498 "abstract": true,
1499 "docs": {
1500 "remarks": "You must specify exactly one default distribution per CloudFront distribution.\nThe default behavior is allowed to omit the \"path\" property.",
1501 "stability": "stable",
1502 "summary": "If this behavior is the default behavior for the distribution."
1503 },
1504 "immutable": true,
1505 "locationInModule": {
1506 "filename": "lib/web-distribution.ts",
1507 "line": 370
1508 },
1509 "name": "isDefaultBehavior",
1510 "optional": true,
1511 "type": {
1512 "primitive": "boolean"
1513 }
1514 },
1515 {
1516 "abstract": true,
1517 "docs": {
1518 "default": "No lambda function associated",
1519 "stability": "stable",
1520 "summary": "Declares associated lambda@edge functions for this distribution behaviour."
1521 },
1522 "immutable": true,
1523 "locationInModule": {
1524 "filename": "lib/web-distribution.ts",
1525 "line": 448
1526 },
1527 "name": "lambdaFunctionAssociations",
1528 "optional": true,
1529 "type": {
1530 "collection": {
1531 "elementtype": {
1532 "fqn": "@aws-cdk/aws-cloudfront.LambdaFunctionAssociation"
1533 },
1534 "kind": "array"
1535 }
1536 }
1537 },
1538 {
1539 "abstract": true,
1540 "docs": {
1541 "default": "Duration.seconds(31536000) (one year)",
1542 "stability": "stable",
1543 "summary": "The max amount of time you want objects to stay in the cache before CloudFront queries your origin."
1544 },
1545 "immutable": true,
1546 "locationInModule": {
1547 "filename": "lib/web-distribution.ts",
1548 "line": 441
1549 },
1550 "name": "maxTtl",
1551 "optional": true,
1552 "type": {
1553 "fqn": "@aws-cdk/core.Duration"
1554 }
1555 },
1556 {
1557 "abstract": true,
1558 "docs": {
1559 "stability": "stable",
1560 "summary": "The minimum amount of time that you want objects to stay in the cache before CloudFront queries your origin."
1561 },
1562 "immutable": true,
1563 "locationInModule": {
1564 "filename": "lib/web-distribution.ts",
1565 "line": 433
1566 },
1567 "name": "minTtl",
1568 "optional": true,
1569 "type": {
1570 "fqn": "@aws-cdk/core.Duration"
1571 }
1572 },
1573 {
1574 "abstract": true,
1575 "docs": {
1576 "remarks": "Required for all non-default behaviors. (The default behavior implicitly has \"*\" as the path pattern. )",
1577 "stability": "stable",
1578 "summary": "The path this behavior responds to."
1579 },
1580 "immutable": true,
1581 "locationInModule": {
1582 "filename": "lib/web-distribution.ts",
1583 "line": 412
1584 },
1585 "name": "pathPattern",
1586 "optional": true,
1587 "type": {
1588 "primitive": "string"
1589 }
1590 },
1591 {
1592 "abstract": true,
1593 "docs": {
1594 "default": "- no KeyGroups are associated with cache behavior",
1595 "see": "https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html",
1596 "stability": "stable",
1597 "summary": "A list of Key Groups that CloudFront can use to validate signed URLs or signed cookies."
1598 },
1599 "immutable": true,
1600 "locationInModule": {
1601 "filename": "lib/web-distribution.ts",
1602 "line": 387
1603 },
1604 "name": "trustedKeyGroups",
1605 "optional": true,
1606 "type": {
1607 "collection": {
1608 "elementtype": {
1609 "fqn": "@aws-cdk/aws-cloudfront.IKeyGroup"
1610 },
1611 "kind": "array"
1612 }
1613 }
1614 },
1615 {
1616 "abstract": true,
1617 "docs": {
1618 "deprecated": "- We recommend using trustedKeyGroups instead of trustedSigners.",
1619 "remarks": "The signers are the account IDs that are allowed to sign cookies/presigned URLs for this distribution.\n\nIf you pass a non empty value, all requests for this behavior must be signed (no public access will be allowed)",
1620 "stability": "deprecated",
1621 "summary": "Trusted signers is how CloudFront allows you to serve private content."
1622 },
1623 "immutable": true,
1624 "locationInModule": {
1625 "filename": "lib/web-distribution.ts",
1626 "line": 379
1627 },
1628 "name": "trustedSigners",
1629 "optional": true,
1630 "type": {
1631 "collection": {
1632 "elementtype": {
1633 "primitive": "string"
1634 },
1635 "kind": "array"
1636 }
1637 }
1638 },
1639 {
1640 "abstract": true,
1641 "docs": {
1642 "default": "- the distribution wide viewer protocol policy will be used",
1643 "stability": "stable",
1644 "summary": "The viewer policy for this behavior."
1645 },
1646 "immutable": true,
1647 "locationInModule": {
1648 "filename": "lib/web-distribution.ts",
1649 "line": 462
1650 },
1651 "name": "viewerProtocolPolicy",
1652 "optional": true,
1653 "type": {
1654 "fqn": "@aws-cdk/aws-cloudfront.ViewerProtocolPolicy"
1655 }
1656 }
1657 ],
1658 "symbolId": "lib/web-distribution:Behavior"
1659 },
1660 "@aws-cdk/aws-cloudfront.BehaviorOptions": {
1661 "assembly": "@aws-cdk/aws-cloudfront",
1662 "datatype": true,
1663 "docs": {
1664 "custom": {
1665 "exampleMetadata": "infused"
1666 },
1667 "example": "// Adding an existing Lambda@Edge function created in a different stack\n// to a CloudFront distribution.\ndeclare const s3Bucket: s3.Bucket;\nconst functionVersion = lambda.Version.fromVersionArn(this, 'Version', 'arn:aws:lambda:us-east-1:123456789012:function:functionName:1');\n\nnew cloudfront.Distribution(this, 'distro', {\n defaultBehavior: {\n origin: new origins.S3Origin(s3Bucket),\n edgeLambdas: [\n {\n functionVersion,\n eventType: cloudfront.LambdaEdgeEventType.VIEWER_REQUEST,\n },\n ],\n },\n});",
1668 "stability": "stable",
1669 "summary": "Options for creating a new behavior."
1670 },
1671 "fqn": "@aws-cdk/aws-cloudfront.BehaviorOptions",
1672 "interfaces": [
1673 "@aws-cdk/aws-cloudfront.AddBehaviorOptions"
1674 ],
1675 "kind": "interface",
1676 "locationInModule": {
1677 "filename": "lib/distribution.ts",
1678 "line": 775
1679 },
1680 "name": "BehaviorOptions",
1681 "properties": [
1682 {
1683 "abstract": true,
1684 "docs": {
1685 "stability": "stable",
1686 "summary": "The origin that you want CloudFront to route requests to when they match this behavior."
1687 },
1688 "immutable": true,
1689 "locationInModule": {
1690 "filename": "lib/distribution.ts",
1691 "line": 779
1692 },
1693 "name": "origin",
1694 "type": {
1695 "fqn": "@aws-cdk/aws-cloudfront.IOrigin"
1696 }
1697 }
1698 ],
1699 "symbolId": "lib/distribution:BehaviorOptions"
1700 },
1701 "@aws-cdk/aws-cloudfront.CacheCookieBehavior": {
1702 "assembly": "@aws-cdk/aws-cloudfront",
1703 "docs": {
1704 "custom": {
1705 "exampleMetadata": "infused"
1706 },
1707 "example": "// Creating a custom cache policy for a Distribution -- all parameters optional\ndeclare const bucketOrigin: origins.S3Origin;\nconst myCachePolicy = new cloudfront.CachePolicy(this, 'myCachePolicy', {\n cachePolicyName: 'MyPolicy',\n comment: 'A default policy',\n defaultTtl: Duration.days(2),\n minTtl: Duration.minutes(1),\n maxTtl: Duration.days(10),\n cookieBehavior: cloudfront.CacheCookieBehavior.all(),\n headerBehavior: cloudfront.CacheHeaderBehavior.allowList('X-CustomHeader'),\n queryStringBehavior: cloudfront.CacheQueryStringBehavior.denyList('username'),\n enableAcceptEncodingGzip: true,\n enableAcceptEncodingBrotli: true,\n});\nnew cloudfront.Distribution(this, 'myDistCustomPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n cachePolicy: myCachePolicy,\n },\n});",
1708 "stability": "stable",
1709 "summary": "Determines whether any cookies in viewer requests are included in the cache key and automatically included in requests that CloudFront sends to the origin."
1710 },
1711 "fqn": "@aws-cdk/aws-cloudfront.CacheCookieBehavior",
1712 "kind": "class",
1713 "locationInModule": {
1714 "filename": "lib/cache-policy.ts",
1715 "line": 188
1716 },
1717 "methods": [
1718 {
1719 "docs": {
1720 "stability": "stable",
1721 "summary": "All cookies in viewer requests are included in the cache key and are automatically included in requests that CloudFront sends to the origin."
1722 },
1723 "locationInModule": {
1724 "filename": "lib/cache-policy.ts",
1725 "line": 198
1726 },
1727 "name": "all",
1728 "returns": {
1729 "type": {
1730 "fqn": "@aws-cdk/aws-cloudfront.CacheCookieBehavior"
1731 }
1732 },
1733 "static": true
1734 },
1735 {
1736 "docs": {
1737 "stability": "stable",
1738 "summary": "Only the provided `cookies` are included in the cache key and automatically included in requests that CloudFront sends to the origin."
1739 },
1740 "locationInModule": {
1741 "filename": "lib/cache-policy.ts",
1742 "line": 203
1743 },
1744 "name": "allowList",
1745 "parameters": [
1746 {
1747 "name": "cookies",
1748 "type": {
1749 "primitive": "string"
1750 },
1751 "variadic": true
1752 }
1753 ],
1754 "returns": {
1755 "type": {
1756 "fqn": "@aws-cdk/aws-cloudfront.CacheCookieBehavior"
1757 }
1758 },
1759 "static": true,
1760 "variadic": true
1761 },
1762 {
1763 "docs": {
1764 "stability": "stable",
1765 "summary": "All cookies except the provided `cookies` are included in the cache key and automatically included in requests that CloudFront sends to the origin."
1766 },
1767 "locationInModule": {
1768 "filename": "lib/cache-policy.ts",
1769 "line": 214
1770 },
1771 "name": "denyList",
1772 "parameters": [
1773 {
1774 "name": "cookies",
1775 "type": {
1776 "primitive": "string"
1777 },
1778 "variadic": true
1779 }
1780 ],
1781 "returns": {
1782 "type": {
1783 "fqn": "@aws-cdk/aws-cloudfront.CacheCookieBehavior"
1784 }
1785 },
1786 "static": true,
1787 "variadic": true
1788 },
1789 {
1790 "docs": {
1791 "stability": "stable",
1792 "summary": "Cookies in viewer requests are not included in the cache key and are not automatically included in requests that CloudFront sends to the origin."
1793 },
1794 "locationInModule": {
1795 "filename": "lib/cache-policy.ts",
1796 "line": 193
1797 },
1798 "name": "none",
1799 "returns": {
1800 "type": {
1801 "fqn": "@aws-cdk/aws-cloudfront.CacheCookieBehavior"
1802 }
1803 },
1804 "static": true
1805 }
1806 ],
1807 "name": "CacheCookieBehavior",
1808 "properties": [
1809 {
1810 "docs": {
1811 "stability": "stable",
1812 "summary": "The behavior of cookies: allow all, none, an allow list, or a deny list."
1813 },
1814 "immutable": true,
1815 "locationInModule": {
1816 "filename": "lib/cache-policy.ts",
1817 "line": 222
1818 },
1819 "name": "behavior",
1820 "type": {
1821 "primitive": "string"
1822 }
1823 },
1824 {
1825 "docs": {
1826 "stability": "stable",
1827 "summary": "The cookies to allow or deny, if the behavior is an allow or deny list."
1828 },
1829 "immutable": true,
1830 "locationInModule": {
1831 "filename": "lib/cache-policy.ts",
1832 "line": 224
1833 },
1834 "name": "cookies",
1835 "optional": true,
1836 "type": {
1837 "collection": {
1838 "elementtype": {
1839 "primitive": "string"
1840 },
1841 "kind": "array"
1842 }
1843 }
1844 }
1845 ],
1846 "symbolId": "lib/cache-policy:CacheCookieBehavior"
1847 },
1848 "@aws-cdk/aws-cloudfront.CacheHeaderBehavior": {
1849 "assembly": "@aws-cdk/aws-cloudfront",
1850 "docs": {
1851 "custom": {
1852 "exampleMetadata": "infused"
1853 },
1854 "example": "// Creating a custom cache policy for a Distribution -- all parameters optional\ndeclare const bucketOrigin: origins.S3Origin;\nconst myCachePolicy = new cloudfront.CachePolicy(this, 'myCachePolicy', {\n cachePolicyName: 'MyPolicy',\n comment: 'A default policy',\n defaultTtl: Duration.days(2),\n minTtl: Duration.minutes(1),\n maxTtl: Duration.days(10),\n cookieBehavior: cloudfront.CacheCookieBehavior.all(),\n headerBehavior: cloudfront.CacheHeaderBehavior.allowList('X-CustomHeader'),\n queryStringBehavior: cloudfront.CacheQueryStringBehavior.denyList('username'),\n enableAcceptEncodingGzip: true,\n enableAcceptEncodingBrotli: true,\n});\nnew cloudfront.Distribution(this, 'myDistCustomPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n cachePolicy: myCachePolicy,\n },\n});",
1855 "stability": "stable",
1856 "summary": "Determines whether any HTTP headers are included in the cache key and automatically included in requests that CloudFront sends to the origin."
1857 },
1858 "fqn": "@aws-cdk/aws-cloudfront.CacheHeaderBehavior",
1859 "kind": "class",
1860 "locationInModule": {
1861 "filename": "lib/cache-policy.ts",
1862 "line": 235
1863 },
1864 "methods": [
1865 {
1866 "docs": {
1867 "stability": "stable",
1868 "summary": "Listed headers are included in the cache key and are automatically included in requests that CloudFront sends to the origin."
1869 },
1870 "locationInModule": {
1871 "filename": "lib/cache-policy.ts",
1872 "line": 239
1873 },
1874 "name": "allowList",
1875 "parameters": [
1876 {
1877 "name": "headers",
1878 "type": {
1879 "primitive": "string"
1880 },
1881 "variadic": true
1882 }
1883 ],
1884 "returns": {
1885 "type": {
1886 "fqn": "@aws-cdk/aws-cloudfront.CacheHeaderBehavior"
1887 }
1888 },
1889 "static": true,
1890 "variadic": true
1891 },
1892 {
1893 "docs": {
1894 "stability": "stable",
1895 "summary": "HTTP headers are not included in the cache key and are not automatically included in requests that CloudFront sends to the origin."
1896 },
1897 "locationInModule": {
1898 "filename": "lib/cache-policy.ts",
1899 "line": 237
1900 },
1901 "name": "none",
1902 "returns": {
1903 "type": {
1904 "fqn": "@aws-cdk/aws-cloudfront.CacheHeaderBehavior"
1905 }
1906 },
1907 "static": true
1908 }
1909 ],
1910 "name": "CacheHeaderBehavior",
1911 "properties": [
1912 {
1913 "docs": {
1914 "stability": "stable",
1915 "summary": "If no headers will be passed, or an allow list of headers."
1916 },
1917 "immutable": true,
1918 "locationInModule": {
1919 "filename": "lib/cache-policy.ts",
1920 "line": 247
1921 },
1922 "name": "behavior",
1923 "type": {
1924 "primitive": "string"
1925 }
1926 },
1927 {
1928 "docs": {
1929 "stability": "stable",
1930 "summary": "The headers for the allow/deny list, if applicable."
1931 },
1932 "immutable": true,
1933 "locationInModule": {
1934 "filename": "lib/cache-policy.ts",
1935 "line": 249
1936 },
1937 "name": "headers",
1938 "optional": true,
1939 "type": {
1940 "collection": {
1941 "elementtype": {
1942 "primitive": "string"
1943 },
1944 "kind": "array"
1945 }
1946 }
1947 }
1948 ],
1949 "symbolId": "lib/cache-policy:CacheHeaderBehavior"
1950 },
1951 "@aws-cdk/aws-cloudfront.CachePolicy": {
1952 "assembly": "@aws-cdk/aws-cloudfront",
1953 "base": "@aws-cdk/core.Resource",
1954 "docs": {
1955 "custom": {
1956 "exampleMetadata": "infused",
1957 "link": "https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html",
1958 "resource": "AWS::CloudFront::CachePolicy"
1959 },
1960 "example": "// Using an existing cache policy for a Distribution\ndeclare const bucketOrigin: origins.S3Origin;\nnew cloudfront.Distribution(this, 'myDistManagedPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n cachePolicy: cloudfront.CachePolicy.CACHING_OPTIMIZED,\n },\n});",
1961 "stability": "stable",
1962 "summary": "A Cache Policy configuration."
1963 },
1964 "fqn": "@aws-cdk/aws-cloudfront.CachePolicy",
1965 "initializer": {
1966 "docs": {
1967 "stability": "stable"
1968 },
1969 "locationInModule": {
1970 "filename": "lib/cache-policy.ts",
1971 "line": 127
1972 },
1973 "parameters": [
1974 {
1975 "name": "scope",
1976 "type": {
1977 "fqn": "constructs.Construct"
1978 }
1979 },
1980 {
1981 "name": "id",
1982 "type": {
1983 "primitive": "string"
1984 }
1985 },
1986 {
1987 "name": "props",
1988 "optional": true,
1989 "type": {
1990 "fqn": "@aws-cdk/aws-cloudfront.CachePolicyProps"
1991 }
1992 }
1993 ]
1994 },
1995 "interfaces": [
1996 "@aws-cdk/aws-cloudfront.ICachePolicy"
1997 ],
1998 "kind": "class",
1999 "locationInModule": {
2000 "filename": "lib/cache-policy.ts",
2001 "line": 90
2002 },
2003 "methods": [
2004 {
2005 "docs": {
2006 "stability": "stable",
2007 "summary": "Imports a Cache Policy from its id."
2008 },
2009 "locationInModule": {
2010 "filename": "lib/cache-policy.ts",
2011 "line": 112
2012 },
2013 "name": "fromCachePolicyId",
2014 "parameters": [
2015 {
2016 "name": "scope",
2017 "type": {
2018 "fqn": "constructs.Construct"
2019 }
2020 },
2021 {
2022 "name": "id",
2023 "type": {
2024 "primitive": "string"
2025 }
2026 },
2027 {
2028 "name": "cachePolicyId",
2029 "type": {
2030 "primitive": "string"
2031 }
2032 }
2033 ],
2034 "returns": {
2035 "type": {
2036 "fqn": "@aws-cdk/aws-cloudfront.ICachePolicy"
2037 }
2038 },
2039 "static": true
2040 }
2041 ],
2042 "name": "CachePolicy",
2043 "properties": [
2044 {
2045 "const": true,
2046 "docs": {
2047 "stability": "stable",
2048 "summary": "This policy is designed for use with an origin that is an AWS Amplify web app."
2049 },
2050 "immutable": true,
2051 "locationInModule": {
2052 "filename": "lib/cache-policy.ts",
2053 "line": 94
2054 },
2055 "name": "AMPLIFY",
2056 "static": true,
2057 "type": {
2058 "fqn": "@aws-cdk/aws-cloudfront.ICachePolicy"
2059 }
2060 },
2061 {
2062 "const": true,
2063 "docs": {
2064 "remarks": "This policy is useful for dynamic content and for requests that are not cacheable.",
2065 "stability": "stable",
2066 "summary": "Disables caching."
2067 },
2068 "immutable": true,
2069 "locationInModule": {
2070 "filename": "lib/cache-policy.ts",
2071 "line": 107
2072 },
2073 "name": "CACHING_DISABLED",
2074 "static": true,
2075 "type": {
2076 "fqn": "@aws-cdk/aws-cloudfront.ICachePolicy"
2077 }
2078 },
2079 {
2080 "const": true,
2081 "docs": {
2082 "remarks": "Query strings and cookies are not included in the cache key, and only the normalized 'Accept-Encoding' header is included.",
2083 "stability": "stable",
2084 "summary": "Optimize cache efficiency by minimizing the values that CloudFront includes in the cache key."
2085 },
2086 "immutable": true,
2087 "locationInModule": {
2088 "filename": "lib/cache-policy.ts",
2089 "line": 99
2090 },
2091 "name": "CACHING_OPTIMIZED",
2092 "static": true,
2093 "type": {
2094 "fqn": "@aws-cdk/aws-cloudfront.ICachePolicy"
2095 }
2096 },
2097 {
2098 "const": true,
2099 "docs": {
2100 "remarks": "Query strings and cookies are not included in the cache key, and only the normalized 'Accept-Encoding' header is included.\nDisables cache compression.",
2101 "stability": "stable",
2102 "summary": "Optimize cache efficiency by minimizing the values that CloudFront includes in the cache key."
2103 },
2104 "immutable": true,
2105 "locationInModule": {
2106 "filename": "lib/cache-policy.ts",
2107 "line": 105
2108 },
2109 "name": "CACHING_OPTIMIZED_FOR_UNCOMPRESSED_OBJECTS",
2110 "static": true,
2111 "type": {
2112 "fqn": "@aws-cdk/aws-cloudfront.ICachePolicy"
2113 }
2114 },
2115 {
2116 "const": true,
2117 "docs": {
2118 "stability": "stable",
2119 "summary": "Designed for use with an origin that is an AWS Elemental MediaPackage endpoint."
2120 },
2121 "immutable": true,
2122 "locationInModule": {
2123 "filename": "lib/cache-policy.ts",
2124 "line": 109
2125 },
2126 "name": "ELEMENTAL_MEDIA_PACKAGE",
2127 "static": true,
2128 "type": {
2129 "fqn": "@aws-cdk/aws-cloudfront.ICachePolicy"
2130 }
2131 },
2132 {
2133 "docs": {
2134 "stability": "stable",
2135 "summary": "The ID of the cache policy."
2136 },
2137 "immutable": true,
2138 "locationInModule": {
2139 "filename": "lib/cache-policy.ts",
2140 "line": 125
2141 },
2142 "name": "cachePolicyId",
2143 "overrides": "@aws-cdk/aws-cloudfront.ICachePolicy",
2144 "type": {
2145 "primitive": "string"
2146 }
2147 }
2148 ],
2149 "symbolId": "lib/cache-policy:CachePolicy"
2150 },
2151 "@aws-cdk/aws-cloudfront.CachePolicyProps": {
2152 "assembly": "@aws-cdk/aws-cloudfront",
2153 "datatype": true,
2154 "docs": {
2155 "custom": {
2156 "exampleMetadata": "infused"
2157 },
2158 "example": "// Creating a custom cache policy for a Distribution -- all parameters optional\ndeclare const bucketOrigin: origins.S3Origin;\nconst myCachePolicy = new cloudfront.CachePolicy(this, 'myCachePolicy', {\n cachePolicyName: 'MyPolicy',\n comment: 'A default policy',\n defaultTtl: Duration.days(2),\n minTtl: Duration.minutes(1),\n maxTtl: Duration.days(10),\n cookieBehavior: cloudfront.CacheCookieBehavior.all(),\n headerBehavior: cloudfront.CacheHeaderBehavior.allowList('X-CustomHeader'),\n queryStringBehavior: cloudfront.CacheQueryStringBehavior.denyList('username'),\n enableAcceptEncodingGzip: true,\n enableAcceptEncodingBrotli: true,\n});\nnew cloudfront.Distribution(this, 'myDistCustomPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n cachePolicy: myCachePolicy,\n },\n});",
2159 "stability": "stable",
2160 "summary": "Properties for creating a Cache Policy."
2161 },
2162 "fqn": "@aws-cdk/aws-cloudfront.CachePolicyProps",
2163 "kind": "interface",
2164 "locationInModule": {
2165 "filename": "lib/cache-policy.ts",
2166 "line": 19
2167 },
2168 "name": "CachePolicyProps",
2169 "properties": [
2170 {
2171 "abstract": true,
2172 "docs": {
2173 "default": "- generated from the `id`",
2174 "remarks": "The name must only include '-', '_', or alphanumeric characters.",
2175 "stability": "stable",
2176 "summary": "A unique name to identify the cache policy."
2177 },
2178 "immutable": true,
2179 "locationInModule": {
2180 "filename": "lib/cache-policy.ts",
2181 "line": 25
2182 },
2183 "name": "cachePolicyName",
2184 "optional": true,
2185 "type": {
2186 "primitive": "string"
2187 }
2188 },
2189 {
2190 "abstract": true,
2191 "docs": {
2192 "default": "- no comment",
2193 "stability": "stable",
2194 "summary": "A comment to describe the cache policy."
2195 },
2196 "immutable": true,
2197 "locationInModule": {
2198 "filename": "lib/cache-policy.ts",
2199 "line": 31
2200 },
2201 "name": "comment",
2202 "optional": true,
2203 "type": {
2204 "primitive": "string"
2205 }
2206 },
2207 {
2208 "abstract": true,
2209 "docs": {
2210 "default": "CacheCookieBehavior.none()",
2211 "stability": "stable",
2212 "summary": "Determines whether any cookies in viewer requests are included in the cache key and automatically included in requests that CloudFront sends to the origin."
2213 },
2214 "immutable": true,
2215 "locationInModule": {
2216 "filename": "lib/cache-policy.ts",
2217 "line": 57
2218 },
2219 "name": "cookieBehavior",
2220 "optional": true,
2221 "type": {
2222 "fqn": "@aws-cdk/aws-cloudfront.CacheCookieBehavior"
2223 }
2224 },
2225 {
2226 "abstract": true,
2227 "docs": {
2228 "default": "- The greater of 1 day and ``minTtl``",
2229 "remarks": "Only used when the origin does not send Cache-Control or Expires headers with the object.",
2230 "stability": "stable",
2231 "summary": "The default amount of time for objects to stay in the CloudFront cache."
2232 },
2233 "immutable": true,
2234 "locationInModule": {
2235 "filename": "lib/cache-policy.ts",
2236 "line": 38
2237 },
2238 "name": "defaultTtl",
2239 "optional": true,
2240 "type": {
2241 "fqn": "@aws-cdk/core.Duration"
2242 }
2243 },
2244 {
2245 "abstract": true,
2246 "docs": {
2247 "default": "false",
2248 "stability": "stable",
2249 "summary": "Whether to normalize and include the `Accept-Encoding` header in the cache key when the `Accept-Encoding` header is 'br'."
2250 },
2251 "immutable": true,
2252 "locationInModule": {
2253 "filename": "lib/cache-policy.ts",
2254 "line": 81
2255 },
2256 "name": "enableAcceptEncodingBrotli",
2257 "optional": true,
2258 "type": {
2259 "primitive": "boolean"
2260 }
2261 },
2262 {
2263 "abstract": true,
2264 "docs": {
2265 "default": "false",
2266 "stability": "stable",
2267 "summary": "Whether to normalize and include the `Accept-Encoding` header in the cache key when the `Accept-Encoding` header is 'gzip'."
2268 },
2269 "immutable": true,
2270 "locationInModule": {
2271 "filename": "lib/cache-policy.ts",
2272 "line": 75
2273 },
2274 "name": "enableAcceptEncodingGzip",
2275 "optional": true,
2276 "type": {
2277 "primitive": "boolean"
2278 }
2279 },
2280 {
2281 "abstract": true,
2282 "docs": {
2283 "default": "CacheHeaderBehavior.none()",
2284 "stability": "stable",
2285 "summary": "Determines whether any HTTP headers are included in the cache key and automatically included in requests that CloudFront sends to the origin."
2286 },
2287 "immutable": true,
2288 "locationInModule": {
2289 "filename": "lib/cache-policy.ts",
2290 "line": 63
2291 },
2292 "name": "headerBehavior",
2293 "optional": true,
2294 "type": {
2295 "fqn": "@aws-cdk/aws-cloudfront.CacheHeaderBehavior"
2296 }
2297 },
2298 {
2299 "abstract": true,
2300 "docs": {
2301 "default": "- The greater of 1 year and ``defaultTtl``",
2302 "remarks": "CloudFront uses this value only when the origin sends Cache-Control or Expires headers with the object.",
2303 "stability": "stable",
2304 "summary": "The maximum amount of time for objects to stay in the CloudFront cache."
2305 },
2306 "immutable": true,
2307 "locationInModule": {
2308 "filename": "lib/cache-policy.ts",
2309 "line": 51
2310 },
2311 "name": "maxTtl",
2312 "optional": true,
2313 "type": {
2314 "fqn": "@aws-cdk/core.Duration"
2315 }
2316 },
2317 {
2318 "abstract": true,
2319 "docs": {
2320 "default": "Duration.seconds(0)",
2321 "stability": "stable",
2322 "summary": "The minimum amount of time for objects to stay in the CloudFront cache."
2323 },
2324 "immutable": true,
2325 "locationInModule": {
2326 "filename": "lib/cache-policy.ts",
2327 "line": 44
2328 },
2329 "name": "minTtl",
2330 "optional": true,
2331 "type": {
2332 "fqn": "@aws-cdk/core.Duration"
2333 }
2334 },
2335 {
2336 "abstract": true,
2337 "docs": {
2338 "default": "CacheQueryStringBehavior.none()",
2339 "stability": "stable",
2340 "summary": "Determines whether any query strings are included in the cache key and automatically included in requests that CloudFront sends to the origin."
2341 },
2342 "immutable": true,
2343 "locationInModule": {
2344 "filename": "lib/cache-policy.ts",
2345 "line": 69
2346 },
2347 "name": "queryStringBehavior",
2348 "optional": true,
2349 "type": {
2350 "fqn": "@aws-cdk/aws-cloudfront.CacheQueryStringBehavior"
2351 }
2352 }
2353 ],
2354 "symbolId": "lib/cache-policy:CachePolicyProps"
2355 },
2356 "@aws-cdk/aws-cloudfront.CacheQueryStringBehavior": {
2357 "assembly": "@aws-cdk/aws-cloudfront",
2358 "docs": {
2359 "custom": {
2360 "exampleMetadata": "infused"
2361 },
2362 "example": "// Creating a custom cache policy for a Distribution -- all parameters optional\ndeclare const bucketOrigin: origins.S3Origin;\nconst myCachePolicy = new cloudfront.CachePolicy(this, 'myCachePolicy', {\n cachePolicyName: 'MyPolicy',\n comment: 'A default policy',\n defaultTtl: Duration.days(2),\n minTtl: Duration.minutes(1),\n maxTtl: Duration.days(10),\n cookieBehavior: cloudfront.CacheCookieBehavior.all(),\n headerBehavior: cloudfront.CacheHeaderBehavior.allowList('X-CustomHeader'),\n queryStringBehavior: cloudfront.CacheQueryStringBehavior.denyList('username'),\n enableAcceptEncodingGzip: true,\n enableAcceptEncodingBrotli: true,\n});\nnew cloudfront.Distribution(this, 'myDistCustomPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n cachePolicy: myCachePolicy,\n },\n});",
2363 "stability": "stable",
2364 "summary": "Determines whether any URL query strings in viewer requests are included in the cache key and automatically included in requests that CloudFront sends to the origin."
2365 },
2366 "fqn": "@aws-cdk/aws-cloudfront.CacheQueryStringBehavior",
2367 "kind": "class",
2368 "locationInModule": {
2369 "filename": "lib/cache-policy.ts",
2370 "line": 261
2371 },
2372 "methods": [
2373 {
2374 "docs": {
2375 "stability": "stable",
2376 "summary": "All query strings in viewer requests are included in the cache key and are automatically included in requests that CloudFront sends to the origin."
2377 },
2378 "locationInModule": {
2379 "filename": "lib/cache-policy.ts",
2380 "line": 271
2381 },
2382 "name": "all",
2383 "returns": {
2384 "type": {
2385 "fqn": "@aws-cdk/aws-cloudfront.CacheQueryStringBehavior"
2386 }
2387 },
2388 "static": true
2389 },
2390 {
2391 "docs": {
2392 "stability": "stable",
2393 "summary": "Only the provided `queryStrings` are included in the cache key and automatically included in requests that CloudFront sends to the origin."
2394 },
2395 "locationInModule": {
2396 "filename": "lib/cache-policy.ts",
2397 "line": 276
2398 },
2399 "name": "allowList",
2400 "parameters": [
2401 {
2402 "name": "queryStrings",
2403 "type": {
2404 "primitive": "string"
2405 },
2406 "variadic": true
2407 }
2408 ],
2409 "returns": {
2410 "type": {
2411 "fqn": "@aws-cdk/aws-cloudfront.CacheQueryStringBehavior"
2412 }
2413 },
2414 "static": true,
2415 "variadic": true
2416 },
2417 {
2418 "docs": {
2419 "stability": "stable",
2420 "summary": "All query strings except the provided `queryStrings` are included in the cache key and automatically included in requests that CloudFront sends to the origin."
2421 },
2422 "locationInModule": {
2423 "filename": "lib/cache-policy.ts",
2424 "line": 287
2425 },
2426 "name": "denyList",
2427 "parameters": [
2428 {
2429 "name": "queryStrings",
2430 "type": {
2431 "primitive": "string"
2432 },
2433 "variadic": true
2434 }
2435 ],
2436 "returns": {
2437 "type": {
2438 "fqn": "@aws-cdk/aws-cloudfront.CacheQueryStringBehavior"
2439 }
2440 },
2441 "static": true,
2442 "variadic": true
2443 },
2444 {
2445 "docs": {
2446 "stability": "stable",
2447 "summary": "Query strings in viewer requests are not included in the cache key and are not automatically included in requests that CloudFront sends to the origin."
2448 },
2449 "locationInModule": {
2450 "filename": "lib/cache-policy.ts",
2451 "line": 266
2452 },
2453 "name": "none",
2454 "returns": {
2455 "type": {
2456 "fqn": "@aws-cdk/aws-cloudfront.CacheQueryStringBehavior"
2457 }
2458 },
2459 "static": true
2460 }
2461 ],
2462 "name": "CacheQueryStringBehavior",
2463 "properties": [
2464 {
2465 "docs": {
2466 "stability": "stable",
2467 "summary": "The behavior of query strings -- allow all, none, only an allow list, or a deny list."
2468 },
2469 "immutable": true,
2470 "locationInModule": {
2471 "filename": "lib/cache-policy.ts",
2472 "line": 295
2473 },
2474 "name": "behavior",
2475 "type": {
2476 "primitive": "string"
2477 }
2478 },
2479 {
2480 "docs": {
2481 "stability": "stable",
2482 "summary": "The query strings to allow or deny, if the behavior is an allow or deny list."
2483 },
2484 "immutable": true,
2485 "locationInModule": {
2486 "filename": "lib/cache-policy.ts",
2487 "line": 297
2488 },
2489 "name": "queryStrings",
2490 "optional": true,
2491 "type": {
2492 "collection": {
2493 "elementtype": {
2494 "primitive": "string"
2495 },
2496 "kind": "array"
2497 }
2498 }
2499 }
2500 ],
2501 "symbolId": "lib/cache-policy:CacheQueryStringBehavior"
2502 },
2503 "@aws-cdk/aws-cloudfront.CachedMethods": {
2504 "assembly": "@aws-cdk/aws-cloudfront",
2505 "docs": {
2506 "stability": "stable",
2507 "summary": "The HTTP methods that the Behavior will cache requests on.",
2508 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst cachedMethods = cloudfront.CachedMethods.CACHE_GET_HEAD;",
2509 "custom": {
2510 "exampleMetadata": "fixture=_generated"
2511 }
2512 },
2513 "fqn": "@aws-cdk/aws-cloudfront.CachedMethods",
2514 "kind": "class",
2515 "locationInModule": {
2516 "filename": "lib/distribution.ts",
2517 "line": 588
2518 },
2519 "name": "CachedMethods",
2520 "properties": [
2521 {
2522 "const": true,
2523 "docs": {
2524 "stability": "stable",
2525 "summary": "HEAD and GET."
2526 },
2527 "immutable": true,
2528 "locationInModule": {
2529 "filename": "lib/distribution.ts",
2530 "line": 590
2531 },
2532 "name": "CACHE_GET_HEAD",
2533 "static": true,
2534 "type": {
2535 "fqn": "@aws-cdk/aws-cloudfront.CachedMethods"
2536 }
2537 },
2538 {
2539 "const": true,
2540 "docs": {
2541 "stability": "stable",
2542 "summary": "HEAD, GET, and OPTIONS."
2543 },
2544 "immutable": true,
2545 "locationInModule": {
2546 "filename": "lib/distribution.ts",
2547 "line": 592
2548 },
2549 "name": "CACHE_GET_HEAD_OPTIONS",
2550 "static": true,
2551 "type": {
2552 "fqn": "@aws-cdk/aws-cloudfront.CachedMethods"
2553 }
2554 },
2555 {
2556 "docs": {
2557 "stability": "stable",
2558 "summary": "HTTP methods supported."
2559 },
2560 "immutable": true,
2561 "locationInModule": {
2562 "filename": "lib/distribution.ts",
2563 "line": 595
2564 },
2565 "name": "methods",
2566 "type": {
2567 "collection": {
2568 "elementtype": {
2569 "primitive": "string"
2570 },
2571 "kind": "array"
2572 }
2573 }
2574 }
2575 ],
2576 "symbolId": "lib/distribution:CachedMethods"
2577 },
2578 "@aws-cdk/aws-cloudfront.CfnCachePolicy": {
2579 "assembly": "@aws-cdk/aws-cloudfront",
2580 "base": "@aws-cdk/core.CfnResource",
2581 "docs": {
2582 "custom": {
2583 "cloudformationResource": "AWS::CloudFront::CachePolicy",
2584 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-cachepolicy.html",
2585 "exampleMetadata": "fixture=_generated"
2586 },
2587 "remarks": "A cache policy.\n\nWhen it’s attached to a cache behavior, the cache policy determines the following:\n\n- The values that CloudFront includes in the cache key. These values can include HTTP headers, cookies, and URL query strings. CloudFront uses the cache key to find an object in its cache that it can return to the viewer.\n- The default, minimum, and maximum time to live (TTL) values that you want objects to stay in the CloudFront cache.\n\nThe headers, cookies, and query strings that are included in the cache key are automatically included in requests that CloudFront sends to the origin. CloudFront sends a request when it can’t find a valid object in its cache that matches the request’s cache key. If you want to send values to the origin but *not* include them in the cache key, use `OriginRequestPolicy` .",
2588 "stability": "external",
2589 "summary": "A CloudFormation `AWS::CloudFront::CachePolicy`.",
2590 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst cfnCachePolicy = new cloudfront.CfnCachePolicy(this, 'MyCfnCachePolicy', {\n cachePolicyConfig: {\n defaultTtl: 123,\n maxTtl: 123,\n minTtl: 123,\n name: 'name',\n parametersInCacheKeyAndForwardedToOrigin: {\n cookiesConfig: {\n cookieBehavior: 'cookieBehavior',\n\n // the properties below are optional\n cookies: ['cookies'],\n },\n enableAcceptEncodingGzip: false,\n headersConfig: {\n headerBehavior: 'headerBehavior',\n\n // the properties below are optional\n headers: ['headers'],\n },\n queryStringsConfig: {\n queryStringBehavior: 'queryStringBehavior',\n\n // the properties below are optional\n queryStrings: ['queryStrings'],\n },\n\n // the properties below are optional\n enableAcceptEncodingBrotli: false,\n },\n\n // the properties below are optional\n comment: 'comment',\n },\n});"
2591 },
2592 "fqn": "@aws-cdk/aws-cloudfront.CfnCachePolicy",
2593 "initializer": {
2594 "docs": {
2595 "stability": "external",
2596 "summary": "Create a new `AWS::CloudFront::CachePolicy`."
2597 },
2598 "locationInModule": {
2599 "filename": "lib/cloudfront.generated.ts",
2600 "line": 143
2601 },
2602 "parameters": [
2603 {
2604 "docs": {
2605 "summary": "- scope in which this resource is defined."
2606 },
2607 "name": "scope",
2608 "type": {
2609 "fqn": "@aws-cdk/core.Construct"
2610 }
2611 },
2612 {
2613 "docs": {
2614 "summary": "- scoped id of the resource."
2615 },
2616 "name": "id",
2617 "type": {
2618 "primitive": "string"
2619 }
2620 },
2621 {
2622 "docs": {
2623 "summary": "- resource properties."
2624 },
2625 "name": "props",
2626 "type": {
2627 "fqn": "@aws-cdk/aws-cloudfront.CfnCachePolicyProps"
2628 }
2629 }
2630 ]
2631 },
2632 "interfaces": [
2633 "@aws-cdk/core.IInspectable"
2634 ],
2635 "kind": "class",
2636 "locationInModule": {
2637 "filename": "lib/cloudfront.generated.ts",
2638 "line": 92
2639 },
2640 "methods": [
2641 {
2642 "docs": {
2643 "stability": "external",
2644 "summary": "Examines the CloudFormation resource and discloses attributes."
2645 },
2646 "locationInModule": {
2647 "filename": "lib/cloudfront.generated.ts",
2648 "line": 158
2649 },
2650 "name": "inspect",
2651 "overrides": "@aws-cdk/core.IInspectable",
2652 "parameters": [
2653 {
2654 "docs": {
2655 "summary": "- tree inspector to collect and process attributes."
2656 },
2657 "name": "inspector",
2658 "type": {
2659 "fqn": "@aws-cdk/core.TreeInspector"
2660 }
2661 }
2662 ]
2663 },
2664 {
2665 "docs": {
2666 "stability": "external"
2667 },
2668 "locationInModule": {
2669 "filename": "lib/cloudfront.generated.ts",
2670 "line": 169
2671 },
2672 "name": "renderProperties",
2673 "overrides": "@aws-cdk/core.CfnResource",
2674 "parameters": [
2675 {
2676 "name": "props",
2677 "type": {
2678 "collection": {
2679 "elementtype": {
2680 "primitive": "any"
2681 },
2682 "kind": "map"
2683 }
2684 }
2685 }
2686 ],
2687 "protected": true,
2688 "returns": {
2689 "type": {
2690 "collection": {
2691 "elementtype": {
2692 "primitive": "any"
2693 },
2694 "kind": "map"
2695 }
2696 }
2697 }
2698 }
2699 ],
2700 "name": "CfnCachePolicy",
2701 "properties": [
2702 {
2703 "const": true,
2704 "docs": {
2705 "stability": "external",
2706 "summary": "The CloudFormation resource type name for this resource class."
2707 },
2708 "immutable": true,
2709 "locationInModule": {
2710 "filename": "lib/cloudfront.generated.ts",
2711 "line": 96
2712 },
2713 "name": "CFN_RESOURCE_TYPE_NAME",
2714 "static": true,
2715 "type": {
2716 "primitive": "string"
2717 }
2718 },
2719 {
2720 "docs": {
2721 "custom": {
2722 "cloudformationAttribute": "Id"
2723 },
2724 "remarks": "For example: `2766f7b2-75c5-41c6-8f06-bf4303a2f2f5` .",
2725 "stability": "external",
2726 "summary": "The unique identifier for the cache policy."
2727 },
2728 "immutable": true,
2729 "locationInModule": {
2730 "filename": "lib/cloudfront.generated.ts",
2731 "line": 121
2732 },
2733 "name": "attrId",
2734 "type": {
2735 "primitive": "string"
2736 }
2737 },
2738 {
2739 "docs": {
2740 "custom": {
2741 "cloudformationAttribute": "LastModifiedTime"
2742 },
2743 "stability": "external",
2744 "summary": "The date and time when the cache policy was last modified."
2745 },
2746 "immutable": true,
2747 "locationInModule": {
2748 "filename": "lib/cloudfront.generated.ts",
2749 "line": 127
2750 },
2751 "name": "attrLastModifiedTime",
2752 "type": {
2753 "primitive": "string"
2754 }
2755 },
2756 {
2757 "docs": {
2758 "stability": "external"
2759 },
2760 "immutable": true,
2761 "locationInModule": {
2762 "filename": "lib/cloudfront.generated.ts",
2763 "line": 163
2764 },
2765 "name": "cfnProperties",
2766 "overrides": "@aws-cdk/core.CfnResource",
2767 "protected": true,
2768 "type": {
2769 "collection": {
2770 "elementtype": {
2771 "primitive": "any"
2772 },
2773 "kind": "map"
2774 }
2775 }
2776 },
2777 {
2778 "docs": {
2779 "custom": {
2780 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-cachepolicy.html#cfn-cloudfront-cachepolicy-cachepolicyconfig"
2781 },
2782 "stability": "external",
2783 "summary": "The cache policy configuration."
2784 },
2785 "locationInModule": {
2786 "filename": "lib/cloudfront.generated.ts",
2787 "line": 134
2788 },
2789 "name": "cachePolicyConfig",
2790 "type": {
2791 "union": {
2792 "types": [
2793 {
2794 "fqn": "@aws-cdk/core.IResolvable"
2795 },
2796 {
2797 "fqn": "@aws-cdk/aws-cloudfront.CfnCachePolicy.CachePolicyConfigProperty"
2798 }
2799 ]
2800 }
2801 }
2802 }
2803 ],
2804 "symbolId": "lib/cloudfront.generated:CfnCachePolicy"
2805 },
2806 "@aws-cdk/aws-cloudfront.CfnCachePolicy.CachePolicyConfigProperty": {
2807 "assembly": "@aws-cdk/aws-cloudfront",
2808 "datatype": true,
2809 "docs": {
2810 "custom": {
2811 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-cachepolicyconfig.html",
2812 "exampleMetadata": "fixture=_generated"
2813 },
2814 "remarks": "This configuration determines the following:\n\n- The values that CloudFront includes in the cache key. These values can include HTTP headers, cookies, and URL query strings. CloudFront uses the cache key to find an object in its cache that it can return to the viewer.\n- The default, minimum, and maximum time to live (TTL) values that you want objects to stay in the CloudFront cache.\n\nThe headers, cookies, and query strings that are included in the cache key are automatically included in requests that CloudFront sends to the origin. CloudFront sends a request when it can’t find a valid object in its cache that matches the request’s cache key. If you want to send values to the origin but *not* include them in the cache key, use `OriginRequestPolicy` .",
2815 "stability": "external",
2816 "summary": "A cache policy configuration.",
2817 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst cachePolicyConfigProperty: cloudfront.CfnCachePolicy.CachePolicyConfigProperty = {\n defaultTtl: 123,\n maxTtl: 123,\n minTtl: 123,\n name: 'name',\n parametersInCacheKeyAndForwardedToOrigin: {\n cookiesConfig: {\n cookieBehavior: 'cookieBehavior',\n\n // the properties below are optional\n cookies: ['cookies'],\n },\n enableAcceptEncodingGzip: false,\n headersConfig: {\n headerBehavior: 'headerBehavior',\n\n // the properties below are optional\n headers: ['headers'],\n },\n queryStringsConfig: {\n queryStringBehavior: 'queryStringBehavior',\n\n // the properties below are optional\n queryStrings: ['queryStrings'],\n },\n\n // the properties below are optional\n enableAcceptEncodingBrotli: false,\n },\n\n // the properties below are optional\n comment: 'comment',\n};"
2818 },
2819 "fqn": "@aws-cdk/aws-cloudfront.CfnCachePolicy.CachePolicyConfigProperty",
2820 "kind": "interface",
2821 "locationInModule": {
2822 "filename": "lib/cloudfront.generated.ts",
2823 "line": 190
2824 },
2825 "name": "CachePolicyConfigProperty",
2826 "namespace": "CfnCachePolicy",
2827 "properties": [
2828 {
2829 "abstract": true,
2830 "docs": {
2831 "custom": {
2832 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-cachepolicyconfig.html#cfn-cloudfront-cachepolicy-cachepolicyconfig-defaultttl"
2833 },
2834 "remarks": "CloudFront uses this value as the object’s time to live (TTL) only when the origin does *not* send `Cache-Control` or `Expires` headers with the object. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide* .\n\nThe default value for this field is 86400 seconds (one day). If the value of `MinTTL` is more than 86400 seconds, then the default value for this field is the same as the value of `MinTTL` .",
2835 "stability": "external",
2836 "summary": "The default amount of time, in seconds, that you want objects to stay in the CloudFront cache before CloudFront sends another request to the origin to see if the object has been updated."
2837 },
2838 "immutable": true,
2839 "locationInModule": {
2840 "filename": "lib/cloudfront.generated.ts",
2841 "line": 204
2842 },
2843 "name": "defaultTtl",
2844 "type": {
2845 "primitive": "number"
2846 }
2847 },
2848 {
2849 "abstract": true,
2850 "docs": {
2851 "custom": {
2852 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-cachepolicyconfig.html#cfn-cloudfront-cachepolicy-cachepolicyconfig-maxttl"
2853 },
2854 "remarks": "CloudFront uses this value only when the origin sends `Cache-Control` or `Expires` headers with the object. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide* .\n\nThe default value for this field is 31536000 seconds (one year). If the value of `MinTTL` or `DefaultTTL` is more than 31536000 seconds, then the default value for this field is the same as the value of `DefaultTTL` .",
2855 "stability": "external",
2856 "summary": "The maximum amount of time, in seconds, that objects stay in the CloudFront cache before CloudFront sends another request to the origin to see if the object has been updated."
2857 },
2858 "immutable": true,
2859 "locationInModule": {
2860 "filename": "lib/cloudfront.generated.ts",
2861 "line": 212
2862 },
2863 "name": "maxTtl",
2864 "type": {
2865 "primitive": "number"
2866 }
2867 },
2868 {
2869 "abstract": true,
2870 "docs": {
2871 "custom": {
2872 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-cachepolicyconfig.html#cfn-cloudfront-cachepolicy-cachepolicyconfig-minttl"
2873 },
2874 "remarks": "For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide* .",
2875 "stability": "external",
2876 "summary": "The minimum amount of time, in seconds, that you want objects to stay in the CloudFront cache before CloudFront sends another request to the origin to see if the object has been updated."
2877 },
2878 "immutable": true,
2879 "locationInModule": {
2880 "filename": "lib/cloudfront.generated.ts",
2881 "line": 218
2882 },
2883 "name": "minTtl",
2884 "type": {
2885 "primitive": "number"
2886 }
2887 },
2888 {
2889 "abstract": true,
2890 "docs": {
2891 "custom": {
2892 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-cachepolicyconfig.html#cfn-cloudfront-cachepolicy-cachepolicyconfig-name"
2893 },
2894 "stability": "external",
2895 "summary": "A unique name to identify the cache policy."
2896 },
2897 "immutable": true,
2898 "locationInModule": {
2899 "filename": "lib/cloudfront.generated.ts",
2900 "line": 224
2901 },
2902 "name": "name",
2903 "type": {
2904 "primitive": "string"
2905 }
2906 },
2907 {
2908 "abstract": true,
2909 "docs": {
2910 "custom": {
2911 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-cachepolicyconfig.html#cfn-cloudfront-cachepolicy-cachepolicyconfig-parametersincachekeyandforwardedtoorigin"
2912 },
2913 "remarks": "The values included in the cache key are automatically included in requests that CloudFront sends to the origin.",
2914 "stability": "external",
2915 "summary": "The HTTP headers, cookies, and URL query strings to include in the cache key."
2916 },
2917 "immutable": true,
2918 "locationInModule": {
2919 "filename": "lib/cloudfront.generated.ts",
2920 "line": 230
2921 },
2922 "name": "parametersInCacheKeyAndForwardedToOrigin",
2923 "type": {
2924 "union": {
2925 "types": [
2926 {
2927 "fqn": "@aws-cdk/core.IResolvable"
2928 },
2929 {
2930 "fqn": "@aws-cdk/aws-cloudfront.CfnCachePolicy.ParametersInCacheKeyAndForwardedToOriginProperty"
2931 }
2932 ]
2933 }
2934 }
2935 },
2936 {
2937 "abstract": true,
2938 "docs": {
2939 "custom": {
2940 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-cachepolicyconfig.html#cfn-cloudfront-cachepolicy-cachepolicyconfig-comment"
2941 },
2942 "remarks": "The comment cannot be longer than 128 characters.",
2943 "stability": "external",
2944 "summary": "A comment to describe the cache policy."
2945 },
2946 "immutable": true,
2947 "locationInModule": {
2948 "filename": "lib/cloudfront.generated.ts",
2949 "line": 196
2950 },
2951 "name": "comment",
2952 "optional": true,
2953 "type": {
2954 "primitive": "string"
2955 }
2956 }
2957 ],
2958 "symbolId": "lib/cloudfront.generated:CfnCachePolicy.CachePolicyConfigProperty"
2959 },
2960 "@aws-cdk/aws-cloudfront.CfnCachePolicy.CookiesConfigProperty": {
2961 "assembly": "@aws-cdk/aws-cloudfront",
2962 "datatype": true,
2963 "docs": {
2964 "custom": {
2965 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-cookiesconfig.html",
2966 "exampleMetadata": "fixture=_generated"
2967 },
2968 "stability": "external",
2969 "summary": "An object that determines whether any cookies in viewer requests (and if so, which cookies) are included in the cache key and automatically included in requests that CloudFront sends to the origin.",
2970 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst cookiesConfigProperty: cloudfront.CfnCachePolicy.CookiesConfigProperty = {\n cookieBehavior: 'cookieBehavior',\n\n // the properties below are optional\n cookies: ['cookies'],\n};"
2971 },
2972 "fqn": "@aws-cdk/aws-cloudfront.CfnCachePolicy.CookiesConfigProperty",
2973 "kind": "interface",
2974 "locationInModule": {
2975 "filename": "lib/cloudfront.generated.ts",
2976 "line": 311
2977 },
2978 "name": "CookiesConfigProperty",
2979 "namespace": "CfnCachePolicy",
2980 "properties": [
2981 {
2982 "abstract": true,
2983 "docs": {
2984 "custom": {
2985 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-cookiesconfig.html#cfn-cloudfront-cachepolicy-cookiesconfig-cookiebehavior"
2986 },
2987 "remarks": "Valid values are:\n\n- `none` – Cookies in viewer requests are not included in the cache key and are not automatically included in requests that CloudFront sends to the origin. Even when this field is set to `none` , any cookies that are listed in an `OriginRequestPolicy` *are* included in origin requests.\n- `whitelist` – The cookies in viewer requests that are listed in the `CookieNames` type are included in the cache key and automatically included in requests that CloudFront sends to the origin.\n- `allExcept` – All cookies in viewer requests that are **not** listed in the `CookieNames` type are included in the cache key and automatically included in requests that CloudFront sends to the origin.\n- `all` – All cookies in viewer requests are included in the cache key and are automatically included in requests that CloudFront sends to the origin.",
2988 "stability": "external",
2989 "summary": "Determines whether any cookies in viewer requests are included in the cache key and automatically included in requests that CloudFront sends to the origin."
2990 },
2991 "immutable": true,
2992 "locationInModule": {
2993 "filename": "lib/cloudfront.generated.ts",
2994 "line": 322
2995 },
2996 "name": "cookieBehavior",
2997 "type": {
2998 "primitive": "string"
2999 }
3000 },
3001 {
3002 "abstract": true,
3003 "docs": {
3004 "custom": {
3005 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-cookiesconfig.html#cfn-cloudfront-cachepolicy-cookiesconfig-cookies"
3006 },
3007 "stability": "external",
3008 "summary": "Contains a list of cookie names."
3009 },
3010 "immutable": true,
3011 "locationInModule": {
3012 "filename": "lib/cloudfront.generated.ts",
3013 "line": 328
3014 },
3015 "name": "cookies",
3016 "optional": true,
3017 "type": {
3018 "collection": {
3019 "elementtype": {
3020 "primitive": "string"
3021 },
3022 "kind": "array"
3023 }
3024 }
3025 }
3026 ],
3027 "symbolId": "lib/cloudfront.generated:CfnCachePolicy.CookiesConfigProperty"
3028 },
3029 "@aws-cdk/aws-cloudfront.CfnCachePolicy.HeadersConfigProperty": {
3030 "assembly": "@aws-cdk/aws-cloudfront",
3031 "datatype": true,
3032 "docs": {
3033 "custom": {
3034 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-headersconfig.html",
3035 "exampleMetadata": "fixture=_generated"
3036 },
3037 "stability": "external",
3038 "summary": "An object that determines whether any HTTP headers (and if so, which headers) are included in the cache key and automatically included in requests that CloudFront sends to the origin.",
3039 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst headersConfigProperty: cloudfront.CfnCachePolicy.HeadersConfigProperty = {\n headerBehavior: 'headerBehavior',\n\n // the properties below are optional\n headers: ['headers'],\n};"
3040 },
3041 "fqn": "@aws-cdk/aws-cloudfront.CfnCachePolicy.HeadersConfigProperty",
3042 "kind": "interface",
3043 "locationInModule": {
3044 "filename": "lib/cloudfront.generated.ts",
3045 "line": 393
3046 },
3047 "name": "HeadersConfigProperty",
3048 "namespace": "CfnCachePolicy",
3049 "properties": [
3050 {
3051 "abstract": true,
3052 "docs": {
3053 "custom": {
3054 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-headersconfig.html#cfn-cloudfront-cachepolicy-headersconfig-headerbehavior"
3055 },
3056 "remarks": "Valid values are:\n\n- `none` – HTTP headers are not included in the cache key and are not automatically included in requests that CloudFront sends to the origin. Even when this field is set to `none` , any headers that are listed in an `OriginRequestPolicy` *are* included in origin requests.\n- `whitelist` – The HTTP headers that are listed in the `Headers` type are included in the cache key and are automatically included in requests that CloudFront sends to the origin.",
3057 "stability": "external",
3058 "summary": "Determines whether any HTTP headers are included in the cache key and automatically included in requests that CloudFront sends to the origin."
3059 },
3060 "immutable": true,
3061 "locationInModule": {
3062 "filename": "lib/cloudfront.generated.ts",
3063 "line": 402
3064 },
3065 "name": "headerBehavior",
3066 "type": {
3067 "primitive": "string"
3068 }
3069 },
3070 {
3071 "abstract": true,
3072 "docs": {
3073 "custom": {
3074 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-headersconfig.html#cfn-cloudfront-cachepolicy-headersconfig-headers"
3075 },
3076 "stability": "external",
3077 "summary": "Contains a list of HTTP header names."
3078 },
3079 "immutable": true,
3080 "locationInModule": {
3081 "filename": "lib/cloudfront.generated.ts",
3082 "line": 408
3083 },
3084 "name": "headers",
3085 "optional": true,
3086 "type": {
3087 "collection": {
3088 "elementtype": {
3089 "primitive": "string"
3090 },
3091 "kind": "array"
3092 }
3093 }
3094 }
3095 ],
3096 "symbolId": "lib/cloudfront.generated:CfnCachePolicy.HeadersConfigProperty"
3097 },
3098 "@aws-cdk/aws-cloudfront.CfnCachePolicy.ParametersInCacheKeyAndForwardedToOriginProperty": {
3099 "assembly": "@aws-cdk/aws-cloudfront",
3100 "datatype": true,
3101 "docs": {
3102 "custom": {
3103 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-parametersincachekeyandforwardedtoorigin.html",
3104 "exampleMetadata": "fixture=_generated"
3105 },
3106 "remarks": "These values can include HTTP headers, cookies, and URL query strings. CloudFront uses the cache key to find an object in its cache that it can return to the viewer.\n\nThe headers, cookies, and query strings that are included in the cache key are automatically included in requests that CloudFront sends to the origin. CloudFront sends a request when it can’t find an object in its cache that matches the request’s cache key. If you want to send values to the origin but *not* include them in the cache key, use `OriginRequestPolicy` .",
3107 "stability": "external",
3108 "summary": "This object determines the values that CloudFront includes in the cache key.",
3109 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst parametersInCacheKeyAndForwardedToOriginProperty: cloudfront.CfnCachePolicy.ParametersInCacheKeyAndForwardedToOriginProperty = {\n cookiesConfig: {\n cookieBehavior: 'cookieBehavior',\n\n // the properties below are optional\n cookies: ['cookies'],\n },\n enableAcceptEncodingGzip: false,\n headersConfig: {\n headerBehavior: 'headerBehavior',\n\n // the properties below are optional\n headers: ['headers'],\n },\n queryStringsConfig: {\n queryStringBehavior: 'queryStringBehavior',\n\n // the properties below are optional\n queryStrings: ['queryStrings'],\n },\n\n // the properties below are optional\n enableAcceptEncodingBrotli: false,\n};"
3110 },
3111 "fqn": "@aws-cdk/aws-cloudfront.CfnCachePolicy.ParametersInCacheKeyAndForwardedToOriginProperty",
3112 "kind": "interface",
3113 "locationInModule": {
3114 "filename": "lib/cloudfront.generated.ts",
3115 "line": 475
3116 },
3117 "name": "ParametersInCacheKeyAndForwardedToOriginProperty",
3118 "namespace": "CfnCachePolicy",
3119 "properties": [
3120 {
3121 "abstract": true,
3122 "docs": {
3123 "custom": {
3124 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-parametersincachekeyandforwardedtoorigin.html#cfn-cloudfront-cachepolicy-parametersincachekeyandforwardedtoorigin-cookiesconfig"
3125 },
3126 "stability": "external",
3127 "summary": "An object that determines whether any cookies in viewer requests (and if so, which cookies) are included in the cache key and automatically included in requests that CloudFront sends to the origin."
3128 },
3129 "immutable": true,
3130 "locationInModule": {
3131 "filename": "lib/cloudfront.generated.ts",
3132 "line": 481
3133 },
3134 "name": "cookiesConfig",
3135 "type": {
3136 "union": {
3137 "types": [
3138 {
3139 "fqn": "@aws-cdk/core.IResolvable"
3140 },
3141 {
3142 "fqn": "@aws-cdk/aws-cloudfront.CfnCachePolicy.CookiesConfigProperty"
3143 }
3144 ]
3145 }
3146 }
3147 },
3148 {
3149 "abstract": true,
3150 "docs": {
3151 "custom": {
3152 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-parametersincachekeyandforwardedtoorigin.html#cfn-cloudfront-cachepolicy-parametersincachekeyandforwardedtoorigin-enableacceptencodinggzip"
3153 },
3154 "remarks": "This field is related to the `EnableAcceptEncodingBrotli` field. If one or both of these fields is `true` *and* the viewer request includes the `Accept-Encoding` header, then CloudFront does the following:\n\n- Normalizes the value of the viewer’s `Accept-Encoding` header\n- Includes the normalized header in the cache key\n- Includes the normalized header in the request to the origin, if a request is necessary\n\nFor more information, see [Compression support](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-policy-compressed-objects) in the *Amazon CloudFront Developer Guide* .\n\nIf you set this value to `true` , and this cache behavior also has an origin request policy attached, do not include the `Accept-Encoding` header in the origin request policy. CloudFront always includes the `Accept-Encoding` header in origin requests when the value of this field is `true` , so including this header in an origin request policy has no effect.\n\nIf both of these fields are `false` , then CloudFront treats the `Accept-Encoding` header the same as any other HTTP header in the viewer request. By default, it’s not included in the cache key and it’s not included in origin requests. In this case, you can manually add `Accept-Encoding` to the headers whitelist like any other HTTP header.",
3155 "stability": "external",
3156 "summary": "A flag that can affect whether the `Accept-Encoding` HTTP header is included in the cache key and included in requests that CloudFront sends to the origin."
3157 },
3158 "immutable": true,
3159 "locationInModule": {
3160 "filename": "lib/cloudfront.generated.ts",
3161 "line": 517
3162 },
3163 "name": "enableAcceptEncodingGzip",
3164 "type": {
3165 "union": {
3166 "types": [
3167 {
3168 "primitive": "boolean"
3169 },
3170 {
3171 "fqn": "@aws-cdk/core.IResolvable"
3172 }
3173 ]
3174 }
3175 }
3176 },
3177 {
3178 "abstract": true,
3179 "docs": {
3180 "custom": {
3181 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-parametersincachekeyandforwardedtoorigin.html#cfn-cloudfront-cachepolicy-parametersincachekeyandforwardedtoorigin-headersconfig"
3182 },
3183 "stability": "external",
3184 "summary": "An object that determines whether any HTTP headers (and if so, which headers) are included in the cache key and automatically included in requests that CloudFront sends to the origin."
3185 },
3186 "immutable": true,
3187 "locationInModule": {
3188 "filename": "lib/cloudfront.generated.ts",
3189 "line": 523
3190 },
3191 "name": "headersConfig",
3192 "type": {
3193 "union": {
3194 "types": [
3195 {
3196 "fqn": "@aws-cdk/core.IResolvable"
3197 },
3198 {
3199 "fqn": "@aws-cdk/aws-cloudfront.CfnCachePolicy.HeadersConfigProperty"
3200 }
3201 ]
3202 }
3203 }
3204 },
3205 {
3206 "abstract": true,
3207 "docs": {
3208 "custom": {
3209 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-parametersincachekeyandforwardedtoorigin.html#cfn-cloudfront-cachepolicy-parametersincachekeyandforwardedtoorigin-querystringsconfig"
3210 },
3211 "stability": "external",
3212 "summary": "An object that determines whether any URL query strings in viewer requests (and if so, which query strings) are included in the cache key and automatically included in requests that CloudFront sends to the origin."
3213 },
3214 "immutable": true,
3215 "locationInModule": {
3216 "filename": "lib/cloudfront.generated.ts",
3217 "line": 529
3218 },
3219 "name": "queryStringsConfig",
3220 "type": {
3221 "union": {
3222 "types": [
3223 {
3224 "fqn": "@aws-cdk/core.IResolvable"
3225 },
3226 {
3227 "fqn": "@aws-cdk/aws-cloudfront.CfnCachePolicy.QueryStringsConfigProperty"
3228 }
3229 ]
3230 }
3231 }
3232 },
3233 {
3234 "abstract": true,
3235 "docs": {
3236 "custom": {
3237 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-parametersincachekeyandforwardedtoorigin.html#cfn-cloudfront-cachepolicy-parametersincachekeyandforwardedtoorigin-enableacceptencodingbrotli"
3238 },
3239 "remarks": "This field is related to the `EnableAcceptEncodingGzip` field. If one or both of these fields is `true` *and* the viewer request includes the `Accept-Encoding` header, then CloudFront does the following:\n\n- Normalizes the value of the viewer’s `Accept-Encoding` header\n- Includes the normalized header in the cache key\n- Includes the normalized header in the request to the origin, if a request is necessary\n\nFor more information, see [Compression support](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-policy-compressed-objects) in the *Amazon CloudFront Developer Guide* .\n\nIf you set this value to `true` , and this cache behavior also has an origin request policy attached, do not include the `Accept-Encoding` header in the origin request policy. CloudFront always includes the `Accept-Encoding` header in origin requests when the value of this field is `true` , so including this header in an origin request policy has no effect.\n\nIf both of these fields are `false` , then CloudFront treats the `Accept-Encoding` header the same as any other HTTP header in the viewer request. By default, it’s not included in the cache key and it’s not included in origin requests. In this case, you can manually add `Accept-Encoding` to the headers whitelist like any other HTTP header.",
3240 "stability": "external",
3241 "summary": "A flag that can affect whether the `Accept-Encoding` HTTP header is included in the cache key and included in requests that CloudFront sends to the origin."
3242 },
3243 "immutable": true,
3244 "locationInModule": {
3245 "filename": "lib/cloudfront.generated.ts",
3246 "line": 499
3247 },
3248 "name": "enableAcceptEncodingBrotli",
3249 "optional": true,
3250 "type": {
3251 "union": {
3252 "types": [
3253 {
3254 "primitive": "boolean"
3255 },
3256 {
3257 "fqn": "@aws-cdk/core.IResolvable"
3258 }
3259 ]
3260 }
3261 }
3262 }
3263 ],
3264 "symbolId": "lib/cloudfront.generated:CfnCachePolicy.ParametersInCacheKeyAndForwardedToOriginProperty"
3265 },
3266 "@aws-cdk/aws-cloudfront.CfnCachePolicy.QueryStringsConfigProperty": {
3267 "assembly": "@aws-cdk/aws-cloudfront",
3268 "datatype": true,
3269 "docs": {
3270 "custom": {
3271 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-querystringsconfig.html",
3272 "exampleMetadata": "fixture=_generated"
3273 },
3274 "stability": "external",
3275 "summary": "An object that determines whether any URL query strings in viewer requests (and if so, which query strings) are included in the cache key and automatically included in requests that CloudFront sends to the origin.",
3276 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst queryStringsConfigProperty: cloudfront.CfnCachePolicy.QueryStringsConfigProperty = {\n queryStringBehavior: 'queryStringBehavior',\n\n // the properties below are optional\n queryStrings: ['queryStrings'],\n};"
3277 },
3278 "fqn": "@aws-cdk/aws-cloudfront.CfnCachePolicy.QueryStringsConfigProperty",
3279 "kind": "interface",
3280 "locationInModule": {
3281 "filename": "lib/cloudfront.generated.ts",
3282 "line": 606
3283 },
3284 "name": "QueryStringsConfigProperty",
3285 "namespace": "CfnCachePolicy",
3286 "properties": [
3287 {
3288 "abstract": true,
3289 "docs": {
3290 "custom": {
3291 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-querystringsconfig.html#cfn-cloudfront-cachepolicy-querystringsconfig-querystringbehavior"
3292 },
3293 "remarks": "Valid values are:\n\n- `none` – Query strings in viewer requests are not included in the cache key and are not automatically included in requests that CloudFront sends to the origin. Even when this field is set to `none` , any query strings that are listed in an `OriginRequestPolicy` *are* included in origin requests.\n- `whitelist` – The query strings in viewer requests that are listed in the `QueryStringNames` type are included in the cache key and automatically included in requests that CloudFront sends to the origin.\n- `allExcept` – All query strings in viewer requests that are **not** listed in the `QueryStringNames` type are included in the cache key and automatically included in requests that CloudFront sends to the origin.\n- `all` – All query strings in viewer requests are included in the cache key and are automatically included in requests that CloudFront sends to the origin.",
3294 "stability": "external",
3295 "summary": "Determines whether any URL query strings in viewer requests are included in the cache key and automatically included in requests that CloudFront sends to the origin."
3296 },
3297 "immutable": true,
3298 "locationInModule": {
3299 "filename": "lib/cloudfront.generated.ts",
3300 "line": 617
3301 },
3302 "name": "queryStringBehavior",
3303 "type": {
3304 "primitive": "string"
3305 }
3306 },
3307 {
3308 "abstract": true,
3309 "docs": {
3310 "custom": {
3311 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachepolicy-querystringsconfig.html#cfn-cloudfront-cachepolicy-querystringsconfig-querystrings"
3312 },
3313 "stability": "external",
3314 "summary": "Contains a list of query string names."
3315 },
3316 "immutable": true,
3317 "locationInModule": {
3318 "filename": "lib/cloudfront.generated.ts",
3319 "line": 623
3320 },
3321 "name": "queryStrings",
3322 "optional": true,
3323 "type": {
3324 "collection": {
3325 "elementtype": {
3326 "primitive": "string"
3327 },
3328 "kind": "array"
3329 }
3330 }
3331 }
3332 ],
3333 "symbolId": "lib/cloudfront.generated:CfnCachePolicy.QueryStringsConfigProperty"
3334 },
3335 "@aws-cdk/aws-cloudfront.CfnCachePolicyProps": {
3336 "assembly": "@aws-cdk/aws-cloudfront",
3337 "datatype": true,
3338 "docs": {
3339 "custom": {
3340 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-cachepolicy.html",
3341 "exampleMetadata": "fixture=_generated"
3342 },
3343 "stability": "external",
3344 "summary": "Properties for defining a `CfnCachePolicy`.",
3345 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst cfnCachePolicyProps: cloudfront.CfnCachePolicyProps = {\n cachePolicyConfig: {\n defaultTtl: 123,\n maxTtl: 123,\n minTtl: 123,\n name: 'name',\n parametersInCacheKeyAndForwardedToOrigin: {\n cookiesConfig: {\n cookieBehavior: 'cookieBehavior',\n\n // the properties below are optional\n cookies: ['cookies'],\n },\n enableAcceptEncodingGzip: false,\n headersConfig: {\n headerBehavior: 'headerBehavior',\n\n // the properties below are optional\n headers: ['headers'],\n },\n queryStringsConfig: {\n queryStringBehavior: 'queryStringBehavior',\n\n // the properties below are optional\n queryStrings: ['queryStrings'],\n },\n\n // the properties below are optional\n enableAcceptEncodingBrotli: false,\n },\n\n // the properties below are optional\n comment: 'comment',\n },\n};"
3346 },
3347 "fqn": "@aws-cdk/aws-cloudfront.CfnCachePolicyProps",
3348 "kind": "interface",
3349 "locationInModule": {
3350 "filename": "lib/cloudfront.generated.ts",
3351 "line": 19
3352 },
3353 "name": "CfnCachePolicyProps",
3354 "properties": [
3355 {
3356 "abstract": true,
3357 "docs": {
3358 "custom": {
3359 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-cachepolicy.html#cfn-cloudfront-cachepolicy-cachepolicyconfig"
3360 },
3361 "stability": "external",
3362 "summary": "The cache policy configuration."
3363 },
3364 "immutable": true,
3365 "locationInModule": {
3366 "filename": "lib/cloudfront.generated.ts",
3367 "line": 26
3368 },
3369 "name": "cachePolicyConfig",
3370 "type": {
3371 "union": {
3372 "types": [
3373 {
3374 "fqn": "@aws-cdk/core.IResolvable"
3375 },
3376 {
3377 "fqn": "@aws-cdk/aws-cloudfront.CfnCachePolicy.CachePolicyConfigProperty"
3378 }
3379 ]
3380 }
3381 }
3382 }
3383 ],
3384 "symbolId": "lib/cloudfront.generated:CfnCachePolicyProps"
3385 },
3386 "@aws-cdk/aws-cloudfront.CfnCloudFrontOriginAccessIdentity": {
3387 "assembly": "@aws-cdk/aws-cloudfront",
3388 "base": "@aws-cdk/core.CfnResource",
3389 "docs": {
3390 "custom": {
3391 "cloudformationResource": "AWS::CloudFront::CloudFrontOriginAccessIdentity",
3392 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-cloudfrontoriginaccessidentity.html",
3393 "exampleMetadata": "fixture=_generated"
3394 },
3395 "remarks": "The request to create a new origin access identity (OAI). An origin access identity is a special CloudFront user that you can associate with Amazon S3 origins, so that you can secure all or just some of your Amazon S3 content. For more information, see [Restricting Access to Amazon S3 Content by Using an Origin Access Identity](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-restricting-access-to-s3.html) in the *Amazon CloudFront Developer Guide* .",
3396 "stability": "external",
3397 "summary": "A CloudFormation `AWS::CloudFront::CloudFrontOriginAccessIdentity`.",
3398 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst cfnCloudFrontOriginAccessIdentity = new cloudfront.CfnCloudFrontOriginAccessIdentity(this, 'MyCfnCloudFrontOriginAccessIdentity', {\n cloudFrontOriginAccessIdentityConfig: {\n comment: 'comment',\n },\n});"
3399 },
3400 "fqn": "@aws-cdk/aws-cloudfront.CfnCloudFrontOriginAccessIdentity",
3401 "initializer": {
3402 "docs": {
3403 "stability": "external",
3404 "summary": "Create a new `AWS::CloudFront::CloudFrontOriginAccessIdentity`."
3405 },
3406 "locationInModule": {
3407 "filename": "lib/cloudfront.generated.ts",
3408 "line": 804
3409 },
3410 "parameters": [
3411 {
3412 "docs": {
3413 "summary": "- scope in which this resource is defined."
3414 },
3415 "name": "scope",
3416 "type": {
3417 "fqn": "@aws-cdk/core.Construct"
3418 }
3419 },
3420 {
3421 "docs": {
3422 "summary": "- scoped id of the resource."
3423 },
3424 "name": "id",
3425 "type": {
3426 "primitive": "string"
3427 }
3428 },
3429 {
3430 "docs": {
3431 "summary": "- resource properties."
3432 },
3433 "name": "props",
3434 "type": {
3435 "fqn": "@aws-cdk/aws-cloudfront.CfnCloudFrontOriginAccessIdentityProps"
3436 }
3437 }
3438 ]
3439 },
3440 "interfaces": [
3441 "@aws-cdk/core.IInspectable"
3442 ],
3443 "kind": "class",
3444 "locationInModule": {
3445 "filename": "lib/cloudfront.generated.ts",
3446 "line": 753
3447 },
3448 "methods": [
3449 {
3450 "docs": {
3451 "stability": "external",
3452 "summary": "Examines the CloudFormation resource and discloses attributes."
3453 },
3454 "locationInModule": {
3455 "filename": "lib/cloudfront.generated.ts",
3456 "line": 819
3457 },
3458 "name": "inspect",
3459 "overrides": "@aws-cdk/core.IInspectable",
3460 "parameters": [
3461 {
3462 "docs": {
3463 "summary": "- tree inspector to collect and process attributes."
3464 },
3465 "name": "inspector",
3466 "type": {
3467 "fqn": "@aws-cdk/core.TreeInspector"
3468 }
3469 }
3470 ]
3471 },
3472 {
3473 "docs": {
3474 "stability": "external"
3475 },
3476 "locationInModule": {
3477 "filename": "lib/cloudfront.generated.ts",
3478 "line": 830
3479 },
3480 "name": "renderProperties",
3481 "overrides": "@aws-cdk/core.CfnResource",
3482 "parameters": [
3483 {
3484 "name": "props",
3485 "type": {
3486 "collection": {
3487 "elementtype": {
3488 "primitive": "any"
3489 },
3490 "kind": "map"
3491 }
3492 }
3493 }
3494 ],
3495 "protected": true,
3496 "returns": {
3497 "type": {
3498 "collection": {
3499 "elementtype": {
3500 "primitive": "any"
3501 },
3502 "kind": "map"
3503 }
3504 }
3505 }
3506 }
3507 ],
3508 "name": "CfnCloudFrontOriginAccessIdentity",
3509 "properties": [
3510 {
3511 "const": true,
3512 "docs": {
3513 "stability": "external",
3514 "summary": "The CloudFormation resource type name for this resource class."
3515 },
3516 "immutable": true,
3517 "locationInModule": {
3518 "filename": "lib/cloudfront.generated.ts",
3519 "line": 757
3520 },
3521 "name": "CFN_RESOURCE_TYPE_NAME",
3522 "static": true,
3523 "type": {
3524 "primitive": "string"
3525 }
3526 },
3527 {
3528 "docs": {
3529 "custom": {
3530 "cloudformationAttribute": "Id"
3531 },
3532 "stability": "external"
3533 },
3534 "immutable": true,
3535 "locationInModule": {
3536 "filename": "lib/cloudfront.generated.ts",
3537 "line": 782
3538 },
3539 "name": "attrId",
3540 "type": {
3541 "primitive": "string"
3542 }
3543 },
3544 {
3545 "docs": {
3546 "custom": {
3547 "cloudformationAttribute": "S3CanonicalUserId"
3548 },
3549 "remarks": "For example: `b970b42360b81c8ddbd79d2f5df0069ba9033c8a79655752abe380cd6d63ba8bcf23384d568fcf89fc49700b5e11a0fd` .",
3550 "stability": "external",
3551 "summary": "The Amazon S3 canonical user ID for the origin access identity, used when giving the origin access identity read permission to an object in Amazon S3."
3552 },
3553 "immutable": true,
3554 "locationInModule": {
3555 "filename": "lib/cloudfront.generated.ts",
3556 "line": 788
3557 },
3558 "name": "attrS3CanonicalUserId",
3559 "type": {
3560 "primitive": "string"
3561 }
3562 },
3563 {
3564 "docs": {
3565 "stability": "external"
3566 },
3567 "immutable": true,
3568 "locationInModule": {
3569 "filename": "lib/cloudfront.generated.ts",
3570 "line": 824
3571 },
3572 "name": "cfnProperties",
3573 "overrides": "@aws-cdk/core.CfnResource",
3574 "protected": true,
3575 "type": {
3576 "collection": {
3577 "elementtype": {
3578 "primitive": "any"
3579 },
3580 "kind": "map"
3581 }
3582 }
3583 },
3584 {
3585 "docs": {
3586 "custom": {
3587 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-cloudfrontoriginaccessidentity.html#cfn-cloudfront-cloudfrontoriginaccessidentity-cloudfrontoriginaccessidentityconfig"
3588 },
3589 "stability": "external",
3590 "summary": "The current configuration information for the identity."
3591 },
3592 "locationInModule": {
3593 "filename": "lib/cloudfront.generated.ts",
3594 "line": 795
3595 },
3596 "name": "cloudFrontOriginAccessIdentityConfig",
3597 "type": {
3598 "union": {
3599 "types": [
3600 {
3601 "fqn": "@aws-cdk/core.IResolvable"
3602 },
3603 {
3604 "fqn": "@aws-cdk/aws-cloudfront.CfnCloudFrontOriginAccessIdentity.CloudFrontOriginAccessIdentityConfigProperty"
3605 }
3606 ]
3607 }
3608 }
3609 }
3610 ],
3611 "symbolId": "lib/cloudfront.generated:CfnCloudFrontOriginAccessIdentity"
3612 },
3613 "@aws-cdk/aws-cloudfront.CfnCloudFrontOriginAccessIdentity.CloudFrontOriginAccessIdentityConfigProperty": {
3614 "assembly": "@aws-cdk/aws-cloudfront",
3615 "datatype": true,
3616 "docs": {
3617 "custom": {
3618 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cloudfrontoriginaccessidentity-cloudfrontoriginaccessidentityconfig.html",
3619 "exampleMetadata": "fixture=_generated"
3620 },
3621 "remarks": "Send a `GET` request to the `/ *CloudFront API version* /CloudFront/identity ID/config` resource.",
3622 "stability": "external",
3623 "summary": "Origin access identity configuration.",
3624 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst cloudFrontOriginAccessIdentityConfigProperty: cloudfront.CfnCloudFrontOriginAccessIdentity.CloudFrontOriginAccessIdentityConfigProperty = {\n comment: 'comment',\n};"
3625 },
3626 "fqn": "@aws-cdk/aws-cloudfront.CfnCloudFrontOriginAccessIdentity.CloudFrontOriginAccessIdentityConfigProperty",
3627 "kind": "interface",
3628 "locationInModule": {
3629 "filename": "lib/cloudfront.generated.ts",
3630 "line": 844
3631 },
3632 "name": "CloudFrontOriginAccessIdentityConfigProperty",
3633 "namespace": "CfnCloudFrontOriginAccessIdentity",
3634 "properties": [
3635 {
3636 "abstract": true,
3637 "docs": {
3638 "custom": {
3639 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cloudfrontoriginaccessidentity-cloudfrontoriginaccessidentityconfig.html#cfn-cloudfront-cloudfrontoriginaccessidentity-cloudfrontoriginaccessidentityconfig-comment"
3640 },
3641 "remarks": "The comment cannot be longer than 128 characters.",
3642 "stability": "external",
3643 "summary": "A comment to describe the origin access identity."
3644 },
3645 "immutable": true,
3646 "locationInModule": {
3647 "filename": "lib/cloudfront.generated.ts",
3648 "line": 850
3649 },
3650 "name": "comment",
3651 "type": {
3652 "primitive": "string"
3653 }
3654 }
3655 ],
3656 "symbolId": "lib/cloudfront.generated:CfnCloudFrontOriginAccessIdentity.CloudFrontOriginAccessIdentityConfigProperty"
3657 },
3658 "@aws-cdk/aws-cloudfront.CfnCloudFrontOriginAccessIdentityProps": {
3659 "assembly": "@aws-cdk/aws-cloudfront",
3660 "datatype": true,
3661 "docs": {
3662 "custom": {
3663 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-cloudfrontoriginaccessidentity.html",
3664 "exampleMetadata": "fixture=_generated"
3665 },
3666 "stability": "external",
3667 "summary": "Properties for defining a `CfnCloudFrontOriginAccessIdentity`.",
3668 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst cfnCloudFrontOriginAccessIdentityProps: cloudfront.CfnCloudFrontOriginAccessIdentityProps = {\n cloudFrontOriginAccessIdentityConfig: {\n comment: 'comment',\n },\n};"
3669 },
3670 "fqn": "@aws-cdk/aws-cloudfront.CfnCloudFrontOriginAccessIdentityProps",
3671 "kind": "interface",
3672 "locationInModule": {
3673 "filename": "lib/cloudfront.generated.ts",
3674 "line": 687
3675 },
3676 "name": "CfnCloudFrontOriginAccessIdentityProps",
3677 "properties": [
3678 {
3679 "abstract": true,
3680 "docs": {
3681 "custom": {
3682 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-cloudfrontoriginaccessidentity.html#cfn-cloudfront-cloudfrontoriginaccessidentity-cloudfrontoriginaccessidentityconfig"
3683 },
3684 "stability": "external",
3685 "summary": "The current configuration information for the identity."
3686 },
3687 "immutable": true,
3688 "locationInModule": {
3689 "filename": "lib/cloudfront.generated.ts",
3690 "line": 694
3691 },
3692 "name": "cloudFrontOriginAccessIdentityConfig",
3693 "type": {
3694 "union": {
3695 "types": [
3696 {
3697 "fqn": "@aws-cdk/core.IResolvable"
3698 },
3699 {
3700 "fqn": "@aws-cdk/aws-cloudfront.CfnCloudFrontOriginAccessIdentity.CloudFrontOriginAccessIdentityConfigProperty"
3701 }
3702 ]
3703 }
3704 }
3705 }
3706 ],
3707 "symbolId": "lib/cloudfront.generated:CfnCloudFrontOriginAccessIdentityProps"
3708 },
3709 "@aws-cdk/aws-cloudfront.CfnDistribution": {
3710 "assembly": "@aws-cdk/aws-cloudfront",
3711 "base": "@aws-cdk/core.CfnResource",
3712 "docs": {
3713 "custom": {
3714 "cloudformationResource": "AWS::CloudFront::Distribution",
3715 "exampleMetadata": "infused",
3716 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-distribution.html"
3717 },
3718 "example": "declare const sourceBucket: s3.Bucket;\n\nconst myDistribution = new cloudfront.Distribution(this, 'MyCfWebDistribution', {\n defaultBehavior: {\n origin: new origins.S3Origin(sourceBucket),\n },\n});\nconst cfnDistribution = myDistribution.node.defaultChild as cloudfront.CfnDistribution;\ncfnDistribution.overrideLogicalId('MyDistributionCFDistribution3H55TI9Q');",
3719 "remarks": "A distribution tells CloudFront where you want content to be delivered from, and the details about how to track and manage content delivery.",
3720 "stability": "external",
3721 "summary": "A CloudFormation `AWS::CloudFront::Distribution`."
3722 },
3723 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution",
3724 "initializer": {
3725 "docs": {
3726 "stability": "external",
3727 "summary": "Create a new `AWS::CloudFront::Distribution`."
3728 },
3729 "locationInModule": {
3730 "filename": "lib/cloudfront.generated.ts",
3731 "line": 1045
3732 },
3733 "parameters": [
3734 {
3735 "docs": {
3736 "summary": "- scope in which this resource is defined."
3737 },
3738 "name": "scope",
3739 "type": {
3740 "fqn": "@aws-cdk/core.Construct"
3741 }
3742 },
3743 {
3744 "docs": {
3745 "summary": "- scoped id of the resource."
3746 },
3747 "name": "id",
3748 "type": {
3749 "primitive": "string"
3750 }
3751 },
3752 {
3753 "docs": {
3754 "summary": "- resource properties."
3755 },
3756 "name": "props",
3757 "type": {
3758 "fqn": "@aws-cdk/aws-cloudfront.CfnDistributionProps"
3759 }
3760 }
3761 ]
3762 },
3763 "interfaces": [
3764 "@aws-cdk/core.IInspectable"
3765 ],
3766 "kind": "class",
3767 "locationInModule": {
3768 "filename": "lib/cloudfront.generated.ts",
3769 "line": 987
3770 },
3771 "methods": [
3772 {
3773 "docs": {
3774 "stability": "external",
3775 "summary": "Examines the CloudFormation resource and discloses attributes."
3776 },
3777 "locationInModule": {
3778 "filename": "lib/cloudfront.generated.ts",
3779 "line": 1061
3780 },
3781 "name": "inspect",
3782 "overrides": "@aws-cdk/core.IInspectable",
3783 "parameters": [
3784 {
3785 "docs": {
3786 "summary": "- tree inspector to collect and process attributes."
3787 },
3788 "name": "inspector",
3789 "type": {
3790 "fqn": "@aws-cdk/core.TreeInspector"
3791 }
3792 }
3793 ]
3794 },
3795 {
3796 "docs": {
3797 "stability": "external"
3798 },
3799 "locationInModule": {
3800 "filename": "lib/cloudfront.generated.ts",
3801 "line": 1073
3802 },
3803 "name": "renderProperties",
3804 "overrides": "@aws-cdk/core.CfnResource",
3805 "parameters": [
3806 {
3807 "name": "props",
3808 "type": {
3809 "collection": {
3810 "elementtype": {
3811 "primitive": "any"
3812 },
3813 "kind": "map"
3814 }
3815 }
3816 }
3817 ],
3818 "protected": true,
3819 "returns": {
3820 "type": {
3821 "collection": {
3822 "elementtype": {
3823 "primitive": "any"
3824 },
3825 "kind": "map"
3826 }
3827 }
3828 }
3829 }
3830 ],
3831 "name": "CfnDistribution",
3832 "properties": [
3833 {
3834 "const": true,
3835 "docs": {
3836 "stability": "external",
3837 "summary": "The CloudFormation resource type name for this resource class."
3838 },
3839 "immutable": true,
3840 "locationInModule": {
3841 "filename": "lib/cloudfront.generated.ts",
3842 "line": 991
3843 },
3844 "name": "CFN_RESOURCE_TYPE_NAME",
3845 "static": true,
3846 "type": {
3847 "primitive": "string"
3848 }
3849 },
3850 {
3851 "docs": {
3852 "custom": {
3853 "cloudformationAttribute": "DomainName"
3854 },
3855 "stability": "external",
3856 "summary": "The domain name of the resource, such as `d111111abcdef8.cloudfront.net` ."
3857 },
3858 "immutable": true,
3859 "locationInModule": {
3860 "filename": "lib/cloudfront.generated.ts",
3861 "line": 1016
3862 },
3863 "name": "attrDomainName",
3864 "type": {
3865 "primitive": "string"
3866 }
3867 },
3868 {
3869 "docs": {
3870 "custom": {
3871 "cloudformationAttribute": "Id"
3872 },
3873 "stability": "external"
3874 },
3875 "immutable": true,
3876 "locationInModule": {
3877 "filename": "lib/cloudfront.generated.ts",
3878 "line": 1022
3879 },
3880 "name": "attrId",
3881 "type": {
3882 "primitive": "string"
3883 }
3884 },
3885 {
3886 "docs": {
3887 "stability": "external"
3888 },
3889 "immutable": true,
3890 "locationInModule": {
3891 "filename": "lib/cloudfront.generated.ts",
3892 "line": 1066
3893 },
3894 "name": "cfnProperties",
3895 "overrides": "@aws-cdk/core.CfnResource",
3896 "protected": true,
3897 "type": {
3898 "collection": {
3899 "elementtype": {
3900 "primitive": "any"
3901 },
3902 "kind": "map"
3903 }
3904 }
3905 },
3906 {
3907 "docs": {
3908 "custom": {
3909 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-distribution.html#cfn-cloudfront-distribution-tags"
3910 },
3911 "stability": "external",
3912 "summary": "A complex type that contains zero or more `Tag` elements."
3913 },
3914 "immutable": true,
3915 "locationInModule": {
3916 "filename": "lib/cloudfront.generated.ts",
3917 "line": 1036
3918 },
3919 "name": "tags",
3920 "type": {
3921 "fqn": "@aws-cdk/core.TagManager"
3922 }
3923 },
3924 {
3925 "docs": {
3926 "custom": {
3927 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-distribution.html#cfn-cloudfront-distribution-distributionconfig"
3928 },
3929 "remarks": "Send a `GET` request to the `/ *CloudFront API version* /distribution ID/config` resource.",
3930 "stability": "external",
3931 "summary": "The current configuration information for the distribution."
3932 },
3933 "locationInModule": {
3934 "filename": "lib/cloudfront.generated.ts",
3935 "line": 1029
3936 },
3937 "name": "distributionConfig",
3938 "type": {
3939 "union": {
3940 "types": [
3941 {
3942 "fqn": "@aws-cdk/core.IResolvable"
3943 },
3944 {
3945 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.DistributionConfigProperty"
3946 }
3947 ]
3948 }
3949 }
3950 }
3951 ],
3952 "symbolId": "lib/cloudfront.generated:CfnDistribution"
3953 },
3954 "@aws-cdk/aws-cloudfront.CfnDistribution.CacheBehaviorProperty": {
3955 "assembly": "@aws-cdk/aws-cloudfront",
3956 "datatype": true,
3957 "docs": {
3958 "custom": {
3959 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html",
3960 "exampleMetadata": "fixture=_generated"
3961 },
3962 "remarks": "You must create at least as many cache behaviors (including the default cache behavior) as you have origins if you want CloudFront to serve objects from all of the origins. Each cache behavior specifies the one origin from which you want CloudFront to get objects. If you have two origins and only the default cache behavior, the default cache behavior will cause CloudFront to get objects from one of the origins, but the other origin is never used.\n\nFor the current quota (formerly known as limit) on the number of cache behaviors that you can add to a distribution, see [Quotas](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/cloudfront-limits.html) in the *Amazon CloudFront Developer Guide* .\n\nIf you don’t want to specify any cache behaviors, include only an empty `CacheBehaviors` element. Don’t include an empty `CacheBehavior` element because this is invalid.\n\nTo delete all cache behaviors in an existing distribution, update the distribution configuration and include only an empty `CacheBehaviors` element.\n\nTo add, change, or remove one or more cache behaviors, update the distribution configuration and specify all of the cache behaviors that you want to include in the updated distribution.\n\nFor more information about cache behaviors, see [Cache Behavior Settings](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesCacheBehavior) in the *Amazon CloudFront Developer Guide* .",
3963 "stability": "external",
3964 "summary": "A complex type that describes how CloudFront processes requests.",
3965 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst cacheBehaviorProperty: cloudfront.CfnDistribution.CacheBehaviorProperty = {\n pathPattern: 'pathPattern',\n targetOriginId: 'targetOriginId',\n viewerProtocolPolicy: 'viewerProtocolPolicy',\n\n // the properties below are optional\n allowedMethods: ['allowedMethods'],\n cachedMethods: ['cachedMethods'],\n cachePolicyId: 'cachePolicyId',\n compress: false,\n defaultTtl: 123,\n fieldLevelEncryptionId: 'fieldLevelEncryptionId',\n forwardedValues: {\n queryString: false,\n\n // the properties below are optional\n cookies: {\n forward: 'forward',\n\n // the properties below are optional\n whitelistedNames: ['whitelistedNames'],\n },\n headers: ['headers'],\n queryStringCacheKeys: ['queryStringCacheKeys'],\n },\n functionAssociations: [{\n eventType: 'eventType',\n functionArn: 'functionArn',\n }],\n lambdaFunctionAssociations: [{\n eventType: 'eventType',\n includeBody: false,\n lambdaFunctionArn: 'lambdaFunctionArn',\n }],\n maxTtl: 123,\n minTtl: 123,\n originRequestPolicyId: 'originRequestPolicyId',\n realtimeLogConfigArn: 'realtimeLogConfigArn',\n responseHeadersPolicyId: 'responseHeadersPolicyId',\n smoothStreaming: false,\n trustedKeyGroups: ['trustedKeyGroups'],\n trustedSigners: ['trustedSigners'],\n};"
3966 },
3967 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.CacheBehaviorProperty",
3968 "kind": "interface",
3969 "locationInModule": {
3970 "filename": "lib/cloudfront.generated.ts",
3971 "line": 1099
3972 },
3973 "name": "CacheBehaviorProperty",
3974 "namespace": "CfnDistribution",
3975 "properties": [
3976 {
3977 "abstract": true,
3978 "docs": {
3979 "custom": {
3980 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-pathpattern"
3981 },
3982 "remarks": "> You can optionally include a slash ( `/` ) at the beginning of the path pattern. For example, `/images/*.jpg` . CloudFront behavior is the same with or without the leading `/` .\n\nThe path pattern for the default cache behavior is `*` and cannot be changed. If the request for an object does not match the path pattern for any cache behaviors, CloudFront applies the behavior in the default cache behavior.\n\nFor more information, see [Path Pattern](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesPathPattern) in the *Amazon CloudFront Developer Guide* .",
3983 "stability": "external",
3984 "summary": "The pattern (for example, `images/*.jpg` ) that specifies which requests to apply the behavior to. When CloudFront receives a viewer request, the requested path is compared with path patterns in the order in which cache behaviors are listed in the distribution."
3985 },
3986 "immutable": true,
3987 "locationInModule": {
3988 "filename": "lib/cloudfront.generated.ts",
3989 "line": 1212
3990 },
3991 "name": "pathPattern",
3992 "type": {
3993 "primitive": "string"
3994 }
3995 },
3996 {
3997 "abstract": true,
3998 "docs": {
3999 "custom": {
4000 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-targetoriginid"
4001 },
4002 "stability": "external",
4003 "summary": "The value of `ID` for the origin that you want CloudFront to route requests to when they match this cache behavior."
4004 },
4005 "immutable": true,
4006 "locationInModule": {
4007 "filename": "lib/cloudfront.generated.ts",
4008 "line": 1236
4009 },
4010 "name": "targetOriginId",
4011 "type": {
4012 "primitive": "string"
4013 }
4014 },
4015 {
4016 "abstract": true,
4017 "docs": {
4018 "custom": {
4019 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-viewerprotocolpolicy"
4020 },
4021 "remarks": "You can specify the following options:\n\n- `allow-all` : Viewers can use HTTP or HTTPS.\n- `redirect-to-https` : If a viewer submits an HTTP request, CloudFront returns an HTTP status code of 301 (Moved Permanently) to the viewer along with the HTTPS URL. The viewer then resubmits the request using the new URL.\n- `https-only` : If a viewer sends an HTTP request, CloudFront returns an HTTP status code of 403 (Forbidden).\n\nFor more information about requiring the HTTPS protocol, see [Requiring HTTPS Between Viewers and CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-https-viewers-to-cloudfront.html) in the *Amazon CloudFront Developer Guide* .\n\n> The only way to guarantee that viewers retrieve an object that was fetched from the origin using HTTPS is never to use any other protocol to fetch the object. If you have recently changed from HTTP to HTTPS, we recommend that you clear your objects’ cache because cached objects are protocol agnostic. That means that an edge location will return an object from the cache regardless of whether the current request protocol matches the protocol used previously. For more information, see [Managing Cache Expiration](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide* .",
4022 "stability": "external",
4023 "summary": "The protocol that viewers can use to access the files in the origin specified by `TargetOriginId` when a request matches the path pattern in `PathPattern` ."
4024 },
4025 "immutable": true,
4026 "locationInModule": {
4027 "filename": "lib/cloudfront.generated.ts",
4028 "line": 1268
4029 },
4030 "name": "viewerProtocolPolicy",
4031 "type": {
4032 "primitive": "string"
4033 }
4034 },
4035 {
4036 "abstract": true,
4037 "docs": {
4038 "custom": {
4039 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-allowedmethods"
4040 },
4041 "remarks": "There are three choices:\n\n- CloudFront forwards only `GET` and `HEAD` requests.\n- CloudFront forwards only `GET` , `HEAD` , and `OPTIONS` requests.\n- CloudFront forwards `GET, HEAD, OPTIONS, PUT, PATCH, POST` , and `DELETE` requests.\n\nIf you pick the third choice, you may need to restrict access to your Amazon S3 bucket or to your custom origin so users can't perform operations that you don't want them to. For example, you might not want users to have permissions to delete objects from your origin.",
4042 "stability": "external",
4043 "summary": "A complex type that controls which HTTP methods CloudFront processes and forwards to your Amazon S3 bucket or your custom origin."
4044 },
4045 "immutable": true,
4046 "locationInModule": {
4047 "filename": "lib/cloudfront.generated.ts",
4048 "line": 1111
4049 },
4050 "name": "allowedMethods",
4051 "optional": true,
4052 "type": {
4053 "collection": {
4054 "elementtype": {
4055 "primitive": "string"
4056 },
4057 "kind": "array"
4058 }
4059 }
4060 },
4061 {
4062 "abstract": true,
4063 "docs": {
4064 "custom": {
4065 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-cachedmethods"
4066 },
4067 "remarks": "There are two choices:\n\n- CloudFront caches responses to `GET` and `HEAD` requests.\n- CloudFront caches responses to `GET` , `HEAD` , and `OPTIONS` requests.\n\nIf you pick the second choice for your Amazon S3 Origin, you may need to forward Access-Control-Request-Method, Access-Control-Request-Headers, and Origin headers for the responses to be cached correctly.",
4068 "stability": "external",
4069 "summary": "A complex type that controls whether CloudFront caches the response to requests using the specified HTTP methods."
4070 },
4071 "immutable": true,
4072 "locationInModule": {
4073 "filename": "lib/cloudfront.generated.ts",
4074 "line": 1130
4075 },
4076 "name": "cachedMethods",
4077 "optional": true,
4078 "type": {
4079 "collection": {
4080 "elementtype": {
4081 "primitive": "string"
4082 },
4083 "kind": "array"
4084 }
4085 }
4086 },
4087 {
4088 "abstract": true,
4089 "docs": {
4090 "custom": {
4091 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-cachepolicyid"
4092 },
4093 "remarks": "For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide* .\n\nA `CacheBehavior` must include either a `CachePolicyId` or `ForwardedValues` . We recommend that you use a `CachePolicyId` .",
4094 "stability": "external",
4095 "summary": "The unique identifier of the cache policy that is attached to this cache behavior."
4096 },
4097 "immutable": true,
4098 "locationInModule": {
4099 "filename": "lib/cloudfront.generated.ts",
4100 "line": 1119
4101 },
4102 "name": "cachePolicyId",
4103 "optional": true,
4104 "type": {
4105 "primitive": "string"
4106 }
4107 },
4108 {
4109 "abstract": true,
4110 "docs": {
4111 "custom": {
4112 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-compress"
4113 },
4114 "remarks": "If so, specify true; if not, specify false. For more information, see [Serving Compressed Files](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/ServingCompressedFiles.html) in the *Amazon CloudFront Developer Guide* .",
4115 "stability": "external",
4116 "summary": "Whether you want CloudFront to automatically compress certain files for this cache behavior."
4117 },
4118 "immutable": true,
4119 "locationInModule": {
4120 "filename": "lib/cloudfront.generated.ts",
4121 "line": 1136
4122 },
4123 "name": "compress",
4124 "optional": true,
4125 "type": {
4126 "union": {
4127 "types": [
4128 {
4129 "primitive": "boolean"
4130 },
4131 {
4132 "fqn": "@aws-cdk/core.IResolvable"
4133 }
4134 ]
4135 }
4136 }
4137 },
4138 {
4139 "abstract": true,
4140 "docs": {
4141 "custom": {
4142 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-defaultttl"
4143 },
4144 "remarks": "We recommend that you use the `DefaultTTL` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide* .\n\nThe default amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin does not add HTTP headers such as `Cache-Control max-age` , `Cache-Control s-maxage` , and `Expires` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide* .",
4145 "stability": "external",
4146 "summary": "This field is deprecated."
4147 },
4148 "immutable": true,
4149 "locationInModule": {
4150 "filename": "lib/cloudfront.generated.ts",
4151 "line": 1144
4152 },
4153 "name": "defaultTtl",
4154 "optional": true,
4155 "type": {
4156 "primitive": "number"
4157 }
4158 },
4159 {
4160 "abstract": true,
4161 "docs": {
4162 "custom": {
4163 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-fieldlevelencryptionid"
4164 },
4165 "stability": "external",
4166 "summary": "The value of `ID` for the field-level encryption configuration that you want CloudFront to use for encrypting specific fields of data for this cache behavior."
4167 },
4168 "immutable": true,
4169 "locationInModule": {
4170 "filename": "lib/cloudfront.generated.ts",
4171 "line": 1150
4172 },
4173 "name": "fieldLevelEncryptionId",
4174 "optional": true,
4175 "type": {
4176 "primitive": "string"
4177 }
4178 },
4179 {
4180 "abstract": true,
4181 "docs": {
4182 "custom": {
4183 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-forwardedvalues"
4184 },
4185 "remarks": "We recommend that you use a cache policy or an origin request policy instead of this field. For more information, see [Working with policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/working-with-policies.html) in the *Amazon CloudFront Developer Guide* .\n\nIf you want to include values in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide* .\n\nIf you want to send values to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) or [Using the managed origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-origin-request-policies.html) in the *Amazon CloudFront Developer Guide* .\n\nA `CacheBehavior` must include either a `CachePolicyId` or `ForwardedValues` . We recommend that you use a `CachePolicyId` .\n\nA complex type that specifies how CloudFront handles query strings, cookies, and HTTP headers.",
4186 "stability": "external",
4187 "summary": "This field is deprecated."
4188 },
4189 "immutable": true,
4190 "locationInModule": {
4191 "filename": "lib/cloudfront.generated.ts",
4192 "line": 1164
4193 },
4194 "name": "forwardedValues",
4195 "optional": true,
4196 "type": {
4197 "union": {
4198 "types": [
4199 {
4200 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.ForwardedValuesProperty"
4201 },
4202 {
4203 "fqn": "@aws-cdk/core.IResolvable"
4204 }
4205 ]
4206 }
4207 }
4208 },
4209 {
4210 "abstract": true,
4211 "docs": {
4212 "custom": {
4213 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-functionassociations"
4214 },
4215 "remarks": "CloudFront functions must be published to the `LIVE` stage to associate them with a cache behavior.",
4216 "stability": "external",
4217 "summary": "A list of CloudFront functions that are associated with this cache behavior."
4218 },
4219 "immutable": true,
4220 "locationInModule": {
4221 "filename": "lib/cloudfront.generated.ts",
4222 "line": 1170
4223 },
4224 "name": "functionAssociations",
4225 "optional": true,
4226 "type": {
4227 "union": {
4228 "types": [
4229 {
4230 "fqn": "@aws-cdk/core.IResolvable"
4231 },
4232 {
4233 "collection": {
4234 "elementtype": {
4235 "union": {
4236 "types": [
4237 {
4238 "fqn": "@aws-cdk/core.IResolvable"
4239 },
4240 {
4241 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.FunctionAssociationProperty"
4242 }
4243 ]
4244 }
4245 },
4246 "kind": "array"
4247 }
4248 }
4249 ]
4250 }
4251 }
4252 },
4253 {
4254 "abstract": true,
4255 "docs": {
4256 "custom": {
4257 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-lambdafunctionassociations"
4258 },
4259 "stability": "external",
4260 "summary": "A complex type that contains zero or more Lambda@Edge function associations for a cache behavior."
4261 },
4262 "immutable": true,
4263 "locationInModule": {
4264 "filename": "lib/cloudfront.generated.ts",
4265 "line": 1176
4266 },
4267 "name": "lambdaFunctionAssociations",
4268 "optional": true,
4269 "type": {
4270 "union": {
4271 "types": [
4272 {
4273 "fqn": "@aws-cdk/core.IResolvable"
4274 },
4275 {
4276 "collection": {
4277 "elementtype": {
4278 "union": {
4279 "types": [
4280 {
4281 "fqn": "@aws-cdk/core.IResolvable"
4282 },
4283 {
4284 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.LambdaFunctionAssociationProperty"
4285 }
4286 ]
4287 }
4288 },
4289 "kind": "array"
4290 }
4291 }
4292 ]
4293 }
4294 }
4295 },
4296 {
4297 "abstract": true,
4298 "docs": {
4299 "custom": {
4300 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-maxttl"
4301 },
4302 "remarks": "We recommend that you use the `MaxTTL` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide* .\n\nThe maximum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin adds HTTP headers such as `Cache-Control max-age` , `Cache-Control s-maxage` , and `Expires` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide* .",
4303 "stability": "external",
4304 "summary": "This field is deprecated."
4305 },
4306 "immutable": true,
4307 "locationInModule": {
4308 "filename": "lib/cloudfront.generated.ts",
4309 "line": 1184
4310 },
4311 "name": "maxTtl",
4312 "optional": true,
4313 "type": {
4314 "primitive": "number"
4315 }
4316 },
4317 {
4318 "abstract": true,
4319 "docs": {
4320 "custom": {
4321 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-minttl"
4322 },
4323 "remarks": "We recommend that you use the `MinTTL` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide* .\n\nThe minimum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide* .\n\nYou must specify `0` for `MinTTL` if you configure CloudFront to forward all headers to your origin (under `Headers` , if you specify `1` for `Quantity` and `*` for `Name` ).",
4324 "stability": "external",
4325 "summary": "This field is deprecated."
4326 },
4327 "immutable": true,
4328 "locationInModule": {
4329 "filename": "lib/cloudfront.generated.ts",
4330 "line": 1194
4331 },
4332 "name": "minTtl",
4333 "optional": true,
4334 "type": {
4335 "primitive": "number"
4336 }
4337 },
4338 {
4339 "abstract": true,
4340 "docs": {
4341 "custom": {
4342 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-originrequestpolicyid"
4343 },
4344 "remarks": "For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) or [Using the managed origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-origin-request-policies.html) in the *Amazon CloudFront Developer Guide* .",
4345 "stability": "external",
4346 "summary": "The unique identifier of the origin request policy that is attached to this cache behavior."
4347 },
4348 "immutable": true,
4349 "locationInModule": {
4350 "filename": "lib/cloudfront.generated.ts",
4351 "line": 1200
4352 },
4353 "name": "originRequestPolicyId",
4354 "optional": true,
4355 "type": {
4356 "primitive": "string"
4357 }
4358 },
4359 {
4360 "abstract": true,
4361 "docs": {
4362 "custom": {
4363 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-realtimelogconfigarn"
4364 },
4365 "remarks": "For more information, see [Real-time logs](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/real-time-logs.html) in the *Amazon CloudFront Developer Guide* .",
4366 "stability": "external",
4367 "summary": "The Amazon Resource Name (ARN) of the real-time log configuration that is attached to this cache behavior."
4368 },
4369 "immutable": true,
4370 "locationInModule": {
4371 "filename": "lib/cloudfront.generated.ts",
4372 "line": 1218
4373 },
4374 "name": "realtimeLogConfigArn",
4375 "optional": true,
4376 "type": {
4377 "primitive": "string"
4378 }
4379 },
4380 {
4381 "abstract": true,
4382 "docs": {
4383 "custom": {
4384 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-responseheaderspolicyid"
4385 },
4386 "stability": "external",
4387 "summary": "The identifier for a response headers policy."
4388 },
4389 "immutable": true,
4390 "locationInModule": {
4391 "filename": "lib/cloudfront.generated.ts",
4392 "line": 1224
4393 },
4394 "name": "responseHeadersPolicyId",
4395 "optional": true,
4396 "type": {
4397 "primitive": "string"
4398 }
4399 },
4400 {
4401 "abstract": true,
4402 "docs": {
4403 "custom": {
4404 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-smoothstreaming"
4405 },
4406 "remarks": "If so, specify `true` ; if not, specify `false` . If you specify `true` for `SmoothStreaming` , you can still distribute other content using this cache behavior if the content matches the value of `PathPattern` .",
4407 "stability": "external",
4408 "summary": "Indicates whether you want to distribute media files in the Microsoft Smooth Streaming format using the origin that is associated with this cache behavior."
4409 },
4410 "immutable": true,
4411 "locationInModule": {
4412 "filename": "lib/cloudfront.generated.ts",
4413 "line": 1230
4414 },
4415 "name": "smoothStreaming",
4416 "optional": true,
4417 "type": {
4418 "union": {
4419 "types": [
4420 {
4421 "primitive": "boolean"
4422 },
4423 {
4424 "fqn": "@aws-cdk/core.IResolvable"
4425 }
4426 ]
4427 }
4428 }
4429 },
4430 {
4431 "abstract": true,
4432 "docs": {
4433 "custom": {
4434 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-trustedkeygroups"
4435 },
4436 "remarks": "When a cache behavior contains trusted key groups, CloudFront requires signed URLs or signed cookies for all requests that match the cache behavior. The URLs or cookies must be signed with a private key whose corresponding public key is in the key group. The signed URL or cookie contains information about which public key CloudFront should use to verify the signature. For more information, see [Serving private content](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html) in the *Amazon CloudFront Developer Guide* .",
4437 "stability": "external",
4438 "summary": "A list of key groups that CloudFront can use to validate signed URLs or signed cookies."
4439 },
4440 "immutable": true,
4441 "locationInModule": {
4442 "filename": "lib/cloudfront.generated.ts",
4443 "line": 1244
4444 },
4445 "name": "trustedKeyGroups",
4446 "optional": true,
4447 "type": {
4448 "collection": {
4449 "elementtype": {
4450 "primitive": "string"
4451 },
4452 "kind": "array"
4453 }
4454 }
4455 },
4456 {
4457 "abstract": true,
4458 "docs": {
4459 "custom": {
4460 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-trustedsigners"
4461 },
4462 "remarks": "A list of AWS account IDs whose public keys CloudFront can use to validate signed URLs or signed cookies.\n\nWhen a cache behavior contains trusted signers, CloudFront requires signed URLs or signed cookies for all requests that match the cache behavior. The URLs or cookies must be signed with the private key of a CloudFront key pair in the trusted signer’s AWS account . The signed URL or cookie contains information about which public key CloudFront should use to verify the signature. For more information, see [Serving private content](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html) in the *Amazon CloudFront Developer Guide* .",
4463 "stability": "external",
4464 "summary": "> We recommend using `TrustedKeyGroups` instead of `TrustedSigners` ."
4465 },
4466 "immutable": true,
4467 "locationInModule": {
4468 "filename": "lib/cloudfront.generated.ts",
4469 "line": 1254
4470 },
4471 "name": "trustedSigners",
4472 "optional": true,
4473 "type": {
4474 "collection": {
4475 "elementtype": {
4476 "primitive": "string"
4477 },
4478 "kind": "array"
4479 }
4480 }
4481 }
4482 ],
4483 "symbolId": "lib/cloudfront.generated:CfnDistribution.CacheBehaviorProperty"
4484 },
4485 "@aws-cdk/aws-cloudfront.CfnDistribution.CookiesProperty": {
4486 "assembly": "@aws-cdk/aws-cloudfront",
4487 "datatype": true,
4488 "docs": {
4489 "custom": {
4490 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cookies.html",
4491 "exampleMetadata": "fixture=_generated"
4492 },
4493 "remarks": "We recommend that you use a cache policy or an origin request policy instead of this field.\n\nIf you want to include cookies in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide* .\n\nIf you want to send cookies to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide* .\n\nA complex type that specifies whether you want CloudFront to forward cookies to the origin and, if so, which ones. For more information about forwarding cookies to the origin, see [How CloudFront Forwards, Caches, and Logs Cookies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Cookies.html) in the *Amazon CloudFront Developer Guide* .",
4494 "stability": "external",
4495 "summary": "This field is deprecated.",
4496 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst cookiesProperty: cloudfront.CfnDistribution.CookiesProperty = {\n forward: 'forward',\n\n // the properties below are optional\n whitelistedNames: ['whitelistedNames'],\n};"
4497 },
4498 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.CookiesProperty",
4499 "kind": "interface",
4500 "locationInModule": {
4501 "filename": "lib/cloudfront.generated.ts",
4502 "line": 1395
4503 },
4504 "name": "CookiesProperty",
4505 "namespace": "CfnDistribution",
4506 "properties": [
4507 {
4508 "abstract": true,
4509 "docs": {
4510 "custom": {
4511 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cookies.html#cfn-cloudfront-distribution-cookies-forward"
4512 },
4513 "remarks": "We recommend that you use a cache policy or an origin request policy instead of this field.\n\nIf you want to include cookies in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide* .\n\nIf you want to send cookies to the origin but not include them in the cache key, use origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide* .\n\nSpecifies which cookies to forward to the origin for this cache behavior: all, none, or the list of cookies specified in the `WhitelistedNames` complex type.\n\nAmazon S3 doesn't process cookies. When the cache behavior is forwarding requests to an Amazon S3 origin, specify none for the `Forward` element.",
4514 "stability": "external",
4515 "summary": "This field is deprecated."
4516 },
4517 "immutable": true,
4518 "locationInModule": {
4519 "filename": "lib/cloudfront.generated.ts",
4520 "line": 1409
4521 },
4522 "name": "forward",
4523 "type": {
4524 "primitive": "string"
4525 }
4526 },
4527 {
4528 "abstract": true,
4529 "docs": {
4530 "custom": {
4531 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cookies.html#cfn-cloudfront-distribution-cookies-whitelistednames"
4532 },
4533 "remarks": "We recommend that you use a cache policy or an origin request policy instead of this field.\n\nIf you want to include cookies in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide* .\n\nIf you want to send cookies to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide* .\n\nRequired if you specify `whitelist` for the value of `Forward` . A complex type that specifies how many different cookies you want CloudFront to forward to the origin for this cache behavior and, if you want to forward selected cookies, the names of those cookies.\n\nIf you specify `all` or `none` for the value of `Forward` , omit `WhitelistedNames` . If you change the value of `Forward` from `whitelist` to `all` or `none` and you don't delete the `WhitelistedNames` element and its child elements, CloudFront deletes them automatically.\n\nFor the current limit on the number of cookie names that you can whitelist for each cache behavior, see [CloudFront Limits](https://docs.aws.amazon.com/general/latest/gr/xrefaws_service_limits.html#limits_cloudfront) in the *AWS General Reference* .",
4534 "stability": "external",
4535 "summary": "This field is deprecated."
4536 },
4537 "immutable": true,
4538 "locationInModule": {
4539 "filename": "lib/cloudfront.generated.ts",
4540 "line": 1425
4541 },
4542 "name": "whitelistedNames",
4543 "optional": true,
4544 "type": {
4545 "collection": {
4546 "elementtype": {
4547 "primitive": "string"
4548 },
4549 "kind": "array"
4550 }
4551 }
4552 }
4553 ],
4554 "symbolId": "lib/cloudfront.generated:CfnDistribution.CookiesProperty"
4555 },
4556 "@aws-cdk/aws-cloudfront.CfnDistribution.CustomErrorResponseProperty": {
4557 "assembly": "@aws-cdk/aws-cloudfront",
4558 "datatype": true,
4559 "docs": {
4560 "custom": {
4561 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-customerrorresponse.html",
4562 "exampleMetadata": "fixture=_generated"
4563 },
4564 "remarks": "- Whether CloudFront replaces HTTP status codes in the 4xx and 5xx range with custom error messages before returning the response to the viewer.\n- How long CloudFront caches HTTP status codes in the 4xx and 5xx range.\n\nFor more information about custom error pages, see [Customizing Error Responses](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/custom-error-pages.html) in the *Amazon CloudFront Developer Guide* .",
4565 "stability": "external",
4566 "summary": "A complex type that controls:.",
4567 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst customErrorResponseProperty: cloudfront.CfnDistribution.CustomErrorResponseProperty = {\n errorCode: 123,\n\n // the properties below are optional\n errorCachingMinTtl: 123,\n responseCode: 123,\n responsePagePath: 'responsePagePath',\n};"
4568 },
4569 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.CustomErrorResponseProperty",
4570 "kind": "interface",
4571 "locationInModule": {
4572 "filename": "lib/cloudfront.generated.ts",
4573 "line": 1495
4574 },
4575 "name": "CustomErrorResponseProperty",
4576 "namespace": "CfnDistribution",
4577 "properties": [
4578 {
4579 "abstract": true,
4580 "docs": {
4581 "custom": {
4582 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-customerrorresponse.html#cfn-cloudfront-distribution-customerrorresponse-errorcode"
4583 },
4584 "stability": "external",
4585 "summary": "The HTTP status code for which you want to specify a custom error page and/or a caching duration."
4586 },
4587 "immutable": true,
4588 "locationInModule": {
4589 "filename": "lib/cloudfront.generated.ts",
4590 "line": 1509
4591 },
4592 "name": "errorCode",
4593 "type": {
4594 "primitive": "number"
4595 }
4596 },
4597 {
4598 "abstract": true,
4599 "docs": {
4600 "custom": {
4601 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-customerrorresponse.html#cfn-cloudfront-distribution-customerrorresponse-errorcachingminttl"
4602 },
4603 "remarks": "When this time period has elapsed, CloudFront queries your origin to see whether the problem that caused the error has been resolved and the requested object is now available.\n\nFor more information, see [Customizing Error Responses](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/custom-error-pages.html) in the *Amazon CloudFront Developer Guide* .",
4604 "stability": "external",
4605 "summary": "The minimum amount of time, in seconds, that you want CloudFront to cache the HTTP status code specified in `ErrorCode` ."
4606 },
4607 "immutable": true,
4608 "locationInModule": {
4609 "filename": "lib/cloudfront.generated.ts",
4610 "line": 1503
4611 },
4612 "name": "errorCachingMinTtl",
4613 "optional": true,
4614 "type": {
4615 "primitive": "number"
4616 }
4617 },
4618 {
4619 "abstract": true,
4620 "docs": {
4621 "custom": {
4622 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-customerrorresponse.html#cfn-cloudfront-distribution-customerrorresponse-responsecode"
4623 },
4624 "remarks": "There are a variety of reasons that you might want CloudFront to return a status code different from the status code that your origin returned to CloudFront, for example:\n\n- Some Internet devices (some firewalls and corporate proxies, for example) intercept HTTP 4xx and 5xx and prevent the response from being returned to the viewer. If you substitute `200` , the response typically won't be intercepted.\n- If you don't care about distinguishing among different client errors or server errors, you can specify `400` or `500` as the `ResponseCode` for all 4xx or 5xx errors.\n- You might want to return a `200` status code (OK) and static website so your customers don't know that your website is down.\n\nIf you specify a value for `ResponseCode` , you must also specify a value for `ResponsePagePath` .",
4625 "stability": "external",
4626 "summary": "The HTTP status code that you want CloudFront to return to the viewer along with the custom error page."
4627 },
4628 "immutable": true,
4629 "locationInModule": {
4630 "filename": "lib/cloudfront.generated.ts",
4631 "line": 1521
4632 },
4633 "name": "responseCode",
4634 "optional": true,
4635 "type": {
4636 "primitive": "number"
4637 }
4638 },
4639 {
4640 "abstract": true,
4641 "docs": {
4642 "custom": {
4643 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-customerrorresponse.html#cfn-cloudfront-distribution-customerrorresponse-responsepagepath"
4644 },
4645 "remarks": "- The value of `PathPattern` matches the path to your custom error messages. For example, suppose you saved custom error pages for 4xx errors in an Amazon S3 bucket in a directory named `/4xx-errors` . Your distribution must include a cache behavior for which the path pattern routes requests for your custom error pages to that location, for example, `/4xx-errors/*` .\n- The value of `TargetOriginId` specifies the value of the `ID` element for the origin that contains your custom error pages.\n\nIf you specify a value for `ResponsePagePath` , you must also specify a value for `ResponseCode` .\n\nWe recommend that you store custom error pages in an Amazon S3 bucket. If you store custom error pages on an HTTP server and the server starts to return 5xx errors, CloudFront can't get the files that you want to return to viewers because the origin server is unavailable.",
4646 "stability": "external",
4647 "summary": "The path to the custom error page that you want CloudFront to return to a viewer when your origin returns the HTTP status code specified by `ErrorCode` , for example, `/4xx-errors/403-forbidden.html` . If you want to store your objects and your custom error pages in different locations, your distribution must include a cache behavior for which the following is true:."
4648 },
4649 "immutable": true,
4650 "locationInModule": {
4651 "filename": "lib/cloudfront.generated.ts",
4652 "line": 1534
4653 },
4654 "name": "responsePagePath",
4655 "optional": true,
4656 "type": {
4657 "primitive": "string"
4658 }
4659 }
4660 ],
4661 "symbolId": "lib/cloudfront.generated:CfnDistribution.CustomErrorResponseProperty"
4662 },
4663 "@aws-cdk/aws-cloudfront.CfnDistribution.CustomOriginConfigProperty": {
4664 "assembly": "@aws-cdk/aws-cloudfront",
4665 "datatype": true,
4666 "docs": {
4667 "custom": {
4668 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-customoriginconfig.html",
4669 "exampleMetadata": "fixture=_generated"
4670 },
4671 "remarks": "A custom origin is any origin that is *not* an Amazon S3 bucket, with one exception. An Amazon S3 bucket that is [configured with static website hosting](https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html) *is* a custom origin.",
4672 "stability": "external",
4673 "summary": "A custom origin.",
4674 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst customOriginConfigProperty: cloudfront.CfnDistribution.CustomOriginConfigProperty = {\n originProtocolPolicy: 'originProtocolPolicy',\n\n // the properties below are optional\n httpPort: 123,\n httpsPort: 123,\n originKeepaliveTimeout: 123,\n originReadTimeout: 123,\n originSslProtocols: ['originSslProtocols'],\n};"
4675 },
4676 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.CustomOriginConfigProperty",
4677 "kind": "interface",
4678 "locationInModule": {
4679 "filename": "lib/cloudfront.generated.ts",
4680 "line": 1605
4681 },
4682 "name": "CustomOriginConfigProperty",
4683 "namespace": "CfnDistribution",
4684 "properties": [
4685 {
4686 "abstract": true,
4687 "docs": {
4688 "custom": {
4689 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-customoriginconfig.html#cfn-cloudfront-distribution-customoriginconfig-originprotocolpolicy"
4690 },
4691 "remarks": "- `http-only` – CloudFront always uses HTTP to connect to the origin.\n- `match-viewer` – CloudFront connects to the origin using the same protocol that the viewer used to connect to CloudFront.\n- `https-only` – CloudFront always uses HTTPS to connect to the origin.",
4692 "stability": "external",
4693 "summary": "Specifies the protocol (HTTP or HTTPS) that CloudFront uses to connect to the origin. Valid values are:."
4694 },
4695 "immutable": true,
4696 "locationInModule": {
4697 "filename": "lib/cloudfront.generated.ts",
4698 "line": 1635
4699 },
4700 "name": "originProtocolPolicy",
4701 "type": {
4702 "primitive": "string"
4703 }
4704 },
4705 {
4706 "abstract": true,
4707 "docs": {
4708 "custom": {
4709 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-customoriginconfig.html#cfn-cloudfront-distribution-customoriginconfig-httpport"
4710 },
4711 "remarks": "Specify the HTTP port that the origin listens on.",
4712 "stability": "external",
4713 "summary": "The HTTP port that CloudFront uses to connect to the origin."
4714 },
4715 "immutable": true,
4716 "locationInModule": {
4717 "filename": "lib/cloudfront.generated.ts",
4718 "line": 1611
4719 },
4720 "name": "httpPort",
4721 "optional": true,
4722 "type": {
4723 "primitive": "number"
4724 }
4725 },
4726 {
4727 "abstract": true,
4728 "docs": {
4729 "custom": {
4730 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-customoriginconfig.html#cfn-cloudfront-distribution-customoriginconfig-httpsport"
4731 },
4732 "remarks": "Specify the HTTPS port that the origin listens on.",
4733 "stability": "external",
4734 "summary": "The HTTPS port that CloudFront uses to connect to the origin."
4735 },
4736 "immutable": true,
4737 "locationInModule": {
4738 "filename": "lib/cloudfront.generated.ts",
4739 "line": 1617
4740 },
4741 "name": "httpsPort",
4742 "optional": true,
4743 "type": {
4744 "primitive": "number"
4745 }
4746 },
4747 {
4748 "abstract": true,
4749 "docs": {
4750 "custom": {
4751 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-customoriginconfig.html#cfn-cloudfront-distribution-customoriginconfig-originkeepalivetimeout"
4752 },
4753 "remarks": "The minimum timeout is 1 second, the maximum is 60 seconds, and the default (if you don’t specify otherwise) is 5 seconds.\n\nFor more information, see [Origin Keep-alive Timeout](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesOriginKeepaliveTimeout) in the *Amazon CloudFront Developer Guide* .",
4754 "stability": "external",
4755 "summary": "Specifies how long, in seconds, CloudFront persists its connection to the origin."
4756 },
4757 "immutable": true,
4758 "locationInModule": {
4759 "filename": "lib/cloudfront.generated.ts",
4760 "line": 1625
4761 },
4762 "name": "originKeepaliveTimeout",
4763 "optional": true,
4764 "type": {
4765 "primitive": "number"
4766 }
4767 },
4768 {
4769 "abstract": true,
4770 "docs": {
4771 "custom": {
4772 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-customoriginconfig.html#cfn-cloudfront-distribution-customoriginconfig-originreadtimeout"
4773 },
4774 "remarks": "This is also known as the *origin response timeout* . The minimum timeout is 1 second, the maximum is 60 seconds, and the default (if you don’t specify otherwise) is 30 seconds.\n\nFor more information, see [Origin Response Timeout](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesOriginResponseTimeout) in the *Amazon CloudFront Developer Guide* .",
4775 "stability": "external",
4776 "summary": "Specifies how long, in seconds, CloudFront waits for a response from the origin."
4777 },
4778 "immutable": true,
4779 "locationInModule": {
4780 "filename": "lib/cloudfront.generated.ts",
4781 "line": 1643
4782 },
4783 "name": "originReadTimeout",
4784 "optional": true,
4785 "type": {
4786 "primitive": "number"
4787 }
4788 },
4789 {
4790 "abstract": true,
4791 "docs": {
4792 "custom": {
4793 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-customoriginconfig.html#cfn-cloudfront-distribution-customoriginconfig-originsslprotocols"
4794 },
4795 "remarks": "Valid values include `SSLv3` , `TLSv1` , `TLSv1.1` , and `TLSv1.2` .\n\nFor more information, see [Minimum Origin SSL Protocol](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesOriginSSLProtocols) in the *Amazon CloudFront Developer Guide* .",
4796 "stability": "external",
4797 "summary": "Specifies the minimum SSL/TLS protocol that CloudFront uses when connecting to your origin over HTTPS."
4798 },
4799 "immutable": true,
4800 "locationInModule": {
4801 "filename": "lib/cloudfront.generated.ts",
4802 "line": 1651
4803 },
4804 "name": "originSslProtocols",
4805 "optional": true,
4806 "type": {
4807 "collection": {
4808 "elementtype": {
4809 "primitive": "string"
4810 },
4811 "kind": "array"
4812 }
4813 }
4814 }
4815 ],
4816 "symbolId": "lib/cloudfront.generated:CfnDistribution.CustomOriginConfigProperty"
4817 },
4818 "@aws-cdk/aws-cloudfront.CfnDistribution.DefaultCacheBehaviorProperty": {
4819 "assembly": "@aws-cdk/aws-cloudfront",
4820 "datatype": true,
4821 "docs": {
4822 "custom": {
4823 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html",
4824 "exampleMetadata": "fixture=_generated"
4825 },
4826 "remarks": "You must create exactly one default cache behavior.",
4827 "stability": "external",
4828 "summary": "A complex type that describes the default cache behavior if you don’t specify a `CacheBehavior` element or if request URLs don’t match any of the values of `PathPattern` in `CacheBehavior` elements.",
4829 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst defaultCacheBehaviorProperty: cloudfront.CfnDistribution.DefaultCacheBehaviorProperty = {\n targetOriginId: 'targetOriginId',\n viewerProtocolPolicy: 'viewerProtocolPolicy',\n\n // the properties below are optional\n allowedMethods: ['allowedMethods'],\n cachedMethods: ['cachedMethods'],\n cachePolicyId: 'cachePolicyId',\n compress: false,\n defaultTtl: 123,\n fieldLevelEncryptionId: 'fieldLevelEncryptionId',\n forwardedValues: {\n queryString: false,\n\n // the properties below are optional\n cookies: {\n forward: 'forward',\n\n // the properties below are optional\n whitelistedNames: ['whitelistedNames'],\n },\n headers: ['headers'],\n queryStringCacheKeys: ['queryStringCacheKeys'],\n },\n functionAssociations: [{\n eventType: 'eventType',\n functionArn: 'functionArn',\n }],\n lambdaFunctionAssociations: [{\n eventType: 'eventType',\n includeBody: false,\n lambdaFunctionArn: 'lambdaFunctionArn',\n }],\n maxTtl: 123,\n minTtl: 123,\n originRequestPolicyId: 'originRequestPolicyId',\n realtimeLogConfigArn: 'realtimeLogConfigArn',\n responseHeadersPolicyId: 'responseHeadersPolicyId',\n smoothStreaming: false,\n trustedKeyGroups: ['trustedKeyGroups'],\n trustedSigners: ['trustedSigners'],\n};"
4830 },
4831 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.DefaultCacheBehaviorProperty",
4832 "kind": "interface",
4833 "locationInModule": {
4834 "filename": "lib/cloudfront.generated.ts",
4835 "line": 1728
4836 },
4837 "name": "DefaultCacheBehaviorProperty",
4838 "namespace": "CfnDistribution",
4839 "properties": [
4840 {
4841 "abstract": true,
4842 "docs": {
4843 "custom": {
4844 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-targetoriginid"
4845 },
4846 "stability": "external",
4847 "summary": "The value of `ID` for the origin that you want CloudFront to route requests to when they use the default cache behavior."
4848 },
4849 "immutable": true,
4850 "locationInModule": {
4851 "filename": "lib/cloudfront.generated.ts",
4852 "line": 1853
4853 },
4854 "name": "targetOriginId",
4855 "type": {
4856 "primitive": "string"
4857 }
4858 },
4859 {
4860 "abstract": true,
4861 "docs": {
4862 "custom": {
4863 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-viewerprotocolpolicy"
4864 },
4865 "remarks": "You can specify the following options:\n\n- `allow-all` : Viewers can use HTTP or HTTPS.\n- `redirect-to-https` : If a viewer submits an HTTP request, CloudFront returns an HTTP status code of 301 (Moved Permanently) to the viewer along with the HTTPS URL. The viewer then resubmits the request using the new URL.\n- `https-only` : If a viewer sends an HTTP request, CloudFront returns an HTTP status code of 403 (Forbidden).\n\nFor more information about requiring the HTTPS protocol, see [Requiring HTTPS Between Viewers and CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-https-viewers-to-cloudfront.html) in the *Amazon CloudFront Developer Guide* .\n\n> The only way to guarantee that viewers retrieve an object that was fetched from the origin using HTTPS is never to use any other protocol to fetch the object. If you have recently changed from HTTP to HTTPS, we recommend that you clear your objects’ cache because cached objects are protocol agnostic. That means that an edge location will return an object from the cache regardless of whether the current request protocol matches the protocol used previously. For more information, see [Managing Cache Expiration](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide* .",
4866 "stability": "external",
4867 "summary": "The protocol that viewers can use to access the files in the origin specified by `TargetOriginId` when a request matches the path pattern in `PathPattern` ."
4868 },
4869 "immutable": true,
4870 "locationInModule": {
4871 "filename": "lib/cloudfront.generated.ts",
4872 "line": 1885
4873 },
4874 "name": "viewerProtocolPolicy",
4875 "type": {
4876 "primitive": "string"
4877 }
4878 },
4879 {
4880 "abstract": true,
4881 "docs": {
4882 "custom": {
4883 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-allowedmethods"
4884 },
4885 "remarks": "There are three choices:\n\n- CloudFront forwards only `GET` and `HEAD` requests.\n- CloudFront forwards only `GET` , `HEAD` , and `OPTIONS` requests.\n- CloudFront forwards `GET, HEAD, OPTIONS, PUT, PATCH, POST` , and `DELETE` requests.\n\nIf you pick the third choice, you may need to restrict access to your Amazon S3 bucket or to your custom origin so users can't perform operations that you don't want them to. For example, you might not want users to have permissions to delete objects from your origin.",
4886 "stability": "external",
4887 "summary": "A complex type that controls which HTTP methods CloudFront processes and forwards to your Amazon S3 bucket or your custom origin."
4888 },
4889 "immutable": true,
4890 "locationInModule": {
4891 "filename": "lib/cloudfront.generated.ts",
4892 "line": 1740
4893 },
4894 "name": "allowedMethods",
4895 "optional": true,
4896 "type": {
4897 "collection": {
4898 "elementtype": {
4899 "primitive": "string"
4900 },
4901 "kind": "array"
4902 }
4903 }
4904 },
4905 {
4906 "abstract": true,
4907 "docs": {
4908 "custom": {
4909 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-cachedmethods"
4910 },
4911 "remarks": "There are two choices:\n\n- CloudFront caches responses to `GET` and `HEAD` requests.\n- CloudFront caches responses to `GET` , `HEAD` , and `OPTIONS` requests.\n\nIf you pick the second choice for your Amazon S3 Origin, you may need to forward Access-Control-Request-Method, Access-Control-Request-Headers, and Origin headers for the responses to be cached correctly.",
4912 "stability": "external",
4913 "summary": "A complex type that controls whether CloudFront caches the response to requests using the specified HTTP methods."
4914 },
4915 "immutable": true,
4916 "locationInModule": {
4917 "filename": "lib/cloudfront.generated.ts",
4918 "line": 1759
4919 },
4920 "name": "cachedMethods",
4921 "optional": true,
4922 "type": {
4923 "collection": {
4924 "elementtype": {
4925 "primitive": "string"
4926 },
4927 "kind": "array"
4928 }
4929 }
4930 },
4931 {
4932 "abstract": true,
4933 "docs": {
4934 "custom": {
4935 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-cachepolicyid"
4936 },
4937 "remarks": "For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide* .\n\nA `DefaultCacheBehavior` must include either a `CachePolicyId` or `ForwardedValues` . We recommend that you use a `CachePolicyId` .",
4938 "stability": "external",
4939 "summary": "The unique identifier of the cache policy that is attached to the default cache behavior."
4940 },
4941 "immutable": true,
4942 "locationInModule": {
4943 "filename": "lib/cloudfront.generated.ts",
4944 "line": 1748
4945 },
4946 "name": "cachePolicyId",
4947 "optional": true,
4948 "type": {
4949 "primitive": "string"
4950 }
4951 },
4952 {
4953 "abstract": true,
4954 "docs": {
4955 "custom": {
4956 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-compress"
4957 },
4958 "remarks": "If so, specify `true` ; if not, specify `false` . For more information, see [Serving Compressed Files](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/ServingCompressedFiles.html) in the *Amazon CloudFront Developer Guide* .",
4959 "stability": "external",
4960 "summary": "Whether you want CloudFront to automatically compress certain files for this cache behavior."
4961 },
4962 "immutable": true,
4963 "locationInModule": {
4964 "filename": "lib/cloudfront.generated.ts",
4965 "line": 1765
4966 },
4967 "name": "compress",
4968 "optional": true,
4969 "type": {
4970 "union": {
4971 "types": [
4972 {
4973 "primitive": "boolean"
4974 },
4975 {
4976 "fqn": "@aws-cdk/core.IResolvable"
4977 }
4978 ]
4979 }
4980 }
4981 },
4982 {
4983 "abstract": true,
4984 "docs": {
4985 "custom": {
4986 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-defaultttl"
4987 },
4988 "remarks": "We recommend that you use the `DefaultTTL` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide* .\n\nThe default amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin does not add HTTP headers such as `Cache-Control max-age` , `Cache-Control s-maxage` , and `Expires` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide* .",
4989 "stability": "external",
4990 "summary": "This field is deprecated."
4991 },
4992 "immutable": true,
4993 "locationInModule": {
4994 "filename": "lib/cloudfront.generated.ts",
4995 "line": 1773
4996 },
4997 "name": "defaultTtl",
4998 "optional": true,
4999 "type": {
5000 "primitive": "number"
5001 }
5002 },
5003 {
5004 "abstract": true,
5005 "docs": {
5006 "custom": {
5007 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-fieldlevelencryptionid"
5008 },
5009 "stability": "external",
5010 "summary": "The value of `ID` for the field-level encryption configuration that you want CloudFront to use for encrypting specific fields of data for the default cache behavior."
5011 },
5012 "immutable": true,
5013 "locationInModule": {
5014 "filename": "lib/cloudfront.generated.ts",
5015 "line": 1779
5016 },
5017 "name": "fieldLevelEncryptionId",
5018 "optional": true,
5019 "type": {
5020 "primitive": "string"
5021 }
5022 },
5023 {
5024 "abstract": true,
5025 "docs": {
5026 "custom": {
5027 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-forwardedvalues"
5028 },
5029 "remarks": "We recommend that you use a cache policy or an origin request policy instead of this field. For more information, see [Working with policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/working-with-policies.html) in the *Amazon CloudFront Developer Guide* .\n\nIf you want to include values in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide* .\n\nIf you want to send values to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) or [Using the managed origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-origin-request-policies.html) in the *Amazon CloudFront Developer Guide* .\n\nA `DefaultCacheBehavior` must include either a `CachePolicyId` or `ForwardedValues` . We recommend that you use a `CachePolicyId` .\n\nA complex type that specifies how CloudFront handles query strings, cookies, and HTTP headers.",
5030 "stability": "external",
5031 "summary": "This field is deprecated."
5032 },
5033 "immutable": true,
5034 "locationInModule": {
5035 "filename": "lib/cloudfront.generated.ts",
5036 "line": 1793
5037 },
5038 "name": "forwardedValues",
5039 "optional": true,
5040 "type": {
5041 "union": {
5042 "types": [
5043 {
5044 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.ForwardedValuesProperty"
5045 },
5046 {
5047 "fqn": "@aws-cdk/core.IResolvable"
5048 }
5049 ]
5050 }
5051 }
5052 },
5053 {
5054 "abstract": true,
5055 "docs": {
5056 "custom": {
5057 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-functionassociations"
5058 },
5059 "remarks": "CloudFront functions must be published to the `LIVE` stage to associate them with a cache behavior.",
5060 "stability": "external",
5061 "summary": "A list of CloudFront functions that are associated with this cache behavior."
5062 },
5063 "immutable": true,
5064 "locationInModule": {
5065 "filename": "lib/cloudfront.generated.ts",
5066 "line": 1799
5067 },
5068 "name": "functionAssociations",
5069 "optional": true,
5070 "type": {
5071 "union": {
5072 "types": [
5073 {
5074 "fqn": "@aws-cdk/core.IResolvable"
5075 },
5076 {
5077 "collection": {
5078 "elementtype": {
5079 "union": {
5080 "types": [
5081 {
5082 "fqn": "@aws-cdk/core.IResolvable"
5083 },
5084 {
5085 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.FunctionAssociationProperty"
5086 }
5087 ]
5088 }
5089 },
5090 "kind": "array"
5091 }
5092 }
5093 ]
5094 }
5095 }
5096 },
5097 {
5098 "abstract": true,
5099 "docs": {
5100 "custom": {
5101 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-lambdafunctionassociations"
5102 },
5103 "stability": "external",
5104 "summary": "A complex type that contains zero or more Lambda@Edge function associations for a cache behavior."
5105 },
5106 "immutable": true,
5107 "locationInModule": {
5108 "filename": "lib/cloudfront.generated.ts",
5109 "line": 1805
5110 },
5111 "name": "lambdaFunctionAssociations",
5112 "optional": true,
5113 "type": {
5114 "union": {
5115 "types": [
5116 {
5117 "fqn": "@aws-cdk/core.IResolvable"
5118 },
5119 {
5120 "collection": {
5121 "elementtype": {
5122 "union": {
5123 "types": [
5124 {
5125 "fqn": "@aws-cdk/core.IResolvable"
5126 },
5127 {
5128 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.LambdaFunctionAssociationProperty"
5129 }
5130 ]
5131 }
5132 },
5133 "kind": "array"
5134 }
5135 }
5136 ]
5137 }
5138 }
5139 },
5140 {
5141 "abstract": true,
5142 "docs": {
5143 "custom": {
5144 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-maxttl"
5145 },
5146 "remarks": "We recommend that you use the `MaxTTL` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide* .\n\nThe maximum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin adds HTTP headers such as `Cache-Control max-age` , `Cache-Control s-maxage` , and `Expires` to objects. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide* .",
5147 "stability": "external",
5148 "summary": "This field is deprecated."
5149 },
5150 "immutable": true,
5151 "locationInModule": {
5152 "filename": "lib/cloudfront.generated.ts",
5153 "line": 1813
5154 },
5155 "name": "maxTtl",
5156 "optional": true,
5157 "type": {
5158 "primitive": "number"
5159 }
5160 },
5161 {
5162 "abstract": true,
5163 "docs": {
5164 "custom": {
5165 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-minttl"
5166 },
5167 "remarks": "We recommend that you use the `MinTTL` field in a cache policy instead of this field. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) or [Using the managed cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html) in the *Amazon CloudFront Developer Guide* .\n\nThe minimum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide* .\n\nYou must specify `0` for `MinTTL` if you configure CloudFront to forward all headers to your origin (under `Headers` , if you specify `1` for `Quantity` and `*` for `Name` ).",
5168 "stability": "external",
5169 "summary": "This field is deprecated."
5170 },
5171 "immutable": true,
5172 "locationInModule": {
5173 "filename": "lib/cloudfront.generated.ts",
5174 "line": 1823
5175 },
5176 "name": "minTtl",
5177 "optional": true,
5178 "type": {
5179 "primitive": "number"
5180 }
5181 },
5182 {
5183 "abstract": true,
5184 "docs": {
5185 "custom": {
5186 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-originrequestpolicyid"
5187 },
5188 "remarks": "For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) or [Using the managed origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-origin-request-policies.html) in the *Amazon CloudFront Developer Guide* .",
5189 "stability": "external",
5190 "summary": "The unique identifier of the origin request policy that is attached to the default cache behavior."
5191 },
5192 "immutable": true,
5193 "locationInModule": {
5194 "filename": "lib/cloudfront.generated.ts",
5195 "line": 1829
5196 },
5197 "name": "originRequestPolicyId",
5198 "optional": true,
5199 "type": {
5200 "primitive": "string"
5201 }
5202 },
5203 {
5204 "abstract": true,
5205 "docs": {
5206 "custom": {
5207 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-realtimelogconfigarn"
5208 },
5209 "remarks": "For more information, see [Real-time logs](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/real-time-logs.html) in the *Amazon CloudFront Developer Guide* .",
5210 "stability": "external",
5211 "summary": "The Amazon Resource Name (ARN) of the real-time log configuration that is attached to this cache behavior."
5212 },
5213 "immutable": true,
5214 "locationInModule": {
5215 "filename": "lib/cloudfront.generated.ts",
5216 "line": 1835
5217 },
5218 "name": "realtimeLogConfigArn",
5219 "optional": true,
5220 "type": {
5221 "primitive": "string"
5222 }
5223 },
5224 {
5225 "abstract": true,
5226 "docs": {
5227 "custom": {
5228 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-responseheaderspolicyid"
5229 },
5230 "stability": "external",
5231 "summary": "The identifier for a response headers policy."
5232 },
5233 "immutable": true,
5234 "locationInModule": {
5235 "filename": "lib/cloudfront.generated.ts",
5236 "line": 1841
5237 },
5238 "name": "responseHeadersPolicyId",
5239 "optional": true,
5240 "type": {
5241 "primitive": "string"
5242 }
5243 },
5244 {
5245 "abstract": true,
5246 "docs": {
5247 "custom": {
5248 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-smoothstreaming"
5249 },
5250 "remarks": "If so, specify `true` ; if not, specify `false` . If you specify `true` for `SmoothStreaming` , you can still distribute other content using this cache behavior if the content matches the value of `PathPattern` .",
5251 "stability": "external",
5252 "summary": "Indicates whether you want to distribute media files in the Microsoft Smooth Streaming format using the origin that is associated with this cache behavior."
5253 },
5254 "immutable": true,
5255 "locationInModule": {
5256 "filename": "lib/cloudfront.generated.ts",
5257 "line": 1847
5258 },
5259 "name": "smoothStreaming",
5260 "optional": true,
5261 "type": {
5262 "union": {
5263 "types": [
5264 {
5265 "primitive": "boolean"
5266 },
5267 {
5268 "fqn": "@aws-cdk/core.IResolvable"
5269 }
5270 ]
5271 }
5272 }
5273 },
5274 {
5275 "abstract": true,
5276 "docs": {
5277 "custom": {
5278 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-trustedkeygroups"
5279 },
5280 "remarks": "When a cache behavior contains trusted key groups, CloudFront requires signed URLs or signed cookies for all requests that match the cache behavior. The URLs or cookies must be signed with a private key whose corresponding public key is in the key group. The signed URL or cookie contains information about which public key CloudFront should use to verify the signature. For more information, see [Serving private content](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html) in the *Amazon CloudFront Developer Guide* .",
5281 "stability": "external",
5282 "summary": "A list of key groups that CloudFront can use to validate signed URLs or signed cookies."
5283 },
5284 "immutable": true,
5285 "locationInModule": {
5286 "filename": "lib/cloudfront.generated.ts",
5287 "line": 1861
5288 },
5289 "name": "trustedKeyGroups",
5290 "optional": true,
5291 "type": {
5292 "collection": {
5293 "elementtype": {
5294 "primitive": "string"
5295 },
5296 "kind": "array"
5297 }
5298 }
5299 },
5300 {
5301 "abstract": true,
5302 "docs": {
5303 "custom": {
5304 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-trustedsigners"
5305 },
5306 "remarks": "A list of AWS account IDs whose public keys CloudFront can use to validate signed URLs or signed cookies.\n\nWhen a cache behavior contains trusted signers, CloudFront requires signed URLs or signed cookies for all requests that match the cache behavior. The URLs or cookies must be signed with the private key of a CloudFront key pair in a trusted signer’s AWS account . The signed URL or cookie contains information about which public key CloudFront should use to verify the signature. For more information, see [Serving private content](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html) in the *Amazon CloudFront Developer Guide* .",
5307 "stability": "external",
5308 "summary": "> We recommend using `TrustedKeyGroups` instead of `TrustedSigners` ."
5309 },
5310 "immutable": true,
5311 "locationInModule": {
5312 "filename": "lib/cloudfront.generated.ts",
5313 "line": 1871
5314 },
5315 "name": "trustedSigners",
5316 "optional": true,
5317 "type": {
5318 "collection": {
5319 "elementtype": {
5320 "primitive": "string"
5321 },
5322 "kind": "array"
5323 }
5324 }
5325 }
5326 ],
5327 "symbolId": "lib/cloudfront.generated:CfnDistribution.DefaultCacheBehaviorProperty"
5328 },
5329 "@aws-cdk/aws-cloudfront.CfnDistribution.DistributionConfigProperty": {
5330 "assembly": "@aws-cdk/aws-cloudfront",
5331 "datatype": true,
5332 "docs": {
5333 "custom": {
5334 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html",
5335 "exampleMetadata": "fixture=_generated"
5336 },
5337 "stability": "external",
5338 "summary": "A distribution configuration.",
5339 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst distributionConfigProperty: cloudfront.CfnDistribution.DistributionConfigProperty = {\n enabled: false,\n\n // the properties below are optional\n aliases: ['aliases'],\n cacheBehaviors: [{\n pathPattern: 'pathPattern',\n targetOriginId: 'targetOriginId',\n viewerProtocolPolicy: 'viewerProtocolPolicy',\n\n // the properties below are optional\n allowedMethods: ['allowedMethods'],\n cachedMethods: ['cachedMethods'],\n cachePolicyId: 'cachePolicyId',\n compress: false,\n defaultTtl: 123,\n fieldLevelEncryptionId: 'fieldLevelEncryptionId',\n forwardedValues: {\n queryString: false,\n\n // the properties below are optional\n cookies: {\n forward: 'forward',\n\n // the properties below are optional\n whitelistedNames: ['whitelistedNames'],\n },\n headers: ['headers'],\n queryStringCacheKeys: ['queryStringCacheKeys'],\n },\n functionAssociations: [{\n eventType: 'eventType',\n functionArn: 'functionArn',\n }],\n lambdaFunctionAssociations: [{\n eventType: 'eventType',\n includeBody: false,\n lambdaFunctionArn: 'lambdaFunctionArn',\n }],\n maxTtl: 123,\n minTtl: 123,\n originRequestPolicyId: 'originRequestPolicyId',\n realtimeLogConfigArn: 'realtimeLogConfigArn',\n responseHeadersPolicyId: 'responseHeadersPolicyId',\n smoothStreaming: false,\n trustedKeyGroups: ['trustedKeyGroups'],\n trustedSigners: ['trustedSigners'],\n }],\n cnamEs: ['cnamEs'],\n comment: 'comment',\n customErrorResponses: [{\n errorCode: 123,\n\n // the properties below are optional\n errorCachingMinTtl: 123,\n responseCode: 123,\n responsePagePath: 'responsePagePath',\n }],\n customOrigin: {\n dnsName: 'dnsName',\n originProtocolPolicy: 'originProtocolPolicy',\n originSslProtocols: ['originSslProtocols'],\n\n // the properties below are optional\n httpPort: 123,\n httpsPort: 123,\n },\n defaultCacheBehavior: {\n targetOriginId: 'targetOriginId',\n viewerProtocolPolicy: 'viewerProtocolPolicy',\n\n // the properties below are optional\n allowedMethods: ['allowedMethods'],\n cachedMethods: ['cachedMethods'],\n cachePolicyId: 'cachePolicyId',\n compress: false,\n defaultTtl: 123,\n fieldLevelEncryptionId: 'fieldLevelEncryptionId',\n forwardedValues: {\n queryString: false,\n\n // the properties below are optional\n cookies: {\n forward: 'forward',\n\n // the properties below are optional\n whitelistedNames: ['whitelistedNames'],\n },\n headers: ['headers'],\n queryStringCacheKeys: ['queryStringCacheKeys'],\n },\n functionAssociations: [{\n eventType: 'eventType',\n functionArn: 'functionArn',\n }],\n lambdaFunctionAssociations: [{\n eventType: 'eventType',\n includeBody: false,\n lambdaFunctionArn: 'lambdaFunctionArn',\n }],\n maxTtl: 123,\n minTtl: 123,\n originRequestPolicyId: 'originRequestPolicyId',\n realtimeLogConfigArn: 'realtimeLogConfigArn',\n responseHeadersPolicyId: 'responseHeadersPolicyId',\n smoothStreaming: false,\n trustedKeyGroups: ['trustedKeyGroups'],\n trustedSigners: ['trustedSigners'],\n },\n defaultRootObject: 'defaultRootObject',\n httpVersion: 'httpVersion',\n ipv6Enabled: false,\n logging: {\n bucket: 'bucket',\n\n // the properties below are optional\n includeCookies: false,\n prefix: 'prefix',\n },\n originGroups: {\n quantity: 123,\n\n // the properties below are optional\n items: [{\n failoverCriteria: {\n statusCodes: {\n items: [123],\n quantity: 123,\n },\n },\n id: 'id',\n members: {\n items: [{\n originId: 'originId',\n }],\n quantity: 123,\n },\n }],\n },\n origins: [{\n domainName: 'domainName',\n id: 'id',\n\n // the properties below are optional\n connectionAttempts: 123,\n connectionTimeout: 123,\n customOriginConfig: {\n originProtocolPolicy: 'originProtocolPolicy',\n\n // the properties below are optional\n httpPort: 123,\n httpsPort: 123,\n originKeepaliveTimeout: 123,\n originReadTimeout: 123,\n originSslProtocols: ['originSslProtocols'],\n },\n originCustomHeaders: [{\n headerName: 'headerName',\n headerValue: 'headerValue',\n }],\n originPath: 'originPath',\n originShield: {\n enabled: false,\n originShieldRegion: 'originShieldRegion',\n },\n s3OriginConfig: {\n originAccessIdentity: 'originAccessIdentity',\n },\n }],\n priceClass: 'priceClass',\n restrictions: {\n geoRestriction: {\n restrictionType: 'restrictionType',\n\n // the properties below are optional\n locations: ['locations'],\n },\n },\n s3Origin: {\n dnsName: 'dnsName',\n\n // the properties below are optional\n originAccessIdentity: 'originAccessIdentity',\n },\n viewerCertificate: {\n acmCertificateArn: 'acmCertificateArn',\n cloudFrontDefaultCertificate: false,\n iamCertificateId: 'iamCertificateId',\n minimumProtocolVersion: 'minimumProtocolVersion',\n sslSupportMethod: 'sslSupportMethod',\n },\n webAclId: 'webAclId',\n};"
5340 },
5341 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.DistributionConfigProperty",
5342 "kind": "interface",
5343 "locationInModule": {
5344 "filename": "lib/cloudfront.generated.ts",
5345 "line": 2002
5346 },
5347 "name": "DistributionConfigProperty",
5348 "namespace": "CfnDistribution",
5349 "properties": [
5350 {
5351 "abstract": true,
5352 "docs": {
5353 "custom": {
5354 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-enabled"
5355 },
5356 "stability": "external",
5357 "summary": "From this field, you can enable or disable the selected distribution."
5358 },
5359 "immutable": true,
5360 "locationInModule": {
5361 "filename": "lib/cloudfront.generated.ts",
5362 "line": 2071
5363 },
5364 "name": "enabled",
5365 "type": {
5366 "union": {
5367 "types": [
5368 {
5369 "primitive": "boolean"
5370 },
5371 {
5372 "fqn": "@aws-cdk/core.IResolvable"
5373 }
5374 ]
5375 }
5376 }
5377 },
5378 {
5379 "abstract": true,
5380 "docs": {
5381 "custom": {
5382 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-aliases"
5383 },
5384 "stability": "external",
5385 "summary": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this distribution."
5386 },
5387 "immutable": true,
5388 "locationInModule": {
5389 "filename": "lib/cloudfront.generated.ts",
5390 "line": 2008
5391 },
5392 "name": "aliases",
5393 "optional": true,
5394 "type": {
5395 "collection": {
5396 "elementtype": {
5397 "primitive": "string"
5398 },
5399 "kind": "array"
5400 }
5401 }
5402 },
5403 {
5404 "abstract": true,
5405 "docs": {
5406 "custom": {
5407 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-cachebehaviors"
5408 },
5409 "stability": "external",
5410 "summary": "A complex type that contains zero or more `CacheBehavior` elements."
5411 },
5412 "immutable": true,
5413 "locationInModule": {
5414 "filename": "lib/cloudfront.generated.ts",
5415 "line": 2020
5416 },
5417 "name": "cacheBehaviors",
5418 "optional": true,
5419 "type": {
5420 "union": {
5421 "types": [
5422 {
5423 "fqn": "@aws-cdk/core.IResolvable"
5424 },
5425 {
5426 "collection": {
5427 "elementtype": {
5428 "union": {
5429 "types": [
5430 {
5431 "fqn": "@aws-cdk/core.IResolvable"
5432 },
5433 {
5434 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.CacheBehaviorProperty"
5435 }
5436 ]
5437 }
5438 },
5439 "kind": "array"
5440 }
5441 }
5442 ]
5443 }
5444 }
5445 },
5446 {
5447 "abstract": true,
5448 "docs": {
5449 "custom": {
5450 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-cnames"
5451 },
5452 "stability": "external",
5453 "summary": "`CfnDistribution.DistributionConfigProperty.CNAMEs`."
5454 },
5455 "immutable": true,
5456 "locationInModule": {
5457 "filename": "lib/cloudfront.generated.ts",
5458 "line": 2014
5459 },
5460 "name": "cnamEs",
5461 "optional": true,
5462 "type": {
5463 "collection": {
5464 "elementtype": {
5465 "primitive": "string"
5466 },
5467 "kind": "array"
5468 }
5469 }
5470 },
5471 {
5472 "abstract": true,
5473 "docs": {
5474 "custom": {
5475 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-comment"
5476 },
5477 "remarks": "The comment cannot be longer than 128 characters.",
5478 "stability": "external",
5479 "summary": "An optional comment to describe the distribution."
5480 },
5481 "immutable": true,
5482 "locationInModule": {
5483 "filename": "lib/cloudfront.generated.ts",
5484 "line": 2026
5485 },
5486 "name": "comment",
5487 "optional": true,
5488 "type": {
5489 "primitive": "string"
5490 }
5491 },
5492 {
5493 "abstract": true,
5494 "docs": {
5495 "custom": {
5496 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-customerrorresponses"
5497 },
5498 "remarks": "- Whether CloudFront replaces HTTP status codes in the 4xx and 5xx range with custom error messages before returning the response to the viewer.\n- How long CloudFront caches HTTP status codes in the 4xx and 5xx range.\n\nFor more information about custom error pages, see [Customizing Error Responses](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/custom-error-pages.html) in the *Amazon CloudFront Developer Guide* .",
5499 "stability": "external",
5500 "summary": "A complex type that controls the following:."
5501 },
5502 "immutable": true,
5503 "locationInModule": {
5504 "filename": "lib/cloudfront.generated.ts",
5505 "line": 2037
5506 },
5507 "name": "customErrorResponses",
5508 "optional": true,
5509 "type": {
5510 "union": {
5511 "types": [
5512 {
5513 "fqn": "@aws-cdk/core.IResolvable"
5514 },
5515 {
5516 "collection": {
5517 "elementtype": {
5518 "union": {
5519 "types": [
5520 {
5521 "fqn": "@aws-cdk/core.IResolvable"
5522 },
5523 {
5524 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.CustomErrorResponseProperty"
5525 }
5526 ]
5527 }
5528 },
5529 "kind": "array"
5530 }
5531 }
5532 ]
5533 }
5534 }
5535 },
5536 {
5537 "abstract": true,
5538 "docs": {
5539 "custom": {
5540 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-customorigin"
5541 },
5542 "stability": "external",
5543 "summary": "`CfnDistribution.DistributionConfigProperty.CustomOrigin`."
5544 },
5545 "immutable": true,
5546 "locationInModule": {
5547 "filename": "lib/cloudfront.generated.ts",
5548 "line": 2043
5549 },
5550 "name": "customOrigin",
5551 "optional": true,
5552 "type": {
5553 "union": {
5554 "types": [
5555 {
5556 "fqn": "@aws-cdk/core.IResolvable"
5557 },
5558 {
5559 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.LegacyCustomOriginProperty"
5560 }
5561 ]
5562 }
5563 }
5564 },
5565 {
5566 "abstract": true,
5567 "docs": {
5568 "custom": {
5569 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-defaultcachebehavior"
5570 },
5571 "remarks": "You must create exactly one default cache behavior.",
5572 "stability": "external",
5573 "summary": "A complex type that describes the default cache behavior if you don't specify a `CacheBehavior` element or if files don't match any of the values of `PathPattern` in `CacheBehavior` elements."
5574 },
5575 "immutable": true,
5576 "locationInModule": {
5577 "filename": "lib/cloudfront.generated.ts",
5578 "line": 2049
5579 },
5580 "name": "defaultCacheBehavior",
5581 "optional": true,
5582 "type": {
5583 "union": {
5584 "types": [
5585 {
5586 "fqn": "@aws-cdk/core.IResolvable"
5587 },
5588 {
5589 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.DefaultCacheBehaviorProperty"
5590 }
5591 ]
5592 }
5593 }
5594 },
5595 {
5596 "abstract": true,
5597 "docs": {
5598 "custom": {
5599 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-defaultrootobject"
5600 },
5601 "remarks": "Specify only the object name, for example, `index.html` . Don't add a `/` before the object name.\n\nIf you don't want to specify a default root object when you create a distribution, include an empty `DefaultRootObject` element.\n\nTo delete the default root object from an existing distribution, update the distribution configuration and include an empty `DefaultRootObject` element.\n\nTo replace the default root object, update the distribution configuration and specify the new object.\n\nFor more information about the default root object, see [Creating a Default Root Object](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/DefaultRootObject.html) in the *Amazon CloudFront Developer Guide* .",
5602 "stability": "external",
5603 "summary": "The object that you want CloudFront to request from your origin (for example, `index.html` ) when a viewer requests the root URL for your distribution ( `http://www.example.com` ) instead of an object in your distribution ( `http://www.example.com/product-description.html` ). Specifying a default root object avoids exposing the contents of your distribution."
5604 },
5605 "immutable": true,
5606 "locationInModule": {
5607 "filename": "lib/cloudfront.generated.ts",
5608 "line": 2065
5609 },
5610 "name": "defaultRootObject",
5611 "optional": true,
5612 "type": {
5613 "primitive": "string"
5614 }
5615 },
5616 {
5617 "abstract": true,
5618 "docs": {
5619 "custom": {
5620 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-httpversion"
5621 },
5622 "remarks": "The default value for new web distributions is `http1.1` .\n\nFor viewers and CloudFront to use HTTP/2, viewers must support TLS 1.2 or later, and must support server name identification (SNI).\n\nIn general, configuring CloudFront to communicate with viewers using HTTP/2 reduces latency. You can improve performance by optimizing for HTTP/2.",
5623 "stability": "external",
5624 "summary": "(Optional) Specify the maximum HTTP version that you want viewers to use to communicate with CloudFront ."
5625 },
5626 "immutable": true,
5627 "locationInModule": {
5628 "filename": "lib/cloudfront.generated.ts",
5629 "line": 2081
5630 },
5631 "name": "httpVersion",
5632 "optional": true,
5633 "type": {
5634 "primitive": "string"
5635 }
5636 },
5637 {
5638 "abstract": true,
5639 "docs": {
5640 "custom": {
5641 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-ipv6enabled"
5642 },
5643 "remarks": "If you specify `false` , CloudFront responds to IPv6 DNS requests with the DNS response code `NOERROR` and with no IP addresses. This allows viewers to submit a second request, for an IPv4 address for your distribution.\n\nIn general, you should enable IPv6 if you have users on IPv6 networks who want to access your content. However, if you're using signed URLs or signed cookies to restrict access to your content, and if you're using a custom policy that includes the `IpAddress` parameter to restrict the IP addresses that can access your content, don't enable IPv6. If you want to restrict access to some content by IP address and not restrict access to other content (or restrict access but not by IP address), you can create two distributions. For more information, see [Creating a Signed URL Using a Custom Policy](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-creating-signed-url-custom-policy.html) in the *Amazon CloudFront Developer Guide* .\n\nIf you're using an Amazon Route 53 AWS Integration alias resource record set to route traffic to your CloudFront distribution, you need to create a second alias resource record set when both of the following are true:\n\n- You enable IPv6 for the distribution\n- You're using alternate domain names in the URLs for your objects\n\nFor more information, see [Routing Traffic to an Amazon CloudFront Web Distribution by Using Your Domain Name](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-to-cloudfront-distribution.html) in the *Amazon Route 53 AWS Integration Developer Guide* .\n\nIf you created a CNAME resource record set, either with Amazon Route 53 AWS Integration or with another DNS service, you don't need to make any changes. A CNAME record will route traffic to your distribution regardless of the IP address format of the viewer request.",
5644 "stability": "external",
5645 "summary": "If you want CloudFront to respond to IPv6 DNS requests with an IPv6 address for your distribution, specify `true` ."
5646 },
5647 "immutable": true,
5648 "locationInModule": {
5649 "filename": "lib/cloudfront.generated.ts",
5650 "line": 2098
5651 },
5652 "name": "ipv6Enabled",
5653 "optional": true,
5654 "type": {
5655 "union": {
5656 "types": [
5657 {
5658 "primitive": "boolean"
5659 },
5660 {
5661 "fqn": "@aws-cdk/core.IResolvable"
5662 }
5663 ]
5664 }
5665 }
5666 },
5667 {
5668 "abstract": true,
5669 "docs": {
5670 "custom": {
5671 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-logging"
5672 },
5673 "remarks": "For more information about logging, see [Access Logs](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/AccessLogs.html) in the *Amazon CloudFront Developer Guide* .",
5674 "stability": "external",
5675 "summary": "A complex type that controls whether access logs are written for the distribution."
5676 },
5677 "immutable": true,
5678 "locationInModule": {
5679 "filename": "lib/cloudfront.generated.ts",
5680 "line": 2106
5681 },
5682 "name": "logging",
5683 "optional": true,
5684 "type": {
5685 "union": {
5686 "types": [
5687 {
5688 "fqn": "@aws-cdk/core.IResolvable"
5689 },
5690 {
5691 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.LoggingProperty"
5692 }
5693 ]
5694 }
5695 }
5696 },
5697 {
5698 "abstract": true,
5699 "docs": {
5700 "custom": {
5701 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-origingroups"
5702 },
5703 "stability": "external",
5704 "summary": "A complex type that contains information about origin groups for this distribution."
5705 },
5706 "immutable": true,
5707 "locationInModule": {
5708 "filename": "lib/cloudfront.generated.ts",
5709 "line": 2112
5710 },
5711 "name": "originGroups",
5712 "optional": true,
5713 "type": {
5714 "union": {
5715 "types": [
5716 {
5717 "fqn": "@aws-cdk/core.IResolvable"
5718 },
5719 {
5720 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.OriginGroupsProperty"
5721 }
5722 ]
5723 }
5724 }
5725 },
5726 {
5727 "abstract": true,
5728 "docs": {
5729 "custom": {
5730 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-origins"
5731 },
5732 "stability": "external",
5733 "summary": "A complex type that contains information about origins for this distribution."
5734 },
5735 "immutable": true,
5736 "locationInModule": {
5737 "filename": "lib/cloudfront.generated.ts",
5738 "line": 2118
5739 },
5740 "name": "origins",
5741 "optional": true,
5742 "type": {
5743 "union": {
5744 "types": [
5745 {
5746 "fqn": "@aws-cdk/core.IResolvable"
5747 },
5748 {
5749 "collection": {
5750 "elementtype": {
5751 "union": {
5752 "types": [
5753 {
5754 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.OriginProperty"
5755 },
5756 {
5757 "fqn": "@aws-cdk/core.IResolvable"
5758 }
5759 ]
5760 }
5761 },
5762 "kind": "array"
5763 }
5764 }
5765 ]
5766 }
5767 }
5768 },
5769 {
5770 "abstract": true,
5771 "docs": {
5772 "custom": {
5773 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-priceclass"
5774 },
5775 "remarks": "If you specify `PriceClass_All` , CloudFront responds to requests for your objects from all CloudFront edge locations.\n\nIf you specify a price class other than `PriceClass_All` , CloudFront serves your objects from the CloudFront edge location that has the lowest latency among the edge locations in your price class. Viewers who are in or near regions that are excluded from your specified price class may encounter slower performance.\n\nFor more information about price classes, see [Choosing the Price Class for a CloudFront Distribution](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PriceClass.html) in the *Amazon CloudFront Developer Guide* . For information about CloudFront pricing, including how price classes (such as Price Class 100) map to CloudFront regions, see [Amazon CloudFront Pricing](https://docs.aws.amazon.com/cloudfront/pricing/) .",
5776 "stability": "external",
5777 "summary": "The price class that corresponds with the maximum price that you want to pay for CloudFront service."
5778 },
5779 "immutable": true,
5780 "locationInModule": {
5781 "filename": "lib/cloudfront.generated.ts",
5782 "line": 2128
5783 },
5784 "name": "priceClass",
5785 "optional": true,
5786 "type": {
5787 "primitive": "string"
5788 }
5789 },
5790 {
5791 "abstract": true,
5792 "docs": {
5793 "custom": {
5794 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-restrictions"
5795 },
5796 "stability": "external",
5797 "summary": "A complex type that identifies ways in which you want to restrict distribution of your content."
5798 },
5799 "immutable": true,
5800 "locationInModule": {
5801 "filename": "lib/cloudfront.generated.ts",
5802 "line": 2134
5803 },
5804 "name": "restrictions",
5805 "optional": true,
5806 "type": {
5807 "union": {
5808 "types": [
5809 {
5810 "fqn": "@aws-cdk/core.IResolvable"
5811 },
5812 {
5813 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.RestrictionsProperty"
5814 }
5815 ]
5816 }
5817 }
5818 },
5819 {
5820 "abstract": true,
5821 "docs": {
5822 "custom": {
5823 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-s3origin"
5824 },
5825 "stability": "external",
5826 "summary": "`CfnDistribution.DistributionConfigProperty.S3Origin`."
5827 },
5828 "immutable": true,
5829 "locationInModule": {
5830 "filename": "lib/cloudfront.generated.ts",
5831 "line": 2140
5832 },
5833 "name": "s3Origin",
5834 "optional": true,
5835 "type": {
5836 "union": {
5837 "types": [
5838 {
5839 "fqn": "@aws-cdk/core.IResolvable"
5840 },
5841 {
5842 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.LegacyS3OriginProperty"
5843 }
5844 ]
5845 }
5846 }
5847 },
5848 {
5849 "abstract": true,
5850 "docs": {
5851 "custom": {
5852 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-viewercertificate"
5853 },
5854 "stability": "external",
5855 "summary": "A complex type that determines the distribution’s SSL/TLS configuration for communicating with viewers."
5856 },
5857 "immutable": true,
5858 "locationInModule": {
5859 "filename": "lib/cloudfront.generated.ts",
5860 "line": 2146
5861 },
5862 "name": "viewerCertificate",
5863 "optional": true,
5864 "type": {
5865 "union": {
5866 "types": [
5867 {
5868 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.ViewerCertificateProperty"
5869 },
5870 {
5871 "fqn": "@aws-cdk/core.IResolvable"
5872 }
5873 ]
5874 }
5875 }
5876 },
5877 {
5878 "abstract": true,
5879 "docs": {
5880 "custom": {
5881 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-webaclid"
5882 },
5883 "remarks": "To specify a web ACL created using the latest version of AWS WAF , use the ACL ARN, for example `arn:aws:wafv2:us-east-1:123456789012:global/webacl/ExampleWebACL/473e64fd-f30b-4765-81a0-62ad96dd167a` . To specify a web ACL created using AWS WAF Classic, use the ACL ID, for example `473e64fd-f30b-4765-81a0-62ad96dd167a` .\n\nAWS WAF is a web application firewall that lets you monitor the HTTP and HTTPS requests that are forwarded to CloudFront, and lets you control access to your content. Based on conditions that you specify, such as the IP addresses that requests originate from or the values of query strings, CloudFront responds to requests either with the requested content or with an HTTP 403 status code (Forbidden). You can also configure CloudFront to return a custom error page when a request is blocked. For more information about AWS WAF , see the [AWS WAF Developer Guide](https://docs.aws.amazon.com/waf/latest/developerguide/what-is-aws-waf.html) .",
5884 "stability": "external",
5885 "summary": "A unique identifier that specifies the AWS WAF web ACL, if any, to associate with this distribution."
5886 },
5887 "immutable": true,
5888 "locationInModule": {
5889 "filename": "lib/cloudfront.generated.ts",
5890 "line": 2154
5891 },
5892 "name": "webAclId",
5893 "optional": true,
5894 "type": {
5895 "primitive": "string"
5896 }
5897 }
5898 ],
5899 "symbolId": "lib/cloudfront.generated:CfnDistribution.DistributionConfigProperty"
5900 },
5901 "@aws-cdk/aws-cloudfront.CfnDistribution.ForwardedValuesProperty": {
5902 "assembly": "@aws-cdk/aws-cloudfront",
5903 "datatype": true,
5904 "docs": {
5905 "custom": {
5906 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-forwardedvalues.html",
5907 "exampleMetadata": "fixture=_generated"
5908 },
5909 "remarks": "We recommend that you use a cache policy or an origin request policy instead of this field.\n\nIf you want to include values in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide* .\n\nIf you want to send values to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide* .\n\nA complex type that specifies how CloudFront handles query strings, cookies, and HTTP headers.",
5910 "stability": "external",
5911 "summary": "This field is deprecated.",
5912 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst forwardedValuesProperty: cloudfront.CfnDistribution.ForwardedValuesProperty = {\n queryString: false,\n\n // the properties below are optional\n cookies: {\n forward: 'forward',\n\n // the properties below are optional\n whitelistedNames: ['whitelistedNames'],\n },\n headers: ['headers'],\n queryStringCacheKeys: ['queryStringCacheKeys'],\n};"
5913 },
5914 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.ForwardedValuesProperty",
5915 "kind": "interface",
5916 "locationInModule": {
5917 "filename": "lib/cloudfront.generated.ts",
5918 "line": 2276
5919 },
5920 "name": "ForwardedValuesProperty",
5921 "namespace": "CfnDistribution",
5922 "properties": [
5923 {
5924 "abstract": true,
5925 "docs": {
5926 "custom": {
5927 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-forwardedvalues.html#cfn-cloudfront-distribution-forwardedvalues-querystring"
5928 },
5929 "remarks": "We recommend that you use a cache policy or an origin request policy instead of this field.\n\nIf you want to include query strings in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide* .\n\nIf you want to send query strings to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide* .\n\nIndicates whether you want CloudFront to forward query strings to the origin that is associated with this cache behavior and cache based on the query string parameters. CloudFront behavior depends on the value of `QueryString` and on the values that you specify for `QueryStringCacheKeys` , if any:\n\nIf you specify true for `QueryString` and you don't specify any values for `QueryStringCacheKeys` , CloudFront forwards all query string parameters to the origin and caches based on all query string parameters. Depending on how many query string parameters and values you have, this can adversely affect performance because CloudFront must forward more requests to the origin.\n\nIf you specify true for `QueryString` and you specify one or more values for `QueryStringCacheKeys` , CloudFront forwards all query string parameters to the origin, but it only caches based on the query string parameters that you specify.\n\nIf you specify false for `QueryString` , CloudFront doesn't forward any query string parameters to the origin, and doesn't cache based on query string parameters.\n\nFor more information, see [Configuring CloudFront to Cache Based on Query String Parameters](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/QueryStringParameters.html) in the *Amazon CloudFront Developer Guide* .",
5930 "stability": "external",
5931 "summary": "This field is deprecated."
5932 },
5933 "immutable": true,
5934 "locationInModule": {
5935 "filename": "lib/cloudfront.generated.ts",
5936 "line": 2322
5937 },
5938 "name": "queryString",
5939 "type": {
5940 "union": {
5941 "types": [
5942 {
5943 "primitive": "boolean"
5944 },
5945 {
5946 "fqn": "@aws-cdk/core.IResolvable"
5947 }
5948 ]
5949 }
5950 }
5951 },
5952 {
5953 "abstract": true,
5954 "docs": {
5955 "custom": {
5956 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-forwardedvalues.html#cfn-cloudfront-distribution-forwardedvalues-cookies"
5957 },
5958 "remarks": "We recommend that you use a cache policy or an origin request policy instead of this field.\n\nIf you want to include cookies in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide* .\n\nIf you want to send cookies to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide* .\n\nA complex type that specifies whether you want CloudFront to forward cookies to the origin and, if so, which ones. For more information about forwarding cookies to the origin, see [How CloudFront Forwards, Caches, and Logs Cookies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Cookies.html) in the *Amazon CloudFront Developer Guide* .",
5959 "stability": "external",
5960 "summary": "This field is deprecated."
5961 },
5962 "immutable": true,
5963 "locationInModule": {
5964 "filename": "lib/cloudfront.generated.ts",
5965 "line": 2288
5966 },
5967 "name": "cookies",
5968 "optional": true,
5969 "type": {
5970 "union": {
5971 "types": [
5972 {
5973 "fqn": "@aws-cdk/core.IResolvable"
5974 },
5975 {
5976 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.CookiesProperty"
5977 }
5978 ]
5979 }
5980 }
5981 },
5982 {
5983 "abstract": true,
5984 "docs": {
5985 "custom": {
5986 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-forwardedvalues.html#cfn-cloudfront-distribution-forwardedvalues-headers"
5987 },
5988 "remarks": "We recommend that you use a cache policy or an origin request policy instead of this field.\n\nIf you want to include headers in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide* .\n\nIf you want to send headers to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide* .\n\nA complex type that specifies the `Headers` , if any, that you want CloudFront to forward to the origin for this cache behavior (whitelisted headers). For the headers that you specify, CloudFront also caches separate versions of a specified object that is based on the header values in viewer requests.\n\nFor more information, see [Caching Content Based on Request Headers](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/header-caching.html) in the *Amazon CloudFront Developer Guide* .",
5989 "stability": "external",
5990 "summary": "This field is deprecated."
5991 },
5992 "immutable": true,
5993 "locationInModule": {
5994 "filename": "lib/cloudfront.generated.ts",
5995 "line": 2302
5996 },
5997 "name": "headers",
5998 "optional": true,
5999 "type": {
6000 "collection": {
6001 "elementtype": {
6002 "primitive": "string"
6003 },
6004 "kind": "array"
6005 }
6006 }
6007 },
6008 {
6009 "abstract": true,
6010 "docs": {
6011 "custom": {
6012 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-forwardedvalues.html#cfn-cloudfront-distribution-forwardedvalues-querystringcachekeys"
6013 },
6014 "remarks": "We recommend that you use a cache policy or an origin request policy instead of this field.\n\nIf you want to include query strings in the cache key, use a cache policy. For more information, see [Creating cache policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-key-create-cache-policy) in the *Amazon CloudFront Developer Guide* .\n\nIf you want to send query strings to the origin but not include them in the cache key, use an origin request policy. For more information, see [Creating origin request policies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#origin-request-create-origin-request-policy) in the *Amazon CloudFront Developer Guide* .\n\nA complex type that contains information about the query string parameters that you want CloudFront to use for caching for this cache behavior.",
6015 "stability": "external",
6016 "summary": "This field is deprecated."
6017 },
6018 "immutable": true,
6019 "locationInModule": {
6020 "filename": "lib/cloudfront.generated.ts",
6021 "line": 2334
6022 },
6023 "name": "queryStringCacheKeys",
6024 "optional": true,
6025 "type": {
6026 "collection": {
6027 "elementtype": {
6028 "primitive": "string"
6029 },
6030 "kind": "array"
6031 }
6032 }
6033 }
6034 ],
6035 "symbolId": "lib/cloudfront.generated:CfnDistribution.ForwardedValuesProperty"
6036 },
6037 "@aws-cdk/aws-cloudfront.CfnDistribution.FunctionAssociationProperty": {
6038 "assembly": "@aws-cdk/aws-cloudfront",
6039 "datatype": true,
6040 "docs": {
6041 "custom": {
6042 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-functionassociation.html",
6043 "exampleMetadata": "fixture=_generated"
6044 },
6045 "stability": "external",
6046 "summary": "A CloudFront function that is associated with a cache behavior in a CloudFront distribution.",
6047 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst functionAssociationProperty: cloudfront.CfnDistribution.FunctionAssociationProperty = {\n eventType: 'eventType',\n functionArn: 'functionArn',\n};"
6048 },
6049 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.FunctionAssociationProperty",
6050 "kind": "interface",
6051 "locationInModule": {
6052 "filename": "lib/cloudfront.generated.ts",
6053 "line": 2405
6054 },
6055 "name": "FunctionAssociationProperty",
6056 "namespace": "CfnDistribution",
6057 "properties": [
6058 {
6059 "abstract": true,
6060 "docs": {
6061 "custom": {
6062 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-functionassociation.html#cfn-cloudfront-distribution-functionassociation-eventtype"
6063 },
6064 "remarks": "You cannot use origin-facing event types ( `origin-request` and `origin-response` ) with a CloudFront function.",
6065 "stability": "external",
6066 "summary": "The event type of the function, either `viewer-request` or `viewer-response` ."
6067 },
6068 "immutable": true,
6069 "locationInModule": {
6070 "filename": "lib/cloudfront.generated.ts",
6071 "line": 2411
6072 },
6073 "name": "eventType",
6074 "optional": true,
6075 "type": {
6076 "primitive": "string"
6077 }
6078 },
6079 {
6080 "abstract": true,
6081 "docs": {
6082 "custom": {
6083 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-functionassociation.html#cfn-cloudfront-distribution-functionassociation-functionarn"
6084 },
6085 "stability": "external",
6086 "summary": "The Amazon Resource Name (ARN) of the function."
6087 },
6088 "immutable": true,
6089 "locationInModule": {
6090 "filename": "lib/cloudfront.generated.ts",
6091 "line": 2417
6092 },
6093 "name": "functionArn",
6094 "optional": true,
6095 "type": {
6096 "primitive": "string"
6097 }
6098 }
6099 ],
6100 "symbolId": "lib/cloudfront.generated:CfnDistribution.FunctionAssociationProperty"
6101 },
6102 "@aws-cdk/aws-cloudfront.CfnDistribution.GeoRestrictionProperty": {
6103 "assembly": "@aws-cdk/aws-cloudfront",
6104 "datatype": true,
6105 "docs": {
6106 "custom": {
6107 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-georestriction.html",
6108 "exampleMetadata": "fixture=_generated"
6109 },
6110 "remarks": "CloudFront determines the location of your users using `MaxMind` GeoIP databases. To disable geo restriction, remove the [Restrictions](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-restrictions) property from your stack template.",
6111 "stability": "external",
6112 "summary": "A complex type that controls the countries in which your content is distributed.",
6113 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst geoRestrictionProperty: cloudfront.CfnDistribution.GeoRestrictionProperty = {\n restrictionType: 'restrictionType',\n\n // the properties below are optional\n locations: ['locations'],\n};"
6114 },
6115 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.GeoRestrictionProperty",
6116 "kind": "interface",
6117 "locationInModule": {
6118 "filename": "lib/cloudfront.generated.ts",
6119 "line": 2481
6120 },
6121 "name": "GeoRestrictionProperty",
6122 "namespace": "CfnDistribution",
6123 "properties": [
6124 {
6125 "abstract": true,
6126 "docs": {
6127 "custom": {
6128 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-georestriction.html#cfn-cloudfront-distribution-georestriction-restrictiontype"
6129 },
6130 "remarks": "- `none` : No geo restriction is enabled, meaning access to content is not restricted by client geo location.\n- `blacklist` : The `Location` elements specify the countries in which you don't want CloudFront to distribute your content.\n- `whitelist` : The `Location` elements specify the countries in which you want CloudFront to distribute your content.",
6131 "stability": "external",
6132 "summary": "The method that you want to use to restrict distribution of your content by country:."
6133 },
6134 "immutable": true,
6135 "locationInModule": {
6136 "filename": "lib/cloudfront.generated.ts",
6137 "line": 2501
6138 },
6139 "name": "restrictionType",
6140 "type": {
6141 "primitive": "string"
6142 }
6143 },
6144 {
6145 "abstract": true,
6146 "docs": {
6147 "custom": {
6148 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-georestriction.html#cfn-cloudfront-distribution-georestriction-locations"
6149 },
6150 "remarks": "The `Location` element is a two-letter, uppercase country code for a country that you want to include in your `blacklist` or `whitelist` . Include one `Location` element for each country.\n\nCloudFront and `MaxMind` both use `ISO 3166` country codes. For the current list of countries and the corresponding codes, see `ISO 3166-1-alpha-2` code on the *International Organization for Standardization* website. You can also refer to the country list on the CloudFront console, which includes both country names and codes.",
6151 "stability": "external",
6152 "summary": "A complex type that contains a `Location` element for each country in which you want CloudFront either to distribute your content ( `whitelist` ) or not distribute your content ( `blacklist` )."
6153 },
6154 "immutable": true,
6155 "locationInModule": {
6156 "filename": "lib/cloudfront.generated.ts",
6157 "line": 2491
6158 },
6159 "name": "locations",
6160 "optional": true,
6161 "type": {
6162 "collection": {
6163 "elementtype": {
6164 "primitive": "string"
6165 },
6166 "kind": "array"
6167 }
6168 }
6169 }
6170 ],
6171 "symbolId": "lib/cloudfront.generated:CfnDistribution.GeoRestrictionProperty"
6172 },
6173 "@aws-cdk/aws-cloudfront.CfnDistribution.LambdaFunctionAssociationProperty": {
6174 "assembly": "@aws-cdk/aws-cloudfront",
6175 "datatype": true,
6176 "docs": {
6177 "custom": {
6178 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-lambdafunctionassociation.html",
6179 "exampleMetadata": "fixture=_generated"
6180 },
6181 "stability": "external",
6182 "summary": "A complex type that contains a Lambda@Edge function association.",
6183 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst lambdaFunctionAssociationProperty: cloudfront.CfnDistribution.LambdaFunctionAssociationProperty = {\n eventType: 'eventType',\n includeBody: false,\n lambdaFunctionArn: 'lambdaFunctionArn',\n};"
6184 },
6185 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.LambdaFunctionAssociationProperty",
6186 "kind": "interface",
6187 "locationInModule": {
6188 "filename": "lib/cloudfront.generated.ts",
6189 "line": 2566
6190 },
6191 "name": "LambdaFunctionAssociationProperty",
6192 "namespace": "CfnDistribution",
6193 "properties": [
6194 {
6195 "abstract": true,
6196 "docs": {
6197 "custom": {
6198 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-lambdafunctionassociation.html#cfn-cloudfront-distribution-lambdafunctionassociation-eventtype"
6199 },
6200 "remarks": "- `viewer-request` : The function executes when CloudFront receives a request from a viewer and before it checks to see whether the requested object is in the edge cache.\n- `origin-request` : The function executes only when CloudFront sends a request to your origin. When the requested object is in the edge cache, the function doesn't execute.\n- `origin-response` : The function executes after CloudFront receives a response from the origin and before it caches the object in the response. When the requested object is in the edge cache, the function doesn't execute.\n- `viewer-response` : The function executes before CloudFront returns the requested object to the viewer. The function executes regardless of whether the object was already in the edge cache.\n\nIf the origin returns an HTTP status code other than HTTP 200 (OK), the function doesn't execute.",
6201 "stability": "external",
6202 "summary": "Specifies the event type that triggers a Lambda@Edge function invocation. You can specify the following values:."
6203 },
6204 "immutable": true,
6205 "locationInModule": {
6206 "filename": "lib/cloudfront.generated.ts",
6207 "line": 2579
6208 },
6209 "name": "eventType",
6210 "optional": true,
6211 "type": {
6212 "primitive": "string"
6213 }
6214 },
6215 {
6216 "abstract": true,
6217 "docs": {
6218 "custom": {
6219 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-lambdafunctionassociation.html#cfn-cloudfront-distribution-lambdafunctionassociation-includebody"
6220 },
6221 "remarks": "For more information, see [Accessing the Request Body by Choosing the Include Body Option](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/lambda-include-body-access.html) in the Amazon CloudFront Developer Guide.",
6222 "stability": "external",
6223 "summary": "A flag that allows a Lambda@Edge function to have read access to the body content."
6224 },
6225 "immutable": true,
6226 "locationInModule": {
6227 "filename": "lib/cloudfront.generated.ts",
6228 "line": 2585
6229 },
6230 "name": "includeBody",
6231 "optional": true,
6232 "type": {
6233 "union": {
6234 "types": [
6235 {
6236 "primitive": "boolean"
6237 },
6238 {
6239 "fqn": "@aws-cdk/core.IResolvable"
6240 }
6241 ]
6242 }
6243 }
6244 },
6245 {
6246 "abstract": true,
6247 "docs": {
6248 "custom": {
6249 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-lambdafunctionassociation.html#cfn-cloudfront-distribution-lambdafunctionassociation-lambdafunctionarn"
6250 },
6251 "remarks": "You must specify the ARN of a function version; you can't specify an alias or $LATEST.",
6252 "stability": "external",
6253 "summary": "The ARN of the Lambda@Edge function."
6254 },
6255 "immutable": true,
6256 "locationInModule": {
6257 "filename": "lib/cloudfront.generated.ts",
6258 "line": 2591
6259 },
6260 "name": "lambdaFunctionArn",
6261 "optional": true,
6262 "type": {
6263 "primitive": "string"
6264 }
6265 }
6266 ],
6267 "symbolId": "lib/cloudfront.generated:CfnDistribution.LambdaFunctionAssociationProperty"
6268 },
6269 "@aws-cdk/aws-cloudfront.CfnDistribution.LegacyCustomOriginProperty": {
6270 "assembly": "@aws-cdk/aws-cloudfront",
6271 "datatype": true,
6272 "docs": {
6273 "custom": {
6274 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-legacycustomorigin.html",
6275 "exampleMetadata": "fixture=_generated"
6276 },
6277 "stability": "external",
6278 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst legacyCustomOriginProperty: cloudfront.CfnDistribution.LegacyCustomOriginProperty = {\n dnsName: 'dnsName',\n originProtocolPolicy: 'originProtocolPolicy',\n originSslProtocols: ['originSslProtocols'],\n\n // the properties below are optional\n httpPort: 123,\n httpsPort: 123,\n};"
6279 },
6280 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.LegacyCustomOriginProperty",
6281 "kind": "interface",
6282 "locationInModule": {
6283 "filename": "lib/cloudfront.generated.ts",
6284 "line": 2658
6285 },
6286 "name": "LegacyCustomOriginProperty",
6287 "namespace": "CfnDistribution",
6288 "properties": [
6289 {
6290 "abstract": true,
6291 "docs": {
6292 "custom": {
6293 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-legacycustomorigin.html#cfn-cloudfront-distribution-legacycustomorigin-dnsname"
6294 },
6295 "stability": "external",
6296 "summary": "`CfnDistribution.LegacyCustomOriginProperty.DNSName`."
6297 },
6298 "immutable": true,
6299 "locationInModule": {
6300 "filename": "lib/cloudfront.generated.ts",
6301 "line": 2664
6302 },
6303 "name": "dnsName",
6304 "type": {
6305 "primitive": "string"
6306 }
6307 },
6308 {
6309 "abstract": true,
6310 "docs": {
6311 "custom": {
6312 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-legacycustomorigin.html#cfn-cloudfront-distribution-legacycustomorigin-originprotocolpolicy"
6313 },
6314 "stability": "external",
6315 "summary": "`CfnDistribution.LegacyCustomOriginProperty.OriginProtocolPolicy`."
6316 },
6317 "immutable": true,
6318 "locationInModule": {
6319 "filename": "lib/cloudfront.generated.ts",
6320 "line": 2682
6321 },
6322 "name": "originProtocolPolicy",
6323 "type": {
6324 "primitive": "string"
6325 }
6326 },
6327 {
6328 "abstract": true,
6329 "docs": {
6330 "custom": {
6331 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-legacycustomorigin.html#cfn-cloudfront-distribution-legacycustomorigin-originsslprotocols"
6332 },
6333 "stability": "external",
6334 "summary": "`CfnDistribution.LegacyCustomOriginProperty.OriginSSLProtocols`."
6335 },
6336 "immutable": true,
6337 "locationInModule": {
6338 "filename": "lib/cloudfront.generated.ts",
6339 "line": 2688
6340 },
6341 "name": "originSslProtocols",
6342 "type": {
6343 "collection": {
6344 "elementtype": {
6345 "primitive": "string"
6346 },
6347 "kind": "array"
6348 }
6349 }
6350 },
6351 {
6352 "abstract": true,
6353 "docs": {
6354 "custom": {
6355 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-legacycustomorigin.html#cfn-cloudfront-distribution-legacycustomorigin-httpport"
6356 },
6357 "stability": "external",
6358 "summary": "`CfnDistribution.LegacyCustomOriginProperty.HTTPPort`."
6359 },
6360 "immutable": true,
6361 "locationInModule": {
6362 "filename": "lib/cloudfront.generated.ts",
6363 "line": 2670
6364 },
6365 "name": "httpPort",
6366 "optional": true,
6367 "type": {
6368 "primitive": "number"
6369 }
6370 },
6371 {
6372 "abstract": true,
6373 "docs": {
6374 "custom": {
6375 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-legacycustomorigin.html#cfn-cloudfront-distribution-legacycustomorigin-httpsport"
6376 },
6377 "stability": "external",
6378 "summary": "`CfnDistribution.LegacyCustomOriginProperty.HTTPSPort`."
6379 },
6380 "immutable": true,
6381 "locationInModule": {
6382 "filename": "lib/cloudfront.generated.ts",
6383 "line": 2676
6384 },
6385 "name": "httpsPort",
6386 "optional": true,
6387 "type": {
6388 "primitive": "number"
6389 }
6390 }
6391 ],
6392 "symbolId": "lib/cloudfront.generated:CfnDistribution.LegacyCustomOriginProperty"
6393 },
6394 "@aws-cdk/aws-cloudfront.CfnDistribution.LegacyS3OriginProperty": {
6395 "assembly": "@aws-cdk/aws-cloudfront",
6396 "datatype": true,
6397 "docs": {
6398 "custom": {
6399 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-legacys3origin.html",
6400 "exampleMetadata": "fixture=_generated"
6401 },
6402 "stability": "external",
6403 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst legacyS3OriginProperty: cloudfront.CfnDistribution.LegacyS3OriginProperty = {\n dnsName: 'dnsName',\n\n // the properties below are optional\n originAccessIdentity: 'originAccessIdentity',\n};"
6404 },
6405 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.LegacyS3OriginProperty",
6406 "kind": "interface",
6407 "locationInModule": {
6408 "filename": "lib/cloudfront.generated.ts",
6409 "line": 2764
6410 },
6411 "name": "LegacyS3OriginProperty",
6412 "namespace": "CfnDistribution",
6413 "properties": [
6414 {
6415 "abstract": true,
6416 "docs": {
6417 "custom": {
6418 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-legacys3origin.html#cfn-cloudfront-distribution-legacys3origin-dnsname"
6419 },
6420 "stability": "external",
6421 "summary": "`CfnDistribution.LegacyS3OriginProperty.DNSName`."
6422 },
6423 "immutable": true,
6424 "locationInModule": {
6425 "filename": "lib/cloudfront.generated.ts",
6426 "line": 2770
6427 },
6428 "name": "dnsName",
6429 "type": {
6430 "primitive": "string"
6431 }
6432 },
6433 {
6434 "abstract": true,
6435 "docs": {
6436 "custom": {
6437 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-legacys3origin.html#cfn-cloudfront-distribution-legacys3origin-originaccessidentity"
6438 },
6439 "stability": "external",
6440 "summary": "`CfnDistribution.LegacyS3OriginProperty.OriginAccessIdentity`."
6441 },
6442 "immutable": true,
6443 "locationInModule": {
6444 "filename": "lib/cloudfront.generated.ts",
6445 "line": 2776
6446 },
6447 "name": "originAccessIdentity",
6448 "optional": true,
6449 "type": {
6450 "primitive": "string"
6451 }
6452 }
6453 ],
6454 "symbolId": "lib/cloudfront.generated:CfnDistribution.LegacyS3OriginProperty"
6455 },
6456 "@aws-cdk/aws-cloudfront.CfnDistribution.LoggingProperty": {
6457 "assembly": "@aws-cdk/aws-cloudfront",
6458 "datatype": true,
6459 "docs": {
6460 "custom": {
6461 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-logging.html",
6462 "exampleMetadata": "fixture=_generated"
6463 },
6464 "stability": "external",
6465 "summary": "A complex type that controls whether access logs are written for the distribution.",
6466 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst loggingProperty: cloudfront.CfnDistribution.LoggingProperty = {\n bucket: 'bucket',\n\n // the properties below are optional\n includeCookies: false,\n prefix: 'prefix',\n};"
6467 },
6468 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.LoggingProperty",
6469 "kind": "interface",
6470 "locationInModule": {
6471 "filename": "lib/cloudfront.generated.ts",
6472 "line": 2841
6473 },
6474 "name": "LoggingProperty",
6475 "namespace": "CfnDistribution",
6476 "properties": [
6477 {
6478 "abstract": true,
6479 "docs": {
6480 "custom": {
6481 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-logging.html#cfn-cloudfront-distribution-logging-bucket"
6482 },
6483 "stability": "external",
6484 "summary": "The Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com` ."
6485 },
6486 "immutable": true,
6487 "locationInModule": {
6488 "filename": "lib/cloudfront.generated.ts",
6489 "line": 2847
6490 },
6491 "name": "bucket",
6492 "type": {
6493 "primitive": "string"
6494 }
6495 },
6496 {
6497 "abstract": true,
6498 "docs": {
6499 "custom": {
6500 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-logging.html#cfn-cloudfront-distribution-logging-includecookies"
6501 },
6502 "remarks": "If you choose to include cookies in logs, CloudFront logs all cookies regardless of how you configure the cache behaviors for this distribution. If you don't want to include cookies when you create a distribution or if you want to disable include cookies for an existing distribution, specify `false` for `IncludeCookies` .",
6503 "stability": "external",
6504 "summary": "Specifies whether you want CloudFront to include cookies in access logs, specify `true` for `IncludeCookies` ."
6505 },
6506 "immutable": true,
6507 "locationInModule": {
6508 "filename": "lib/cloudfront.generated.ts",
6509 "line": 2853
6510 },
6511 "name": "includeCookies",
6512 "optional": true,
6513 "type": {
6514 "union": {
6515 "types": [
6516 {
6517 "primitive": "boolean"
6518 },
6519 {
6520 "fqn": "@aws-cdk/core.IResolvable"
6521 }
6522 ]
6523 }
6524 }
6525 },
6526 {
6527 "abstract": true,
6528 "docs": {
6529 "custom": {
6530 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-logging.html#cfn-cloudfront-distribution-logging-prefix"
6531 },
6532 "remarks": "If you want to enable logging, but you don't want to specify a prefix, you still must include an empty `Prefix` element in the `Logging` element.",
6533 "stability": "external",
6534 "summary": "An optional string that you want CloudFront to prefix to the access log `filenames` for this distribution, for example, `myprefix/` ."
6535 },
6536 "immutable": true,
6537 "locationInModule": {
6538 "filename": "lib/cloudfront.generated.ts",
6539 "line": 2859
6540 },
6541 "name": "prefix",
6542 "optional": true,
6543 "type": {
6544 "primitive": "string"
6545 }
6546 }
6547 ],
6548 "symbolId": "lib/cloudfront.generated:CfnDistribution.LoggingProperty"
6549 },
6550 "@aws-cdk/aws-cloudfront.CfnDistribution.OriginCustomHeaderProperty": {
6551 "assembly": "@aws-cdk/aws-cloudfront",
6552 "datatype": true,
6553 "docs": {
6554 "custom": {
6555 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origincustomheader.html",
6556 "exampleMetadata": "fixture=_generated"
6557 },
6558 "stability": "external",
6559 "summary": "A complex type that contains `HeaderName` and `HeaderValue` elements, if any, for this distribution.",
6560 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst originCustomHeaderProperty: cloudfront.CfnDistribution.OriginCustomHeaderProperty = {\n headerName: 'headerName',\n headerValue: 'headerValue',\n};"
6561 },
6562 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.OriginCustomHeaderProperty",
6563 "kind": "interface",
6564 "locationInModule": {
6565 "filename": "lib/cloudfront.generated.ts",
6566 "line": 3097
6567 },
6568 "name": "OriginCustomHeaderProperty",
6569 "namespace": "CfnDistribution",
6570 "properties": [
6571 {
6572 "abstract": true,
6573 "docs": {
6574 "custom": {
6575 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origincustomheader.html#cfn-cloudfront-distribution-origincustomheader-headername"
6576 },
6577 "remarks": "For more information, see [Adding Custom Headers to Origin Requests](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/forward-custom-headers.html) in the *Amazon CloudFront Developer Guide* .",
6578 "stability": "external",
6579 "summary": "The name of a header that you want CloudFront to send to your origin."
6580 },
6581 "immutable": true,
6582 "locationInModule": {
6583 "filename": "lib/cloudfront.generated.ts",
6584 "line": 3103
6585 },
6586 "name": "headerName",
6587 "type": {
6588 "primitive": "string"
6589 }
6590 },
6591 {
6592 "abstract": true,
6593 "docs": {
6594 "custom": {
6595 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origincustomheader.html#cfn-cloudfront-distribution-origincustomheader-headervalue"
6596 },
6597 "stability": "external",
6598 "summary": "The value for the header that you specified in the `HeaderName` field."
6599 },
6600 "immutable": true,
6601 "locationInModule": {
6602 "filename": "lib/cloudfront.generated.ts",
6603 "line": 3109
6604 },
6605 "name": "headerValue",
6606 "type": {
6607 "primitive": "string"
6608 }
6609 }
6610 ],
6611 "symbolId": "lib/cloudfront.generated:CfnDistribution.OriginCustomHeaderProperty"
6612 },
6613 "@aws-cdk/aws-cloudfront.CfnDistribution.OriginGroupFailoverCriteriaProperty": {
6614 "assembly": "@aws-cdk/aws-cloudfront",
6615 "datatype": true,
6616 "docs": {
6617 "custom": {
6618 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origingroupfailovercriteria.html",
6619 "exampleMetadata": "fixture=_generated"
6620 },
6621 "stability": "external",
6622 "summary": "A complex data type that includes information about the failover criteria for an origin group, including the status codes for which CloudFront will failover from the primary origin to the second origin.",
6623 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst originGroupFailoverCriteriaProperty: cloudfront.CfnDistribution.OriginGroupFailoverCriteriaProperty = {\n statusCodes: {\n items: [123],\n quantity: 123,\n },\n};"
6624 },
6625 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.OriginGroupFailoverCriteriaProperty",
6626 "kind": "interface",
6627 "locationInModule": {
6628 "filename": "lib/cloudfront.generated.ts",
6629 "line": 3263
6630 },
6631 "name": "OriginGroupFailoverCriteriaProperty",
6632 "namespace": "CfnDistribution",
6633 "properties": [
6634 {
6635 "abstract": true,
6636 "docs": {
6637 "custom": {
6638 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origingroupfailovercriteria.html#cfn-cloudfront-distribution-origingroupfailovercriteria-statuscodes"
6639 },
6640 "stability": "external",
6641 "summary": "The status codes that, when returned from the primary origin, will trigger CloudFront to failover to the second origin."
6642 },
6643 "immutable": true,
6644 "locationInModule": {
6645 "filename": "lib/cloudfront.generated.ts",
6646 "line": 3269
6647 },
6648 "name": "statusCodes",
6649 "type": {
6650 "union": {
6651 "types": [
6652 {
6653 "fqn": "@aws-cdk/core.IResolvable"
6654 },
6655 {
6656 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.StatusCodesProperty"
6657 }
6658 ]
6659 }
6660 }
6661 }
6662 ],
6663 "symbolId": "lib/cloudfront.generated:CfnDistribution.OriginGroupFailoverCriteriaProperty"
6664 },
6665 "@aws-cdk/aws-cloudfront.CfnDistribution.OriginGroupMemberProperty": {
6666 "assembly": "@aws-cdk/aws-cloudfront",
6667 "datatype": true,
6668 "docs": {
6669 "custom": {
6670 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origingroupmember.html",
6671 "exampleMetadata": "fixture=_generated"
6672 },
6673 "stability": "external",
6674 "summary": "An origin in an origin group.",
6675 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst originGroupMemberProperty: cloudfront.CfnDistribution.OriginGroupMemberProperty = {\n originId: 'originId',\n};"
6676 },
6677 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.OriginGroupMemberProperty",
6678 "kind": "interface",
6679 "locationInModule": {
6680 "filename": "lib/cloudfront.generated.ts",
6681 "line": 3331
6682 },
6683 "name": "OriginGroupMemberProperty",
6684 "namespace": "CfnDistribution",
6685 "properties": [
6686 {
6687 "abstract": true,
6688 "docs": {
6689 "custom": {
6690 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origingroupmember.html#cfn-cloudfront-distribution-origingroupmember-originid"
6691 },
6692 "stability": "external",
6693 "summary": "The ID for an origin in an origin group."
6694 },
6695 "immutable": true,
6696 "locationInModule": {
6697 "filename": "lib/cloudfront.generated.ts",
6698 "line": 3337
6699 },
6700 "name": "originId",
6701 "type": {
6702 "primitive": "string"
6703 }
6704 }
6705 ],
6706 "symbolId": "lib/cloudfront.generated:CfnDistribution.OriginGroupMemberProperty"
6707 },
6708 "@aws-cdk/aws-cloudfront.CfnDistribution.OriginGroupMembersProperty": {
6709 "assembly": "@aws-cdk/aws-cloudfront",
6710 "datatype": true,
6711 "docs": {
6712 "custom": {
6713 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origingroupmembers.html",
6714 "exampleMetadata": "fixture=_generated"
6715 },
6716 "stability": "external",
6717 "summary": "A complex data type for the origins included in an origin group.",
6718 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst originGroupMembersProperty: cloudfront.CfnDistribution.OriginGroupMembersProperty = {\n items: [{\n originId: 'originId',\n }],\n quantity: 123,\n};"
6719 },
6720 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.OriginGroupMembersProperty",
6721 "kind": "interface",
6722 "locationInModule": {
6723 "filename": "lib/cloudfront.generated.ts",
6724 "line": 3399
6725 },
6726 "name": "OriginGroupMembersProperty",
6727 "namespace": "CfnDistribution",
6728 "properties": [
6729 {
6730 "abstract": true,
6731 "docs": {
6732 "custom": {
6733 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origingroupmembers.html#cfn-cloudfront-distribution-origingroupmembers-items"
6734 },
6735 "stability": "external",
6736 "summary": "Items (origins) in an origin group."
6737 },
6738 "immutable": true,
6739 "locationInModule": {
6740 "filename": "lib/cloudfront.generated.ts",
6741 "line": 3405
6742 },
6743 "name": "items",
6744 "type": {
6745 "union": {
6746 "types": [
6747 {
6748 "fqn": "@aws-cdk/core.IResolvable"
6749 },
6750 {
6751 "collection": {
6752 "elementtype": {
6753 "union": {
6754 "types": [
6755 {
6756 "fqn": "@aws-cdk/core.IResolvable"
6757 },
6758 {
6759 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.OriginGroupMemberProperty"
6760 }
6761 ]
6762 }
6763 },
6764 "kind": "array"
6765 }
6766 }
6767 ]
6768 }
6769 }
6770 },
6771 {
6772 "abstract": true,
6773 "docs": {
6774 "custom": {
6775 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origingroupmembers.html#cfn-cloudfront-distribution-origingroupmembers-quantity"
6776 },
6777 "stability": "external",
6778 "summary": "The number of origins in an origin group."
6779 },
6780 "immutable": true,
6781 "locationInModule": {
6782 "filename": "lib/cloudfront.generated.ts",
6783 "line": 3411
6784 },
6785 "name": "quantity",
6786 "type": {
6787 "primitive": "number"
6788 }
6789 }
6790 ],
6791 "symbolId": "lib/cloudfront.generated:CfnDistribution.OriginGroupMembersProperty"
6792 },
6793 "@aws-cdk/aws-cloudfront.CfnDistribution.OriginGroupProperty": {
6794 "assembly": "@aws-cdk/aws-cloudfront",
6795 "datatype": true,
6796 "docs": {
6797 "custom": {
6798 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origingroup.html",
6799 "exampleMetadata": "fixture=_generated"
6800 },
6801 "remarks": "You create an origin group to support origin failover in CloudFront. When you create or update a distribution, you can specifiy the origin group instead of a single origin, and CloudFront will failover from the primary origin to the second origin under the failover conditions that you've chosen.",
6802 "stability": "external",
6803 "summary": "An origin group includes two origins (a primary origin and a second origin to failover to) and a failover criteria that you specify.",
6804 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst originGroupProperty: cloudfront.CfnDistribution.OriginGroupProperty = {\n failoverCriteria: {\n statusCodes: {\n items: [123],\n quantity: 123,\n },\n },\n id: 'id',\n members: {\n items: [{\n originId: 'originId',\n }],\n quantity: 123,\n },\n};"
6805 },
6806 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.OriginGroupProperty",
6807 "kind": "interface",
6808 "locationInModule": {
6809 "filename": "lib/cloudfront.generated.ts",
6810 "line": 3175
6811 },
6812 "name": "OriginGroupProperty",
6813 "namespace": "CfnDistribution",
6814 "properties": [
6815 {
6816 "abstract": true,
6817 "docs": {
6818 "custom": {
6819 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origingroup.html#cfn-cloudfront-distribution-origingroup-failovercriteria"
6820 },
6821 "stability": "external",
6822 "summary": "A complex type that contains information about the failover criteria for an origin group."
6823 },
6824 "immutable": true,
6825 "locationInModule": {
6826 "filename": "lib/cloudfront.generated.ts",
6827 "line": 3181
6828 },
6829 "name": "failoverCriteria",
6830 "type": {
6831 "union": {
6832 "types": [
6833 {
6834 "fqn": "@aws-cdk/core.IResolvable"
6835 },
6836 {
6837 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.OriginGroupFailoverCriteriaProperty"
6838 }
6839 ]
6840 }
6841 }
6842 },
6843 {
6844 "abstract": true,
6845 "docs": {
6846 "custom": {
6847 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origingroup.html#cfn-cloudfront-distribution-origingroup-id"
6848 },
6849 "stability": "external",
6850 "summary": "The origin group's ID."
6851 },
6852 "immutable": true,
6853 "locationInModule": {
6854 "filename": "lib/cloudfront.generated.ts",
6855 "line": 3187
6856 },
6857 "name": "id",
6858 "type": {
6859 "primitive": "string"
6860 }
6861 },
6862 {
6863 "abstract": true,
6864 "docs": {
6865 "custom": {
6866 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origingroup.html#cfn-cloudfront-distribution-origingroup-members"
6867 },
6868 "stability": "external",
6869 "summary": "A complex type that contains information about the origins in an origin group."
6870 },
6871 "immutable": true,
6872 "locationInModule": {
6873 "filename": "lib/cloudfront.generated.ts",
6874 "line": 3193
6875 },
6876 "name": "members",
6877 "type": {
6878 "union": {
6879 "types": [
6880 {
6881 "fqn": "@aws-cdk/core.IResolvable"
6882 },
6883 {
6884 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.OriginGroupMembersProperty"
6885 }
6886 ]
6887 }
6888 }
6889 }
6890 ],
6891 "symbolId": "lib/cloudfront.generated:CfnDistribution.OriginGroupProperty"
6892 },
6893 "@aws-cdk/aws-cloudfront.CfnDistribution.OriginGroupsProperty": {
6894 "assembly": "@aws-cdk/aws-cloudfront",
6895 "datatype": true,
6896 "docs": {
6897 "custom": {
6898 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origingroups.html",
6899 "exampleMetadata": "fixture=_generated"
6900 },
6901 "stability": "external",
6902 "summary": "A complex data type for the origin groups specified for a distribution.",
6903 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst originGroupsProperty: cloudfront.CfnDistribution.OriginGroupsProperty = {\n quantity: 123,\n\n // the properties below are optional\n items: [{\n failoverCriteria: {\n statusCodes: {\n items: [123],\n quantity: 123,\n },\n },\n id: 'id',\n members: {\n items: [{\n originId: 'originId',\n }],\n quantity: 123,\n },\n }],\n};"
6904 },
6905 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.OriginGroupsProperty",
6906 "kind": "interface",
6907 "locationInModule": {
6908 "filename": "lib/cloudfront.generated.ts",
6909 "line": 3477
6910 },
6911 "name": "OriginGroupsProperty",
6912 "namespace": "CfnDistribution",
6913 "properties": [
6914 {
6915 "abstract": true,
6916 "docs": {
6917 "custom": {
6918 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origingroups.html#cfn-cloudfront-distribution-origingroups-quantity"
6919 },
6920 "stability": "external",
6921 "summary": "The number of origin groups."
6922 },
6923 "immutable": true,
6924 "locationInModule": {
6925 "filename": "lib/cloudfront.generated.ts",
6926 "line": 3489
6927 },
6928 "name": "quantity",
6929 "type": {
6930 "primitive": "number"
6931 }
6932 },
6933 {
6934 "abstract": true,
6935 "docs": {
6936 "custom": {
6937 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origingroups.html#cfn-cloudfront-distribution-origingroups-items"
6938 },
6939 "stability": "external",
6940 "summary": "The items (origin groups) in a distribution."
6941 },
6942 "immutable": true,
6943 "locationInModule": {
6944 "filename": "lib/cloudfront.generated.ts",
6945 "line": 3483
6946 },
6947 "name": "items",
6948 "optional": true,
6949 "type": {
6950 "union": {
6951 "types": [
6952 {
6953 "fqn": "@aws-cdk/core.IResolvable"
6954 },
6955 {
6956 "collection": {
6957 "elementtype": {
6958 "union": {
6959 "types": [
6960 {
6961 "fqn": "@aws-cdk/core.IResolvable"
6962 },
6963 {
6964 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.OriginGroupProperty"
6965 }
6966 ]
6967 }
6968 },
6969 "kind": "array"
6970 }
6971 }
6972 ]
6973 }
6974 }
6975 }
6976 ],
6977 "symbolId": "lib/cloudfront.generated:CfnDistribution.OriginGroupsProperty"
6978 },
6979 "@aws-cdk/aws-cloudfront.CfnDistribution.OriginProperty": {
6980 "assembly": "@aws-cdk/aws-cloudfront",
6981 "datatype": true,
6982 "docs": {
6983 "custom": {
6984 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origin.html",
6985 "exampleMetadata": "fixture=_generated"
6986 },
6987 "remarks": "An origin is the location where content is stored, and from which CloudFront gets content to serve to viewers. To specify an origin:\n\n- Use `S3OriginConfig` to specify an Amazon S3 bucket that is not configured with static website hosting.\n- Use `CustomOriginConfig` to specify all other kinds of origins, including:\n\n- An Amazon S3 bucket that is configured with static website hosting\n- An Elastic Load Balancing load balancer\n- An AWS Elemental MediaPackage endpoint\n- An AWS Elemental MediaStore container\n- Any other HTTP server, running on an Amazon EC2 instance or any other kind of host\n\nFor the current maximum number of origins that you can specify per distribution, see [General Quotas on Web Distributions](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/cloudfront-limits.html#limits-web-distributions) in the *Amazon CloudFront Developer Guide* (quotas were formerly referred to as limits).",
6988 "stability": "external",
6989 "summary": "An origin.",
6990 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst originProperty: cloudfront.CfnDistribution.OriginProperty = {\n domainName: 'domainName',\n id: 'id',\n\n // the properties below are optional\n connectionAttempts: 123,\n connectionTimeout: 123,\n customOriginConfig: {\n originProtocolPolicy: 'originProtocolPolicy',\n\n // the properties below are optional\n httpPort: 123,\n httpsPort: 123,\n originKeepaliveTimeout: 123,\n originReadTimeout: 123,\n originSslProtocols: ['originSslProtocols'],\n },\n originCustomHeaders: [{\n headerName: 'headerName',\n headerValue: 'headerValue',\n }],\n originPath: 'originPath',\n originShield: {\n enabled: false,\n originShieldRegion: 'originShieldRegion',\n },\n s3OriginConfig: {\n originAccessIdentity: 'originAccessIdentity',\n },\n};"
6991 },
6992 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.OriginProperty",
6993 "kind": "interface",
6994 "locationInModule": {
6995 "filename": "lib/cloudfront.generated.ts",
6996 "line": 2940
6997 },
6998 "name": "OriginProperty",
6999 "namespace": "CfnDistribution",
7000 "properties": [
7001 {
7002 "abstract": true,
7003 "docs": {
7004 "custom": {
7005 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origin.html#cfn-cloudfront-distribution-origin-domainname"
7006 },
7007 "remarks": "For more information, see [Origin Domain Name](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesDomainName) in the *Amazon CloudFront Developer Guide* .",
7008 "stability": "external",
7009 "summary": "The domain name for the origin."
7010 },
7011 "immutable": true,
7012 "locationInModule": {
7013 "filename": "lib/cloudfront.generated.ts",
7014 "line": 2972
7015 },
7016 "name": "domainName",
7017 "type": {
7018 "primitive": "string"
7019 }
7020 },
7021 {
7022 "abstract": true,
7023 "docs": {
7024 "custom": {
7025 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origin.html#cfn-cloudfront-distribution-origin-id"
7026 },
7027 "remarks": "Use this value to specify the `TargetOriginId` in a `CacheBehavior` or `DefaultCacheBehavior` .",
7028 "stability": "external",
7029 "summary": "A unique identifier for the origin. This value must be unique within the distribution."
7030 },
7031 "immutable": true,
7032 "locationInModule": {
7033 "filename": "lib/cloudfront.generated.ts",
7034 "line": 2980
7035 },
7036 "name": "id",
7037 "type": {
7038 "primitive": "string"
7039 }
7040 },
7041 {
7042 "abstract": true,
7043 "docs": {
7044 "custom": {
7045 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origin.html#cfn-cloudfront-distribution-origin-connectionattempts"
7046 },
7047 "remarks": "The minimum number is 1, the maximum is 3, and the default (if you don’t specify otherwise) is 3.\n\nFor a custom origin (including an Amazon S3 bucket that’s configured with static website hosting), this value also specifies the number of times that CloudFront attempts to get a response from the origin, in the case of an [Origin Response Timeout](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesOriginResponseTimeout) .\n\nFor more information, see [Origin Connection Attempts](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#origin-connection-attempts) in the *Amazon CloudFront Developer Guide* .",
7048 "stability": "external",
7049 "summary": "The number of times that CloudFront attempts to connect to the origin."
7050 },
7051 "immutable": true,
7052 "locationInModule": {
7053 "filename": "lib/cloudfront.generated.ts",
7054 "line": 2950
7055 },
7056 "name": "connectionAttempts",
7057 "optional": true,
7058 "type": {
7059 "primitive": "number"
7060 }
7061 },
7062 {
7063 "abstract": true,
7064 "docs": {
7065 "custom": {
7066 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origin.html#cfn-cloudfront-distribution-origin-connectiontimeout"
7067 },
7068 "remarks": "The minimum timeout is 1 second, the maximum is 10 seconds, and the default (if you don’t specify otherwise) is 10 seconds.\n\nFor more information, see [Origin Connection Timeout](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#origin-connection-timeout) in the *Amazon CloudFront Developer Guide* .",
7069 "stability": "external",
7070 "summary": "The number of seconds that CloudFront waits when trying to establish a connection to the origin."
7071 },
7072 "immutable": true,
7073 "locationInModule": {
7074 "filename": "lib/cloudfront.generated.ts",
7075 "line": 2958
7076 },
7077 "name": "connectionTimeout",
7078 "optional": true,
7079 "type": {
7080 "primitive": "number"
7081 }
7082 },
7083 {
7084 "abstract": true,
7085 "docs": {
7086 "custom": {
7087 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origin.html#cfn-cloudfront-distribution-origin-customoriginconfig"
7088 },
7089 "remarks": "If the Amazon S3 bucket is configured with static website hosting, use this type. If the Amazon S3 bucket is not configured with static website hosting, use the `S3OriginConfig` type instead.",
7090 "stability": "external",
7091 "summary": "Use this type to specify an origin that is not an Amazon S3 bucket, with one exception."
7092 },
7093 "immutable": true,
7094 "locationInModule": {
7095 "filename": "lib/cloudfront.generated.ts",
7096 "line": 2964
7097 },
7098 "name": "customOriginConfig",
7099 "optional": true,
7100 "type": {
7101 "union": {
7102 "types": [
7103 {
7104 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.CustomOriginConfigProperty"
7105 },
7106 {
7107 "fqn": "@aws-cdk/core.IResolvable"
7108 }
7109 ]
7110 }
7111 }
7112 },
7113 {
7114 "abstract": true,
7115 "docs": {
7116 "custom": {
7117 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origin.html#cfn-cloudfront-distribution-origin-origincustomheaders"
7118 },
7119 "remarks": "For more information, see [Adding Custom Headers to Origin Requests](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/add-origin-custom-headers.html) in the *Amazon CloudFront Developer Guide* .",
7120 "stability": "external",
7121 "summary": "A list of HTTP header names and values that CloudFront adds to the requests that it sends to the origin."
7122 },
7123 "immutable": true,
7124 "locationInModule": {
7125 "filename": "lib/cloudfront.generated.ts",
7126 "line": 2988
7127 },
7128 "name": "originCustomHeaders",
7129 "optional": true,
7130 "type": {
7131 "union": {
7132 "types": [
7133 {
7134 "fqn": "@aws-cdk/core.IResolvable"
7135 },
7136 {
7137 "collection": {
7138 "elementtype": {
7139 "union": {
7140 "types": [
7141 {
7142 "fqn": "@aws-cdk/core.IResolvable"
7143 },
7144 {
7145 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.OriginCustomHeaderProperty"
7146 }
7147 ]
7148 }
7149 },
7150 "kind": "array"
7151 }
7152 }
7153 ]
7154 }
7155 }
7156 },
7157 {
7158 "abstract": true,
7159 "docs": {
7160 "custom": {
7161 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origin.html#cfn-cloudfront-distribution-origin-originpath"
7162 },
7163 "remarks": "For more information, see [Origin Path](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesOriginPath) in the *Amazon CloudFront Developer Guide* .",
7164 "stability": "external",
7165 "summary": "An optional path that CloudFront appends to the origin domain name when CloudFront requests content from the origin."
7166 },
7167 "immutable": true,
7168 "locationInModule": {
7169 "filename": "lib/cloudfront.generated.ts",
7170 "line": 2996
7171 },
7172 "name": "originPath",
7173 "optional": true,
7174 "type": {
7175 "primitive": "string"
7176 }
7177 },
7178 {
7179 "abstract": true,
7180 "docs": {
7181 "custom": {
7182 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origin.html#cfn-cloudfront-distribution-origin-originshield"
7183 },
7184 "remarks": "For more information, see [Using Origin Shield](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/origin-shield.html) in the *Amazon CloudFront Developer Guide* .",
7185 "stability": "external",
7186 "summary": "CloudFront Origin Shield. Using Origin Shield can help reduce the load on your origin."
7187 },
7188 "immutable": true,
7189 "locationInModule": {
7190 "filename": "lib/cloudfront.generated.ts",
7191 "line": 3004
7192 },
7193 "name": "originShield",
7194 "optional": true,
7195 "type": {
7196 "union": {
7197 "types": [
7198 {
7199 "fqn": "@aws-cdk/core.IResolvable"
7200 },
7201 {
7202 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.OriginShieldProperty"
7203 }
7204 ]
7205 }
7206 }
7207 },
7208 {
7209 "abstract": true,
7210 "docs": {
7211 "custom": {
7212 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origin.html#cfn-cloudfront-distribution-origin-s3originconfig"
7213 },
7214 "remarks": "To specify any other type of origin, including an Amazon S3 bucket that is configured with static website hosting, use the `CustomOriginConfig` type instead.",
7215 "stability": "external",
7216 "summary": "Use this type to specify an origin that is an Amazon S3 bucket that is not configured with static website hosting."
7217 },
7218 "immutable": true,
7219 "locationInModule": {
7220 "filename": "lib/cloudfront.generated.ts",
7221 "line": 3010
7222 },
7223 "name": "s3OriginConfig",
7224 "optional": true,
7225 "type": {
7226 "union": {
7227 "types": [
7228 {
7229 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.S3OriginConfigProperty"
7230 },
7231 {
7232 "fqn": "@aws-cdk/core.IResolvable"
7233 }
7234 ]
7235 }
7236 }
7237 }
7238 ],
7239 "symbolId": "lib/cloudfront.generated:CfnDistribution.OriginProperty"
7240 },
7241 "@aws-cdk/aws-cloudfront.CfnDistribution.OriginShieldProperty": {
7242 "assembly": "@aws-cdk/aws-cloudfront",
7243 "datatype": true,
7244 "docs": {
7245 "custom": {
7246 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-originshield.html",
7247 "exampleMetadata": "fixture=_generated"
7248 },
7249 "remarks": "Using Origin Shield can help reduce the load on your origin. For more information, see [Using Origin Shield](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/origin-shield.html) in the *Amazon CloudFront Developer Guide* .",
7250 "stability": "external",
7251 "summary": "CloudFront Origin Shield.",
7252 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst originShieldProperty: cloudfront.CfnDistribution.OriginShieldProperty = {\n enabled: false,\n originShieldRegion: 'originShieldRegion',\n};"
7253 },
7254 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.OriginShieldProperty",
7255 "kind": "interface",
7256 "locationInModule": {
7257 "filename": "lib/cloudfront.generated.ts",
7258 "line": 3556
7259 },
7260 "name": "OriginShieldProperty",
7261 "namespace": "CfnDistribution",
7262 "properties": [
7263 {
7264 "abstract": true,
7265 "docs": {
7266 "custom": {
7267 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-originshield.html#cfn-cloudfront-distribution-originshield-enabled"
7268 },
7269 "remarks": "When it’s enabled, CloudFront routes all requests through Origin Shield, which can help protect your origin. When it’s disabled, CloudFront might send requests directly to your origin from multiple edge locations or regional edge caches.",
7270 "stability": "external",
7271 "summary": "A flag that specifies whether Origin Shield is enabled."
7272 },
7273 "immutable": true,
7274 "locationInModule": {
7275 "filename": "lib/cloudfront.generated.ts",
7276 "line": 3564
7277 },
7278 "name": "enabled",
7279 "optional": true,
7280 "type": {
7281 "union": {
7282 "types": [
7283 {
7284 "primitive": "boolean"
7285 },
7286 {
7287 "fqn": "@aws-cdk/core.IResolvable"
7288 }
7289 ]
7290 }
7291 }
7292 },
7293 {
7294 "abstract": true,
7295 "docs": {
7296 "custom": {
7297 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-originshield.html#cfn-cloudfront-distribution-originshield-originshieldregion"
7298 },
7299 "remarks": "Specify the AWS Region that has the lowest latency to your origin. To specify a region, use the region code, not the region name. For example, specify the US East (Ohio) region as `us-east-2` .\n\nWhen you enable CloudFront Origin Shield, you must specify the AWS Region for Origin Shield. For the list of AWS Regions that you can specify, and for help choosing the best Region for your origin, see [Choosing the AWS Region for Origin Shield](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/origin-shield.html#choose-origin-shield-region) in the *Amazon CloudFront Developer Guide* .",
7300 "stability": "external",
7301 "summary": "The AWS Region for Origin Shield."
7302 },
7303 "immutable": true,
7304 "locationInModule": {
7305 "filename": "lib/cloudfront.generated.ts",
7306 "line": 3574
7307 },
7308 "name": "originShieldRegion",
7309 "optional": true,
7310 "type": {
7311 "primitive": "string"
7312 }
7313 }
7314 ],
7315 "symbolId": "lib/cloudfront.generated:CfnDistribution.OriginShieldProperty"
7316 },
7317 "@aws-cdk/aws-cloudfront.CfnDistribution.RestrictionsProperty": {
7318 "assembly": "@aws-cdk/aws-cloudfront",
7319 "datatype": true,
7320 "docs": {
7321 "custom": {
7322 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-restrictions.html",
7323 "exampleMetadata": "fixture=_generated"
7324 },
7325 "stability": "external",
7326 "summary": "A complex type that identifies ways in which you want to restrict distribution of your content.",
7327 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst restrictionsProperty: cloudfront.CfnDistribution.RestrictionsProperty = {\n geoRestriction: {\n restrictionType: 'restrictionType',\n\n // the properties below are optional\n locations: ['locations'],\n },\n};"
7328 },
7329 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.RestrictionsProperty",
7330 "kind": "interface",
7331 "locationInModule": {
7332 "filename": "lib/cloudfront.generated.ts",
7333 "line": 3638
7334 },
7335 "name": "RestrictionsProperty",
7336 "namespace": "CfnDistribution",
7337 "properties": [
7338 {
7339 "abstract": true,
7340 "docs": {
7341 "custom": {
7342 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-restrictions.html#cfn-cloudfront-distribution-restrictions-georestriction"
7343 },
7344 "remarks": "CloudFront determines the location of your users using `MaxMind` GeoIP databases. To disable geo restriction, remove the [Restrictions](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-restrictions) property from your stack template.",
7345 "stability": "external",
7346 "summary": "A complex type that controls the countries in which your content is distributed."
7347 },
7348 "immutable": true,
7349 "locationInModule": {
7350 "filename": "lib/cloudfront.generated.ts",
7351 "line": 3644
7352 },
7353 "name": "geoRestriction",
7354 "type": {
7355 "union": {
7356 "types": [
7357 {
7358 "fqn": "@aws-cdk/core.IResolvable"
7359 },
7360 {
7361 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.GeoRestrictionProperty"
7362 }
7363 ]
7364 }
7365 }
7366 }
7367 ],
7368 "symbolId": "lib/cloudfront.generated:CfnDistribution.RestrictionsProperty"
7369 },
7370 "@aws-cdk/aws-cloudfront.CfnDistribution.S3OriginConfigProperty": {
7371 "assembly": "@aws-cdk/aws-cloudfront",
7372 "datatype": true,
7373 "docs": {
7374 "custom": {
7375 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-s3originconfig.html",
7376 "exampleMetadata": "fixture=_generated"
7377 },
7378 "remarks": "If the origin is a custom origin or an S3 bucket that is configured as a website endpoint, use the `CustomOriginConfig` element instead.",
7379 "stability": "external",
7380 "summary": "A complex type that contains information about the Amazon S3 origin.",
7381 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst s3OriginConfigProperty: cloudfront.CfnDistribution.S3OriginConfigProperty = {\n originAccessIdentity: 'originAccessIdentity',\n};"
7382 },
7383 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.S3OriginConfigProperty",
7384 "kind": "interface",
7385 "locationInModule": {
7386 "filename": "lib/cloudfront.generated.ts",
7387 "line": 3706
7388 },
7389 "name": "S3OriginConfigProperty",
7390 "namespace": "CfnDistribution",
7391 "properties": [
7392 {
7393 "abstract": true,
7394 "docs": {
7395 "custom": {
7396 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-s3originconfig.html#cfn-cloudfront-distribution-s3originconfig-originaccessidentity"
7397 },
7398 "remarks": "Use an origin access identity to configure the origin so that viewers can *only* access objects in an Amazon S3 bucket through CloudFront. The format of the value is:\n\norigin-access-identity/cloudfront/ *ID-of-origin-access-identity*\n\nwhere `*ID-of-origin-access-identity*` is the value that CloudFront returned in the `ID` element when you created the origin access identity.\n\nIf you want viewers to be able to access objects using either the CloudFront URL or the Amazon S3 URL, specify an empty `OriginAccessIdentity` element.\n\nTo delete the origin access identity from an existing distribution, update the distribution configuration and include an empty `OriginAccessIdentity` element.\n\nTo replace the origin access identity, update the distribution configuration and specify the new origin access identity.\n\nFor more information about the origin access identity, see [Serving Private Content through CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html) in the *Amazon CloudFront Developer Guide* .",
7399 "stability": "external",
7400 "summary": "The CloudFront origin access identity to associate with the origin."
7401 },
7402 "immutable": true,
7403 "locationInModule": {
7404 "filename": "lib/cloudfront.generated.ts",
7405 "line": 3724
7406 },
7407 "name": "originAccessIdentity",
7408 "optional": true,
7409 "type": {
7410 "primitive": "string"
7411 }
7412 }
7413 ],
7414 "symbolId": "lib/cloudfront.generated:CfnDistribution.S3OriginConfigProperty"
7415 },
7416 "@aws-cdk/aws-cloudfront.CfnDistribution.StatusCodesProperty": {
7417 "assembly": "@aws-cdk/aws-cloudfront",
7418 "datatype": true,
7419 "docs": {
7420 "custom": {
7421 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-statuscodes.html",
7422 "exampleMetadata": "fixture=_generated"
7423 },
7424 "stability": "external",
7425 "summary": "A complex data type for the status codes that you specify that, when returned by a primary origin, trigger CloudFront to failover to a second origin.",
7426 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst statusCodesProperty: cloudfront.CfnDistribution.StatusCodesProperty = {\n items: [123],\n quantity: 123,\n};"
7427 },
7428 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.StatusCodesProperty",
7429 "kind": "interface",
7430 "locationInModule": {
7431 "filename": "lib/cloudfront.generated.ts",
7432 "line": 3785
7433 },
7434 "name": "StatusCodesProperty",
7435 "namespace": "CfnDistribution",
7436 "properties": [
7437 {
7438 "abstract": true,
7439 "docs": {
7440 "custom": {
7441 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-statuscodes.html#cfn-cloudfront-distribution-statuscodes-items"
7442 },
7443 "stability": "external",
7444 "summary": "The items (status codes) for an origin group."
7445 },
7446 "immutable": true,
7447 "locationInModule": {
7448 "filename": "lib/cloudfront.generated.ts",
7449 "line": 3791
7450 },
7451 "name": "items",
7452 "type": {
7453 "union": {
7454 "types": [
7455 {
7456 "collection": {
7457 "elementtype": {
7458 "primitive": "number"
7459 },
7460 "kind": "array"
7461 }
7462 },
7463 {
7464 "fqn": "@aws-cdk/core.IResolvable"
7465 }
7466 ]
7467 }
7468 }
7469 },
7470 {
7471 "abstract": true,
7472 "docs": {
7473 "custom": {
7474 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-statuscodes.html#cfn-cloudfront-distribution-statuscodes-quantity"
7475 },
7476 "stability": "external",
7477 "summary": "The number of status codes."
7478 },
7479 "immutable": true,
7480 "locationInModule": {
7481 "filename": "lib/cloudfront.generated.ts",
7482 "line": 3797
7483 },
7484 "name": "quantity",
7485 "type": {
7486 "primitive": "number"
7487 }
7488 }
7489 ],
7490 "symbolId": "lib/cloudfront.generated:CfnDistribution.StatusCodesProperty"
7491 },
7492 "@aws-cdk/aws-cloudfront.CfnDistribution.ViewerCertificateProperty": {
7493 "assembly": "@aws-cdk/aws-cloudfront",
7494 "datatype": true,
7495 "docs": {
7496 "custom": {
7497 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-viewercertificate.html",
7498 "exampleMetadata": "fixture=_generated"
7499 },
7500 "remarks": "If the distribution doesn’t use `Aliases` (also known as alternate domain names or CNAMEs)—that is, if the distribution uses the CloudFront domain name such as `d111111abcdef8.cloudfront.net` —set `CloudFrontDefaultCertificate` to `true` and leave all other fields empty.\n\nIf the distribution uses `Aliases` (alternate domain names or CNAMEs), use the fields in this type to specify the following settings:\n\n- Which viewers the distribution accepts HTTPS connections from: only viewers that support [server name indication (SNI)](https://docs.aws.amazon.com/https://en.wikipedia.org/wiki/Server_Name_Indication) (recommended), or all viewers including those that don’t support SNI.\n\n- To accept HTTPS connections from only viewers that support SNI, set `SSLSupportMethod` to `sni-only` . This is recommended. Most browsers and clients support SNI. (In CloudFormation, the field name is `SslSupportMethod` . Note the different capitalization.)\n- To accept HTTPS connections from all viewers, including those that don’t support SNI, set `SSLSupportMethod` to `vip` . This is not recommended, and results in additional monthly charges from CloudFront. (In CloudFormation, the field name is `SslSupportMethod` . Note the different capitalization.)\n- The minimum SSL/TLS protocol version that the distribution can use to communicate with viewers. To specify a minimum version, choose a value for `MinimumProtocolVersion` . For more information, see [Security Policy](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValues-security-policy) in the *Amazon CloudFront Developer Guide* .\n- The location of the SSL/TLS certificate, [AWS Certificate Manager (ACM)](https://docs.aws.amazon.com/acm/latest/userguide/acm-overview.html) (recommended) or [AWS Identity and Access Management (IAM)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html) . You specify the location by setting a value in one of the following fields (not both):\n\n- `ACMCertificateArn` (In CloudFormation, this field name is `AcmCertificateArn` . Note the different capitalization.)\n- `IAMCertificateId` (In CloudFormation, this field name is `IamCertificateId` . Note the different capitalization.)\n\nAll distributions support HTTPS connections from viewers. To require viewers to use HTTPS only, or to redirect them from HTTP to HTTPS, use `ViewerProtocolPolicy` in the `CacheBehavior` or `DefaultCacheBehavior` . To specify how CloudFront should use SSL/TLS to communicate with your custom origin, use `CustomOriginConfig` .\n\nFor more information, see [Using HTTPS with CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-https.html) and [Using Alternate Domain Names and HTTPS](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-https-alternate-domain-names.html) in the *Amazon CloudFront Developer Guide* .",
7501 "stability": "external",
7502 "summary": "A complex type that determines the distribution’s SSL/TLS configuration for communicating with viewers.",
7503 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst viewerCertificateProperty: cloudfront.CfnDistribution.ViewerCertificateProperty = {\n acmCertificateArn: 'acmCertificateArn',\n cloudFrontDefaultCertificate: false,\n iamCertificateId: 'iamCertificateId',\n minimumProtocolVersion: 'minimumProtocolVersion',\n sslSupportMethod: 'sslSupportMethod',\n};"
7504 },
7505 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.ViewerCertificateProperty",
7506 "kind": "interface",
7507 "locationInModule": {
7508 "filename": "lib/cloudfront.generated.ts",
7509 "line": 3881
7510 },
7511 "name": "ViewerCertificateProperty",
7512 "namespace": "CfnDistribution",
7513 "properties": [
7514 {
7515 "abstract": true,
7516 "docs": {
7517 "custom": {
7518 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-viewercertificate.html#cfn-cloudfront-distribution-viewercertificate-acmcertificatearn"
7519 },
7520 "remarks": "If the distribution uses `Aliases` (alternate domain names or CNAMEs) and the SSL/TLS certificate is stored in [AWS Certificate Manager (ACM)](https://docs.aws.amazon.com/acm/latest/userguide/acm-overview.html) , provide the Amazon Resource Name (ARN) of the ACM certificate. CloudFront only supports ACM certificates in the US East (N. Virginia) Region ( `us-east-1` ).\n\nIf you specify an ACM certificate ARN, you must also specify values for `MinimumProtocolVersion` and `SSLSupportMethod` . (In CloudFormation, the field name is `SslSupportMethod` . Note the different capitalization.)",
7521 "stability": "external",
7522 "summary": "> In CloudFormation, this field name is `AcmCertificateArn` . Note the different capitalization."
7523 },
7524 "immutable": true,
7525 "locationInModule": {
7526 "filename": "lib/cloudfront.generated.ts",
7527 "line": 3891
7528 },
7529 "name": "acmCertificateArn",
7530 "optional": true,
7531 "type": {
7532 "primitive": "string"
7533 }
7534 },
7535 {
7536 "abstract": true,
7537 "docs": {
7538 "custom": {
7539 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-viewercertificate.html#cfn-cloudfront-distribution-viewercertificate-cloudfrontdefaultcertificate"
7540 },
7541 "remarks": "If the distribution uses `Aliases` (alternate domain names or CNAMEs), set this field to `false` and specify values for the following fields:\n\n- `ACMCertificateArn` or `IAMCertificateId` (specify a value for one, not both)\n\nIn CloudFormation, these field names are `AcmCertificateArn` and `IamCertificateId` . Note the different capitalization.\n- `MinimumProtocolVersion`\n- `SSLSupportMethod` (In CloudFormation, this field name is `SslSupportMethod` . Note the different capitalization.)",
7542 "stability": "external",
7543 "summary": "If the distribution uses the CloudFront domain name such as `d111111abcdef8.cloudfront.net` , set this field to `true` ."
7544 },
7545 "immutable": true,
7546 "locationInModule": {
7547 "filename": "lib/cloudfront.generated.ts",
7548 "line": 3905
7549 },
7550 "name": "cloudFrontDefaultCertificate",
7551 "optional": true,
7552 "type": {
7553 "union": {
7554 "types": [
7555 {
7556 "primitive": "boolean"
7557 },
7558 {
7559 "fqn": "@aws-cdk/core.IResolvable"
7560 }
7561 ]
7562 }
7563 }
7564 },
7565 {
7566 "abstract": true,
7567 "docs": {
7568 "custom": {
7569 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-viewercertificate.html#cfn-cloudfront-distribution-viewercertificate-iamcertificateid"
7570 },
7571 "remarks": "If the distribution uses `Aliases` (alternate domain names or CNAMEs) and the SSL/TLS certificate is stored in [AWS Identity and Access Management (IAM)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html) , provide the ID of the IAM certificate.\n\nIf you specify an IAM certificate ID, you must also specify values for `MinimumProtocolVersion` and `SSLSupportMethod` . (In CloudFormation, the field name is `SslSupportMethod` . Note the different capitalization.)",
7572 "stability": "external",
7573 "summary": "> In CloudFormation, this field name is `IamCertificateId` . Note the different capitalization."
7574 },
7575 "immutable": true,
7576 "locationInModule": {
7577 "filename": "lib/cloudfront.generated.ts",
7578 "line": 3915
7579 },
7580 "name": "iamCertificateId",
7581 "optional": true,
7582 "type": {
7583 "primitive": "string"
7584 }
7585 },
7586 {
7587 "abstract": true,
7588 "docs": {
7589 "custom": {
7590 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-viewercertificate.html#cfn-cloudfront-distribution-viewercertificate-minimumprotocolversion"
7591 },
7592 "remarks": "The security policy determines two settings:\n\n- The minimum SSL/TLS protocol that CloudFront can use to communicate with viewers.\n- The ciphers that CloudFront can use to encrypt the content that it returns to viewers.\n\nFor more information, see [Security Policy](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValues-security-policy) and [Supported Protocols and Ciphers Between Viewers and CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/secure-connections-supported-viewer-protocols-ciphers.html#secure-connections-supported-ciphers) in the *Amazon CloudFront Developer Guide* .\n\n> On the CloudFront console, this setting is called *Security Policy* .\n\nWhen you’re using SNI only (you set `SSLSupportMethod` to `sni-only` ), you must specify `TLSv1` or higher. (In CloudFormation, the field name is `SslSupportMethod` . Note the different capitalization.)\n\nIf the distribution uses the CloudFront domain name such as `d111111abcdef8.cloudfront.net` (you set `CloudFrontDefaultCertificate` to `true` ), CloudFront automatically sets the security policy to `TLSv1` regardless of the value that you set here.",
7593 "stability": "external",
7594 "summary": "If the distribution uses `Aliases` (alternate domain names or CNAMEs), specify the security policy that you want CloudFront to use for HTTPS connections with viewers."
7595 },
7596 "immutable": true,
7597 "locationInModule": {
7598 "filename": "lib/cloudfront.generated.ts",
7599 "line": 3932
7600 },
7601 "name": "minimumProtocolVersion",
7602 "optional": true,
7603 "type": {
7604 "primitive": "string"
7605 }
7606 },
7607 {
7608 "abstract": true,
7609 "docs": {
7610 "custom": {
7611 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-viewercertificate.html#cfn-cloudfront-distribution-viewercertificate-sslsupportmethod"
7612 },
7613 "remarks": "If the distribution uses `Aliases` (alternate domain names or CNAMEs), specify which viewers the distribution accepts HTTPS connections from.\n\n- `sni-only` – The distribution accepts HTTPS connections from only viewers that support [server name indication (SNI)](https://docs.aws.amazon.com/https://en.wikipedia.org/wiki/Server_Name_Indication) . This is recommended. Most browsers and clients support SNI.\n- `vip` – The distribution accepts HTTPS connections from all viewers including those that don’t support SNI. This is not recommended, and results in additional monthly charges from CloudFront.\n- `static-ip` - Do not specify this value unless your distribution has been enabled for this feature by the CloudFront team. If you have a use case that requires static IP addresses for a distribution, contact CloudFront through the [AWS Support Center](https://docs.aws.amazon.com/support/home) .\n\nIf the distribution uses the CloudFront domain name such as `d111111abcdef8.cloudfront.net` , don’t set a value for this field.",
7614 "stability": "external",
7615 "summary": "> In CloudFormation, this field name is `SslSupportMethod` . Note the different capitalization."
7616 },
7617 "immutable": true,
7618 "locationInModule": {
7619 "filename": "lib/cloudfront.generated.ts",
7620 "line": 3946
7621 },
7622 "name": "sslSupportMethod",
7623 "optional": true,
7624 "type": {
7625 "primitive": "string"
7626 }
7627 }
7628 ],
7629 "symbolId": "lib/cloudfront.generated:CfnDistribution.ViewerCertificateProperty"
7630 },
7631 "@aws-cdk/aws-cloudfront.CfnDistributionProps": {
7632 "assembly": "@aws-cdk/aws-cloudfront",
7633 "datatype": true,
7634 "docs": {
7635 "custom": {
7636 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-distribution.html",
7637 "exampleMetadata": "fixture=_generated"
7638 },
7639 "stability": "external",
7640 "summary": "Properties for defining a `CfnDistribution`.",
7641 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst cfnDistributionProps: cloudfront.CfnDistributionProps = {\n distributionConfig: {\n enabled: false,\n\n // the properties below are optional\n aliases: ['aliases'],\n cacheBehaviors: [{\n pathPattern: 'pathPattern',\n targetOriginId: 'targetOriginId',\n viewerProtocolPolicy: 'viewerProtocolPolicy',\n\n // the properties below are optional\n allowedMethods: ['allowedMethods'],\n cachedMethods: ['cachedMethods'],\n cachePolicyId: 'cachePolicyId',\n compress: false,\n defaultTtl: 123,\n fieldLevelEncryptionId: 'fieldLevelEncryptionId',\n forwardedValues: {\n queryString: false,\n\n // the properties below are optional\n cookies: {\n forward: 'forward',\n\n // the properties below are optional\n whitelistedNames: ['whitelistedNames'],\n },\n headers: ['headers'],\n queryStringCacheKeys: ['queryStringCacheKeys'],\n },\n functionAssociations: [{\n eventType: 'eventType',\n functionArn: 'functionArn',\n }],\n lambdaFunctionAssociations: [{\n eventType: 'eventType',\n includeBody: false,\n lambdaFunctionArn: 'lambdaFunctionArn',\n }],\n maxTtl: 123,\n minTtl: 123,\n originRequestPolicyId: 'originRequestPolicyId',\n realtimeLogConfigArn: 'realtimeLogConfigArn',\n responseHeadersPolicyId: 'responseHeadersPolicyId',\n smoothStreaming: false,\n trustedKeyGroups: ['trustedKeyGroups'],\n trustedSigners: ['trustedSigners'],\n }],\n cnamEs: ['cnamEs'],\n comment: 'comment',\n customErrorResponses: [{\n errorCode: 123,\n\n // the properties below are optional\n errorCachingMinTtl: 123,\n responseCode: 123,\n responsePagePath: 'responsePagePath',\n }],\n customOrigin: {\n dnsName: 'dnsName',\n originProtocolPolicy: 'originProtocolPolicy',\n originSslProtocols: ['originSslProtocols'],\n\n // the properties below are optional\n httpPort: 123,\n httpsPort: 123,\n },\n defaultCacheBehavior: {\n targetOriginId: 'targetOriginId',\n viewerProtocolPolicy: 'viewerProtocolPolicy',\n\n // the properties below are optional\n allowedMethods: ['allowedMethods'],\n cachedMethods: ['cachedMethods'],\n cachePolicyId: 'cachePolicyId',\n compress: false,\n defaultTtl: 123,\n fieldLevelEncryptionId: 'fieldLevelEncryptionId',\n forwardedValues: {\n queryString: false,\n\n // the properties below are optional\n cookies: {\n forward: 'forward',\n\n // the properties below are optional\n whitelistedNames: ['whitelistedNames'],\n },\n headers: ['headers'],\n queryStringCacheKeys: ['queryStringCacheKeys'],\n },\n functionAssociations: [{\n eventType: 'eventType',\n functionArn: 'functionArn',\n }],\n lambdaFunctionAssociations: [{\n eventType: 'eventType',\n includeBody: false,\n lambdaFunctionArn: 'lambdaFunctionArn',\n }],\n maxTtl: 123,\n minTtl: 123,\n originRequestPolicyId: 'originRequestPolicyId',\n realtimeLogConfigArn: 'realtimeLogConfigArn',\n responseHeadersPolicyId: 'responseHeadersPolicyId',\n smoothStreaming: false,\n trustedKeyGroups: ['trustedKeyGroups'],\n trustedSigners: ['trustedSigners'],\n },\n defaultRootObject: 'defaultRootObject',\n httpVersion: 'httpVersion',\n ipv6Enabled: false,\n logging: {\n bucket: 'bucket',\n\n // the properties below are optional\n includeCookies: false,\n prefix: 'prefix',\n },\n originGroups: {\n quantity: 123,\n\n // the properties below are optional\n items: [{\n failoverCriteria: {\n statusCodes: {\n items: [123],\n quantity: 123,\n },\n },\n id: 'id',\n members: {\n items: [{\n originId: 'originId',\n }],\n quantity: 123,\n },\n }],\n },\n origins: [{\n domainName: 'domainName',\n id: 'id',\n\n // the properties below are optional\n connectionAttempts: 123,\n connectionTimeout: 123,\n customOriginConfig: {\n originProtocolPolicy: 'originProtocolPolicy',\n\n // the properties below are optional\n httpPort: 123,\n httpsPort: 123,\n originKeepaliveTimeout: 123,\n originReadTimeout: 123,\n originSslProtocols: ['originSslProtocols'],\n },\n originCustomHeaders: [{\n headerName: 'headerName',\n headerValue: 'headerValue',\n }],\n originPath: 'originPath',\n originShield: {\n enabled: false,\n originShieldRegion: 'originShieldRegion',\n },\n s3OriginConfig: {\n originAccessIdentity: 'originAccessIdentity',\n },\n }],\n priceClass: 'priceClass',\n restrictions: {\n geoRestriction: {\n restrictionType: 'restrictionType',\n\n // the properties below are optional\n locations: ['locations'],\n },\n },\n s3Origin: {\n dnsName: 'dnsName',\n\n // the properties below are optional\n originAccessIdentity: 'originAccessIdentity',\n },\n viewerCertificate: {\n acmCertificateArn: 'acmCertificateArn',\n cloudFrontDefaultCertificate: false,\n iamCertificateId: 'iamCertificateId',\n minimumProtocolVersion: 'minimumProtocolVersion',\n sslSupportMethod: 'sslSupportMethod',\n },\n webAclId: 'webAclId',\n },\n\n // the properties below are optional\n tags: [{\n key: 'key',\n value: 'value',\n }],\n};"
7642 },
7643 "fqn": "@aws-cdk/aws-cloudfront.CfnDistributionProps",
7644 "kind": "interface",
7645 "locationInModule": {
7646 "filename": "lib/cloudfront.generated.ts",
7647 "line": 911
7648 },
7649 "name": "CfnDistributionProps",
7650 "properties": [
7651 {
7652 "abstract": true,
7653 "docs": {
7654 "custom": {
7655 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-distribution.html#cfn-cloudfront-distribution-distributionconfig"
7656 },
7657 "remarks": "Send a `GET` request to the `/ *CloudFront API version* /distribution ID/config` resource.",
7658 "stability": "external",
7659 "summary": "The current configuration information for the distribution."
7660 },
7661 "immutable": true,
7662 "locationInModule": {
7663 "filename": "lib/cloudfront.generated.ts",
7664 "line": 918
7665 },
7666 "name": "distributionConfig",
7667 "type": {
7668 "union": {
7669 "types": [
7670 {
7671 "fqn": "@aws-cdk/core.IResolvable"
7672 },
7673 {
7674 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.DistributionConfigProperty"
7675 }
7676 ]
7677 }
7678 }
7679 },
7680 {
7681 "abstract": true,
7682 "docs": {
7683 "custom": {
7684 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-distribution.html#cfn-cloudfront-distribution-tags"
7685 },
7686 "stability": "external",
7687 "summary": "A complex type that contains zero or more `Tag` elements."
7688 },
7689 "immutable": true,
7690 "locationInModule": {
7691 "filename": "lib/cloudfront.generated.ts",
7692 "line": 925
7693 },
7694 "name": "tags",
7695 "optional": true,
7696 "type": {
7697 "collection": {
7698 "elementtype": {
7699 "fqn": "@aws-cdk/core.CfnTag"
7700 },
7701 "kind": "array"
7702 }
7703 }
7704 }
7705 ],
7706 "symbolId": "lib/cloudfront.generated:CfnDistributionProps"
7707 },
7708 "@aws-cdk/aws-cloudfront.CfnFunction": {
7709 "assembly": "@aws-cdk/aws-cloudfront",
7710 "base": "@aws-cdk/core.CfnResource",
7711 "docs": {
7712 "custom": {
7713 "cloudformationResource": "AWS::CloudFront::Function",
7714 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-function.html",
7715 "exampleMetadata": "fixture=_generated"
7716 },
7717 "remarks": "Creates a CloudFront function.\n\nTo create a function, you provide the function code and some configuration information about the function. The response contains an Amazon Resource Name (ARN) that uniquely identifies the function, and the function’s stage.\n\nBy default, when you create a function, it’s in the `DEVELOPMENT` stage. In this stage, you can [test the function](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/test-function.html) in the CloudFront console (or with `TestFunction` in the CloudFront API).\n\nWhen you’re ready to use your function with a CloudFront distribution, publish the function to the `LIVE` stage. You can do this in the CloudFront console, with `PublishFunction` in the CloudFront API, or by updating the `AWS::CloudFront::Function` resource with the `AutoPublish` property set to `true` . When the function is published to the `LIVE` stage, you can attach it to a distribution’s cache behavior, using the function’s ARN.\n\nTo automatically publish the function to the `LIVE` stage when it’s created, set the `AutoPublish` property to `true` .",
7718 "stability": "external",
7719 "summary": "A CloudFormation `AWS::CloudFront::Function`.",
7720 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst cfnFunction = new cloudfront.CfnFunction(this, 'MyCfnFunction', {\n name: 'name',\n\n // the properties below are optional\n autoPublish: false,\n functionCode: 'functionCode',\n functionConfig: {\n comment: 'comment',\n runtime: 'runtime',\n },\n});"
7721 },
7722 "fqn": "@aws-cdk/aws-cloudfront.CfnFunction",
7723 "initializer": {
7724 "docs": {
7725 "stability": "external",
7726 "summary": "Create a new `AWS::CloudFront::Function`."
7727 },
7728 "locationInModule": {
7729 "filename": "lib/cloudfront.generated.ts",
7730 "line": 4206
7731 },
7732 "parameters": [
7733 {
7734 "docs": {
7735 "summary": "- scope in which this resource is defined."
7736 },
7737 "name": "scope",
7738 "type": {
7739 "fqn": "@aws-cdk/core.Construct"
7740 }
7741 },
7742 {
7743 "docs": {
7744 "summary": "- scoped id of the resource."
7745 },
7746 "name": "id",
7747 "type": {
7748 "primitive": "string"
7749 }
7750 },
7751 {
7752 "docs": {
7753 "summary": "- resource properties."
7754 },
7755 "name": "props",
7756 "type": {
7757 "fqn": "@aws-cdk/aws-cloudfront.CfnFunctionProps"
7758 }
7759 }
7760 ]
7761 },
7762 "interfaces": [
7763 "@aws-cdk/core.IInspectable"
7764 ],
7765 "kind": "class",
7766 "locationInModule": {
7767 "filename": "lib/cloudfront.generated.ts",
7768 "line": 4122
7769 },
7770 "methods": [
7771 {
7772 "docs": {
7773 "stability": "external",
7774 "summary": "Examines the CloudFormation resource and discloses attributes."
7775 },
7776 "locationInModule": {
7777 "filename": "lib/cloudfront.generated.ts",
7778 "line": 4225
7779 },
7780 "name": "inspect",
7781 "overrides": "@aws-cdk/core.IInspectable",
7782 "parameters": [
7783 {
7784 "docs": {
7785 "summary": "- tree inspector to collect and process attributes."
7786 },
7787 "name": "inspector",
7788 "type": {
7789 "fqn": "@aws-cdk/core.TreeInspector"
7790 }
7791 }
7792 ]
7793 },
7794 {
7795 "docs": {
7796 "stability": "external"
7797 },
7798 "locationInModule": {
7799 "filename": "lib/cloudfront.generated.ts",
7800 "line": 4239
7801 },
7802 "name": "renderProperties",
7803 "overrides": "@aws-cdk/core.CfnResource",
7804 "parameters": [
7805 {
7806 "name": "props",
7807 "type": {
7808 "collection": {
7809 "elementtype": {
7810 "primitive": "any"
7811 },
7812 "kind": "map"
7813 }
7814 }
7815 }
7816 ],
7817 "protected": true,
7818 "returns": {
7819 "type": {
7820 "collection": {
7821 "elementtype": {
7822 "primitive": "any"
7823 },
7824 "kind": "map"
7825 }
7826 }
7827 }
7828 }
7829 ],
7830 "name": "CfnFunction",
7831 "properties": [
7832 {
7833 "const": true,
7834 "docs": {
7835 "stability": "external",
7836 "summary": "The CloudFormation resource type name for this resource class."
7837 },
7838 "immutable": true,
7839 "locationInModule": {
7840 "filename": "lib/cloudfront.generated.ts",
7841 "line": 4126
7842 },
7843 "name": "CFN_RESOURCE_TYPE_NAME",
7844 "static": true,
7845 "type": {
7846 "primitive": "string"
7847 }
7848 },
7849 {
7850 "docs": {
7851 "custom": {
7852 "cloudformationAttribute": "FunctionARN"
7853 },
7854 "remarks": "`arn:aws:cloudfront::123456789012:function/ExampleFunction` .\n\nTo get the function ARN, use the following syntax:\n\n`!GetAtt *Function_Logical_ID* .FunctionMetadata.FunctionARN`",
7855 "stability": "external",
7856 "summary": "The ARN of the function. For example:."
7857 },
7858 "immutable": true,
7859 "locationInModule": {
7860 "filename": "lib/cloudfront.generated.ts",
7861 "line": 4157
7862 },
7863 "name": "attrFunctionArn",
7864 "type": {
7865 "primitive": "string"
7866 }
7867 },
7868 {
7869 "docs": {
7870 "custom": {
7871 "cloudformationAttribute": "FunctionMetadata.FunctionARN"
7872 },
7873 "stability": "external"
7874 },
7875 "immutable": true,
7876 "locationInModule": {
7877 "filename": "lib/cloudfront.generated.ts",
7878 "line": 4163
7879 },
7880 "name": "attrFunctionMetadataFunctionArn",
7881 "type": {
7882 "primitive": "string"
7883 }
7884 },
7885 {
7886 "docs": {
7887 "custom": {
7888 "cloudformationAttribute": "Stage"
7889 },
7890 "stability": "external"
7891 },
7892 "immutable": true,
7893 "locationInModule": {
7894 "filename": "lib/cloudfront.generated.ts",
7895 "line": 4169
7896 },
7897 "name": "attrStage",
7898 "type": {
7899 "primitive": "string"
7900 }
7901 },
7902 {
7903 "docs": {
7904 "stability": "external"
7905 },
7906 "immutable": true,
7907 "locationInModule": {
7908 "filename": "lib/cloudfront.generated.ts",
7909 "line": 4230
7910 },
7911 "name": "cfnProperties",
7912 "overrides": "@aws-cdk/core.CfnResource",
7913 "protected": true,
7914 "type": {
7915 "collection": {
7916 "elementtype": {
7917 "primitive": "any"
7918 },
7919 "kind": "map"
7920 }
7921 }
7922 },
7923 {
7924 "docs": {
7925 "custom": {
7926 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-function.html#cfn-cloudfront-function-name"
7927 },
7928 "stability": "external",
7929 "summary": "A name to identify the function."
7930 },
7931 "locationInModule": {
7932 "filename": "lib/cloudfront.generated.ts",
7933 "line": 4176
7934 },
7935 "name": "name",
7936 "type": {
7937 "primitive": "string"
7938 }
7939 },
7940 {
7941 "docs": {
7942 "custom": {
7943 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-function.html#cfn-cloudfront-function-autopublish"
7944 },
7945 "remarks": "To automatically publish to the `LIVE` stage, set this property to `true` .",
7946 "stability": "external",
7947 "summary": "A flag that determines whether to automatically publish the function to the `LIVE` stage when it’s created."
7948 },
7949 "locationInModule": {
7950 "filename": "lib/cloudfront.generated.ts",
7951 "line": 4183
7952 },
7953 "name": "autoPublish",
7954 "optional": true,
7955 "type": {
7956 "union": {
7957 "types": [
7958 {
7959 "primitive": "boolean"
7960 },
7961 {
7962 "fqn": "@aws-cdk/core.IResolvable"
7963 }
7964 ]
7965 }
7966 }
7967 },
7968 {
7969 "docs": {
7970 "custom": {
7971 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-function.html#cfn-cloudfront-function-functioncode"
7972 },
7973 "remarks": "For more information about writing a CloudFront function, see [Writing function code for CloudFront Functions](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/writing-function-code.html) in the *Amazon CloudFront Developer Guide* .",
7974 "stability": "external",
7975 "summary": "The function code."
7976 },
7977 "locationInModule": {
7978 "filename": "lib/cloudfront.generated.ts",
7979 "line": 4190
7980 },
7981 "name": "functionCode",
7982 "optional": true,
7983 "type": {
7984 "primitive": "string"
7985 }
7986 },
7987 {
7988 "docs": {
7989 "custom": {
7990 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-function.html#cfn-cloudfront-function-functionconfig"
7991 },
7992 "stability": "external",
7993 "summary": "Contains configuration information about a CloudFront function."
7994 },
7995 "locationInModule": {
7996 "filename": "lib/cloudfront.generated.ts",
7997 "line": 4197
7998 },
7999 "name": "functionConfig",
8000 "optional": true,
8001 "type": {
8002 "union": {
8003 "types": [
8004 {
8005 "fqn": "@aws-cdk/core.IResolvable"
8006 },
8007 {
8008 "fqn": "@aws-cdk/aws-cloudfront.CfnFunction.FunctionConfigProperty"
8009 }
8010 ]
8011 }
8012 }
8013 }
8014 ],
8015 "symbolId": "lib/cloudfront.generated:CfnFunction"
8016 },
8017 "@aws-cdk/aws-cloudfront.CfnFunction.FunctionConfigProperty": {
8018 "assembly": "@aws-cdk/aws-cloudfront",
8019 "datatype": true,
8020 "docs": {
8021 "custom": {
8022 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-function-functionconfig.html",
8023 "exampleMetadata": "fixture=_generated"
8024 },
8025 "stability": "external",
8026 "summary": "Contains configuration information about a CloudFront function.",
8027 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst functionConfigProperty: cloudfront.CfnFunction.FunctionConfigProperty = {\n comment: 'comment',\n runtime: 'runtime',\n};"
8028 },
8029 "fqn": "@aws-cdk/aws-cloudfront.CfnFunction.FunctionConfigProperty",
8030 "kind": "interface",
8031 "locationInModule": {
8032 "filename": "lib/cloudfront.generated.ts",
8033 "line": 4253
8034 },
8035 "name": "FunctionConfigProperty",
8036 "namespace": "CfnFunction",
8037 "properties": [
8038 {
8039 "abstract": true,
8040 "docs": {
8041 "custom": {
8042 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-function-functionconfig.html#cfn-cloudfront-function-functionconfig-comment"
8043 },
8044 "stability": "external",
8045 "summary": "A comment to describe the function."
8046 },
8047 "immutable": true,
8048 "locationInModule": {
8049 "filename": "lib/cloudfront.generated.ts",
8050 "line": 4259
8051 },
8052 "name": "comment",
8053 "type": {
8054 "primitive": "string"
8055 }
8056 },
8057 {
8058 "abstract": true,
8059 "docs": {
8060 "custom": {
8061 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-function-functionconfig.html#cfn-cloudfront-function-functionconfig-runtime"
8062 },
8063 "remarks": "The only valid value is `cloudfront-js-1.0` .",
8064 "stability": "external",
8065 "summary": "The function’s runtime environment."
8066 },
8067 "immutable": true,
8068 "locationInModule": {
8069 "filename": "lib/cloudfront.generated.ts",
8070 "line": 4265
8071 },
8072 "name": "runtime",
8073 "type": {
8074 "primitive": "string"
8075 }
8076 }
8077 ],
8078 "symbolId": "lib/cloudfront.generated:CfnFunction.FunctionConfigProperty"
8079 },
8080 "@aws-cdk/aws-cloudfront.CfnFunction.FunctionMetadataProperty": {
8081 "assembly": "@aws-cdk/aws-cloudfront",
8082 "datatype": true,
8083 "docs": {
8084 "custom": {
8085 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-function-functionmetadata.html",
8086 "exampleMetadata": "fixture=_generated"
8087 },
8088 "stability": "external",
8089 "summary": "Contains metadata about a CloudFront function.",
8090 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst functionMetadataProperty: cloudfront.CfnFunction.FunctionMetadataProperty = {\n functionArn: 'functionArn',\n};"
8091 },
8092 "fqn": "@aws-cdk/aws-cloudfront.CfnFunction.FunctionMetadataProperty",
8093 "kind": "interface",
8094 "locationInModule": {
8095 "filename": "lib/cloudfront.generated.ts",
8096 "line": 4331
8097 },
8098 "name": "FunctionMetadataProperty",
8099 "namespace": "CfnFunction",
8100 "properties": [
8101 {
8102 "abstract": true,
8103 "docs": {
8104 "custom": {
8105 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-function-functionmetadata.html#cfn-cloudfront-function-functionmetadata-functionarn"
8106 },
8107 "remarks": "The ARN uniquely identifies the function.",
8108 "stability": "external",
8109 "summary": "The Amazon Resource Name (ARN) of the function."
8110 },
8111 "immutable": true,
8112 "locationInModule": {
8113 "filename": "lib/cloudfront.generated.ts",
8114 "line": 4337
8115 },
8116 "name": "functionArn",
8117 "optional": true,
8118 "type": {
8119 "primitive": "string"
8120 }
8121 }
8122 ],
8123 "symbolId": "lib/cloudfront.generated:CfnFunction.FunctionMetadataProperty"
8124 },
8125 "@aws-cdk/aws-cloudfront.CfnFunctionProps": {
8126 "assembly": "@aws-cdk/aws-cloudfront",
8127 "datatype": true,
8128 "docs": {
8129 "custom": {
8130 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-function.html",
8131 "exampleMetadata": "fixture=_generated"
8132 },
8133 "stability": "external",
8134 "summary": "Properties for defining a `CfnFunction`.",
8135 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst cfnFunctionProps: cloudfront.CfnFunctionProps = {\n name: 'name',\n\n // the properties below are optional\n autoPublish: false,\n functionCode: 'functionCode',\n functionConfig: {\n comment: 'comment',\n runtime: 'runtime',\n },\n};"
8136 },
8137 "fqn": "@aws-cdk/aws-cloudfront.CfnFunctionProps",
8138 "kind": "interface",
8139 "locationInModule": {
8140 "filename": "lib/cloudfront.generated.ts",
8141 "line": 4018
8142 },
8143 "name": "CfnFunctionProps",
8144 "properties": [
8145 {
8146 "abstract": true,
8147 "docs": {
8148 "custom": {
8149 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-function.html#cfn-cloudfront-function-name"
8150 },
8151 "stability": "external",
8152 "summary": "A name to identify the function."
8153 },
8154 "immutable": true,
8155 "locationInModule": {
8156 "filename": "lib/cloudfront.generated.ts",
8157 "line": 4025
8158 },
8159 "name": "name",
8160 "type": {
8161 "primitive": "string"
8162 }
8163 },
8164 {
8165 "abstract": true,
8166 "docs": {
8167 "custom": {
8168 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-function.html#cfn-cloudfront-function-autopublish"
8169 },
8170 "remarks": "To automatically publish to the `LIVE` stage, set this property to `true` .",
8171 "stability": "external",
8172 "summary": "A flag that determines whether to automatically publish the function to the `LIVE` stage when it’s created."
8173 },
8174 "immutable": true,
8175 "locationInModule": {
8176 "filename": "lib/cloudfront.generated.ts",
8177 "line": 4032
8178 },
8179 "name": "autoPublish",
8180 "optional": true,
8181 "type": {
8182 "union": {
8183 "types": [
8184 {
8185 "primitive": "boolean"
8186 },
8187 {
8188 "fqn": "@aws-cdk/core.IResolvable"
8189 }
8190 ]
8191 }
8192 }
8193 },
8194 {
8195 "abstract": true,
8196 "docs": {
8197 "custom": {
8198 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-function.html#cfn-cloudfront-function-functioncode"
8199 },
8200 "remarks": "For more information about writing a CloudFront function, see [Writing function code for CloudFront Functions](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/writing-function-code.html) in the *Amazon CloudFront Developer Guide* .",
8201 "stability": "external",
8202 "summary": "The function code."
8203 },
8204 "immutable": true,
8205 "locationInModule": {
8206 "filename": "lib/cloudfront.generated.ts",
8207 "line": 4039
8208 },
8209 "name": "functionCode",
8210 "optional": true,
8211 "type": {
8212 "primitive": "string"
8213 }
8214 },
8215 {
8216 "abstract": true,
8217 "docs": {
8218 "custom": {
8219 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-function.html#cfn-cloudfront-function-functionconfig"
8220 },
8221 "stability": "external",
8222 "summary": "Contains configuration information about a CloudFront function."
8223 },
8224 "immutable": true,
8225 "locationInModule": {
8226 "filename": "lib/cloudfront.generated.ts",
8227 "line": 4046
8228 },
8229 "name": "functionConfig",
8230 "optional": true,
8231 "type": {
8232 "union": {
8233 "types": [
8234 {
8235 "fqn": "@aws-cdk/core.IResolvable"
8236 },
8237 {
8238 "fqn": "@aws-cdk/aws-cloudfront.CfnFunction.FunctionConfigProperty"
8239 }
8240 ]
8241 }
8242 }
8243 }
8244 ],
8245 "symbolId": "lib/cloudfront.generated:CfnFunctionProps"
8246 },
8247 "@aws-cdk/aws-cloudfront.CfnKeyGroup": {
8248 "assembly": "@aws-cdk/aws-cloudfront",
8249 "base": "@aws-cdk/core.CfnResource",
8250 "docs": {
8251 "custom": {
8252 "cloudformationResource": "AWS::CloudFront::KeyGroup",
8253 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-keygroup.html",
8254 "exampleMetadata": "fixture=_generated"
8255 },
8256 "remarks": "A key group.\n\nA key group contains a list of public keys that you can use with [CloudFront signed URLs and signed cookies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html) .",
8257 "stability": "external",
8258 "summary": "A CloudFormation `AWS::CloudFront::KeyGroup`.",
8259 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst cfnKeyGroup = new cloudfront.CfnKeyGroup(this, 'MyCfnKeyGroup', {\n keyGroupConfig: {\n items: ['items'],\n name: 'name',\n\n // the properties below are optional\n comment: 'comment',\n },\n});"
8260 },
8261 "fqn": "@aws-cdk/aws-cloudfront.CfnKeyGroup",
8262 "initializer": {
8263 "docs": {
8264 "stability": "external",
8265 "summary": "Create a new `AWS::CloudFront::KeyGroup`."
8266 },
8267 "locationInModule": {
8268 "filename": "lib/cloudfront.generated.ts",
8269 "line": 4516
8270 },
8271 "parameters": [
8272 {
8273 "docs": {
8274 "summary": "- scope in which this resource is defined."
8275 },
8276 "name": "scope",
8277 "type": {
8278 "fqn": "@aws-cdk/core.Construct"
8279 }
8280 },
8281 {
8282 "docs": {
8283 "summary": "- scoped id of the resource."
8284 },
8285 "name": "id",
8286 "type": {
8287 "primitive": "string"
8288 }
8289 },
8290 {
8291 "docs": {
8292 "summary": "- resource properties."
8293 },
8294 "name": "props",
8295 "type": {
8296 "fqn": "@aws-cdk/aws-cloudfront.CfnKeyGroupProps"
8297 }
8298 }
8299 ]
8300 },
8301 "interfaces": [
8302 "@aws-cdk/core.IInspectable"
8303 ],
8304 "kind": "class",
8305 "locationInModule": {
8306 "filename": "lib/cloudfront.generated.ts",
8307 "line": 4465
8308 },
8309 "methods": [
8310 {
8311 "docs": {
8312 "stability": "external",
8313 "summary": "Examines the CloudFormation resource and discloses attributes."
8314 },
8315 "locationInModule": {
8316 "filename": "lib/cloudfront.generated.ts",
8317 "line": 4531
8318 },
8319 "name": "inspect",
8320 "overrides": "@aws-cdk/core.IInspectable",
8321 "parameters": [
8322 {
8323 "docs": {
8324 "summary": "- tree inspector to collect and process attributes."
8325 },
8326 "name": "inspector",
8327 "type": {
8328 "fqn": "@aws-cdk/core.TreeInspector"
8329 }
8330 }
8331 ]
8332 },
8333 {
8334 "docs": {
8335 "stability": "external"
8336 },
8337 "locationInModule": {
8338 "filename": "lib/cloudfront.generated.ts",
8339 "line": 4542
8340 },
8341 "name": "renderProperties",
8342 "overrides": "@aws-cdk/core.CfnResource",
8343 "parameters": [
8344 {
8345 "name": "props",
8346 "type": {
8347 "collection": {
8348 "elementtype": {
8349 "primitive": "any"
8350 },
8351 "kind": "map"
8352 }
8353 }
8354 }
8355 ],
8356 "protected": true,
8357 "returns": {
8358 "type": {
8359 "collection": {
8360 "elementtype": {
8361 "primitive": "any"
8362 },
8363 "kind": "map"
8364 }
8365 }
8366 }
8367 }
8368 ],
8369 "name": "CfnKeyGroup",
8370 "properties": [
8371 {
8372 "const": true,
8373 "docs": {
8374 "stability": "external",
8375 "summary": "The CloudFormation resource type name for this resource class."
8376 },
8377 "immutable": true,
8378 "locationInModule": {
8379 "filename": "lib/cloudfront.generated.ts",
8380 "line": 4469
8381 },
8382 "name": "CFN_RESOURCE_TYPE_NAME",
8383 "static": true,
8384 "type": {
8385 "primitive": "string"
8386 }
8387 },
8388 {
8389 "docs": {
8390 "custom": {
8391 "cloudformationAttribute": "Id"
8392 },
8393 "stability": "external",
8394 "summary": "The identifier for the key group."
8395 },
8396 "immutable": true,
8397 "locationInModule": {
8398 "filename": "lib/cloudfront.generated.ts",
8399 "line": 4494
8400 },
8401 "name": "attrId",
8402 "type": {
8403 "primitive": "string"
8404 }
8405 },
8406 {
8407 "docs": {
8408 "custom": {
8409 "cloudformationAttribute": "LastModifiedTime"
8410 },
8411 "stability": "external",
8412 "summary": "The date and time when the key group was last modified."
8413 },
8414 "immutable": true,
8415 "locationInModule": {
8416 "filename": "lib/cloudfront.generated.ts",
8417 "line": 4500
8418 },
8419 "name": "attrLastModifiedTime",
8420 "type": {
8421 "primitive": "string"
8422 }
8423 },
8424 {
8425 "docs": {
8426 "stability": "external"
8427 },
8428 "immutable": true,
8429 "locationInModule": {
8430 "filename": "lib/cloudfront.generated.ts",
8431 "line": 4536
8432 },
8433 "name": "cfnProperties",
8434 "overrides": "@aws-cdk/core.CfnResource",
8435 "protected": true,
8436 "type": {
8437 "collection": {
8438 "elementtype": {
8439 "primitive": "any"
8440 },
8441 "kind": "map"
8442 }
8443 }
8444 },
8445 {
8446 "docs": {
8447 "custom": {
8448 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-keygroup.html#cfn-cloudfront-keygroup-keygroupconfig"
8449 },
8450 "stability": "external",
8451 "summary": "The key group configuration."
8452 },
8453 "locationInModule": {
8454 "filename": "lib/cloudfront.generated.ts",
8455 "line": 4507
8456 },
8457 "name": "keyGroupConfig",
8458 "type": {
8459 "union": {
8460 "types": [
8461 {
8462 "fqn": "@aws-cdk/core.IResolvable"
8463 },
8464 {
8465 "fqn": "@aws-cdk/aws-cloudfront.CfnKeyGroup.KeyGroupConfigProperty"
8466 }
8467 ]
8468 }
8469 }
8470 }
8471 ],
8472 "symbolId": "lib/cloudfront.generated:CfnKeyGroup"
8473 },
8474 "@aws-cdk/aws-cloudfront.CfnKeyGroup.KeyGroupConfigProperty": {
8475 "assembly": "@aws-cdk/aws-cloudfront",
8476 "datatype": true,
8477 "docs": {
8478 "custom": {
8479 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-keygroup-keygroupconfig.html",
8480 "exampleMetadata": "fixture=_generated"
8481 },
8482 "remarks": "A key group contains a list of public keys that you can use with [CloudFront signed URLs and signed cookies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html) .",
8483 "stability": "external",
8484 "summary": "A key group configuration.",
8485 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst keyGroupConfigProperty: cloudfront.CfnKeyGroup.KeyGroupConfigProperty = {\n items: ['items'],\n name: 'name',\n\n // the properties below are optional\n comment: 'comment',\n};"
8486 },
8487 "fqn": "@aws-cdk/aws-cloudfront.CfnKeyGroup.KeyGroupConfigProperty",
8488 "kind": "interface",
8489 "locationInModule": {
8490 "filename": "lib/cloudfront.generated.ts",
8491 "line": 4558
8492 },
8493 "name": "KeyGroupConfigProperty",
8494 "namespace": "CfnKeyGroup",
8495 "properties": [
8496 {
8497 "abstract": true,
8498 "docs": {
8499 "custom": {
8500 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-keygroup-keygroupconfig.html#cfn-cloudfront-keygroup-keygroupconfig-items"
8501 },
8502 "stability": "external",
8503 "summary": "A list of the identifiers of the public keys in the key group."
8504 },
8505 "immutable": true,
8506 "locationInModule": {
8507 "filename": "lib/cloudfront.generated.ts",
8508 "line": 4570
8509 },
8510 "name": "items",
8511 "type": {
8512 "collection": {
8513 "elementtype": {
8514 "primitive": "string"
8515 },
8516 "kind": "array"
8517 }
8518 }
8519 },
8520 {
8521 "abstract": true,
8522 "docs": {
8523 "custom": {
8524 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-keygroup-keygroupconfig.html#cfn-cloudfront-keygroup-keygroupconfig-name"
8525 },
8526 "stability": "external",
8527 "summary": "A name to identify the key group."
8528 },
8529 "immutable": true,
8530 "locationInModule": {
8531 "filename": "lib/cloudfront.generated.ts",
8532 "line": 4576
8533 },
8534 "name": "name",
8535 "type": {
8536 "primitive": "string"
8537 }
8538 },
8539 {
8540 "abstract": true,
8541 "docs": {
8542 "custom": {
8543 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-keygroup-keygroupconfig.html#cfn-cloudfront-keygroup-keygroupconfig-comment"
8544 },
8545 "remarks": "The comment cannot be longer than 128 characters.",
8546 "stability": "external",
8547 "summary": "A comment to describe the key group."
8548 },
8549 "immutable": true,
8550 "locationInModule": {
8551 "filename": "lib/cloudfront.generated.ts",
8552 "line": 4564
8553 },
8554 "name": "comment",
8555 "optional": true,
8556 "type": {
8557 "primitive": "string"
8558 }
8559 }
8560 ],
8561 "symbolId": "lib/cloudfront.generated:CfnKeyGroup.KeyGroupConfigProperty"
8562 },
8563 "@aws-cdk/aws-cloudfront.CfnKeyGroupProps": {
8564 "assembly": "@aws-cdk/aws-cloudfront",
8565 "datatype": true,
8566 "docs": {
8567 "custom": {
8568 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-keygroup.html",
8569 "exampleMetadata": "fixture=_generated"
8570 },
8571 "stability": "external",
8572 "summary": "Properties for defining a `CfnKeyGroup`.",
8573 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst cfnKeyGroupProps: cloudfront.CfnKeyGroupProps = {\n keyGroupConfig: {\n items: ['items'],\n name: 'name',\n\n // the properties below are optional\n comment: 'comment',\n },\n};"
8574 },
8575 "fqn": "@aws-cdk/aws-cloudfront.CfnKeyGroupProps",
8576 "kind": "interface",
8577 "locationInModule": {
8578 "filename": "lib/cloudfront.generated.ts",
8579 "line": 4397
8580 },
8581 "name": "CfnKeyGroupProps",
8582 "properties": [
8583 {
8584 "abstract": true,
8585 "docs": {
8586 "custom": {
8587 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-keygroup.html#cfn-cloudfront-keygroup-keygroupconfig"
8588 },
8589 "stability": "external",
8590 "summary": "The key group configuration."
8591 },
8592 "immutable": true,
8593 "locationInModule": {
8594 "filename": "lib/cloudfront.generated.ts",
8595 "line": 4404
8596 },
8597 "name": "keyGroupConfig",
8598 "type": {
8599 "union": {
8600 "types": [
8601 {
8602 "fqn": "@aws-cdk/core.IResolvable"
8603 },
8604 {
8605 "fqn": "@aws-cdk/aws-cloudfront.CfnKeyGroup.KeyGroupConfigProperty"
8606 }
8607 ]
8608 }
8609 }
8610 }
8611 ],
8612 "symbolId": "lib/cloudfront.generated:CfnKeyGroupProps"
8613 },
8614 "@aws-cdk/aws-cloudfront.CfnOriginRequestPolicy": {
8615 "assembly": "@aws-cdk/aws-cloudfront",
8616 "base": "@aws-cdk/core.CfnResource",
8617 "docs": {
8618 "custom": {
8619 "cloudformationResource": "AWS::CloudFront::OriginRequestPolicy",
8620 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-originrequestpolicy.html",
8621 "exampleMetadata": "fixture=_generated"
8622 },
8623 "remarks": "An origin request policy.\n\nWhen it’s attached to a cache behavior, the origin request policy determines the values that CloudFront includes in requests that it sends to the origin. Each request that CloudFront sends to the origin includes the following:\n\n- The request body and the URL path (without the domain name) from the viewer request.\n- The headers that CloudFront automatically includes in every origin request, including `Host` , `User-Agent` , and `X-Amz-Cf-Id` .\n- All HTTP headers, cookies, and URL query strings that are specified in the cache policy or the origin request policy. These can include items from the viewer request and, in the case of headers, additional ones that are added by CloudFront.\n\nCloudFront sends a request when it can’t find an object in its cache that matches the request. If you want to send values to the origin and also include them in the cache key, use `CachePolicy` .",
8624 "stability": "external",
8625 "summary": "A CloudFormation `AWS::CloudFront::OriginRequestPolicy`.",
8626 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst cfnOriginRequestPolicy = new cloudfront.CfnOriginRequestPolicy(this, 'MyCfnOriginRequestPolicy', {\n originRequestPolicyConfig: {\n cookiesConfig: {\n cookieBehavior: 'cookieBehavior',\n\n // the properties below are optional\n cookies: ['cookies'],\n },\n headersConfig: {\n headerBehavior: 'headerBehavior',\n\n // the properties below are optional\n headers: ['headers'],\n },\n name: 'name',\n queryStringsConfig: {\n queryStringBehavior: 'queryStringBehavior',\n\n // the properties below are optional\n queryStrings: ['queryStrings'],\n },\n\n // the properties below are optional\n comment: 'comment',\n },\n});"
8627 },
8628 "fqn": "@aws-cdk/aws-cloudfront.CfnOriginRequestPolicy",
8629 "initializer": {
8630 "docs": {
8631 "stability": "external",
8632 "summary": "Create a new `AWS::CloudFront::OriginRequestPolicy`."
8633 },
8634 "locationInModule": {
8635 "filename": "lib/cloudfront.generated.ts",
8636 "line": 4769
8637 },
8638 "parameters": [
8639 {
8640 "docs": {
8641 "summary": "- scope in which this resource is defined."
8642 },
8643 "name": "scope",
8644 "type": {
8645 "fqn": "@aws-cdk/core.Construct"
8646 }
8647 },
8648 {
8649 "docs": {
8650 "summary": "- scoped id of the resource."
8651 },
8652 "name": "id",
8653 "type": {
8654 "primitive": "string"
8655 }
8656 },
8657 {
8658 "docs": {
8659 "summary": "- resource properties."
8660 },
8661 "name": "props",
8662 "type": {
8663 "fqn": "@aws-cdk/aws-cloudfront.CfnOriginRequestPolicyProps"
8664 }
8665 }
8666 ]
8667 },
8668 "interfaces": [
8669 "@aws-cdk/core.IInspectable"
8670 ],
8671 "kind": "class",
8672 "locationInModule": {
8673 "filename": "lib/cloudfront.generated.ts",
8674 "line": 4718
8675 },
8676 "methods": [
8677 {
8678 "docs": {
8679 "stability": "external",
8680 "summary": "Examines the CloudFormation resource and discloses attributes."
8681 },
8682 "locationInModule": {
8683 "filename": "lib/cloudfront.generated.ts",
8684 "line": 4784
8685 },
8686 "name": "inspect",
8687 "overrides": "@aws-cdk/core.IInspectable",
8688 "parameters": [
8689 {
8690 "docs": {
8691 "summary": "- tree inspector to collect and process attributes."
8692 },
8693 "name": "inspector",
8694 "type": {
8695 "fqn": "@aws-cdk/core.TreeInspector"
8696 }
8697 }
8698 ]
8699 },
8700 {
8701 "docs": {
8702 "stability": "external"
8703 },
8704 "locationInModule": {
8705 "filename": "lib/cloudfront.generated.ts",
8706 "line": 4795
8707 },
8708 "name": "renderProperties",
8709 "overrides": "@aws-cdk/core.CfnResource",
8710 "parameters": [
8711 {
8712 "name": "props",
8713 "type": {
8714 "collection": {
8715 "elementtype": {
8716 "primitive": "any"
8717 },
8718 "kind": "map"
8719 }
8720 }
8721 }
8722 ],
8723 "protected": true,
8724 "returns": {
8725 "type": {
8726 "collection": {
8727 "elementtype": {
8728 "primitive": "any"
8729 },
8730 "kind": "map"
8731 }
8732 }
8733 }
8734 }
8735 ],
8736 "name": "CfnOriginRequestPolicy",
8737 "properties": [
8738 {
8739 "const": true,
8740 "docs": {
8741 "stability": "external",
8742 "summary": "The CloudFormation resource type name for this resource class."
8743 },
8744 "immutable": true,
8745 "locationInModule": {
8746 "filename": "lib/cloudfront.generated.ts",
8747 "line": 4722
8748 },
8749 "name": "CFN_RESOURCE_TYPE_NAME",
8750 "static": true,
8751 "type": {
8752 "primitive": "string"
8753 }
8754 },
8755 {
8756 "docs": {
8757 "custom": {
8758 "cloudformationAttribute": "Id"
8759 },
8760 "remarks": "For example: `befd7079-9bbc-4ebf-8ade-498a3694176c` .",
8761 "stability": "external",
8762 "summary": "The unique identifier for the origin request policy."
8763 },
8764 "immutable": true,
8765 "locationInModule": {
8766 "filename": "lib/cloudfront.generated.ts",
8767 "line": 4747
8768 },
8769 "name": "attrId",
8770 "type": {
8771 "primitive": "string"
8772 }
8773 },
8774 {
8775 "docs": {
8776 "custom": {
8777 "cloudformationAttribute": "LastModifiedTime"
8778 },
8779 "stability": "external",
8780 "summary": "The date and time when the origin request policy was last modified."
8781 },
8782 "immutable": true,
8783 "locationInModule": {
8784 "filename": "lib/cloudfront.generated.ts",
8785 "line": 4753
8786 },
8787 "name": "attrLastModifiedTime",
8788 "type": {
8789 "primitive": "string"
8790 }
8791 },
8792 {
8793 "docs": {
8794 "stability": "external"
8795 },
8796 "immutable": true,
8797 "locationInModule": {
8798 "filename": "lib/cloudfront.generated.ts",
8799 "line": 4789
8800 },
8801 "name": "cfnProperties",
8802 "overrides": "@aws-cdk/core.CfnResource",
8803 "protected": true,
8804 "type": {
8805 "collection": {
8806 "elementtype": {
8807 "primitive": "any"
8808 },
8809 "kind": "map"
8810 }
8811 }
8812 },
8813 {
8814 "docs": {
8815 "custom": {
8816 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-originrequestpolicy.html#cfn-cloudfront-originrequestpolicy-originrequestpolicyconfig"
8817 },
8818 "stability": "external",
8819 "summary": "The origin request policy configuration."
8820 },
8821 "locationInModule": {
8822 "filename": "lib/cloudfront.generated.ts",
8823 "line": 4760
8824 },
8825 "name": "originRequestPolicyConfig",
8826 "type": {
8827 "union": {
8828 "types": [
8829 {
8830 "fqn": "@aws-cdk/core.IResolvable"
8831 },
8832 {
8833 "fqn": "@aws-cdk/aws-cloudfront.CfnOriginRequestPolicy.OriginRequestPolicyConfigProperty"
8834 }
8835 ]
8836 }
8837 }
8838 }
8839 ],
8840 "symbolId": "lib/cloudfront.generated:CfnOriginRequestPolicy"
8841 },
8842 "@aws-cdk/aws-cloudfront.CfnOriginRequestPolicy.CookiesConfigProperty": {
8843 "assembly": "@aws-cdk/aws-cloudfront",
8844 "datatype": true,
8845 "docs": {
8846 "custom": {
8847 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-originrequestpolicy-cookiesconfig.html",
8848 "exampleMetadata": "fixture=_generated"
8849 },
8850 "stability": "external",
8851 "summary": "An object that determines whether any cookies in viewer requests (and if so, which cookies) are included in requests that CloudFront sends to the origin.",
8852 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst cookiesConfigProperty: cloudfront.CfnOriginRequestPolicy.CookiesConfigProperty = {\n cookieBehavior: 'cookieBehavior',\n\n // the properties below are optional\n cookies: ['cookies'],\n};"
8853 },
8854 "fqn": "@aws-cdk/aws-cloudfront.CfnOriginRequestPolicy.CookiesConfigProperty",
8855 "kind": "interface",
8856 "locationInModule": {
8857 "filename": "lib/cloudfront.generated.ts",
8858 "line": 4809
8859 },
8860 "name": "CookiesConfigProperty",
8861 "namespace": "CfnOriginRequestPolicy",
8862 "properties": [
8863 {
8864 "abstract": true,
8865 "docs": {
8866 "custom": {
8867 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-originrequestpolicy-cookiesconfig.html#cfn-cloudfront-originrequestpolicy-cookiesconfig-cookiebehavior"
8868 },
8869 "remarks": "- `none` – Cookies in viewer requests are not included in requests that CloudFront sends to the origin. Even when this field is set to `none` , any cookies that are listed in a `CachePolicy` *are* included in origin requests.\n- `whitelist` – The cookies in viewer requests that are listed in the `CookieNames` type are included in requests that CloudFront sends to the origin.\n- `all` – All cookies in viewer requests are included in requests that CloudFront sends to the origin.",
8870 "stability": "external",
8871 "summary": "Determines whether cookies in viewer requests are included in requests that CloudFront sends to the origin. Valid values are:."
8872 },
8873 "immutable": true,
8874 "locationInModule": {
8875 "filename": "lib/cloudfront.generated.ts",
8876 "line": 4819
8877 },
8878 "name": "cookieBehavior",
8879 "type": {
8880 "primitive": "string"
8881 }
8882 },
8883 {
8884 "abstract": true,
8885 "docs": {
8886 "custom": {
8887 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-originrequestpolicy-cookiesconfig.html#cfn-cloudfront-originrequestpolicy-cookiesconfig-cookies"
8888 },
8889 "stability": "external",
8890 "summary": "Contains a list of cookie names."
8891 },
8892 "immutable": true,
8893 "locationInModule": {
8894 "filename": "lib/cloudfront.generated.ts",
8895 "line": 4825
8896 },
8897 "name": "cookies",
8898 "optional": true,
8899 "type": {
8900 "collection": {
8901 "elementtype": {
8902 "primitive": "string"
8903 },
8904 "kind": "array"
8905 }
8906 }
8907 }
8908 ],
8909 "symbolId": "lib/cloudfront.generated:CfnOriginRequestPolicy.CookiesConfigProperty"
8910 },
8911 "@aws-cdk/aws-cloudfront.CfnOriginRequestPolicy.HeadersConfigProperty": {
8912 "assembly": "@aws-cdk/aws-cloudfront",
8913 "datatype": true,
8914 "docs": {
8915 "custom": {
8916 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-originrequestpolicy-headersconfig.html",
8917 "exampleMetadata": "fixture=_generated"
8918 },
8919 "stability": "external",
8920 "summary": "An object that determines whether any HTTP headers (and if so, which headers) are included in requests that CloudFront sends to the origin.",
8921 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst headersConfigProperty: cloudfront.CfnOriginRequestPolicy.HeadersConfigProperty = {\n headerBehavior: 'headerBehavior',\n\n // the properties below are optional\n headers: ['headers'],\n};"
8922 },
8923 "fqn": "@aws-cdk/aws-cloudfront.CfnOriginRequestPolicy.HeadersConfigProperty",
8924 "kind": "interface",
8925 "locationInModule": {
8926 "filename": "lib/cloudfront.generated.ts",
8927 "line": 4890
8928 },
8929 "name": "HeadersConfigProperty",
8930 "namespace": "CfnOriginRequestPolicy",
8931 "properties": [
8932 {
8933 "abstract": true,
8934 "docs": {
8935 "custom": {
8936 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-originrequestpolicy-headersconfig.html#cfn-cloudfront-originrequestpolicy-headersconfig-headerbehavior"
8937 },
8938 "remarks": "- `none` – HTTP headers are not included in requests that CloudFront sends to the origin. Even when this field is set to `none` , any headers that are listed in a `CachePolicy` *are* included in origin requests.\n- `whitelist` – The HTTP headers that are listed in the `Headers` type are included in requests that CloudFront sends to the origin.\n- `allViewer` – All HTTP headers in viewer requests are included in requests that CloudFront sends to the origin.\n- `allViewerAndWhitelistCloudFront` – All HTTP headers in viewer requests and the additional CloudFront headers that are listed in the `Headers` type are included in requests that CloudFront sends to the origin. The additional headers are added by CloudFront.",
8939 "stability": "external",
8940 "summary": "Determines whether any HTTP headers are included in requests that CloudFront sends to the origin. Valid values are:."
8941 },
8942 "immutable": true,
8943 "locationInModule": {
8944 "filename": "lib/cloudfront.generated.ts",
8945 "line": 4901
8946 },
8947 "name": "headerBehavior",
8948 "type": {
8949 "primitive": "string"
8950 }
8951 },
8952 {
8953 "abstract": true,
8954 "docs": {
8955 "custom": {
8956 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-originrequestpolicy-headersconfig.html#cfn-cloudfront-originrequestpolicy-headersconfig-headers"
8957 },
8958 "stability": "external",
8959 "summary": "Contains a list of HTTP header names."
8960 },
8961 "immutable": true,
8962 "locationInModule": {
8963 "filename": "lib/cloudfront.generated.ts",
8964 "line": 4907
8965 },
8966 "name": "headers",
8967 "optional": true,
8968 "type": {
8969 "collection": {
8970 "elementtype": {
8971 "primitive": "string"
8972 },
8973 "kind": "array"
8974 }
8975 }
8976 }
8977 ],
8978 "symbolId": "lib/cloudfront.generated:CfnOriginRequestPolicy.HeadersConfigProperty"
8979 },
8980 "@aws-cdk/aws-cloudfront.CfnOriginRequestPolicy.OriginRequestPolicyConfigProperty": {
8981 "assembly": "@aws-cdk/aws-cloudfront",
8982 "datatype": true,
8983 "docs": {
8984 "custom": {
8985 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-originrequestpolicy-originrequestpolicyconfig.html",
8986 "exampleMetadata": "fixture=_generated"
8987 },
8988 "remarks": "This configuration determines the values that CloudFront includes in requests that it sends to the origin. Each request that CloudFront sends to the origin includes the following:\n\n- The request body and the URL path (without the domain name) from the viewer request.\n- The headers that CloudFront automatically includes in every origin request, including `Host` , `User-Agent` , and `X-Amz-Cf-Id` .\n- All HTTP headers, cookies, and URL query strings that are specified in the cache policy or the origin request policy. These can include items from the viewer request and, in the case of headers, additional ones that are added by CloudFront.\n\nCloudFront sends a request when it can’t find an object in its cache that matches the request. If you want to send values to the origin and also include them in the cache key, use `CachePolicy` .",
8989 "stability": "external",
8990 "summary": "An origin request policy configuration.",
8991 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst originRequestPolicyConfigProperty: cloudfront.CfnOriginRequestPolicy.OriginRequestPolicyConfigProperty = {\n cookiesConfig: {\n cookieBehavior: 'cookieBehavior',\n\n // the properties below are optional\n cookies: ['cookies'],\n },\n headersConfig: {\n headerBehavior: 'headerBehavior',\n\n // the properties below are optional\n headers: ['headers'],\n },\n name: 'name',\n queryStringsConfig: {\n queryStringBehavior: 'queryStringBehavior',\n\n // the properties below are optional\n queryStrings: ['queryStrings'],\n },\n\n // the properties below are optional\n comment: 'comment',\n};"
8992 },
8993 "fqn": "@aws-cdk/aws-cloudfront.CfnOriginRequestPolicy.OriginRequestPolicyConfigProperty",
8994 "kind": "interface",
8995 "locationInModule": {
8996 "filename": "lib/cloudfront.generated.ts",
8997 "line": 4980
8998 },
8999 "name": "OriginRequestPolicyConfigProperty",
9000 "namespace": "CfnOriginRequestPolicy",
9001 "properties": [
9002 {
9003 "abstract": true,
9004 "docs": {
9005 "custom": {
9006 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-originrequestpolicy-originrequestpolicyconfig.html#cfn-cloudfront-originrequestpolicy-originrequestpolicyconfig-cookiesconfig"
9007 },
9008 "stability": "external",
9009 "summary": "The cookies from viewer requests to include in origin requests."
9010 },
9011 "immutable": true,
9012 "locationInModule": {
9013 "filename": "lib/cloudfront.generated.ts",
9014 "line": 4992
9015 },
9016 "name": "cookiesConfig",
9017 "type": {
9018 "union": {
9019 "types": [
9020 {
9021 "fqn": "@aws-cdk/core.IResolvable"
9022 },
9023 {
9024 "fqn": "@aws-cdk/aws-cloudfront.CfnOriginRequestPolicy.CookiesConfigProperty"
9025 }
9026 ]
9027 }
9028 }
9029 },
9030 {
9031 "abstract": true,
9032 "docs": {
9033 "custom": {
9034 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-originrequestpolicy-originrequestpolicyconfig.html#cfn-cloudfront-originrequestpolicy-originrequestpolicyconfig-headersconfig"
9035 },
9036 "remarks": "These can include headers from viewer requests and additional headers added by CloudFront.",
9037 "stability": "external",
9038 "summary": "The HTTP headers to include in origin requests."
9039 },
9040 "immutable": true,
9041 "locationInModule": {
9042 "filename": "lib/cloudfront.generated.ts",
9043 "line": 4998
9044 },
9045 "name": "headersConfig",
9046 "type": {
9047 "union": {
9048 "types": [
9049 {
9050 "fqn": "@aws-cdk/core.IResolvable"
9051 },
9052 {
9053 "fqn": "@aws-cdk/aws-cloudfront.CfnOriginRequestPolicy.HeadersConfigProperty"
9054 }
9055 ]
9056 }
9057 }
9058 },
9059 {
9060 "abstract": true,
9061 "docs": {
9062 "custom": {
9063 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-originrequestpolicy-originrequestpolicyconfig.html#cfn-cloudfront-originrequestpolicy-originrequestpolicyconfig-name"
9064 },
9065 "stability": "external",
9066 "summary": "A unique name to identify the origin request policy."
9067 },
9068 "immutable": true,
9069 "locationInModule": {
9070 "filename": "lib/cloudfront.generated.ts",
9071 "line": 5004
9072 },
9073 "name": "name",
9074 "type": {
9075 "primitive": "string"
9076 }
9077 },
9078 {
9079 "abstract": true,
9080 "docs": {
9081 "custom": {
9082 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-originrequestpolicy-originrequestpolicyconfig.html#cfn-cloudfront-originrequestpolicy-originrequestpolicyconfig-querystringsconfig"
9083 },
9084 "stability": "external",
9085 "summary": "The URL query strings from viewer requests to include in origin requests."
9086 },
9087 "immutable": true,
9088 "locationInModule": {
9089 "filename": "lib/cloudfront.generated.ts",
9090 "line": 5010
9091 },
9092 "name": "queryStringsConfig",
9093 "type": {
9094 "union": {
9095 "types": [
9096 {
9097 "fqn": "@aws-cdk/core.IResolvable"
9098 },
9099 {
9100 "fqn": "@aws-cdk/aws-cloudfront.CfnOriginRequestPolicy.QueryStringsConfigProperty"
9101 }
9102 ]
9103 }
9104 }
9105 },
9106 {
9107 "abstract": true,
9108 "docs": {
9109 "custom": {
9110 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-originrequestpolicy-originrequestpolicyconfig.html#cfn-cloudfront-originrequestpolicy-originrequestpolicyconfig-comment"
9111 },
9112 "remarks": "The comment cannot be longer than 128 characters.",
9113 "stability": "external",
9114 "summary": "A comment to describe the origin request policy."
9115 },
9116 "immutable": true,
9117 "locationInModule": {
9118 "filename": "lib/cloudfront.generated.ts",
9119 "line": 4986
9120 },
9121 "name": "comment",
9122 "optional": true,
9123 "type": {
9124 "primitive": "string"
9125 }
9126 }
9127 ],
9128 "symbolId": "lib/cloudfront.generated:CfnOriginRequestPolicy.OriginRequestPolicyConfigProperty"
9129 },
9130 "@aws-cdk/aws-cloudfront.CfnOriginRequestPolicy.QueryStringsConfigProperty": {
9131 "assembly": "@aws-cdk/aws-cloudfront",
9132 "datatype": true,
9133 "docs": {
9134 "custom": {
9135 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-originrequestpolicy-querystringsconfig.html",
9136 "exampleMetadata": "fixture=_generated"
9137 },
9138 "stability": "external",
9139 "summary": "An object that determines whether any URL query strings in viewer requests (and if so, which query strings) are included in requests that CloudFront sends to the origin.",
9140 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst queryStringsConfigProperty: cloudfront.CfnOriginRequestPolicy.QueryStringsConfigProperty = {\n queryStringBehavior: 'queryStringBehavior',\n\n // the properties below are optional\n queryStrings: ['queryStrings'],\n};"
9141 },
9142 "fqn": "@aws-cdk/aws-cloudfront.CfnOriginRequestPolicy.QueryStringsConfigProperty",
9143 "kind": "interface",
9144 "locationInModule": {
9145 "filename": "lib/cloudfront.generated.ts",
9146 "line": 5087
9147 },
9148 "name": "QueryStringsConfigProperty",
9149 "namespace": "CfnOriginRequestPolicy",
9150 "properties": [
9151 {
9152 "abstract": true,
9153 "docs": {
9154 "custom": {
9155 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-originrequestpolicy-querystringsconfig.html#cfn-cloudfront-originrequestpolicy-querystringsconfig-querystringbehavior"
9156 },
9157 "remarks": "Valid values are:\n\n- `none` – Query strings in viewer requests are not included in requests that CloudFront sends to the origin. Even when this field is set to `none` , any query strings that are listed in a `CachePolicy` *are* included in origin requests.\n- `whitelist` – The query strings in viewer requests that are listed in the `QueryStringNames` type are included in requests that CloudFront sends to the origin.\n- `all` – All query strings in viewer requests are included in requests that CloudFront sends to the origin.",
9158 "stability": "external",
9159 "summary": "Determines whether any URL query strings in viewer requests are included in requests that CloudFront sends to the origin."
9160 },
9161 "immutable": true,
9162 "locationInModule": {
9163 "filename": "lib/cloudfront.generated.ts",
9164 "line": 5097
9165 },
9166 "name": "queryStringBehavior",
9167 "type": {
9168 "primitive": "string"
9169 }
9170 },
9171 {
9172 "abstract": true,
9173 "docs": {
9174 "custom": {
9175 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-originrequestpolicy-querystringsconfig.html#cfn-cloudfront-originrequestpolicy-querystringsconfig-querystrings"
9176 },
9177 "stability": "external",
9178 "summary": "Contains a list of query string names."
9179 },
9180 "immutable": true,
9181 "locationInModule": {
9182 "filename": "lib/cloudfront.generated.ts",
9183 "line": 5103
9184 },
9185 "name": "queryStrings",
9186 "optional": true,
9187 "type": {
9188 "collection": {
9189 "elementtype": {
9190 "primitive": "string"
9191 },
9192 "kind": "array"
9193 }
9194 }
9195 }
9196 ],
9197 "symbolId": "lib/cloudfront.generated:CfnOriginRequestPolicy.QueryStringsConfigProperty"
9198 },
9199 "@aws-cdk/aws-cloudfront.CfnOriginRequestPolicyProps": {
9200 "assembly": "@aws-cdk/aws-cloudfront",
9201 "datatype": true,
9202 "docs": {
9203 "custom": {
9204 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-originrequestpolicy.html",
9205 "exampleMetadata": "fixture=_generated"
9206 },
9207 "stability": "external",
9208 "summary": "Properties for defining a `CfnOriginRequestPolicy`.",
9209 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst cfnOriginRequestPolicyProps: cloudfront.CfnOriginRequestPolicyProps = {\n originRequestPolicyConfig: {\n cookiesConfig: {\n cookieBehavior: 'cookieBehavior',\n\n // the properties below are optional\n cookies: ['cookies'],\n },\n headersConfig: {\n headerBehavior: 'headerBehavior',\n\n // the properties below are optional\n headers: ['headers'],\n },\n name: 'name',\n queryStringsConfig: {\n queryStringBehavior: 'queryStringBehavior',\n\n // the properties below are optional\n queryStrings: ['queryStrings'],\n },\n\n // the properties below are optional\n comment: 'comment',\n },\n};"
9210 },
9211 "fqn": "@aws-cdk/aws-cloudfront.CfnOriginRequestPolicyProps",
9212 "kind": "interface",
9213 "locationInModule": {
9214 "filename": "lib/cloudfront.generated.ts",
9215 "line": 4644
9216 },
9217 "name": "CfnOriginRequestPolicyProps",
9218 "properties": [
9219 {
9220 "abstract": true,
9221 "docs": {
9222 "custom": {
9223 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-originrequestpolicy.html#cfn-cloudfront-originrequestpolicy-originrequestpolicyconfig"
9224 },
9225 "stability": "external",
9226 "summary": "The origin request policy configuration."
9227 },
9228 "immutable": true,
9229 "locationInModule": {
9230 "filename": "lib/cloudfront.generated.ts",
9231 "line": 4651
9232 },
9233 "name": "originRequestPolicyConfig",
9234 "type": {
9235 "union": {
9236 "types": [
9237 {
9238 "fqn": "@aws-cdk/core.IResolvable"
9239 },
9240 {
9241 "fqn": "@aws-cdk/aws-cloudfront.CfnOriginRequestPolicy.OriginRequestPolicyConfigProperty"
9242 }
9243 ]
9244 }
9245 }
9246 }
9247 ],
9248 "symbolId": "lib/cloudfront.generated:CfnOriginRequestPolicyProps"
9249 },
9250 "@aws-cdk/aws-cloudfront.CfnPublicKey": {
9251 "assembly": "@aws-cdk/aws-cloudfront",
9252 "base": "@aws-cdk/core.CfnResource",
9253 "docs": {
9254 "custom": {
9255 "cloudformationResource": "AWS::CloudFront::PublicKey",
9256 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-publickey.html",
9257 "exampleMetadata": "fixture=_generated"
9258 },
9259 "remarks": "A public key that you can use with [signed URLs and signed cookies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html) , or with [field-level encryption](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/field-level-encryption.html) .",
9260 "stability": "external",
9261 "summary": "A CloudFormation `AWS::CloudFront::PublicKey`.",
9262 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst cfnPublicKey = new cloudfront.CfnPublicKey(this, 'MyCfnPublicKey', {\n publicKeyConfig: {\n callerReference: 'callerReference',\n encodedKey: 'encodedKey',\n name: 'name',\n\n // the properties below are optional\n comment: 'comment',\n },\n});"
9263 },
9264 "fqn": "@aws-cdk/aws-cloudfront.CfnPublicKey",
9265 "initializer": {
9266 "docs": {
9267 "stability": "external",
9268 "summary": "Create a new `AWS::CloudFront::PublicKey`."
9269 },
9270 "locationInModule": {
9271 "filename": "lib/cloudfront.generated.ts",
9272 "line": 5284
9273 },
9274 "parameters": [
9275 {
9276 "docs": {
9277 "summary": "- scope in which this resource is defined."
9278 },
9279 "name": "scope",
9280 "type": {
9281 "fqn": "@aws-cdk/core.Construct"
9282 }
9283 },
9284 {
9285 "docs": {
9286 "summary": "- scoped id of the resource."
9287 },
9288 "name": "id",
9289 "type": {
9290 "primitive": "string"
9291 }
9292 },
9293 {
9294 "docs": {
9295 "summary": "- resource properties."
9296 },
9297 "name": "props",
9298 "type": {
9299 "fqn": "@aws-cdk/aws-cloudfront.CfnPublicKeyProps"
9300 }
9301 }
9302 ]
9303 },
9304 "interfaces": [
9305 "@aws-cdk/core.IInspectable"
9306 ],
9307 "kind": "class",
9308 "locationInModule": {
9309 "filename": "lib/cloudfront.generated.ts",
9310 "line": 5233
9311 },
9312 "methods": [
9313 {
9314 "docs": {
9315 "stability": "external",
9316 "summary": "Examines the CloudFormation resource and discloses attributes."
9317 },
9318 "locationInModule": {
9319 "filename": "lib/cloudfront.generated.ts",
9320 "line": 5299
9321 },
9322 "name": "inspect",
9323 "overrides": "@aws-cdk/core.IInspectable",
9324 "parameters": [
9325 {
9326 "docs": {
9327 "summary": "- tree inspector to collect and process attributes."
9328 },
9329 "name": "inspector",
9330 "type": {
9331 "fqn": "@aws-cdk/core.TreeInspector"
9332 }
9333 }
9334 ]
9335 },
9336 {
9337 "docs": {
9338 "stability": "external"
9339 },
9340 "locationInModule": {
9341 "filename": "lib/cloudfront.generated.ts",
9342 "line": 5310
9343 },
9344 "name": "renderProperties",
9345 "overrides": "@aws-cdk/core.CfnResource",
9346 "parameters": [
9347 {
9348 "name": "props",
9349 "type": {
9350 "collection": {
9351 "elementtype": {
9352 "primitive": "any"
9353 },
9354 "kind": "map"
9355 }
9356 }
9357 }
9358 ],
9359 "protected": true,
9360 "returns": {
9361 "type": {
9362 "collection": {
9363 "elementtype": {
9364 "primitive": "any"
9365 },
9366 "kind": "map"
9367 }
9368 }
9369 }
9370 }
9371 ],
9372 "name": "CfnPublicKey",
9373 "properties": [
9374 {
9375 "const": true,
9376 "docs": {
9377 "stability": "external",
9378 "summary": "The CloudFormation resource type name for this resource class."
9379 },
9380 "immutable": true,
9381 "locationInModule": {
9382 "filename": "lib/cloudfront.generated.ts",
9383 "line": 5237
9384 },
9385 "name": "CFN_RESOURCE_TYPE_NAME",
9386 "static": true,
9387 "type": {
9388 "primitive": "string"
9389 }
9390 },
9391 {
9392 "docs": {
9393 "custom": {
9394 "cloudformationAttribute": "CreatedTime"
9395 },
9396 "stability": "external",
9397 "summary": "The date and time when the public key was uploaded."
9398 },
9399 "immutable": true,
9400 "locationInModule": {
9401 "filename": "lib/cloudfront.generated.ts",
9402 "line": 5262
9403 },
9404 "name": "attrCreatedTime",
9405 "type": {
9406 "primitive": "string"
9407 }
9408 },
9409 {
9410 "docs": {
9411 "custom": {
9412 "cloudformationAttribute": "Id"
9413 },
9414 "stability": "external",
9415 "summary": "The identifier of the public key."
9416 },
9417 "immutable": true,
9418 "locationInModule": {
9419 "filename": "lib/cloudfront.generated.ts",
9420 "line": 5268
9421 },
9422 "name": "attrId",
9423 "type": {
9424 "primitive": "string"
9425 }
9426 },
9427 {
9428 "docs": {
9429 "stability": "external"
9430 },
9431 "immutable": true,
9432 "locationInModule": {
9433 "filename": "lib/cloudfront.generated.ts",
9434 "line": 5304
9435 },
9436 "name": "cfnProperties",
9437 "overrides": "@aws-cdk/core.CfnResource",
9438 "protected": true,
9439 "type": {
9440 "collection": {
9441 "elementtype": {
9442 "primitive": "any"
9443 },
9444 "kind": "map"
9445 }
9446 }
9447 },
9448 {
9449 "docs": {
9450 "custom": {
9451 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-publickey.html#cfn-cloudfront-publickey-publickeyconfig"
9452 },
9453 "stability": "external",
9454 "summary": "Configuration information about a public key that you can use with [signed URLs and signed cookies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html) , or with [field-level encryption](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/field-level-encryption.html) ."
9455 },
9456 "locationInModule": {
9457 "filename": "lib/cloudfront.generated.ts",
9458 "line": 5275
9459 },
9460 "name": "publicKeyConfig",
9461 "type": {
9462 "union": {
9463 "types": [
9464 {
9465 "fqn": "@aws-cdk/core.IResolvable"
9466 },
9467 {
9468 "fqn": "@aws-cdk/aws-cloudfront.CfnPublicKey.PublicKeyConfigProperty"
9469 }
9470 ]
9471 }
9472 }
9473 }
9474 ],
9475 "symbolId": "lib/cloudfront.generated:CfnPublicKey"
9476 },
9477 "@aws-cdk/aws-cloudfront.CfnPublicKey.PublicKeyConfigProperty": {
9478 "assembly": "@aws-cdk/aws-cloudfront",
9479 "datatype": true,
9480 "docs": {
9481 "custom": {
9482 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-publickey-publickeyconfig.html",
9483 "exampleMetadata": "fixture=_generated"
9484 },
9485 "stability": "external",
9486 "summary": "Configuration information about a public key that you can use with [signed URLs and signed cookies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html) , or with [field-level encryption](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/field-level-encryption.html) .",
9487 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst publicKeyConfigProperty: cloudfront.CfnPublicKey.PublicKeyConfigProperty = {\n callerReference: 'callerReference',\n encodedKey: 'encodedKey',\n name: 'name',\n\n // the properties below are optional\n comment: 'comment',\n};"
9488 },
9489 "fqn": "@aws-cdk/aws-cloudfront.CfnPublicKey.PublicKeyConfigProperty",
9490 "kind": "interface",
9491 "locationInModule": {
9492 "filename": "lib/cloudfront.generated.ts",
9493 "line": 5324
9494 },
9495 "name": "PublicKeyConfigProperty",
9496 "namespace": "CfnPublicKey",
9497 "properties": [
9498 {
9499 "abstract": true,
9500 "docs": {
9501 "custom": {
9502 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-publickey-publickeyconfig.html#cfn-cloudfront-publickey-publickeyconfig-callerreference"
9503 },
9504 "stability": "external",
9505 "summary": "A string included in the request to help make sure that the request can’t be replayed."
9506 },
9507 "immutable": true,
9508 "locationInModule": {
9509 "filename": "lib/cloudfront.generated.ts",
9510 "line": 5330
9511 },
9512 "name": "callerReference",
9513 "type": {
9514 "primitive": "string"
9515 }
9516 },
9517 {
9518 "abstract": true,
9519 "docs": {
9520 "custom": {
9521 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-publickey-publickeyconfig.html#cfn-cloudfront-publickey-publickeyconfig-encodedkey"
9522 },
9523 "stability": "external",
9524 "summary": "The public key that you can use with [signed URLs and signed cookies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html) , or with [field-level encryption](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/field-level-encryption.html) ."
9525 },
9526 "immutable": true,
9527 "locationInModule": {
9528 "filename": "lib/cloudfront.generated.ts",
9529 "line": 5342
9530 },
9531 "name": "encodedKey",
9532 "type": {
9533 "primitive": "string"
9534 }
9535 },
9536 {
9537 "abstract": true,
9538 "docs": {
9539 "custom": {
9540 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-publickey-publickeyconfig.html#cfn-cloudfront-publickey-publickeyconfig-name"
9541 },
9542 "stability": "external",
9543 "summary": "A name to help identify the public key."
9544 },
9545 "immutable": true,
9546 "locationInModule": {
9547 "filename": "lib/cloudfront.generated.ts",
9548 "line": 5348
9549 },
9550 "name": "name",
9551 "type": {
9552 "primitive": "string"
9553 }
9554 },
9555 {
9556 "abstract": true,
9557 "docs": {
9558 "custom": {
9559 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-publickey-publickeyconfig.html#cfn-cloudfront-publickey-publickeyconfig-comment"
9560 },
9561 "remarks": "The comment cannot be longer than 128 characters.",
9562 "stability": "external",
9563 "summary": "A comment to describe the public key."
9564 },
9565 "immutable": true,
9566 "locationInModule": {
9567 "filename": "lib/cloudfront.generated.ts",
9568 "line": 5336
9569 },
9570 "name": "comment",
9571 "optional": true,
9572 "type": {
9573 "primitive": "string"
9574 }
9575 }
9576 ],
9577 "symbolId": "lib/cloudfront.generated:CfnPublicKey.PublicKeyConfigProperty"
9578 },
9579 "@aws-cdk/aws-cloudfront.CfnPublicKeyProps": {
9580 "assembly": "@aws-cdk/aws-cloudfront",
9581 "datatype": true,
9582 "docs": {
9583 "custom": {
9584 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-publickey.html",
9585 "exampleMetadata": "fixture=_generated"
9586 },
9587 "stability": "external",
9588 "summary": "Properties for defining a `CfnPublicKey`.",
9589 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst cfnPublicKeyProps: cloudfront.CfnPublicKeyProps = {\n publicKeyConfig: {\n callerReference: 'callerReference',\n encodedKey: 'encodedKey',\n name: 'name',\n\n // the properties below are optional\n comment: 'comment',\n },\n};"
9590 },
9591 "fqn": "@aws-cdk/aws-cloudfront.CfnPublicKeyProps",
9592 "kind": "interface",
9593 "locationInModule": {
9594 "filename": "lib/cloudfront.generated.ts",
9595 "line": 5167
9596 },
9597 "name": "CfnPublicKeyProps",
9598 "properties": [
9599 {
9600 "abstract": true,
9601 "docs": {
9602 "custom": {
9603 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-publickey.html#cfn-cloudfront-publickey-publickeyconfig"
9604 },
9605 "stability": "external",
9606 "summary": "Configuration information about a public key that you can use with [signed URLs and signed cookies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html) , or with [field-level encryption](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/field-level-encryption.html) ."
9607 },
9608 "immutable": true,
9609 "locationInModule": {
9610 "filename": "lib/cloudfront.generated.ts",
9611 "line": 5174
9612 },
9613 "name": "publicKeyConfig",
9614 "type": {
9615 "union": {
9616 "types": [
9617 {
9618 "fqn": "@aws-cdk/core.IResolvable"
9619 },
9620 {
9621 "fqn": "@aws-cdk/aws-cloudfront.CfnPublicKey.PublicKeyConfigProperty"
9622 }
9623 ]
9624 }
9625 }
9626 }
9627 ],
9628 "symbolId": "lib/cloudfront.generated:CfnPublicKeyProps"
9629 },
9630 "@aws-cdk/aws-cloudfront.CfnRealtimeLogConfig": {
9631 "assembly": "@aws-cdk/aws-cloudfront",
9632 "base": "@aws-cdk/core.CfnResource",
9633 "docs": {
9634 "custom": {
9635 "cloudformationResource": "AWS::CloudFront::RealtimeLogConfig",
9636 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-realtimelogconfig.html",
9637 "exampleMetadata": "fixture=_generated"
9638 },
9639 "remarks": "A real-time log configuration.",
9640 "stability": "external",
9641 "summary": "A CloudFormation `AWS::CloudFront::RealtimeLogConfig`.",
9642 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst cfnRealtimeLogConfig = new cloudfront.CfnRealtimeLogConfig(this, 'MyCfnRealtimeLogConfig', {\n endPoints: [{\n kinesisStreamConfig: {\n roleArn: 'roleArn',\n streamArn: 'streamArn',\n },\n streamType: 'streamType',\n }],\n fields: ['fields'],\n name: 'name',\n samplingRate: 123,\n});"
9643 },
9644 "fqn": "@aws-cdk/aws-cloudfront.CfnRealtimeLogConfig",
9645 "initializer": {
9646 "docs": {
9647 "stability": "external",
9648 "summary": "Create a new `AWS::CloudFront::RealtimeLogConfig`."
9649 },
9650 "locationInModule": {
9651 "filename": "lib/cloudfront.generated.ts",
9652 "line": 5589
9653 },
9654 "parameters": [
9655 {
9656 "docs": {
9657 "summary": "- scope in which this resource is defined."
9658 },
9659 "name": "scope",
9660 "type": {
9661 "fqn": "@aws-cdk/core.Construct"
9662 }
9663 },
9664 {
9665 "docs": {
9666 "summary": "- scoped id of the resource."
9667 },
9668 "name": "id",
9669 "type": {
9670 "primitive": "string"
9671 }
9672 },
9673 {
9674 "docs": {
9675 "summary": "- resource properties."
9676 },
9677 "name": "props",
9678 "type": {
9679 "fqn": "@aws-cdk/aws-cloudfront.CfnRealtimeLogConfigProps"
9680 }
9681 }
9682 ]
9683 },
9684 "interfaces": [
9685 "@aws-cdk/core.IInspectable"
9686 ],
9687 "kind": "class",
9688 "locationInModule": {
9689 "filename": "lib/cloudfront.generated.ts",
9690 "line": 5521
9691 },
9692 "methods": [
9693 {
9694 "docs": {
9695 "stability": "external",
9696 "summary": "Examines the CloudFormation resource and discloses attributes."
9697 },
9698 "locationInModule": {
9699 "filename": "lib/cloudfront.generated.ts",
9700 "line": 5609
9701 },
9702 "name": "inspect",
9703 "overrides": "@aws-cdk/core.IInspectable",
9704 "parameters": [
9705 {
9706 "docs": {
9707 "summary": "- tree inspector to collect and process attributes."
9708 },
9709 "name": "inspector",
9710 "type": {
9711 "fqn": "@aws-cdk/core.TreeInspector"
9712 }
9713 }
9714 ]
9715 },
9716 {
9717 "docs": {
9718 "stability": "external"
9719 },
9720 "locationInModule": {
9721 "filename": "lib/cloudfront.generated.ts",
9722 "line": 5623
9723 },
9724 "name": "renderProperties",
9725 "overrides": "@aws-cdk/core.CfnResource",
9726 "parameters": [
9727 {
9728 "name": "props",
9729 "type": {
9730 "collection": {
9731 "elementtype": {
9732 "primitive": "any"
9733 },
9734 "kind": "map"
9735 }
9736 }
9737 }
9738 ],
9739 "protected": true,
9740 "returns": {
9741 "type": {
9742 "collection": {
9743 "elementtype": {
9744 "primitive": "any"
9745 },
9746 "kind": "map"
9747 }
9748 }
9749 }
9750 }
9751 ],
9752 "name": "CfnRealtimeLogConfig",
9753 "properties": [
9754 {
9755 "const": true,
9756 "docs": {
9757 "stability": "external",
9758 "summary": "The CloudFormation resource type name for this resource class."
9759 },
9760 "immutable": true,
9761 "locationInModule": {
9762 "filename": "lib/cloudfront.generated.ts",
9763 "line": 5525
9764 },
9765 "name": "CFN_RESOURCE_TYPE_NAME",
9766 "static": true,
9767 "type": {
9768 "primitive": "string"
9769 }
9770 },
9771 {
9772 "docs": {
9773 "custom": {
9774 "cloudformationAttribute": "Arn"
9775 },
9776 "remarks": "For example: `arn:aws:cloudfront::111122223333:realtime-log-config/ExampleNameForRealtimeLogConfig` .",
9777 "stability": "external",
9778 "summary": "The Amazon Resource Name (ARN) of the real-time log configuration."
9779 },
9780 "immutable": true,
9781 "locationInModule": {
9782 "filename": "lib/cloudfront.generated.ts",
9783 "line": 5550
9784 },
9785 "name": "attrArn",
9786 "type": {
9787 "primitive": "string"
9788 }
9789 },
9790 {
9791 "docs": {
9792 "stability": "external"
9793 },
9794 "immutable": true,
9795 "locationInModule": {
9796 "filename": "lib/cloudfront.generated.ts",
9797 "line": 5614
9798 },
9799 "name": "cfnProperties",
9800 "overrides": "@aws-cdk/core.CfnResource",
9801 "protected": true,
9802 "type": {
9803 "collection": {
9804 "elementtype": {
9805 "primitive": "any"
9806 },
9807 "kind": "map"
9808 }
9809 }
9810 },
9811 {
9812 "docs": {
9813 "custom": {
9814 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-realtimelogconfig.html#cfn-cloudfront-realtimelogconfig-endpoints"
9815 },
9816 "stability": "external",
9817 "summary": "Contains information about the Amazon Kinesis data stream where you are sending real-time log data for this real-time log configuration."
9818 },
9819 "locationInModule": {
9820 "filename": "lib/cloudfront.generated.ts",
9821 "line": 5557
9822 },
9823 "name": "endPoints",
9824 "type": {
9825 "union": {
9826 "types": [
9827 {
9828 "fqn": "@aws-cdk/core.IResolvable"
9829 },
9830 {
9831 "collection": {
9832 "elementtype": {
9833 "union": {
9834 "types": [
9835 {
9836 "fqn": "@aws-cdk/core.IResolvable"
9837 },
9838 {
9839 "fqn": "@aws-cdk/aws-cloudfront.CfnRealtimeLogConfig.EndPointProperty"
9840 }
9841 ]
9842 }
9843 },
9844 "kind": "array"
9845 }
9846 }
9847 ]
9848 }
9849 }
9850 },
9851 {
9852 "docs": {
9853 "custom": {
9854 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-realtimelogconfig.html#cfn-cloudfront-realtimelogconfig-fields"
9855 },
9856 "remarks": "In an API response, the fields are provided in the same order in which they are sent to the Amazon Kinesis data stream.\n\nFor more information about fields, see [Real-time log configuration fields](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/real-time-logs.html#understand-real-time-log-config-fields) in the *Amazon CloudFront Developer Guide* .",
9857 "stability": "external",
9858 "summary": "A list of fields that are included in each real-time log record."
9859 },
9860 "locationInModule": {
9861 "filename": "lib/cloudfront.generated.ts",
9862 "line": 5566
9863 },
9864 "name": "fields",
9865 "type": {
9866 "collection": {
9867 "elementtype": {
9868 "primitive": "string"
9869 },
9870 "kind": "array"
9871 }
9872 }
9873 },
9874 {
9875 "docs": {
9876 "custom": {
9877 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-realtimelogconfig.html#cfn-cloudfront-realtimelogconfig-name"
9878 },
9879 "stability": "external",
9880 "summary": "The unique name of this real-time log configuration."
9881 },
9882 "locationInModule": {
9883 "filename": "lib/cloudfront.generated.ts",
9884 "line": 5573
9885 },
9886 "name": "name",
9887 "type": {
9888 "primitive": "string"
9889 }
9890 },
9891 {
9892 "docs": {
9893 "custom": {
9894 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-realtimelogconfig.html#cfn-cloudfront-realtimelogconfig-samplingrate"
9895 },
9896 "remarks": "The sampling rate determines the percentage of viewer requests that are represented in the real-time log data. The sampling rate is an integer between 1 and 100, inclusive.",
9897 "stability": "external",
9898 "summary": "The sampling rate for this real-time log configuration."
9899 },
9900 "locationInModule": {
9901 "filename": "lib/cloudfront.generated.ts",
9902 "line": 5580
9903 },
9904 "name": "samplingRate",
9905 "type": {
9906 "primitive": "number"
9907 }
9908 }
9909 ],
9910 "symbolId": "lib/cloudfront.generated:CfnRealtimeLogConfig"
9911 },
9912 "@aws-cdk/aws-cloudfront.CfnRealtimeLogConfig.EndPointProperty": {
9913 "assembly": "@aws-cdk/aws-cloudfront",
9914 "datatype": true,
9915 "docs": {
9916 "custom": {
9917 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-realtimelogconfig-endpoint.html",
9918 "exampleMetadata": "fixture=_generated"
9919 },
9920 "stability": "external",
9921 "summary": "Contains information about the Amazon Kinesis data stream where you are sending real-time log data in a real-time log configuration.",
9922 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst endPointProperty: cloudfront.CfnRealtimeLogConfig.EndPointProperty = {\n kinesisStreamConfig: {\n roleArn: 'roleArn',\n streamArn: 'streamArn',\n },\n streamType: 'streamType',\n};"
9923 },
9924 "fqn": "@aws-cdk/aws-cloudfront.CfnRealtimeLogConfig.EndPointProperty",
9925 "kind": "interface",
9926 "locationInModule": {
9927 "filename": "lib/cloudfront.generated.ts",
9928 "line": 5637
9929 },
9930 "name": "EndPointProperty",
9931 "namespace": "CfnRealtimeLogConfig",
9932 "properties": [
9933 {
9934 "abstract": true,
9935 "docs": {
9936 "custom": {
9937 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-realtimelogconfig-endpoint.html#cfn-cloudfront-realtimelogconfig-endpoint-kinesisstreamconfig"
9938 },
9939 "stability": "external",
9940 "summary": "Contains information about the Amazon Kinesis data stream where you are sending real-time log data."
9941 },
9942 "immutable": true,
9943 "locationInModule": {
9944 "filename": "lib/cloudfront.generated.ts",
9945 "line": 5643
9946 },
9947 "name": "kinesisStreamConfig",
9948 "type": {
9949 "union": {
9950 "types": [
9951 {
9952 "fqn": "@aws-cdk/core.IResolvable"
9953 },
9954 {
9955 "fqn": "@aws-cdk/aws-cloudfront.CfnRealtimeLogConfig.KinesisStreamConfigProperty"
9956 }
9957 ]
9958 }
9959 }
9960 },
9961 {
9962 "abstract": true,
9963 "docs": {
9964 "custom": {
9965 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-realtimelogconfig-endpoint.html#cfn-cloudfront-realtimelogconfig-endpoint-streamtype"
9966 },
9967 "remarks": "The only valid value is `Kinesis` .",
9968 "stability": "external",
9969 "summary": "The type of data stream where you are sending real-time log data."
9970 },
9971 "immutable": true,
9972 "locationInModule": {
9973 "filename": "lib/cloudfront.generated.ts",
9974 "line": 5649
9975 },
9976 "name": "streamType",
9977 "type": {
9978 "primitive": "string"
9979 }
9980 }
9981 ],
9982 "symbolId": "lib/cloudfront.generated:CfnRealtimeLogConfig.EndPointProperty"
9983 },
9984 "@aws-cdk/aws-cloudfront.CfnRealtimeLogConfig.KinesisStreamConfigProperty": {
9985 "assembly": "@aws-cdk/aws-cloudfront",
9986 "datatype": true,
9987 "docs": {
9988 "custom": {
9989 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-realtimelogconfig-kinesisstreamconfig.html",
9990 "exampleMetadata": "fixture=_generated"
9991 },
9992 "stability": "external",
9993 "summary": "Contains information about the Amazon Kinesis data stream where you are sending real-time log data.",
9994 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst kinesisStreamConfigProperty: cloudfront.CfnRealtimeLogConfig.KinesisStreamConfigProperty = {\n roleArn: 'roleArn',\n streamArn: 'streamArn',\n};"
9995 },
9996 "fqn": "@aws-cdk/aws-cloudfront.CfnRealtimeLogConfig.KinesisStreamConfigProperty",
9997 "kind": "interface",
9998 "locationInModule": {
9999 "filename": "lib/cloudfront.generated.ts",
10000 "line": 5715
10001 },
10002 "name": "KinesisStreamConfigProperty",
10003 "namespace": "CfnRealtimeLogConfig",
10004 "properties": [
10005 {
10006 "abstract": true,
10007 "docs": {
10008 "custom": {
10009 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-realtimelogconfig-kinesisstreamconfig.html#cfn-cloudfront-realtimelogconfig-kinesisstreamconfig-rolearn"
10010 },
10011 "remarks": "For more information the IAM role, see [Real-time log configuration IAM role](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/real-time-logs.html#understand-real-time-log-config-iam-role) in the *Amazon CloudFront Developer Guide* .",
10012 "stability": "external",
10013 "summary": "The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that CloudFront can use to send real-time log data to your Kinesis data stream."
10014 },
10015 "immutable": true,
10016 "locationInModule": {
10017 "filename": "lib/cloudfront.generated.ts",
10018 "line": 5723
10019 },
10020 "name": "roleArn",
10021 "type": {
10022 "primitive": "string"
10023 }
10024 },
10025 {
10026 "abstract": true,
10027 "docs": {
10028 "custom": {
10029 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-realtimelogconfig-kinesisstreamconfig.html#cfn-cloudfront-realtimelogconfig-kinesisstreamconfig-streamarn"
10030 },
10031 "stability": "external",
10032 "summary": "The Amazon Resource Name (ARN) of the Kinesis data stream where you are sending real-time log data."
10033 },
10034 "immutable": true,
10035 "locationInModule": {
10036 "filename": "lib/cloudfront.generated.ts",
10037 "line": 5729
10038 },
10039 "name": "streamArn",
10040 "type": {
10041 "primitive": "string"
10042 }
10043 }
10044 ],
10045 "symbolId": "lib/cloudfront.generated:CfnRealtimeLogConfig.KinesisStreamConfigProperty"
10046 },
10047 "@aws-cdk/aws-cloudfront.CfnRealtimeLogConfigProps": {
10048 "assembly": "@aws-cdk/aws-cloudfront",
10049 "datatype": true,
10050 "docs": {
10051 "custom": {
10052 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-realtimelogconfig.html",
10053 "exampleMetadata": "fixture=_generated"
10054 },
10055 "stability": "external",
10056 "summary": "Properties for defining a `CfnRealtimeLogConfig`.",
10057 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst cfnRealtimeLogConfigProps: cloudfront.CfnRealtimeLogConfigProps = {\n endPoints: [{\n kinesisStreamConfig: {\n roleArn: 'roleArn',\n streamArn: 'streamArn',\n },\n streamType: 'streamType',\n }],\n fields: ['fields'],\n name: 'name',\n samplingRate: 123,\n};"
10058 },
10059 "fqn": "@aws-cdk/aws-cloudfront.CfnRealtimeLogConfigProps",
10060 "kind": "interface",
10061 "locationInModule": {
10062 "filename": "lib/cloudfront.generated.ts",
10063 "line": 5420
10064 },
10065 "name": "CfnRealtimeLogConfigProps",
10066 "properties": [
10067 {
10068 "abstract": true,
10069 "docs": {
10070 "custom": {
10071 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-realtimelogconfig.html#cfn-cloudfront-realtimelogconfig-endpoints"
10072 },
10073 "stability": "external",
10074 "summary": "Contains information about the Amazon Kinesis data stream where you are sending real-time log data for this real-time log configuration."
10075 },
10076 "immutable": true,
10077 "locationInModule": {
10078 "filename": "lib/cloudfront.generated.ts",
10079 "line": 5427
10080 },
10081 "name": "endPoints",
10082 "type": {
10083 "union": {
10084 "types": [
10085 {
10086 "fqn": "@aws-cdk/core.IResolvable"
10087 },
10088 {
10089 "collection": {
10090 "elementtype": {
10091 "union": {
10092 "types": [
10093 {
10094 "fqn": "@aws-cdk/core.IResolvable"
10095 },
10096 {
10097 "fqn": "@aws-cdk/aws-cloudfront.CfnRealtimeLogConfig.EndPointProperty"
10098 }
10099 ]
10100 }
10101 },
10102 "kind": "array"
10103 }
10104 }
10105 ]
10106 }
10107 }
10108 },
10109 {
10110 "abstract": true,
10111 "docs": {
10112 "custom": {
10113 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-realtimelogconfig.html#cfn-cloudfront-realtimelogconfig-fields"
10114 },
10115 "remarks": "In an API response, the fields are provided in the same order in which they are sent to the Amazon Kinesis data stream.\n\nFor more information about fields, see [Real-time log configuration fields](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/real-time-logs.html#understand-real-time-log-config-fields) in the *Amazon CloudFront Developer Guide* .",
10116 "stability": "external",
10117 "summary": "A list of fields that are included in each real-time log record."
10118 },
10119 "immutable": true,
10120 "locationInModule": {
10121 "filename": "lib/cloudfront.generated.ts",
10122 "line": 5436
10123 },
10124 "name": "fields",
10125 "type": {
10126 "collection": {
10127 "elementtype": {
10128 "primitive": "string"
10129 },
10130 "kind": "array"
10131 }
10132 }
10133 },
10134 {
10135 "abstract": true,
10136 "docs": {
10137 "custom": {
10138 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-realtimelogconfig.html#cfn-cloudfront-realtimelogconfig-name"
10139 },
10140 "stability": "external",
10141 "summary": "The unique name of this real-time log configuration."
10142 },
10143 "immutable": true,
10144 "locationInModule": {
10145 "filename": "lib/cloudfront.generated.ts",
10146 "line": 5443
10147 },
10148 "name": "name",
10149 "type": {
10150 "primitive": "string"
10151 }
10152 },
10153 {
10154 "abstract": true,
10155 "docs": {
10156 "custom": {
10157 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-realtimelogconfig.html#cfn-cloudfront-realtimelogconfig-samplingrate"
10158 },
10159 "remarks": "The sampling rate determines the percentage of viewer requests that are represented in the real-time log data. The sampling rate is an integer between 1 and 100, inclusive.",
10160 "stability": "external",
10161 "summary": "The sampling rate for this real-time log configuration."
10162 },
10163 "immutable": true,
10164 "locationInModule": {
10165 "filename": "lib/cloudfront.generated.ts",
10166 "line": 5450
10167 },
10168 "name": "samplingRate",
10169 "type": {
10170 "primitive": "number"
10171 }
10172 }
10173 ],
10174 "symbolId": "lib/cloudfront.generated:CfnRealtimeLogConfigProps"
10175 },
10176 "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy": {
10177 "assembly": "@aws-cdk/aws-cloudfront",
10178 "base": "@aws-cdk/core.CfnResource",
10179 "docs": {
10180 "custom": {
10181 "cloudformationResource": "AWS::CloudFront::ResponseHeadersPolicy",
10182 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-responseheaderspolicy.html",
10183 "exampleMetadata": "fixture=_generated"
10184 },
10185 "remarks": "A response headers policy.\n\nA response headers policy contains information about a set of HTTP response headers and their values.\n\nAfter you create a response headers policy, you can use its ID to attach it to one or more cache behaviors in a CloudFront distribution. When it’s attached to a cache behavior, CloudFront adds the headers in the policy to HTTP responses that it sends for requests that match the cache behavior.\n\nFor more information, see [Adding HTTP headers to CloudFront responses](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/adding-response-headers.html) in the *Amazon CloudFront Developer Guide* .",
10186 "stability": "external",
10187 "summary": "A CloudFormation `AWS::CloudFront::ResponseHeadersPolicy`.",
10188 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst cfnResponseHeadersPolicy = new cloudfront.CfnResponseHeadersPolicy(this, 'MyCfnResponseHeadersPolicy', {\n responseHeadersPolicyConfig: {\n name: 'name',\n\n // the properties below are optional\n comment: 'comment',\n corsConfig: {\n accessControlAllowCredentials: false,\n accessControlAllowHeaders: {\n items: ['items'],\n },\n accessControlAllowMethods: {\n items: ['items'],\n },\n accessControlAllowOrigins: {\n items: ['items'],\n },\n originOverride: false,\n\n // the properties below are optional\n accessControlExposeHeaders: {\n items: ['items'],\n },\n accessControlMaxAgeSec: 123,\n },\n customHeadersConfig: {\n items: [{\n header: 'header',\n override: false,\n value: 'value',\n }],\n },\n securityHeadersConfig: {\n contentSecurityPolicy: {\n contentSecurityPolicy: 'contentSecurityPolicy',\n override: false,\n },\n contentTypeOptions: {\n override: false,\n },\n frameOptions: {\n frameOption: 'frameOption',\n override: false,\n },\n referrerPolicy: {\n override: false,\n referrerPolicy: 'referrerPolicy',\n },\n strictTransportSecurity: {\n accessControlMaxAgeSec: 123,\n override: false,\n\n // the properties below are optional\n includeSubdomains: false,\n preload: false,\n },\n xssProtection: {\n override: false,\n protection: false,\n\n // the properties below are optional\n modeBlock: false,\n reportUri: 'reportUri',\n },\n },\n },\n});"
10189 },
10190 "fqn": "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy",
10191 "initializer": {
10192 "docs": {
10193 "stability": "external",
10194 "summary": "Create a new `AWS::CloudFront::ResponseHeadersPolicy`."
10195 },
10196 "locationInModule": {
10197 "filename": "lib/cloudfront.generated.ts",
10198 "line": 5921
10199 },
10200 "parameters": [
10201 {
10202 "docs": {
10203 "summary": "- scope in which this resource is defined."
10204 },
10205 "name": "scope",
10206 "type": {
10207 "fqn": "@aws-cdk/core.Construct"
10208 }
10209 },
10210 {
10211 "docs": {
10212 "summary": "- scoped id of the resource."
10213 },
10214 "name": "id",
10215 "type": {
10216 "primitive": "string"
10217 }
10218 },
10219 {
10220 "docs": {
10221 "summary": "- resource properties."
10222 },
10223 "name": "props",
10224 "type": {
10225 "fqn": "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicyProps"
10226 }
10227 }
10228 ]
10229 },
10230 "interfaces": [
10231 "@aws-cdk/core.IInspectable"
10232 ],
10233 "kind": "class",
10234 "locationInModule": {
10235 "filename": "lib/cloudfront.generated.ts",
10236 "line": 5868
10237 },
10238 "methods": [
10239 {
10240 "docs": {
10241 "stability": "external",
10242 "summary": "Examines the CloudFormation resource and discloses attributes."
10243 },
10244 "locationInModule": {
10245 "filename": "lib/cloudfront.generated.ts",
10246 "line": 5936
10247 },
10248 "name": "inspect",
10249 "overrides": "@aws-cdk/core.IInspectable",
10250 "parameters": [
10251 {
10252 "docs": {
10253 "summary": "- tree inspector to collect and process attributes."
10254 },
10255 "name": "inspector",
10256 "type": {
10257 "fqn": "@aws-cdk/core.TreeInspector"
10258 }
10259 }
10260 ]
10261 },
10262 {
10263 "docs": {
10264 "stability": "external"
10265 },
10266 "locationInModule": {
10267 "filename": "lib/cloudfront.generated.ts",
10268 "line": 5947
10269 },
10270 "name": "renderProperties",
10271 "overrides": "@aws-cdk/core.CfnResource",
10272 "parameters": [
10273 {
10274 "name": "props",
10275 "type": {
10276 "collection": {
10277 "elementtype": {
10278 "primitive": "any"
10279 },
10280 "kind": "map"
10281 }
10282 }
10283 }
10284 ],
10285 "protected": true,
10286 "returns": {
10287 "type": {
10288 "collection": {
10289 "elementtype": {
10290 "primitive": "any"
10291 },
10292 "kind": "map"
10293 }
10294 }
10295 }
10296 }
10297 ],
10298 "name": "CfnResponseHeadersPolicy",
10299 "properties": [
10300 {
10301 "const": true,
10302 "docs": {
10303 "stability": "external",
10304 "summary": "The CloudFormation resource type name for this resource class."
10305 },
10306 "immutable": true,
10307 "locationInModule": {
10308 "filename": "lib/cloudfront.generated.ts",
10309 "line": 5872
10310 },
10311 "name": "CFN_RESOURCE_TYPE_NAME",
10312 "static": true,
10313 "type": {
10314 "primitive": "string"
10315 }
10316 },
10317 {
10318 "docs": {
10319 "custom": {
10320 "cloudformationAttribute": "Id"
10321 },
10322 "remarks": "For example: `57f99797-3b20-4e1b-a728-27972a74082a` .",
10323 "stability": "external",
10324 "summary": "The unique identifier for the cache policy."
10325 },
10326 "immutable": true,
10327 "locationInModule": {
10328 "filename": "lib/cloudfront.generated.ts",
10329 "line": 5897
10330 },
10331 "name": "attrId",
10332 "type": {
10333 "primitive": "string"
10334 }
10335 },
10336 {
10337 "docs": {
10338 "custom": {
10339 "cloudformationAttribute": "LastModifiedTime"
10340 },
10341 "stability": "external",
10342 "summary": "The date and time when the response headers policy was last modified."
10343 },
10344 "immutable": true,
10345 "locationInModule": {
10346 "filename": "lib/cloudfront.generated.ts",
10347 "line": 5903
10348 },
10349 "name": "attrLastModifiedTime",
10350 "type": {
10351 "primitive": "string"
10352 }
10353 },
10354 {
10355 "docs": {
10356 "stability": "external"
10357 },
10358 "immutable": true,
10359 "locationInModule": {
10360 "filename": "lib/cloudfront.generated.ts",
10361 "line": 5941
10362 },
10363 "name": "cfnProperties",
10364 "overrides": "@aws-cdk/core.CfnResource",
10365 "protected": true,
10366 "type": {
10367 "collection": {
10368 "elementtype": {
10369 "primitive": "any"
10370 },
10371 "kind": "map"
10372 }
10373 }
10374 },
10375 {
10376 "docs": {
10377 "custom": {
10378 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-responseheaderspolicy.html#cfn-cloudfront-responseheaderspolicy-responseheaderspolicyconfig"
10379 },
10380 "remarks": "A response headers policy contains information about a set of HTTP response headers and their values. CloudFront adds the headers in the policy to HTTP responses that it sends for requests that match a cache behavior that’s associated with the policy.",
10381 "stability": "external",
10382 "summary": "A response headers policy configuration."
10383 },
10384 "locationInModule": {
10385 "filename": "lib/cloudfront.generated.ts",
10386 "line": 5912
10387 },
10388 "name": "responseHeadersPolicyConfig",
10389 "type": {
10390 "union": {
10391 "types": [
10392 {
10393 "fqn": "@aws-cdk/core.IResolvable"
10394 },
10395 {
10396 "fqn": "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.ResponseHeadersPolicyConfigProperty"
10397 }
10398 ]
10399 }
10400 }
10401 }
10402 ],
10403 "symbolId": "lib/cloudfront.generated:CfnResponseHeadersPolicy"
10404 },
10405 "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.AccessControlAllowHeadersProperty": {
10406 "assembly": "@aws-cdk/aws-cloudfront",
10407 "datatype": true,
10408 "docs": {
10409 "custom": {
10410 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-accesscontrolallowheaders.html",
10411 "exampleMetadata": "fixture=_generated"
10412 },
10413 "remarks": "For more information about the `Access-Control-Allow-Headers` HTTP response header, see [Access-Control-Allow-Headers](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Headers) in the MDN Web Docs.",
10414 "stability": "external",
10415 "summary": "A list of HTTP header names that CloudFront includes as values for the `Access-Control-Allow-Headers` HTTP response header.",
10416 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst accessControlAllowHeadersProperty: cloudfront.CfnResponseHeadersPolicy.AccessControlAllowHeadersProperty = {\n items: ['items'],\n};"
10417 },
10418 "fqn": "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.AccessControlAllowHeadersProperty",
10419 "kind": "interface",
10420 "locationInModule": {
10421 "filename": "lib/cloudfront.generated.ts",
10422 "line": 5963
10423 },
10424 "name": "AccessControlAllowHeadersProperty",
10425 "namespace": "CfnResponseHeadersPolicy",
10426 "properties": [
10427 {
10428 "abstract": true,
10429 "docs": {
10430 "custom": {
10431 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-accesscontrolallowheaders.html#cfn-cloudfront-responseheaderspolicy-accesscontrolallowheaders-items"
10432 },
10433 "remarks": "You can specify `*` to allow all headers.",
10434 "stability": "external",
10435 "summary": "The list of HTTP header names."
10436 },
10437 "immutable": true,
10438 "locationInModule": {
10439 "filename": "lib/cloudfront.generated.ts",
10440 "line": 5969
10441 },
10442 "name": "items",
10443 "type": {
10444 "collection": {
10445 "elementtype": {
10446 "primitive": "string"
10447 },
10448 "kind": "array"
10449 }
10450 }
10451 }
10452 ],
10453 "symbolId": "lib/cloudfront.generated:CfnResponseHeadersPolicy.AccessControlAllowHeadersProperty"
10454 },
10455 "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.AccessControlAllowMethodsProperty": {
10456 "assembly": "@aws-cdk/aws-cloudfront",
10457 "datatype": true,
10458 "docs": {
10459 "custom": {
10460 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-accesscontrolallowmethods.html",
10461 "exampleMetadata": "fixture=_generated"
10462 },
10463 "remarks": "For more information about the `Access-Control-Allow-Methods` HTTP response header, see [Access-Control-Allow-Methods](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Methods) in the MDN Web Docs.",
10464 "stability": "external",
10465 "summary": "A list of HTTP methods that CloudFront includes as values for the `Access-Control-Allow-Methods` HTTP response header.",
10466 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst accessControlAllowMethodsProperty: cloudfront.CfnResponseHeadersPolicy.AccessControlAllowMethodsProperty = {\n items: ['items'],\n};"
10467 },
10468 "fqn": "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.AccessControlAllowMethodsProperty",
10469 "kind": "interface",
10470 "locationInModule": {
10471 "filename": "lib/cloudfront.generated.ts",
10472 "line": 6033
10473 },
10474 "name": "AccessControlAllowMethodsProperty",
10475 "namespace": "CfnResponseHeadersPolicy",
10476 "properties": [
10477 {
10478 "abstract": true,
10479 "docs": {
10480 "custom": {
10481 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-accesscontrolallowmethods.html#cfn-cloudfront-responseheaderspolicy-accesscontrolallowmethods-items"
10482 },
10483 "remarks": "- `GET`\n- `DELETE`\n- `HEAD`\n- `OPTIONS`\n- `PATCH`\n- `POST`\n- `PUT`\n- `ALL`\n\n`ALL` is a special value that includes all of the listed HTTP methods.",
10484 "stability": "external",
10485 "summary": "The list of HTTP methods. Valid values are:."
10486 },
10487 "immutable": true,
10488 "locationInModule": {
10489 "filename": "lib/cloudfront.generated.ts",
10490 "line": 6050
10491 },
10492 "name": "items",
10493 "type": {
10494 "collection": {
10495 "elementtype": {
10496 "primitive": "string"
10497 },
10498 "kind": "array"
10499 }
10500 }
10501 }
10502 ],
10503 "symbolId": "lib/cloudfront.generated:CfnResponseHeadersPolicy.AccessControlAllowMethodsProperty"
10504 },
10505 "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.AccessControlAllowOriginsProperty": {
10506 "assembly": "@aws-cdk/aws-cloudfront",
10507 "datatype": true,
10508 "docs": {
10509 "custom": {
10510 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-accesscontrolalloworigins.html",
10511 "exampleMetadata": "fixture=_generated"
10512 },
10513 "remarks": "For more information about the `Access-Control-Allow-Origin` HTTP response header, see [Access-Control-Allow-Origin](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Origin) in the MDN Web Docs.",
10514 "stability": "external",
10515 "summary": "A list of origins (domain names) that CloudFront can use as the value for the `Access-Control-Allow-Origin` HTTP response header.",
10516 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst accessControlAllowOriginsProperty: cloudfront.CfnResponseHeadersPolicy.AccessControlAllowOriginsProperty = {\n items: ['items'],\n};"
10517 },
10518 "fqn": "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.AccessControlAllowOriginsProperty",
10519 "kind": "interface",
10520 "locationInModule": {
10521 "filename": "lib/cloudfront.generated.ts",
10522 "line": 6114
10523 },
10524 "name": "AccessControlAllowOriginsProperty",
10525 "namespace": "CfnResponseHeadersPolicy",
10526 "properties": [
10527 {
10528 "abstract": true,
10529 "docs": {
10530 "custom": {
10531 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-accesscontrolalloworigins.html#cfn-cloudfront-responseheaderspolicy-accesscontrolalloworigins-items"
10532 },
10533 "remarks": "You can specify `*` to allow all origins.",
10534 "stability": "external",
10535 "summary": "The list of origins (domain names)."
10536 },
10537 "immutable": true,
10538 "locationInModule": {
10539 "filename": "lib/cloudfront.generated.ts",
10540 "line": 6120
10541 },
10542 "name": "items",
10543 "type": {
10544 "collection": {
10545 "elementtype": {
10546 "primitive": "string"
10547 },
10548 "kind": "array"
10549 }
10550 }
10551 }
10552 ],
10553 "symbolId": "lib/cloudfront.generated:CfnResponseHeadersPolicy.AccessControlAllowOriginsProperty"
10554 },
10555 "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.AccessControlExposeHeadersProperty": {
10556 "assembly": "@aws-cdk/aws-cloudfront",
10557 "datatype": true,
10558 "docs": {
10559 "custom": {
10560 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-accesscontrolexposeheaders.html",
10561 "exampleMetadata": "fixture=_generated"
10562 },
10563 "remarks": "For more information about the `Access-Control-Expose-Headers` HTTP response header, see [Access-Control-Expose-Headers](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Expose-Headers) in the MDN Web Docs.",
10564 "stability": "external",
10565 "summary": "A list of HTTP headers that CloudFront includes as values for the `Access-Control-Expose-Headers` HTTP response header.",
10566 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst accessControlExposeHeadersProperty: cloudfront.CfnResponseHeadersPolicy.AccessControlExposeHeadersProperty = {\n items: ['items'],\n};"
10567 },
10568 "fqn": "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.AccessControlExposeHeadersProperty",
10569 "kind": "interface",
10570 "locationInModule": {
10571 "filename": "lib/cloudfront.generated.ts",
10572 "line": 6184
10573 },
10574 "name": "AccessControlExposeHeadersProperty",
10575 "namespace": "CfnResponseHeadersPolicy",
10576 "properties": [
10577 {
10578 "abstract": true,
10579 "docs": {
10580 "custom": {
10581 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-accesscontrolexposeheaders.html#cfn-cloudfront-responseheaderspolicy-accesscontrolexposeheaders-items"
10582 },
10583 "remarks": "You can specify `*` to expose all headers.",
10584 "stability": "external",
10585 "summary": "The list of HTTP headers."
10586 },
10587 "immutable": true,
10588 "locationInModule": {
10589 "filename": "lib/cloudfront.generated.ts",
10590 "line": 6190
10591 },
10592 "name": "items",
10593 "type": {
10594 "collection": {
10595 "elementtype": {
10596 "primitive": "string"
10597 },
10598 "kind": "array"
10599 }
10600 }
10601 }
10602 ],
10603 "symbolId": "lib/cloudfront.generated:CfnResponseHeadersPolicy.AccessControlExposeHeadersProperty"
10604 },
10605 "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.ContentSecurityPolicyProperty": {
10606 "assembly": "@aws-cdk/aws-cloudfront",
10607 "datatype": true,
10608 "docs": {
10609 "custom": {
10610 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-contentsecuritypolicy.html",
10611 "exampleMetadata": "fixture=_generated"
10612 },
10613 "remarks": "For more information about the `Content-Security-Policy` HTTP response header, see [Content-Security-Policy](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy) in the MDN Web Docs.",
10614 "stability": "external",
10615 "summary": "The policy directives and their values that CloudFront includes as values for the `Content-Security-Policy` HTTP response header.",
10616 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst contentSecurityPolicyProperty: cloudfront.CfnResponseHeadersPolicy.ContentSecurityPolicyProperty = {\n contentSecurityPolicy: 'contentSecurityPolicy',\n override: false,\n};"
10617 },
10618 "fqn": "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.ContentSecurityPolicyProperty",
10619 "kind": "interface",
10620 "locationInModule": {
10621 "filename": "lib/cloudfront.generated.ts",
10622 "line": 6254
10623 },
10624 "name": "ContentSecurityPolicyProperty",
10625 "namespace": "CfnResponseHeadersPolicy",
10626 "properties": [
10627 {
10628 "abstract": true,
10629 "docs": {
10630 "custom": {
10631 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-contentsecuritypolicy.html#cfn-cloudfront-responseheaderspolicy-contentsecuritypolicy-contentsecuritypolicy"
10632 },
10633 "stability": "external",
10634 "summary": "The policy directives and their values that CloudFront includes as values for the `Content-Security-Policy` HTTP response header."
10635 },
10636 "immutable": true,
10637 "locationInModule": {
10638 "filename": "lib/cloudfront.generated.ts",
10639 "line": 6260
10640 },
10641 "name": "contentSecurityPolicy",
10642 "type": {
10643 "primitive": "string"
10644 }
10645 },
10646 {
10647 "abstract": true,
10648 "docs": {
10649 "custom": {
10650 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-contentsecuritypolicy.html#cfn-cloudfront-responseheaderspolicy-contentsecuritypolicy-override"
10651 },
10652 "stability": "external",
10653 "summary": "A Boolean that determines whether CloudFront overrides the `Content-Security-Policy` HTTP response header received from the origin with the one specified in this response headers policy."
10654 },
10655 "immutable": true,
10656 "locationInModule": {
10657 "filename": "lib/cloudfront.generated.ts",
10658 "line": 6266
10659 },
10660 "name": "override",
10661 "type": {
10662 "union": {
10663 "types": [
10664 {
10665 "primitive": "boolean"
10666 },
10667 {
10668 "fqn": "@aws-cdk/core.IResolvable"
10669 }
10670 ]
10671 }
10672 }
10673 }
10674 ],
10675 "symbolId": "lib/cloudfront.generated:CfnResponseHeadersPolicy.ContentSecurityPolicyProperty"
10676 },
10677 "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.ContentTypeOptionsProperty": {
10678 "assembly": "@aws-cdk/aws-cloudfront",
10679 "datatype": true,
10680 "docs": {
10681 "custom": {
10682 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-contenttypeoptions.html",
10683 "exampleMetadata": "fixture=_generated"
10684 },
10685 "remarks": "For more information about the `X-Content-Type-Options` HTTP response header, see [X-Content-Type-Options](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Content-Type-Options) in the MDN Web Docs.",
10686 "stability": "external",
10687 "summary": "Determines whether CloudFront includes the `X-Content-Type-Options` HTTP response header with its value set to `nosniff` .",
10688 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst contentTypeOptionsProperty: cloudfront.CfnResponseHeadersPolicy.ContentTypeOptionsProperty = {\n override: false,\n};"
10689 },
10690 "fqn": "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.ContentTypeOptionsProperty",
10691 "kind": "interface",
10692 "locationInModule": {
10693 "filename": "lib/cloudfront.generated.ts",
10694 "line": 6334
10695 },
10696 "name": "ContentTypeOptionsProperty",
10697 "namespace": "CfnResponseHeadersPolicy",
10698 "properties": [
10699 {
10700 "abstract": true,
10701 "docs": {
10702 "custom": {
10703 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-contenttypeoptions.html#cfn-cloudfront-responseheaderspolicy-contenttypeoptions-override"
10704 },
10705 "stability": "external",
10706 "summary": "A Boolean that determines whether CloudFront overrides the `X-Content-Type-Options` HTTP response header received from the origin with the one specified in this response headers policy."
10707 },
10708 "immutable": true,
10709 "locationInModule": {
10710 "filename": "lib/cloudfront.generated.ts",
10711 "line": 6340
10712 },
10713 "name": "override",
10714 "type": {
10715 "union": {
10716 "types": [
10717 {
10718 "primitive": "boolean"
10719 },
10720 {
10721 "fqn": "@aws-cdk/core.IResolvable"
10722 }
10723 ]
10724 }
10725 }
10726 }
10727 ],
10728 "symbolId": "lib/cloudfront.generated:CfnResponseHeadersPolicy.ContentTypeOptionsProperty"
10729 },
10730 "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.CorsConfigProperty": {
10731 "assembly": "@aws-cdk/aws-cloudfront",
10732 "datatype": true,
10733 "docs": {
10734 "custom": {
10735 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-corsconfig.html",
10736 "exampleMetadata": "fixture=_generated"
10737 },
10738 "remarks": "CloudFront adds these headers to HTTP responses that it sends for CORS requests that match a cache behavior associated with this response headers policy.\n\nFor more information about CORS, see [Cross-Origin Resource Sharing (CORS)](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) in the MDN Web Docs.",
10739 "stability": "external",
10740 "summary": "A configuration for a set of HTTP response headers that are used for cross-origin resource sharing (CORS).",
10741 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst corsConfigProperty: cloudfront.CfnResponseHeadersPolicy.CorsConfigProperty = {\n accessControlAllowCredentials: false,\n accessControlAllowHeaders: {\n items: ['items'],\n },\n accessControlAllowMethods: {\n items: ['items'],\n },\n accessControlAllowOrigins: {\n items: ['items'],\n },\n originOverride: false,\n\n // the properties below are optional\n accessControlExposeHeaders: {\n items: ['items'],\n },\n accessControlMaxAgeSec: 123,\n};"
10742 },
10743 "fqn": "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.CorsConfigProperty",
10744 "kind": "interface",
10745 "locationInModule": {
10746 "filename": "lib/cloudfront.generated.ts",
10747 "line": 6404
10748 },
10749 "name": "CorsConfigProperty",
10750 "namespace": "CfnResponseHeadersPolicy",
10751 "properties": [
10752 {
10753 "abstract": true,
10754 "docs": {
10755 "custom": {
10756 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-corsconfig.html#cfn-cloudfront-responseheaderspolicy-corsconfig-accesscontrolallowcredentials"
10757 },
10758 "remarks": "For more information about the `Access-Control-Allow-Credentials` HTTP response header, see [Access-Control-Allow-Credentials](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Credentials) in the MDN Web Docs.",
10759 "stability": "external",
10760 "summary": "A Boolean that CloudFront uses as the value for the `Access-Control-Allow-Credentials` HTTP response header."
10761 },
10762 "immutable": true,
10763 "locationInModule": {
10764 "filename": "lib/cloudfront.generated.ts",
10765 "line": 6412
10766 },
10767 "name": "accessControlAllowCredentials",
10768 "type": {
10769 "union": {
10770 "types": [
10771 {
10772 "primitive": "boolean"
10773 },
10774 {
10775 "fqn": "@aws-cdk/core.IResolvable"
10776 }
10777 ]
10778 }
10779 }
10780 },
10781 {
10782 "abstract": true,
10783 "docs": {
10784 "custom": {
10785 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-corsconfig.html#cfn-cloudfront-responseheaderspolicy-corsconfig-accesscontrolallowheaders"
10786 },
10787 "remarks": "For more information about the `Access-Control-Allow-Headers` HTTP response header, see [Access-Control-Allow-Headers](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Headers) in the MDN Web Docs.",
10788 "stability": "external",
10789 "summary": "A list of HTTP header names that CloudFront includes as values for the `Access-Control-Allow-Headers` HTTP response header."
10790 },
10791 "immutable": true,
10792 "locationInModule": {
10793 "filename": "lib/cloudfront.generated.ts",
10794 "line": 6420
10795 },
10796 "name": "accessControlAllowHeaders",
10797 "type": {
10798 "union": {
10799 "types": [
10800 {
10801 "fqn": "@aws-cdk/core.IResolvable"
10802 },
10803 {
10804 "fqn": "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.AccessControlAllowHeadersProperty"
10805 }
10806 ]
10807 }
10808 }
10809 },
10810 {
10811 "abstract": true,
10812 "docs": {
10813 "custom": {
10814 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-corsconfig.html#cfn-cloudfront-responseheaderspolicy-corsconfig-accesscontrolallowmethods"
10815 },
10816 "remarks": "For more information about the `Access-Control-Allow-Methods` HTTP response header, see [Access-Control-Allow-Methods](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Methods) in the MDN Web Docs.",
10817 "stability": "external",
10818 "summary": "A list of HTTP methods that CloudFront includes as values for the `Access-Control-Allow-Methods` HTTP response header."
10819 },
10820 "immutable": true,
10821 "locationInModule": {
10822 "filename": "lib/cloudfront.generated.ts",
10823 "line": 6428
10824 },
10825 "name": "accessControlAllowMethods",
10826 "type": {
10827 "union": {
10828 "types": [
10829 {
10830 "fqn": "@aws-cdk/core.IResolvable"
10831 },
10832 {
10833 "fqn": "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.AccessControlAllowMethodsProperty"
10834 }
10835 ]
10836 }
10837 }
10838 },
10839 {
10840 "abstract": true,
10841 "docs": {
10842 "custom": {
10843 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-corsconfig.html#cfn-cloudfront-responseheaderspolicy-corsconfig-accesscontrolalloworigins"
10844 },
10845 "remarks": "For more information about the `Access-Control-Allow-Origin` HTTP response header, see [Access-Control-Allow-Origin](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Origin) in the MDN Web Docs.",
10846 "stability": "external",
10847 "summary": "A list of origins (domain names) that CloudFront can use as the value for the `Access-Control-Allow-Origin` HTTP response header."
10848 },
10849 "immutable": true,
10850 "locationInModule": {
10851 "filename": "lib/cloudfront.generated.ts",
10852 "line": 6436
10853 },
10854 "name": "accessControlAllowOrigins",
10855 "type": {
10856 "union": {
10857 "types": [
10858 {
10859 "fqn": "@aws-cdk/core.IResolvable"
10860 },
10861 {
10862 "fqn": "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.AccessControlAllowOriginsProperty"
10863 }
10864 ]
10865 }
10866 }
10867 },
10868 {
10869 "abstract": true,
10870 "docs": {
10871 "custom": {
10872 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-corsconfig.html#cfn-cloudfront-responseheaderspolicy-corsconfig-originoverride"
10873 },
10874 "stability": "external",
10875 "summary": "A Boolean that determines whether CloudFront overrides HTTP response headers received from the origin with the ones specified in this response headers policy."
10876 },
10877 "immutable": true,
10878 "locationInModule": {
10879 "filename": "lib/cloudfront.generated.ts",
10880 "line": 6458
10881 },
10882 "name": "originOverride",
10883 "type": {
10884 "union": {
10885 "types": [
10886 {
10887 "primitive": "boolean"
10888 },
10889 {
10890 "fqn": "@aws-cdk/core.IResolvable"
10891 }
10892 ]
10893 }
10894 }
10895 },
10896 {
10897 "abstract": true,
10898 "docs": {
10899 "custom": {
10900 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-corsconfig.html#cfn-cloudfront-responseheaderspolicy-corsconfig-accesscontrolexposeheaders"
10901 },
10902 "remarks": "For more information about the `Access-Control-Expose-Headers` HTTP response header, see [Access-Control-Expose-Headers](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Expose-Headers) in the MDN Web Docs.",
10903 "stability": "external",
10904 "summary": "A list of HTTP headers that CloudFront includes as values for the `Access-Control-Expose-Headers` HTTP response header."
10905 },
10906 "immutable": true,
10907 "locationInModule": {
10908 "filename": "lib/cloudfront.generated.ts",
10909 "line": 6444
10910 },
10911 "name": "accessControlExposeHeaders",
10912 "optional": true,
10913 "type": {
10914 "union": {
10915 "types": [
10916 {
10917 "fqn": "@aws-cdk/core.IResolvable"
10918 },
10919 {
10920 "fqn": "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.AccessControlExposeHeadersProperty"
10921 }
10922 ]
10923 }
10924 }
10925 },
10926 {
10927 "abstract": true,
10928 "docs": {
10929 "custom": {
10930 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-corsconfig.html#cfn-cloudfront-responseheaderspolicy-corsconfig-accesscontrolmaxagesec"
10931 },
10932 "remarks": "For more information about the `Access-Control-Max-Age` HTTP response header, see [Access-Control-Max-Age](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Max-Age) in the MDN Web Docs.",
10933 "stability": "external",
10934 "summary": "A number that CloudFront uses as the value for the `Access-Control-Max-Age` HTTP response header."
10935 },
10936 "immutable": true,
10937 "locationInModule": {
10938 "filename": "lib/cloudfront.generated.ts",
10939 "line": 6452
10940 },
10941 "name": "accessControlMaxAgeSec",
10942 "optional": true,
10943 "type": {
10944 "primitive": "number"
10945 }
10946 }
10947 ],
10948 "symbolId": "lib/cloudfront.generated:CfnResponseHeadersPolicy.CorsConfigProperty"
10949 },
10950 "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.CustomHeaderProperty": {
10951 "assembly": "@aws-cdk/aws-cloudfront",
10952 "datatype": true,
10953 "docs": {
10954 "custom": {
10955 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-customheader.html",
10956 "exampleMetadata": "fixture=_generated"
10957 },
10958 "remarks": "CloudFront includes this header in HTTP responses that it sends for requests that match a cache behavior that’s associated with this response headers policy.",
10959 "stability": "external",
10960 "summary": "An HTTP response header name and its value.",
10961 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst customHeaderProperty: cloudfront.CfnResponseHeadersPolicy.CustomHeaderProperty = {\n header: 'header',\n override: false,\n value: 'value',\n};"
10962 },
10963 "fqn": "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.CustomHeaderProperty",
10964 "kind": "interface",
10965 "locationInModule": {
10966 "filename": "lib/cloudfront.generated.ts",
10967 "line": 6542
10968 },
10969 "name": "CustomHeaderProperty",
10970 "namespace": "CfnResponseHeadersPolicy",
10971 "properties": [
10972 {
10973 "abstract": true,
10974 "docs": {
10975 "custom": {
10976 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-customheader.html#cfn-cloudfront-responseheaderspolicy-customheader-header"
10977 },
10978 "stability": "external",
10979 "summary": "The HTTP response header name."
10980 },
10981 "immutable": true,
10982 "locationInModule": {
10983 "filename": "lib/cloudfront.generated.ts",
10984 "line": 6548
10985 },
10986 "name": "header",
10987 "type": {
10988 "primitive": "string"
10989 }
10990 },
10991 {
10992 "abstract": true,
10993 "docs": {
10994 "custom": {
10995 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-customheader.html#cfn-cloudfront-responseheaderspolicy-customheader-override"
10996 },
10997 "stability": "external",
10998 "summary": "A Boolean that determines whether CloudFront overrides a response header with the same name received from the origin with the header specified here."
10999 },
11000 "immutable": true,
11001 "locationInModule": {
11002 "filename": "lib/cloudfront.generated.ts",
11003 "line": 6554
11004 },
11005 "name": "override",
11006 "type": {
11007 "union": {
11008 "types": [
11009 {
11010 "primitive": "boolean"
11011 },
11012 {
11013 "fqn": "@aws-cdk/core.IResolvable"
11014 }
11015 ]
11016 }
11017 }
11018 },
11019 {
11020 "abstract": true,
11021 "docs": {
11022 "custom": {
11023 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-customheader.html#cfn-cloudfront-responseheaderspolicy-customheader-value"
11024 },
11025 "stability": "external",
11026 "summary": "The value for the HTTP response header."
11027 },
11028 "immutable": true,
11029 "locationInModule": {
11030 "filename": "lib/cloudfront.generated.ts",
11031 "line": 6560
11032 },
11033 "name": "value",
11034 "type": {
11035 "primitive": "string"
11036 }
11037 }
11038 ],
11039 "symbolId": "lib/cloudfront.generated:CfnResponseHeadersPolicy.CustomHeaderProperty"
11040 },
11041 "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.CustomHeadersConfigProperty": {
11042 "assembly": "@aws-cdk/aws-cloudfront",
11043 "datatype": true,
11044 "docs": {
11045 "custom": {
11046 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-customheadersconfig.html",
11047 "exampleMetadata": "fixture=_generated"
11048 },
11049 "remarks": "CloudFront includes these headers in HTTP responses that it sends for requests that match a cache behavior that’s associated with this response headers policy.",
11050 "stability": "external",
11051 "summary": "A list of HTTP response header names and their values.",
11052 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst customHeadersConfigProperty: cloudfront.CfnResponseHeadersPolicy.CustomHeadersConfigProperty = {\n items: [{\n header: 'header',\n override: false,\n value: 'value',\n }],\n};"
11053 },
11054 "fqn": "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.CustomHeadersConfigProperty",
11055 "kind": "interface",
11056 "locationInModule": {
11057 "filename": "lib/cloudfront.generated.ts",
11058 "line": 6630
11059 },
11060 "name": "CustomHeadersConfigProperty",
11061 "namespace": "CfnResponseHeadersPolicy",
11062 "properties": [
11063 {
11064 "abstract": true,
11065 "docs": {
11066 "custom": {
11067 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-customheadersconfig.html#cfn-cloudfront-responseheaderspolicy-customheadersconfig-items"
11068 },
11069 "stability": "external",
11070 "summary": "The list of HTTP response headers and their values."
11071 },
11072 "immutable": true,
11073 "locationInModule": {
11074 "filename": "lib/cloudfront.generated.ts",
11075 "line": 6636
11076 },
11077 "name": "items",
11078 "type": {
11079 "union": {
11080 "types": [
11081 {
11082 "fqn": "@aws-cdk/core.IResolvable"
11083 },
11084 {
11085 "collection": {
11086 "elementtype": {
11087 "union": {
11088 "types": [
11089 {
11090 "fqn": "@aws-cdk/core.IResolvable"
11091 },
11092 {
11093 "fqn": "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.CustomHeaderProperty"
11094 }
11095 ]
11096 }
11097 },
11098 "kind": "array"
11099 }
11100 }
11101 ]
11102 }
11103 }
11104 }
11105 ],
11106 "symbolId": "lib/cloudfront.generated:CfnResponseHeadersPolicy.CustomHeadersConfigProperty"
11107 },
11108 "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.FrameOptionsProperty": {
11109 "assembly": "@aws-cdk/aws-cloudfront",
11110 "datatype": true,
11111 "docs": {
11112 "custom": {
11113 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-frameoptions.html",
11114 "exampleMetadata": "fixture=_generated"
11115 },
11116 "remarks": "For more information about the `X-Frame-Options` HTTP response header, see [X-Frame-Options](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Frame-Options) in the MDN Web Docs.",
11117 "stability": "external",
11118 "summary": "Determines whether CloudFront includes the `X-Frame-Options` HTTP response header and the header’s value.",
11119 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst frameOptionsProperty: cloudfront.CfnResponseHeadersPolicy.FrameOptionsProperty = {\n frameOption: 'frameOption',\n override: false,\n};"
11120 },
11121 "fqn": "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.FrameOptionsProperty",
11122 "kind": "interface",
11123 "locationInModule": {
11124 "filename": "lib/cloudfront.generated.ts",
11125 "line": 6700
11126 },
11127 "name": "FrameOptionsProperty",
11128 "namespace": "CfnResponseHeadersPolicy",
11129 "properties": [
11130 {
11131 "abstract": true,
11132 "docs": {
11133 "custom": {
11134 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-frameoptions.html#cfn-cloudfront-responseheaderspolicy-frameoptions-frameoption"
11135 },
11136 "remarks": "For more information about these values, see [X-Frame-Options](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Frame-Options) in the MDN Web Docs.",
11137 "stability": "external",
11138 "summary": "The value of the `X-Frame-Options` HTTP response header. Valid values are `DENY` and `SAMEORIGIN` ."
11139 },
11140 "immutable": true,
11141 "locationInModule": {
11142 "filename": "lib/cloudfront.generated.ts",
11143 "line": 6708
11144 },
11145 "name": "frameOption",
11146 "type": {
11147 "primitive": "string"
11148 }
11149 },
11150 {
11151 "abstract": true,
11152 "docs": {
11153 "custom": {
11154 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-frameoptions.html#cfn-cloudfront-responseheaderspolicy-frameoptions-override"
11155 },
11156 "stability": "external",
11157 "summary": "A Boolean that determines whether CloudFront overrides the `X-Frame-Options` HTTP response header received from the origin with the one specified in this response headers policy."
11158 },
11159 "immutable": true,
11160 "locationInModule": {
11161 "filename": "lib/cloudfront.generated.ts",
11162 "line": 6714
11163 },
11164 "name": "override",
11165 "type": {
11166 "union": {
11167 "types": [
11168 {
11169 "primitive": "boolean"
11170 },
11171 {
11172 "fqn": "@aws-cdk/core.IResolvable"
11173 }
11174 ]
11175 }
11176 }
11177 }
11178 ],
11179 "symbolId": "lib/cloudfront.generated:CfnResponseHeadersPolicy.FrameOptionsProperty"
11180 },
11181 "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.ReferrerPolicyProperty": {
11182 "assembly": "@aws-cdk/aws-cloudfront",
11183 "datatype": true,
11184 "docs": {
11185 "custom": {
11186 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-referrerpolicy.html",
11187 "exampleMetadata": "fixture=_generated"
11188 },
11189 "remarks": "For more information about the `Referrer-Policy` HTTP response header, see [Referrer-Policy](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referrer-Policy) in the MDN Web Docs.",
11190 "stability": "external",
11191 "summary": "Determines whether CloudFront includes the `Referrer-Policy` HTTP response header and the header’s value.",
11192 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst referrerPolicyProperty: cloudfront.CfnResponseHeadersPolicy.ReferrerPolicyProperty = {\n override: false,\n referrerPolicy: 'referrerPolicy',\n};"
11193 },
11194 "fqn": "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.ReferrerPolicyProperty",
11195 "kind": "interface",
11196 "locationInModule": {
11197 "filename": "lib/cloudfront.generated.ts",
11198 "line": 6782
11199 },
11200 "name": "ReferrerPolicyProperty",
11201 "namespace": "CfnResponseHeadersPolicy",
11202 "properties": [
11203 {
11204 "abstract": true,
11205 "docs": {
11206 "custom": {
11207 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-referrerpolicy.html#cfn-cloudfront-responseheaderspolicy-referrerpolicy-override"
11208 },
11209 "stability": "external",
11210 "summary": "A Boolean that determines whether CloudFront overrides the `Referrer-Policy` HTTP response header received from the origin with the one specified in this response headers policy."
11211 },
11212 "immutable": true,
11213 "locationInModule": {
11214 "filename": "lib/cloudfront.generated.ts",
11215 "line": 6788
11216 },
11217 "name": "override",
11218 "type": {
11219 "union": {
11220 "types": [
11221 {
11222 "primitive": "boolean"
11223 },
11224 {
11225 "fqn": "@aws-cdk/core.IResolvable"
11226 }
11227 ]
11228 }
11229 }
11230 },
11231 {
11232 "abstract": true,
11233 "docs": {
11234 "custom": {
11235 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-referrerpolicy.html#cfn-cloudfront-responseheaderspolicy-referrerpolicy-referrerpolicy"
11236 },
11237 "remarks": "- `no-referrer`\n- `no-referrer-when-downgrade`\n- `origin`\n- `origin-when-cross-origin`\n- `same-origin`\n- `strict-origin`\n- `strict-origin-when-cross-origin`\n- `unsafe-url`\n\nFor more information about these values, see [Referrer-Policy](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referrer-Policy) in the MDN Web Docs.",
11238 "stability": "external",
11239 "summary": "The value of the `Referrer-Policy` HTTP response header. Valid values are:."
11240 },
11241 "immutable": true,
11242 "locationInModule": {
11243 "filename": "lib/cloudfront.generated.ts",
11244 "line": 6805
11245 },
11246 "name": "referrerPolicy",
11247 "type": {
11248 "primitive": "string"
11249 }
11250 }
11251 ],
11252 "symbolId": "lib/cloudfront.generated:CfnResponseHeadersPolicy.ReferrerPolicyProperty"
11253 },
11254 "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.ResponseHeadersPolicyConfigProperty": {
11255 "assembly": "@aws-cdk/aws-cloudfront",
11256 "datatype": true,
11257 "docs": {
11258 "custom": {
11259 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-responseheaderspolicyconfig.html",
11260 "exampleMetadata": "fixture=_generated"
11261 },
11262 "remarks": "A response headers policy configuration contains metadata about the response headers policy, and configurations for sets of HTTP response headers and their values. CloudFront adds the headers in the policy to HTTP responses that it sends for requests that match a cache behavior associated with the policy.",
11263 "stability": "external",
11264 "summary": "A response headers policy configuration.",
11265 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst responseHeadersPolicyConfigProperty: cloudfront.CfnResponseHeadersPolicy.ResponseHeadersPolicyConfigProperty = {\n name: 'name',\n\n // the properties below are optional\n comment: 'comment',\n corsConfig: {\n accessControlAllowCredentials: false,\n accessControlAllowHeaders: {\n items: ['items'],\n },\n accessControlAllowMethods: {\n items: ['items'],\n },\n accessControlAllowOrigins: {\n items: ['items'],\n },\n originOverride: false,\n\n // the properties below are optional\n accessControlExposeHeaders: {\n items: ['items'],\n },\n accessControlMaxAgeSec: 123,\n },\n customHeadersConfig: {\n items: [{\n header: 'header',\n override: false,\n value: 'value',\n }],\n },\n securityHeadersConfig: {\n contentSecurityPolicy: {\n contentSecurityPolicy: 'contentSecurityPolicy',\n override: false,\n },\n contentTypeOptions: {\n override: false,\n },\n frameOptions: {\n frameOption: 'frameOption',\n override: false,\n },\n referrerPolicy: {\n override: false,\n referrerPolicy: 'referrerPolicy',\n },\n strictTransportSecurity: {\n accessControlMaxAgeSec: 123,\n override: false,\n\n // the properties below are optional\n includeSubdomains: false,\n preload: false,\n },\n xssProtection: {\n override: false,\n protection: false,\n\n // the properties below are optional\n modeBlock: false,\n reportUri: 'reportUri',\n },\n },\n};"
11266 },
11267 "fqn": "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.ResponseHeadersPolicyConfigProperty",
11268 "kind": "interface",
11269 "locationInModule": {
11270 "filename": "lib/cloudfront.generated.ts",
11271 "line": 6873
11272 },
11273 "name": "ResponseHeadersPolicyConfigProperty",
11274 "namespace": "CfnResponseHeadersPolicy",
11275 "properties": [
11276 {
11277 "abstract": true,
11278 "docs": {
11279 "custom": {
11280 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-responseheaderspolicyconfig.html#cfn-cloudfront-responseheaderspolicy-responseheaderspolicyconfig-name"
11281 },
11282 "remarks": "The name must be unique for response headers policies in this AWS account .",
11283 "stability": "external",
11284 "summary": "A name to identify the response headers policy."
11285 },
11286 "immutable": true,
11287 "locationInModule": {
11288 "filename": "lib/cloudfront.generated.ts",
11289 "line": 6901
11290 },
11291 "name": "name",
11292 "type": {
11293 "primitive": "string"
11294 }
11295 },
11296 {
11297 "abstract": true,
11298 "docs": {
11299 "custom": {
11300 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-responseheaderspolicyconfig.html#cfn-cloudfront-responseheaderspolicy-responseheaderspolicyconfig-comment"
11301 },
11302 "remarks": "The comment cannot be longer than 128 characters.",
11303 "stability": "external",
11304 "summary": "A comment to describe the response headers policy."
11305 },
11306 "immutable": true,
11307 "locationInModule": {
11308 "filename": "lib/cloudfront.generated.ts",
11309 "line": 6881
11310 },
11311 "name": "comment",
11312 "optional": true,
11313 "type": {
11314 "primitive": "string"
11315 }
11316 },
11317 {
11318 "abstract": true,
11319 "docs": {
11320 "custom": {
11321 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-responseheaderspolicyconfig.html#cfn-cloudfront-responseheaderspolicy-responseheaderspolicyconfig-corsconfig"
11322 },
11323 "stability": "external",
11324 "summary": "A configuration for a set of HTTP response headers that are used for cross-origin resource sharing (CORS)."
11325 },
11326 "immutable": true,
11327 "locationInModule": {
11328 "filename": "lib/cloudfront.generated.ts",
11329 "line": 6887
11330 },
11331 "name": "corsConfig",
11332 "optional": true,
11333 "type": {
11334 "union": {
11335 "types": [
11336 {
11337 "fqn": "@aws-cdk/core.IResolvable"
11338 },
11339 {
11340 "fqn": "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.CorsConfigProperty"
11341 }
11342 ]
11343 }
11344 }
11345 },
11346 {
11347 "abstract": true,
11348 "docs": {
11349 "custom": {
11350 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-responseheaderspolicyconfig.html#cfn-cloudfront-responseheaderspolicy-responseheaderspolicyconfig-customheadersconfig"
11351 },
11352 "stability": "external",
11353 "summary": "A configuration for a set of custom HTTP response headers."
11354 },
11355 "immutable": true,
11356 "locationInModule": {
11357 "filename": "lib/cloudfront.generated.ts",
11358 "line": 6893
11359 },
11360 "name": "customHeadersConfig",
11361 "optional": true,
11362 "type": {
11363 "union": {
11364 "types": [
11365 {
11366 "fqn": "@aws-cdk/core.IResolvable"
11367 },
11368 {
11369 "fqn": "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.CustomHeadersConfigProperty"
11370 }
11371 ]
11372 }
11373 }
11374 },
11375 {
11376 "abstract": true,
11377 "docs": {
11378 "custom": {
11379 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-responseheaderspolicyconfig.html#cfn-cloudfront-responseheaderspolicy-responseheaderspolicyconfig-securityheadersconfig"
11380 },
11381 "stability": "external",
11382 "summary": "A configuration for a set of security-related HTTP response headers."
11383 },
11384 "immutable": true,
11385 "locationInModule": {
11386 "filename": "lib/cloudfront.generated.ts",
11387 "line": 6907
11388 },
11389 "name": "securityHeadersConfig",
11390 "optional": true,
11391 "type": {
11392 "union": {
11393 "types": [
11394 {
11395 "fqn": "@aws-cdk/core.IResolvable"
11396 },
11397 {
11398 "fqn": "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.SecurityHeadersConfigProperty"
11399 }
11400 ]
11401 }
11402 }
11403 }
11404 ],
11405 "symbolId": "lib/cloudfront.generated:CfnResponseHeadersPolicy.ResponseHeadersPolicyConfigProperty"
11406 },
11407 "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.SecurityHeadersConfigProperty": {
11408 "assembly": "@aws-cdk/aws-cloudfront",
11409 "datatype": true,
11410 "docs": {
11411 "custom": {
11412 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-securityheadersconfig.html",
11413 "exampleMetadata": "fixture=_generated"
11414 },
11415 "remarks": "CloudFront adds these headers to HTTP responses that it sends for requests that match a cache behavior associated with this response headers policy.",
11416 "stability": "external",
11417 "summary": "A configuration for a set of security-related HTTP response headers.",
11418 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst securityHeadersConfigProperty: cloudfront.CfnResponseHeadersPolicy.SecurityHeadersConfigProperty = {\n contentSecurityPolicy: {\n contentSecurityPolicy: 'contentSecurityPolicy',\n override: false,\n },\n contentTypeOptions: {\n override: false,\n },\n frameOptions: {\n frameOption: 'frameOption',\n override: false,\n },\n referrerPolicy: {\n override: false,\n referrerPolicy: 'referrerPolicy',\n },\n strictTransportSecurity: {\n accessControlMaxAgeSec: 123,\n override: false,\n\n // the properties below are optional\n includeSubdomains: false,\n preload: false,\n },\n xssProtection: {\n override: false,\n protection: false,\n\n // the properties below are optional\n modeBlock: false,\n reportUri: 'reportUri',\n },\n};"
11419 },
11420 "fqn": "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.SecurityHeadersConfigProperty",
11421 "kind": "interface",
11422 "locationInModule": {
11423 "filename": "lib/cloudfront.generated.ts",
11424 "line": 6981
11425 },
11426 "name": "SecurityHeadersConfigProperty",
11427 "namespace": "CfnResponseHeadersPolicy",
11428 "properties": [
11429 {
11430 "abstract": true,
11431 "docs": {
11432 "custom": {
11433 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-securityheadersconfig.html#cfn-cloudfront-responseheaderspolicy-securityheadersconfig-contentsecuritypolicy"
11434 },
11435 "remarks": "For more information about the `Content-Security-Policy` HTTP response header, see [Content-Security-Policy](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy) in the MDN Web Docs.",
11436 "stability": "external",
11437 "summary": "The policy directives and their values that CloudFront includes as values for the `Content-Security-Policy` HTTP response header."
11438 },
11439 "immutable": true,
11440 "locationInModule": {
11441 "filename": "lib/cloudfront.generated.ts",
11442 "line": 6989
11443 },
11444 "name": "contentSecurityPolicy",
11445 "optional": true,
11446 "type": {
11447 "union": {
11448 "types": [
11449 {
11450 "fqn": "@aws-cdk/core.IResolvable"
11451 },
11452 {
11453 "fqn": "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.ContentSecurityPolicyProperty"
11454 }
11455 ]
11456 }
11457 }
11458 },
11459 {
11460 "abstract": true,
11461 "docs": {
11462 "custom": {
11463 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-securityheadersconfig.html#cfn-cloudfront-responseheaderspolicy-securityheadersconfig-contenttypeoptions"
11464 },
11465 "remarks": "For more information about the `X-Content-Type-Options` HTTP response header, see [X-Content-Type-Options](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Content-Type-Options) in the MDN Web Docs.",
11466 "stability": "external",
11467 "summary": "Determines whether CloudFront includes the `X-Content-Type-Options` HTTP response header with its value set to `nosniff` ."
11468 },
11469 "immutable": true,
11470 "locationInModule": {
11471 "filename": "lib/cloudfront.generated.ts",
11472 "line": 6997
11473 },
11474 "name": "contentTypeOptions",
11475 "optional": true,
11476 "type": {
11477 "union": {
11478 "types": [
11479 {
11480 "fqn": "@aws-cdk/core.IResolvable"
11481 },
11482 {
11483 "fqn": "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.ContentTypeOptionsProperty"
11484 }
11485 ]
11486 }
11487 }
11488 },
11489 {
11490 "abstract": true,
11491 "docs": {
11492 "custom": {
11493 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-securityheadersconfig.html#cfn-cloudfront-responseheaderspolicy-securityheadersconfig-frameoptions"
11494 },
11495 "remarks": "For more information about the `X-Frame-Options` HTTP response header, see [X-Frame-Options](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Frame-Options) in the MDN Web Docs.",
11496 "stability": "external",
11497 "summary": "Determines whether CloudFront includes the `X-Frame-Options` HTTP response header and the header’s value."
11498 },
11499 "immutable": true,
11500 "locationInModule": {
11501 "filename": "lib/cloudfront.generated.ts",
11502 "line": 7005
11503 },
11504 "name": "frameOptions",
11505 "optional": true,
11506 "type": {
11507 "union": {
11508 "types": [
11509 {
11510 "fqn": "@aws-cdk/core.IResolvable"
11511 },
11512 {
11513 "fqn": "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.FrameOptionsProperty"
11514 }
11515 ]
11516 }
11517 }
11518 },
11519 {
11520 "abstract": true,
11521 "docs": {
11522 "custom": {
11523 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-securityheadersconfig.html#cfn-cloudfront-responseheaderspolicy-securityheadersconfig-referrerpolicy"
11524 },
11525 "remarks": "For more information about the `Referrer-Policy` HTTP response header, see [Referrer-Policy](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referrer-Policy) in the MDN Web Docs.",
11526 "stability": "external",
11527 "summary": "Determines whether CloudFront includes the `Referrer-Policy` HTTP response header and the header’s value."
11528 },
11529 "immutable": true,
11530 "locationInModule": {
11531 "filename": "lib/cloudfront.generated.ts",
11532 "line": 7013
11533 },
11534 "name": "referrerPolicy",
11535 "optional": true,
11536 "type": {
11537 "union": {
11538 "types": [
11539 {
11540 "fqn": "@aws-cdk/core.IResolvable"
11541 },
11542 {
11543 "fqn": "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.ReferrerPolicyProperty"
11544 }
11545 ]
11546 }
11547 }
11548 },
11549 {
11550 "abstract": true,
11551 "docs": {
11552 "custom": {
11553 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-securityheadersconfig.html#cfn-cloudfront-responseheaderspolicy-securityheadersconfig-stricttransportsecurity"
11554 },
11555 "remarks": "For more information about the `Strict-Transport-Security` HTTP response header, see [Strict-Transport-Security](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Strict-Transport-Security) in the MDN Web Docs.",
11556 "stability": "external",
11557 "summary": "Determines whether CloudFront includes the `Strict-Transport-Security` HTTP response header and the header’s value."
11558 },
11559 "immutable": true,
11560 "locationInModule": {
11561 "filename": "lib/cloudfront.generated.ts",
11562 "line": 7021
11563 },
11564 "name": "strictTransportSecurity",
11565 "optional": true,
11566 "type": {
11567 "union": {
11568 "types": [
11569 {
11570 "fqn": "@aws-cdk/core.IResolvable"
11571 },
11572 {
11573 "fqn": "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.StrictTransportSecurityProperty"
11574 }
11575 ]
11576 }
11577 }
11578 },
11579 {
11580 "abstract": true,
11581 "docs": {
11582 "custom": {
11583 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-securityheadersconfig.html#cfn-cloudfront-responseheaderspolicy-securityheadersconfig-xssprotection"
11584 },
11585 "remarks": "For more information about the `X-XSS-Protection` HTTP response header, see [X-XSS-Protection](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-XSS-Protection) in the MDN Web Docs.",
11586 "stability": "external",
11587 "summary": "Determines whether CloudFront includes the `X-XSS-Protection` HTTP response header and the header’s value."
11588 },
11589 "immutable": true,
11590 "locationInModule": {
11591 "filename": "lib/cloudfront.generated.ts",
11592 "line": 7029
11593 },
11594 "name": "xssProtection",
11595 "optional": true,
11596 "type": {
11597 "union": {
11598 "types": [
11599 {
11600 "fqn": "@aws-cdk/core.IResolvable"
11601 },
11602 {
11603 "fqn": "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.XSSProtectionProperty"
11604 }
11605 ]
11606 }
11607 }
11608 }
11609 ],
11610 "symbolId": "lib/cloudfront.generated:CfnResponseHeadersPolicy.SecurityHeadersConfigProperty"
11611 },
11612 "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.StrictTransportSecurityProperty": {
11613 "assembly": "@aws-cdk/aws-cloudfront",
11614 "datatype": true,
11615 "docs": {
11616 "custom": {
11617 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-stricttransportsecurity.html",
11618 "exampleMetadata": "fixture=_generated"
11619 },
11620 "remarks": "For more information about the `Strict-Transport-Security` HTTP response header, see [Strict-Transport-Security](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Strict-Transport-Security) in the MDN Web Docs.",
11621 "stability": "external",
11622 "summary": "Determines whether CloudFront includes the `Strict-Transport-Security` HTTP response header and the header’s value.",
11623 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst strictTransportSecurityProperty: cloudfront.CfnResponseHeadersPolicy.StrictTransportSecurityProperty = {\n accessControlMaxAgeSec: 123,\n override: false,\n\n // the properties below are optional\n includeSubdomains: false,\n preload: false,\n};"
11624 },
11625 "fqn": "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.StrictTransportSecurityProperty",
11626 "kind": "interface",
11627 "locationInModule": {
11628 "filename": "lib/cloudfront.generated.ts",
11629 "line": 7107
11630 },
11631 "name": "StrictTransportSecurityProperty",
11632 "namespace": "CfnResponseHeadersPolicy",
11633 "properties": [
11634 {
11635 "abstract": true,
11636 "docs": {
11637 "custom": {
11638 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-stricttransportsecurity.html#cfn-cloudfront-responseheaderspolicy-stricttransportsecurity-accesscontrolmaxagesec"
11639 },
11640 "stability": "external",
11641 "summary": "A number that CloudFront uses as the value for the `max-age` directive in the `Strict-Transport-Security` HTTP response header."
11642 },
11643 "immutable": true,
11644 "locationInModule": {
11645 "filename": "lib/cloudfront.generated.ts",
11646 "line": 7113
11647 },
11648 "name": "accessControlMaxAgeSec",
11649 "type": {
11650 "primitive": "number"
11651 }
11652 },
11653 {
11654 "abstract": true,
11655 "docs": {
11656 "custom": {
11657 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-stricttransportsecurity.html#cfn-cloudfront-responseheaderspolicy-stricttransportsecurity-override"
11658 },
11659 "stability": "external",
11660 "summary": "A Boolean that determines whether CloudFront overrides the `Strict-Transport-Security` HTTP response header received from the origin with the one specified in this response headers policy."
11661 },
11662 "immutable": true,
11663 "locationInModule": {
11664 "filename": "lib/cloudfront.generated.ts",
11665 "line": 7125
11666 },
11667 "name": "override",
11668 "type": {
11669 "union": {
11670 "types": [
11671 {
11672 "primitive": "boolean"
11673 },
11674 {
11675 "fqn": "@aws-cdk/core.IResolvable"
11676 }
11677 ]
11678 }
11679 }
11680 },
11681 {
11682 "abstract": true,
11683 "docs": {
11684 "custom": {
11685 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-stricttransportsecurity.html#cfn-cloudfront-responseheaderspolicy-stricttransportsecurity-includesubdomains"
11686 },
11687 "stability": "external",
11688 "summary": "A Boolean that determines whether CloudFront includes the `includeSubDomains` directive in the `Strict-Transport-Security` HTTP response header."
11689 },
11690 "immutable": true,
11691 "locationInModule": {
11692 "filename": "lib/cloudfront.generated.ts",
11693 "line": 7119
11694 },
11695 "name": "includeSubdomains",
11696 "optional": true,
11697 "type": {
11698 "union": {
11699 "types": [
11700 {
11701 "primitive": "boolean"
11702 },
11703 {
11704 "fqn": "@aws-cdk/core.IResolvable"
11705 }
11706 ]
11707 }
11708 }
11709 },
11710 {
11711 "abstract": true,
11712 "docs": {
11713 "custom": {
11714 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-stricttransportsecurity.html#cfn-cloudfront-responseheaderspolicy-stricttransportsecurity-preload"
11715 },
11716 "stability": "external",
11717 "summary": "A Boolean that determines whether CloudFront includes the `preload` directive in the `Strict-Transport-Security` HTTP response header."
11718 },
11719 "immutable": true,
11720 "locationInModule": {
11721 "filename": "lib/cloudfront.generated.ts",
11722 "line": 7131
11723 },
11724 "name": "preload",
11725 "optional": true,
11726 "type": {
11727 "union": {
11728 "types": [
11729 {
11730 "primitive": "boolean"
11731 },
11732 {
11733 "fqn": "@aws-cdk/core.IResolvable"
11734 }
11735 ]
11736 }
11737 }
11738 }
11739 ],
11740 "symbolId": "lib/cloudfront.generated:CfnResponseHeadersPolicy.StrictTransportSecurityProperty"
11741 },
11742 "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.XSSProtectionProperty": {
11743 "assembly": "@aws-cdk/aws-cloudfront",
11744 "datatype": true,
11745 "docs": {
11746 "custom": {
11747 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-xssprotection.html",
11748 "exampleMetadata": "fixture=_generated"
11749 },
11750 "remarks": "For more information about the `X-XSS-Protection` HTTP response header, see [X-XSS-Protection](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-XSS-Protection) in the MDN Web Docs.",
11751 "stability": "external",
11752 "summary": "Determines whether CloudFront includes the `X-XSS-Protection` HTTP response header and the header’s value.",
11753 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst xSSProtectionProperty: cloudfront.CfnResponseHeadersPolicy.XSSProtectionProperty = {\n override: false,\n protection: false,\n\n // the properties below are optional\n modeBlock: false,\n reportUri: 'reportUri',\n};"
11754 },
11755 "fqn": "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.XSSProtectionProperty",
11756 "kind": "interface",
11757 "locationInModule": {
11758 "filename": "lib/cloudfront.generated.ts",
11759 "line": 7205
11760 },
11761 "name": "XSSProtectionProperty",
11762 "namespace": "CfnResponseHeadersPolicy",
11763 "properties": [
11764 {
11765 "abstract": true,
11766 "docs": {
11767 "custom": {
11768 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-xssprotection.html#cfn-cloudfront-responseheaderspolicy-xssprotection-override"
11769 },
11770 "stability": "external",
11771 "summary": "A Boolean that determines whether CloudFront overrides the `X-XSS-Protection` HTTP response header received from the origin with the one specified in this response headers policy."
11772 },
11773 "immutable": true,
11774 "locationInModule": {
11775 "filename": "lib/cloudfront.generated.ts",
11776 "line": 7219
11777 },
11778 "name": "override",
11779 "type": {
11780 "union": {
11781 "types": [
11782 {
11783 "primitive": "boolean"
11784 },
11785 {
11786 "fqn": "@aws-cdk/core.IResolvable"
11787 }
11788 ]
11789 }
11790 }
11791 },
11792 {
11793 "abstract": true,
11794 "docs": {
11795 "custom": {
11796 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-xssprotection.html#cfn-cloudfront-responseheaderspolicy-xssprotection-protection"
11797 },
11798 "remarks": "When this setting is `true` , the value of the `X-XSS-Protection` header is `1` . When this setting is `false` , the value of the `X-XSS-Protection` header is `0` .\n\nFor more information about these settings, see [X-XSS-Protection](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-XSS-Protection) in the MDN Web Docs.",
11799 "stability": "external",
11800 "summary": "A Boolean that determines the value of the `X-XSS-Protection` HTTP response header."
11801 },
11802 "immutable": true,
11803 "locationInModule": {
11804 "filename": "lib/cloudfront.generated.ts",
11805 "line": 7227
11806 },
11807 "name": "protection",
11808 "type": {
11809 "union": {
11810 "types": [
11811 {
11812 "primitive": "boolean"
11813 },
11814 {
11815 "fqn": "@aws-cdk/core.IResolvable"
11816 }
11817 ]
11818 }
11819 }
11820 },
11821 {
11822 "abstract": true,
11823 "docs": {
11824 "custom": {
11825 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-xssprotection.html#cfn-cloudfront-responseheaderspolicy-xssprotection-modeblock"
11826 },
11827 "remarks": "For more information about this directive, see [X-XSS-Protection](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-XSS-Protection) in the MDN Web Docs.",
11828 "stability": "external",
11829 "summary": "A Boolean that determines whether CloudFront includes the `mode=block` directive in the `X-XSS-Protection` header."
11830 },
11831 "immutable": true,
11832 "locationInModule": {
11833 "filename": "lib/cloudfront.generated.ts",
11834 "line": 7213
11835 },
11836 "name": "modeBlock",
11837 "optional": true,
11838 "type": {
11839 "union": {
11840 "types": [
11841 {
11842 "primitive": "boolean"
11843 },
11844 {
11845 "fqn": "@aws-cdk/core.IResolvable"
11846 }
11847 ]
11848 }
11849 }
11850 },
11851 {
11852 "abstract": true,
11853 "docs": {
11854 "custom": {
11855 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-responseheaderspolicy-xssprotection.html#cfn-cloudfront-responseheaderspolicy-xssprotection-reporturi"
11856 },
11857 "remarks": "You cannot specify a `ReportUri` when `ModeBlock` is `true` .\n\nFor more information about using a reporting URL, see [X-XSS-Protection](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-XSS-Protection) in the MDN Web Docs.",
11858 "stability": "external",
11859 "summary": "A reporting URI, which CloudFront uses as the value of the `report` directive in the `X-XSS-Protection` header."
11860 },
11861 "immutable": true,
11862 "locationInModule": {
11863 "filename": "lib/cloudfront.generated.ts",
11864 "line": 7237
11865 },
11866 "name": "reportUri",
11867 "optional": true,
11868 "type": {
11869 "primitive": "string"
11870 }
11871 }
11872 ],
11873 "symbolId": "lib/cloudfront.generated:CfnResponseHeadersPolicy.XSSProtectionProperty"
11874 },
11875 "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicyProps": {
11876 "assembly": "@aws-cdk/aws-cloudfront",
11877 "datatype": true,
11878 "docs": {
11879 "custom": {
11880 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-responseheaderspolicy.html",
11881 "exampleMetadata": "fixture=_generated"
11882 },
11883 "stability": "external",
11884 "summary": "Properties for defining a `CfnResponseHeadersPolicy`.",
11885 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst cfnResponseHeadersPolicyProps: cloudfront.CfnResponseHeadersPolicyProps = {\n responseHeadersPolicyConfig: {\n name: 'name',\n\n // the properties below are optional\n comment: 'comment',\n corsConfig: {\n accessControlAllowCredentials: false,\n accessControlAllowHeaders: {\n items: ['items'],\n },\n accessControlAllowMethods: {\n items: ['items'],\n },\n accessControlAllowOrigins: {\n items: ['items'],\n },\n originOverride: false,\n\n // the properties below are optional\n accessControlExposeHeaders: {\n items: ['items'],\n },\n accessControlMaxAgeSec: 123,\n },\n customHeadersConfig: {\n items: [{\n header: 'header',\n override: false,\n value: 'value',\n }],\n },\n securityHeadersConfig: {\n contentSecurityPolicy: {\n contentSecurityPolicy: 'contentSecurityPolicy',\n override: false,\n },\n contentTypeOptions: {\n override: false,\n },\n frameOptions: {\n frameOption: 'frameOption',\n override: false,\n },\n referrerPolicy: {\n override: false,\n referrerPolicy: 'referrerPolicy',\n },\n strictTransportSecurity: {\n accessControlMaxAgeSec: 123,\n override: false,\n\n // the properties below are optional\n includeSubdomains: false,\n preload: false,\n },\n xssProtection: {\n override: false,\n protection: false,\n\n // the properties below are optional\n modeBlock: false,\n reportUri: 'reportUri',\n },\n },\n },\n};"
11886 },
11887 "fqn": "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicyProps",
11888 "kind": "interface",
11889 "locationInModule": {
11890 "filename": "lib/cloudfront.generated.ts",
11891 "line": 5794
11892 },
11893 "name": "CfnResponseHeadersPolicyProps",
11894 "properties": [
11895 {
11896 "abstract": true,
11897 "docs": {
11898 "custom": {
11899 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-responseheaderspolicy.html#cfn-cloudfront-responseheaderspolicy-responseheaderspolicyconfig"
11900 },
11901 "remarks": "A response headers policy contains information about a set of HTTP response headers and their values. CloudFront adds the headers in the policy to HTTP responses that it sends for requests that match a cache behavior that’s associated with the policy.",
11902 "stability": "external",
11903 "summary": "A response headers policy configuration."
11904 },
11905 "immutable": true,
11906 "locationInModule": {
11907 "filename": "lib/cloudfront.generated.ts",
11908 "line": 5803
11909 },
11910 "name": "responseHeadersPolicyConfig",
11911 "type": {
11912 "union": {
11913 "types": [
11914 {
11915 "fqn": "@aws-cdk/core.IResolvable"
11916 },
11917 {
11918 "fqn": "@aws-cdk/aws-cloudfront.CfnResponseHeadersPolicy.ResponseHeadersPolicyConfigProperty"
11919 }
11920 ]
11921 }
11922 }
11923 }
11924 ],
11925 "symbolId": "lib/cloudfront.generated:CfnResponseHeadersPolicyProps"
11926 },
11927 "@aws-cdk/aws-cloudfront.CfnStreamingDistribution": {
11928 "assembly": "@aws-cdk/aws-cloudfront",
11929 "base": "@aws-cdk/core.CfnResource",
11930 "docs": {
11931 "custom": {
11932 "cloudformationResource": "AWS::CloudFront::StreamingDistribution",
11933 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-streamingdistribution.html",
11934 "exampleMetadata": "fixture=_generated"
11935 },
11936 "remarks": "This resource is deprecated. Amazon CloudFront is deprecating real-time messaging protocol (RTMP) distributions on December 31, 2020. For more information, [read the announcement](https://docs.aws.amazon.com/ann.jspa?annID=7356) on the Amazon CloudFront discussion forum.",
11937 "stability": "external",
11938 "summary": "A CloudFormation `AWS::CloudFront::StreamingDistribution`.",
11939 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst cfnStreamingDistribution = new cloudfront.CfnStreamingDistribution(this, 'MyCfnStreamingDistribution', {\n streamingDistributionConfig: {\n comment: 'comment',\n enabled: false,\n s3Origin: {\n domainName: 'domainName',\n originAccessIdentity: 'originAccessIdentity',\n },\n trustedSigners: {\n enabled: false,\n\n // the properties below are optional\n awsAccountNumbers: ['awsAccountNumbers'],\n },\n\n // the properties below are optional\n aliases: ['aliases'],\n logging: {\n bucket: 'bucket',\n enabled: false,\n prefix: 'prefix',\n },\n priceClass: 'priceClass',\n },\n tags: [{\n key: 'key',\n value: 'value',\n }],\n});"
11940 },
11941 "fqn": "@aws-cdk/aws-cloudfront.CfnStreamingDistribution",
11942 "initializer": {
11943 "docs": {
11944 "stability": "external",
11945 "summary": "Create a new `AWS::CloudFront::StreamingDistribution`."
11946 },
11947 "locationInModule": {
11948 "filename": "lib/cloudfront.generated.ts",
11949 "line": 7437
11950 },
11951 "parameters": [
11952 {
11953 "docs": {
11954 "summary": "- scope in which this resource is defined."
11955 },
11956 "name": "scope",
11957 "type": {
11958 "fqn": "@aws-cdk/core.Construct"
11959 }
11960 },
11961 {
11962 "docs": {
11963 "summary": "- scoped id of the resource."
11964 },
11965 "name": "id",
11966 "type": {
11967 "primitive": "string"
11968 }
11969 },
11970 {
11971 "docs": {
11972 "summary": "- resource properties."
11973 },
11974 "name": "props",
11975 "type": {
11976 "fqn": "@aws-cdk/aws-cloudfront.CfnStreamingDistributionProps"
11977 }
11978 }
11979 ]
11980 },
11981 "interfaces": [
11982 "@aws-cdk/core.IInspectable"
11983 ],
11984 "kind": "class",
11985 "locationInModule": {
11986 "filename": "lib/cloudfront.generated.ts",
11987 "line": 7385
11988 },
11989 "methods": [
11990 {
11991 "docs": {
11992 "stability": "external",
11993 "summary": "Examines the CloudFormation resource and discloses attributes."
11994 },
11995 "locationInModule": {
11996 "filename": "lib/cloudfront.generated.ts",
11997 "line": 7453
11998 },
11999 "name": "inspect",
12000 "overrides": "@aws-cdk/core.IInspectable",
12001 "parameters": [
12002 {
12003 "docs": {
12004 "summary": "- tree inspector to collect and process attributes."
12005 },
12006 "name": "inspector",
12007 "type": {
12008 "fqn": "@aws-cdk/core.TreeInspector"
12009 }
12010 }
12011 ]
12012 },
12013 {
12014 "docs": {
12015 "stability": "external"
12016 },
12017 "locationInModule": {
12018 "filename": "lib/cloudfront.generated.ts",
12019 "line": 7465
12020 },
12021 "name": "renderProperties",
12022 "overrides": "@aws-cdk/core.CfnResource",
12023 "parameters": [
12024 {
12025 "name": "props",
12026 "type": {
12027 "collection": {
12028 "elementtype": {
12029 "primitive": "any"
12030 },
12031 "kind": "map"
12032 }
12033 }
12034 }
12035 ],
12036 "protected": true,
12037 "returns": {
12038 "type": {
12039 "collection": {
12040 "elementtype": {
12041 "primitive": "any"
12042 },
12043 "kind": "map"
12044 }
12045 }
12046 }
12047 }
12048 ],
12049 "name": "CfnStreamingDistribution",
12050 "properties": [
12051 {
12052 "const": true,
12053 "docs": {
12054 "stability": "external",
12055 "summary": "The CloudFormation resource type name for this resource class."
12056 },
12057 "immutable": true,
12058 "locationInModule": {
12059 "filename": "lib/cloudfront.generated.ts",
12060 "line": 7389
12061 },
12062 "name": "CFN_RESOURCE_TYPE_NAME",
12063 "static": true,
12064 "type": {
12065 "primitive": "string"
12066 }
12067 },
12068 {
12069 "docs": {
12070 "custom": {
12071 "cloudformationAttribute": "DomainName"
12072 },
12073 "stability": "external",
12074 "summary": "The domain name of the resource, such as `d111111abcdef8.cloudfront.net` ."
12075 },
12076 "immutable": true,
12077 "locationInModule": {
12078 "filename": "lib/cloudfront.generated.ts",
12079 "line": 7414
12080 },
12081 "name": "attrDomainName",
12082 "type": {
12083 "primitive": "string"
12084 }
12085 },
12086 {
12087 "docs": {
12088 "stability": "external"
12089 },
12090 "immutable": true,
12091 "locationInModule": {
12092 "filename": "lib/cloudfront.generated.ts",
12093 "line": 7458
12094 },
12095 "name": "cfnProperties",
12096 "overrides": "@aws-cdk/core.CfnResource",
12097 "protected": true,
12098 "type": {
12099 "collection": {
12100 "elementtype": {
12101 "primitive": "any"
12102 },
12103 "kind": "map"
12104 }
12105 }
12106 },
12107 {
12108 "docs": {
12109 "custom": {
12110 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-streamingdistribution.html#cfn-cloudfront-streamingdistribution-tags"
12111 },
12112 "stability": "external",
12113 "summary": "A complex type that contains zero or more `Tag` elements."
12114 },
12115 "immutable": true,
12116 "locationInModule": {
12117 "filename": "lib/cloudfront.generated.ts",
12118 "line": 7428
12119 },
12120 "name": "tags",
12121 "type": {
12122 "fqn": "@aws-cdk/core.TagManager"
12123 }
12124 },
12125 {
12126 "docs": {
12127 "custom": {
12128 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-streamingdistribution.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig"
12129 },
12130 "stability": "external",
12131 "summary": "The current configuration information for the RTMP distribution."
12132 },
12133 "locationInModule": {
12134 "filename": "lib/cloudfront.generated.ts",
12135 "line": 7421
12136 },
12137 "name": "streamingDistributionConfig",
12138 "type": {
12139 "union": {
12140 "types": [
12141 {
12142 "fqn": "@aws-cdk/core.IResolvable"
12143 },
12144 {
12145 "fqn": "@aws-cdk/aws-cloudfront.CfnStreamingDistribution.StreamingDistributionConfigProperty"
12146 }
12147 ]
12148 }
12149 }
12150 }
12151 ],
12152 "symbolId": "lib/cloudfront.generated:CfnStreamingDistribution"
12153 },
12154 "@aws-cdk/aws-cloudfront.CfnStreamingDistribution.LoggingProperty": {
12155 "assembly": "@aws-cdk/aws-cloudfront",
12156 "datatype": true,
12157 "docs": {
12158 "custom": {
12159 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-logging.html",
12160 "exampleMetadata": "fixture=_generated"
12161 },
12162 "stability": "external",
12163 "summary": "A complex type that controls whether access logs are written for the streaming distribution.",
12164 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst loggingProperty: cloudfront.CfnStreamingDistribution.LoggingProperty = {\n bucket: 'bucket',\n enabled: false,\n prefix: 'prefix',\n};"
12165 },
12166 "fqn": "@aws-cdk/aws-cloudfront.CfnStreamingDistribution.LoggingProperty",
12167 "kind": "interface",
12168 "locationInModule": {
12169 "filename": "lib/cloudfront.generated.ts",
12170 "line": 7479
12171 },
12172 "name": "LoggingProperty",
12173 "namespace": "CfnStreamingDistribution",
12174 "properties": [
12175 {
12176 "abstract": true,
12177 "docs": {
12178 "custom": {
12179 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-logging.html#cfn-cloudfront-streamingdistribution-logging-bucket"
12180 },
12181 "stability": "external",
12182 "summary": "The Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com` ."
12183 },
12184 "immutable": true,
12185 "locationInModule": {
12186 "filename": "lib/cloudfront.generated.ts",
12187 "line": 7485
12188 },
12189 "name": "bucket",
12190 "type": {
12191 "primitive": "string"
12192 }
12193 },
12194 {
12195 "abstract": true,
12196 "docs": {
12197 "custom": {
12198 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-logging.html#cfn-cloudfront-streamingdistribution-logging-enabled"
12199 },
12200 "remarks": "If you don't want to enable logging when you create a streaming distribution or if you want to disable logging for an existing streaming distribution, specify `false` for `Enabled` , and specify `empty Bucket` and `Prefix` elements. If you specify `false` for `Enabled` but you specify values for `Bucket` and `Prefix` , the values are automatically deleted.",
12201 "stability": "external",
12202 "summary": "Specifies whether you want CloudFront to save access logs to an Amazon S3 bucket."
12203 },
12204 "immutable": true,
12205 "locationInModule": {
12206 "filename": "lib/cloudfront.generated.ts",
12207 "line": 7491
12208 },
12209 "name": "enabled",
12210 "type": {
12211 "union": {
12212 "types": [
12213 {
12214 "primitive": "boolean"
12215 },
12216 {
12217 "fqn": "@aws-cdk/core.IResolvable"
12218 }
12219 ]
12220 }
12221 }
12222 },
12223 {
12224 "abstract": true,
12225 "docs": {
12226 "custom": {
12227 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-logging.html#cfn-cloudfront-streamingdistribution-logging-prefix"
12228 },
12229 "remarks": "If you want to enable logging, but you don't want to specify a prefix, you still must include an empty `Prefix` element in the `Logging` element.",
12230 "stability": "external",
12231 "summary": "An optional string that you want CloudFront to prefix to the access log filenames for this streaming distribution, for example, `myprefix/` ."
12232 },
12233 "immutable": true,
12234 "locationInModule": {
12235 "filename": "lib/cloudfront.generated.ts",
12236 "line": 7497
12237 },
12238 "name": "prefix",
12239 "type": {
12240 "primitive": "string"
12241 }
12242 }
12243 ],
12244 "symbolId": "lib/cloudfront.generated:CfnStreamingDistribution.LoggingProperty"
12245 },
12246 "@aws-cdk/aws-cloudfront.CfnStreamingDistribution.S3OriginProperty": {
12247 "assembly": "@aws-cdk/aws-cloudfront",
12248 "datatype": true,
12249 "docs": {
12250 "custom": {
12251 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-s3origin.html",
12252 "exampleMetadata": "fixture=_generated"
12253 },
12254 "stability": "external",
12255 "summary": "A complex type that contains information about the Amazon S3 bucket from which you want CloudFront to get your media files for distribution.",
12256 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst s3OriginProperty: cloudfront.CfnStreamingDistribution.S3OriginProperty = {\n domainName: 'domainName',\n originAccessIdentity: 'originAccessIdentity',\n};"
12257 },
12258 "fqn": "@aws-cdk/aws-cloudfront.CfnStreamingDistribution.S3OriginProperty",
12259 "kind": "interface",
12260 "locationInModule": {
12261 "filename": "lib/cloudfront.generated.ts",
12262 "line": 7567
12263 },
12264 "name": "S3OriginProperty",
12265 "namespace": "CfnStreamingDistribution",
12266 "properties": [
12267 {
12268 "abstract": true,
12269 "docs": {
12270 "custom": {
12271 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-s3origin.html#cfn-cloudfront-streamingdistribution-s3origin-domainname"
12272 },
12273 "stability": "external",
12274 "summary": "The DNS name of the Amazon S3 origin."
12275 },
12276 "immutable": true,
12277 "locationInModule": {
12278 "filename": "lib/cloudfront.generated.ts",
12279 "line": 7573
12280 },
12281 "name": "domainName",
12282 "type": {
12283 "primitive": "string"
12284 }
12285 },
12286 {
12287 "abstract": true,
12288 "docs": {
12289 "custom": {
12290 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-s3origin.html#cfn-cloudfront-streamingdistribution-s3origin-originaccessidentity"
12291 },
12292 "remarks": "Use an origin access identity to configure the distribution so that end users can only access objects in an Amazon S3 bucket through CloudFront.\n\nIf you want end users to be able to access objects using either the CloudFront URL or the Amazon S3 URL, specify an empty `OriginAccessIdentity` element.\n\nTo delete the origin access identity from an existing distribution, update the distribution configuration and include an empty `OriginAccessIdentity` element.\n\nTo replace the origin access identity, update the distribution configuration and specify the new origin access identity.\n\nFor more information, see [Using an Origin Access Identity to Restrict Access to Your Amazon S3 Content](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-restricting-access-to-s3.html) in the *Amazon CloudFront Developer Guide* .",
12293 "stability": "external",
12294 "summary": "The CloudFront origin access identity to associate with the distribution."
12295 },
12296 "immutable": true,
12297 "locationInModule": {
12298 "filename": "lib/cloudfront.generated.ts",
12299 "line": 7587
12300 },
12301 "name": "originAccessIdentity",
12302 "type": {
12303 "primitive": "string"
12304 }
12305 }
12306 ],
12307 "symbolId": "lib/cloudfront.generated:CfnStreamingDistribution.S3OriginProperty"
12308 },
12309 "@aws-cdk/aws-cloudfront.CfnStreamingDistribution.StreamingDistributionConfigProperty": {
12310 "assembly": "@aws-cdk/aws-cloudfront",
12311 "datatype": true,
12312 "docs": {
12313 "custom": {
12314 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.html",
12315 "exampleMetadata": "fixture=_generated"
12316 },
12317 "stability": "external",
12318 "summary": "The RTMP distribution's configuration information.",
12319 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst streamingDistributionConfigProperty: cloudfront.CfnStreamingDistribution.StreamingDistributionConfigProperty = {\n comment: 'comment',\n enabled: false,\n s3Origin: {\n domainName: 'domainName',\n originAccessIdentity: 'originAccessIdentity',\n },\n trustedSigners: {\n enabled: false,\n\n // the properties below are optional\n awsAccountNumbers: ['awsAccountNumbers'],\n },\n\n // the properties below are optional\n aliases: ['aliases'],\n logging: {\n bucket: 'bucket',\n enabled: false,\n prefix: 'prefix',\n },\n priceClass: 'priceClass',\n};"
12320 },
12321 "fqn": "@aws-cdk/aws-cloudfront.CfnStreamingDistribution.StreamingDistributionConfigProperty",
12322 "kind": "interface",
12323 "locationInModule": {
12324 "filename": "lib/cloudfront.generated.ts",
12325 "line": 7653
12326 },
12327 "name": "StreamingDistributionConfigProperty",
12328 "namespace": "CfnStreamingDistribution",
12329 "properties": [
12330 {
12331 "abstract": true,
12332 "docs": {
12333 "custom": {
12334 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-comment"
12335 },
12336 "stability": "external",
12337 "summary": "Any comments you want to include about the streaming distribution."
12338 },
12339 "immutable": true,
12340 "locationInModule": {
12341 "filename": "lib/cloudfront.generated.ts",
12342 "line": 7665
12343 },
12344 "name": "comment",
12345 "type": {
12346 "primitive": "string"
12347 }
12348 },
12349 {
12350 "abstract": true,
12351 "docs": {
12352 "custom": {
12353 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-enabled"
12354 },
12355 "stability": "external",
12356 "summary": "Whether the streaming distribution is enabled to accept user requests for content."
12357 },
12358 "immutable": true,
12359 "locationInModule": {
12360 "filename": "lib/cloudfront.generated.ts",
12361 "line": 7671
12362 },
12363 "name": "enabled",
12364 "type": {
12365 "union": {
12366 "types": [
12367 {
12368 "primitive": "boolean"
12369 },
12370 {
12371 "fqn": "@aws-cdk/core.IResolvable"
12372 }
12373 ]
12374 }
12375 }
12376 },
12377 {
12378 "abstract": true,
12379 "docs": {
12380 "custom": {
12381 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-s3origin"
12382 },
12383 "stability": "external",
12384 "summary": "A complex type that contains information about the Amazon S3 bucket from which you want CloudFront to get your media files for distribution."
12385 },
12386 "immutable": true,
12387 "locationInModule": {
12388 "filename": "lib/cloudfront.generated.ts",
12389 "line": 7689
12390 },
12391 "name": "s3Origin",
12392 "type": {
12393 "union": {
12394 "types": [
12395 {
12396 "fqn": "@aws-cdk/core.IResolvable"
12397 },
12398 {
12399 "fqn": "@aws-cdk/aws-cloudfront.CfnStreamingDistribution.S3OriginProperty"
12400 }
12401 ]
12402 }
12403 }
12404 },
12405 {
12406 "abstract": true,
12407 "docs": {
12408 "custom": {
12409 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-trustedsigners"
12410 },
12411 "remarks": "If you want the distribution to use signed URLs, include this element; if you want the distribution to use public URLs, remove this element. For more information, see [Serving Private Content through CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html) in the *Amazon CloudFront Developer Guide* .",
12412 "stability": "external",
12413 "summary": "A complex type that specifies any AWS accounts that you want to permit to create signed URLs for private content."
12414 },
12415 "immutable": true,
12416 "locationInModule": {
12417 "filename": "lib/cloudfront.generated.ts",
12418 "line": 7695
12419 },
12420 "name": "trustedSigners",
12421 "type": {
12422 "union": {
12423 "types": [
12424 {
12425 "fqn": "@aws-cdk/core.IResolvable"
12426 },
12427 {
12428 "fqn": "@aws-cdk/aws-cloudfront.CfnStreamingDistribution.TrustedSignersProperty"
12429 }
12430 ]
12431 }
12432 }
12433 },
12434 {
12435 "abstract": true,
12436 "docs": {
12437 "custom": {
12438 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-aliases"
12439 },
12440 "stability": "external",
12441 "summary": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this streaming distribution."
12442 },
12443 "immutable": true,
12444 "locationInModule": {
12445 "filename": "lib/cloudfront.generated.ts",
12446 "line": 7659
12447 },
12448 "name": "aliases",
12449 "optional": true,
12450 "type": {
12451 "collection": {
12452 "elementtype": {
12453 "primitive": "string"
12454 },
12455 "kind": "array"
12456 }
12457 }
12458 },
12459 {
12460 "abstract": true,
12461 "docs": {
12462 "custom": {
12463 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-logging"
12464 },
12465 "stability": "external",
12466 "summary": "A complex type that controls whether access logs are written for the streaming distribution."
12467 },
12468 "immutable": true,
12469 "locationInModule": {
12470 "filename": "lib/cloudfront.generated.ts",
12471 "line": 7677
12472 },
12473 "name": "logging",
12474 "optional": true,
12475 "type": {
12476 "union": {
12477 "types": [
12478 {
12479 "fqn": "@aws-cdk/core.IResolvable"
12480 },
12481 {
12482 "fqn": "@aws-cdk/aws-cloudfront.CfnStreamingDistribution.LoggingProperty"
12483 }
12484 ]
12485 }
12486 }
12487 },
12488 {
12489 "abstract": true,
12490 "docs": {
12491 "custom": {
12492 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-priceclass"
12493 },
12494 "stability": "external",
12495 "summary": "A complex type that contains information about price class for this streaming distribution."
12496 },
12497 "immutable": true,
12498 "locationInModule": {
12499 "filename": "lib/cloudfront.generated.ts",
12500 "line": 7683
12501 },
12502 "name": "priceClass",
12503 "optional": true,
12504 "type": {
12505 "primitive": "string"
12506 }
12507 }
12508 ],
12509 "symbolId": "lib/cloudfront.generated:CfnStreamingDistribution.StreamingDistributionConfigProperty"
12510 },
12511 "@aws-cdk/aws-cloudfront.CfnStreamingDistribution.TrustedSignersProperty": {
12512 "assembly": "@aws-cdk/aws-cloudfront",
12513 "datatype": true,
12514 "docs": {
12515 "custom": {
12516 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-trustedsigners.html",
12517 "exampleMetadata": "fixture=_generated"
12518 },
12519 "stability": "external",
12520 "summary": "A list of AWS accounts whose public keys CloudFront can use to verify the signatures of signed URLs and signed cookies.",
12521 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst trustedSignersProperty: cloudfront.CfnStreamingDistribution.TrustedSignersProperty = {\n enabled: false,\n\n // the properties below are optional\n awsAccountNumbers: ['awsAccountNumbers'],\n};"
12522 },
12523 "fqn": "@aws-cdk/aws-cloudfront.CfnStreamingDistribution.TrustedSignersProperty",
12524 "kind": "interface",
12525 "locationInModule": {
12526 "filename": "lib/cloudfront.generated.ts",
12527 "line": 7778
12528 },
12529 "name": "TrustedSignersProperty",
12530 "namespace": "CfnStreamingDistribution",
12531 "properties": [
12532 {
12533 "abstract": true,
12534 "docs": {
12535 "custom": {
12536 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-trustedsigners.html#cfn-cloudfront-streamingdistribution-trustedsigners-enabled"
12537 },
12538 "remarks": "If not, this field is `false` .",
12539 "stability": "external",
12540 "summary": "This field is `true` if any of the AWS accounts have public keys that CloudFront can use to verify the signatures of signed URLs and signed cookies."
12541 },
12542 "immutable": true,
12543 "locationInModule": {
12544 "filename": "lib/cloudfront.generated.ts",
12545 "line": 7790
12546 },
12547 "name": "enabled",
12548 "type": {
12549 "union": {
12550 "types": [
12551 {
12552 "primitive": "boolean"
12553 },
12554 {
12555 "fqn": "@aws-cdk/core.IResolvable"
12556 }
12557 ]
12558 }
12559 }
12560 },
12561 {
12562 "abstract": true,
12563 "docs": {
12564 "custom": {
12565 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-streamingdistribution-trustedsigners.html#cfn-cloudfront-streamingdistribution-trustedsigners-awsaccountnumbers"
12566 },
12567 "remarks": "If the AWS account that owns the key pairs is the same account that owns the CloudFront distribution, the value of this field is `self` .",
12568 "stability": "external",
12569 "summary": "An AWS account number that contains active CloudFront key pairs that CloudFront can use to verify the signatures of signed URLs and signed cookies."
12570 },
12571 "immutable": true,
12572 "locationInModule": {
12573 "filename": "lib/cloudfront.generated.ts",
12574 "line": 7784
12575 },
12576 "name": "awsAccountNumbers",
12577 "optional": true,
12578 "type": {
12579 "collection": {
12580 "elementtype": {
12581 "primitive": "string"
12582 },
12583 "kind": "array"
12584 }
12585 }
12586 }
12587 ],
12588 "symbolId": "lib/cloudfront.generated:CfnStreamingDistribution.TrustedSignersProperty"
12589 },
12590 "@aws-cdk/aws-cloudfront.CfnStreamingDistributionProps": {
12591 "assembly": "@aws-cdk/aws-cloudfront",
12592 "datatype": true,
12593 "docs": {
12594 "custom": {
12595 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-streamingdistribution.html",
12596 "exampleMetadata": "fixture=_generated"
12597 },
12598 "stability": "external",
12599 "summary": "Properties for defining a `CfnStreamingDistribution`.",
12600 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst cfnStreamingDistributionProps: cloudfront.CfnStreamingDistributionProps = {\n streamingDistributionConfig: {\n comment: 'comment',\n enabled: false,\n s3Origin: {\n domainName: 'domainName',\n originAccessIdentity: 'originAccessIdentity',\n },\n trustedSigners: {\n enabled: false,\n\n // the properties below are optional\n awsAccountNumbers: ['awsAccountNumbers'],\n },\n\n // the properties below are optional\n aliases: ['aliases'],\n logging: {\n bucket: 'bucket',\n enabled: false,\n prefix: 'prefix',\n },\n priceClass: 'priceClass',\n },\n tags: [{\n key: 'key',\n value: 'value',\n }],\n};"
12601 },
12602 "fqn": "@aws-cdk/aws-cloudfront.CfnStreamingDistributionProps",
12603 "kind": "interface",
12604 "locationInModule": {
12605 "filename": "lib/cloudfront.generated.ts",
12606 "line": 7308
12607 },
12608 "name": "CfnStreamingDistributionProps",
12609 "properties": [
12610 {
12611 "abstract": true,
12612 "docs": {
12613 "custom": {
12614 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-streamingdistribution.html#cfn-cloudfront-streamingdistribution-streamingdistributionconfig"
12615 },
12616 "stability": "external",
12617 "summary": "The current configuration information for the RTMP distribution."
12618 },
12619 "immutable": true,
12620 "locationInModule": {
12621 "filename": "lib/cloudfront.generated.ts",
12622 "line": 7315
12623 },
12624 "name": "streamingDistributionConfig",
12625 "type": {
12626 "union": {
12627 "types": [
12628 {
12629 "fqn": "@aws-cdk/core.IResolvable"
12630 },
12631 {
12632 "fqn": "@aws-cdk/aws-cloudfront.CfnStreamingDistribution.StreamingDistributionConfigProperty"
12633 }
12634 ]
12635 }
12636 }
12637 },
12638 {
12639 "abstract": true,
12640 "docs": {
12641 "custom": {
12642 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-streamingdistribution.html#cfn-cloudfront-streamingdistribution-tags"
12643 },
12644 "stability": "external",
12645 "summary": "A complex type that contains zero or more `Tag` elements."
12646 },
12647 "immutable": true,
12648 "locationInModule": {
12649 "filename": "lib/cloudfront.generated.ts",
12650 "line": 7322
12651 },
12652 "name": "tags",
12653 "type": {
12654 "collection": {
12655 "elementtype": {
12656 "fqn": "@aws-cdk/core.CfnTag"
12657 },
12658 "kind": "array"
12659 }
12660 }
12661 }
12662 ],
12663 "symbolId": "lib/cloudfront.generated:CfnStreamingDistributionProps"
12664 },
12665 "@aws-cdk/aws-cloudfront.CloudFrontAllowedCachedMethods": {
12666 "assembly": "@aws-cdk/aws-cloudfront",
12667 "docs": {
12668 "stability": "stable",
12669 "summary": "Enums for the methods CloudFront can cache."
12670 },
12671 "fqn": "@aws-cdk/aws-cloudfront.CloudFrontAllowedCachedMethods",
12672 "kind": "enum",
12673 "locationInModule": {
12674 "filename": "lib/web-distribution.ts",
12675 "line": 347
12676 },
12677 "members": [
12678 {
12679 "docs": {
12680 "stability": "stable"
12681 },
12682 "name": "GET_HEAD"
12683 },
12684 {
12685 "docs": {
12686 "stability": "stable"
12687 },
12688 "name": "GET_HEAD_OPTIONS"
12689 }
12690 ],
12691 "name": "CloudFrontAllowedCachedMethods",
12692 "symbolId": "lib/web-distribution:CloudFrontAllowedCachedMethods"
12693 },
12694 "@aws-cdk/aws-cloudfront.CloudFrontAllowedMethods": {
12695 "assembly": "@aws-cdk/aws-cloudfront",
12696 "docs": {
12697 "stability": "stable",
12698 "summary": "An enum for the supported methods to a CloudFront distribution."
12699 },
12700 "fqn": "@aws-cdk/aws-cloudfront.CloudFrontAllowedMethods",
12701 "kind": "enum",
12702 "locationInModule": {
12703 "filename": "lib/web-distribution.ts",
12704 "line": 338
12705 },
12706 "members": [
12707 {
12708 "docs": {
12709 "stability": "stable"
12710 },
12711 "name": "GET_HEAD"
12712 },
12713 {
12714 "docs": {
12715 "stability": "stable"
12716 },
12717 "name": "GET_HEAD_OPTIONS"
12718 },
12719 {
12720 "docs": {
12721 "stability": "stable"
12722 },
12723 "name": "ALL"
12724 }
12725 ],
12726 "name": "CloudFrontAllowedMethods",
12727 "symbolId": "lib/web-distribution:CloudFrontAllowedMethods"
12728 },
12729 "@aws-cdk/aws-cloudfront.CloudFrontWebDistribution": {
12730 "assembly": "@aws-cdk/aws-cloudfront",
12731 "base": "@aws-cdk/core.Resource",
12732 "docs": {
12733 "custom": {
12734 "exampleMetadata": "infused",
12735 "resource": "AWS::CloudFront::Distribution"
12736 },
12737 "example": "declare const sourceBucket: s3.Bucket;\nconst viewerCertificate = cloudfront.ViewerCertificate.fromIamCertificate('MYIAMROLEIDENTIFIER', {\n aliases: ['MYALIAS'],\n});\n\nnew cloudfront.CloudFrontWebDistribution(this, 'MyCfWebDistribution', {\n originConfigs: [\n {\n s3OriginSource: {\n s3BucketSource: sourceBucket,\n },\n behaviors : [ {isDefaultBehavior: true} ],\n },\n ],\n viewerCertificate: viewerCertificate,\n});",
12738 "remarks": "CloudFront fronts user provided content and caches it at edge locations across the world.\n\nHere's how you can use this construct:\n\n```ts\nconst sourceBucket = new s3.Bucket(this, 'Bucket');\n\nconst distribution = new cloudfront.CloudFrontWebDistribution(this, 'MyDistribution', {\n originConfigs: [\n {\n s3OriginSource: {\n s3BucketSource: sourceBucket,\n },\n behaviors : [ {isDefaultBehavior: true}],\n },\n ],\n});\n```\n\nThis will create a CloudFront distribution that uses your S3Bucket as it's origin.\n\nYou can customize the distribution using additional properties from the CloudFrontWebDistributionProps interface.",
12739 "stability": "stable",
12740 "summary": "Amazon CloudFront is a global content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to your viewers with low latency and high transfer speeds."
12741 },
12742 "fqn": "@aws-cdk/aws-cloudfront.CloudFrontWebDistribution",
12743 "initializer": {
12744 "docs": {
12745 "stability": "stable"
12746 },
12747 "locationInModule": {
12748 "filename": "lib/web-distribution.ts",
12749 "line": 812
12750 },
12751 "parameters": [
12752 {
12753 "name": "scope",
12754 "type": {
12755 "fqn": "constructs.Construct"
12756 }
12757 },
12758 {
12759 "name": "id",
12760 "type": {
12761 "primitive": "string"
12762 }
12763 },
12764 {
12765 "name": "props",
12766 "type": {
12767 "fqn": "@aws-cdk/aws-cloudfront.CloudFrontWebDistributionProps"
12768 }
12769 }
12770 ]
12771 },
12772 "interfaces": [
12773 "@aws-cdk/aws-cloudfront.IDistribution"
12774 ],
12775 "kind": "class",
12776 "locationInModule": {
12777 "filename": "lib/web-distribution.ts",
12778 "line": 744
12779 },
12780 "methods": [
12781 {
12782 "docs": {
12783 "stability": "stable",
12784 "summary": "Creates a construct that represents an external (imported) distribution."
12785 },
12786 "locationInModule": {
12787 "filename": "lib/web-distribution.ts",
12788 "line": 749
12789 },
12790 "name": "fromDistributionAttributes",
12791 "parameters": [
12792 {
12793 "name": "scope",
12794 "type": {
12795 "fqn": "constructs.Construct"
12796 }
12797 },
12798 {
12799 "name": "id",
12800 "type": {
12801 "primitive": "string"
12802 }
12803 },
12804 {
12805 "name": "attrs",
12806 "type": {
12807 "fqn": "@aws-cdk/aws-cloudfront.CloudFrontWebDistributionAttributes"
12808 }
12809 }
12810 ],
12811 "returns": {
12812 "type": {
12813 "fqn": "@aws-cdk/aws-cloudfront.IDistribution"
12814 }
12815 },
12816 "static": true
12817 }
12818 ],
12819 "name": "CloudFrontWebDistribution",
12820 "properties": [
12821 {
12822 "docs": {
12823 "remarks": "If you are using aliases for your distribution, this is the domainName your DNS records should point to.\n(In Route53, you could create an ALIAS record to this value, for example.)",
12824 "stability": "stable",
12825 "summary": "The domain name created by CloudFront for this distribution."
12826 },
12827 "immutable": true,
12828 "locationInModule": {
12829 "filename": "lib/web-distribution.ts",
12830 "line": 784
12831 },
12832 "name": "distributionDomainName",
12833 "overrides": "@aws-cdk/aws-cloudfront.IDistribution",
12834 "type": {
12835 "primitive": "string"
12836 }
12837 },
12838 {
12839 "docs": {
12840 "stability": "stable",
12841 "summary": "The distribution ID for this distribution."
12842 },
12843 "immutable": true,
12844 "locationInModule": {
12845 "filename": "lib/web-distribution.ts",
12846 "line": 789
12847 },
12848 "name": "distributionId",
12849 "overrides": "@aws-cdk/aws-cloudfront.IDistribution",
12850 "type": {
12851 "primitive": "string"
12852 }
12853 },
12854 {
12855 "docs": {
12856 "deprecated": "- Use `distributionDomainName` instead.",
12857 "remarks": "If you are using aliases for your distribution, this is the domainName your DNS records should point to.\n(In Route53, you could create an ALIAS record to this value, for example.)",
12858 "stability": "deprecated",
12859 "summary": "The domain name created by CloudFront for this distribution."
12860 },
12861 "immutable": true,
12862 "locationInModule": {
12863 "filename": "lib/web-distribution.ts",
12864 "line": 777
12865 },
12866 "name": "domainName",
12867 "overrides": "@aws-cdk/aws-cloudfront.IDistribution",
12868 "type": {
12869 "primitive": "string"
12870 }
12871 },
12872 {
12873 "docs": {
12874 "remarks": "If logging is not enabled for this distribution - this property will be undefined.",
12875 "stability": "stable",
12876 "summary": "The logging bucket for this CloudFront distribution."
12877 },
12878 "immutable": true,
12879 "locationInModule": {
12880 "filename": "lib/web-distribution.ts",
12881 "line": 768
12882 },
12883 "name": "loggingBucket",
12884 "optional": true,
12885 "type": {
12886 "fqn": "@aws-cdk/aws-s3.IBucket"
12887 }
12888 }
12889 ],
12890 "symbolId": "lib/web-distribution:CloudFrontWebDistribution"
12891 },
12892 "@aws-cdk/aws-cloudfront.CloudFrontWebDistributionAttributes": {
12893 "assembly": "@aws-cdk/aws-cloudfront",
12894 "datatype": true,
12895 "docs": {
12896 "stability": "stable",
12897 "summary": "Attributes used to import a Distribution.",
12898 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst cloudFrontWebDistributionAttributes: cloudfront.CloudFrontWebDistributionAttributes = {\n distributionId: 'distributionId',\n domainName: 'domainName',\n};",
12899 "custom": {
12900 "exampleMetadata": "fixture=_generated"
12901 }
12902 },
12903 "fqn": "@aws-cdk/aws-cloudfront.CloudFrontWebDistributionAttributes",
12904 "kind": "interface",
12905 "locationInModule": {
12906 "filename": "lib/web-distribution.ts",
12907 "line": 700
12908 },
12909 "name": "CloudFrontWebDistributionAttributes",
12910 "properties": [
12911 {
12912 "abstract": true,
12913 "docs": {
12914 "custom": {
12915 "attribute": "true"
12916 },
12917 "stability": "stable",
12918 "summary": "The distribution ID for this distribution."
12919 },
12920 "immutable": true,
12921 "locationInModule": {
12922 "filename": "lib/web-distribution.ts",
12923 "line": 713
12924 },
12925 "name": "distributionId",
12926 "type": {
12927 "primitive": "string"
12928 }
12929 },
12930 {
12931 "abstract": true,
12932 "docs": {
12933 "custom": {
12934 "attribute": "true"
12935 },
12936 "stability": "stable",
12937 "summary": "The generated domain name of the Distribution, such as d111111abcdef8.cloudfront.net."
12938 },
12939 "immutable": true,
12940 "locationInModule": {
12941 "filename": "lib/web-distribution.ts",
12942 "line": 706
12943 },
12944 "name": "domainName",
12945 "type": {
12946 "primitive": "string"
12947 }
12948 }
12949 ],
12950 "symbolId": "lib/web-distribution:CloudFrontWebDistributionAttributes"
12951 },
12952 "@aws-cdk/aws-cloudfront.CloudFrontWebDistributionProps": {
12953 "assembly": "@aws-cdk/aws-cloudfront",
12954 "datatype": true,
12955 "docs": {
12956 "custom": {
12957 "exampleMetadata": "infused"
12958 },
12959 "example": "declare const sourceBucket: s3.Bucket;\nconst viewerCertificate = cloudfront.ViewerCertificate.fromIamCertificate('MYIAMROLEIDENTIFIER', {\n aliases: ['MYALIAS'],\n});\n\nnew cloudfront.CloudFrontWebDistribution(this, 'MyCfWebDistribution', {\n originConfigs: [\n {\n s3OriginSource: {\n s3BucketSource: sourceBucket,\n },\n behaviors : [ {isDefaultBehavior: true} ],\n },\n ],\n viewerCertificate: viewerCertificate,\n});",
12960 "stability": "stable"
12961 },
12962 "fqn": "@aws-cdk/aws-cloudfront.CloudFrontWebDistributionProps",
12963 "kind": "interface",
12964 "locationInModule": {
12965 "filename": "lib/web-distribution.ts",
12966 "line": 573
12967 },
12968 "name": "CloudFrontWebDistributionProps",
12969 "properties": [
12970 {
12971 "abstract": true,
12972 "docs": {
12973 "remarks": "Behaviors are a part of the origin.",
12974 "stability": "stable",
12975 "summary": "The origin configurations for this distribution."
12976 },
12977 "immutable": true,
12978 "locationInModule": {
12979 "filename": "lib/web-distribution.ts",
12980 "line": 635
12981 },
12982 "name": "originConfigs",
12983 "type": {
12984 "collection": {
12985 "elementtype": {
12986 "fqn": "@aws-cdk/aws-cloudfront.SourceConfiguration"
12987 },
12988 "kind": "array"
12989 }
12990 }
12991 },
12992 {
12993 "abstract": true,
12994 "docs": {
12995 "default": "- None.",
12996 "deprecated": "see {@link CloudFrontWebDistributionProps#viewerCertificate} with {@link ViewerCertificate#acmCertificate}",
12997 "stability": "deprecated",
12998 "summary": "AliasConfiguration is used to configured CloudFront to respond to requests on custom domain names."
12999 },
13000 "immutable": true,
13001 "locationInModule": {
13002 "filename": "lib/web-distribution.ts",
13003 "line": 581
13004 },
13005 "name": "aliasConfiguration",
13006 "optional": true,
13007 "type": {
13008 "fqn": "@aws-cdk/aws-cloudfront.AliasConfiguration"
13009 }
13010 },
13011 {
13012 "abstract": true,
13013 "docs": {
13014 "default": "- No comment is added to distribution.",
13015 "stability": "stable",
13016 "summary": "A comment for this distribution in the CloudFront console."
13017 },
13018 "immutable": true,
13019 "locationInModule": {
13020 "filename": "lib/web-distribution.ts",
13021 "line": 588
13022 },
13023 "name": "comment",
13024 "optional": true,
13025 "type": {
13026 "primitive": "string"
13027 }
13028 },
13029 {
13030 "abstract": true,
13031 "docs": {
13032 "default": "- \"index.html\" is served.",
13033 "stability": "stable",
13034 "summary": "The default object to serve."
13035 },
13036 "immutable": true,
13037 "locationInModule": {
13038 "filename": "lib/web-distribution.ts",
13039 "line": 602
13040 },
13041 "name": "defaultRootObject",
13042 "optional": true,
13043 "type": {
13044 "primitive": "string"
13045 }
13046 },
13047 {
13048 "abstract": true,
13049 "docs": {
13050 "default": "true",
13051 "stability": "stable",
13052 "summary": "Enable or disable the distribution."
13053 },
13054 "immutable": true,
13055 "locationInModule": {
13056 "filename": "lib/web-distribution.ts",
13057 "line": 595
13058 },
13059 "name": "enabled",
13060 "optional": true,
13061 "type": {
13062 "primitive": "boolean"
13063 }
13064 },
13065 {
13066 "abstract": true,
13067 "docs": {
13068 "default": "true",
13069 "stability": "stable",
13070 "summary": "If your distribution should have IPv6 enabled."
13071 },
13072 "immutable": true,
13073 "locationInModule": {
13074 "filename": "lib/web-distribution.ts",
13075 "line": 609
13076 },
13077 "name": "enableIpV6",
13078 "optional": true,
13079 "type": {
13080 "primitive": "boolean"
13081 }
13082 },
13083 {
13084 "abstract": true,
13085 "docs": {
13086 "default": "- No custom error configuration.",
13087 "remarks": "By default, CloudFront does not replace HTTP status codes in the 4xx and 5xx range\nwith custom error messages. CloudFront does not cache HTTP status codes.",
13088 "stability": "stable",
13089 "summary": "How CloudFront should handle requests that are not successful (eg PageNotFound)."
13090 },
13091 "immutable": true,
13092 "locationInModule": {
13093 "filename": "lib/web-distribution.ts",
13094 "line": 654
13095 },
13096 "name": "errorConfigurations",
13097 "optional": true,
13098 "type": {
13099 "collection": {
13100 "elementtype": {
13101 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.CustomErrorResponseProperty"
13102 },
13103 "kind": "array"
13104 }
13105 }
13106 },
13107 {
13108 "abstract": true,
13109 "docs": {
13110 "default": "No geo restriction",
13111 "stability": "stable",
13112 "summary": "Controls the countries in which your content is distributed."
13113 },
13114 "immutable": true,
13115 "locationInModule": {
13116 "filename": "lib/web-distribution.ts",
13117 "line": 687
13118 },
13119 "name": "geoRestriction",
13120 "optional": true,
13121 "type": {
13122 "fqn": "@aws-cdk/aws-cloudfront.GeoRestriction"
13123 }
13124 },
13125 {
13126 "abstract": true,
13127 "docs": {
13128 "default": "HttpVersion.HTTP2",
13129 "stability": "stable",
13130 "summary": "The max supported HTTP Versions."
13131 },
13132 "immutable": true,
13133 "locationInModule": {
13134 "filename": "lib/web-distribution.ts",
13135 "line": 616
13136 },
13137 "name": "httpVersion",
13138 "optional": true,
13139 "type": {
13140 "fqn": "@aws-cdk/aws-cloudfront.HttpVersion"
13141 }
13142 },
13143 {
13144 "abstract": true,
13145 "docs": {
13146 "default": "- no logging is enabled by default.",
13147 "remarks": "You can pass an empty object ({}) to have us auto create a bucket for logging.\nOmission of this property indicates no logging is to be enabled.",
13148 "stability": "stable",
13149 "summary": "Optional - if we should enable logging."
13150 },
13151 "immutable": true,
13152 "locationInModule": {
13153 "filename": "lib/web-distribution.ts",
13154 "line": 644
13155 },
13156 "name": "loggingConfig",
13157 "optional": true,
13158 "type": {
13159 "fqn": "@aws-cdk/aws-cloudfront.LoggingConfiguration"
13160 }
13161 },
13162 {
13163 "abstract": true,
13164 "docs": {
13165 "default": "PriceClass.PRICE_CLASS_100 the cheapest option for CloudFront is picked by default.",
13166 "stability": "stable",
13167 "summary": "The price class for the distribution (this impacts how many locations CloudFront uses for your distribution, and billing)."
13168 },
13169 "immutable": true,
13170 "locationInModule": {
13171 "filename": "lib/web-distribution.ts",
13172 "line": 623
13173 },
13174 "name": "priceClass",
13175 "optional": true,
13176 "type": {
13177 "fqn": "@aws-cdk/aws-cloudfront.PriceClass"
13178 }
13179 },
13180 {
13181 "abstract": true,
13182 "docs": {
13183 "default": "ViewerCertificate.fromCloudFrontDefaultCertificate()",
13184 "see": "https://aws.amazon.com/premiumsupport/knowledge-center/custom-ssl-certificate-cloudfront/",
13185 "stability": "stable",
13186 "summary": "Specifies whether you want viewers to use HTTP or HTTPS to request your objects, whether you're using an alternate domain name with HTTPS, and if so, if you're using AWS Certificate Manager (ACM) or a third-party certificate authority."
13187 },
13188 "immutable": true,
13189 "locationInModule": {
13190 "filename": "lib/web-distribution.ts",
13191 "line": 680
13192 },
13193 "name": "viewerCertificate",
13194 "optional": true,
13195 "type": {
13196 "fqn": "@aws-cdk/aws-cloudfront.ViewerCertificate"
13197 }
13198 },
13199 {
13200 "abstract": true,
13201 "docs": {
13202 "default": "RedirectToHTTPs",
13203 "stability": "stable",
13204 "summary": "The default viewer policy for incoming clients."
13205 },
13206 "immutable": true,
13207 "locationInModule": {
13208 "filename": "lib/web-distribution.ts",
13209 "line": 630
13210 },
13211 "name": "viewerProtocolPolicy",
13212 "optional": true,
13213 "type": {
13214 "fqn": "@aws-cdk/aws-cloudfront.ViewerProtocolPolicy"
13215 }
13216 },
13217 {
13218 "abstract": true,
13219 "docs": {
13220 "default": "- No AWS Web Application Firewall web access control list (web ACL).",
13221 "remarks": "To specify a web ACL created using the latest version of AWS WAF, use the ACL ARN, for example\n`arn:aws:wafv2:us-east-1:123456789012:global/webacl/ExampleWebACL/473e64fd-f30b-4765-81a0-62ad96dd167a`.\n\nTo specify a web ACL created using AWS WAF Classic, use the ACL ID, for example `473e64fd-f30b-4765-81a0-62ad96dd167a`.",
13222 "see": "https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_CreateDistribution.html#API_CreateDistribution_RequestParameters.",
13223 "stability": "stable",
13224 "summary": "Unique identifier that specifies the AWS WAF web ACL to associate with this CloudFront distribution."
13225 },
13226 "immutable": true,
13227 "locationInModule": {
13228 "filename": "lib/web-distribution.ts",
13229 "line": 669
13230 },
13231 "name": "webACLId",
13232 "optional": true,
13233 "type": {
13234 "primitive": "string"
13235 }
13236 }
13237 ],
13238 "symbolId": "lib/web-distribution:CloudFrontWebDistributionProps"
13239 },
13240 "@aws-cdk/aws-cloudfront.CustomOriginConfig": {
13241 "assembly": "@aws-cdk/aws-cloudfront",
13242 "datatype": true,
13243 "docs": {
13244 "custom": {
13245 "exampleMetadata": "infused"
13246 },
13247 "example": "declare const sourceBucket: s3.Bucket;\ndeclare const oai: cloudfront.OriginAccessIdentity;\n\nnew cloudfront.CloudFrontWebDistribution(this, 'MyCfWebDistribution', {\n originConfigs: [\n {\n s3OriginSource: {\n s3BucketSource: sourceBucket,\n originAccessIdentity: oai,\n },\n behaviors: [ {isDefaultBehavior: true}],\n },\n {\n customOriginSource: {\n domainName: 'MYALIAS',\n },\n behaviors: [{ pathPattern: '/somewhere' }]\n }\n ],\n});",
13248 "stability": "stable",
13249 "summary": "A custom origin configuration."
13250 },
13251 "fqn": "@aws-cdk/aws-cloudfront.CustomOriginConfig",
13252 "kind": "interface",
13253 "locationInModule": {
13254 "filename": "lib/web-distribution.ts",
13255 "line": 220
13256 },
13257 "name": "CustomOriginConfig",
13258 "properties": [
13259 {
13260 "abstract": true,
13261 "docs": {
13262 "remarks": "Should not include the path - that should be in the parent SourceConfiguration",
13263 "stability": "stable",
13264 "summary": "The domain name of the custom origin."
13265 },
13266 "immutable": true,
13267 "locationInModule": {
13268 "filename": "lib/web-distribution.ts",
13269 "line": 224
13270 },
13271 "name": "domainName",
13272 "type": {
13273 "primitive": "string"
13274 }
13275 },
13276 {
13277 "abstract": true,
13278 "docs": {
13279 "default": "OriginSslPolicy.TLS_V1_2",
13280 "stability": "stable",
13281 "summary": "The SSL versions to use when interacting with the origin."
13282 },
13283 "immutable": true,
13284 "locationInModule": {
13285 "filename": "lib/web-distribution.ts",
13286 "line": 266
13287 },
13288 "name": "allowedOriginSSLVersions",
13289 "optional": true,
13290 "type": {
13291 "collection": {
13292 "elementtype": {
13293 "fqn": "@aws-cdk/aws-cloudfront.OriginSslPolicy"
13294 },
13295 "kind": "array"
13296 }
13297 }
13298 },
13299 {
13300 "abstract": true,
13301 "docs": {
13302 "default": "80",
13303 "stability": "stable",
13304 "summary": "The origin HTTP port."
13305 },
13306 "immutable": true,
13307 "locationInModule": {
13308 "filename": "lib/web-distribution.ts",
13309 "line": 231
13310 },
13311 "name": "httpPort",
13312 "optional": true,
13313 "type": {
13314 "primitive": "number"
13315 }
13316 },
13317 {
13318 "abstract": true,
13319 "docs": {
13320 "default": "443",
13321 "stability": "stable",
13322 "summary": "The origin HTTPS port."
13323 },
13324 "immutable": true,
13325 "locationInModule": {
13326 "filename": "lib/web-distribution.ts",
13327 "line": 238
13328 },
13329 "name": "httpsPort",
13330 "optional": true,
13331 "type": {
13332 "primitive": "number"
13333 }
13334 },
13335 {
13336 "abstract": true,
13337 "docs": {
13338 "default": "- No additional headers are passed.",
13339 "stability": "stable",
13340 "summary": "Any additional headers to pass to the origin."
13341 },
13342 "immutable": true,
13343 "locationInModule": {
13344 "filename": "lib/web-distribution.ts",
13345 "line": 280
13346 },
13347 "name": "originHeaders",
13348 "optional": true,
13349 "type": {
13350 "collection": {
13351 "elementtype": {
13352 "primitive": "string"
13353 },
13354 "kind": "map"
13355 }
13356 }
13357 },
13358 {
13359 "abstract": true,
13360 "docs": {
13361 "default": "Duration.seconds(5)",
13362 "stability": "stable",
13363 "summary": "The keep alive timeout when making calls in seconds."
13364 },
13365 "immutable": true,
13366 "locationInModule": {
13367 "filename": "lib/web-distribution.ts",
13368 "line": 245
13369 },
13370 "name": "originKeepaliveTimeout",
13371 "optional": true,
13372 "type": {
13373 "fqn": "@aws-cdk/core.Duration"
13374 }
13375 },
13376 {
13377 "abstract": true,
13378 "docs": {
13379 "default": "/",
13380 "stability": "stable",
13381 "summary": "The relative path to the origin root to use for sources."
13382 },
13383 "immutable": true,
13384 "locationInModule": {
13385 "filename": "lib/web-distribution.ts",
13386 "line": 273
13387 },
13388 "name": "originPath",
13389 "optional": true,
13390 "type": {
13391 "primitive": "string"
13392 }
13393 },
13394 {
13395 "abstract": true,
13396 "docs": {
13397 "default": "OriginProtocolPolicy.HttpsOnly",
13398 "stability": "stable",
13399 "summary": "The protocol (http or https) policy to use when interacting with the origin."
13400 },
13401 "immutable": true,
13402 "locationInModule": {
13403 "filename": "lib/web-distribution.ts",
13404 "line": 252
13405 },
13406 "name": "originProtocolPolicy",
13407 "optional": true,
13408 "type": {
13409 "fqn": "@aws-cdk/aws-cloudfront.OriginProtocolPolicy"
13410 }
13411 },
13412 {
13413 "abstract": true,
13414 "docs": {
13415 "default": "Duration.seconds(30)",
13416 "stability": "stable",
13417 "summary": "The read timeout when calling the origin in seconds."
13418 },
13419 "immutable": true,
13420 "locationInModule": {
13421 "filename": "lib/web-distribution.ts",
13422 "line": 259
13423 },
13424 "name": "originReadTimeout",
13425 "optional": true,
13426 "type": {
13427 "fqn": "@aws-cdk/core.Duration"
13428 }
13429 },
13430 {
13431 "abstract": true,
13432 "docs": {
13433 "default": "- origin shield not enabled",
13434 "stability": "stable",
13435 "summary": "When you enable Origin Shield in the AWS Region that has the lowest latency to your origin, you can get better network performance."
13436 },
13437 "immutable": true,
13438 "locationInModule": {
13439 "filename": "lib/web-distribution.ts",
13440 "line": 287
13441 },
13442 "name": "originShieldRegion",
13443 "optional": true,
13444 "type": {
13445 "primitive": "string"
13446 }
13447 }
13448 ],
13449 "symbolId": "lib/web-distribution:CustomOriginConfig"
13450 },
13451 "@aws-cdk/aws-cloudfront.Distribution": {
13452 "assembly": "@aws-cdk/aws-cloudfront",
13453 "base": "@aws-cdk/core.Resource",
13454 "docs": {
13455 "custom": {
13456 "exampleMetadata": "infused"
13457 },
13458 "example": "// Adding an existing Lambda@Edge function created in a different stack\n// to a CloudFront distribution.\ndeclare const s3Bucket: s3.Bucket;\nconst functionVersion = lambda.Version.fromVersionArn(this, 'Version', 'arn:aws:lambda:us-east-1:123456789012:function:functionName:1');\n\nnew cloudfront.Distribution(this, 'distro', {\n defaultBehavior: {\n origin: new origins.S3Origin(s3Bucket),\n edgeLambdas: [\n {\n functionVersion,\n eventType: cloudfront.LambdaEdgeEventType.VIEWER_REQUEST,\n },\n ],\n },\n});",
13459 "stability": "stable",
13460 "summary": "A CloudFront distribution with associated origin(s) and caching behavior(s)."
13461 },
13462 "fqn": "@aws-cdk/aws-cloudfront.Distribution",
13463 "initializer": {
13464 "docs": {
13465 "stability": "stable"
13466 },
13467 "locationInModule": {
13468 "filename": "lib/distribution.ts",
13469 "line": 279
13470 },
13471 "parameters": [
13472 {
13473 "name": "scope",
13474 "type": {
13475 "fqn": "constructs.Construct"
13476 }
13477 },
13478 {
13479 "name": "id",
13480 "type": {
13481 "primitive": "string"
13482 }
13483 },
13484 {
13485 "name": "props",
13486 "type": {
13487 "fqn": "@aws-cdk/aws-cloudfront.DistributionProps"
13488 }
13489 }
13490 ]
13491 },
13492 "interfaces": [
13493 "@aws-cdk/aws-cloudfront.IDistribution"
13494 ],
13495 "kind": "class",
13496 "locationInModule": {
13497 "filename": "lib/distribution.ts",
13498 "line": 247
13499 },
13500 "methods": [
13501 {
13502 "docs": {
13503 "stability": "stable",
13504 "summary": "Creates a Distribution construct that represents an external (imported) distribution."
13505 },
13506 "locationInModule": {
13507 "filename": "lib/distribution.ts",
13508 "line": 252
13509 },
13510 "name": "fromDistributionAttributes",
13511 "parameters": [
13512 {
13513 "name": "scope",
13514 "type": {
13515 "fqn": "constructs.Construct"
13516 }
13517 },
13518 {
13519 "name": "id",
13520 "type": {
13521 "primitive": "string"
13522 }
13523 },
13524 {
13525 "name": "attrs",
13526 "type": {
13527 "fqn": "@aws-cdk/aws-cloudfront.DistributionAttributes"
13528 }
13529 }
13530 ],
13531 "returns": {
13532 "type": {
13533 "fqn": "@aws-cdk/aws-cloudfront.IDistribution"
13534 }
13535 },
13536 "static": true
13537 },
13538 {
13539 "docs": {
13540 "stability": "stable",
13541 "summary": "Adds a new behavior to this distribution for the given pathPattern."
13542 },
13543 "locationInModule": {
13544 "filename": "lib/distribution.ts",
13545 "line": 344
13546 },
13547 "name": "addBehavior",
13548 "parameters": [
13549 {
13550 "docs": {
13551 "summary": "the path pattern (e.g., 'images/*') that specifies which requests to apply the behavior to."
13552 },
13553 "name": "pathPattern",
13554 "type": {
13555 "primitive": "string"
13556 }
13557 },
13558 {
13559 "docs": {
13560 "summary": "the origin to use for this behavior."
13561 },
13562 "name": "origin",
13563 "type": {
13564 "fqn": "@aws-cdk/aws-cloudfront.IOrigin"
13565 }
13566 },
13567 {
13568 "docs": {
13569 "summary": "the options for the behavior at this path."
13570 },
13571 "name": "behaviorOptions",
13572 "optional": true,
13573 "type": {
13574 "fqn": "@aws-cdk/aws-cloudfront.AddBehaviorOptions"
13575 }
13576 }
13577 ]
13578 }
13579 ],
13580 "name": "Distribution",
13581 "properties": [
13582 {
13583 "docs": {
13584 "stability": "stable",
13585 "summary": "The domain name of the Distribution, such as d111111abcdef8.cloudfront.net."
13586 },
13587 "immutable": true,
13588 "locationInModule": {
13589 "filename": "lib/distribution.ts",
13590 "line": 268
13591 },
13592 "name": "distributionDomainName",
13593 "overrides": "@aws-cdk/aws-cloudfront.IDistribution",
13594 "type": {
13595 "primitive": "string"
13596 }
13597 },
13598 {
13599 "docs": {
13600 "stability": "stable",
13601 "summary": "The distribution ID for this distribution."
13602 },
13603 "immutable": true,
13604 "locationInModule": {
13605 "filename": "lib/distribution.ts",
13606 "line": 269
13607 },
13608 "name": "distributionId",
13609 "overrides": "@aws-cdk/aws-cloudfront.IDistribution",
13610 "type": {
13611 "primitive": "string"
13612 }
13613 },
13614 {
13615 "docs": {
13616 "stability": "stable",
13617 "summary": "The domain name of the Distribution, such as d111111abcdef8.cloudfront.net."
13618 },
13619 "immutable": true,
13620 "locationInModule": {
13621 "filename": "lib/distribution.ts",
13622 "line": 267
13623 },
13624 "name": "domainName",
13625 "overrides": "@aws-cdk/aws-cloudfront.IDistribution",
13626 "type": {
13627 "primitive": "string"
13628 }
13629 }
13630 ],
13631 "symbolId": "lib/distribution:Distribution"
13632 },
13633 "@aws-cdk/aws-cloudfront.DistributionAttributes": {
13634 "assembly": "@aws-cdk/aws-cloudfront",
13635 "datatype": true,
13636 "docs": {
13637 "custom": {
13638 "exampleMetadata": "infused"
13639 },
13640 "example": "// Using a reference to an imported Distribution\nconst distribution = cloudfront.Distribution.fromDistributionAttributes(this, 'ImportedDist', {\n domainName: 'd111111abcdef8.cloudfront.net',\n distributionId: '012345ABCDEF',\n});",
13641 "stability": "stable",
13642 "summary": "Attributes used to import a Distribution."
13643 },
13644 "fqn": "@aws-cdk/aws-cloudfront.DistributionAttributes",
13645 "kind": "interface",
13646 "locationInModule": {
13647 "filename": "lib/distribution.ts",
13648 "line": 51
13649 },
13650 "name": "DistributionAttributes",
13651 "properties": [
13652 {
13653 "abstract": true,
13654 "docs": {
13655 "custom": {
13656 "attribute": "true"
13657 },
13658 "stability": "stable",
13659 "summary": "The distribution ID for this distribution."
13660 },
13661 "immutable": true,
13662 "locationInModule": {
13663 "filename": "lib/distribution.ts",
13664 "line": 64
13665 },
13666 "name": "distributionId",
13667 "type": {
13668 "primitive": "string"
13669 }
13670 },
13671 {
13672 "abstract": true,
13673 "docs": {
13674 "custom": {
13675 "attribute": "true"
13676 },
13677 "stability": "stable",
13678 "summary": "The generated domain name of the Distribution, such as d111111abcdef8.cloudfront.net."
13679 },
13680 "immutable": true,
13681 "locationInModule": {
13682 "filename": "lib/distribution.ts",
13683 "line": 57
13684 },
13685 "name": "domainName",
13686 "type": {
13687 "primitive": "string"
13688 }
13689 }
13690 ],
13691 "symbolId": "lib/distribution:DistributionAttributes"
13692 },
13693 "@aws-cdk/aws-cloudfront.DistributionProps": {
13694 "assembly": "@aws-cdk/aws-cloudfront",
13695 "datatype": true,
13696 "docs": {
13697 "custom": {
13698 "exampleMetadata": "infused"
13699 },
13700 "example": "// Adding an existing Lambda@Edge function created in a different stack\n// to a CloudFront distribution.\ndeclare const s3Bucket: s3.Bucket;\nconst functionVersion = lambda.Version.fromVersionArn(this, 'Version', 'arn:aws:lambda:us-east-1:123456789012:function:functionName:1');\n\nnew cloudfront.Distribution(this, 'distro', {\n defaultBehavior: {\n origin: new origins.S3Origin(s3Bucket),\n edgeLambdas: [\n {\n functionVersion,\n eventType: cloudfront.LambdaEdgeEventType.VIEWER_REQUEST,\n },\n ],\n },\n});",
13701 "stability": "stable",
13702 "summary": "Properties for a Distribution."
13703 },
13704 "fqn": "@aws-cdk/aws-cloudfront.DistributionProps",
13705 "kind": "interface",
13706 "locationInModule": {
13707 "filename": "lib/distribution.ts",
13708 "line": 75
13709 },
13710 "name": "DistributionProps",
13711 "properties": [
13712 {
13713 "abstract": true,
13714 "docs": {
13715 "stability": "stable",
13716 "summary": "The default behavior for the distribution."
13717 },
13718 "immutable": true,
13719 "locationInModule": {
13720 "filename": "lib/distribution.ts",
13721 "line": 79
13722 },
13723 "name": "defaultBehavior",
13724 "type": {
13725 "fqn": "@aws-cdk/aws-cloudfront.BehaviorOptions"
13726 }
13727 },
13728 {
13729 "abstract": true,
13730 "docs": {
13731 "default": "- no additional behaviors are added.",
13732 "stability": "stable",
13733 "summary": "Additional behaviors for the distribution, mapped by the pathPattern that specifies which requests to apply the behavior to."
13734 },
13735 "immutable": true,
13736 "locationInModule": {
13737 "filename": "lib/distribution.ts",
13738 "line": 86
13739 },
13740 "name": "additionalBehaviors",
13741 "optional": true,
13742 "type": {
13743 "collection": {
13744 "elementtype": {
13745 "fqn": "@aws-cdk/aws-cloudfront.BehaviorOptions"
13746 },
13747 "kind": "map"
13748 }
13749 }
13750 },
13751 {
13752 "abstract": true,
13753 "docs": {
13754 "default": "- the CloudFront wildcard certificate (*.cloudfront.net) will be used.",
13755 "remarks": "The certificate must be located in N. Virginia (us-east-1).",
13756 "stability": "stable",
13757 "summary": "A certificate to associate with the distribution."
13758 },
13759 "immutable": true,
13760 "locationInModule": {
13761 "filename": "lib/distribution.ts",
13762 "line": 93
13763 },
13764 "name": "certificate",
13765 "optional": true,
13766 "type": {
13767 "fqn": "@aws-cdk/aws-certificatemanager.ICertificate"
13768 }
13769 },
13770 {
13771 "abstract": true,
13772 "docs": {
13773 "default": "- no comment",
13774 "stability": "stable",
13775 "summary": "Any comments you want to include about the distribution."
13776 },
13777 "immutable": true,
13778 "locationInModule": {
13779 "filename": "lib/distribution.ts",
13780 "line": 100
13781 },
13782 "name": "comment",
13783 "optional": true,
13784 "type": {
13785 "primitive": "string"
13786 }
13787 },
13788 {
13789 "abstract": true,
13790 "docs": {
13791 "default": "- no default root object",
13792 "stability": "stable",
13793 "summary": "The object that you want CloudFront to request from your origin (for example, index.html) when a viewer requests the root URL for your distribution. If no default object is set, the request goes to the origin's root (e.g., example.com/)."
13794 },
13795 "immutable": true,
13796 "locationInModule": {
13797 "filename": "lib/distribution.ts",
13798 "line": 109
13799 },
13800 "name": "defaultRootObject",
13801 "optional": true,
13802 "type": {
13803 "primitive": "string"
13804 }
13805 },
13806 {
13807 "abstract": true,
13808 "docs": {
13809 "default": "- The distribution will only support the default generated name (e.g., d111111abcdef8.cloudfront.net)",
13810 "remarks": "If you want to use your own domain name, such as www.example.com, instead of the cloudfront.net domain name,\nyou can add an alternate domain name to your distribution. If you attach a certificate to the distribution,\nyou must add (at least one of) the domain names of the certificate to this list.",
13811 "stability": "stable",
13812 "summary": "Alternative domain names for this distribution."
13813 },
13814 "immutable": true,
13815 "locationInModule": {
13816 "filename": "lib/distribution.ts",
13817 "line": 120
13818 },
13819 "name": "domainNames",
13820 "optional": true,
13821 "type": {
13822 "collection": {
13823 "elementtype": {
13824 "primitive": "string"
13825 },
13826 "kind": "array"
13827 }
13828 }
13829 },
13830 {
13831 "abstract": true,
13832 "docs": {
13833 "default": "true",
13834 "stability": "stable",
13835 "summary": "Enable or disable the distribution."
13836 },
13837 "immutable": true,
13838 "locationInModule": {
13839 "filename": "lib/distribution.ts",
13840 "line": 127
13841 },
13842 "name": "enabled",
13843 "optional": true,
13844 "type": {
13845 "primitive": "boolean"
13846 }
13847 },
13848 {
13849 "abstract": true,
13850 "docs": {
13851 "default": "true",
13852 "remarks": "If you specify false, CloudFront responds to IPv6 DNS requests with the DNS response code NOERROR and with no IP addresses.\nThis allows viewers to submit a second request, for an IPv4 address for your distribution.",
13853 "stability": "stable",
13854 "summary": "Whether CloudFront will respond to IPv6 DNS requests with an IPv6 address."
13855 },
13856 "immutable": true,
13857 "locationInModule": {
13858 "filename": "lib/distribution.ts",
13859 "line": 137
13860 },
13861 "name": "enableIpv6",
13862 "optional": true,
13863 "type": {
13864 "primitive": "boolean"
13865 }
13866 },
13867 {
13868 "abstract": true,
13869 "docs": {
13870 "default": "- false, unless `logBucket` is specified.",
13871 "stability": "stable",
13872 "summary": "Enable access logging for the distribution."
13873 },
13874 "immutable": true,
13875 "locationInModule": {
13876 "filename": "lib/distribution.ts",
13877 "line": 144
13878 },
13879 "name": "enableLogging",
13880 "optional": true,
13881 "type": {
13882 "primitive": "boolean"
13883 }
13884 },
13885 {
13886 "abstract": true,
13887 "docs": {
13888 "default": "- No custom error responses.",
13889 "stability": "stable",
13890 "summary": "How CloudFront should handle requests that are not successful (e.g., PageNotFound)."
13891 },
13892 "immutable": true,
13893 "locationInModule": {
13894 "filename": "lib/distribution.ts",
13895 "line": 212
13896 },
13897 "name": "errorResponses",
13898 "optional": true,
13899 "type": {
13900 "collection": {
13901 "elementtype": {
13902 "fqn": "@aws-cdk/aws-cloudfront.ErrorResponse"
13903 },
13904 "kind": "array"
13905 }
13906 }
13907 },
13908 {
13909 "abstract": true,
13910 "docs": {
13911 "default": "- No geographic restrictions",
13912 "stability": "stable",
13913 "summary": "Controls the countries in which your content is distributed."
13914 },
13915 "immutable": true,
13916 "locationInModule": {
13917 "filename": "lib/distribution.ts",
13918 "line": 151
13919 },
13920 "name": "geoRestriction",
13921 "optional": true,
13922 "type": {
13923 "fqn": "@aws-cdk/aws-cloudfront.GeoRestriction"
13924 }
13925 },
13926 {
13927 "abstract": true,
13928 "docs": {
13929 "default": "HttpVersion.HTTP2",
13930 "remarks": "For viewers and CloudFront to use HTTP/2, viewers must support TLS 1.2 or later, and must support server name identification (SNI).",
13931 "stability": "stable",
13932 "summary": "Specify the maximum HTTP version that you want viewers to use to communicate with CloudFront."
13933 },
13934 "immutable": true,
13935 "locationInModule": {
13936 "filename": "lib/distribution.ts",
13937 "line": 160
13938 },
13939 "name": "httpVersion",
13940 "optional": true,
13941 "type": {
13942 "fqn": "@aws-cdk/aws-cloudfront.HttpVersion"
13943 }
13944 },
13945 {
13946 "abstract": true,
13947 "docs": {
13948 "default": "- A bucket is created if `enableLogging` is true",
13949 "stability": "stable",
13950 "summary": "The Amazon S3 bucket to store the access logs in."
13951 },
13952 "immutable": true,
13953 "locationInModule": {
13954 "filename": "lib/distribution.ts",
13955 "line": 167
13956 },
13957 "name": "logBucket",
13958 "optional": true,
13959 "type": {
13960 "fqn": "@aws-cdk/aws-s3.IBucket"
13961 }
13962 },
13963 {
13964 "abstract": true,
13965 "docs": {
13966 "default": "- no prefix",
13967 "stability": "stable",
13968 "summary": "An optional string that you want CloudFront to prefix to the access log filenames for this distribution."
13969 },
13970 "immutable": true,
13971 "locationInModule": {
13972 "filename": "lib/distribution.ts",
13973 "line": 181
13974 },
13975 "name": "logFilePrefix",
13976 "optional": true,
13977 "type": {
13978 "primitive": "string"
13979 }
13980 },
13981 {
13982 "abstract": true,
13983 "docs": {
13984 "default": "false",
13985 "stability": "stable",
13986 "summary": "Specifies whether you want CloudFront to include cookies in access logs."
13987 },
13988 "immutable": true,
13989 "locationInModule": {
13990 "filename": "lib/distribution.ts",
13991 "line": 174
13992 },
13993 "name": "logIncludesCookies",
13994 "optional": true,
13995 "type": {
13996 "primitive": "boolean"
13997 }
13998 },
13999 {
14000 "abstract": true,
14001 "docs": {
14002 "custom": {
14003 "aws-cdk": "/aws-cloudfront:defaultSecurityPolicyTLSv1.2_2021' feature flag is set; otherwise, SecurityPolicyProtocol.TLS_V1_2_2019."
14004 },
14005 "default": "- SecurityPolicyProtocol.TLS_V1_2_2021 if the '",
14006 "remarks": "CloudFront serves your objects only to browsers or devices that support at\nleast the SSL version that you specify.",
14007 "stability": "stable",
14008 "summary": "The minimum version of the SSL protocol that you want CloudFront to use for HTTPS connections."
14009 },
14010 "immutable": true,
14011 "locationInModule": {
14012 "filename": "lib/distribution.ts",
14013 "line": 222
14014 },
14015 "name": "minimumProtocolVersion",
14016 "optional": true,
14017 "type": {
14018 "fqn": "@aws-cdk/aws-cloudfront.SecurityPolicyProtocol"
14019 }
14020 },
14021 {
14022 "abstract": true,
14023 "docs": {
14024 "default": "PriceClass.PRICE_CLASS_ALL",
14025 "remarks": "If you specify PriceClass_All, CloudFront responds to requests for your objects from all CloudFront edge locations.\nIf you specify a price class other than PriceClass_All, CloudFront serves your objects from the CloudFront edge location\nthat has the lowest latency among the edge locations in your price class.",
14026 "stability": "stable",
14027 "summary": "The price class that corresponds with the maximum price that you want to pay for CloudFront service."
14028 },
14029 "immutable": true,
14030 "locationInModule": {
14031 "filename": "lib/distribution.ts",
14032 "line": 191
14033 },
14034 "name": "priceClass",
14035 "optional": true,
14036 "type": {
14037 "fqn": "@aws-cdk/aws-cloudfront.PriceClass"
14038 }
14039 },
14040 {
14041 "abstract": true,
14042 "docs": {
14043 "default": "SSLMethod.SNI",
14044 "remarks": "Server Name Indication (SNI) - is an extension to the TLS computer networking protocol by which a client indicates\nwhich hostname it is attempting to connect to at the start of the handshaking process. This allows a server to present\nmultiple certificates on the same IP address and TCP port number and hence allows multiple secure (HTTPS) websites\n(or any other service over TLS) to be served by the same IP address without requiring all those sites to use the same certificate.\n\nCloudFront can use SNI to host multiple distributions on the same IP - which a large majority of clients will support.\n\nIf your clients cannot support SNI however - CloudFront can use dedicated IPs for your distribution - but there is a prorated monthly charge for\nusing this feature. By default, we use SNI - but you can optionally enable dedicated IPs (VIP).\n\nSee the CloudFront SSL for more details about pricing : https://aws.amazon.com/cloudfront/custom-ssl-domains/",
14045 "stability": "stable",
14046 "summary": "The SSL method CloudFront will use for your distribution."
14047 },
14048 "immutable": true,
14049 "locationInModule": {
14050 "filename": "lib/distribution.ts",
14051 "line": 241
14052 },
14053 "name": "sslSupportMethod",
14054 "optional": true,
14055 "type": {
14056 "fqn": "@aws-cdk/aws-cloudfront.SSLMethod"
14057 }
14058 },
14059 {
14060 "abstract": true,
14061 "docs": {
14062 "default": "- No AWS Web Application Firewall web access control list (web ACL).",
14063 "remarks": "To specify a web ACL created using the latest version of AWS WAF, use the ACL ARN, for example\n`arn:aws:wafv2:us-east-1:123456789012:global/webacl/ExampleWebACL/473e64fd-f30b-4765-81a0-62ad96dd167a`.\nTo specify a web ACL created using AWS WAF Classic, use the ACL ID, for example `473e64fd-f30b-4765-81a0-62ad96dd167a`.",
14064 "see": "https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_CreateDistribution.html#API_CreateDistribution_RequestParameters.",
14065 "stability": "stable",
14066 "summary": "Unique identifier that specifies the AWS WAF web ACL to associate with this CloudFront distribution."
14067 },
14068 "immutable": true,
14069 "locationInModule": {
14070 "filename": "lib/distribution.ts",
14071 "line": 205
14072 },
14073 "name": "webAclId",
14074 "optional": true,
14075 "type": {
14076 "primitive": "string"
14077 }
14078 }
14079 ],
14080 "symbolId": "lib/distribution:DistributionProps"
14081 },
14082 "@aws-cdk/aws-cloudfront.EdgeLambda": {
14083 "assembly": "@aws-cdk/aws-cloudfront",
14084 "datatype": true,
14085 "docs": {
14086 "remarks": "The type of the {@link AddBehaviorOptions.edgeLambdas} property.",
14087 "stability": "stable",
14088 "summary": "Represents a Lambda function version and event type when using Lambda@Edge.",
14089 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nimport * as lambda from '@aws-cdk/aws-lambda';\n\ndeclare const version: lambda.Version;\nconst edgeLambda: cloudfront.EdgeLambda = {\n eventType: cloudfront.LambdaEdgeEventType.ORIGIN_REQUEST,\n functionVersion: version,\n\n // the properties below are optional\n includeBody: false,\n};",
14090 "custom": {
14091 "exampleMetadata": "fixture=_generated"
14092 }
14093 },
14094 "fqn": "@aws-cdk/aws-cloudfront.EdgeLambda",
14095 "kind": "interface",
14096 "locationInModule": {
14097 "filename": "lib/distribution.ts",
14098 "line": 662
14099 },
14100 "name": "EdgeLambda",
14101 "properties": [
14102 {
14103 "abstract": true,
14104 "docs": {
14105 "stability": "stable",
14106 "summary": "The type of event in response to which should the function be invoked."
14107 },
14108 "immutable": true,
14109 "locationInModule": {
14110 "filename": "lib/distribution.ts",
14111 "line": 671
14112 },
14113 "name": "eventType",
14114 "type": {
14115 "fqn": "@aws-cdk/aws-cloudfront.LambdaEdgeEventType"
14116 }
14117 },
14118 {
14119 "abstract": true,
14120 "docs": {
14121 "remarks": "**Note**: it's not possible to use the '$LATEST' function version for Lambda@Edge!",
14122 "stability": "stable",
14123 "summary": "The version of the Lambda function that will be invoked."
14124 },
14125 "immutable": true,
14126 "locationInModule": {
14127 "filename": "lib/distribution.ts",
14128 "line": 668
14129 },
14130 "name": "functionVersion",
14131 "type": {
14132 "fqn": "@aws-cdk/aws-lambda.IVersion"
14133 }
14134 },
14135 {
14136 "abstract": true,
14137 "docs": {
14138 "default": "false",
14139 "remarks": "Only valid for \"request\" event types (`ORIGIN_REQUEST` or `VIEWER_REQUEST`).\nSee https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/lambda-include-body-access.html",
14140 "stability": "stable",
14141 "summary": "Allows a Lambda function to have read access to the body content."
14142 },
14143 "immutable": true,
14144 "locationInModule": {
14145 "filename": "lib/distribution.ts",
14146 "line": 680
14147 },
14148 "name": "includeBody",
14149 "optional": true,
14150 "type": {
14151 "primitive": "boolean"
14152 }
14153 }
14154 ],
14155 "symbolId": "lib/distribution:EdgeLambda"
14156 },
14157 "@aws-cdk/aws-cloudfront.ErrorResponse": {
14158 "assembly": "@aws-cdk/aws-cloudfront",
14159 "datatype": true,
14160 "docs": {
14161 "stability": "stable",
14162 "summary": "Options for configuring custom error responses.",
14163 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nimport * as cdk from '@aws-cdk/core';\nconst errorResponse: cloudfront.ErrorResponse = {\n httpStatus: 123,\n\n // the properties below are optional\n responseHttpStatus: 123,\n responsePagePath: 'responsePagePath',\n ttl: cdk.Duration.minutes(30),\n};",
14164 "custom": {
14165 "exampleMetadata": "fixture=_generated"
14166 }
14167 },
14168 "fqn": "@aws-cdk/aws-cloudfront.ErrorResponse",
14169 "kind": "interface",
14170 "locationInModule": {
14171 "filename": "lib/distribution.ts",
14172 "line": 603
14173 },
14174 "name": "ErrorResponse",
14175 "properties": [
14176 {
14177 "abstract": true,
14178 "docs": {
14179 "stability": "stable",
14180 "summary": "The HTTP status code for which you want to specify a custom error page and/or a caching duration."
14181 },
14182 "immutable": true,
14183 "locationInModule": {
14184 "filename": "lib/distribution.ts",
14185 "line": 613
14186 },
14187 "name": "httpStatus",
14188 "type": {
14189 "primitive": "number"
14190 }
14191 },
14192 {
14193 "abstract": true,
14194 "docs": {
14195 "default": "- the error code will be returned as the response code.",
14196 "remarks": "If you specify a value for `responseHttpStatus`, you must also specify a value for `responsePagePath`.",
14197 "stability": "stable",
14198 "summary": "The HTTP status code that you want CloudFront to return to the viewer along with the custom error page."
14199 },
14200 "immutable": true,
14201 "locationInModule": {
14202 "filename": "lib/distribution.ts",
14203 "line": 621
14204 },
14205 "name": "responseHttpStatus",
14206 "optional": true,
14207 "type": {
14208 "primitive": "number"
14209 }
14210 },
14211 {
14212 "abstract": true,
14213 "docs": {
14214 "default": "- the default CloudFront response is shown.",
14215 "stability": "stable",
14216 "summary": "The path to the custom error page that you want CloudFront to return to a viewer when your origin returns the `httpStatus`, for example, /4xx-errors/403-forbidden.html."
14217 },
14218 "immutable": true,
14219 "locationInModule": {
14220 "filename": "lib/distribution.ts",
14221 "line": 628
14222 },
14223 "name": "responsePagePath",
14224 "optional": true,
14225 "type": {
14226 "primitive": "string"
14227 }
14228 },
14229 {
14230 "abstract": true,
14231 "docs": {
14232 "default": "- the default caching TTL behavior applies",
14233 "stability": "stable",
14234 "summary": "The minimum amount of time, in seconds, that you want CloudFront to cache the HTTP status code specified in ErrorCode."
14235 },
14236 "immutable": true,
14237 "locationInModule": {
14238 "filename": "lib/distribution.ts",
14239 "line": 609
14240 },
14241 "name": "ttl",
14242 "optional": true,
14243 "type": {
14244 "fqn": "@aws-cdk/core.Duration"
14245 }
14246 }
14247 ],
14248 "symbolId": "lib/distribution:ErrorResponse"
14249 },
14250 "@aws-cdk/aws-cloudfront.FailoverStatusCode": {
14251 "assembly": "@aws-cdk/aws-cloudfront",
14252 "docs": {
14253 "custom": {
14254 "exampleMetadata": "infused"
14255 },
14256 "example": "// Configuring origin fallback options for the CloudFrontWebDistribution\nnew cloudfront.CloudFrontWebDistribution(this, 'ADistribution', {\n originConfigs: [\n {\n s3OriginSource: {\n s3BucketSource: s3.Bucket.fromBucketName(this, 'aBucket', 'myoriginbucket'),\n originPath: '/',\n originHeaders: {\n 'myHeader': '42',\n },\n originShieldRegion: 'us-west-2',\n },\n failoverS3OriginSource: {\n s3BucketSource: s3.Bucket.fromBucketName(this, 'aBucketFallback', 'myoriginbucketfallback'),\n originPath: '/somewhere',\n originHeaders: {\n 'myHeader2': '21',\n },\n originShieldRegion: 'us-east-1',\n },\n failoverCriteriaStatusCodes: [cloudfront.FailoverStatusCode.INTERNAL_SERVER_ERROR],\n behaviors: [\n {\n isDefaultBehavior: true,\n },\n ],\n },\n ],\n});",
14257 "stability": "stable",
14258 "summary": "HTTP status code to failover to second origin."
14259 },
14260 "fqn": "@aws-cdk/aws-cloudfront.FailoverStatusCode",
14261 "kind": "enum",
14262 "locationInModule": {
14263 "filename": "lib/web-distribution.ts",
14264 "line": 17
14265 },
14266 "members": [
14267 {
14268 "docs": {
14269 "stability": "stable",
14270 "summary": "Forbidden (403)."
14271 },
14272 "name": "FORBIDDEN"
14273 },
14274 {
14275 "docs": {
14276 "stability": "stable",
14277 "summary": "Not found (404)."
14278 },
14279 "name": "NOT_FOUND"
14280 },
14281 {
14282 "docs": {
14283 "stability": "stable",
14284 "summary": "Internal Server Error (500)."
14285 },
14286 "name": "INTERNAL_SERVER_ERROR"
14287 },
14288 {
14289 "docs": {
14290 "stability": "stable",
14291 "summary": "Bad Gateway (502)."
14292 },
14293 "name": "BAD_GATEWAY"
14294 },
14295 {
14296 "docs": {
14297 "stability": "stable",
14298 "summary": "Service Unavailable (503)."
14299 },
14300 "name": "SERVICE_UNAVAILABLE"
14301 },
14302 {
14303 "docs": {
14304 "stability": "stable",
14305 "summary": "Gateway Timeout (504)."
14306 },
14307 "name": "GATEWAY_TIMEOUT"
14308 }
14309 ],
14310 "name": "FailoverStatusCode",
14311 "symbolId": "lib/web-distribution:FailoverStatusCode"
14312 },
14313 "@aws-cdk/aws-cloudfront.FileCodeOptions": {
14314 "assembly": "@aws-cdk/aws-cloudfront",
14315 "datatype": true,
14316 "docs": {
14317 "stability": "stable",
14318 "summary": "Options when reading the function's code from an external file.",
14319 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst fileCodeOptions: cloudfront.FileCodeOptions = {\n filePath: 'filePath',\n};",
14320 "custom": {
14321 "exampleMetadata": "fixture=_generated"
14322 }
14323 },
14324 "fqn": "@aws-cdk/aws-cloudfront.FileCodeOptions",
14325 "kind": "interface",
14326 "locationInModule": {
14327 "filename": "lib/function.ts",
14328 "line": 38
14329 },
14330 "name": "FileCodeOptions",
14331 "properties": [
14332 {
14333 "abstract": true,
14334 "docs": {
14335 "stability": "stable",
14336 "summary": "The path of the file to read the code from."
14337 },
14338 "immutable": true,
14339 "locationInModule": {
14340 "filename": "lib/function.ts",
14341 "line": 42
14342 },
14343 "name": "filePath",
14344 "type": {
14345 "primitive": "string"
14346 }
14347 }
14348 ],
14349 "symbolId": "lib/function:FileCodeOptions"
14350 },
14351 "@aws-cdk/aws-cloudfront.Function": {
14352 "assembly": "@aws-cdk/aws-cloudfront",
14353 "base": "@aws-cdk/core.Resource",
14354 "docs": {
14355 "custom": {
14356 "exampleMetadata": "infused",
14357 "resource": "AWS::CloudFront::Function"
14358 },
14359 "example": "// Add a cloudfront Function to a Distribution\nconst cfFunction = new cloudfront.Function(this, 'Function', {\n code: cloudfront.FunctionCode.fromInline('function handler(event) { return event.request }'),\n});\n\ndeclare const s3Bucket: s3.Bucket;\nnew cloudfront.Distribution(this, 'distro', {\n defaultBehavior: {\n origin: new origins.S3Origin(s3Bucket),\n functionAssociations: [{\n function: cfFunction,\n eventType: cloudfront.FunctionEventType.VIEWER_REQUEST,\n }],\n },\n});",
14360 "stability": "stable",
14361 "summary": "A CloudFront Function."
14362 },
14363 "fqn": "@aws-cdk/aws-cloudfront.Function",
14364 "initializer": {
14365 "docs": {
14366 "stability": "stable"
14367 },
14368 "locationInModule": {
14369 "filename": "lib/function.ts",
14370 "line": 159
14371 },
14372 "parameters": [
14373 {
14374 "name": "scope",
14375 "type": {
14376 "fqn": "constructs.Construct"
14377 }
14378 },
14379 {
14380 "name": "id",
14381 "type": {
14382 "primitive": "string"
14383 }
14384 },
14385 {
14386 "name": "props",
14387 "type": {
14388 "fqn": "@aws-cdk/aws-cloudfront.FunctionProps"
14389 }
14390 }
14391 ]
14392 },
14393 "interfaces": [
14394 "@aws-cdk/aws-cloudfront.IFunction"
14395 ],
14396 "kind": "class",
14397 "locationInModule": {
14398 "filename": "lib/function.ts",
14399 "line": 133
14400 },
14401 "methods": [
14402 {
14403 "docs": {
14404 "stability": "stable",
14405 "summary": "Imports a function by its name and ARN."
14406 },
14407 "locationInModule": {
14408 "filename": "lib/function.ts",
14409 "line": 136
14410 },
14411 "name": "fromFunctionAttributes",
14412 "parameters": [
14413 {
14414 "name": "scope",
14415 "type": {
14416 "fqn": "constructs.Construct"
14417 }
14418 },
14419 {
14420 "name": "id",
14421 "type": {
14422 "primitive": "string"
14423 }
14424 },
14425 {
14426 "name": "attrs",
14427 "type": {
14428 "fqn": "@aws-cdk/aws-cloudfront.FunctionAttributes"
14429 }
14430 }
14431 ],
14432 "returns": {
14433 "type": {
14434 "fqn": "@aws-cdk/aws-cloudfront.IFunction"
14435 }
14436 },
14437 "static": true
14438 }
14439 ],
14440 "name": "Function",
14441 "properties": [
14442 {
14443 "docs": {
14444 "custom": {
14445 "attribute": "true"
14446 },
14447 "stability": "stable",
14448 "summary": "the ARN of the CloudFront function."
14449 },
14450 "immutable": true,
14451 "locationInModule": {
14452 "filename": "lib/function.ts",
14453 "line": 152
14454 },
14455 "name": "functionArn",
14456 "overrides": "@aws-cdk/aws-cloudfront.IFunction",
14457 "type": {
14458 "primitive": "string"
14459 }
14460 },
14461 {
14462 "docs": {
14463 "custom": {
14464 "attribute": "true"
14465 },
14466 "stability": "stable",
14467 "summary": "the name of the CloudFront function."
14468 },
14469 "immutable": true,
14470 "locationInModule": {
14471 "filename": "lib/function.ts",
14472 "line": 147
14473 },
14474 "name": "functionName",
14475 "overrides": "@aws-cdk/aws-cloudfront.IFunction",
14476 "type": {
14477 "primitive": "string"
14478 }
14479 },
14480 {
14481 "docs": {
14482 "custom": {
14483 "attribute": "true"
14484 },
14485 "stability": "stable",
14486 "summary": "the deployment stage of the CloudFront function."
14487 },
14488 "immutable": true,
14489 "locationInModule": {
14490 "filename": "lib/function.ts",
14491 "line": 157
14492 },
14493 "name": "functionStage",
14494 "type": {
14495 "primitive": "string"
14496 }
14497 }
14498 ],
14499 "symbolId": "lib/function:Function"
14500 },
14501 "@aws-cdk/aws-cloudfront.FunctionAssociation": {
14502 "assembly": "@aws-cdk/aws-cloudfront",
14503 "datatype": true,
14504 "docs": {
14505 "remarks": "The type of the {@link AddBehaviorOptions.functionAssociations} property.",
14506 "stability": "stable",
14507 "summary": "Represents a CloudFront function and event type when using CF Functions.",
14508 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\n\ndeclare const function_: cloudfront.Function;\nconst functionAssociation: cloudfront.FunctionAssociation = {\n eventType: cloudfront.FunctionEventType.VIEWER_REQUEST,\n function: function_,\n};",
14509 "custom": {
14510 "exampleMetadata": "fixture=_generated"
14511 }
14512 },
14513 "fqn": "@aws-cdk/aws-cloudfront.FunctionAssociation",
14514 "kind": "interface",
14515 "locationInModule": {
14516 "filename": "lib/function.ts",
14517 "line": 207
14518 },
14519 "name": "FunctionAssociation",
14520 "properties": [
14521 {
14522 "abstract": true,
14523 "docs": {
14524 "stability": "stable",
14525 "summary": "The type of event which should invoke the function."
14526 },
14527 "immutable": true,
14528 "locationInModule": {
14529 "filename": "lib/function.ts",
14530 "line": 214
14531 },
14532 "name": "eventType",
14533 "type": {
14534 "fqn": "@aws-cdk/aws-cloudfront.FunctionEventType"
14535 }
14536 },
14537 {
14538 "abstract": true,
14539 "docs": {
14540 "stability": "stable",
14541 "summary": "The CloudFront function that will be invoked."
14542 },
14543 "immutable": true,
14544 "locationInModule": {
14545 "filename": "lib/function.ts",
14546 "line": 211
14547 },
14548 "name": "function",
14549 "type": {
14550 "fqn": "@aws-cdk/aws-cloudfront.IFunction"
14551 }
14552 }
14553 ],
14554 "symbolId": "lib/function:FunctionAssociation"
14555 },
14556 "@aws-cdk/aws-cloudfront.FunctionAttributes": {
14557 "assembly": "@aws-cdk/aws-cloudfront",
14558 "datatype": true,
14559 "docs": {
14560 "stability": "stable",
14561 "summary": "Attributes of an existing CloudFront Function to import it.",
14562 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst functionAttributes: cloudfront.FunctionAttributes = {\n functionArn: 'functionArn',\n functionName: 'functionName',\n};",
14563 "custom": {
14564 "exampleMetadata": "fixture=_generated"
14565 }
14566 },
14567 "fqn": "@aws-cdk/aws-cloudfront.FunctionAttributes",
14568 "kind": "interface",
14569 "locationInModule": {
14570 "filename": "lib/function.ts",
14571 "line": 94
14572 },
14573 "name": "FunctionAttributes",
14574 "properties": [
14575 {
14576 "abstract": true,
14577 "docs": {
14578 "stability": "stable",
14579 "summary": "The ARN of the function."
14580 },
14581 "immutable": true,
14582 "locationInModule": {
14583 "filename": "lib/function.ts",
14584 "line": 103
14585 },
14586 "name": "functionArn",
14587 "type": {
14588 "primitive": "string"
14589 }
14590 },
14591 {
14592 "abstract": true,
14593 "docs": {
14594 "stability": "stable",
14595 "summary": "The name of the function."
14596 },
14597 "immutable": true,
14598 "locationInModule": {
14599 "filename": "lib/function.ts",
14600 "line": 98
14601 },
14602 "name": "functionName",
14603 "type": {
14604 "primitive": "string"
14605 }
14606 }
14607 ],
14608 "symbolId": "lib/function:FunctionAttributes"
14609 },
14610 "@aws-cdk/aws-cloudfront.FunctionCode": {
14611 "abstract": true,
14612 "assembly": "@aws-cdk/aws-cloudfront",
14613 "docs": {
14614 "custom": {
14615 "exampleMetadata": "infused"
14616 },
14617 "example": "// Add a cloudfront Function to a Distribution\nconst cfFunction = new cloudfront.Function(this, 'Function', {\n code: cloudfront.FunctionCode.fromInline('function handler(event) { return event.request }'),\n});\n\ndeclare const s3Bucket: s3.Bucket;\nnew cloudfront.Distribution(this, 'distro', {\n defaultBehavior: {\n origin: new origins.S3Origin(s3Bucket),\n functionAssociations: [{\n function: cfFunction,\n eventType: cloudfront.FunctionEventType.VIEWER_REQUEST,\n }],\n },\n});",
14618 "stability": "stable",
14619 "summary": "Represents the function's source code."
14620 },
14621 "fqn": "@aws-cdk/aws-cloudfront.FunctionCode",
14622 "initializer": {
14623 "docs": {
14624 "stability": "stable"
14625 }
14626 },
14627 "kind": "class",
14628 "locationInModule": {
14629 "filename": "lib/function.ts",
14630 "line": 9
14631 },
14632 "methods": [
14633 {
14634 "docs": {
14635 "returns": "code object with contents from file.",
14636 "stability": "stable",
14637 "summary": "Code from external file for function."
14638 },
14639 "locationInModule": {
14640 "filename": "lib/function.ts",
14641 "line": 25
14642 },
14643 "name": "fromFile",
14644 "parameters": [
14645 {
14646 "docs": {
14647 "summary": "the options for the external file."
14648 },
14649 "name": "options",
14650 "type": {
14651 "fqn": "@aws-cdk/aws-cloudfront.FileCodeOptions"
14652 }
14653 }
14654 ],
14655 "returns": {
14656 "type": {
14657 "fqn": "@aws-cdk/aws-cloudfront.FunctionCode"
14658 }
14659 },
14660 "static": true
14661 },
14662 {
14663 "docs": {
14664 "returns": "code object with inline code.",
14665 "stability": "stable",
14666 "summary": "Inline code for function."
14667 },
14668 "locationInModule": {
14669 "filename": "lib/function.ts",
14670 "line": 16
14671 },
14672 "name": "fromInline",
14673 "parameters": [
14674 {
14675 "docs": {
14676 "summary": "The actual function code."
14677 },
14678 "name": "code",
14679 "type": {
14680 "primitive": "string"
14681 }
14682 }
14683 ],
14684 "returns": {
14685 "type": {
14686 "fqn": "@aws-cdk/aws-cloudfront.FunctionCode"
14687 }
14688 },
14689 "static": true
14690 },
14691 {
14692 "abstract": true,
14693 "docs": {
14694 "stability": "stable",
14695 "summary": "renders the function code."
14696 },
14697 "locationInModule": {
14698 "filename": "lib/function.ts",
14699 "line": 32
14700 },
14701 "name": "render",
14702 "returns": {
14703 "type": {
14704 "primitive": "string"
14705 }
14706 }
14707 }
14708 ],
14709 "name": "FunctionCode",
14710 "symbolId": "lib/function:FunctionCode"
14711 },
14712 "@aws-cdk/aws-cloudfront.FunctionEventType": {
14713 "assembly": "@aws-cdk/aws-cloudfront",
14714 "docs": {
14715 "custom": {
14716 "exampleMetadata": "infused"
14717 },
14718 "example": "// Add a cloudfront Function to a Distribution\nconst cfFunction = new cloudfront.Function(this, 'Function', {\n code: cloudfront.FunctionCode.fromInline('function handler(event) { return event.request }'),\n});\n\ndeclare const s3Bucket: s3.Bucket;\nnew cloudfront.Distribution(this, 'distro', {\n defaultBehavior: {\n origin: new origins.S3Origin(s3Bucket),\n functionAssociations: [{\n function: cfFunction,\n eventType: cloudfront.FunctionEventType.VIEWER_REQUEST,\n }],\n },\n});",
14719 "stability": "stable",
14720 "summary": "The type of events that a CloudFront function can be invoked in response to."
14721 },
14722 "fqn": "@aws-cdk/aws-cloudfront.FunctionEventType",
14723 "kind": "enum",
14724 "locationInModule": {
14725 "filename": "lib/function.ts",
14726 "line": 190
14727 },
14728 "members": [
14729 {
14730 "docs": {
14731 "stability": "stable",
14732 "summary": "The viewer-request specifies the incoming request."
14733 },
14734 "name": "VIEWER_REQUEST"
14735 },
14736 {
14737 "docs": {
14738 "stability": "stable",
14739 "summary": "The viewer-response specifies the outgoing response."
14740 },
14741 "name": "VIEWER_RESPONSE"
14742 }
14743 ],
14744 "name": "FunctionEventType",
14745 "symbolId": "lib/function:FunctionEventType"
14746 },
14747 "@aws-cdk/aws-cloudfront.FunctionProps": {
14748 "assembly": "@aws-cdk/aws-cloudfront",
14749 "datatype": true,
14750 "docs": {
14751 "custom": {
14752 "exampleMetadata": "infused"
14753 },
14754 "example": "// Add a cloudfront Function to a Distribution\nconst cfFunction = new cloudfront.Function(this, 'Function', {\n code: cloudfront.FunctionCode.fromInline('function handler(event) { return event.request }'),\n});\n\ndeclare const s3Bucket: s3.Bucket;\nnew cloudfront.Distribution(this, 'distro', {\n defaultBehavior: {\n origin: new origins.S3Origin(s3Bucket),\n functionAssociations: [{\n function: cfFunction,\n eventType: cloudfront.FunctionEventType.VIEWER_REQUEST,\n }],\n },\n});",
14755 "stability": "stable",
14756 "summary": "Properties for creating a CloudFront Function."
14757 },
14758 "fqn": "@aws-cdk/aws-cloudfront.FunctionProps",
14759 "kind": "interface",
14760 "locationInModule": {
14761 "filename": "lib/function.ts",
14762 "line": 109
14763 },
14764 "name": "FunctionProps",
14765 "properties": [
14766 {
14767 "abstract": true,
14768 "docs": {
14769 "stability": "stable",
14770 "summary": "The source code of the function."
14771 },
14772 "immutable": true,
14773 "locationInModule": {
14774 "filename": "lib/function.ts",
14775 "line": 125
14776 },
14777 "name": "code",
14778 "type": {
14779 "fqn": "@aws-cdk/aws-cloudfront.FunctionCode"
14780 }
14781 },
14782 {
14783 "abstract": true,
14784 "docs": {
14785 "default": "- same as `functionName`",
14786 "stability": "stable",
14787 "summary": "A comment to describe the function."
14788 },
14789 "immutable": true,
14790 "locationInModule": {
14791 "filename": "lib/function.ts",
14792 "line": 120
14793 },
14794 "name": "comment",
14795 "optional": true,
14796 "type": {
14797 "primitive": "string"
14798 }
14799 },
14800 {
14801 "abstract": true,
14802 "docs": {
14803 "default": "- generated from the `id`",
14804 "stability": "stable",
14805 "summary": "A name to identify the function."
14806 },
14807 "immutable": true,
14808 "locationInModule": {
14809 "filename": "lib/function.ts",
14810 "line": 114
14811 },
14812 "name": "functionName",
14813 "optional": true,
14814 "type": {
14815 "primitive": "string"
14816 }
14817 }
14818 ],
14819 "symbolId": "lib/function:FunctionProps"
14820 },
14821 "@aws-cdk/aws-cloudfront.GeoRestriction": {
14822 "assembly": "@aws-cdk/aws-cloudfront",
14823 "docs": {
14824 "custom": {
14825 "exampleMetadata": "infused"
14826 },
14827 "example": "// Adding restrictions to a Cloudfront Web Distribution.\ndeclare const sourceBucket: s3.Bucket;\nnew cloudfront.CloudFrontWebDistribution(this, 'MyDistribution', {\n originConfigs: [\n {\n s3OriginSource: {\n s3BucketSource: sourceBucket,\n },\n behaviors : [ {isDefaultBehavior: true}],\n },\n ],\n geoRestriction: cloudfront.GeoRestriction.allowlist('US', 'GB'),\n});",
14828 "stability": "stable",
14829 "summary": "Controls the countries in which content is distributed."
14830 },
14831 "fqn": "@aws-cdk/aws-cloudfront.GeoRestriction",
14832 "kind": "class",
14833 "locationInModule": {
14834 "filename": "lib/geo-restriction.ts",
14835 "line": 4
14836 },
14837 "methods": [
14838 {
14839 "docs": {
14840 "stability": "stable",
14841 "summary": "Allow specific countries which you want CloudFront to distribute your content."
14842 },
14843 "locationInModule": {
14844 "filename": "lib/geo-restriction.ts",
14845 "line": 13
14846 },
14847 "name": "allowlist",
14848 "parameters": [
14849 {
14850 "docs": {
14851 "remarks": "Include one element for each country.\nSee ISO 3166-1-alpha-2 code on the *International Organization for Standardization* website",
14852 "summary": "Two-letter, uppercase country code for a country that you want to allow."
14853 },
14854 "name": "locations",
14855 "type": {
14856 "primitive": "string"
14857 },
14858 "variadic": true
14859 }
14860 ],
14861 "returns": {
14862 "type": {
14863 "fqn": "@aws-cdk/aws-cloudfront.GeoRestriction"
14864 }
14865 },
14866 "static": true,
14867 "variadic": true
14868 },
14869 {
14870 "docs": {
14871 "deprecated": "use `denylist`",
14872 "stability": "deprecated",
14873 "summary": "DEPRECATED."
14874 },
14875 "locationInModule": {
14876 "filename": "lib/geo-restriction.ts",
14877 "line": 40
14878 },
14879 "name": "blacklist",
14880 "parameters": [
14881 {
14882 "name": "locations",
14883 "type": {
14884 "primitive": "string"
14885 },
14886 "variadic": true
14887 }
14888 ],
14889 "returns": {
14890 "type": {
14891 "fqn": "@aws-cdk/aws-cloudfront.GeoRestriction"
14892 }
14893 },
14894 "static": true,
14895 "variadic": true
14896 },
14897 {
14898 "docs": {
14899 "stability": "stable",
14900 "summary": "Deny specific countries which you don't want CloudFront to distribute your content."
14901 },
14902 "locationInModule": {
14903 "filename": "lib/geo-restriction.ts",
14904 "line": 24
14905 },
14906 "name": "denylist",
14907 "parameters": [
14908 {
14909 "docs": {
14910 "remarks": "Include one element for each country.\nSee ISO 3166-1-alpha-2 code on the *International Organization for Standardization* website",
14911 "summary": "Two-letter, uppercase country code for a country that you want to deny."
14912 },
14913 "name": "locations",
14914 "type": {
14915 "primitive": "string"
14916 },
14917 "variadic": true
14918 }
14919 ],
14920 "returns": {
14921 "type": {
14922 "fqn": "@aws-cdk/aws-cloudfront.GeoRestriction"
14923 }
14924 },
14925 "static": true,
14926 "variadic": true
14927 },
14928 {
14929 "docs": {
14930 "deprecated": "use `allowlist`",
14931 "stability": "deprecated",
14932 "summary": "DEPRECATED."
14933 },
14934 "locationInModule": {
14935 "filename": "lib/geo-restriction.ts",
14936 "line": 32
14937 },
14938 "name": "whitelist",
14939 "parameters": [
14940 {
14941 "name": "locations",
14942 "type": {
14943 "primitive": "string"
14944 },
14945 "variadic": true
14946 }
14947 ],
14948 "returns": {
14949 "type": {
14950 "fqn": "@aws-cdk/aws-cloudfront.GeoRestriction"
14951 }
14952 },
14953 "static": true,
14954 "variadic": true
14955 }
14956 ],
14957 "name": "GeoRestriction",
14958 "properties": [
14959 {
14960 "docs": {
14961 "remarks": "Include one element for each country.\nSee ISO 3166-1-alpha-2 code on the *International Organization for Standardization* website",
14962 "stability": "stable",
14963 "summary": "Two-letter, uppercase country code for a country that you want to allow/deny."
14964 },
14965 "immutable": true,
14966 "locationInModule": {
14967 "filename": "lib/geo-restriction.ts",
14968 "line": 67
14969 },
14970 "name": "locations",
14971 "type": {
14972 "collection": {
14973 "elementtype": {
14974 "primitive": "string"
14975 },
14976 "kind": "array"
14977 }
14978 }
14979 },
14980 {
14981 "docs": {
14982 "stability": "stable",
14983 "summary": "Specifies the restriction type to impose."
14984 },
14985 "immutable": true,
14986 "locationInModule": {
14987 "filename": "lib/geo-restriction.ts",
14988 "line": 67
14989 },
14990 "name": "restrictionType",
14991 "type": {
14992 "primitive": "string"
14993 }
14994 }
14995 ],
14996 "symbolId": "lib/geo-restriction:GeoRestriction"
14997 },
14998 "@aws-cdk/aws-cloudfront.HeadersFrameOption": {
14999 "assembly": "@aws-cdk/aws-cloudfront",
15000 "docs": {
15001 "custom": {
15002 "exampleMetadata": "infused"
15003 },
15004 "example": "// Using an existing managed response headers policy\ndeclare const bucketOrigin: origins.S3Origin;\nnew cloudfront.Distribution(this, 'myDistManagedPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n responseHeadersPolicy: cloudfront.ResponseHeadersPolicy.CORS_ALLOW_ALL_ORIGINS,\n },\n});\n\n// Creating a custom response headers policy -- all parameters optional\nconst myResponseHeadersPolicy = new cloudfront.ResponseHeadersPolicy(this, 'ResponseHeadersPolicy', {\n responseHeadersPolicyName: 'MyPolicy',\n comment: 'A default policy',\n corsBehavior: {\n accessControlAllowCredentials: false,\n accessControlAllowHeaders: ['X-Custom-Header-1', 'X-Custom-Header-2'],\n accessControlAllowMethods: ['GET', 'POST'],\n accessControlAllowOrigins: ['*'],\n accessControlExposeHeaders: ['X-Custom-Header-1', 'X-Custom-Header-2'],\n accessControlMaxAge: Duration.seconds(600),\n originOverride: true,\n },\n customHeadersBehavior: {\n customHeaders: [\n { header: 'X-Amz-Date', value: 'some-value', override: true },\n { header: 'X-Amz-Security-Token', value: 'some-value', override: false },\n ],\n },\n securityHeadersBehavior: {\n contentSecurityPolicy: { contentSecurityPolicy: 'default-src https:;', override: true },\n contentTypeOptions: { override: true },\n frameOptions: { frameOption: cloudfront.HeadersFrameOption.DENY, override: true },\n referrerPolicy: { referrerPolicy: cloudfront.HeadersReferrerPolicy.NO_REFERRER, override: true },\n strictTransportSecurity: { accessControlMaxAge: Duration.seconds(600), includeSubdomains: true, override: true },\n xssProtection: { protection: true, modeBlock: true, reportUri: 'https://example.com/csp-report', override: true },\n },\n});\nnew cloudfront.Distribution(this, 'myDistCustomPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n responseHeadersPolicy: myResponseHeadersPolicy,\n },\n});",
15005 "stability": "stable",
15006 "summary": "Enum representing possible values of the X-Frame-Options HTTP response header."
15007 },
15008 "fqn": "@aws-cdk/aws-cloudfront.HeadersFrameOption",
15009 "kind": "enum",
15010 "locationInModule": {
15011 "filename": "lib/response-headers-policy.ts",
15012 "line": 401
15013 },
15014 "members": [
15015 {
15016 "docs": {
15017 "stability": "stable",
15018 "summary": "The page can only be displayed in a frame on the same origin as the page itself."
15019 },
15020 "name": "DENY"
15021 },
15022 {
15023 "docs": {
15024 "stability": "stable",
15025 "summary": "The page can only be displayed in a frame on the specified origin."
15026 },
15027 "name": "SAMEORIGIN"
15028 }
15029 ],
15030 "name": "HeadersFrameOption",
15031 "symbolId": "lib/response-headers-policy:HeadersFrameOption"
15032 },
15033 "@aws-cdk/aws-cloudfront.HeadersReferrerPolicy": {
15034 "assembly": "@aws-cdk/aws-cloudfront",
15035 "docs": {
15036 "custom": {
15037 "exampleMetadata": "infused"
15038 },
15039 "example": "// Using an existing managed response headers policy\ndeclare const bucketOrigin: origins.S3Origin;\nnew cloudfront.Distribution(this, 'myDistManagedPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n responseHeadersPolicy: cloudfront.ResponseHeadersPolicy.CORS_ALLOW_ALL_ORIGINS,\n },\n});\n\n// Creating a custom response headers policy -- all parameters optional\nconst myResponseHeadersPolicy = new cloudfront.ResponseHeadersPolicy(this, 'ResponseHeadersPolicy', {\n responseHeadersPolicyName: 'MyPolicy',\n comment: 'A default policy',\n corsBehavior: {\n accessControlAllowCredentials: false,\n accessControlAllowHeaders: ['X-Custom-Header-1', 'X-Custom-Header-2'],\n accessControlAllowMethods: ['GET', 'POST'],\n accessControlAllowOrigins: ['*'],\n accessControlExposeHeaders: ['X-Custom-Header-1', 'X-Custom-Header-2'],\n accessControlMaxAge: Duration.seconds(600),\n originOverride: true,\n },\n customHeadersBehavior: {\n customHeaders: [\n { header: 'X-Amz-Date', value: 'some-value', override: true },\n { header: 'X-Amz-Security-Token', value: 'some-value', override: false },\n ],\n },\n securityHeadersBehavior: {\n contentSecurityPolicy: { contentSecurityPolicy: 'default-src https:;', override: true },\n contentTypeOptions: { override: true },\n frameOptions: { frameOption: cloudfront.HeadersFrameOption.DENY, override: true },\n referrerPolicy: { referrerPolicy: cloudfront.HeadersReferrerPolicy.NO_REFERRER, override: true },\n strictTransportSecurity: { accessControlMaxAge: Duration.seconds(600), includeSubdomains: true, override: true },\n xssProtection: { protection: true, modeBlock: true, reportUri: 'https://example.com/csp-report', override: true },\n },\n});\nnew cloudfront.Distribution(this, 'myDistCustomPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n responseHeadersPolicy: myResponseHeadersPolicy,\n },\n});",
15040 "stability": "stable",
15041 "summary": "Enum representing possible values of the Referrer-Policy HTTP response header."
15042 },
15043 "fqn": "@aws-cdk/aws-cloudfront.HeadersReferrerPolicy",
15044 "kind": "enum",
15045 "locationInModule": {
15046 "filename": "lib/response-headers-policy.ts",
15047 "line": 416
15048 },
15049 "members": [
15050 {
15051 "docs": {
15052 "stability": "stable",
15053 "summary": "The referrer policy is not set."
15054 },
15055 "name": "NO_REFERRER"
15056 },
15057 {
15058 "docs": {
15059 "stability": "stable",
15060 "summary": "The referrer policy is no-referrer-when-downgrade."
15061 },
15062 "name": "NO_REFERRER_WHEN_DOWNGRADE"
15063 },
15064 {
15065 "docs": {
15066 "stability": "stable",
15067 "summary": "The referrer policy is origin."
15068 },
15069 "name": "ORIGIN"
15070 },
15071 {
15072 "docs": {
15073 "stability": "stable",
15074 "summary": "The referrer policy is origin-when-cross-origin."
15075 },
15076 "name": "ORIGIN_WHEN_CROSS_ORIGIN"
15077 },
15078 {
15079 "docs": {
15080 "stability": "stable",
15081 "summary": "The referrer policy is same-origin."
15082 },
15083 "name": "SAME_ORIGIN"
15084 },
15085 {
15086 "docs": {
15087 "stability": "stable",
15088 "summary": "The referrer policy is strict-origin."
15089 },
15090 "name": "STRICT_ORIGIN"
15091 },
15092 {
15093 "docs": {
15094 "stability": "stable",
15095 "summary": "The referrer policy is strict-origin-when-cross-origin."
15096 },
15097 "name": "STRICT_ORIGIN_WHEN_CROSS_ORIGIN"
15098 },
15099 {
15100 "docs": {
15101 "stability": "stable",
15102 "summary": "The referrer policy is unsafe-url."
15103 },
15104 "name": "UNSAFE_URL"
15105 }
15106 ],
15107 "name": "HeadersReferrerPolicy",
15108 "symbolId": "lib/response-headers-policy:HeadersReferrerPolicy"
15109 },
15110 "@aws-cdk/aws-cloudfront.HttpVersion": {
15111 "assembly": "@aws-cdk/aws-cloudfront",
15112 "docs": {
15113 "stability": "stable",
15114 "summary": "Maximum HTTP version to support."
15115 },
15116 "fqn": "@aws-cdk/aws-cloudfront.HttpVersion",
15117 "kind": "enum",
15118 "locationInModule": {
15119 "filename": "lib/distribution.ts",
15120 "line": 489
15121 },
15122 "members": [
15123 {
15124 "docs": {
15125 "stability": "stable",
15126 "summary": "HTTP 1.1."
15127 },
15128 "name": "HTTP1_1"
15129 },
15130 {
15131 "docs": {
15132 "stability": "stable",
15133 "summary": "HTTP 2."
15134 },
15135 "name": "HTTP2"
15136 }
15137 ],
15138 "name": "HttpVersion",
15139 "symbolId": "lib/distribution:HttpVersion"
15140 },
15141 "@aws-cdk/aws-cloudfront.ICachePolicy": {
15142 "assembly": "@aws-cdk/aws-cloudfront",
15143 "docs": {
15144 "stability": "stable",
15145 "summary": "Represents a Cache Policy."
15146 },
15147 "fqn": "@aws-cdk/aws-cloudfront.ICachePolicy",
15148 "kind": "interface",
15149 "locationInModule": {
15150 "filename": "lib/cache-policy.ts",
15151 "line": 8
15152 },
15153 "name": "ICachePolicy",
15154 "properties": [
15155 {
15156 "abstract": true,
15157 "docs": {
15158 "custom": {
15159 "attribute": "true"
15160 },
15161 "stability": "stable",
15162 "summary": "The ID of the cache policy."
15163 },
15164 "immutable": true,
15165 "locationInModule": {
15166 "filename": "lib/cache-policy.ts",
15167 "line": 13
15168 },
15169 "name": "cachePolicyId",
15170 "type": {
15171 "primitive": "string"
15172 }
15173 }
15174 ],
15175 "symbolId": "lib/cache-policy:ICachePolicy"
15176 },
15177 "@aws-cdk/aws-cloudfront.IDistribution": {
15178 "assembly": "@aws-cdk/aws-cloudfront",
15179 "docs": {
15180 "stability": "stable",
15181 "summary": "Interface for CloudFront distributions."
15182 },
15183 "fqn": "@aws-cdk/aws-cloudfront.IDistribution",
15184 "interfaces": [
15185 "@aws-cdk/core.IResource"
15186 ],
15187 "kind": "interface",
15188 "locationInModule": {
15189 "filename": "lib/distribution.ts",
15190 "line": 24
15191 },
15192 "name": "IDistribution",
15193 "properties": [
15194 {
15195 "abstract": true,
15196 "docs": {
15197 "custom": {
15198 "attribute": "true"
15199 },
15200 "stability": "stable",
15201 "summary": "The domain name of the Distribution, such as d111111abcdef8.cloudfront.net."
15202 },
15203 "immutable": true,
15204 "locationInModule": {
15205 "filename": "lib/distribution.ts",
15206 "line": 38
15207 },
15208 "name": "distributionDomainName",
15209 "type": {
15210 "primitive": "string"
15211 }
15212 },
15213 {
15214 "abstract": true,
15215 "docs": {
15216 "custom": {
15217 "attribute": "true"
15218 },
15219 "stability": "stable",
15220 "summary": "The distribution ID for this distribution."
15221 },
15222 "immutable": true,
15223 "locationInModule": {
15224 "filename": "lib/distribution.ts",
15225 "line": 45
15226 },
15227 "name": "distributionId",
15228 "type": {
15229 "primitive": "string"
15230 }
15231 },
15232 {
15233 "abstract": true,
15234 "docs": {
15235 "custom": {
15236 "attribute": "true"
15237 },
15238 "deprecated": "- Use `distributionDomainName` instead.",
15239 "stability": "deprecated",
15240 "summary": "The domain name of the Distribution, such as d111111abcdef8.cloudfront.net."
15241 },
15242 "immutable": true,
15243 "locationInModule": {
15244 "filename": "lib/distribution.ts",
15245 "line": 31
15246 },
15247 "name": "domainName",
15248 "type": {
15249 "primitive": "string"
15250 }
15251 }
15252 ],
15253 "symbolId": "lib/distribution:IDistribution"
15254 },
15255 "@aws-cdk/aws-cloudfront.IFunction": {
15256 "assembly": "@aws-cdk/aws-cloudfront",
15257 "docs": {
15258 "stability": "stable",
15259 "summary": "Represents a CloudFront Function."
15260 },
15261 "fqn": "@aws-cdk/aws-cloudfront.IFunction",
15262 "interfaces": [
15263 "@aws-cdk/core.IResource"
15264 ],
15265 "kind": "interface",
15266 "locationInModule": {
15267 "filename": "lib/function.ts",
15268 "line": 77
15269 },
15270 "name": "IFunction",
15271 "properties": [
15272 {
15273 "abstract": true,
15274 "docs": {
15275 "custom": {
15276 "attribute": "true"
15277 },
15278 "stability": "stable",
15279 "summary": "The ARN of the function."
15280 },
15281 "immutable": true,
15282 "locationInModule": {
15283 "filename": "lib/function.ts",
15284 "line": 88
15285 },
15286 "name": "functionArn",
15287 "type": {
15288 "primitive": "string"
15289 }
15290 },
15291 {
15292 "abstract": true,
15293 "docs": {
15294 "custom": {
15295 "attribute": "true"
15296 },
15297 "stability": "stable",
15298 "summary": "The name of the function."
15299 },
15300 "immutable": true,
15301 "locationInModule": {
15302 "filename": "lib/function.ts",
15303 "line": 82
15304 },
15305 "name": "functionName",
15306 "type": {
15307 "primitive": "string"
15308 }
15309 }
15310 ],
15311 "symbolId": "lib/function:IFunction"
15312 },
15313 "@aws-cdk/aws-cloudfront.IKeyGroup": {
15314 "assembly": "@aws-cdk/aws-cloudfront",
15315 "docs": {
15316 "stability": "stable",
15317 "summary": "Represents a Key Group."
15318 },
15319 "fqn": "@aws-cdk/aws-cloudfront.IKeyGroup",
15320 "interfaces": [
15321 "@aws-cdk/core.IResource"
15322 ],
15323 "kind": "interface",
15324 "locationInModule": {
15325 "filename": "lib/key-group.ts",
15326 "line": 9
15327 },
15328 "name": "IKeyGroup",
15329 "properties": [
15330 {
15331 "abstract": true,
15332 "docs": {
15333 "custom": {
15334 "attribute": "true"
15335 },
15336 "stability": "stable",
15337 "summary": "The ID of the key group."
15338 },
15339 "immutable": true,
15340 "locationInModule": {
15341 "filename": "lib/key-group.ts",
15342 "line": 14
15343 },
15344 "name": "keyGroupId",
15345 "type": {
15346 "primitive": "string"
15347 }
15348 }
15349 ],
15350 "symbolId": "lib/key-group:IKeyGroup"
15351 },
15352 "@aws-cdk/aws-cloudfront.IOrigin": {
15353 "assembly": "@aws-cdk/aws-cloudfront",
15354 "docs": {
15355 "remarks": "You provide one or more origins when creating a Distribution.",
15356 "stability": "stable",
15357 "summary": "Represents the concept of a CloudFront Origin."
15358 },
15359 "fqn": "@aws-cdk/aws-cloudfront.IOrigin",
15360 "kind": "interface",
15361 "locationInModule": {
15362 "filename": "lib/origin.ts",
15363 "line": 45
15364 },
15365 "methods": [
15366 {
15367 "abstract": true,
15368 "docs": {
15369 "stability": "stable",
15370 "summary": "The method called when a given Origin is added (for the first time) to a Distribution."
15371 },
15372 "locationInModule": {
15373 "filename": "lib/origin.ts",
15374 "line": 50
15375 },
15376 "name": "bind",
15377 "parameters": [
15378 {
15379 "name": "scope",
15380 "type": {
15381 "fqn": "@aws-cdk/core.Construct"
15382 }
15383 },
15384 {
15385 "name": "options",
15386 "type": {
15387 "fqn": "@aws-cdk/aws-cloudfront.OriginBindOptions"
15388 }
15389 }
15390 ],
15391 "returns": {
15392 "type": {
15393 "fqn": "@aws-cdk/aws-cloudfront.OriginBindConfig"
15394 }
15395 }
15396 }
15397 ],
15398 "name": "IOrigin",
15399 "symbolId": "lib/origin:IOrigin"
15400 },
15401 "@aws-cdk/aws-cloudfront.IOriginAccessIdentity": {
15402 "assembly": "@aws-cdk/aws-cloudfront",
15403 "docs": {
15404 "stability": "stable",
15405 "summary": "Interface for CloudFront OriginAccessIdentity."
15406 },
15407 "fqn": "@aws-cdk/aws-cloudfront.IOriginAccessIdentity",
15408 "interfaces": [
15409 "@aws-cdk/core.IResource",
15410 "@aws-cdk/aws-iam.IGrantable"
15411 ],
15412 "kind": "interface",
15413 "locationInModule": {
15414 "filename": "lib/origin-access-identity.ts",
15415 "line": 21
15416 },
15417 "name": "IOriginAccessIdentity",
15418 "properties": [
15419 {
15420 "abstract": true,
15421 "docs": {
15422 "stability": "stable",
15423 "summary": "The Origin Access Identity Name."
15424 },
15425 "immutable": true,
15426 "locationInModule": {
15427 "filename": "lib/origin-access-identity.ts",
15428 "line": 25
15429 },
15430 "name": "originAccessIdentityName",
15431 "type": {
15432 "primitive": "string"
15433 }
15434 }
15435 ],
15436 "symbolId": "lib/origin-access-identity:IOriginAccessIdentity"
15437 },
15438 "@aws-cdk/aws-cloudfront.IOriginRequestPolicy": {
15439 "assembly": "@aws-cdk/aws-cloudfront",
15440 "docs": {
15441 "stability": "stable",
15442 "summary": "Represents a Origin Request Policy."
15443 },
15444 "fqn": "@aws-cdk/aws-cloudfront.IOriginRequestPolicy",
15445 "kind": "interface",
15446 "locationInModule": {
15447 "filename": "lib/origin-request-policy.ts",
15448 "line": 8
15449 },
15450 "name": "IOriginRequestPolicy",
15451 "properties": [
15452 {
15453 "abstract": true,
15454 "docs": {
15455 "custom": {
15456 "attribute": "true"
15457 },
15458 "stability": "stable",
15459 "summary": "The ID of the origin request policy."
15460 },
15461 "immutable": true,
15462 "locationInModule": {
15463 "filename": "lib/origin-request-policy.ts",
15464 "line": 13
15465 },
15466 "name": "originRequestPolicyId",
15467 "type": {
15468 "primitive": "string"
15469 }
15470 }
15471 ],
15472 "symbolId": "lib/origin-request-policy:IOriginRequestPolicy"
15473 },
15474 "@aws-cdk/aws-cloudfront.IPublicKey": {
15475 "assembly": "@aws-cdk/aws-cloudfront",
15476 "docs": {
15477 "stability": "stable",
15478 "summary": "Represents a Public Key."
15479 },
15480 "fqn": "@aws-cdk/aws-cloudfront.IPublicKey",
15481 "interfaces": [
15482 "@aws-cdk/core.IResource"
15483 ],
15484 "kind": "interface",
15485 "locationInModule": {
15486 "filename": "lib/public-key.ts",
15487 "line": 8
15488 },
15489 "name": "IPublicKey",
15490 "properties": [
15491 {
15492 "abstract": true,
15493 "docs": {
15494 "custom": {
15495 "attribute": "true"
15496 },
15497 "stability": "stable",
15498 "summary": "The ID of the key group."
15499 },
15500 "immutable": true,
15501 "locationInModule": {
15502 "filename": "lib/public-key.ts",
15503 "line": 13
15504 },
15505 "name": "publicKeyId",
15506 "type": {
15507 "primitive": "string"
15508 }
15509 }
15510 ],
15511 "symbolId": "lib/public-key:IPublicKey"
15512 },
15513 "@aws-cdk/aws-cloudfront.IResponseHeadersPolicy": {
15514 "assembly": "@aws-cdk/aws-cloudfront",
15515 "docs": {
15516 "stability": "stable",
15517 "summary": "Represents a response headers policy."
15518 },
15519 "fqn": "@aws-cdk/aws-cloudfront.IResponseHeadersPolicy",
15520 "kind": "interface",
15521 "locationInModule": {
15522 "filename": "lib/response-headers-policy.ts",
15523 "line": 8
15524 },
15525 "name": "IResponseHeadersPolicy",
15526 "properties": [
15527 {
15528 "abstract": true,
15529 "docs": {
15530 "custom": {
15531 "attribute": "true"
15532 },
15533 "stability": "stable",
15534 "summary": "The ID of the response headers policy."
15535 },
15536 "immutable": true,
15537 "locationInModule": {
15538 "filename": "lib/response-headers-policy.ts",
15539 "line": 13
15540 },
15541 "name": "responseHeadersPolicyId",
15542 "type": {
15543 "primitive": "string"
15544 }
15545 }
15546 ],
15547 "symbolId": "lib/response-headers-policy:IResponseHeadersPolicy"
15548 },
15549 "@aws-cdk/aws-cloudfront.KeyGroup": {
15550 "assembly": "@aws-cdk/aws-cloudfront",
15551 "base": "@aws-cdk/core.Resource",
15552 "docs": {
15553 "custom": {
15554 "exampleMetadata": "infused",
15555 "resource": "AWS::CloudFront::KeyGroup"
15556 },
15557 "example": "// Validating signed URLs or signed cookies with Trusted Key Groups\n\n// public key in PEM format\ndeclare const publicKey: string;\nconst pubKey = new cloudfront.PublicKey(this, 'MyPubKey', {\n encodedKey: publicKey,\n});\n\nconst keyGroup = new cloudfront.KeyGroup(this, 'MyKeyGroup', {\n items: [\n pubKey,\n ],\n});\n\nnew cloudfront.Distribution(this, 'Dist', {\n defaultBehavior: {\n origin: new origins.HttpOrigin('www.example.com'),\n trustedKeyGroups: [\n keyGroup,\n ],\n },\n});",
15558 "stability": "stable",
15559 "summary": "A Key Group configuration."
15560 },
15561 "fqn": "@aws-cdk/aws-cloudfront.KeyGroup",
15562 "initializer": {
15563 "docs": {
15564 "stability": "stable"
15565 },
15566 "locationInModule": {
15567 "filename": "lib/key-group.ts",
15568 "line": 54
15569 },
15570 "parameters": [
15571 {
15572 "name": "scope",
15573 "type": {
15574 "fqn": "constructs.Construct"
15575 }
15576 },
15577 {
15578 "name": "id",
15579 "type": {
15580 "primitive": "string"
15581 }
15582 },
15583 {
15584 "name": "props",
15585 "type": {
15586 "fqn": "@aws-cdk/aws-cloudfront.KeyGroupProps"
15587 }
15588 }
15589 ]
15590 },
15591 "interfaces": [
15592 "@aws-cdk/aws-cloudfront.IKeyGroup"
15593 ],
15594 "kind": "class",
15595 "locationInModule": {
15596 "filename": "lib/key-group.ts",
15597 "line": 44
15598 },
15599 "methods": [
15600 {
15601 "docs": {
15602 "stability": "stable",
15603 "summary": "Imports a Key Group from its id."
15604 },
15605 "locationInModule": {
15606 "filename": "lib/key-group.ts",
15607 "line": 47
15608 },
15609 "name": "fromKeyGroupId",
15610 "parameters": [
15611 {
15612 "name": "scope",
15613 "type": {
15614 "fqn": "constructs.Construct"
15615 }
15616 },
15617 {
15618 "name": "id",
15619 "type": {
15620 "primitive": "string"
15621 }
15622 },
15623 {
15624 "name": "keyGroupId",
15625 "type": {
15626 "primitive": "string"
15627 }
15628 }
15629 ],
15630 "returns": {
15631 "type": {
15632 "fqn": "@aws-cdk/aws-cloudfront.IKeyGroup"
15633 }
15634 },
15635 "static": true
15636 }
15637 ],
15638 "name": "KeyGroup",
15639 "properties": [
15640 {
15641 "docs": {
15642 "stability": "stable",
15643 "summary": "The ID of the key group."
15644 },
15645 "immutable": true,
15646 "locationInModule": {
15647 "filename": "lib/key-group.ts",
15648 "line": 52
15649 },
15650 "name": "keyGroupId",
15651 "overrides": "@aws-cdk/aws-cloudfront.IKeyGroup",
15652 "type": {
15653 "primitive": "string"
15654 }
15655 }
15656 ],
15657 "symbolId": "lib/key-group:KeyGroup"
15658 },
15659 "@aws-cdk/aws-cloudfront.KeyGroupProps": {
15660 "assembly": "@aws-cdk/aws-cloudfront",
15661 "datatype": true,
15662 "docs": {
15663 "custom": {
15664 "exampleMetadata": "infused"
15665 },
15666 "example": "// Validating signed URLs or signed cookies with Trusted Key Groups\n\n// public key in PEM format\ndeclare const publicKey: string;\nconst pubKey = new cloudfront.PublicKey(this, 'MyPubKey', {\n encodedKey: publicKey,\n});\n\nconst keyGroup = new cloudfront.KeyGroup(this, 'MyKeyGroup', {\n items: [\n pubKey,\n ],\n});\n\nnew cloudfront.Distribution(this, 'Dist', {\n defaultBehavior: {\n origin: new origins.HttpOrigin('www.example.com'),\n trustedKeyGroups: [\n keyGroup,\n ],\n },\n});",
15667 "stability": "stable",
15668 "summary": "Properties for creating a Public Key."
15669 },
15670 "fqn": "@aws-cdk/aws-cloudfront.KeyGroupProps",
15671 "kind": "interface",
15672 "locationInModule": {
15673 "filename": "lib/key-group.ts",
15674 "line": 20
15675 },
15676 "name": "KeyGroupProps",
15677 "properties": [
15678 {
15679 "abstract": true,
15680 "docs": {
15681 "stability": "stable",
15682 "summary": "A list of public keys to add to the key group."
15683 },
15684 "immutable": true,
15685 "locationInModule": {
15686 "filename": "lib/key-group.ts",
15687 "line": 36
15688 },
15689 "name": "items",
15690 "type": {
15691 "collection": {
15692 "elementtype": {
15693 "fqn": "@aws-cdk/aws-cloudfront.IPublicKey"
15694 },
15695 "kind": "array"
15696 }
15697 }
15698 },
15699 {
15700 "abstract": true,
15701 "docs": {
15702 "default": "- no comment",
15703 "stability": "stable",
15704 "summary": "A comment to describe the key group."
15705 },
15706 "immutable": true,
15707 "locationInModule": {
15708 "filename": "lib/key-group.ts",
15709 "line": 31
15710 },
15711 "name": "comment",
15712 "optional": true,
15713 "type": {
15714 "primitive": "string"
15715 }
15716 },
15717 {
15718 "abstract": true,
15719 "docs": {
15720 "default": "- generated from the `id`",
15721 "stability": "stable",
15722 "summary": "A name to identify the key group."
15723 },
15724 "immutable": true,
15725 "locationInModule": {
15726 "filename": "lib/key-group.ts",
15727 "line": 25
15728 },
15729 "name": "keyGroupName",
15730 "optional": true,
15731 "type": {
15732 "primitive": "string"
15733 }
15734 }
15735 ],
15736 "symbolId": "lib/key-group:KeyGroupProps"
15737 },
15738 "@aws-cdk/aws-cloudfront.LambdaEdgeEventType": {
15739 "assembly": "@aws-cdk/aws-cloudfront",
15740 "docs": {
15741 "custom": {
15742 "exampleMetadata": "infused"
15743 },
15744 "example": "// A Lambda@Edge function added to default behavior of a Distribution\n// and triggered on every request\nconst myFunc = new cloudfront.experimental.EdgeFunction(this, 'MyFunction', {\n runtime: lambda.Runtime.NODEJS_12_X,\n handler: 'index.handler',\n code: lambda.Code.fromAsset(path.join(__dirname, 'lambda-handler')),\n});\n\ndeclare const myBucket: s3.Bucket;\nnew cloudfront.Distribution(this, 'myDist', {\n defaultBehavior: {\n origin: new origins.S3Origin(myBucket),\n edgeLambdas: [\n {\n functionVersion: myFunc.currentVersion,\n eventType: cloudfront.LambdaEdgeEventType.VIEWER_REQUEST,\n }\n ],\n },\n});",
15745 "stability": "stable",
15746 "summary": "The type of events that a Lambda@Edge function can be invoked in response to."
15747 },
15748 "fqn": "@aws-cdk/aws-cloudfront.LambdaEdgeEventType",
15749 "kind": "enum",
15750 "locationInModule": {
15751 "filename": "lib/distribution.ts",
15752 "line": 634
15753 },
15754 "members": [
15755 {
15756 "docs": {
15757 "stability": "stable",
15758 "summary": "The origin-request specifies the request to the origin location (e.g. S3)."
15759 },
15760 "name": "ORIGIN_REQUEST"
15761 },
15762 {
15763 "docs": {
15764 "stability": "stable",
15765 "summary": "The origin-response specifies the response from the origin location (e.g. S3)."
15766 },
15767 "name": "ORIGIN_RESPONSE"
15768 },
15769 {
15770 "docs": {
15771 "stability": "stable",
15772 "summary": "The viewer-request specifies the incoming request."
15773 },
15774 "name": "VIEWER_REQUEST"
15775 },
15776 {
15777 "docs": {
15778 "stability": "stable",
15779 "summary": "The viewer-response specifies the outgoing response."
15780 },
15781 "name": "VIEWER_RESPONSE"
15782 }
15783 ],
15784 "name": "LambdaEdgeEventType",
15785 "symbolId": "lib/distribution:LambdaEdgeEventType"
15786 },
15787 "@aws-cdk/aws-cloudfront.LambdaFunctionAssociation": {
15788 "assembly": "@aws-cdk/aws-cloudfront",
15789 "datatype": true,
15790 "docs": {
15791 "stability": "stable",
15792 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nimport * as lambda from '@aws-cdk/aws-lambda';\n\ndeclare const version: lambda.Version;\nconst lambdaFunctionAssociation: cloudfront.LambdaFunctionAssociation = {\n eventType: cloudfront.LambdaEdgeEventType.ORIGIN_REQUEST,\n lambdaFunction: version,\n\n // the properties below are optional\n includeBody: false,\n};",
15793 "custom": {
15794 "exampleMetadata": "fixture=_generated"
15795 }
15796 },
15797 "fqn": "@aws-cdk/aws-cloudfront.LambdaFunctionAssociation",
15798 "kind": "interface",
15799 "locationInModule": {
15800 "filename": "lib/web-distribution.ts",
15801 "line": 465
15802 },
15803 "name": "LambdaFunctionAssociation",
15804 "properties": [
15805 {
15806 "abstract": true,
15807 "docs": {
15808 "stability": "stable",
15809 "summary": "The lambda event type defines at which event the lambda is called during the request lifecycle."
15810 },
15811 "immutable": true,
15812 "locationInModule": {
15813 "filename": "lib/web-distribution.ts",
15814 "line": 471
15815 },
15816 "name": "eventType",
15817 "type": {
15818 "fqn": "@aws-cdk/aws-cloudfront.LambdaEdgeEventType"
15819 }
15820 },
15821 {
15822 "abstract": true,
15823 "docs": {
15824 "stability": "stable",
15825 "summary": "A version of the lambda to associate."
15826 },
15827 "immutable": true,
15828 "locationInModule": {
15829 "filename": "lib/web-distribution.ts",
15830 "line": 476
15831 },
15832 "name": "lambdaFunction",
15833 "type": {
15834 "fqn": "@aws-cdk/aws-lambda.IVersion"
15835 }
15836 },
15837 {
15838 "abstract": true,
15839 "docs": {
15840 "default": "false",
15841 "remarks": "Only valid for \"request\" event types (`ORIGIN_REQUEST` or `VIEWER_REQUEST`).\nSee https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/lambda-include-body-access.html",
15842 "stability": "stable",
15843 "summary": "Allows a Lambda function to have read access to the body content."
15844 },
15845 "immutable": true,
15846 "locationInModule": {
15847 "filename": "lib/web-distribution.ts",
15848 "line": 485
15849 },
15850 "name": "includeBody",
15851 "optional": true,
15852 "type": {
15853 "primitive": "boolean"
15854 }
15855 }
15856 ],
15857 "symbolId": "lib/web-distribution:LambdaFunctionAssociation"
15858 },
15859 "@aws-cdk/aws-cloudfront.LoggingConfiguration": {
15860 "assembly": "@aws-cdk/aws-cloudfront",
15861 "datatype": true,
15862 "docs": {
15863 "stability": "stable",
15864 "summary": "Logging configuration for incoming requests.",
15865 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nimport * as s3 from '@aws-cdk/aws-s3';\n\ndeclare const bucket: s3.Bucket;\nconst loggingConfiguration: cloudfront.LoggingConfiguration = {\n bucket: bucket,\n includeCookies: false,\n prefix: 'prefix',\n};",
15866 "custom": {
15867 "exampleMetadata": "fixture=_generated"
15868 }
15869 },
15870 "fqn": "@aws-cdk/aws-cloudfront.LoggingConfiguration",
15871 "kind": "interface",
15872 "locationInModule": {
15873 "filename": "lib/web-distribution.ts",
15874 "line": 95
15875 },
15876 "name": "LoggingConfiguration",
15877 "properties": [
15878 {
15879 "abstract": true,
15880 "docs": {
15881 "default": "- A logging bucket is automatically created.",
15882 "stability": "stable",
15883 "summary": "Bucket to log requests to."
15884 },
15885 "immutable": true,
15886 "locationInModule": {
15887 "filename": "lib/web-distribution.ts",
15888 "line": 101
15889 },
15890 "name": "bucket",
15891 "optional": true,
15892 "type": {
15893 "fqn": "@aws-cdk/aws-s3.IBucket"
15894 }
15895 },
15896 {
15897 "abstract": true,
15898 "docs": {
15899 "default": "false",
15900 "stability": "stable",
15901 "summary": "Whether to include the cookies in the logs."
15902 },
15903 "immutable": true,
15904 "locationInModule": {
15905 "filename": "lib/web-distribution.ts",
15906 "line": 108
15907 },
15908 "name": "includeCookies",
15909 "optional": true,
15910 "type": {
15911 "primitive": "boolean"
15912 }
15913 },
15914 {
15915 "abstract": true,
15916 "docs": {
15917 "default": "- No prefix.",
15918 "stability": "stable",
15919 "summary": "Where in the bucket to store logs."
15920 },
15921 "immutable": true,
15922 "locationInModule": {
15923 "filename": "lib/web-distribution.ts",
15924 "line": 115
15925 },
15926 "name": "prefix",
15927 "optional": true,
15928 "type": {
15929 "primitive": "string"
15930 }
15931 }
15932 ],
15933 "symbolId": "lib/web-distribution:LoggingConfiguration"
15934 },
15935 "@aws-cdk/aws-cloudfront.OriginAccessIdentity": {
15936 "assembly": "@aws-cdk/aws-cloudfront",
15937 "base": "@aws-cdk/core.Resource",
15938 "docs": {
15939 "custom": {
15940 "resource": "AWS::CloudFront::CloudFrontOriginAccessIdentity",
15941 "exampleMetadata": "fixture=_generated"
15942 },
15943 "stability": "stable",
15944 "summary": "An origin access identity is a special CloudFront user that you can associate with Amazon S3 origins, so that you can secure all or just some of your Amazon S3 content.",
15945 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst originAccessIdentity = new cloudfront.OriginAccessIdentity(this, 'MyOriginAccessIdentity', /* all optional props */ {\n comment: 'comment',\n});"
15946 },
15947 "fqn": "@aws-cdk/aws-cloudfront.OriginAccessIdentity",
15948 "initializer": {
15949 "docs": {
15950 "stability": "stable"
15951 },
15952 "locationInModule": {
15953 "filename": "lib/origin-access-identity.ts",
15954 "line": 107
15955 },
15956 "parameters": [
15957 {
15958 "name": "scope",
15959 "type": {
15960 "fqn": "constructs.Construct"
15961 }
15962 },
15963 {
15964 "name": "id",
15965 "type": {
15966 "primitive": "string"
15967 }
15968 },
15969 {
15970 "name": "props",
15971 "optional": true,
15972 "type": {
15973 "fqn": "@aws-cdk/aws-cloudfront.OriginAccessIdentityProps"
15974 }
15975 }
15976 ]
15977 },
15978 "interfaces": [
15979 "@aws-cdk/aws-cloudfront.IOriginAccessIdentity"
15980 ],
15981 "kind": "class",
15982 "locationInModule": {
15983 "filename": "lib/origin-access-identity.ts",
15984 "line": 61
15985 },
15986 "methods": [
15987 {
15988 "docs": {
15989 "stability": "stable",
15990 "summary": "Creates a OriginAccessIdentity by providing the OriginAccessIdentityName."
15991 },
15992 "locationInModule": {
15993 "filename": "lib/origin-access-identity.ts",
15994 "line": 65
15995 },
15996 "name": "fromOriginAccessIdentityName",
15997 "parameters": [
15998 {
15999 "name": "scope",
16000 "type": {
16001 "fqn": "constructs.Construct"
16002 }
16003 },
16004 {
16005 "name": "id",
16006 "type": {
16007 "primitive": "string"
16008 }
16009 },
16010 {
16011 "name": "originAccessIdentityName",
16012 "type": {
16013 "primitive": "string"
16014 }
16015 }
16016 ],
16017 "returns": {
16018 "type": {
16019 "fqn": "@aws-cdk/aws-cloudfront.IOriginAccessIdentity"
16020 }
16021 },
16022 "static": true
16023 },
16024 {
16025 "docs": {
16026 "stability": "stable",
16027 "summary": "The ARN to include in S3 bucket policy to allow CloudFront access."
16028 },
16029 "locationInModule": {
16030 "filename": "lib/origin-access-identity.ts",
16031 "line": 41
16032 },
16033 "name": "arn",
16034 "protected": true,
16035 "returns": {
16036 "type": {
16037 "primitive": "string"
16038 }
16039 }
16040 }
16041 ],
16042 "name": "OriginAccessIdentity",
16043 "properties": [
16044 {
16045 "docs": {
16046 "custom": {
16047 "attribute": "true"
16048 },
16049 "stability": "stable",
16050 "summary": "The Amazon S3 canonical user ID for the origin access identity, used when giving the origin access identity read permission to an object in Amazon S3."
16051 },
16052 "immutable": true,
16053 "locationInModule": {
16054 "filename": "lib/origin-access-identity.ts",
16055 "line": 88
16056 },
16057 "name": "cloudFrontOriginAccessIdentityS3CanonicalUserId",
16058 "type": {
16059 "primitive": "string"
16060 }
16061 },
16062 {
16063 "docs": {
16064 "stability": "stable",
16065 "summary": "Derived principal value for bucket access."
16066 },
16067 "immutable": true,
16068 "locationInModule": {
16069 "filename": "lib/origin-access-identity.ts",
16070 "line": 93
16071 },
16072 "name": "grantPrincipal",
16073 "overrides": "@aws-cdk/aws-iam.IGrantable",
16074 "type": {
16075 "fqn": "@aws-cdk/aws-iam.IPrincipal"
16076 }
16077 },
16078 {
16079 "docs": {
16080 "custom": {
16081 "attribute": "true"
16082 },
16083 "stability": "stable",
16084 "summary": "The Origin Access Identity Name (physical id)."
16085 },
16086 "immutable": true,
16087 "locationInModule": {
16088 "filename": "lib/origin-access-identity.ts",
16089 "line": 100
16090 },
16091 "name": "originAccessIdentityName",
16092 "overrides": "@aws-cdk/aws-cloudfront.IOriginAccessIdentity",
16093 "type": {
16094 "primitive": "string"
16095 }
16096 }
16097 ],
16098 "symbolId": "lib/origin-access-identity:OriginAccessIdentity"
16099 },
16100 "@aws-cdk/aws-cloudfront.OriginAccessIdentityProps": {
16101 "assembly": "@aws-cdk/aws-cloudfront",
16102 "datatype": true,
16103 "docs": {
16104 "stability": "stable",
16105 "summary": "Properties of CloudFront OriginAccessIdentity.",
16106 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst originAccessIdentityProps: cloudfront.OriginAccessIdentityProps = {\n comment: 'comment',\n};",
16107 "custom": {
16108 "exampleMetadata": "fixture=_generated"
16109 }
16110 },
16111 "fqn": "@aws-cdk/aws-cloudfront.OriginAccessIdentityProps",
16112 "kind": "interface",
16113 "locationInModule": {
16114 "filename": "lib/origin-access-identity.ts",
16115 "line": 9
16116 },
16117 "name": "OriginAccessIdentityProps",
16118 "properties": [
16119 {
16120 "abstract": true,
16121 "docs": {
16122 "default": "\"Allows CloudFront to reach the bucket\"",
16123 "stability": "stable",
16124 "summary": "Any comments you want to include about the origin access identity."
16125 },
16126 "immutable": true,
16127 "locationInModule": {
16128 "filename": "lib/origin-access-identity.ts",
16129 "line": 15
16130 },
16131 "name": "comment",
16132 "optional": true,
16133 "type": {
16134 "primitive": "string"
16135 }
16136 }
16137 ],
16138 "symbolId": "lib/origin-access-identity:OriginAccessIdentityProps"
16139 },
16140 "@aws-cdk/aws-cloudfront.OriginBase": {
16141 "abstract": true,
16142 "assembly": "@aws-cdk/aws-cloudfront",
16143 "docs": {
16144 "stability": "stable",
16145 "summary": "Represents a distribution origin, that describes the Amazon S3 bucket, HTTP server (for example, a web server), Amazon MediaStore, or other server from which CloudFront gets your files."
16146 },
16147 "fqn": "@aws-cdk/aws-cloudfront.OriginBase",
16148 "initializer": {
16149 "docs": {
16150 "stability": "stable"
16151 },
16152 "locationInModule": {
16153 "filename": "lib/origin.ts",
16154 "line": 125
16155 },
16156 "parameters": [
16157 {
16158 "name": "domainName",
16159 "type": {
16160 "primitive": "string"
16161 }
16162 },
16163 {
16164 "name": "props",
16165 "optional": true,
16166 "type": {
16167 "fqn": "@aws-cdk/aws-cloudfront.OriginProps"
16168 }
16169 }
16170 ],
16171 "protected": true
16172 },
16173 "interfaces": [
16174 "@aws-cdk/aws-cloudfront.IOrigin"
16175 ],
16176 "kind": "class",
16177 "locationInModule": {
16178 "filename": "lib/origin.ts",
16179 "line": 117
16180 },
16181 "methods": [
16182 {
16183 "docs": {
16184 "remarks": "Can be used to grant permissions, create dependent resources, etc.",
16185 "stability": "stable",
16186 "summary": "Binds the origin to the associated Distribution."
16187 },
16188 "locationInModule": {
16189 "filename": "lib/origin.ts",
16190 "line": 141
16191 },
16192 "name": "bind",
16193 "overrides": "@aws-cdk/aws-cloudfront.IOrigin",
16194 "parameters": [
16195 {
16196 "name": "_scope",
16197 "type": {
16198 "fqn": "@aws-cdk/core.Construct"
16199 }
16200 },
16201 {
16202 "name": "options",
16203 "type": {
16204 "fqn": "@aws-cdk/aws-cloudfront.OriginBindOptions"
16205 }
16206 }
16207 ],
16208 "returns": {
16209 "type": {
16210 "fqn": "@aws-cdk/aws-cloudfront.OriginBindConfig"
16211 }
16212 }
16213 },
16214 {
16215 "docs": {
16216 "stability": "stable"
16217 },
16218 "locationInModule": {
16219 "filename": "lib/origin.ts",
16220 "line": 170
16221 },
16222 "name": "renderCustomOriginConfig",
16223 "protected": true,
16224 "returns": {
16225 "optional": true,
16226 "type": {
16227 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.CustomOriginConfigProperty"
16228 }
16229 }
16230 },
16231 {
16232 "docs": {
16233 "stability": "stable"
16234 },
16235 "locationInModule": {
16236 "filename": "lib/origin.ts",
16237 "line": 165
16238 },
16239 "name": "renderS3OriginConfig",
16240 "protected": true,
16241 "returns": {
16242 "optional": true,
16243 "type": {
16244 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.S3OriginConfigProperty"
16245 }
16246 }
16247 }
16248 ],
16249 "name": "OriginBase",
16250 "symbolId": "lib/origin:OriginBase"
16251 },
16252 "@aws-cdk/aws-cloudfront.OriginBindConfig": {
16253 "assembly": "@aws-cdk/aws-cloudfront",
16254 "datatype": true,
16255 "docs": {
16256 "stability": "stable",
16257 "summary": "The struct returned from {@link IOrigin.bind}.",
16258 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\n\ndeclare const origin: cloudfront.IOrigin;\nconst originBindConfig: cloudfront.OriginBindConfig = {\n failoverConfig: {\n failoverOrigin: origin,\n\n // the properties below are optional\n statusCodes: [123],\n },\n originProperty: {\n domainName: 'domainName',\n id: 'id',\n\n // the properties below are optional\n connectionAttempts: 123,\n connectionTimeout: 123,\n customOriginConfig: {\n originProtocolPolicy: 'originProtocolPolicy',\n\n // the properties below are optional\n httpPort: 123,\n httpsPort: 123,\n originKeepaliveTimeout: 123,\n originReadTimeout: 123,\n originSslProtocols: ['originSslProtocols'],\n },\n originCustomHeaders: [{\n headerName: 'headerName',\n headerValue: 'headerValue',\n }],\n originPath: 'originPath',\n originShield: {\n enabled: false,\n originShieldRegion: 'originShieldRegion',\n },\n s3OriginConfig: {\n originAccessIdentity: 'originAccessIdentity',\n },\n },\n};",
16259 "custom": {
16260 "exampleMetadata": "fixture=_generated"
16261 }
16262 },
16263 "fqn": "@aws-cdk/aws-cloudfront.OriginBindConfig",
16264 "kind": "interface",
16265 "locationInModule": {
16266 "filename": "lib/origin.ts",
16267 "line": 25
16268 },
16269 "name": "OriginBindConfig",
16270 "properties": [
16271 {
16272 "abstract": true,
16273 "docs": {
16274 "default": "- nothing is returned",
16275 "stability": "stable",
16276 "summary": "The failover configuration for this Origin."
16277 },
16278 "immutable": true,
16279 "locationInModule": {
16280 "filename": "lib/origin.ts",
16281 "line": 38
16282 },
16283 "name": "failoverConfig",
16284 "optional": true,
16285 "type": {
16286 "fqn": "@aws-cdk/aws-cloudfront.OriginFailoverConfig"
16287 }
16288 },
16289 {
16290 "abstract": true,
16291 "docs": {
16292 "default": "- nothing is returned",
16293 "stability": "stable",
16294 "summary": "The CloudFormation OriginProperty configuration for this Origin."
16295 },
16296 "immutable": true,
16297 "locationInModule": {
16298 "filename": "lib/origin.ts",
16299 "line": 31
16300 },
16301 "name": "originProperty",
16302 "optional": true,
16303 "type": {
16304 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.OriginProperty"
16305 }
16306 }
16307 ],
16308 "symbolId": "lib/origin:OriginBindConfig"
16309 },
16310 "@aws-cdk/aws-cloudfront.OriginBindOptions": {
16311 "assembly": "@aws-cdk/aws-cloudfront",
16312 "datatype": true,
16313 "docs": {
16314 "stability": "stable",
16315 "summary": "Options passed to Origin.bind().",
16316 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst originBindOptions: cloudfront.OriginBindOptions = {\n originId: 'originId',\n};",
16317 "custom": {
16318 "exampleMetadata": "fixture=_generated"
16319 }
16320 },
16321 "fqn": "@aws-cdk/aws-cloudfront.OriginBindOptions",
16322 "kind": "interface",
16323 "locationInModule": {
16324 "filename": "lib/origin.ts",
16325 "line": 105
16326 },
16327 "name": "OriginBindOptions",
16328 "properties": [
16329 {
16330 "abstract": true,
16331 "docs": {
16332 "stability": "stable",
16333 "summary": "The identifier of this Origin, as assigned by the Distribution this Origin has been used added to."
16334 },
16335 "immutable": true,
16336 "locationInModule": {
16337 "filename": "lib/origin.ts",
16338 "line": 110
16339 },
16340 "name": "originId",
16341 "type": {
16342 "primitive": "string"
16343 }
16344 }
16345 ],
16346 "symbolId": "lib/origin:OriginBindOptions"
16347 },
16348 "@aws-cdk/aws-cloudfront.OriginFailoverConfig": {
16349 "assembly": "@aws-cdk/aws-cloudfront",
16350 "datatype": true,
16351 "docs": {
16352 "stability": "stable",
16353 "summary": "The failover configuration used for Origin Groups, returned in {@link OriginBindConfig.failoverConfig}.",
16354 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\n\ndeclare const origin: cloudfront.IOrigin;\nconst originFailoverConfig: cloudfront.OriginFailoverConfig = {\n failoverOrigin: origin,\n\n // the properties below are optional\n statusCodes: [123],\n};",
16355 "custom": {
16356 "exampleMetadata": "fixture=_generated"
16357 }
16358 },
16359 "fqn": "@aws-cdk/aws-cloudfront.OriginFailoverConfig",
16360 "kind": "interface",
16361 "locationInModule": {
16362 "filename": "lib/origin.ts",
16363 "line": 12
16364 },
16365 "name": "OriginFailoverConfig",
16366 "properties": [
16367 {
16368 "abstract": true,
16369 "docs": {
16370 "stability": "stable",
16371 "summary": "The origin to use as the fallback origin."
16372 },
16373 "immutable": true,
16374 "locationInModule": {
16375 "filename": "lib/origin.ts",
16376 "line": 14
16377 },
16378 "name": "failoverOrigin",
16379 "type": {
16380 "fqn": "@aws-cdk/aws-cloudfront.IOrigin"
16381 }
16382 },
16383 {
16384 "abstract": true,
16385 "docs": {
16386 "default": "- 500, 502, 503 and 504",
16387 "stability": "stable",
16388 "summary": "The HTTP status codes of the response that trigger querying the failover Origin."
16389 },
16390 "immutable": true,
16391 "locationInModule": {
16392 "filename": "lib/origin.ts",
16393 "line": 21
16394 },
16395 "name": "statusCodes",
16396 "optional": true,
16397 "type": {
16398 "collection": {
16399 "elementtype": {
16400 "primitive": "number"
16401 },
16402 "kind": "array"
16403 }
16404 }
16405 }
16406 ],
16407 "symbolId": "lib/origin:OriginFailoverConfig"
16408 },
16409 "@aws-cdk/aws-cloudfront.OriginOptions": {
16410 "assembly": "@aws-cdk/aws-cloudfront",
16411 "datatype": true,
16412 "docs": {
16413 "stability": "stable",
16414 "summary": "Options to define an Origin.",
16415 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nimport * as cdk from '@aws-cdk/core';\nconst originOptions: cloudfront.OriginOptions = {\n connectionAttempts: 123,\n connectionTimeout: cdk.Duration.minutes(30),\n customHeaders: {\n customHeadersKey: 'customHeaders',\n },\n originShieldRegion: 'originShieldRegion',\n};",
16416 "custom": {
16417 "exampleMetadata": "fixture=_generated"
16418 }
16419 },
16420 "fqn": "@aws-cdk/aws-cloudfront.OriginOptions",
16421 "kind": "interface",
16422 "locationInModule": {
16423 "filename": "lib/origin.ts",
16424 "line": 56
16425 },
16426 "name": "OriginOptions",
16427 "properties": [
16428 {
16429 "abstract": true,
16430 "docs": {
16431 "default": "3",
16432 "remarks": "valid values are 1, 2, or 3 attempts.",
16433 "stability": "stable",
16434 "summary": "The number of times that CloudFront attempts to connect to the origin;"
16435 },
16436 "immutable": true,
16437 "locationInModule": {
16438 "filename": "lib/origin.ts",
16439 "line": 70
16440 },
16441 "name": "connectionAttempts",
16442 "optional": true,
16443 "type": {
16444 "primitive": "number"
16445 }
16446 },
16447 {
16448 "abstract": true,
16449 "docs": {
16450 "default": "Duration.seconds(10)",
16451 "remarks": "Valid values are 1-10 seconds, inclusive.",
16452 "stability": "stable",
16453 "summary": "The number of seconds that CloudFront waits when trying to establish a connection to the origin."
16454 },
16455 "immutable": true,
16456 "locationInModule": {
16457 "filename": "lib/origin.ts",
16458 "line": 63
16459 },
16460 "name": "connectionTimeout",
16461 "optional": true,
16462 "type": {
16463 "fqn": "@aws-cdk/core.Duration"
16464 }
16465 },
16466 {
16467 "abstract": true,
16468 "docs": {
16469 "default": "{}",
16470 "stability": "stable",
16471 "summary": "A list of HTTP header names and values that CloudFront adds to requests it sends to the origin."
16472 },
16473 "immutable": true,
16474 "locationInModule": {
16475 "filename": "lib/origin.ts",
16476 "line": 77
16477 },
16478 "name": "customHeaders",
16479 "optional": true,
16480 "type": {
16481 "collection": {
16482 "elementtype": {
16483 "primitive": "string"
16484 },
16485 "kind": "map"
16486 }
16487 }
16488 },
16489 {
16490 "abstract": true,
16491 "docs": {
16492 "default": "- origin shield not enabled",
16493 "see": "https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/origin-shield.html",
16494 "stability": "stable",
16495 "summary": "When you enable Origin Shield in the AWS Region that has the lowest latency to your origin, you can get better network performance."
16496 },
16497 "immutable": true,
16498 "locationInModule": {
16499 "filename": "lib/origin.ts",
16500 "line": 86
16501 },
16502 "name": "originShieldRegion",
16503 "optional": true,
16504 "type": {
16505 "primitive": "string"
16506 }
16507 }
16508 ],
16509 "symbolId": "lib/origin:OriginOptions"
16510 },
16511 "@aws-cdk/aws-cloudfront.OriginProps": {
16512 "assembly": "@aws-cdk/aws-cloudfront",
16513 "datatype": true,
16514 "docs": {
16515 "stability": "stable",
16516 "summary": "Properties to define an Origin.",
16517 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nimport * as cdk from '@aws-cdk/core';\nconst originProps: cloudfront.OriginProps = {\n connectionAttempts: 123,\n connectionTimeout: cdk.Duration.minutes(30),\n customHeaders: {\n customHeadersKey: 'customHeaders',\n },\n originPath: 'originPath',\n originShieldRegion: 'originShieldRegion',\n};",
16518 "custom": {
16519 "exampleMetadata": "fixture=_generated"
16520 }
16521 },
16522 "fqn": "@aws-cdk/aws-cloudfront.OriginProps",
16523 "interfaces": [
16524 "@aws-cdk/aws-cloudfront.OriginOptions"
16525 ],
16526 "kind": "interface",
16527 "locationInModule": {
16528 "filename": "lib/origin.ts",
16529 "line": 92
16530 },
16531 "name": "OriginProps",
16532 "properties": [
16533 {
16534 "abstract": true,
16535 "docs": {
16536 "default": "'/'",
16537 "remarks": "Must begin, but not end, with '/' (e.g., '/production/images').",
16538 "stability": "stable",
16539 "summary": "An optional path that CloudFront appends to the origin domain name when CloudFront requests content from the origin."
16540 },
16541 "immutable": true,
16542 "locationInModule": {
16543 "filename": "lib/origin.ts",
16544 "line": 99
16545 },
16546 "name": "originPath",
16547 "optional": true,
16548 "type": {
16549 "primitive": "string"
16550 }
16551 }
16552 ],
16553 "symbolId": "lib/origin:OriginProps"
16554 },
16555 "@aws-cdk/aws-cloudfront.OriginProtocolPolicy": {
16556 "assembly": "@aws-cdk/aws-cloudfront",
16557 "docs": {
16558 "custom": {
16559 "exampleMetadata": "infused"
16560 },
16561 "example": "import * as elbv2 from '@aws-cdk/aws-elasticloadbalancingv2';\n\ndeclare const loadBalancer: elbv2.ApplicationLoadBalancer;\nconst origin = new origins.LoadBalancerV2Origin(loadBalancer, {\n connectionAttempts: 3,\n connectionTimeout: Duration.seconds(5),\n readTimeout: Duration.seconds(45),\n keepaliveTimeout: Duration.seconds(45),\n protocolPolicy: cloudfront.OriginProtocolPolicy.MATCH_VIEWER,\n});",
16562 "stability": "stable",
16563 "summary": "Defines what protocols CloudFront will use to connect to an origin."
16564 },
16565 "fqn": "@aws-cdk/aws-cloudfront.OriginProtocolPolicy",
16566 "kind": "enum",
16567 "locationInModule": {
16568 "filename": "lib/distribution.ts",
16569 "line": 524
16570 },
16571 "members": [
16572 {
16573 "docs": {
16574 "stability": "stable",
16575 "summary": "Connect on HTTP only."
16576 },
16577 "name": "HTTP_ONLY"
16578 },
16579 {
16580 "docs": {
16581 "stability": "stable",
16582 "summary": "Connect with the same protocol as the viewer."
16583 },
16584 "name": "MATCH_VIEWER"
16585 },
16586 {
16587 "docs": {
16588 "stability": "stable",
16589 "summary": "Connect on HTTPS only."
16590 },
16591 "name": "HTTPS_ONLY"
16592 }
16593 ],
16594 "name": "OriginProtocolPolicy",
16595 "symbolId": "lib/distribution:OriginProtocolPolicy"
16596 },
16597 "@aws-cdk/aws-cloudfront.OriginRequestCookieBehavior": {
16598 "assembly": "@aws-cdk/aws-cloudfront",
16599 "docs": {
16600 "custom": {
16601 "exampleMetadata": "infused"
16602 },
16603 "example": "// Creating a custom origin request policy for a Distribution -- all parameters optional\ndeclare const bucketOrigin: origins.S3Origin;\nconst myOriginRequestPolicy = new cloudfront.OriginRequestPolicy(this, 'OriginRequestPolicy', {\n originRequestPolicyName: 'MyPolicy',\n comment: 'A default policy',\n cookieBehavior: cloudfront.OriginRequestCookieBehavior.none(),\n headerBehavior: cloudfront.OriginRequestHeaderBehavior.all('CloudFront-Is-Android-Viewer'),\n queryStringBehavior: cloudfront.OriginRequestQueryStringBehavior.allowList('username'),\n});\n\nnew cloudfront.Distribution(this, 'myDistCustomPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n originRequestPolicy: myOriginRequestPolicy,\n },\n});",
16604 "stability": "stable",
16605 "summary": "Determines whether any cookies in viewer requests (and if so, which cookies) are included in requests that CloudFront sends to the origin."
16606 },
16607 "fqn": "@aws-cdk/aws-cloudfront.OriginRequestCookieBehavior",
16608 "kind": "class",
16609 "locationInModule": {
16610 "filename": "lib/origin-request-policy.ts",
16611 "line": 127
16612 },
16613 "methods": [
16614 {
16615 "docs": {
16616 "stability": "stable",
16617 "summary": "All cookies in viewer requests are included in requests that CloudFront sends to the origin."
16618 },
16619 "locationInModule": {
16620 "filename": "lib/origin-request-policy.ts",
16621 "line": 135
16622 },
16623 "name": "all",
16624 "returns": {
16625 "type": {
16626 "fqn": "@aws-cdk/aws-cloudfront.OriginRequestCookieBehavior"
16627 }
16628 },
16629 "static": true
16630 },
16631 {
16632 "docs": {
16633 "stability": "stable",
16634 "summary": "Only the provided `cookies` are included in requests that CloudFront sends to the origin."
16635 },
16636 "locationInModule": {
16637 "filename": "lib/origin-request-policy.ts",
16638 "line": 138
16639 },
16640 "name": "allowList",
16641 "parameters": [
16642 {
16643 "name": "cookies",
16644 "type": {
16645 "primitive": "string"
16646 },
16647 "variadic": true
16648 }
16649 ],
16650 "returns": {
16651 "type": {
16652 "fqn": "@aws-cdk/aws-cloudfront.OriginRequestCookieBehavior"
16653 }
16654 },
16655 "static": true,
16656 "variadic": true
16657 },
16658 {
16659 "docs": {
16660 "remarks": "Any cookies that are listed in a CachePolicy are still included in origin requests.",
16661 "stability": "stable",
16662 "summary": "Cookies in viewer requests are not included in requests that CloudFront sends to the origin."
16663 },
16664 "locationInModule": {
16665 "filename": "lib/origin-request-policy.ts",
16666 "line": 132
16667 },
16668 "name": "none",
16669 "returns": {
16670 "type": {
16671 "fqn": "@aws-cdk/aws-cloudfront.OriginRequestCookieBehavior"
16672 }
16673 },
16674 "static": true
16675 }
16676 ],
16677 "name": "OriginRequestCookieBehavior",
16678 "properties": [
16679 {
16680 "docs": {
16681 "stability": "stable",
16682 "summary": "The behavior of cookies: allow all, none or an allow list."
16683 },
16684 "immutable": true,
16685 "locationInModule": {
16686 "filename": "lib/origin-request-policy.ts",
16687 "line": 146
16688 },
16689 "name": "behavior",
16690 "type": {
16691 "primitive": "string"
16692 }
16693 },
16694 {
16695 "docs": {
16696 "stability": "stable",
16697 "summary": "The cookies to allow, if the behavior is an allow list."
16698 },
16699 "immutable": true,
16700 "locationInModule": {
16701 "filename": "lib/origin-request-policy.ts",
16702 "line": 148
16703 },
16704 "name": "cookies",
16705 "optional": true,
16706 "type": {
16707 "collection": {
16708 "elementtype": {
16709 "primitive": "string"
16710 },
16711 "kind": "array"
16712 }
16713 }
16714 }
16715 ],
16716 "symbolId": "lib/origin-request-policy:OriginRequestCookieBehavior"
16717 },
16718 "@aws-cdk/aws-cloudfront.OriginRequestHeaderBehavior": {
16719 "assembly": "@aws-cdk/aws-cloudfront",
16720 "docs": {
16721 "custom": {
16722 "exampleMetadata": "infused"
16723 },
16724 "example": "// Creating a custom origin request policy for a Distribution -- all parameters optional\ndeclare const bucketOrigin: origins.S3Origin;\nconst myOriginRequestPolicy = new cloudfront.OriginRequestPolicy(this, 'OriginRequestPolicy', {\n originRequestPolicyName: 'MyPolicy',\n comment: 'A default policy',\n cookieBehavior: cloudfront.OriginRequestCookieBehavior.none(),\n headerBehavior: cloudfront.OriginRequestHeaderBehavior.all('CloudFront-Is-Android-Viewer'),\n queryStringBehavior: cloudfront.OriginRequestQueryStringBehavior.allowList('username'),\n});\n\nnew cloudfront.Distribution(this, 'myDistCustomPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n originRequestPolicy: myOriginRequestPolicy,\n },\n});",
16725 "stability": "stable",
16726 "summary": "Determines whether any HTTP headers (and if so, which headers) are included in requests that CloudFront sends to the origin."
16727 },
16728 "fqn": "@aws-cdk/aws-cloudfront.OriginRequestHeaderBehavior",
16729 "kind": "class",
16730 "locationInModule": {
16731 "filename": "lib/origin-request-policy.ts",
16732 "line": 159
16733 },
16734 "methods": [
16735 {
16736 "docs": {
16737 "remarks": "Additionally, any additional CloudFront headers provided are included; the additional headers are added by CloudFront.",
16738 "see": "https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-cloudfront-headers.html",
16739 "stability": "stable",
16740 "summary": "All HTTP headers in viewer requests are included in requests that CloudFront sends to the origin."
16741 },
16742 "locationInModule": {
16743 "filename": "lib/origin-request-policy.ts",
16744 "line": 171
16745 },
16746 "name": "all",
16747 "parameters": [
16748 {
16749 "name": "cloudfrontHeaders",
16750 "type": {
16751 "primitive": "string"
16752 },
16753 "variadic": true
16754 }
16755 ],
16756 "returns": {
16757 "type": {
16758 "fqn": "@aws-cdk/aws-cloudfront.OriginRequestHeaderBehavior"
16759 }
16760 },
16761 "static": true,
16762 "variadic": true
16763 },
16764 {
16765 "docs": {
16766 "stability": "stable",
16767 "summary": "Listed headers are included in requests that CloudFront sends to the origin."
16768 },
16769 "locationInModule": {
16770 "filename": "lib/origin-request-policy.ts",
16771 "line": 183
16772 },
16773 "name": "allowList",
16774 "parameters": [
16775 {
16776 "name": "headers",
16777 "type": {
16778 "primitive": "string"
16779 },
16780 "variadic": true
16781 }
16782 ],
16783 "returns": {
16784 "type": {
16785 "fqn": "@aws-cdk/aws-cloudfront.OriginRequestHeaderBehavior"
16786 }
16787 },
16788 "static": true,
16789 "variadic": true
16790 },
16791 {
16792 "docs": {
16793 "remarks": "Any headers that are listed in a CachePolicy are still included in origin requests.",
16794 "stability": "stable",
16795 "summary": "HTTP headers are not included in requests that CloudFront sends to the origin."
16796 },
16797 "locationInModule": {
16798 "filename": "lib/origin-request-policy.ts",
16799 "line": 164
16800 },
16801 "name": "none",
16802 "returns": {
16803 "type": {
16804 "fqn": "@aws-cdk/aws-cloudfront.OriginRequestHeaderBehavior"
16805 }
16806 },
16807 "static": true
16808 }
16809 ],
16810 "name": "OriginRequestHeaderBehavior",
16811 "properties": [
16812 {
16813 "docs": {
16814 "stability": "stable",
16815 "summary": "The behavior of headers: allow all, none or an allow list."
16816 },
16817 "immutable": true,
16818 "locationInModule": {
16819 "filename": "lib/origin-request-policy.ts",
16820 "line": 194
16821 },
16822 "name": "behavior",
16823 "type": {
16824 "primitive": "string"
16825 }
16826 },
16827 {
16828 "docs": {
16829 "stability": "stable",
16830 "summary": "The headers for the allow list or the included CloudFront headers, if applicable."
16831 },
16832 "immutable": true,
16833 "locationInModule": {
16834 "filename": "lib/origin-request-policy.ts",
16835 "line": 196
16836 },
16837 "name": "headers",
16838 "optional": true,
16839 "type": {
16840 "collection": {
16841 "elementtype": {
16842 "primitive": "string"
16843 },
16844 "kind": "array"
16845 }
16846 }
16847 }
16848 ],
16849 "symbolId": "lib/origin-request-policy:OriginRequestHeaderBehavior"
16850 },
16851 "@aws-cdk/aws-cloudfront.OriginRequestPolicy": {
16852 "assembly": "@aws-cdk/aws-cloudfront",
16853 "base": "@aws-cdk/core.Resource",
16854 "docs": {
16855 "custom": {
16856 "exampleMetadata": "infused",
16857 "resource": "AWS::CloudFront::OriginRequestPolicy"
16858 },
16859 "example": "// Using an existing origin request policy for a Distribution\ndeclare const bucketOrigin: origins.S3Origin;\nnew cloudfront.Distribution(this, 'myDistManagedPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n originRequestPolicy: cloudfront.OriginRequestPolicy.CORS_S3_ORIGIN,\n },\n});",
16860 "stability": "stable",
16861 "summary": "A Origin Request Policy configuration."
16862 },
16863 "fqn": "@aws-cdk/aws-cloudfront.OriginRequestPolicy",
16864 "initializer": {
16865 "docs": {
16866 "stability": "stable"
16867 },
16868 "locationInModule": {
16869 "filename": "lib/origin-request-policy.ts",
16870 "line": 86
16871 },
16872 "parameters": [
16873 {
16874 "name": "scope",
16875 "type": {
16876 "fqn": "constructs.Construct"
16877 }
16878 },
16879 {
16880 "name": "id",
16881 "type": {
16882 "primitive": "string"
16883 }
16884 },
16885 {
16886 "name": "props",
16887 "optional": true,
16888 "type": {
16889 "fqn": "@aws-cdk/aws-cloudfront.OriginRequestPolicyProps"
16890 }
16891 }
16892 ]
16893 },
16894 "interfaces": [
16895 "@aws-cdk/aws-cloudfront.IOriginRequestPolicy"
16896 ],
16897 "kind": "class",
16898 "locationInModule": {
16899 "filename": "lib/origin-request-policy.ts",
16900 "line": 57
16901 },
16902 "methods": [
16903 {
16904 "docs": {
16905 "stability": "stable",
16906 "summary": "Imports a Origin Request Policy from its id."
16907 },
16908 "locationInModule": {
16909 "filename": "lib/origin-request-policy.ts",
16910 "line": 71
16911 },
16912 "name": "fromOriginRequestPolicyId",
16913 "parameters": [
16914 {
16915 "name": "scope",
16916 "type": {
16917 "fqn": "constructs.Construct"
16918 }
16919 },
16920 {
16921 "name": "id",
16922 "type": {
16923 "primitive": "string"
16924 }
16925 },
16926 {
16927 "name": "originRequestPolicyId",
16928 "type": {
16929 "primitive": "string"
16930 }
16931 }
16932 ],
16933 "returns": {
16934 "type": {
16935 "fqn": "@aws-cdk/aws-cloudfront.IOriginRequestPolicy"
16936 }
16937 },
16938 "static": true
16939 }
16940 ],
16941 "name": "OriginRequestPolicy",
16942 "properties": [
16943 {
16944 "const": true,
16945 "docs": {
16946 "stability": "stable",
16947 "summary": "This policy includes all values (query strings, headers, and cookies) in the viewer request."
16948 },
16949 "immutable": true,
16950 "locationInModule": {
16951 "filename": "lib/origin-request-policy.ts",
16952 "line": 66
16953 },
16954 "name": "ALL_VIEWER",
16955 "static": true,
16956 "type": {
16957 "fqn": "@aws-cdk/aws-cloudfront.IOriginRequestPolicy"
16958 }
16959 },
16960 {
16961 "const": true,
16962 "docs": {
16963 "stability": "stable",
16964 "summary": "This policy includes the header that enables cross-origin resource sharing (CORS) requests when the origin is a custom origin."
16965 },
16966 "immutable": true,
16967 "locationInModule": {
16968 "filename": "lib/origin-request-policy.ts",
16969 "line": 62
16970 },
16971 "name": "CORS_CUSTOM_ORIGIN",
16972 "static": true,
16973 "type": {
16974 "fqn": "@aws-cdk/aws-cloudfront.IOriginRequestPolicy"
16975 }
16976 },
16977 {
16978 "const": true,
16979 "docs": {
16980 "stability": "stable",
16981 "summary": "This policy includes the headers that enable cross-origin resource sharing (CORS) requests when the origin is an Amazon S3 bucket."
16982 },
16983 "immutable": true,
16984 "locationInModule": {
16985 "filename": "lib/origin-request-policy.ts",
16986 "line": 64
16987 },
16988 "name": "CORS_S3_ORIGIN",
16989 "static": true,
16990 "type": {
16991 "fqn": "@aws-cdk/aws-cloudfront.IOriginRequestPolicy"
16992 }
16993 },
16994 {
16995 "const": true,
16996 "docs": {
16997 "stability": "stable",
16998 "summary": "This policy is designed for use with an origin that is an AWS Elemental MediaTailor endpoint."
16999 },
17000 "immutable": true,
17001 "locationInModule": {
17002 "filename": "lib/origin-request-policy.ts",
17003 "line": 68
17004 },
17005 "name": "ELEMENTAL_MEDIA_TAILOR",
17006 "static": true,
17007 "type": {
17008 "fqn": "@aws-cdk/aws-cloudfront.IOriginRequestPolicy"
17009 }
17010 },
17011 {
17012 "const": true,
17013 "docs": {
17014 "remarks": "It doesn’t include any query strings or cookies.",
17015 "stability": "stable",
17016 "summary": "This policy includes only the User-Agent and Referer headers."
17017 },
17018 "immutable": true,
17019 "locationInModule": {
17020 "filename": "lib/origin-request-policy.ts",
17021 "line": 60
17022 },
17023 "name": "USER_AGENT_REFERER_HEADERS",
17024 "static": true,
17025 "type": {
17026 "fqn": "@aws-cdk/aws-cloudfront.IOriginRequestPolicy"
17027 }
17028 },
17029 {
17030 "docs": {
17031 "stability": "stable",
17032 "summary": "The ID of the origin request policy."
17033 },
17034 "immutable": true,
17035 "locationInModule": {
17036 "filename": "lib/origin-request-policy.ts",
17037 "line": 84
17038 },
17039 "name": "originRequestPolicyId",
17040 "overrides": "@aws-cdk/aws-cloudfront.IOriginRequestPolicy",
17041 "type": {
17042 "primitive": "string"
17043 }
17044 }
17045 ],
17046 "symbolId": "lib/origin-request-policy:OriginRequestPolicy"
17047 },
17048 "@aws-cdk/aws-cloudfront.OriginRequestPolicyProps": {
17049 "assembly": "@aws-cdk/aws-cloudfront",
17050 "datatype": true,
17051 "docs": {
17052 "custom": {
17053 "exampleMetadata": "infused"
17054 },
17055 "example": "// Creating a custom origin request policy for a Distribution -- all parameters optional\ndeclare const bucketOrigin: origins.S3Origin;\nconst myOriginRequestPolicy = new cloudfront.OriginRequestPolicy(this, 'OriginRequestPolicy', {\n originRequestPolicyName: 'MyPolicy',\n comment: 'A default policy',\n cookieBehavior: cloudfront.OriginRequestCookieBehavior.none(),\n headerBehavior: cloudfront.OriginRequestHeaderBehavior.all('CloudFront-Is-Android-Viewer'),\n queryStringBehavior: cloudfront.OriginRequestQueryStringBehavior.allowList('username'),\n});\n\nnew cloudfront.Distribution(this, 'myDistCustomPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n originRequestPolicy: myOriginRequestPolicy,\n },\n});",
17056 "stability": "stable",
17057 "summary": "Properties for creating a Origin Request Policy."
17058 },
17059 "fqn": "@aws-cdk/aws-cloudfront.OriginRequestPolicyProps",
17060 "kind": "interface",
17061 "locationInModule": {
17062 "filename": "lib/origin-request-policy.ts",
17063 "line": 19
17064 },
17065 "name": "OriginRequestPolicyProps",
17066 "properties": [
17067 {
17068 "abstract": true,
17069 "docs": {
17070 "default": "- no comment",
17071 "stability": "stable",
17072 "summary": "A comment to describe the origin request policy."
17073 },
17074 "immutable": true,
17075 "locationInModule": {
17076 "filename": "lib/origin-request-policy.ts",
17077 "line": 31
17078 },
17079 "name": "comment",
17080 "optional": true,
17081 "type": {
17082 "primitive": "string"
17083 }
17084 },
17085 {
17086 "abstract": true,
17087 "docs": {
17088 "default": "OriginRequestCookieBehavior.none()",
17089 "stability": "stable",
17090 "summary": "The cookies from viewer requests to include in origin requests."
17091 },
17092 "immutable": true,
17093 "locationInModule": {
17094 "filename": "lib/origin-request-policy.ts",
17095 "line": 37
17096 },
17097 "name": "cookieBehavior",
17098 "optional": true,
17099 "type": {
17100 "fqn": "@aws-cdk/aws-cloudfront.OriginRequestCookieBehavior"
17101 }
17102 },
17103 {
17104 "abstract": true,
17105 "docs": {
17106 "default": "OriginRequestHeaderBehavior.none()",
17107 "remarks": "These can include headers from viewer requests and additional headers added by CloudFront.",
17108 "stability": "stable",
17109 "summary": "The HTTP headers to include in origin requests."
17110 },
17111 "immutable": true,
17112 "locationInModule": {
17113 "filename": "lib/origin-request-policy.ts",
17114 "line": 43
17115 },
17116 "name": "headerBehavior",
17117 "optional": true,
17118 "type": {
17119 "fqn": "@aws-cdk/aws-cloudfront.OriginRequestHeaderBehavior"
17120 }
17121 },
17122 {
17123 "abstract": true,
17124 "docs": {
17125 "default": "- generated from the `id`",
17126 "remarks": "The name must only include '-', '_', or alphanumeric characters.",
17127 "stability": "stable",
17128 "summary": "A unique name to identify the origin request policy."
17129 },
17130 "immutable": true,
17131 "locationInModule": {
17132 "filename": "lib/origin-request-policy.ts",
17133 "line": 25
17134 },
17135 "name": "originRequestPolicyName",
17136 "optional": true,
17137 "type": {
17138 "primitive": "string"
17139 }
17140 },
17141 {
17142 "abstract": true,
17143 "docs": {
17144 "default": "OriginRequestQueryStringBehavior.none()",
17145 "stability": "stable",
17146 "summary": "The URL query strings from viewer requests to include in origin requests."
17147 },
17148 "immutable": true,
17149 "locationInModule": {
17150 "filename": "lib/origin-request-policy.ts",
17151 "line": 49
17152 },
17153 "name": "queryStringBehavior",
17154 "optional": true,
17155 "type": {
17156 "fqn": "@aws-cdk/aws-cloudfront.OriginRequestQueryStringBehavior"
17157 }
17158 }
17159 ],
17160 "symbolId": "lib/origin-request-policy:OriginRequestPolicyProps"
17161 },
17162 "@aws-cdk/aws-cloudfront.OriginRequestQueryStringBehavior": {
17163 "assembly": "@aws-cdk/aws-cloudfront",
17164 "docs": {
17165 "custom": {
17166 "exampleMetadata": "infused"
17167 },
17168 "example": "// Creating a custom origin request policy for a Distribution -- all parameters optional\ndeclare const bucketOrigin: origins.S3Origin;\nconst myOriginRequestPolicy = new cloudfront.OriginRequestPolicy(this, 'OriginRequestPolicy', {\n originRequestPolicyName: 'MyPolicy',\n comment: 'A default policy',\n cookieBehavior: cloudfront.OriginRequestCookieBehavior.none(),\n headerBehavior: cloudfront.OriginRequestHeaderBehavior.all('CloudFront-Is-Android-Viewer'),\n queryStringBehavior: cloudfront.OriginRequestQueryStringBehavior.allowList('username'),\n});\n\nnew cloudfront.Distribution(this, 'myDistCustomPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n originRequestPolicy: myOriginRequestPolicy,\n },\n});",
17169 "stability": "stable",
17170 "summary": "Determines whether any URL query strings in viewer requests (and if so, which query strings) are included in requests that CloudFront sends to the origin."
17171 },
17172 "fqn": "@aws-cdk/aws-cloudfront.OriginRequestQueryStringBehavior",
17173 "kind": "class",
17174 "locationInModule": {
17175 "filename": "lib/origin-request-policy.ts",
17176 "line": 208
17177 },
17178 "methods": [
17179 {
17180 "docs": {
17181 "stability": "stable",
17182 "summary": "All query strings in viewer requests are included in requests that CloudFront sends to the origin."
17183 },
17184 "locationInModule": {
17185 "filename": "lib/origin-request-policy.ts",
17186 "line": 216
17187 },
17188 "name": "all",
17189 "returns": {
17190 "type": {
17191 "fqn": "@aws-cdk/aws-cloudfront.OriginRequestQueryStringBehavior"
17192 }
17193 },
17194 "static": true
17195 },
17196 {
17197 "docs": {
17198 "stability": "stable",
17199 "summary": "Only the provided `queryStrings` are included in requests that CloudFront sends to the origin."
17200 },
17201 "locationInModule": {
17202 "filename": "lib/origin-request-policy.ts",
17203 "line": 219
17204 },
17205 "name": "allowList",
17206 "parameters": [
17207 {
17208 "name": "queryStrings",
17209 "type": {
17210 "primitive": "string"
17211 },
17212 "variadic": true
17213 }
17214 ],
17215 "returns": {
17216 "type": {
17217 "fqn": "@aws-cdk/aws-cloudfront.OriginRequestQueryStringBehavior"
17218 }
17219 },
17220 "static": true,
17221 "variadic": true
17222 },
17223 {
17224 "docs": {
17225 "remarks": "Any query strings that are listed in a CachePolicy are still included in origin requests.",
17226 "stability": "stable",
17227 "summary": "Query strings in viewer requests are not included in requests that CloudFront sends to the origin."
17228 },
17229 "locationInModule": {
17230 "filename": "lib/origin-request-policy.ts",
17231 "line": 213
17232 },
17233 "name": "none",
17234 "returns": {
17235 "type": {
17236 "fqn": "@aws-cdk/aws-cloudfront.OriginRequestQueryStringBehavior"
17237 }
17238 },
17239 "static": true
17240 }
17241 ],
17242 "name": "OriginRequestQueryStringBehavior",
17243 "properties": [
17244 {
17245 "docs": {
17246 "stability": "stable",
17247 "summary": "The behavior of query strings -- allow all, none, or only an allow list."
17248 },
17249 "immutable": true,
17250 "locationInModule": {
17251 "filename": "lib/origin-request-policy.ts",
17252 "line": 227
17253 },
17254 "name": "behavior",
17255 "type": {
17256 "primitive": "string"
17257 }
17258 },
17259 {
17260 "docs": {
17261 "stability": "stable",
17262 "summary": "The query strings to allow, if the behavior is an allow list."
17263 },
17264 "immutable": true,
17265 "locationInModule": {
17266 "filename": "lib/origin-request-policy.ts",
17267 "line": 229
17268 },
17269 "name": "queryStrings",
17270 "optional": true,
17271 "type": {
17272 "collection": {
17273 "elementtype": {
17274 "primitive": "string"
17275 },
17276 "kind": "array"
17277 }
17278 }
17279 }
17280 ],
17281 "symbolId": "lib/origin-request-policy:OriginRequestQueryStringBehavior"
17282 },
17283 "@aws-cdk/aws-cloudfront.OriginSslPolicy": {
17284 "assembly": "@aws-cdk/aws-cloudfront",
17285 "docs": {
17286 "stability": "stable"
17287 },
17288 "fqn": "@aws-cdk/aws-cloudfront.OriginSslPolicy",
17289 "kind": "enum",
17290 "locationInModule": {
17291 "filename": "lib/web-distribution.ts",
17292 "line": 290
17293 },
17294 "members": [
17295 {
17296 "docs": {
17297 "stability": "stable"
17298 },
17299 "name": "SSL_V3"
17300 },
17301 {
17302 "docs": {
17303 "stability": "stable"
17304 },
17305 "name": "TLS_V1"
17306 },
17307 {
17308 "docs": {
17309 "stability": "stable"
17310 },
17311 "name": "TLS_V1_1"
17312 },
17313 {
17314 "docs": {
17315 "stability": "stable"
17316 },
17317 "name": "TLS_V1_2"
17318 }
17319 ],
17320 "name": "OriginSslPolicy",
17321 "symbolId": "lib/web-distribution:OriginSslPolicy"
17322 },
17323 "@aws-cdk/aws-cloudfront.PriceClass": {
17324 "assembly": "@aws-cdk/aws-cloudfront",
17325 "docs": {
17326 "remarks": "See https://aws.amazon.com/cloudfront/pricing/ for full list of supported regions.",
17327 "stability": "stable",
17328 "summary": "The price class determines how many edge locations CloudFront will use for your distribution."
17329 },
17330 "fqn": "@aws-cdk/aws-cloudfront.PriceClass",
17331 "kind": "enum",
17332 "locationInModule": {
17333 "filename": "lib/distribution.ts",
17334 "line": 500
17335 },
17336 "members": [
17337 {
17338 "docs": {
17339 "stability": "stable",
17340 "summary": "USA, Canada, Europe, & Israel."
17341 },
17342 "name": "PRICE_CLASS_100"
17343 },
17344 {
17345 "docs": {
17346 "stability": "stable",
17347 "summary": "PRICE_CLASS_100 + South Africa, Kenya, Middle East, Japan, Singapore, South Korea, Taiwan, Hong Kong, & Philippines."
17348 },
17349 "name": "PRICE_CLASS_200"
17350 },
17351 {
17352 "docs": {
17353 "stability": "stable",
17354 "summary": "All locations."
17355 },
17356 "name": "PRICE_CLASS_ALL"
17357 }
17358 ],
17359 "name": "PriceClass",
17360 "symbolId": "lib/distribution:PriceClass"
17361 },
17362 "@aws-cdk/aws-cloudfront.PublicKey": {
17363 "assembly": "@aws-cdk/aws-cloudfront",
17364 "base": "@aws-cdk/core.Resource",
17365 "docs": {
17366 "custom": {
17367 "exampleMetadata": "infused",
17368 "resource": "AWS::CloudFront::PublicKey"
17369 },
17370 "example": "// Validating signed URLs or signed cookies with Trusted Key Groups\n\n// public key in PEM format\ndeclare const publicKey: string;\nconst pubKey = new cloudfront.PublicKey(this, 'MyPubKey', {\n encodedKey: publicKey,\n});\n\nconst keyGroup = new cloudfront.KeyGroup(this, 'MyKeyGroup', {\n items: [\n pubKey,\n ],\n});\n\nnew cloudfront.Distribution(this, 'Dist', {\n defaultBehavior: {\n origin: new origins.HttpOrigin('www.example.com'),\n trustedKeyGroups: [\n keyGroup,\n ],\n },\n});",
17371 "stability": "stable",
17372 "summary": "A Public Key Configuration."
17373 },
17374 "fqn": "@aws-cdk/aws-cloudfront.PublicKey",
17375 "initializer": {
17376 "docs": {
17377 "stability": "stable"
17378 },
17379 "locationInModule": {
17380 "filename": "lib/public-key.ts",
17381 "line": 57
17382 },
17383 "parameters": [
17384 {
17385 "name": "scope",
17386 "type": {
17387 "fqn": "constructs.Construct"
17388 }
17389 },
17390 {
17391 "name": "id",
17392 "type": {
17393 "primitive": "string"
17394 }
17395 },
17396 {
17397 "name": "props",
17398 "type": {
17399 "fqn": "@aws-cdk/aws-cloudfront.PublicKeyProps"
17400 }
17401 }
17402 ]
17403 },
17404 "interfaces": [
17405 "@aws-cdk/aws-cloudfront.IPublicKey"
17406 ],
17407 "kind": "class",
17408 "locationInModule": {
17409 "filename": "lib/public-key.ts",
17410 "line": 46
17411 },
17412 "methods": [
17413 {
17414 "docs": {
17415 "stability": "stable",
17416 "summary": "Imports a Public Key from its id."
17417 },
17418 "locationInModule": {
17419 "filename": "lib/public-key.ts",
17420 "line": 49
17421 },
17422 "name": "fromPublicKeyId",
17423 "parameters": [
17424 {
17425 "name": "scope",
17426 "type": {
17427 "fqn": "constructs.Construct"
17428 }
17429 },
17430 {
17431 "name": "id",
17432 "type": {
17433 "primitive": "string"
17434 }
17435 },
17436 {
17437 "name": "publicKeyId",
17438 "type": {
17439 "primitive": "string"
17440 }
17441 }
17442 ],
17443 "returns": {
17444 "type": {
17445 "fqn": "@aws-cdk/aws-cloudfront.IPublicKey"
17446 }
17447 },
17448 "static": true
17449 }
17450 ],
17451 "name": "PublicKey",
17452 "properties": [
17453 {
17454 "docs": {
17455 "stability": "stable",
17456 "summary": "The ID of the key group."
17457 },
17458 "immutable": true,
17459 "locationInModule": {
17460 "filename": "lib/public-key.ts",
17461 "line": 55
17462 },
17463 "name": "publicKeyId",
17464 "overrides": "@aws-cdk/aws-cloudfront.IPublicKey",
17465 "type": {
17466 "primitive": "string"
17467 }
17468 }
17469 ],
17470 "symbolId": "lib/public-key:PublicKey"
17471 },
17472 "@aws-cdk/aws-cloudfront.PublicKeyProps": {
17473 "assembly": "@aws-cdk/aws-cloudfront",
17474 "datatype": true,
17475 "docs": {
17476 "custom": {
17477 "exampleMetadata": "infused"
17478 },
17479 "example": "// Validating signed URLs or signed cookies with Trusted Key Groups\n\n// public key in PEM format\ndeclare const publicKey: string;\nconst pubKey = new cloudfront.PublicKey(this, 'MyPubKey', {\n encodedKey: publicKey,\n});\n\nconst keyGroup = new cloudfront.KeyGroup(this, 'MyKeyGroup', {\n items: [\n pubKey,\n ],\n});\n\nnew cloudfront.Distribution(this, 'Dist', {\n defaultBehavior: {\n origin: new origins.HttpOrigin('www.example.com'),\n trustedKeyGroups: [\n keyGroup,\n ],\n },\n});",
17480 "stability": "stable",
17481 "summary": "Properties for creating a Public Key."
17482 },
17483 "fqn": "@aws-cdk/aws-cloudfront.PublicKeyProps",
17484 "kind": "interface",
17485 "locationInModule": {
17486 "filename": "lib/public-key.ts",
17487 "line": 19
17488 },
17489 "name": "PublicKeyProps",
17490 "properties": [
17491 {
17492 "abstract": true,
17493 "docs": {
17494 "remarks": "The `encodedKey` parameter must include `-----BEGIN PUBLIC KEY-----` and `-----END PUBLIC KEY-----` lines.",
17495 "see": "https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/field-level-encryption.html",
17496 "stability": "stable",
17497 "summary": "The public key that you can use with signed URLs and signed cookies, or with field-level encryption."
17498 },
17499 "immutable": true,
17500 "locationInModule": {
17501 "filename": "lib/public-key.ts",
17502 "line": 38
17503 },
17504 "name": "encodedKey",
17505 "type": {
17506 "primitive": "string"
17507 }
17508 },
17509 {
17510 "abstract": true,
17511 "docs": {
17512 "default": "- no comment",
17513 "stability": "stable",
17514 "summary": "A comment to describe the public key."
17515 },
17516 "immutable": true,
17517 "locationInModule": {
17518 "filename": "lib/public-key.ts",
17519 "line": 30
17520 },
17521 "name": "comment",
17522 "optional": true,
17523 "type": {
17524 "primitive": "string"
17525 }
17526 },
17527 {
17528 "abstract": true,
17529 "docs": {
17530 "default": "- generated from the `id`",
17531 "stability": "stable",
17532 "summary": "A name to identify the public key."
17533 },
17534 "immutable": true,
17535 "locationInModule": {
17536 "filename": "lib/public-key.ts",
17537 "line": 24
17538 },
17539 "name": "publicKeyName",
17540 "optional": true,
17541 "type": {
17542 "primitive": "string"
17543 }
17544 }
17545 ],
17546 "symbolId": "lib/public-key:PublicKeyProps"
17547 },
17548 "@aws-cdk/aws-cloudfront.ResponseCustomHeader": {
17549 "assembly": "@aws-cdk/aws-cloudfront",
17550 "datatype": true,
17551 "docs": {
17552 "remarks": "CloudFront includes this header in HTTP responses that it sends for requests that match a cache behavior that’s associated with this response headers policy.",
17553 "stability": "stable",
17554 "summary": "An HTTP response header name and its value.",
17555 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nconst responseCustomHeader: cloudfront.ResponseCustomHeader = {\n header: 'header',\n override: false,\n value: 'value',\n};",
17556 "custom": {
17557 "exampleMetadata": "fixture=_generated"
17558 }
17559 },
17560 "fqn": "@aws-cdk/aws-cloudfront.ResponseCustomHeader",
17561 "kind": "interface",
17562 "locationInModule": {
17563 "filename": "lib/response-headers-policy.ts",
17564 "line": 209
17565 },
17566 "name": "ResponseCustomHeader",
17567 "properties": [
17568 {
17569 "abstract": true,
17570 "docs": {
17571 "stability": "stable",
17572 "summary": "The HTTP response header name."
17573 },
17574 "immutable": true,
17575 "locationInModule": {
17576 "filename": "lib/response-headers-policy.ts",
17577 "line": 213
17578 },
17579 "name": "header",
17580 "type": {
17581 "primitive": "string"
17582 }
17583 },
17584 {
17585 "abstract": true,
17586 "docs": {
17587 "stability": "stable",
17588 "summary": "A Boolean that determines whether CloudFront overrides a response header with the same name received from the origin with the header specified here."
17589 },
17590 "immutable": true,
17591 "locationInModule": {
17592 "filename": "lib/response-headers-policy.ts",
17593 "line": 219
17594 },
17595 "name": "override",
17596 "type": {
17597 "primitive": "boolean"
17598 }
17599 },
17600 {
17601 "abstract": true,
17602 "docs": {
17603 "stability": "stable",
17604 "summary": "The value for the HTTP response header."
17605 },
17606 "immutable": true,
17607 "locationInModule": {
17608 "filename": "lib/response-headers-policy.ts",
17609 "line": 224
17610 },
17611 "name": "value",
17612 "type": {
17613 "primitive": "string"
17614 }
17615 }
17616 ],
17617 "symbolId": "lib/response-headers-policy:ResponseCustomHeader"
17618 },
17619 "@aws-cdk/aws-cloudfront.ResponseCustomHeadersBehavior": {
17620 "assembly": "@aws-cdk/aws-cloudfront",
17621 "datatype": true,
17622 "docs": {
17623 "custom": {
17624 "exampleMetadata": "infused"
17625 },
17626 "example": "// Using an existing managed response headers policy\ndeclare const bucketOrigin: origins.S3Origin;\nnew cloudfront.Distribution(this, 'myDistManagedPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n responseHeadersPolicy: cloudfront.ResponseHeadersPolicy.CORS_ALLOW_ALL_ORIGINS,\n },\n});\n\n// Creating a custom response headers policy -- all parameters optional\nconst myResponseHeadersPolicy = new cloudfront.ResponseHeadersPolicy(this, 'ResponseHeadersPolicy', {\n responseHeadersPolicyName: 'MyPolicy',\n comment: 'A default policy',\n corsBehavior: {\n accessControlAllowCredentials: false,\n accessControlAllowHeaders: ['X-Custom-Header-1', 'X-Custom-Header-2'],\n accessControlAllowMethods: ['GET', 'POST'],\n accessControlAllowOrigins: ['*'],\n accessControlExposeHeaders: ['X-Custom-Header-1', 'X-Custom-Header-2'],\n accessControlMaxAge: Duration.seconds(600),\n originOverride: true,\n },\n customHeadersBehavior: {\n customHeaders: [\n { header: 'X-Amz-Date', value: 'some-value', override: true },\n { header: 'X-Amz-Security-Token', value: 'some-value', override: false },\n ],\n },\n securityHeadersBehavior: {\n contentSecurityPolicy: { contentSecurityPolicy: 'default-src https:;', override: true },\n contentTypeOptions: { override: true },\n frameOptions: { frameOption: cloudfront.HeadersFrameOption.DENY, override: true },\n referrerPolicy: { referrerPolicy: cloudfront.HeadersReferrerPolicy.NO_REFERRER, override: true },\n strictTransportSecurity: { accessControlMaxAge: Duration.seconds(600), includeSubdomains: true, override: true },\n xssProtection: { protection: true, modeBlock: true, reportUri: 'https://example.com/csp-report', override: true },\n },\n});\nnew cloudfront.Distribution(this, 'myDistCustomPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n responseHeadersPolicy: myResponseHeadersPolicy,\n },\n});",
17627 "stability": "stable",
17628 "summary": "Configuration for a set of HTTP response headers that are sent for requests that match a cache behavior that’s associated with this response headers policy."
17629 },
17630 "fqn": "@aws-cdk/aws-cloudfront.ResponseCustomHeadersBehavior",
17631 "kind": "interface",
17632 "locationInModule": {
17633 "filename": "lib/response-headers-policy.ts",
17634 "line": 198
17635 },
17636 "name": "ResponseCustomHeadersBehavior",
17637 "properties": [
17638 {
17639 "abstract": true,
17640 "docs": {
17641 "stability": "stable",
17642 "summary": "The list of HTTP response headers and their values."
17643 },
17644 "immutable": true,
17645 "locationInModule": {
17646 "filename": "lib/response-headers-policy.ts",
17647 "line": 202
17648 },
17649 "name": "customHeaders",
17650 "type": {
17651 "collection": {
17652 "elementtype": {
17653 "fqn": "@aws-cdk/aws-cloudfront.ResponseCustomHeader"
17654 },
17655 "kind": "array"
17656 }
17657 }
17658 }
17659 ],
17660 "symbolId": "lib/response-headers-policy:ResponseCustomHeadersBehavior"
17661 },
17662 "@aws-cdk/aws-cloudfront.ResponseHeadersContentSecurityPolicy": {
17663 "assembly": "@aws-cdk/aws-cloudfront",
17664 "datatype": true,
17665 "docs": {
17666 "custom": {
17667 "exampleMetadata": "infused"
17668 },
17669 "example": "// Using an existing managed response headers policy\ndeclare const bucketOrigin: origins.S3Origin;\nnew cloudfront.Distribution(this, 'myDistManagedPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n responseHeadersPolicy: cloudfront.ResponseHeadersPolicy.CORS_ALLOW_ALL_ORIGINS,\n },\n});\n\n// Creating a custom response headers policy -- all parameters optional\nconst myResponseHeadersPolicy = new cloudfront.ResponseHeadersPolicy(this, 'ResponseHeadersPolicy', {\n responseHeadersPolicyName: 'MyPolicy',\n comment: 'A default policy',\n corsBehavior: {\n accessControlAllowCredentials: false,\n accessControlAllowHeaders: ['X-Custom-Header-1', 'X-Custom-Header-2'],\n accessControlAllowMethods: ['GET', 'POST'],\n accessControlAllowOrigins: ['*'],\n accessControlExposeHeaders: ['X-Custom-Header-1', 'X-Custom-Header-2'],\n accessControlMaxAge: Duration.seconds(600),\n originOverride: true,\n },\n customHeadersBehavior: {\n customHeaders: [\n { header: 'X-Amz-Date', value: 'some-value', override: true },\n { header: 'X-Amz-Security-Token', value: 'some-value', override: false },\n ],\n },\n securityHeadersBehavior: {\n contentSecurityPolicy: { contentSecurityPolicy: 'default-src https:;', override: true },\n contentTypeOptions: { override: true },\n frameOptions: { frameOption: cloudfront.HeadersFrameOption.DENY, override: true },\n referrerPolicy: { referrerPolicy: cloudfront.HeadersReferrerPolicy.NO_REFERRER, override: true },\n strictTransportSecurity: { accessControlMaxAge: Duration.seconds(600), includeSubdomains: true, override: true },\n xssProtection: { protection: true, modeBlock: true, reportUri: 'https://example.com/csp-report', override: true },\n },\n});\nnew cloudfront.Distribution(this, 'myDistCustomPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n responseHeadersPolicy: myResponseHeadersPolicy,\n },\n});",
17670 "stability": "stable",
17671 "summary": "The policy directives and their values that CloudFront includes as values for the Content-Security-Policy HTTP response header."
17672 },
17673 "fqn": "@aws-cdk/aws-cloudfront.ResponseHeadersContentSecurityPolicy",
17674 "kind": "interface",
17675 "locationInModule": {
17676 "filename": "lib/response-headers-policy.ts",
17677 "line": 279
17678 },
17679 "name": "ResponseHeadersContentSecurityPolicy",
17680 "properties": [
17681 {
17682 "abstract": true,
17683 "docs": {
17684 "stability": "stable",
17685 "summary": "The policy directives and their values that CloudFront includes as values for the Content-Security-Policy HTTP response header."
17686 },
17687 "immutable": true,
17688 "locationInModule": {
17689 "filename": "lib/response-headers-policy.ts",
17690 "line": 283
17691 },
17692 "name": "contentSecurityPolicy",
17693 "type": {
17694 "primitive": "string"
17695 }
17696 },
17697 {
17698 "abstract": true,
17699 "docs": {
17700 "stability": "stable",
17701 "summary": "A Boolean that determines whether CloudFront overrides the Content-Security-Policy HTTP response header received from the origin with the one specified in this response headers policy."
17702 },
17703 "immutable": true,
17704 "locationInModule": {
17705 "filename": "lib/response-headers-policy.ts",
17706 "line": 289
17707 },
17708 "name": "override",
17709 "type": {
17710 "primitive": "boolean"
17711 }
17712 }
17713 ],
17714 "symbolId": "lib/response-headers-policy:ResponseHeadersContentSecurityPolicy"
17715 },
17716 "@aws-cdk/aws-cloudfront.ResponseHeadersContentTypeOptions": {
17717 "assembly": "@aws-cdk/aws-cloudfront",
17718 "datatype": true,
17719 "docs": {
17720 "custom": {
17721 "exampleMetadata": "infused"
17722 },
17723 "example": "// Using an existing managed response headers policy\ndeclare const bucketOrigin: origins.S3Origin;\nnew cloudfront.Distribution(this, 'myDistManagedPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n responseHeadersPolicy: cloudfront.ResponseHeadersPolicy.CORS_ALLOW_ALL_ORIGINS,\n },\n});\n\n// Creating a custom response headers policy -- all parameters optional\nconst myResponseHeadersPolicy = new cloudfront.ResponseHeadersPolicy(this, 'ResponseHeadersPolicy', {\n responseHeadersPolicyName: 'MyPolicy',\n comment: 'A default policy',\n corsBehavior: {\n accessControlAllowCredentials: false,\n accessControlAllowHeaders: ['X-Custom-Header-1', 'X-Custom-Header-2'],\n accessControlAllowMethods: ['GET', 'POST'],\n accessControlAllowOrigins: ['*'],\n accessControlExposeHeaders: ['X-Custom-Header-1', 'X-Custom-Header-2'],\n accessControlMaxAge: Duration.seconds(600),\n originOverride: true,\n },\n customHeadersBehavior: {\n customHeaders: [\n { header: 'X-Amz-Date', value: 'some-value', override: true },\n { header: 'X-Amz-Security-Token', value: 'some-value', override: false },\n ],\n },\n securityHeadersBehavior: {\n contentSecurityPolicy: { contentSecurityPolicy: 'default-src https:;', override: true },\n contentTypeOptions: { override: true },\n frameOptions: { frameOption: cloudfront.HeadersFrameOption.DENY, override: true },\n referrerPolicy: { referrerPolicy: cloudfront.HeadersReferrerPolicy.NO_REFERRER, override: true },\n strictTransportSecurity: { accessControlMaxAge: Duration.seconds(600), includeSubdomains: true, override: true },\n xssProtection: { protection: true, modeBlock: true, reportUri: 'https://example.com/csp-report', override: true },\n },\n});\nnew cloudfront.Distribution(this, 'myDistCustomPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n responseHeadersPolicy: myResponseHeadersPolicy,\n },\n});",
17724 "stability": "stable",
17725 "summary": "Determines whether CloudFront includes the X-Content-Type-Options HTTP response header with its value set to nosniff."
17726 },
17727 "fqn": "@aws-cdk/aws-cloudfront.ResponseHeadersContentTypeOptions",
17728 "kind": "interface",
17729 "locationInModule": {
17730 "filename": "lib/response-headers-policy.ts",
17731 "line": 295
17732 },
17733 "name": "ResponseHeadersContentTypeOptions",
17734 "properties": [
17735 {
17736 "abstract": true,
17737 "docs": {
17738 "stability": "stable",
17739 "summary": "A Boolean that determines whether CloudFront overrides the X-Content-Type-Options HTTP response header received from the origin with the one specified in this response headers policy."
17740 },
17741 "immutable": true,
17742 "locationInModule": {
17743 "filename": "lib/response-headers-policy.ts",
17744 "line": 300
17745 },
17746 "name": "override",
17747 "type": {
17748 "primitive": "boolean"
17749 }
17750 }
17751 ],
17752 "symbolId": "lib/response-headers-policy:ResponseHeadersContentTypeOptions"
17753 },
17754 "@aws-cdk/aws-cloudfront.ResponseHeadersCorsBehavior": {
17755 "assembly": "@aws-cdk/aws-cloudfront",
17756 "datatype": true,
17757 "docs": {
17758 "custom": {
17759 "exampleMetadata": "infused"
17760 },
17761 "example": "// Using an existing managed response headers policy\ndeclare const bucketOrigin: origins.S3Origin;\nnew cloudfront.Distribution(this, 'myDistManagedPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n responseHeadersPolicy: cloudfront.ResponseHeadersPolicy.CORS_ALLOW_ALL_ORIGINS,\n },\n});\n\n// Creating a custom response headers policy -- all parameters optional\nconst myResponseHeadersPolicy = new cloudfront.ResponseHeadersPolicy(this, 'ResponseHeadersPolicy', {\n responseHeadersPolicyName: 'MyPolicy',\n comment: 'A default policy',\n corsBehavior: {\n accessControlAllowCredentials: false,\n accessControlAllowHeaders: ['X-Custom-Header-1', 'X-Custom-Header-2'],\n accessControlAllowMethods: ['GET', 'POST'],\n accessControlAllowOrigins: ['*'],\n accessControlExposeHeaders: ['X-Custom-Header-1', 'X-Custom-Header-2'],\n accessControlMaxAge: Duration.seconds(600),\n originOverride: true,\n },\n customHeadersBehavior: {\n customHeaders: [\n { header: 'X-Amz-Date', value: 'some-value', override: true },\n { header: 'X-Amz-Security-Token', value: 'some-value', override: false },\n ],\n },\n securityHeadersBehavior: {\n contentSecurityPolicy: { contentSecurityPolicy: 'default-src https:;', override: true },\n contentTypeOptions: { override: true },\n frameOptions: { frameOption: cloudfront.HeadersFrameOption.DENY, override: true },\n referrerPolicy: { referrerPolicy: cloudfront.HeadersReferrerPolicy.NO_REFERRER, override: true },\n strictTransportSecurity: { accessControlMaxAge: Duration.seconds(600), includeSubdomains: true, override: true },\n xssProtection: { protection: true, modeBlock: true, reportUri: 'https://example.com/csp-report', override: true },\n },\n});\nnew cloudfront.Distribution(this, 'myDistCustomPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n responseHeadersPolicy: myResponseHeadersPolicy,\n },\n});",
17762 "remarks": "CloudFront adds these headers to HTTP responses that it sends for CORS requests that match a cache behavior\nassociated with this response headers policy.",
17763 "stability": "stable",
17764 "summary": "Configuration for a set of HTTP response headers that are used for cross-origin resource sharing (CORS)."
17765 },
17766 "fqn": "@aws-cdk/aws-cloudfront.ResponseHeadersCorsBehavior",
17767 "kind": "interface",
17768 "locationInModule": {
17769 "filename": "lib/response-headers-policy.ts",
17770 "line": 150
17771 },
17772 "name": "ResponseHeadersCorsBehavior",
17773 "properties": [
17774 {
17775 "abstract": true,
17776 "docs": {
17777 "stability": "stable",
17778 "summary": "A Boolean that CloudFront uses as the value for the Access-Control-Allow-Credentials HTTP response header."
17779 },
17780 "immutable": true,
17781 "locationInModule": {
17782 "filename": "lib/response-headers-policy.ts",
17783 "line": 154
17784 },
17785 "name": "accessControlAllowCredentials",
17786 "type": {
17787 "primitive": "boolean"
17788 }
17789 },
17790 {
17791 "abstract": true,
17792 "docs": {
17793 "remarks": "You can specify `['*']` to allow all headers.",
17794 "stability": "stable",
17795 "summary": "A list of HTTP header names that CloudFront includes as values for the Access-Control-Allow-Headers HTTP response header."
17796 },
17797 "immutable": true,
17798 "locationInModule": {
17799 "filename": "lib/response-headers-policy.ts",
17800 "line": 160
17801 },
17802 "name": "accessControlAllowHeaders",
17803 "type": {
17804 "collection": {
17805 "elementtype": {
17806 "primitive": "string"
17807 },
17808 "kind": "array"
17809 }
17810 }
17811 },
17812 {
17813 "abstract": true,
17814 "docs": {
17815 "stability": "stable",
17816 "summary": "A list of HTTP methods that CloudFront includes as values for the Access-Control-Allow-Methods HTTP response header."
17817 },
17818 "immutable": true,
17819 "locationInModule": {
17820 "filename": "lib/response-headers-policy.ts",
17821 "line": 165
17822 },
17823 "name": "accessControlAllowMethods",
17824 "type": {
17825 "collection": {
17826 "elementtype": {
17827 "primitive": "string"
17828 },
17829 "kind": "array"
17830 }
17831 }
17832 },
17833 {
17834 "abstract": true,
17835 "docs": {
17836 "remarks": "You can specify `['*']` to allow all origins.",
17837 "stability": "stable",
17838 "summary": "A list of origins (domain names) that CloudFront can use as the value for the Access-Control-Allow-Origin HTTP response header."
17839 },
17840 "immutable": true,
17841 "locationInModule": {
17842 "filename": "lib/response-headers-policy.ts",
17843 "line": 171
17844 },
17845 "name": "accessControlAllowOrigins",
17846 "type": {
17847 "collection": {
17848 "elementtype": {
17849 "primitive": "string"
17850 },
17851 "kind": "array"
17852 }
17853 }
17854 },
17855 {
17856 "abstract": true,
17857 "docs": {
17858 "stability": "stable",
17859 "summary": "A Boolean that determines whether CloudFront overrides HTTP response headers received from the origin with the ones specified in this response headers policy."
17860 },
17861 "immutable": true,
17862 "locationInModule": {
17863 "filename": "lib/response-headers-policy.ts",
17864 "line": 191
17865 },
17866 "name": "originOverride",
17867 "type": {
17868 "primitive": "boolean"
17869 }
17870 },
17871 {
17872 "abstract": true,
17873 "docs": {
17874 "default": "- no headers exposed",
17875 "remarks": "You can specify `['*']` to expose all headers.",
17876 "stability": "stable",
17877 "summary": "A list of HTTP headers that CloudFront includes as values for the Access-Control-Expose-Headers HTTP response header."
17878 },
17879 "immutable": true,
17880 "locationInModule": {
17881 "filename": "lib/response-headers-policy.ts",
17882 "line": 179
17883 },
17884 "name": "accessControlExposeHeaders",
17885 "optional": true,
17886 "type": {
17887 "collection": {
17888 "elementtype": {
17889 "primitive": "string"
17890 },
17891 "kind": "array"
17892 }
17893 }
17894 },
17895 {
17896 "abstract": true,
17897 "docs": {
17898 "default": "- no max age",
17899 "stability": "stable",
17900 "summary": "A number that CloudFront uses as the value for the Access-Control-Max-Age HTTP response header."
17901 },
17902 "immutable": true,
17903 "locationInModule": {
17904 "filename": "lib/response-headers-policy.ts",
17905 "line": 186
17906 },
17907 "name": "accessControlMaxAge",
17908 "optional": true,
17909 "type": {
17910 "fqn": "@aws-cdk/core.Duration"
17911 }
17912 }
17913 ],
17914 "symbolId": "lib/response-headers-policy:ResponseHeadersCorsBehavior"
17915 },
17916 "@aws-cdk/aws-cloudfront.ResponseHeadersFrameOptions": {
17917 "assembly": "@aws-cdk/aws-cloudfront",
17918 "datatype": true,
17919 "docs": {
17920 "custom": {
17921 "exampleMetadata": "infused"
17922 },
17923 "example": "// Using an existing managed response headers policy\ndeclare const bucketOrigin: origins.S3Origin;\nnew cloudfront.Distribution(this, 'myDistManagedPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n responseHeadersPolicy: cloudfront.ResponseHeadersPolicy.CORS_ALLOW_ALL_ORIGINS,\n },\n});\n\n// Creating a custom response headers policy -- all parameters optional\nconst myResponseHeadersPolicy = new cloudfront.ResponseHeadersPolicy(this, 'ResponseHeadersPolicy', {\n responseHeadersPolicyName: 'MyPolicy',\n comment: 'A default policy',\n corsBehavior: {\n accessControlAllowCredentials: false,\n accessControlAllowHeaders: ['X-Custom-Header-1', 'X-Custom-Header-2'],\n accessControlAllowMethods: ['GET', 'POST'],\n accessControlAllowOrigins: ['*'],\n accessControlExposeHeaders: ['X-Custom-Header-1', 'X-Custom-Header-2'],\n accessControlMaxAge: Duration.seconds(600),\n originOverride: true,\n },\n customHeadersBehavior: {\n customHeaders: [\n { header: 'X-Amz-Date', value: 'some-value', override: true },\n { header: 'X-Amz-Security-Token', value: 'some-value', override: false },\n ],\n },\n securityHeadersBehavior: {\n contentSecurityPolicy: { contentSecurityPolicy: 'default-src https:;', override: true },\n contentTypeOptions: { override: true },\n frameOptions: { frameOption: cloudfront.HeadersFrameOption.DENY, override: true },\n referrerPolicy: { referrerPolicy: cloudfront.HeadersReferrerPolicy.NO_REFERRER, override: true },\n strictTransportSecurity: { accessControlMaxAge: Duration.seconds(600), includeSubdomains: true, override: true },\n xssProtection: { protection: true, modeBlock: true, reportUri: 'https://example.com/csp-report', override: true },\n },\n});\nnew cloudfront.Distribution(this, 'myDistCustomPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n responseHeadersPolicy: myResponseHeadersPolicy,\n },\n});",
17924 "stability": "stable",
17925 "summary": "Determines whether CloudFront includes the X-Frame-Options HTTP response header and the header’s value."
17926 },
17927 "fqn": "@aws-cdk/aws-cloudfront.ResponseHeadersFrameOptions",
17928 "kind": "interface",
17929 "locationInModule": {
17930 "filename": "lib/response-headers-policy.ts",
17931 "line": 306
17932 },
17933 "name": "ResponseHeadersFrameOptions",
17934 "properties": [
17935 {
17936 "abstract": true,
17937 "docs": {
17938 "stability": "stable",
17939 "summary": "The value of the X-Frame-Options HTTP response header."
17940 },
17941 "immutable": true,
17942 "locationInModule": {
17943 "filename": "lib/response-headers-policy.ts",
17944 "line": 310
17945 },
17946 "name": "frameOption",
17947 "type": {
17948 "fqn": "@aws-cdk/aws-cloudfront.HeadersFrameOption"
17949 }
17950 },
17951 {
17952 "abstract": true,
17953 "docs": {
17954 "stability": "stable",
17955 "summary": "A Boolean that determines whether CloudFront overrides the X-Frame-Options HTTP response header received from the origin with the one specified in this response headers policy."
17956 },
17957 "immutable": true,
17958 "locationInModule": {
17959 "filename": "lib/response-headers-policy.ts",
17960 "line": 316
17961 },
17962 "name": "override",
17963 "type": {
17964 "primitive": "boolean"
17965 }
17966 }
17967 ],
17968 "symbolId": "lib/response-headers-policy:ResponseHeadersFrameOptions"
17969 },
17970 "@aws-cdk/aws-cloudfront.ResponseHeadersPolicy": {
17971 "assembly": "@aws-cdk/aws-cloudfront",
17972 "base": "@aws-cdk/core.Resource",
17973 "docs": {
17974 "custom": {
17975 "exampleMetadata": "infused",
17976 "resource": "AWS::CloudFront::ResponseHeadersPolicy"
17977 },
17978 "example": "// Using an existing managed response headers policy\ndeclare const bucketOrigin: origins.S3Origin;\nnew cloudfront.Distribution(this, 'myDistManagedPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n responseHeadersPolicy: cloudfront.ResponseHeadersPolicy.CORS_ALLOW_ALL_ORIGINS,\n },\n});\n\n// Creating a custom response headers policy -- all parameters optional\nconst myResponseHeadersPolicy = new cloudfront.ResponseHeadersPolicy(this, 'ResponseHeadersPolicy', {\n responseHeadersPolicyName: 'MyPolicy',\n comment: 'A default policy',\n corsBehavior: {\n accessControlAllowCredentials: false,\n accessControlAllowHeaders: ['X-Custom-Header-1', 'X-Custom-Header-2'],\n accessControlAllowMethods: ['GET', 'POST'],\n accessControlAllowOrigins: ['*'],\n accessControlExposeHeaders: ['X-Custom-Header-1', 'X-Custom-Header-2'],\n accessControlMaxAge: Duration.seconds(600),\n originOverride: true,\n },\n customHeadersBehavior: {\n customHeaders: [\n { header: 'X-Amz-Date', value: 'some-value', override: true },\n { header: 'X-Amz-Security-Token', value: 'some-value', override: false },\n ],\n },\n securityHeadersBehavior: {\n contentSecurityPolicy: { contentSecurityPolicy: 'default-src https:;', override: true },\n contentTypeOptions: { override: true },\n frameOptions: { frameOption: cloudfront.HeadersFrameOption.DENY, override: true },\n referrerPolicy: { referrerPolicy: cloudfront.HeadersReferrerPolicy.NO_REFERRER, override: true },\n strictTransportSecurity: { accessControlMaxAge: Duration.seconds(600), includeSubdomains: true, override: true },\n xssProtection: { protection: true, modeBlock: true, reportUri: 'https://example.com/csp-report', override: true },\n },\n});\nnew cloudfront.Distribution(this, 'myDistCustomPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n responseHeadersPolicy: myResponseHeadersPolicy,\n },\n});",
17979 "stability": "stable",
17980 "summary": "A Response Headers Policy configuration."
17981 },
17982 "fqn": "@aws-cdk/aws-cloudfront.ResponseHeadersPolicy",
17983 "initializer": {
17984 "docs": {
17985 "stability": "stable"
17986 },
17987 "locationInModule": {
17988 "filename": "lib/response-headers-policy.ts",
17989 "line": 92
17990 },
17991 "parameters": [
17992 {
17993 "name": "scope",
17994 "type": {
17995 "fqn": "constructs.Construct"
17996 }
17997 },
17998 {
17999 "name": "id",
18000 "type": {
18001 "primitive": "string"
18002 }
18003 },
18004 {
18005 "name": "props",
18006 "optional": true,
18007 "type": {
18008 "fqn": "@aws-cdk/aws-cloudfront.ResponseHeadersPolicyProps"
18009 }
18010 }
18011 ]
18012 },
18013 "interfaces": [
18014 "@aws-cdk/aws-cloudfront.IResponseHeadersPolicy"
18015 ],
18016 "kind": "class",
18017 "locationInModule": {
18018 "filename": "lib/response-headers-policy.ts",
18019 "line": 61
18020 },
18021 "methods": [
18022 {
18023 "docs": {
18024 "stability": "stable",
18025 "summary": "Import an existing Response Headers Policy from its ID."
18026 },
18027 "locationInModule": {
18028 "filename": "lib/response-headers-policy.ts",
18029 "line": 77
18030 },
18031 "name": "fromResponseHeadersPolicyId",
18032 "parameters": [
18033 {
18034 "name": "scope",
18035 "type": {
18036 "fqn": "constructs.Construct"
18037 }
18038 },
18039 {
18040 "name": "id",
18041 "type": {
18042 "primitive": "string"
18043 }
18044 },
18045 {
18046 "name": "responseHeadersPolicyId",
18047 "type": {
18048 "primitive": "string"
18049 }
18050 }
18051 ],
18052 "returns": {
18053 "type": {
18054 "fqn": "@aws-cdk/aws-cloudfront.IResponseHeadersPolicy"
18055 }
18056 },
18057 "static": true
18058 }
18059 ],
18060 "name": "ResponseHeadersPolicy",
18061 "properties": [
18062 {
18063 "const": true,
18064 "docs": {
18065 "stability": "stable",
18066 "summary": "Use this managed policy to allow simple CORS requests from any origin."
18067 },
18068 "immutable": true,
18069 "locationInModule": {
18070 "filename": "lib/response-headers-policy.ts",
18071 "line": 64
18072 },
18073 "name": "CORS_ALLOW_ALL_ORIGINS",
18074 "static": true,
18075 "type": {
18076 "fqn": "@aws-cdk/aws-cloudfront.IResponseHeadersPolicy"
18077 }
18078 },
18079 {
18080 "const": true,
18081 "docs": {
18082 "stability": "stable",
18083 "summary": "Use this managed policy to allow simple CORS requests from any origin and add a set of security headers to all responses that CloudFront sends to viewers."
18084 },
18085 "immutable": true,
18086 "locationInModule": {
18087 "filename": "lib/response-headers-policy.ts",
18088 "line": 70
18089 },
18090 "name": "CORS_ALLOW_ALL_ORIGINS_AND_SECURITY_HEADERS",
18091 "static": true,
18092 "type": {
18093 "fqn": "@aws-cdk/aws-cloudfront.IResponseHeadersPolicy"
18094 }
18095 },
18096 {
18097 "const": true,
18098 "docs": {
18099 "stability": "stable",
18100 "summary": "Use this managed policy to allow CORS requests from any origin, including preflight requests."
18101 },
18102 "immutable": true,
18103 "locationInModule": {
18104 "filename": "lib/response-headers-policy.ts",
18105 "line": 66
18106 },
18107 "name": "CORS_ALLOW_ALL_ORIGINS_WITH_PREFLIGHT",
18108 "static": true,
18109 "type": {
18110 "fqn": "@aws-cdk/aws-cloudfront.IResponseHeadersPolicy"
18111 }
18112 },
18113 {
18114 "const": true,
18115 "docs": {
18116 "stability": "stable",
18117 "summary": "Use this managed policy to allow CORS requests from any origin, including preflight requests, and add a set of security headers to all responses that CloudFront sends to viewers."
18118 },
18119 "immutable": true,
18120 "locationInModule": {
18121 "filename": "lib/response-headers-policy.ts",
18122 "line": 72
18123 },
18124 "name": "CORS_ALLOW_ALL_ORIGINS_WITH_PREFLIGHT_AND_SECURITY_HEADERS",
18125 "static": true,
18126 "type": {
18127 "fqn": "@aws-cdk/aws-cloudfront.IResponseHeadersPolicy"
18128 }
18129 },
18130 {
18131 "const": true,
18132 "docs": {
18133 "stability": "stable",
18134 "summary": "Use this managed policy to add a set of security headers to all responses that CloudFront sends to viewers."
18135 },
18136 "immutable": true,
18137 "locationInModule": {
18138 "filename": "lib/response-headers-policy.ts",
18139 "line": 68
18140 },
18141 "name": "SECURITY_HEADERS",
18142 "static": true,
18143 "type": {
18144 "fqn": "@aws-cdk/aws-cloudfront.IResponseHeadersPolicy"
18145 }
18146 },
18147 {
18148 "docs": {
18149 "stability": "stable",
18150 "summary": "The ID of the response headers policy."
18151 },
18152 "immutable": true,
18153 "locationInModule": {
18154 "filename": "lib/response-headers-policy.ts",
18155 "line": 90
18156 },
18157 "name": "responseHeadersPolicyId",
18158 "overrides": "@aws-cdk/aws-cloudfront.IResponseHeadersPolicy",
18159 "type": {
18160 "primitive": "string"
18161 }
18162 }
18163 ],
18164 "symbolId": "lib/response-headers-policy:ResponseHeadersPolicy"
18165 },
18166 "@aws-cdk/aws-cloudfront.ResponseHeadersPolicyProps": {
18167 "assembly": "@aws-cdk/aws-cloudfront",
18168 "datatype": true,
18169 "docs": {
18170 "custom": {
18171 "exampleMetadata": "infused"
18172 },
18173 "example": "// Using an existing managed response headers policy\ndeclare const bucketOrigin: origins.S3Origin;\nnew cloudfront.Distribution(this, 'myDistManagedPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n responseHeadersPolicy: cloudfront.ResponseHeadersPolicy.CORS_ALLOW_ALL_ORIGINS,\n },\n});\n\n// Creating a custom response headers policy -- all parameters optional\nconst myResponseHeadersPolicy = new cloudfront.ResponseHeadersPolicy(this, 'ResponseHeadersPolicy', {\n responseHeadersPolicyName: 'MyPolicy',\n comment: 'A default policy',\n corsBehavior: {\n accessControlAllowCredentials: false,\n accessControlAllowHeaders: ['X-Custom-Header-1', 'X-Custom-Header-2'],\n accessControlAllowMethods: ['GET', 'POST'],\n accessControlAllowOrigins: ['*'],\n accessControlExposeHeaders: ['X-Custom-Header-1', 'X-Custom-Header-2'],\n accessControlMaxAge: Duration.seconds(600),\n originOverride: true,\n },\n customHeadersBehavior: {\n customHeaders: [\n { header: 'X-Amz-Date', value: 'some-value', override: true },\n { header: 'X-Amz-Security-Token', value: 'some-value', override: false },\n ],\n },\n securityHeadersBehavior: {\n contentSecurityPolicy: { contentSecurityPolicy: 'default-src https:;', override: true },\n contentTypeOptions: { override: true },\n frameOptions: { frameOption: cloudfront.HeadersFrameOption.DENY, override: true },\n referrerPolicy: { referrerPolicy: cloudfront.HeadersReferrerPolicy.NO_REFERRER, override: true },\n strictTransportSecurity: { accessControlMaxAge: Duration.seconds(600), includeSubdomains: true, override: true },\n xssProtection: { protection: true, modeBlock: true, reportUri: 'https://example.com/csp-report', override: true },\n },\n});\nnew cloudfront.Distribution(this, 'myDistCustomPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n responseHeadersPolicy: myResponseHeadersPolicy,\n },\n});",
18174 "stability": "stable",
18175 "summary": "Properties for creating a Response Headers Policy."
18176 },
18177 "fqn": "@aws-cdk/aws-cloudfront.ResponseHeadersPolicyProps",
18178 "kind": "interface",
18179 "locationInModule": {
18180 "filename": "lib/response-headers-policy.ts",
18181 "line": 19
18182 },
18183 "name": "ResponseHeadersPolicyProps",
18184 "properties": [
18185 {
18186 "abstract": true,
18187 "docs": {
18188 "default": "- no comment",
18189 "stability": "stable",
18190 "summary": "A comment to describe the response headers policy."
18191 },
18192 "immutable": true,
18193 "locationInModule": {
18194 "filename": "lib/response-headers-policy.ts",
18195 "line": 32
18196 },
18197 "name": "comment",
18198 "optional": true,
18199 "type": {
18200 "primitive": "string"
18201 }
18202 },
18203 {
18204 "abstract": true,
18205 "docs": {
18206 "default": "- no cors behavior",
18207 "stability": "stable",
18208 "summary": "A configuration for a set of HTTP response headers that are used for cross-origin resource sharing (CORS)."
18209 },
18210 "immutable": true,
18211 "locationInModule": {
18212 "filename": "lib/response-headers-policy.ts",
18213 "line": 39
18214 },
18215 "name": "corsBehavior",
18216 "optional": true,
18217 "type": {
18218 "fqn": "@aws-cdk/aws-cloudfront.ResponseHeadersCorsBehavior"
18219 }
18220 },
18221 {
18222 "abstract": true,
18223 "docs": {
18224 "default": "- no custom headers behavior",
18225 "stability": "stable",
18226 "summary": "A configuration for a set of custom HTTP response headers."
18227 },
18228 "immutable": true,
18229 "locationInModule": {
18230 "filename": "lib/response-headers-policy.ts",
18231 "line": 46
18232 },
18233 "name": "customHeadersBehavior",
18234 "optional": true,
18235 "type": {
18236 "fqn": "@aws-cdk/aws-cloudfront.ResponseCustomHeadersBehavior"
18237 }
18238 },
18239 {
18240 "abstract": true,
18241 "docs": {
18242 "default": "- generated from the `id`",
18243 "stability": "stable",
18244 "summary": "A unique name to identify the response headers policy."
18245 },
18246 "immutable": true,
18247 "locationInModule": {
18248 "filename": "lib/response-headers-policy.ts",
18249 "line": 25
18250 },
18251 "name": "responseHeadersPolicyName",
18252 "optional": true,
18253 "type": {
18254 "primitive": "string"
18255 }
18256 },
18257 {
18258 "abstract": true,
18259 "docs": {
18260 "default": "- no security headers behavior",
18261 "stability": "stable",
18262 "summary": "A configuration for a set of security-related HTTP response headers."
18263 },
18264 "immutable": true,
18265 "locationInModule": {
18266 "filename": "lib/response-headers-policy.ts",
18267 "line": 53
18268 },
18269 "name": "securityHeadersBehavior",
18270 "optional": true,
18271 "type": {
18272 "fqn": "@aws-cdk/aws-cloudfront.ResponseSecurityHeadersBehavior"
18273 }
18274 }
18275 ],
18276 "symbolId": "lib/response-headers-policy:ResponseHeadersPolicyProps"
18277 },
18278 "@aws-cdk/aws-cloudfront.ResponseHeadersReferrerPolicy": {
18279 "assembly": "@aws-cdk/aws-cloudfront",
18280 "datatype": true,
18281 "docs": {
18282 "custom": {
18283 "exampleMetadata": "infused"
18284 },
18285 "example": "// Using an existing managed response headers policy\ndeclare const bucketOrigin: origins.S3Origin;\nnew cloudfront.Distribution(this, 'myDistManagedPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n responseHeadersPolicy: cloudfront.ResponseHeadersPolicy.CORS_ALLOW_ALL_ORIGINS,\n },\n});\n\n// Creating a custom response headers policy -- all parameters optional\nconst myResponseHeadersPolicy = new cloudfront.ResponseHeadersPolicy(this, 'ResponseHeadersPolicy', {\n responseHeadersPolicyName: 'MyPolicy',\n comment: 'A default policy',\n corsBehavior: {\n accessControlAllowCredentials: false,\n accessControlAllowHeaders: ['X-Custom-Header-1', 'X-Custom-Header-2'],\n accessControlAllowMethods: ['GET', 'POST'],\n accessControlAllowOrigins: ['*'],\n accessControlExposeHeaders: ['X-Custom-Header-1', 'X-Custom-Header-2'],\n accessControlMaxAge: Duration.seconds(600),\n originOverride: true,\n },\n customHeadersBehavior: {\n customHeaders: [\n { header: 'X-Amz-Date', value: 'some-value', override: true },\n { header: 'X-Amz-Security-Token', value: 'some-value', override: false },\n ],\n },\n securityHeadersBehavior: {\n contentSecurityPolicy: { contentSecurityPolicy: 'default-src https:;', override: true },\n contentTypeOptions: { override: true },\n frameOptions: { frameOption: cloudfront.HeadersFrameOption.DENY, override: true },\n referrerPolicy: { referrerPolicy: cloudfront.HeadersReferrerPolicy.NO_REFERRER, override: true },\n strictTransportSecurity: { accessControlMaxAge: Duration.seconds(600), includeSubdomains: true, override: true },\n xssProtection: { protection: true, modeBlock: true, reportUri: 'https://example.com/csp-report', override: true },\n },\n});\nnew cloudfront.Distribution(this, 'myDistCustomPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n responseHeadersPolicy: myResponseHeadersPolicy,\n },\n});",
18286 "stability": "stable",
18287 "summary": "Determines whether CloudFront includes the Referrer-Policy HTTP response header and the header’s value."
18288 },
18289 "fqn": "@aws-cdk/aws-cloudfront.ResponseHeadersReferrerPolicy",
18290 "kind": "interface",
18291 "locationInModule": {
18292 "filename": "lib/response-headers-policy.ts",
18293 "line": 322
18294 },
18295 "name": "ResponseHeadersReferrerPolicy",
18296 "properties": [
18297 {
18298 "abstract": true,
18299 "docs": {
18300 "stability": "stable",
18301 "summary": "A Boolean that determines whether CloudFront overrides the Referrer-Policy HTTP response header received from the origin with the one specified in this response headers policy."
18302 },
18303 "immutable": true,
18304 "locationInModule": {
18305 "filename": "lib/response-headers-policy.ts",
18306 "line": 332
18307 },
18308 "name": "override",
18309 "type": {
18310 "primitive": "boolean"
18311 }
18312 },
18313 {
18314 "abstract": true,
18315 "docs": {
18316 "stability": "stable",
18317 "summary": "The value of the Referrer-Policy HTTP response header."
18318 },
18319 "immutable": true,
18320 "locationInModule": {
18321 "filename": "lib/response-headers-policy.ts",
18322 "line": 326
18323 },
18324 "name": "referrerPolicy",
18325 "type": {
18326 "fqn": "@aws-cdk/aws-cloudfront.HeadersReferrerPolicy"
18327 }
18328 }
18329 ],
18330 "symbolId": "lib/response-headers-policy:ResponseHeadersReferrerPolicy"
18331 },
18332 "@aws-cdk/aws-cloudfront.ResponseHeadersStrictTransportSecurity": {
18333 "assembly": "@aws-cdk/aws-cloudfront",
18334 "datatype": true,
18335 "docs": {
18336 "custom": {
18337 "exampleMetadata": "infused"
18338 },
18339 "example": "// Using an existing managed response headers policy\ndeclare const bucketOrigin: origins.S3Origin;\nnew cloudfront.Distribution(this, 'myDistManagedPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n responseHeadersPolicy: cloudfront.ResponseHeadersPolicy.CORS_ALLOW_ALL_ORIGINS,\n },\n});\n\n// Creating a custom response headers policy -- all parameters optional\nconst myResponseHeadersPolicy = new cloudfront.ResponseHeadersPolicy(this, 'ResponseHeadersPolicy', {\n responseHeadersPolicyName: 'MyPolicy',\n comment: 'A default policy',\n corsBehavior: {\n accessControlAllowCredentials: false,\n accessControlAllowHeaders: ['X-Custom-Header-1', 'X-Custom-Header-2'],\n accessControlAllowMethods: ['GET', 'POST'],\n accessControlAllowOrigins: ['*'],\n accessControlExposeHeaders: ['X-Custom-Header-1', 'X-Custom-Header-2'],\n accessControlMaxAge: Duration.seconds(600),\n originOverride: true,\n },\n customHeadersBehavior: {\n customHeaders: [\n { header: 'X-Amz-Date', value: 'some-value', override: true },\n { header: 'X-Amz-Security-Token', value: 'some-value', override: false },\n ],\n },\n securityHeadersBehavior: {\n contentSecurityPolicy: { contentSecurityPolicy: 'default-src https:;', override: true },\n contentTypeOptions: { override: true },\n frameOptions: { frameOption: cloudfront.HeadersFrameOption.DENY, override: true },\n referrerPolicy: { referrerPolicy: cloudfront.HeadersReferrerPolicy.NO_REFERRER, override: true },\n strictTransportSecurity: { accessControlMaxAge: Duration.seconds(600), includeSubdomains: true, override: true },\n xssProtection: { protection: true, modeBlock: true, reportUri: 'https://example.com/csp-report', override: true },\n },\n});\nnew cloudfront.Distribution(this, 'myDistCustomPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n responseHeadersPolicy: myResponseHeadersPolicy,\n },\n});",
18340 "stability": "stable",
18341 "summary": "Determines whether CloudFront includes the Strict-Transport-Security HTTP response header and the header’s value."
18342 },
18343 "fqn": "@aws-cdk/aws-cloudfront.ResponseHeadersStrictTransportSecurity",
18344 "kind": "interface",
18345 "locationInModule": {
18346 "filename": "lib/response-headers-policy.ts",
18347 "line": 338
18348 },
18349 "name": "ResponseHeadersStrictTransportSecurity",
18350 "properties": [
18351 {
18352 "abstract": true,
18353 "docs": {
18354 "stability": "stable",
18355 "summary": "A number that CloudFront uses as the value for the max-age directive in the Strict-Transport-Security HTTP response header."
18356 },
18357 "immutable": true,
18358 "locationInModule": {
18359 "filename": "lib/response-headers-policy.ts",
18360 "line": 342
18361 },
18362 "name": "accessControlMaxAge",
18363 "type": {
18364 "fqn": "@aws-cdk/core.Duration"
18365 }
18366 },
18367 {
18368 "abstract": true,
18369 "docs": {
18370 "stability": "stable",
18371 "summary": "A Boolean that determines whether CloudFront overrides the Strict-Transport-Security HTTP response header received from the origin with the one specified in this response headers policy."
18372 },
18373 "immutable": true,
18374 "locationInModule": {
18375 "filename": "lib/response-headers-policy.ts",
18376 "line": 355
18377 },
18378 "name": "override",
18379 "type": {
18380 "primitive": "boolean"
18381 }
18382 },
18383 {
18384 "abstract": true,
18385 "docs": {
18386 "default": "false",
18387 "stability": "stable",
18388 "summary": "A Boolean that determines whether CloudFront includes the includeSubDomains directive in the Strict-Transport-Security HTTP response header."
18389 },
18390 "immutable": true,
18391 "locationInModule": {
18392 "filename": "lib/response-headers-policy.ts",
18393 "line": 349
18394 },
18395 "name": "includeSubdomains",
18396 "optional": true,
18397 "type": {
18398 "primitive": "boolean"
18399 }
18400 },
18401 {
18402 "abstract": true,
18403 "docs": {
18404 "default": "false",
18405 "stability": "stable",
18406 "summary": "A Boolean that determines whether CloudFront includes the preload directive in the Strict-Transport-Security HTTP response header."
18407 },
18408 "immutable": true,
18409 "locationInModule": {
18410 "filename": "lib/response-headers-policy.ts",
18411 "line": 362
18412 },
18413 "name": "preload",
18414 "optional": true,
18415 "type": {
18416 "primitive": "boolean"
18417 }
18418 }
18419 ],
18420 "symbolId": "lib/response-headers-policy:ResponseHeadersStrictTransportSecurity"
18421 },
18422 "@aws-cdk/aws-cloudfront.ResponseHeadersXSSProtection": {
18423 "assembly": "@aws-cdk/aws-cloudfront",
18424 "datatype": true,
18425 "docs": {
18426 "custom": {
18427 "exampleMetadata": "infused"
18428 },
18429 "example": "// Using an existing managed response headers policy\ndeclare const bucketOrigin: origins.S3Origin;\nnew cloudfront.Distribution(this, 'myDistManagedPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n responseHeadersPolicy: cloudfront.ResponseHeadersPolicy.CORS_ALLOW_ALL_ORIGINS,\n },\n});\n\n// Creating a custom response headers policy -- all parameters optional\nconst myResponseHeadersPolicy = new cloudfront.ResponseHeadersPolicy(this, 'ResponseHeadersPolicy', {\n responseHeadersPolicyName: 'MyPolicy',\n comment: 'A default policy',\n corsBehavior: {\n accessControlAllowCredentials: false,\n accessControlAllowHeaders: ['X-Custom-Header-1', 'X-Custom-Header-2'],\n accessControlAllowMethods: ['GET', 'POST'],\n accessControlAllowOrigins: ['*'],\n accessControlExposeHeaders: ['X-Custom-Header-1', 'X-Custom-Header-2'],\n accessControlMaxAge: Duration.seconds(600),\n originOverride: true,\n },\n customHeadersBehavior: {\n customHeaders: [\n { header: 'X-Amz-Date', value: 'some-value', override: true },\n { header: 'X-Amz-Security-Token', value: 'some-value', override: false },\n ],\n },\n securityHeadersBehavior: {\n contentSecurityPolicy: { contentSecurityPolicy: 'default-src https:;', override: true },\n contentTypeOptions: { override: true },\n frameOptions: { frameOption: cloudfront.HeadersFrameOption.DENY, override: true },\n referrerPolicy: { referrerPolicy: cloudfront.HeadersReferrerPolicy.NO_REFERRER, override: true },\n strictTransportSecurity: { accessControlMaxAge: Duration.seconds(600), includeSubdomains: true, override: true },\n xssProtection: { protection: true, modeBlock: true, reportUri: 'https://example.com/csp-report', override: true },\n },\n});\nnew cloudfront.Distribution(this, 'myDistCustomPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n responseHeadersPolicy: myResponseHeadersPolicy,\n },\n});",
18430 "stability": "stable",
18431 "summary": "Determines whether CloudFront includes the X-XSS-Protection HTTP response header and the header’s value."
18432 },
18433 "fqn": "@aws-cdk/aws-cloudfront.ResponseHeadersXSSProtection",
18434 "kind": "interface",
18435 "locationInModule": {
18436 "filename": "lib/response-headers-policy.ts",
18437 "line": 368
18438 },
18439 "name": "ResponseHeadersXSSProtection",
18440 "properties": [
18441 {
18442 "abstract": true,
18443 "docs": {
18444 "stability": "stable",
18445 "summary": "A Boolean that determines whether CloudFront overrides the X-XSS-Protection HTTP response header received from the origin with the one specified in this response headers policy."
18446 },
18447 "immutable": true,
18448 "locationInModule": {
18449 "filename": "lib/response-headers-policy.ts",
18450 "line": 380
18451 },
18452 "name": "override",
18453 "type": {
18454 "primitive": "boolean"
18455 }
18456 },
18457 {
18458 "abstract": true,
18459 "docs": {
18460 "remarks": "When this setting is true, the value of the X-XSS-Protection header is 1.\nWhen this setting is false, the value of the X-XSS-Protection header is 0.",
18461 "stability": "stable",
18462 "summary": "A Boolean that determines the value of the X-XSS-Protection HTTP response header."
18463 },
18464 "immutable": true,
18465 "locationInModule": {
18466 "filename": "lib/response-headers-policy.ts",
18467 "line": 387
18468 },
18469 "name": "protection",
18470 "type": {
18471 "primitive": "boolean"
18472 }
18473 },
18474 {
18475 "abstract": true,
18476 "docs": {
18477 "default": "false",
18478 "stability": "stable",
18479 "summary": "A Boolean that determines whether CloudFront includes the mode=block directive in the X-XSS-Protection header."
18480 },
18481 "immutable": true,
18482 "locationInModule": {
18483 "filename": "lib/response-headers-policy.ts",
18484 "line": 374
18485 },
18486 "name": "modeBlock",
18487 "optional": true,
18488 "type": {
18489 "primitive": "boolean"
18490 }
18491 },
18492 {
18493 "abstract": true,
18494 "docs": {
18495 "default": "- no report uri",
18496 "remarks": "You cannot specify a ReportUri when ModeBlock is true.",
18497 "stability": "stable",
18498 "summary": "A reporting URI, which CloudFront uses as the value of the report directive in the X-XSS-Protection header."
18499 },
18500 "immutable": true,
18501 "locationInModule": {
18502 "filename": "lib/response-headers-policy.ts",
18503 "line": 395
18504 },
18505 "name": "reportUri",
18506 "optional": true,
18507 "type": {
18508 "primitive": "string"
18509 }
18510 }
18511 ],
18512 "symbolId": "lib/response-headers-policy:ResponseHeadersXSSProtection"
18513 },
18514 "@aws-cdk/aws-cloudfront.ResponseSecurityHeadersBehavior": {
18515 "assembly": "@aws-cdk/aws-cloudfront",
18516 "datatype": true,
18517 "docs": {
18518 "custom": {
18519 "exampleMetadata": "infused"
18520 },
18521 "example": "// Using an existing managed response headers policy\ndeclare const bucketOrigin: origins.S3Origin;\nnew cloudfront.Distribution(this, 'myDistManagedPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n responseHeadersPolicy: cloudfront.ResponseHeadersPolicy.CORS_ALLOW_ALL_ORIGINS,\n },\n});\n\n// Creating a custom response headers policy -- all parameters optional\nconst myResponseHeadersPolicy = new cloudfront.ResponseHeadersPolicy(this, 'ResponseHeadersPolicy', {\n responseHeadersPolicyName: 'MyPolicy',\n comment: 'A default policy',\n corsBehavior: {\n accessControlAllowCredentials: false,\n accessControlAllowHeaders: ['X-Custom-Header-1', 'X-Custom-Header-2'],\n accessControlAllowMethods: ['GET', 'POST'],\n accessControlAllowOrigins: ['*'],\n accessControlExposeHeaders: ['X-Custom-Header-1', 'X-Custom-Header-2'],\n accessControlMaxAge: Duration.seconds(600),\n originOverride: true,\n },\n customHeadersBehavior: {\n customHeaders: [\n { header: 'X-Amz-Date', value: 'some-value', override: true },\n { header: 'X-Amz-Security-Token', value: 'some-value', override: false },\n ],\n },\n securityHeadersBehavior: {\n contentSecurityPolicy: { contentSecurityPolicy: 'default-src https:;', override: true },\n contentTypeOptions: { override: true },\n frameOptions: { frameOption: cloudfront.HeadersFrameOption.DENY, override: true },\n referrerPolicy: { referrerPolicy: cloudfront.HeadersReferrerPolicy.NO_REFERRER, override: true },\n strictTransportSecurity: { accessControlMaxAge: Duration.seconds(600), includeSubdomains: true, override: true },\n xssProtection: { protection: true, modeBlock: true, reportUri: 'https://example.com/csp-report', override: true },\n },\n});\nnew cloudfront.Distribution(this, 'myDistCustomPolicy', {\n defaultBehavior: {\n origin: bucketOrigin,\n responseHeadersPolicy: myResponseHeadersPolicy,\n },\n});",
18522 "remarks": "CloudFront adds these headers to HTTP responses that it sends for requests that match a cache behavior\nassociated with this response headers policy.",
18523 "stability": "stable",
18524 "summary": "Configuration for a set of security-related HTTP response headers."
18525 },
18526 "fqn": "@aws-cdk/aws-cloudfront.ResponseSecurityHeadersBehavior",
18527 "kind": "interface",
18528 "locationInModule": {
18529 "filename": "lib/response-headers-policy.ts",
18530 "line": 232
18531 },
18532 "name": "ResponseSecurityHeadersBehavior",
18533 "properties": [
18534 {
18535 "abstract": true,
18536 "docs": {
18537 "default": "- no content security policy",
18538 "stability": "stable",
18539 "summary": "The policy directives and their values that CloudFront includes as values for the Content-Security-Policy HTTP response header."
18540 },
18541 "immutable": true,
18542 "locationInModule": {
18543 "filename": "lib/response-headers-policy.ts",
18544 "line": 238
18545 },
18546 "name": "contentSecurityPolicy",
18547 "optional": true,
18548 "type": {
18549 "fqn": "@aws-cdk/aws-cloudfront.ResponseHeadersContentSecurityPolicy"
18550 }
18551 },
18552 {
18553 "abstract": true,
18554 "docs": {
18555 "default": "- no content type options",
18556 "stability": "stable",
18557 "summary": "Determines whether CloudFront includes the X-Content-Type-Options HTTP response header with its value set to nosniff."
18558 },
18559 "immutable": true,
18560 "locationInModule": {
18561 "filename": "lib/response-headers-policy.ts",
18562 "line": 245
18563 },
18564 "name": "contentTypeOptions",
18565 "optional": true,
18566 "type": {
18567 "fqn": "@aws-cdk/aws-cloudfront.ResponseHeadersContentTypeOptions"
18568 }
18569 },
18570 {
18571 "abstract": true,
18572 "docs": {
18573 "default": "- no frame options",
18574 "stability": "stable",
18575 "summary": "Determines whether CloudFront includes the X-Frame-Options HTTP response header and the header’s value."
18576 },
18577 "immutable": true,
18578 "locationInModule": {
18579 "filename": "lib/response-headers-policy.ts",
18580 "line": 252
18581 },
18582 "name": "frameOptions",
18583 "optional": true,
18584 "type": {
18585 "fqn": "@aws-cdk/aws-cloudfront.ResponseHeadersFrameOptions"
18586 }
18587 },
18588 {
18589 "abstract": true,
18590 "docs": {
18591 "default": "- no referrer policy",
18592 "stability": "stable",
18593 "summary": "Determines whether CloudFront includes the Referrer-Policy HTTP response header and the header’s value."
18594 },
18595 "immutable": true,
18596 "locationInModule": {
18597 "filename": "lib/response-headers-policy.ts",
18598 "line": 259
18599 },
18600 "name": "referrerPolicy",
18601 "optional": true,
18602 "type": {
18603 "fqn": "@aws-cdk/aws-cloudfront.ResponseHeadersReferrerPolicy"
18604 }
18605 },
18606 {
18607 "abstract": true,
18608 "docs": {
18609 "default": "- no strict transport security",
18610 "stability": "stable",
18611 "summary": "Determines whether CloudFront includes the Strict-Transport-Security HTTP response header and the header’s value."
18612 },
18613 "immutable": true,
18614 "locationInModule": {
18615 "filename": "lib/response-headers-policy.ts",
18616 "line": 266
18617 },
18618 "name": "strictTransportSecurity",
18619 "optional": true,
18620 "type": {
18621 "fqn": "@aws-cdk/aws-cloudfront.ResponseHeadersStrictTransportSecurity"
18622 }
18623 },
18624 {
18625 "abstract": true,
18626 "docs": {
18627 "default": "- no xss protection",
18628 "stability": "stable",
18629 "summary": "Determines whether CloudFront includes the X-XSS-Protection HTTP response header and the header’s value."
18630 },
18631 "immutable": true,
18632 "locationInModule": {
18633 "filename": "lib/response-headers-policy.ts",
18634 "line": 273
18635 },
18636 "name": "xssProtection",
18637 "optional": true,
18638 "type": {
18639 "fqn": "@aws-cdk/aws-cloudfront.ResponseHeadersXSSProtection"
18640 }
18641 }
18642 ],
18643 "symbolId": "lib/response-headers-policy:ResponseSecurityHeadersBehavior"
18644 },
18645 "@aws-cdk/aws-cloudfront.S3OriginConfig": {
18646 "assembly": "@aws-cdk/aws-cloudfront",
18647 "datatype": true,
18648 "docs": {
18649 "custom": {
18650 "exampleMetadata": "infused"
18651 },
18652 "example": "declare const sourceBucket: s3.Bucket;\nconst viewerCertificate = cloudfront.ViewerCertificate.fromIamCertificate('MYIAMROLEIDENTIFIER', {\n aliases: ['MYALIAS'],\n});\n\nnew cloudfront.CloudFrontWebDistribution(this, 'MyCfWebDistribution', {\n originConfigs: [\n {\n s3OriginSource: {\n s3BucketSource: sourceBucket,\n },\n behaviors : [ {isDefaultBehavior: true} ],\n },\n ],\n viewerCertificate: viewerCertificate,\n});",
18653 "stability": "stable",
18654 "summary": "S3 origin configuration for CloudFront."
18655 },
18656 "fqn": "@aws-cdk/aws-cloudfront.S3OriginConfig",
18657 "kind": "interface",
18658 "locationInModule": {
18659 "filename": "lib/web-distribution.ts",
18660 "line": 300
18661 },
18662 "name": "S3OriginConfig",
18663 "properties": [
18664 {
18665 "abstract": true,
18666 "docs": {
18667 "stability": "stable",
18668 "summary": "The source bucket to serve content from."
18669 },
18670 "immutable": true,
18671 "locationInModule": {
18672 "filename": "lib/web-distribution.ts",
18673 "line": 304
18674 },
18675 "name": "s3BucketSource",
18676 "type": {
18677 "fqn": "@aws-cdk/aws-s3.IBucket"
18678 }
18679 },
18680 {
18681 "abstract": true,
18682 "docs": {
18683 "default": "No Origin Access Identity which requires the S3 bucket to be public accessible",
18684 "stability": "stable",
18685 "summary": "The optional Origin Access Identity of the origin identity cloudfront will use when calling your s3 bucket."
18686 },
18687 "immutable": true,
18688 "locationInModule": {
18689 "filename": "lib/web-distribution.ts",
18690 "line": 311
18691 },
18692 "name": "originAccessIdentity",
18693 "optional": true,
18694 "type": {
18695 "fqn": "@aws-cdk/aws-cloudfront.IOriginAccessIdentity"
18696 }
18697 },
18698 {
18699 "abstract": true,
18700 "docs": {
18701 "default": "- No additional headers are passed.",
18702 "stability": "stable",
18703 "summary": "Any additional headers to pass to the origin."
18704 },
18705 "immutable": true,
18706 "locationInModule": {
18707 "filename": "lib/web-distribution.ts",
18708 "line": 325
18709 },
18710 "name": "originHeaders",
18711 "optional": true,
18712 "type": {
18713 "collection": {
18714 "elementtype": {
18715 "primitive": "string"
18716 },
18717 "kind": "map"
18718 }
18719 }
18720 },
18721 {
18722 "abstract": true,
18723 "docs": {
18724 "default": "/",
18725 "stability": "stable",
18726 "summary": "The relative path to the origin root to use for sources."
18727 },
18728 "immutable": true,
18729 "locationInModule": {
18730 "filename": "lib/web-distribution.ts",
18731 "line": 318
18732 },
18733 "name": "originPath",
18734 "optional": true,
18735 "type": {
18736 "primitive": "string"
18737 }
18738 },
18739 {
18740 "abstract": true,
18741 "docs": {
18742 "default": "- origin shield not enabled",
18743 "stability": "stable",
18744 "summary": "When you enable Origin Shield in the AWS Region that has the lowest latency to your origin, you can get better network performance."
18745 },
18746 "immutable": true,
18747 "locationInModule": {
18748 "filename": "lib/web-distribution.ts",
18749 "line": 332
18750 },
18751 "name": "originShieldRegion",
18752 "optional": true,
18753 "type": {
18754 "primitive": "string"
18755 }
18756 }
18757 ],
18758 "symbolId": "lib/web-distribution:S3OriginConfig"
18759 },
18760 "@aws-cdk/aws-cloudfront.SSLMethod": {
18761 "assembly": "@aws-cdk/aws-cloudfront",
18762 "docs": {
18763 "custom": {
18764 "exampleMetadata": "lit=test/example.iam-cert-alias.lit.ts infused"
18765 },
18766 "example": " const s3BucketSource = new s3.Bucket(this, 'Bucket');\n\n const distribution = new cloudfront.CloudFrontWebDistribution(this, 'AnAmazingWebsiteProbably', {\n originConfigs: [{\n s3OriginSource: { s3BucketSource },\n behaviors: [{ isDefaultBehavior: true }],\n }],\n viewerCertificate: cloudfront.ViewerCertificate.fromIamCertificate(\n 'certificateId',\n {\n aliases: ['example.com'],\n securityPolicy: cloudfront.SecurityPolicyProtocol.SSL_V3, // default\n sslMethod: cloudfront.SSLMethod.SNI, // default\n },\n ),\n });",
18767 "remarks": "Server Name Indication (SNI) - is an extension to the TLS computer networking protocol by which a client indicates\n which hostname it is attempting to connect to at the start of the handshaking process. This allows a server to present\n multiple certificates on the same IP address and TCP port number and hence allows multiple secure (HTTPS) websites\n(or any other service over TLS) to be served by the same IP address without requiring all those sites to use the same certificate.\n\nCloudFront can use SNI to host multiple distributions on the same IP - which a large majority of clients will support.\n\nIf your clients cannot support SNI however - CloudFront can use dedicated IPs for your distribution - but there is a prorated monthly charge for\nusing this feature. By default, we use SNI - but you can optionally enable dedicated IPs (VIP).\n\nSee the CloudFront SSL for more details about pricing : https://aws.amazon.com/cloudfront/custom-ssl-domains/",
18768 "stability": "stable",
18769 "summary": "The SSL method CloudFront will use for your distribution."
18770 },
18771 "fqn": "@aws-cdk/aws-cloudfront.SSLMethod",
18772 "kind": "enum",
18773 "locationInModule": {
18774 "filename": "lib/distribution.ts",
18775 "line": 549
18776 },
18777 "members": [
18778 {
18779 "docs": {
18780 "stability": "stable"
18781 },
18782 "name": "SNI"
18783 },
18784 {
18785 "docs": {
18786 "stability": "stable"
18787 },
18788 "name": "VIP"
18789 }
18790 ],
18791 "name": "SSLMethod",
18792 "symbolId": "lib/distribution:SSLMethod"
18793 },
18794 "@aws-cdk/aws-cloudfront.SecurityPolicyProtocol": {
18795 "assembly": "@aws-cdk/aws-cloudfront",
18796 "docs": {
18797 "custom": {
18798 "exampleMetadata": "lit=test/example.iam-cert-alias.lit.ts infused"
18799 },
18800 "example": " const s3BucketSource = new s3.Bucket(this, 'Bucket');\n\n const distribution = new cloudfront.CloudFrontWebDistribution(this, 'AnAmazingWebsiteProbably', {\n originConfigs: [{\n s3OriginSource: { s3BucketSource },\n behaviors: [{ isDefaultBehavior: true }],\n }],\n viewerCertificate: cloudfront.ViewerCertificate.fromIamCertificate(\n 'certificateId',\n {\n aliases: ['example.com'],\n securityPolicy: cloudfront.SecurityPolicyProtocol.SSL_V3, // default\n sslMethod: cloudfront.SSLMethod.SNI, // default\n },\n ),\n });",
18801 "remarks": "CloudFront serves your objects only to browsers or devices that support at least the SSL version that you specify.",
18802 "stability": "stable",
18803 "summary": "The minimum version of the SSL protocol that you want CloudFront to use for HTTPS connections."
18804 },
18805 "fqn": "@aws-cdk/aws-cloudfront.SecurityPolicyProtocol",
18806 "kind": "enum",
18807 "locationInModule": {
18808 "filename": "lib/distribution.ts",
18809 "line": 558
18810 },
18811 "members": [
18812 {
18813 "docs": {
18814 "stability": "stable"
18815 },
18816 "name": "SSL_V3"
18817 },
18818 {
18819 "docs": {
18820 "stability": "stable"
18821 },
18822 "name": "TLS_V1"
18823 },
18824 {
18825 "docs": {
18826 "stability": "stable"
18827 },
18828 "name": "TLS_V1_2016"
18829 },
18830 {
18831 "docs": {
18832 "stability": "stable"
18833 },
18834 "name": "TLS_V1_1_2016"
18835 },
18836 {
18837 "docs": {
18838 "stability": "stable"
18839 },
18840 "name": "TLS_V1_2_2018"
18841 },
18842 {
18843 "docs": {
18844 "stability": "stable"
18845 },
18846 "name": "TLS_V1_2_2019"
18847 },
18848 {
18849 "docs": {
18850 "stability": "stable"
18851 },
18852 "name": "TLS_V1_2_2021"
18853 }
18854 ],
18855 "name": "SecurityPolicyProtocol",
18856 "symbolId": "lib/distribution:SecurityPolicyProtocol"
18857 },
18858 "@aws-cdk/aws-cloudfront.SourceConfiguration": {
18859 "assembly": "@aws-cdk/aws-cloudfront",
18860 "datatype": true,
18861 "docs": {
18862 "remarks": "An origin is what CloudFront will \"be in front of\" - that is, CloudFront will pull it's assets from an origin.\n\nIf you're using s3 as a source - pass the `s3Origin` property, otherwise, pass the `customOriginSource` property.\n\nOne or the other must be passed, and it is invalid to pass both in the same SourceConfiguration.",
18863 "stability": "stable",
18864 "summary": "A source configuration is a wrapper for CloudFront origins and behaviors.",
18865 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as cloudfront from '@aws-cdk/aws-cloudfront';\nimport * as lambda from '@aws-cdk/aws-lambda';\nimport * as s3 from '@aws-cdk/aws-s3';\nimport * as cdk from '@aws-cdk/core';\n\ndeclare const bucket: s3.Bucket;\ndeclare const function_: cloudfront.Function;\ndeclare const keyGroup: cloudfront.KeyGroup;\ndeclare const originAccessIdentity: cloudfront.OriginAccessIdentity;\ndeclare const version: lambda.Version;\nconst sourceConfiguration: cloudfront.SourceConfiguration = {\n behaviors: [{\n allowedMethods: cloudfront.CloudFrontAllowedMethods.GET_HEAD,\n cachedMethods: cloudfront.CloudFrontAllowedCachedMethods.GET_HEAD,\n compress: false,\n defaultTtl: cdk.Duration.minutes(30),\n forwardedValues: {\n queryString: false,\n\n // the properties below are optional\n cookies: {\n forward: 'forward',\n\n // the properties below are optional\n whitelistedNames: ['whitelistedNames'],\n },\n headers: ['headers'],\n queryStringCacheKeys: ['queryStringCacheKeys'],\n },\n functionAssociations: [{\n eventType: cloudfront.FunctionEventType.VIEWER_REQUEST,\n function: function_,\n }],\n isDefaultBehavior: false,\n lambdaFunctionAssociations: [{\n eventType: cloudfront.LambdaEdgeEventType.ORIGIN_REQUEST,\n lambdaFunction: version,\n\n // the properties below are optional\n includeBody: false,\n }],\n maxTtl: cdk.Duration.minutes(30),\n minTtl: cdk.Duration.minutes(30),\n pathPattern: 'pathPattern',\n trustedKeyGroups: [keyGroup],\n trustedSigners: ['trustedSigners'],\n viewerProtocolPolicy: cloudfront.ViewerProtocolPolicy.HTTPS_ONLY,\n }],\n\n // the properties below are optional\n connectionAttempts: 123,\n connectionTimeout: cdk.Duration.minutes(30),\n customOriginSource: {\n domainName: 'domainName',\n\n // the properties below are optional\n allowedOriginSSLVersions: [cloudfront.OriginSslPolicy.SSL_V3],\n httpPort: 123,\n httpsPort: 123,\n originHeaders: {\n originHeadersKey: 'originHeaders',\n },\n originKeepaliveTimeout: cdk.Duration.minutes(30),\n originPath: 'originPath',\n originProtocolPolicy: cloudfront.OriginProtocolPolicy.HTTP_ONLY,\n originReadTimeout: cdk.Duration.minutes(30),\n originShieldRegion: 'originShieldRegion',\n },\n failoverCriteriaStatusCodes: [cloudfront.FailoverStatusCode.FORBIDDEN],\n failoverCustomOriginSource: {\n domainName: 'domainName',\n\n // the properties below are optional\n allowedOriginSSLVersions: [cloudfront.OriginSslPolicy.SSL_V3],\n httpPort: 123,\n httpsPort: 123,\n originHeaders: {\n originHeadersKey: 'originHeaders',\n },\n originKeepaliveTimeout: cdk.Duration.minutes(30),\n originPath: 'originPath',\n originProtocolPolicy: cloudfront.OriginProtocolPolicy.HTTP_ONLY,\n originReadTimeout: cdk.Duration.minutes(30),\n originShieldRegion: 'originShieldRegion',\n },\n failoverS3OriginSource: {\n s3BucketSource: bucket,\n\n // the properties below are optional\n originAccessIdentity: originAccessIdentity,\n originHeaders: {\n originHeadersKey: 'originHeaders',\n },\n originPath: 'originPath',\n originShieldRegion: 'originShieldRegion',\n },\n originHeaders: {\n originHeadersKey: 'originHeaders',\n },\n originPath: 'originPath',\n originShieldRegion: 'originShieldRegion',\n s3OriginSource: {\n s3BucketSource: bucket,\n\n // the properties below are optional\n originAccessIdentity: originAccessIdentity,\n originHeaders: {\n originHeadersKey: 'originHeaders',\n },\n originPath: 'originPath',\n originShieldRegion: 'originShieldRegion',\n },\n};",
18866 "custom": {
18867 "exampleMetadata": "fixture=_generated"
18868 }
18869 },
18870 "fqn": "@aws-cdk/aws-cloudfront.SourceConfiguration",
18871 "kind": "interface",
18872 "locationInModule": {
18873 "filename": "lib/web-distribution.ts",
18874 "line": 137
18875 },
18876 "name": "SourceConfiguration",
18877 "properties": [
18878 {
18879 "abstract": true,
18880 "docs": {
18881 "remarks": "At least one (default) behavior must be included.",
18882 "stability": "stable",
18883 "summary": "The behaviors associated with this source."
18884 },
18885 "immutable": true,
18886 "locationInModule": {
18887 "filename": "lib/web-distribution.ts",
18888 "line": 189
18889 },
18890 "name": "behaviors",
18891 "type": {
18892 "collection": {
18893 "elementtype": {
18894 "fqn": "@aws-cdk/aws-cloudfront.Behavior"
18895 },
18896 "kind": "array"
18897 }
18898 }
18899 },
18900 {
18901 "abstract": true,
18902 "docs": {
18903 "default": "3",
18904 "remarks": "You can specify 1, 2, or 3 as the number of attempts.",
18905 "stability": "stable",
18906 "summary": "The number of times that CloudFront attempts to connect to the origin."
18907 },
18908 "immutable": true,
18909 "locationInModule": {
18910 "filename": "lib/web-distribution.ts",
18911 "line": 144
18912 },
18913 "name": "connectionAttempts",
18914 "optional": true,
18915 "type": {
18916 "primitive": "number"
18917 }
18918 },
18919 {
18920 "abstract": true,
18921 "docs": {
18922 "default": "cdk.Duration.seconds(10)",
18923 "remarks": "You can specify a number of seconds between 1 and 10 (inclusive).",
18924 "stability": "stable",
18925 "summary": "The number of seconds that CloudFront waits when trying to establish a connection to the origin."
18926 },
18927 "immutable": true,
18928 "locationInModule": {
18929 "filename": "lib/web-distribution.ts",
18930 "line": 152
18931 },
18932 "name": "connectionTimeout",
18933 "optional": true,
18934 "type": {
18935 "fqn": "@aws-cdk/core.Duration"
18936 }
18937 },
18938 {
18939 "abstract": true,
18940 "docs": {
18941 "stability": "stable",
18942 "summary": "A custom origin source - for all non-s3 sources."
18943 },
18944 "immutable": true,
18945 "locationInModule": {
18946 "filename": "lib/web-distribution.ts",
18947 "line": 162
18948 },
18949 "name": "customOriginSource",
18950 "optional": true,
18951 "type": {
18952 "fqn": "@aws-cdk/aws-cloudfront.CustomOriginConfig"
18953 }
18954 },
18955 {
18956 "abstract": true,
18957 "docs": {
18958 "default": "[500, 502, 503, 504]",
18959 "stability": "stable",
18960 "summary": "HTTP status code to failover to second origin."
18961 },
18962 "immutable": true,
18963 "locationInModule": {
18964 "filename": "lib/web-distribution.ts",
18965 "line": 183
18966 },
18967 "name": "failoverCriteriaStatusCodes",
18968 "optional": true,
18969 "type": {
18970 "collection": {
18971 "elementtype": {
18972 "fqn": "@aws-cdk/aws-cloudfront.FailoverStatusCode"
18973 },
18974 "kind": "array"
18975 }
18976 }
18977 },
18978 {
18979 "abstract": true,
18980 "docs": {
18981 "default": "- no failover configuration",
18982 "stability": "stable",
18983 "summary": "A custom origin source for failover in case the s3OriginSource returns invalid status code."
18984 },
18985 "immutable": true,
18986 "locationInModule": {
18987 "filename": "lib/web-distribution.ts",
18988 "line": 176
18989 },
18990 "name": "failoverCustomOriginSource",
18991 "optional": true,
18992 "type": {
18993 "fqn": "@aws-cdk/aws-cloudfront.CustomOriginConfig"
18994 }
18995 },
18996 {
18997 "abstract": true,
18998 "docs": {
18999 "default": "- no failover configuration",
19000 "stability": "stable",
19001 "summary": "An s3 origin source for failover in case the s3OriginSource returns invalid status code."
19002 },
19003 "immutable": true,
19004 "locationInModule": {
19005 "filename": "lib/web-distribution.ts",
19006 "line": 169
19007 },
19008 "name": "failoverS3OriginSource",
19009 "optional": true,
19010 "type": {
19011 "fqn": "@aws-cdk/aws-cloudfront.S3OriginConfig"
19012 }
19013 },
19014 {
19015 "abstract": true,
19016 "docs": {
19017 "default": "- No additional headers are passed.",
19018 "deprecated": "Use originHeaders on s3OriginSource or customOriginSource",
19019 "stability": "deprecated",
19020 "summary": "Any additional headers to pass to the origin."
19021 },
19022 "immutable": true,
19023 "locationInModule": {
19024 "filename": "lib/web-distribution.ts",
19025 "line": 205
19026 },
19027 "name": "originHeaders",
19028 "optional": true,
19029 "type": {
19030 "collection": {
19031 "elementtype": {
19032 "primitive": "string"
19033 },
19034 "kind": "map"
19035 }
19036 }
19037 },
19038 {
19039 "abstract": true,
19040 "docs": {
19041 "default": "/",
19042 "deprecated": "Use originPath on s3OriginSource or customOriginSource",
19043 "stability": "deprecated",
19044 "summary": "The relative path to the origin root to use for sources."
19045 },
19046 "immutable": true,
19047 "locationInModule": {
19048 "filename": "lib/web-distribution.ts",
19049 "line": 197
19050 },
19051 "name": "originPath",
19052 "optional": true,
19053 "type": {
19054 "primitive": "string"
19055 }
19056 },
19057 {
19058 "abstract": true,
19059 "docs": {
19060 "default": "- origin shield not enabled",
19061 "see": "https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/origin-shield.html",
19062 "stability": "stable",
19063 "summary": "When you enable Origin Shield in the AWS Region that has the lowest latency to your origin, you can get better network performance."
19064 },
19065 "immutable": true,
19066 "locationInModule": {
19067 "filename": "lib/web-distribution.ts",
19068 "line": 214
19069 },
19070 "name": "originShieldRegion",
19071 "optional": true,
19072 "type": {
19073 "primitive": "string"
19074 }
19075 },
19076 {
19077 "abstract": true,
19078 "docs": {
19079 "stability": "stable",
19080 "summary": "An s3 origin source - if you're using s3 for your assets."
19081 },
19082 "immutable": true,
19083 "locationInModule": {
19084 "filename": "lib/web-distribution.ts",
19085 "line": 157
19086 },
19087 "name": "s3OriginSource",
19088 "optional": true,
19089 "type": {
19090 "fqn": "@aws-cdk/aws-cloudfront.S3OriginConfig"
19091 }
19092 }
19093 ],
19094 "symbolId": "lib/web-distribution:SourceConfiguration"
19095 },
19096 "@aws-cdk/aws-cloudfront.ViewerCertificate": {
19097 "assembly": "@aws-cdk/aws-cloudfront",
19098 "docs": {
19099 "custom": {
19100 "exampleMetadata": "lit=test/example.iam-cert-alias.lit.ts infused"
19101 },
19102 "example": " const s3BucketSource = new s3.Bucket(this, 'Bucket');\n\n const distribution = new cloudfront.CloudFrontWebDistribution(this, 'AnAmazingWebsiteProbably', {\n originConfigs: [{\n s3OriginSource: { s3BucketSource },\n behaviors: [{ isDefaultBehavior: true }],\n }],\n viewerCertificate: cloudfront.ViewerCertificate.fromIamCertificate(\n 'certificateId',\n {\n aliases: ['example.com'],\n securityPolicy: cloudfront.SecurityPolicyProtocol.SSL_V3, // default\n sslMethod: cloudfront.SSLMethod.SNI, // default\n },\n ),\n });",
19103 "stability": "stable",
19104 "summary": "Viewer certificate configuration class."
19105 },
19106 "fqn": "@aws-cdk/aws-cloudfront.ViewerCertificate",
19107 "kind": "class",
19108 "locationInModule": {
19109 "filename": "lib/web-distribution.ts",
19110 "line": 518
19111 },
19112 "methods": [
19113 {
19114 "docs": {
19115 "stability": "stable",
19116 "summary": "Generate an AWS Certificate Manager (ACM) viewer certificate configuration."
19117 },
19118 "locationInModule": {
19119 "filename": "lib/web-distribution.ts",
19120 "line": 526
19121 },
19122 "name": "fromAcmCertificate",
19123 "parameters": [
19124 {
19125 "docs": {
19126 "remarks": "Your certificate must be located in the us-east-1 (US East (N. Virginia)) region to be accessed by CloudFront",
19127 "summary": "AWS Certificate Manager (ACM) certificate."
19128 },
19129 "name": "certificate",
19130 "type": {
19131 "fqn": "@aws-cdk/aws-certificatemanager.ICertificate"
19132 }
19133 },
19134 {
19135 "docs": {
19136 "summary": "certificate configuration options."
19137 },
19138 "name": "options",
19139 "optional": true,
19140 "type": {
19141 "fqn": "@aws-cdk/aws-cloudfront.ViewerCertificateOptions"
19142 }
19143 }
19144 ],
19145 "returns": {
19146 "type": {
19147 "fqn": "@aws-cdk/aws-cloudfront.ViewerCertificate"
19148 }
19149 },
19150 "static": true
19151 },
19152 {
19153 "docs": {
19154 "stability": "stable",
19155 "summary": "Generate a viewer certifcate configuration using the CloudFront default certificate (e.g. d111111abcdef8.cloudfront.net) and a {@link SecurityPolicyProtocol.TLS_V1} security policy."
19156 },
19157 "locationInModule": {
19158 "filename": "lib/web-distribution.ts",
19159 "line": 564
19160 },
19161 "name": "fromCloudFrontDefaultCertificate",
19162 "parameters": [
19163 {
19164 "docs": {
19165 "summary": "Alternative CNAME aliases You also must create a CNAME record with your DNS service to route queries."
19166 },
19167 "name": "aliases",
19168 "type": {
19169 "primitive": "string"
19170 },
19171 "variadic": true
19172 }
19173 ],
19174 "returns": {
19175 "type": {
19176 "fqn": "@aws-cdk/aws-cloudfront.ViewerCertificate"
19177 }
19178 },
19179 "static": true,
19180 "variadic": true
19181 },
19182 {
19183 "docs": {
19184 "stability": "stable",
19185 "summary": "Generate an IAM viewer certificate configuration."
19186 },
19187 "locationInModule": {
19188 "filename": "lib/web-distribution.ts",
19189 "line": 544
19190 },
19191 "name": "fromIamCertificate",
19192 "parameters": [
19193 {
19194 "docs": {
19195 "summary": "Identifier of the IAM certificate."
19196 },
19197 "name": "iamCertificateId",
19198 "type": {
19199 "primitive": "string"
19200 }
19201 },
19202 {
19203 "docs": {
19204 "summary": "certificate configuration options."
19205 },
19206 "name": "options",
19207 "optional": true,
19208 "type": {
19209 "fqn": "@aws-cdk/aws-cloudfront.ViewerCertificateOptions"
19210 }
19211 }
19212 ],
19213 "returns": {
19214 "type": {
19215 "fqn": "@aws-cdk/aws-cloudfront.ViewerCertificate"
19216 }
19217 },
19218 "static": true
19219 }
19220 ],
19221 "name": "ViewerCertificate",
19222 "properties": [
19223 {
19224 "docs": {
19225 "stability": "stable"
19226 },
19227 "immutable": true,
19228 "locationInModule": {
19229 "filename": "lib/web-distribution.ts",
19230 "line": 570
19231 },
19232 "name": "aliases",
19233 "type": {
19234 "collection": {
19235 "elementtype": {
19236 "primitive": "string"
19237 },
19238 "kind": "array"
19239 }
19240 }
19241 },
19242 {
19243 "docs": {
19244 "stability": "stable"
19245 },
19246 "immutable": true,
19247 "locationInModule": {
19248 "filename": "lib/web-distribution.ts",
19249 "line": 569
19250 },
19251 "name": "props",
19252 "type": {
19253 "fqn": "@aws-cdk/aws-cloudfront.CfnDistribution.ViewerCertificateProperty"
19254 }
19255 }
19256 ],
19257 "symbolId": "lib/web-distribution:ViewerCertificate"
19258 },
19259 "@aws-cdk/aws-cloudfront.ViewerCertificateOptions": {
19260 "assembly": "@aws-cdk/aws-cloudfront",
19261 "datatype": true,
19262 "docs": {
19263 "custom": {
19264 "exampleMetadata": "lit=test/example.iam-cert-alias.lit.ts infused"
19265 },
19266 "example": " const s3BucketSource = new s3.Bucket(this, 'Bucket');\n\n const distribution = new cloudfront.CloudFrontWebDistribution(this, 'AnAmazingWebsiteProbably', {\n originConfigs: [{\n s3OriginSource: { s3BucketSource },\n behaviors: [{ isDefaultBehavior: true }],\n }],\n viewerCertificate: cloudfront.ViewerCertificate.fromIamCertificate(\n 'certificateId',\n {\n aliases: ['example.com'],\n securityPolicy: cloudfront.SecurityPolicyProtocol.SSL_V3, // default\n sslMethod: cloudfront.SSLMethod.SNI, // default\n },\n ),\n });",
19267 "stability": "stable"
19268 },
19269 "fqn": "@aws-cdk/aws-cloudfront.ViewerCertificateOptions",
19270 "kind": "interface",
19271 "locationInModule": {
19272 "filename": "lib/web-distribution.ts",
19273 "line": 488
19274 },
19275 "name": "ViewerCertificateOptions",
19276 "properties": [
19277 {
19278 "abstract": true,
19279 "docs": {
19280 "stability": "stable",
19281 "summary": "Domain names on the certificate (both main domain name and Subject Alternative names)."
19282 },
19283 "immutable": true,
19284 "locationInModule": {
19285 "filename": "lib/web-distribution.ts",
19286 "line": 512
19287 },
19288 "name": "aliases",
19289 "optional": true,
19290 "type": {
19291 "collection": {
19292 "elementtype": {
19293 "primitive": "string"
19294 },
19295 "kind": "array"
19296 }
19297 }
19298 },
19299 {
19300 "abstract": true,
19301 "docs": {
19302 "default": "- SSLv3 if sslMethod VIP, TLSv1 if sslMethod SNI",
19303 "remarks": "CloudFront serves your objects only to browsers or devices that support at\nleast the SSL version that you specify.",
19304 "stability": "stable",
19305 "summary": "The minimum version of the SSL protocol that you want CloudFront to use for HTTPS connections."
19306 },
19307 "immutable": true,
19308 "locationInModule": {
19309 "filename": "lib/web-distribution.ts",
19310 "line": 507
19311 },
19312 "name": "securityPolicy",
19313 "optional": true,
19314 "type": {
19315 "fqn": "@aws-cdk/aws-cloudfront.SecurityPolicyProtocol"
19316 }
19317 },
19318 {
19319 "abstract": true,
19320 "docs": {
19321 "default": "SSLMethod.SNI",
19322 "remarks": "See the notes on SSLMethod if you wish to use other SSL termination types.",
19323 "see": "https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_ViewerCertificate.html",
19324 "stability": "stable",
19325 "summary": "How CloudFront should serve HTTPS requests."
19326 },
19327 "immutable": true,
19328 "locationInModule": {
19329 "filename": "lib/web-distribution.ts",
19330 "line": 497
19331 },
19332 "name": "sslMethod",
19333 "optional": true,
19334 "type": {
19335 "fqn": "@aws-cdk/aws-cloudfront.SSLMethod"
19336 }
19337 }
19338 ],
19339 "symbolId": "lib/web-distribution:ViewerCertificateOptions"
19340 },
19341 "@aws-cdk/aws-cloudfront.ViewerProtocolPolicy": {
19342 "assembly": "@aws-cdk/aws-cloudfront",
19343 "docs": {
19344 "custom": {
19345 "exampleMetadata": "infused"
19346 },
19347 "example": "// Create a Distribution with configured HTTP methods and viewer protocol policy of the cache.\ndeclare const myBucket: s3.Bucket;\nconst myWebDistribution = new cloudfront.Distribution(this, 'myDist', {\n defaultBehavior: {\n origin: new origins.S3Origin(myBucket),\n allowedMethods: cloudfront.AllowedMethods.ALLOW_ALL,\n viewerProtocolPolicy: cloudfront.ViewerProtocolPolicy.REDIRECT_TO_HTTPS,\n },\n});",
19348 "stability": "stable",
19349 "summary": "How HTTPs should be handled with your distribution."
19350 },
19351 "fqn": "@aws-cdk/aws-cloudfront.ViewerProtocolPolicy",
19352 "kind": "enum",
19353 "locationInModule": {
19354 "filename": "lib/distribution.ts",
19355 "line": 512
19356 },
19357 "members": [
19358 {
19359 "docs": {
19360 "stability": "stable",
19361 "summary": "HTTPS only."
19362 },
19363 "name": "HTTPS_ONLY"
19364 },
19365 {
19366 "docs": {
19367 "stability": "stable",
19368 "summary": "Will redirect HTTP requests to HTTPS."
19369 },
19370 "name": "REDIRECT_TO_HTTPS"
19371 },
19372 {
19373 "docs": {
19374 "stability": "stable",
19375 "summary": "Both HTTP and HTTPS supported."
19376 },
19377 "name": "ALLOW_ALL"
19378 }
19379 ],
19380 "name": "ViewerProtocolPolicy",
19381 "symbolId": "lib/distribution:ViewerProtocolPolicy"
19382 },
19383 "@aws-cdk/aws-cloudfront.experimental.EdgeFunction": {
19384 "assembly": "@aws-cdk/aws-cloudfront",
19385 "base": "@aws-cdk/core.Resource",
19386 "docs": {
19387 "custom": {
19388 "exampleMetadata": "infused",
19389 "resource": "AWS::Lambda::Function"
19390 },
19391 "example": "// A Lambda@Edge function added to default behavior of a Distribution\n// and triggered on every request\nconst myFunc = new cloudfront.experimental.EdgeFunction(this, 'MyFunction', {\n runtime: lambda.Runtime.NODEJS_12_X,\n handler: 'index.handler',\n code: lambda.Code.fromAsset(path.join(__dirname, 'lambda-handler')),\n});\n\ndeclare const myBucket: s3.Bucket;\nnew cloudfront.Distribution(this, 'myDist', {\n defaultBehavior: {\n origin: new origins.S3Origin(myBucket),\n edgeLambdas: [\n {\n functionVersion: myFunc.currentVersion,\n eventType: cloudfront.LambdaEdgeEventType.VIEWER_REQUEST,\n }\n ],\n },\n});",
19392 "remarks": "Convenience resource for requesting a Lambda function in the 'us-east-1' region for use with Lambda@Edge.\nImplements several restrictions enforced by Lambda@Edge.\n\nNote that this construct requires that the 'us-east-1' region has been bootstrapped.\nSee https://docs.aws.amazon.com/cdk/latest/guide/bootstrapping.html or 'cdk bootstrap --help' for options.",
19393 "stability": "stable",
19394 "summary": "A Lambda@Edge function."
19395 },
19396 "fqn": "@aws-cdk/aws-cloudfront.experimental.EdgeFunction",
19397 "initializer": {
19398 "docs": {
19399 "stability": "stable"
19400 },
19401 "locationInModule": {
19402 "filename": "lib/experimental/edge-function.ts",
19403 "line": 54
19404 },
19405 "parameters": [
19406 {
19407 "name": "scope",
19408 "type": {
19409 "fqn": "constructs.Construct"
19410 }
19411 },
19412 {
19413 "name": "id",
19414 "type": {
19415 "primitive": "string"
19416 }
19417 },
19418 {
19419 "name": "props",
19420 "type": {
19421 "fqn": "@aws-cdk/aws-cloudfront.experimental.EdgeFunctionProps"
19422 }
19423 }
19424 ]
19425 },
19426 "interfaces": [
19427 "@aws-cdk/aws-lambda.IVersion"
19428 ],
19429 "kind": "class",
19430 "locationInModule": {
19431 "filename": "lib/experimental/edge-function.ts",
19432 "line": 37
19433 },
19434 "methods": [
19435 {
19436 "docs": {
19437 "stability": "stable",
19438 "summary": "Defines an alias for this version."
19439 },
19440 "locationInModule": {
19441 "filename": "lib/experimental/edge-function.ts",
19442 "line": 88
19443 },
19444 "name": "addAlias",
19445 "overrides": "@aws-cdk/aws-lambda.IVersion",
19446 "parameters": [
19447 {
19448 "name": "aliasName",
19449 "type": {
19450 "primitive": "string"
19451 }
19452 },
19453 {
19454 "name": "options",
19455 "optional": true,
19456 "type": {
19457 "fqn": "@aws-cdk/aws-lambda.AliasOptions"
19458 }
19459 }
19460 ],
19461 "returns": {
19462 "type": {
19463 "fqn": "@aws-cdk/aws-lambda.Alias"
19464 }
19465 }
19466 },
19467 {
19468 "docs": {
19469 "stability": "stable",
19470 "summary": "Adds an event source to this function."
19471 },
19472 "locationInModule": {
19473 "filename": "lib/experimental/edge-function.ts",
19474 "line": 137
19475 },
19476 "name": "addEventSource",
19477 "overrides": "@aws-cdk/aws-lambda.IFunction",
19478 "parameters": [
19479 {
19480 "name": "source",
19481 "type": {
19482 "fqn": "@aws-cdk/aws-lambda.IEventSource"
19483 }
19484 }
19485 ]
19486 },
19487 {
19488 "docs": {
19489 "stability": "stable",
19490 "summary": "Adds an event source that maps to this AWS Lambda function."
19491 },
19492 "locationInModule": {
19493 "filename": "lib/experimental/edge-function.ts",
19494 "line": 106
19495 },
19496 "name": "addEventSourceMapping",
19497 "overrides": "@aws-cdk/aws-lambda.IFunction",
19498 "parameters": [
19499 {
19500 "name": "id",
19501 "type": {
19502 "primitive": "string"
19503 }
19504 },
19505 {
19506 "name": "options",
19507 "type": {
19508 "fqn": "@aws-cdk/aws-lambda.EventSourceMappingOptions"
19509 }
19510 }
19511 ],
19512 "returns": {
19513 "type": {
19514 "fqn": "@aws-cdk/aws-lambda.EventSourceMapping"
19515 }
19516 }
19517 },
19518 {
19519 "docs": {
19520 "stability": "stable",
19521 "summary": "Adds a url to this lambda function."
19522 },
19523 "locationInModule": {
19524 "filename": "lib/experimental/edge-function.ts",
19525 "line": 143
19526 },
19527 "name": "addFunctionUrl",
19528 "overrides": "@aws-cdk/aws-lambda.IFunction",
19529 "parameters": [
19530 {
19531 "name": "options",
19532 "optional": true,
19533 "type": {
19534 "fqn": "@aws-cdk/aws-lambda.FunctionUrlOptions"
19535 }
19536 }
19537 ],
19538 "returns": {
19539 "type": {
19540 "fqn": "@aws-cdk/aws-lambda.FunctionUrl"
19541 }
19542 }
19543 },
19544 {
19545 "docs": {
19546 "stability": "stable",
19547 "summary": "Adds a permission to the Lambda resource policy."
19548 },
19549 "locationInModule": {
19550 "filename": "lib/experimental/edge-function.ts",
19551 "line": 109
19552 },
19553 "name": "addPermission",
19554 "overrides": "@aws-cdk/aws-lambda.IFunction",
19555 "parameters": [
19556 {
19557 "name": "id",
19558 "type": {
19559 "primitive": "string"
19560 }
19561 },
19562 {
19563 "name": "permission",
19564 "type": {
19565 "fqn": "@aws-cdk/aws-lambda.Permission"
19566 }
19567 }
19568 ]
19569 },
19570 {
19571 "docs": {
19572 "stability": "stable",
19573 "summary": "Adds a statement to the IAM role assumed by the instance."
19574 },
19575 "locationInModule": {
19576 "filename": "lib/experimental/edge-function.ts",
19577 "line": 112
19578 },
19579 "name": "addToRolePolicy",
19580 "overrides": "@aws-cdk/aws-lambda.IFunction",
19581 "parameters": [
19582 {
19583 "name": "statement",
19584 "type": {
19585 "fqn": "@aws-cdk/aws-iam.PolicyStatement"
19586 }
19587 }
19588 ]
19589 },
19590 {
19591 "docs": {
19592 "stability": "stable",
19593 "summary": "Configures options for asynchronous invocation."
19594 },
19595 "locationInModule": {
19596 "filename": "lib/experimental/edge-function.ts",
19597 "line": 140
19598 },
19599 "name": "configureAsyncInvoke",
19600 "overrides": "@aws-cdk/aws-lambda.IFunction",
19601 "parameters": [
19602 {
19603 "name": "options",
19604 "type": {
19605 "fqn": "@aws-cdk/aws-lambda.EventInvokeConfigOptions"
19606 }
19607 }
19608 ]
19609 },
19610 {
19611 "docs": {
19612 "stability": "stable",
19613 "summary": "Grant the given identity permissions to invoke this Lambda."
19614 },
19615 "locationInModule": {
19616 "filename": "lib/experimental/edge-function.ts",
19617 "line": 115
19618 },
19619 "name": "grantInvoke",
19620 "overrides": "@aws-cdk/aws-lambda.IFunction",
19621 "parameters": [
19622 {
19623 "name": "identity",
19624 "type": {
19625 "fqn": "@aws-cdk/aws-iam.IGrantable"
19626 }
19627 }
19628 ],
19629 "returns": {
19630 "type": {
19631 "fqn": "@aws-cdk/aws-iam.Grant"
19632 }
19633 }
19634 },
19635 {
19636 "docs": {
19637 "stability": "stable",
19638 "summary": "Grant the given identity permissions to invoke this Lambda Function URL."
19639 },
19640 "locationInModule": {
19641 "filename": "lib/experimental/edge-function.ts",
19642 "line": 118
19643 },
19644 "name": "grantInvokeUrl",
19645 "overrides": "@aws-cdk/aws-lambda.IFunction",
19646 "parameters": [
19647 {
19648 "name": "identity",
19649 "type": {
19650 "fqn": "@aws-cdk/aws-iam.IGrantable"
19651 }
19652 }
19653 ],
19654 "returns": {
19655 "type": {
19656 "fqn": "@aws-cdk/aws-iam.Grant"
19657 }
19658 }
19659 },
19660 {
19661 "docs": {
19662 "stability": "stable",
19663 "summary": "Return the given named metric for this Lambda Return the given named metric for this Function."
19664 },
19665 "locationInModule": {
19666 "filename": "lib/experimental/edge-function.ts",
19667 "line": 121
19668 },
19669 "name": "metric",
19670 "overrides": "@aws-cdk/aws-lambda.IFunction",
19671 "parameters": [
19672 {
19673 "name": "metricName",
19674 "type": {
19675 "primitive": "string"
19676 }
19677 },
19678 {
19679 "name": "props",
19680 "optional": true,
19681 "type": {
19682 "fqn": "@aws-cdk/aws-cloudwatch.MetricOptions"
19683 }
19684 }
19685 ],
19686 "returns": {
19687 "type": {
19688 "fqn": "@aws-cdk/aws-cloudwatch.Metric"
19689 }
19690 }
19691 },
19692 {
19693 "docs": {
19694 "remarks": "Average over 5 minutes",
19695 "stability": "stable",
19696 "summary": "Metric for the Duration of this Lambda How long execution of this Lambda takes."
19697 },
19698 "locationInModule": {
19699 "filename": "lib/experimental/edge-function.ts",
19700 "line": 124
19701 },
19702 "name": "metricDuration",
19703 "overrides": "@aws-cdk/aws-lambda.IFunction",
19704 "parameters": [
19705 {
19706 "name": "props",
19707 "optional": true,
19708 "type": {
19709 "fqn": "@aws-cdk/aws-cloudwatch.MetricOptions"
19710 }
19711 }
19712 ],
19713 "returns": {
19714 "type": {
19715 "fqn": "@aws-cdk/aws-cloudwatch.Metric"
19716 }
19717 }
19718 },
19719 {
19720 "docs": {
19721 "remarks": "Sum over 5 minutes",
19722 "stability": "stable",
19723 "summary": "How many invocations of this Lambda fail."
19724 },
19725 "locationInModule": {
19726 "filename": "lib/experimental/edge-function.ts",
19727 "line": 127
19728 },
19729 "name": "metricErrors",
19730 "overrides": "@aws-cdk/aws-lambda.IFunction",
19731 "parameters": [
19732 {
19733 "name": "props",
19734 "optional": true,
19735 "type": {
19736 "fqn": "@aws-cdk/aws-cloudwatch.MetricOptions"
19737 }
19738 }
19739 ],
19740 "returns": {
19741 "type": {
19742 "fqn": "@aws-cdk/aws-cloudwatch.Metric"
19743 }
19744 }
19745 },
19746 {
19747 "docs": {
19748 "remarks": "Sum over 5 minutes",
19749 "stability": "stable",
19750 "summary": "Metric for the number of invocations of this Lambda How often this Lambda is invoked."
19751 },
19752 "locationInModule": {
19753 "filename": "lib/experimental/edge-function.ts",
19754 "line": 130
19755 },
19756 "name": "metricInvocations",
19757 "overrides": "@aws-cdk/aws-lambda.IFunction",
19758 "parameters": [
19759 {
19760 "name": "props",
19761 "optional": true,
19762 "type": {
19763 "fqn": "@aws-cdk/aws-cloudwatch.MetricOptions"
19764 }
19765 }
19766 ],
19767 "returns": {
19768 "type": {
19769 "fqn": "@aws-cdk/aws-cloudwatch.Metric"
19770 }
19771 }
19772 },
19773 {
19774 "docs": {
19775 "remarks": "Sum over 5 minutes",
19776 "stability": "stable",
19777 "summary": "Metric for the number of throttled invocations of this Lambda How often this Lambda is throttled."
19778 },
19779 "locationInModule": {
19780 "filename": "lib/experimental/edge-function.ts",
19781 "line": 133
19782 },
19783 "name": "metricThrottles",
19784 "overrides": "@aws-cdk/aws-lambda.IFunction",
19785 "parameters": [
19786 {
19787 "name": "props",
19788 "optional": true,
19789 "type": {
19790 "fqn": "@aws-cdk/aws-cloudwatch.MetricOptions"
19791 }
19792 }
19793 ],
19794 "returns": {
19795 "type": {
19796 "fqn": "@aws-cdk/aws-cloudwatch.Metric"
19797 }
19798 }
19799 }
19800 ],
19801 "name": "EdgeFunction",
19802 "namespace": "experimental",
19803 "properties": [
19804 {
19805 "docs": {
19806 "stability": "stable",
19807 "summary": "The system architectures compatible with this lambda function."
19808 },
19809 "immutable": true,
19810 "locationInModule": {
19811 "filename": "lib/experimental/edge-function.ts",
19812 "line": 49
19813 },
19814 "name": "architecture",
19815 "overrides": "@aws-cdk/aws-lambda.IFunction",
19816 "type": {
19817 "fqn": "@aws-cdk/aws-lambda.Architecture"
19818 }
19819 },
19820 {
19821 "docs": {
19822 "remarks": "Connections are only applicable to VPC-enabled functions.",
19823 "stability": "stable",
19824 "summary": "Not supported."
19825 },
19826 "immutable": true,
19827 "locationInModule": {
19828 "filename": "lib/experimental/edge-function.ts",
19829 "line": 99
19830 },
19831 "name": "connections",
19832 "overrides": "@aws-cdk/aws-ec2.IConnectable",
19833 "type": {
19834 "fqn": "@aws-cdk/aws-ec2.Connections"
19835 }
19836 },
19837 {
19838 "docs": {
19839 "stability": "stable",
19840 "summary": "Convenience method to make `EdgeFunction` conform to the same interface as `Function`."
19841 },
19842 "immutable": true,
19843 "locationInModule": {
19844 "filename": "lib/experimental/edge-function.ts",
19845 "line": 84
19846 },
19847 "name": "currentVersion",
19848 "type": {
19849 "fqn": "@aws-cdk/aws-lambda.IVersion"
19850 }
19851 },
19852 {
19853 "docs": {
19854 "stability": "stable",
19855 "summary": "The ARN of the version for Lambda@Edge."
19856 },
19857 "immutable": true,
19858 "locationInModule": {
19859 "filename": "lib/experimental/edge-function.ts",
19860 "line": 41
19861 },
19862 "name": "edgeArn",
19863 "overrides": "@aws-cdk/aws-lambda.IVersion",
19864 "type": {
19865 "primitive": "string"
19866 }
19867 },
19868 {
19869 "docs": {
19870 "stability": "stable",
19871 "summary": "The ARN of the function."
19872 },
19873 "immutable": true,
19874 "locationInModule": {
19875 "filename": "lib/experimental/edge-function.ts",
19876 "line": 43
19877 },
19878 "name": "functionArn",
19879 "overrides": "@aws-cdk/aws-lambda.IFunction",
19880 "type": {
19881 "primitive": "string"
19882 }
19883 },
19884 {
19885 "docs": {
19886 "stability": "stable",
19887 "summary": "The name of the function."
19888 },
19889 "immutable": true,
19890 "locationInModule": {
19891 "filename": "lib/experimental/edge-function.ts",
19892 "line": 42
19893 },
19894 "name": "functionName",
19895 "overrides": "@aws-cdk/aws-lambda.IFunction",
19896 "type": {
19897 "primitive": "string"
19898 }
19899 },
19900 {
19901 "docs": {
19902 "stability": "stable",
19903 "summary": "The principal to grant permissions to."
19904 },
19905 "immutable": true,
19906 "locationInModule": {
19907 "filename": "lib/experimental/edge-function.ts",
19908 "line": 44
19909 },
19910 "name": "grantPrincipal",
19911 "overrides": "@aws-cdk/aws-iam.IGrantable",
19912 "type": {
19913 "fqn": "@aws-cdk/aws-iam.IPrincipal"
19914 }
19915 },
19916 {
19917 "docs": {
19918 "remarks": "If this is is `false`, trying to access the `connections` object will fail.",
19919 "stability": "stable",
19920 "summary": "Whether or not this Lambda function was bound to a VPC."
19921 },
19922 "immutable": true,
19923 "locationInModule": {
19924 "filename": "lib/experimental/edge-function.ts",
19925 "line": 45
19926 },
19927 "name": "isBoundToVpc",
19928 "overrides": "@aws-cdk/aws-lambda.IFunction",
19929 "type": {
19930 "primitive": "boolean"
19931 }
19932 },
19933 {
19934 "docs": {
19935 "stability": "stable",
19936 "summary": "The underlying AWS Lambda function."
19937 },
19938 "immutable": true,
19939 "locationInModule": {
19940 "filename": "lib/experimental/edge-function.ts",
19941 "line": 77
19942 },
19943 "name": "lambda",
19944 "overrides": "@aws-cdk/aws-lambda.IVersion",
19945 "type": {
19946 "fqn": "@aws-cdk/aws-lambda.IFunction"
19947 }
19948 },
19949 {
19950 "docs": {
19951 "remarks": "Note that this is reference to a non-specific AWS Lambda version, which\nmeans the function this version refers to can return different results in\ndifferent invocations.\n\nTo obtain a reference to an explicit version which references the current\nfunction configuration, use `lambdaFunction.currentVersion` instead.",
19952 "stability": "stable",
19953 "summary": "The `$LATEST` version of this function."
19954 },
19955 "immutable": true,
19956 "locationInModule": {
19957 "filename": "lib/experimental/edge-function.ts",
19958 "line": 102
19959 },
19960 "name": "latestVersion",
19961 "overrides": "@aws-cdk/aws-lambda.IFunction",
19962 "type": {
19963 "fqn": "@aws-cdk/aws-lambda.IVersion"
19964 }
19965 },
19966 {
19967 "docs": {
19968 "stability": "stable",
19969 "summary": "The construct node where permissions are attached."
19970 },
19971 "immutable": true,
19972 "locationInModule": {
19973 "filename": "lib/experimental/edge-function.ts",
19974 "line": 46
19975 },
19976 "name": "permissionsNode",
19977 "overrides": "@aws-cdk/aws-lambda.IFunction",
19978 "type": {
19979 "fqn": "@aws-cdk/core.ConstructNode"
19980 }
19981 },
19982 {
19983 "docs": {
19984 "remarks": "This property is for cdk modules to consume only. You should not need to use this property.\nInstead, use grantInvoke() directly.",
19985 "stability": "stable",
19986 "summary": "The ARN(s) to put into the resource field of the generated IAM policy for grantInvoke()."
19987 },
19988 "immutable": true,
19989 "locationInModule": {
19990 "filename": "lib/experimental/edge-function.ts",
19991 "line": 50
19992 },
19993 "name": "resourceArnsForGrantInvoke",
19994 "overrides": "@aws-cdk/aws-lambda.IFunction",
19995 "type": {
19996 "collection": {
19997 "elementtype": {
19998 "primitive": "string"
19999 },
20000 "kind": "array"
20001 }
20002 }
20003 },
20004 {
20005 "docs": {
20006 "stability": "stable",
20007 "summary": "The most recently deployed version of this function."
20008 },
20009 "immutable": true,
20010 "locationInModule": {
20011 "filename": "lib/experimental/edge-function.ts",
20012 "line": 48
20013 },
20014 "name": "version",
20015 "overrides": "@aws-cdk/aws-lambda.IVersion",
20016 "type": {
20017 "primitive": "string"
20018 }
20019 },
20020 {
20021 "docs": {
20022 "stability": "stable",
20023 "summary": "The IAM role associated with this function."
20024 },
20025 "immutable": true,
20026 "locationInModule": {
20027 "filename": "lib/experimental/edge-function.ts",
20028 "line": 47
20029 },
20030 "name": "role",
20031 "optional": true,
20032 "overrides": "@aws-cdk/aws-lambda.IFunction",
20033 "type": {
20034 "fqn": "@aws-cdk/aws-iam.IRole"
20035 }
20036 }
20037 ],
20038 "symbolId": "lib/experimental/edge-function:EdgeFunction"
20039 },
20040 "@aws-cdk/aws-cloudfront.experimental.EdgeFunctionProps": {
20041 "assembly": "@aws-cdk/aws-cloudfront",
20042 "datatype": true,
20043 "docs": {
20044 "custom": {
20045 "exampleMetadata": "infused"
20046 },
20047 "example": "// A Lambda@Edge function added to default behavior of a Distribution\n// and triggered on every request\nconst myFunc = new cloudfront.experimental.EdgeFunction(this, 'MyFunction', {\n runtime: lambda.Runtime.NODEJS_12_X,\n handler: 'index.handler',\n code: lambda.Code.fromAsset(path.join(__dirname, 'lambda-handler')),\n});\n\ndeclare const myBucket: s3.Bucket;\nnew cloudfront.Distribution(this, 'myDist', {\n defaultBehavior: {\n origin: new origins.S3Origin(myBucket),\n edgeLambdas: [\n {\n functionVersion: myFunc.currentVersion,\n eventType: cloudfront.LambdaEdgeEventType.VIEWER_REQUEST,\n }\n ],\n },\n});",
20048 "stability": "stable",
20049 "summary": "Properties for creating a Lambda@Edge function."
20050 },
20051 "fqn": "@aws-cdk/aws-cloudfront.experimental.EdgeFunctionProps",
20052 "interfaces": [
20053 "@aws-cdk/aws-lambda.FunctionProps"
20054 ],
20055 "kind": "interface",
20056 "locationInModule": {
20057 "filename": "lib/experimental/edge-function.ts",
20058 "line": 17
20059 },
20060 "name": "EdgeFunctionProps",
20061 "namespace": "experimental",
20062 "properties": [
20063 {
20064 "abstract": true,
20065 "docs": {
20066 "default": "- `edge-lambda-stack-${region}`",
20067 "stability": "stable",
20068 "summary": "The stack ID of Lambda@Edge function."
20069 },
20070 "immutable": true,
20071 "locationInModule": {
20072 "filename": "lib/experimental/edge-function.ts",
20073 "line": 23
20074 },
20075 "name": "stackId",
20076 "optional": true,
20077 "type": {
20078 "primitive": "string"
20079 }
20080 }
20081 ],
20082 "symbolId": "lib/experimental/edge-function:EdgeFunctionProps"
20083 }
20084 },
20085 "version": "1.157.0",
20086 "fingerprint": "**********"
20087}