import { Response } from "express";
import { InventoryService } from "./inventory.service";
export declare class InventoryController {
    private readonly inventoryService;
    constructor(inventoryService: InventoryService);
    getInventory(): Promise<{
        id: string;
        warehouse: string | null;
        itemCode: string | null;
        itemName: string | null;
        batchNumber: string | null;
        expiryDate: string | null;
        inboundMt: any;
        outboundMt: any;
        availableMt: number;
        thresholdTargetMt: number;
        thresholdProgressPct: number;
    }[]>;
    getSummary(): Promise<{
        totalAvailableMt: number;
        totalEmptyMt: number;
        thresholdTargetMt: number;
        hasReachedThreshold: boolean;
        invoiceRequiredForStockIn: boolean;
        expiringWithinSixMonths: number;
        pendingReviews: number;
    }>;
    getExpiry(months?: string, warehouses?: string): Promise<{
        warehouse: string | null;
        itemCode: string | null;
        itemName: string | null;
        batchNumber: string;
        expiryDate: string | null;
        availableMt: number;
    }[]>;
    generateExpiryReport(body: {
        warehouses?: string[];
        items?: string[];
        months?: number;
        downloadedBy: string;
        reviewedBy?: string;
        approvedBy?: string;
    }, res: Response): Promise<void>;
}
