import { FunctionContext, ProcessedArg } from '../../types.js';
/**
 * Processes filters that accept string | number values
 * Used by: equals, doesntEqual
 *
 * @param processedArgs - [attribute, value, config?]
 * @param context - Processing context with error prefix and other metadata
 * @returns Same `processedArgs` reference when validation succeeds
 * @throws Error with descriptive message if validation fails
 */
export declare function processStringOrNumericFilter(processedArgs: ProcessedArg[], context: FunctionContext): ProcessedArg[];
/**
 * Processes filters that only accept numeric values
 * Used by: greaterThan, lessThan, between, etc.
 *
 * @param processedArgs - [attribute, value, config?]
 * @param context - Processing context with error prefix and other metadata
 * @returns Same `processedArgs` reference when validation succeeds
 * @throws Error with descriptive message if validation fails
 */
export declare function processNumericFilter(processedArgs: ProcessedArg[], context: FunctionContext): ProcessedArg[];
/**
 * Processes filters that only accept string values
 * Used by: contains, startsWith, endsWith, like, etc.
 *
 * @param processedArgs - [attribute, value, config?]
 * @param context - Processing context with error prefix and other metadata
 * @returns Same `processedArgs` reference when validation succeeds
 * @throws Error with descriptive message if validation fails
 */
export declare function processStringFilter(processedArgs: ProcessedArg[], context: FunctionContext): ProcessedArg[];
/**
 * Processes exclude filter to validate that it only accepts members filters
 * Used by: exclude
 *
 * @param processedArgs - [filter, inputFilter?, config?]
 * @param context - Processing context with error prefix and other metadata
 * @returns Same `processedArgs` reference when validation succeeds
 * @throws Error with descriptive message if validation fails
 */
export declare function processExcludeFilter(processedArgs: ProcessedArg[], context: FunctionContext): ProcessedArg[];
