import * as core from "@terrascript/core"; export interface ConnectionLogOptionsArgs extends core.SchemaArgs { cloudwatchLogGroup?: string | core.StringOut; cloudwatchLogStream?: string | core.StringOut; enabled: boolean | core.BooleanOut; } export declare class ConnectionLogOptions extends core.Schema { cloudwatchLogGroup?: string | core.StringOut; cloudwatchLogStream?: string | core.StringOut; enabled: boolean | core.BooleanOut; } export interface ClientLoginBannerOptionsArgs extends core.SchemaArgs { bannerText?: string | core.StringOut; enabled?: boolean | core.BooleanOut; } export declare class ClientLoginBannerOptions extends core.Schema { bannerText?: string | core.StringOut; enabled?: boolean | core.BooleanOut; } export interface AuthenticationOptionsArgs extends core.SchemaArgs { activeDirectoryId?: string | core.StringOut; rootCertificateChainArn?: string | core.StringOut; samlProviderArn?: string | core.StringOut; selfServiceSamlProviderArn?: string | core.StringOut; type: string | core.StringOut; } export declare class AuthenticationOptions extends core.Schema { activeDirectoryId?: string | core.StringOut; rootCertificateChainArn?: string | core.StringOut; samlProviderArn?: string | core.StringOut; selfServiceSamlProviderArn?: string | core.StringOut; type: string | core.StringOut; } export interface ClientConnectOptionsArgs extends core.SchemaArgs { enabled?: boolean | core.BooleanOut; lambdaFunctionArn?: string | core.StringOut; } export declare class ClientConnectOptions extends core.Schema { enabled?: boolean | core.BooleanOut; lambdaFunctionArn?: string | core.StringOut; } export interface Ec2ClientVpnEndpointArgs extends core.ResourceArgs { /** * (Required) Information about the authentication method to be used to authenticate clients. */ authenticationOptions: core.Array | core.ArrayOut; /** * (Required) The IPv4 address range, in CIDR notation, from which to assign client IP addresses. The a * ddress range cannot overlap with the local CIDR of the VPC in which the associated subnet is located * , or the routes that you add manually. The address range cannot be changed after the Client VPN endp * oint has been created. The CIDR block should be /22 or greater. */ clientCidrBlock: string | core.StringOut; /** * (Optional) The options for managing connection authorization for new client connections. */ clientConnectOptions?: ClientConnectOptions; /** * (Optional) Options for enabling a customizable text banner that will be displayed on AWS provided cl * ients when a VPN session is established. */ clientLoginBannerOptions?: ClientLoginBannerOptions; /** * (Required) Information about the client connection logging options. */ connectionLogOptions: ConnectionLogOptions; /** * (Optional) A brief description of the Client VPN endpoint. */ description?: string | core.StringOut; /** * (Optional) Information about the DNS servers to be used for DNS resolution. A Client VPN endpoint ca * n have up to two DNS servers. If no DNS server is specified, the DNS address of the connecting devic * e is used. */ dnsServers?: core.Array | core.ArrayOut; /** * (Optional) The IDs of one or more security groups to apply to the target network. You must also spec * ify the ID of the VPC that contains the security groups. */ securityGroupIds?: core.Array | core.ArrayOut; /** * (Optional) Specify whether to enable the self-service portal for the Client VPN endpoint. Values can * be `enabled` or `disabled`. Default value is `disabled`. */ selfServicePortal?: string | core.StringOut; /** * (Required) The ARN of the ACM server certificate. */ serverCertificateArn: string | core.StringOut; /** * (Optional) The maximum session duration is a trigger by which end-users are required to re-authentic * ate prior to establishing a VPN session. Default value is `24` - Valid values: `8 | 10 | 12 | 24` */ sessionTimeoutHours?: number | core.NumberOut; /** * (Optional) Indicates whether split-tunnel is enabled on VPN endpoint. Default value is `false`. */ splitTunnel?: boolean | core.BooleanOut; /** * (Optional) A mapping of tags to assign to the resource. If configured with a provider [`default_tags * configuration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tag * s-configuration-block) present, tags with matching keys will overwrite those defined at the provider * level. */ tags?: core.Map | core.MapOut; /** * A map of tags assigned to the resource, including those inherited from the provider [`default_tags` * configuration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags- * configuration-block). */ tagsAll?: core.Map | core.MapOut; /** * (Optional) The transport protocol to be used by the VPN session. Default value is `udp`. */ transportProtocol?: string | core.StringOut; /** * (Optional) The ID of the VPC to associate with the Client VPN endpoint. If no security group IDs are * specified in the request, the default security group for the VPC is applied. */ vpcId?: string | core.StringOut; /** * (Optional) The port number for the Client VPN endpoint. Valid values are `443` and `1194`. Default v * alue is `443`. */ vpnPort?: number | core.NumberOut; } export declare class Ec2ClientVpnEndpoint extends core.Resource { /** * The ARN of the Client VPN endpoint. */ arn: string | core.StringOut; /** * (Required) Information about the authentication method to be used to authenticate clients. */ authenticationOptions: core.Array | core.ArrayOut; /** * (Required) The IPv4 address range, in CIDR notation, from which to assign client IP addresses. The a * ddress range cannot overlap with the local CIDR of the VPC in which the associated subnet is located * , or the routes that you add manually. The address range cannot be changed after the Client VPN endp * oint has been created. The CIDR block should be /22 or greater. */ clientCidrBlock: string | core.StringOut; /** * (Optional) The options for managing connection authorization for new client connections. */ clientConnectOptions?: ClientConnectOptions; /** * (Optional) Options for enabling a customizable text banner that will be displayed on AWS provided cl * ients when a VPN session is established. */ clientLoginBannerOptions?: ClientLoginBannerOptions; /** * (Required) Information about the client connection logging options. */ connectionLogOptions: ConnectionLogOptions; /** * (Optional) A brief description of the Client VPN endpoint. */ description?: string | core.StringOut; /** * The DNS name to be used by clients when establishing their VPN session. */ dnsName: string | core.StringOut; /** * (Optional) Information about the DNS servers to be used for DNS resolution. A Client VPN endpoint ca * n have up to two DNS servers. If no DNS server is specified, the DNS address of the connecting devic * e is used. */ dnsServers?: core.Array | core.ArrayOut; /** * The ID of the Client VPN endpoint. */ id: string | core.StringOut; /** * (Optional) The IDs of one or more security groups to apply to the target network. You must also spec * ify the ID of the VPC that contains the security groups. */ securityGroupIds?: core.Array | core.ArrayOut; /** * (Optional) Specify whether to enable the self-service portal for the Client VPN endpoint. Values can * be `enabled` or `disabled`. Default value is `disabled`. */ selfServicePortal?: string | core.StringOut; /** * (Required) The ARN of the ACM server certificate. */ serverCertificateArn: string | core.StringOut; /** * (Optional) The maximum session duration is a trigger by which end-users are required to re-authentic * ate prior to establishing a VPN session. Default value is `24` - Valid values: `8 | 10 | 12 | 24` */ sessionTimeoutHours?: number | core.NumberOut; /** * (Optional) Indicates whether split-tunnel is enabled on VPN endpoint. Default value is `false`. */ splitTunnel?: boolean | core.BooleanOut; /** * **Deprecated** The current state of the Client VPN endpoint. */ status: string | core.StringOut; /** * (Optional) A mapping of tags to assign to the resource. If configured with a provider [`default_tags * configuration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tag * s-configuration-block) present, tags with matching keys will overwrite those defined at the provider * level. */ tags?: core.Map | core.MapOut; /** * A map of tags assigned to the resource, including those inherited from the provider [`default_tags` * configuration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags- * configuration-block). */ tagsAll?: core.Map | core.MapOut; /** * (Optional) The transport protocol to be used by the VPN session. Default value is `udp`. */ transportProtocol?: string | core.StringOut; /** * (Optional) The ID of the VPC to associate with the Client VPN endpoint. If no security group IDs are * specified in the request, the default security group for the VPC is applied. */ vpcId?: string | core.StringOut; /** * (Optional) The port number for the Client VPN endpoint. Valid values are `443` and `1194`. Default v * alue is `443`. */ vpnPort?: number | core.NumberOut; constructor(name: string, args?: Ec2ClientVpnEndpointArgs); getNamespace(): string; } //# sourceMappingURL=ec2_client_vpn_endpoint.d.ts.map