import * as path from 'path'; import * as pino from 'pino'; import yargs from 'yargs'; import { DriverFile } from './synth'; export interface SynthDriverCliOptions extends yargs.Arguments { blueprint: string; outdir: string; defaultOptions: string; additionalOptions?: string; cache?: boolean; existingBundle?: string; /** * defaults to '00.synth.' */ jobPrefix?: string; cleanUp: boolean; } /** * I call synth on a blueprint * 1. I expect the blueprint to then figure out which type of synthesis i'm running * a. normal quick synthesis * b. cache synthesis * c. build a cache * 2. figure out where my synthesis will end up going * 2. figure out the option(s) the blueprint will take * 3. run a synthesis for each * @param log * @param options */ export declare function driveSynthesis(log: pino.BaseLogger, options: SynthDriverCliOptions): Promise; export declare const makeDriverFile: (log: pino.BaseLogger, options: { blueprint: string; cache?: boolean; }) => Promise<{ synthDriver: DriverFile; resynthDriver: DriverFile; }>; export declare const cleanUpDriver: (log: pino.BaseLogger, file: DriverFile) => void; /** * construct an array of objects, each representing a deep merged wizard configuration * @param log * @param options * @returns */ export declare const getWizardOptions: (log: pino.BaseLogger, options: { defaultOptionsLocation: string; additionalOptionsLocation?: string; }) => { path: string; option: any; }[];