import type { OnApplicationShutdown } from '@nestjs/common'; import { ProfilerStorageService } from './profiler-storage.service.js'; import { CollectorRegistry } from '../collectors/collector-registry.service.js'; import { RouteCollector } from '../collectors/route.collector.js'; import type { ProfilerModuleOptions } from '../nest-profiler.builder.js'; import type { PerformanceRule } from '../analysis/performance-rule.interface.js'; import type { IContextAdapter } from '../adapters/context-adapter.interface.js'; import type { Profile } from '../interfaces/profile.interface.js'; import type { ProfilerFilterOption, ProfilerListFilter } from '../list-filters/profiler-list-filter.interface.js'; import type { ProfilerListSection } from '../list-sections/profiler-list-section.interface.js'; import type { ProfilerEntrypointType } from '../entrypoints/profiler-entrypoint-type.interface.js'; import type { ProfilerDiscoverSource } from '../routes/discover-source.interface.js'; import type { SummaryPrimitive } from '../storage/profile-summary.js'; import type { ExceptionCaptureOptions } from '../analysis/to-exception-entry.js'; export declare class ProfilerCoreService implements OnApplicationShutdown { readonly storage: ProfilerStorageService; readonly collectorRegistry: CollectorRegistry; readonly routeCollector: RouteCollector; private readonly contextAdapters; private readonly listFilters; private readonly performanceRules; private readonly listSections; private readonly entrypointTypes; private readonly discoverSources; private readonly filterOptions; private readonly pending; private readonly logger; private readonly staticAttributes; private readonly version; readonly exceptionCapture: ExceptionCaptureOptions; constructor(storage: ProfilerStorageService, collectorRegistry: CollectorRegistry, routeCollector: RouteCollector, options?: ProfilerModuleOptions); private stamp; getIndexAttributes(profile: Profile): Record; schedulePersist(profile: Profile): void; persist(profile: Profile): Promise; collect(profile: Profile): Promise; scheduleSave(profile: Profile): void; flushPendingProfiles(timeoutMs?: number): Promise; onApplicationShutdown(): Promise; private track; registerContextAdapter(adapter: IContextAdapter): void; findContextAdapter(contextType: string): IContextAdapter | undefined; enrichHttpResponse(profile: Profile, req: object, responseBody: unknown): void; registerListFilter(filter: ProfilerListFilter): void; registerFilterOption(filterKey: string, option: ProfilerFilterOption): void; getListFilters(): ProfilerListFilter[]; registerPerformanceRule(rule: PerformanceRule): void; getPerformanceRules(): PerformanceRule[]; registerListSection(section: ProfilerListSection): void; getListSections(): ProfilerListSection[]; registerEntrypointType(entrypointType: ProfilerEntrypointType): void; getEntrypointType(type: string): ProfilerEntrypointType; getEntrypointTypes(): ProfilerEntrypointType[]; registerDiscoverSource(source: ProfilerDiscoverSource): void; getDiscoverSources(): ProfilerDiscoverSource[]; }