import { ProductService as MedusaProductService } from "@medusajs/medusa/dist/services"; import { PriceListLoadConfig, Product as MedusaProduct, Product } from "@medusajs/medusa/dist"; import { FilterableProductProps as MedusaFilterableProductProps } from "@medusajs/medusa/dist/types/product"; import { FindConfig, Selector } from "@medusajs/medusa/dist/types/common"; import { FindWithoutRelationsOptions } from "@medusajs/medusa/dist/repositories/product"; declare class FilterableProductPropsMultiStore extends MedusaFilterableProductProps { store_id?: string; } interface FindProductMultiStoreConfig extends FindConfig { store_id?: string; } type FindProductConfig = FindProductMultiStoreConfig & PriceListLoadConfig; export declare class MultiStoreProductService extends MedusaProductService { readonly container: any; constructor(container: any); retrieve(productId: string, config?: FindProductConfig): Promise; prepareListQuery_(selector: FilterableProductPropsMultiStore | Selector, config: FindProductConfig): { q: string; relations: (keyof MedusaProduct)[]; query: FindWithoutRelationsOptions; }; retrieveByHandle(productHandle: string, config?: FindProductConfig, store_id?: string): Promise; /** * Gets a product by external id. * Throws in case of DB Error and if product was not found. * @param externalId - handle of the product to get. * @param config - details about what to get from the product * @param store_id - the store id to reference * @return the result of the find one operation. */ retrieveByExternalId(externalId: string, config?: FindProductConfig, store_id?: string): Promise; } export {};