import Immutable from "immutable";
declare const PluginDependency_base: Immutable.Record.Class;
declare class PluginDependency extends PluginDependency_base {
    getName(): any;
    getVersion(): any;
    getPath(): any;
    isEnabled(): any;
    /**
     * Toggle this plugin state
     * @return {PluginDependency}
     */
    toggle(state?: boolean): Immutable.Map<string, any>;
    /**
     * Is the plugin using a git dependency
     * @return {boolean}
     */
    isGitDependency(): boolean;
    /**
     * Create a plugin with a name and a plugin
     * @return {Plugin|undefined}
     */
    static create(name: string, version: string, enabled?: boolean): PluginDependency;
    /**
     * Create a plugin from a string
     * @param {string} s
     * @return {Plugin|undefined}
     */
    static createFromString(s: any): PluginDependency;
    /**
     * Create a PluginDependency from a string
     * @param {string}
     * @return {List<PluginDependency>}
     */
    static listFromString(s: any): Immutable.Iterable<number, PluginDependency>;
    /**
     * Create a PluginDependency from an array
     */
    static listFromArray(arr: (PluginDependency | string)[]): Immutable.Iterable<number, PluginDependency>;
    /**
     * Export plugin dependencies as an array
     * @param {List<PluginDependency>} list
     * @return {Array<String>}
     */
    static listToArray(list: any): any;
}
export default PluginDependency;
//# sourceMappingURL=pluginDependency.d.ts.map