import type { DevServer } from '@adonisjs/assembler'; import type { CommandOptions } from '../types/ace.ts'; import { BaseCommand } from '../modules/ace/main.ts'; /** * Serve command is used to run the AdonisJS HTTP server during development. The * command under the hood runs the "bin/server.ts" file and watches for file * system changes * * @example * ``` * ace serve * ace serve --watch * ace serve --hmr * ace serve --poll * ace serve --no-clear * ``` */ export default class Serve extends BaseCommand { #private; /** * The command name */ static commandName: string; /** * The command description */ static description: string; /** * Help text for the command */ static help: string[]; /** * Command options configuration */ static options: CommandOptions; /** * The development server instance */ devServer: DevServer; /** * Start the server with HMR support */ hmr?: boolean; /** * Watch filesystem and restart the HTTP server on file change */ watch?: boolean; /** * Use polling to detect filesystem changes */ poll?: boolean; /** * Clear the terminal for new logs after file change */ clear?: boolean; /** * Runs the HTTP server */ run(): Promise; }