import { ResourceBase } from '../resource'; import { Value, List } from '../dataTypes'; export declare class AdditionalInstanceConfiguration { UserDataOverride?: Value; SystemsManagerAgent?: SystemsManagerAgent; constructor(properties: AdditionalInstanceConfiguration); } export declare class ComponentConfiguration { Parameters?: List; ComponentArn?: Value; constructor(properties: ComponentConfiguration); } export declare class ComponentParameter { Value: List>; Name: Value; constructor(properties: ComponentParameter); } export declare class EbsInstanceBlockDeviceSpecification { SnapshotId?: Value; VolumeType?: Value; KmsKeyId?: Value; Encrypted?: Value; Throughput?: Value; Iops?: Value; VolumeSize?: Value; DeleteOnTermination?: Value; constructor(properties: EbsInstanceBlockDeviceSpecification); } export declare class InstanceBlockDeviceMapping { Ebs?: EbsInstanceBlockDeviceSpecification; NoDevice?: Value; VirtualName?: Value; DeviceName?: Value; constructor(properties: InstanceBlockDeviceMapping); } export declare class SystemsManagerAgent { UninstallAfterBuild?: Value; constructor(properties: SystemsManagerAgent); } export interface ImageRecipeProperties { Components: List; WorkingDirectory?: Value; ParentImage: Value; Description?: Value; Version: Value; BlockDeviceMappings?: List; AdditionalInstanceConfiguration?: AdditionalInstanceConfiguration; Tags?: { [key: string]: Value; }; Name: Value; } export default class ImageRecipe extends ResourceBase { static AdditionalInstanceConfiguration: typeof AdditionalInstanceConfiguration; static ComponentConfiguration: typeof ComponentConfiguration; static ComponentParameter: typeof ComponentParameter; static EbsInstanceBlockDeviceSpecification: typeof EbsInstanceBlockDeviceSpecification; static InstanceBlockDeviceMapping: typeof InstanceBlockDeviceMapping; static SystemsManagerAgent: typeof SystemsManagerAgent; constructor(properties: ImageRecipeProperties); }