/// <reference types="mongoose/types/aggregate" />
/// <reference types="mongoose/types/callback" />
/// <reference types="mongoose/types/collection" />
/// <reference types="mongoose/types/connection" />
/// <reference types="mongoose/types/cursor" />
/// <reference types="mongoose/types/document" />
/// <reference types="mongoose/types/error" />
/// <reference types="mongoose/types/expressions" />
/// <reference types="mongoose/types/helpers" />
/// <reference types="mongoose/types/middlewares" />
/// <reference types="mongoose/types/indexes" />
/// <reference types="mongoose/types/models" />
/// <reference types="mongoose/types/mongooseoptions" />
/// <reference types="mongoose/types/pipelinestage" />
/// <reference types="mongoose/types/populate" />
/// <reference types="mongoose/types/query" />
/// <reference types="mongoose/types/schemaoptions" />
/// <reference types="mongoose/types/schematypes" />
/// <reference types="mongoose/types/session" />
/// <reference types="mongoose/types/types" />
/// <reference types="mongoose/types/utility" />
/// <reference types="mongoose/types/validation" />
/// <reference types="mongoose/types/virtuals" />
/// <reference types="mongoose/types/inferschematype" />
import { Model } from 'mongoose';
import { CreateQuoteDto } from './dto/create-quote.dto';
import { UpdateQuoteDto } from './dto/update-quote.dto';
import { UserDocument } from '../users/schemas/user.schema';
import { Quote, QuoteDocument } from './schemas/quote.schema';
import { ProjectDocument } from '../project/schemas/project.schema';
export declare class QuoteService {
    private quoteModel;
    private projectModel;
    constructor(quoteModel: Model<QuoteDocument>, projectModel: Model<ProjectDocument>);
    create(createQuoteDto: CreateQuoteDto, user: UserDocument): Promise<import("mongoose").LeanDocument<any> & Required<{
        _id: unknown;
    }>>;
    createWithoutAuth(createQuoteDto: CreateQuoteDto): Promise<import("mongoose").LeanDocument<any> & Required<{
        _id: unknown;
    }>>;
    findAll(user: UserDocument): Promise<Omit<Quote & import("mongoose").Document<any, any, any> & {
        _id: import("mongoose").Types.ObjectId;
    }, never>[]>;
    findOne(_id: string): Promise<(Quote & import("mongoose").Document<any, any, any> & {
        _id: import("mongoose").Types.ObjectId;
    })[]>;
    update(_id: string, updateQuoteDto: UpdateQuoteDto, siteUrl: any): Promise<any>;
    remove(_id: string): Promise<{
        success: boolean;
    }>;
    generateNumber(n?: number): any;
}
