Type Alias FlatStream<T, Depth>

FlatStream<T, Depth>: {
    done: Stream<T>;
    recur: T extends Iterable<infer Content>
        ? FlatStream<Content, MinusOne<Depth>>
        : Stream<T>;
}[Depth extends 0
    ? "done"
    : "recur"]

Type Parameters

  • T
  • Depth extends number