import type { HorizontalAnnotation, IWidget } from "aws-cdk-lib/aws-cloudwatch"; import type { OpenSearchIngestionPipelineMetricFactoryProps } from "./OpenSearchIngestionPipelineMetricFactory"; import { BaseMonitoringProps, MaxUsageCountThreshold, MetricWithAlarmSupport, Monitoring, AlarmFactory, UsageAlarmFactory, MonitoringScope } from "../../common"; export interface OpenSearchIngestionPipelineMonitoringOptions extends BaseMonitoringProps { readonly addMaxDlqS3CountAlarm?: Record; } export interface OpenSearchIngestionPipelineMonitoringProps extends OpenSearchIngestionPipelineMetricFactoryProps, OpenSearchIngestionPipelineMonitoringOptions { } /** * @experimental This is subject to change if an L2 construct becomes available. */ export declare class OpenSearchIngestionPipelineMonitoring extends Monitoring { readonly title: string; readonly pipelineUrl?: string; readonly metricSinkRecordsInCount: MetricWithAlarmSupport; readonly metricSourceBytesReceivedSum: MetricWithAlarmSupport; readonly metricSinkBulkRequestLatencyMax: MetricWithAlarmSupport; readonly metricSinkBulkPipelineLatencyMax: MetricWithAlarmSupport; readonly metricDlqS3RecordsCount: MetricWithAlarmSupport; readonly alarmFactory: AlarmFactory; readonly usageAlarmFactory: UsageAlarmFactory; readonly usageAnnotations: HorizontalAnnotation[]; constructor(scope: MonitoringScope, props: OpenSearchIngestionPipelineMonitoringProps); summaryWidgets(): IWidget[]; widgets(): IWidget[]; protected createTitleWidget(): IWidget; protected createLatencyWidget(width: number, height: number): IWidget; protected createIncomingDataWidget(width: number, height: number): IWidget; protected createDlqS3Widget(width: number, height: number): IWidget; }