type LazyResolver = T | Promise | (() => (T | Promise)); export declare class LazyObject { constructor(factory: LazyResolver); static from(value: Lazy): LazyObject; get resolved(): boolean; get value(): T; private _factory; private _resolved; private _resolvedValue; private _resolvingPromise; resolve(): Promise; private _resolvedHandlers; onResolve(callback: (value: T) => void): void; } export type Lazy = LazyObject | LazyResolver; export {};