raindancers-network
Version:
Extensions to the ec2.Vpc Constructs
1,504 lines (891 loc) • 477 kB
Markdown
# Raindancers Network Construct Library...
The raindancers network package contains constructs that construct to provide easy to use abstractions, particually for using in an enterprise network, with Transit Gateways, Cloudwan, Network Firewalls.
Note: This Construct Library is functional, but there is no promise thate that breaking changes could occur. While this construct is highly opinionated, it seeks to solve a wide set of scenerios that its author has faced, and problems that others have described. The author of this construct encourages and welcome PR's. Please raise an issue to start
The EnterpriseVPC provides addtional methods from the standard ec2.Vpc construct, while maintaining compatiblity, so it can be used with other constructs that use the ec2.Vpc
A getting started example provides guidence in using the constructs in typescript cdk
- [Getting Started](./docs/gettingstarted.md)
- [Deploying VPC with Cloudwan](./docs/deployVpcts.md)
- [Create A shared Egress VPC, using AWS Network Firewalls](./docs/egress.md)
- [Transit Gateways and IPSec over DX](./docs/transitgateway.md)
Slack: A good way to to get help with this construct, is to join the [cdk.dev] (https://cdk.dev/) slack channel.
This construct is published as a ready to import module for both typescript and python, via npm and pypi. Look here for details [constructs.dev](https://constructs.dev/packages/raindancers-network)
# API Reference <a name="API Reference" id="api-reference"></a>
## Constructs <a name="Constructs" id="Constructs"></a>
### Assignment <a name="Assignment" id="raindancers-network.sso.Assignment"></a>
- *Implements:* raindancers-network.sso.IAssignment
The assignment construct.
Has no import method because there is no attributes to import.
#### Initializers <a name="Initializers" id="raindancers-network.sso.Assignment.Initializer"></a>
```typescript
import { sso } from 'raindancers-network'
new sso.Assignment(scope: Construct, id: string, props: AssignmentProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| <code><a href="#raindancers-network.sso.Assignment.Initializer.parameter.scope">scope</a></code> | <code>constructs.Construct</code> | *No description.* |
| <code><a href="#raindancers-network.sso.Assignment.Initializer.parameter.id">id</a></code> | <code>string</code> | *No description.* |
| <code><a href="#raindancers-network.sso.Assignment.Initializer.parameter.props">props</a></code> | <code>raindancers-network.sso.AssignmentProps</code> | *No description.* |
---
##### `scope`<sup>Required</sup> <a name="scope" id="raindancers-network.sso.Assignment.Initializer.parameter.scope"></a>
- *Type:* constructs.Construct
---
##### `id`<sup>Required</sup> <a name="id" id="raindancers-network.sso.Assignment.Initializer.parameter.id"></a>
- *Type:* string
---
##### `props`<sup>Required</sup> <a name="props" id="raindancers-network.sso.Assignment.Initializer.parameter.props"></a>
- *Type:* raindancers-network.sso.AssignmentProps
---
#### Methods <a name="Methods" id="Methods"></a>
| **Name** | **Description** |
| --- | --- |
| <code><a href="#raindancers-network.sso.Assignment.toString">toString</a></code> | Returns a string representation of this construct. |
| <code><a href="#raindancers-network.sso.Assignment.applyRemovalPolicy">applyRemovalPolicy</a></code> | Apply the given removal policy to this resource. |
---
##### `toString` <a name="toString" id="raindancers-network.sso.Assignment.toString"></a>
```typescript
public toString(): string
```
Returns a string representation of this construct.
##### `applyRemovalPolicy` <a name="applyRemovalPolicy" id="raindancers-network.sso.Assignment.applyRemovalPolicy"></a>
```typescript
public applyRemovalPolicy(policy: RemovalPolicy): void
```
Apply the given removal policy to this resource.
The Removal Policy controls what happens to this resource when it stops
being managed by CloudFormation, either because you've removed it from the
CDK application or because you've made a change that requires the resource
to be replaced.
The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
account for data recovery and cleanup later (`RemovalPolicy.RETAIN`).
###### `policy`<sup>Required</sup> <a name="policy" id="raindancers-network.sso.Assignment.applyRemovalPolicy.parameter.policy"></a>
- *Type:* aws-cdk-lib.RemovalPolicy
---
#### Static Functions <a name="Static Functions" id="Static Functions"></a>
| **Name** | **Description** |
| --- | --- |
| <code><a href="#raindancers-network.sso.Assignment.isConstruct">isConstruct</a></code> | Checks if `x` is a construct. |
| <code><a href="#raindancers-network.sso.Assignment.isOwnedResource">isOwnedResource</a></code> | Returns true if the construct was created by CDK, and false otherwise. |
| <code><a href="#raindancers-network.sso.Assignment.isResource">isResource</a></code> | Check whether the given construct is a Resource. |
---
##### ~~`isConstruct`~~ <a name="isConstruct" id="raindancers-network.sso.Assignment.isConstruct"></a>
```typescript
import { sso } from 'raindancers-network'
sso.Assignment.isConstruct(x: any)
```
Checks if `x` is a construct.
###### `x`<sup>Required</sup> <a name="x" id="raindancers-network.sso.Assignment.isConstruct.parameter.x"></a>
- *Type:* any
Any object.
---
##### `isOwnedResource` <a name="isOwnedResource" id="raindancers-network.sso.Assignment.isOwnedResource"></a>
```typescript
import { sso } from 'raindancers-network'
sso.Assignment.isOwnedResource(construct: IConstruct)
```
Returns true if the construct was created by CDK, and false otherwise.
###### `construct`<sup>Required</sup> <a name="construct" id="raindancers-network.sso.Assignment.isOwnedResource.parameter.construct"></a>
- *Type:* constructs.IConstruct
---
##### `isResource` <a name="isResource" id="raindancers-network.sso.Assignment.isResource"></a>
```typescript
import { sso } from 'raindancers-network'
sso.Assignment.isResource(construct: IConstruct)
```
Check whether the given construct is a Resource.
###### `construct`<sup>Required</sup> <a name="construct" id="raindancers-network.sso.Assignment.isResource.parameter.construct"></a>
- *Type:* constructs.IConstruct
---
#### Properties <a name="Properties" id="Properties"></a>
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| <code><a href="#raindancers-network.sso.Assignment.property.node">node</a></code> | <code>constructs.Node</code> | The tree node. |
| <code><a href="#raindancers-network.sso.Assignment.property.env">env</a></code> | <code>aws-cdk-lib.ResourceEnvironment</code> | The environment this resource belongs to. |
| <code><a href="#raindancers-network.sso.Assignment.property.stack">stack</a></code> | <code>aws-cdk-lib.Stack</code> | The stack in which this resource is defined. |
---
##### `node`<sup>Required</sup> <a name="node" id="raindancers-network.sso.Assignment.property.node"></a>
```typescript
public readonly node: Node;
```
- *Type:* constructs.Node
The tree node.
---
##### `env`<sup>Required</sup> <a name="env" id="raindancers-network.sso.Assignment.property.env"></a>
```typescript
public readonly env: ResourceEnvironment;
```
- *Type:* aws-cdk-lib.ResourceEnvironment
The environment this resource belongs to.
For resources that are created and managed by the CDK
(generally, those created by creating new class instances like Role, Bucket, etc.),
this is always the same as the environment of the stack they belong to;
however, for imported resources
(those obtained from static methods like fromRoleArn, fromBucketName, etc.),
that might be different than the stack they were imported into.
---
##### `stack`<sup>Required</sup> <a name="stack" id="raindancers-network.sso.Assignment.property.stack"></a>
```typescript
public readonly stack: Stack;
```
- *Type:* aws-cdk-lib.Stack
The stack in which this resource is defined.
---
### AssociateSharedResolverRule <a name="AssociateSharedResolverRule" id="raindancers-network.dns.AssociateSharedResolverRule"></a>
Associate a resolver rule that has been shared to this account.
#### Initializers <a name="Initializers" id="raindancers-network.dns.AssociateSharedResolverRule.Initializer"></a>
```typescript
import { dns } from 'raindancers-network'
new dns.AssociateSharedResolverRule(scope: Construct, id: string, props: AssociateSharedResolverRuleProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| <code><a href="#raindancers-network.dns.AssociateSharedResolverRule.Initializer.parameter.scope">scope</a></code> | <code>constructs.Construct</code> | *No description.* |
| <code><a href="#raindancers-network.dns.AssociateSharedResolverRule.Initializer.parameter.id">id</a></code> | <code>string</code> | *No description.* |
| <code><a href="#raindancers-network.dns.AssociateSharedResolverRule.Initializer.parameter.props">props</a></code> | <code>raindancers-network.dns.AssociateSharedResolverRuleProps</code> | *No description.* |
---
##### `scope`<sup>Required</sup> <a name="scope" id="raindancers-network.dns.AssociateSharedResolverRule.Initializer.parameter.scope"></a>
- *Type:* constructs.Construct
---
##### `id`<sup>Required</sup> <a name="id" id="raindancers-network.dns.AssociateSharedResolverRule.Initializer.parameter.id"></a>
- *Type:* string
---
##### `props`<sup>Required</sup> <a name="props" id="raindancers-network.dns.AssociateSharedResolverRule.Initializer.parameter.props"></a>
- *Type:* raindancers-network.dns.AssociateSharedResolverRuleProps
---
#### Methods <a name="Methods" id="Methods"></a>
| **Name** | **Description** |
| --- | --- |
| <code><a href="#raindancers-network.dns.AssociateSharedResolverRule.toString">toString</a></code> | Returns a string representation of this construct. |
---
##### `toString` <a name="toString" id="raindancers-network.dns.AssociateSharedResolverRule.toString"></a>
```typescript
public toString(): string
```
Returns a string representation of this construct.
#### Static Functions <a name="Static Functions" id="Static Functions"></a>
| **Name** | **Description** |
| --- | --- |
| <code><a href="#raindancers-network.dns.AssociateSharedResolverRule.isConstruct">isConstruct</a></code> | Checks if `x` is a construct. |
---
##### ~~`isConstruct`~~ <a name="isConstruct" id="raindancers-network.dns.AssociateSharedResolverRule.isConstruct"></a>
```typescript
import { dns } from 'raindancers-network'
dns.AssociateSharedResolverRule.isConstruct(x: any)
```
Checks if `x` is a construct.
###### `x`<sup>Required</sup> <a name="x" id="raindancers-network.dns.AssociateSharedResolverRule.isConstruct.parameter.x"></a>
- *Type:* any
Any object.
---
#### Properties <a name="Properties" id="Properties"></a>
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| <code><a href="#raindancers-network.dns.AssociateSharedResolverRule.property.node">node</a></code> | <code>constructs.Node</code> | The tree node. |
---
##### `node`<sup>Required</sup> <a name="node" id="raindancers-network.dns.AssociateSharedResolverRule.property.node"></a>
```typescript
public readonly node: Node;
```
- *Type:* constructs.Node
The tree node.
---
### AwsManagedDNSFirewallRuleGroup <a name="AwsManagedDNSFirewallRuleGroup" id="raindancers-network.dns.AwsManagedDNSFirewallRuleGroup"></a>
#### Initializers <a name="Initializers" id="raindancers-network.dns.AwsManagedDNSFirewallRuleGroup.Initializer"></a>
```typescript
import { dns } from 'raindancers-network'
new dns.AwsManagedDNSFirewallRuleGroup(scope: Construct, id: string)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| <code><a href="#raindancers-network.dns.AwsManagedDNSFirewallRuleGroup.Initializer.parameter.scope">scope</a></code> | <code>constructs.Construct</code> | *No description.* |
| <code><a href="#raindancers-network.dns.AwsManagedDNSFirewallRuleGroup.Initializer.parameter.id">id</a></code> | <code>string</code> | *No description.* |
---
##### `scope`<sup>Required</sup> <a name="scope" id="raindancers-network.dns.AwsManagedDNSFirewallRuleGroup.Initializer.parameter.scope"></a>
- *Type:* constructs.Construct
---
##### `id`<sup>Required</sup> <a name="id" id="raindancers-network.dns.AwsManagedDNSFirewallRuleGroup.Initializer.parameter.id"></a>
- *Type:* string
---
#### Methods <a name="Methods" id="Methods"></a>
| **Name** | **Description** |
| --- | --- |
| <code><a href="#raindancers-network.dns.AwsManagedDNSFirewallRuleGroup.toString">toString</a></code> | Returns a string representation of this construct. |
---
##### `toString` <a name="toString" id="raindancers-network.dns.AwsManagedDNSFirewallRuleGroup.toString"></a>
```typescript
public toString(): string
```
Returns a string representation of this construct.
#### Static Functions <a name="Static Functions" id="Static Functions"></a>
| **Name** | **Description** |
| --- | --- |
| <code><a href="#raindancers-network.dns.AwsManagedDNSFirewallRuleGroup.isConstruct">isConstruct</a></code> | Checks if `x` is a construct. |
---
##### ~~`isConstruct`~~ <a name="isConstruct" id="raindancers-network.dns.AwsManagedDNSFirewallRuleGroup.isConstruct"></a>
```typescript
import { dns } from 'raindancers-network'
dns.AwsManagedDNSFirewallRuleGroup.isConstruct(x: any)
```
Checks if `x` is a construct.
###### `x`<sup>Required</sup> <a name="x" id="raindancers-network.dns.AwsManagedDNSFirewallRuleGroup.isConstruct.parameter.x"></a>
- *Type:* any
Any object.
---
#### Properties <a name="Properties" id="Properties"></a>
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| <code><a href="#raindancers-network.dns.AwsManagedDNSFirewallRuleGroup.property.node">node</a></code> | <code>constructs.Node</code> | The tree node. |
| <code><a href="#raindancers-network.dns.AwsManagedDNSFirewallRuleGroup.property.resolverRuleId">resolverRuleId</a></code> | <code>string</code> | *No description.* |
---
##### `node`<sup>Required</sup> <a name="node" id="raindancers-network.dns.AwsManagedDNSFirewallRuleGroup.property.node"></a>
```typescript
public readonly node: Node;
```
- *Type:* constructs.Node
The tree node.
---
##### `resolverRuleId`<sup>Required</sup> <a name="resolverRuleId" id="raindancers-network.dns.AwsManagedDNSFirewallRuleGroup.property.resolverRuleId"></a>
```typescript
public readonly resolverRuleId: string;
```
- *Type:* string
---
### AwsServiceEndPoints <a name="AwsServiceEndPoints" id="raindancers-network.endpoints.AwsServiceEndPoints"></a>
Provisions a set of AWS Service Endpoints in a VPC.
#### Initializers <a name="Initializers" id="raindancers-network.endpoints.AwsServiceEndPoints.Initializer"></a>
```typescript
import { endpoints } from 'raindancers-network'
new endpoints.AwsServiceEndPoints(scope: Construct, id: string, props: AwsServiceEndPointsProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| <code><a href="#raindancers-network.endpoints.AwsServiceEndPoints.Initializer.parameter.scope">scope</a></code> | <code>constructs.Construct</code> | The scope that this construct is created in. |
| <code><a href="#raindancers-network.endpoints.AwsServiceEndPoints.Initializer.parameter.id">id</a></code> | <code>string</code> | Id for the construct. |
| <code><a href="#raindancers-network.endpoints.AwsServiceEndPoints.Initializer.parameter.props">props</a></code> | <code>raindancers-network.endpoints.AwsServiceEndPointsProps</code> | AWSServiceEndpoints. |
---
##### `scope`<sup>Required</sup> <a name="scope" id="raindancers-network.endpoints.AwsServiceEndPoints.Initializer.parameter.scope"></a>
- *Type:* constructs.Construct
The scope that this construct is created in.
---
##### `id`<sup>Required</sup> <a name="id" id="raindancers-network.endpoints.AwsServiceEndPoints.Initializer.parameter.id"></a>
- *Type:* string
Id for the construct.
---
##### `props`<sup>Required</sup> <a name="props" id="raindancers-network.endpoints.AwsServiceEndPoints.Initializer.parameter.props"></a>
- *Type:* raindancers-network.endpoints.AwsServiceEndPointsProps
AWSServiceEndpoints.
---
#### Methods <a name="Methods" id="Methods"></a>
| **Name** | **Description** |
| --- | --- |
| <code><a href="#raindancers-network.endpoints.AwsServiceEndPoints.toString">toString</a></code> | Returns a string representation of this construct. |
---
##### `toString` <a name="toString" id="raindancers-network.endpoints.AwsServiceEndPoints.toString"></a>
```typescript
public toString(): string
```
Returns a string representation of this construct.
#### Static Functions <a name="Static Functions" id="Static Functions"></a>
| **Name** | **Description** |
| --- | --- |
| <code><a href="#raindancers-network.endpoints.AwsServiceEndPoints.isConstruct">isConstruct</a></code> | Checks if `x` is a construct. |
---
##### ~~`isConstruct`~~ <a name="isConstruct" id="raindancers-network.endpoints.AwsServiceEndPoints.isConstruct"></a>
```typescript
import { endpoints } from 'raindancers-network'
endpoints.AwsServiceEndPoints.isConstruct(x: any)
```
Checks if `x` is a construct.
###### `x`<sup>Required</sup> <a name="x" id="raindancers-network.endpoints.AwsServiceEndPoints.isConstruct.parameter.x"></a>
- *Type:* any
Any object.
---
#### Properties <a name="Properties" id="Properties"></a>
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| <code><a href="#raindancers-network.endpoints.AwsServiceEndPoints.property.node">node</a></code> | <code>constructs.Node</code> | The tree node. |
---
##### `node`<sup>Required</sup> <a name="node" id="raindancers-network.endpoints.AwsServiceEndPoints.property.node"></a>
```typescript
public readonly node: Node;
```
- *Type:* constructs.Node
The tree node.
---
### CentralAccountAssnRole <a name="CentralAccountAssnRole" id="raindancers-network.dns.CentralAccountAssnRole"></a>
#### Initializers <a name="Initializers" id="raindancers-network.dns.CentralAccountAssnRole.Initializer"></a>
```typescript
import { dns } from 'raindancers-network'
new dns.CentralAccountAssnRole(scope: Construct, id: string, props: CentralAccountAssnRoleProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| <code><a href="#raindancers-network.dns.CentralAccountAssnRole.Initializer.parameter.scope">scope</a></code> | <code>constructs.Construct</code> | *No description.* |
| <code><a href="#raindancers-network.dns.CentralAccountAssnRole.Initializer.parameter.id">id</a></code> | <code>string</code> | *No description.* |
| <code><a href="#raindancers-network.dns.CentralAccountAssnRole.Initializer.parameter.props">props</a></code> | <code>raindancers-network.dns.CentralAccountAssnRoleProps</code> | *No description.* |
---
##### `scope`<sup>Required</sup> <a name="scope" id="raindancers-network.dns.CentralAccountAssnRole.Initializer.parameter.scope"></a>
- *Type:* constructs.Construct
---
##### `id`<sup>Required</sup> <a name="id" id="raindancers-network.dns.CentralAccountAssnRole.Initializer.parameter.id"></a>
- *Type:* string
---
##### `props`<sup>Required</sup> <a name="props" id="raindancers-network.dns.CentralAccountAssnRole.Initializer.parameter.props"></a>
- *Type:* raindancers-network.dns.CentralAccountAssnRoleProps
---
#### Methods <a name="Methods" id="Methods"></a>
| **Name** | **Description** |
| --- | --- |
| <code><a href="#raindancers-network.dns.CentralAccountAssnRole.toString">toString</a></code> | Returns a string representation of this construct. |
---
##### `toString` <a name="toString" id="raindancers-network.dns.CentralAccountAssnRole.toString"></a>
```typescript
public toString(): string
```
Returns a string representation of this construct.
#### Static Functions <a name="Static Functions" id="Static Functions"></a>
| **Name** | **Description** |
| --- | --- |
| <code><a href="#raindancers-network.dns.CentralAccountAssnRole.isConstruct">isConstruct</a></code> | Checks if `x` is a construct. |
---
##### ~~`isConstruct`~~ <a name="isConstruct" id="raindancers-network.dns.CentralAccountAssnRole.isConstruct"></a>
```typescript
import { dns } from 'raindancers-network'
dns.CentralAccountAssnRole.isConstruct(x: any)
```
Checks if `x` is a construct.
###### `x`<sup>Required</sup> <a name="x" id="raindancers-network.dns.CentralAccountAssnRole.isConstruct.parameter.x"></a>
- *Type:* any
Any object.
---
#### Properties <a name="Properties" id="Properties"></a>
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| <code><a href="#raindancers-network.dns.CentralAccountAssnRole.property.node">node</a></code> | <code>constructs.Node</code> | The tree node. |
| <code><a href="#raindancers-network.dns.CentralAccountAssnRole.property.assnRole">assnRole</a></code> | <code>aws-cdk-lib.aws_iam.Role</code> | *No description.* |
---
##### `node`<sup>Required</sup> <a name="node" id="raindancers-network.dns.CentralAccountAssnRole.property.node"></a>
```typescript
public readonly node: Node;
```
- *Type:* constructs.Node
The tree node.
---
##### `assnRole`<sup>Required</sup> <a name="assnRole" id="raindancers-network.dns.CentralAccountAssnRole.property.assnRole"></a>
```typescript
public readonly assnRole: Role;
```
- *Type:* aws-cdk-lib.aws_iam.Role
---
### CentralResolverRules <a name="CentralResolverRules" id="raindancers-network.dns.CentralResolverRules"></a>
#### Initializers <a name="Initializers" id="raindancers-network.dns.CentralResolverRules.Initializer"></a>
```typescript
import { dns } from 'raindancers-network'
new dns.CentralResolverRules(scope: Construct, id: string, props: CentralResolverRulesProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| <code><a href="#raindancers-network.dns.CentralResolverRules.Initializer.parameter.scope">scope</a></code> | <code>constructs.Construct</code> | *No description.* |
| <code><a href="#raindancers-network.dns.CentralResolverRules.Initializer.parameter.id">id</a></code> | <code>string</code> | *No description.* |
| <code><a href="#raindancers-network.dns.CentralResolverRules.Initializer.parameter.props">props</a></code> | <code>raindancers-network.dns.CentralResolverRulesProps</code> | *No description.* |
---
##### `scope`<sup>Required</sup> <a name="scope" id="raindancers-network.dns.CentralResolverRules.Initializer.parameter.scope"></a>
- *Type:* constructs.Construct
---
##### `id`<sup>Required</sup> <a name="id" id="raindancers-network.dns.CentralResolverRules.Initializer.parameter.id"></a>
- *Type:* string
---
##### `props`<sup>Required</sup> <a name="props" id="raindancers-network.dns.CentralResolverRules.Initializer.parameter.props"></a>
- *Type:* raindancers-network.dns.CentralResolverRulesProps
---
#### Methods <a name="Methods" id="Methods"></a>
| **Name** | **Description** |
| --- | --- |
| <code><a href="#raindancers-network.dns.CentralResolverRules.toString">toString</a></code> | Returns a string representation of this construct. |
---
##### `toString` <a name="toString" id="raindancers-network.dns.CentralResolverRules.toString"></a>
```typescript
public toString(): string
```
Returns a string representation of this construct.
#### Static Functions <a name="Static Functions" id="Static Functions"></a>
| **Name** | **Description** |
| --- | --- |
| <code><a href="#raindancers-network.dns.CentralResolverRules.isConstruct">isConstruct</a></code> | Checks if `x` is a construct. |
---
##### ~~`isConstruct`~~ <a name="isConstruct" id="raindancers-network.dns.CentralResolverRules.isConstruct"></a>
```typescript
import { dns } from 'raindancers-network'
dns.CentralResolverRules.isConstruct(x: any)
```
Checks if `x` is a construct.
###### `x`<sup>Required</sup> <a name="x" id="raindancers-network.dns.CentralResolverRules.isConstruct.parameter.x"></a>
- *Type:* any
Any object.
---
#### Properties <a name="Properties" id="Properties"></a>
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| <code><a href="#raindancers-network.dns.CentralResolverRules.property.node">node</a></code> | <code>constructs.Node</code> | The tree node. |
---
##### `node`<sup>Required</sup> <a name="node" id="raindancers-network.dns.CentralResolverRules.property.node"></a>
```typescript
public readonly node: Node;
```
- *Type:* constructs.Node
The tree node.
---
### CloudWanTGW <a name="CloudWanTGW" id="raindancers-network.cloudwan.CloudWanTGW"></a>
Create a TransitGateway That is attached to Cloudwan.
#### Initializers <a name="Initializers" id="raindancers-network.cloudwan.CloudWanTGW.Initializer"></a>
```typescript
import { cloudwan } from 'raindancers-network'
new cloudwan.CloudWanTGW(scope: Construct, id: string, props: TGWOnCloudWanProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| <code><a href="#raindancers-network.cloudwan.CloudWanTGW.Initializer.parameter.scope">scope</a></code> | <code>constructs.Construct</code> | scope in which the resource is c. |
| <code><a href="#raindancers-network.cloudwan.CloudWanTGW.Initializer.parameter.id">id</a></code> | <code>string</code> | *No description.* |
| <code><a href="#raindancers-network.cloudwan.CloudWanTGW.Initializer.parameter.props">props</a></code> | <code>raindancers-network.cloudwan.TGWOnCloudWanProps</code> | TGWOnCloudWanProps. |
---
##### `scope`<sup>Required</sup> <a name="scope" id="raindancers-network.cloudwan.CloudWanTGW.Initializer.parameter.scope"></a>
- *Type:* constructs.Construct
scope in which the resource is c.
---
##### `id`<sup>Required</sup> <a name="id" id="raindancers-network.cloudwan.CloudWanTGW.Initializer.parameter.id"></a>
- *Type:* string
---
##### `props`<sup>Required</sup> <a name="props" id="raindancers-network.cloudwan.CloudWanTGW.Initializer.parameter.props"></a>
- *Type:* raindancers-network.cloudwan.TGWOnCloudWanProps
TGWOnCloudWanProps.
---
#### Methods <a name="Methods" id="Methods"></a>
| **Name** | **Description** |
| --- | --- |
| <code><a href="#raindancers-network.cloudwan.CloudWanTGW.toString">toString</a></code> | Returns a string representation of this construct. |
| <code><a href="#raindancers-network.cloudwan.CloudWanTGW.addDXGateway">addDXGateway</a></code> | provision a DX Gateway and attach it to the transit gateway. |
| <code><a href="#raindancers-network.cloudwan.CloudWanTGW.adds2sVPN">adds2sVPN</a></code> | Creates a Site To Site IPSec VPN between the Transit Gateway and Customer Gateway, using a defined set of VPn Properties. |
| <code><a href="#raindancers-network.cloudwan.CloudWanTGW.createDirectConnectGatewayAssociation">createDirectConnectGatewayAssociation</a></code> | *No description.* |
---
##### `toString` <a name="toString" id="raindancers-network.cloudwan.CloudWanTGW.toString"></a>
```typescript
public toString(): string
```
Returns a string representation of this construct.
##### `addDXGateway` <a name="addDXGateway" id="raindancers-network.cloudwan.CloudWanTGW.addDXGateway"></a>
```typescript
public addDXGateway(dxgatewayname: string, dxgatewayASN: number): string
```
provision a DX Gateway and attach it to the transit gateway.
###### `dxgatewayname`<sup>Required</sup> <a name="dxgatewayname" id="raindancers-network.cloudwan.CloudWanTGW.addDXGateway.parameter.dxgatewayname"></a>
- *Type:* string
The name of the dxgateway.
---
###### `dxgatewayASN`<sup>Required</sup> <a name="dxgatewayASN" id="raindancers-network.cloudwan.CloudWanTGW.addDXGateway.parameter.dxgatewayASN"></a>
- *Type:* number
An ASN for the Dxgateway.
---
##### `adds2sVPN` <a name="adds2sVPN" id="raindancers-network.cloudwan.CloudWanTGW.adds2sVPN"></a>
```typescript
public adds2sVPN(name: string, vpnprops: VpnProps): void
```
Creates a Site To Site IPSec VPN between the Transit Gateway and Customer Gateway, using a defined set of VPn Properties.
###### `name`<sup>Required</sup> <a name="name" id="raindancers-network.cloudwan.CloudWanTGW.adds2sVPN.parameter.name"></a>
- *Type:* string
A name to identify the vpn.
---
###### `vpnprops`<sup>Required</sup> <a name="vpnprops" id="raindancers-network.cloudwan.CloudWanTGW.adds2sVPN.parameter.vpnprops"></a>
- *Type:* raindancers-network.cloudwan.VpnProps
the vpn properties.
---
##### `createDirectConnectGatewayAssociation` <a name="createDirectConnectGatewayAssociation" id="raindancers-network.cloudwan.CloudWanTGW.createDirectConnectGatewayAssociation"></a>
```typescript
public createDirectConnectGatewayAssociation(dxgatewayId: string): string
```
###### `dxgatewayId`<sup>Required</sup> <a name="dxgatewayId" id="raindancers-network.cloudwan.CloudWanTGW.createDirectConnectGatewayAssociation.parameter.dxgatewayId"></a>
- *Type:* string
Id of a DX gateway that.
---
#### Static Functions <a name="Static Functions" id="Static Functions"></a>
| **Name** | **Description** |
| --- | --- |
| <code><a href="#raindancers-network.cloudwan.CloudWanTGW.isConstruct">isConstruct</a></code> | Checks if `x` is a construct. |
---
##### ~~`isConstruct`~~ <a name="isConstruct" id="raindancers-network.cloudwan.CloudWanTGW.isConstruct"></a>
```typescript
import { cloudwan } from 'raindancers-network'
cloudwan.CloudWanTGW.isConstruct(x: any)
```
Checks if `x` is a construct.
###### `x`<sup>Required</sup> <a name="x" id="raindancers-network.cloudwan.CloudWanTGW.isConstruct.parameter.x"></a>
- *Type:* any
Any object.
---
#### Properties <a name="Properties" id="Properties"></a>
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| <code><a href="#raindancers-network.cloudwan.CloudWanTGW.property.node">node</a></code> | <code>constructs.Node</code> | The tree node. |
| <code><a href="#raindancers-network.cloudwan.CloudWanTGW.property.cloudwanTgAttachmentId">cloudwanTgAttachmentId</a></code> | <code>string</code> | the AttachmentId between the Transit Gateway and the cloudwan. |
| <code><a href="#raindancers-network.cloudwan.CloudWanTGW.property.transitGateway">transitGateway</a></code> | <code>aws-cdk-lib.aws_ec2.CfnTransitGateway</code> | The created Transit Gateway. |
| <code><a href="#raindancers-network.cloudwan.CloudWanTGW.property.tgcidr">tgcidr</a></code> | <code>string[]</code> | The Cidr Ranges assigned to the transit Gateway. |
| <code><a href="#raindancers-network.cloudwan.CloudWanTGW.property.tgDXattachmentId">tgDXattachmentId</a></code> | <code>string</code> | the AttachmentId between the Transit Gateway and DX ( if any ). |
---
##### `node`<sup>Required</sup> <a name="node" id="raindancers-network.cloudwan.CloudWanTGW.property.node"></a>
```typescript
public readonly node: Node;
```
- *Type:* constructs.Node
The tree node.
---
##### `cloudwanTgAttachmentId`<sup>Required</sup> <a name="cloudwanTgAttachmentId" id="raindancers-network.cloudwan.CloudWanTGW.property.cloudwanTgAttachmentId"></a>
```typescript
public readonly cloudwanTgAttachmentId: string;
```
- *Type:* string
the AttachmentId between the Transit Gateway and the cloudwan.
---
##### `transitGateway`<sup>Required</sup> <a name="transitGateway" id="raindancers-network.cloudwan.CloudWanTGW.property.transitGateway"></a>
```typescript
public readonly transitGateway: CfnTransitGateway;
```
- *Type:* aws-cdk-lib.aws_ec2.CfnTransitGateway
The created Transit Gateway.
---
##### `tgcidr`<sup>Optional</sup> <a name="tgcidr" id="raindancers-network.cloudwan.CloudWanTGW.property.tgcidr"></a>
```typescript
public readonly tgcidr: string[];
```
- *Type:* string[]
The Cidr Ranges assigned to the transit Gateway.
---
##### `tgDXattachmentId`<sup>Optional</sup> <a name="tgDXattachmentId" id="raindancers-network.cloudwan.CloudWanTGW.property.tgDXattachmentId"></a>
```typescript
public readonly tgDXattachmentId: string;
```
- *Type:* string
the AttachmentId between the Transit Gateway and DX ( if any ).
---
### ConditionalForwarder <a name="ConditionalForwarder" id="raindancers-network.dns.ConditionalForwarder"></a>
#### Initializers <a name="Initializers" id="raindancers-network.dns.ConditionalForwarder.Initializer"></a>
```typescript
import { dns } from 'raindancers-network'
new dns.ConditionalForwarder(scope: Construct, id: string, props: ConditionalForwarderProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| <code><a href="#raindancers-network.dns.ConditionalForwarder.Initializer.parameter.scope">scope</a></code> | <code>constructs.Construct</code> | *No description.* |
| <code><a href="#raindancers-network.dns.ConditionalForwarder.Initializer.parameter.id">id</a></code> | <code>string</code> | *No description.* |
| <code><a href="#raindancers-network.dns.ConditionalForwarder.Initializer.parameter.props">props</a></code> | <code>raindancers-network.dns.ConditionalForwarderProps</code> | *No description.* |
---
##### `scope`<sup>Required</sup> <a name="scope" id="raindancers-network.dns.ConditionalForwarder.Initializer.parameter.scope"></a>
- *Type:* constructs.Construct
---
##### `id`<sup>Required</sup> <a name="id" id="raindancers-network.dns.ConditionalForwarder.Initializer.parameter.id"></a>
- *Type:* string
---
##### `props`<sup>Required</sup> <a name="props" id="raindancers-network.dns.ConditionalForwarder.Initializer.parameter.props"></a>
- *Type:* raindancers-network.dns.ConditionalForwarderProps
---
#### Methods <a name="Methods" id="Methods"></a>
| **Name** | **Description** |
| --- | --- |
| <code><a href="#raindancers-network.dns.ConditionalForwarder.toString">toString</a></code> | Returns a string representation of this construct. |
---
##### `toString` <a name="toString" id="raindancers-network.dns.ConditionalForwarder.toString"></a>
```typescript
public toString(): string
```
Returns a string representation of this construct.
#### Static Functions <a name="Static Functions" id="Static Functions"></a>
| **Name** | **Description** |
| --- | --- |
| <code><a href="#raindancers-network.dns.ConditionalForwarder.isConstruct">isConstruct</a></code> | Checks if `x` is a construct. |
---
##### ~~`isConstruct`~~ <a name="isConstruct" id="raindancers-network.dns.ConditionalForwarder.isConstruct"></a>
```typescript
import { dns } from 'raindancers-network'
dns.ConditionalForwarder.isConstruct(x: any)
```
Checks if `x` is a construct.
###### `x`<sup>Required</sup> <a name="x" id="raindancers-network.dns.ConditionalForwarder.isConstruct.parameter.x"></a>
- *Type:* any
Any object.
---
#### Properties <a name="Properties" id="Properties"></a>
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| <code><a href="#raindancers-network.dns.ConditionalForwarder.property.node">node</a></code> | <code>constructs.Node</code> | The tree node. |
---
##### `node`<sup>Required</sup> <a name="node" id="raindancers-network.dns.ConditionalForwarder.property.node"></a>
```typescript
public readonly node: Node;
```
- *Type:* constructs.Node
The tree node.
---
### CoreNetwork <a name="CoreNetwork" id="raindancers-network.cloudwan.CoreNetwork"></a>
Create a CoreNework for a Cloudwan.
#### Initializers <a name="Initializers" id="raindancers-network.cloudwan.CoreNetwork.Initializer"></a>
```typescript
import { cloudwan } from 'raindancers-network'
new cloudwan.CoreNetwork(scope: Construct, id: string, props: CoreNetworkProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| <code><a href="#raindancers-network.cloudwan.CoreNetwork.Initializer.parameter.scope">scope</a></code> | <code>constructs.Construct</code> | *No description.* |
| <code><a href="#raindancers-network.cloudwan.CoreNetwork.Initializer.parameter.id">id</a></code> | <code>string</code> | *No description.* |
| <code><a href="#raindancers-network.cloudwan.CoreNetwork.Initializer.parameter.props">props</a></code> | <code>raindancers-network.cloudwan.CoreNetworkProps</code> | *No description.* |
---
##### `scope`<sup>Required</sup> <a name="scope" id="raindancers-network.cloudwan.CoreNetwork.Initializer.parameter.scope"></a>
- *Type:* constructs.Construct
---
##### `id`<sup>Required</sup> <a name="id" id="raindancers-network.cloudwan.CoreNetwork.Initializer.parameter.id"></a>
- *Type:* string
---
##### `props`<sup>Required</sup> <a name="props" id="raindancers-network.cloudwan.CoreNetwork.Initializer.parameter.props"></a>
- *Type:* raindancers-network.cloudwan.CoreNetworkProps
---
#### Methods <a name="Methods" id="Methods"></a>
| **Name** | **Description** |
| --- | --- |
| <code><a href="#raindancers-network.cloudwan.CoreNetwork.toString">toString</a></code> | Returns a string representation of this construct. |
| <code><a href="#raindancers-network.cloudwan.CoreNetwork.addSegment">addSegment</a></code> | Add a segment to the core network. |
| <code><a href="#raindancers-network.cloudwan.CoreNetwork.share">share</a></code> | Create a CoreNetwork Sharing. |
| <code><a href="#raindancers-network.cloudwan.CoreNetwork.updatePolicy">updatePolicy</a></code> | Update the corewan policy after actions, segments are added. |
---
##### `toString` <a name="toString" id="raindancers-network.cloudwan.CoreNetwork.toString"></a>
```typescript
public toString(): string
```
Returns a string representation of this construct.
##### `addSegment` <a name="addSegment" id="raindancers-network.cloudwan.CoreNetwork.addSegment"></a>
```typescript
public addSegment(props: Segment): CoreNetworkSegment
```
Add a segment to the core network.
###### `props`<sup>Required</sup> <a name="props" id="raindancers-network.cloudwan.CoreNetwork.addSegment.parameter.props"></a>
- *Type:* raindancers-network.cloudwan.Segment
properties of the segment.
---
##### `share` <a name="share" id="raindancers-network.cloudwan.CoreNetwork.share"></a>
```typescript
public share(props: CoreNetworkShare): void
```
Create a CoreNetwork Sharing.
###### `props`<sup>Required</sup> <a name="props" id="raindancers-network.cloudwan.CoreNetwork.share.parameter.props"></a>
- *Type:* raindancers-network.cloudwan.CoreNetworkShare
Share properties.
---
##### `updatePolicy` <a name="updatePolicy" id="raindancers-network.cloudwan.CoreNetwork.updatePolicy"></a>
```typescript
public updatePolicy(): void
```
Update the corewan policy after actions, segments are added.
#### Static Functions <a name="Static Functions" id="Static Functions"></a>
| **Name** | **Description** |
| --- | --- |
| <code><a href="#raindancers-network.cloudwan.CoreNetwork.isConstruct">isConstruct</a></code> | Checks if `x` is a construct. |
---
##### ~~`isConstruct`~~ <a name="isConstruct" id="raindancers-network.cloudwan.CoreNetwork.isConstruct"></a>
```typescript
import { cloudwan } from 'raindancers-network'
cloudwan.CoreNetwork.isConstruct(x: any)
```
Checks if `x` is a construct.
###### `x`<sup>Required</sup> <a name="x" id="raindancers-network.cloudwan.CoreNetwork.isConstruct.parameter.x"></a>
- *Type:* any
Any object.
---
#### Properties <a name="Properties" id="Properties"></a>
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| <code><a href="#raindancers-network.cloudwan.CoreNetwork.property.node">node</a></code> | <code>constructs.Node</code> | The tree node. |
| <code><a href="#raindancers-network.cloudwan.CoreNetwork.property.cfnCoreNetwork">cfnCoreNetwork</a></code> | <code>aws-cdk-lib.aws_networkmanager.CfnCoreNetwork</code> | The corenetwork object. |
| <code><a href="#raindancers-network.cloudwan.CoreNetwork.property.coreName">coreName</a></code> | <code>string</code> | *No description.* |
| <code><a href="#raindancers-network.cloudwan.CoreNetwork.property.policyTable">policyTable</a></code> | <code>aws-cdk-lib.aws_dynamodb.Table</code> | THe dynamo table holding the policy. |
| <code><a href="#raindancers-network.cloudwan.CoreNetwork.property.policyTableName">policyTableName</a></code> | <code>string</code> | Name of the Dynamo Table holding the policy. |
| <code><a href="#raindancers-network.cloudwan.CoreNetwork.property.policyTableServiceToken">policyTableServiceToken</a></code> | <code>string</code> | The policyTable Lamba's Service Token. |
| <code><a href="#raindancers-network.cloudwan.CoreNetwork.property.updateProviderToken">updateProviderToken</a></code> | <code>string</code> | *No description.* |
---
##### `node`<sup>Required</sup> <a name="node" id="raindancers-network.cloudwan.CoreNetwork.property.node"></a>
```typescript
public readonly node: Node;
```
- *Type:* constructs.Node
The tree node.
---
##### `cfnCoreNetwork`<sup>Required</sup> <a name="cfnCoreNetwork" id="raindancers-network.cloudwan.CoreNetwork.property.cfnCoreNetwork"></a>
```typescript
public readonly cfnCoreNetwork: CfnCoreNetwork;
```
- *Type:* aws-cdk-lib.aws_networkmanager.CfnCoreNetwork
The corenetwork object.
---
##### `coreName`<sup>Required</sup> <a name="coreName" id="raindancers-network.cloudwan.CoreNetwork.property.coreName"></a>
```typescript
public readonly coreName: string;
```
- *Type:* string
---
##### `policyTable`<sup>Required</sup> <a name="policyTable" id="raindancers-network.cloudwan.CoreNetwork.property.policyTable"></a>
```typescript
public readonly policyTable: Table;
```
- *Type:* aws-cdk-lib.aws_dynamodb.Table
THe dynamo table holding the policy.
---
##### `policyTableName`<sup>Required</sup> <a name="policyTableName" id="raindancers-network.cloudwan.CoreNetwork.property.policyTableName"></a>
```typescript
public readonly policyTableName: string;
```
- *Type:* string
Name of the Dynamo Table holding the policy.
---
##### `policyTableServiceToken`<sup>Required</sup> <a name="policyTableServiceToken" id="raindancers-network.cloudwan.CoreNetwork.property.policyTableServiceToken"></a>
```typescript
public readonly policyTableServiceToken: string;
```
- *Type:* string
The policyTable Lamba's Service Token.
---
##### `updateProviderToken`<sup>Required</sup> <a name="updateProviderToken" id="raindancers-network.cloudwan.CoreNetwork.property.updateProviderToken"></a>
```typescript
public readonly updateProviderToken: string;
```
- *Type:* string
---
### CoreNetworkSegment <a name="CoreNetworkSegment" id="raindancers-network.cloudwan.CoreNetworkSegment"></a>
Create a Network Segment in a core network.
#### Initializers <a name="Initializers" id="raindancers-network.cloudwan.CoreNetworkSegment.Initializer"></a>
```typescript
import { cloudwan } from 'raindancers-network'
new cloudwan.CoreNetworkSegment(scope: Construct, id: string, props: ICoreNetworkSegmentProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| <code><a href="#raindancers-network.cloudwan.CoreNetworkSegment.Initializer.parameter.scope">scope</a></code> | <code>constructs.Construct</code> | *No description.* |
| <code><a href="#raindancers-network.cloudwan.CoreNetworkSegment.Initializer.parameter.id">id</a></code> | <code>string</code> | *No description.* |
| <code><a href="#raindancers-network.cloudwan.CoreNetworkSegment.Initializer.parameter.props">props</a></code> | <code>raindancers-network.cloudwan.ICoreNetworkSegmentProps</code> | *No description.* |
---
##### `scope`<sup>Required</sup> <a name="scope" id="raindancers-network.cloudwan.CoreNetworkSegment.Initializer.parameter.scope"></a>
- *Type:* constructs.Construct
---
##### `id`<sup>Required</sup> <a name="id" id="raindancers-network.cloudwan.CoreNetworkSegment.Initializer.parameter.id"></a>
- *Type:* string
---
##### `props`<sup>Required</sup> <a name="props" id="raindancers-network.cloudwan.CoreNetworkSegment.Initializer.parameter.props"></a>
- *Type:* raindancers-network.cloudwan.ICoreNetworkSegmentProps
---
#### Methods <a name="Methods" id="Methods"></a>
| **Name** | **Description** |
| --- | --- |
| <code><a href="#raindancers-network.cloudwan.CoreNetworkSegment.toString">toString</a></code> | Returns a string representation of this construct. |
| <code><a href="#raindancers-network.cloudwan.CoreNetworkSegment.addAttachmentPolicy">addAttachmentPolicy</a></code> | Add an AttachmentPolicy to a segment. |
| <code><a href="#raindancers-network.cloudwan.CoreNetworkSegment.addSegmentAction">addSegmentAction</a></code> | Add an Action to the Segment, ( Share or Route ). |
| <code><a href="#raindancers-network.cloudwan.CoreNetworkSegment.addSimpleAttachmentPolicy">addSimpleAttachmentPolicy</a></code> | *No description.* |
| <code><a href="#raindancers-network.cloudwan.CoreNetworkSegment.addSimpleShareAction">addSimpleShareAction</a></code> | *No description.* |
---
##### `toString` <a name="toString" id="raindancers-network.cloudwan.CoreNetworkSegment.toString"></a>
```typescript
public toString(): string
```
Returns a string representation of this construct.
##### `addAttachmentPolicy` <a name="addAttachmentPolicy" id="raindancers-network.cloudwan.CoreNetworkSegment.addAttachmentPolicy"></a>
```typescript
public addAttachmentPolicy(props: AttachmentPolicy): void
```
Add an AttachmentPolicy to a segment.
###### `props`<sup>Required</sup> <a name="props" id="raindancers-network.cloudwan.CoreNetworkSegment.addAttachmentPolicy.parameter.props"></a>
- *Type:* raindancers-network.cloudwan.AttachmentPolicy
An attachment policy.
---
##### `addSegmentAction` <a name="addSegmentAction" id="raindancers-network.cloudwan.CoreNetworkSegment.addSegmentAction"></a>
```typescript
public addSegmentAction(props: SegmentAction): void
```
Add an Action to the Segment, ( Share or Route ).
###### `props`<sup>Required</sup> <a name="props" id="raindancers-network.cloudwan.CoreNetworkSegment.addSegmentAction.parameter.props"></a>
- *Type:* raindancers-network.cloudwan.SegmentAction
segment action.
---
##### `addSimpleAttachmentPolicy` <a name="addSimpleAttachmentPolicy" id="raindancers-network.cloudwan.CoreNetworkSegment.addSimpleAttachmentPolicy"></a>
```typescript
public addSimpleAttachmentPolicy(props: SimpleAttachmentPolicyProps): void
```
###### `props`<sup>Required</sup> <a name="props" id="raindancers-network.cloudwan.CoreNetworkSegment.addSimpleAttachmentPolicy.parameter.props"></a>
- *Type:* raindancers-network.cloudwan.SimpleAttachmentPolicyProps
---
##### `addSimpleShareAction` <a name="addSimpleShareAction" id="raindancers-network.cloudwan.CoreNetworkSegment.addSimpleShareAction"></a>
```typescript
public addSimpleShareAction(props: SimpleShareActionProps): void
```
###### `props`<sup>Required</sup> <a name="props" id="raindancers-network.cloudwan.CoreNetworkSegment.addSimpleShareAction.parameter.props"></a>
- *Type:* raindancers-network.cloudwan.SimpleShareActionProps
---
#### Static Functions <a name="Static Functions" id="Static Functions"></a>
| **Name** | **Description** |
| --- | --- |
| <code><a href="#raindancers-network.cloudwan.CoreNetworkSegment.isConstruct">isConstruct</a></code> | Checks if `x` is a construct. |
---
##### ~~`isConstruct`~~ <a name="isConstruct" id="raindancers-network.cloudwan.CoreNetworkSegment.isConstruct"></a>
```typescript
import { cloudwan } from 'raindancers-network'
cloudwan.CoreNetworkSegment.isConstruct(x: any)
```
Checks if `x` is a construct.
###### `x`<sup>Required</sup> <a name="x" id="raindancers-network.cloudwan.CoreNetworkSegment.isConstruct.parameter.x"></a>
- *Type:* any
Any object.
---
#### Properties <a name="Properties" id="Properties"></a>
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| <code><a href="#raindancers-network.cloudwan.CoreNetworkSegment.property.node">node</a></code> | <code>constructs.Node</code> | The tree node. |
| <code><a href="#raindancers-network.cloudwan.CoreNetworkSegment.property.policyTableServiceToken">policyTableServiceToken</a></code> | <code>string</code> | Service token for. |
| <code><a href="#raindancers-network.cloudwan.CoreNetworkSegment.property.segmentName">segmentName</a></code> | <code>string</code> | the name for the segment. |
---
##### `node`<sup>Required</sup> <a name="node" id="raindancers-network.cloudwan.CoreNetworkSegment.property.node"></a>
```typescript
public readonly node: Node;
```
- *Type:* constructs.Node
The tree node.
---
##### `policyTableServiceToken`<sup>Required</sup> <a name="policyTableServiceToken" id="raindancers-network.cloudwan.CoreNetworkSegment.property.policyTableServiceToken"></a>
```typescript
public readonly policyTableServiceToken: string;
```
- *Type:* string
Service token for.
---
##### `segmentName`<sup>Required</sup> <a name="segmentName" id="raindancers-network.cloudwan.CoreNetworkSegment.property.segmentName"></a>
```typescript
public readonly segmentName: string;
```
- *Type:* string
the name for the segment.
---
### Crawler <a name="Crawler" id="raindancers-network.glue.Crawler"></a>
#### Initializers <a name="Initializers" id="raindancers-network.glue.Crawler.Initializer"></a>
```typescript
import { glue } from 'raindancers-network'
new glue.Crawler(scope: Construct, id: string, props: CrawlerProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| <code><a href="#raindancers-network.glue.Crawler.Initializer.parameter.scope">scope</a></code> | <code>constructs.Construct</code> | *No description.* |
| <code><a href="#raindancers-network.glue.Crawler.Initializer.parameter.id">id</a></code> | <code>string</code> | *No description.* |
| <code><a href="#raindancers-network.glue.Crawler.Initializer.parameter.props">props</a></code> | <code>raindancers-network.glue.CrawlerProps</code> | *No description.* |
---
##### `scope`<sup>Required</sup> <a name="scope" id="raindancers-network.glue.Crawler.Initializer.parameter.scope"></a>
- *Type:* constructs.Construct
---
##### `id`<sup>Required</sup> <a name="id" id="raindancers-network.glue.Crawler.Initializer.parameter.id"></a>
- *Type:* string
---
##### `props`<sup>Required</sup> <a name="props" id="raindancers-network.glue.Crawler.Initializer.parameter.props"></a>
- *Type:* raindancers-network.glue.CrawlerProps
---
#### Methods <a name="Methods" id="Methods"></a>
| **Name** | **Description** |
| --- | --- |
| <code><a href="#raindancers-network.