UNPKG

@qrvey/formula-lang

Version:

QFormula support for qrvey projects

32 lines (31 loc) 1.23 kB
import { FunctionCallAST, FunctionDefinition, FunctionParameter, ProcessNodeResult, ValidatorExpectedInfo, ValidatorParameterResponse, ValidatorResponse } from '../constants/interfaces'; import { FunctionError } from './definitions'; interface MismatchDetail extends ValidatorExpectedInfo { from?: number; to?: number; optional?: boolean; } interface MismatchExpected extends MismatchDetail { generic?: boolean; } interface Mismatch { node: FunctionCallAST; validator: ValidatorResponse; parameter?: FunctionParameter; expected: Array<MismatchExpected>; received: Array<MismatchDetail>; } export declare class FunctionArgumentsMismatch extends FunctionError implements Mismatch { constructor(mismatch: Mismatch); validator: ValidatorResponse; parameter: FunctionParameter | undefined; expected: Array<MismatchExpected>; received: Array<MismatchDetail>; node: FunctionCallAST; } export declare function validateParameters(definition: FunctionDefinition, args: Array<ProcessNodeResult>, validators?: ValidatorParameterResponse[]): { expected: Array<MismatchExpected>; received: Array<MismatchDetail>; validator?: ValidatorParameterResponse; }; export {};