import { PosCatalogService } from './pos-catalog.service';
import { CreatePosCategoryDto, CreatePosProductFullDto, UpdatePosProductFullDto, CreatePosVariantDto, CreatePosBarcodeDto, CreatePosPriceBookDto, CreatePosPriceBookItemDto } from './dto/pos-catalog.dto';
export declare class PosCatalogController {
    private readonly service;
    constructor(service: PosCatalogService);
    products(): Promise<import("./entities/pos-product.entity").PosProduct[]>;
    getProductDetail(id: number): Promise<any>;
    createProduct(body: CreatePosProductFullDto): Promise<any>;
    updateProduct(id: number, body: UpdatePosProductFullDto): Promise<any>;
    deleteProduct(id: number): Promise<{
        deleted: boolean;
        id: number;
    }>;
    categories(): Promise<import("./entities/pos-category.entity").PosCategory[]>;
    createCategory(body: CreatePosCategoryDto): Promise<import("./entities/pos-category.entity").PosCategory>;
    updateCategory(id: number, body: CreatePosCategoryDto): Promise<import("./entities/pos-category.entity").PosCategory>;
    variants(productId?: string): Promise<import("./entities/pos-product-variant.entity").PosProductVariant[]>;
    createVariant(body: CreatePosVariantDto): Promise<any>;
    updateVariant(id: number, body: CreatePosVariantDto): Promise<import("./entities/pos-product-variant.entity").PosProductVariant>;
    deleteVariant(id: number): Promise<{
        deleted: boolean;
        id: number;
    }>;
    barcodes(variantId?: string): Promise<import("./entities/pos-barcode.entity").PosBarcode[]>;
    createBarcode(body: CreatePosBarcodeDto): Promise<import("./entities/pos-barcode.entity").PosBarcode>;
    updateBarcode(id: number, body: CreatePosBarcodeDto): Promise<import("./entities/pos-barcode.entity").PosBarcode>;
    priceBooks(): Promise<import("./entities/pos-price-book.entity").PosPriceBook[]>;
    createPriceBook(body: CreatePosPriceBookDto): Promise<import("./entities/pos-price-book.entity").PosPriceBook>;
    updatePriceBook(id: number, body: CreatePosPriceBookDto): Promise<import("./entities/pos-price-book.entity").PosPriceBook>;
    priceBookItems(id: number): Promise<import("./entities/pos-price-book-item.entity").PosPriceBookItem[]>;
    createPriceBookItem(id: number, body: CreatePosPriceBookItemDto): Promise<import("./entities/pos-price-book-item.entity").PosPriceBookItem>;
    resolve(code: string): Promise<import("./entities/pos-barcode.entity").PosBarcode | null>;
}
