import { PrismaService } from '../prisma/prisma.service';
import { CreatePricingHeaderDto, UpdatePricingHeaderDto } from './dto/pricing-header.dto';
import { BootstrapTableRequestDto } from 'src/commons/dto/bootstrap-table-request.dto';
import { BootstrapTableResponseDto } from 'src/commons/dto/bootstrap-table-response.dto';
export declare class PricingHeaderService {
    private readonly prisma;
    constructor(prisma: PrismaService);
    findAll(query: BootstrapTableRequestDto, itemTypeId?: string): Promise<BootstrapTableResponseDto<{
        activePrice: {
            id: string;
            beginEffective: Date;
            pricePerUnit: import("@prisma/client/runtime/client").Decimal;
        } | null;
        itemType: {
            id: string;
            createdAt: Date;
            modifiedAt: Date;
            code: string;
            name: string;
            desc: string | null;
            status: import("generated/prisma/client").SettingStatus;
        };
        id: string;
        createdAt: Date;
        modifiedAt: Date;
        code: string;
        name: string;
        status: import("generated/prisma/client").SettingStatus;
        itemTypeId: string;
        description: string | null;
        weight: number;
        unit: string;
        effectiveDate: Date;
    }>>;
    findOne(id: string): Promise<{
        itemType: {
            id: string;
            createdAt: Date;
            modifiedAt: Date;
            code: string;
            name: string;
            desc: string | null;
            status: import("generated/prisma/client").SettingStatus;
        };
        pricingDetails: {
            id: string;
            createdAt: Date;
            modifiedAt: Date;
            status: import("generated/prisma/client").SettingStatus;
            beginEffective: Date;
            endEffective: Date | null;
            createdBy: string;
            modifiedBy: string;
            itemTypeId: string;
            headerId: string;
            weight: number;
            unit: string;
            pricePerUnit: import("@prisma/client/runtime/client").Decimal;
        }[];
    } & {
        id: string;
        createdAt: Date;
        modifiedAt: Date;
        code: string;
        name: string;
        status: import("generated/prisma/client").SettingStatus;
        itemTypeId: string;
        description: string | null;
        weight: number;
        unit: string;
        effectiveDate: Date;
    }>;
    create(dto: CreatePricingHeaderDto): Promise<{
        itemType: {
            id: string;
            createdAt: Date;
            modifiedAt: Date;
            code: string;
            name: string;
            desc: string | null;
            status: import("generated/prisma/client").SettingStatus;
        };
    } & {
        id: string;
        createdAt: Date;
        modifiedAt: Date;
        code: string;
        name: string;
        status: import("generated/prisma/client").SettingStatus;
        itemTypeId: string;
        description: string | null;
        weight: number;
        unit: string;
        effectiveDate: Date;
    }>;
    update(id: string, dto: UpdatePricingHeaderDto): Promise<{
        itemType: {
            id: string;
            createdAt: Date;
            modifiedAt: Date;
            code: string;
            name: string;
            desc: string | null;
            status: import("generated/prisma/client").SettingStatus;
        };
    } & {
        id: string;
        createdAt: Date;
        modifiedAt: Date;
        code: string;
        name: string;
        status: import("generated/prisma/client").SettingStatus;
        itemTypeId: string;
        description: string | null;
        weight: number;
        unit: string;
        effectiveDate: Date;
    }>;
    remove(id: string): Promise<{
        id: string;
        createdAt: Date;
        modifiedAt: Date;
        code: string;
        name: string;
        status: import("generated/prisma/client").SettingStatus;
        itemTypeId: string;
        description: string | null;
        weight: number;
        unit: string;
        effectiveDate: Date;
    }>;
}
