import type { InstanceOptions, IOContext, RequestTracingConfig } from '@vtex/api'; import { JanusClient } from '@vtex/api'; import type { AuthMethod } from '../typings/tokens'; import type { GetSkuResponse, GetSkuContextResponse, Seller, Category, GetBrandResponse } from '../typings/catalog'; export declare class Catalog extends JanusClient { constructor(ctx: IOContext, options?: InstanceOptions); getCategoryById(categoryId: string, authMethod?: AuthMethod, tracingConfig?: RequestTracingConfig): Promise; getProductsAndSkus(from?: number, to?: number, authMethod?: AuthMethod, tracingConfig?: RequestTracingConfig): Promise; getSkuById(skuId: string, authMethod?: AuthMethod, tracingConfig?: RequestTracingConfig): Promise; getSkuContext(skuId: string, authMethod?: AuthMethod, tracingConfig?: RequestTracingConfig): Promise; changeNotification({ sellerId, sellerSkuId, authMethod, }: ChangeNotificationArgs, tracingConfig?: RequestTracingConfig): Promise; createSeller(seller: Seller, authMethod?: AuthMethod, tracingConfig?: RequestTracingConfig): Promise; getSellerList(authMethod?: AuthMethod, tracingConfig?: RequestTracingConfig): Promise; seller(id: string, authMethod?: AuthMethod, tracingConfig?: RequestTracingConfig): Promise; getBrandById(brandId: string, authMethod?: AuthMethod, tracingConfig?: RequestTracingConfig): Promise; } interface ChangeNotificationArgs { sellerId: string; sellerSkuId: string; authMethod?: AuthMethod; } export {};