import { OutputScope, OutputScopeOptions } from "@alloy-js/core"; /** * Represents an external dependency imported through a maven or gradle project */ export interface JavaDependency { groupId: string; artifactId: string; version?: string; scope?: "compile" | "test" | "runtime" | "provided"; } export interface MavenProjectConfig { groupId: string; artifactId: string; version: string; javaVersion: number; name?: string; description?: string; repositories?: { id: string; url: string; }[]; pluginRepositories?: { id: string; url: string; }[]; build?: { plugins?: { groupId: string; artifactId: string; version?: string; executions?: { id?: string; phase?: string; goals?: string[]; }[]; configuration?: Record; }[]; resources?: { directory: string; includes?: string[]; excludes?: string[]; filtering?: boolean; targetPath?: string; }[]; }; } export interface GradleProjectConfig { } export interface JavaProjectScopeOptions extends OutputScopeOptions { mavenProjectConfig?: MavenProjectConfig; gradleProjectConfig?: GradleProjectConfig; } /** * Represents the java project itself (maven, gradle, etc) */ export declare class JavaProjectScope extends OutputScope { #private; get kind(): string; /** * The dependencies of this project * Map qualified package name to dependency */ get dependencies(): Map; /** * Define project configuration. Either maven or gradle */ get mavenProjectConfig(): MavenProjectConfig | undefined; set(mavenProjectConfig: MavenProjectConfig | undefined): void; /** * Define project configuration. Either maven or gradle */ get gradleProjectConfig(): GradleProjectConfig | undefined; set gradleProjectConfig(gradleProjectConfig: GradleProjectConfig | undefined); constructor(name: string, options?: JavaProjectScopeOptions); addDependency(dependency: JavaDependency): string; } //# sourceMappingURL=java-project-scope.d.ts.map