import { Model, Types } from "mongoose";
import { CreateItemDto } from "./dto/create-item.dto";
import { ItemDocument } from "src/schema/item.schema";
import { TaxDocument } from "src/schema/taxes.schema";
import { ResponseService } from "src/common/service/response.service";
import { Response } from "express";
import { InvoiceItemDto } from "src/invoice/dto/invoice-item.dto";
import { ResolvedInvoiceItem } from "src/items/resolve-item.interface";
export declare class ItemsService {
    private readonly itemModel;
    private taxModel;
    private resService;
    constructor(itemModel: Model<ItemDocument>, taxModel: Model<TaxDocument>, resService: ResponseService);
    create(dto: CreateItemDto, userId: string, res: Response): Promise<Response<any, Record<string, any>>>;
    getAllItems(userId: string, res: Response): Promise<Response<any, Record<string, any>>>;
    findAll(res: Response, userId: string, page?: number, limit?: number, search?: string): Promise<Response<any, Record<string, any>>>;
    remove(id: string, userId: string, res: Response): Promise<Response<any, Record<string, any>>>;
    resolveItems(userId: Types.ObjectId, items: InvoiceItemDto[]): Promise<ResolvedInvoiceItem[]>;
}
