@btc-embedded/cdk-extensions 0.5.2 → 0.5.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/.jsii +201 -11
  2. package/API.md +217 -6
  3. package/CHANGELOG.md +19 -0
  4. package/lib/constructs/SecureRestApi.d.ts +26 -0
  5. package/lib/constructs/SecureRestApi.js +57 -0
  6. package/lib/constructs/index.d.ts +1 -0
  7. package/lib/constructs/index.js +18 -0
  8. package/lib/extensions/ApiGatewayExtension.js +1 -1
  9. package/lib/extensions/ApplicationLoadBalancerExtension.js +1 -1
  10. package/lib/extensions/CloudMapExtension.js +1 -1
  11. package/lib/extensions/DocumentDbAccessExtension.js +1 -1
  12. package/lib/extensions/DomainEventMessagingExtension.js +1 -1
  13. package/lib/extensions/ExecExtension.d.ts +9 -0
  14. package/lib/extensions/ExecExtension.js +49 -0
  15. package/lib/extensions/ExtraContainerExtension.js +1 -1
  16. package/lib/extensions/LogExtension.js +1 -1
  17. package/lib/extensions/PostgresDbAccessExtension.js +1 -1
  18. package/lib/extensions/SharedVolumeExtension.js +1 -1
  19. package/lib/extensions/TcpKeepAliveExtension.js +1 -1
  20. package/lib/index.d.ts +1 -0
  21. package/lib/index.js +2 -1
  22. package/lib/platform/ApiGateway.js +1 -1
  23. package/lib/platform/ApplicationLoadBalancer.js +1 -1
  24. package/lib/platform/DefaultUserPoolClients.js +1 -1
  25. package/lib/platform/DocumentDB.js +1 -1
  26. package/lib/platform/PrivateDnsNamespace.js +1 -1
  27. package/lib/platform/Vpc.d.ts +13 -2
  28. package/lib/platform/Vpc.js +30 -3
  29. package/package.json +2 -1
  30. package/lib/extensions/ImportValue.d.ts +0 -2
  31. package/lib/extensions/ImportValue.js +0 -12
  32. package/lib/extensions/S3BucketAccessExtension.d.ts +0 -13
  33. package/lib/extensions/S3BucketAccessExtension.js +0 -32
  34. package/lib/platform/AuthenticationStack.d.ts +0 -19
  35. package/lib/platform/AuthenticationStack.js +0 -92
  36. package/lib/platform/CloudMap.d.ts +0 -16
  37. package/lib/platform/CloudMap.js +0 -48
  38. package/lib/platform/MessageQueue.d.ts +0 -23
  39. package/lib/platform/MessageQueue.js +0 -166
package/.jsii CHANGED
@@ -6487,6 +6487,170 @@
6487
6487
  ],
6488
6488
  "symbolId": "src/platform/PrivateDnsNamespace:PrivateDnsNamespaceProps"
6489
6489
  },
6490
+ "@btc-embedded/cdk-extensions.SecureRestApi": {
6491
+ "assembly": "@btc-embedded/cdk-extensions",
6492
+ "base": "constructs.Construct",
6493
+ "docs": {
6494
+ "stability": "experimental"
6495
+ },
6496
+ "fqn": "@btc-embedded/cdk-extensions.SecureRestApi",
6497
+ "initializer": {
6498
+ "docs": {
6499
+ "stability": "experimental"
6500
+ },
6501
+ "locationInModule": {
6502
+ "filename": "src/constructs/SecureRestApi.ts",
6503
+ "line": 37
6504
+ },
6505
+ "parameters": [
6506
+ {
6507
+ "name": "scope",
6508
+ "type": {
6509
+ "fqn": "constructs.Construct"
6510
+ }
6511
+ },
6512
+ {
6513
+ "name": "id",
6514
+ "type": {
6515
+ "primitive": "string"
6516
+ }
6517
+ },
6518
+ {
6519
+ "name": "props",
6520
+ "type": {
6521
+ "fqn": "@btc-embedded/cdk-extensions.SecureRestApiProps"
6522
+ }
6523
+ }
6524
+ ]
6525
+ },
6526
+ "kind": "class",
6527
+ "locationInModule": {
6528
+ "filename": "src/constructs/SecureRestApi.ts",
6529
+ "line": 32
6530
+ },
6531
+ "methods": [
6532
+ {
6533
+ "docs": {
6534
+ "stability": "experimental"
6535
+ },
6536
+ "locationInModule": {
6537
+ "filename": "src/constructs/SecureRestApi.ts",
6538
+ "line": 80
6539
+ },
6540
+ "name": "withSecureRestApiProps",
6541
+ "parameters": [
6542
+ {
6543
+ "name": "props",
6544
+ "type": {
6545
+ "fqn": "aws-cdk-lib.aws_apigateway.RestApiProps"
6546
+ }
6547
+ }
6548
+ ],
6549
+ "returns": {
6550
+ "type": {
6551
+ "fqn": "aws-cdk-lib.aws_apigateway.RestApiProps"
6552
+ }
6553
+ }
6554
+ }
6555
+ ],
6556
+ "name": "SecureRestApi",
6557
+ "properties": [
6558
+ {
6559
+ "docs": {
6560
+ "stability": "experimental"
6561
+ },
6562
+ "locationInModule": {
6563
+ "filename": "src/constructs/SecureRestApi.ts",
6564
+ "line": 34
6565
+ },
6566
+ "name": "defaultAuthorizer",
6567
+ "type": {
6568
+ "fqn": "aws-cdk-lib.aws_apigateway.CognitoUserPoolsAuthorizer"
6569
+ }
6570
+ },
6571
+ {
6572
+ "docs": {
6573
+ "stability": "experimental"
6574
+ },
6575
+ "locationInModule": {
6576
+ "filename": "src/constructs/SecureRestApi.ts",
6577
+ "line": 33
6578
+ },
6579
+ "name": "restApiDomainName",
6580
+ "type": {
6581
+ "fqn": "aws-cdk-lib.aws_apigateway.DomainName"
6582
+ }
6583
+ }
6584
+ ],
6585
+ "symbolId": "src/constructs/SecureRestApi:SecureRestApi"
6586
+ },
6587
+ "@btc-embedded/cdk-extensions.SecureRestApiProps": {
6588
+ "assembly": "@btc-embedded/cdk-extensions",
6589
+ "datatype": true,
6590
+ "docs": {
6591
+ "stability": "experimental"
6592
+ },
6593
+ "fqn": "@btc-embedded/cdk-extensions.SecureRestApiProps",
6594
+ "kind": "interface",
6595
+ "locationInModule": {
6596
+ "filename": "src/constructs/SecureRestApi.ts",
6597
+ "line": 15
6598
+ },
6599
+ "name": "SecureRestApiProps",
6600
+ "properties": [
6601
+ {
6602
+ "abstract": true,
6603
+ "docs": {
6604
+ "stability": "experimental",
6605
+ "summary": "Subdomain that is used for REST API props."
6606
+ },
6607
+ "immutable": true,
6608
+ "locationInModule": {
6609
+ "filename": "src/constructs/SecureRestApi.ts",
6610
+ "line": 23
6611
+ },
6612
+ "name": "apiSubDomain",
6613
+ "type": {
6614
+ "primitive": "string"
6615
+ }
6616
+ },
6617
+ {
6618
+ "abstract": true,
6619
+ "docs": {
6620
+ "stability": "experimental",
6621
+ "summary": "The name of the Base platform Stack."
6622
+ },
6623
+ "immutable": true,
6624
+ "locationInModule": {
6625
+ "filename": "src/constructs/SecureRestApi.ts",
6626
+ "line": 19
6627
+ },
6628
+ "name": "basePlatformStackName",
6629
+ "type": {
6630
+ "primitive": "string"
6631
+ }
6632
+ },
6633
+ {
6634
+ "abstract": true,
6635
+ "docs": {
6636
+ "default": "- fqdn output of base platform stack is used to import the hosted zone",
6637
+ "stability": "experimental",
6638
+ "summary": "hosted zone for the subdomain An optional parameter."
6639
+ },
6640
+ "immutable": true,
6641
+ "locationInModule": {
6642
+ "filename": "src/constructs/SecureRestApi.ts",
6643
+ "line": 29
6644
+ },
6645
+ "name": "hostedZone",
6646
+ "optional": true,
6647
+ "type": {
6648
+ "fqn": "aws-cdk-lib.aws_route53.IHostedZone"
6649
+ }
6650
+ }
6651
+ ],
6652
+ "symbolId": "src/constructs/SecureRestApi:SecureRestApiProps"
6653
+ },
6490
6654
  "@btc-embedded/cdk-extensions.SharedVolumeExtension": {
6491
6655
  "assembly": "@btc-embedded/cdk-extensions",
6492
6656
  "base": "@aws-cdk-containers/ecs-service-extensions.ServiceExtension",
@@ -6816,22 +6980,32 @@
6816
6980
  },
6817
6981
  "locationInModule": {
6818
6982
  "filename": "src/platform/Vpc.ts",
6819
- "line": 16
6983
+ "line": 27
6820
6984
  },
6821
6985
  "parameters": [
6822
6986
  {
6987
+ "docs": {
6988
+ "summary": "The parent construct this is part of."
6989
+ },
6823
6990
  "name": "scope",
6824
6991
  "type": {
6825
6992
  "fqn": "constructs.Construct"
6826
6993
  }
6827
6994
  },
6828
6995
  {
6996
+ "docs": {
6997
+ "summary": "Id of this construct for Cloudformation."
6998
+ },
6829
6999
  "name": "id",
6830
7000
  "type": {
6831
7001
  "primitive": "string"
6832
7002
  }
6833
7003
  },
6834
7004
  {
7005
+ "docs": {
7006
+ "remarks": "Defaults to an empty object creating a\ndedicated VPC, with max 2 AZS and NO Key for Exec",
7007
+ "summary": "Properties allowing to set a predefined VPCName, IPAdressBlog, maxNumber of AZs and decision wether to create a KMSKey for usage with the Exec extension."
7008
+ },
6835
7009
  "name": "props",
6836
7010
  "type": {
6837
7011
  "fqn": "@btc-embedded/cdk-extensions.VpcProps"
@@ -6842,7 +7016,7 @@
6842
7016
  "kind": "class",
6843
7017
  "locationInModule": {
6844
7018
  "filename": "src/platform/Vpc.ts",
6845
- "line": 12
7019
+ "line": 14
6846
7020
  },
6847
7021
  "name": "Vpc",
6848
7022
  "properties": [
@@ -6852,11 +7026,11 @@
6852
7026
  },
6853
7027
  "locationInModule": {
6854
7028
  "filename": "src/platform/Vpc.ts",
6855
- "line": 14
7029
+ "line": 16
6856
7030
  },
6857
7031
  "name": "cluster",
6858
7032
  "type": {
6859
- "fqn": "aws-cdk-lib.aws_ecs.ICluster"
7033
+ "fqn": "aws-cdk-lib.aws_ecs.Cluster"
6860
7034
  }
6861
7035
  },
6862
7036
  {
@@ -6865,7 +7039,7 @@
6865
7039
  },
6866
7040
  "locationInModule": {
6867
7041
  "filename": "src/platform/Vpc.ts",
6868
- "line": 13
7042
+ "line": 15
6869
7043
  },
6870
7044
  "name": "vpcInstance",
6871
7045
  "type": {
@@ -6885,7 +7059,7 @@
6885
7059
  "kind": "interface",
6886
7060
  "locationInModule": {
6887
7061
  "filename": "src/platform/Vpc.ts",
6888
- "line": 6
7062
+ "line": 7
6889
7063
  },
6890
7064
  "name": "VpcProps",
6891
7065
  "properties": [
@@ -6897,7 +7071,23 @@
6897
7071
  "immutable": true,
6898
7072
  "locationInModule": {
6899
7073
  "filename": "src/platform/Vpc.ts",
6900
- "line": 7
7074
+ "line": 11
7075
+ },
7076
+ "name": "createKmsExecCommandKey",
7077
+ "optional": true,
7078
+ "type": {
7079
+ "primitive": "boolean"
7080
+ }
7081
+ },
7082
+ {
7083
+ "abstract": true,
7084
+ "docs": {
7085
+ "stability": "experimental"
7086
+ },
7087
+ "immutable": true,
7088
+ "locationInModule": {
7089
+ "filename": "src/platform/Vpc.ts",
7090
+ "line": 8
6901
7091
  },
6902
7092
  "name": "definedVpcName",
6903
7093
  "optional": true,
@@ -6913,7 +7103,7 @@
6913
7103
  "immutable": true,
6914
7104
  "locationInModule": {
6915
7105
  "filename": "src/platform/Vpc.ts",
6916
- "line": 9
7106
+ "line": 10
6917
7107
  },
6918
7108
  "name": "maxAzs",
6919
7109
  "optional": true,
@@ -6929,7 +7119,7 @@
6929
7119
  "immutable": true,
6930
7120
  "locationInModule": {
6931
7121
  "filename": "src/platform/Vpc.ts",
6932
- "line": 8
7122
+ "line": 9
6933
7123
  },
6934
7124
  "name": "vpcCidr",
6935
7125
  "optional": true,
@@ -6941,6 +7131,6 @@
6941
7131
  "symbolId": "src/platform/Vpc:VpcProps"
6942
7132
  }
6943
7133
  },
6944
- "version": "0.5.2",
6945
- "fingerprint": "KqlcqEXmvsXZb4Iu39aiOgwEREaKNnb4C6gJIDTFzCo="
7134
+ "version": "0.5.4",
7135
+ "fingerprint": "eZb67MAU9qfdjB9lZtSei4Rxo3LtQB9njnE/StJcU1g="
6946
7136
  }
package/API.md CHANGED
@@ -565,6 +565,140 @@ public readonly namespace: IPrivateDnsNamespace;
565
565
  ---
566
566
 
567
567
 
568
+ ### SecureRestApi <a name="SecureRestApi" id="@btc-embedded/cdk-extensions.SecureRestApi"></a>
569
+
570
+ #### Initializers <a name="Initializers" id="@btc-embedded/cdk-extensions.SecureRestApi.Initializer"></a>
571
+
572
+ ```typescript
573
+ import { SecureRestApi } from '@btc-embedded/cdk-extensions'
574
+
575
+ new SecureRestApi(scope: Construct, id: string, props: SecureRestApiProps)
576
+ ```
577
+
578
+ | **Name** | **Type** | **Description** |
579
+ | --- | --- | --- |
580
+ | <code><a href="#@btc-embedded/cdk-extensions.SecureRestApi.Initializer.parameter.scope">scope</a></code> | <code>constructs.Construct</code> | *No description.* |
581
+ | <code><a href="#@btc-embedded/cdk-extensions.SecureRestApi.Initializer.parameter.id">id</a></code> | <code>string</code> | *No description.* |
582
+ | <code><a href="#@btc-embedded/cdk-extensions.SecureRestApi.Initializer.parameter.props">props</a></code> | <code><a href="#@btc-embedded/cdk-extensions.SecureRestApiProps">SecureRestApiProps</a></code> | *No description.* |
583
+
584
+ ---
585
+
586
+ ##### `scope`<sup>Required</sup> <a name="scope" id="@btc-embedded/cdk-extensions.SecureRestApi.Initializer.parameter.scope"></a>
587
+
588
+ - *Type:* constructs.Construct
589
+
590
+ ---
591
+
592
+ ##### `id`<sup>Required</sup> <a name="id" id="@btc-embedded/cdk-extensions.SecureRestApi.Initializer.parameter.id"></a>
593
+
594
+ - *Type:* string
595
+
596
+ ---
597
+
598
+ ##### `props`<sup>Required</sup> <a name="props" id="@btc-embedded/cdk-extensions.SecureRestApi.Initializer.parameter.props"></a>
599
+
600
+ - *Type:* <a href="#@btc-embedded/cdk-extensions.SecureRestApiProps">SecureRestApiProps</a>
601
+
602
+ ---
603
+
604
+ #### Methods <a name="Methods" id="Methods"></a>
605
+
606
+ | **Name** | **Description** |
607
+ | --- | --- |
608
+ | <code><a href="#@btc-embedded/cdk-extensions.SecureRestApi.toString">toString</a></code> | Returns a string representation of this construct. |
609
+ | <code><a href="#@btc-embedded/cdk-extensions.SecureRestApi.withSecureRestApiProps">withSecureRestApiProps</a></code> | *No description.* |
610
+
611
+ ---
612
+
613
+ ##### `toString` <a name="toString" id="@btc-embedded/cdk-extensions.SecureRestApi.toString"></a>
614
+
615
+ ```typescript
616
+ public toString(): string
617
+ ```
618
+
619
+ Returns a string representation of this construct.
620
+
621
+ ##### `withSecureRestApiProps` <a name="withSecureRestApiProps" id="@btc-embedded/cdk-extensions.SecureRestApi.withSecureRestApiProps"></a>
622
+
623
+ ```typescript
624
+ public withSecureRestApiProps(props: RestApiProps): RestApiProps
625
+ ```
626
+
627
+ ###### `props`<sup>Required</sup> <a name="props" id="@btc-embedded/cdk-extensions.SecureRestApi.withSecureRestApiProps.parameter.props"></a>
628
+
629
+ - *Type:* aws-cdk-lib.aws_apigateway.RestApiProps
630
+
631
+ ---
632
+
633
+ #### Static Functions <a name="Static Functions" id="Static Functions"></a>
634
+
635
+ | **Name** | **Description** |
636
+ | --- | --- |
637
+ | <code><a href="#@btc-embedded/cdk-extensions.SecureRestApi.isConstruct">isConstruct</a></code> | Checks if `x` is a construct. |
638
+
639
+ ---
640
+
641
+ ##### ~~`isConstruct`~~ <a name="isConstruct" id="@btc-embedded/cdk-extensions.SecureRestApi.isConstruct"></a>
642
+
643
+ ```typescript
644
+ import { SecureRestApi } from '@btc-embedded/cdk-extensions'
645
+
646
+ SecureRestApi.isConstruct(x: any)
647
+ ```
648
+
649
+ Checks if `x` is a construct.
650
+
651
+ ###### `x`<sup>Required</sup> <a name="x" id="@btc-embedded/cdk-extensions.SecureRestApi.isConstruct.parameter.x"></a>
652
+
653
+ - *Type:* any
654
+
655
+ Any object.
656
+
657
+ ---
658
+
659
+ #### Properties <a name="Properties" id="Properties"></a>
660
+
661
+ | **Name** | **Type** | **Description** |
662
+ | --- | --- | --- |
663
+ | <code><a href="#@btc-embedded/cdk-extensions.SecureRestApi.property.node">node</a></code> | <code>constructs.Node</code> | The tree node. |
664
+ | <code><a href="#@btc-embedded/cdk-extensions.SecureRestApi.property.defaultAuthorizer">defaultAuthorizer</a></code> | <code>aws-cdk-lib.aws_apigateway.CognitoUserPoolsAuthorizer</code> | *No description.* |
665
+ | <code><a href="#@btc-embedded/cdk-extensions.SecureRestApi.property.restApiDomainName">restApiDomainName</a></code> | <code>aws-cdk-lib.aws_apigateway.DomainName</code> | *No description.* |
666
+
667
+ ---
668
+
669
+ ##### `node`<sup>Required</sup> <a name="node" id="@btc-embedded/cdk-extensions.SecureRestApi.property.node"></a>
670
+
671
+ ```typescript
672
+ public readonly node: Node;
673
+ ```
674
+
675
+ - *Type:* constructs.Node
676
+
677
+ The tree node.
678
+
679
+ ---
680
+
681
+ ##### `defaultAuthorizer`<sup>Required</sup> <a name="defaultAuthorizer" id="@btc-embedded/cdk-extensions.SecureRestApi.property.defaultAuthorizer"></a>
682
+
683
+ ```typescript
684
+ public readonly defaultAuthorizer: CognitoUserPoolsAuthorizer;
685
+ ```
686
+
687
+ - *Type:* aws-cdk-lib.aws_apigateway.CognitoUserPoolsAuthorizer
688
+
689
+ ---
690
+
691
+ ##### `restApiDomainName`<sup>Required</sup> <a name="restApiDomainName" id="@btc-embedded/cdk-extensions.SecureRestApi.property.restApiDomainName"></a>
692
+
693
+ ```typescript
694
+ public readonly restApiDomainName: DomainName;
695
+ ```
696
+
697
+ - *Type:* aws-cdk-lib.aws_apigateway.DomainName
698
+
699
+ ---
700
+
701
+
568
702
  ### Vpc <a name="Vpc" id="@btc-embedded/cdk-extensions.Vpc"></a>
569
703
 
570
704
  #### Initializers <a name="Initializers" id="@btc-embedded/cdk-extensions.Vpc.Initializer"></a>
@@ -577,9 +711,9 @@ new Vpc(scope: Construct, id: string, props: VpcProps)
577
711
 
578
712
  | **Name** | **Type** | **Description** |
579
713
  | --- | --- | --- |
580
- | <code><a href="#@btc-embedded/cdk-extensions.Vpc.Initializer.parameter.scope">scope</a></code> | <code>constructs.Construct</code> | *No description.* |
581
- | <code><a href="#@btc-embedded/cdk-extensions.Vpc.Initializer.parameter.id">id</a></code> | <code>string</code> | *No description.* |
582
- | <code><a href="#@btc-embedded/cdk-extensions.Vpc.Initializer.parameter.props">props</a></code> | <code><a href="#@btc-embedded/cdk-extensions.VpcProps">VpcProps</a></code> | *No description.* |
714
+ | <code><a href="#@btc-embedded/cdk-extensions.Vpc.Initializer.parameter.scope">scope</a></code> | <code>constructs.Construct</code> | The parent construct this is part of. |
715
+ | <code><a href="#@btc-embedded/cdk-extensions.Vpc.Initializer.parameter.id">id</a></code> | <code>string</code> | Id of this construct for Cloudformation. |
716
+ | <code><a href="#@btc-embedded/cdk-extensions.Vpc.Initializer.parameter.props">props</a></code> | <code><a href="#@btc-embedded/cdk-extensions.VpcProps">VpcProps</a></code> | Properties allowing to set a predefined VPCName, IPAdressBlog, maxNumber of AZs and decision wether to create a KMSKey for usage with the Exec extension. |
583
717
 
584
718
  ---
585
719
 
@@ -587,18 +721,27 @@ new Vpc(scope: Construct, id: string, props: VpcProps)
587
721
 
588
722
  - *Type:* constructs.Construct
589
723
 
724
+ The parent construct this is part of.
725
+
590
726
  ---
591
727
 
592
728
  ##### `id`<sup>Required</sup> <a name="id" id="@btc-embedded/cdk-extensions.Vpc.Initializer.parameter.id"></a>
593
729
 
594
730
  - *Type:* string
595
731
 
732
+ Id of this construct for Cloudformation.
733
+
596
734
  ---
597
735
 
598
736
  ##### `props`<sup>Required</sup> <a name="props" id="@btc-embedded/cdk-extensions.Vpc.Initializer.parameter.props"></a>
599
737
 
600
738
  - *Type:* <a href="#@btc-embedded/cdk-extensions.VpcProps">VpcProps</a>
601
739
 
740
+ Properties allowing to set a predefined VPCName, IPAdressBlog, maxNumber of AZs and decision wether to create a KMSKey for usage with the Exec extension.
741
+
742
+ Defaults to an empty object creating a
743
+ dedicated VPC, with max 2 AZS and NO Key for Exec
744
+
602
745
  ---
603
746
 
604
747
  #### Methods <a name="Methods" id="Methods"></a>
@@ -648,7 +791,7 @@ Any object.
648
791
  | **Name** | **Type** | **Description** |
649
792
  | --- | --- | --- |
650
793
  | <code><a href="#@btc-embedded/cdk-extensions.Vpc.property.node">node</a></code> | <code>constructs.Node</code> | The tree node. |
651
- | <code><a href="#@btc-embedded/cdk-extensions.Vpc.property.cluster">cluster</a></code> | <code>aws-cdk-lib.aws_ecs.ICluster</code> | *No description.* |
794
+ | <code><a href="#@btc-embedded/cdk-extensions.Vpc.property.cluster">cluster</a></code> | <code>aws-cdk-lib.aws_ecs.Cluster</code> | *No description.* |
652
795
  | <code><a href="#@btc-embedded/cdk-extensions.Vpc.property.vpcInstance">vpcInstance</a></code> | <code>aws-cdk-lib.aws_ec2.IVpc</code> | *No description.* |
653
796
 
654
797
  ---
@@ -668,10 +811,10 @@ The tree node.
668
811
  ##### `cluster`<sup>Required</sup> <a name="cluster" id="@btc-embedded/cdk-extensions.Vpc.property.cluster"></a>
669
812
 
670
813
  ```typescript
671
- public readonly cluster: ICluster;
814
+ public readonly cluster: Cluster;
672
815
  ```
673
816
 
674
- - *Type:* aws-cdk-lib.aws_ecs.ICluster
817
+ - *Type:* aws-cdk-lib.aws_ecs.Cluster
675
818
 
676
819
  ---
677
820
 
@@ -2199,6 +2342,63 @@ public readonly namespaceName: string;
2199
2342
 
2200
2343
  ---
2201
2344
 
2345
+ ### SecureRestApiProps <a name="SecureRestApiProps" id="@btc-embedded/cdk-extensions.SecureRestApiProps"></a>
2346
+
2347
+ #### Initializer <a name="Initializer" id="@btc-embedded/cdk-extensions.SecureRestApiProps.Initializer"></a>
2348
+
2349
+ ```typescript
2350
+ import { SecureRestApiProps } from '@btc-embedded/cdk-extensions'
2351
+
2352
+ const secureRestApiProps: SecureRestApiProps = { ... }
2353
+ ```
2354
+
2355
+ #### Properties <a name="Properties" id="Properties"></a>
2356
+
2357
+ | **Name** | **Type** | **Description** |
2358
+ | --- | --- | --- |
2359
+ | <code><a href="#@btc-embedded/cdk-extensions.SecureRestApiProps.property.apiSubDomain">apiSubDomain</a></code> | <code>string</code> | Subdomain that is used for REST API props. |
2360
+ | <code><a href="#@btc-embedded/cdk-extensions.SecureRestApiProps.property.basePlatformStackName">basePlatformStackName</a></code> | <code>string</code> | The name of the Base platform Stack. |
2361
+ | <code><a href="#@btc-embedded/cdk-extensions.SecureRestApiProps.property.hostedZone">hostedZone</a></code> | <code>aws-cdk-lib.aws_route53.IHostedZone</code> | hosted zone for the subdomain An optional parameter. |
2362
+
2363
+ ---
2364
+
2365
+ ##### `apiSubDomain`<sup>Required</sup> <a name="apiSubDomain" id="@btc-embedded/cdk-extensions.SecureRestApiProps.property.apiSubDomain"></a>
2366
+
2367
+ ```typescript
2368
+ public readonly apiSubDomain: string;
2369
+ ```
2370
+
2371
+ - *Type:* string
2372
+
2373
+ Subdomain that is used for REST API props.
2374
+
2375
+ ---
2376
+
2377
+ ##### `basePlatformStackName`<sup>Required</sup> <a name="basePlatformStackName" id="@btc-embedded/cdk-extensions.SecureRestApiProps.property.basePlatformStackName"></a>
2378
+
2379
+ ```typescript
2380
+ public readonly basePlatformStackName: string;
2381
+ ```
2382
+
2383
+ - *Type:* string
2384
+
2385
+ The name of the Base platform Stack.
2386
+
2387
+ ---
2388
+
2389
+ ##### `hostedZone`<sup>Optional</sup> <a name="hostedZone" id="@btc-embedded/cdk-extensions.SecureRestApiProps.property.hostedZone"></a>
2390
+
2391
+ ```typescript
2392
+ public readonly hostedZone: IHostedZone;
2393
+ ```
2394
+
2395
+ - *Type:* aws-cdk-lib.aws_route53.IHostedZone
2396
+ - *Default:* fqdn output of base platform stack is used to import the hosted zone
2397
+
2398
+ hosted zone for the subdomain An optional parameter.
2399
+
2400
+ ---
2401
+
2202
2402
  ### SharedVolumeExtensionProps <a name="SharedVolumeExtensionProps" id="@btc-embedded/cdk-extensions.SharedVolumeExtensionProps"></a>
2203
2403
 
2204
2404
  Properties for defining an ephermal shared volume.
@@ -2325,12 +2525,23 @@ const vpcProps: VpcProps = { ... }
2325
2525
 
2326
2526
  | **Name** | **Type** | **Description** |
2327
2527
  | --- | --- | --- |
2528
+ | <code><a href="#@btc-embedded/cdk-extensions.VpcProps.property.createKmsExecCommandKey">createKmsExecCommandKey</a></code> | <code>boolean</code> | *No description.* |
2328
2529
  | <code><a href="#@btc-embedded/cdk-extensions.VpcProps.property.definedVpcName">definedVpcName</a></code> | <code>string</code> | *No description.* |
2329
2530
  | <code><a href="#@btc-embedded/cdk-extensions.VpcProps.property.maxAzs">maxAzs</a></code> | <code>number</code> | *No description.* |
2330
2531
  | <code><a href="#@btc-embedded/cdk-extensions.VpcProps.property.vpcCidr">vpcCidr</a></code> | <code>aws-cdk-lib.aws_ec2.IIpAddresses</code> | *No description.* |
2331
2532
 
2332
2533
  ---
2333
2534
 
2535
+ ##### `createKmsExecCommandKey`<sup>Optional</sup> <a name="createKmsExecCommandKey" id="@btc-embedded/cdk-extensions.VpcProps.property.createKmsExecCommandKey"></a>
2536
+
2537
+ ```typescript
2538
+ public readonly createKmsExecCommandKey: boolean;
2539
+ ```
2540
+
2541
+ - *Type:* boolean
2542
+
2543
+ ---
2544
+
2334
2545
  ##### `definedVpcName`<sup>Optional</sup> <a name="definedVpcName" id="@btc-embedded/cdk-extensions.VpcProps.property.definedVpcName"></a>
2335
2546
 
2336
2547
  ```typescript
package/CHANGELOG.md CHANGED
@@ -1,4 +1,23 @@
1
1
 
2
+ ## [0.5.3](https://github.com/btc-embedded/cdk-extensions/compare/v0.5.2...v0.5.3) (2025-02-11)
3
+
4
+
5
+ ### Features
6
+
7
+ * add SecureRestApi Construt ([e212545](https://github.com/btc-embedded/cdk-extensions/commit/e2125457345456c107352e19f4db5d024d1d2393))
8
+
9
+
10
+ ### Bug Fixes
11
+
12
+ * add subdomain to the RestApi ([9b7077b](https://github.com/btc-embedded/cdk-extensions/commit/9b7077b36fff53b2982449dec28279cce47d3740))
13
+
14
+ ## [0.5.2](https://github.com/btc-embedded/cdk-extensions/compare/v0.5.1...v0.5.2) (2025-01-28)
15
+
16
+
17
+ ### Features
18
+
19
+ * make parameter key configurable for cloudmap ([7b4e6a4](https://github.com/btc-embedded/cdk-extensions/commit/7b4e6a44a84c2033a3190e08adb80dde0f5cb4fb))
20
+
2
21
  ## [0.5.1](https://github.com/btc-embedded/cdk-extensions/compare/v0.5.0...v0.5.1) (2025-01-24)
3
22
 
4
23
 
@@ -0,0 +1,26 @@
1
+ import { CognitoUserPoolsAuthorizer, DomainName, RestApiProps } from "aws-cdk-lib/aws-apigateway";
2
+ import { IHostedZone } from "aws-cdk-lib/aws-route53";
3
+ import { Construct } from "constructs/lib/construct";
4
+ export interface SecureRestApiProps {
5
+ /**
6
+ * The name of the Base platform Stack
7
+ */
8
+ readonly basePlatformStackName: string;
9
+ /**
10
+ * Subdomain that is used for REST API props
11
+ */
12
+ readonly apiSubDomain: string;
13
+ /**
14
+ * hosted zone for the subdomain
15
+ * An optional parameter
16
+ * @default - fqdn output of base platform stack is used to import the hosted zone
17
+ */
18
+ readonly hostedZone?: IHostedZone;
19
+ }
20
+ export declare class SecureRestApi extends Construct {
21
+ restApiDomainName: DomainName;
22
+ defaultAuthorizer: CognitoUserPoolsAuthorizer;
23
+ private certificate;
24
+ constructor(scope: Construct, id: string, props: SecureRestApiProps);
25
+ withSecureRestApiProps(props: RestApiProps): RestApiProps;
26
+ }