diff options
author | Danijel Andjelkovic <adanijel99@gmail.com> | 2022-03-01 20:21:29 +0000 |
---|---|---|
committer | Danijel Andjelkovic <adanijel99@gmail.com> | 2022-03-01 20:21:29 +0000 |
commit | 61cb1570a3410c85a4489b97c172e3a50715f36c (patch) | |
tree | 8fe4a5b77ea54bba80abc817ce2c9ef0e79e7e66 /sandbox/testAppNevena/Front/node_modules/define-lazy-prop/index.d.ts | |
parent | 21a53d349788c99d2007cba91a923db982353b31 (diff) | |
parent | a9ee9e0a500a4a15bd0b5dcaf041f827228ed309 (diff) |
Merge branch 'researchML' into 'dev'
Research ml
See merge request igrannonica/neuronstellar!6
Diffstat (limited to 'sandbox/testAppNevena/Front/node_modules/define-lazy-prop/index.d.ts')
-rw-r--r-- | sandbox/testAppNevena/Front/node_modules/define-lazy-prop/index.d.ts | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/sandbox/testAppNevena/Front/node_modules/define-lazy-prop/index.d.ts b/sandbox/testAppNevena/Front/node_modules/define-lazy-prop/index.d.ts new file mode 100644 index 00000000..ba8998b8 --- /dev/null +++ b/sandbox/testAppNevena/Front/node_modules/define-lazy-prop/index.d.ts @@ -0,0 +1,33 @@ +/** +Define a [lazily evaluated](https://en.wikipedia.org/wiki/Lazy_evaluation) property on an object. + +@param object - Object to add property to. +@param propertyName - Name of the property to add. +@param fn - Called the first time `propertyName` is accessed. + +@example +``` +import defineLazyProp = require('define-lazy-prop'); + +const unicorn = { + // … +}; + +defineLazyProp(unicorn, 'rainbow', () => expensiveComputation()); + +app.on('user-action', () => { + doSomething(unicorn.rainbow); +}); +``` +*/ +declare function defineLazyProp< + ObjectType extends {[key: string]: unknown}, + PropertyNameType extends string, + PropertyValueType +>( + object: ObjectType, + propertyName: PropertyNameType, + fn: () => PropertyValueType +): ObjectType & {[K in PropertyNameType]: PropertyValueType}; + +export = defineLazyProp; |