import { Dashboard } from "aws-cdk-lib/aws-cloudwatch";
import { IDashboardSegment } from "./DashboardSegment";
export interface MonitoringDashboardsOverrideProps {
    /**
     * Flag indicating if the widgets should be added to detailed dashboard
     *
     * @default - true
     */
    readonly addToDetailDashboard?: boolean;
    /**
     * Flag indicating if the widgets should be added to summary dashboard
     *
     * @default - true
     */
    readonly addToSummaryDashboard?: boolean;
    /**
     * Flag indicating if the widgets should be added to alarm dashboard
     *
     * @default - true
     */
    readonly addToAlarmDashboard?: boolean;
}
export interface IDashboardFactoryProps {
    /**
     * Segment to be placed on the dashboard.
     */
    segment: IDashboardSegment;
    /**
     * Dashboard placement override props.
     *
     * @default - all default
     */
    overrideProps?: MonitoringDashboardsOverrideProps;
}
export interface IDashboardFactory {
    addSegment(props: IDashboardFactoryProps): void;
    createdDashboard(): Dashboard | undefined;
    createdSummaryDashboard(): Dashboard | undefined;
    createdAlarmDashboard(): Dashboard | undefined;
}
