import type { IContainerPlugin } from "../Core/Interfaces/IContainerPlugin"; import type { IPlugin } from "../Core/Interfaces/IPlugin"; import type { Container } from "../Core/Container"; import type { RecursivePartial } from "../Types/RecursivePartial"; import type { IOptions } from "../Options/Interfaces/IOptions"; import type { IShapeDrawer } from "../Core/Interfaces/IShapeDrawer"; import type { Options } from "../Options/Classes/Options"; export declare class Plugins { private static readonly plugins; private static readonly presets; private static readonly drawers; static getPlugin(plugin: string): IPlugin | undefined; static addPlugin(plugin: IPlugin): void; static getAvailablePlugins(container: Container): Map; static loadOptions(options: Options, sourceOptions: RecursivePartial): void; static getPreset(preset: string): RecursivePartial | undefined; static addPreset(presetKey: string, options: RecursivePartial): void; static addShapeDrawer(type: string, drawer: IShapeDrawer): void; static getShapeDrawer(type: string): IShapeDrawer | undefined; static getSupportedShapes(): IterableIterator; }