export interface IOptions { [key: string]: any; } export default class Registry { registry: WeakMap; constructor(); elementExists(elem: HTMLElement | Window): boolean | null; getElement(elem: HTMLElement | Window): any; /** * administrator for lookup in the future * * @method add * @param {HTMLElement | Window} element - the item to add to root element registry * @param {IOption} options * @param {IOption.root} [root] - contains optional root e.g. window, container div, etc * @param {IOption.watcher} [observer] - optional * @public */ addElement(element: HTMLElement | Window, options?: IOptions): void; /** * @method remove * @param {HTMLElement|Window} target * @public */ removeElement(target: HTMLElement | Window): void; /** * reset weak map * * @method destroy * @public */ destroyRegistry(): void; }