UNPKG

@nolanrigo/cloudformation

Version:

TypeScript-based imperative way to define AWS CloudFormation templates

228 lines (227 loc) 8.65 kB
import { ResourceBase, ResourceTag as Inner_ResourceTag } from "../../resource"; import { Value, List, MapOf } from "../../data-types"; export declare class EbsConfiguration { EbsBlockDeviceConfigs?: List<EbsBlockDeviceConfig>; EbsOptimized?: Value<boolean>; constructor(properties: EbsConfiguration); } export declare class ScalingRule { Action: ScalingAction; Description?: Value<string>; Name: Value<string>; Trigger: ScalingTrigger; constructor(properties: ScalingRule); } export declare class HadoopJarStepConfig { Args?: List<Value<string>>; Jar: Value<string>; MainClass?: Value<string>; StepProperties?: List<KeyValue>; constructor(properties: HadoopJarStepConfig); } export declare class BootstrapActionConfig { Name: Value<string>; ScriptBootstrapAction: ScriptBootstrapActionConfig; constructor(properties: BootstrapActionConfig); } export declare class VolumeSpecification { Iops?: Value<number>; SizeInGB: Value<number>; VolumeType: Value<string>; constructor(properties: VolumeSpecification); } export declare class CloudWatchAlarmDefinition { Period: Value<number>; Unit?: Value<string>; Threshold: Value<number>; Dimensions?: List<MetricDimension>; ComparisonOperator: Value<string>; Statistic?: Value<string>; EvaluationPeriods?: Value<number>; MetricName: Value<string>; Namespace?: Value<string>; constructor(properties: CloudWatchAlarmDefinition); } export declare class AutoScalingPolicy { Constraints: ScalingConstraints; Rules: List<ScalingRule>; constructor(properties: AutoScalingPolicy); } export declare class InstanceGroupConfig { AutoScalingPolicy?: AutoScalingPolicy; BidPrice?: Value<string>; Configurations?: List<Configuration>; EbsConfiguration?: EbsConfiguration; InstanceCount: Value<number>; InstanceType: Value<string>; Market?: Value<string>; Name?: Value<string>; constructor(properties: InstanceGroupConfig); } export declare class StepConfig { ActionOnFailure?: Value<string>; HadoopJarStep: HadoopJarStepConfig; Name: Value<string>; constructor(properties: StepConfig); } export declare class Application { AdditionalInfo?: MapOf<Value<string>>; Args?: List<Value<string>>; Name?: Value<string>; Version?: Value<string>; constructor(properties: Application); } export declare class EbsBlockDeviceConfig { VolumeSpecification: VolumeSpecification; VolumesPerInstance?: Value<number>; constructor(properties: EbsBlockDeviceConfig); } export declare class SimpleScalingPolicyConfiguration { AdjustmentType?: Value<string>; CoolDown?: Value<number>; ScalingAdjustment: Value<number>; constructor(properties: SimpleScalingPolicyConfiguration); } export declare class ScalingConstraints { MaxCapacity: Value<number>; MinCapacity: Value<number>; constructor(properties: ScalingConstraints); } export declare class InstanceTypeConfig { BidPrice?: Value<string>; BidPriceAsPercentageOfOnDemandPrice?: Value<number>; Configurations?: List<Configuration>; EbsConfiguration?: EbsConfiguration; InstanceType: Value<string>; WeightedCapacity?: Value<number>; constructor(properties: InstanceTypeConfig); } export declare class ScalingTrigger { CloudWatchAlarmDefinition: CloudWatchAlarmDefinition; constructor(properties: ScalingTrigger); } export declare class KerberosAttributes { ADDomainJoinPassword?: Value<string>; ADDomainJoinUser?: Value<string>; CrossRealmTrustPrincipalPassword?: Value<string>; KdcAdminPassword: Value<string>; Realm: Value<string>; constructor(properties: KerberosAttributes); } export declare class SpotProvisioningSpecification { BlockDurationMinutes?: Value<number>; TimeoutAction: Value<string>; TimeoutDurationMinutes: Value<number>; constructor(properties: SpotProvisioningSpecification); } export declare class KeyValue { Key?: Value<string>; Value?: Value<string>; constructor(properties: KeyValue); } export declare class InstanceFleetProvisioningSpecifications { SpotSpecification: SpotProvisioningSpecification; constructor(properties: InstanceFleetProvisioningSpecifications); } export declare class Configuration { Classification?: Value<string>; ConfigurationProperties?: MapOf<Value<string>>; Configurations?: List<Configuration>; constructor(properties: Configuration); } export declare class MetricDimension { Key: Value<string>; Value: Value<string>; constructor(properties: MetricDimension); } export declare class JobFlowInstancesConfig { AdditionalSlaveSecurityGroups?: List<Value<string>>; KeepJobFlowAliveWhenNoSteps?: Value<boolean>; Placement?: PlacementType; ServiceAccessSecurityGroup?: Value<string>; Ec2SubnetIds?: List<Value<string>>; EmrManagedMasterSecurityGroup?: Value<string>; MasterInstanceGroup?: InstanceGroupConfig; TerminationProtected?: Value<boolean>; CoreInstanceGroup?: InstanceGroupConfig; Ec2SubnetId?: Value<string>; HadoopVersion?: Value<string>; Ec2KeyName?: Value<string>; MasterInstanceFleet?: InstanceFleetConfig; CoreInstanceFleet?: InstanceFleetConfig; EmrManagedSlaveSecurityGroup?: Value<string>; AdditionalMasterSecurityGroups?: List<Value<string>>; constructor(properties: JobFlowInstancesConfig); } export declare class ScriptBootstrapActionConfig { Args?: List<Value<string>>; Path: Value<string>; constructor(properties: ScriptBootstrapActionConfig); } export declare class InstanceFleetConfig { InstanceTypeConfigs?: List<InstanceTypeConfig>; LaunchSpecifications?: InstanceFleetProvisioningSpecifications; Name?: Value<string>; TargetOnDemandCapacity?: Value<number>; TargetSpotCapacity?: Value<number>; constructor(properties: InstanceFleetConfig); } export declare class ScalingAction { Market?: Value<string>; SimpleScalingPolicyConfiguration: SimpleScalingPolicyConfiguration; constructor(properties: ScalingAction); } export declare class PlacementType { AvailabilityZone: Value<string>; constructor(properties: PlacementType); } export interface ClusterProperties { JobFlowRole: Value<string>; Applications?: List<Application>; CustomAmiId?: Value<string>; Steps?: List<StepConfig>; LogUri?: Value<string>; ServiceRole: Value<string>; Name: Value<string>; ReleaseLabel?: Value<string>; AutoScalingRole?: Value<string>; BootstrapActions?: List<BootstrapActionConfig>; KerberosAttributes?: KerberosAttributes; EbsRootVolumeSize?: Value<number>; VisibleToAllUsers?: Value<boolean>; AdditionalInfo?: MapOf<any>; SecurityConfiguration?: Value<string>; Tags?: List<Inner_ResourceTag>; Configurations?: List<Configuration>; Instances: JobFlowInstancesConfig; ScaleDownBehavior?: Value<string>; } export default class Inner_Cluster extends ResourceBase<ClusterProperties> { static EbsConfiguration: typeof EbsConfiguration; static ScalingRule: typeof ScalingRule; static HadoopJarStepConfig: typeof HadoopJarStepConfig; static BootstrapActionConfig: typeof BootstrapActionConfig; static VolumeSpecification: typeof VolumeSpecification; static CloudWatchAlarmDefinition: typeof CloudWatchAlarmDefinition; static AutoScalingPolicy: typeof AutoScalingPolicy; static InstanceGroupConfig: typeof InstanceGroupConfig; static StepConfig: typeof StepConfig; static Application: typeof Application; static EbsBlockDeviceConfig: typeof EbsBlockDeviceConfig; static SimpleScalingPolicyConfiguration: typeof SimpleScalingPolicyConfiguration; static ScalingConstraints: typeof ScalingConstraints; static InstanceTypeConfig: typeof InstanceTypeConfig; static ScalingTrigger: typeof ScalingTrigger; static KerberosAttributes: typeof KerberosAttributes; static SpotProvisioningSpecification: typeof SpotProvisioningSpecification; static KeyValue: typeof KeyValue; static InstanceFleetProvisioningSpecifications: typeof InstanceFleetProvisioningSpecifications; static Configuration: typeof Configuration; static MetricDimension: typeof MetricDimension; static JobFlowInstancesConfig: typeof JobFlowInstancesConfig; static ScriptBootstrapActionConfig: typeof ScriptBootstrapActionConfig; static InstanceFleetConfig: typeof InstanceFleetConfig; static ScalingAction: typeof ScalingAction; static PlacementType: typeof PlacementType; constructor(properties: ClusterProperties); }