Schemable
import type { Schemable } from "https://github.gh-proxy.cn/raw.githubusercontent.com/baetheus/fun/main/schemable.ts";A Schemable is the union of all schemable methods. This allows one to build an arbitrary Schema using the Schemable interface, then pass a concrete Schemable implementation to the Schema. Thus, one can build a single model and produce decoders, guards, or jsonschema from that model.
interface Schemable <U extends Kind> extends UnknownSchemable<U>, StringSchemable<U>, NumberSchemable<U>, BooleanSchemable<U>, LiteralSchemable<U>, NullableSchemable<U>, UndefinableSchemable<U>, RecordSchemable<U>, ArraySchemable<U>, TupleSchemable<U>, StructSchemable<U>, PartialSchemable<U>, IntersectSchemable<U>, UnionSchemable<U>, LazySchemable<U>, Hold<U> {}