diff options
author | Danijel Andjelkovic <adanijel99@gmail.com> | 2022-03-01 21:54:41 +0100 |
---|---|---|
committer | Danijel Andjelkovic <adanijel99@gmail.com> | 2022-03-01 21:54:41 +0100 |
commit | 6c8128f9fd5a5d0be115806c35a21b3d683df8d6 (patch) | |
tree | f46c2f6b3b9b294ff32bd75c08ccdc9e7a8cc4ef /sandbox/testAppNevena/Front/node_modules/define-lazy-prop/index.d.ts | |
parent | 2400b84e95913665da6279114168148444b8f9ab (diff) | |
parent | 7d3640f824f46490b47bd95f1c5a16644f712068 (diff) |
Merge branch 'dev' of http://gitlab.pmf.kg.ac.rs/igrannonica/neuronstellar into logo
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; |