export declare function dedupArray<T>(array: T[]): T[];
export declare function chunk<T>(array: T[], chunkSize: number): T[][];
export declare function findLastIndex<T>(array: T[], predicate: (value: T, index: number, obj: T[]) => boolean): number;
export declare function findLast<T>(array: T[], predicate: (value: T, index: number, obj: T[]) => boolean): T | undefined;
export declare function filterAsync<T>(array: T[], predicate: (value: T, index: number, obj: T[]) => Promise<boolean>): Promise<T[]>;
export declare function mapAsync<T, U>(array: T[], mapper: (value: T, index: number, obj: T[]) => Promise<U>): Promise<U[]>;
export declare function reduceAsync<T, U>(array: T[], reducer: (accumulator: U, currentValue: T, currentIndex: number, obj: T[]) => Promise<U>, initialValue: U): Promise<U>;
export declare function forEachAsync<T>(array: T[], callback: (value: T, index: number, obj: T[]) => Promise<void>): Promise<void>;
export declare function someAsync<T>(array: T[], predicate: (value: T, index: number, obj: T[]) => Promise<boolean>): Promise<boolean>;
export declare function everyAsync<T>(array: T[], predicate: (value: T, index: number, obj: T[]) => Promise<boolean>): Promise<boolean>;
export declare function includesAsync<T>(array: T[], predicate: (value: T, index: number, obj: T[]) => Promise<boolean>): Promise<boolean>;
export declare function isArrayOf<T>(array: unknown, predicate: (value: unknown) => value is T): array is T[];
export declare function isUint8Array(value: unknown): value is Uint8Array;
