Package: effect
Module: Chunk
Flattens a nested Chunk type.
Example (Flattening nested chunk types)
import type { Chunk } from "effect"
declare const nestedChunk: Chunk.Chunk<Chunk.Chunk<number>>
declare const nestedNonEmpty: Chunk.NonEmptyChunk<Chunk.NonEmptyChunk<string>>
type Flattened1 = Chunk.Chunk.Flatten<typeof nestedChunk> // Chunk.Chunk<number>
type Flattened2 = Chunk.Chunk.Flatten<typeof nestedNonEmpty> // Chunk.NonEmptyChunk<string>
Signature
type Flatten<T> = T extends NonEmptyChunk<NonEmptyChunk<infer A>> ? NonEmptyChunk<A>
: T extends Chunk<Chunk<infer A>> ? Chunk<A>
: never
Since v2.0.0