import { CreateMatrixDto } from './dto/create-matrix.dto';
import { UpdateMatrixDto } from './dto/update-matrix.dto';
import { PrismaService } from 'src/prisma/prisma.service';
export declare class MatricesService {
    private prisma;
    constructor(prisma: PrismaService);
    private readonly logger;
    createMatrix(createMatrixDto: CreateMatrixDto): Promise<{
        id: number;
        createdAt: Date;
        updatedAt: Date;
        type: string;
        tableName: string;
        columnName: string;
        quantity: number;
        markUp: number;
        amount: number;
    }>;
    createRow(createMatrixDto: CreateMatrixDto[]): Promise<import("@prisma/client/runtime/library").GetBatchResult>;
    findPrimary(): Promise<{
        id: number;
        createdAt: Date;
        updatedAt: Date;
        type: string;
        tableName: string;
        columnName: string;
        quantity: number;
        markUp: number;
        amount: number;
    }[]>;
    findAllPrimary(page: number | undefined, take: number | undefined, sortBy: string, sortOrder: string, search?: string): Promise<[{
        id: number;
        createdAt: Date;
        updatedAt: Date;
        type: string;
        tableName: string;
        columnName: string;
        quantity: number;
        markUp: number;
        amount: number;
    }[][], number, number]>;
    findSecondary(): Promise<{
        id: number;
        createdAt: Date;
        updatedAt: Date;
        type: string;
        tableName: string;
        columnName: string;
        quantity: number;
        markUp: number;
        amount: number;
    }[]>;
    findAllSecondary(page: number | undefined, take: number | undefined, sortBy: string, sortOrder: string, search?: string): Promise<[{
        id: number;
        createdAt: Date;
        updatedAt: Date;
        type: string;
        tableName: string;
        columnName: string;
        quantity: number;
        markUp: number;
        amount: number;
    }[][], number, number]>;
    findTertiary(): Promise<{
        id: number;
        createdAt: Date;
        updatedAt: Date;
        type: string;
        tableName: string;
        columnName: string;
        quantity: number;
        markUp: number;
        amount: number;
    }[]>;
    findAllTertiary(page: number | undefined, take: number | undefined, sortBy: string, sortOrder: string, search?: string): Promise<[{
        id: number;
        createdAt: Date;
        updatedAt: Date;
        type: string;
        tableName: string;
        columnName: string;
        quantity: number;
        markUp: number;
        amount: number;
    }[][], number, number]>;
    updateMatrix(id: number, updateMatrixDto: UpdateMatrixDto): Promise<{
        id: number;
        createdAt: Date;
        updatedAt: Date;
        type: string;
        tableName: string;
        columnName: string;
        quantity: number;
        markUp: number;
        amount: number;
    }>;
    updateManyMatrices(list: {
        id: number;
        data: UpdateMatrixDto;
    }[]): Promise<any>[];
    deleteMatrix(id: number): Promise<{
        id: number;
        createdAt: Date;
        updatedAt: Date;
        type: string;
        tableName: string;
        columnName: string;
        quantity: number;
        markUp: number;
        amount: number;
    }>;
    deleteManyMatrices(ids: number[]): Promise<import("@prisma/client/runtime/library").GetBatchResult>;
}
