import type { ProjectRole } from '../../../domain/generated/output.js';
import type { IPmProjectMemberRepository } from '../../ports/output/repositories/pm-project-member-repository.interface.js';
export interface UpdateProjectMemberRoleInput {
    projectId: string;
    userId: string;
    newRole: ProjectRole;
    actorId: string;
}
export type UpdateProjectMemberRoleResult = {
    ok: true;
} | {
    ok: false;
    error: string;
};
export declare class UpdateProjectMemberRoleUseCase {
    private readonly memberRepo;
    constructor(memberRepo: IPmProjectMemberRepository);
    execute(input: UpdateProjectMemberRoleInput): Promise<UpdateProjectMemberRoleResult>;
}
//# sourceMappingURL=update-project-member-role.use-case.d.ts.map