declare class ProfileApi {
    [property: string]: any;
    constructor(org: any, includeUserLicenses: any, generateProfileInformation?: boolean);
    _copyNodes(originalDom: any, parentElement: any, childElement: any, members: any, appendToNode: any, profileName: any): boolean;
    _findAllProfiles(excludedDirectories?: any[]): string[];
    /**
     * For any profile present in the workspace, this function generates a subset of data that only contains references
     * to items in the manifest.
     *
     * @param destPath location of new profiles
     * @param manifest
     * @param excludedDirectories Directories to not include profiles from
     */
    generateProfiles(destPath: any, manifest: any, excludedDirectories?: any[]): any[];
    /**
     * Filter out all profiles in the manifest and if any profiles exists in the workspace, add them to the manifest.
     *
     * @param typesArr array of objects { name[], members[] } that represent package types JSON.
     * @param excludedDirectories Direcotires not to generate profiles for
     */
    filterAndGenerateProfilesForManifest(typesArr: any, excludedDirectories?: any[]): any;
    getProfileInformation(): ProfileInformation[];
}
declare class ProfileInformation {
    ProfileName: string;
    ProfilePath: string;
    IsPackaged: boolean;
    settingsRemoved: string[];
    constructor(ProfileName: string, ProfilePath: string, IsPackaged: boolean, settingsRemoved: string[]);
    setIsPackaged(IsPackaged: boolean): void;
    appendRemovedSetting(setting: string): void;
    logDebug(): string;
    logInfo(): string;
}
export = ProfileApi;
