import * as core from "@terrascript/core"; export interface CorsConfigurationArgs extends core.SchemaArgs { allowCredentials?: boolean | core.BooleanOut; allowHeaders?: core.Array | core.ArrayOut; allowMethods?: core.Array | core.ArrayOut; allowOrigins?: core.Array | core.ArrayOut; exposeHeaders?: core.Array | core.ArrayOut; maxAge?: number | core.NumberOut; } export declare class CorsConfiguration extends core.Schema { allowCredentials?: boolean | core.BooleanOut; allowHeaders?: core.Array | core.ArrayOut; allowMethods?: core.Array | core.ArrayOut; allowOrigins?: core.Array | core.ArrayOut; exposeHeaders?: core.Array | core.ArrayOut; maxAge?: number | core.NumberOut; } export interface ApiArgs extends core.ResourceArgs { /** * (Optional) An [API key selection expression](https://docs.aws.amazon.com/apigateway/latest/developer * guide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-apikey-selection- * expressions). */ apiKeySelectionExpression?: string | core.StringOut; /** * (Optional) An OpenAPI specification that defines the set of routes and integrations to create as par * t of the HTTP APIs. Supported only for HTTP APIs. */ body?: string | core.StringOut; /** * (Optional) The cross-origin resource sharing (CORS) [configuration](https://docs.aws.amazon.com/apig * ateway/latest/developerguide/http-api-cors.html). Applicable for HTTP APIs. */ corsConfiguration?: CorsConfiguration; /** * (Optional) Part of _quick create_. Specifies any credentials required for the integration. Applicabl * e for HTTP APIs. */ credentialsArn?: string | core.StringOut; /** * (Optional) The description of the API. Must be less than or equal to 1024 characters in length. */ description?: string | core.StringOut; /** * (Optional) Whether clients can invoke the API by using the default `execute-api` endpoint. */ disableExecuteApiEndpoint?: boolean | core.BooleanOut; /** * (Optional) Whether warnings should return an error while API Gateway is creating or updating the res * ource using an OpenAPI specification. Defaults to `false`. Applicable for HTTP APIs. */ failOnWarnings?: boolean | core.BooleanOut; /** * (Required) The name of the API. Must be less than or equal to 128 characters in length. */ name: string | core.StringOut; /** * (Required) The API protocol. Valid values: `HTTP`, `WEBSOCKET`. */ protocolType: string | core.StringOut; /** * (Optional) Part of _quick create_. Specifies any [route key](https://docs.aws.amazon.com/apigateway/ * latest/developerguide/http-api-develop-routes.html). Applicable for HTTP APIs. */ routeKey?: string | core.StringOut; /** * (Optional) The [route selection expression](https://docs.aws.amazon.com/apigateway/latest/developerg * uide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-route-selection-ex * pressions) for the API. */ routeSelectionExpression?: string | core.StringOut; /** * (Optional) A map of tags to assign to the API. If configured with a provider [`default_tags` configu * ration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags-configu * ration-block) present, tags with matching keys will overwrite those defined at the provider-level. */ tags?: core.Map | core.MapOut; /** * A map of tags assigned to the resource, including those inherited from the provider [`default_tags` * configuration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags- * configuration-block). */ tagsAll?: core.Map | core.MapOut; /** * (Optional) Part of _quick create_. Quick create produces an API with an integration, a default catch * all route, and a default stage which is configured to automatically deploy changes. */ target?: string | core.StringOut; /** * (Optional) A version identifier for the API. Must be between 1 and 64 characters in length. */ version?: string | core.StringOut; } export declare class Api extends core.Resource { /** * The URI of the API, of the form `https://{api-id}.execute-api.{region}.amazonaws.com` for HTTP APIs * and `wss://{api-id}.execute-api.{region}.amazonaws.com` for WebSocket APIs. */ apiEndpoint: string | core.StringOut; /** * (Optional) An [API key selection expression](https://docs.aws.amazon.com/apigateway/latest/developer * guide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-apikey-selection- * expressions). */ apiKeySelectionExpression?: string | core.StringOut; /** * The ARN of the API. */ arn: string | core.StringOut; /** * (Optional) An OpenAPI specification that defines the set of routes and integrations to create as par * t of the HTTP APIs. Supported only for HTTP APIs. */ body?: string | core.StringOut; /** * (Optional) The cross-origin resource sharing (CORS) [configuration](https://docs.aws.amazon.com/apig * ateway/latest/developerguide/http-api-cors.html). Applicable for HTTP APIs. */ corsConfiguration?: CorsConfiguration; /** * (Optional) Part of _quick create_. Specifies any credentials required for the integration. Applicabl * e for HTTP APIs. */ credentialsArn?: string | core.StringOut; /** * (Optional) The description of the API. Must be less than or equal to 1024 characters in length. */ description?: string | core.StringOut; /** * (Optional) Whether clients can invoke the API by using the default `execute-api` endpoint. */ disableExecuteApiEndpoint?: boolean | core.BooleanOut; /** * The ARN prefix to be used in an [`aws_lambda_permission`](/docs/providers/aws/r/lambda_permission.ht * ml)'s `source_arn` attribute */ executionArn: string | core.StringOut; /** * (Optional) Whether warnings should return an error while API Gateway is creating or updating the res * ource using an OpenAPI specification. Defaults to `false`. Applicable for HTTP APIs. */ failOnWarnings?: boolean | core.BooleanOut; /** * The API identifier. */ id: string | core.StringOut; /** * (Required) The name of the API. Must be less than or equal to 128 characters in length. */ name: string | core.StringOut; /** * (Required) The API protocol. Valid values: `HTTP`, `WEBSOCKET`. */ protocolType: string | core.StringOut; /** * (Optional) Part of _quick create_. Specifies any [route key](https://docs.aws.amazon.com/apigateway/ * latest/developerguide/http-api-develop-routes.html). Applicable for HTTP APIs. */ routeKey?: string | core.StringOut; /** * (Optional) The [route selection expression](https://docs.aws.amazon.com/apigateway/latest/developerg * uide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-route-selection-ex * pressions) for the API. */ routeSelectionExpression?: string | core.StringOut; /** * (Optional) A map of tags to assign to the API. If configured with a provider [`default_tags` configu * ration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags-configu * ration-block) present, tags with matching keys will overwrite those defined at the provider-level. */ tags?: core.Map | core.MapOut; /** * A map of tags assigned to the resource, including those inherited from the provider [`default_tags` * configuration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags- * configuration-block). */ tagsAll?: core.Map | core.MapOut; /** * (Optional) Part of _quick create_. Quick create produces an API with an integration, a default catch * all route, and a default stage which is configured to automatically deploy changes. */ target?: string | core.StringOut; /** * (Optional) A version identifier for the API. Must be between 1 and 64 characters in length. */ version?: string | core.StringOut; constructor(name: string, args?: ApiArgs); getNamespace(): string; } //# sourceMappingURL=api.d.ts.map