@darwish/hooks-core
Version:
18 lines (17 loc) • 859 B
TypeScript
export type UseHookStates<T extends unknown[]> = T | ((args: T) => T);
export type UseListUtils<T> = {
set: (value: UseHookStates<T[]>) => void;
push: (value: T) => void;
updateAt: (index: number, value: T) => void;
insertAt: (index: number, insertValue: T) => void;
update: (predicate: (a: T, b: T) => boolean, updateValue: T) => void;
updateFirst: (predicate: (a: T, b: T) => boolean, updateValue: T) => void;
upsert: (predicate: (a: T, b: T) => boolean, updateValue: T) => void;
filter: (callbackFn: (value: T, index?: number, array?: T[]) => boolean, thisArg?: any) => void;
sort: (compareFn: (a: T, b: T) => number) => void;
removeAt: (index: number) => void;
clear: () => void;
reset: () => void;
};
declare function useList<T>(initialList: Array<T>): [Array<T>, UseListUtils<T>];
export default useList;