export declare enum PurchaseOrderStatusType {
    DRAFT = "DRAFT",
    WORKING = "WORKING",
    SHIPPING = "SHIPPING",
    COMPLETED = "COMPLETED"
}
export declare enum PurchaseOrderExpenseType {
    PRODUCTION = "PRODUCTION",
    DUTY = "DUTY",
    SHIPPING = "SHIPPING",
    TAX = "TAX",
    EXTRA = "EXTRA"
}
export declare enum ShippingMethod {
    TRUCK = "TRUCK",
    SHIP = "SHIP",
    TRAIN = "TRAIN",
    PLANE = "PLANE"
}
export declare class PurchaseOrderStatus {
    status: PurchaseOrderStatusType;
    date: Date;
}
export declare class PurchaseOrderStruct {
    id: string;
    purchaseOrderId: string;
    reference: string;
    type: PurchaseOrderExpenseType;
    expenseId: string;
    createdAt: Date;
}
export declare class ProductPurchase {
    id: string;
    sellerSku: string;
    quantity: number;
    availableQuantity: number;
    removedQuantity: number;
}
export declare class PurchaseOrder {
    id: string;
    name: string;
    notes: string;
    vectorType: ShippingMethod;
    status: PurchaseOrderStatusType;
    productPurchases: Array<ProductPurchase>;
    statusHistory: Array<PurchaseOrderStatus>;
    purchaseOrderStruct: Array<PurchaseOrderStruct>;
    availableAt?: Date;
    createdAt: Date;
    constructor();
    getProductPurchaseQuantityBySku(sellerSkus: Array<string>): number;
    getPurchasedSellerSkus(): Array<string>;
    getProductPurchaseBySku(sellerSku: string): ProductPurchase | undefined;
}
