import { Intersection, Union } from "../meta-types"; import { Tail, Head, Get, HasKeyIn, Merge } from "../utils"; import { ParseSchema } from "."; import { MergeSubSchema, RemoveInvalidAdditionalItems } from "./utils"; export declare type ParseAnyOfSchema = Union, S>>; declare type RecurseOnAnyOfSchema = { stop: R; continue: S extends any[] ? RecurseOnAnyOfSchema, P, R | (HasKeyIn extends true ? Intersection>, ParseSchema, Head>>> : ParseSchema, RemoveInvalidAdditionalItems>>>)> : never; }[S extends [any, ...any[]] ? "continue" : "stop"]; export {};