import MetadataRegistry = require('./metadataRegistry');
import { ManifestEntry } from './types';
/**
 * An api class for converting a source directory in mdapi package format into source compatible with an SFDX workspace.
 */
declare class MdapiConvertApi {
    [property: string]: any;
    constructor(force?: any);
    /**
     * @returns {string} the directory for the output
     */
    get outputDirectory(): any;
    /**
     * set the value of the output directory
     *
     * @param {string} outputDirectory - the new value of the output directory.
     */
    set outputDirectory(outputDirectory: any);
    /**
     * @returns {string} value of the root directory to convert. default to the project directory
     */
    get root(): any;
    /**
     * set the value of the root directory to convert
     *
     * @param {string} sourceRootValue - a directory containing a package.xml file. Is should represents a valid mdapi
     * package.
     */
    set root(sourceRootValue: any);
    isValidSourcePath(sourcePath: any): boolean;
    /**
     * @param itemPath path of the metadata to convert
     * @param mdName name of metadata as given in -m parameter
     * @returns true if the file is a folder metadata type
     */
    isFolder(itemPath: any, mdName?: any): any;
    /**
     * @param itemPath  the path to the file in the local project
     * @param validMetatdata  a filter against which the paths would be checked to see if the file needs to be converted
     * @param metadataRegistry {MetadataRegistry}
     * @returns { boolean} returns true if the path is valid path for covert
     */
    checkMetadataFromType(itemPath: string, validMetatdata: string[], metadataRegistry: MetadataRegistry): boolean;
    /**
     * @param itemPath the path to the file in the local project
     * @param validMetatdata a filter against which the paths would be checked to see if the file needs to be converted
     */
    checkMetadataFromPath(itemPath: string, validMetatdata: string[]): boolean;
    /**
     * @param typeNamePairs  type name pairs from manifest
     * @param itemPath the path to the file in the local project
     * @param metadataRegistry
     * @returns  {boolean} true if the metadata type or, file name is present in the manifest
     */
    checkMetadataFromManifest(typeNamePairs: ManifestEntry[], itemPath: string, metadataRegistry: MetadataRegistry): boolean;
    /**
     * Returns a promise to convert a metadata api directory package into SFDX compatible source.
     *
     * @returns {BBPromise}
     */
    convertSource(org: any, context?: any): any;
}
export = MdapiConvertApi;
