import New from '../commands/new'; export declare class Scaffold { protected appName: string; protected output: string; protected command: New; /** * Scaffolding state. * * @var {boolean} success */ private success; /** * Scaffolding busy. * * @var {boolean} busy */ private busy; /** * Formidable skeleton. * * @var {string} url */ protected url: string; /** * Formidable skeleton destination. * * @var {string} skeleton */ protected skeleton: string; /** * Use TypeScript. * * @var {boolean} ts */ protected ts: boolean; /** * Scaffold application. * * @param {string} appName application name * @param {string} output Output directory * @param {New} command * @param {boolean} dev * @returns {void} */ constructor(appName: string, output: string, command: New, dev?: boolean, ts?: boolean); /** * Check if scaffold was successful. * * @returns {boolean} */ get isSuccessful(): Boolean; /** * Check if application is still scaffolding. * * @returns {boolean} */ get isBusy(): Boolean; /** * Make application. * * @returns {void} */ make(): Promise; /** * Run installer. * * @returns {Scaffold} */ install(): this; /** * Create env variable file. * * @returns {void} */ private createEnv; /** * Get dependencies to install. * * @return {string[]} */ private getDependencies; /** * Publish dependencies. * * @returns {Scaffold} */ publish(): Scaffold; /** * Modify application. * * @returns {Scaffold} */ modify(): Scaffold; /** * Uncomment auth mailers. * * @returns {Scaffold} */ enableAuthMailers(): Scaffold; /** * Generate encryption key. * * @returns {Scaffold} */ generateKey(): Scaffold; /** * Set package name. * * @returns {Scaffold} */ setPackageName(): Scaffold; /** * Set application database. * * @returns {Scaffold} */ setDatabase(): Scaffold; /** * Update configs for api applications. * * @returns {Scaffold} */ apiUpdates(): Scaffold; /** * Cache application. * * @returns {Scaffold} */ cache(): Scaffold; /** * Add .npmrc file. * * @returns {Scaffold} */ npmrc(): Scaffold; /** * Initialize git. * * @returns {Scaffold} */ git(): Scaffold; /** * Enable auth. */ enableAuth(scaffolding: string): Scaffold; /** * Enable type safety. * * @returns {Scaffold} */ enableTypeSafety(): Scaffold; /*** * Build application. */ build(): Scaffold; }