@xraph/smartform-react
Version:
React library for rendering and validating SmartForms with shadcn components
19 lines (18 loc) • 913 B
TypeScript
import type { TemplateContext, TemplateExpression, VariableRegistry, VariableSuggestion } from "./types";
export declare class TemplateEngine {
private variableRegistry;
private expressionCache;
constructor(variableRegistry?: VariableRegistry);
setVariableRegistry(reg: VariableRegistry): void;
getVariableRegistry(): VariableRegistry;
parseTemplateExpression(expression: string): TemplateExpression;
evaluateExpression(expressionString: string, context: TemplateContext): Promise<any>;
evaluateExpressionAsString(expressionString: string, context: TemplateContext): Promise<string>;
private findTopLevelTernaryOperators;
private parseTernaryExpressionCore;
private splitFunctionArgs;
private parseExpressionPart;
getExpressionSuggestions(partialExpr: string): VariableSuggestion[];
private filterSuggestionsByPrefix;
private filterSuggestionsByType;
}