import { IsAny, Iteration, KeyValuate } from "@re-do/utils"; import { ParseConfig, ShallowCycleError } from "./internal.js"; import { Root } from "../root.js"; import { References } from "../../references.js"; declare type CheckReferencesForShallowCycle = References extends Iteration ? CheckForShallowCycleRecurse, TypeSet, Seen | Current> extends never ? CheckReferencesForShallowCycle : CheckForShallowCycleRecurse, TypeSet, Seen | Current> : never; declare type CheckForShallowCycleRecurse = IsAny extends true ? never : Def extends Seen ? Seen : Def extends string ? CheckReferencesForShallowCycle, TypeSet, Seen> : never; declare type CheckForShallowCycle = CheckForShallowCycleRecurse; export declare namespace TypeSetMember { type Definition = Def; type Validate = IsAny extends true ? "any" : CheckForShallowCycle extends never ? Root.Validate : ShallowCycleError>; type Parse = Root.Parse; } export {};