import type { ICycleRepository } from '../../ports/output/repositories/cycle-repository.interface.js';
import type { IWorkItemRepository } from '../../ports/output/repositories/work-item-repository.interface.js';
import type { IWorkItemStateRepository } from '../../ports/output/repositories/work-item-state-repository.interface.js';
export interface TransferCycleItemsInput {
    sourceCycleId: string;
    targetCycleId?: string;
}
export type TransferCycleItemsResult = {
    ok: true;
    transferred: number;
    kept: number;
} | {
    ok: false;
    error: string;
};
export declare class TransferCycleItemsUseCase {
    private readonly cycleRepo;
    private readonly workItemRepo;
    private readonly stateRepo;
    constructor(cycleRepo: ICycleRepository, workItemRepo: IWorkItemRepository, stateRepo: IWorkItemStateRepository);
    execute(input: TransferCycleItemsInput): Promise<TransferCycleItemsResult>;
}
//# sourceMappingURL=transfer-cycle-items.use-case.d.ts.map