import { type Configuration } from "./Configuration"; import { type ProgressNotificationCallback } from "./app-services/SyncSession"; import type { Realm } from "./Realm"; export declare class ProgressRealmPromise implements Promise { /** @internal */ private static instances; /** * Cancels all unresolved `ProgressRealmPromise` instances. * @internal */ static cancelAll(): void; /** @internal */ private task; /** @internal */ private listeners; /** @internal */ private handle; /** @internal */ private timeoutPromise; /** * Token used for unregistering the progress notifier. * @internal */ private notifierToken; /** @internal */ constructor(config: Configuration); /** * Cancels the download of the Realm * If multiple `ProgressRealmPromise` instances are in progress for the same Realm, then canceling one of them * will cancel all of them. */ cancel(): void; /** * Register to receive progress notifications while the download is in progress. * @param callback Called multiple times as the client receives data. */ progress(callback: ProgressNotificationCallback): this; then: (onfulfilled?: ((value: Realm) => TResult1 | PromiseLike) | null | undefined, onrejected?: ((reason: any) => TResult2 | PromiseLike) | null | undefined) => Promise; catch: (onrejected?: ((reason: any) => TResult | PromiseLike) | null | undefined) => Promise; finally: (onfinally?: (() => void) | null | undefined) => Promise; /** @internal */ private emitProgress; /** @internal */ private createTimeoutPromise; /** @internal */ private cancelAndResetTask; /** @internal */ private rejectAsCanceled; get [Symbol.toStringTag](): string; }