import { ResourceBase , ResourceTag } from '../resource' ; import { Value , List } from '../dataTypes' ; export class AutoScalingGroupProvider { AutoScalingGroupArn ! : Value < string > ; ManagedScaling ? : ManagedScaling ; ManagedTerminationProtection ? : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class ManagedScaling { MinimumScalingStepSize ? : Value < number > ; MaximumScalingStepSize ? : Value < number > ; Status ? : Value < string > ; TargetCapacity ? : Value < number > ; InstanceWarmupPeriod ? : Value < number > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export interface CapacityProviderProperties { AutoScalingGroupProvider : AutoScalingGroupProvider ; Name ? : Value < string > ; Tags ? : List < ResourceTag > ; } export default class CapacityProvider extends ResourceBase < CapacityProviderProperties > { static AutoScalingGroupProvider = AutoScalingGroupProvider ; static ManagedScaling = ManagedScaling ; constructor ( properties ) { super ( 'AWS::ECS::CapacityProvider' , properties ) ; } }