UNPKG

@altostra/core

Version:

Core library for shared types and logic

31 lines (30 loc) 1.26 kB
import type { AwsResourceCommon } from "../common"; import type { CloudFormationValue } from "../IntrinsicFunctions"; export declare type RouteType = 'AWS::ApiGatewayV2::Route'; export interface Route extends AwsResourceCommon { Type: RouteType; Properties: RouteProperties; } export declare type RouteProperties = HttpRouteProperties | WebSocketRouteProperties; export interface HttpRouteProperties extends RoutePropertiesBase { AuthorizationScopes?: string[]; AuthorizationType?: HttpAuthorizationTypes; } export interface WebSocketRouteProperties extends RoutePropertiesBase { ApiKeyRequired?: boolean; AuthorizationType?: WebSocketAuthorizationTypes; ModelSelectionExpression?: string; RequestModels?: object; RequestParameters?: object; RouteResponseSelectionExpression?: string; } export interface RoutePropertiesBase { ApiId: CloudFormationValue; AuthorizerId?: CloudFormationValue; OperationName?: string; RouteKey: string; Target?: CloudFormationValue; } export declare type CommonAuthorizationTypes = 'AWS_IAM' | 'CUSTOM' | 'NONE'; export declare type HttpAuthorizationTypes = CommonAuthorizationTypes | 'JWT'; export declare type WebSocketAuthorizationTypes = CommonAuthorizationTypes;