/** @experimental */ export interface NgElement extends HTMLElement { componentRef: ComponentRef | null; ngElement: NgElement | null; attributeChangedCallback(attrName: string, oldValue: string | null, newValue: string, namespace?: string): void; connectedCallback(): void; detach(): void; detectChanges(): void; disconnectedCallback(): void; getHost(): HTMLElement; markDirty(): void; } /** @experimental */ export interface NgElementConstructor { readonly is: string; readonly observedAttributes: string[]; new (): NgElementWithProps; upgrade(host: HTMLElement): NgElementWithProps; } /** @experimental */ export declare type NgElementWithProps = NgElement & { [property in keyof /** @experimental */ export declare function registerAsCustomElements(customElementComponents: Type[], platformRef: PlatformRef, moduleFactory: NgModuleFactory): Promise>; /** @experimental */ export declare const VERSION: Version;