package awscdkapigatewayv2alpha // Props for WebSocket API. // // Example: // import "github.com/aws/aws-cdk-go/awscdkapigatewayv2authorizersalpha" // import "github.com/aws/aws-cdk-go/awscdkapigatewayv2integrationsalpha" // // // This function handles your auth logic // var authHandler function // // // This function handles your WebSocket requests // var handler function // // // authorizer := awscdkapigatewayv2authorizersalpha.NewWebSocketLambdaAuthorizer(jsii.String("Authorizer"), authHandler) // // integration := awscdkapigatewayv2integrationsalpha.NewWebSocketLambdaIntegration(jsii.String("Integration"), handler) // // apigwv2.NewWebSocketApi(this, jsii.String("WebSocketApi"), &WebSocketApiProps{ // ConnectRouteOptions: &WebSocketRouteOptions{ // Integration: *Integration, // Authorizer: *Authorizer, // }, // }) // // Experimental. type WebSocketApiProps struct { // An API key selection expression. // // Providing this option will require an API Key be provided to access the API. // Experimental. ApiKeySelectionExpression WebSocketApiKeySelectionExpression `field:"optional" json:"apiKeySelectionExpression" yaml:"apiKeySelectionExpression"` // Name for the WebSocket API resource. // Experimental. ApiName *string `field:"optional" json:"apiName" yaml:"apiName"` // Options to configure a '$connect' route. // Experimental. ConnectRouteOptions *WebSocketRouteOptions `field:"optional" json:"connectRouteOptions" yaml:"connectRouteOptions"` // Options to configure a '$default' route. // Experimental. DefaultRouteOptions *WebSocketRouteOptions `field:"optional" json:"defaultRouteOptions" yaml:"defaultRouteOptions"` // The description of the API. // Experimental. Description *string `field:"optional" json:"description" yaml:"description"` // Options to configure a '$disconnect' route. // Experimental. DisconnectRouteOptions *WebSocketRouteOptions `field:"optional" json:"disconnectRouteOptions" yaml:"disconnectRouteOptions"` // The route selection expression for the API. // Experimental. RouteSelectionExpression *string `field:"optional" json:"routeSelectionExpression" yaml:"routeSelectionExpression"` }