import { CreateVariantDto } from './dto/create-variant.dto';
import { UpdateVariantDto } from './dto/update-variant.dto';
import { PrismaService } from '../prisma/prisma.service';
export declare class VariantsService {
    private prisma;
    constructor(prisma: PrismaService);
    create(createVariantDto: CreateVariantDto): Promise<{
        id: string;
        image: string | null;
        createdAt: Date;
        updatedAt: Date;
        isActive: boolean;
        productId: string;
        sku: string;
        barcode: string | null;
        price: import("@prisma/client/runtime/library").Decimal;
        salePrice: import("@prisma/client/runtime/library").Decimal | null;
        weight: import("@prisma/client/runtime/library").Decimal | null;
        attributes: import("@prisma/client/runtime/library").JsonValue | null;
    }>;
    findAll(): import(".prisma/client").Prisma.PrismaPromise<({
        product: {
            name: string;
            id: string;
            createdAt: Date;
            updatedAt: Date;
            slug: string;
            description: string | null;
            isActive: boolean;
            shortDescription: string | null;
            type: import(".prisma/client").$Enums.ProductType;
            categoryId: string | null;
            brandId: string | null;
        };
    } & {
        id: string;
        image: string | null;
        createdAt: Date;
        updatedAt: Date;
        isActive: boolean;
        productId: string;
        sku: string;
        barcode: string | null;
        price: import("@prisma/client/runtime/library").Decimal;
        salePrice: import("@prisma/client/runtime/library").Decimal | null;
        weight: import("@prisma/client/runtime/library").Decimal | null;
        attributes: import("@prisma/client/runtime/library").JsonValue | null;
    })[]>;
    findOne(id: string): Promise<{
        product: {
            name: string;
            id: string;
            createdAt: Date;
            updatedAt: Date;
            slug: string;
            description: string | null;
            isActive: boolean;
            shortDescription: string | null;
            type: import(".prisma/client").$Enums.ProductType;
            categoryId: string | null;
            brandId: string | null;
        };
    } & {
        id: string;
        image: string | null;
        createdAt: Date;
        updatedAt: Date;
        isActive: boolean;
        productId: string;
        sku: string;
        barcode: string | null;
        price: import("@prisma/client/runtime/library").Decimal;
        salePrice: import("@prisma/client/runtime/library").Decimal | null;
        weight: import("@prisma/client/runtime/library").Decimal | null;
        attributes: import("@prisma/client/runtime/library").JsonValue | null;
    }>;
    update(id: string, updateVariantDto: UpdateVariantDto): Promise<{
        id: string;
        image: string | null;
        createdAt: Date;
        updatedAt: Date;
        isActive: boolean;
        productId: string;
        sku: string;
        barcode: string | null;
        price: import("@prisma/client/runtime/library").Decimal;
        salePrice: import("@prisma/client/runtime/library").Decimal | null;
        weight: import("@prisma/client/runtime/library").Decimal | null;
        attributes: import("@prisma/client/runtime/library").JsonValue | null;
    }>;
    remove(id: string): Promise<{
        id: string;
        image: string | null;
        createdAt: Date;
        updatedAt: Date;
        isActive: boolean;
        productId: string;
        sku: string;
        barcode: string | null;
        price: import("@prisma/client/runtime/library").Decimal;
        salePrice: import("@prisma/client/runtime/library").Decimal | null;
        weight: import("@prisma/client/runtime/library").Decimal | null;
        attributes: import("@prisma/client/runtime/library").JsonValue | null;
    }>;
}
