types/loop.types.ts

types/loop.types.ts is a file in Bane's Lab Site. 59 lines of code and 7 definitions.

import type { EdgeRef } from "#types/link.types";

export interface AxisView {
    readonly anchor: string;
    readonly contracts: readonly EdgeRef[];
    readonly id: string;
    readonly layer: EdgeRef;
    readonly mandatory: string;
    readonly nodes: readonly EdgeRef[];
    readonly primaryMathType: EdgeRef;
    readonly question: string;
    readonly selectable: boolean;
}

export interface ReasonNodeView {
    readonly anchor: string;
    readonly answerShape: string | null;
    readonly axis: EdgeRef;
    readonly concept: EdgeRef | null;
    readonly decisionTest: string | null;
    readonly groundedBy: readonly EdgeRef[];
    readonly id: string;
    readonly mathType: EdgeRef;
    readonly name: string;
    readonly question: string | null;
    readonly role: string | null;
}

export interface SubstrateNodeView {
    readonly anchor: string;
    readonly id: string;
    readonly layer: EdgeRef;
    readonly mathType: EdgeRef;
    readonly name: string;
}

export interface SubstrateView {
    readonly cycle: readonly EdgeRef[];
    readonly nodes: readonly SubstrateNodeView[];
    readonly recursionFrom: EdgeRef;
    readonly recursionTo: EdgeRef;
}

export interface LoopStageView {
    readonly anchor: string;
    readonly axis: EdgeRef;
    readonly contracts: readonly EdgeRef[];
    readonly edges: readonly EdgeRef[];
    readonly id: string;
}

export interface LoopTransitionView {
    readonly from: EdgeRef;
    readonly gate: string | null;
    readonly kind: string;
    readonly onFail: string | null;
    readonly onPass: string | null;
    readonly to: EdgeRef;
}

export interface DerivationLoopView {
    readonly anchor: string;
    readonly id: string;
    readonly stages: readonly LoopStageView[];
    readonly transitions: readonly LoopTransitionView[];
}