import { Prisma } from "../generated/prisma/client.js";
export declare class ArrivalRepository {
    create(data: Prisma.PurchaseUncheckedCreateInput, tx?: Prisma.TransactionClient): Promise<{
        unit: import("../generated/prisma/index.js").$Enums.PurchaseUnit;
        id: bigint;
        status: import("../generated/prisma/index.js").$Enums.PurchaseStatus;
        createdAt: Date;
        updatedAt: Date;
        createdBy: bigint | null;
        deletedAt: Date | null;
        supplierId: bigint | null;
        remarks: string | null;
        purchaseDate: Date;
        billNo: string | null;
        cashSupplierName: string | null;
        vegetableId: bigint;
        lotNo: string;
        purchaseType: import("../generated/prisma/index.js").$Enums.PurchaseType;
        rateType: import("../generated/prisma/index.js").$Enums.RateType;
        bags: Prisma.Decimal;
        weightPerBag: Prisma.Decimal | null;
        quantity: Prisma.Decimal;
        ratePerUnit: Prisma.Decimal;
        freight: Prisma.Decimal;
        extraFreight: Prisma.Decimal;
        associationFee: Prisma.Decimal;
        unloadingFee: Prisma.Decimal;
        miscellaneousFee: Prisma.Decimal;
        totalFreight: Prisma.Decimal;
        transportFee: Prisma.Decimal;
        loadingUnloadingFee: Prisma.Decimal;
        otherCharges: Prisma.Decimal;
        thaiyalCharges: Prisma.Decimal;
        extraCharges: Prisma.Decimal;
        goodsTotal: Prisma.Decimal;
        surchargeTotal: Prisma.Decimal;
        costPerUnit: Prisma.Decimal;
        grandTotal: Prisma.Decimal;
        dateOfDespatch: Date | null;
        arrivalDate: Date | null;
        placeOfDespatch: string | null;
        placeOfArrival: string | null;
        truckNo: string | null;
        agentName: string | null;
        advanceAmount: Prisma.Decimal;
        balanceAmount: Prisma.Decimal;
        remainingQuantity: Prisma.Decimal;
        remainingBags: Prisma.Decimal;
        closedAt: Date | null;
    }>;
    findAll(skip?: number, take?: number, search?: string, dateFrom?: Date, dateTo?: Date, supplierId?: bigint, vegetableId?: bigint, settlementStatus?: "UNSETTLED" | "PARTIALLY_SETTLED" | "SETTLED" | "ALL"): Promise<{
        items: {
            unit: import("../generated/prisma/index.js").$Enums.PurchaseUnit;
            id: bigint;
            status: import("../generated/prisma/index.js").$Enums.PurchaseStatus;
            createdAt: Date;
            updatedAt: Date;
            createdBy: bigint | null;
            deletedAt: Date | null;
            supplierId: bigint | null;
            remarks: string | null;
            purchaseDate: Date;
            billNo: string | null;
            cashSupplierName: string | null;
            vegetableId: bigint;
            lotNo: string;
            purchaseType: import("../generated/prisma/index.js").$Enums.PurchaseType;
            rateType: import("../generated/prisma/index.js").$Enums.RateType;
            bags: Prisma.Decimal;
            weightPerBag: Prisma.Decimal | null;
            quantity: Prisma.Decimal;
            ratePerUnit: Prisma.Decimal;
            freight: Prisma.Decimal;
            extraFreight: Prisma.Decimal;
            associationFee: Prisma.Decimal;
            unloadingFee: Prisma.Decimal;
            miscellaneousFee: Prisma.Decimal;
            totalFreight: Prisma.Decimal;
            transportFee: Prisma.Decimal;
            loadingUnloadingFee: Prisma.Decimal;
            otherCharges: Prisma.Decimal;
            thaiyalCharges: Prisma.Decimal;
            extraCharges: Prisma.Decimal;
            goodsTotal: Prisma.Decimal;
            surchargeTotal: Prisma.Decimal;
            costPerUnit: Prisma.Decimal;
            grandTotal: Prisma.Decimal;
            dateOfDespatch: Date | null;
            arrivalDate: Date | null;
            placeOfDespatch: string | null;
            placeOfArrival: string | null;
            truckNo: string | null;
            agentName: string | null;
            advanceAmount: Prisma.Decimal;
            balanceAmount: Prisma.Decimal;
            remainingQuantity: Prisma.Decimal;
            remainingBags: Prisma.Decimal;
            closedAt: Date | null;
        }[];
        total: number;
    }>;
    findById(id: bigint, tx?: Prisma.TransactionClient): Promise<({
        vegetable: {
            name: string;
            id: bigint;
            status: boolean;
            createdAt: Date;
            updatedAt: Date;
            tamilName: string | null;
            createdBy: bigint | null;
            hindiName: string | null;
            kannadaName: string | null;
            malayalamName: string | null;
            teluguName: string | null;
            hsnCode: string | null;
            isFlexible: boolean;
        };
        supplier: {
            name: string;
            id: bigint;
            address: string | null;
            status: boolean;
            createdAt: Date;
            updatedAt: Date;
            mobileNo: string;
            tamilName: string | null;
            createdBy: bigint | null;
            stateId: bigint;
            districtId: bigint;
            openingBalance: Prisma.Decimal;
            outstandingBalance: Prisma.Decimal;
            deletedAt: Date | null;
        } | null;
        arrivalSettlement: {
            id: bigint;
            status: import("../generated/prisma/index.js").$Enums.SettlementStatus;
            createdAt: Date;
            updatedAt: Date;
            createdBy: bigint | null;
            paymentMode: import("../generated/prisma/index.js").$Enums.PaymentMode | null;
            remarks: string | null;
            balanceAmount: Prisma.Decimal;
            purchaseId: bigint;
            settlementNo: string;
            settlementDate: Date;
            totalWeightSold: Prisma.Decimal;
            grossSalesTotal: Prisma.Decimal;
            commissionPercent: Prisma.Decimal;
            commissionAmount: Prisma.Decimal;
            freightDeducted: Prisma.Decimal;
            extraFreightDeducted: Prisma.Decimal;
            associationDeducted: Prisma.Decimal;
            unloadingDeducted: Prisma.Decimal;
            miscDeducted: Prisma.Decimal;
            totalDeductions: Prisma.Decimal;
            advanceAdjusted: Prisma.Decimal;
            netPayable: Prisma.Decimal;
            paidAmount: Prisma.Decimal;
        } | null;
        arrivalCustomPatti: {
            id: bigint;
            createdAt: Date;
            updatedAt: Date;
            createdBy: bigint | null;
            remarks: string | null;
            items: Prisma.JsonValue;
            purchaseId: bigint;
            settlementDate: Date | null;
            totalWeightSold: Prisma.Decimal;
            grossSalesTotal: Prisma.Decimal;
            commissionPercent: Prisma.Decimal;
            commissionAmount: Prisma.Decimal;
            freightDeducted: Prisma.Decimal;
            extraFreightDeducted: Prisma.Decimal;
            associationDeducted: Prisma.Decimal;
            unloadingDeducted: Prisma.Decimal;
            miscDeducted: Prisma.Decimal;
            totalDeductions: Prisma.Decimal;
            advanceAdjusted: Prisma.Decimal;
            netPayable: Prisma.Decimal;
            pattiNo: string | null;
        } | null;
        saleItems: ({
            sale: {
                id: bigint;
                customer: {
                    name: string;
                    id: bigint;
                } | null;
                invoiceNo: string;
                walkInName: string | null;
                invoiceDate: Date;
            };
        } & {
            id: bigint;
            total: Prisma.Decimal;
            createdAt: Date;
            updatedAt: Date;
            createdBy: bigint | null;
            bags: Prisma.Decimal | null;
            quantity: Prisma.Decimal;
            costPerUnit: Prisma.Decimal;
            saleId: bigint;
            purchaseId: bigint;
            saleUnit: import("../generated/prisma/index.js").$Enums.PurchaseUnit;
            sellingRate: Prisma.Decimal;
        })[];
        stockSpoilages: {
            reason: string | null;
            id: bigint;
            createdAt: Date;
            updatedAt: Date;
            createdBy: bigint | null;
            remarks: string | null;
            quantity: Prisma.Decimal;
            purchaseId: bigint;
            spoilageDate: Date;
        }[];
        retailStocks: ({
            retailSaleItems: ({
                retailSale: {
                    id: bigint;
                    invoiceNo: string;
                    walkInName: string | null;
                    invoiceDate: Date;
                };
            } & {
                id: bigint;
                total: Prisma.Decimal;
                createdAt: Date;
                updatedAt: Date;
                createdBy: bigint | null;
                bags: Prisma.Decimal | null;
                quantity: Prisma.Decimal;
                costPerUnit: Prisma.Decimal;
                saleUnit: import("../generated/prisma/index.js").$Enums.PurchaseUnit;
                sellingRate: Prisma.Decimal;
                retailStockId: bigint;
                retailSaleId: bigint;
            })[];
            retailStockSpoilages: {
                reason: string | null;
                id: bigint;
                createdAt: Date;
                updatedAt: Date;
                createdBy: bigint | null;
                remarks: string | null;
                quantity: Prisma.Decimal;
                spoilageDate: Date;
                retailStockId: bigint;
            }[];
        } & {
            id: bigint;
            createdAt: Date;
            updatedAt: Date;
            createdBy: bigint | null;
            deletedAt: Date | null;
            remarks: string | null;
            lotNo: string;
            bags: Prisma.Decimal | null;
            quantity: Prisma.Decimal;
            costPerUnit: Prisma.Decimal;
            remainingQuantity: Prisma.Decimal;
            remainingBags: Prisma.Decimal | null;
            purchaseId: bigint;
            allocatedUnit: import("../generated/prisma/index.js").$Enums.PurchaseUnit;
            allocatedQty: Prisma.Decimal;
            allocationDate: Date;
        })[];
    } & {
        unit: import("../generated/prisma/index.js").$Enums.PurchaseUnit;
        id: bigint;
        status: import("../generated/prisma/index.js").$Enums.PurchaseStatus;
        createdAt: Date;
        updatedAt: Date;
        createdBy: bigint | null;
        deletedAt: Date | null;
        supplierId: bigint | null;
        remarks: string | null;
        purchaseDate: Date;
        billNo: string | null;
        cashSupplierName: string | null;
        vegetableId: bigint;
        lotNo: string;
        purchaseType: import("../generated/prisma/index.js").$Enums.PurchaseType;
        rateType: import("../generated/prisma/index.js").$Enums.RateType;
        bags: Prisma.Decimal;
        weightPerBag: Prisma.Decimal | null;
        quantity: Prisma.Decimal;
        ratePerUnit: Prisma.Decimal;
        freight: Prisma.Decimal;
        extraFreight: Prisma.Decimal;
        associationFee: Prisma.Decimal;
        unloadingFee: Prisma.Decimal;
        miscellaneousFee: Prisma.Decimal;
        totalFreight: Prisma.Decimal;
        transportFee: Prisma.Decimal;
        loadingUnloadingFee: Prisma.Decimal;
        otherCharges: Prisma.Decimal;
        thaiyalCharges: Prisma.Decimal;
        extraCharges: Prisma.Decimal;
        goodsTotal: Prisma.Decimal;
        surchargeTotal: Prisma.Decimal;
        costPerUnit: Prisma.Decimal;
        grandTotal: Prisma.Decimal;
        dateOfDespatch: Date | null;
        arrivalDate: Date | null;
        placeOfDespatch: string | null;
        placeOfArrival: string | null;
        truckNo: string | null;
        agentName: string | null;
        advanceAmount: Prisma.Decimal;
        balanceAmount: Prisma.Decimal;
        remainingQuantity: Prisma.Decimal;
        remainingBags: Prisma.Decimal;
        closedAt: Date | null;
    }) | null>;
    update(id: bigint, data: Prisma.PurchaseUncheckedUpdateInput, tx?: Prisma.TransactionClient): Promise<{
        unit: import("../generated/prisma/index.js").$Enums.PurchaseUnit;
        id: bigint;
        status: import("../generated/prisma/index.js").$Enums.PurchaseStatus;
        createdAt: Date;
        updatedAt: Date;
        createdBy: bigint | null;
        deletedAt: Date | null;
        supplierId: bigint | null;
        remarks: string | null;
        purchaseDate: Date;
        billNo: string | null;
        cashSupplierName: string | null;
        vegetableId: bigint;
        lotNo: string;
        purchaseType: import("../generated/prisma/index.js").$Enums.PurchaseType;
        rateType: import("../generated/prisma/index.js").$Enums.RateType;
        bags: Prisma.Decimal;
        weightPerBag: Prisma.Decimal | null;
        quantity: Prisma.Decimal;
        ratePerUnit: Prisma.Decimal;
        freight: Prisma.Decimal;
        extraFreight: Prisma.Decimal;
        associationFee: Prisma.Decimal;
        unloadingFee: Prisma.Decimal;
        miscellaneousFee: Prisma.Decimal;
        totalFreight: Prisma.Decimal;
        transportFee: Prisma.Decimal;
        loadingUnloadingFee: Prisma.Decimal;
        otherCharges: Prisma.Decimal;
        thaiyalCharges: Prisma.Decimal;
        extraCharges: Prisma.Decimal;
        goodsTotal: Prisma.Decimal;
        surchargeTotal: Prisma.Decimal;
        costPerUnit: Prisma.Decimal;
        grandTotal: Prisma.Decimal;
        dateOfDespatch: Date | null;
        arrivalDate: Date | null;
        placeOfDespatch: string | null;
        placeOfArrival: string | null;
        truckNo: string | null;
        agentName: string | null;
        advanceAmount: Prisma.Decimal;
        balanceAmount: Prisma.Decimal;
        remainingQuantity: Prisma.Decimal;
        remainingBags: Prisma.Decimal;
        closedAt: Date | null;
    }>;
    softDelete(id: bigint, tx?: Prisma.TransactionClient): Promise<{
        unit: import("../generated/prisma/index.js").$Enums.PurchaseUnit;
        id: bigint;
        status: import("../generated/prisma/index.js").$Enums.PurchaseStatus;
        createdAt: Date;
        updatedAt: Date;
        createdBy: bigint | null;
        deletedAt: Date | null;
        supplierId: bigint | null;
        remarks: string | null;
        purchaseDate: Date;
        billNo: string | null;
        cashSupplierName: string | null;
        vegetableId: bigint;
        lotNo: string;
        purchaseType: import("../generated/prisma/index.js").$Enums.PurchaseType;
        rateType: import("../generated/prisma/index.js").$Enums.RateType;
        bags: Prisma.Decimal;
        weightPerBag: Prisma.Decimal | null;
        quantity: Prisma.Decimal;
        ratePerUnit: Prisma.Decimal;
        freight: Prisma.Decimal;
        extraFreight: Prisma.Decimal;
        associationFee: Prisma.Decimal;
        unloadingFee: Prisma.Decimal;
        miscellaneousFee: Prisma.Decimal;
        totalFreight: Prisma.Decimal;
        transportFee: Prisma.Decimal;
        loadingUnloadingFee: Prisma.Decimal;
        otherCharges: Prisma.Decimal;
        thaiyalCharges: Prisma.Decimal;
        extraCharges: Prisma.Decimal;
        goodsTotal: Prisma.Decimal;
        surchargeTotal: Prisma.Decimal;
        costPerUnit: Prisma.Decimal;
        grandTotal: Prisma.Decimal;
        dateOfDespatch: Date | null;
        arrivalDate: Date | null;
        placeOfDespatch: string | null;
        placeOfArrival: string | null;
        truckNo: string | null;
        agentName: string | null;
        advanceAmount: Prisma.Decimal;
        balanceAmount: Prisma.Decimal;
        remainingQuantity: Prisma.Decimal;
        remainingBags: Prisma.Decimal;
        closedAt: Date | null;
    }>;
    findActiveByLotNo(lotNo: string, excludeId?: bigint, vegetableId?: bigint, tx?: Prisma.TransactionClient): Promise<({
        vegetable: {
            name: string;
            id: bigint;
            isFlexible: boolean;
        };
    } & {
        unit: import("../generated/prisma/index.js").$Enums.PurchaseUnit;
        id: bigint;
        status: import("../generated/prisma/index.js").$Enums.PurchaseStatus;
        createdAt: Date;
        updatedAt: Date;
        createdBy: bigint | null;
        deletedAt: Date | null;
        supplierId: bigint | null;
        remarks: string | null;
        purchaseDate: Date;
        billNo: string | null;
        cashSupplierName: string | null;
        vegetableId: bigint;
        lotNo: string;
        purchaseType: import("../generated/prisma/index.js").$Enums.PurchaseType;
        rateType: import("../generated/prisma/index.js").$Enums.RateType;
        bags: Prisma.Decimal;
        weightPerBag: Prisma.Decimal | null;
        quantity: Prisma.Decimal;
        ratePerUnit: Prisma.Decimal;
        freight: Prisma.Decimal;
        extraFreight: Prisma.Decimal;
        associationFee: Prisma.Decimal;
        unloadingFee: Prisma.Decimal;
        miscellaneousFee: Prisma.Decimal;
        totalFreight: Prisma.Decimal;
        transportFee: Prisma.Decimal;
        loadingUnloadingFee: Prisma.Decimal;
        otherCharges: Prisma.Decimal;
        thaiyalCharges: Prisma.Decimal;
        extraCharges: Prisma.Decimal;
        goodsTotal: Prisma.Decimal;
        surchargeTotal: Prisma.Decimal;
        costPerUnit: Prisma.Decimal;
        grandTotal: Prisma.Decimal;
        dateOfDespatch: Date | null;
        arrivalDate: Date | null;
        placeOfDespatch: string | null;
        placeOfArrival: string | null;
        truckNo: string | null;
        agentName: string | null;
        advanceAmount: Prisma.Decimal;
        balanceAmount: Prisma.Decimal;
        remainingQuantity: Prisma.Decimal;
        remainingBags: Prisma.Decimal;
        closedAt: Date | null;
    }) | null>;
    findAnyByLotNo(lotNo: string, tx?: Prisma.TransactionClient): Promise<{
        vegetableId: bigint;
        lotNo: string;
    } | null>;
    getArrivalSalesSummary(purchaseId: bigint, tx?: Prisma.TransactionClient): Promise<{
        saleItems: ({
            id: string;
            channel: "WHOLESALE";
            source: string;
            saleId: bigint;
            invoiceNo: string;
            invoiceDate: Date;
            buyerName: string;
            quantity: Prisma.Decimal;
            bags: Prisma.Decimal | null;
            sellingRate: Prisma.Decimal;
            total: Prisma.Decimal;
            returnedQuantity: Prisma.Decimal;
            returnedAmount: Prisma.Decimal;
            originalQuantity: Prisma.Decimal;
            originalTotal: Prisma.Decimal;
            netQuantity: Prisma.Decimal;
            netTotal: Prisma.Decimal;
            createdAt: Date;
            sale: {
                customer: {
                    name: string;
                } | null;
                invoiceNo: string;
                walkInName: string | null;
                invoiceDate: Date;
            };
            saleReturns: {
                reason: string | null;
                id: bigint;
                createdAt: Date;
                updatedAt: Date;
                createdBy: bigint | null;
                remarks: string | null;
                quantity: Prisma.Decimal;
                purchaseId: bigint;
                saleItemId: bigint;
                returnDate: Date;
                returnAmount: Prisma.Decimal;
            }[];
        } | {
            id: string;
            channel: "RETAIL";
            source: string;
            saleId: bigint;
            invoiceNo: string;
            invoiceDate: Date;
            buyerName: string;
            quantity: Prisma.Decimal;
            bags: Prisma.Decimal | null;
            sellingRate: Prisma.Decimal;
            total: Prisma.Decimal;
            returnedQuantity: Prisma.Decimal;
            returnedAmount: Prisma.Decimal;
            netQuantity: Prisma.Decimal;
            netTotal: Prisma.Decimal;
            createdAt: Date;
            sale: {
                invoiceNo: string;
                invoiceDate: Date;
                walkInName: string;
                customer: null;
            };
            saleReturns: never[];
        })[];
        wholesaleSaleItems: {
            id: string;
            channel: "WHOLESALE";
            source: string;
            saleId: bigint;
            invoiceNo: string;
            invoiceDate: Date;
            buyerName: string;
            quantity: Prisma.Decimal;
            bags: Prisma.Decimal | null;
            sellingRate: Prisma.Decimal;
            total: Prisma.Decimal;
            returnedQuantity: Prisma.Decimal;
            returnedAmount: Prisma.Decimal;
            originalQuantity: Prisma.Decimal;
            originalTotal: Prisma.Decimal;
            netQuantity: Prisma.Decimal;
            netTotal: Prisma.Decimal;
            createdAt: Date;
            sale: {
                customer: {
                    name: string;
                } | null;
                invoiceNo: string;
                walkInName: string | null;
                invoiceDate: Date;
            };
            saleReturns: {
                reason: string | null;
                id: bigint;
                createdAt: Date;
                updatedAt: Date;
                createdBy: bigint | null;
                remarks: string | null;
                quantity: Prisma.Decimal;
                purchaseId: bigint;
                saleItemId: bigint;
                returnDate: Date;
                returnAmount: Prisma.Decimal;
            }[];
        }[];
        retailSaleItems: {
            id: string;
            channel: "RETAIL";
            source: string;
            saleId: bigint;
            invoiceNo: string;
            invoiceDate: Date;
            buyerName: string;
            quantity: Prisma.Decimal;
            bags: Prisma.Decimal | null;
            sellingRate: Prisma.Decimal;
            total: Prisma.Decimal;
            returnedQuantity: Prisma.Decimal;
            returnedAmount: Prisma.Decimal;
            netQuantity: Prisma.Decimal;
            netTotal: Prisma.Decimal;
            createdAt: Date;
            sale: {
                invoiceNo: string;
                invoiceDate: Date;
                walkInName: string;
                customer: null;
            };
            saleReturns: never[];
        }[];
        totalWeightSold: Prisma.Decimal;
        totalBagsSold: Prisma.Decimal;
        grossSalesTotal: Prisma.Decimal;
        totalReturnedQuantity: Prisma.Decimal;
        totalReturnedAmount: Prisma.Decimal;
        wholesaleWeightSold: Prisma.Decimal;
        wholesaleGrossTotal: Prisma.Decimal;
        retailWeightSold: Prisma.Decimal;
        retailGrossTotal: Prisma.Decimal;
        retailAllocatedQty: Prisma.Decimal;
        retailAllocatedBags: Prisma.Decimal;
        retailRemainingQty: Prisma.Decimal;
        retailRemainingBags: Prisma.Decimal;
    }>;
}
//# sourceMappingURL=ArrivalRepository.d.ts.map