@geogirafe/lib-geoportal
Version:
GeoGirafe is a flexible application to build online geoportals.
15 lines (14 loc) • 728 B
TypeScript
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 {};