/// <reference types="react" />
/// <reference types="dayjs-timezone/dayjs-timezone" />
import isEmpty from './isEmptyData';
import autoHypen, {
  autoComma,
  numberStr,
  toNumber,
  card_space,
  dateRangeFormat,
  removeSpecialChar,
} from './autoFormat';
import insideRedirect from './insideRedirect';
import { textAlignClass, colorClass } from './autoClasses';
import searchListFormat from './searchListFormater';
import queryDataFormater, { getFromResult } from './queryFormater';
import setMidNight from './setMidNight';
import removeNullOfObject from './removeNullOfObject';
import s4 from './keyGen';
import { fromToRender } from './fromToRender';
import randomIntFromInterval from './randomNumber';
import muResult from './mutationResultSafty';
import instanceOfA from './interfaceMatch';
import jsonString from './jsonString';
import isLast from './isLast';
import { arraySum } from './elses';
import onCompletedMessage from './onCompletedMessage';
import {
  isEmail,
  isNumber,
  isYYYYMMDD,
  isPhone,
  isName,
  isUrl,
  isMaxOver,
  isPassword,
  isNumberMinMax,
  isLengthIn,
  isHaveScharacter,
  isHaveNumber,
  isIncludeSpecialChar,
} from './validater.js';
declare const JDutils: {
  isEmpty: (data: any) => data is void | '' | null | undefined;
  card_space: (value?: string) => string;
  textAlignClass: (
    boxName: string,
    align?: 'left' | 'right' | 'center' | undefined
  ) => any;
  arraySum: (arr: number[]) => number;
  colorClass: (
    boxName: string,
    color?:
      | 'darkPrimary'
      | 'primary'
      | 'third'
      | 'point'
      | 'new'
      | 'warn'
      | 'error'
      | 'black'
      | 'white'
      | 'grey1'
      | 'grey2'
      | 'grey3'
      | 'grey4'
      | 'grey5'
      | 'normal'
      | 'blue'
      | 'positive'
      | null
      | undefined
  ) => any;
  randomIntFromInterval: typeof randomIntFromInterval;
  searchListFormat: (
    dataList: any[],
    asName?: string | undefined,
    asDetail?: string | undefined,
    asId?: string | undefined
  ) => {
    name: string;
    detail?: string | undefined;
  }[];
  autoHypen: (str?: string) => string;
  queryDataFormater: typeof queryDataFormater;
  onCompletedMessage: (
    result: {
      [data: string]: any;
      error: string | null;
      ok: boolean | null;
    },
    resultOK: string,
    resultFale: string | undefined,
    SystemFalse?: string | JSX.Element | JSX.Element[] | string[] | undefined,
    queryName?: string | undefined
  ) => void;
  setMidNight: (time: number) => number;
  autoComma: (str?: string | number) => string;
  isLast: (
    index: number,
    arr: any[],
    trueReturn?: any,
    falsereturn?: any
  ) => any;
  numberStr: (str?: string) => string;
  fromToRender: (from: Date | null, to: Date | null) => string;
  toNumber: (value?: string | number) => number;
  muResult: typeof muResult;
  removeNullOfObject: (obj: any) => void;
  jsonString: (value: any) => string;
  insideRedirect: (lastDestination: string) => string;
  instanceOfA: typeof instanceOfA;
  s4: () => string;
  getFromResult: typeof getFromResult;
  isEmail: any;
  removeSpecialChar: (str: string) => string;
  dateRangeFormat: (
    from: string | number | Date | import('dayjs').Dayjs,
    to: string | number | Date | import('dayjs').Dayjs,
    format?: string | undefined
  ) => string;
  isNumber: any;
  isYYYYMMDD: any;
  isPhone: any;
  isName: any;
  isUrl: any;
  isMaxOver: any;
  isPassword: any;
  isNumberMinMax: any;
  isLengthIn: any;
  isHaveScharacter: any;
  isHaveNumber: any;
  isIncludeSpecialChar: any;
};
export {
  isEmpty,
  card_space,
  textAlignClass,
  arraySum,
  colorClass,
  randomIntFromInterval,
  searchListFormat,
  autoHypen,
  queryDataFormater,
  onCompletedMessage,
  setMidNight,
  autoComma,
  isLast,
  numberStr,
  fromToRender,
  toNumber,
  muResult,
  removeNullOfObject,
  jsonString,
  insideRedirect,
  instanceOfA,
  s4,
  getFromResult,
  isEmail,
  removeSpecialChar,
  dateRangeFormat,
  isNumber,
  isYYYYMMDD,
  isPhone,
  isName,
  isUrl,
  isMaxOver,
  isPassword,
  isNumberMinMax,
  isLengthIn,
  isHaveScharacter,
  isHaveNumber,
  isIncludeSpecialChar,
};
export default JDutils;
