diff --git a/src/lib.ts b/src/lib.ts index e69de29..ea1ff40 100644 --- a/src/lib.ts +++ b/src/lib.ts @@ -0,0 +1 @@ +export { ExtendableZodSchemaObject } from "./traits/ExtendableZodSchemaObject" diff --git a/src/util/extend.ts b/src/util/extend.ts index 21aa4ab..baa104d 100644 --- a/src/util/extend.ts +++ b/src/util/extend.ts @@ -5,12 +5,12 @@ */ export type CommonKeys = Extract -/** - * Merges an inheritance tree defined by an array of types, considering overrides. - * @template T - An array of types representing the inheritance tree. - */ -export type Extend = ( - T extends [infer Super, infer Self, ...infer Rest] +export type Extend = ( + T extends [ + infer Super, + infer Self, + ...infer Rest extends object[], + ] ? Pick> extends Pick> ? Extend<[ Omit> & Self, @@ -19,7 +19,7 @@ export type Extend = ( : never : T extends [infer Self] ? Self - : void + : {} ) /**