export interface Product {
    id: number;
    shopId: number;
    name: string;
    price: number;
    priceWithDiscount?: number;
    discount?: number;
    stock?: number;
    slug?: string;
    images?: {
        id: number;
        url: string;
    }[];
    categories?: {
        id: number;
        name: string;
        slug: string;
    }[];
    variations?: any[];
}
export interface PaginatedProducts {
    data: Product[];
    total: number;
    page: number;
    limit: number;
}
export declare function getProducts(page?: number, limit?: number): Promise<PaginatedProducts>;
export declare function getProductById(productId: number): Promise<Product | null>;
export declare function getProductsByCategorySlug(categorySlug: string, page?: number, limit?: number): Promise<PaginatedProducts>;
