declare type TuplePrepend = [ NewElement, ...Tuple ]; declare type Consumer = (value: Value) => void; declare type IntersectionFromUnion = (Union extends unknown ? Consumer : never) extends Consumer ? ResultIntersection : never; declare type OverloadedConsumerFromUnion = IntersectionFromUnion : never>; declare type UnionLast = OverloadedConsumerFromUnion extends (a: infer A) => void ? A : never; declare type UnionExcludingLast = Exclude>; declare type TupleFromUnionRec = [RemainingUnion] extends [never] ? CurrentTuple : TupleFromUnionRec, TuplePrepend>>; export declare type TupleFromUnion = TupleFromUnionRec; export {}; //# sourceMappingURL=tuple-from-union.d.ts.map