@nova-ui/dashboards
Version:
Nova Dashboards is a framework designed to provide feature developers with a common solution for presenting data coming from various sources within a single view, as well as a set of predefined widget visualizations that are 100% configuration-driven and
58 lines (57 loc) • 1.74 kB
TypeScript
import { BehaviorSubject } from "rxjs";
import { ComparatorTypes, IProperties } from "../../types";
import { ITimeseriesWidgetSeries } from "../timeseries-widget/types";
import { IFormatter } from "../types";
/** Default refresh interval in seconds */
export declare const DEFAULT_REFRESH_INTERVAL = 300;
export interface ITimeseriesDataSourceAdapterConfiguration extends IProperties {
series: ITimeseriesWidgetSeries[];
}
export interface IDataSourceOutput<T> {
result: T;
error?: IDataSourceError;
}
export interface IComponentIdPayload {
componentId: string;
}
export interface IDataSourceOutputPayload<T> extends IDataSourceOutput<T>, IComponentIdPayload {
}
export interface IDataSourceBusyPayload extends IComponentIdPayload {
busy: boolean;
}
export interface IDataSourceError {
type: string | number;
message?: string;
}
export type BroadcasterTrackOnType = "component" | "pizzagna";
export interface IBroadcasterConfig {
trackOn?: BroadcasterTrackOnType;
key: string;
paths: string[];
}
export interface IKpiColorRules {
comparisonType: ComparatorTypes;
value: any;
color: any;
}
export interface IDrilldownComponentConfiguration extends IFormatter {
properties: Record<string, any>;
itemProperties?: IProperties;
}
export interface IDrilldownComponentsConfiguration {
group: IDrilldownComponentConfiguration;
leaf: IDrilldownComponentConfiguration;
}
export interface IBrokerValue {
id: string;
targetID: string;
targetValue: number;
}
export interface IBrokerUserConfig {
id: string;
type?: "min" | "max";
}
export interface IBroker extends IBrokerUserConfig {
in$: BehaviorSubject<IBrokerValue>;
out$: BehaviorSubject<IBrokerValue>;
}