266 lines
5.3 KiB
TypeScript
266 lines
5.3 KiB
TypeScript
import type { BasePaginationConfig } from "../hooks/useTable";
|
|
|
|
// 定义 getDataType 函数可能返回的所有类型
|
|
type DataType
|
|
= | "String"
|
|
| "Number"
|
|
| "Boolean"
|
|
| "Symbol"
|
|
| "Undefined"
|
|
| "Null"
|
|
| "Object"
|
|
| "Array"
|
|
| "Function"
|
|
| "Date"
|
|
| "RegExp"
|
|
| "Error"
|
|
| "Map"
|
|
| "Set"
|
|
| "WeakMap"
|
|
| "WeakSet"
|
|
| "ArrayBuffer"
|
|
| "DataView"
|
|
| "Promise"
|
|
| "Generator"
|
|
| "GeneratorFunction"
|
|
| "AsyncFunction"
|
|
| "Arguments"
|
|
| "Math"
|
|
| "JSON"
|
|
| "Window"
|
|
| "HTMLDocument"
|
|
| string; // 允许其他可能的类型
|
|
|
|
// 为 findCharIndex 函数定义接口类型
|
|
interface FindCharIndexOptions {
|
|
/** 查找的字符串 */
|
|
str: string;
|
|
/** 查找的字符 */
|
|
char: string;
|
|
/** 第几次出现 */
|
|
num: number;
|
|
}
|
|
|
|
// 为 paging 函数定义接口类型
|
|
interface PagingOptions {
|
|
/** 分页的数组 */
|
|
list: any[];
|
|
/** 当前页 */
|
|
currentPage: number | string;
|
|
/** 每页条数 */
|
|
pageSize: number | string;
|
|
}
|
|
|
|
// 为 addingPrefixToFile 函数定义接口类型
|
|
interface AddingPrefixToFileOptions {
|
|
/** 附件路径字段名 */
|
|
pathKey?: string;
|
|
/** 附件名称字段名 */
|
|
nameKey?: string;
|
|
/** 附件id字段名 */
|
|
idKey?: string;
|
|
}
|
|
|
|
// 为 getLabelName 函数定义接口类型
|
|
interface GetLabelNameOptions {
|
|
/** 状态 */
|
|
status: number | string;
|
|
/** 翻译的数组 */
|
|
list: any[];
|
|
/** id字段名 */
|
|
idKey?: string;
|
|
/** name字段名 */
|
|
nameKey?: string;
|
|
}
|
|
|
|
// 为 getSelectAppointItemList 函数定义接口类型
|
|
interface GetSelectAppointItemListOptions {
|
|
/** 获取的数组 */
|
|
list: any[];
|
|
/** 获取的值 */
|
|
value: any[];
|
|
/** 获取的id字段名 */
|
|
idKey?: string;
|
|
}
|
|
|
|
// 为 listTransTree 函数定义接口类型
|
|
interface ListTransTreeOptions {
|
|
/** 需要转换的json */
|
|
json: any[];
|
|
/** id字段 */
|
|
idKey: string;
|
|
/** 父级id字段 */
|
|
parentIdKey: string;
|
|
/** 子级字段 */
|
|
childrenKey: string;
|
|
}
|
|
|
|
// 为 isEmptyToWhether 函数定义接口类型
|
|
interface IsEmptyToWhetherOptions {
|
|
/** 真值时显示的文本 */
|
|
yesText?: string;
|
|
/** 假值时显示的文本 */
|
|
noText?: string;
|
|
/** 判断为真的值 */
|
|
yesValue?: string | number;
|
|
}
|
|
|
|
/**
|
|
* 计算序号
|
|
*/
|
|
export function serialNumber(
|
|
pagination: BasePaginationConfig,
|
|
index: number
|
|
): number;
|
|
|
|
/**
|
|
* 字符串数组转数组
|
|
*/
|
|
export function toArrayString(value: string): Array<string>;
|
|
|
|
/**
|
|
* 判断文件后缀名是否符合
|
|
*/
|
|
export function interceptTheSuffix(name: string, suffix: string): boolean;
|
|
|
|
/**
|
|
* 图片转base64
|
|
*/
|
|
export function image2Base64(imgUrl: string): Promise<string>;
|
|
|
|
/**
|
|
* 图片转base64 (File对象版本)
|
|
*/
|
|
export function image2Base642(file: File): Promise<string>;
|
|
|
|
/**
|
|
* 判断图片是否可访问成功
|
|
*/
|
|
export function checkImgExists(imgUrl: string): Promise<any>;
|
|
|
|
/**
|
|
* 获取数据类型
|
|
*/
|
|
export function getDataType(data: any): DataType;
|
|
|
|
/**
|
|
* 数组去重
|
|
*/
|
|
export function ArrayDeduplication<T extends number | string>(arr: T[]): T[];
|
|
|
|
/**
|
|
* 数组对象去重
|
|
*/
|
|
export function arrayObjectDeduplication<T>(arr: T[], key: string): T[];
|
|
|
|
/**
|
|
* 查找字符串中指定的值第几次出现的位置
|
|
*/
|
|
export function findCharIndex(options: FindCharIndexOptions): number;
|
|
|
|
/**
|
|
* 生成指定两个值之间的随机数
|
|
*/
|
|
export function randoms(min: number, max: number): number;
|
|
|
|
/**
|
|
* 千位分隔符
|
|
*/
|
|
export function numFormat(num: number | string): string;
|
|
|
|
/**
|
|
* 验证是否为空
|
|
*/
|
|
export function isEmpty(value: any): boolean;
|
|
|
|
/**
|
|
* 获取url参数
|
|
*/
|
|
export function getUrlParam(key: string): string;
|
|
|
|
/**
|
|
* 数据分页
|
|
*/
|
|
export function paging<T>(options: PagingOptions): T[];
|
|
|
|
/**
|
|
* 获取文件后缀
|
|
*/
|
|
export function getFileSuffix(name: string): string;
|
|
|
|
/**
|
|
* 获取文件名称
|
|
*/
|
|
export function getFileName(name: string): string;
|
|
|
|
/**
|
|
* 读取txt文档
|
|
*/
|
|
export function readTxtDocument(filePah: string): Promise<string>;
|
|
|
|
/**
|
|
* 将秒转换成时分秒
|
|
*/
|
|
export function secondConversion(second: string | number): string;
|
|
|
|
/**
|
|
* 附件添加前缀
|
|
*/
|
|
export function addingPrefixToFile<T extends Record<string, any>>(
|
|
list: T[],
|
|
options?: AddingPrefixToFileOptions
|
|
): (T & { url: string; name: string; imgFilesId: any })[];
|
|
|
|
/**
|
|
* 翻译状态
|
|
*/
|
|
export function getLabelName<T>(options: GetLabelNameOptions): string | undefined;
|
|
|
|
/**
|
|
* 计算文件大小
|
|
*/
|
|
export function calculateFileSize(size: number | string): string;
|
|
|
|
/**
|
|
* 根据身份证号获取出生日期和性别
|
|
*/
|
|
export function idCardGetDateAndGender(idCard: string): { sex: "1" | "0"; date: string };
|
|
|
|
/**
|
|
* 获取select中指定项组成的数组
|
|
*/
|
|
export function getSelectAppointItemList<T>(options: GetSelectAppointItemListOptions): T[];
|
|
|
|
/**
|
|
* json转换为树形结构
|
|
*/
|
|
export function listTransTree<T>(options: ListTransTreeOptions): T[];
|
|
|
|
/**
|
|
* 将值转换为"是"/"否"显示文本
|
|
*/
|
|
export function isEmptyToWhether(
|
|
value: any,
|
|
options?: IsEmptyToWhetherOptions
|
|
): string;
|
|
|
|
/**
|
|
* 生成指定长度的guid
|
|
*/
|
|
export function createGuid(len?: number): string;
|
|
|
|
/**
|
|
* 获取序号列
|
|
*/
|
|
export function getIndexColumn(pagination: false | BasePaginationConfig): {
|
|
title: string;
|
|
key: string;
|
|
width: number;
|
|
render: (...args: any[]) => number;
|
|
};
|
|
|
|
/**
|
|
* 获取文件url
|
|
*/
|
|
export function getFileUrl(): string;
|