import { ApexClass, ApexInterface, ApexEnum, ClassSummary } from "@aurahelper/core";
export declare class System {
    /**
     * Method to get all namespaces data
     * @returns {{ [key: string]: { [key: string]: ApexClass | ApexInterface | ApexEnum } }} Return a Map with NS name as key and Map as value with class, enum or interface name as key and Apex node data as value
     */
    static getAllNamespacesData(): {
        [key: string]: {
            [key: string]: ApexClass | ApexInterface | ApexEnum;
        };
    };
    /**
     * Method to get data from specified namespace
     * @param {string} nsName Namespace name to get all data
     * @returns {{ [key: string]: ApexClass | ApexInterface | ApexEnum } | undefined } Return a Map with class, enum or interface name as key and Apex node data as value
     */
    static getNamespaceData(nsName: string): {
        [key: string]: ApexClass | ApexInterface | ApexEnum;
    } | undefined;
    /**
     * Method to get All Namespaces summary
     * @returns { [key: string]: { [key: string]: ClassSummary } } Return a Map with NS name as key and Map value with class name as key and Class summary as value
     */
    static getAllNamespacesSummary(): {
        [key: string]: {
            [key: string]: ClassSummary;
        };
    };
    /**
     * Method to get namespace classes summary
     * @param {string} nsName Namespace name to get summary
     * @returns {{ [key: string]: ClassSummary } | undefined} Return a Map with class, inerface or enum as key and ClassSummary object as data
     */
    static getNamespaceSummary(nsName: string): {
        [key: string]: ClassSummary;
    } | undefined;
    /**
     * Method to get all namespace names
     * @returns {string[]} Return a list with all namespace names
     */
    static getAllNamespaces(): string[];
    /**
     * Method to get class data from specified namespace
     * @param {string} nsName Namespace name to get class
     * @param {string} className Class name to get data
     * @returns {ApexInterface | ApexClass | ApexEnum | undefined} Return the selected Apex Node or undefined if namespace or class not exists (or Aura Helper has no data)
     */
    static getClass(nsName: string, className: string): ApexInterface | ApexClass | ApexEnum | undefined;
    /**
     * Method to get the Aura Base Components Details
     * @returns {any} Return a JSON with Aura Components system data
     */
    static getAuraComponentDetails(): any;
}
