@shopify/useful-types
Advanced tools
Comparing version 4.0.2 to 4.0.3-beta-ut.0
export declare type ArrayElement<T> = T extends (infer U)[] ? U : never; | ||
export declare type DeepPartial<T> = { | ||
[P in keyof T]?: T[P] extends (infer U)[] ? DeepPartial<U>[] : T[P] extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>> : DeepPartial<T[P]>; | ||
[P in keyof T]?: T[P] extends infer TP ? TP extends (infer U)[] ? DeepPartial<U>[] : TP extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>> : DeepPartial<T[P]> : T[P]; | ||
}; | ||
@@ -26,7 +26,7 @@ export declare type IfEmptyObject<Obj, If, Else = never> = keyof Obj extends { | ||
export declare type ExtendedWindow<T> = Window & typeof globalThis & T; | ||
declare type DeepOmitHelper<T, K> = { | ||
[P in keyof T]: T[P] extends infer TP ? TP extends (infer U)[] ? DeepOmit<U, K>[] : DeepOmit<TP, K> : T[P]; | ||
}; | ||
declare type Primitive = string | Function | number | boolean | Symbol | undefined | null; | ||
declare type DeepOmitHelper<T, K extends keyof T> = { | ||
[P in K]: T[P] extends infer TP ? TP extends Primitive ? TP : TP extends any[] ? DeepOmitArray<TP, K> : DeepOmit<TP, K> : never; | ||
}; | ||
export declare type DeepOmit<T, K> = T extends Primitive ? T : DeepOmitHelper<T, Exclude<keyof T, K>>; | ||
export declare type DeepOmit<T, K> = T extends Primitive ? T : K extends keyof T ? Omit<DeepOmitHelper<T, K>, K> : DeepOmitHelper<T, K>; | ||
export declare type DeepOmitArray<T extends any[], K> = { | ||
@@ -33,0 +33,0 @@ [P in keyof T]: DeepOmit<T[P], K>; |
{ | ||
"name": "@shopify/useful-types", | ||
"version": "4.0.2", | ||
"version": "4.0.3-beta-ut.0", | ||
"license": "MIT", | ||
@@ -44,3 +44,3 @@ "description": "A few handy TypeScript types", | ||
}, | ||
"gitHead": "70feded397084daea784a8c5a523a61ac4fdb34c" | ||
"gitHead": "deaeb752e80d330b0a0e881dde6c4be869dbd98d" | ||
} |
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
No v1
QualityPackage is not semver >=1. This means it is not stable and does not support ^ ranges.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
12893
1