or run

npx @tessl/cli init
Log in

Version

Tile

Overview

Evals

Files

docs

compute.mdcore.mddatabase.mddeveloper-tools.mdindex.mdintegration.mdmonitoring.mdnetworking.mdsecurity.mdstorage.mdtesting.md
tile.json

networking.mddocs/

Networking & Content Delivery

AWS networking services provide connectivity, load balancing, content distribution, and API management capabilities for building scalable web applications and distributed systems.

Capabilities

CloudFront Content Delivery Network

Global content delivery network (CDN) service that accelerates delivery of websites, APIs, video content, and other web assets.

/**
 * CloudFront distribution for content delivery
 */
class Distribution extends Resource implements IDistribution {
  constructor(scope: Construct, id: string, props: DistributionProps);
  
  /**
   * Import an existing distribution by ID
   */
  static fromDistributionAttributes(scope: Construct, id: string, attrs: DistributionAttributes): IDistribution;
  
  readonly distributionId: string;
  readonly distributionDomainName: string;
  readonly domainName: string;
}

Application Load Balancer

Elastic Load Balancing automatically distributes incoming application traffic across multiple targets.

/**
 * Application Load Balancer for HTTP/HTTPS traffic
 */
class ApplicationLoadBalancer extends BaseLoadBalancer implements IApplicationLoadBalancer {
  constructor(scope: Construct, id: string, props: ApplicationLoadBalancerProps);
  
  /**
   * Import an existing load balancer
   */
  static fromApplicationLoadBalancerAttributes(scope: Construct, id: string, attrs: ApplicationLoadBalancerAttributes): IApplicationLoadBalancer;
  
  /**
   * Add a listener to this load balancer
   */
  addListener(id: string, props: BaseApplicationListenerProps): ApplicationListener;
  
  /**
   * Add a redirect response rule to the load balancer
   */
  addRedirect(props?: ApplicationLoadBalancerRedirectConfig): ApplicationListener;
  
  readonly loadBalancerArn: string;
  readonly loadBalancerCanonicalHostedZoneId: string;
  readonly loadBalancerDnsName: string;
  readonly loadBalancerFullName: string;
  readonly loadBalancerName: string;
  readonly loadBalancerSecurityGroups: string[];
  readonly ipAddressType: IpAddressType;
  readonly vpc: IVpc;
}

API Gateway

Fully managed service for creating, publishing, maintaining, monitoring, and securing REST, HTTP, and WebSocket APIs.

/**
 * REST API for API Gateway v1
 */
class RestApi extends Resource implements IRestApi {
  constructor(scope: Construct, id: string, props?: RestApiProps);
  
  /**
   * Import an existing REST API by ID
   */
  static fromRestApiId(scope: Construct, id: string, restApiId: string): IRestApi;
  
  /**
   * Import an existing REST API by attributes
   */
  static fromRestApiAttributes(scope: Construct, id: string, attrs: RestApiAttributes): IRestApi;
  
  readonly restApiId: string;
  readonly restApiName: string;
  readonly restApiRootResourceId: string;
  readonly root: IResource;
  readonly deploymentStage: Stage;
  readonly domainName?: DomainName;
}

/**
 * HTTP API for API Gateway v2
 */
class HttpApi extends Resource implements IHttpApi {
  constructor(scope: Construct, id: string, props?: HttpApiProps);
  
  /**
   * Import an existing HTTP API by ID
   */
  static fromHttpApiAttributes(scope: Construct, id: string, attrs: HttpApiAttributes): IHttpApi;
  
  /**
   * Add a route to the HTTP API
   */
  addRoutes(options: AddRoutesOptions): HttpRoute[];
  
  readonly apiId: string;
  readonly apiEndpoint: string;
  readonly httpApiId: string;
  readonly httpApiName?: string;
}

Types

interface DistributionProps {
  readonly defaultBehavior: BehaviorOptions;
  readonly additionalBehaviors?: { [pathPattern: string]: BehaviorOptions };
  readonly certificate?: ICertificate;
  readonly comment?: string;
  readonly defaultRootObject?: string;
  readonly domainNames?: string[];
  readonly enabled?: boolean;
  readonly enableIpv6?: boolean;
  readonly enableLogging?: boolean;
  readonly errorResponses?: ErrorResponse[];
  readonly geoRestriction?: GeoRestriction;
  readonly httpVersion?: HttpVersion;
  readonly logBucket?: IBucket;
  readonly logFilePrefix?: string;
  readonly logIncludesCookies?: boolean;
  readonly minimumProtocolVersion?: SecurityPolicyProtocol;
  readonly priceClass?: PriceClass;
  readonly webAclId?: string;
}

interface ApplicationLoadBalancerProps extends BaseLoadBalancerProps {
  readonly ipAddressType?: IpAddressType;
  readonly securityGroup?: ISecurityGroup;
}

interface RestApiProps {
  readonly apiKeySourceType?: ApiKeySourceType;
  readonly binaryMediaTypes?: string[];
  readonly cloneFrom?: IRestApi;
  readonly cloudWatchRole?: boolean;
  readonly cloudWatchRoleRemovalPolicy?: RemovalPolicy;
  readonly deploy?: boolean;
  readonly deployOptions?: StageOptions;
  readonly description?: string;
  readonly disableExecuteApiEndpoint?: boolean;
  readonly domainName?: DomainNameOptions;
  readonly endpointConfiguration?: EndpointConfiguration;
  readonly endpointTypes?: EndpointType[];
  readonly failOnWarnings?: boolean;
  readonly parameters?: { [key: string]: string };
  readonly policy?: PolicyDocument;
  readonly restApiName?: string;
  readonly retainDeployments?: boolean;
}

interface HttpApiProps {
  readonly apiName?: string;
  readonly corsPreflight?: CorsPreflightOptions;
  readonly createDefaultStage?: boolean;
  readonly defaultAuthorizer?: IHttpRouteAuthorizer;
  readonly defaultDomainMapping?: DomainMappingOptions;
  readonly defaultIntegration?: HttpRouteIntegration;
  readonly description?: string;
  readonly disableExecuteApiEndpoint?: boolean;
  readonly routeSelectionExpression?: string;
}