import { IControllerArray, IBindingContext } from './exported';
import { ElementController } from '../view/exported';
export interface IElement {
    $shadowdom?: Node | Element | HTMLElement;
    $element?: Node | Element | HTMLElement;
    $attributes?: NamedNodeMap;
    $bindingContext?: IBindingContext;
    $controller?: ElementController;
    loadTemplate?(): string | Promise<string>;
    created?(templateNode?: Node | Element): void;
    processContent?(templateNode?: Node | Element): boolean;
    contentProcessed?(controllers?: IControllerArray): void;
    attached?(): void;
    detached?(): void;
}
