/** Infer MIME type from a file extension (case-insensitive). * Returns the fallback if the extension is not recognised. */ export declare function mimeFromExtension(ext: string, fallback?: string): string; /** True when the MIME type is an image Claude can see via vision. * Tolerates `undefined` so callers can pass an attachment's optional * `mimeType` directly. */ export declare function isImageMime(mimeType: string | undefined): boolean; /** True when the MIME type is a PDF document Claude can read natively * via `type: "document"` content blocks. Tolerates `undefined`. */ export declare function isPdfMime(mimeType: string | undefined): boolean; /** True when the attachment can be sent to Claude directly as a * native content block (image or PDF) — no conversion needed. * Tolerates `undefined`. */ export declare function isNativeAttachmentMime(mimeType: string | undefined): boolean; export declare const isSupportedAttachmentMime: typeof isNativeAttachmentMime; export interface ParsedDataUrl { mimeType: string; data: string; } /** Parse a `data:;base64,` string. Returns null if the * format doesn't match. Also handles parameterised data URLs like * `data:image/png;charset=binary;base64,…`. */ export declare function parseDataUrl(dataUrl: string): ParsedDataUrl | null; /** Build a `data:;base64,` string from components. */ export declare function buildDataUrl(mimeType: string, base64Data: string): string;