import { CreateFeeDto } from './dto/create-fee.dto';
import { UpdateFeeDto } from './dto/update-fee.dto';
import { PrismaService } from 'src/prisma/prisma.service';
export declare class FeesService {
    private prisma;
    constructor(prisma: PrismaService);
    private logger;
    create(createFeeDto: CreateFeeDto): Promise<{
        id: number;
        name: string;
        createdAt: Date;
        updatedAt: Date;
        description: string;
        modifier: string;
        type: string;
        amount: number;
        taxable: boolean;
    }>;
    findAll(skip: number | undefined, take: number | undefined, sortBy: string, sortOrder: string, search?: string): Promise<[({
        id: number;
        name: string;
        createdAt: Date;
        updatedAt: Date;
        description: string;
        modifier: string;
        type: string;
        amount: number;
        taxable: boolean;
    } | {
        id: number;
        name: string;
        createdAt: Date;
        updatedAt: Date;
        description: string;
        modifier: string;
        type: string;
        amount: number;
        taxable: boolean;
    })[][], number, number]>;
    findOne(id: number): Promise<{
        id: number;
        name: string;
        createdAt: Date;
        updatedAt: Date;
        description: string;
        modifier: string;
        type: string;
        amount: number;
        taxable: boolean;
    } | null>;
    findByJobId(jobId: number): Promise<({
        jobs: {
            id: number;
            createdAt: Date;
            updatedAt: Date;
            jobId: number | null;
            quantity: number;
            feeId: number | null;
            priceOverwrite: number;
        }[];
    } & {
        id: number;
        name: string;
        createdAt: Date;
        updatedAt: Date;
        description: string;
        modifier: string;
        type: string;
        amount: number;
        taxable: boolean;
    })[]>;
    update(id: number, updateFeeDto: UpdateFeeDto): Promise<{
        id: number;
        name: string;
        createdAt: Date;
        updatedAt: Date;
        description: string;
        modifier: string;
        type: string;
        amount: number;
        taxable: boolean;
    }>;
    remove(id: number): Promise<{
        id: number;
        name: string;
        createdAt: Date;
        updatedAt: Date;
        description: string;
        modifier: string;
        type: string;
        amount: number;
        taxable: boolean;
    }>;
}
