Skip to content
Michael Poteat edited this page Feb 27, 2023 · 3 revisions

hkt-toolbelt / List

Namespace: List

Interfaces

Type Aliases

List

Ƭ List: unknown[]

Defined in

list/list.ts:1


_$every

Ƭ _$every<F, T, O>: T extends [infer Head, ...(infer Rest)] ? _$every<F, Rest, _$and<O, $<F, _$cast<Head, _$inputOf<F>>>>> : O

Type parameters

Name Type
F extends Kind<(x: never) => boolean>
T extends unknown[]
O extends boolean = true

Defined in

list/every.ts:3


_$filter

Ƭ _$filter<F, X, O>: X extends [infer Head, ...(infer Tail)] ? $<F, _$cast<Head, _$inputOf<F>>> extends true ? _$filter<F, Tail, [...O, Head]> : _$filter<F, Tail, O> : O

Type parameters

Name Type
F extends Kind
X extends unknown[]
O extends unknown[] = []

Defined in

list/filter.ts:3


_$find

Ƭ _$find<F, X>: X extends [infer Head, ...(infer Tail)] ? $<F, _$cast<Head, _$inputOf<F>>> extends true ? Head : _$find<F, Tail> : never

Type parameters

Name Type
F extends Kind
X extends unknown[]

Defined in

list/find.ts:3


_$first

Ƭ _$first<T>: T extends [] ? never : T[0]

Type parameters

Name Type
T extends unknown[]

Defined in

list/first.ts:3


_$includes

Ƭ _$includes<F, X>: X extends [infer Head, ...(infer Tail)] ? $<F, _$cast<Head, _$inputOf<F>>> extends true ? true : _$includes<F, Tail> : false

Type parameters

Name Type
F extends Kind
X extends unknown[]

Defined in

list/includes.ts:3


_$isVariadic

Ƭ _$isVariadic<T>: number extends T["length"] ? true : false

Type parameters

Name Type
T extends unknown[]

Defined in

list/is-variadic.ts:3


_$last

Ƭ _$last<T>: T extends [infer X] ? X : T extends [unknown, ...(infer Tail)] ? _$last<Tail> : T extends [...unknown[], infer X] ? X : T[number]

Type parameters

Name Type
T extends readonly unknown[]

Defined in

list/last.ts:3


_$length

Ƭ _$length<T>: T["length"]

Type parameters

Name Type
T extends unknown[]

Defined in

list/length.ts:3


_$map

Ƭ _$map<T, X>: { [key in keyof X]: $<T, _$cast<X[key], _$inputOf<T>>> }

Type parameters

Name Type
T extends Kind
X extends unknown[]

Defined in

list/map.ts:3


_$pair

Ƭ _$pair<T, O>: T extends [infer X1, infer X2, ...(infer Rest)] ? _$pair<[X2, ...Rest], [...O, [X1, X2]]> : number extends T["length"] ? [T[number], T[number]][] : O

Type parameters

Name Type
T extends unknown[]
O extends unknown[][] = []

Defined in

list/pair.ts:3


_$pop

Ƭ _$pop<T>: T extends [...(infer Head), unknown] ? Head : never

Type parameters

Name Type
T extends readonly unknown[]

Defined in

list/pop.ts:3


_$push

Ƭ _$push<X, T>: [...T, X]

Type parameters

Name Type
X X
T extends unknown[]

Defined in

list/push.ts:3


_$reduce

Ƭ _$reduce<F, X, O>: 1 extends 0 ? never : X extends [infer H, ...(infer T)] ? $<$<F, _$cast<O, _$inputOf<F>>>, _$cast<H, _$inputOf<_$returnType<F & { [_]: _$cast<O, _$inputOf<F>> }["f"]>>>> extends infer R ? _$reduce<F, T, R> : never : O

Type parameters

Name Type
F extends Kind<(x: never) => Kind>
X extends unknown[]
O O

Defined in

list/reduce.ts:3


_$reverse

Ƭ _$reverse<T, O>: T extends [infer Head, ...(infer Tail)] ? _$reverse<Tail, [Head, ...O]> : T extends [] ? O : [..._$reverse2<T>, ...O]

Type parameters

Name Type
T extends unknown[]
O extends unknown[] = []

Defined in

list/reverse.ts:14


_$shift

Ƭ _$shift<T>: T extends [unknown, ...(infer Tail)] ? Tail : never

Type parameters

Name Type
T extends unknown[]

Defined in

list/shift.ts:3


_$slice

Ƭ _$slice<T, N>: _$isNatural<N> extends true ? _$slice2<T, _$toList<N>> : never

Type parameters

Name Type
T extends unknown[]
N extends Number

Defined in

list/slice.ts:11


_$some

Ƭ _$some<F, T, O>: 0 extends 1 ? never : T extends [infer Head, ...(infer Rest)] ? _$some<F, Rest, _$or<O, $<F, _$cast<Head, _$inputOf<F>>>>> : O

Type parameters

Name Type
F extends Kind<(x: never) => boolean>
T extends unknown[]
O extends boolean = false

Defined in

list/some.ts:3


_$times

Ƭ _$times<N>: _$times2<_$toList<N>>

Type parameters

Name Type
N extends Number

Defined in

list/times.ts:15


_$unshift

Ƭ _$unshift<X, T>: [X, ...T]

Type parameters

Name Type
X X
T extends unknown[]

Defined in

list/unshift.ts:3

Clone this wiki locally