import { SDKRequestOptions } from '../request-options'; import { SiteConfig } from '../../core/site-config'; import { CategoryItem } from './types/product-search.type'; export interface CategoryTreeNode extends CategoryItem { children?: CategoryTreeNode[]; } interface CategoriesTreeResponse { code: number; list: { data: CategoryTreeNode[]; [property: string]: unknown; }; [property: string]: unknown; } export declare const getCategoriesTreeApi: (options?: SDKRequestOptions) => Promise; export declare function categoryKey(category: Pick): string; export declare function flattenCategoryTree(nodes: CategoryTreeNode[]): CategoryItem[]; export declare function buildCategoryFilterTree(treeNodes: CategoryTreeNode[], filterCategoryIds: Set): CategoryTreeNode[]; export declare function filterCategoryTreeByWhitelist(treeNodes: CategoryTreeNode[], siteConfig?: SiteConfig): CategoryTreeNode[]; export {};