# types/dependency.types.ts

> 31 lines of code and 5 definitions.

Tree: GovLab Stats
Language: typescript
Layer: infrastructure
Canonical: https://banes-lab.com/anatomy/stats#file-stats-types-dependency-types-ts
Source text: https://banes-lab.com/source/stats/types/dependency.types.ts.txt

Listed in [types](https://banes-lab.com/api/source/stats/types.md), after [types/config.types.ts](https://banes-lab.com/source/stats/types/config.types.ts.md) and before [types/document.types.ts](https://banes-lab.com/source/stats/types/document.types.ts.md).

## Definitions

- `GraphNode` (interface_declaration, line 1, exported)
- `GraphRow` (interface_declaration, line 7, exported)
- `GraphLink` (interface_declaration, line 13, exported)
- `DependencyGraph` (interface_declaration, line 20, exported)
- `Fans` (interface_declaration, line 30, exported)

## Contained in

- [types](https://banes-lab.com/anatomy/stats/folder-stats-types.md)

## Source

```typescript
export interface GraphNode {
    deps: Set<string>;
    name: string;
    rel: string;
}

export interface GraphRow {
    count: number;
    name: string;
    rel: string;
}

export interface GraphLink {
    fanIn: number;
    fanOut: number;
    name: string;
    rel: string;
}

export interface DependencyGraph {
    edges: number;
    isolated: number;
    leaves: number;
    links: GraphLink[];
    nodeCount: number;
    topFanIn: GraphRow[];
    topFanOut: GraphRow[];
}

export interface Fans {
    fanIn: Map<string, number>;
    fanOut: Map<string, number>;
    edges: number;
    leaves: number;
}
```
