import { ModelsService } from "../models/models.service";
import { CommonService } from "../common/common.service";
import { ExportExpenseDto } from "./dto/expense.dto";
import { Response } from "express";
import { ImageExtractionService } from "src/common/services/image-extraction.service";
import { StatusHistoryService } from 'src/status-history/status-history.service';
export declare class ExpenseService {
    private readonly model;
    private readonly commonService;
    private readonly statusHistoryService;
    private readonly imageExtractionService;
    constructor(model: ModelsService, commonService: CommonService, statusHistoryService: StatusHistoryService, imageExtractionService: ImageExtractionService);
    private invalidateExpenseCaches;
    private addMaintenanceForApprovedExpense;
    addExpense(req: any, res: any, body: any): Promise<any>;
    listExpenses(req: any, res: any, query: any): Promise<any>;
    getTripExpenses(req: any, res: any, query: any, trip_id: string): Promise<any>;
    expenseCategoryList(req: any, res: any, query?: any): Promise<any>;
    addExpenseCategory(req: any, res: any, body: any): Promise<any>;
    updateExpenseCategory(req: any, res: any, id: string, body: any): Promise<any>;
    deleteExpenseCategory(req: any, res: any, id: string): Promise<any>;
    updateExpenseCategoryStatus(req: any, res: any, id: string, is_active: boolean): Promise<any>;
    updateExpense(req: any, res: any, id: string, body: any): Promise<any>;
    updateExpenseStatus(req: any, res: any, body: any): Promise<any>;
    exportExpenseCsv(query: ExportExpenseDto, req: any, res: Response): Promise<Response<any, Record<string, any>> | undefined>;
}
