# types/anatomy.types.ts

> 178 lines of code and 25 definitions.

Tree: Site tree
Language: typescript
Layer: infrastructure
Canonical: https://banes-lab.com/anatomy/tree#file-types-anatomy-types-ts
Source text: https://banes-lab.com/assets/sources/source.bf766af85d3973e0be138f30cf5e1a742a57cee43de471f703256c34df6b3e0d.generated.txt

## Definitions

- `AnatomyLines` (interface_declaration, line 1, exported)
- `AnatomyStats` (interface_declaration, line 7, exported)
- `AnatomyMetrics` (interface_declaration, line 19, exported)
- `AnatomySlots` (interface_declaration, line 32, exported)
- `DefinitionRef` (interface_declaration, line 38, exported)
- `DefinitionView` (interface_declaration, line 44, exported)
- `WalkRef` (interface_declaration, line 59, exported)
- `TypeCount` (interface_declaration, line 65, exported)
- `DistributionView` (interface_declaration, line 70, exported)
- `FindingView` (interface_declaration, line 75, exported)
- `DocumentFinding` (interface_declaration, line 86, exported)
- `DocumentView` (interface_declaration, line 94, exported)
- `AnatomyFile` (interface_declaration, line 106, exported)
- `FolderRole` (type_alias_declaration, line 123, exported)
- `AnatomyFolder` (interface_declaration, line 125, exported)
- `ChartPart` (interface_declaration, line 138, exported)
- `ChartView` (interface_declaration, line 143, exported)
- `ImportEdge` (interface_declaration, line 150, exported)
- `WalkState` (interface_declaration, line 156, exported)
- `AnatomySnapshot` (interface_declaration, line 161, exported)
- `AnatomyTree` (interface_declaration, line 171, exported)
- `WalkCellView` (interface_declaration, line 176, exported)
- `LoadedWalk` (interface_declaration, line 188, exported)
- `DefinitionLocation` (interface_declaration, line 193, exported)
- `WalkCellsPayload` (interface_declaration, line 199, exported)

## Source

```typescript
export interface AnatomyLines {
    readonly blank: number;
    readonly code: number;
    readonly total: number;
}

export interface AnatomyStats {
    readonly bytes: number;
    readonly callable: number;
    readonly definitions: number;
    readonly edges: number;
    readonly exported: number;
    readonly files: number;
    readonly findings: Readonly<Record<string, number>>;
    readonly flows: Readonly<Record<string, number>>;
    readonly lines: AnatomyLines;
}

export interface AnatomyMetrics {
    readonly callable: number;
    readonly definitions: number;
    readonly edges: number;
    readonly exported: number;
    readonly findings: Readonly<Record<string, number>>;
    readonly flows: Readonly<Record<string, number>>;
    readonly maxInDegree: number;
    readonly maxOutDegree: number;
    readonly resolutionRate: number;
    readonly unresolvedCalls: number;
}

export interface AnatomySlots {
    readonly concern: string;
    readonly subject: string;
    readonly variant: string | null;
}

export interface DefinitionRef {
    readonly file: string;
    readonly id: string;
    readonly name: string;
}

export interface DefinitionView {
    readonly callable: boolean;
    readonly callees: readonly DefinitionRef[];
    readonly callers: readonly DefinitionRef[];
    readonly exported: boolean;
    readonly file: string;
    readonly flow: string;
    readonly id: string;
    readonly inDegree: number;
    readonly kind: string;
    readonly line: number;
    readonly name: string;
    readonly outDegree: number;
}

export interface WalkRef {
    readonly cells: string;
    readonly steps: number;
    readonly vector: string;
}

export interface TypeCount {
    readonly count: number;
    readonly type: string;
}

export interface DistributionView {
    readonly invariants: readonly TypeCount[];
    readonly variants: readonly TypeCount[];
}

export interface FindingView {
    readonly confidence: string;
    readonly detail: string;
    readonly file: string;
    readonly kind: string;
    readonly line: number;
    readonly name: string;
    readonly remedy: string;
    readonly severity: string;
}

export interface DocumentFinding {
    readonly category: string;
    readonly code: string;
    readonly col: number;
    readonly line: number;
    readonly text: string;
}

export interface DocumentView {
    readonly boundary: boolean;
    readonly concern: string | null;
    readonly constructs: number;
    readonly fields: readonly string[];
    readonly findings: readonly DocumentFinding[];
    readonly form: string | null;
    readonly headings: number;
    readonly mermaid: number;
    readonly paths: number;
}

export interface AnatomyFile {
    readonly definitions: readonly DefinitionView[];
    readonly distribution: DistributionView;
    readonly document: DocumentView | null;
    readonly findings: readonly FindingView[];
    readonly generated: boolean;
    readonly id: string;
    readonly inherited: boolean;
    readonly layer: string | null;
    readonly name: string;
    readonly path: string;
    readonly slots: AnatomySlots | null;
    readonly source: string | null;
    readonly stats: AnatomyStats;
    readonly walk: WalkRef | null;
}

export type FolderRole = "concern" | "container" | "member" | "subject";

export interface AnatomyFolder {
    readonly files: readonly AnatomyFile[];
    readonly findings: readonly FindingView[];
    readonly folders: readonly AnatomyFolder[];
    readonly id: string;
    readonly layer: string | null;
    readonly name: string;
    readonly path: string;
    readonly role: FolderRole;
    readonly stats: AnatomyStats;
    readonly walk: WalkRef | null;
}

export interface ChartPart {
    readonly caption: string;
    readonly text: string;
}

export interface ChartView {
    readonly id: string;
    readonly legend: readonly string[];
    readonly parts: readonly ChartPart[];
    readonly title: string;
}

export interface ImportEdge {
    readonly count: number;
    readonly from: string;
    readonly to: string;
}

export interface WalkState {
    readonly state: string;
    readonly text: string;
}

export interface AnatomySnapshot {
    readonly charts: readonly ChartView[];
    readonly findings: readonly FindingView[];
    readonly imports: readonly ImportEdge[];
    readonly metrics: AnatomyMetrics;
    readonly states: readonly WalkState[];
    readonly tree: AnatomyFolder;
    readonly unresolvedCalls: readonly string[];
}

export interface AnatomyTree {
    readonly snapshot: AnatomySnapshot;
    readonly tab: string;
}

export interface WalkCellView {
    readonly depth: number;
    readonly file: string;
    readonly label: string;
    readonly line: number | null;
    readonly name: string;
    readonly ref: string;
    readonly severity: string | null;
    readonly state: string;
    readonly text: string;
}

export interface LoadedWalk {
    readonly cells: readonly WalkCellView[];
    readonly markup: string;
}

export interface DefinitionLocation {
    readonly file: string;
    readonly line: number;
    readonly name: string;
}

export interface WalkCellsPayload {
    readonly columns: readonly string[];
    readonly rows: readonly (readonly (number | string | null)[])[];
}
```
