import { ResourceBase, ResourceTag } from '../resource'; import { Value, List } from '../dataTypes'; export declare class Code { S3ObjectVersion?: Value; S3Bucket?: Value; ZipFile?: Value; S3Key?: Value; ImageUri?: Value; constructor(properties: Code); } export declare class DeadLetterConfig { TargetArn?: Value; constructor(properties: DeadLetterConfig); } export declare class Environment { Variables?: { [key: string]: Value; }; constructor(properties: Environment); } export declare class EphemeralStorage { Size: Value; constructor(properties: EphemeralStorage); } export declare class FileSystemConfig { Arn: Value; LocalMountPath: Value; constructor(properties: FileSystemConfig); } export declare class ImageConfig { WorkingDirectory?: Value; Command?: List>; EntryPoint?: List>; constructor(properties: ImageConfig); } export declare class RuntimeManagementConfig { UpdateRuntimeOn: Value; RuntimeVersionArn?: Value; constructor(properties: RuntimeManagementConfig); } export declare class SnapStart { ApplyOn: Value; constructor(properties: SnapStart); } export declare class SnapStartResponse { OptimizationStatus?: Value; ApplyOn?: Value; constructor(properties: SnapStartResponse); } export declare class TracingConfig { Mode?: Value; constructor(properties: TracingConfig); } export declare class VpcConfig { Ipv6AllowedForDualStack?: Value; SecurityGroupIds?: List>; SubnetIds?: List>; constructor(properties: VpcConfig); } export interface FunctionProperties { Policy?: { [key: string]: any; }; Description?: Value; TracingConfig?: TracingConfig; VpcConfig?: VpcConfig; RuntimeManagementConfig?: RuntimeManagementConfig; ReservedConcurrentExecutions?: Value; SnapStart?: SnapStart; FileSystemConfigs?: List; FunctionName?: Value; Runtime?: Value; KmsKeyArn?: Value; PackageType?: Value; CodeSigningConfigArn?: Value; Layers?: List>; Tags?: List; ImageConfig?: ImageConfig; MemorySize?: Value; DeadLetterConfig?: DeadLetterConfig; Timeout?: Value; Handler?: Value; Code: Code; Role: Value; Environment?: Environment; EphemeralStorage?: EphemeralStorage; Architectures?: List>; } export default class Function extends ResourceBase { static Code: typeof Code; static DeadLetterConfig: typeof DeadLetterConfig; static Environment: typeof Environment; static EphemeralStorage: typeof EphemeralStorage; static FileSystemConfig: typeof FileSystemConfig; static ImageConfig: typeof ImageConfig; static RuntimeManagementConfig: typeof RuntimeManagementConfig; static SnapStart: typeof SnapStart; static SnapStartResponse: typeof SnapStartResponse; static TracingConfig: typeof TracingConfig; static VpcConfig: typeof VpcConfig; constructor(properties: FunctionProperties); }