/**
 * Start collecting diagnostics for a new import.
 * Returns a collection id that can be passed to `pushDiagnostic`/`drainDiagnostics`
 * to isolate concurrent imports.
 *
 * @param {number} [collectionId]
 * @returns {number}
 */
export function startCollection(collectionId?: number): number;
/**
 * Push a diagnostic record into the collection buffer.
 * @param {InlineTokenDiagnostic} diagnostic
 * @param {number} [collectionId]
 */
export function pushDiagnostic(diagnostic: InlineTokenDiagnostic, collectionId?: number): void;
/**
 * Drain and return all collected diagnostics, resetting the buffer.
 * @param {number} [collectionId]
 * @returns {InlineTokenDiagnostic[]}
 */
export function drainDiagnostics(collectionId?: number): InlineTokenDiagnostic[];
/**
 * Read (but don't drain) the current diagnostics. For testing.
 * @param {number} [collectionId]
 * @returns {ReadonlyArray<InlineTokenDiagnostic>}
 */
export function peekDiagnostics(collectionId?: number): ReadonlyArray<InlineTokenDiagnostic>;
/**
 * Import diagnostics collector for inline token validation.
 *
 * Handlers push structured INVALID_INLINE_TOKEN records here during import.
 * The converter pipeline calls `startCollection()` before import and
 * `drainDiagnostics()` after to retrieve and clear collected records.
 */
export type InlineTokenDiagnostic = import('../../../../../../../../document-api/src/index.js').InlineTokenDiagnostic;
//# sourceMappingURL=import-diagnostics.d.ts.map