import { ValidationRule, ValidationContext, ValidationSeverity } from '../interfaces'; /** * Options for RequiredFunctionCallRule */ export interface RequiredFunctionCallOptions { /** Names of functions that must be called at least once */ required: string[]; /** Minimum number of times each function must be called */ minCalls?: number; /** Maximum number of times each function can be called (0 = unlimited) */ maxCalls?: number; /** Custom message template (use {function} placeholder) */ messageTemplate?: string; /** * Mode for checking multiple required functions * - 'all': ALL functions in the list must be called (default) * - 'any': At least ONE function in the list must be called */ mode?: 'all' | 'any'; } /** * Rule that ensures specific functions are called * * Useful for ensuring that sandboxed code actually uses the provided API. * For example, ensuring code calls 'callTool' function. */ export declare class RequiredFunctionCallRule implements ValidationRule { private options; readonly name = "required-function-call"; readonly description = "Ensures specific functions are called"; readonly defaultSeverity = ValidationSeverity.ERROR; readonly enabledByDefault = false; constructor(options: RequiredFunctionCallOptions); validate(context: ValidationContext): void; }