import { EPackage } from '../metamodel/api/epackage.js';
/**
 * Generates *-factory.ts files, which provide static access to
 * methods for instantiating data objects for a TMF model.
 */
export declare class TGeneratorFactory {
    rootPackage: EPackage;
    /**
     * Single public static method for generating a XXXFactory class.
     * @param pkg
     */
    generateFactoryContents(pkg: EPackage): string;
    /**
     * Generate a specific set of imports for the interfaces and Impl classes in
     * this model.
     * @param pkg
     */
    private genSpecificImports;
    /**
     * Generate the singleton eINSTANCE for this model's factory class.
     * @param pkg
     */
    private genSingleton;
    /**
     * Generate the generic create() method for this factory that switches on
     * EClass to call the right specific creator method.
     * @param pkg
     */
    private genCreateSwitch;
    /**
     * Generate all the class-specific createXXX() methods.
     * @param pkg
     */
    private genClassCreators;
}
//# sourceMappingURL=tgenerator-factory.d.ts.map