@gebrai/gebrai
Version:
Model Context Protocol server for GeoGebra mathematical visualization
92 lines • 3.27 kB
TypeScript
/**
* Validation utilities for GeoGebra MCP tools
*/
export interface ValidationResult {
isValid: boolean;
error?: string;
}
/**
* Validate point name (GeoGebra naming conventions)
*/
export declare function validatePointName(name: string): ValidationResult;
/**
* Validate object name (general GeoGebra naming conventions)
*/
export declare function validateObjectName(name: string): ValidationResult;
/**
* Validate coordinates
*/
export declare function validateCoordinates(x: number, y: number): ValidationResult;
/**
* Validate radius
*/
export declare function validateRadius(radius: number): ValidationResult;
/**
* Validate polygon vertices
*/
export declare function validatePolygonVertices(vertices: string[]): ValidationResult;
/**
* Validate linear equation format
*/
export declare function validateLinearEquation(equation: string): ValidationResult;
/**
* Validate that required parameters are provided for a given method
*/
export declare function validateRequiredParams(params: Record<string, unknown>, required: string[]): ValidationResult;
/**
* Validate function expression for standard functions f(x) = ...
*/
export declare function validateFunctionExpression(expression: string): ValidationResult;
/**
* Validate parametric function expressions
*/
export declare function validateParametricExpressions(xExpr: string, yExpr: string, parameter: string): ValidationResult;
/**
* Validate implicit function expression
*/
export declare function validateImplicitExpression(expression: string): ValidationResult;
/**
* Validate domain range parameters
*/
export declare function validateDomainRange(min: number, max: number, paramName?: string): ValidationResult;
/**
* Validate function styling parameters
*/
export declare function validateFunctionStyling(color?: string, thickness?: number, style?: string): ValidationResult;
/**
* Validate algebraic expression for CAS operations
*/
export declare function validateAlgebraicExpression(expression: string): ValidationResult;
/**
* Validate equation format for solving
*/
export declare function validateEquation(equation: string): ValidationResult;
/**
* Validate variable name for CAS operations
*/
export declare function validateVariableName(variable: string): ValidationResult;
/**
* Validate system of equations
*/
export declare function validateSystemOfEquations(equations: string[]): ValidationResult;
/**
* Validate variables list for system solving
*/
export declare function validateVariablesList(variables: string[]): ValidationResult;
/**
* Validates slider parameters for creation
*/
export declare function validateSliderParameters(name: string, min: number, max: number, increment?: number, defaultValue?: number): ValidationResult;
/**
* Validates animation speed parameter
*/
export declare function validateAnimationSpeed(speed: number): ValidationResult;
/**
* Validates animation direction parameter
*/
export declare function validateAnimationDirection(direction?: string): ValidationResult;
/**
* Validates parameters for animation export
*/
export declare function validateAnimationExportParameters(frameCount: number, frameDelay: number, totalDuration?: number): ValidationResult;
//# sourceMappingURL=validation.d.ts.map