json-schema-to-decoders
Version:
A utility for converting JSON schema definition to decoders
14 lines (13 loc) • 575 B
TypeScript
import * as D from "decoders";
/**
* Utility for converting a type union (A | B) into a type intersection (A & B)
* https://stackoverflow.com/a/50375286/2291454)
*/
declare type UtoI<U> = (U extends any ? (k: U) => void : never) extends (k: infer I) => void ? I : never;
/**
* The `union` decoder combines multiple object decoders together with a union relationship.
*
* @param decoders one or more object decoders to combine
*/
export declare const union: <T extends readonly D.Decoder<any>[]>(...decoders: T) => D.Decoder<UtoI<D.DecoderType<T[number]>>>;
export {};