import type { Profile } from '../interfaces/profile.interface.js'; import type { IProfilerStorageAdapter } from './storage-adapter.interface.js'; import type { IndexAttributesProvider, SummaryPrimitive } from './profile-summary.js'; import type { ProfilerPage, ProfilerQuery } from './profiler-query.js'; export interface FileStorageAdapterOptions { storagePath?: string; maxProfiles?: number; ttl?: number; } export declare class FileStorageAdapter implements IProfilerStorageAdapter { readonly crossProcess = true; private readonly dir; private readonly maxProfiles; private readonly ttlMs; private readonly index; private readonly cache; private getAttributes?; private ready; private chain; constructor(options?: FileStorageAdapterOptions); setIndexAttributesProvider(provider: IndexAttributesProvider): void; save(profile: Profile): Promise; findAll(): Promise; query(query: ProfilerQuery): Promise; distinct(field: string, typeIn?: string[]): Promise; findOne(token: string): Promise; clear(): Promise; get storageDirectory(): string; private withLock; private init; private summarize; private isExpired; private validSummaries; private indexPath; private loadIndexFile; private persistIndex; private loadFromDisk; private syncIndex; private readProfile; private tokenPath; private evictExpiredAndOverflow; }