import { Logger } from "../logger"; export type ReferenceObject = { ref: string }; export type FunctionObject = { fn: string; argv: FunctionArgv }; export type FunctionArgv = Array; export type FunctionReturn = string | boolean | number | { [key: string]: FunctionReturn }; export type ConditionObject = FunctionObject & { assign?: string }; export type Expression = string | ReferenceObject | FunctionObject; export type EndpointParams = Record; export type EndpointResolverOptions = { endpointParams: EndpointParams; logger?: Logger; }; export type ReferenceRecord = Record; export type EvaluateOptions = EndpointResolverOptions & { referenceRecord: ReferenceRecord; };