import { JSONObject } from "kuzzle-sdk"; import { Plugin } from "../../types"; import { ApplicationManager } from "./index"; export declare class BackendPlugin extends ApplicationManager { /** * Uses a plugin in this application. * * Plugin name will be inferred from the class name. * e.g. `DeviceManagerPlugin` => `device-manager` * * @param plugin - Plugin instance * @param options - Additionnal options * - `name`: Specify a plugin's name instead of using the class name. * - `manifest`: Manually add a manifest definition * - `deprecationWarning`: If false, does not display deprecation warnings */ use(plugin: Plugin, options?: { name?: string; manifest?: JSONObject; deprecationWarning?: boolean; }): void; /** * Gets the instance of an already loaded plugin. * * @param name Plugin name */ get(name: string): TPlugin; /** * Lists loaded plugins */ list(): string[]; }