import * as elbv2 from 'aws-cdk-lib/aws-elasticloadbalancingv2'; import { Construct } from 'constructs'; import { IWatchful } from './watchful'; /** * Options for defining alarms. */ export interface WatchApplicationLoadBalancerOptions { /** * Number of allowed rejected connections per minute. * * @defaultValue 0 */ readonly rejectedConnectionPerMinuteThreshold?: number; /** * Number of allowed HTTP 5xx requests per minute. * * @defaultValue 0 */ readonly http5xxPerMinuteThreshold?: number; } /** * Properties for defining a WatchApplicationLoadBalancer */ export interface WatchApplicationLoadBalancerProps extends WatchApplicationLoadBalancerOptions { /** * The reference to IWatchful class. Used internally. */ readonly watchful: IWatchful; /** * The application load balancer that should be watched. * [disable-awslint:ref-via-interface] */ readonly alb: elbv2.ApplicationLoadBalancer; } /** * A Construct which creates the following alarms for application load balancers: * * - rejected connections * - http-code 5xx */ export declare class WatchApplicationLoadBalancer extends Construct { private readonly watchful; private readonly alb; constructor(scope: Construct, id: string, props: WatchApplicationLoadBalancerProps); private createRejectedConnectionMonitor; private createHttpCode5xxMonitor; }