import { ResourceBase } from '../resource'; import { Value, List } from '../dataTypes'; export declare class BlockDeviceMapping { DeviceName?: Value; Ebs?: EbsBlockDevice; NoDevice?: Value; VirtualName?: Value; constructor(properties: BlockDeviceMapping); } export declare class EbsBlockDevice { DeleteOnTermination?: Value; Iops?: Value; SnapshotId?: Value; VolumeSize?: Value; VolumeType?: Value; constructor(properties: EbsBlockDevice); } export declare class TimeBasedAutoScaling { Friday?: { [key: string]: Value; }; Monday?: { [key: string]: Value; }; Saturday?: { [key: string]: Value; }; Sunday?: { [key: string]: Value; }; Thursday?: { [key: string]: Value; }; Tuesday?: { [key: string]: Value; }; Wednesday?: { [key: string]: Value; }; constructor(properties: TimeBasedAutoScaling); } export interface InstanceProperties { AgentVersion?: Value; AmiId?: Value; Architecture?: Value; AutoScalingType?: Value; AvailabilityZone?: Value; BlockDeviceMappings?: List; EbsOptimized?: Value; ElasticIps?: List>; Hostname?: Value; InstallUpdatesOnBoot?: Value; InstanceType: Value; LayerIds: List>; Os?: Value; RootDeviceType?: Value; SshKeyName?: Value; StackId: Value; SubnetId?: Value; Tenancy?: Value; TimeBasedAutoScaling?: TimeBasedAutoScaling; VirtualizationType?: Value; Volumes?: List>; } export default class Instance extends ResourceBase { static BlockDeviceMapping: typeof BlockDeviceMapping; static EbsBlockDevice: typeof EbsBlockDevice; static TimeBasedAutoScaling: typeof TimeBasedAutoScaling; constructor(properties: InstanceProperties); }