import type { StepperExpression } from '..'; /** * Checks whether a fully-reduced stepper node represents a concrete value * that can be type-checked by the runtime type checking functions. * * Returns `true` for: * - Literal nodes (numbers, strings, booleans, null) * - ArrowFunctionExpression nodes (functions) * - ArrayExpression nodes with all elements fully reduced * - Identifier nodes representing `undefined` */ export declare function isStepperValue(node: StepperExpression): boolean; /** * Extracts a representative JavaScript value from a fully-reduced stepper node, * suitable for passing to runtime type checking functions (checkBinaryExpression, * checkUnaryExpression). * * For Literal nodes, returns the actual literal value. * For non-Literal fully-reduced nodes (e.g., ArrowFunctionExpression, ArrayExpression, * undefined Identifier), returns a JS value of the corresponding type so that the * RTTC functions can produce the correct error message. * * Should only be called on nodes where `isStepperValue` returns `true`. */ export declare function getStepperNodeValue(node: StepperExpression): unknown;