@juspay/neurolink
Version:
Universal AI Development Platform with working MCP integration, multi-provider support, voice (TTS/STT/realtime), and professional CLI. 58+ external MCP servers discoverable, multimodal file processing, RAG pipelines. Build, test, and deploy AI applicatio
91 lines • 2.98 kB
JavaScript
/**
* File Processor Types
*
* Single source of truth for ALL file processing type definitions.
* All processor infrastructure, registry, and SDK types are defined here.
*
* @module processors/base/types
*/
// =============================================================================
// CONSTANTS
// =============================================================================
/**
* Default retry configuration for file downloads.
* Uses exponential backoff: 1s, 2s, 4s (capped at maxDelayMs)
*/
export const DEFAULT_RETRY_CONFIG = {
maxRetries: 3,
baseDelayMs: 1000,
maxDelayMs: 10000,
};
/** Default timeout for text file downloads (30 seconds) */
export const DEFAULT_TEXT_TIMEOUT_MS = 30000;
/** Default maximum size for text files (10 MB) */
export const DEFAULT_TEXT_MAX_SIZE_MB = 10;
/** Default timeout for image file downloads (30 seconds) */
export const DEFAULT_IMAGE_TIMEOUT_MS = 30000;
/** Default maximum size for image files (10 MB) */
export const DEFAULT_IMAGE_MAX_SIZE_MB = 10;
// =============================================================================
// PRIORITY CONSTANTS
// =============================================================================
/**
* Priority levels for file processors.
* Lower number = higher priority = matched first.
*
* This priority system ensures that:
* - SVG files are processed as text (not images) since many AI providers don't support SVG format
* - More specific processors match before generic ones
* - Document types are processed in a logical order
*/
export const PROCESSOR_PRIORITIES = {
/** SVG files - processed as text before image processing */
SVG: 5,
/** Image files - AI vision processing */
IMAGE: 10,
/** PDF documents */
PDF: 20,
/** CSV/tabular data */
CSV: 30,
/** Markdown files - structured text */
MARKDOWN: 40,
/** JSON data files */
JSON: 50,
/** YAML configuration/data files */
YAML: 60,
/** XML data files */
XML: 70,
/** HTML web content */
HTML: 80,
/** Excel spreadsheets */
EXCEL: 90,
/** Legacy .doc files */
DOC: 95,
/** Word documents (.docx) */
WORD: 100,
/** Plain text files */
TEXT: 110,
/** Source code files */
SOURCE_CODE: 120,
/** Configuration files */
CONFIG: 130,
/** RTF documents */
RTF: 140,
/** OpenDocument format files */
OPENDOCUMENT: 150,
/** Video files */
VIDEO: 160,
/** Audio files */
AUDIO: 170,
/** Archive files */
ARCHIVE: 180,
};
// =============================================================================
// ERROR MESSAGE TEMPLATE
// =============================================================================
/**
* Error message template with user-friendly messaging and retry information.
* Re-exported from errors module for convenience.
*/
export { FileErrorCode } from "../processors/errors/FileErrorCode.js";
//# sourceMappingURL=processor.js.map