import type { YamlValue } from '../types/index.js';
export interface LoopContext {
    variable: string;
    item: unknown;
    index: number;
    total: number;
    parent?: LoopContext;
}
export declare function detectSyntaxType(content: string): 'legacy' | 'handlebars' | 'mixed';
declare function processWithHandlebars(content: string, metadata: Record<string, YamlValue>, context?: LoopContext, enableFieldTracking?: boolean, astFieldTracking?: boolean, logicBranchHighlighting?: boolean): string;
declare function preprocessConditionalComparisons(content: string): string;
declare function preprocessConditionalExpression(expression: string): string | null;
declare function stripOuterParentheses(value: string): string;
declare function splitAtTopLevelOperator(expression: string, operator: string): [string, string] | null;
declare function registerVariableFallbackHelper(): void;
declare function preprocessSimpleVariableMixins(content: string): string;
declare function applyFieldTrackingToOutput(content: string, metadata: Record<string, YamlValue>): string;
export declare function processTemplateLoops(content: string, metadata: Record<string, YamlValue>, context?: LoopContext, enableFieldTracking?: boolean, astFieldTracking?: boolean, logicBranchHighlighting?: boolean): string;
export { processWithHandlebars as _processWithHandlebars, preprocessConditionalComparisons as _preprocessConditionalComparisons, preprocessConditionalExpression as _preprocessConditionalExpression, stripOuterParentheses as _stripOuterParentheses, splitAtTopLevelOperator as _splitAtTopLevelOperator, registerVariableFallbackHelper as _registerVariableFallbackHelper, preprocessSimpleVariableMixins as _preprocessSimpleVariableMixins, applyFieldTrackingToOutput as _applyFieldTrackingToOutput, };
export declare function resolvePath(obj: Record<string, YamlValue>, path: string): YamlValue | undefined;
//# sourceMappingURL=template-loops.d.ts.map