import cdk = require('@aws-cdk/cdk'); export declare namespace cloudformation { /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html */ interface AliasResourceProps { /** * ``AWS::Lambda::Alias.FunctionName`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html#cfn-lambda-alias-functionname */ functionName: string | cdk.Token; /** * ``AWS::Lambda::Alias.FunctionVersion`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html#cfn-lambda-alias-functionversion */ functionVersion: string | cdk.Token; /** * ``AWS::Lambda::Alias.Name`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html#cfn-lambda-alias-name */ aliasName: string | cdk.Token; /** * ``AWS::Lambda::Alias.Description`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html#cfn-lambda-alias-description */ description?: string | cdk.Token; /** * ``AWS::Lambda::Alias.RoutingConfig`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html#cfn-lambda-alias-routingconfig */ routingConfig?: AliasResource.AliasRoutingConfigurationProperty | cdk.Token; } /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html */ class AliasResource extends cdk.Resource { /** * The CloudFormation resource type name for this resource class. */ static readonly resourceTypeName: string; /** * Creates a new ``AWS::Lambda::Alias``. * * @param parent the ``cdk.Construct`` this ``AliasResource`` is a part of * @param name the name of the resource in the ``cdk.Construct`` tree * @param properties the properties of this ``AliasResource`` */ constructor(parent: cdk.Construct, name: string, properties: AliasResourceProps); protected renderProperties(): { [key: string]: any; }; } namespace AliasResource { /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-alias-aliasroutingconfiguration.html */ interface AliasRoutingConfigurationProperty { /** * ``AliasResource.AliasRoutingConfigurationProperty.AdditionalVersionWeights`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-alias-aliasroutingconfiguration.html#cfn-lambda-alias-aliasroutingconfiguration-additionalversionweights */ additionalVersionWeights: Array | cdk.Token; } } namespace AliasResource { /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-alias-versionweight.html */ interface VersionWeightProperty { /** * ``AliasResource.VersionWeightProperty.FunctionVersion`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-alias-versionweight.html#cfn-lambda-alias-versionweight-functionversion */ functionVersion: string | cdk.Token; /** * ``AliasResource.VersionWeightProperty.FunctionWeight`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-alias-versionweight.html#cfn-lambda-alias-versionweight-functionweight */ functionWeight: number | cdk.Token; } } } export declare namespace cloudformation { /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html */ interface EventSourceMappingResourceProps { /** * ``AWS::Lambda::EventSourceMapping.EventSourceArn`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-eventsourcearn */ eventSourceArn: string | cdk.Token; /** * ``AWS::Lambda::EventSourceMapping.FunctionName`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-functionname */ functionName: string | cdk.Token; /** * ``AWS::Lambda::EventSourceMapping.BatchSize`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-batchsize */ batchSize?: number | cdk.Token; /** * ``AWS::Lambda::EventSourceMapping.Enabled`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-enabled */ enabled?: boolean | cdk.Token; /** * ``AWS::Lambda::EventSourceMapping.StartingPosition`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-startingposition */ startingPosition?: string | cdk.Token; } /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html */ class EventSourceMappingResource extends cdk.Resource { /** * The CloudFormation resource type name for this resource class. */ static readonly resourceTypeName: string; /** * Creates a new ``AWS::Lambda::EventSourceMapping``. * * @param parent the ``cdk.Construct`` this ``EventSourceMappingResource`` is a part of * @param name the name of the resource in the ``cdk.Construct`` tree * @param properties the properties of this ``EventSourceMappingResource`` */ constructor(parent: cdk.Construct, name: string, properties: EventSourceMappingResourceProps); protected renderProperties(): { [key: string]: any; }; } } export declare namespace cloudformation { /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html */ interface FunctionResourceProps { /** * ``AWS::Lambda::Function.Code`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-code */ code: FunctionResource.CodeProperty | cdk.Token; /** * ``AWS::Lambda::Function.Handler`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-handler */ handler: string | cdk.Token; /** * ``AWS::Lambda::Function.Role`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-role */ role: string | cdk.Token; /** * ``AWS::Lambda::Function.Runtime`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-runtime */ runtime: string | cdk.Token; /** * ``AWS::Lambda::Function.DeadLetterConfig`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-deadletterconfig */ deadLetterConfig?: FunctionResource.DeadLetterConfigProperty | cdk.Token; /** * ``AWS::Lambda::Function.Description`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-description */ description?: string | cdk.Token; /** * ``AWS::Lambda::Function.Environment`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-environment */ environment?: FunctionResource.EnvironmentProperty | cdk.Token; /** * ``AWS::Lambda::Function.FunctionName`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-functionname */ functionName?: string | cdk.Token; /** * ``AWS::Lambda::Function.KmsKeyArn`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-kmskeyarn */ kmsKeyArn?: string | cdk.Token; /** * ``AWS::Lambda::Function.MemorySize`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-memorysize */ memorySize?: number | cdk.Token; /** * ``AWS::Lambda::Function.ReservedConcurrentExecutions`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-reservedconcurrentexecutions */ reservedConcurrentExecutions?: number | cdk.Token; /** * ``AWS::Lambda::Function.Tags`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-tags */ tags?: Array | cdk.Token; /** * ``AWS::Lambda::Function.Timeout`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-timeout */ timeout?: number | cdk.Token; /** * ``AWS::Lambda::Function.TracingConfig`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-tracingconfig */ tracingConfig?: FunctionResource.TracingConfigProperty | cdk.Token; /** * ``AWS::Lambda::Function.VpcConfig`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-vpcconfig */ vpcConfig?: FunctionResource.VpcConfigProperty | cdk.Token; } /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html */ class FunctionResource extends cdk.Resource { /** * The CloudFormation resource type name for this resource class. */ static readonly resourceTypeName: string; /** * @cloudformation_attribute Arn */ readonly functionArn: FunctionArn; /** * Creates a new ``AWS::Lambda::Function``. * * @param parent the ``cdk.Construct`` this ``FunctionResource`` is a part of * @param name the name of the resource in the ``cdk.Construct`` tree * @param properties the properties of this ``FunctionResource`` */ constructor(parent: cdk.Construct, name: string, properties: FunctionResourceProps); protected renderProperties(): { [key: string]: any; }; } namespace FunctionResource { /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html */ interface CodeProperty { /** * ``FunctionResource.CodeProperty.S3Bucket`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-s3bucket */ s3Bucket?: string | cdk.Token; /** * ``FunctionResource.CodeProperty.S3Key`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-s3key */ s3Key?: string | cdk.Token; /** * ``FunctionResource.CodeProperty.S3ObjectVersion`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-s3objectversion */ s3ObjectVersion?: string | cdk.Token; /** * ``FunctionResource.CodeProperty.ZipFile`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-zipfile */ zipFile?: string | cdk.Token; } } namespace FunctionResource { /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-deadletterconfig.html */ interface DeadLetterConfigProperty { /** * ``FunctionResource.DeadLetterConfigProperty.TargetArn`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-deadletterconfig.html#cfn-lambda-function-deadletterconfig-targetarn */ targetArn?: string | cdk.Token; } } namespace FunctionResource { /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-environment.html */ interface EnvironmentProperty { /** * ``FunctionResource.EnvironmentProperty.Variables`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-environment.html#cfn-lambda-function-environment-variables */ variables?: { [key: string]: (string | cdk.Token); } | cdk.Token; } } namespace FunctionResource { /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-tracingconfig.html */ interface TracingConfigProperty { /** * ``FunctionResource.TracingConfigProperty.Mode`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-tracingconfig.html#cfn-lambda-function-tracingconfig-mode */ mode?: string | cdk.Token; } } namespace FunctionResource { /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-vpcconfig.html */ interface VpcConfigProperty { /** * ``FunctionResource.VpcConfigProperty.SecurityGroupIds`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-vpcconfig.html#cfn-lambda-function-vpcconfig-securitygroupids */ securityGroupIds: Array | cdk.Token; /** * ``FunctionResource.VpcConfigProperty.SubnetIds`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-vpcconfig.html#cfn-lambda-function-vpcconfig-subnetids */ subnetIds: Array | cdk.Token; } } } export declare class FunctionArn extends cdk.Arn { } export declare namespace cloudformation { /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html */ interface PermissionResourceProps { /** * ``AWS::Lambda::Permission.Action`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html#cfn-lambda-permission-action */ action: string | cdk.Token; /** * ``AWS::Lambda::Permission.FunctionName`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html#cfn-lambda-permission-functionname */ functionName: string | cdk.Token; /** * ``AWS::Lambda::Permission.Principal`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html#cfn-lambda-permission-principal */ principal: string | cdk.Token; /** * ``AWS::Lambda::Permission.EventSourceToken`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html#cfn-lambda-permission-eventsourcetoken */ eventSourceToken?: string | cdk.Token; /** * ``AWS::Lambda::Permission.SourceAccount`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html#cfn-lambda-permission-sourceaccount */ sourceAccount?: string | cdk.Token; /** * ``AWS::Lambda::Permission.SourceArn`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html#cfn-lambda-permission-sourcearn */ sourceArn?: string | cdk.Token; } /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html */ class PermissionResource extends cdk.Resource { /** * The CloudFormation resource type name for this resource class. */ static readonly resourceTypeName: string; /** * Creates a new ``AWS::Lambda::Permission``. * * @param parent the ``cdk.Construct`` this ``PermissionResource`` is a part of * @param name the name of the resource in the ``cdk.Construct`` tree * @param properties the properties of this ``PermissionResource`` */ constructor(parent: cdk.Construct, name: string, properties: PermissionResourceProps); protected renderProperties(): { [key: string]: any; }; } } export declare namespace cloudformation { /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html */ interface VersionResourceProps { /** * ``AWS::Lambda::Version.FunctionName`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html#cfn-lambda-version-functionname */ functionName: string | cdk.Token; /** * ``AWS::Lambda::Version.CodeSha256`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html#cfn-lambda-version-codesha256 */ codeSha256?: string | cdk.Token; /** * ``AWS::Lambda::Version.Description`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html#cfn-lambda-version-description */ description?: string | cdk.Token; } /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html */ class VersionResource extends cdk.Resource { /** * The CloudFormation resource type name for this resource class. */ static readonly resourceTypeName: string; /** * @cloudformation_attribute Version */ readonly version: Version; /** * Creates a new ``AWS::Lambda::Version``. * * @param parent the ``cdk.Construct`` this ``VersionResource`` is a part of * @param name the name of the resource in the ``cdk.Construct`` tree * @param properties the properties of this ``VersionResource`` */ constructor(parent: cdk.Construct, name: string, properties: VersionResourceProps); protected renderProperties(): { [key: string]: any; }; } } export declare class Version extends cdk.Token { }