UNPKG

@geogirafe/lib-geoportal

Version:

GeoGirafe is a flexible application to build online geoportals.

15 lines (14 loc) 728 B
import GirafeHTMLElement from '../../base/GirafeHTMLElement.js'; import GirafeSingleton from '../../base/GirafeSingleton.js'; type Callback = (elem: GirafeHTMLElement) => unknown; type Constructor<T> = new (...args: unknown[]) => T; export default class ComponentManager extends GirafeSingleton { private readonly components; private readonly registeredCallbacks; private readonly registeredCallbacksClasses; registerComponent(component: GirafeHTMLElement): void; registerComponentCallback(component: Constructor<GirafeHTMLElement>, callback: Callback): void; getComponents<T extends GirafeHTMLElement>(type: Constructor<T>): T[]; getComponentsByName(name: string): GirafeHTMLElement[]; } export {};