Files
rspade_system/node_modules/define-lazy-prop/index.d.ts
root f6fac6c4bc Fix bin/publish: copy docs.dist from project root
Fix bin/publish: use correct .env path for rspade_system
Fix bin/publish script: prevent grep exit code 1 from terminating script

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-21 02:08:33 +00:00

34 lines
802 B
TypeScript
Executable File

/**
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;