import { type Firestore } from 'firebase/firestore'; import type { FirebaseStorage } from 'firebase/storage'; export interface StartOrgSyncInput { db: Firestore; storage: FirebaseStorage; userId: string; orgId: string; localPath: string; maxUploadBytes?: number; statePath?: string; maxLiveBindings?: number; blobReadAttempts?: number; requestYjsCompaction?: (fileId: string, recordCount: number) => Promise; compactThreshold?: number; compactJitterMs?: number; changeRetryDelaysMs?: number[]; } export interface OrgSyncHandle { stop(): Promise; liveBindingCount(): number; peakBindingSetupConcurrency(): number; failedBindingSetups(): Map; pendingBindingSetupCount(): number; unresolvedChanges(): Map; pendingChangeRetryCount(): number; } export declare const DEFAULT_BLOB_READ_ATTEMPTS = 5; export declare const DEFAULT_CHANGE_RETRY_DELAYS_MS: number[]; export declare class BlobHashMismatchError extends Error { readonly code = "sync/blob-hash-mismatch"; constructor(message: string); } export declare function isRetryablePullFailure(err: unknown): boolean; export declare function startOrgSync({ db, storage, userId, orgId, localPath, maxUploadBytes, statePath, maxLiveBindings, requestYjsCompaction, compactThreshold, compactJitterMs, blobReadAttempts, changeRetryDelaysMs, }: StartOrgSyncInput): Promise; //# sourceMappingURL=org-sync.d.ts.map