sicua
Version:
A tool for analyzing project structure and dependencies
27 lines (26 loc) • 1.21 kB
TypeScript
import { ComponentRelation } from "../../../types";
import { ComponentType } from "../types/deduplication.types";
/**
* Memoized Levenshtein distance calculation for performance
*/
export declare const memoizedLevenshteinDistance: ((str1: string, str2: string) => number) & import("lodash").MemoizedFunction;
/**
* Determines if a component is valid for deduplication analysis
* @param component The component to check
* @returns boolean indicating if the component is valid for comparison
*/
export declare function isValidComponentForComparison(component: ComponentRelation): boolean;
/**
* Checks if two components should be compared for similarity
* @param comp1 First component
* @param comp2 Second component
* @param nameDistanceThreshold Threshold for name similarity (0.0-1.0)
* @returns boolean indicating if the components should be compared
*/
export declare function shouldCompareComponents(comp1: ComponentRelation, comp2: ComponentRelation, nameDistanceThreshold?: number): boolean;
/**
* Gets the type of a component based on its file path
* @param path The component file path
* @returns The component type
*/
export declare function getComponentType(path: string): ComponentType;