@atomist/sdm
Version:
Atomist Software Delivery Machine SDK
40 lines • 1.85 kB
TypeScript
import { File as ProjectFile } from "@atomist/automation-client/lib/project/File";
import { Project } from "@atomist/automation-client/lib/project/Project";
/**
* Path expression for a class name annotated with Spring Boot.
* Uses Java formal grammar.
* @type {string}
*/
export declare const SpringBootAppClassInJava = "//normalClassDeclaration\n [//annotation[@value='@SpringBootApplication']]\n /identifier";
/**
* Path expression for a class name annotated with Spring Boot.
* Uses Kotlin formal grammar.
* @type {string}
*/
export declare const SpringBootAppClassInKotlin = "//classDeclaration\n [//annotation[@value='@SpringBootApplication']]\n //Identifier";
/**
* Represents the structure of a Spring Boot project,
* which can be inferred from its contents. Covers application class
* and starters.
*/
export declare class SpringBootProjectStructure {
readonly applicationPackage: string;
readonly applicationClass: string;
readonly appClassFile: ProjectFile;
/**
* Infer any number of structures, looking at both Java and Kotlin
*/
static inferFromJavaOrKotlin(p: Project): Promise<SpringBootProjectStructure[]>;
private static inferFromSourceWithJavaLikeImports;
/**
* The stem of the application class. Strip "Application" if present.
*/
readonly applicationClassStem: string;
/**
* @param applicationPackage The package with the Spring Boot application class in it.
* @param applicationClass Name of the application class within the given package
* @param appClassFile path to the file containing the @SpringBootApplication annotation
*/
private constructor();
}
//# sourceMappingURL=SpringBootProjectStructure.d.ts.map