UNPKG

trie-typed

Version:
14 lines (13 loc) 966 B
import { IterableElementBase, IterableEntryBase } from '../../../data-structures'; import { LinearBase } from '../../../data-structures/base/linear-base'; export type EntryCallback<K, V, R> = (key: K, value: V, index: number, original: IterableEntryBase<K, V>) => R; export type ElementCallback<E, R, RT> = (element: E, index: number, original: IterableElementBase<E, R>) => RT; export type ReduceEntryCallback<K, V, R> = (accumulator: R, value: V, key: K, index: number, original: IterableEntryBase<K, V>) => R; export type ReduceElementCallback<E, R, RT = E> = (accumulator: RT, element: E, index: number, original: IterableElementBase<E, R>) => RT; export type ReduceLinearCallback<E, RT = E> = (accumulator: RT, element: E, index: number, original: LinearBase<E>) => RT; export type IterableElementBaseOptions<E, R> = { toElementFn?: (rawElement: R) => E; }; export type LinearBaseOptions<E, R> = IterableElementBaseOptions<E, R> & { maxLen?: number; };