import { Plugin, PluginContext } from "./types";
export declare class PluginService {
    private pluginMap;
    private events?;
    constructor(context: PluginContext);
    loadPlugin(spec: string): Promise<string>;
    disablePlugin(key: string): boolean;
    enablePlugin(key: string): boolean;
    listPlugins(): string[];
    isPlugin(name: string): boolean;
    registerPlugin(name: string, plugin: Plugin): void;
    getPlugin(name: string): Plugin | undefined;
    getPlugins(): Plugin[];
    callMany(plugins: string[], userInput?: string): Promise<string>;
    call(kind: string, userInput?: string): Promise<string>;
    callManyForPlugin(kind: string, userInput?: string): Promise<string>;
    embed(kind: string, userInput: string): Promise<import("../types").MinimalEmbedding[]>;
}
