import type { Profile } from '../interfaces/profile.interface.js'; import type { ProfilerPage, ProfilerQuery } from './profiler-query.js'; import type { IndexAttributesProvider, SummaryPrimitive } from './profile-summary.js'; export declare const PROFILER_STORAGE_ADAPTER: unique symbol; export interface IProfilerStorageAdapter { readonly crossProcess?: boolean; save(profile: Profile): Promise | void; findAll(): Promise | Profile[]; findOne(token: string): Promise | Profile | undefined; clear(): Promise | void; query?(query: ProfilerQuery): Promise | ProfilerPage; distinct?(field: string, typeIn?: string[]): Promise | SummaryPrimitive[]; setIndexAttributesProvider?(provider: IndexAttributesProvider): void; close?(): Promise | void; }