export interface TextStyle { fontSize: number; color: any; fontWeight: any; inherit?: boolean; fontFamily?: string; letterSpacing?: number | string; textAlign?: any; } export interface ProgressText extends TextStyle { display: any; } export interface TrackConfig { display?: boolean; thickness: number; color: string; radius: number; } export interface SliderConfig { size: number; color: string; radius: number; } export interface Horcroll { display: boolean; showType?: 'all' | 'hover'; trackConfig?: TrackConfig; sliderConfig?: SliderConfig; } export interface GlobalConfig { showType: 'fixedHeight' | 'adaptiveContent'; topLine: number; topBgColor: string; rowsNumber: number; textSpacing: number; horcroll?: Horcroll; updated: boolean; } export interface ActiveConfig { display: boolean; background: { color: any; opacity: number; }; boxShadow: { display: boolean; color: string; hShadow: number; vShadow: number; blur: number; spread: number; }; textStyle: { display: boolean; color: string; }; } export interface BorderConfig { display?: boolean; borderd?: boolean; borderColor: string; borderWidth: number; borderRadius?: number; } export interface CarouselConfig { interval: number; display: boolean; fixedBg: boolean; animateMode: 'all' | 'one'; animatConnect?: 'headTail' | 'startAgain'; animationEffect?: 'bottomUp' | 'flop'; direction?: 'up' | 'down'; duration: number; animateStep?: number; speed: 'linear' | 'ease' | 'ease-in' | 'ease-out' | 'ease-in-out'; } export interface ColorConfig { color: any; } export interface HeaderConfig { display: boolean; height: number; bgColor?: ColorConfig; headerStyle?: TextStyle; } export interface SubTitle { display: boolean; field: string; textStyle: TextStyle; space?: number; position: 'onBefore' | 'onAfter'; } export interface Suffix { display: boolean; content: string | number; textStyle: TextStyle; } export interface NumberFormat { display: boolean; decollate: boolean; decimal: number; round: boolean; percentage?: boolean; negativeing?: string; zeroFill?: boolean; } interface ProgressColor { display: boolean; startColor: string; endColor: string; multiColor?: any; } export interface SectionStyle { min?: number; max?: number; minDate?: string; maxDate?: string; progressMin?: number; progressMax?: number; progressColor?: ProgressColor; color: string; fontWeight: number | string; fontSize: number; } export interface DataForMat { display: boolean; date: { display: boolean; forMat: string; }; time: { display: boolean; forMat: string; }; } export interface StatusBgConfig { display: boolean; xOffset: number; yOffset: number; width: number; height: number; radius: number; color: string; imgUrl: string; } export interface StatusTextStyle extends TextStyle { display: boolean; xOffset: number; yOffset: number; } export interface StatusNormalStyle { bgConfig: StatusBgConfig; borderConfig: BorderConfig; textStyle: StatusTextStyle; } export interface StatusStyle extends StatusNormalStyle { statusVal: number | string; } export interface ProgressOutline { display: boolean; xPadding: number; yPadding: number; bgColor: string; borderColor: string; borderWidth: number; fillet: number; } export interface TipConfig { display: boolean; position: 'top' | 'bottom'; xPadding: number; yPadding: number; maxHeight: any; maxWidth: any; bgColor: string; radius: number; border?: BorderConfig; textStyle?: TextStyle; } export interface ColumnArr { field: string; colName: string; colWidth: number; colSpeed: number; alignType?: string; horOffset: number; verOffset: number; borderStyle: BorderConfig; contentType: string; contentOverflow?: 'ellipsis' | 'lineFeed' | 'slidetitle'; interval?: number; constantPlay?: boolean; constanDuration?: number; textStyle?: TextStyle; subTitle?: SubTitle; suffix?: Suffix; tipConfig?: TipConfig; numberFormat?: NumberFormat; sectionStyleFlag?: boolean; rangeEffect?: 'default' | 'rangeRatio'; sectionStyle?: SectionStyle[]; imageWidth?: number; imageHeight?: number; dataForMat?: DataForMat; progressText?: ProgressText; progressMaxValType?: 'filedMax' | 'custom'; progressMaxVal?: any; progressType?: any; progressWidth?: number; progressHeight?: number; progressColorType?: 'bicolor' | 'multicolor'; progressStartColor?: string; progressEndColor?: string; multiColor?: any; progressOutline?: ProgressOutline; statusNormalstyle?: StatusNormalStyle; statusStyle?: StatusStyle[]; } export interface LineStyleConfig { bgColor?: ColorConfig; leftOffSet: number; opacity: number; radius: number; } export interface LineConfig { lineSpeed: number; yPadding: number; borderStyle?: BorderConfig; lineStyle?: LineStyleConfig[]; } export interface ShadowConfig { display: boolean; color: string; xOffset: number; yOffset: number; vague: number; } export interface SerialStyleList { serialVal: string | number | null | undefined; textStyle?: StatusTextStyle; bgConfig?: StatusBgConfig; borderConfig?: BorderConfig; shadowConfig?: ShadowConfig; } export interface SerialCol { display: boolean; headerTitle: string; inintNumber: number; colWidth: number; colSpac: number; alignType?: string; serialStyle?: TextStyle; serialStyleList?: SerialStyleList[]; } export interface SeriesBgColor { display: boolean; color: any; opacity: number; radius: number; } export interface LineStyle { display: boolean; border: BorderConfig; bgConfig: SeriesBgColor; } export interface SeriesFontStyle extends TextStyle { display: boolean; } export interface SeriesStyle { condition: string; seriesLineStyle: LineStyle; seriesTextStyle: SeriesFontStyle; } export interface EmptyDataStyle { display: boolean; bgColor: string; image?: { display: boolean; xOffset: number; yOffset: number; imgUrl: string; width: number; height: number; }; text?: { display: boolean; content: string; xOffset: number; yOffset: number; textStyle?: TextStyle; }; } export type ChangeHandler = (data: any) => void; export type TIMER = { timer: any; timerTwo: any; timerThree: any; }; export interface CarouseTableProps { w?: number; h?: number; id?: string; globalConfig?: GlobalConfig; activeConfig?: ActiveConfig; header?: HeaderConfig; carousel?: CarouselConfig; serialCol?: SerialCol; customCol?: ColumnArr[]; lineconfig?: LineConfig; seriesStyle?: SeriesStyle[]; emptyDataStyle?: EmptyDataStyle; data?: any; onClick?: ChangeHandler; onMouseenter?: ChangeHandler; onMouseleave?: ChangeHandler; } export {};