type-plus 5.0.0 → 5.1.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.
package/README.md CHANGED
@@ -557,6 +557,7 @@ nominalMatch(b1, b2) // false
557
557
  - `AnyFunction<P, R>`: a generic type for any function
558
558
  - `ExtractFunction<F>`: extract the function signature from a type `F`.
559
559
  - `extractFunction(fn: F)`: adjust type of `fn` to its function signature only.
560
+ - `inspect<T>(value: T, inspector: (v: T) => void)`: inspect a value and return it.
560
561
 
561
562
  ## Functional Types
562
563
 
@@ -1,5 +1,6 @@
1
1
  /**
2
2
  * Gets value type from Promise
3
+ * @deprecated Use `Awaited<T>` instead.
3
4
  */
4
5
  export type PromiseValue<P extends Promise<any>> = P extends Promise<infer T> ? T : never;
5
6
  //# sourceMappingURL=PromiseValue.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PromiseValue.d.ts","sourceRoot":"","sources":["../../ts/promise/PromiseValue.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA"}
1
+ {"version":3,"file":"PromiseValue.d.ts","sourceRoot":"","sources":["../../ts/promise/PromiseValue.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA"}
@@ -1,4 +1,5 @@
1
1
  export * from './as.js';
2
+ export * from './inspect.js';
2
3
  export type { NonNull } from './NonNull.js';
3
4
  export type { NonUndefined } from './NonUndefined.js';
4
5
  export type { Widen } from './Widen.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../ts/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAA;AACvB,YAAY,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAC3C,YAAY,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACrD,YAAY,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAEvC;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,IAAI,CAAC,SAAS,IAAI,GAC/D,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GACb,CAAC,CAAC,SAAS,IAAI,GACb,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAC7C,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GACf,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAC7C,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAC7C,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CACd,CAAA;AAEH;;;;;;;;;;;;;;;;;GAiBG;AACF,MAAM,MAAM,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,IAAI,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../ts/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAA;AACvB,cAAc,cAAc,CAAA;AAC5B,YAAY,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAC3C,YAAY,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACrD,YAAY,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAEvC;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,IAAI,CAAC,SAAS,IAAI,GAC/D,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GACb,CAAC,CAAC,SAAS,IAAI,GACb,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAC7C,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GACf,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAC7C,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAC7C,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CACd,CAAA;AAEH;;;;;;;;;;;;;;;;;GAiBG;AACF,MAAM,MAAM,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,IAAI,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA"}
@@ -15,4 +15,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./as.js"), exports);
18
+ __exportStar(require("./inspect.js"), exports);
18
19
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../ts/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAuB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../ts/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAuB;AACvB,+CAA4B"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Inspects the value and returns it.
3
+ */
4
+ export declare function inspect<T>(value: T, inspector: (value: T) => void): T;
5
+ //# sourceMappingURL=inspect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inspect.d.ts","sourceRoot":"","sources":["../../ts/utils/inspect.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,GAAG,CAAC,CAGrE"}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.inspect = void 0;
4
+ /**
5
+ * Inspects the value and returns it.
6
+ */
7
+ function inspect(value, inspector) {
8
+ inspector(value);
9
+ return value;
10
+ }
11
+ exports.inspect = inspect;
12
+ //# sourceMappingURL=inspect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inspect.js","sourceRoot":"","sources":["../../ts/utils/inspect.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,SAAgB,OAAO,CAAI,KAAQ,EAAE,SAA6B;IAChE,SAAS,CAAC,KAAK,CAAC,CAAA;IAChB,OAAO,KAAK,CAAA;AACd,CAAC;AAHD,0BAGC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=inspect.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inspect.spec.d.ts","sourceRoot":"","sources":["../../ts/utils/inspect.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var globals_1 = require("@jest/globals");
4
+ var index_js_1 = require("./index.js");
5
+ describe("".concat(index_js_1.inspect.name, "()"), function () {
6
+ it('should return the same value', function () {
7
+ var value = { a: 1, b: 2 };
8
+ expect((0, index_js_1.inspect)(value, function () { })).toBe(value);
9
+ });
10
+ it('should call the inspector', function () {
11
+ var value = { a: 1, b: 2 };
12
+ var spy = globals_1.jest.fn();
13
+ (0, index_js_1.inspect)(value, spy);
14
+ expect(spy).toBeCalledWith(value);
15
+ });
16
+ });
17
+ //# sourceMappingURL=inspect.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inspect.spec.js","sourceRoot":"","sources":["../../ts/utils/inspect.spec.ts"],"names":[],"mappings":";;AAAA,yCAAoC;AACpC,uCAAoC;AAEpC,QAAQ,CAAC,UAAG,kBAAO,CAAC,IAAI,OAAI,EAAE;IAC5B,EAAE,CAAC,8BAA8B,EAAE;QACjC,IAAM,KAAK,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;QAC5B,MAAM,CAAC,IAAA,kBAAO,EAAC,KAAK,EAAE,cAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAC/C,CAAC,CAAC,CAAA;IACF,EAAE,CAAC,2BAA2B,EAAE;QAC9B,IAAM,KAAK,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;QAC5B,IAAM,GAAG,GAAG,cAAI,CAAC,EAAE,EAAE,CAAA;QACrB,IAAA,kBAAO,EAAC,KAAK,EAAE,GAAG,CAAC,CAAA;QACnB,MAAM,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAA;IACnC,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -1,5 +1,6 @@
1
1
  /**
2
2
  * Gets value type from Promise
3
+ * @deprecated Use `Awaited<T>` instead.
3
4
  */
4
5
  export type PromiseValue<P extends Promise<any>> = P extends Promise<infer T> ? T : never;
5
6
  //# sourceMappingURL=PromiseValue.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PromiseValue.d.ts","sourceRoot":"","sources":["../../ts/promise/PromiseValue.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA"}
1
+ {"version":3,"file":"PromiseValue.d.ts","sourceRoot":"","sources":["../../ts/promise/PromiseValue.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA"}
@@ -1,4 +1,5 @@
1
1
  export * from './as.js';
2
+ export * from './inspect.js';
2
3
  export type { NonNull } from './NonNull.js';
3
4
  export type { NonUndefined } from './NonUndefined.js';
4
5
  export type { Widen } from './Widen.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../ts/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAA;AACvB,YAAY,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAC3C,YAAY,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACrD,YAAY,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAEvC;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,IAAI,CAAC,SAAS,IAAI,GAC/D,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GACb,CAAC,CAAC,SAAS,IAAI,GACb,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAC7C,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GACf,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAC7C,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAC7C,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CACd,CAAA;AAEH;;;;;;;;;;;;;;;;;GAiBG;AACF,MAAM,MAAM,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,IAAI,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../ts/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAA;AACvB,cAAc,cAAc,CAAA;AAC5B,YAAY,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAC3C,YAAY,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACrD,YAAY,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAEvC;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,IAAI,CAAC,SAAS,IAAI,GAC/D,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GACb,CAAC,CAAC,SAAS,IAAI,GACb,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAC7C,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GACf,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAC7C,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAC7C,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CACd,CAAA;AAEH;;;;;;;;;;;;;;;;;GAiBG;AACF,MAAM,MAAM,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,IAAI,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA"}
@@ -1,2 +1,3 @@
1
1
  export * from './as.js';
2
+ export * from './inspect.js';
2
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../ts/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../ts/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAA;AACvB,cAAc,cAAc,CAAA"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Inspects the value and returns it.
3
+ */
4
+ export declare function inspect<T>(value: T, inspector: (value: T) => void): T;
5
+ //# sourceMappingURL=inspect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inspect.d.ts","sourceRoot":"","sources":["../../ts/utils/inspect.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,GAAG,CAAC,CAGrE"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Inspects the value and returns it.
3
+ */
4
+ export function inspect(value, inspector) {
5
+ inspector(value);
6
+ return value;
7
+ }
8
+ //# sourceMappingURL=inspect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inspect.js","sourceRoot":"","sources":["../../ts/utils/inspect.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,UAAU,OAAO,CAAI,KAAQ,EAAE,SAA6B;IAChE,SAAS,CAAC,KAAK,CAAC,CAAA;IAChB,OAAO,KAAK,CAAA;AACd,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=inspect.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inspect.spec.d.ts","sourceRoot":"","sources":["../../ts/utils/inspect.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,15 @@
1
+ import { jest } from '@jest/globals';
2
+ import { inspect } from './index.js';
3
+ describe(`${inspect.name}()`, () => {
4
+ it('should return the same value', () => {
5
+ const value = { a: 1, b: 2 };
6
+ expect(inspect(value, () => { })).toBe(value);
7
+ });
8
+ it('should call the inspector', () => {
9
+ const value = { a: 1, b: 2 };
10
+ const spy = jest.fn();
11
+ inspect(value, spy);
12
+ expect(spy).toBeCalledWith(value);
13
+ });
14
+ });
15
+ //# sourceMappingURL=inspect.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inspect.spec.js","sourceRoot":"","sources":["../../ts/utils/inspect.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAA;AACpC,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AAEpC,QAAQ,CAAC,GAAG,OAAO,CAAC,IAAI,IAAI,EAAE,GAAG,EAAE;IACjC,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;QACtC,MAAM,KAAK,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;QAC5B,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAC/C,CAAC,CAAC,CAAA;IACF,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACnC,MAAM,KAAK,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;QAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,EAAE,CAAA;QACrB,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;QACnB,MAAM,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAA;IACnC,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "type-plus",
3
- "version": "5.0.0",
3
+ "version": "5.1.0",
4
4
  "description": "Provides additional types for TypeScript.",
5
5
  "homepage": "https://github.com/unional/type-plus",
6
6
  "bugs": {
@@ -39,11 +39,13 @@
39
39
  "@changesets/cli": "^2.25.2",
40
40
  "@commitlint/cli": "^17.0.2",
41
41
  "@commitlint/config-conventional": "^17.0.2",
42
+ "@jest/globals": "^29.3.1",
42
43
  "@repobuddy/jest": "^2.1.0",
43
44
  "@size-limit/preset-small-lib": "^8.0.0",
44
45
  "@types/jest": "^29.0.0",
45
- "@types/node": "^14",
46
+ "@types/node": "^18.0.0",
46
47
  "@typescript-eslint/eslint-plugin": "^5.28.0",
48
+ "@typescript-eslint/parser": "^5.48.0",
47
49
  "@unional/fixture": "^3.0.0",
48
50
  "assertron": "^11.0.1",
49
51
  "cross-env": "^7.0.3",
@@ -67,7 +69,7 @@
67
69
  "typedoc-plugin-extras": "^2.2.3",
68
70
  "typescript": "4.9.4"
69
71
  },
70
- "packageManager": "pnpm@7.18.1",
72
+ "packageManager": "pnpm@7.22.0",
71
73
  "size-limit": [
72
74
  {
73
75
  "path": "./cjs/index.js",
@@ -1,4 +1,5 @@
1
1
  /**
2
2
  * Gets value type from Promise
3
+ * @deprecated Use `Awaited<T>` instead.
3
4
  */
4
5
  export type PromiseValue<P extends Promise<any>> = P extends Promise<infer T> ? T : never
package/ts/utils/index.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  export * from './as.js'
2
+ export * from './inspect.js'
2
3
  export type { NonNull } from './NonNull.js'
3
4
  export type { NonUndefined } from './NonUndefined.js'
4
5
  export type { Widen } from './Widen.js'
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Inspects the value and returns it.
3
+ */
4
+ export function inspect<T>(value: T, inspector: (value: T) => void): T {
5
+ inspector(value)
6
+ return value
7
+ }