import type { TSESTree } from '@typescript-eslint/types';
import type { Clazz } from '../../dto/class';
import type { Method } from '../../dto/method';
type DetectionResult = {
    hasCircularDependency: true;
    path: string[];
    node: TSESTree.Node;
} | {
    hasCircularDependency: false;
    path?: never;
    node?: never;
};
export declare class CircularDependenciesDetector {
    detect(clazz: Clazz): DetectionResult;
    isCircular(provider: Method, providers: Method[], path: Set<string>): DetectionResult;
}
export {};
//# sourceMappingURL=circularDependenciesDetector.d.ts.map