export interface ApplicationOptions {
  /**
   * Gadmin application name.
   */
  name: string;
  /**
   * Gadmin application author.
   */
  author?: string;
  /**
   * Gadmin application description.
   */
  description?: string;
  /**
   * Gadmin application destination directory.
   */
  directory?: string;
  /**
   * With TypeScript strict mode.
   */
  strict?: boolean;
  /**
   * Gadmin application version.
   */
  version?: string;
  /**
   * Gadmin application template.
   */
  template: string;

  /**
   * Server framework.
   */
  serverFramework: 'gadmin2-game-angle-demo' | 'customize';
  /**
   * Transfer protocol.
   */
  transferProtocol: 'restful' | 'graphql';
  /**
   * With web.
   */
  withWeb: boolean;
  /**
   * UI framework.
   */
  uiFramework?: 'tea' | 'antd';
  /**
   * The used package manager.
   */
  packageManager?: 'npm' | 'yarn' | 'pnpm' | 'undefined';
  /**
   * Gadmin included production dependencies (comma separated values).
   */
  dependencies?: string;
  /**
   * Gadmin included development dependencies (comma separated values).
   */
  devDependencies?: string;
}
