import * as core from "@terrascript/core"; export interface ConfigurationsArgs extends core.SchemaArgs { classification?: string | core.StringOut; properties?: core.Map | core.MapOut; } export declare class Configurations extends core.Schema { classification?: string | core.StringOut; properties?: core.Map | core.MapOut; } export interface EbsConfigArgs extends core.SchemaArgs { iops?: number | core.NumberOut; size: number | core.NumberOut; type: string | core.StringOut; volumesPerInstance?: number | core.NumberOut; } export declare class EbsConfig extends core.Schema { iops?: number | core.NumberOut; size: number | core.NumberOut; type: string | core.StringOut; volumesPerInstance?: number | core.NumberOut; } export interface InstanceTypeConfigsArgs extends core.SchemaArgs { bidPrice?: string | core.StringOut; bidPriceAsPercentageOfOnDemandPrice?: number | core.NumberOut; configurations?: core.Array | core.ArrayOut; ebsConfig?: core.Array | core.ArrayOut; instanceType: string | core.StringOut; weightedCapacity?: number | core.NumberOut; } export declare class InstanceTypeConfigs extends core.Schema { bidPrice?: string | core.StringOut; bidPriceAsPercentageOfOnDemandPrice?: number | core.NumberOut; configurations?: core.Array | core.ArrayOut; ebsConfig?: core.Array | core.ArrayOut; instanceType: string | core.StringOut; weightedCapacity?: number | core.NumberOut; } export interface SpotSpecificationArgs extends core.SchemaArgs { allocationStrategy: string | core.StringOut; blockDurationMinutes?: number | core.NumberOut; timeoutAction: string | core.StringOut; timeoutDurationMinutes: number | core.NumberOut; } export declare class SpotSpecification extends core.Schema { allocationStrategy: string | core.StringOut; blockDurationMinutes?: number | core.NumberOut; timeoutAction: string | core.StringOut; timeoutDurationMinutes: number | core.NumberOut; } export interface OnDemandSpecificationArgs extends core.SchemaArgs { allocationStrategy: string | core.StringOut; } export declare class OnDemandSpecification extends core.Schema { allocationStrategy: string | core.StringOut; } export interface LaunchSpecificationsArgs extends core.SchemaArgs { onDemandSpecification?: core.Array | core.ArrayOut; spotSpecification?: core.Array | core.ArrayOut; } export declare class LaunchSpecifications extends core.Schema { onDemandSpecification?: core.Array | core.ArrayOut; spotSpecification?: core.Array | core.ArrayOut; } export interface InstanceFleetArgs extends core.ResourceArgs { /** * (Required) ID of the EMR Cluster to attach to. Changing this forces a new resource to be created. */ clusterId: string | core.StringOut; /** * (Optional) Configuration block for instance fleet */ instanceTypeConfigs?: core.Array | core.ArrayOut; /** * (Optional) Configuration block for launch specification */ launchSpecifications?: LaunchSpecifications; /** * (Optional) Friendly name given to the instance fleet. */ name?: string | core.StringOut; /** * (Optional) The target capacity of On-Demand units for the instance fleet, which determines how many * On-Demand instances to provision. */ targetOnDemandCapacity?: number | core.NumberOut; /** * (Optional) The target capacity of Spot units for the instance fleet, which determines how many Spot * instances to provision. */ targetSpotCapacity?: number | core.NumberOut; } export declare class InstanceFleet extends core.Resource { /** * (Required) ID of the EMR Cluster to attach to. Changing this forces a new resource to be created. */ clusterId: string | core.StringOut; /** * The unique identifier of the instance fleet. */ id: string | core.StringOut; /** * (Optional) Configuration block for instance fleet */ instanceTypeConfigs?: core.Array | core.ArrayOut; /** * (Optional) Configuration block for launch specification */ launchSpecifications?: LaunchSpecifications; /** * (Optional) Friendly name given to the instance fleet. */ name?: string | core.StringOut; provisionedOnDemandCapacity: number | core.NumberOut; provisionedSpotCapacity: number | core.NumberOut; /** * (Optional) The target capacity of On-Demand units for the instance fleet, which determines how many * On-Demand instances to provision. */ targetOnDemandCapacity?: number | core.NumberOut; /** * (Optional) The target capacity of Spot units for the instance fleet, which determines how many Spot * instances to provision. */ targetSpotCapacity?: number | core.NumberOut; constructor(name: string, args?: InstanceFleetArgs); getNamespace(): string; } //# sourceMappingURL=instance_fleet.d.ts.map