@duplojs/utils 0.2.1 → 0.3.0

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.
@@ -0,0 +1,4 @@
1
+ import { type SimplifyObjectTopLevel } from "./simplifyType";
2
+ export type MergeObject<GenericFirstObject extends object, GenericSecondObject extends object> = SimplifyObjectTopLevel<GenericSecondObject & {
3
+ [Prop in Exclude<keyof GenericFirstObject, keyof GenericSecondObject>]: GenericFirstObject[Prop];
4
+ }>;
@@ -1,6 +1,9 @@
1
- export type SimplifyType<T> = T extends Record<number, unknown> ? {
2
- [K in keyof T]: SimplifyType<T[K]>;
3
- } : T;
4
- export type SimplifyTypeForce<T> = T extends object ? {
5
- [K in keyof T]: SimplifyTypeForce<T[K]>;
6
- } : T;
1
+ export type SimplifyType<GenericValue extends unknown> = GenericValue extends Record<number, unknown> ? {
2
+ [Prop in keyof GenericValue]: SimplifyType<GenericValue[Prop]>;
3
+ } : GenericValue;
4
+ export type SimplifyTypeForce<GenericValue extends unknown> = GenericValue extends object ? {
5
+ [Prop in keyof GenericValue]: SimplifyTypeForce<GenericValue[Prop]>;
6
+ } : GenericValue;
7
+ export type SimplifyObjectTopLevel<GenericObject extends object> = GenericObject extends object ? {
8
+ [Prop in keyof GenericObject]: GenericObject[Prop];
9
+ } : never;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@duplojs/utils",
3
- "version": "0.2.1",
3
+ "version": "0.3.0",
4
4
  "author": "mathcovax",
5
5
  "license": "MIT",
6
6
  "type": "module",