import { type MergeSchemaObjects } from "https://deno.land/x/valibot@v0.9.0/src/methods/merge/types.ts";
Merges schema objects types.
Type Parameters
TObjectSchemas extends (ObjectSchema<any> | ObjectSchemaAsync<any>)[]
definition: TObjectSchemas extends [infer TFirstObjectSchema] ? TFirstObjectSchema extends ObjectSchema<any> | ObjectSchemaAsync<any> ? TFirstObjectSchema["object"] : never : TObjectSchemas extends [infer TFirstObjectSchema, ...infer TRestObjectSchemas] ? TFirstObjectSchema extends ObjectSchema<any> | ObjectSchemaAsync<any> ? TRestObjectSchemas extends (ObjectSchema<any> | ObjectSchemaAsync<any>)[] ? [TKey in Exclude<keyof TFirstObjectSchema["object"], keyof MergeSchemaObjects<TRestObjectSchemas>>]: TFirstObjectSchema["object"][TKey] & MergeSchemaObjects<TRestObjectSchemas> : never : never : never