UNPKG

@arrows/array

Version:
33 lines (32 loc) 1.11 kB
declare type Curry1<T> = (arr: T[]) => number; declare type Curry2<T> = { (fromIndex: number): Curry1<T>; (fromIndex: number, arr: T[]): number; }; declare type Curry3 = { <T>(element: T): Curry2<T>; <T>(element: T, fromIndex: number): Curry1<T>; }; declare type _IndexOf = <T>(element: T, fromIndex: number, arr: T[]) => number; declare type CurriedIndexOf = _IndexOf & Curry3; declare type _IndexOfAll = <T>(element: T, arr: T[]) => number; declare type _IndexOfAll2 = <T>(element: T) => (arr: T[]) => number; declare type IndexOfAll = _IndexOfAll & _IndexOfAll2; declare type IndexOf = CurriedIndexOf & { all: IndexOfAll; }; /** * Functional wrapper for Array.prototype.indexOf * * Retrieves the index of the first occurrence of a value in an array. * * @param element The value to locate in the array * @param fromIndex The array index at which to begin the search * @param arr Initial array * @returns Index of the matching element or -1 * * @method all Version with implicit fromIndex (0). */ declare const indexOf: IndexOf; export { indexOf }; export default indexOf;