import { ApexClasses } from '../SfpPackage';
export default class PackageManifest {
    private _manifestJson;
    private _manifestXml;
    /**
     * Getter for package manifest JSON
     */
    get manifestJson(): any;
    /**
     * Getter for package manifest XML
     */
    get manifestXml(): string;
    private constructor();
    /**
     * Factory method
     * @param mdapiDir directory containing package.xml
     * @returns instance of PackageManifest
     */
    static create(mdapiDir: string): Promise<PackageManifest>;
    /**
     * Factory method
     * @param components
     * @param apiVersion
     * @returns intance of PackageManifest
     */
    static createFromScratch(components: {
        fullName: string;
        type: string;
    }[], apiVersion: string): PackageManifest;
    /**
     * Factory method
     * @param manifest package JSON
     * @returns instance of PackageManifest
     */
    static createWithJSONManifest(manifest: any): Promise<PackageManifest>;
    /**
     *
     * @returns true or false, for whether there are profiles
     */
    isProfilesInPackage(): boolean;
    /**
     *
     * @returns true or false, for whether there are profiles
     */
    isPermissionSetsInPackage(): boolean;
    isPermissionSetGroupsFoundInPackage(): boolean;
    /**
     *
     * @returns true or false, for whether there are Apex classes and/or triggers
     */
    isApexInPackage(): boolean;
    /**
     *
     * @returns Apex triggers if there are any, otherwise returns undefined
     */
    fetchTriggers(): ApexClasses;
    isPayloadContainTypesOtherThan(providedType: string): boolean;
    isPayLoadContainTypesSupportedByProfiles(): boolean;
}
