import { ResourceBase } from '../resource'; import { Value, List } from '../dataTypes'; export declare class CustomizedMetricSpecification { Dimensions?: List; MetricName: Value; Namespace: Value; Statistic: Value; Unit?: Value; constructor(properties: CustomizedMetricSpecification); } export declare class StepAdjustment { MetricIntervalLowerBound?: Value; MetricIntervalUpperBound?: Value; ScalingAdjustment: Value; constructor(properties: StepAdjustment); } export declare class MetricDimension { Name: Value; Value: Value; constructor(properties: MetricDimension); } export declare class PredefinedMetricSpecification { PredefinedMetricType: Value; ResourceLabel?: Value; constructor(properties: PredefinedMetricSpecification); } export declare class TargetTrackingConfiguration { CustomizedMetricSpecification?: CustomizedMetricSpecification; DisableScaleIn?: Value; PredefinedMetricSpecification?: PredefinedMetricSpecification; TargetValue: Value; constructor(properties: TargetTrackingConfiguration); } export interface ScalingPolicyProperties { AdjustmentType?: Value; AutoScalingGroupName: Value; Cooldown?: Value; EstimatedInstanceWarmup?: Value; MetricAggregationType?: Value; MinAdjustmentMagnitude?: Value; PolicyType?: Value; ScalingAdjustment?: Value; StepAdjustments?: List; TargetTrackingConfiguration?: TargetTrackingConfiguration; } export default class ScalingPolicy extends ResourceBase { static CustomizedMetricSpecification: typeof CustomizedMetricSpecification; static StepAdjustment: typeof StepAdjustment; static MetricDimension: typeof MetricDimension; static PredefinedMetricSpecification: typeof PredefinedMetricSpecification; static TargetTrackingConfiguration: typeof TargetTrackingConfiguration; constructor(properties: ScalingPolicyProperties); }