import { Rule } from '@angular-devkit/schematics';
import { Tree } from '@angular-devkit/schematics/src/tree/interface';
import { Options } from '../interfaces/options';
import { WorkspaceProject, ProjectType } from '@schematics/angular/utility/workspace-models';
export declare enum PackageTarget {
    DEV = "devDependencies",
    REGULAR = "dependencies",
    NONE = "none"
}
export interface PackageEntry {
    name: string;
    target: PackageTarget;
}
/**
 * Dependencies are explicitly defined here, so we avoid adding
 * unnecessary packages to the consuming project's deps
 */
export declare const DEPENDENCIES_MAP: PackageEntry[];
export declare const getConfigFile: (project: WorkspaceProject<ProjectType>, option: string, configSection?: string) => string;
export declare const overwriteJsonFile: (tree: Tree, targetFile: string, data: any) => void;
export declare const logSuccess: (options: Options) => Rule;
export declare const addDependencies: (options: Options) => Rule;
/**
 * Recursively search for the first property that matches targetProp within a json file.
 */
export declare const getPropertyFromWorkspace: (targetProp: string, workspace: any, curKey?: string) => {
    key: string;
    value: any;
};
export declare const addPackageToPkgJson: (tree: Tree, pkg: string, version: string, target: string) => boolean;
