import { ReactivePromise as IReactivePromise, ReactivePromiseConstructor, ReactiveTask, ReactiveOptions, RelayActivate } from '../types.js'; import { ReactiveSignal } from './reactive.js'; import { PromiseEdge } from './edge.js'; import { SignalScope } from './contexts.js'; export declare class ReactivePromiseImpl { private _value; private _error; private _flags; private _signal; private _equals; private _promise; private _pending; private _stateSubs; _awaitSubs: Map>, PromiseEdge>; _updatedCount: number; private _version; private run; constructor(executor?: (resolve: (value: T | PromiseLike) => void, reject: (reason: unknown) => void) => void); static all(values: T): ReactivePromiseImpl<{ -readonly [P in keyof T]: Awaited; }>; static race(values: T): ReactivePromiseImpl>; static any(values: Iterable>): ReactivePromiseImpl>; static allSettled(values: Iterable>): Promise>[]>; static resolve(value: T): ReactivePromiseImpl; static reject(reason: any): ReactivePromiseImpl; static withResolvers(): { readonly promise: ReactivePromiseImpl; readonly resolve: (value: T | PromiseLike) => void; readonly reject: (reason: unknown) => void; }; private _initFlags; private _consumeFlags; private _connect; private _setFlags; _getPending(): boolean; _setPending(): Map; _clearPending(): void; _setPromise(promise: Promise): Promise; private _setValue; private _setError; private _scheduleSubs; get value(): T | undefined; get error(): unknown; get isPending(): boolean; get isRejected(): boolean; get isResolved(): boolean; get isReady(): boolean; get isSettled(): boolean; then(onfulfilled?: ((value: T) => TResult1 | PromiseLike) | null, onrejected?: ((reason: unknown) => TResult2 | PromiseLike) | null): Promise; catch(onrejected?: ((reason: unknown) => TResult | PromiseLike) | null): Promise; finally(onfinally?: (() => void) | null): Promise; get [Symbol.toStringTag](): string; } /** * This is a utility function to mark a value as a ReactivePromise, primarily to enable _proxy_ * wrapping of ReactivePromises to add additional functionality (see: Signalium Query) */ export declare function setReactivePromise(value: object): void; export declare function isReactivePromise(value: object): value is ReactivePromiseImpl; export declare function isRelay(obj: object): obj is ReactivePromiseImpl; export declare function createPromise(promise: Promise, signal: ReactiveSignal): ReactivePromiseImpl; export declare function createRelay(activate: RelayActivate, scope: SignalScope, opts?: ReactiveOptions): ReactivePromiseImpl; export declare function createTask(task: (...args: Args) => Promise, scope: SignalScope, opts?: ReactiveOptions): ReactiveTask; export declare const ReactivePromise: ReactivePromiseConstructor; export type ReactivePromise = IReactivePromise; //# sourceMappingURL=async.d.ts.map