types/anatomy.types.ts
types/anatomy.types.ts is a file in Bane's Lab Site. 197 lines of code and 26 definitions.
import type { PackageExport } from "#types/package.types";
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 local: boolean;
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 excluded?: string;
readonly findings: readonly FindingView[];
readonly generated: boolean;
readonly id: string;
readonly inherited: boolean;
readonly layer: string | null;
readonly name: string;
readonly path: string;
readonly records?: string;
readonly references?: string;
readonly repository?: 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 records?: string;
readonly repository?: 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 AnatomyTreeDeclaration {
readonly exportName: string;
readonly exports: readonly PackageExport[];
readonly folder: string;
readonly generatedSources: boolean;
readonly label: string;
readonly license: string | null;
readonly packageName: string | null;
readonly repository: string | null;
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)[])[];
}