import { TemplateContext } from "./provider/TemplateProvider";
/**
 * A generator for packages from a template.
 */
export interface TemplateGenerator<C extends TemplateContext> {
    /**
     * Generates a package in the specified directory from a template using the `context` provided.
     *
     * @param context - The context to pass to the template during rendering.
     * @param directory - The path of the directory in which the package should be generated.
     * @throws If an error occurs while generating the package.
     */
    generate(context: C, directory: string): Promise<void>;
}
