import type { TSchema, SchemaOptions } from '../schema/index'; import type { Static } from '../static/index'; import { Kind } from '../symbols/index'; type TIntersectStatic = T extends [infer L extends TSchema, ...infer R extends TSchema[]] ? TIntersectStatic> : Acc; export type TUnevaluatedProperties = undefined | TSchema | boolean; export interface IntersectOptions extends SchemaOptions { unevaluatedProperties?: TUnevaluatedProperties; } export interface TIntersect extends TSchema, IntersectOptions { [Kind]: 'Intersect'; static: TIntersectStatic; type?: 'object'; allOf: [...T]; } export {};