import { ProjectPaths } from "../Project"; import { Package } from "../Package"; import { YarnCommandResult } from "../types"; import { updateInstallStrategy, installStrategy, generateActions, latestOfMajorVersions, newPeerDependency, isCompatible, installStrategyForVersion } from "./utils"; export { InstallStrategy, InstallType, Action } from "./utils"; declare type Paths = Pick; export interface FramerLibraryManagerConfig { paths: Paths; builtInFramerVersion?: string | void; } export declare class FramerLibraryManager { private paths; private readonly builtInFramerVersion?; static updateInstallStrategy: typeof updateInstallStrategy; static installStrategy: typeof installStrategy; static generateActions: typeof generateActions; static latestOfMajorVersions: typeof latestOfMajorVersions; static newPeerDependency: typeof newPeerDependency; static isCompatible: typeof isCompatible; static installStrategyForVersion: typeof installStrategyForVersion; constructor({ paths, builtInFramerVersion }: FramerLibraryManagerConfig); /** * @returns true if actions were performed to change the installed library */ install(pkg: Package, version?: string): Promise; getPublishedFramerVersions(pkg: Package): Promise; private getPackageJson; private getPackageVersion; installedFramerVersion(pkg: Package): Promise; libraryCompatibility(pkg: Package): Promise<{ compatible: boolean; isError: boolean; message: string; recoverySuggestion: string; }>; private resolvePackageFramerVersion; private clearModulePathCache; destroy(): void; }