@truenewx/tnxcore
Version:
互联网技术解决方案:JavaScript核心扩展支持
131 lines (75 loc) • 2.88 kB
TypeScript
import Tnx from './tnxcore.ts';
declare global {
interface Window {
tnx: Tnx;
WxLogin: (options: Record<string, any>) => void;
}
interface Number {
/**
* 获取当前数值四舍五入到指定精度后的结果
* @param scale 精度,即小数点后的位数
* @returns 四舍五入后的结果数值
*/
halfUp(scale: number): number;
/**
* 转换为百分比字符串
* @param scale 小数保留位数
*/
toPercent(scale?: number): string;
}
interface String {
firstToLowerCase(): string;
firstToUpperCase(): string;
format(...args: any[]): string;
toCharArray(): string[];
replaceAll(regex: string | RegExp, replacement: string): string;
allIndexOf(searchString: string, position?: number): number[];
splitToIntArray(separator: string): number[];
splitByUpperCaseLetter(byNumber?: boolean): string[];
wildcardMatches(...patterns: string[]): boolean;
}
interface Date {
format(pattern: string): string;
formatDateTime(): string;
formatDate(): string;
formatTime(): string;
formatTimeMillisecond(): string;
formatTimeMinute(): string;
formatDateMinute(): string;
formatDateMonth(): string;
plusMilliseconds(milliseconds: number): Date;
plusSeconds(seconds: number): Date;
plusMinutes(minutes: number): Date;
plusHours(hours: number): Date;
plusDays(days: number): Date;
plusMonths(months: number): Date;
plusYears(years: number): Date;
applyTime(hours: number, minutes: number, seconds: number, milliseconds: number): void;
}
interface Array<T> {
contains(element: ((e: T) => boolean) | T): boolean;
containsIgnoreCase(element: string): boolean;
remove(element: ((e: T) => boolean) | T): T | undefined;
removeIf(predicate: (e: T) => boolean): boolean;
clone(deep?: boolean): T[];
get(fn: (e: T) => boolean): T | undefined;
equals(other: T[], predicate?: (a: T, b: T) => boolean): boolean;
}
interface Boolean {
toText(): string | undefined;
}
interface Element {
getFirstChildWithoutTagName(tagName: string): ChildNode | undefined;
toggleClass(className: string): void;
getParentIf(predicate?: (parent: Element) => boolean): Element | null;
}
type PermanentableDate = {
permanent: boolean;
value: string;
}
type Authority = {
type?: string;
rank?: string;
permission?: string;
}
}