import type { StateScope } from '../install/state-locator.js';
import type { LicenseStatus } from '../licensing/types.js';
export interface NgramFootprint {
    dbPath: string;
    dbBytes: number;
    walBytes: number;
    shmBytes: number;
    totalBytes: number;
    walLimitBytes: number;
    footprintLimitBytes: number;
    archives: number;
}
export interface DoctorReport {
    stateDir: string;
    totals: Record<StateScope, number>;
    entries: Array<{
        path: string;
        scope: StateScope;
        bytes: number;
        present: boolean;
    }>;
    flags: Array<{
        scope: StateScope;
        reason: string;
        actual: number;
        limit: number;
    }>;
    suggestCleanup: boolean;
    /** Install manifest's recorded architecture generation, if present. */
    installArchGeneration?: string;
    /** Architecture generation built into this binary. */
    currentArchGeneration: string;
    /** ngram-index footprint snapshot for the canonical state-dir DB. */
    ngram: NgramFootprint;
    /** Active license status. */
    license: Pick<LicenseStatus, 'tier' | 'valid' | 'expiresAt' | 'trial' | 'degradedReason'>;
}
export declare function runDoctorStorage(): DoctorReport;
