import type * as apigateway from '../../aws-apigateway'; import * as cloudfront from '../../aws-cloudfront'; import * as cdk from '../../core'; /** * Properties for an Origin for an API Gateway REST API. */ export interface RestApiOriginProps extends cloudfront.OriginProps { /** * Specifies how long, in seconds, CloudFront waits for a response from the origin, also known as the origin response timeout. * The minimum is 1 second. The maximum is governed by the origin response timeout quota, which is * adjustable, so the effective maximum depends on the target account. * * The default quota allows up to 120 seconds; higher values require an approved limit increase * in the target account, and otherwise produce an error at deploy time. * * @default Duration.seconds(30) */ readonly readTimeout?: cdk.Duration; /** * Specifies how long, in seconds, CloudFront persists its connection to the origin. * The minimum is 1 second. The maximum is governed by the keep-alive timeout per origin quota, * which is adjustable, so the effective maximum depends on the target account. * * The default quota allows up to 300 seconds; higher values require an approved limit increase * in the target account, and otherwise produce an error at deploy time. * * @default Duration.seconds(5) */ readonly keepaliveTimeout?: cdk.Duration; } /** * An Origin for an API Gateway REST API. */ export declare class RestApiOrigin extends cloudfront.OriginBase { private readonly props; constructor(restApi: apigateway.RestApiBase, props?: RestApiOriginProps); protected renderCustomOriginConfig(): cloudfront.CfnDistribution.CustomOriginConfigProperty | undefined; }