@veecode-platform/safira-cli
Version:
Generate a microservice project from your spec.
40 lines (39 loc) • 1.5 kB
TypeScript
import { PackageManager } from "./package-manager-enum";
import { JavaVersion } from "./java-version";
import { LanguageSupportEnum } from "../../language-support";
import { SpecializedProjectGenerator, SpecializedProjectProperties } from "../generate-project";
import { JavaFrameworksEnum } from "./java-framework-enum";
import { DatabaseEnum } from "../../database/database-enum";
export declare class JavaGenerator implements SpecializedProjectGenerator {
newProject(params: SpecializedProjectProperties): Promise<void>;
checkProjectFormation(projectPath: string, javaPackManager: string): void;
}
export interface GeneratorProperties {
projectName: string;
openapiFilePath: string;
projectDescription: string;
language: LanguageSupportEnum;
applicationPort: number;
dockerRegistry: string;
kubernetesNamespace: string;
newProjectRoot: string;
projectPath: string;
projectSafiraPath: string;
useDataBase: boolean;
dataBase: DatabaseEnum;
dataBaseUrl: string;
dataBaseUser: string;
dataBasePassword: string;
}
export interface JavaGeneratorProperties extends GeneratorProperties {
framework: JavaFrameworksEnum;
javaPackManager: PackageManager;
javaPackage: string;
javaVersion: JavaVersion;
}
export interface SpringGeneratorProperties extends JavaGeneratorProperties {
javaSpringbootVersion: string;
}
export interface QuarkusGeneratorProperties extends JavaGeneratorProperties {
quarkusVersion: string;
}