import type { AuthUserContext } from '../common/request-context';
import { OrdersService } from './orders.service';
type ReqAuth = {
    authUser?: AuthUserContext;
};
export declare class OrdersController {
    private readonly orders;
    constructor(orders: OrdersService);
    private user;
    list(req: ReqAuth, query: Record<string, string>): Promise<{
        items: ({
            customer: {
                id: string;
                customerNumber: string | null;
                name: string;
            };
            measurementVersion: {
                id: string;
                type: import("@prisma/client").$Enums.MeasurementType;
                versionNo: number;
            } | null;
        } & {
            id: string;
            organizationId: string;
            orderType: import("@prisma/client").$Enums.OrderType;
            orderNumber: string | null;
            legacyMeasureId: number | null;
            legacyCpMeasureId: number | null;
            customerId: string;
            personId: string | null;
            payerCustomerId: string | null;
            payerOverrideReason: string | null;
            measurementVersionId: string | null;
            status: import("@prisma/client").$Enums.OrderStatus;
            financialStatus: import("@prisma/client").$Enums.OrderFinancialStatus;
            deliveryStatusImported: string | null;
            source: import("@prisma/client").$Enums.OrderSource;
            bookingDate: Date | null;
            trialDate: Date | null;
            promisedDeliveryDate: Date | null;
            actualDeliveryDate: Date | null;
            urgentFlag: boolean;
            urgentReason: string | null;
            notes: string | null;
            internalNotes: string | null;
            kamizQty: string | null;
            kurtaQty: string | null;
            shalwarQty: string | null;
            pajamaQty: string | null;
            bshShirtQty: string | null;
            opShirtQty: string | null;
            safShirtQty: string | null;
            pantQty: string | null;
            subtotalAmount: import("@prisma/client/runtime/library").Decimal;
            discountAmount: import("@prisma/client/runtime/library").Decimal;
            adjustmentAmount: import("@prisma/client/runtime/library").Decimal;
            grandTotal: import("@prisma/client/runtime/library").Decimal;
            advanceAmount: import("@prisma/client/runtime/library").Decimal;
            balanceAmount: import("@prisma/client/runtime/library").Decimal;
            measurementSnapshot: import("@prisma/client/runtime/library").JsonValue | null;
            personSnapshot: import("@prisma/client/runtime/library").JsonValue | null;
            payerSnapshot: import("@prisma/client/runtime/library").JsonValue | null;
            fitSnapshot: import("@prisma/client/runtime/library").JsonValue | null;
            personNameSnapshot: string | null;
            personNumberSnapshot: string | null;
            payerNameSnapshot: string | null;
            payerNumberSnapshot: string | null;
            inventoryAppliedAt: Date | null;
            stockLocationId: string | null;
            idempotencyKey: string | null;
            sourceSystem: string | null;
            importBatchId: string | null;
            importedAt: Date | null;
            createdAt: Date;
            updatedAt: Date;
            archivedAt: Date | null;
            cancelledAt: Date | null;
        })[];
        page: number;
        pageSize: number;
        total: number;
        totalPages: number;
    }>;
    get(req: ReqAuth, id: string): Promise<{
        customer: {
            id: string;
            customerNumber: string | null;
            name: string;
        };
        person: {
            id: string;
            name: string;
            personNumber: string | null;
        } | null;
        payerCustomer: {
            id: string;
            customerNumber: string | null;
            name: string;
        } | null;
        measurementVersion: {
            id: string;
            type: import("@prisma/client").$Enums.MeasurementType;
            versionNo: number;
        } | null;
        garmentLines: {
            id: string;
            organizationId: string;
            notes: string | null;
            orderId: string;
            rateItemId: string | null;
            itemName: string;
            qty: import("@prisma/client/runtime/library").Decimal;
            unitPrice: import("@prisma/client/runtime/library").Decimal;
            lineTotal: import("@prisma/client/runtime/library").Decimal;
            sortOrder: number;
        }[];
        designLines: {
            id: string;
            organizationId: string;
            notes: string | null;
            orderId: string;
            rateItemId: string | null;
            itemName: string;
            qty: import("@prisma/client/runtime/library").Decimal;
            unitPrice: import("@prisma/client/runtime/library").Decimal;
            lineTotal: import("@prisma/client/runtime/library").Decimal;
            sortOrder: number;
        }[];
        inventoryLines: ({
            inventoryVariant: {
                id: string;
                name: string | null;
                variantCode: string;
                sku: string | null;
                isBase: boolean;
            };
        } & {
            id: string;
            organizationId: string;
            notes: string | null;
            orderId: string;
            inventoryItemId: string;
            itemName: string;
            qty: import("@prisma/client/runtime/library").Decimal;
            lineTotal: import("@prisma/client/runtime/library").Decimal;
            sortOrder: number;
            inventoryVariantId: string;
            uom: string;
            unitSellPrice: import("@prisma/client/runtime/library").Decimal;
            unitCostSnapshot: import("@prisma/client/runtime/library").Decimal;
            sourceRuleId: string | null;
            sourceRuleCode: string | null;
            isAuto: boolean;
        })[];
        invoice: {
            id: string;
        } | null;
    } & {
        id: string;
        organizationId: string;
        orderType: import("@prisma/client").$Enums.OrderType;
        orderNumber: string | null;
        legacyMeasureId: number | null;
        legacyCpMeasureId: number | null;
        customerId: string;
        personId: string | null;
        payerCustomerId: string | null;
        payerOverrideReason: string | null;
        measurementVersionId: string | null;
        status: import("@prisma/client").$Enums.OrderStatus;
        financialStatus: import("@prisma/client").$Enums.OrderFinancialStatus;
        deliveryStatusImported: string | null;
        source: import("@prisma/client").$Enums.OrderSource;
        bookingDate: Date | null;
        trialDate: Date | null;
        promisedDeliveryDate: Date | null;
        actualDeliveryDate: Date | null;
        urgentFlag: boolean;
        urgentReason: string | null;
        notes: string | null;
        internalNotes: string | null;
        kamizQty: string | null;
        kurtaQty: string | null;
        shalwarQty: string | null;
        pajamaQty: string | null;
        bshShirtQty: string | null;
        opShirtQty: string | null;
        safShirtQty: string | null;
        pantQty: string | null;
        subtotalAmount: import("@prisma/client/runtime/library").Decimal;
        discountAmount: import("@prisma/client/runtime/library").Decimal;
        adjustmentAmount: import("@prisma/client/runtime/library").Decimal;
        grandTotal: import("@prisma/client/runtime/library").Decimal;
        advanceAmount: import("@prisma/client/runtime/library").Decimal;
        balanceAmount: import("@prisma/client/runtime/library").Decimal;
        measurementSnapshot: import("@prisma/client/runtime/library").JsonValue | null;
        personSnapshot: import("@prisma/client/runtime/library").JsonValue | null;
        payerSnapshot: import("@prisma/client/runtime/library").JsonValue | null;
        fitSnapshot: import("@prisma/client/runtime/library").JsonValue | null;
        personNameSnapshot: string | null;
        personNumberSnapshot: string | null;
        payerNameSnapshot: string | null;
        payerNumberSnapshot: string | null;
        inventoryAppliedAt: Date | null;
        stockLocationId: string | null;
        idempotencyKey: string | null;
        sourceSystem: string | null;
        importBatchId: string | null;
        importedAt: Date | null;
        createdAt: Date;
        updatedAt: Date;
        archivedAt: Date | null;
        cancelledAt: Date | null;
    }>;
    invoicePrint(req: ReqAuth, id: string): Promise<{
        invoiceNumber: string;
        orderNumber: string | null;
        invoiceDate: Date;
        businessName: string;
        customerName: string;
        customerNumber: string | null;
        lines: {
            itemName: string;
            qty: string;
            unitPrice: string;
            lineTotal: string;
        }[];
        subtotal: string;
        discount: string;
        grandTotal: string;
        balance: string;
    }>;
    create(req: ReqAuth, body: unknown): Promise<{
        customer: {
            id: string;
            customerNumber: string | null;
            name: string;
        };
        person: {
            id: string;
            name: string;
            personNumber: string | null;
        } | null;
        payerCustomer: {
            id: string;
            customerNumber: string | null;
            name: string;
        } | null;
        measurementVersion: {
            id: string;
            type: import("@prisma/client").$Enums.MeasurementType;
            versionNo: number;
        } | null;
        garmentLines: {
            id: string;
            organizationId: string;
            notes: string | null;
            orderId: string;
            rateItemId: string | null;
            itemName: string;
            qty: import("@prisma/client/runtime/library").Decimal;
            unitPrice: import("@prisma/client/runtime/library").Decimal;
            lineTotal: import("@prisma/client/runtime/library").Decimal;
            sortOrder: number;
        }[];
        designLines: {
            id: string;
            organizationId: string;
            notes: string | null;
            orderId: string;
            rateItemId: string | null;
            itemName: string;
            qty: import("@prisma/client/runtime/library").Decimal;
            unitPrice: import("@prisma/client/runtime/library").Decimal;
            lineTotal: import("@prisma/client/runtime/library").Decimal;
            sortOrder: number;
        }[];
        inventoryLines: ({
            inventoryVariant: {
                id: string;
                name: string | null;
                variantCode: string;
                sku: string | null;
                isBase: boolean;
            };
        } & {
            id: string;
            organizationId: string;
            notes: string | null;
            orderId: string;
            inventoryItemId: string;
            itemName: string;
            qty: import("@prisma/client/runtime/library").Decimal;
            lineTotal: import("@prisma/client/runtime/library").Decimal;
            sortOrder: number;
            inventoryVariantId: string;
            uom: string;
            unitSellPrice: import("@prisma/client/runtime/library").Decimal;
            unitCostSnapshot: import("@prisma/client/runtime/library").Decimal;
            sourceRuleId: string | null;
            sourceRuleCode: string | null;
            isAuto: boolean;
        })[];
        invoice: {
            id: string;
        } | null;
    } & {
        id: string;
        organizationId: string;
        orderType: import("@prisma/client").$Enums.OrderType;
        orderNumber: string | null;
        legacyMeasureId: number | null;
        legacyCpMeasureId: number | null;
        customerId: string;
        personId: string | null;
        payerCustomerId: string | null;
        payerOverrideReason: string | null;
        measurementVersionId: string | null;
        status: import("@prisma/client").$Enums.OrderStatus;
        financialStatus: import("@prisma/client").$Enums.OrderFinancialStatus;
        deliveryStatusImported: string | null;
        source: import("@prisma/client").$Enums.OrderSource;
        bookingDate: Date | null;
        trialDate: Date | null;
        promisedDeliveryDate: Date | null;
        actualDeliveryDate: Date | null;
        urgentFlag: boolean;
        urgentReason: string | null;
        notes: string | null;
        internalNotes: string | null;
        kamizQty: string | null;
        kurtaQty: string | null;
        shalwarQty: string | null;
        pajamaQty: string | null;
        bshShirtQty: string | null;
        opShirtQty: string | null;
        safShirtQty: string | null;
        pantQty: string | null;
        subtotalAmount: import("@prisma/client/runtime/library").Decimal;
        discountAmount: import("@prisma/client/runtime/library").Decimal;
        adjustmentAmount: import("@prisma/client/runtime/library").Decimal;
        grandTotal: import("@prisma/client/runtime/library").Decimal;
        advanceAmount: import("@prisma/client/runtime/library").Decimal;
        balanceAmount: import("@prisma/client/runtime/library").Decimal;
        measurementSnapshot: import("@prisma/client/runtime/library").JsonValue | null;
        personSnapshot: import("@prisma/client/runtime/library").JsonValue | null;
        payerSnapshot: import("@prisma/client/runtime/library").JsonValue | null;
        fitSnapshot: import("@prisma/client/runtime/library").JsonValue | null;
        personNameSnapshot: string | null;
        personNumberSnapshot: string | null;
        payerNameSnapshot: string | null;
        payerNumberSnapshot: string | null;
        inventoryAppliedAt: Date | null;
        stockLocationId: string | null;
        idempotencyKey: string | null;
        sourceSystem: string | null;
        importBatchId: string | null;
        importedAt: Date | null;
        createdAt: Date;
        updatedAt: Date;
        archivedAt: Date | null;
        cancelledAt: Date | null;
    }>;
    update(req: ReqAuth, id: string, body: unknown): Promise<{
        customer: {
            id: string;
            customerNumber: string | null;
            name: string;
        };
        person: {
            id: string;
            name: string;
            personNumber: string | null;
        } | null;
        payerCustomer: {
            id: string;
            customerNumber: string | null;
            name: string;
        } | null;
        measurementVersion: {
            id: string;
            type: import("@prisma/client").$Enums.MeasurementType;
            versionNo: number;
        } | null;
        garmentLines: {
            id: string;
            organizationId: string;
            notes: string | null;
            orderId: string;
            rateItemId: string | null;
            itemName: string;
            qty: import("@prisma/client/runtime/library").Decimal;
            unitPrice: import("@prisma/client/runtime/library").Decimal;
            lineTotal: import("@prisma/client/runtime/library").Decimal;
            sortOrder: number;
        }[];
        designLines: {
            id: string;
            organizationId: string;
            notes: string | null;
            orderId: string;
            rateItemId: string | null;
            itemName: string;
            qty: import("@prisma/client/runtime/library").Decimal;
            unitPrice: import("@prisma/client/runtime/library").Decimal;
            lineTotal: import("@prisma/client/runtime/library").Decimal;
            sortOrder: number;
        }[];
        inventoryLines: ({
            inventoryVariant: {
                id: string;
                name: string | null;
                variantCode: string;
                sku: string | null;
                isBase: boolean;
            };
        } & {
            id: string;
            organizationId: string;
            notes: string | null;
            orderId: string;
            inventoryItemId: string;
            itemName: string;
            qty: import("@prisma/client/runtime/library").Decimal;
            lineTotal: import("@prisma/client/runtime/library").Decimal;
            sortOrder: number;
            inventoryVariantId: string;
            uom: string;
            unitSellPrice: import("@prisma/client/runtime/library").Decimal;
            unitCostSnapshot: import("@prisma/client/runtime/library").Decimal;
            sourceRuleId: string | null;
            sourceRuleCode: string | null;
            isAuto: boolean;
        })[];
        invoice: {
            id: string;
        } | null;
    } & {
        id: string;
        organizationId: string;
        orderType: import("@prisma/client").$Enums.OrderType;
        orderNumber: string | null;
        legacyMeasureId: number | null;
        legacyCpMeasureId: number | null;
        customerId: string;
        personId: string | null;
        payerCustomerId: string | null;
        payerOverrideReason: string | null;
        measurementVersionId: string | null;
        status: import("@prisma/client").$Enums.OrderStatus;
        financialStatus: import("@prisma/client").$Enums.OrderFinancialStatus;
        deliveryStatusImported: string | null;
        source: import("@prisma/client").$Enums.OrderSource;
        bookingDate: Date | null;
        trialDate: Date | null;
        promisedDeliveryDate: Date | null;
        actualDeliveryDate: Date | null;
        urgentFlag: boolean;
        urgentReason: string | null;
        notes: string | null;
        internalNotes: string | null;
        kamizQty: string | null;
        kurtaQty: string | null;
        shalwarQty: string | null;
        pajamaQty: string | null;
        bshShirtQty: string | null;
        opShirtQty: string | null;
        safShirtQty: string | null;
        pantQty: string | null;
        subtotalAmount: import("@prisma/client/runtime/library").Decimal;
        discountAmount: import("@prisma/client/runtime/library").Decimal;
        adjustmentAmount: import("@prisma/client/runtime/library").Decimal;
        grandTotal: import("@prisma/client/runtime/library").Decimal;
        advanceAmount: import("@prisma/client/runtime/library").Decimal;
        balanceAmount: import("@prisma/client/runtime/library").Decimal;
        measurementSnapshot: import("@prisma/client/runtime/library").JsonValue | null;
        personSnapshot: import("@prisma/client/runtime/library").JsonValue | null;
        payerSnapshot: import("@prisma/client/runtime/library").JsonValue | null;
        fitSnapshot: import("@prisma/client/runtime/library").JsonValue | null;
        personNameSnapshot: string | null;
        personNumberSnapshot: string | null;
        payerNameSnapshot: string | null;
        payerNumberSnapshot: string | null;
        inventoryAppliedAt: Date | null;
        stockLocationId: string | null;
        idempotencyKey: string | null;
        sourceSystem: string | null;
        importBatchId: string | null;
        importedAt: Date | null;
        createdAt: Date;
        updatedAt: Date;
        archivedAt: Date | null;
        cancelledAt: Date | null;
    }>;
    cancel(req: ReqAuth, id: string, body: unknown): Promise<{
        customer: {
            id: string;
            customerNumber: string | null;
            name: string;
        };
        person: {
            id: string;
            name: string;
            personNumber: string | null;
        } | null;
        payerCustomer: {
            id: string;
            customerNumber: string | null;
            name: string;
        } | null;
        measurementVersion: {
            id: string;
            type: import("@prisma/client").$Enums.MeasurementType;
            versionNo: number;
        } | null;
        garmentLines: {
            id: string;
            organizationId: string;
            notes: string | null;
            orderId: string;
            rateItemId: string | null;
            itemName: string;
            qty: import("@prisma/client/runtime/library").Decimal;
            unitPrice: import("@prisma/client/runtime/library").Decimal;
            lineTotal: import("@prisma/client/runtime/library").Decimal;
            sortOrder: number;
        }[];
        designLines: {
            id: string;
            organizationId: string;
            notes: string | null;
            orderId: string;
            rateItemId: string | null;
            itemName: string;
            qty: import("@prisma/client/runtime/library").Decimal;
            unitPrice: import("@prisma/client/runtime/library").Decimal;
            lineTotal: import("@prisma/client/runtime/library").Decimal;
            sortOrder: number;
        }[];
        inventoryLines: ({
            inventoryVariant: {
                id: string;
                name: string | null;
                variantCode: string;
                sku: string | null;
                isBase: boolean;
            };
        } & {
            id: string;
            organizationId: string;
            notes: string | null;
            orderId: string;
            inventoryItemId: string;
            itemName: string;
            qty: import("@prisma/client/runtime/library").Decimal;
            lineTotal: import("@prisma/client/runtime/library").Decimal;
            sortOrder: number;
            inventoryVariantId: string;
            uom: string;
            unitSellPrice: import("@prisma/client/runtime/library").Decimal;
            unitCostSnapshot: import("@prisma/client/runtime/library").Decimal;
            sourceRuleId: string | null;
            sourceRuleCode: string | null;
            isAuto: boolean;
        })[];
        invoice: {
            id: string;
        } | null;
    } & {
        id: string;
        organizationId: string;
        orderType: import("@prisma/client").$Enums.OrderType;
        orderNumber: string | null;
        legacyMeasureId: number | null;
        legacyCpMeasureId: number | null;
        customerId: string;
        personId: string | null;
        payerCustomerId: string | null;
        payerOverrideReason: string | null;
        measurementVersionId: string | null;
        status: import("@prisma/client").$Enums.OrderStatus;
        financialStatus: import("@prisma/client").$Enums.OrderFinancialStatus;
        deliveryStatusImported: string | null;
        source: import("@prisma/client").$Enums.OrderSource;
        bookingDate: Date | null;
        trialDate: Date | null;
        promisedDeliveryDate: Date | null;
        actualDeliveryDate: Date | null;
        urgentFlag: boolean;
        urgentReason: string | null;
        notes: string | null;
        internalNotes: string | null;
        kamizQty: string | null;
        kurtaQty: string | null;
        shalwarQty: string | null;
        pajamaQty: string | null;
        bshShirtQty: string | null;
        opShirtQty: string | null;
        safShirtQty: string | null;
        pantQty: string | null;
        subtotalAmount: import("@prisma/client/runtime/library").Decimal;
        discountAmount: import("@prisma/client/runtime/library").Decimal;
        adjustmentAmount: import("@prisma/client/runtime/library").Decimal;
        grandTotal: import("@prisma/client/runtime/library").Decimal;
        advanceAmount: import("@prisma/client/runtime/library").Decimal;
        balanceAmount: import("@prisma/client/runtime/library").Decimal;
        measurementSnapshot: import("@prisma/client/runtime/library").JsonValue | null;
        personSnapshot: import("@prisma/client/runtime/library").JsonValue | null;
        payerSnapshot: import("@prisma/client/runtime/library").JsonValue | null;
        fitSnapshot: import("@prisma/client/runtime/library").JsonValue | null;
        personNameSnapshot: string | null;
        personNumberSnapshot: string | null;
        payerNameSnapshot: string | null;
        payerNumberSnapshot: string | null;
        inventoryAppliedAt: Date | null;
        stockLocationId: string | null;
        idempotencyKey: string | null;
        sourceSystem: string | null;
        importBatchId: string | null;
        importedAt: Date | null;
        createdAt: Date;
        updatedAt: Date;
        archivedAt: Date | null;
        cancelledAt: Date | null;
    }>;
}
export {};
//# sourceMappingURL=orders.controller.d.ts.map