import type { WarningDefault, Warning, WarningName } from "@nodesecure/js-x-ray";
import type { ManifestProbeExtractor, ProbeExtractorManifestParent } from "../payload.js";
import type { DependencyVersion } from "../../types.js";
export type WarningsResult = {
    warnings: {
        count: number;
        groups: Record<string, Warning<WarningDefault>[]>;
        uniqueKinds: Record<WarningName, number>;
    };
};
export interface WarningsOptions {
    /**
     * @default true
     */
    useSpecAsKey?: boolean;
}
export declare class Warnings implements ManifestProbeExtractor<WarningsResult> {
    #private;
    level: "manifest";
    constructor(options?: WarningsOptions);
    next(version: string, depVersion: DependencyVersion, parent: ProbeExtractorManifestParent): void;
    done(): {
        warnings: {
            count: number;
            uniqueKinds: any;
            groups: Record<string, Omit<WarningDefault<WarningName>, "value">[]>;
        };
    };
}
//# sourceMappingURL=WarningsExtractor.class.d.ts.map