import { BundlePlugin, BundlePluginConfig } from './index.js';
export interface SubsetBundlePluginConfig extends BundlePluginConfig {
    scanFiles?: string | string[] | Record<string, string | string[]>;
    ignore?: string | string[];
    whiteList?: string | string[];
    emptyCacheDir?: boolean;
}
export declare class SubsetUtils {
    static isSubsetLink(p: string): {
        idString: string;
        isSubset: boolean;
        searchParams: URLSearchParams;
    };
    static emptyCacheDir(config: BundlePluginConfig): Promise<void>;
}
export declare class SubsetBundlePlugin extends BundlePlugin {
    /** 构建引擎的文件 ID，提供给构建引擎判断 */
    buildId?: string;
    subsetConfig: SubsetBundlePluginConfig;
    constructor(config: SubsetBundlePluginConfig, key?: string);
    usedSubsets: Set<number>;
    subsetCacheDir: string;
    getCachedPath(p: string): string;
    isSubsetLink: typeof SubsetUtils.isSubsetLink;
    createSubsetsHash(): Promise<string | undefined>;
    /** 匹配绝对路径是否被获取到 */
    isMatchScanArea(p: string): boolean;
    /** 获取配置中的 scanFiles 字段 */
    private getGlobArea;
    private updateScanFiles;
    private getWhiteListSubsets;
}
