import { type normalizeTypes, type resolveDocument, type Document, type WalkContext } from '@redocly/openapi-core';
import type { DebugMediaTypeLog, DocumentMetrics, ScoringConstants } from './types.js';
export interface CollectMetricsOptions {
    document: Document;
    types: ReturnType<typeof normalizeTypes>;
    resolvedRefMap: ReturnType<typeof resolveDocument> extends Promise<infer R> ? R : never;
    ctx: WalkContext;
    debugOperationId?: string;
    /** When set, must match the constants passed into scoring for this run (e.g. anyOf penalty). */
    scoringConstants?: ScoringConstants;
}
export interface CollectMetricsResult {
    metrics: DocumentMetrics;
    debugLogs: DebugMediaTypeLog[];
}
export declare function collectMetrics({ document, types, resolvedRefMap, ctx, debugOperationId, scoringConstants, }: CollectMetricsOptions): CollectMetricsResult;
//# sourceMappingURL=collect-metrics.d.ts.map