import * as elbv2 from 'aws-cdk-lib/aws-elasticloadbalancingv2'; import { Construct } from 'constructs'; import { IWatchful } from './watchful'; /** * Options for defining alarms. */ export interface WatchApplicationTargetGroupOptions { /** * Number of allowed target connection errors per minute. * * @defaultValue 0 */ readonly targetConnectionErrorPerMinuteThreshold?: number; /** * Number of allowed HTTP 5xx requests per minute. * * @defaultValue 0 */ readonly http5xxPerMinuteThreshold?: number; } /** * Properties for defining a WatchApplicationTargetGroup */ export interface WatchApplicationTargetGroupProps extends WatchApplicationTargetGroupOptions { /** * The reference to IWatchful class. Used internally. */ readonly watchful: IWatchful; /** * The application target group that should be watched. * [disable-awslint:ref-via-interface] */ readonly atg: elbv2.ApplicationTargetGroup; } /** * A Construct which creates the following alarms for application target groups: * * - http-code 5xx * - target connection errors */ export declare class WatchApplicationTargetGroup extends Construct { private readonly watchful; private readonly atg; constructor(scope: Construct, id: string, props: WatchApplicationTargetGroupProps); private createTargetConnectionErrorMonitor; private createHttpCode5xxMonitor; }