@aws-cdk/aws-ec2-alpha 2.232.0-alpha.0 → 2.232.2-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/.jsii CHANGED
@@ -8,7 +8,7 @@
8
8
  "url": "https://aws.amazon.com"
9
9
  },
10
10
  "dependencies": {
11
- "aws-cdk-lib": "^2.232.0",
11
+ "aws-cdk-lib": "^2.232.2",
12
12
  "constructs": "^10.0.0"
13
13
  },
14
14
  "dependencyClosure": {
@@ -17612,6 +17612,6 @@
17612
17612
  "symbolId": "lib/vpc-v2:VpcV2Props"
17613
17613
  }
17614
17614
  },
17615
- "version": "2.232.0-alpha.0",
17615
+ "version": "2.232.2-alpha.0",
17616
17616
  "fingerprint": "**********"
17617
17617
  }
package/lib/ipam.js CHANGED
@@ -315,7 +315,7 @@ let Ipam = (() => {
315
315
  Ipam = _classThis = _classDescriptor.value;
316
316
  if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
317
317
  }
318
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.Ipam", version: "2.232.0-alpha.0" };
318
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.Ipam", version: "2.232.2-alpha.0" };
319
319
  /** Uniquely identifies this class. */
320
320
  static PROPERTY_INJECTION_ID = '@aws-cdk.aws-ec2-alpha.Ipam';
321
321
  /**
package/lib/route.d.ts CHANGED
@@ -325,6 +325,15 @@ export declare class VPCPeeringConnection extends Resource implements IRouteTarg
325
325
  */
326
326
  readonly resource: CfnVPCPeeringConnection;
327
327
  constructor(scope: Construct, id: string, props: VPCPeeringConnectionProps);
328
+ /**
329
+ * Validates if the provided IPv4 CIDR block overlaps with existing subnet CIDR blocks within the given VPC.
330
+ *
331
+ * @param requestorVpc The VPC of the requestor.
332
+ * @param acceptorVpc The VPC of the acceptor.
333
+ * @returns True if the IPv4 CIDR block overlaps with each other for two VPCs, false otherwise.
334
+ * @internal
335
+ */
336
+ private validateVpcCidrOverlap;
328
337
  }
329
338
  /**
330
339
  * The type of endpoint or gateway being targeted by the route.
package/lib/route.js CHANGED
@@ -81,7 +81,7 @@ let EgressOnlyInternetGateway = (() => {
81
81
  EgressOnlyInternetGateway = _classThis = _classDescriptor.value;
82
82
  if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
83
83
  }
84
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.EgressOnlyInternetGateway", version: "2.232.0-alpha.0" };
84
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.EgressOnlyInternetGateway", version: "2.232.2-alpha.0" };
85
85
  /** Uniquely identifies this class. */
86
86
  static PROPERTY_INJECTION_ID = '@aws-cdk.aws-ec2-alpha.EgressOnlyInternetGateway';
87
87
  /**
@@ -144,7 +144,7 @@ let InternetGateway = (() => {
144
144
  InternetGateway = _classThis = _classDescriptor.value;
145
145
  if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
146
146
  }
147
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.InternetGateway", version: "2.232.0-alpha.0" };
147
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.InternetGateway", version: "2.232.2-alpha.0" };
148
148
  /** Uniquely identifies this class. */
149
149
  static PROPERTY_INJECTION_ID = '@aws-cdk.aws-ec2-alpha.InternetGateway';
150
150
  /**
@@ -218,7 +218,7 @@ let VPNGatewayV2 = (() => {
218
218
  VPNGatewayV2 = _classThis = _classDescriptor.value;
219
219
  if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
220
220
  }
221
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.VPNGatewayV2", version: "2.232.0-alpha.0" };
221
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.VPNGatewayV2", version: "2.232.2-alpha.0" };
222
222
  /** Uniquely identifies this class. */
223
223
  static PROPERTY_INJECTION_ID = '@aws-cdk.aws-ec2-alpha.VPNGatewayV2';
224
224
  /**
@@ -316,7 +316,7 @@ let NatGateway = (() => {
316
316
  NatGateway = _classThis = _classDescriptor.value;
317
317
  if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
318
318
  }
319
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.NatGateway", version: "2.232.0-alpha.0" };
319
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.NatGateway", version: "2.232.2-alpha.0" };
320
320
  /** Uniquely identifies this class. */
321
321
  static PROPERTY_INJECTION_ID = '@aws-cdk.aws-ec2-alpha.NatGateway';
322
322
  /**
@@ -429,7 +429,7 @@ let VPCPeeringConnection = (() => {
429
429
  VPCPeeringConnection = _classThis = _classDescriptor.value;
430
430
  if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
431
431
  }
432
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.VPCPeeringConnection", version: "2.232.0-alpha.0" };
432
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.VPCPeeringConnection", version: "2.232.2-alpha.0" };
433
433
  /** Uniquely identifies this class. */
434
434
  static PROPERTY_INJECTION_ID = '@aws-cdk.aws-ec2-alpha.VPCPeeringConnection';
435
435
  /**
@@ -527,7 +527,7 @@ exports.VPCPeeringConnection = VPCPeeringConnection;
527
527
  * The gateway or endpoint targeted by the route.
528
528
  */
529
529
  class RouteTargetType {
530
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.RouteTargetType", version: "2.232.0-alpha.0" };
530
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.RouteTargetType", version: "2.232.2-alpha.0" };
531
531
  /**
532
532
  * The gateway route target. This is used for targets such as
533
533
  * egress-only internet gateway or VPC peering connection.
@@ -575,7 +575,7 @@ let Route = (() => {
575
575
  Route = _classThis = _classDescriptor.value;
576
576
  if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
577
577
  }
578
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.Route", version: "2.232.0-alpha.0" };
578
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.Route", version: "2.232.2-alpha.0" };
579
579
  /** Uniquely identifies this class. */
580
580
  static PROPERTY_INJECTION_ID = '@aws-cdk.aws-ec2-alpha.Route';
581
581
  /**
@@ -688,7 +688,7 @@ let RouteTable = (() => {
688
688
  RouteTable = _classThis = _classDescriptor.value;
689
689
  if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
690
690
  }
691
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.RouteTable", version: "2.232.0-alpha.0" };
691
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.RouteTable", version: "2.232.2-alpha.0" };
692
692
  /** Uniquely identifies this class. */
693
693
  static PROPERTY_INJECTION_ID = '@aws-cdk.aws-ec2-alpha.RouteTable';
694
694
  /**
package/lib/subnet-v2.js CHANGED
@@ -48,7 +48,7 @@ const util_1 = require("./util");
48
48
  * IPv4 or IPv6 CIDR range for the subnet
49
49
  */
50
50
  class IpCidr {
51
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.IpCidr", version: "2.232.0-alpha.0" };
51
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.IpCidr", version: "2.232.2-alpha.0" };
52
52
  /**
53
53
  * IPv6 CIDR range for the subnet
54
54
  * Allowed only if IPv6 is enabled on VPc
@@ -96,7 +96,7 @@ let SubnetV2 = (() => {
96
96
  SubnetV2 = _classThis = _classDescriptor.value;
97
97
  if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
98
98
  }
99
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.SubnetV2", version: "2.232.0-alpha.0" };
99
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.SubnetV2", version: "2.232.2-alpha.0" };
100
100
  /** Uniquely identifies this class. */
101
101
  static PROPERTY_INJECTION_ID = '@aws-cdk.aws-ec2-alpha.SubnetV2';
102
102
  /**
@@ -1,4 +1,4 @@
1
- import { IResource } from 'aws-cdk-lib/core';
1
+ import { IResource, Resource } from 'aws-cdk-lib/core';
2
2
  /**
3
3
  * Represents a Transit Gateway Route Table Association.
4
4
  */
@@ -9,3 +9,10 @@ export interface ITransitGatewayAssociation extends IResource {
9
9
  */
10
10
  readonly transitGatewayAssociationId: string;
11
11
  }
12
+ /**
13
+ * A Transit Gateway Association.
14
+ * @internal
15
+ */
16
+ export declare abstract class TransitGatewayAssociationBase extends Resource implements ITransitGatewayAssociation {
17
+ abstract readonly transitGatewayAssociationId: string;
18
+ }
@@ -1,4 +1,4 @@
1
- import { IResource } from 'aws-cdk-lib/core';
1
+ import { IResource, Resource } from 'aws-cdk-lib/core';
2
2
  /**
3
3
  * Represents a Transit Gateway Attachment.
4
4
  */
@@ -9,3 +9,10 @@ export interface ITransitGatewayAttachment extends IResource {
9
9
  */
10
10
  readonly transitGatewayAttachmentId: string;
11
11
  }
12
+ /**
13
+ * A Transit Gateway Attachment.
14
+ * @internal
15
+ */
16
+ export declare abstract class TransitGatewayAttachmentBase extends Resource implements ITransitGatewayAttachment {
17
+ abstract readonly transitGatewayAttachmentId: string;
18
+ }
@@ -60,7 +60,7 @@ let TransitGatewayRouteTableAssociation = (() => {
60
60
  TransitGatewayRouteTableAssociation = _classThis = _classDescriptor.value;
61
61
  if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
62
62
  }
63
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.TransitGatewayRouteTableAssociation", version: "2.232.0-alpha.0" };
63
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.TransitGatewayRouteTableAssociation", version: "2.232.2-alpha.0" };
64
64
  /** Uniquely identifies this class. */
65
65
  static PROPERTY_INJECTION_ID = '@aws-cdk.aws-ec2-alpha.TransitGatewayRouteTableAssociation';
66
66
  /**
@@ -60,7 +60,7 @@ let TransitGatewayRouteTablePropagation = (() => {
60
60
  TransitGatewayRouteTablePropagation = _classThis = _classDescriptor.value;
61
61
  if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
62
62
  }
63
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.TransitGatewayRouteTablePropagation", version: "2.232.0-alpha.0" };
63
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.TransitGatewayRouteTablePropagation", version: "2.232.2-alpha.0" };
64
64
  /** Uniquely identifies this class. */
65
65
  static PROPERTY_INJECTION_ID = '@aws-cdk.aws-ec2-alpha.TransitGatewayRouteTablePropagation';
66
66
  /**
@@ -1,5 +1,5 @@
1
1
  import { IRouteTable } from 'aws-cdk-lib/aws-ec2';
2
- import { IResource } from 'aws-cdk-lib/core';
2
+ import { IResource, Resource } from 'aws-cdk-lib/core';
3
3
  import { Construct } from 'constructs';
4
4
  import { ITransitGateway } from './transit-gateway';
5
5
  import { ITransitGatewayAttachment } from './transit-gateway-attachment';
@@ -50,6 +50,18 @@ export interface TransitGatewayRouteTableProps {
50
50
  */
51
51
  readonly transitGatewayRouteTableName?: string;
52
52
  }
53
+ /**
54
+ * A Transit Gateway Route Table.
55
+ * @internal
56
+ */
57
+ declare abstract class TransitGatewayRouteTableBase extends Resource implements ITransitGatewayRouteTable {
58
+ abstract readonly routeTableId: string;
59
+ abstract readonly transitGateway: ITransitGateway;
60
+ addRoute(id: string, transitGatewayAttachment: ITransitGatewayAttachment, destinationCidr: string): ITransitGatewayRoute;
61
+ addBlackholeRoute(id: string, destinationCidr: string): ITransitGatewayRoute;
62
+ addAssociation(id: string, transitGatewayAttachment: ITransitGatewayAttachment): ITransitGatewayRouteTableAssociation;
63
+ enablePropagation(id: string, transitGatewayAttachment: ITransitGatewayAttachment): ITransitGatewayRouteTablePropagation;
64
+ }
53
65
  /**
54
66
  * Creates a Transit Gateway route table.
55
67
  *
@@ -65,3 +77,4 @@ export declare class TransitGatewayRouteTable extends TransitGatewayRouteTableBa
65
77
  readonly transitGateway: ITransitGateway;
66
78
  constructor(scope: Construct, id: string, props: TransitGatewayRouteTableProps);
67
79
  }
80
+ export {};
@@ -94,7 +94,7 @@ let TransitGatewayRouteTable = (() => {
94
94
  TransitGatewayRouteTable = _classThis = _classDescriptor.value;
95
95
  if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
96
96
  }
97
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.TransitGatewayRouteTable", version: "2.232.0-alpha.0" };
97
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.TransitGatewayRouteTable", version: "2.232.2-alpha.0" };
98
98
  /** Uniquely identifies this class. */
99
99
  static PROPERTY_INJECTION_ID = '@aws-cdk.aws-ec2-alpha.TransitGatewayRouteTable';
100
100
  routeTableId;
@@ -1,5 +1,5 @@
1
1
  import { CfnTransitGatewayRoute } from 'aws-cdk-lib/aws-ec2';
2
- import { IResource } from 'aws-cdk-lib/core';
2
+ import { IResource, Resource } from 'aws-cdk-lib/core';
3
3
  import { Construct } from 'constructs';
4
4
  import { ITransitGatewayAttachment } from './transit-gateway-attachment';
5
5
  import { ITransitGatewayRouteTable } from './transit-gateway-route-table';
@@ -55,6 +55,14 @@ export interface TransitGatewayRouteProps extends BaseTransitGatewayRouteProps {
55
55
  */
56
56
  export interface TransitGatewayBlackholeRouteProps extends BaseTransitGatewayRouteProps {
57
57
  }
58
+ /**
59
+ * A Transit Gateway Route.
60
+ * @internal
61
+ */
62
+ declare abstract class TransitGatewayRouteBase extends Resource implements ITransitGatewayRoute {
63
+ abstract routeTable: ITransitGatewayRouteTable;
64
+ abstract destinationCidrBlock: string;
65
+ }
58
66
  /**
59
67
  * Create a Transit Gateway Active Route.
60
68
  *
@@ -83,3 +91,4 @@ export declare class TransitGatewayBlackholeRoute extends TransitGatewayRouteBas
83
91
  readonly destinationCidrBlock: string;
84
92
  constructor(scope: Construct, id: string, props: TransitGatewayBlackholeRouteProps);
85
93
  }
94
+ export {};
@@ -66,7 +66,7 @@ let TransitGatewayRoute = (() => {
66
66
  TransitGatewayRoute = _classThis = _classDescriptor.value;
67
67
  if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
68
68
  }
69
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.TransitGatewayRoute", version: "2.232.0-alpha.0" };
69
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.TransitGatewayRoute", version: "2.232.2-alpha.0" };
70
70
  /** Uniquely identifies this class. */
71
71
  static PROPERTY_INJECTION_ID = '@aws-cdk.aws-ec2-alpha.TransitGatewayRoute';
72
72
  routeTable;
@@ -124,7 +124,7 @@ let TransitGatewayBlackholeRoute = (() => {
124
124
  TransitGatewayBlackholeRoute = _classThis = _classDescriptor.value;
125
125
  if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
126
126
  }
127
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.TransitGatewayBlackholeRoute", version: "2.232.0-alpha.0" };
127
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.TransitGatewayBlackholeRoute", version: "2.232.2-alpha.0" };
128
128
  /** Uniquely identifies this class. */
129
129
  static PROPERTY_INJECTION_ID = '@aws-cdk.aws-ec2-alpha.TransitGatewayBlackholeRoute';
130
130
  routeTable;
@@ -64,7 +64,7 @@ let TransitGatewayVpcAttachment = (() => {
64
64
  TransitGatewayVpcAttachment = _classThis = _classDescriptor.value;
65
65
  if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
66
66
  }
67
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.TransitGatewayVpcAttachment", version: "2.232.0-alpha.0" };
67
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.TransitGatewayVpcAttachment", version: "2.232.2-alpha.0" };
68
68
  /** Uniquely identifies this class. */
69
69
  static PROPERTY_INJECTION_ID = '@aws-cdk.aws-ec2-alpha.TransitGatewayVpcAttachment';
70
70
  transitGatewayAttachmentId;
@@ -3,6 +3,7 @@ import * as cdk from 'aws-cdk-lib/core';
3
3
  import { Construct } from 'constructs';
4
4
  import { IRouteTarget } from './route';
5
5
  import { ITransitGatewayRouteTable } from './transit-gateway-route-table';
6
+ import { AttachVpcOptions, ITransitGatewayVpcAttachment } from './transit-gateway-vpc-attachment';
6
7
  /**
7
8
  * Represents a Transit Gateway.
8
9
  */
@@ -118,6 +119,33 @@ export interface TransitGatewayProps {
118
119
  */
119
120
  readonly transitGatewayCidrBlocks?: string[];
120
121
  }
122
+ /**
123
+ * A Transit Gateway.
124
+ * @internal
125
+ */
126
+ declare abstract class TransitGatewayBase extends cdk.Resource implements ITransitGateway, IRouteTarget {
127
+ abstract readonly routerType: RouterType;
128
+ abstract readonly routerTargetId: string;
129
+ abstract readonly transitGatewayId: string;
130
+ abstract readonly transitGatewayArn: string;
131
+ abstract readonly defaultRouteTable: ITransitGatewayRouteTable;
132
+ abstract readonly defaultRouteTableAssociation: boolean;
133
+ abstract readonly defaultRouteTablePropagation: boolean;
134
+ abstract readonly dnsSupport: boolean;
135
+ abstract readonly securityGroupReferencingSupport: boolean;
136
+ /**
137
+ * Adds a new route table to the Transit Gateway.
138
+ *
139
+ * @returns The created Transit Gateway route table.
140
+ */
141
+ addRouteTable(id: string): ITransitGatewayRouteTable;
142
+ /**
143
+ * Attaches a VPC to the Transit Gateway.
144
+ *
145
+ * @returns The created Transit Gateway VPC attachment.
146
+ */
147
+ attachVpc(id: string, options: AttachVpcOptions): ITransitGatewayVpcAttachment;
148
+ }
121
149
  /**
122
150
  * Creates a Transit Gateway.
123
151
  *
@@ -137,3 +165,4 @@ export declare class TransitGateway extends TransitGatewayBase {
137
165
  readonly securityGroupReferencingSupport: boolean;
138
166
  constructor(scope: Construct, id: string, props?: TransitGatewayProps);
139
167
  }
168
+ export {};
@@ -148,7 +148,7 @@ let TransitGateway = (() => {
148
148
  TransitGateway = _classThis = _classDescriptor.value;
149
149
  if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
150
150
  }
151
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.TransitGateway", version: "2.232.0-alpha.0" };
151
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.TransitGateway", version: "2.232.2-alpha.0" };
152
152
  /** Uniquely identifies this class. */
153
153
  static PROPERTY_INJECTION_ID = '@aws-cdk.aws-ec2-alpha.TransitGateway';
154
154
  routerType;
@@ -2,7 +2,7 @@ import { Resource } from 'aws-cdk-lib';
2
2
  import { ClientVpnEndpoint, ClientVpnEndpointOptions, EnableVpnGatewayOptions, FlowLog, FlowLogOptions, GatewayVpcEndpoint, GatewayVpcEndpointOptions, InterfaceVpcEndpoint, InterfaceVpcEndpointOptions, ISubnet, IVpc, SelectedSubnets, SubnetSelection, VpnConnection, VpnConnectionOptions, VpnConnectionType } from 'aws-cdk-lib/aws-ec2';
3
3
  import { VPCReference } from 'aws-cdk-lib/aws-ec2/lib/ec2.generated';
4
4
  import { Role } from 'aws-cdk-lib/aws-iam';
5
- import { IDependable } from 'constructs';
5
+ import { DependencyGroup, IDependable } from 'constructs';
6
6
  import { EgressOnlyInternetGateway, InternetGateway, NatGateway, NatGatewayOptions, VPCPeeringConnection, VPCPeeringConnectionOptions, VPNGatewayV2 } from './route';
7
7
  import { IVPCCidrBlock } from './vpc-v2';
8
8
  /**
@@ -207,6 +207,12 @@ export declare abstract class VpcV2Base extends Resource implements IVpcV2 {
207
207
  * Dependable that can be depended upon to force internet connectivity established on the VPC
208
208
  */
209
209
  abstract readonly internetConnectivityEstablished: IDependable;
210
+ /**
211
+ * Dependable that can be depended upon to force internet connectivity established on the VPC
212
+ * Add igw to this if its a public subnet
213
+ * @internal
214
+ */
215
+ protected readonly _internetConnectivityEstablished: DependencyGroup;
210
216
  /**
211
217
  * Secondary IPs for the VPC, can be multiple Ipv4 or Ipv6
212
218
  * Ipv4 should be within RFC#1918 range
@@ -241,6 +247,21 @@ export declare abstract class VpcV2Base extends Resource implements IVpcV2 {
241
247
  * If this is set to true, don't error out on trying to select subnets
242
248
  */
243
249
  protected incompleteSubnetDefinition: boolean;
250
+ /**
251
+ * Mutable private field for the vpnGatewayId
252
+ * @internal
253
+ */
254
+ protected _vpnGatewayId?: string;
255
+ /**
256
+ * Mutable private field for the internetGatewayId
257
+ * @internal
258
+ */
259
+ protected _internetGatewayId?: string;
260
+ /**
261
+ * Mutable private field for the EgressOnlyInternetGatewayId
262
+ * @internal
263
+ */
264
+ protected _egressOnlyInternetGatewayId?: string;
244
265
  /**
245
266
  * Return information on the subnets appropriate for the given selection strategy
246
267
  *
@@ -281,12 +302,22 @@ export declare abstract class VpcV2Base extends Resource implements IVpcV2 {
281
302
  * @default - in case of no input subnets, no route is created
282
303
  */
283
304
  addEgressOnlyInternetGateway(options?: EgressOnlyInternetGatewayOptions): EgressOnlyInternetGateway;
305
+ /**
306
+ * Creates a route for EGW with destination set to outbound IPv6('::/0') or custom ipv6 address.
307
+ * @internal
308
+ */
309
+ private createEgressRoute;
284
310
  /**
285
311
  * Adds a new Internet Gateway to this VPC
286
312
  *
287
313
  * @default - creates a new route for public subnets(with all outbound access) to the Internet Gateway.
288
314
  */
289
315
  addInternetGateway(options?: InternetGatewayOptions): InternetGateway;
316
+ /**
317
+ * Adds default route for the internet gateway
318
+ * @internal
319
+ */
320
+ private addDefaultInternetRoute;
290
321
  /**
291
322
  * Helper function to process unique subnets and route table for adding routes
292
323
  */
@@ -15,7 +15,7 @@ const util_1 = require("./util");
15
15
  * For more information, see the {@link https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_ec2.Vpc.html|AWS CDK Documentation on VPCs}.
16
16
  */
17
17
  class VpcV2Base extends aws_cdk_lib_1.Resource {
18
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.VpcV2Base", version: "2.232.0-alpha.0" };
18
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.VpcV2Base", version: "2.232.2-alpha.0" };
19
19
  /**
20
20
  * List of public subnets in this VPC
21
21
  */
package/lib/vpc-v2.js CHANGED
@@ -49,7 +49,7 @@ const vpc_v2_base_1 = require("./vpc-v2-base");
49
49
  * IpAddress options to define VPC V2
50
50
  */
51
51
  class IpAddresses {
52
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.IpAddresses", version: "2.232.0-alpha.0" };
52
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.IpAddresses", version: "2.232.2-alpha.0" };
53
53
  /**
54
54
  * An IPv4 CIDR Range
55
55
  */
@@ -152,7 +152,7 @@ let VpcV2 = (() => {
152
152
  VpcV2 = _classThis = _classDescriptor.value;
153
153
  if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
154
154
  }
155
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.VpcV2", version: "2.232.0-alpha.0" };
155
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-ec2-alpha.VpcV2", version: "2.232.2-alpha.0" };
156
156
  /** Uniquely identifies this class. */
157
157
  static PROPERTY_INJECTION_ID = '@aws-cdk.aws-ec2-alpha.VpcV2';
158
158
  /**
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@aws-cdk/aws-ec2-alpha",
3
3
  "private": false,
4
- "version": "2.232.0-alpha.0",
4
+ "version": "2.232.2-alpha.0",
5
5
  "description": "The CDK construct library for VPC V2",
6
6
  "main": "lib/index.js",
7
7
  "types": "lib/index.d.ts",
@@ -78,17 +78,17 @@
78
78
  },
79
79
  "license": "Apache-2.0",
80
80
  "devDependencies": {
81
- "@aws-cdk/cdk-build-tools": "2.232.0-alpha.0",
81
+ "@aws-cdk/cdk-build-tools": "2.232.2-alpha.0",
82
82
  "@aws-cdk/integ-runner": "^2.192.2",
83
- "@aws-cdk/integ-tests-alpha": "^2.232.0-alpha.0",
84
- "@aws-cdk/pkglint": "2.232.0-alpha.0",
83
+ "@aws-cdk/integ-tests-alpha": "^2.232.2-alpha.0",
84
+ "@aws-cdk/pkglint": "2.232.2-alpha.0",
85
85
  "@types/jest": "^29.5.14",
86
- "aws-cdk-lib": "2.232.0",
86
+ "aws-cdk-lib": "2.232.2",
87
87
  "jest": "^29.7.0"
88
88
  },
89
89
  "homepage": "https://github.com/aws/aws-cdk",
90
90
  "peerDependencies": {
91
- "aws-cdk-lib": "^2.232.0",
91
+ "aws-cdk-lib": "^2.232.2",
92
92
  "constructs": "^10.0.0"
93
93
  },
94
94
  "separate-module": false,