import { ICRUDConfig, IColumnItem } from '../../types';

/**
 * 裁剪长度
 * @param str
 * @param len
 * @param isTransHz 是否转换汉字长度为2个英文字母长度
 */
export declare const cutString: (str: string | undefined, len: number, isTransHz?: boolean) => string;
export declare function castArray(value: any): any;
export declare function castCategory(value: any, formData: any): any[];
export declare function castFileList(value: any): any;
export declare function castString(value: any): any;
export declare function castBoolean(value: any): boolean;
export declare function castNumber(value: any): number;
/**
 * 获取字符串长度
 * @type {(p1?:*)}
 */
export declare const getStrLength: (str: any) => number;
/**
 * 获取随机字符串
 * @returns {string}
 */
export declare function getUID(): string;
/**
 * 根据key或者keyList获取对应值
 * @param keys
 * @param obj
 */
export declare function getValue(keys: string | Array<string>, obj: any): any;
/**
 * 处理按钮类型
 * @param item
 */
export declare function handelBtnType(item: any): Object;
/**
 * 处理列表表头，list转Map
 */
export declare function handelListColumn(columnList: Array<IColumnItem> | undefined, defaultConf: ICRUDConfig, tbName: string, headerAlign?: string, minWidth?: string): any[];
/**
 * 处理item的vif
 * @param item
 * @param defaultConf
 * @param tbName
 */
export declare function handelVIf(item: IColumnItem, defaultConf: ICRUDConfig, tbName: string): void;
export declare function is(val: any, type: any): boolean;
export declare function isDef(val: any): boolean;
export declare function isFunction(val: any): boolean;
export declare function isUnDef(val: any): boolean;
export declare function isMobile(): boolean;
/**
 * 两个对象是否相等
 * @param obj1
 * @param obj2
 */
export declare function isEqual(obj1: any, obj2: any): boolean;
/**
 * 判断是否是Promise
 * @param it
 * @returns
 */
export declare function isPromiseLike<T>(it: unknown): it is PromiseLike<T>;
/**
 * map转string
 * @param map
 * @param excludeList
 * @returns {string}
 */
export declare const mapToUrlStr: (map: any, excludeList?: any) => string;
/**
 * 格式化指定时间格式
 * @param value
 * @param valueFormat
 * @returns {*}
 */
export declare const time: (value: any, valueFormat?: Function | string) => string;
