import { ModuleWithProviders } from '@angular/core'; import { PlLoadingTraceOptions } from './config/pl-loading-trace.models'; import { PlRoutingTrackerService } from './services/pl-routing-tracker.service'; import * as i0 from "@angular/core"; import * as i1 from "./components/pl-loading-overlay/pl-loading-overlay.component"; /** * NgModule wrapper for module-based Angular applications. * * ## Usage * ```ts * // app.module.ts * @NgModule({ * imports: [ * PlLoadingTraceModule.forRoot({ * shared: { enableHttpTracer: true, enableRouterTracer: true, debounceMs: 150 }, * http: { animationType: 'spinner', modal: true }, * router: { animationType: 'bar' }, * }), * ], * }) * export class AppModule {} * ``` * * Then add the overlay to your root template: * ```html * * ``` * * > **HTTP interceptor note**: for Angular 17+ apps that use * > `provideHttpClient()`, add `withInterceptorsFromDi()` so that * > class-based interceptors are picked up: * > ```ts * > provideHttpClient(withInterceptorsFromDi()) * > ``` * > Alternatively import the functional interceptor directly: * > ```ts * > provideHttpClient(withInterceptors([plLoadingHttpInterceptor])) * > ``` */ export declare class PlLoadingTraceModule { private readonly _tracker; /** * Force eager instantiation of {@link PlRoutingTrackerService} so that * router events are captured from application start. */ constructor(_tracker: PlRoutingTrackerService); static forRoot(options?: PlLoadingTraceOptions): ModuleWithProviders; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; }