export declare const MOUNT_EVENT = "__mounted__"; export declare const ConstructRegistry: { [key: string]: {}; }; export declare const Singletons: { [key: string]: {}; }; export interface ConstructConf { selector: string; singleton?: true; } export interface EnhancedConstructor extends Function { queue: Function[]; } export interface Widget { init: (el: Element) => void; } export interface ArrayWidget { } export declare type AnyWidget = Widget | ArrayWidget; export declare const start: (root?: Element | DocumentFragment) => Widget[]; export declare const Construct: (conf: ConstructConf) => (proto: any) => void; export declare const addToConstructorQueue: (constructor: EnhancedConstructor, func: Function) => void; export declare const addToAfterMount: (constructor: EnhancedConstructor, func: Function) => void; export declare const runAfterDomMount: (root: Node) => void; export declare const runConstructorQueue: (widget: AnyWidget, node: Node) => void;