import { DrizzleDb } from '../database/drizzle.js'; import { IProductRepository } from '../../application/repositories/IProductRepository.js'; import { Product } from '../../domain/entities/Product.js'; import { ProductFilterDto } from '../../application/dtos/ProductDto.js'; export declare class DrizzleProductRepository implements IProductRepository { private readonly db; constructor(db: DrizzleDb); save(product: Product): Promise; findById(id: number): Promise; findByKey(key: string): Promise; findAll(filters?: ProductFilterDto): Promise; delete(id: number): Promise; exists(id: number): Promise; associateFeature(productId: number, featureId: number): Promise; dissociateFeature(productId: number, featureId: number): Promise; getFeaturesByProduct(productId: number): Promise; hasPlans(productKey: string): Promise; } //# sourceMappingURL=DrizzleProductRepository.d.ts.map