import { FunctionContext, ProcessedArg } from '../../../types.js';
/**
 * Custom processor for measureFactory.customFormula that:
 * - Validates formula bracket references match context keys
 * - Validates all context keys are used in the formula (when context is provided)
 * - Validates context is not empty only when formula contains bracket references
 * - Allows empty context when formula has no bracket references (e.g., MOD(10, 7))
 * - Validates formula is not empty
 * - Transforms context items by executing nested function calls
 * - Converts attribute strings to actual attribute objects
 * - Accepts optional 4th argument (format) and optional 5th argument (description) for LLM context (ignored during processing)
 *
 * @param processedArgs - [title: string, formula: string, context: Record<string, unknown>, format?: string, description?: string]
 * @param context - Processing context with error prefix and other metadata
 * @throws Error with descriptive message if validation fails
 */
export declare function processCustomFormula(processedArgs: ProcessedArg[], context: FunctionContext): void;
