aws-cdk-lib
Version:
Version 2 of the AWS Cloud Development Kit library
1,218 lines • 171 kB
TypeScript
import * as constructs from 'constructs';
import * as cdk from '../../core';
import * as cfn_parse from '../../core/lib/helpers-internal';
/**
* Properties for defining a `CfnApi`
*
* @struct
* @stability external
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi
*/
export interface CfnApiProps {
/**
* `AWS::Serverless::Api.StageName`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi
*/
readonly stageName: string;
/**
* `AWS::Serverless::Api.AccessLogSetting`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi
*/
readonly accessLogSetting?: CfnApi.AccessLogSettingProperty | cdk.IResolvable;
/**
* `AWS::Serverless::Api.Auth`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi
*/
readonly auth?: CfnApi.AuthProperty | cdk.IResolvable;
/**
* `AWS::Serverless::Api.BinaryMediaTypes`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi
*/
readonly binaryMediaTypes?: string[];
/**
* `AWS::Serverless::Api.CacheClusterEnabled`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi
*/
readonly cacheClusterEnabled?: boolean | cdk.IResolvable;
/**
* `AWS::Serverless::Api.CacheClusterSize`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi
*/
readonly cacheClusterSize?: string;
/**
* `AWS::Serverless::Api.CanarySetting`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-api.html#sam-api-canarysetting
*/
readonly canarySetting?: CfnApi.CanarySettingProperty | cdk.IResolvable;
/**
* `AWS::Serverless::Api.Cors`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi
*/
readonly cors?: CfnApi.CorsConfigurationProperty | string | cdk.IResolvable;
/**
* `AWS::Serverless::Api.DefinitionBody`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi
*/
readonly definitionBody?: any | cdk.IResolvable;
/**
* `AWS::Serverless::Api.DefinitionUri`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi
*/
readonly definitionUri?: CfnApi.S3LocationProperty | string | cdk.IResolvable;
/**
* `AWS::Serverless::Api.Description`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-api.html#sam-api-description
*/
readonly description?: string;
/**
* `AWS::Serverless::Api.DisableExecuteApiEndpoint`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-api.html#sam-api-disableexecuteapiendpoint
*/
readonly disableExecuteApiEndpoint?: boolean | cdk.IResolvable;
/**
* `AWS::Serverless::Api.Domain`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-api.html#sam-api-domain
*/
readonly domain?: CfnApi.DomainConfigurationProperty | cdk.IResolvable;
/**
* `AWS::Serverless::Api.EndpointConfiguration`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi
*/
readonly endpointConfiguration?: CfnApi.EndpointConfigurationProperty | string | cdk.IResolvable;
/**
* `AWS::Serverless::Api.GatewayResponses`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-api.html#sam-api-gatewayresponses
*/
readonly gatewayResponses?: any | cdk.IResolvable;
/**
* `AWS::Serverless::Api.MethodSettings`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi
*/
readonly methodSettings?: Array<any | cdk.IResolvable> | cdk.IResolvable;
/**
* `AWS::Serverless::Api.MinimumCompressionSize`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-api.html#sam-api-minimumcompressionsize
*/
readonly minimumCompressionSize?: number;
/**
* `AWS::Serverless::Api.Models`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-api.html#sam-api-models
*/
readonly models?: any | cdk.IResolvable;
/**
* `AWS::Serverless::Api.Name`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi
*/
readonly name?: string;
/**
* `AWS::Serverless::Api.OpenApiVersion`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi
*/
readonly openApiVersion?: string;
/**
* `AWS::Serverless::Api.Tags`
*
* @link https://github.com/aws/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlesshttpapi
*/
readonly tags?: {
[key: string]: (string);
};
/**
* `AWS::Serverless::Api.TracingEnabled`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi
*/
readonly tracingEnabled?: boolean | cdk.IResolvable;
/**
* `AWS::Serverless::Api.Variables`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi
*/
readonly variables?: {
[key: string]: (string);
} | cdk.IResolvable;
}
/**
* A CloudFormation `AWS::Serverless::Api`
*
*
*
* @cloudformationResource AWS::Serverless::Api
* @stability external
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi
*/
export declare class CfnApi extends cdk.CfnResource implements cdk.IInspectable {
/**
* The CloudFormation resource type name for this resource class.
*/
static readonly CFN_RESOURCE_TYPE_NAME = "AWS::Serverless::Api";
/**
* The `Transform` a template must use in order to use this resource
*/
static readonly REQUIRED_TRANSFORM = "AWS::Serverless-2016-10-31";
/**
* A factory method that creates a new instance of this class from an object
* containing the CloudFormation properties of this resource.
* Used in the @aws-cdk/cloudformation-include module.
*
* @internal
*/
static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnApi;
/**
* `AWS::Serverless::Api.StageName`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi
*/
stageName: string;
/**
* `AWS::Serverless::Api.AccessLogSetting`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi
*/
accessLogSetting: CfnApi.AccessLogSettingProperty | cdk.IResolvable | undefined;
/**
* `AWS::Serverless::Api.Auth`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi
*/
auth: CfnApi.AuthProperty | cdk.IResolvable | undefined;
/**
* `AWS::Serverless::Api.BinaryMediaTypes`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi
*/
binaryMediaTypes: string[] | undefined;
/**
* `AWS::Serverless::Api.CacheClusterEnabled`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi
*/
cacheClusterEnabled: boolean | cdk.IResolvable | undefined;
/**
* `AWS::Serverless::Api.CacheClusterSize`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi
*/
cacheClusterSize: string | undefined;
/**
* `AWS::Serverless::Api.CanarySetting`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-api.html#sam-api-canarysetting
*/
canarySetting: CfnApi.CanarySettingProperty | cdk.IResolvable | undefined;
/**
* `AWS::Serverless::Api.Cors`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi
*/
cors: CfnApi.CorsConfigurationProperty | string | cdk.IResolvable | undefined;
/**
* `AWS::Serverless::Api.DefinitionBody`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi
*/
definitionBody: any | cdk.IResolvable | undefined;
/**
* `AWS::Serverless::Api.DefinitionUri`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi
*/
definitionUri: CfnApi.S3LocationProperty | string | cdk.IResolvable | undefined;
/**
* `AWS::Serverless::Api.Description`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-api.html#sam-api-description
*/
description: string | undefined;
/**
* `AWS::Serverless::Api.DisableExecuteApiEndpoint`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-api.html#sam-api-disableexecuteapiendpoint
*/
disableExecuteApiEndpoint: boolean | cdk.IResolvable | undefined;
/**
* `AWS::Serverless::Api.Domain`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-api.html#sam-api-domain
*/
domain: CfnApi.DomainConfigurationProperty | cdk.IResolvable | undefined;
/**
* `AWS::Serverless::Api.EndpointConfiguration`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi
*/
endpointConfiguration: CfnApi.EndpointConfigurationProperty | string | cdk.IResolvable | undefined;
/**
* `AWS::Serverless::Api.GatewayResponses`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-api.html#sam-api-gatewayresponses
*/
gatewayResponses: any | cdk.IResolvable | undefined;
/**
* `AWS::Serverless::Api.MethodSettings`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi
*/
methodSettings: Array<any | cdk.IResolvable> | cdk.IResolvable | undefined;
/**
* `AWS::Serverless::Api.MinimumCompressionSize`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-api.html#sam-api-minimumcompressionsize
*/
minimumCompressionSize: number | undefined;
/**
* `AWS::Serverless::Api.Models`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-api.html#sam-api-models
*/
models: any | cdk.IResolvable | undefined;
/**
* `AWS::Serverless::Api.Name`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi
*/
name: string | undefined;
/**
* `AWS::Serverless::Api.OpenApiVersion`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi
*/
openApiVersion: string | undefined;
/**
* `AWS::Serverless::Api.Tags`
*
* @link https://github.com/aws/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlesshttpapi
*/
readonly tags: cdk.TagManager;
/**
* `AWS::Serverless::Api.TracingEnabled`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi
*/
tracingEnabled: boolean | cdk.IResolvable | undefined;
/**
* `AWS::Serverless::Api.Variables`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi
*/
variables: {
[key: string]: (string);
} | cdk.IResolvable | undefined;
/**
* 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: constructs.Construct, id: string, props: CfnApiProps);
/**
* Examines the CloudFormation resource and discloses attributes.
*
* @param inspector - tree inspector to collect and process attributes
*
*/
inspect(inspector: cdk.TreeInspector): void;
protected get cfnProperties(): {
[key: string]: any;
};
protected renderProperties(props: {
[key: string]: any;
}): {
[key: string]: any;
};
}
export declare namespace CfnApi {
/**
*
*
* @struct
* @stability external
*
* @link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-accesslogsetting.html
*/
interface AccessLogSettingProperty {
/**
* `CfnApi.AccessLogSettingProperty.DestinationArn`
*
* @link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-accesslogsetting.html#cfn-apigateway-stage-accesslogsetting-destinationarn
*/
readonly destinationArn?: string;
/**
* `CfnApi.AccessLogSettingProperty.Format`
*
* @link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-accesslogsetting.html#cfn-apigateway-stage-accesslogsetting-format
*/
readonly format?: string;
}
}
export declare namespace CfnApi {
/**
*
*
* @struct
* @stability external
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#api-auth-object
*/
interface AuthProperty {
/**
* `CfnApi.AuthProperty.AddDefaultAuthorizerToCorsPreflight`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#api-auth-object
*/
readonly addDefaultAuthorizerToCorsPreflight?: boolean | cdk.IResolvable;
/**
* `CfnApi.AuthProperty.Authorizers`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#api-auth-object
*/
readonly authorizers?: any | cdk.IResolvable;
/**
* `CfnApi.AuthProperty.DefaultAuthorizer`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#api-auth-object
*/
readonly defaultAuthorizer?: string;
}
}
export declare namespace CfnApi {
/**
*
*
* @struct
* @stability external
*
* @link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-canarysetting.html
*/
interface CanarySettingProperty {
/**
* `CfnApi.CanarySettingProperty.DeploymentId`
*
* @link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-canarysetting.html#cfn-apigateway-stage-canarysetting-deploymentid
*/
readonly deploymentId?: string;
/**
* `CfnApi.CanarySettingProperty.PercentTraffic`
*
* @link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-canarysetting.html#cfn-apigateway-stage-canarysetting-percenttraffic
*/
readonly percentTraffic?: number;
/**
* `CfnApi.CanarySettingProperty.StageVariableOverrides`
*
* @link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-canarysetting.html#cfn-apigateway-stage-canarysetting-stagevariableoverrides
*/
readonly stageVariableOverrides?: {
[key: string]: (string);
} | cdk.IResolvable;
/**
* `CfnApi.CanarySettingProperty.UseStageCache`
*
* @link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-canarysetting.html#cfn-apigateway-stage-canarysetting-usestagecache
*/
readonly useStageCache?: boolean | cdk.IResolvable;
}
}
export declare namespace CfnApi {
/**
*
*
* @struct
* @stability external
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#cors-configuration
*/
interface CorsConfigurationProperty {
/**
* `CfnApi.CorsConfigurationProperty.AllowCredentials`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#cors-configuration
*/
readonly allowCredentials?: boolean | cdk.IResolvable;
/**
* `CfnApi.CorsConfigurationProperty.AllowHeaders`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#cors-configuration
*/
readonly allowHeaders?: string;
/**
* `CfnApi.CorsConfigurationProperty.AllowMethods`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#cors-configuration
*/
readonly allowMethods?: string;
/**
* `CfnApi.CorsConfigurationProperty.AllowOrigin`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#cors-configuration
*/
readonly allowOrigin: string;
/**
* `CfnApi.CorsConfigurationProperty.MaxAge`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#cors-configuration
*/
readonly maxAge?: string;
}
}
export declare namespace CfnApi {
/**
*
*
* @struct
* @stability external
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-domainconfiguration.html
*/
interface DomainConfigurationProperty {
/**
* `CfnApi.DomainConfigurationProperty.BasePath`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-domainconfiguration.html#sam-api-domainconfiguration-basepath
*/
readonly basePath?: string[];
/**
* `CfnApi.DomainConfigurationProperty.CertificateArn`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-domainconfiguration.html#sam-api-domainconfiguration-certificatearn
*/
readonly certificateArn: string;
/**
* `CfnApi.DomainConfigurationProperty.DomainName`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-domainconfiguration.html#sam-api-domainconfiguration-domainname
*/
readonly domainName: string;
/**
* `CfnApi.DomainConfigurationProperty.EndpointConfiguration`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-domainconfiguration.html#sam-api-domainconfiguration-endpointconfiguration
*/
readonly endpointConfiguration?: string;
/**
* `CfnApi.DomainConfigurationProperty.MutualTlsAuthentication`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-domainconfiguration.html#sam-api-domainconfiguration-mutualtlsauthentication
*/
readonly mutualTlsAuthentication?: CfnApi.MutualTlsAuthenticationProperty | cdk.IResolvable;
/**
* `CfnApi.DomainConfigurationProperty.OwnershipVerificationCertificateArn`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-domainconfiguration.html#sam-api-domainconfiguration-ownershipverificationcertificatearn
*/
readonly ownershipVerificationCertificateArn?: string;
/**
* `CfnApi.DomainConfigurationProperty.Route53`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-domainconfiguration.html#sam-api-domainconfiguration-route53
*/
readonly route53?: CfnApi.Route53ConfigurationProperty | cdk.IResolvable;
/**
* `CfnApi.DomainConfigurationProperty.SecurityPolicy`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-domainconfiguration.html#sam-api-domainconfiguration-securitypolicy
*/
readonly securityPolicy?: string;
}
}
export declare namespace CfnApi {
/**
*
*
* @struct
* @stability external
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-endpointconfiguration.html
*/
interface EndpointConfigurationProperty {
/**
* `CfnApi.EndpointConfigurationProperty.Type`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-endpointconfiguration.html#sam-api-endpointconfiguration-type
*/
readonly type?: string;
/**
* `CfnApi.EndpointConfigurationProperty.VpcEndpointIds`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-endpointconfiguration.html#sam-api-endpointconfiguration-vpcendpointids
*/
readonly vpcEndpointIds?: string[];
}
}
export declare namespace CfnApi {
/**
*
*
* @struct
* @stability external
*
* @link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-domainname-mutualtlsauthentication.html
*/
interface MutualTlsAuthenticationProperty {
/**
* `CfnApi.MutualTlsAuthenticationProperty.TruststoreUri`
*
* @link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-domainname-mutualtlsauthentication.html#cfn-apigateway-domainname-mutualtlsauthentication-truststoreuri
*/
readonly truststoreUri?: string;
/**
* `CfnApi.MutualTlsAuthenticationProperty.TruststoreVersion`
*
* @link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-domainname-mutualtlsauthentication.html#cfn-apigateway-domainname-mutualtlsauthentication-truststoreversion
*/
readonly truststoreVersion?: string;
}
}
export declare namespace CfnApi {
/**
*
*
* @struct
* @stability external
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-route53configuration.html
*/
interface Route53ConfigurationProperty {
/**
* `CfnApi.Route53ConfigurationProperty.DistributedDomainName`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-route53configuration.html#sam-api-route53configuration-distributiondomainname
*/
readonly distributedDomainName?: string;
/**
* `CfnApi.Route53ConfigurationProperty.EvaluateTargetHealth`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-route53configuration.html#sam-api-route53configuration-evaluatetargethealth
*/
readonly evaluateTargetHealth?: boolean | cdk.IResolvable;
/**
* `CfnApi.Route53ConfigurationProperty.HostedZoneId`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-route53configuration.html#sam-api-route53configuration-hostedzoneid
*/
readonly hostedZoneId?: string;
/**
* `CfnApi.Route53ConfigurationProperty.HostedZoneName`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-route53configuration.html#sam-api-route53configuration-hostedzonename
*/
readonly hostedZoneName?: string;
/**
* `CfnApi.Route53ConfigurationProperty.IpV6`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-route53configuration.html#sam-api-route53configuration-ipv6
*/
readonly ipV6?: boolean | cdk.IResolvable;
}
}
export declare namespace CfnApi {
/**
*
*
* @struct
* @stability external
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#s3-location-object
*/
interface S3LocationProperty {
/**
* `CfnApi.S3LocationProperty.Bucket`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#s3-location-object
*/
readonly bucket: string;
/**
* `CfnApi.S3LocationProperty.Key`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#s3-location-object
*/
readonly key: string;
/**
* `CfnApi.S3LocationProperty.Version`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#s3-location-object
*/
readonly version: number;
}
}
/**
* Properties for defining a `CfnApplication`
*
* @struct
* @stability external
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapplication
*/
export interface CfnApplicationProps {
/**
* `AWS::Serverless::Application.Location`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapplication
*/
readonly location: CfnApplication.ApplicationLocationProperty | string | cdk.IResolvable;
/**
* `AWS::Serverless::Application.NotificationArns`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapplication
*/
readonly notificationArns?: string[];
/**
* `AWS::Serverless::Application.Parameters`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapplication
*/
readonly parameters?: {
[key: string]: (string);
} | cdk.IResolvable;
/**
* `AWS::Serverless::Application.Tags`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapplication
*/
readonly tags?: {
[key: string]: (string);
};
/**
* `AWS::Serverless::Application.TimeoutInMinutes`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapplication
*/
readonly timeoutInMinutes?: number;
}
/**
* A CloudFormation `AWS::Serverless::Application`
*
*
*
* @cloudformationResource AWS::Serverless::Application
* @stability external
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapplication
*/
export declare class CfnApplication extends cdk.CfnResource implements cdk.IInspectable {
/**
* The CloudFormation resource type name for this resource class.
*/
static readonly CFN_RESOURCE_TYPE_NAME = "AWS::Serverless::Application";
/**
* The `Transform` a template must use in order to use this resource
*/
static readonly REQUIRED_TRANSFORM = "AWS::Serverless-2016-10-31";
/**
* A factory method that creates a new instance of this class from an object
* containing the CloudFormation properties of this resource.
* Used in the @aws-cdk/cloudformation-include module.
*
* @internal
*/
static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnApplication;
/**
* `AWS::Serverless::Application.Location`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapplication
*/
location: CfnApplication.ApplicationLocationProperty | string | cdk.IResolvable;
/**
* `AWS::Serverless::Application.NotificationArns`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapplication
*/
notificationArns: string[] | undefined;
/**
* `AWS::Serverless::Application.Parameters`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapplication
*/
parameters: {
[key: string]: (string);
} | cdk.IResolvable | undefined;
/**
* `AWS::Serverless::Application.Tags`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapplication
*/
readonly tags: cdk.TagManager;
/**
* `AWS::Serverless::Application.TimeoutInMinutes`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapplication
*/
timeoutInMinutes: number | undefined;
/**
* 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: constructs.Construct, id: string, props: CfnApplicationProps);
/**
* Examines the CloudFormation resource and discloses attributes.
*
* @param inspector - tree inspector to collect and process attributes
*
*/
inspect(inspector: cdk.TreeInspector): void;
protected get cfnProperties(): {
[key: string]: any;
};
protected renderProperties(props: {
[key: string]: any;
}): {
[key: string]: any;
};
}
export declare namespace CfnApplication {
/**
*
*
* @struct
* @stability external
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapplication
*/
interface ApplicationLocationProperty {
/**
* `CfnApplication.ApplicationLocationProperty.ApplicationId`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapplication
*/
readonly applicationId: string;
/**
* `CfnApplication.ApplicationLocationProperty.SemanticVersion`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapplication
*/
readonly semanticVersion: string;
}
}
/**
* Properties for defining a `CfnFunction`
*
* @struct
* @stability external
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
export interface CfnFunctionProps {
/**
* `AWS::Serverless::Function.Architectures`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-function.html#sam-function-architectures
*/
readonly architectures?: string[];
/**
* `AWS::Serverless::Function.AssumeRolePolicyDocument`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-function.html#sam-function-assumerolepolicydocument
*/
readonly assumeRolePolicyDocument?: any | cdk.IResolvable;
/**
* `AWS::Serverless::Function.AutoPublishAlias`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
readonly autoPublishAlias?: string;
/**
* `AWS::Serverless::Function.AutoPublishCodeSha256`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-function.html#sam-function-autopublishcodesha256
*/
readonly autoPublishCodeSha256?: string;
/**
* `AWS::Serverless::Function.CodeSigningConfigArn`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-function.html#sam-function-codesigningconfigarn
*/
readonly codeSigningConfigArn?: string;
/**
* `AWS::Serverless::Function.CodeUri`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
readonly codeUri?: CfnFunction.S3LocationProperty | string | cdk.IResolvable;
/**
* `AWS::Serverless::Function.DeadLetterQueue`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
readonly deadLetterQueue?: CfnFunction.DeadLetterQueueProperty | cdk.IResolvable;
/**
* `AWS::Serverless::Function.DeploymentPreference`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#deploymentpreference-object
*/
readonly deploymentPreference?: CfnFunction.DeploymentPreferenceProperty | cdk.IResolvable;
/**
* `AWS::Serverless::Function.Description`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
readonly description?: string;
/**
* `AWS::Serverless::Function.Environment`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
readonly environment?: CfnFunction.FunctionEnvironmentProperty | cdk.IResolvable;
/**
* `AWS::Serverless::Function.EventInvokeConfig`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
readonly eventInvokeConfig?: CfnFunction.EventInvokeConfigProperty | cdk.IResolvable;
/**
* `AWS::Serverless::Function.Events`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
readonly events?: {
[key: string]: (CfnFunction.EventSourceProperty | cdk.IResolvable);
} | cdk.IResolvable;
/**
* `AWS::Serverless::Function.FileSystemConfigs`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-function.html
*/
readonly fileSystemConfigs?: Array<CfnFunction.FileSystemConfigProperty | cdk.IResolvable> | cdk.IResolvable;
/**
* `AWS::Serverless::Function.FunctionName`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
readonly functionName?: string;
/**
* `AWS::Serverless::Function.Handler`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
readonly handler?: string;
/**
* `AWS::Serverless::Function.ImageConfig`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-function.html#sam-function-imageconfig
*/
readonly imageConfig?: CfnFunction.ImageConfigProperty | cdk.IResolvable;
/**
* `AWS::Serverless::Function.ImageUri`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-function.html#sam-function-imageuri
*/
readonly imageUri?: string;
/**
* `AWS::Serverless::Function.InlineCode`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
readonly inlineCode?: string;
/**
* `AWS::Serverless::Function.KmsKeyArn`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
readonly kmsKeyArn?: string;
/**
* `AWS::Serverless::Function.Layers`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
readonly layers?: string[];
/**
* `AWS::Serverless::Function.MemorySize`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
readonly memorySize?: number;
/**
* `AWS::Serverless::Function.PackageType`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-function.html#sam-function-packagetype
*/
readonly packageType?: string;
/**
* `AWS::Serverless::Function.PermissionsBoundary`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
readonly permissionsBoundary?: string;
/**
* `AWS::Serverless::Function.Policies`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
readonly policies?: Array<CfnFunction.IAMPolicyDocumentProperty | CfnFunction.SAMPolicyTemplateProperty | string | cdk.IResolvable> | CfnFunction.IAMPolicyDocumentProperty | string | cdk.IResolvable;
/**
* `AWS::Serverless::Function.ProvisionedConcurrencyConfig`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
readonly provisionedConcurrencyConfig?: CfnFunction.ProvisionedConcurrencyConfigProperty | cdk.IResolvable;
/**
* `AWS::Serverless::Function.ReservedConcurrentExecutions`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
readonly reservedConcurrentExecutions?: number;
/**
* `AWS::Serverless::Function.Role`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
readonly role?: string;
/**
* `AWS::Serverless::Function.Runtime`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
readonly runtime?: string;
/**
* `AWS::Serverless::Function.Tags`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
readonly tags?: {
[key: string]: (string);
};
/**
* `AWS::Serverless::Function.Timeout`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
readonly timeout?: number;
/**
* `AWS::Serverless::Function.Tracing`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
readonly tracing?: string;
/**
* `AWS::Serverless::Function.VersionDescription`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
readonly versionDescription?: string;
/**
* `AWS::Serverless::Function.VpcConfig`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
readonly vpcConfig?: CfnFunction.VpcConfigProperty | cdk.IResolvable;
}
/**
* A CloudFormation `AWS::Serverless::Function`
*
*
*
* @cloudformationResource AWS::Serverless::Function
* @stability external
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
export declare class CfnFunction extends cdk.CfnResource implements cdk.IInspectable {
/**
* The CloudFormation resource type name for this resource class.
*/
static readonly CFN_RESOURCE_TYPE_NAME = "AWS::Serverless::Function";
/**
* The `Transform` a template must use in order to use this resource
*/
static readonly REQUIRED_TRANSFORM = "AWS::Serverless-2016-10-31";
/**
* A factory method that creates a new instance of this class from an object
* containing the CloudFormation properties of this resource.
* Used in the @aws-cdk/cloudformation-include module.
*
* @internal
*/
static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnFunction;
/**
* `AWS::Serverless::Function.Architectures`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-function.html#sam-function-architectures
*/
architectures: string[] | undefined;
/**
* `AWS::Serverless::Function.AssumeRolePolicyDocument`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-function.html#sam-function-assumerolepolicydocument
*/
assumeRolePolicyDocument: any | cdk.IResolvable | undefined;
/**
* `AWS::Serverless::Function.AutoPublishAlias`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
autoPublishAlias: string | undefined;
/**
* `AWS::Serverless::Function.AutoPublishCodeSha256`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-function.html#sam-function-autopublishcodesha256
*/
autoPublishCodeSha256: string | undefined;
/**
* `AWS::Serverless::Function.CodeSigningConfigArn`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-function.html#sam-function-codesigningconfigarn
*/
codeSigningConfigArn: string | undefined;
/**
* `AWS::Serverless::Function.CodeUri`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
codeUri: CfnFunction.S3LocationProperty | string | cdk.IResolvable | undefined;
/**
* `AWS::Serverless::Function.DeadLetterQueue`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
deadLetterQueue: CfnFunction.DeadLetterQueueProperty | cdk.IResolvable | undefined;
/**
* `AWS::Serverless::Function.DeploymentPreference`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#deploymentpreference-object
*/
deploymentPreference: CfnFunction.DeploymentPreferenceProperty | cdk.IResolvable | undefined;
/**
* `AWS::Serverless::Function.Description`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
description: string | undefined;
/**
* `AWS::Serverless::Function.Environment`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
environment: CfnFunction.FunctionEnvironmentProperty | cdk.IResolvable | undefined;
/**
* `AWS::Serverless::Function.EventInvokeConfig`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
eventInvokeConfig: CfnFunction.EventInvokeConfigProperty | cdk.IResolvable | undefined;
/**
* `AWS::Serverless::Function.Events`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
events: {
[key: string]: (CfnFunction.EventSourceProperty | cdk.IResolvable);
} | cdk.IResolvable | undefined;
/**
* `AWS::Serverless::Function.FileSystemConfigs`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-function.html
*/
fileSystemConfigs: Array<CfnFunction.FileSystemConfigProperty | cdk.IResolvable> | cdk.IResolvable | undefined;
/**
* `AWS::Serverless::Function.FunctionName`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
functionName: string | undefined;
/**
* `AWS::Serverless::Function.Handler`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
handler: string | undefined;
/**
* `AWS::Serverless::Function.ImageConfig`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-function.html#sam-function-imageconfig
*/
imageConfig: CfnFunction.ImageConfigProperty | cdk.IResolvable | undefined;
/**
* `AWS::Serverless::Function.ImageUri`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-function.html#sam-function-imageuri
*/
imageUri: string | undefined;
/**
* `AWS::Serverless::Function.InlineCode`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
inlineCode: string | undefined;
/**
* `AWS::Serverless::Function.KmsKeyArn`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
kmsKeyArn: string | undefined;
/**
* `AWS::Serverless::Function.Layers`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
layers: string[] | undefined;
/**
* `AWS::Serverless::Function.MemorySize`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
memorySize: number | undefined;
/**
* `AWS::Serverless::Function.PackageType`
*
* @link https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-function.html#sam-function-packagetype
*/
packageType: string | undefined;
/**
* `AWS::Serverless::Function.PermissionsBoundary`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
permissionsBoundary: string | undefined;
/**
* `AWS::Serverless::Function.Policies`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
policies: Array<CfnFunction.IAMPolicyDocumentProperty | CfnFunction.SAMPolicyTemplateProperty | string | cdk.IResolvable> | CfnFunction.IAMPolicyDocumentProperty | string | cdk.IResolvable | undefined;
/**
* `AWS::Serverless::Function.ProvisionedConcurrencyConfig`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
provisionedConcurrencyConfig: CfnFunction.ProvisionedConcurrencyConfigProperty | cdk.IResolvable | undefined;
/**
* `AWS::Serverless::Function.ReservedConcurrentExecutions`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
reservedConcurrentExecutions: number | undefined;
/**
* `AWS::Serverless::Function.Role`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
*/
role: string | undefined;
/**
* `AWS::Serverless::Function.Runtime`
*
* @link https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-1