import { type MediaCallContext, type MediaProvider, type MediaProviderInfo, type MediaReadRequest, type MediaText } from './index.js'; /** Options for Mistral's OCR service. */ export interface MistralOcrProviderOptions { /** Mistral API key. */ apiKey: string; /** The OCR model. Defaults to `mistral-ocr-latest`. */ model?: string; /** API base URL. Defaults to `https://api.mistral.ai/v1`. */ baseUrl?: string; /** How tables are written: `markdown` by default, or `html`. */ tableFormat?: 'markdown' | 'html'; /** * Price per page, in US dollars, to report each reading's cost. Mistral prices OCR by the page; set * the rate your account pays. Without it, a result carries the page count and no cost. */ pricePerPage?: number; /** Headers added to every request. */ headers?: Record; /** Replaces the global `fetch`. */ fetch?: typeof fetch; } /** * Mistral's OCR service (`/v1/ocr`): a PDF, slide deck, document, or image read into Markdown page by * page, with each page's size and the boxes of the pictures on it. It reads; describe and answer go * to a vision model. A medium is sent as a data URI, or by its URL. */ export declare class MistralOcrProvider implements MediaProvider { private readonly options; /** Its name and what it does: reading images and documents. */ readonly info: MediaProviderInfo; constructor(options: MistralOcrProviderOptions); /** Reads a medium's text, page by page. */ read(request: MediaReadRequest, context: MediaCallContext): Promise; }