declare module "usefuljs" { export function removeA(arr: T[]):T[]; export function escape_dq(str:string):string; export function escape_HTML(html_str:string):string; export function diffObjs(v1:T,v2:R): Partial[]; export function arr_last(arr: T[]): T; export function prepend(value:T,array:T[]):T[]; export function formatBytes(a:number,b:number): string; export function array_push(arr:T[], el:T): void; export function array_remove(array:T[], element:T): T[]; export function arr_dedup(array:T[]):T[]; export function replaceAll(str:string,find:string,replace:string):string; export function getDistFromBottom(element:HTMLElement):void; export function obj2arr(obj:O): T[]; export function form_validate(value:string,type:string,min:number|null,max:number|null,length:number):boolean; export function validateEmail(email:string):boolean; export function isInt(value:number):boolean; export function isNum(value:string):boolean; export function time_in_minutes(time:string):number; export function arr_chunk(arr:T[],length:number):T[][]; export function asyncForEach(arr:T[],callback:Function):void; export function obj_sort(name:string,length:boolean,reverse:boolean):T; export function arr_rm(arr:T[],element:T,mutate:boolean|null):T[]|void; export function arr_rmi(arr:T[],index:number,mutate:boolean|null):T[] | void; export function uuidv4():string; export function unique_id():string; export function shortuid():string; export function matching_array(ar0:T[],ar1:T[]):T[]; export function obj_prop_rename(obj:T,oldName:string,newName:string):R; export function obj_filter(obj:T,predicate:Function):Partial; export function obj_key_filter(obj:T,predicate:Function):Partial; export function ucfirst(text:string):string; export function arr2Obj(arr:T[],keyname:string):O; export function sleep(milliseconds:number):Promise; export function f_arr(test_array:T[]):T[]; export function f_obj(obj:T):Partial; export function colourgen():string; export function intgen(low:number,high:number):number; export function arrobj2objarr(arrobj:T[]):O; export function arrobj2obj(arrobj:T[],column:string):O; export function hexCode(y:string):string; export function toCSV(json:T[]):string; export function ajax(arg:object):Promise; export function crc32(arg:string):string; export function substrI(input:string,delimiter:string,index:number):string; export function PromiseFallback(pms:(()=>Promise)[],retry?:number):Promise; export function ndjson_parse(jsonString:string):T[]; }