import { ProductsService } from './products.service';
import { CreateProductDto } from './dto/create-product.dto';
import { UpdateProductDto } from './dto/update-product.dto';
export declare class ProductsController {
    private readonly productsService;
    constructor(productsService: ProductsService);
    create(createProductDto: CreateProductDto): Promise<{
        id: number;
        createdAt: Date;
        updatedAt: Date;
        title: string;
        description: string;
        categoryId: number;
        brand: string;
        brandId: string;
        cost: number;
        modifier: number;
        price: number;
        syncId: string | null;
        syncState: string;
        syncEnabled: boolean;
        syncLastUpdated: Date | null;
        syncLastSynced: Date | null;
        syncProviderId: number | null;
    }>;
    findAll(page: number, limit: number, sortBy: string, sortOrder: string, search: string): Promise<[({
        id: number;
        createdAt: Date;
        updatedAt: Date;
        title: string;
        description: string;
        categoryId: number;
        brand: string;
        brandId: string;
        cost: number;
        modifier: number;
        price: number;
        syncId: string | null;
        syncState: string;
        syncEnabled: boolean;
        syncLastUpdated: Date | null;
        syncLastSynced: Date | null;
        syncProviderId: number | null;
    } | {
        id: number;
        createdAt: Date;
        updatedAt: Date;
        title: string;
        description: string;
        categoryId: number;
        brand: string;
        brandId: string;
        cost: number;
        modifier: number;
        price: number;
        syncId: string | null;
        syncState: string;
        syncEnabled: boolean;
        syncLastUpdated: Date | null;
        syncLastSynced: Date | null;
        syncProviderId: number | null;
    })[][], number, number]>;
    findAllSimple(params: any): Promise<{
        id: number;
        title: string;
        brandId: string;
    }[]>;
    findOne(id: number): Promise<({
        category: {
            id: number;
            name: string;
            createdAt: Date;
            updatedAt: Date;
        };
    } & {
        id: number;
        createdAt: Date;
        updatedAt: Date;
        title: string;
        description: string;
        categoryId: number;
        brand: string;
        brandId: string;
        cost: number;
        modifier: number;
        price: number;
        syncId: string | null;
        syncState: string;
        syncEnabled: boolean;
        syncLastUpdated: Date | null;
        syncLastSynced: Date | null;
        syncProviderId: number | null;
    }) | null>;
    update(id: string, updateProductDto: UpdateProductDto): Promise<{
        id: number;
        createdAt: Date;
        updatedAt: Date;
        title: string;
        description: string;
        categoryId: number;
        brand: string;
        brandId: string;
        cost: number;
        modifier: number;
        price: number;
        syncId: string | null;
        syncState: string;
        syncEnabled: boolean;
        syncLastUpdated: Date | null;
        syncLastSynced: Date | null;
        syncProviderId: number | null;
    }>;
    remove(id: string): Promise<{
        id: number;
        createdAt: Date;
        updatedAt: Date;
        title: string;
        description: string;
        categoryId: number;
        brand: string;
        brandId: string;
        cost: number;
        modifier: number;
        price: number;
        syncId: string | null;
        syncState: string;
        syncEnabled: boolean;
        syncLastUpdated: Date | null;
        syncLastSynced: Date | null;
        syncProviderId: number | null;
    }>;
}
