import type { Cycle, CycleStatus } from '../../../domain/generated/output.js';
import type { ICycleRepository } from '../../ports/output/repositories/cycle-repository.interface.js';
export interface UpdateCycleInput {
    name?: string;
    description?: string;
    status?: CycleStatus;
    startDate?: Date;
    endDate?: Date;
}
export type UpdateCycleResult = {
    ok: true;
    cycle: Cycle;
} | {
    ok: false;
    error: string;
};
export declare class UpdateCycleUseCase {
    private readonly cycleRepo;
    constructor(cycleRepo: ICycleRepository);
    execute(cycleId: string, input: UpdateCycleInput): Promise<UpdateCycleResult>;
}
//# sourceMappingURL=update-cycle.use-case.d.ts.map