import { Widget } from "./widget"; type UnionToIntersection = ( Union extends unknown ? (x: Union) => void : never ) extends ((x: infer Intersection) => void) ? Intersection : never; export declare function assert(v: any, is: Function): Boolean; export declare function warn(message: any): Boolean; export declare function UUID(): string; export declare function isWidget(widget: any): widget is Widget; export declare function createWidgets(items: any, options: any, context: any): any; export declare function createItems(data: T[], innerAttr?: U, outerAttr?: K): (U & T & K)[]; export declare function packageItems(items: any[], layouts: any[]): any[]; export declare function formatEL(obj: T): { el: T } | T; export declare function stripEL(obj: { el: T } | T): T; export declare function trans2Element(widgets: any[]): any[]; // 集合相关方法 export declare function where(collection: any[] | object | string, source: object): any[]; export declare function findWhere(collection: any[] | object | string, callback?: Function | object | string, thisArg?: any): object | undefined; export declare function invoke(collection: any[] | object | string, methodName: Function | string, arg?: any): any[]; export declare function pluck(collection: any[] | object | string, property: string): any[]; export declare function shuffle(collection: any[] | object | string): any[]; export declare function sample(collection: any[] | object | string, n?: number): any[]; export declare function toArray(collection: any[] | object | string): any[]; export declare function size(collection: any): number; export declare function each(collection: ArrayLike, iteratee?: (index: number, value: T) => void, thisArg?: any): ArrayLike; export declare function each(collection: T, iteratee?: (index: K, value: T[K]) => void, thisArg?: any): T; export declare function each(collection: T, iteratee?: any, thisArg?: any): T; export declare function map(collection: T[] | object | string | null | undefined, callback?: ((index: number, value: T) => U) | object | string, thisArg?: any): U[]; export declare function reduce(collection: T[] | object | string, callback?: ((currentValue: T, total: U extends T ? U : T, currentIndex: number) => U extends T ? U : T) | object | string, initialValue?: U | T): U extends T ? U : T; export declare function reduceRight(collection: T[] | object | string, callback?: ((currentValue: T, total: U extends T ? U : T, currentIndex: number) => U extends T ? U : T) | object | string, initialValue?: U | T): U extends T ? U : T; export declare function find(collection: T[] | object | string, callback?: ((index: number, value: T) => boolean) | object | string, thisArg?: any): T | undefined; export declare function filter(collection: T[] | object | string, callback?: ((index: number, value: T) => boolean) | object | string, thisArg?: any): T[]; export declare function reject(collection: T[] | object | string, callback?: ((index: number, value: T) => boolean) | object | string, thisArg?: any): T[]; export declare function every(collection: T[] | object | string, callback?: ((index: number, value: T) => boolean) | object | string, thisArg?: any): boolean; export declare function all(collection: T[] | object | string, callback?: ((index: number, value: T) => boolean) | object | string, thisArg?: any): boolean; export declare function some(collection: T[] | object | string, callback?: ((index: number, value: T) => boolean) | object | string, thisArg?: any): boolean; export declare function any(collection: T[] | object | string, callback?: ((index: number, value: T) => boolean) | object | string, thisArg?: any): boolean; export declare function max(collection: T[]): T; export declare function min(collection: T[]): T; export declare function sortBy(collection: any[] | object | string, callback?: ((index: number, value: T) => number) | object | string, thisArg?: any): any[]; export declare function groupBy(collection: any[] | object | string, callback?: ((index: number, value: T) => any) | object | string, thisArg?: any): object; export declare function indexBy(collection: any[] | object | string, callback?: ((index: number, value: T) => any) | object | string, thisArg?: any): object; export declare function countBy(collection: any[] | object | string, callback?: ((index: number, value: T) => any) | object | string, thisArg?: any): object; export declare function count(from: number, to: number, predicate: Function): number; export declare function inverse(from: number, to: number, predicate: Function): number; export declare function firstKey(obj: object): string; export declare function lastKey(obj: object): string; export declare function firstObject(obj: object): any; export declare function lastObject(obj: object): any; export declare function concat(obj1: any, obj2: any, ...args: any[]): any; export declare function backEach(obj: any, predicate: Function, context?: any): boolean; export declare function backAny(obj: any, predicate: Function, context?: any): boolean; export declare function backEvery(obj: any, predicate: Function, context?: any): boolean; export declare function backFindKey(obj: any, predicate: Function, context?: any): string; export declare function backFind(obj: any, predicate: Function, context?: any): any; export declare function remove(obj: any, predicate: any, context?: any): void; export declare function removeAt(obj: any, index: number | number[]): void; export declare function string2Array(str: string): string[]; export declare function array2String(array: any[]): string; export declare function abc2Int(str: string): number; export declare function int2Abc(num: number): string; // 数组相关的方法 export declare function first(array: T[], callback?: Function | object | number | string, thisArg?: any): T; export declare function initial(array: T[], callback?: Function | object | number | string, thisArg?: any): T[]; export declare function last(array: T[], callback?: Function | object | number | string, thisArg?: any): T; export declare function rest(array: T[], callback?: Function | object | number | string, thisArg?: any): T[]; export declare function compact(array: any[]): any[]; export declare function flatten(array: any[], isShallow?: boolean, callback?: Function | object | string, thisArg?: any): any[]; export declare function without(array: any[], value?: any): any[]; export declare function union(...array: any[]): any[]; export declare function intersection(...array: any[]): any[]; export declare function difference(...array: any[]): any[]; export declare function zip(...array: any[]): any[]; export declare function unzip(...array: any[]): any[]; export declare function object(keys: string[], values?: any[]): any[]; export declare function indexOf(array: any[], value: any, fromIndex?: number): number; export declare function lastIndexOf(array: any[], value: any, fromIndex?: number): number; export declare function sortedIndex(array: any[], value: any, callback?: Function | object | string, thisArg?: any): number; export declare function range(start: number, end: number, step: number): number[]; export declare function take(array: T[], n: number): T[]; export declare function takeRight(array: T[], n: number): T[]; export declare function findIndex(array: T[], predicate?: ((index: number, item: T, array: T[]) => any) | object | string, thisArg?: any): number; export declare function findLastIndex(array: T[], predicate?: ((index: number, item: T, array: T[]) => any) | object | string, thisArg?: any): number; export declare function makeArray(length: number, value?: T): number[] | T[]; export declare function makeObject(array: any[], value: any): any; export declare function makeArrayByArray(array: any[], value: T): T[]; export declare function uniq(array: T[], isSorted?: boolean, iteratee?: any, context?: any): T[]; export declare function uniqBy(array: T[], iteratee?: any, context?: any): T[]; // 对象相关方法 export declare function keys(object: object): string[]; export declare function allKeys(object: object): string[]; export declare function values(object: object): any[]; export declare function pairs(object: object): any[]; export declare function invert(object: object, multiValue: boolean): object; export declare function create(prototype: object, properties?: object): object; export declare function functions(object: object): string[]; export declare function extend(object: T): T; export declare function extend(object: T, ...sources: U): T & UnionToIntersection>; export declare function defaults(object: object, ...sources: any[]): object; export declare function clone(object: T): T; export declare function property(path: any[] | string): Function; export declare function propertyOf(object: object): Function; export declare function isEqual(value: any, other: any, customizer?: Function, thisArg?: any): boolean; export declare function isMatch(object: object, source: object, customizer?: Function, thisArg?: any): boolean; export declare function isEmpty(value: any[] | object | string | null | undefined | number): boolean; export declare function isElement(value: any): boolean; export declare function isNumber(value: any): value is number; export declare function isString(value: any): value is string; export declare function isArray(value: T[] | any): value is T[]; export declare function isObject(value: any): value is object; export declare function isPlainObject(value: any): value is object; export declare function isArguments(value: any): boolean; export declare function isFunction(value: any): value is Function; export declare function isFinite(value: any): value is number; export declare function isBoolean(value: any): value is boolean; export declare function isDate(value: any): value is Date; export declare function isRegExp(value: any): value is RegExp; export declare function isError(value: any): value is Error; export declare function isNaN(value: any): value is number; export declare function isUndefined(value: any): value is undefined; export declare function zipObject(props: any[], values?: any[]): object; export declare function cloneDeep(value: T): T; export declare function findKey(object: object, predicate?: Function | object | string, thisArg?: any): any; export declare function pick(object: object, predicate?: Function | string | string[], thisArg?: any): object; export declare function omit(object: object, predicate?: Function | string | string[], thisArg?: any): object; export declare function tap(value: any, interceptor: Function, thisArg?: any): any; export declare function inherit(sb: any, sp: any, overrides?: any): any; export declare function init(): void; export declare function has(obj: object, keys: string | string[]): boolean; export declare function freeze(value: T): T; export declare function isKey(key: any): key is (number | string); export declare function isCapitalEqual(a: string | null | undefined, b: string | null | undefined): boolean; export declare function isWidthOrHeight(w: number | string): boolean; export declare function isNotNull(obj: T): obj is NonNullable; export declare function isNull(obj: any): obj is (undefined | null); export declare function isEmptyArray(arr: T[] | U): arr is T[] & { length: 0 }; export declare function isNotEmptyArray(arr: T[] | U): arr is [T, ...T[]]; export declare function isEmptyObject(obj: any): boolean; export declare function isNotEmptyObject(obj: any): obj is object; export declare function isWindow(obj: any): obj is Window; export declare function deepClone(obj: T): T; export declare function deepExtend(object: TObject, source: TSource): TObject & TSource; export declare function deepExtend(object: TObject, source1: TSource1, source2: TSource2): TObject & TSource1 & TSource2; export declare function deepExtend(object: TObject, source1: TSource1, source2: TSource2): TObject & TSource1 & TSource2; export declare function deepExtend(object: TObject, source1: TSource1, source2: TSource2, source3: TSource3): TObject & TSource1 & TSource2 & TSource3; export declare function deepExtend(object: TObject, source1: TSource1, source2: TSource2, source3: TSource3, source4: TSource4): TObject & TSource1 & TSource2 & TSource3 & TSource4; export declare function deepExtend(object: any, ...otherArgs: any[]): any; export declare function isDeepMatch(object: any, attrs: any): boolean; export declare function contains(obj: any[], target: any, fromIndex?: number): boolean; export declare function deepContains(obj: any[], copy: any): boolean; export declare function deepIndexOf(obj: any[], target: any): number; export declare function deepRemove(obj: any[], target: any): boolean; export declare function deepWithout(obj: any[], target: any): any[]; export declare function deepUnique(array: any[]): any[]; export declare function deepDiff(object: any, other: any): string[]; export declare function uniqueId(prefix?: string): string; export declare function result(object: any, key: string, defaultValue?: any): any; export declare function chain(value: any): any; export declare function iteratee(func?: Function, thisArg?: any): Function; export declare function unescape(str?: string): string; export declare function bind(func: T, thisArg: any, ...partials: any): T; export declare function once(func: Function): Function; export declare function partial(func: Function, ...partials: any): Function; export declare function debounce(func: T, wait?: number, options?: any): T; export declare function throttle(func: T, wait?: number, options?: any): T; export declare function delay(func: Function, wait: number, ...args: any[]): number; export declare function defer(func: Function, ...args: any[]): number; export declare function wrap(value: any, wrapper: Function): Function; export declare function nextTick(func?: Function): Promise; export declare function random(min?: number, max?: number, floating?: boolean): number; export declare function parseInt(s: string | number): number; export declare function parseSafeInt(s: string): number; export declare function parseFloat(string: string): number; export declare function isNaturalNumber(value: string | number): boolean; export declare function isPositiveInteger(value: string | number): boolean; export declare function isNegativeInteger(value: string | number): boolean; export declare function isInteger(value: string | number): boolean; export declare function isNumeric(value: string | number): boolean; export declare function isFloat(value: string | number): boolean; export declare function isOdd(value: string | number): boolean; export declare function isEven(value: string | number): boolean; export declare function sum(array: any[], iteratee?: Function, context?: any): number; export declare function average(array: any[], iteratee?: Function, context?: any): number; export declare function trim(string?: string, chars?: string): string; export declare function toUpperCase(string: string): string; export declare function toLowerCase(string: string): string; export declare function isEndWithBlank(string: string): boolean; export declare function isLiteral(string: string): boolean; export declare function stripQuotes(string: string): string; export declare function camelize(string: string): string; export declare function hyphenate(string: string): string; export declare function isNotEmptyString(string: any): boolean; export declare function isEmptyString(str: any): str is ""; export declare function encrypt(type: string, text: string, key: string): string; export declare function escape(string: string): string; export declare function leftPad(val: string, size: number, ch: string): string; export declare function format(format: string, ...str: string[]): string; export declare function isLeapYear(year: number): boolean; export declare function checkDateVoid(YY: string | number, MM: string | number, DD: string | number, minDate: string, maxDate: string): (number | string)[]; export declare function checkDateLegal(str: string): boolean; export declare function parseDateTime(str: string, fmt: string): Date; export declare function getDate(...args: (number | string)[]): Date; export declare function getTime(...args: any[]): number; export declare function clamp(number: number, lower: number, upper: number): number; /** * 判断一个对象是不是promise * @param obj 对象 */ export declare function isPromise(obj: any): obj is Promise; export declare function set( object: TObject, path: string | string[], value: any ): TObject; export declare function get( object: TObject, path: TKey | [TKey] | string | null | undefined, defaultValue?: any ): TObject[TKey] | any;