export declare const cloneArrayBuffer: (val: ArrayBuffer) => ArrayBuffer; export declare const cloneArrayDeep: (arr: any[], instanceClone?: Function | undefined) => any[]; export declare const cloneDeep: (val: any, instanceClone?: Function | undefined) => any; export declare const cloneObjectDeep: (obj: any, instanceClone?: Function | undefined) => any; export declare const cloneRegExp: (val: RegExp) => RegExp; export declare const cloneShallow: (val: any) => any; export declare const cloneSymbol: (val: symbol) => symbol; export declare const cloneTypedArray: (val: TypedArray) => TypedArray; export declare const compose: (...funcs: Function[]) => any; export declare const delIn: (obj: any, path: string | string[]) => any; /** * Deep diff between two object, using lodash * @param {Object} object Object compared * @param {Object} base Object to compare with * @return {Object} Return a new object who represent the diff */ export declare function difference(object: T, base?: T | any[] | object): T | T[] | Record; export declare function getArrayOfObjectsWithoutProp(arr: any[], propName: string): any[]; export declare function getJsonFromString(str: string): IJson; export declare function getObjectFromArrayByProp(arr: any[], prop: string): any; export declare function getObjectWithoutEmptyPropsFrom(object: object): object; export declare function getObjectWithoutUndefinedPropsFrom(object: object): object; export declare function getTruncatedString(str: string | null, length: number, punctuationMark?: Maybe): string; export declare interface IArrayBufferConstructor { new (byteLength: number): ArrayBuffer; } export declare interface IJson { [key: string]: any; } export declare interface IKeyValue { [key: string]: T; } export declare interface IRegExpConstructor { new (source: string, flags: string): RegExp; } export declare function isDifference(object: any, base?: any): boolean; export declare function isJsonString(str: string): boolean; export declare function isNil(value: any): value is null; export declare function isNull(value: any): value is null; export declare const isObject: (val: any) => boolean; export declare const isObjectObject: (o: any) => boolean; export declare const isPlainObject: (o: any) => boolean; export declare function isUndefined(value: any): value is undefined; export declare interface ITypedArrayConstructor { new (buffer: ArrayBuffer, byteOffset: number, length: number): TypedArray; } declare type Many = T | readonly T[]; export declare type Maybe = T | null | undefined; export declare const mergeDeep: (orig: any, ...rest: any[]) => any; declare type PropertyName = string | number | symbol; declare type PropertyPath = Many; export declare function setIn(obj: TReturn, value: TValue, field: PropertyPath): TReturn; export declare const setInWithPath: (obj: any, value: any, path: string | string[], pathIndex: number) => any; export declare function toPascalCase(string: string): string; export declare type TypedArray = Int8Array | Uint8Array | Uint8ClampedArray | Int16Array | Uint16Array | Int32Array | Uint32Array | Float32Array | Float64Array; export declare const union: (init?: United[] | undefined, ...rest: United[]) => United[]; declare type United = string | number | null | undefined | object; export declare function upsertObjectToArray(arr: any[], prop: object, newVal: any): void; export { }