Skip to content
Snippets Groups Projects
componentsProp.ts 3.14 KiB
Newer Older
import type { TDarkness, TIcon, TPosition, TTextStyle, TThemeColor } from '@interfaces/common';
import type {
  ICheckboxProps,
  IKnobProps,
  IProgressBarProps,
  IRatingProps,
  ISelectProps,
} from '@interfaces/componentsProps';
  editable?: boolean;
  filterable?: boolean;
  sortable?: boolean;
  initSort?: 'up' | 'down' | 'none';
  padding?: string;
export interface ITableColumnOptions
  extends ICheckboxProps,
    ISelectProps,
    IRatingProps,
    IProgressBarProps,
    IKnobProps {}

export interface ITreeItem {
  label: string;
  link?: string;
  linkBlank?: boolean;
  color?: TThemeColor;
  textStyle?: TTextStyle;
  isTriangleToColor?: boolean;
  iconBefore?: TIcon;
  iconAfter?: TIcon;
  iconColor?: TThemeColor;
  children?: ITreeItem[];
  darknessColor?: TDarkness;
  darknessIconColor?: TDarkness;
  isLinkClicked?: boolean;
}

export interface IMDItemProps {
  label: string;
  theme?: TThemeColor;
  textStyle?: TTextStyle;
  link?: string;
  linkBlank?: boolean;
  onClick?: () => void;
}

export interface IColorGap {
  start: number;
  end: number;
  color: TThemeColor;
  darknessColor?: TDarkness;
}

export interface ISelectOption {
  value: string;
  label?: string;
  iconLeft?: TIcon;
  iconRight?: TIcon;
  iconLeftColor?: TThemeColor;
  iconRightColor?: TThemeColor;
  color?: TThemeColor;
  darknessColor?: TDarkness;
  background?: TThemeColor;
  darknessBackground?: TDarkness;
}

export interface ISelectGroup {
  nameColor?: TThemeColor;
  background?: TThemeColor;
  items?: ISelectOption[];
  iconLeft?: TIcon;
  iconRight?: TIcon;
  iconLeftColor?: TThemeColor;
  iconRightColor?: TThemeColor;
export type TInputDivScheme =
  | `${number}by${number}`
  | `${number}-${number}`
  | `${number}-${number}-${number}-${number}`
  | `${number}-${number}-${number}-${number}-${number}`
  | `${number}-${number}-${number}-${number}-${number}-${number}`
  | `${number}-${number}-${number}-${number}-${number}-${number}-${number}`
  | `${number}-${number}-${number}-${number}-${number}-${number}-${number}-${number}`
  | `${number}-${number}-${number}-${number}-${number}-${number}-${number}-${number}-${number}`
  | `${number}-${number}-${number}-${number}-${number}-${number}-${number}-${number}-${number}-${number}`;

export interface ISBOption {
  label: string;
  value?: never;
  color?: TThemeColor;
  activeColor?: TThemeColor;
  backgroundColor?: TThemeColor;
  darknessColor?: TDarkness;
  darknessActiveColor?: TDarkness;
  darknessBackgroundColor?: TDarkness;
  isLabelHidden?: boolean;
  iconPosition?: TPosition;
  textStyle?: TTextStyle;
}

export interface ISliderOptions {
  value?: string | number;
  color?: TThemeColor;
  darknessColor?: TDarkness;

export type TToastType = 'success' | 'info' | 'warn' | 'error';