UNPKG

@nolanrigo/cloudformation

Version:

TypeScript-based imperative way to define AWS CloudFormation templates

87 lines (86 loc) 3.68 kB
import { ResourceBase } from "../../resource"; import { Value, List } from "../../data-types"; export declare class TargetTrackingConfiguration { ScaleOutCooldown?: Value<number>; TargetValue: Value<number>; PredefinedScalingMetricSpecification?: PredefinedScalingMetricSpecification; DisableScaleIn?: Value<boolean>; ScaleInCooldown?: Value<number>; EstimatedInstanceWarmup?: Value<number>; CustomizedScalingMetricSpecification?: CustomizedScalingMetricSpecification; constructor(properties: TargetTrackingConfiguration); } export declare class TagFilter { Values?: List<Value<string>>; Key: Value<string>; constructor(properties: TagFilter); } export declare class MetricDimension { Value: Value<string>; Name: Value<string>; constructor(properties: MetricDimension); } export declare class ScalingInstruction { TargetTrackingConfigurations: List<TargetTrackingConfiguration>; ServiceNamespace: Value<string>; PredefinedLoadMetricSpecification?: PredefinedLoadMetricSpecification; PredictiveScalingMaxCapacityBehavior?: Value<string>; ResourceId: Value<string>; PredictiveScalingMode?: Value<string>; CustomizedLoadMetricSpecification?: CustomizedLoadMetricSpecification; MinCapacity: Value<number>; ScheduledActionBufferTime?: Value<number>; DisableDynamicScaling?: Value<boolean>; ScalableDimension: Value<string>; ScalingPolicyUpdateBehavior?: Value<string>; PredictiveScalingMaxCapacityBuffer?: Value<number>; MaxCapacity: Value<number>; constructor(properties: ScalingInstruction); } export declare class CustomizedScalingMetricSpecification { MetricName: Value<string>; Statistic: Value<string>; Dimensions?: List<MetricDimension>; Unit?: Value<string>; Namespace: Value<string>; constructor(properties: CustomizedScalingMetricSpecification); } export declare class PredefinedLoadMetricSpecification { PredefinedLoadMetricType: Value<string>; ResourceLabel?: Value<string>; constructor(properties: PredefinedLoadMetricSpecification); } export declare class ApplicationSource { CloudFormationStackARN?: Value<string>; TagFilters?: List<TagFilter>; constructor(properties: ApplicationSource); } export declare class PredefinedScalingMetricSpecification { ResourceLabel?: Value<string>; PredefinedScalingMetricType: Value<string>; constructor(properties: PredefinedScalingMetricSpecification); } export declare class CustomizedLoadMetricSpecification { MetricName: Value<string>; Statistic: Value<string>; Dimensions?: List<MetricDimension>; Unit?: Value<string>; Namespace: Value<string>; constructor(properties: CustomizedLoadMetricSpecification); } export interface ScalingPlanProperties { ApplicationSource: ApplicationSource; ScalingInstructions: List<ScalingInstruction>; } export default class Inner_ScalingPlan extends ResourceBase<ScalingPlanProperties> { static TargetTrackingConfiguration: typeof TargetTrackingConfiguration; static TagFilter: typeof TagFilter; static MetricDimension: typeof MetricDimension; static ScalingInstruction: typeof ScalingInstruction; static CustomizedScalingMetricSpecification: typeof CustomizedScalingMetricSpecification; static PredefinedLoadMetricSpecification: typeof PredefinedLoadMetricSpecification; static ApplicationSource: typeof ApplicationSource; static PredefinedScalingMetricSpecification: typeof PredefinedScalingMetricSpecification; static CustomizedLoadMetricSpecification: typeof CustomizedLoadMetricSpecification; constructor(properties: ScalingPlanProperties); }