UNPKG

cloudformation-declarations

Version:

TypeScript declarations and helpers for writing CloudFormation templates in TS or JS.

1,176 lines (1,040 loc) 1.57 MB
import * as C from '../common'; export declare namespace AWS.ApiGateway { /** * The AWS::ApiGateway::Account resource specifies the AWS Identity and Access Management (IAM) role that Amazon API Gateway (API Gateway) uses to write API logs to Amazon CloudWatch Logs (CloudWatch Logs). * * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-account.html */ interface Account { Type: 'AWS::ApiGateway::Account'; Properties: AWS.ApiGateway.Account.Properties; } /** * The AWS::ApiGateway::Account resource specifies the AWS Identity and Access Management (IAM) role that Amazon API Gateway (API Gateway) uses to write API logs to Amazon CloudWatch Logs (CloudWatch Logs). * * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-account.html */ function Account(props: C.Omit<Account, 'Type'>): Account; } export declare namespace AWS.ApiGateway.Account { interface Properties { /** * String * * The Amazon Resource Name (ARN) of an IAM role that has write access to CloudWatch Logs in your account. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-account.html#cfn-apigateway-account-cloudwatchrolearn */ CloudWatchRoleArn?: C.YieldsString; } } export declare namespace AWS.ApiGateway { /** * The AWS::ApiGateway::ApiKey resource creates a unique key that you can distribute to clients who are executing Amazon API Gateway (API Gateway) Method resources that require an API key. To specify which API key clients must use, map the API key with the RestApi and Stage resources that include the methods requiring a key. * * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html */ interface ApiKey { Type: 'AWS::ApiGateway::ApiKey'; Properties: AWS.ApiGateway.ApiKey.Properties; } /** * The AWS::ApiGateway::ApiKey resource creates a unique key that you can distribute to clients who are executing Amazon API Gateway (API Gateway) Method resources that require an API key. To specify which API key clients must use, map the API key with the RestApi and Stage resources that include the methods requiring a key. * * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html */ function ApiKey(props: C.Omit<ApiKey, 'Type'>): ApiKey; } export declare namespace AWS.ApiGateway.ApiKey { interface Properties { /** * String * * A description of the purpose of the API key. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html#cfn-apigateway-apigateway-apikey-description */ Description?: C.YieldsString; /** * Boolean * * Indicates whether the API key can be used by clients. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html#cfn-apigateway-apigateway-apikey-enabled */ Enabled?: C.YieldsBoolean; /** * String * * A name for the API key. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the API key name. For more information, see Name Type. * * UpdateType: Immutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html#cfn-apigateway-apigateway-apikey-name */ Name?: C.YieldsString; /** * List of Amazon API Gateway ApiKey StageKey * * A list of stages to associated with this API key. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html#cfn-apigateway-apigateway-apikey-stagekeys */ StageKeys?: C.Yields<C.CFList<C.Yields<AWS.ApiGateway.ApiKey.StageKey>>>; } } export declare namespace AWS.ApiGateway.ApiKey { interface StageKey { /** * String * * The ID of a RestApi resource that includes the stage with which you want to associate the API key. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-apikey-stagekey.html#cfn-apigateway-apikey-stagekey-restapiid */ RestApiId?: C.YieldsString; /** * String * * The name of the stage with which to associate the API key. The stage must be included in the RestApi resource that you specified in the RestApiId property. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-apikey-stagekey.html#cfn-apigateway-apikey-stagekey-stagename */ StageName?: C.YieldsString; } } export declare namespace AWS.ApiGateway { /** * The AWS::ApiGateway::Authorizer resource creates an authorization layer that Amazon API Gateway (API Gateway) activates for methods that have authorization enabled. API Gateway activates the authorizer when a client calls those methods. * * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html */ interface Authorizer { Type: 'AWS::ApiGateway::Authorizer'; Properties: AWS.ApiGateway.Authorizer.Properties; } /** * The AWS::ApiGateway::Authorizer resource creates an authorization layer that Amazon API Gateway (API Gateway) activates for methods that have authorization enabled. API Gateway activates the authorizer when a client calls those methods. * * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html */ function Authorizer(props: C.Omit<Authorizer, 'Type'>): Authorizer; } export declare namespace AWS.ApiGateway.Authorizer { interface Properties { /** * String * * The credentials required for the authorizer. To specify an AWS Identity and Access Management (IAM) role that API Gateway assumes, specify the role's Amazon Resource Name (ARN). To use resource-based permissions on the AWS Lambda (Lambda) function, specify null. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html#cfn-apigateway-authorizer-authorizercredentials */ AuthorizerCredentials?: C.YieldsString; /** * Integer * * The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches authorizer results. If you specify a value greater than 0, API Gateway caches the authorizer responses. By default, API Gateway sets this property to 300. The maximum value is 3600, or 1 hour. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html#cfn-apigateway-authorizer-authorizerresultttlinseconds */ AuthorizerResultTtlInSeconds?: C.Yields<C.CFInteger>; /** * String * * The authorizer's Uniform Resource Identifier (URI). If you specify TOKEN for the authorizer's Type property, specify a Lambda function URI, which has the form arn:aws:apigateway:region:lambda:path/path. The path usually has the form /2015-03-31/functions/LambdaFunctionARN/invocations. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html#cfn-apigateway-authorizer-authorizeruri */ AuthorizerUri?: C.YieldsString; /** * String * * The source of the identity in an incoming request. If you specify TOKEN for the authorizer's Type property, specify a mapping expression. The custom header mapping expression has the form method.request.header.name, where name is the name of a custom authorization header that clients submit as part of their requests. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html#cfn-apigateway-authorizer-identitysource */ IdentitySource?: C.YieldsString; /** * String * * A validation expression for the incoming identity. If you specify TOKEN for the authorizer's Type property, specify a regular expression. API Gateway uses the expression to attempt to match the incoming client token, and proceeds if the token matches. If the token doesn't match, API Gateway responds with a 401 (unauthorized request) error code. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html#cfn-apigateway-authorizer-identityvalidationexpression */ IdentityValidationExpression?: C.YieldsString; /** * String * * The name of the authorizer. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html#cfn-apigateway-authorizer-name */ Name?: C.YieldsString; /** * List of strings * * A list of the Amazon Cognito user pool Amazon Resource Names (ARNs) to associate with this authorizer. For more information, see Use Amazon Cognito Your User Pool in the API Gateway Developer Guide. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html#cfn-apigateway-authorizer-providerarns */ ProviderARNs?: C.Yields<C.CFList<C.YieldsString>>; /** * String * * The ID of the RestApi resource in which API Gateway creates the authorizer. * * UpdateType: Immutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html#cfn-apigateway-authorizer-restapiid */ RestApiId: C.YieldsString; /** * String * * The type of authorizer: * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html#cfn-apigateway-authorizer-type */ Type?: C.YieldsString; } } export declare namespace AWS.ApiGateway { /** * The AWS::ApiGateway::BasePathMapping resource creates a base path that clients who call your Amazon API Gateway API must use in the invocation URL. * * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-basepathmapping.html */ interface BasePathMapping { Type: 'AWS::ApiGateway::BasePathMapping'; Properties: AWS.ApiGateway.BasePathMapping.Properties; } /** * The AWS::ApiGateway::BasePathMapping resource creates a base path that clients who call your Amazon API Gateway API must use in the invocation URL. * * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-basepathmapping.html */ function BasePathMapping(props: C.Omit<BasePathMapping, 'Type'>): BasePathMapping; } export declare namespace AWS.ApiGateway.BasePathMapping { interface Properties { /** * String * * The base path name that callers of the API must provide in the URL after the domain name. * * UpdateType: Immutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-basepathmapping.html#cfn-apigateway-basepathmapping-basepath */ BasePath?: C.YieldsString; /** * String * * The name of a DomainName resource. * * UpdateType: Immutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-basepathmapping.html#cfn-apigateway-basepathmapping-domainname */ DomainName: C.YieldsString; /** * String * * The name of the API. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-basepathmapping.html#cfn-apigateway-basepathmapping-restapiid */ RestApiId?: C.YieldsString; /** * String * * The name of the API's stage. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-basepathmapping.html#cfn-apigateway-basepathmapping-stage */ Stage?: C.YieldsString; } } export declare namespace AWS.ApiGateway { /** * The AWS::ApiGateway::ClientCertificate resource creates a client certificate that Amazon API Gateway (API Gateway) uses to configure client-side SSL authentication for sending requests to the integration endpoint. * * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-clientcertificate.html */ interface ClientCertificate { Type: 'AWS::ApiGateway::ClientCertificate'; Properties: AWS.ApiGateway.ClientCertificate.Properties; } /** * The AWS::ApiGateway::ClientCertificate resource creates a client certificate that Amazon API Gateway (API Gateway) uses to configure client-side SSL authentication for sending requests to the integration endpoint. * * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-clientcertificate.html */ function ClientCertificate(props: C.Omit<ClientCertificate, 'Type'>): ClientCertificate; } export declare namespace AWS.ApiGateway.ClientCertificate { interface Properties { /** * String * * A description of the client certificate. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-clientcertificate.html#cfn-apigateway-clientcertificate-description */ Description?: C.YieldsString; } } export declare namespace AWS.ApiGateway { /** * The AWS::ApiGateway::Deployment resource deploys an Amazon API Gateway (API Gateway) RestApi resource to a stage so that clients can call the API over the Internet. The stage acts as an environment. * * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html */ interface Deployment { Type: 'AWS::ApiGateway::Deployment'; Properties: AWS.ApiGateway.Deployment.Properties; } /** * The AWS::ApiGateway::Deployment resource deploys an Amazon API Gateway (API Gateway) RestApi resource to a stage so that clients can call the API over the Internet. The stage acts as an environment. * * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html */ function Deployment(props: C.Omit<Deployment, 'Type'>): Deployment; } export declare namespace AWS.ApiGateway.Deployment { interface Properties { /** * String * * A description of the purpose of the API Gateway deployment. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html#cfn-apigateway-deployment-description */ Description?: C.YieldsString; /** * String * * The ID of the RestApi resource to deploy. * * UpdateType: Immutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html#cfn-apigateway-deployment-restapiid */ RestApiId: C.YieldsString; /** * Amazon API Gateway Deployment StageDescription * * Configures the stage that API Gateway creates with this deployment. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html#cfn-apigateway-deployment-stagedescription */ StageDescription?: C.Yields<AWS.ApiGateway.Deployment.StageDescription>; /** * String * * A name for the stage that API Gateway creates with this deployment. Use only alphanumeric characters. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html#cfn-apigateway-deployment-stagename */ StageName?: C.YieldsString; } } export declare namespace AWS.ApiGateway.Deployment { interface MethodSetting { /** * Boolean * * Indicates whether the cached responses are encrypted. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription-methodsetting.html#cfn-apigateway-deployment-stagedescription-methodsetting-cachedataencrypted */ CacheDataEncrypted?: C.YieldsBoolean; /** * Integer * * The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription-methodsetting.html#cfn-apigateway-deployment-stagedescription-methodsetting-cachettlinseconds */ CacheTtlInSeconds?: C.Yields<C.CFInteger>; /** * Boolean * * Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. For more information, see Enable API Gateway Caching in a Stage to Enhance API Performance in the API Gateway Developer Guide. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription-methodsetting.html#cfn-apigateway-deployment-stagedescription-methodsetting-cachingenabled */ CachingEnabled?: C.YieldsBoolean; /** * Boolean * * Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription-methodsetting.html#cfn-apigateway-deployment-stagedescription-methodsetting-datatraceenabled */ DataTraceEnabled?: C.YieldsBoolean; /** * String * * The HTTP method. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription-methodsetting.html#cfn-apigateway-deployment-stagedescription-methodsetting-httpmethod */ HttpMethod?: C.YieldsString; /** * String * * The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription-methodsetting.html#cfn-apigateway-deployment-stagedescription-methodsetting-logginglevel */ LoggingLevel?: C.YieldsString; /** * Boolean * * Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription-methodsetting.html#cfn-apigateway-deployment-stagedescription-methodsetting-metricsenabled */ MetricsEnabled?: C.YieldsBoolean; /** * String * * The resource path for this method. Forward slashes (/) are encoded as ~1 and the initial slash must include a forward slash. For example, the path value /resource/subresource must be encoded as /~1resource~1subresource. To specify the root path, use only a slash (/). * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription-methodsetting.html#cfn-apigateway-deployment-stagedescription-methodsetting-resourcepath */ ResourcePath?: C.YieldsString; /** * Integer * * The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. For more information, see Manage API Request Throttling in the API Gateway Developer Guide. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription-methodsetting.html#cfn-apigateway-deployment-stagedescription-methodsetting-throttlingburstlimit */ ThrottlingBurstLimit?: C.Yields<C.CFInteger>; /** * Number * * The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. For more information, see Manage API Request Throttling in the API Gateway Developer Guide. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription-methodsetting.html#cfn-apigateway-deployment-stagedescription-methodsetting-throttlingratelimit */ ThrottlingRateLimit?: C.Yields<C.CFDouble>; } } export declare namespace AWS.ApiGateway.Deployment { interface StageDescription { /** * Boolean * * Indicates whether cache clustering is enabled for the stage. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-cacheclusterenabled */ CacheClusterEnabled?: C.YieldsBoolean; /** * String * * The size of the stage's cache cluster. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-cacheclustersize */ CacheClusterSize?: C.YieldsString; /** * Boolean * * Indicates whether the cached responses are encrypted. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-cachedataencrypted */ CacheDataEncrypted?: C.YieldsBoolean; /** * Integer * * The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-cachettlinseconds */ CacheTtlInSeconds?: C.Yields<C.CFInteger>; /** * Boolean * * Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. For more information, see Enable API Gateway Caching in a Stage to Enhance API Performance in the API Gateway Developer Guide. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-cachingenabled */ CachingEnabled?: C.YieldsBoolean; /** * String * * The identifier of the client certificate that API Gateway uses to call your integration endpoints in the stage. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-clientcertificateid */ ClientCertificateId?: C.YieldsString; /** * Boolean * * Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-datatraceenabled */ DataTraceEnabled?: C.YieldsBoolean; /** * String * * A description of the purpose of the stage. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-description */ Description?: C.YieldsString; /** * String * * The version identifier of the API documentation snapshot. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-documentationversion */ DocumentationVersion?: C.YieldsString; /** * String * * The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-logginglevel */ LoggingLevel?: C.YieldsString; /** * Amazon API Gateway Deployment StageDescription MethodSetting * * Configures settings for all of the stage's methods. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-methodsettings */ MethodSettings?: C.Yields<C.CFList<C.Yields<AWS.ApiGateway.Deployment.MethodSetting>>>; /** * Boolean * * Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-metricsenabled */ MetricsEnabled?: C.YieldsBoolean; /** * String * * The name of the stage, which API Gateway uses as the first path segment in the invoke Uniform Resource Identifier (URI). * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-stagename */ StageName?: C.YieldsString; /** * Integer * * The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. For more information, see Manage API Request Throttling in the API Gateway Developer Guide. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-throttlingburstlimit */ ThrottlingBurstLimit?: C.Yields<C.CFInteger>; /** * Number * * The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account. For more information, see Manage API Request Throttling in the API Gateway Developer Guide. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-throttlingratelimit */ ThrottlingRateLimit?: C.Yields<C.CFDouble>; /** * Mapping of key-value pairs * * A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: [A-Za-z0-9-._~:/?#&amp;=,]+. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-variables */ Variables?: C.Yields<C.CFMap<C.YieldsString>>; } } export declare namespace AWS.ApiGateway { /** * The AWS::ApiGateway::DocumentationPart resource creates a documentation part for an Amazon API Gateway API entity. For more information, see Representation of API Documentation in API Gateway in the API Gateway Developer Guide. * * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationpart.html */ interface DocumentationPart { Type: 'AWS::ApiGateway::DocumentationPart'; Properties: AWS.ApiGateway.DocumentationPart.Properties; } /** * The AWS::ApiGateway::DocumentationPart resource creates a documentation part for an Amazon API Gateway API entity. For more information, see Representation of API Documentation in API Gateway in the API Gateway Developer Guide. * * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationpart.html */ function DocumentationPart(props: C.Omit<DocumentationPart, 'Type'>): DocumentationPart; } export declare namespace AWS.ApiGateway.DocumentationPart { interface Properties { /** * Type: Amazon API Gateway DocumentationPart Location * * The location of the API entity that the documentation applies to. * * UpdateType: Immutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationpart.html#cfn-apigateway-documentationpart-location */ Location: C.Yields<AWS.ApiGateway.DocumentationPart.Location>; /** * String * * The documentation content map of the targeted API entity. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationpart.html#cfn-apigateway-documentationpart-properties */ Properties: C.YieldsString; /** * String * * The identifier of the targeted API entity. * * UpdateType: Immutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationpart.html#cfn-apigateway-documentationpart-restapiid */ RestApiId: C.YieldsString; } } export declare namespace AWS.ApiGateway.DocumentationPart { interface Location { /** * String * * The HTTP verb of a method. * * UpdateType: Immutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-documentationpart-location.html#cfn-apigateway-documentationpart-location-method */ Method?: C.YieldsString; /** * String * * The name of the targeted API entity. * * UpdateType: Immutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-documentationpart-location.html#cfn-apigateway-documentationpart-location-name */ Name?: C.YieldsString; /** * String * * The URL path of the target. * * UpdateType: Immutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-documentationpart-location.html#cfn-apigateway-documentationpart-location-path */ Path?: C.YieldsString; /** * String * * The HTTP status code of a response. * * UpdateType: Immutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-documentationpart-location.html#cfn-apigateway-documentationpart-location-statuscode */ StatusCode?: C.YieldsString; /** * String * * The type of API entity that the documentation content applies to. * * UpdateType: Immutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-documentationpart-location.html#cfn-apigateway-documentationpart-location-type */ Type?: C.YieldsString; } } export declare namespace AWS.ApiGateway { /** * The AWS::ApiGateway::DocumentationVersion resource creates a snapshot of the documentation for an Amazon API Gateway API entity. For more information, see Representation of API Documentation in API Gateway in the API Gateway Developer Guide. * * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationversion.html */ interface DocumentationVersion { Type: 'AWS::ApiGateway::DocumentationVersion'; Properties: AWS.ApiGateway.DocumentationVersion.Properties; } /** * The AWS::ApiGateway::DocumentationVersion resource creates a snapshot of the documentation for an Amazon API Gateway API entity. For more information, see Representation of API Documentation in API Gateway in the API Gateway Developer Guide. * * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationversion.html */ function DocumentationVersion(props: C.Omit<DocumentationVersion, 'Type'>): DocumentationVersion; } export declare namespace AWS.ApiGateway.DocumentationVersion { interface Properties { /** * String * * The description of the API documentation snapshot. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationversion.html#cfn-apigateway-documentationversion-description */ Description?: C.YieldsString; /** * String * * The version identifier of the API documentation snapshot. * * UpdateType: Immutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationversion.html#cfn-apigateway-documentationversion-documentationversion */ DocumentationVersion: C.YieldsString; /** * String * * The identifier of the targeted API entity. * * UpdateType: Immutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationversion.html#cfn-apigateway-documentationversion-restapiid */ RestApiId: C.YieldsString; } } export declare namespace AWS.ApiGateway { /** * The AWS::ApiGateway::DomainName resource specifies a custom domain name for your API in Amazon API Gateway (API Gateway). * * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html */ interface DomainName { Type: 'AWS::ApiGateway::DomainName'; Properties: AWS.ApiGateway.DomainName.Properties; } /** * The AWS::ApiGateway::DomainName resource specifies a custom domain name for your API in Amazon API Gateway (API Gateway). * * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html */ function DomainName(props: C.Omit<DomainName, 'Type'>): DomainName; } export declare namespace AWS.ApiGateway.DomainName { interface Properties { /** * String * * The Amazon Resource Name (ARN) of an AWS-managed certificate stored in AWS Certificate Manager. For requirements and additional information about setting up certificates, see Get Certificates Ready in AWS Certificate Manager in the API Gateway Developer Guide. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-certificatearn */ CertificateArn: C.YieldsString; /** * String * * The custom domain name for your API in Amazon API Gateway. * * UpdateType: Immutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-domainname */ DomainName: C.YieldsString; } } export declare namespace AWS.ApiGateway { /** * The AWS::ApiGateway::GatewayResponse resource creates a custom response for your API Gateway API. For more information, see API Gateway Responses in the API Gateway Developer Guide. * * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-gatewayresponse.html */ interface GatewayResponse { Type: 'AWS::ApiGateway::GatewayResponse'; Properties: AWS.ApiGateway.GatewayResponse.Properties; } /** * The AWS::ApiGateway::GatewayResponse resource creates a custom response for your API Gateway API. For more information, see API Gateway Responses in the API Gateway Developer Guide. * * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-gatewayresponse.html */ function GatewayResponse(props: C.Omit<GatewayResponse, 'Type'>): GatewayResponse; } export declare namespace AWS.ApiGateway.GatewayResponse { interface Properties { /** * Type: String to string map * * The response parameters (paths, query strings, and headers) for the response. Duplicates not allowed. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-gatewayresponse.html#cfn-apigateway-gatewayresponse-responseparameters */ ResponseParameters?: C.Yields<C.CFMap<C.YieldsString>>; /** * Type: String to string map * * The response templates for the response. Duplicates not allowed. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-gatewayresponse.html#cfn-apigateway-gatewayresponse-responsetemplates */ ResponseTemplates?: C.Yields<C.CFMap<C.YieldsString>>; /** * Type: String * * The response type. For valid values, see GatewayResponse in the API Gateway API Reference. * * UpdateType: Immutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-gatewayresponse.html#cfn-apigateway-gatewayresponse-responsetype */ ResponseType: C.YieldsString; /** * Type: String * * The identifier of the targeted API entity. * * UpdateType: Immutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-gatewayresponse.html#cfn-apigateway-gatewayresponse-restapiid */ RestApiId: C.YieldsString; /** * Type: String * * The HTTP status code for the response. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-gatewayresponse.html#cfn-apigateway-gatewayresponse-statuscode */ StatusCode?: C.YieldsString; } } export declare namespace AWS.ApiGateway { /** * The AWS::ApiGateway::Method resource creates Amazon API Gateway (API Gateway) methods that define the parameters and body that clients must send in their requests. * * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html */ interface Method { Type: 'AWS::ApiGateway::Method'; Properties: AWS.ApiGateway.Method.Properties; } /** * The AWS::ApiGateway::Method resource creates Amazon API Gateway (API Gateway) methods that define the parameters and body that clients must send in their requests. * * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html */ function Method(props: C.Omit<Method, 'Type'>): Method; } export declare namespace AWS.ApiGateway.Method { interface Properties { /** * Boolean * * Indicates whether the method requires clients to submit a valid API key. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-apikeyrequired */ ApiKeyRequired?: C.YieldsBoolean; /** * String * * The method's authorization type. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-authorizationtype */ AuthorizationType?: C.YieldsString; /** * String * * The identifier of the authorizer to use on this method. If you specify this property, specify CUSTOM for the AuthorizationType property. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-authorizerid */ AuthorizerId?: C.YieldsString; /** * String * * The HTTP method that clients will use to call this method. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-httpmethod */ HttpMethod: C.YieldsString; /** * Amazon API Gateway Method Integration * * The back-end system that the method calls when it receives a request. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-integration */ Integration?: C.Yields<AWS.ApiGateway.Method.Integration>; /** * List of Amazon API Gateway Method MethodResponse * * The responses that can be sent to the client who calls the method. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-methodresponses */ MethodResponses?: C.Yields<C.CFList<C.Yields<AWS.ApiGateway.Method.MethodResponse>>>; /** * Mapping of key-value pairs * * The resources used for the response's content type. Specify response models as key-value pairs (string-to-string map), with a content type as the key and a Model resource name as the value. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-requestmodels */ RequestModels?: C.Yields<C.CFMap<C.YieldsString>>; /** * Mapping of key-value pairs * * Request parameters that API Gateway accepts. Specify request parameters as key-value pairs (string-to-Boolean map), with a source as the key and a Boolean as the value. The Boolean specifies whether a parameter is required. A source must match the following format method.request.location.name, where the location is querystring, path, or header, and name is a valid, unique parameter name. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-requestparameters */ RequestParameters?: C.Yields<C.CFMap<C.YieldsBoolean>>; /** * String * * The ID of an API Gateway resource. For root resource methods, specify the RestApi root resource ID, such as { "Fn::GetAtt": ["MyRestApi", "RootResourceId"] }. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-resourceid */ ResourceId: C.YieldsString; /** * String * * The ID of the RestApi resource in which API Gateway creates the method. * * UpdateType: Mutable * Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-restapiid */ RestApiId: C.YieldsString; } } export declare namespace AWS.ApiGateway.Method { interface Integration { /** * List of strings