ts-gems 3.11.0 → 3.11.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/mutable.d.ts CHANGED
@@ -44,7 +44,7 @@ export type DeeperMutable<T> = {
44
44
  Exclude<T[K], undefined>,
45
45
  never,
46
46
  K
47
- >]: Exclude<T[K], undefined> extends (infer U)[] // Deep process arrays
47
+ >]: NonNullable<T[K]> extends (infer U)[] // Deep process arrays
48
48
  ? DeeperMutable<U>[]
49
49
  : // Do not deep process No-Deep values
50
50
  IfNoDeepValue<NonNullable<T[K]>> extends true
package/lib/nullish.d.ts CHANGED
@@ -25,10 +25,9 @@ export type DeepNullish<T> = {
25
25
  * Make all properties in T nullish deeply including arrays
26
26
  */
27
27
  export type DeeperNullish<T> = {
28
- [K in keyof T as IfNever<Exclude<T[K], undefined>, never, K>]?: Exclude<
28
+ [K in keyof T as IfNever<Exclude<T[K], undefined>, never, K>]?: NonNullable<
29
29
  // Deep process arrays
30
- T[K],
31
- undefined
30
+ T[K]
32
31
  > extends (infer U)[]
33
32
  ? DeeperNullish<U>[] | null
34
33
  : // Do not deep process No-Deep values
package/lib/omit.d.ts CHANGED
@@ -52,10 +52,13 @@ export type DeepOmitTypes<T, X> = {
52
52
  * Omit all function properties in T deeply including arrays
53
53
  */
54
54
  export type DeeperOmitTypes<T, X> = {
55
- [K in keyof T as IfNever<Exclude<T[K], undefined | X>, never, K>]: Exclude<
55
+ [K in keyof T as IfNever<
56
+ Exclude<T[K], undefined | X>,
57
+ never,
58
+ K
59
+ >]: NonNullable<
56
60
  // Deep process arrays // Do not deep process No-Deep values
57
- T[K],
58
- undefined
61
+ T[K]
59
62
  > extends (infer U)[]
60
63
  ? DeeperOmitTypes<U, X>[]
61
64
  : IfNoDeepValue<NonNullable<T[K]>> extends true
package/lib/partial.d.ts CHANGED
@@ -32,10 +32,9 @@ export type DeepPartial<T> = {
32
32
  * Partial but deeply including arrays
33
33
  */
34
34
  export type DeeperPartial<T> = {
35
- [K in keyof T as IfNever<Exclude<T[K], undefined>, never, K>]?: Exclude<
35
+ [K in keyof T as IfNever<Exclude<T[K], undefined>, never, K>]?: NonNullable<
36
36
  // Deep process arrays
37
- T[K],
38
- undefined
37
+ T[K]
39
38
  > extends (infer U)[]
40
39
  ? DeeperPartial<U>[]
41
40
  : // Do not deep process No-Deep values
package/lib/readonly.d.ts CHANGED
@@ -30,7 +30,7 @@ export type DeeperReadonly<T> = {
30
30
  Exclude<T[K], undefined>,
31
31
  never,
32
32
  K
33
- >]: Exclude<T[K], undefined> extends (infer U)[] // Deep process arrays
33
+ >]: NonNullable<T[K]> extends (infer U)[] // Deep process arrays
34
34
  ? DeeperReadonly<U>[]
35
35
  : // Do not deep process No-Deep values
36
36
  IfNoDeepValue<Exclude<T[K], undefined>> extends true
package/lib/required.d.ts CHANGED
@@ -23,7 +23,7 @@ export type DeepRequired<T> = {
23
23
  >]-?: IfNoDeepValue<Exclude<T[K], undefined>> extends true // Do not deep process No-Deep values
24
24
  ? Exclude<T[K], undefined>
25
25
  : // Deep process objects
26
- DeepRequired<Exclude<T[K], undefined>>;
26
+ DeepRequired<NonNullable<T[K]>>;
27
27
  };
28
28
 
29
29
  /**
@@ -38,7 +38,7 @@ export type DeeperRequired<T> = {
38
38
  IfNoDeepValue<NonNullable<T[K]>> extends true
39
39
  ? Exclude<T[K], undefined>
40
40
  : // Deep process objects
41
- DeepRequired<Exclude<T[K], undefined>>;
41
+ DeepRequired<NonNullable<T[K]>>;
42
42
  };
43
43
 
44
44
  /**
@@ -89,7 +89,7 @@ export type DeepPickRequired<T> = {
89
89
  : K]: IfNoDeepValue<NonNullable<T[K]>> extends true // Do not deep process No-Deep values
90
90
  ? T[K]
91
91
  : // Deep process objects
92
- DeepPickRequired<Exclude<T[K], undefined>>;
92
+ DeepPickRequired<NonNullable<T[K]>>;
93
93
  };
94
94
 
95
95
  /**
@@ -106,7 +106,7 @@ export type DeepOmitRequired<T> = {
106
106
  : K]?: IfNoDeepValue<NonNullable<T[K]>> extends true // Do not deep process No-Deep values
107
107
  ? T[K]
108
108
  : // Deep process objects
109
- DeepOmitRequired<Exclude<T[K], undefined>>;
109
+ DeepOmitRequired<NonNullable<T[K]>>;
110
110
  };
111
111
 
112
112
  /**
@@ -126,7 +126,7 @@ export type DeeperPickRequired<T> = {
126
126
  IfNoDeepValue<NonNullable<T[K]>> extends true
127
127
  ? T[K]
128
128
  : // Deep process objects
129
- DeeperPickRequired<Exclude<T[K], undefined>>;
129
+ DeeperPickRequired<NonNullable<T[K]>>;
130
130
  };
131
131
 
132
132
  /**
@@ -146,5 +146,5 @@ export type DeeperOmitRequired<T> = {
146
146
  IfNoDeepValue<NonNullable<T[K]>> extends true
147
147
  ? T[K]
148
148
  : // Deep process objects
149
- DeeperOmitRequired<Exclude<T[K], undefined>>;
149
+ DeeperOmitRequired<NonNullable<T[K]>>;
150
150
  };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "ts-gems",
3
3
  "description": "Valuable typing extensions for TypeScript",
4
- "version": "3.11.0",
4
+ "version": "3.11.2",
5
5
  "license": "MIT",
6
6
  "module": "./lib/index.mjs",
7
7
  "main": "./lib/index.cjs",