import { HandleCommand } from "../../HandleCommand"; import { HandlerContext } from "../../HandlerContext"; import { Maker } from "../../util/constructionUtils"; import { CommandDetails } from "../CommandDetails"; import { ProjectAction } from "../common/projectAction"; import { RepoRef } from "../common/RepoId"; import { AnyProjectEditor } from "../edit/projectEditor"; import { ProjectPersister } from "./generatorUtils"; import { SeedDrivenGeneratorParameters } from "./SeedDrivenGeneratorParameters"; export declare type EditorFactory
= (params: P, ctx: HandlerContext) => AnyProjectEditor
; /** * Further details of a generator to allow selective customization */ export interface GeneratorCommandDetails
extends CommandDetails { redirecter: (r: RepoRef) => string; projectPersister?: ProjectPersister; afterAction?: ProjectAction
; } /** * Create a generator function wrapping the given transform * * DEPRECATED: use the one in @atomist/sdm * * @param {AnyProjectEditor} editorFactory editor for the transformation * @param factory construction function * @param {string} name name of the generator * @param {string} details object allowing customization beyond reasonable defaults * @return {HandleCommand} */ export declare function generatorHandler
(editorFactory: EditorFactory
, factory: Maker
, name: string, details?: Partial