export type tillFn = (dones: boolean[]) => boolean; export type reduceFn = (acc: U, v: T, i: number, x: Iterable) => U; export type calledFn = (v: T, i: number, x: Iterable) => void; export type testFn = (v: T, i: number, x: Iterable) => boolean; export type mapFn = (v: T, i: number, x: Iterable) => U; export type combineFn = (a: T, b: T) => T; export type compareFn = (a: T, b: T) => number; export type getFn = () => T; export type Entries = Iterable<[number, T]>; export type Lists = [Iterable, Iterable];