/**
 * Represents a set of operations that can be performed on an array.
 *
 * @template T - The type of elements in the array.
 */
type Return<T> = {
    array: T[];
    set: (a: T[]) => void;
    push: (element: T) => void;
    filter: (callback: (element: T, index: number, array: T[]) => boolean) => void;
    update: (index: number, newElement: T) => void;
    remove: (index: number) => void;
    clear: () => void;
};
type OnChange<T> = (value: T) => void;
type UseArray = <T>(defaultValue: T[], callbackOnUpdate?: OnChange<T[]>) => Return<T>;
export declare const useArray: UseArray;
export {};
//# sourceMappingURL=useArray.d.ts.map