import type { AnalysisEvidenceV1, AnalyzerContext, AnalyzerDiagnostic, AnalyzerInventory, AnalyzerOptions, ProfileSignalValue, WorkspaceProfileV1 } from "./analyzer-types.ts"; export interface ScanResult { inventory: AnalyzerInventory; diagnostics: AnalyzerDiagnostic[]; } export declare function normalizeProjectPath(path: string): string; export declare function joinProjectPath(...parts: string[]): string; export declare function projectDirname(path: string): string; export declare function projectBasename(path: string): string; export declare function isBelow(path: string, root: string): boolean; export declare function scanProject(rootInput: string, options?: AnalyzerOptions): Promise; export declare function createAnalyzerContext(inventory: AnalyzerInventory, diagnostics: AnalyzerDiagnostic[], options?: AnalyzerOptions): AnalyzerContext; export declare function sha256(value: string): string; export declare function fingerprint(value: unknown): string; export declare function finalizeWorkspace(profile: Omit): WorkspaceProfileV1; export declare function compareDiagnostics(left: AnalyzerDiagnostic, right: AnalyzerDiagnostic): number; export declare function sortedUnique(values: Iterable): string[]; export declare function jsonSignal(value: unknown): ProfileSignalValue; /** Parse JSON-with-comments without loading or executing a JS/TS config file. */ export declare function parseJsonc(text: string): unknown; export declare function asObject(value: unknown): Record | undefined; export interface SimpleTomlDocument { sections: Map>>; } /** A conservative TOML reader for manifests; it never evaluates values. */ export declare function parseSimpleToml(text: string): SimpleTomlDocument; export declare function tomlSection(document: SimpleTomlDocument, name: string): Map; export declare function tomlString(raw: string | undefined): string | undefined; export declare function tomlBoolean(raw: string | undefined): boolean | undefined; export declare function tomlArray(raw: string | undefined): string[]; export declare function inlineTableString(raw: string | undefined, key: string): string | undefined; export declare function globMatches(pattern: string, path: string): boolean; export declare function evidenceFor(context: AnalyzerContext, path: string, kind: AnalysisEvidenceV1["kind"], detail: string): Promise; export declare function nearestExistingRoots(context: AnalyzerContext, workspaceRoot: string, names: readonly string[]): string[]; export declare function filesWithExtensions(context: AnalyzerContext, root: string, extensions: readonly string[]): string[]; export declare function relativeToWorkspace(workspaceRoot: string, path: string): string; export declare function findAncestorFiles(context: AnalyzerContext, startRoot: string, basenames: readonly string[]): string[]; export declare function withoutAbsoluteRoot(profile: WorkspaceProfileV1): ProfileSignalValue; export declare function nativeDirname(path: string): string; //# sourceMappingURL=analyzer-utils.d.ts.map