UNPKG

aws-cdk-lib

Version:

Version 2 of the AWS Cloud Development Kit library

565 lines (564 loc) 25.6 kB
import { Construct } from 'constructs'; import { Connections, IConnectable } from './connections'; import { ISecurityGroup } from './security-group'; import { IVpc, SubnetSelection } from './vpc'; import * as iam from '../../aws-iam'; import { IResource, Resource } from '../../core'; /** * A VPC endpoint. */ export interface IVpcEndpoint extends IResource { /** * The VPC endpoint identifier. * @attribute */ readonly vpcEndpointId: string; } export declare abstract class VpcEndpoint extends Resource implements IVpcEndpoint { abstract readonly vpcEndpointId: string; protected policyDocument?: iam.PolicyDocument; /** * Adds a statement to the policy document of the VPC endpoint. The statement * must have a Principal. * * Not all interface VPC endpoints support policy. For more information * see https://docs.aws.amazon.com/vpc/latest/userguide/vpce-interface.html * * @param statement the IAM statement to add */ addToPolicy(statement: iam.PolicyStatement): void; } /** * A gateway VPC endpoint. */ export interface IGatewayVpcEndpoint extends IVpcEndpoint { } /** * The type of VPC endpoint. */ export declare enum VpcEndpointType { /** * Interface * * An interface endpoint is an elastic network interface with a private IP * address that serves as an entry point for traffic destined to a supported * service. */ INTERFACE = "Interface", /** * Gateway * * A gateway endpoint is a gateway that is a target for a specified route in * your route table, used for traffic destined to a supported AWS service. */ GATEWAY = "Gateway" } /** * A service for a gateway VPC endpoint. */ export interface IGatewayVpcEndpointService { /** * The name of the service. */ readonly name: string; } /** * An AWS service for a gateway VPC endpoint. */ export declare class GatewayVpcEndpointAwsService implements IGatewayVpcEndpointService { static readonly DYNAMODB: GatewayVpcEndpointAwsService; static readonly S3: GatewayVpcEndpointAwsService; /** * The name of the service. */ readonly name: string; constructor(name: string, prefix?: string); } /** * Options to add a gateway endpoint to a VPC. */ export interface GatewayVpcEndpointOptions { /** * The service to use for this gateway VPC endpoint. */ readonly service: IGatewayVpcEndpointService; /** * Where to add endpoint routing. * * By default, this endpoint will be routable from all subnets in the VPC. * Specify a list of subnet selection objects here to be more specific. * * @default - All subnets in the VPC * @example * * declare const vpc: ec2.Vpc; * * vpc.addGatewayEndpoint('DynamoDbEndpoint', { * service: ec2.GatewayVpcEndpointAwsService.DYNAMODB, * // Add only to ISOLATED subnets * subnets: [ * { subnetType: ec2.SubnetType.PRIVATE_ISOLATED } * ] * }); * * */ readonly subnets?: SubnetSelection[]; } /** * Construction properties for a GatewayVpcEndpoint. */ export interface GatewayVpcEndpointProps extends GatewayVpcEndpointOptions { /** * The VPC network in which the gateway endpoint will be used. */ readonly vpc: IVpc; } /** * A gateway VPC endpoint. * @resource AWS::EC2::VPCEndpoint */ export declare class GatewayVpcEndpoint extends VpcEndpoint implements IGatewayVpcEndpoint { static fromGatewayVpcEndpointId(scope: Construct, id: string, gatewayVpcEndpointId: string): IGatewayVpcEndpoint; /** * The gateway VPC endpoint identifier. */ readonly vpcEndpointId: string; /** * The date and time the gateway VPC endpoint was created. * @attribute */ readonly vpcEndpointCreationTimestamp: string; /** * @attribute */ readonly vpcEndpointNetworkInterfaceIds: string[]; /** * @attribute */ readonly vpcEndpointDnsEntries: string[]; constructor(scope: Construct, id: string, props: GatewayVpcEndpointProps); } /** * A service for an interface VPC endpoint. */ export interface IInterfaceVpcEndpointService { /** * The name of the service. */ readonly name: string; /** * The port of the service. */ readonly port: number; /** * Whether Private DNS is supported by default. */ readonly privateDnsDefault?: boolean; } /** * A custom-hosted service for an interface VPC endpoint. */ export declare class InterfaceVpcEndpointService implements IInterfaceVpcEndpointService { /** * The name of the service. */ readonly name: string; /** * The port of the service. */ readonly port: number; /** * Whether Private DNS is supported by default. */ readonly privateDnsDefault?: boolean; constructor(name: string, port?: number); } /** * An AWS service for an interface VPC endpoint. */ export declare class InterfaceVpcEndpointAwsService implements IInterfaceVpcEndpointService { static readonly ACCESS_ANALYZER: InterfaceVpcEndpointAwsService; static readonly ACCOUNT_MANAGEMENT: InterfaceVpcEndpointAwsService; static readonly AIRFLOW_API: InterfaceVpcEndpointAwsService; static readonly AIRFLOW_ENV: InterfaceVpcEndpointAwsService; static readonly AIRFLOW_OPS: InterfaceVpcEndpointAwsService; static readonly APIGATEWAY: InterfaceVpcEndpointAwsService; static readonly APP_MESH: InterfaceVpcEndpointAwsService; static readonly APP_RUNNER: InterfaceVpcEndpointAwsService; static readonly APP_RUNNER_REQUESTS: InterfaceVpcEndpointAwsService; static readonly APP_SYNC: InterfaceVpcEndpointAwsService; static readonly APPLICATION_AUTOSCALING: InterfaceVpcEndpointAwsService; static readonly APPLICATION_MIGRATION_SERVICE: InterfaceVpcEndpointAwsService; static readonly APPSTREAM_API: InterfaceVpcEndpointAwsService; static readonly APPSTREAM_STREAMING: InterfaceVpcEndpointAwsService; static readonly ATHENA: InterfaceVpcEndpointAwsService; static readonly AUDIT_MANAGER: InterfaceVpcEndpointAwsService; static readonly AUTOSCALING: InterfaceVpcEndpointAwsService; static readonly AUTOSCALING_PLANS: InterfaceVpcEndpointAwsService; static readonly BACKUP: InterfaceVpcEndpointAwsService; static readonly BACKUP_GATEWAY: InterfaceVpcEndpointAwsService; static readonly BATCH: InterfaceVpcEndpointAwsService; static readonly BILLING_CONDUCTOR: InterfaceVpcEndpointAwsService; static readonly BRAKET: InterfaceVpcEndpointAwsService; static readonly CLOUD_CONTROL_API: InterfaceVpcEndpointAwsService; static readonly CLOUD_CONTROL_API_FIPS: InterfaceVpcEndpointAwsService; static readonly CLOUD_DIRECTORY: InterfaceVpcEndpointAwsService; static readonly CLOUDFORMATION: InterfaceVpcEndpointAwsService; static readonly CLOUDHSM: InterfaceVpcEndpointAwsService; static readonly CLOUDTRAIL: InterfaceVpcEndpointAwsService; /** @deprecated - Use InterfaceVpcEndpointAwsService.CLOUDWATCH_MONITORING instead. */ static readonly CLOUDWATCH: InterfaceVpcEndpointAwsService; /** @deprecated - Use InterfaceVpcEndpointAwsService.EVENTBRIDGE instead. */ static readonly CLOUDWATCH_EVENTS: InterfaceVpcEndpointAwsService; static readonly CLOUDWATCH_EVIDENTLY: InterfaceVpcEndpointAwsService; static readonly CLOUDWATCH_EVIDENTLY_DATAPLANE: InterfaceVpcEndpointAwsService; static readonly CLOUDWATCH_LOGS: InterfaceVpcEndpointAwsService; static readonly CLOUDWATCH_MONITORING: InterfaceVpcEndpointAwsService; static readonly CLOUDWATCH_RUM: InterfaceVpcEndpointAwsService; static readonly CLOUDWATCH_RUM_DATAPLANE: InterfaceVpcEndpointAwsService; static readonly CLOUDWATCH_SYNTHETICS: InterfaceVpcEndpointAwsService; static readonly CODEARTIFACT_API: InterfaceVpcEndpointAwsService; static readonly CODEARTIFACT_REPOSITORIES: InterfaceVpcEndpointAwsService; static readonly CODEBUILD: InterfaceVpcEndpointAwsService; static readonly CODEBUILD_FIPS: InterfaceVpcEndpointAwsService; static readonly CODECOMMIT: InterfaceVpcEndpointAwsService; static readonly CODECOMMIT_FIPS: InterfaceVpcEndpointAwsService; static readonly CODEDEPLOY: InterfaceVpcEndpointAwsService; static readonly CODEDEPLOY_COMMANDS_SECURE: InterfaceVpcEndpointAwsService; static readonly CODEGURU_PROFILER: InterfaceVpcEndpointAwsService; static readonly CODEGURU_REVIEWER: InterfaceVpcEndpointAwsService; static readonly CODEPIPELINE: InterfaceVpcEndpointAwsService; static readonly CODESTAR_CONNECTIONS: InterfaceVpcEndpointAwsService; static readonly COMPREHEND: InterfaceVpcEndpointAwsService; static readonly COMPREHEND_MEDICAL: InterfaceVpcEndpointAwsService; static readonly CONFIG: InterfaceVpcEndpointAwsService; static readonly CONNECT_APP_INTEGRATIONS: InterfaceVpcEndpointAwsService; static readonly CONNECT_CASES: InterfaceVpcEndpointAwsService; static readonly CONNECT_CONNECT_CAMPAIGNS: InterfaceVpcEndpointAwsService; static readonly CONNECT_PROFILE: InterfaceVpcEndpointAwsService; static readonly CONNECT_VOICEID: InterfaceVpcEndpointAwsService; static readonly CONNECT_WISDOM: InterfaceVpcEndpointAwsService; static readonly DATA_EXCHANGE: InterfaceVpcEndpointAwsService; static readonly DATABASE_MIGRATION_SERVICE: InterfaceVpcEndpointAwsService; static readonly DATABASE_MIGRATION_SERVICE_FIPS: InterfaceVpcEndpointAwsService; static readonly DATASYNC: InterfaceVpcEndpointAwsService; static readonly DEVOPS_GURU: InterfaceVpcEndpointAwsService; static readonly EBS_DIRECT: InterfaceVpcEndpointAwsService; static readonly EC2: InterfaceVpcEndpointAwsService; static readonly EC2_MESSAGES: InterfaceVpcEndpointAwsService; static readonly ECR: InterfaceVpcEndpointAwsService; static readonly ECR_DOCKER: InterfaceVpcEndpointAwsService; static readonly ECS: InterfaceVpcEndpointAwsService; static readonly ECS_AGENT: InterfaceVpcEndpointAwsService; static readonly ECS_TELEMETRY: InterfaceVpcEndpointAwsService; static readonly EKS: InterfaceVpcEndpointAwsService; static readonly ELASTIC_BEANSTALK: InterfaceVpcEndpointAwsService; static readonly ELASTIC_BEANSTALK_HEALTH: InterfaceVpcEndpointAwsService; static readonly ELASTIC_DISASTER_RECOVERY: InterfaceVpcEndpointAwsService; static readonly ELASTIC_FILESYSTEM: InterfaceVpcEndpointAwsService; static readonly ELASTIC_FILESYSTEM_FIPS: InterfaceVpcEndpointAwsService; static readonly ELASTIC_INFERENCE_RUNTIME: InterfaceVpcEndpointAwsService; static readonly ELASTIC_LOAD_BALANCING: InterfaceVpcEndpointAwsService; static readonly ELASTICACHE: InterfaceVpcEndpointAwsService; static readonly ELASTICACHE_FIPS: InterfaceVpcEndpointAwsService; static readonly EMAIL_SMTP: InterfaceVpcEndpointAwsService; static readonly EMR: InterfaceVpcEndpointAwsService; static readonly EMR_EKS: InterfaceVpcEndpointAwsService; static readonly EMR_SERVERLESS: InterfaceVpcEndpointAwsService; static readonly EVENTBRIDGE: InterfaceVpcEndpointAwsService; static readonly FAULT_INJECTION_SIMULATOR: InterfaceVpcEndpointAwsService; static readonly FINSPACE: InterfaceVpcEndpointAwsService; static readonly FINSPACE_API: InterfaceVpcEndpointAwsService; static readonly FORECAST: InterfaceVpcEndpointAwsService; static readonly FORECAST_QUERY: InterfaceVpcEndpointAwsService; static readonly FORECAST_FIPS: InterfaceVpcEndpointAwsService; static readonly FORECAST_QUERY_FIPS: InterfaceVpcEndpointAwsService; static readonly FRAUD_DETECTOR: InterfaceVpcEndpointAwsService; static readonly FSX: InterfaceVpcEndpointAwsService; static readonly FSX_FIPS: InterfaceVpcEndpointAwsService; static readonly CODECOMMIT_GIT: InterfaceVpcEndpointAwsService; static readonly CODECOMMIT_GIT_FIPS: InterfaceVpcEndpointAwsService; static readonly GLUE: InterfaceVpcEndpointAwsService; static readonly GLUE_DATABREW: InterfaceVpcEndpointAwsService; static readonly GRAFANA: InterfaceVpcEndpointAwsService; static readonly GRAFANA_WORKSPACE: InterfaceVpcEndpointAwsService; static readonly GROUNDSTATION: InterfaceVpcEndpointAwsService; static readonly HEALTHLAKE: InterfaceVpcEndpointAwsService; static readonly IAM_IDENTITY_CENTER: InterfaceVpcEndpointAwsService; static readonly IAM_ROLES_ANYWHERE: InterfaceVpcEndpointAwsService; static readonly IMAGE_BUILDER: InterfaceVpcEndpointAwsService; static readonly INSPECTOR: InterfaceVpcEndpointAwsService; static readonly IOT_CORE: InterfaceVpcEndpointAwsService; static readonly IOT_CORE_DEVICE_ADVISOR: InterfaceVpcEndpointAwsService; static readonly IOT_CORE_FOR_LORAWAN: InterfaceVpcEndpointAwsService; static readonly IOT_LORAWAN_CUPS: InterfaceVpcEndpointAwsService; static readonly IOT_LORAWAN_LNS: InterfaceVpcEndpointAwsService; static readonly IOT_GREENGRASS: InterfaceVpcEndpointAwsService; static readonly IOT_ROBORUNNER: InterfaceVpcEndpointAwsService; static readonly IOT_SITEWISE_API: InterfaceVpcEndpointAwsService; static readonly IOT_SITEWISE_DATA: InterfaceVpcEndpointAwsService; static readonly IOT_TWINMAKER_API: InterfaceVpcEndpointAwsService; static readonly IOT_TWINMAKER_DATA: InterfaceVpcEndpointAwsService; static readonly KENDRA: InterfaceVpcEndpointAwsService; static readonly KENDRA_RANKING: InterfaceVpcEndpointAwsService; static readonly KEYSPACES: InterfaceVpcEndpointAwsService; static readonly KEYSPACES_FIPS: InterfaceVpcEndpointAwsService; static readonly KINESIS_STREAMS: InterfaceVpcEndpointAwsService; static readonly KINESIS_FIREHOSE: InterfaceVpcEndpointAwsService; static readonly KMS: InterfaceVpcEndpointAwsService; static readonly KMS_FIPS: InterfaceVpcEndpointAwsService; static readonly LAKE_FORMATION: InterfaceVpcEndpointAwsService; static readonly LAMBDA: InterfaceVpcEndpointAwsService; static readonly LEX_MODELS: InterfaceVpcEndpointAwsService; static readonly LEX_RUNTIME: InterfaceVpcEndpointAwsService; static readonly LICENSE_MANAGER: InterfaceVpcEndpointAwsService; static readonly LICENSE_MANAGER_FIPS: InterfaceVpcEndpointAwsService; static readonly LOOKOUT_EQUIPMENT: InterfaceVpcEndpointAwsService; static readonly LOOKOUT_METRICS: InterfaceVpcEndpointAwsService; static readonly LOOKOUT_VISION: InterfaceVpcEndpointAwsService; static readonly MACIE: InterfaceVpcEndpointAwsService; static readonly MAINFRAME_MODERNIZATION: InterfaceVpcEndpointAwsService; static readonly PROMETHEUS: InterfaceVpcEndpointAwsService; static readonly PROMETHEUS_WORKSPACES: InterfaceVpcEndpointAwsService; static readonly MEMORY_DB: InterfaceVpcEndpointAwsService; static readonly MEMORY_DB_FIPS: InterfaceVpcEndpointAwsService; static readonly MIGRATIONHUB_ORCHESTRATOR: InterfaceVpcEndpointAwsService; static readonly MIGRATIONHUB_REFACTOR_SPACES: InterfaceVpcEndpointAwsService; static readonly MIGRATIONHUB_STRATEGY: InterfaceVpcEndpointAwsService; static readonly NIMBLE_STUDIO: InterfaceVpcEndpointAwsService; static readonly OMICS_ANALYTICS: InterfaceVpcEndpointAwsService; static readonly OMICS_CONTROL_STORAGE: InterfaceVpcEndpointAwsService; static readonly OMICS_STORAGE: InterfaceVpcEndpointAwsService; static readonly OMICS_TAGS: InterfaceVpcEndpointAwsService; static readonly OMICS_WORKFLOWS: InterfaceVpcEndpointAwsService; static readonly PANORAMA: InterfaceVpcEndpointAwsService; static readonly PINPOINT: InterfaceVpcEndpointAwsService; static readonly POLLY: InterfaceVpcEndpointAwsService; static readonly PRIVATE_5G: InterfaceVpcEndpointAwsService; static readonly PRIVATE_CERTIFICATE_AUTHORITY: InterfaceVpcEndpointAwsService; static readonly PROTON: InterfaceVpcEndpointAwsService; static readonly QLDB: InterfaceVpcEndpointAwsService; static readonly RDS: InterfaceVpcEndpointAwsService; static readonly RDS_DATA: InterfaceVpcEndpointAwsService; static readonly ROBOMAKER: InterfaceVpcEndpointAwsService; static readonly REDSHIFT: InterfaceVpcEndpointAwsService; static readonly REDSHIFT_FIPS: InterfaceVpcEndpointAwsService; static readonly REDSHIFT_DATA: InterfaceVpcEndpointAwsService; static readonly REKOGNITION: InterfaceVpcEndpointAwsService; static readonly REKOGNITION_FIPS: InterfaceVpcEndpointAwsService; static readonly S3: InterfaceVpcEndpointAwsService; static readonly S3_MULTI_REGION_ACCESS_POINTS: InterfaceVpcEndpointAwsService; static readonly S3_OUTPOSTS: InterfaceVpcEndpointAwsService; static readonly SAGEMAKER_API: InterfaceVpcEndpointAwsService; static readonly SAGEMAKER_FEATURESTORE_RUNTIME: InterfaceVpcEndpointAwsService; static readonly SAGEMAKER_METRICS: InterfaceVpcEndpointAwsService; static readonly SAGEMAKER_NOTEBOOK: InterfaceVpcEndpointAwsService; static readonly SAGEMAKER_RUNTIME: InterfaceVpcEndpointAwsService; static readonly SAGEMAKER_RUNTIME_FIPS: InterfaceVpcEndpointAwsService; static readonly SAGEMAKER_STUDIO: InterfaceVpcEndpointAwsService; static readonly SECRETS_MANAGER: InterfaceVpcEndpointAwsService; static readonly SECURITYHUB: InterfaceVpcEndpointAwsService; static readonly SERVICE_CATALOG: InterfaceVpcEndpointAwsService; static readonly SERVICE_CATALOG_APPREGISTRY: InterfaceVpcEndpointAwsService; static readonly SERVER_MIGRATION_SERVICE: InterfaceVpcEndpointAwsService; static readonly SERVER_MIGRATION_SERVICE_FIPS: InterfaceVpcEndpointAwsService; static readonly SERVER_MIGRATION_SERVICE_AWSCONNECTOR: InterfaceVpcEndpointAwsService; /** @deprecated - Use InterfaceVpcEndpointAwsService.EMAIL_SMTP instead. */ static readonly SES: InterfaceVpcEndpointAwsService; static readonly SNOW_DEVICE_MANAGEMENT: InterfaceVpcEndpointAwsService; static readonly SNS: InterfaceVpcEndpointAwsService; static readonly SQS: InterfaceVpcEndpointAwsService; static readonly SSM: InterfaceVpcEndpointAwsService; static readonly SSM_MESSAGES: InterfaceVpcEndpointAwsService; static readonly SSM_CONTACTS: InterfaceVpcEndpointAwsService; static readonly SSM_INCIDENTS: InterfaceVpcEndpointAwsService; static readonly STEP_FUNCTIONS: InterfaceVpcEndpointAwsService; static readonly STEP_FUNCTIONS_SYNC: InterfaceVpcEndpointAwsService; static readonly STORAGE_GATEWAY: InterfaceVpcEndpointAwsService; static readonly STS: InterfaceVpcEndpointAwsService; static readonly TEXTRACT: InterfaceVpcEndpointAwsService; static readonly TEXTRACT_FIPS: InterfaceVpcEndpointAwsService; static readonly TRANSCRIBE: InterfaceVpcEndpointAwsService; static readonly TRANSCRIBE_STREAMING: InterfaceVpcEndpointAwsService; static readonly TRANSFER: InterfaceVpcEndpointAwsService; static readonly TRANSFER_SERVER: InterfaceVpcEndpointAwsService; static readonly TRANSLATE: InterfaceVpcEndpointAwsService; static readonly WORKSPACES: InterfaceVpcEndpointAwsService; static readonly XRAY: InterfaceVpcEndpointAwsService; static readonly VERIFIED_PERMISSIONS: InterfaceVpcEndpointAwsService; /** * The name of the service. e.g. com.amazonaws.us-east-1.ecs */ readonly name: string; /** * The short name of the service. e.g. ecs */ readonly shortName: string; /** * The port of the service. */ readonly port: number; /** * Whether Private DNS is supported by default. */ readonly privateDnsDefault?: boolean; constructor(name: string, prefix?: string, port?: number); /** * Get the endpoint prefix for the service in the specified region * because the prefix for some of the services in cn-north-1 and cn-northwest-1 are different * * For future maintenance, the vpc endpoint services could be fetched using AWS CLI Commmand: * aws ec2 describe-vpc-endpoint-services */ private getDefaultEndpointPrefix; /** * Get the endpoint suffix for the service in the specified region. * In cn-north-1 and cn-northwest-1, the vpc endpoint of transcribe is: * cn.com.amazonaws.cn-north-1.transcribe.cn * cn.com.amazonaws.cn-northwest-1.transcribe.cn * so suffix '.cn' should be return in these scenarios. * * For future maintenance, the vpc endpoint services could be fetched using AWS CLI Commmand: * aws ec2 describe-vpc-endpoint-services */ private getDefaultEndpointSuffix; } /** * Options to add an interface endpoint to a VPC. */ export interface InterfaceVpcEndpointOptions { /** * The service to use for this interface VPC endpoint. */ readonly service: IInterfaceVpcEndpointService; /** * Whether to associate a private hosted zone with the specified VPC. This * allows you to make requests to the service using its default DNS hostname. * * @default set by the instance of IInterfaceVpcEndpointService, or true if * not defined by the instance of IInterfaceVpcEndpointService */ readonly privateDnsEnabled?: boolean; /** * The subnets in which to create an endpoint network interface. At most one * per availability zone. * * @default - private subnets */ readonly subnets?: SubnetSelection; /** * The security groups to associate with this interface VPC endpoint. * * @default - a new security group is created */ readonly securityGroups?: ISecurityGroup[]; /** * Whether to automatically allow VPC traffic to the endpoint * * If enabled, all traffic to the endpoint from within the VPC will be * automatically allowed. This is done based on the VPC's CIDR range. * * @default true */ readonly open?: boolean; /** * Limit to only those availability zones where the endpoint service can be created * * Setting this to 'true' requires a lookup to be performed at synthesis time. Account * and region must be set on the containing stack for this to work. * * @default false */ readonly lookupSupportedAzs?: boolean; } /** * Construction properties for an InterfaceVpcEndpoint. */ export interface InterfaceVpcEndpointProps extends InterfaceVpcEndpointOptions { /** * The VPC network in which the interface endpoint will be used. */ readonly vpc: IVpc; } /** * An interface VPC endpoint. */ export interface IInterfaceVpcEndpoint extends IVpcEndpoint, IConnectable { } /** * A interface VPC endpoint. * @resource AWS::EC2::VPCEndpoint */ export declare class InterfaceVpcEndpoint extends VpcEndpoint implements IInterfaceVpcEndpoint { /** * Imports an existing interface VPC endpoint. */ static fromInterfaceVpcEndpointAttributes(scope: Construct, id: string, attrs: InterfaceVpcEndpointAttributes): IInterfaceVpcEndpoint; /** * The interface VPC endpoint identifier. */ readonly vpcEndpointId: string; /** * The date and time the interface VPC endpoint was created. * @attribute */ readonly vpcEndpointCreationTimestamp: string; /** * The DNS entries for the interface VPC endpoint. * Each entry is a combination of the hosted zone ID and the DNS name. * The entries are ordered as follows: regional public DNS, zonal public DNS, private DNS, and wildcard DNS. * This order is not enforced for AWS Marketplace services. * * The following is an example. In the first entry, the hosted zone ID is Z1HUB23UULQXV * and the DNS name is vpce-01abc23456de78f9g-12abccd3.ec2.us-east-1.vpce.amazonaws.com. * * ["Z1HUB23UULQXV:vpce-01abc23456de78f9g-12abccd3.ec2.us-east-1.vpce.amazonaws.com", * "Z1HUB23UULQXV:vpce-01abc23456de78f9g-12abccd3-us-east-1a.ec2.us-east-1.vpce.amazonaws.com", * "Z1C12344VYDITB0:ec2.us-east-1.amazonaws.com"] * * If you update the PrivateDnsEnabled or SubnetIds properties, the DNS entries in the list will change. * @attribute */ readonly vpcEndpointDnsEntries: string[]; /** * One or more network interfaces for the interface VPC endpoint. * @attribute */ readonly vpcEndpointNetworkInterfaceIds: string[]; /** * Access to network connections. */ readonly connections: Connections; constructor(scope: Construct, id: string, props: InterfaceVpcEndpointProps); /** * Determine which subnets to place the endpoint in. This is in its own function * because there's a lot of code. */ private endpointSubnets; /** * Sanity checking when looking up AZs for an endpoint service, to make sure it won't fail */ private validateCanLookupSupportedAzs; private availableAvailabilityZones; } /** * Construction properties for an ImportedInterfaceVpcEndpoint. */ export interface InterfaceVpcEndpointAttributes { /** * The interface VPC endpoint identifier. */ readonly vpcEndpointId: string; /** * The security groups associated with the interface VPC endpoint. * * If you wish to manage the network connections associated with this endpoint, * you will need to specify its security groups. */ readonly securityGroups?: ISecurityGroup[]; /** * The port of the service of the interface VPC endpoint. */ readonly port: number; }