declare type AnyObject = {
    [key: string]: any;
};
interface Arr<T = any[]> {
    readonly length: number | null;
    value: T;
    stringify(char?: string): string;
    fill<T extends AnyObject>(size: number, data: T | ((index: number) => T)): T[];
    union<T = any>(arr: T[]): T[];
    has(value: unknown): boolean;
    remove(value: unknown): Arr;
    add(value: unknown): Arr;
    indexOf(value: unknown): number | null;
    find<T = any>(handler: (entry: T, index: number, array: T[]) => boolean | void, defaultValue?: any, breakValue?: any): T | typeof defaultValue | null;
    each<T = any>(handler: (entry: T, index: number, array: T[]) => boolean | void): Arr;
    map<T = any, R = any>(handler: (entry: T, index: number, array: T[], newArray: R[]) => R): Arr;
    sort<T = any, R = any>(handler: (a: T, b: T) => R): Arr;
}
declare function Arr(this: Arr, arr: Arr['value']): Arr;
declare const _default: <T = any[]>(arr?: T | undefined) => Arr<T>;
export default _default;
//# sourceMappingURL=index.d.ts.map