import { Evented } from '@dojo/core/Evented'; import { EventObject } from '@dojo/core/interfaces'; import { Constructor, InjectorFactory, InjectorItem, RegistryLabel, WidgetBaseInterface } from './interfaces'; import { Registry, RegistryItem } from './Registry'; export declare type RegistryHandlerEventMap = { invalidate: EventObject<'invalidate'>; }; export declare class RegistryHandler extends Evented { private _registry; private _registryWidgetLabelMap; private _registryInjectorLabelMap; protected baseRegistry?: Registry; constructor(); base: Registry; define(label: RegistryLabel, widget: RegistryItem): void; defineInjector(label: RegistryLabel, injector: InjectorFactory): void; has(label: RegistryLabel): boolean; hasInjector(label: RegistryLabel): boolean; get(label: RegistryLabel, globalPrecedence?: boolean): Constructor | null; getInjector(label: RegistryLabel, globalPrecedence?: boolean): InjectorItem | null; private _get(label, globalPrecedence, getFunctionName, labelMap); } export default RegistryHandler;