/**
 * EnableSupervisorUseCase
 *
 * Sets `enabled = true` on the {@link SupervisorPolicy} for the
 * (scopeType, scopeId?, featureId?) scope without touching any other
 * field. Idempotent — calling enable on an already-enabled policy
 * returns the unchanged row but still bumps `updatedAt` for audit
 * clarity.
 */
import type { ISupervisorPolicyRepository } from '../../ports/output/repositories/supervisor-policy-repository.interface.js';
import type { SupervisorPolicy } from '../../../domain/generated/output.js';
export interface EnableSupervisorInput {
    scopeType: string;
    scopeId?: string;
    featureId?: string;
}
export declare class EnableSupervisorUseCase {
    private readonly policyRepository;
    constructor(policyRepository: ISupervisorPolicyRepository);
    execute(input: EnableSupervisorInput): Promise<SupervisorPolicy>;
}
//# sourceMappingURL=enable-supervisor.use-case.d.ts.map