@pulumi/awsx
Version:
[](https://github.com/pulumi/pulumi-awsx/actions) [](https://slack.pulumi.com) [ • 3.47 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import { YAxis } from "./widgets_graph";
export interface WidgetJson {
type: pulumi.Input<"alarm" | "metric" | "text" | "log">;
x: pulumi.Input<number>;
y: pulumi.Input<number>;
width: pulumi.Input<number>;
height: pulumi.Input<number>;
properties: Record<string, any>;
}
export interface AlarmWidgetJson extends WidgetJson {
type: pulumi.Input<"alarm">;
properties: pulumi.Input<AlarmWidgetPropertiesJson>;
}
export interface AlarmWidgetPropertiesJson {
alarms: pulumi.Input<pulumi.Input<string>[]>;
sortBy: pulumi.Input<"default" | "stateUpdatedTimestamp" | "timestamp" | undefined>;
states: pulumi.Input<("ALARM" | "INSUFFICIENT_DATA" | "OK")[] | undefined>;
title: pulumi.Input<string | undefined>;
}
export interface TextWidgetJson extends WidgetJson {
type: pulumi.Input<"text">;
properties: pulumi.Input<{
markdown: pulumi.Input<string>;
}>;
}
export interface MetricWidgetJson extends WidgetJson {
type: pulumi.Input<"metric">;
properties: pulumi.Input<MetricWidgetPropertiesJson>;
}
export interface MetricWidgetPropertiesJson {
metrics: MetricJson[] | undefined;
annotations: MetricWidgetAnnotationsJson | undefined;
title: pulumi.Input<string> | undefined;
period: pulumi.Input<number> | undefined;
region: pulumi.Input<string | undefined>;
stat: pulumi.Input<string>;
view: pulumi.Input<"timeSeries" | "singleValue" | undefined>;
stacked: pulumi.Input<boolean | undefined>;
yAxis: pulumi.Input<YAxis> | undefined;
}
export interface LogWidgetJson extends WidgetJson {
type: pulumi.Input<"log">;
properties: pulumi.Input<LogWidgetPropertiesJson>;
}
export interface LogWidgetPropertiesJson {
query: pulumi.Input<string>;
region: pulumi.Input<string | undefined>;
view: pulumi.Input<"timeSeries" | "singleValue" | undefined>;
stacked: pulumi.Input<boolean | undefined>;
title: pulumi.Input<string | undefined>;
}
export interface MetricWidgetAnnotationsJson {
alarms?: pulumi.Input<string>[];
horizontal?: BaseHorizontalAnnotationJson[];
vertical?: BaseVerticalAnnotationJson[];
}
export type MetricJson = SingleMetricJson | ExpressionMetricJson;
export type ExpressionMetricJson = [
{
expression: pulumi.Input<string>;
label: pulumi.Input<string | undefined>;
id: pulumi.Input<string | undefined>;
}
];
export type SingleMetricJson = pulumi.Output<(string | RenderingPropertiesJson)[]>;
export interface RenderingPropertiesJson {
color: string | undefined;
label: string | undefined;
period: number | undefined;
stat: string | undefined;
visible: boolean | undefined;
yAxis: "right" | "left" | undefined;
id: string | undefined;
}
export interface BaseHorizontalAnnotationJson {
value: pulumi.Input<number>;
label: pulumi.Input<string | undefined>;
}
export interface HorizontalAnnotationJson extends BaseHorizontalAnnotationJson {
color: string | undefined;
fill: "above" | "below" | undefined;
visible: boolean | undefined;
yAxis: "right" | "left" | undefined;
}
interface BaseVerticalAnnotationJson {
value: pulumi.Input<string>;
label: pulumi.Input<string | undefined>;
}
export interface VerticalAnnotationJson extends BaseVerticalAnnotationJson {
color: string | undefined;
fill: "before" | "after" | undefined;
visible: boolean | undefined;
}
export {};