import { GraphWidget, HorizontalAnnotation, IWidget } from "aws-cdk-lib/aws-cloudwatch"; import { AppSyncMetricFactory, AppSyncMetricFactoryProps } from "./AppSyncMetricFactory"; import { AlarmFactory, BaseMonitoringProps, ErrorAlarmFactory, ErrorCountThreshold, ErrorRateThreshold, HighTpsThreshold, LatencyAlarmFactory, LatencyThreshold, LowTpsThreshold, MetricWithAlarmSupport, Monitoring, MonitoringScope, TpsAlarmFactory } from "../../common"; import { MonitoringHeaderWidget, MonitoringNamingStrategy } from "../../dashboard"; export interface AppSyncMonitoringOptions extends BaseMonitoringProps { readonly add4XXErrorCountAlarm?: Record; readonly add4XXErrorRateAlarm?: Record; readonly add5XXFaultCountAlarm?: Record; readonly add5XXFaultRateAlarm?: Record; readonly addLatencyP50Alarm?: Record; readonly addLatencyP90Alarm?: Record; readonly addLatencyP99Alarm?: Record; readonly addLowTpsAlarm?: Record; readonly addHighTpsAlarm?: Record; } export interface AppSyncMonitoringProps extends AppSyncMonitoringOptions, AppSyncMetricFactoryProps { } export declare class AppSyncMonitoring extends Monitoring { readonly title: string; readonly namingStrategy: MonitoringNamingStrategy; readonly metricFactory: AppSyncMetricFactory; readonly alarmFactory: AlarmFactory; readonly errorAlarmFactory: ErrorAlarmFactory; readonly latencyAlarmFactory: LatencyAlarmFactory; readonly tpsAlarmFactory: TpsAlarmFactory; readonly tpsAnnotations: HorizontalAnnotation[]; readonly latencyAnnotations: HorizontalAnnotation[]; readonly errorCountAnnotations: HorizontalAnnotation[]; readonly errorRateAnnotations: HorizontalAnnotation[]; readonly tpsMetric: MetricWithAlarmSupport; readonly p50LatencyMetric: MetricWithAlarmSupport; readonly p90LatencyMetric: MetricWithAlarmSupport; readonly p99LatencyMetric: MetricWithAlarmSupport; readonly fault5xxCountMetric: MetricWithAlarmSupport; readonly fault5xxRateMetric: MetricWithAlarmSupport; readonly error4xxCountMetric: MetricWithAlarmSupport; readonly error4xxRateMetric: MetricWithAlarmSupport; constructor(scope: MonitoringScope, props: AppSyncMonitoringProps); summaryWidgets(): IWidget[]; widgets(): IWidget[]; createtTitleWidget(): MonitoringHeaderWidget; createTpsWidget(width: number, height: number): GraphWidget; createLatencyWidget(width: number, height: number): GraphWidget; createErrorCountWidget(width: number, height: number): GraphWidget; createErrorRateWidget(width: number, height: number): GraphWidget; }