import ts from 'typescript';
import { ScriptBuilder } from '../../sb';
import { VisitOptions } from '../../types';
import { Helper } from '../Helper';
export declare type ForLoopHelperFunction = (() => void) | undefined;
export interface ForLoopHelperOptions {
    readonly each: (options: VisitOptions) => void;
    readonly condition: ForLoopHelperFunction;
    readonly incrementor?: ForLoopHelperFunction;
    readonly handleReturn?: ForLoopHelperFunction;
    readonly cleanup: () => void;
}
export declare class ForLoopHelper extends Helper {
    private readonly each;
    private readonly condition;
    private readonly incrementor;
    private readonly handleReturn;
    private readonly cleanup;
    constructor({ each, cleanup, condition, incrementor, handleReturn }: ForLoopHelperOptions);
    emit(sb: ScriptBuilder, node: ts.Node, options: VisitOptions): void;
}
