import * as primitives from "../Primitive"; import { deepMerge, type DeepMerge } from "../Utility/DeepMerge"; import { type PlainObject } from "../Utility/Types"; /** * `Primitive/index.ts` also exports the kind-module namespace as `Primitive` * (`Primitive.boolean.Schema`, …). That is not a builder — omitting it here is * what keeps `T.Primitive` from existing. */ type Builders = Omit; type RegistryInterface<$Registry> = { extend: (types: (params: { T: $Registry; augment: typeof deepMerge; }) => $Extension) => Registry>; }; export type Registry<$Registry> = { [$K in keyof $Registry as $K extends keyof RegistryInterface<$Registry> ? never : $K]: $Registry[$K]; } & RegistryInterface<$Registry>; export declare const registry: Registry; export {};