import { Realm } from './client.js';
import type { RealmFetchImpl, RealmTokenRefreshResult } from './client-types.js';
export type RealmContextInput = {
    realmBaseUrl: string;
    accessToken?: string;
    refreshToken?: string;
    fetchImpl?: RealmFetchImpl | null;
    onTokenRefreshed?: (result: RealmTokenRefreshResult) => void;
    onRefreshFailed?: (error: unknown) => void;
};
export declare function withRealmContextLock<T>(input: RealmContextInput, task: (realm: Realm) => Promise<T>): Promise<T>;
export declare function getRealmContextLockQueueSizeForTest(): number;
//# sourceMappingURL=context-lock.d.ts.map