export declare namespace $array { function upsert(arr: T[], x: T, matcher: (x: T) => boolean, opts?: { patch: boolean; }): T[]; function equal(a: T[], b: T[]): boolean; function remove(arr: T[], matcher: (x: T) => boolean): T[]; function remove(arr: T[], item: T): T[]; function replace(arr: T[], item: T, matcher: (x: T, item: T, i: number) => boolean): void; function shuffle(arr: T[]): T[]; function trimEnd(arr: T[]): T[]; function findIndex(array: T[], matcher: (item: T, i?: number) => boolean, fromIdx?: number): number; }