export interface DecibelPaths { /** Primary path (.decibel/) - used for writes */ primary: string; /** Legacy path (decibel/) - checked for reads if primary doesn't exist */ legacy: string; /** Which path actually exists (or 'none') */ activeSource: 'primary' | 'legacy' | 'none'; /** Warning message if legacy path is being used */ deprecationWarning?: string; } /** * Resolve decibel paths for a project, checking both .decibel/ and decibel/ * * @param projectId - The project identifier * @param subpath - Path within the decibel folder (e.g., 'sentinel/issues') * @returns DecibelPaths object with primary, legacy, and active source info */ export declare function resolveDecibelPaths(projectId: string, subpath: string): Promise; /** * Get the read path for a decibel subpath. * Returns primary if it exists, falls back to legacy, or returns primary for new projects. */ export declare function getReadPath(projectId: string, subpath: string): Promise; /** * Get the write path for a decibel subpath. * Always returns the primary (.decibel/) path. */ export declare function getWritePath(projectId: string, subpath: string): Promise; /** * Get all read paths that exist for a subpath. * Used when you need to merge data from both locations. */ export declare function getAllReadPaths(projectId: string, subpath: string): Promise; /** * Read files from both primary and legacy paths, deduping by filename. * Primary takes precedence over legacy for duplicate filenames. */ export declare function readFilesFromBothPaths(projectId: string, subpath: string, extensions?: string[]): Promise<{ filePath: string; source: 'primary' | 'legacy'; }[]>; //# sourceMappingURL=decibelPaths.d.ts.map