import type { ProfileId } from '../profiles/index.js';
import type { WorkflowPhase } from '../types/index.js';
export type RoleActivationState = {
    projectRoles: ProfileId[];
    activeRoles: ProfileId[];
    interactions: RoleInteraction[];
    taskId: string | null;
    runId: string | null;
};
export type RoleInteraction = {
    from: ProfileId;
    to: ProfileId;
    kind: 'handoff' | 'reject' | 'gate' | 'clarification';
    phase: WorkflowPhase;
};
export declare function resolveRoleActivation(cwd: string, projectProfiles: ProfileId[]): RoleActivationState;
export declare function validateRolesExist(roleIds: string[]): {
    valid: string[];
    invalid: string[];
};
export declare function expandedProfiles(configProfiles: ProfileId[], taskRoles?: {
    required: string[];
    optional: string[];
}): ProfileId[];
