Openstatus
www.openstatus.dev
1import type { Incident, StatusReport } from "@openstatus/db/src/schema";
2
3// DO NOT CHANGE!
4export enum Status {
5 Operational = "operational",
6 DegradedPerformance = "degraded_performance",
7 PartialOutage = "partial_outage",
8 MajorOutage = "major_outage",
9 UnderMaintenance = "under_maintenance",
10 Unknown = "unknown",
11 Incident = "incident",
12}
13
14// TODO: duplicate to `Status` enum above
15export type StatusVariant =
16 | "up"
17 | "degraded"
18 | "down"
19 | "empty"
20 | "incident"
21 | "maintenance";
22
23export type StatusDetails = {
24 long: string;
25 short: string;
26 variant: StatusVariant;
27};
28
29/**
30 * Data used for the `Bar` component within the `Tracker` component.
31 */
32export type TrackerData = {
33 ok: number;
34 count: number;
35 date: Date;
36 incidents: Incident[];
37 statusReports: StatusReport[];
38 status: Status;
39 variant: StatusVariant;
40};