import type { AcceptedOfferRepo } from '../../repo/acceptedOffer';
import type { ActionRepo } from '../../repo/action';
import type { OrderRepo } from '../../repo/order';
import type { OwnershipInfoRepo } from '../../repo/ownershipInfo';
import type { SettingRepo } from '../../repo/setting';
import type { TaskRepo } from '../../repo/task';
import type { TransactionRepo } from '../../repo/transaction';
import * as factory from '../../factory';
import { Settings } from '../../settings';
type ISendOperation<T> = (repos: {
    acceptedOffer: AcceptedOfferRepo;
    action: ActionRepo;
    order: OrderRepo;
    ownershipInfo: OwnershipInfoRepo;
    setting: SettingRepo;
    task: TaskRepo;
    transaction: TransactionRepo;
}, settings: Settings) => Promise<T>;
/**
 * 注文を配送する
 */
declare function sendOrder(params: {
    agent?: factory.action.transfer.send.order.IAgent;
    project: {
        id: string;
    };
    object: {
        confirmationNumber: string;
        orderNumber: string;
        previousOrderStatus: factory.orderStatus.OrderInTransit;
        acceptedOffers: {
            limit: number;
            page: number;
        };
    };
    useOnOrderStatusChanged: boolean;
}): ISendOperation<void>;
export { sendOrder };
