import type { WithRev } from '@/api/type';
import type { FdoPurchaseOrderRequest } from '@feedmepos/zod-inventory';
export type WithToInventoryLocation = {
    toInventoryLocation: FdoInventoryLocation;
};
export declare const usePurchaseOrderApi: () => {
    readRequests(dbName?: string, start?: string, end?: string): Promise<WithRev<FdoPurchaseOrderRequest & WithToInventoryLocation>[]>;
    readRequestById(_id: string, dbName?: string): Promise<FdoPurchaseOrderRequest | null>;
    readRequestByIds(requestIds: string[], dbName?: string): Promise<(FdoPurchaseOrderRequest & WithToInventoryLocation)[]>;
    getPurchaseOrders({ start, end }: {
        start: string;
        end: string;
    }): Promise<WithRev<FdoPurchaseOrder>[]>;
    getLatestPurchaseOrderRequest(purchaseOrderId: FdoPurchaseOrder['_id']): Promise<FdoPurchaseOrderRequest | undefined>;
    getPurchaseOrderById(id: FdoPurchaseOrder['_id']): Promise<WithRev<FdoPurchaseOrder>>;
    /**
     * @deprecated Use `processPurchaseOrderV2` instead.
     */
    processPurchaseOrder(dto: FdtoPurchaseOrderOperation, db?: string): Promise<WithRev<FdoPurchaseOrder>>;
    createPurchaseOrder(purchase: FdtoCreatePurchaseOrder): Promise<WithRev<FdoPurchaseOrder>>;
    updatePurchaseOrder(purchase: FdtoUpdatePurchaseOrder): Promise<WithRev<FdoPurchaseOrder>>;
    importFromXilnex(payload: FdtoXilnexTransferNote): Promise<void>;
    processPurchaseOrderV2(dto: FdtoPurchaseOrderOperateV2Request, db?: string): Promise<WithRev<FdoPurchaseOrder>>;
    getWorkflowConfig(): Promise<FdoOrderWorkflowConfig>;
    updateDeliveryOrder(payload: FdtoDeliveryOrderUpdateRequest): Promise<void>;
    createDeliveryOrder(payload: FdtoDeliveryOrderCreateRequest): Promise<void>;
    getDeliveryOrderTrails(purchaseOrderId: string, deliveryOrderId: string): Promise<any>;
};
export declare const purchaseOrderApi: {};
