import { Room } from '../skychat/Room.js'; import { RoomManager } from '../skychat/RoomManager.js'; import { GlobalPlugin } from './GlobalPlugin.js'; import { PluginGroup } from './PluginGroup.js'; import { RoomPlugin } from './RoomPlugin.js'; /** * Utility class that handles the list of commands and plugins */ declare class GlobalPluginGroup { /** * List of plugin groups. */ readonly pluginGroups: PluginGroup[]; /** * Return an object with the default data storage object for each plugins. * This object will be used as default data storage for each user. */ readonly defaultDataStorageValues: { [pluginName: string]: any; }; /** * Create this instance, whose role is to manage the list of plugin groups enabled for the app. * If a given name does not exist, an error will be thrown. * @param pluginGroupNames */ constructor(pluginGroupNames: string[]); instantiateRoomPlugins(room: Room): RoomPlugin[]; instantiateGlobalPlugins(manager: RoomManager): GlobalPlugin[]; extractCommandObjectFromPlugins(plugins: RoomPlugin[] | GlobalPlugin[]): { [commandName: string]: RoomPlugin | GlobalPlugin; }; } export declare const globalPluginGroup: GlobalPluginGroup; export {};