import type { HorizontalAnnotation, IWidget } from "aws-cdk-lib/aws-cloudwatch"; import type { OpenSearchServerlessMetricFactoryProps } from "./OpenSearchServerlessMetricFactory"; import { BaseMonitoringProps, Monitoring, LatencyThreshold, ErrorCountThreshold, ErrorRateThreshold, AlarmFactory, LatencyAlarmFactory, ErrorAlarmFactory, MetricWithAlarmSupport, MonitoringScope } from "../../common"; export interface OpenSearchServerlessMonitoringOptions extends BaseMonitoringProps { readonly addSearchLatencyP100Alarm?: Record; readonly addSearchErrorCountAlarm?: Record; readonly add4xxCountAlarm?: Record; readonly add4xxRateAlarm?: Record; readonly add5xxCountAlarm?: Record; readonly add5xxRateAlarm?: Record; } export interface OpenSearchServerlessMonitoringProps extends OpenSearchServerlessMetricFactoryProps, OpenSearchServerlessMonitoringOptions { } /** * @experimental This is subject to change if an L2 construct becomes available. */ export declare class OpenSearchServerlessMonitoring extends Monitoring { readonly title: string; readonly collectionUrl?: string; readonly alarmFactory: AlarmFactory; readonly latencyAlarmFactory: LatencyAlarmFactory; readonly errorAlarmFactory: ErrorAlarmFactory; readonly searchLatencyAnnotations: HorizontalAnnotation[]; readonly errorCountAnnotations: HorizontalAnnotation[]; readonly errorRateAnnotations: HorizontalAnnotation[]; readonly metricSearchRequestErrorsCount: MetricWithAlarmSupport; readonly metricSearchRequestLatencyAvg: MetricWithAlarmSupport; readonly metricSearchRequestLatencyMax: MetricWithAlarmSupport; readonly metricIngestionRequestSuccessCount: MetricWithAlarmSupport; readonly metricIngestionRequestErrorsCount: MetricWithAlarmSupport; readonly metricIngestionRequestLatencyAvg: MetricWithAlarmSupport; readonly metricIngestionRequestLatencyMax: MetricWithAlarmSupport; readonly metric4xxErrorCount: MetricWithAlarmSupport; readonly metric4xxErrorRate: MetricWithAlarmSupport; readonly metric5xxErrorCount: MetricWithAlarmSupport; readonly metric5xxErrorRate: MetricWithAlarmSupport; constructor(scope: MonitoringScope, props: OpenSearchServerlessMonitoringProps); summaryWidgets(): IWidget[]; widgets(): IWidget[]; protected createTitleWidget(): IWidget; protected createSearchRequestLatencyWidget(width: number, height: number): IWidget; protected createErrorCountWidget(width: number, height: number): IWidget; protected createErrorRateWidget(width: number, height: number): IWidget; protected createIngestionRequestsWidget(width: number, height: number): IWidget; protected createIngestionLatencyWidget(width: number, height: number): IWidget; }