import { SharedMergingProcessRepository } from '../../domain/repositories/shared-merging-process-repository';
import { SharedMergingProcessLocalRepository } from '../../domain/repositories/shared-merging-process-local-repository';
import { SharedMergingProcessApiRepository } from '../../domain/repositories/shared-merging-process-api-repository';
import { SharedPlanMergeProcess, CollectedShare } from '../../domain/models/shared-plan-merge-process';
import { AuthMethodType } from '../../domain/models/shared-plan-authentication-method';
/** Combines a local storage repo and an API repo into the single interface the orchestrator expects. */
export declare class AppSharedMergingProcessRepository implements SharedMergingProcessRepository {
    private readonly local;
    private readonly api;
    constructor(local: SharedMergingProcessLocalRepository, api: SharedMergingProcessApiRepository);
    findById(id: string): Promise<SharedPlanMergeProcess | null>;
    save(process: SharedPlanMergeProcess): Promise<void>;
    delete(id: string): Promise<void>;
    startProcess(planId: string, processId: string): Promise<void>;
    requestAuthentication(processId: string): Promise<void>;
    getAuthenticationStatus(processId: string): Promise<{
        completedMethods: AuthMethodType[];
    }>;
    requestPermission(processId: string): Promise<void>;
    getPermissionStatus(processId: string): Promise<{
        approvedModeratorIds: string[];
    }>;
    requestShares(processId: string): Promise<CollectedShare[]>;
}
