import { ResourceBase } from '../resource' ; import { Value , List } from '../dataTypes' ; export class PortOverride { ListenerPort ! : Value < number > ; EndpointPort ! : Value < number > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class EndpointConfiguration { EndpointId ! : Value < string > ; Weight ? : Value < number > ; ClientIPPreservationEnabled ? : Value < boolean > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export interface EndpointGroupProperties { ListenerArn : Value < string > ; EndpointGroupRegion : Value < string > ; EndpointConfigurations ? : List < EndpointConfiguration > ; TrafficDialPercentage ? : Value < number > ; HealthCheckPort ? : Value < number > ; HealthCheckProtocol ? : Value < string > ; HealthCheckPath ? : Value < string > ; HealthCheckIntervalSeconds ? : Value < number > ; ThresholdCount ? : Value < number > ; PortOverrides ? : List < PortOverride > ; } export default class EndpointGroup extends ResourceBase < EndpointGroupProperties > { static PortOverride = PortOverride ; static EndpointConfiguration = EndpointConfiguration ; constructor ( properties ) { super ( 'AWS::GlobalAccelerator::EndpointGroup' , properties ) ; } }