export interface PackageData {
    fileName: string;
    dir: string;
    webResolvedImports: Record<string, string | undefined>;
    setResolvedCache: (key: string, entry: string) => void;
    getResolvedCache: (key: string) => string | undefined;
    data: {
        [key: string]: any;
        name: string;
        type: string;
        version: string;
        main: string;
        browser: any;
        exports: string | Record<string, any> | string[];
        dependencies: Record<string, string>;
    };
}
export type PackageCache = Map<string, PackageData>;
export declare function resolvePackageData(id: string, baseDir: string, preserveSymlinks?: boolean, packageCache?: PackageCache): PackageData | undefined;
export declare function loadPackageData(pkgPath: string, preserveSymlinks?: boolean, packageCache?: PackageCache): PackageData | undefined;
export declare function removePackageData(packageCache: PackageCache, pkgPath: string): void;
export declare function findNearestPackageData(basedir: string, packageCache?: PackageCache): PackageData | undefined;
/**
 * 查询指定目录中的packageJson，逐级向上查找
 * @param searchRoot
 * @returns
 */
export declare function getPkgJson(searchRoot: string): PackageData["data"] | undefined;
