/** @type {import("dependency-cruiser").IConfiguration} */ module.exports = { forbidden: [ { name: "domain-is-framework-neutral", severity: "error", from: { path: "^src/domain" }, to: { path: "^(src/(application|presentation|adapters|bootstrap)|react|react-dom|@tanstack)", }, }, { name: "application-does-not-know-concrete-runtime", severity: "error", from: { path: "^src/application" }, to: { path: "^(src/(presentation|adapters|bootstrap)|react|react-dom|@tanstack)", }, }, { name: "presentation-does-not-know-adapters", severity: "error", from: { path: "^src/presentation" }, to: { path: "^(src/(adapters|bootstrap)|@tanstack)" }, }, { name: "adapters-do-not-know-presentation", severity: "error", from: { path: "^src/adapters" }, to: { path: "^src/(presentation|bootstrap)" }, }, { name: "no-circular-dependencies", severity: "error", from: {}, to: { circular: true }, }, ], options: { doNotFollow: { path: "node_modules" }, exclude: { path: "^(dist|artifacts|tests/fixtures)", }, enhancedResolveOptions: { exportsFields: ["exports"], conditionNames: ["import", "require", "node", "default"], }, }, };