import type { Attachment, AttachmentType, ContentPart, ServiceName } from './types'; /** * Processes file attachments for multimodal LLM requests */ export declare class AttachmentProcessor { /** * Create an attachment from a file path (Node.js only) */ static fromPath(filePath: string): Promise; /** * Create an attachment from a URL (for images that support URL references) */ static fromUrl(url: string, type?: AttachmentType): Attachment; /** * Fetch a file from URL and create an attachment (Node.js and browser) * Useful for PDFs and images from remote URLs that need to be embedded */ static fetchFromUrl(url: string): Promise; /** * Create an attachment from base64 data */ static fromBase64(data: string, mimeType: string, type?: AttachmentType): Attachment; /** * Create an attachment from a Buffer */ static fromBuffer(buffer: Buffer, mimeType: string, type?: AttachmentType): Attachment; /** * Convert an attachment to a ContentPart for a specific provider */ static toContentPart(attachment: Attachment, provider: ServiceName): ContentPart; /** * Get the MIME type for a file extension */ static getMimeType(extension: string): string | undefined; /** * Check if a MIME type is supported */ static isSupportedMimeType(mimeType: string): boolean; /** * Check if a provider supports a specific attachment type */ static isSupported(provider: ServiceName, attachmentType: AttachmentType): boolean; } //# sourceMappingURL=attachment-processor.d.ts.map