From a09d364f9731745d8e200db5e2436a4f17da6eb2 Mon Sep 17 00:00:00 2001 From: Romain Marcadier-Muller Date: Tue, 16 Apr 2019 12:50:09 +0200 Subject: [PATCH] chore: Drop @aws-cdk/aws-serverless source (#2128) The package at version 0.27.0 was effectively marked as deprecated on NPM.JS with an appropriate message, instructing users to use @aws-cdk/aws-sam instead. As a consequence, this beacon is no longer needed and can be dropped. --- packages/@aws-cdk/aws-serverless/.gitignore | 4 - packages/@aws-cdk/aws-serverless/.npmignore | 9 - packages/@aws-cdk/aws-serverless/README.md | 4 - packages/@aws-cdk/aws-serverless/lib/index.ts | 4 - .../lib/serverless.generated.ts | 2035 ----------------- .../@aws-cdk/aws-serverless/package-lock.json | 742 ------ packages/@aws-cdk/aws-serverless/package.json | 63 - 7 files changed, 2861 deletions(-) delete mode 100644 packages/@aws-cdk/aws-serverless/.gitignore delete mode 100644 packages/@aws-cdk/aws-serverless/.npmignore delete mode 100644 packages/@aws-cdk/aws-serverless/README.md delete mode 100644 packages/@aws-cdk/aws-serverless/lib/index.ts delete mode 100644 packages/@aws-cdk/aws-serverless/lib/serverless.generated.ts delete mode 100644 packages/@aws-cdk/aws-serverless/package-lock.json delete mode 100644 packages/@aws-cdk/aws-serverless/package.json diff --git a/packages/@aws-cdk/aws-serverless/.gitignore b/packages/@aws-cdk/aws-serverless/.gitignore deleted file mode 100644 index f50d54a345a3f..0000000000000 --- a/packages/@aws-cdk/aws-serverless/.gitignore +++ /dev/null @@ -1,4 +0,0 @@ -.jsii -tsconfig.json -*.d.ts -*.js diff --git a/packages/@aws-cdk/aws-serverless/.npmignore b/packages/@aws-cdk/aws-serverless/.npmignore deleted file mode 100644 index 79bf59f3834e3..0000000000000 --- a/packages/@aws-cdk/aws-serverless/.npmignore +++ /dev/null @@ -1,9 +0,0 @@ -*.ts -!*.d.ts - - -# Exclude jsii outdir -dist - -# Include .jsii -!.jsii diff --git a/packages/@aws-cdk/aws-serverless/README.md b/packages/@aws-cdk/aws-serverless/README.md deleted file mode 100644 index 42ffd142e7470..0000000000000 --- a/packages/@aws-cdk/aws-serverless/README.md +++ /dev/null @@ -1,4 +0,0 @@ -## AWS Serverless Construct Library - -The last version published for this module was `0.26.0`. Since then, this module -was renamed to `@aws-cdk/aws-sam` - please upgrade your dependencies accordingly. diff --git a/packages/@aws-cdk/aws-serverless/lib/index.ts b/packages/@aws-cdk/aws-serverless/lib/index.ts deleted file mode 100644 index 08e253902ed40..0000000000000 --- a/packages/@aws-cdk/aws-serverless/lib/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -export * from '@aws-cdk/aws-sam'; - -// tslint:disable-next-line: no-console -console.error('WARNING: The @aws-cdk/serverless package was renamed to @aws-cdk/sam. Please update your dependencies!'); diff --git a/packages/@aws-cdk/aws-serverless/lib/serverless.generated.ts b/packages/@aws-cdk/aws-serverless/lib/serverless.generated.ts deleted file mode 100644 index d45bee28444ee..0000000000000 --- a/packages/@aws-cdk/aws-serverless/lib/serverless.generated.ts +++ /dev/null @@ -1,2035 +0,0 @@ -// Copyright 2012-2019 Amazon.com, Inc. or its affiliates. All Rights Reserved. -// Generated from the AWS CloudFormation Resource Specification -// See: docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-resource-specification.html -// @cfn2ts:meta@ {"generated":"2019-03-21T09:12:23.615Z","fingerprint":"UJ42fezBazlHPOkm0pNitOMM9peubfGEd2/XcTwSlsI="} - -// tslint:disable:max-line-length | This is generated code - line lengths are difficult to control - -import cdk = require('@aws-cdk/cdk'); - -/** - * Properties for defining a `AWS::Serverless::Api` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi - */ -export interface CfnApiProps { - /** - * `AWS::Serverless::Api.StageName` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi - */ - stageName: string; - /** - * `AWS::Serverless::Api.Auth` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi - */ - auth?: CfnApi.AuthProperty | cdk.Token; - /** - * `AWS::Serverless::Api.BinaryMediaTypes` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi - */ - binaryMediaTypes?: string[]; - /** - * `AWS::Serverless::Api.CacheClusterEnabled` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi - */ - cacheClusterEnabled?: boolean | cdk.Token; - /** - * `AWS::Serverless::Api.CacheClusterSize` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi - */ - cacheClusterSize?: string; - /** - * `AWS::Serverless::Api.Cors` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi - */ - cors?: string; - /** - * `AWS::Serverless::Api.DefinitionBody` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi - */ - definitionBody?: object | cdk.Token; - /** - * `AWS::Serverless::Api.DefinitionUri` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi - */ - definitionUri?: CfnApi.S3LocationProperty | string | cdk.Token; - /** - * `AWS::Serverless::Api.EndpointConfiguration` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi - */ - endpointConfiguration?: string; - /** - * `AWS::Serverless::Api.MethodSettings` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi - */ - methodSettings?: object | cdk.Token; - /** - * `AWS::Serverless::Api.Name` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi - */ - name?: string; - /** - * `AWS::Serverless::Api.Variables` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi - */ - variables?: { [key: string]: (string) } | cdk.Token; -} - -/** - * Determine whether the given properties match those of a `CfnApiProps` - * - * @param properties - the TypeScript properties of a `CfnApiProps` - * - * @returns the result of the validation. - */ -function CfnApiPropsValidator(properties: any): cdk.ValidationResult { - if (!cdk.canInspect(properties)) { return cdk.VALIDATION_SUCCESS; } - const errors = new cdk.ValidationResults(); - errors.collect(cdk.propertyValidator('auth', CfnApi_AuthPropertyValidator)(properties.auth)); - errors.collect(cdk.propertyValidator('binaryMediaTypes', cdk.listValidator(cdk.validateString))(properties.binaryMediaTypes)); - errors.collect(cdk.propertyValidator('cacheClusterEnabled', cdk.validateBoolean)(properties.cacheClusterEnabled)); - errors.collect(cdk.propertyValidator('cacheClusterSize', cdk.validateString)(properties.cacheClusterSize)); - errors.collect(cdk.propertyValidator('cors', cdk.validateString)(properties.cors)); - errors.collect(cdk.propertyValidator('definitionBody', cdk.validateObject)(properties.definitionBody)); - errors.collect(cdk.propertyValidator('definitionUri', cdk.unionValidator(CfnApi_S3LocationPropertyValidator, cdk.validateString))(properties.definitionUri)); - errors.collect(cdk.propertyValidator('endpointConfiguration', cdk.validateString)(properties.endpointConfiguration)); - errors.collect(cdk.propertyValidator('methodSettings', cdk.validateObject)(properties.methodSettings)); - errors.collect(cdk.propertyValidator('name', cdk.validateString)(properties.name)); - errors.collect(cdk.propertyValidator('stageName', cdk.requiredValidator)(properties.stageName)); - errors.collect(cdk.propertyValidator('stageName', cdk.validateString)(properties.stageName)); - errors.collect(cdk.propertyValidator('variables', cdk.hashValidator(cdk.validateString))(properties.variables)); - return errors.wrap('supplied properties not correct for "CfnApiProps"'); -} - -/** - * Renders the AWS CloudFormation properties of an `AWS::Serverless::Api` resource - * - * @param properties - the TypeScript properties of a `CfnApiProps` - * - * @returns the AWS CloudFormation properties of an `AWS::Serverless::Api` resource. - */ -// @ts-ignore TS6133 -function cfnApiPropsToCloudFormation(properties: any): any { - if (!cdk.canInspect(properties)) { return properties; } - CfnApiPropsValidator(properties).assertSuccess(); - return { - StageName: cdk.stringToCloudFormation(properties.stageName), - Auth: cfnApiAuthPropertyToCloudFormation(properties.auth), - BinaryMediaTypes: cdk.listMapper(cdk.stringToCloudFormation)(properties.binaryMediaTypes), - CacheClusterEnabled: cdk.booleanToCloudFormation(properties.cacheClusterEnabled), - CacheClusterSize: cdk.stringToCloudFormation(properties.cacheClusterSize), - Cors: cdk.stringToCloudFormation(properties.cors), - DefinitionBody: cdk.objectToCloudFormation(properties.definitionBody), - DefinitionUri: cdk.unionMapper([CfnApi_S3LocationPropertyValidator, cdk.validateString], [cfnApiS3LocationPropertyToCloudFormation, cdk.stringToCloudFormation])(properties.definitionUri), - EndpointConfiguration: cdk.stringToCloudFormation(properties.endpointConfiguration), - MethodSettings: cdk.objectToCloudFormation(properties.methodSettings), - Name: cdk.stringToCloudFormation(properties.name), - Variables: cdk.hashMapper(cdk.stringToCloudFormation)(properties.variables), - }; -} - -/** - * A CloudFormation `AWS::Serverless::Api` - * - * @cloudformationResource AWS::Serverless::Api - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi - */ -export class CfnApi extends cdk.CfnResource { - /** - * The CloudFormation resource type name for this resource class. - */ - public static readonly resourceTypeName = "AWS::Serverless::Api"; - /** - * The `Transform` a template must use in order to use this resource - */ - public static readonly requiredTransform = "AWS::Serverless-2016-10-31"; - public readonly apiName: string; - - /** - * Create a new `AWS::Serverless::Api`. - * - * @param scope - scope in which this resource is defined - * @param id - scoped id of the resource - * @param props - resource properties - */ - constructor(scope: cdk.Construct, id: string, props: CfnApiProps) { - super(scope, id, { type: CfnApi.resourceTypeName, properties: props }); - cdk.requireProperty(props, 'stageName', this); - // If a different transform than the required one is in use, this resource cannot be used - if (this.node.stack.templateOptions.transform && this.node.stack.templateOptions.transform !== CfnApi.requiredTransform) { - throw new Error(`The ${JSON.stringify(CfnApi.requiredTransform)} transform is required when using CfnApi, but the ${JSON.stringify(this.node.stack.templateOptions.transform)} is used.`); - } - // Automatically configure the required transform - this.node.stack.templateOptions.transform = CfnApi.requiredTransform; - this.apiName = this.ref.toString(); - } - - public get propertyOverrides(): CfnApiProps { - return this.untypedPropertyOverrides; - } - protected renderProperties(properties: any): { [key: string]: any } { - return cfnApiPropsToCloudFormation(this.node.resolve(properties)); - } -} - -export namespace CfnApi { - /** - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#api-auth-object - */ - export interface AuthProperty { - /** - * `CfnApi.AuthProperty.Authorizers` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#api-auth-object - */ - authorizers?: object | cdk.Token; - /** - * `CfnApi.AuthProperty.DefaultAuthorizer` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#api-auth-object - */ - defaultAuthorizer?: string; - } -} - -/** - * Determine whether the given properties match those of a `AuthProperty` - * - * @param properties - the TypeScript properties of a `AuthProperty` - * - * @returns the result of the validation. - */ -function CfnApi_AuthPropertyValidator(properties: any): cdk.ValidationResult { - if (!cdk.canInspect(properties)) { return cdk.VALIDATION_SUCCESS; } - const errors = new cdk.ValidationResults(); - errors.collect(cdk.propertyValidator('authorizers', cdk.validateObject)(properties.authorizers)); - errors.collect(cdk.propertyValidator('defaultAuthorizer', cdk.validateString)(properties.defaultAuthorizer)); - return errors.wrap('supplied properties not correct for "AuthProperty"'); -} - -/** - * Renders the AWS CloudFormation properties of an `AWS::Serverless::Api.Auth` resource - * - * @param properties - the TypeScript properties of a `AuthProperty` - * - * @returns the AWS CloudFormation properties of an `AWS::Serverless::Api.Auth` resource. - */ -// @ts-ignore TS6133 -function cfnApiAuthPropertyToCloudFormation(properties: any): any { - if (!cdk.canInspect(properties)) { return properties; } - CfnApi_AuthPropertyValidator(properties).assertSuccess(); - return { - Authorizers: cdk.objectToCloudFormation(properties.authorizers), - DefaultAuthorizer: cdk.stringToCloudFormation(properties.defaultAuthorizer), - }; -} - -export namespace CfnApi { - /** - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#s3-location-object - */ - export interface S3LocationProperty { - /** - * `CfnApi.S3LocationProperty.Bucket` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction - */ - bucket: string; - /** - * `CfnApi.S3LocationProperty.Key` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction - */ - key: string; - /** - * `CfnApi.S3LocationProperty.Version` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction - */ - version: number | cdk.Token; - } -} - -/** - * Determine whether the given properties match those of a `S3LocationProperty` - * - * @param properties - the TypeScript properties of a `S3LocationProperty` - * - * @returns the result of the validation. - */ -function CfnApi_S3LocationPropertyValidator(properties: any): cdk.ValidationResult { - if (!cdk.canInspect(properties)) { return cdk.VALIDATION_SUCCESS; } - const errors = new cdk.ValidationResults(); - errors.collect(cdk.propertyValidator('bucket', cdk.requiredValidator)(properties.bucket)); - errors.collect(cdk.propertyValidator('bucket', cdk.validateString)(properties.bucket)); - errors.collect(cdk.propertyValidator('key', cdk.requiredValidator)(properties.key)); - errors.collect(cdk.propertyValidator('key', cdk.validateString)(properties.key)); - errors.collect(cdk.propertyValidator('version', cdk.requiredValidator)(properties.version)); - errors.collect(cdk.propertyValidator('version', cdk.validateNumber)(properties.version)); - return errors.wrap('supplied properties not correct for "S3LocationProperty"'); -} - -/** - * Renders the AWS CloudFormation properties of an `AWS::Serverless::Api.S3Location` resource - * - * @param properties - the TypeScript properties of a `S3LocationProperty` - * - * @returns the AWS CloudFormation properties of an `AWS::Serverless::Api.S3Location` resource. - */ -// @ts-ignore TS6133 -function cfnApiS3LocationPropertyToCloudFormation(properties: any): any { - if (!cdk.canInspect(properties)) { return properties; } - CfnApi_S3LocationPropertyValidator(properties).assertSuccess(); - return { - Bucket: cdk.stringToCloudFormation(properties.bucket), - Key: cdk.stringToCloudFormation(properties.key), - Version: cdk.numberToCloudFormation(properties.version), - }; -} - -/** - * Properties for defining a `AWS::Serverless::Application` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapplication - */ -export interface CfnApplicationProps { - /** - * `AWS::Serverless::Application.Location` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapplication - */ - location: CfnApplication.ApplicationLocationProperty | string | cdk.Token; - /** - * `AWS::Serverless::Application.NotificationArns` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapplication - */ - notificationArns?: string[]; - /** - * `AWS::Serverless::Application.Parameters` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapplication - */ - parameters?: { [key: string]: (string) } | cdk.Token; - /** - * `AWS::Serverless::Application.Tags` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapplication - */ - tags?: { [key: string]: (string) }; - /** - * `AWS::Serverless::Application.TimeoutInMinutes` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapplication - */ - timeoutInMinutes?: number | cdk.Token; -} - -/** - * Determine whether the given properties match those of a `CfnApplicationProps` - * - * @param properties - the TypeScript properties of a `CfnApplicationProps` - * - * @returns the result of the validation. - */ -function CfnApplicationPropsValidator(properties: any): cdk.ValidationResult { - if (!cdk.canInspect(properties)) { return cdk.VALIDATION_SUCCESS; } - const errors = new cdk.ValidationResults(); - errors.collect(cdk.propertyValidator('location', cdk.requiredValidator)(properties.location)); - errors.collect(cdk.propertyValidator('location', cdk.unionValidator(CfnApplication_ApplicationLocationPropertyValidator, cdk.validateString))(properties.location)); - errors.collect(cdk.propertyValidator('notificationArns', cdk.listValidator(cdk.validateString))(properties.notificationArns)); - errors.collect(cdk.propertyValidator('parameters', cdk.hashValidator(cdk.validateString))(properties.parameters)); - errors.collect(cdk.propertyValidator('tags', cdk.hashValidator(cdk.validateString))(properties.tags)); - errors.collect(cdk.propertyValidator('timeoutInMinutes', cdk.validateNumber)(properties.timeoutInMinutes)); - return errors.wrap('supplied properties not correct for "CfnApplicationProps"'); -} - -/** - * Renders the AWS CloudFormation properties of an `AWS::Serverless::Application` resource - * - * @param properties - the TypeScript properties of a `CfnApplicationProps` - * - * @returns the AWS CloudFormation properties of an `AWS::Serverless::Application` resource. - */ -// @ts-ignore TS6133 -function cfnApplicationPropsToCloudFormation(properties: any): any { - if (!cdk.canInspect(properties)) { return properties; } - CfnApplicationPropsValidator(properties).assertSuccess(); - return { - Location: cdk.unionMapper([CfnApplication_ApplicationLocationPropertyValidator, cdk.validateString], [cfnApplicationApplicationLocationPropertyToCloudFormation, cdk.stringToCloudFormation])(properties.location), - NotificationArns: cdk.listMapper(cdk.stringToCloudFormation)(properties.notificationArns), - Parameters: cdk.hashMapper(cdk.stringToCloudFormation)(properties.parameters), - Tags: cdk.hashMapper(cdk.stringToCloudFormation)(properties.tags), - TimeoutInMinutes: cdk.numberToCloudFormation(properties.timeoutInMinutes), - }; -} - -/** - * A CloudFormation `AWS::Serverless::Application` - * - * @cloudformationResource AWS::Serverless::Application - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapplication - */ -export class CfnApplication extends cdk.CfnResource { - /** - * The CloudFormation resource type name for this resource class. - */ - public static readonly resourceTypeName = "AWS::Serverless::Application"; - /** - * The `Transform` a template must use in order to use this resource - */ - public static readonly requiredTransform = "AWS::Serverless-2016-10-31"; - public readonly applicationName: string; - - /** - * The `TagManager` handles setting, removing and formatting tags - * - * Tags should be managed either passing them as properties during - * initiation or by calling methods on this object. If both techniques are - * used only the tags from the TagManager will be used. `Tag` (aspect) - * will use the manager. - */ - public readonly tags: cdk.TagManager; - - /** - * Create a new `AWS::Serverless::Application`. - * - * @param scope - scope in which this resource is defined - * @param id - scoped id of the resource - * @param props - resource properties - */ - constructor(scope: cdk.Construct, id: string, props: CfnApplicationProps) { - super(scope, id, { type: CfnApplication.resourceTypeName, properties: props }); - cdk.requireProperty(props, 'location', this); - // If a different transform than the required one is in use, this resource cannot be used - if (this.node.stack.templateOptions.transform && this.node.stack.templateOptions.transform !== CfnApplication.requiredTransform) { - throw new Error(`The ${JSON.stringify(CfnApplication.requiredTransform)} transform is required when using CfnApplication, but the ${JSON.stringify(this.node.stack.templateOptions.transform)} is used.`); - } - // Automatically configure the required transform - this.node.stack.templateOptions.transform = CfnApplication.requiredTransform; - this.applicationName = this.ref.toString(); - const tags = props === undefined ? undefined : props.tags; - this.tags = new cdk.TagManager(cdk.TagType.Map, "AWS::Serverless::Application", tags); - } - - public get propertyOverrides(): CfnApplicationProps { - return this.untypedPropertyOverrides; - } - protected renderProperties(properties: any): { [key: string]: any } { - return cfnApplicationPropsToCloudFormation(this.node.resolve(properties)); - } -} - -export namespace CfnApplication { - /** - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapplication - */ - export interface ApplicationLocationProperty { - /** - * `CfnApplication.ApplicationLocationProperty.ApplicationId` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapplication - */ - applicationId: string; - /** - * `CfnApplication.ApplicationLocationProperty.SemanticVersion` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapplication - */ - semanticVersion: string; - } -} - -/** - * Determine whether the given properties match those of a `ApplicationLocationProperty` - * - * @param properties - the TypeScript properties of a `ApplicationLocationProperty` - * - * @returns the result of the validation. - */ -function CfnApplication_ApplicationLocationPropertyValidator(properties: any): cdk.ValidationResult { - if (!cdk.canInspect(properties)) { return cdk.VALIDATION_SUCCESS; } - const errors = new cdk.ValidationResults(); - errors.collect(cdk.propertyValidator('applicationId', cdk.requiredValidator)(properties.applicationId)); - errors.collect(cdk.propertyValidator('applicationId', cdk.validateString)(properties.applicationId)); - errors.collect(cdk.propertyValidator('semanticVersion', cdk.requiredValidator)(properties.semanticVersion)); - errors.collect(cdk.propertyValidator('semanticVersion', cdk.validateString)(properties.semanticVersion)); - return errors.wrap('supplied properties not correct for "ApplicationLocationProperty"'); -} - -/** - * Renders the AWS CloudFormation properties of an `AWS::Serverless::Application.ApplicationLocation` resource - * - * @param properties - the TypeScript properties of a `ApplicationLocationProperty` - * - * @returns the AWS CloudFormation properties of an `AWS::Serverless::Application.ApplicationLocation` resource. - */ -// @ts-ignore TS6133 -function cfnApplicationApplicationLocationPropertyToCloudFormation(properties: any): any { - if (!cdk.canInspect(properties)) { return properties; } - CfnApplication_ApplicationLocationPropertyValidator(properties).assertSuccess(); - return { - ApplicationId: cdk.stringToCloudFormation(properties.applicationId), - SemanticVersion: cdk.stringToCloudFormation(properties.semanticVersion), - }; -} - -/** - * Properties for defining a `AWS::Serverless::Function` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction - */ -export interface CfnFunctionProps { - /** - * `AWS::Serverless::Function.CodeUri` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction - */ - codeUri: CfnFunction.S3LocationProperty | string | cdk.Token; - /** - * `AWS::Serverless::Function.Handler` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction - */ - handler: string; - /** - * `AWS::Serverless::Function.Runtime` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction - */ - runtime: string; - /** - * `AWS::Serverless::Function.AutoPublishAlias` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction - */ - autoPublishAlias?: string; - /** - * `AWS::Serverless::Function.DeadLetterQueue` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction - */ - deadLetterQueue?: CfnFunction.DeadLetterQueueProperty | cdk.Token; - /** - * `AWS::Serverless::Function.DeploymentPreference` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#deploymentpreference-object - */ - deploymentPreference?: CfnFunction.DeploymentPreferenceProperty | cdk.Token; - /** - * `AWS::Serverless::Function.Description` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction - */ - description?: string; - /** - * `AWS::Serverless::Function.Environment` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction - */ - environment?: CfnFunction.FunctionEnvironmentProperty | cdk.Token; - /** - * `AWS::Serverless::Function.Events` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction - */ - events?: { [key: string]: (CfnFunction.EventSourceProperty | cdk.Token) } | cdk.Token; - /** - * `AWS::Serverless::Function.FunctionName` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction - */ - functionName?: string; - /** - * `AWS::Serverless::Function.KmsKeyArn` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction - */ - kmsKeyArn?: string; - /** - * `AWS::Serverless::Function.Layers` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction - */ - layers?: string[]; - /** - * `AWS::Serverless::Function.MemorySize` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction - */ - memorySize?: number | cdk.Token; - /** - * `AWS::Serverless::Function.Policies` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction - */ - policies?: Array | CfnFunction.IAMPolicyDocumentProperty | string | cdk.Token; - /** - * `AWS::Serverless::Function.ReservedConcurrentExecutions` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction - */ - reservedConcurrentExecutions?: number | cdk.Token; - /** - * `AWS::Serverless::Function.Role` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction - */ - role?: string; - /** - * `AWS::Serverless::Function.Tags` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction - */ - tags?: { [key: string]: (string) }; - /** - * `AWS::Serverless::Function.Timeout` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction - */ - timeout?: number | cdk.Token; - /** - * `AWS::Serverless::Function.Tracing` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction - */ - tracing?: string; - /** - * `AWS::Serverless::Function.VpcConfig` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction - */ - vpcConfig?: CfnFunction.VpcConfigProperty | cdk.Token; -} - -/** - * Determine whether the given properties match those of a `CfnFunctionProps` - * - * @param properties - the TypeScript properties of a `CfnFunctionProps` - * - * @returns the result of the validation. - */ -function CfnFunctionPropsValidator(properties: any): cdk.ValidationResult { - if (!cdk.canInspect(properties)) { return cdk.VALIDATION_SUCCESS; } - const errors = new cdk.ValidationResults(); - errors.collect(cdk.propertyValidator('autoPublishAlias', cdk.validateString)(properties.autoPublishAlias)); - errors.collect(cdk.propertyValidator('codeUri', cdk.requiredValidator)(properties.codeUri)); - errors.collect(cdk.propertyValidator('codeUri', cdk.unionValidator(CfnFunction_S3LocationPropertyValidator, cdk.validateString))(properties.codeUri)); - errors.collect(cdk.propertyValidator('deadLetterQueue', CfnFunction_DeadLetterQueuePropertyValidator)(properties.deadLetterQueue)); - errors.collect(cdk.propertyValidator('deploymentPreference', CfnFunction_DeploymentPreferencePropertyValidator)(properties.deploymentPreference)); - errors.collect(cdk.propertyValidator('description', cdk.validateString)(properties.description)); - errors.collect(cdk.propertyValidator('environment', CfnFunction_FunctionEnvironmentPropertyValidator)(properties.environment)); - errors.collect(cdk.propertyValidator('events', cdk.hashValidator(CfnFunction_EventSourcePropertyValidator))(properties.events)); - errors.collect(cdk.propertyValidator('functionName', cdk.validateString)(properties.functionName)); - errors.collect(cdk.propertyValidator('handler', cdk.requiredValidator)(properties.handler)); - errors.collect(cdk.propertyValidator('handler', cdk.validateString)(properties.handler)); - errors.collect(cdk.propertyValidator('kmsKeyArn', cdk.validateString)(properties.kmsKeyArn)); - errors.collect(cdk.propertyValidator('layers', cdk.listValidator(cdk.validateString))(properties.layers)); - errors.collect(cdk.propertyValidator('memorySize', cdk.validateNumber)(properties.memorySize)); - errors.collect(cdk.propertyValidator('policies', cdk.unionValidator(cdk.unionValidator(CfnFunction_IAMPolicyDocumentPropertyValidator, cdk.validateString), cdk.listValidator(cdk.unionValidator(CfnFunction_IAMPolicyDocumentPropertyValidator, cdk.validateString))))(properties.policies)); - errors.collect(cdk.propertyValidator('reservedConcurrentExecutions', cdk.validateNumber)(properties.reservedConcurrentExecutions)); - errors.collect(cdk.propertyValidator('role', cdk.validateString)(properties.role)); - errors.collect(cdk.propertyValidator('runtime', cdk.requiredValidator)(properties.runtime)); - errors.collect(cdk.propertyValidator('runtime', cdk.validateString)(properties.runtime)); - errors.collect(cdk.propertyValidator('tags', cdk.hashValidator(cdk.validateString))(properties.tags)); - errors.collect(cdk.propertyValidator('timeout', cdk.validateNumber)(properties.timeout)); - errors.collect(cdk.propertyValidator('tracing', cdk.validateString)(properties.tracing)); - errors.collect(cdk.propertyValidator('vpcConfig', CfnFunction_VpcConfigPropertyValidator)(properties.vpcConfig)); - return errors.wrap('supplied properties not correct for "CfnFunctionProps"'); -} - -/** - * Renders the AWS CloudFormation properties of an `AWS::Serverless::Function` resource - * - * @param properties - the TypeScript properties of a `CfnFunctionProps` - * - * @returns the AWS CloudFormation properties of an `AWS::Serverless::Function` resource. - */ -// @ts-ignore TS6133 -function cfnFunctionPropsToCloudFormation(properties: any): any { - if (!cdk.canInspect(properties)) { return properties; } - CfnFunctionPropsValidator(properties).assertSuccess(); - return { - CodeUri: cdk.unionMapper([CfnFunction_S3LocationPropertyValidator, cdk.validateString], [cfnFunctionS3LocationPropertyToCloudFormation, cdk.stringToCloudFormation])(properties.codeUri), - Handler: cdk.stringToCloudFormation(properties.handler), - Runtime: cdk.stringToCloudFormation(properties.runtime), - AutoPublishAlias: cdk.stringToCloudFormation(properties.autoPublishAlias), - DeadLetterQueue: cfnFunctionDeadLetterQueuePropertyToCloudFormation(properties.deadLetterQueue), - DeploymentPreference: cfnFunctionDeploymentPreferencePropertyToCloudFormation(properties.deploymentPreference), - Description: cdk.stringToCloudFormation(properties.description), - Environment: cfnFunctionFunctionEnvironmentPropertyToCloudFormation(properties.environment), - Events: cdk.hashMapper(cfnFunctionEventSourcePropertyToCloudFormation)(properties.events), - FunctionName: cdk.stringToCloudFormation(properties.functionName), - KmsKeyArn: cdk.stringToCloudFormation(properties.kmsKeyArn), - Layers: cdk.listMapper(cdk.stringToCloudFormation)(properties.layers), - MemorySize: cdk.numberToCloudFormation(properties.memorySize), - Policies: cdk.unionMapper([cdk.unionValidator(CfnFunction_IAMPolicyDocumentPropertyValidator, cdk.validateString), cdk.listValidator(cdk.unionValidator(CfnFunction_IAMPolicyDocumentPropertyValidator, cdk.validateString))], [cdk.unionMapper([CfnFunction_IAMPolicyDocumentPropertyValidator, cdk.validateString], [cfnFunctionIAMPolicyDocumentPropertyToCloudFormation, cdk.stringToCloudFormation]), cdk.listMapper(cdk.unionMapper([CfnFunction_IAMPolicyDocumentPropertyValidator, cdk.validateString], [cfnFunctionIAMPolicyDocumentPropertyToCloudFormation, cdk.stringToCloudFormation]))])(properties.policies), - ReservedConcurrentExecutions: cdk.numberToCloudFormation(properties.reservedConcurrentExecutions), - Role: cdk.stringToCloudFormation(properties.role), - Tags: cdk.hashMapper(cdk.stringToCloudFormation)(properties.tags), - Timeout: cdk.numberToCloudFormation(properties.timeout), - Tracing: cdk.stringToCloudFormation(properties.tracing), - VpcConfig: cfnFunctionVpcConfigPropertyToCloudFormation(properties.vpcConfig), - }; -} - -/** - * A CloudFormation `AWS::Serverless::Function` - * - * @cloudformationResource AWS::Serverless::Function - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction - */ -export class CfnFunction extends cdk.CfnResource { - /** - * The CloudFormation resource type name for this resource class. - */ - public static readonly resourceTypeName = "AWS::Serverless::Function"; - /** - * The `Transform` a template must use in order to use this resource - */ - public static readonly requiredTransform = "AWS::Serverless-2016-10-31"; - public readonly functionName: string; - - /** - * The `TagManager` handles setting, removing and formatting tags - * - * Tags should be managed either passing them as properties during - * initiation or by calling methods on this object. If both techniques are - * used only the tags from the TagManager will be used. `Tag` (aspect) - * will use the manager. - */ - public readonly tags: cdk.TagManager; - - /** - * Create a new `AWS::Serverless::Function`. - * - * @param scope - scope in which this resource is defined - * @param id - scoped id of the resource - * @param props - resource properties - */ - constructor(scope: cdk.Construct, id: string, props: CfnFunctionProps) { - super(scope, id, { type: CfnFunction.resourceTypeName, properties: props }); - cdk.requireProperty(props, 'codeUri', this); - cdk.requireProperty(props, 'handler', this); - cdk.requireProperty(props, 'runtime', this); - // If a different transform than the required one is in use, this resource cannot be used - if (this.node.stack.templateOptions.transform && this.node.stack.templateOptions.transform !== CfnFunction.requiredTransform) { - throw new Error(`The ${JSON.stringify(CfnFunction.requiredTransform)} transform is required when using CfnFunction, but the ${JSON.stringify(this.node.stack.templateOptions.transform)} is used.`); - } - // Automatically configure the required transform - this.node.stack.templateOptions.transform = CfnFunction.requiredTransform; - this.functionName = this.ref.toString(); - const tags = props === undefined ? undefined : props.tags; - this.tags = new cdk.TagManager(cdk.TagType.Map, "AWS::Serverless::Function", tags); - } - - public get propertyOverrides(): CfnFunctionProps { - return this.untypedPropertyOverrides; - } - protected renderProperties(properties: any): { [key: string]: any } { - return cfnFunctionPropsToCloudFormation(this.node.resolve(properties)); - } -} - -export namespace CfnFunction { - /** - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#alexaskill - */ - export interface AlexaSkillEventProperty { - /** - * `CfnFunction.AlexaSkillEventProperty.Variables` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#alexaskill - */ - variables?: { [key: string]: (string) } | cdk.Token; - } -} - -/** - * Determine whether the given properties match those of a `AlexaSkillEventProperty` - * - * @param properties - the TypeScript properties of a `AlexaSkillEventProperty` - * - * @returns the result of the validation. - */ -function CfnFunction_AlexaSkillEventPropertyValidator(properties: any): cdk.ValidationResult { - if (!cdk.canInspect(properties)) { return cdk.VALIDATION_SUCCESS; } - const errors = new cdk.ValidationResults(); - errors.collect(cdk.propertyValidator('variables', cdk.hashValidator(cdk.validateString))(properties.variables)); - return errors.wrap('supplied properties not correct for "AlexaSkillEventProperty"'); -} - -/** - * Renders the AWS CloudFormation properties of an `AWS::Serverless::Function.AlexaSkillEvent` resource - * - * @param properties - the TypeScript properties of a `AlexaSkillEventProperty` - * - * @returns the AWS CloudFormation properties of an `AWS::Serverless::Function.AlexaSkillEvent` resource. - */ -// @ts-ignore TS6133 -function cfnFunctionAlexaSkillEventPropertyToCloudFormation(properties: any): any { - if (!cdk.canInspect(properties)) { return properties; } - CfnFunction_AlexaSkillEventPropertyValidator(properties).assertSuccess(); - return { - Variables: cdk.hashMapper(cdk.stringToCloudFormation)(properties.variables), - }; -} - -export namespace CfnFunction { - /** - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#api - */ - export interface ApiEventProperty { - /** - * `CfnFunction.ApiEventProperty.Method` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#api - */ - method: string; - /** - * `CfnFunction.ApiEventProperty.Path` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#api - */ - path: string; - /** - * `CfnFunction.ApiEventProperty.RestApiId` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#api - */ - restApiId?: string; - } -} - -/** - * Determine whether the given properties match those of a `ApiEventProperty` - * - * @param properties - the TypeScript properties of a `ApiEventProperty` - * - * @returns the result of the validation. - */ -function CfnFunction_ApiEventPropertyValidator(properties: any): cdk.ValidationResult { - if (!cdk.canInspect(properties)) { return cdk.VALIDATION_SUCCESS; } - const errors = new cdk.ValidationResults(); - errors.collect(cdk.propertyValidator('method', cdk.requiredValidator)(properties.method)); - errors.collect(cdk.propertyValidator('method', cdk.validateString)(properties.method)); - errors.collect(cdk.propertyValidator('path', cdk.requiredValidator)(properties.path)); - errors.collect(cdk.propertyValidator('path', cdk.validateString)(properties.path)); - errors.collect(cdk.propertyValidator('restApiId', cdk.validateString)(properties.restApiId)); - return errors.wrap('supplied properties not correct for "ApiEventProperty"'); -} - -/** - * Renders the AWS CloudFormation properties of an `AWS::Serverless::Function.ApiEvent` resource - * - * @param properties - the TypeScript properties of a `ApiEventProperty` - * - * @returns the AWS CloudFormation properties of an `AWS::Serverless::Function.ApiEvent` resource. - */ -// @ts-ignore TS6133 -function cfnFunctionApiEventPropertyToCloudFormation(properties: any): any { - if (!cdk.canInspect(properties)) { return properties; } - CfnFunction_ApiEventPropertyValidator(properties).assertSuccess(); - return { - Method: cdk.stringToCloudFormation(properties.method), - Path: cdk.stringToCloudFormation(properties.path), - RestApiId: cdk.stringToCloudFormation(properties.restApiId), - }; -} - -export namespace CfnFunction { - /** - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#cloudwatchevent - */ - export interface CloudWatchEventEventProperty { - /** - * `CfnFunction.CloudWatchEventEventProperty.Input` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#cloudwatchevent - */ - input?: string; - /** - * `CfnFunction.CloudWatchEventEventProperty.InputPath` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#cloudwatchevent - */ - inputPath?: string; - /** - * `CfnFunction.CloudWatchEventEventProperty.Pattern` - * @see http://docs.aws.amazon.com/AmazonCloudWatch/latest/events/CloudWatchEventsandEventPatterns.html - */ - pattern: object | cdk.Token; - } -} - -/** - * Determine whether the given properties match those of a `CloudWatchEventEventProperty` - * - * @param properties - the TypeScript properties of a `CloudWatchEventEventProperty` - * - * @returns the result of the validation. - */ -function CfnFunction_CloudWatchEventEventPropertyValidator(properties: any): cdk.ValidationResult { - if (!cdk.canInspect(properties)) { return cdk.VALIDATION_SUCCESS; } - const errors = new cdk.ValidationResults(); - errors.collect(cdk.propertyValidator('input', cdk.validateString)(properties.input)); - errors.collect(cdk.propertyValidator('inputPath', cdk.validateString)(properties.inputPath)); - errors.collect(cdk.propertyValidator('pattern', cdk.requiredValidator)(properties.pattern)); - errors.collect(cdk.propertyValidator('pattern', cdk.validateObject)(properties.pattern)); - return errors.wrap('supplied properties not correct for "CloudWatchEventEventProperty"'); -} - -/** - * Renders the AWS CloudFormation properties of an `AWS::Serverless::Function.CloudWatchEventEvent` resource - * - * @param properties - the TypeScript properties of a `CloudWatchEventEventProperty` - * - * @returns the AWS CloudFormation properties of an `AWS::Serverless::Function.CloudWatchEventEvent` resource. - */ -// @ts-ignore TS6133 -function cfnFunctionCloudWatchEventEventPropertyToCloudFormation(properties: any): any { - if (!cdk.canInspect(properties)) { return properties; } - CfnFunction_CloudWatchEventEventPropertyValidator(properties).assertSuccess(); - return { - Input: cdk.stringToCloudFormation(properties.input), - InputPath: cdk.stringToCloudFormation(properties.inputPath), - Pattern: cdk.objectToCloudFormation(properties.pattern), - }; -} - -export namespace CfnFunction { - /** - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#deadletterqueue-object - */ - export interface DeadLetterQueueProperty { - /** - * `CfnFunction.DeadLetterQueueProperty.TargetArn` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction - */ - targetArn: string; - /** - * `CfnFunction.DeadLetterQueueProperty.Type` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction - */ - type: string; - } -} - -/** - * Determine whether the given properties match those of a `DeadLetterQueueProperty` - * - * @param properties - the TypeScript properties of a `DeadLetterQueueProperty` - * - * @returns the result of the validation. - */ -function CfnFunction_DeadLetterQueuePropertyValidator(properties: any): cdk.ValidationResult { - if (!cdk.canInspect(properties)) { return cdk.VALIDATION_SUCCESS; } - const errors = new cdk.ValidationResults(); - errors.collect(cdk.propertyValidator('targetArn', cdk.requiredValidator)(properties.targetArn)); - errors.collect(cdk.propertyValidator('targetArn', cdk.validateString)(properties.targetArn)); - errors.collect(cdk.propertyValidator('type', cdk.requiredValidator)(properties.type)); - errors.collect(cdk.propertyValidator('type', cdk.validateString)(properties.type)); - return errors.wrap('supplied properties not correct for "DeadLetterQueueProperty"'); -} - -/** - * Renders the AWS CloudFormation properties of an `AWS::Serverless::Function.DeadLetterQueue` resource - * - * @param properties - the TypeScript properties of a `DeadLetterQueueProperty` - * - * @returns the AWS CloudFormation properties of an `AWS::Serverless::Function.DeadLetterQueue` resource. - */ -// @ts-ignore TS6133 -function cfnFunctionDeadLetterQueuePropertyToCloudFormation(properties: any): any { - if (!cdk.canInspect(properties)) { return properties; } - CfnFunction_DeadLetterQueuePropertyValidator(properties).assertSuccess(); - return { - TargetArn: cdk.stringToCloudFormation(properties.targetArn), - Type: cdk.stringToCloudFormation(properties.type), - }; -} - -export namespace CfnFunction { - /** - * @see https://github.com/awslabs/serverless-application-model/blob/master/docs/safe_lambda_deployments.rst - */ - export interface DeploymentPreferenceProperty { - /** - * `CfnFunction.DeploymentPreferenceProperty.Enabled` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#deploymentpreference-object - */ - enabled: boolean | cdk.Token; - /** - * `CfnFunction.DeploymentPreferenceProperty.Type` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#deploymentpreference-object - */ - type: string; - /** - * `CfnFunction.DeploymentPreferenceProperty.Alarms` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#deploymentpreference-object - */ - alarms?: string[]; - /** - * `CfnFunction.DeploymentPreferenceProperty.Hooks` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#deploymentpreference-object - */ - hooks?: string[]; - } -} - -/** - * Determine whether the given properties match those of a `DeploymentPreferenceProperty` - * - * @param properties - the TypeScript properties of a `DeploymentPreferenceProperty` - * - * @returns the result of the validation. - */ -function CfnFunction_DeploymentPreferencePropertyValidator(properties: any): cdk.ValidationResult { - if (!cdk.canInspect(properties)) { return cdk.VALIDATION_SUCCESS; } - const errors = new cdk.ValidationResults(); - errors.collect(cdk.propertyValidator('enabled', cdk.requiredValidator)(properties.enabled)); - errors.collect(cdk.propertyValidator('enabled', cdk.validateBoolean)(properties.enabled)); - errors.collect(cdk.propertyValidator('type', cdk.requiredValidator)(properties.type)); - errors.collect(cdk.propertyValidator('type', cdk.validateString)(properties.type)); - errors.collect(cdk.propertyValidator('alarms', cdk.listValidator(cdk.validateString))(properties.alarms)); - errors.collect(cdk.propertyValidator('hooks', cdk.listValidator(cdk.validateString))(properties.hooks)); - return errors.wrap('supplied properties not correct for "DeploymentPreferenceProperty"'); -} - -/** - * Renders the AWS CloudFormation properties of an `AWS::Serverless::Function.DeploymentPreference` resource - * - * @param properties - the TypeScript properties of a `DeploymentPreferenceProperty` - * - * @returns the AWS CloudFormation properties of an `AWS::Serverless::Function.DeploymentPreference` resource. - */ -// @ts-ignore TS6133 -function cfnFunctionDeploymentPreferencePropertyToCloudFormation(properties: any): any { - if (!cdk.canInspect(properties)) { return properties; } - CfnFunction_DeploymentPreferencePropertyValidator(properties).assertSuccess(); - return { - Enabled: cdk.booleanToCloudFormation(properties.enabled), - Type: cdk.stringToCloudFormation(properties.type), - Alarms: cdk.listMapper(cdk.stringToCloudFormation)(properties.alarms), - Hooks: cdk.listMapper(cdk.stringToCloudFormation)(properties.hooks), - }; -} - -export namespace CfnFunction { - /** - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#dynamodb - */ - export interface DynamoDBEventProperty { - /** - * `CfnFunction.DynamoDBEventProperty.BatchSize` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#dynamodb - */ - batchSize: number | cdk.Token; - /** - * `CfnFunction.DynamoDBEventProperty.StartingPosition` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#dynamodb - */ - startingPosition: string; - /** - * `CfnFunction.DynamoDBEventProperty.Stream` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#dynamodb - */ - stream: string; - } -} - -/** - * Determine whether the given properties match those of a `DynamoDBEventProperty` - * - * @param properties - the TypeScript properties of a `DynamoDBEventProperty` - * - * @returns the result of the validation. - */ -function CfnFunction_DynamoDBEventPropertyValidator(properties: any): cdk.ValidationResult { - if (!cdk.canInspect(properties)) { return cdk.VALIDATION_SUCCESS; } - const errors = new cdk.ValidationResults(); - errors.collect(cdk.propertyValidator('batchSize', cdk.requiredValidator)(properties.batchSize)); - errors.collect(cdk.propertyValidator('batchSize', cdk.validateNumber)(properties.batchSize)); - errors.collect(cdk.propertyValidator('startingPosition', cdk.requiredValidator)(properties.startingPosition)); - errors.collect(cdk.propertyValidator('startingPosition', cdk.validateString)(properties.startingPosition)); - errors.collect(cdk.propertyValidator('stream', cdk.requiredValidator)(properties.stream)); - errors.collect(cdk.propertyValidator('stream', cdk.validateString)(properties.stream)); - return errors.wrap('supplied properties not correct for "DynamoDBEventProperty"'); -} - -/** - * Renders the AWS CloudFormation properties of an `AWS::Serverless::Function.DynamoDBEvent` resource - * - * @param properties - the TypeScript properties of a `DynamoDBEventProperty` - * - * @returns the AWS CloudFormation properties of an `AWS::Serverless::Function.DynamoDBEvent` resource. - */ -// @ts-ignore TS6133 -function cfnFunctionDynamoDBEventPropertyToCloudFormation(properties: any): any { - if (!cdk.canInspect(properties)) { return properties; } - CfnFunction_DynamoDBEventPropertyValidator(properties).assertSuccess(); - return { - BatchSize: cdk.numberToCloudFormation(properties.batchSize), - StartingPosition: cdk.stringToCloudFormation(properties.startingPosition), - Stream: cdk.stringToCloudFormation(properties.stream), - }; -} - -export namespace CfnFunction { - /** - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#event-source-object - */ - export interface EventSourceProperty { - /** - * `CfnFunction.EventSourceProperty.Properties` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#event-source-types - */ - properties: CfnFunction.S3EventProperty | CfnFunction.SNSEventProperty | CfnFunction.SQSEventProperty | CfnFunction.KinesisEventProperty | CfnFunction.DynamoDBEventProperty | CfnFunction.ApiEventProperty | CfnFunction.ScheduleEventProperty | CfnFunction.CloudWatchEventEventProperty | CfnFunction.IoTRuleEventProperty | CfnFunction.AlexaSkillEventProperty | cdk.Token; - /** - * `CfnFunction.EventSourceProperty.Type` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#event-source-object - */ - type: string; - } -} - -/** - * Determine whether the given properties match those of a `EventSourceProperty` - * - * @param properties - the TypeScript properties of a `EventSourceProperty` - * - * @returns the result of the validation. - */ -function CfnFunction_EventSourcePropertyValidator(properties: any): cdk.ValidationResult { - if (!cdk.canInspect(properties)) { return cdk.VALIDATION_SUCCESS; } - const errors = new cdk.ValidationResults(); - errors.collect(cdk.propertyValidator('properties', cdk.requiredValidator)(properties.properties)); - errors.collect(cdk.propertyValidator('properties', cdk.unionValidator(CfnFunction_S3EventPropertyValidator, CfnFunction_SNSEventPropertyValidator, CfnFunction_SQSEventPropertyValidator, CfnFunction_KinesisEventPropertyValidator, CfnFunction_DynamoDBEventPropertyValidator, CfnFunction_ApiEventPropertyValidator, CfnFunction_ScheduleEventPropertyValidator, CfnFunction_CloudWatchEventEventPropertyValidator, CfnFunction_IoTRuleEventPropertyValidator, CfnFunction_AlexaSkillEventPropertyValidator))(properties.properties)); - errors.collect(cdk.propertyValidator('type', cdk.requiredValidator)(properties.type)); - errors.collect(cdk.propertyValidator('type', cdk.validateString)(properties.type)); - return errors.wrap('supplied properties not correct for "EventSourceProperty"'); -} - -/** - * Renders the AWS CloudFormation properties of an `AWS::Serverless::Function.EventSource` resource - * - * @param properties - the TypeScript properties of a `EventSourceProperty` - * - * @returns the AWS CloudFormation properties of an `AWS::Serverless::Function.EventSource` resource. - */ -// @ts-ignore TS6133 -function cfnFunctionEventSourcePropertyToCloudFormation(properties: any): any { - if (!cdk.canInspect(properties)) { return properties; } - CfnFunction_EventSourcePropertyValidator(properties).assertSuccess(); - return { - Properties: cdk.unionMapper([CfnFunction_S3EventPropertyValidator, CfnFunction_SNSEventPropertyValidator, CfnFunction_SQSEventPropertyValidator, CfnFunction_KinesisEventPropertyValidator, CfnFunction_DynamoDBEventPropertyValidator, CfnFunction_ApiEventPropertyValidator, CfnFunction_ScheduleEventPropertyValidator, CfnFunction_CloudWatchEventEventPropertyValidator, CfnFunction_IoTRuleEventPropertyValidator, CfnFunction_AlexaSkillEventPropertyValidator], [cfnFunctionS3EventPropertyToCloudFormation, cfnFunctionSNSEventPropertyToCloudFormation, cfnFunctionSQSEventPropertyToCloudFormation, cfnFunctionKinesisEventPropertyToCloudFormation, cfnFunctionDynamoDBEventPropertyToCloudFormation, cfnFunctionApiEventPropertyToCloudFormation, cfnFunctionScheduleEventPropertyToCloudFormation, cfnFunctionCloudWatchEventEventPropertyToCloudFormation, cfnFunctionIoTRuleEventPropertyToCloudFormation, cfnFunctionAlexaSkillEventPropertyToCloudFormation])(properties.properties), - Type: cdk.stringToCloudFormation(properties.type), - }; -} - -export namespace CfnFunction { - /** - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#environment-object - */ - export interface FunctionEnvironmentProperty { - /** - * `CfnFunction.FunctionEnvironmentProperty.Variables` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#environment-object - */ - variables: { [key: string]: (string) } | cdk.Token; - } -} - -/** - * Determine whether the given properties match those of a `FunctionEnvironmentProperty` - * - * @param properties - the TypeScript properties of a `FunctionEnvironmentProperty` - * - * @returns the result of the validation. - */ -function CfnFunction_FunctionEnvironmentPropertyValidator(properties: any): cdk.ValidationResult { - if (!cdk.canInspect(properties)) { return cdk.VALIDATION_SUCCESS; } - const errors = new cdk.ValidationResults(); - errors.collect(cdk.propertyValidator('variables', cdk.requiredValidator)(properties.variables)); - errors.collect(cdk.propertyValidator('variables', cdk.hashValidator(cdk.validateString))(properties.variables)); - return errors.wrap('supplied properties not correct for "FunctionEnvironmentProperty"'); -} - -/** - * Renders the AWS CloudFormation properties of an `AWS::Serverless::Function.FunctionEnvironment` resource - * - * @param properties - the TypeScript properties of a `FunctionEnvironmentProperty` - * - * @returns the AWS CloudFormation properties of an `AWS::Serverless::Function.FunctionEnvironment` resource. - */ -// @ts-ignore TS6133 -function cfnFunctionFunctionEnvironmentPropertyToCloudFormation(properties: any): any { - if (!cdk.canInspect(properties)) { return properties; } - CfnFunction_FunctionEnvironmentPropertyValidator(properties).assertSuccess(); - return { - Variables: cdk.hashMapper(cdk.stringToCloudFormation)(properties.variables), - }; -} - -export namespace CfnFunction { - /** - * @see http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies.html - */ - export interface IAMPolicyDocumentProperty { - /** - * `CfnFunction.IAMPolicyDocumentProperty.Statement` - * @see http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies.html - */ - statement: object | cdk.Token; - } -} - -/** - * Determine whether the given properties match those of a `IAMPolicyDocumentProperty` - * - * @param properties - the TypeScript properties of a `IAMPolicyDocumentProperty` - * - * @returns the result of the validation. - */ -function CfnFunction_IAMPolicyDocumentPropertyValidator(properties: any): cdk.ValidationResult { - if (!cdk.canInspect(properties)) { return cdk.VALIDATION_SUCCESS; } - const errors = new cdk.ValidationResults(); - errors.collect(cdk.propertyValidator('statement', cdk.requiredValidator)(properties.statement)); - errors.collect(cdk.propertyValidator('statement', cdk.validateObject)(properties.statement)); - return errors.wrap('supplied properties not correct for "IAMPolicyDocumentProperty"'); -} - -/** - * Renders the AWS CloudFormation properties of an `AWS::Serverless::Function.IAMPolicyDocument` resource - * - * @param properties - the TypeScript properties of a `IAMPolicyDocumentProperty` - * - * @returns the AWS CloudFormation properties of an `AWS::Serverless::Function.IAMPolicyDocument` resource. - */ -// @ts-ignore TS6133 -function cfnFunctionIAMPolicyDocumentPropertyToCloudFormation(properties: any): any { - if (!cdk.canInspect(properties)) { return properties; } - CfnFunction_IAMPolicyDocumentPropertyValidator(properties).assertSuccess(); - return { - Statement: cdk.objectToCloudFormation(properties.statement), - }; -} - -export namespace CfnFunction { - /** - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#iotrule - */ - export interface IoTRuleEventProperty { - /** - * `CfnFunction.IoTRuleEventProperty.AwsIotSqlVersion` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#iotrule - */ - awsIotSqlVersion?: string; - /** - * `CfnFunction.IoTRuleEventProperty.Sql` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#iotrule - */ - sql: string; - } -} - -/** - * Determine whether the given properties match those of a `IoTRuleEventProperty` - * - * @param properties - the TypeScript properties of a `IoTRuleEventProperty` - * - * @returns the result of the validation. - */ -function CfnFunction_IoTRuleEventPropertyValidator(properties: any): cdk.ValidationResult { - if (!cdk.canInspect(properties)) { return cdk.VALIDATION_SUCCESS; } - const errors = new cdk.ValidationResults(); - errors.collect(cdk.propertyValidator('awsIotSqlVersion', cdk.validateString)(properties.awsIotSqlVersion)); - errors.collect(cdk.propertyValidator('sql', cdk.requiredValidator)(properties.sql)); - errors.collect(cdk.propertyValidator('sql', cdk.validateString)(properties.sql)); - return errors.wrap('supplied properties not correct for "IoTRuleEventProperty"'); -} - -/** - * Renders the AWS CloudFormation properties of an `AWS::Serverless::Function.IoTRuleEvent` resource - * - * @param properties - the TypeScript properties of a `IoTRuleEventProperty` - * - * @returns the AWS CloudFormation properties of an `AWS::Serverless::Function.IoTRuleEvent` resource. - */ -// @ts-ignore TS6133 -function cfnFunctionIoTRuleEventPropertyToCloudFormation(properties: any): any { - if (!cdk.canInspect(properties)) { return properties; } - CfnFunction_IoTRuleEventPropertyValidator(properties).assertSuccess(); - return { - AwsIotSqlVersion: cdk.stringToCloudFormation(properties.awsIotSqlVersion), - Sql: cdk.stringToCloudFormation(properties.sql), - }; -} - -export namespace CfnFunction { - /** - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#kinesis - */ - export interface KinesisEventProperty { - /** - * `CfnFunction.KinesisEventProperty.BatchSize` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#kinesis - */ - batchSize?: number | cdk.Token; - /** - * `CfnFunction.KinesisEventProperty.StartingPosition` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#kinesis - */ - startingPosition: string; - /** - * `CfnFunction.KinesisEventProperty.Stream` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#kinesis - */ - stream: string; - } -} - -/** - * Determine whether the given properties match those of a `KinesisEventProperty` - * - * @param properties - the TypeScript properties of a `KinesisEventProperty` - * - * @returns the result of the validation. - */ -function CfnFunction_KinesisEventPropertyValidator(properties: any): cdk.ValidationResult { - if (!cdk.canInspect(properties)) { return cdk.VALIDATION_SUCCESS; } - const errors = new cdk.ValidationResults(); - errors.collect(cdk.propertyValidator('batchSize', cdk.validateNumber)(properties.batchSize)); - errors.collect(cdk.propertyValidator('startingPosition', cdk.requiredValidator)(properties.startingPosition)); - errors.collect(cdk.propertyValidator('startingPosition', cdk.validateString)(properties.startingPosition)); - errors.collect(cdk.propertyValidator('stream', cdk.requiredValidator)(properties.stream)); - errors.collect(cdk.propertyValidator('stream', cdk.validateString)(properties.stream)); - return errors.wrap('supplied properties not correct for "KinesisEventProperty"'); -} - -/** - * Renders the AWS CloudFormation properties of an `AWS::Serverless::Function.KinesisEvent` resource - * - * @param properties - the TypeScript properties of a `KinesisEventProperty` - * - * @returns the AWS CloudFormation properties of an `AWS::Serverless::Function.KinesisEvent` resource. - */ -// @ts-ignore TS6133 -function cfnFunctionKinesisEventPropertyToCloudFormation(properties: any): any { - if (!cdk.canInspect(properties)) { return properties; } - CfnFunction_KinesisEventPropertyValidator(properties).assertSuccess(); - return { - BatchSize: cdk.numberToCloudFormation(properties.batchSize), - StartingPosition: cdk.stringToCloudFormation(properties.startingPosition), - Stream: cdk.stringToCloudFormation(properties.stream), - }; -} - -export namespace CfnFunction { - /** - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#s3 - */ - export interface S3EventProperty { - /** - * `CfnFunction.S3EventProperty.Bucket` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#s3 - */ - bucket: string; - /** - * `CfnFunction.S3EventProperty.Events` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#s3 - */ - events: string[] | string | cdk.Token; - /** - * `CfnFunction.S3EventProperty.Filter` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#s3 - */ - filter?: CfnFunction.S3NotificationFilterProperty | cdk.Token; - } -} - -/** - * Determine whether the given properties match those of a `S3EventProperty` - * - * @param properties - the TypeScript properties of a `S3EventProperty` - * - * @returns the result of the validation. - */ -function CfnFunction_S3EventPropertyValidator(properties: any): cdk.ValidationResult { - if (!cdk.canInspect(properties)) { return cdk.VALIDATION_SUCCESS; } - const errors = new cdk.ValidationResults(); - errors.collect(cdk.propertyValidator('bucket', cdk.requiredValidator)(properties.bucket)); - errors.collect(cdk.propertyValidator('bucket', cdk.validateString)(properties.bucket)); - errors.collect(cdk.propertyValidator('events', cdk.requiredValidator)(properties.events)); - errors.collect(cdk.propertyValidator('events', cdk.unionValidator(cdk.unionValidator(cdk.validateString), cdk.listValidator(cdk.unionValidator(cdk.validateString))))(properties.events)); - errors.collect(cdk.propertyValidator('filter', CfnFunction_S3NotificationFilterPropertyValidator)(properties.filter)); - return errors.wrap('supplied properties not correct for "S3EventProperty"'); -} - -/** - * Renders the AWS CloudFormation properties of an `AWS::Serverless::Function.S3Event` resource - * - * @param properties - the TypeScript properties of a `S3EventProperty` - * - * @returns the AWS CloudFormation properties of an `AWS::Serverless::Function.S3Event` resource. - */ -// @ts-ignore TS6133 -function cfnFunctionS3EventPropertyToCloudFormation(properties: any): any { - if (!cdk.canInspect(properties)) { return properties; } - CfnFunction_S3EventPropertyValidator(properties).assertSuccess(); - return { - Bucket: cdk.stringToCloudFormation(properties.bucket), - Events: cdk.unionMapper([cdk.unionValidator(cdk.validateString), cdk.listValidator(cdk.unionValidator(cdk.validateString))], [cdk.unionMapper([cdk.validateString], [cdk.stringToCloudFormation]), cdk.listMapper(cdk.unionMapper([cdk.validateString], [cdk.stringToCloudFormation]))])(properties.events), - Filter: cfnFunctionS3NotificationFilterPropertyToCloudFormation(properties.filter), - }; -} - -export namespace CfnFunction { - /** - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#s3-location-object - */ - export interface S3LocationProperty { - /** - * `CfnFunction.S3LocationProperty.Bucket` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction - */ - bucket: string; - /** - * `CfnFunction.S3LocationProperty.Key` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction - */ - key: string; - /** - * `CfnFunction.S3LocationProperty.Version` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction - */ - version?: number | cdk.Token; - } -} - -/** - * Determine whether the given properties match those of a `S3LocationProperty` - * - * @param properties - the TypeScript properties of a `S3LocationProperty` - * - * @returns the result of the validation. - */ -function CfnFunction_S3LocationPropertyValidator(properties: any): cdk.ValidationResult { - if (!cdk.canInspect(properties)) { return cdk.VALIDATION_SUCCESS; } - const errors = new cdk.ValidationResults(); - errors.collect(cdk.propertyValidator('bucket', cdk.requiredValidator)(properties.bucket)); - errors.collect(cdk.propertyValidator('bucket', cdk.validateString)(properties.bucket)); - errors.collect(cdk.propertyValidator('key', cdk.requiredValidator)(properties.key)); - errors.collect(cdk.propertyValidator('key', cdk.validateString)(properties.key)); - errors.collect(cdk.propertyValidator('version', cdk.validateNumber)(properties.version)); - return errors.wrap('supplied properties not correct for "S3LocationProperty"'); -} - -/** - * Renders the AWS CloudFormation properties of an `AWS::Serverless::Function.S3Location` resource - * - * @param properties - the TypeScript properties of a `S3LocationProperty` - * - * @returns the AWS CloudFormation properties of an `AWS::Serverless::Function.S3Location` resource. - */ -// @ts-ignore TS6133 -function cfnFunctionS3LocationPropertyToCloudFormation(properties: any): any { - if (!cdk.canInspect(properties)) { return properties; } - CfnFunction_S3LocationPropertyValidator(properties).assertSuccess(); - return { - Bucket: cdk.stringToCloudFormation(properties.bucket), - Key: cdk.stringToCloudFormation(properties.key), - Version: cdk.numberToCloudFormation(properties.version), - }; -} - -export namespace CfnFunction { - /** - * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter.html - */ - export interface S3NotificationFilterProperty { - /** - * `CfnFunction.S3NotificationFilterProperty.S3Key` - * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter.html - */ - s3Key: string; - } -} - -/** - * Determine whether the given properties match those of a `S3NotificationFilterProperty` - * - * @param properties - the TypeScript properties of a `S3NotificationFilterProperty` - * - * @returns the result of the validation. - */ -function CfnFunction_S3NotificationFilterPropertyValidator(properties: any): cdk.ValidationResult { - if (!cdk.canInspect(properties)) { return cdk.VALIDATION_SUCCESS; } - const errors = new cdk.ValidationResults(); - errors.collect(cdk.propertyValidator('s3Key', cdk.requiredValidator)(properties.s3Key)); - errors.collect(cdk.propertyValidator('s3Key', cdk.validateString)(properties.s3Key)); - return errors.wrap('supplied properties not correct for "S3NotificationFilterProperty"'); -} - -/** - * Renders the AWS CloudFormation properties of an `AWS::Serverless::Function.S3NotificationFilter` resource - * - * @param properties - the TypeScript properties of a `S3NotificationFilterProperty` - * - * @returns the AWS CloudFormation properties of an `AWS::Serverless::Function.S3NotificationFilter` resource. - */ -// @ts-ignore TS6133 -function cfnFunctionS3NotificationFilterPropertyToCloudFormation(properties: any): any { - if (!cdk.canInspect(properties)) { return properties; } - CfnFunction_S3NotificationFilterPropertyValidator(properties).assertSuccess(); - return { - S3Key: cdk.stringToCloudFormation(properties.s3Key), - }; -} - -export namespace CfnFunction { - /** - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#sns - */ - export interface SNSEventProperty { - /** - * `CfnFunction.SNSEventProperty.Topic` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#sns - */ - topic: string; - } -} - -/** - * Determine whether the given properties match those of a `SNSEventProperty` - * - * @param properties - the TypeScript properties of a `SNSEventProperty` - * - * @returns the result of the validation. - */ -function CfnFunction_SNSEventPropertyValidator(properties: any): cdk.ValidationResult { - if (!cdk.canInspect(properties)) { return cdk.VALIDATION_SUCCESS; } - const errors = new cdk.ValidationResults(); - errors.collect(cdk.propertyValidator('topic', cdk.requiredValidator)(properties.topic)); - errors.collect(cdk.propertyValidator('topic', cdk.validateString)(properties.topic)); - return errors.wrap('supplied properties not correct for "SNSEventProperty"'); -} - -/** - * Renders the AWS CloudFormation properties of an `AWS::Serverless::Function.SNSEvent` resource - * - * @param properties - the TypeScript properties of a `SNSEventProperty` - * - * @returns the AWS CloudFormation properties of an `AWS::Serverless::Function.SNSEvent` resource. - */ -// @ts-ignore TS6133 -function cfnFunctionSNSEventPropertyToCloudFormation(properties: any): any { - if (!cdk.canInspect(properties)) { return properties; } - CfnFunction_SNSEventPropertyValidator(properties).assertSuccess(); - return { - Topic: cdk.stringToCloudFormation(properties.topic), - }; -} - -export namespace CfnFunction { - /** - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#sqs - */ - export interface SQSEventProperty { - /** - * `CfnFunction.SQSEventProperty.BatchSize` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#sqs - */ - batchSize?: number | cdk.Token; - /** - * `CfnFunction.SQSEventProperty.Queue` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#sqs - */ - queue: string; - } -} - -/** - * Determine whether the given properties match those of a `SQSEventProperty` - * - * @param properties - the TypeScript properties of a `SQSEventProperty` - * - * @returns the result of the validation. - */ -function CfnFunction_SQSEventPropertyValidator(properties: any): cdk.ValidationResult { - if (!cdk.canInspect(properties)) { return cdk.VALIDATION_SUCCESS; } - const errors = new cdk.ValidationResults(); - errors.collect(cdk.propertyValidator('batchSize', cdk.validateNumber)(properties.batchSize)); - errors.collect(cdk.propertyValidator('queue', cdk.requiredValidator)(properties.queue)); - errors.collect(cdk.propertyValidator('queue', cdk.validateString)(properties.queue)); - return errors.wrap('supplied properties not correct for "SQSEventProperty"'); -} - -/** - * Renders the AWS CloudFormation properties of an `AWS::Serverless::Function.SQSEvent` resource - * - * @param properties - the TypeScript properties of a `SQSEventProperty` - * - * @returns the AWS CloudFormation properties of an `AWS::Serverless::Function.SQSEvent` resource. - */ -// @ts-ignore TS6133 -function cfnFunctionSQSEventPropertyToCloudFormation(properties: any): any { - if (!cdk.canInspect(properties)) { return properties; } - CfnFunction_SQSEventPropertyValidator(properties).assertSuccess(); - return { - BatchSize: cdk.numberToCloudFormation(properties.batchSize), - Queue: cdk.stringToCloudFormation(properties.queue), - }; -} - -export namespace CfnFunction { - /** - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#schedule - */ - export interface ScheduleEventProperty { - /** - * `CfnFunction.ScheduleEventProperty.Input` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#schedule - */ - input?: string; - /** - * `CfnFunction.ScheduleEventProperty.Schedule` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#schedule - */ - schedule: string; - } -} - -/** - * Determine whether the given properties match those of a `ScheduleEventProperty` - * - * @param properties - the TypeScript properties of a `ScheduleEventProperty` - * - * @returns the result of the validation. - */ -function CfnFunction_ScheduleEventPropertyValidator(properties: any): cdk.ValidationResult { - if (!cdk.canInspect(properties)) { return cdk.VALIDATION_SUCCESS; } - const errors = new cdk.ValidationResults(); - errors.collect(cdk.propertyValidator('input', cdk.validateString)(properties.input)); - errors.collect(cdk.propertyValidator('schedule', cdk.requiredValidator)(properties.schedule)); - errors.collect(cdk.propertyValidator('schedule', cdk.validateString)(properties.schedule)); - return errors.wrap('supplied properties not correct for "ScheduleEventProperty"'); -} - -/** - * Renders the AWS CloudFormation properties of an `AWS::Serverless::Function.ScheduleEvent` resource - * - * @param properties - the TypeScript properties of a `ScheduleEventProperty` - * - * @returns the AWS CloudFormation properties of an `AWS::Serverless::Function.ScheduleEvent` resource. - */ -// @ts-ignore TS6133 -function cfnFunctionScheduleEventPropertyToCloudFormation(properties: any): any { - if (!cdk.canInspect(properties)) { return properties; } - CfnFunction_ScheduleEventPropertyValidator(properties).assertSuccess(); - return { - Input: cdk.stringToCloudFormation(properties.input), - Schedule: cdk.stringToCloudFormation(properties.schedule), - }; -} - -export namespace CfnFunction { - /** - * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-vpcconfig.html - */ - export interface VpcConfigProperty { - /** - * `CfnFunction.VpcConfigProperty.SecurityGroupIds` - * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-vpcconfig.html - */ - securityGroupIds: string[]; - /** - * `CfnFunction.VpcConfigProperty.SubnetIds` - * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-vpcconfig.html - */ - subnetIds: string[]; - } -} - -/** - * Determine whether the given properties match those of a `VpcConfigProperty` - * - * @param properties - the TypeScript properties of a `VpcConfigProperty` - * - * @returns the result of the validation. - */ -function CfnFunction_VpcConfigPropertyValidator(properties: any): cdk.ValidationResult { - if (!cdk.canInspect(properties)) { return cdk.VALIDATION_SUCCESS; } - const errors = new cdk.ValidationResults(); - errors.collect(cdk.propertyValidator('securityGroupIds', cdk.requiredValidator)(properties.securityGroupIds)); - errors.collect(cdk.propertyValidator('securityGroupIds', cdk.listValidator(cdk.validateString))(properties.securityGroupIds)); - errors.collect(cdk.propertyValidator('subnetIds', cdk.requiredValidator)(properties.subnetIds)); - errors.collect(cdk.propertyValidator('subnetIds', cdk.listValidator(cdk.validateString))(properties.subnetIds)); - return errors.wrap('supplied properties not correct for "VpcConfigProperty"'); -} - -/** - * Renders the AWS CloudFormation properties of an `AWS::Serverless::Function.VpcConfig` resource - * - * @param properties - the TypeScript properties of a `VpcConfigProperty` - * - * @returns the AWS CloudFormation properties of an `AWS::Serverless::Function.VpcConfig` resource. - */ -// @ts-ignore TS6133 -function cfnFunctionVpcConfigPropertyToCloudFormation(properties: any): any { - if (!cdk.canInspect(properties)) { return properties; } - CfnFunction_VpcConfigPropertyValidator(properties).assertSuccess(); - return { - SecurityGroupIds: cdk.listMapper(cdk.stringToCloudFormation)(properties.securityGroupIds), - SubnetIds: cdk.listMapper(cdk.stringToCloudFormation)(properties.subnetIds), - }; -} - -/** - * Properties for defining a `AWS::Serverless::LayerVersion` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlesslayerversion - */ -export interface CfnLayerVersionProps { - /** - * `AWS::Serverless::LayerVersion.CompatibleRuntimes` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlesslayerversion - */ - compatibleRuntimes?: string[]; - /** - * `AWS::Serverless::LayerVersion.ContentUri` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlesslayerversion - */ - contentUri?: string; - /** - * `AWS::Serverless::LayerVersion.Description` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlesslayerversion - */ - description?: string; - /** - * `AWS::Serverless::LayerVersion.LayerName` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlesslayerversion - */ - layerName?: string; - /** - * `AWS::Serverless::LayerVersion.LicenseInfo` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlesslayerversion - */ - licenseInfo?: string; - /** - * `AWS::Serverless::LayerVersion.RetentionPolicy` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlesslayerversion - */ - retentionPolicy?: string; -} - -/** - * Determine whether the given properties match those of a `CfnLayerVersionProps` - * - * @param properties - the TypeScript properties of a `CfnLayerVersionProps` - * - * @returns the result of the validation. - */ -function CfnLayerVersionPropsValidator(properties: any): cdk.ValidationResult { - if (!cdk.canInspect(properties)) { return cdk.VALIDATION_SUCCESS; } - const errors = new cdk.ValidationResults(); - errors.collect(cdk.propertyValidator('compatibleRuntimes', cdk.listValidator(cdk.validateString))(properties.compatibleRuntimes)); - errors.collect(cdk.propertyValidator('contentUri', cdk.validateString)(properties.contentUri)); - errors.collect(cdk.propertyValidator('description', cdk.validateString)(properties.description)); - errors.collect(cdk.propertyValidator('layerName', cdk.validateString)(properties.layerName)); - errors.collect(cdk.propertyValidator('licenseInfo', cdk.validateString)(properties.licenseInfo)); - errors.collect(cdk.propertyValidator('retentionPolicy', cdk.validateString)(properties.retentionPolicy)); - return errors.wrap('supplied properties not correct for "CfnLayerVersionProps"'); -} - -/** - * Renders the AWS CloudFormation properties of an `AWS::Serverless::LayerVersion` resource - * - * @param properties - the TypeScript properties of a `CfnLayerVersionProps` - * - * @returns the AWS CloudFormation properties of an `AWS::Serverless::LayerVersion` resource. - */ -// @ts-ignore TS6133 -function cfnLayerVersionPropsToCloudFormation(properties: any): any { - if (!cdk.canInspect(properties)) { return properties; } - CfnLayerVersionPropsValidator(properties).assertSuccess(); - return { - CompatibleRuntimes: cdk.listMapper(cdk.stringToCloudFormation)(properties.compatibleRuntimes), - ContentUri: cdk.stringToCloudFormation(properties.contentUri), - Description: cdk.stringToCloudFormation(properties.description), - LayerName: cdk.stringToCloudFormation(properties.layerName), - LicenseInfo: cdk.stringToCloudFormation(properties.licenseInfo), - RetentionPolicy: cdk.stringToCloudFormation(properties.retentionPolicy), - }; -} - -/** - * A CloudFormation `AWS::Serverless::LayerVersion` - * - * @cloudformationResource AWS::Serverless::LayerVersion - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlesslayerversion - */ -export class CfnLayerVersion extends cdk.CfnResource { - /** - * The CloudFormation resource type name for this resource class. - */ - public static readonly resourceTypeName = "AWS::Serverless::LayerVersion"; - /** - * The `Transform` a template must use in order to use this resource - */ - public static readonly requiredTransform = "AWS::Serverless-2016-10-31"; - public readonly layerVersionArn: string; - - /** - * Create a new `AWS::Serverless::LayerVersion`. - * - * @param scope - scope in which this resource is defined - * @param id - scoped id of the resource - * @param props - resource properties - */ - constructor(scope: cdk.Construct, id: string, props?: CfnLayerVersionProps) { - super(scope, id, { type: CfnLayerVersion.resourceTypeName, properties: props }); - // If a different transform than the required one is in use, this resource cannot be used - if (this.node.stack.templateOptions.transform && this.node.stack.templateOptions.transform !== CfnLayerVersion.requiredTransform) { - throw new Error(`The ${JSON.stringify(CfnLayerVersion.requiredTransform)} transform is required when using CfnLayerVersion, but the ${JSON.stringify(this.node.stack.templateOptions.transform)} is used.`); - } - // Automatically configure the required transform - this.node.stack.templateOptions.transform = CfnLayerVersion.requiredTransform; - this.layerVersionArn = this.ref.toString(); - } - - public get propertyOverrides(): CfnLayerVersionProps { - return this.untypedPropertyOverrides; - } - protected renderProperties(properties: any): { [key: string]: any } { - return cfnLayerVersionPropsToCloudFormation(this.node.resolve(properties)); - } -} - -/** - * Properties for defining a `AWS::Serverless::SimpleTable` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlesssimpletable - */ -export interface CfnSimpleTableProps { - /** - * `AWS::Serverless::SimpleTable.PrimaryKey` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#primary-key-object - */ - primaryKey?: CfnSimpleTable.PrimaryKeyProperty | cdk.Token; - /** - * `AWS::Serverless::SimpleTable.ProvisionedThroughput` - * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-provisionedthroughput.html - */ - provisionedThroughput?: CfnSimpleTable.ProvisionedThroughputProperty | cdk.Token; - /** - * `AWS::Serverless::SimpleTable.SSESpecification` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlesssimpletable - */ - sseSpecification?: CfnSimpleTable.SSESpecificationProperty | cdk.Token; - /** - * `AWS::Serverless::SimpleTable.TableName` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlesssimpletable - */ - tableName?: string; - /** - * `AWS::Serverless::SimpleTable.Tags` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlesssimpletable - */ - tags?: { [key: string]: (string) }; -} - -/** - * Determine whether the given properties match those of a `CfnSimpleTableProps` - * - * @param properties - the TypeScript properties of a `CfnSimpleTableProps` - * - * @returns the result of the validation. - */ -function CfnSimpleTablePropsValidator(properties: any): cdk.ValidationResult { - if (!cdk.canInspect(properties)) { return cdk.VALIDATION_SUCCESS; } - const errors = new cdk.ValidationResults(); - errors.collect(cdk.propertyValidator('primaryKey', CfnSimpleTable_PrimaryKeyPropertyValidator)(properties.primaryKey)); - errors.collect(cdk.propertyValidator('provisionedThroughput', CfnSimpleTable_ProvisionedThroughputPropertyValidator)(properties.provisionedThroughput)); - errors.collect(cdk.propertyValidator('sseSpecification', CfnSimpleTable_SSESpecificationPropertyValidator)(properties.sseSpecification)); - errors.collect(cdk.propertyValidator('tableName', cdk.validateString)(properties.tableName)); - errors.collect(cdk.propertyValidator('tags', cdk.hashValidator(cdk.validateString))(properties.tags)); - return errors.wrap('supplied properties not correct for "CfnSimpleTableProps"'); -} - -/** - * Renders the AWS CloudFormation properties of an `AWS::Serverless::SimpleTable` resource - * - * @param properties - the TypeScript properties of a `CfnSimpleTableProps` - * - * @returns the AWS CloudFormation properties of an `AWS::Serverless::SimpleTable` resource. - */ -// @ts-ignore TS6133 -function cfnSimpleTablePropsToCloudFormation(properties: any): any { - if (!cdk.canInspect(properties)) { return properties; } - CfnSimpleTablePropsValidator(properties).assertSuccess(); - return { - PrimaryKey: cfnSimpleTablePrimaryKeyPropertyToCloudFormation(properties.primaryKey), - ProvisionedThroughput: cfnSimpleTableProvisionedThroughputPropertyToCloudFormation(properties.provisionedThroughput), - SSESpecification: cfnSimpleTableSSESpecificationPropertyToCloudFormation(properties.sseSpecification), - TableName: cdk.stringToCloudFormation(properties.tableName), - Tags: cdk.hashMapper(cdk.stringToCloudFormation)(properties.tags), - }; -} - -/** - * A CloudFormation `AWS::Serverless::SimpleTable` - * - * @cloudformationResource AWS::Serverless::SimpleTable - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlesssimpletable - */ -export class CfnSimpleTable extends cdk.CfnResource { - /** - * The CloudFormation resource type name for this resource class. - */ - public static readonly resourceTypeName = "AWS::Serverless::SimpleTable"; - /** - * The `Transform` a template must use in order to use this resource - */ - public static readonly requiredTransform = "AWS::Serverless-2016-10-31"; - public readonly simpleTableName: string; - - /** - * The `TagManager` handles setting, removing and formatting tags - * - * Tags should be managed either passing them as properties during - * initiation or by calling methods on this object. If both techniques are - * used only the tags from the TagManager will be used. `Tag` (aspect) - * will use the manager. - */ - public readonly tags: cdk.TagManager; - - /** - * Create a new `AWS::Serverless::SimpleTable`. - * - * @param scope - scope in which this resource is defined - * @param id - scoped id of the resource - * @param props - resource properties - */ - constructor(scope: cdk.Construct, id: string, props?: CfnSimpleTableProps) { - super(scope, id, { type: CfnSimpleTable.resourceTypeName, properties: props }); - // If a different transform than the required one is in use, this resource cannot be used - if (this.node.stack.templateOptions.transform && this.node.stack.templateOptions.transform !== CfnSimpleTable.requiredTransform) { - throw new Error(`The ${JSON.stringify(CfnSimpleTable.requiredTransform)} transform is required when using CfnSimpleTable, but the ${JSON.stringify(this.node.stack.templateOptions.transform)} is used.`); - } - // Automatically configure the required transform - this.node.stack.templateOptions.transform = CfnSimpleTable.requiredTransform; - this.simpleTableName = this.ref.toString(); - const tags = props === undefined ? undefined : props.tags; - this.tags = new cdk.TagManager(cdk.TagType.Map, "AWS::Serverless::SimpleTable", tags); - } - - public get propertyOverrides(): CfnSimpleTableProps { - return this.untypedPropertyOverrides; - } - protected renderProperties(properties: any): { [key: string]: any } { - return cfnSimpleTablePropsToCloudFormation(this.node.resolve(properties)); - } -} - -export namespace CfnSimpleTable { - /** - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#primary-key-object - */ - export interface PrimaryKeyProperty { - /** - * `CfnSimpleTable.PrimaryKeyProperty.Name` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#primary-key-object - */ - name?: string; - /** - * `CfnSimpleTable.PrimaryKeyProperty.Type` - * @see https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#primary-key-object - */ - type: string; - } -} - -/** - * Determine whether the given properties match those of a `PrimaryKeyProperty` - * - * @param properties - the TypeScript properties of a `PrimaryKeyProperty` - * - * @returns the result of the validation. - */ -function CfnSimpleTable_PrimaryKeyPropertyValidator(properties: any): cdk.ValidationResult { - if (!cdk.canInspect(properties)) { return cdk.VALIDATION_SUCCESS; } - const errors = new cdk.ValidationResults(); - errors.collect(cdk.propertyValidator('name', cdk.validateString)(properties.name)); - errors.collect(cdk.propertyValidator('type', cdk.requiredValidator)(properties.type)); - errors.collect(cdk.propertyValidator('type', cdk.validateString)(properties.type)); - return errors.wrap('supplied properties not correct for "PrimaryKeyProperty"'); -} - -/** - * Renders the AWS CloudFormation properties of an `AWS::Serverless::SimpleTable.PrimaryKey` resource - * - * @param properties - the TypeScript properties of a `PrimaryKeyProperty` - * - * @returns the AWS CloudFormation properties of an `AWS::Serverless::SimpleTable.PrimaryKey` resource. - */ -// @ts-ignore TS6133 -function cfnSimpleTablePrimaryKeyPropertyToCloudFormation(properties: any): any { - if (!cdk.canInspect(properties)) { return properties; } - CfnSimpleTable_PrimaryKeyPropertyValidator(properties).assertSuccess(); - return { - Name: cdk.stringToCloudFormation(properties.name), - Type: cdk.stringToCloudFormation(properties.type), - }; -} - -export namespace CfnSimpleTable { - /** - * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-provisionedthroughput.html - */ - export interface ProvisionedThroughputProperty { - /** - * `CfnSimpleTable.ProvisionedThroughputProperty.ReadCapacityUnits` - * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-provisionedthroughput.html - */ - readCapacityUnits?: number | cdk.Token; - /** - * `CfnSimpleTable.ProvisionedThroughputProperty.WriteCapacityUnits` - * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-provisionedthroughput.html - */ - writeCapacityUnits: number | cdk.Token; - } -} - -/** - * Determine whether the given properties match those of a `ProvisionedThroughputProperty` - * - * @param properties - the TypeScript properties of a `ProvisionedThroughputProperty` - * - * @returns the result of the validation. - */ -function CfnSimpleTable_ProvisionedThroughputPropertyValidator(properties: any): cdk.ValidationResult { - if (!cdk.canInspect(properties)) { return cdk.VALIDATION_SUCCESS; } - const errors = new cdk.ValidationResults(); - errors.collect(cdk.propertyValidator('readCapacityUnits', cdk.validateNumber)(properties.readCapacityUnits)); - errors.collect(cdk.propertyValidator('writeCapacityUnits', cdk.requiredValidator)(properties.writeCapacityUnits)); - errors.collect(cdk.propertyValidator('writeCapacityUnits', cdk.validateNumber)(properties.writeCapacityUnits)); - return errors.wrap('supplied properties not correct for "ProvisionedThroughputProperty"'); -} - -/** - * Renders the AWS CloudFormation properties of an `AWS::Serverless::SimpleTable.ProvisionedThroughput` resource - * - * @param properties - the TypeScript properties of a `ProvisionedThroughputProperty` - * - * @returns the AWS CloudFormation properties of an `AWS::Serverless::SimpleTable.ProvisionedThroughput` resource. - */ -// @ts-ignore TS6133 -function cfnSimpleTableProvisionedThroughputPropertyToCloudFormation(properties: any): any { - if (!cdk.canInspect(properties)) { return properties; } - CfnSimpleTable_ProvisionedThroughputPropertyValidator(properties).assertSuccess(); - return { - ReadCapacityUnits: cdk.numberToCloudFormation(properties.readCapacityUnits), - WriteCapacityUnits: cdk.numberToCloudFormation(properties.writeCapacityUnits), - }; -} - -export namespace CfnSimpleTable { - /** - * @see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-ssespecification.html - */ - export interface SSESpecificationProperty { - /** - * `CfnSimpleTable.SSESpecificationProperty.SSEEnabled` - * @see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-ssespecification.html - */ - sseEnabled?: boolean | cdk.Token; - } -} - -/** - * Determine whether the given properties match those of a `SSESpecificationProperty` - * - * @param properties - the TypeScript properties of a `SSESpecificationProperty` - * - * @returns the result of the validation. - */ -function CfnSimpleTable_SSESpecificationPropertyValidator(properties: any): cdk.ValidationResult { - if (!cdk.canInspect(properties)) { return cdk.VALIDATION_SUCCESS; } - const errors = new cdk.ValidationResults(); - errors.collect(cdk.propertyValidator('sseEnabled', cdk.validateBoolean)(properties.sseEnabled)); - return errors.wrap('supplied properties not correct for "SSESpecificationProperty"'); -} - -/** - * Renders the AWS CloudFormation properties of an `AWS::Serverless::SimpleTable.SSESpecification` resource - * - * @param properties - the TypeScript properties of a `SSESpecificationProperty` - * - * @returns the AWS CloudFormation properties of an `AWS::Serverless::SimpleTable.SSESpecification` resource. - */ -// @ts-ignore TS6133 -function cfnSimpleTableSSESpecificationPropertyToCloudFormation(properties: any): any { - if (!cdk.canInspect(properties)) { return properties; } - CfnSimpleTable_SSESpecificationPropertyValidator(properties).assertSuccess(); - return { - SSEEnabled: cdk.booleanToCloudFormation(properties.sseEnabled), - }; -} diff --git a/packages/@aws-cdk/aws-serverless/package-lock.json b/packages/@aws-cdk/aws-serverless/package-lock.json deleted file mode 100644 index cb6dd241cad10..0000000000000 --- a/packages/@aws-cdk/aws-serverless/package-lock.json +++ /dev/null @@ -1,742 +0,0 @@ -{ - "name": "@aws-cdk/aws-serverless", - "version": "0.27.0", - "lockfileVersion": 1, - "requires": true, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.2.tgz", - "integrity": "sha512-H1qVYh1MYhEEFLsP97cVKqCGo7KfCyTt6uEWqsTBr9SO84oK9Uwbyd/yCW+6rKJLHksBNUVWZDAjfS+Ccx0Bbg==", - "dev": true, - "requires": { - "lodash": "^4.17.11" - } - }, - "camelcase": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.2.0.tgz", - "integrity": "sha512-IXFsBS2pC+X0j0N/GE7Dm7j3bsEBp+oTpb7F50dwEVX7rf3IgwO9XatnegTsDtniKCUtEJH4fSU6Asw7uoVLfQ==", - "dev": true - }, - "case": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/case/-/case-1.6.1.tgz", - "integrity": "sha512-N0rDB5ftMDKANGsIBRWPWcG0VIKtirgqcXb2vKFi66ySAjXVEwbfCN7ass1mkdXO8fbol3RfbWlQ9KyBX2F/Gg==", - "dev": true - }, - "cliui": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", - "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", - "dev": true, - "requires": { - "string-width": "^2.1.1", - "strip-ansi": "^4.0.0", - "wrap-ansi": "^2.0.0" - }, - "dependencies": { - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - } - } - } - }, - "clone": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", - "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=", - "dev": true - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "dev": true - }, - "codemaker": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/codemaker/-/codemaker-0.8.2.tgz", - "integrity": "sha512-agUY157vcCXFnJ9gDM8/iKbq62PWHkccnztbeuS1NZ8Pm9Z13Z9FHMuXWrh/zOQjggXpr5y3pPBpCHOlDYnHLw==", - "dev": true, - "requires": { - "camelcase": "^5.2.0", - "decamelize": "^1.2.0", - "fs-extra": "^7.0.1" - } - }, - "colors": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.3.3.tgz", - "integrity": "sha512-mmGt/1pZqYRjMxB1axhTo16/snVZ5krrKkcmMeVKxzECMMXoCgnvTPp10QgHfcbQZw8Dq2jMNG6je4JlWU0gWg==", - "dev": true - }, - "cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", - "dev": true, - "requires": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "date-format": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/date-format/-/date-format-2.0.0.tgz", - "integrity": "sha512-M6UqVvZVgFYqZL1SfHsRGIQSz3ZL+qgbsV5Lp1Vj61LZVYuEwcMXYay7DRDtYs2HQQBK5hQtQ0fD9aEJ89V0LA==", - "dev": true - }, - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true - }, - "deep-equal": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", - "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=", - "dev": true - }, - "detect-indent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-5.0.0.tgz", - "integrity": "sha1-OHHMCmoALow+Wzz38zYmRnXwa50=", - "dev": true - }, - "detect-newline": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-2.1.0.tgz", - "integrity": "sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I=", - "dev": true - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "dev": true - }, - "end-of-stream": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz", - "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", - "dev": true, - "requires": { - "once": "^1.4.0" - } - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "execa": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", - "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", - "dev": true, - "requires": { - "cross-spawn": "^6.0.0", - "get-stream": "^4.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" - } - }, - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "flatted": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.0.tgz", - "integrity": "sha512-R+H8IZclI8AAkSBRQJLVOsxwAoHd6WC40b4QTNWIjzAa6BXOBfQcM587MXDTVPeYaopFNWHUFLx7eNmHDSxMWg==", - "dev": true - }, - "fs-extra": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", - "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, - "get-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", - "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", - "dev": true, - "requires": { - "pump": "^3.0.0" - } - }, - "graceful-fs": { - "version": "4.1.15", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", - "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", - "dev": true - }, - "invert-kv": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", - "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", - "dev": true - }, - "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", - "dev": true - }, - "jsii": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/jsii/-/jsii-0.8.2.tgz", - "integrity": "sha512-VbRwBFWlmWDoiNoNreX96ii37LEwviFvfSyTY37tMZFXs8QSG5NIrR66JmNaF/ejbQpubqAKxW/Nb/YWCqhRbg==", - "dev": true, - "requires": { - "case": "^1.6.1", - "colors": "^1.3.3", - "deep-equal": "^1.0.1", - "fs-extra": "^7.0.1", - "jsii-spec": "^0.8.2", - "log4js": "^4.0.2", - "semver": "^5.6.0", - "sort-json": "^2.0.0", - "spdx-license-list": "^5.0.0", - "typescript": "^3.3.3333", - "yargs": "^13.2.2" - } - }, - "jsii-pacmak": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/jsii-pacmak/-/jsii-pacmak-0.8.2.tgz", - "integrity": "sha512-guqjntPr9uVkGGR+4fAralIoHpPsdCLsQsDf7Kh3GCRjgLn20JeHBgv4vT6Wym0nqjqL/5fY4nsXI/9w/OVZ0A==", - "dev": true, - "requires": { - "clone": "^2.1.2", - "codemaker": "^0.8.2", - "escape-string-regexp": "^1.0.5", - "fs-extra": "^7.0.1", - "jsii-spec": "^0.8.2", - "spdx-license-list": "^5.0.0", - "xmlbuilder": "^11.0.0", - "yargs": "^13.2.2" - } - }, - "jsii-spec": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/jsii-spec/-/jsii-spec-0.8.2.tgz", - "integrity": "sha512-eDL96xDOMwk5tzSBqbOi1Hh17Y42eLyovoo4CEcwaHpBRR0mSccPyjXyjAEWJVMg1yyA2UEX0DrPgJa2yY7oeQ==", - "dev": true, - "requires": { - "jsonschema": "^1.2.4" - } - }, - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "jsonschema": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/jsonschema/-/jsonschema-1.2.4.tgz", - "integrity": "sha512-lz1nOH69GbsVHeVgEdvyavc/33oymY1AZwtePMiMj4HZPMbP5OIKK3zT9INMWjwua/V4Z4yq7wSlBbSG+g4AEw==", - "dev": true - }, - "lcid": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", - "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", - "dev": true, - "requires": { - "invert-kv": "^2.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "lodash": { - "version": "4.17.11", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", - "dev": true - }, - "log4js": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/log4js/-/log4js-4.1.0.tgz", - "integrity": "sha512-eDa+zZPeVEeK6QGJAePyXM6pg4P3n3TO5rX9iZMVY48JshsTyLJZLIL5HipI1kQ2qLsSyOpUqNND/C5H4WhhiA==", - "dev": true, - "requires": { - "date-format": "^2.0.0", - "debug": "^4.1.1", - "flatted": "^2.0.0", - "rfdc": "^1.1.2", - "streamroller": "^1.0.4" - } - }, - "map-age-cleaner": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz", - "integrity": "sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==", - "dev": true, - "requires": { - "p-defer": "^1.0.0" - } - }, - "mem": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/mem/-/mem-4.2.0.tgz", - "integrity": "sha512-5fJxa68urlY0Ir8ijatKa3eRz5lwXnRCTvo9+TbTGAuTFJOwpGcY0X05moBd0nW45965Njt4CDI2GFQoG8DvqA==", - "dev": true, - "requires": { - "map-age-cleaner": "^0.1.1", - "mimic-fn": "^2.0.0", - "p-is-promise": "^2.0.0" - } - }, - "mimic-fn": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.0.0.tgz", - "integrity": "sha512-jbex9Yd/3lmICXwYT6gA/j2mNQGU48wCh/VzRd+/Y/PjYQtlg1gLMdZqvu9s/xH7qKvngxRObl56XZR609IMbA==", - "dev": true - }, - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true - }, - "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", - "dev": true - }, - "nice-try": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", - "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", - "dev": true - }, - "npm-run-path": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", - "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", - "dev": true, - "requires": { - "path-key": "^2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "dev": true - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "os-locale": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.1.0.tgz", - "integrity": "sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q==", - "dev": true, - "requires": { - "execa": "^1.0.0", - "lcid": "^2.0.0", - "mem": "^4.0.0" - } - }, - "p-defer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", - "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=", - "dev": true - }, - "p-finally": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", - "dev": true - }, - "p-is-promise": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-2.0.0.tgz", - "integrity": "sha512-pzQPhYMCAgLAKPWD2jC3Se9fEfrD9npNos0y150EeqZll7akhEgGhTW/slB6lHku8AvYGiJ+YJ5hfHKePPgFWg==", - "dev": true - }, - "p-limit": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", - "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.1.0.tgz", - "integrity": "sha512-H2RyIJ7+A3rjkwKC2l5GGtU4H1vkxKCAGsWasNVd0Set+6i4znxbWy6/j16YDPJDWxhsgZiKAstMEP8wCdSpjA==", - "dev": true - }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true - }, - "path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", - "dev": true - }, - "pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", - "dev": true - }, - "require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true - }, - "rfdc": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.1.2.tgz", - "integrity": "sha512-92ktAgvZhBzYTIK0Mja9uen5q5J3NRVMoDkJL2VMwq6SXjVCgqvQeVP2XAaUY6HT+XpQYeLSjb3UoitBryKmdA==", - "dev": true - }, - "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", - "dev": true - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", - "dev": true - }, - "shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", - "dev": true, - "requires": { - "shebang-regex": "^1.0.0" - } - }, - "shebang-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", - "dev": true - }, - "signal-exit": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", - "dev": true - }, - "sort-json": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/sort-json/-/sort-json-2.0.0.tgz", - "integrity": "sha512-OgXPErPJM/rBK5OhzIJ+etib/BmLQ1JY55Nb/ElhoWUec62pXNF/X6DrecHq3NW5OAGX0KxYD7m0HtgB9dvGeA==", - "dev": true, - "requires": { - "detect-indent": "^5.0.0", - "detect-newline": "^2.1.0", - "minimist": "^1.2.0" - } - }, - "spdx-license-list": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/spdx-license-list/-/spdx-license-list-5.0.0.tgz", - "integrity": "sha512-N5u9tEFRBUzQDjMKRRt8SHxC/UaqYApPmdF4MMFnICQg3z52onNbnneuro/sWw2rd+eGu9agQOzUbD671Xia7Q==", - "dev": true - }, - "streamroller": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/streamroller/-/streamroller-1.0.4.tgz", - "integrity": "sha512-Wc2Gm5ygjSX8ZpW9J7Y9FwiSzTlKSvcl0FTTMd3rn7RoxDXpBW+xD9TY5sWL2n0UR61COB0LG1BQvN6nTUQbLQ==", - "dev": true, - "requires": { - "async": "^2.6.1", - "date-format": "^2.0.0", - "debug": "^3.1.0", - "fs-extra": "^7.0.0", - "lodash": "^4.17.10" - }, - "dependencies": { - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - } - } - }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dev": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - } - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - }, - "strip-eof": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", - "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", - "dev": true - }, - "typescript": { - "version": "3.3.4000", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.3.4000.tgz", - "integrity": "sha512-jjOcCZvpkl2+z7JFn0yBOoLQyLoIkNZAs/fYJkUG6VKy6zLPHJGfQJYFHzibB6GJaF/8QrcECtlQ5cpvRHSMEA==", - "dev": true - }, - "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true - }, - "which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true - }, - "wrap-ansi": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", - "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", - "dev": true, - "requires": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - } - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true - }, - "xmlbuilder": { - "version": "11.0.1", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", - "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", - "dev": true - }, - "y18n": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", - "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", - "dev": true - }, - "yargs": { - "version": "13.2.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.2.2.tgz", - "integrity": "sha512-WyEoxgyTD3w5XRpAQNYUB9ycVH/PQrToaTXdYXRdOXvEy1l19br+VJsc0vcO8PTGg5ro/l/GY7F/JMEBmI0BxA==", - "dev": true, - "requires": { - "cliui": "^4.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", - "os-locale": "^3.1.0", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^13.0.0" - } - }, - "yargs-parser": { - "version": "13.0.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.0.0.tgz", - "integrity": "sha512-w2LXjoL8oRdRQN+hOyppuXs+V/fVAYtpcrRxZuF7Kt/Oc+Jr2uAcVntaUTNT6w5ihoWfFDpNY8CPx1QskxZ/pw==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } - } -} diff --git a/packages/@aws-cdk/aws-serverless/package.json b/packages/@aws-cdk/aws-serverless/package.json deleted file mode 100644 index d3de4148cae51..0000000000000 --- a/packages/@aws-cdk/aws-serverless/package.json +++ /dev/null @@ -1,63 +0,0 @@ -{ - "name": "@aws-cdk/aws-serverless", - "version": "0.28.0", - "deprecated": true, - "description": "This module was renamed to @aws-cdk/aws-sam, use this instead!", - "main": "lib/index.js", - "types": "lib/index.d.ts", - "jsii": { - "outdir": "dist", - "targets": { - "dotnet": { - "namespace": "Amazon.CDK.AWS.Serverless", - "packageId": "Amazon.CDK.AWS.Serverless", - "signAssembly": true, - "assemblyOriginatorKeyFile": "../../key.snk" - }, - "java": { - "package": "software.amazon.awscdk.services.serverless", - "maven": { - "groupId": "software.amazon.awscdk", - "artifactId": "serverless" - } - }, - "sphinx": {} - } - }, - "repository": { - "type": "git", - "url": "https://github.com/awslabs/aws-cdk.git" - }, - "homepage": "https://github.com/awslabs/aws-cdk", - "scripts": { - "build": "jsii", - "package": "jsii-pacmak" - }, - "keywords": [ - "aws", - "cdk", - "constructs", - "aws-serverless" - ], - "author": { - "name": "Amazon Web Services", - "url": "https://aws.amazon.com", - "organization": true - }, - "license": "Apache-2.0", - "devDependencies": { - "jsii": "^0.8.2", - "jsii-pacmak": "^0.8.2" - }, - "dependencies": { - "@aws-cdk/aws-sam": "^0.28.0", - "@aws-cdk/cdk": "^0.28.0" - }, - "peerDependencies": { - "@aws-cdk/aws-sam": "^0.28.0", - "@aws-cdk/cdk": "^0.28.0" - }, - "engines": { - "node": ">= 8.10.0" - } -} \ No newline at end of file