From a84f42ee914d248b2afca6671fd0350678cdb13f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julien=20Valverd=C3=A9?= Date: Sun, 25 Feb 2024 02:41:42 +0100 Subject: [PATCH] Extend fix --- src/util/extend.ts | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/util/extend.ts b/src/util/extend.ts index ce86873..9df1ca1 100644 --- a/src/util/extend.ts +++ b/src/util/extend.ts @@ -22,30 +22,30 @@ import { CommonKeys } from "." // TODO: use OverrideProperties from type-fest? export type Extend = ( - T extends [ + T extends readonly [ infer Super, infer Self, ...infer Rest extends readonly object[], ] ? Pick> extends Pick> - ? Extend<[ + ? Extend> & Self, ...Rest, ]> : never - : T extends [infer Self] + : T extends readonly [infer Self] ? Self : {} ) export type Extendable = ( - T extends [ + T extends readonly [ infer Super, infer Self, ...infer Rest extends readonly object[], ] ? Pick> extends Pick> - ? Extendable<[ + ? Extendable> & Self, ...Rest, ]> @@ -54,7 +54,7 @@ export type Extendable = ( ) export type NonExtendableKeys = ( - T extends [ + T extends readonly [ infer Super extends object, infer Self extends object, ...infer Rest extends readonly object[], @@ -63,7 +63,7 @@ export type NonExtendableKeys = ( ? never : K }[keyof Super & keyof Self] - | NonExtendableKeys<[ + | NonExtendableKeys