import * as i0 from '@angular/core'; import { AfterContentInit, OnChanges, ElementRef, PlatformRef, CompilerOptions, NgZone, Version, Type, NgModuleRef } from '@angular/core'; import { LoadRemoteModuleOptions } from '@angular-architects/module-federation-runtime'; import * as i2 from '@angular/common'; import { Router, UrlMatcher } from '@angular/router'; type WebComponentWrapperOptions = LoadRemoteModuleOptions & { elementName: string; }; declare class WebComponentWrapper implements AfterContentInit, OnChanges { vc: ElementRef; options: WebComponentWrapperOptions; props: { [prop: string]: unknown; }; events: { [event: string]: (event: Event) => void; }; element: HTMLElement; private route; ngOnChanges(): void; private populateProps; private setupEvents; ngAfterContentInit(): Promise; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class ModuleFederationToolsModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } type AppType = 'shell' | 'microfrontend'; type Options = { production: boolean; platformFactory?: () => PlatformRef; compilerOptions?: CompilerOptions & BootstrapOptions; version?: () => string | Version; appType?: AppType; /** * Opt-out of ngZone sharing. * Not recommanded. * Default value true. */ ngZoneSharing?: boolean; /** * Opt-out of platformSharing sharing. * Possible, if dependencies are not shared or each bootstrapped * remote app uses a different version. * Default value true. */ platformSharing?: boolean; /** * Deactivate support for legacy mode. * Only recommanded if all used implementations depend on * @angular-architects/module-federation-tools > 13.0.1. * Default value true. */ activeLegacyMode?: boolean; }; declare interface BootstrapOptions { ngZone?: NgZone | 'zone.js' | 'noop'; ngZoneEventCoalescing?: boolean; ngZoneRunCoalescing?: boolean; } declare function getMajor(version: string): string; /** * LEGACY IMPLEMENTATIONS START * * Can be deprecated in later major releases. * * To increase backwards compatibility legacy and current namespaces * within the window object are used. */ type LegacyPlatformCache = { platform: Record; }; declare function shareNgZone(zone: NgZone): void; declare function bootstrap(module: Type, options: Options): Promise>; declare function startsWith(prefix: string): UrlMatcher; declare function endsWith(prefix: string): UrlMatcher; declare function connectRouter(router: Router, useHash?: boolean): void; export { ModuleFederationToolsModule, WebComponentWrapper, bootstrap, connectRouter, endsWith, getMajor, shareNgZone, startsWith }; export type { AppType, LegacyPlatformCache, Options, WebComponentWrapperOptions };