import { CSSProperties } from 'react'; import { IInitialStateParams } from '@mjcloud/redux'; import { IComplexTableResult } from '@mjcloud/data-source-helper'; import { IControlSetConfig, IDictionary, ControlConfig } from '@mjcloud/types'; import { IDataState, IDataControlLoadedParams } from '@mjcloud/instance/dist/dataInstanceBase'; export declare type handleColorCommandFn = (colorCommand: string, _item: IDictionary) => string; export interface IStatisticsColumn { id: string; icon?: string; iconColor?: string; field: string; title: string; tip?: string; controllerId?: string; colorCommand?: string; control: ControlConfig; } export interface IStatisticsItem extends IDictionary { _rid: number; _briefList: IStatisticsBriefItem[]; __infoBriefList: IStatisticsInfoBriefItem[]; _infoBriefList: IStatisticsInfoBriefItem[][]; _title?: IStatisticsInfoBriefItem[]; _rTitle?: IStatisticsInfoBriefItem[]; _tags?: IStatisticsInfoBriefItem[]; } export interface IStatisticsQuotaBriefItem { status?: number; val?: IStatisticsBriefItem & { title: string; value: number; }; interval?: IStatisticsBriefItem & { title: string; value: number; }; } export interface IStatisticsInfoBriefItem extends IStatisticsBriefItem { id: string; title: string; icon: string; iconColor?: string; tip?: string; controllerId?: string; } export interface IStatisticsBriefItem { style: CSSProperties; styleText: string; text: string; } export interface IStatisticsConfig extends IControlSetConfig { cols: number; showRows?: number; showLine: boolean; info?: IStatisticsInfo; } export interface IStatisticsItemConfig { id: string; position?: 'left' | 'right'; interval?: string; status?: string; unitText?: string; unit?: string; } export interface IStatisticsInfo { cols: number; labelWidth?: number; labelNumber?: number; title?: IStatisticsItemConfig[]; tags?: IStatisticsItemConfig[]; } export interface IStatisticsState extends IDataState { cols: number; size?: number; info?: IStatisticsInfo; showRows?: number; showLine: boolean; collapse: boolean; showCollapse: boolean; controllerId?: string | undefined; columns: IStatisticsColumn[]; dataSource: IStatisticsItem[]; _dataSource: IStatisticsItem[][]; } export interface IStatisticsInitialStateParams extends IInitialStateParams { } export interface IStatisticsLoadedParams extends IDataControlLoadedParams { dataSource: IComplexTableResult; handleColorCommand: handleColorCommandFn; }