export interface IPromiseObservable<T> {
    current(): T | undefined
    fetch(): T | undefined
    set(value: T): T | undefined
    pending: boolean
    started: boolean
    setPromise(promiseCreator: () => Promise<T>): T | undefined
}
export declare function promiseObservable<T>(
    fetch: () => Promise<T>
): IPromiseObservable<T | undefined>
export declare function promiseObservable(): IPromiseObservable<undefined>
