export type Unwrappable<P, T> = T | Wrapped<P, T>;
export declare function unwrap<P, T>(x: Unwrappable<P, T>): T | Promise<T>;
export declare class Wrapped<P, T> {
    readonly payload: P;
    private init;
    private value;
    constructor(payload: P, init: () => Promise<T>);
    get(): Promise<T>;
}
//# sourceMappingURL=wrap.d.ts.map