import * as core from "@terrascript/core"; export interface PortOverrideArgs extends core.SchemaArgs { endpointPort: number | core.NumberOut; listenerPort: number | core.NumberOut; } export class PortOverride extends core.Schema { @core.attr(Number) public endpointPort!: number | core.NumberOut; @core.attr(Number) public listenerPort!: number | core.NumberOut; } export interface EndpointConfigurationArgs extends core.SchemaArgs { clientIpPreservationEnabled?: boolean | core.BooleanOut; endpointId?: string | core.StringOut; weight?: number | core.NumberOut; } export class EndpointConfiguration extends core.Schema { @core.attr(Boolean, { computed: true }) public clientIpPreservationEnabled?: boolean | core.BooleanOut; @core.attr(String) public endpointId?: string | core.StringOut; @core.attr(Number) public weight?: number | core.NumberOut; } export interface EndpointGroupArgs extends core.ResourceArgs { /** * (Optional) The list of endpoint objects. Fields documented below. */ endpointConfiguration?: | core.Array | core.ArrayOut; endpointGroupRegion?: string | core.StringOut; /** * (Optional) The time—10 seconds or 30 seconds—between each health check for an endpoint. The default * value is 30. */ healthCheckIntervalSeconds?: number | core.NumberOut; /** * (Optional) If the protocol is HTTP/S, then this specifies the path that is the destination for healt * h check targets. The default value is slash (`/`). Terraform will only perform drift detection of it * s value when present in a configuration. */ healthCheckPath?: string | core.StringOut; /** * (Optional) The port that AWS Global Accelerator uses to check the health of endpoints that are part * of this endpoint group. The default port is the listener port that this endpoint group is associated * with. If listener port is a list of ports, Global Accelerator uses the first port in the list. */ healthCheckPort?: number | core.NumberOut; /** * (Optional) The protocol that AWS Global Accelerator uses to check the health of endpoints that are p * art of this endpoint group. The default value is TCP. */ healthCheckProtocol?: string | core.StringOut; /** * (Required) The Amazon Resource Name (ARN) of the listener. */ listenerArn: string | core.StringOut; /** * (Optional) Override specific listener ports used to route traffic to endpoints that are part of this * endpoint group. Fields documented below. */ portOverride?: core.Array | core.ArrayOut; /** * (Optional) The number of consecutive health checks required to set the state of a healthy endpoint t * o unhealthy, or to set an unhealthy endpoint to healthy. The default value is 3. */ thresholdCount?: number | core.NumberOut; /** * (Optional) The percentage of traffic to send to an AWS Region. Additional traffic is distributed to * other endpoint groups for this listener. The default value is 100. */ trafficDialPercentage?: number | core.NumberOut; } export class EndpointGroup extends core.Resource { /** * The Amazon Resource Name (ARN) of the endpoint group. */ @core.attr(String, { computed: true }) public arn!: string | core.StringOut; /** * (Optional) The list of endpoint objects. Fields documented below. */ @core.attr(EndpointConfiguration, { kind: "array" }) public endpointConfiguration?: | core.Array | core.ArrayOut; @core.attr(String, { computed: true }) public endpointGroupRegion?: string | core.StringOut; /** * (Optional) The time—10 seconds or 30 seconds—between each health check for an endpoint. The default * value is 30. */ @core.attr(Number) public healthCheckIntervalSeconds?: number | core.NumberOut; /** * (Optional) If the protocol is HTTP/S, then this specifies the path that is the destination for healt * h check targets. The default value is slash (`/`). Terraform will only perform drift detection of it * s value when present in a configuration. */ @core.attr(String, { computed: true }) public healthCheckPath?: string | core.StringOut; /** * (Optional) The port that AWS Global Accelerator uses to check the health of endpoints that are part * of this endpoint group. The default port is the listener port that this endpoint group is associated * with. If listener port is a list of ports, Global Accelerator uses the first port in the list. */ @core.attr(Number, { computed: true }) public healthCheckPort?: number | core.NumberOut; /** * (Optional) The protocol that AWS Global Accelerator uses to check the health of endpoints that are p * art of this endpoint group. The default value is TCP. */ @core.attr(String) public healthCheckProtocol?: string | core.StringOut; /** * The Amazon Resource Name (ARN) of the endpoint group. */ @core.attr(String, { computed: true }) public id!: string | core.StringOut; /** * (Required) The Amazon Resource Name (ARN) of the listener. */ @core.attr(String) public listenerArn!: string | core.StringOut; /** * (Optional) Override specific listener ports used to route traffic to endpoints that are part of this * endpoint group. Fields documented below. */ @core.attr(PortOverride, { kind: "array" }) public portOverride?: core.Array | core.ArrayOut; /** * (Optional) The number of consecutive health checks required to set the state of a healthy endpoint t * o unhealthy, or to set an unhealthy endpoint to healthy. The default value is 3. */ @core.attr(Number) public thresholdCount?: number | core.NumberOut; /** * (Optional) The percentage of traffic to send to an AWS Region. Additional traffic is distributed to * other endpoint groups for this listener. The default value is 100. */ @core.attr(Number) public trafficDialPercentage?: number | core.NumberOut; constructor(name: string, args?: EndpointGroupArgs) { super(name, "aws_globalaccelerator_endpoint_group", args); } public override getNamespace(): string { return "aws_globalaccelerator"; } }