types/surface.types.ts
types/surface.types.ts is a file in Bane's Lab Build Scripts. 43 lines of code and 10 definitions.
import type { SurfaceFigureName, SurfaceFrame } from "@banes-lab/web/types/surface.types.ts";
export type ScenarioTool = "await" | "govern";
export interface ToolStep {
readonly kind: "tool";
readonly tool: ScenarioTool;
readonly args: readonly string[];
readonly exit: number | null;
readonly figures: readonly SurfaceFigureName[];
readonly delivers: boolean;
}
export interface WaitStep {
readonly kind: "wait";
readonly args: readonly string[];
readonly exit: number;
readonly figures: readonly SurfaceFigureName[];
}
export interface WriteStep {
readonly kind: "write";
readonly text: string;
readonly figures: readonly SurfaceFigureName[];
}
export type ScenarioStep = ToolStep | WaitStep | WriteStep;
export interface SampleFile {
readonly name: string;
readonly text: string;
}
export interface Scenario {
readonly samples: readonly SampleFile[];
readonly steps: readonly ScenarioStep[];
}
export interface Region {
readonly from: number;
readonly to: number;
}
export interface FigureFrame {
readonly figure: SurfaceFigureName;
readonly before: readonly string[];
readonly frame: SurfaceFrame;
}
export interface SurfaceRecord {
readonly figures: number;
readonly reused: boolean;
}