import { SharedPlanOperationProcessRepository } from '../../domain/repositories/shared-plan-operation-process-repository';
import { SharedPlanOperationProcessLocalRepository } from '../../domain/repositories/shared-plan-operation-process-local-repository';
import { ActivePlanOperationProcessSnapshot, SharedPlanOperationProcessApiRepository } from '../../domain/repositories/shared-plan-operation-process-api-repository';
import { ApprovalProcessSnapshot } from '../../domain/models/approval-process';
import { PlanOperationType, SharedPlanOperationProcess } from '../../domain/models/shared-plan-operation-process';
export declare class AppSharedPlanOperationProcessRepository implements SharedPlanOperationProcessRepository {
    private readonly local;
    private readonly api;
    constructor(local: SharedPlanOperationProcessLocalRepository, api: SharedPlanOperationProcessApiRepository);
    findById(id: string): Promise<SharedPlanOperationProcess | null>;
    findByPlanId(planId: string): Promise<SharedPlanOperationProcess | null>;
    save(process: SharedPlanOperationProcess): Promise<void>;
    delete(id: string): Promise<void>;
    startProcess(planId: string, processId: string, operationType: PlanOperationType): Promise<ApprovalProcessSnapshot>;
    getApprovals(processId: string): Promise<ApprovalProcessSnapshot>;
    requestApproval(processId: string): Promise<void>;
    notifyApprovalParticipants(processId: string): Promise<void>;
    abortProcess(processId: string): Promise<void>;
    completeProcess(processId: string): Promise<void>;
    findActiveByPlanId(planId: string, tenantId: string, operationType?: PlanOperationType): Promise<ActivePlanOperationProcessSnapshot | null>;
}
