import type { IToolParameters } from "../../tool-parameters.js";
import { IOutputModelFactory } from "../IOutputModelFactory.js";
import { Action } from "./Action.js";
import { OutputFile } from "./OutputFile.js";
export declare class VisitorFile extends OutputFile {
    genPackage?: string;
    accessLevel?: string;
    exportMacro?: string;
    grammarName: string;
    parserName: string;
    /** The names of all rule contexts which may need to be visited. */
    visitorNames: Set<string>;
    /**
     * For rule contexts created for a labeled outer alternative, maps from a listener context name to the name of
     * the rule which defines the context.
     */
    visitorLabelRuleNames: Map<string, string>;
    header: Action;
    namedActions: Map<string, Action>;
    constructor(factory: IOutputModelFactory, fileName: string, toolParameters: IToolParameters);
}
