import type { SeverityCounts } from './capabilities/types';
import type { LanguageSupport, LintSeverity } from './types';
/**
 * Extract `import com.foo.Bar;` paths from a Java source string. Handles:
 *   - regular imports:   `import com.foo.Bar;`
 *   - static imports:    `import static com.foo.Bar.method;`
 *   - wildcard imports:  `import com.foo.*;`
 * Strips line + block comments first so commented-out imports don't
 * false-match.
 *
 * Exported for unit tests; consumed by `gatherJavaImportsResult`.
 */
export declare function extractJavaImportsRaw(content: string): string[];
/**
 * Map PMD's 1-5 priority scale to dxkit's 4-tier severity. PMD's
 * priority semantics (per official docs):
 *   1 = High         → critical
 *   2 = Medium High  → high
 *   3 = Medium       → medium
 *   4 = Medium Low   → low
 *   5 = Low          → low
 *
 * Defensive: unknown / missing priorities tier as 'medium' — visibility
 * tilts toward "developer sees it" rather than "silently dropped". Same
 * defensive-default approach as detekt / mapDetektSeverity.
 *
 * Exported for unit tests.
 */
export declare function mapPmdRuleSeverity(priority: number | undefined | null): LintSeverity;
/**
 * Parse PMD 7.x JSON output (`pmd check -f json`) into a tiered
 * SeverityCounts. Shape:
 *
 *   {
 *     "formatVersion": 0,
 *     "pmdVersion": "7.24.0",
 *     "files": [
 *       {
 *         "filename": "<path>",
 *         "violations": [
 *           {
 *             "beginline": N, "begincolumn": N,
 *             "endline": N, "endcolumn": N,
 *             "description": "...",
 *             "rule": "<ruleName>",
 *             "ruleset": "<rulesetCategory>",
 *             "priority": 1-5,
 *             "externalInfoUrl": "..."
 *           }
 *         ]
 *       }
 *     ],
 *     "suppressedViolations": [],
 *     "processingErrors": [],
 *     "configurationErrors": []
 *   }
 *
 * Tolerates malformed JSON (returns empty counts) and missing
 * `files`/`violations` arrays. Real-fixture tests live in
 * `test/languages-java.test.ts` against
 * `test/fixtures/raw/java/pmd-output.json`.
 *
 * Exported for unit tests; consumed by `gatherJavaLintResult`.
 */
export declare function parsePmdOutput(raw: string): SeverityCounts;
export declare const java: LanguageSupport;
//# sourceMappingURL=java.d.ts.map