@apihawk/billia-sdk
Version:
The ApiHawk Billia SDK
95 lines • 3.84 kB
TypeScript
import { BilliaSDKServiceBase } from '../lib/billia-sdk-service-base';
import { IRestPaginatedResource, IRestPaginationQuery } from '../types/common';
import { ICalculatedCatalogProductPrices, ICatalogProductSuggestions } from './billia-sdk-catalog.types';
import { ICatalogCategory, ICatalogProduct } from './billia-sdk.types';
import { IBilliaOAuthSession } from '../types';
export declare class BilliaSDKCatalog extends BilliaSDKServiceBase {
/**
* Get top-level categories
*/
getTopLevelCategories(): Promise<ICatalogCategory[]>;
/**
* Get all product categories.
* Optionally you can filter categories by providing a list of category IDs.
*/
getAllCategories(categoryIds?: number[]): Promise<IRestPaginatedResource<ICatalogCategory>>;
/**
* Get category by ID
*
* @param categoryId the category ID
*/
getCategoryById(categoryId: number): Promise<ICatalogCategory>;
/**
* Get catalog product.
*
* @param id catalog product ID
* @param session user session
*/
getCatalogProduct(id: number, session: IBilliaOAuthSession): Promise<ICatalogProduct>;
/**
* Get catalog products by category.
*
* @param categoryId the category ID
* @param session user session
* @param subcategoryItems whether to include products from subcategories
*/
getProductsByCategory(categoryId: number, session: IBilliaOAuthSession, subcategoryItems?: boolean): Promise<IRestPaginatedResource<ICatalogProduct>>;
/**
* Get catalog products
* @param ids catalog product IDs list
* @param pagination pagination query object
* @param options options for listing products
*/
getCatalogProducts(ids?: number[], pagination?: IRestPaginationQuery, options?: any, session?: IBilliaOAuthSession): Promise<IRestPaginatedResource<ICatalogProduct>>;
/**
* Lists the catalog product prices for a specified set of quantities/periods.
*
* @param productId the catalog product ID
* @param quantities list of quantities for which prices will be calculated
* @param session user session
* @returns hash-map of quantity -> price relations
*/
productCalculator(productId: number, quantities: number[] | undefined, session: IBilliaOAuthSession): Promise<ICalculatedCatalogProductPrices>;
/**
* Gets all Domain products.
*
* @param session user session
*/
getDomainProducts(session: IBilliaOAuthSession): Promise<ICatalogProduct[]>;
/**
* Gets all TLDs.
*/
getAllTlds(session: IBilliaOAuthSession): Promise<string[]>;
/**
* Get suggested products
*
* @param id catalog product ID
* @param session user session
* @param options catalog products fetch options object
*/
getSuggestedProducts(id: number, session: IBilliaOAuthSession, options?: any): Promise<ICatalogProduct[]>;
/**
* Get product suggestions
*
* @param items list of product IDs
* @param session user session
* @param visibility resource visibility string
* @param images whether to include product images
*/
getProductSuggestions(items: any, session: IBilliaOAuthSession, visibility?: string[] | string, images?: boolean): Promise<ICatalogProductSuggestions>;
/**
* Get product upgrades
*
* @param productId catalog product ID
* @param session user session
*/
getProductUpgrades(productId: number, session: IBilliaOAuthSession): Promise<IRestPaginatedResource<ICatalogProduct>>;
/**
* Get catalog products by category or by list of categories.
*
* @param categoryId category ID or a list of category IDs
* @param session user session
*/
private _getProductsByCategory;
}
//# sourceMappingURL=billia-sdk-catalog.d.ts.map