/**
 * 予約取消時アクション
 */
import * as factory from '../../../factory';
import type { SettingRepo } from '../../../repo/setting';
import type { TaskRepo } from '../../../repo/task';
export type ICanceledEventReservation = Pick<factory.reservation.IReservation<factory.reservationType.EventReservation>, 'project' | 'id' | 'typeOf' | 'modifiedTime' | 'reservationNumber'>;
export type ICanceledBusReservation = Pick<factory.reservation.IReservation<factory.reservationType.BusReservation>, 'project' | 'id' | 'typeOf' | 'modifiedTime' | 'reservationNumber'>;
export declare function onReservationCanceled(
/**
 * ステータス変更された予約リスト
 */
canceledReservations: ICanceledEventReservation[] | ICanceledBusReservation[], 
/**
 * 集計対象イベント
 */
reservationFor: {
    project: {
        id: string;
    };
    id: string;
}, cancelAction: Pick<factory.action.cancel.reservation.IAction, 'instrument'>): (repos: {
    setting: SettingRepo;
    task: TaskRepo;
}) => Promise<void>;
