/**
 * 格式化 SKU 数据源，适配 SkuCard 组件
 */
export declare const formatSkuDataSource: (dataSource: any) => {
    id: any;
    title: any;
    subtitle: any;
    cover: any;
    price: any;
    original_price: any;
    stock: any;
    sortKeys: string[];
    isMini: any;
};
/**
 * Tab 项接口定义（与 List 组件保持一致）
 */
export interface TabItem {
    key: string;
    label: string;
    group?: string;
}
/**
 * 产品分类信息接口
 */
interface ProductCategory {
    id: number;
    name: string;
    icon?: string;
    slug?: string;
    sort?: number;
    /** 父级分类 ID，0 或 null/undefined 表示一级分类 */
    parent_id?: number | null;
    parent_category?: ProductCategory;
}
/**
 * 产品项接口
 */
interface Product {
    id: number;
    title: string;
    category?: ProductCategory[];
    [key: string]: any;
}
/**
 * 分类树节点接口（Switch 模式返回值）
 */
export interface CategoryTreeNode {
    /** 分类 ID，All 节点为 '{父级路径}_all' 格式 */
    id: number | string;
    /** 分类唯一标识 兼容 List 组件的 key 字段 */
    key: number | string;
    /** 分类名称 兼容 List 组件的 label 字段 */
    label: string;
    /** 分类分组 兼容 List 组件的 group 字段 */
    group: number | string;
    /** 分类名称 */
    name: string;
    /** 分类图标 */
    icon?: string;
    /**
     * 路径式父级标识
     * - 一级分类：无此字段
     * - 二级分类：'1'（父级 id）
     * - 三级分类：'1_2'（路径格式）
     * - 以此类推
     */
    pid?: string;
    /** 该分类下所有商品的 ID 数组（包含子分类的商品） */
    productIds: number[];
    /** 子分类列表，如果有子分类，第一个为 All 节点 */
    children?: CategoryTreeNode[];
    /** 子分类最大层级 */
    childrenMaxLevel: number;
}
/**
 * 根据产品数据生成分类 Tabs（Switch 模式）
 * 参考 TestResponsiveWrapper 的 generateSimpleTabItems 函数
 *
 * @param products 产品列表
 * @param tabStyle tab 样式类型
 * @returns Switch 模式返回 CategoryTreeNode[]，Anchor 模式返回 TabItem[]
 */
export declare const generateProductTabs: (products: Product[], tabStyle?: 'switch' | 'anchor', isTreeTab?: boolean) => CategoryTreeNode[] | TabItem[];
/**
 * 按 tabData 分类顺序对商品列表排序，同分类内按商品 sort 降序
 * 仅在 isTreeTab 为 false 时使用
 *
 * @param data 商品列表（category 已转为 string[] 格式）
 * @param tabData 分类 tab 列表（CategoryTreeNode[]）
 * @returns 排序后的商品列表（原地排序）
 */
export declare const sortProductsByTabOrder: (data: any[], tabData: CategoryTreeNode[]) => any[];
export {};
