import * as IOE from 'fp-ts/IOEither';
import * as t from 'io-ts';
type PackageJson = t.TypeOf<typeof PackageJson>;
declare const PackageJson: t.ReadonlyC<t.IntersectionC<[t.TypeC<{
    name: t.StringC;
    peerDependencies: t.RecordC<t.StringC, t.StringC>;
    dependencies: t.RecordC<t.StringC, t.StringC>;
}>, t.PartialC<{
    bundledDependencies: t.ReadonlyArrayC<t.StringC>;
}>]>>;
export declare function _removePeerDependencies(packageJson: PackageJson, name: string): PackageJson;
export declare function insertDependencies(pathToPackage: string): (deps: readonly Readonly<{
    name: string;
    path: string;
}>[]) => IOE.IOEither<Error, void>;
export declare function fixPackageJson(pathToPackage: string): IOE.IOEither<Error, string>;
export declare function getPackageName(pathToPackage: string): IOE.IOEither<Error, string>;
export {};
