@opentuah/core 0.1.94 → 0.1.96
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/3d.js +1 -1
- package/README.md +1 -2
- package/buffer.d.ts +9 -0
- package/{index-bm6w895a.js → index-yc0yx782.js} +394 -213
- package/{index-bm6w895a.js.map → index-yc0yx782.js.map} +9 -9
- package/index.js +937 -57
- package/index.js.map +10 -9
- package/lib/parse.mouse.d.ts +7 -0
- package/package.json +11 -11
- package/renderables/Diff.d.ts +7 -0
- package/renderables/LineNumberRenderable.d.ts +2 -0
- package/renderables/TextTable.d.ts +126 -0
- package/renderables/Textarea.d.ts +1 -1
- package/renderables/index.d.ts +1 -0
- package/renderer.d.ts +7 -3
- package/testing.js +1 -1
- package/types.d.ts +7 -3
- package/zig-structs.d.ts +16 -0
- package/zig.d.ts +7 -2
package/lib/parse.mouse.d.ts
CHANGED
|
@@ -19,5 +19,12 @@ export declare class MouseParser {
|
|
|
19
19
|
private mouseButtonsPressed;
|
|
20
20
|
private static readonly SCROLL_DIRECTIONS;
|
|
21
21
|
reset(): void;
|
|
22
|
+
private decodeInput;
|
|
22
23
|
parseMouseEvent(data: Buffer): RawMouseEvent | null;
|
|
24
|
+
parseAllMouseEvents(data: Buffer): RawMouseEvent[];
|
|
25
|
+
private parseMouseSequenceAt;
|
|
26
|
+
private parseSgrSequence;
|
|
27
|
+
private parseBasicSequence;
|
|
28
|
+
private decodeSgrEvent;
|
|
29
|
+
private decodeBasicEvent;
|
|
23
30
|
}
|
package/package.json
CHANGED
|
@@ -4,8 +4,8 @@
|
|
|
4
4
|
"main": "index.js",
|
|
5
5
|
"types": "index.d.ts",
|
|
6
6
|
"type": "module",
|
|
7
|
-
"version": "0.1.
|
|
8
|
-
"description": "OpenTUI is a TypeScript library for building terminal user interfaces (TUIs)",
|
|
7
|
+
"version": "0.1.96",
|
|
8
|
+
"description": "OpenTUI is a TypeScript library on a native Zig core for building terminal user interfaces (TUIs)",
|
|
9
9
|
"license": "MIT",
|
|
10
10
|
"repository": {
|
|
11
11
|
"type": "git",
|
|
@@ -54,16 +54,16 @@
|
|
|
54
54
|
},
|
|
55
55
|
"optionalDependencies": {
|
|
56
56
|
"@dimforge/rapier2d-simd-compat": "^0.17.3",
|
|
57
|
-
"bun-webgpu": "0.1.
|
|
57
|
+
"bun-webgpu": "0.1.5",
|
|
58
58
|
"planck": "^1.4.2",
|
|
59
59
|
"three": "0.177.0",
|
|
60
|
-
"@opentuah/core-darwin-x64": "0.1.
|
|
61
|
-
"@opentuah/core-darwin-arm64": "0.1.
|
|
62
|
-
"@opentuah/core-linux-x64": "0.1.
|
|
63
|
-
"@opentuah/core-linux-arm64": "0.1.
|
|
64
|
-
"@opentuah/core-
|
|
65
|
-
"@opentuah/core-
|
|
66
|
-
"@opentuah/core-
|
|
67
|
-
"@opentuah/core-
|
|
60
|
+
"@opentuah/core-darwin-x64": "0.1.96",
|
|
61
|
+
"@opentuah/core-darwin-arm64": "0.1.96",
|
|
62
|
+
"@opentuah/core-linux-x64": "0.1.96",
|
|
63
|
+
"@opentuah/core-linux-arm64": "0.1.96",
|
|
64
|
+
"@opentuah/core-linux-x64-musl": "0.1.96",
|
|
65
|
+
"@opentuah/core-linux-arm64-musl": "0.1.96",
|
|
66
|
+
"@opentuah/core-win32-x64": "0.1.96",
|
|
67
|
+
"@opentuah/core-win32-arm64": "0.1.96"
|
|
68
68
|
}
|
|
69
69
|
}
|
package/renderables/Diff.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Renderable, type RenderableOptions } from "../Renderable";
|
|
2
2
|
import type { RenderContext } from "../types";
|
|
3
|
+
import { type LineColorConfig } from "./LineNumberRenderable";
|
|
3
4
|
import { RGBA } from "../lib/RGBA";
|
|
4
5
|
import { SyntaxStyle } from "../syntax-style";
|
|
5
6
|
import type { TreeSitterClient } from "../lib/tree-sitter";
|
|
@@ -178,5 +179,11 @@ export declare class DiffRenderable extends Renderable {
|
|
|
178
179
|
set addedWordBg(value: string | RGBA);
|
|
179
180
|
get removedWordBg(): RGBA;
|
|
180
181
|
set removedWordBg(value: string | RGBA);
|
|
182
|
+
setLineColor(line: number, color: string | RGBA | LineColorConfig): void;
|
|
183
|
+
clearLineColor(line: number): void;
|
|
184
|
+
setLineColors(lineColors: Map<number, string | RGBA | LineColorConfig>): void;
|
|
185
|
+
clearAllLineColors(): void;
|
|
186
|
+
highlightLines(startLine: number, endLine: number, color: string | RGBA | LineColorConfig): void;
|
|
187
|
+
clearHighlightLines(startLine: number, endLine: number): void;
|
|
181
188
|
}
|
|
182
189
|
export {};
|
|
@@ -93,4 +93,6 @@ export declare class LineNumberRenderable extends Renderable {
|
|
|
93
93
|
* Clears all inline highlights.
|
|
94
94
|
*/
|
|
95
95
|
clearInlineHighlights(): void;
|
|
96
|
+
highlightLines(startLine: number, endLine: number, color: string | RGBA | LineColorConfig): void;
|
|
97
|
+
clearHighlightLines(startLine: number, endLine: number): void;
|
|
96
98
|
}
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
import { type RenderableOptions, Renderable } from "../Renderable";
|
|
2
|
+
import type { OptimizedBuffer } from "../buffer";
|
|
3
|
+
import { type BorderStyle } from "../lib/border";
|
|
4
|
+
import { type Selection } from "../lib/selection";
|
|
5
|
+
import { RGBA, type ColorInput } from "../lib/RGBA";
|
|
6
|
+
import { type TextChunk } from "../text-buffer";
|
|
7
|
+
import type { RenderContext } from "../types";
|
|
8
|
+
export type TextTableCellContent = TextChunk[] | null | undefined;
|
|
9
|
+
export type TextTableContent = TextTableCellContent[][];
|
|
10
|
+
export type TextTableColumnWidthMode = "content" | "fill";
|
|
11
|
+
export interface TextTableOptions extends RenderableOptions<TextTableRenderable> {
|
|
12
|
+
content?: TextTableContent;
|
|
13
|
+
wrapMode?: "none" | "char" | "word";
|
|
14
|
+
columnWidthMode?: TextTableColumnWidthMode;
|
|
15
|
+
cellPadding?: number;
|
|
16
|
+
showBorders?: boolean;
|
|
17
|
+
border?: boolean;
|
|
18
|
+
outerBorder?: boolean;
|
|
19
|
+
selectable?: boolean;
|
|
20
|
+
selectionBg?: ColorInput;
|
|
21
|
+
selectionFg?: ColorInput;
|
|
22
|
+
borderStyle?: BorderStyle;
|
|
23
|
+
borderColor?: ColorInput;
|
|
24
|
+
borderBackgroundColor?: ColorInput;
|
|
25
|
+
backgroundColor?: ColorInput;
|
|
26
|
+
fg?: ColorInput;
|
|
27
|
+
bg?: ColorInput;
|
|
28
|
+
attributes?: number;
|
|
29
|
+
}
|
|
30
|
+
export declare class TextTableRenderable extends Renderable {
|
|
31
|
+
private _content;
|
|
32
|
+
private _wrapMode;
|
|
33
|
+
private _columnWidthMode;
|
|
34
|
+
private _cellPadding;
|
|
35
|
+
private _showBorders;
|
|
36
|
+
private _border;
|
|
37
|
+
private _outerBorder;
|
|
38
|
+
private _hasExplicitOuterBorder;
|
|
39
|
+
private _borderStyle;
|
|
40
|
+
private _borderColor;
|
|
41
|
+
private _borderBackgroundColor;
|
|
42
|
+
private _backgroundColor;
|
|
43
|
+
private _defaultFg;
|
|
44
|
+
private _defaultBg;
|
|
45
|
+
private _defaultAttributes;
|
|
46
|
+
private _selectionBg;
|
|
47
|
+
private _selectionFg;
|
|
48
|
+
private _lastLocalSelection;
|
|
49
|
+
private _cells;
|
|
50
|
+
private _prevCellContent;
|
|
51
|
+
private _rowCount;
|
|
52
|
+
private _columnCount;
|
|
53
|
+
private _layout;
|
|
54
|
+
private _layoutDirty;
|
|
55
|
+
private _rasterDirty;
|
|
56
|
+
private _cachedMeasureLayout;
|
|
57
|
+
private _cachedMeasureWidth;
|
|
58
|
+
private readonly _defaultOptions;
|
|
59
|
+
constructor(ctx: RenderContext, options?: TextTableOptions);
|
|
60
|
+
get content(): TextTableContent;
|
|
61
|
+
set content(value: TextTableContent);
|
|
62
|
+
get wrapMode(): "none" | "char" | "word";
|
|
63
|
+
set wrapMode(value: "none" | "char" | "word");
|
|
64
|
+
get columnWidthMode(): TextTableColumnWidthMode;
|
|
65
|
+
set columnWidthMode(value: TextTableColumnWidthMode);
|
|
66
|
+
get cellPadding(): number;
|
|
67
|
+
set cellPadding(value: number);
|
|
68
|
+
get showBorders(): boolean;
|
|
69
|
+
set showBorders(value: boolean);
|
|
70
|
+
get outerBorder(): boolean;
|
|
71
|
+
set outerBorder(value: boolean);
|
|
72
|
+
get border(): boolean;
|
|
73
|
+
set border(value: boolean);
|
|
74
|
+
get borderStyle(): BorderStyle;
|
|
75
|
+
set borderStyle(value: BorderStyle);
|
|
76
|
+
get borderColor(): RGBA;
|
|
77
|
+
set borderColor(value: ColorInput);
|
|
78
|
+
shouldStartSelection(x: number, y: number): boolean;
|
|
79
|
+
onSelectionChanged(selection: Selection | null): boolean;
|
|
80
|
+
hasSelection(): boolean;
|
|
81
|
+
getSelection(): {
|
|
82
|
+
start: number;
|
|
83
|
+
end: number;
|
|
84
|
+
} | null;
|
|
85
|
+
getSelectedText(): string;
|
|
86
|
+
protected onResize(width: number, height: number): void;
|
|
87
|
+
protected renderSelf(buffer: OptimizedBuffer): void;
|
|
88
|
+
protected destroySelf(): void;
|
|
89
|
+
private setupMeasureFunc;
|
|
90
|
+
private rebuildCells;
|
|
91
|
+
private updateCellsDiff;
|
|
92
|
+
private createCell;
|
|
93
|
+
private toStyledText;
|
|
94
|
+
private destroyCells;
|
|
95
|
+
private rebuildLayoutForCurrentWidth;
|
|
96
|
+
private computeLayout;
|
|
97
|
+
private computeColumnWidths;
|
|
98
|
+
private expandColumnWidths;
|
|
99
|
+
private fitColumnWidths;
|
|
100
|
+
private computeRowHeights;
|
|
101
|
+
private computeOffsets;
|
|
102
|
+
private applyLayoutToViews;
|
|
103
|
+
private resolveBorderLayout;
|
|
104
|
+
private getVerticalBorderCount;
|
|
105
|
+
private getHorizontalBorderCount;
|
|
106
|
+
private drawBorders;
|
|
107
|
+
private drawCells;
|
|
108
|
+
private drawCellRange;
|
|
109
|
+
private redrawSelectionRows;
|
|
110
|
+
private clearCellRange;
|
|
111
|
+
private ensureLayoutReady;
|
|
112
|
+
private getCellAtLocalPosition;
|
|
113
|
+
private applySelectionToCells;
|
|
114
|
+
private findRowForLocalY;
|
|
115
|
+
private getSelectionRowRange;
|
|
116
|
+
private getDirtySelectionRowRange;
|
|
117
|
+
private resetRowSelection;
|
|
118
|
+
private resetCellSelections;
|
|
119
|
+
private createEmptyLayout;
|
|
120
|
+
private resolveLayoutWidthConstraint;
|
|
121
|
+
private getHorizontalCellPadding;
|
|
122
|
+
private getVerticalCellPadding;
|
|
123
|
+
private resolveCellPadding;
|
|
124
|
+
private invalidateLayoutAndRaster;
|
|
125
|
+
private invalidateRasterOnly;
|
|
126
|
+
}
|
|
@@ -95,7 +95,7 @@ export declare class TextareaRenderable extends EditBufferRenderable {
|
|
|
95
95
|
focus(): void;
|
|
96
96
|
blur(): void;
|
|
97
97
|
get placeholder(): StyledText | string | null;
|
|
98
|
-
set placeholder(value: StyledText | string | null);
|
|
98
|
+
set placeholder(value: StyledText | string | null | undefined);
|
|
99
99
|
get placeholderColor(): RGBA;
|
|
100
100
|
set placeholderColor(value: ColorInput);
|
|
101
101
|
get backgroundColor(): RGBA;
|
package/renderables/index.d.ts
CHANGED
package/renderer.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Renderable, RootRenderable } from "./Renderable";
|
|
2
|
-
import { type
|
|
2
|
+
import { DebugOverlayCorner, type CursorStyleOptions, type MousePointerStyle, type RenderContext, type ThemeMode, type WidthMethod } from "./types";
|
|
3
3
|
import { RGBA, type ColorInput } from "./lib/RGBA";
|
|
4
4
|
import type { Pointer } from "bun:ffi";
|
|
5
5
|
import { OptimizedBuffer } from "./buffer";
|
|
@@ -17,6 +17,7 @@ export interface CliRendererConfig {
|
|
|
17
17
|
remote?: boolean;
|
|
18
18
|
exitOnCtrlC?: boolean;
|
|
19
19
|
exitSignals?: NodeJS.Signals[];
|
|
20
|
+
forwardEnvKeys?: string[];
|
|
20
21
|
debounceDelay?: number;
|
|
21
22
|
targetFps?: number;
|
|
22
23
|
maxFps?: number;
|
|
@@ -194,6 +195,7 @@ export declare class CliRenderer extends EventEmitter implements RenderContext {
|
|
|
194
195
|
private _latestPointer;
|
|
195
196
|
private _hasPointer;
|
|
196
197
|
private _lastPointerModifiers;
|
|
198
|
+
private _currentMousePointerStyle;
|
|
197
199
|
private _currentFocusedRenderable;
|
|
198
200
|
private lifecyclePasses;
|
|
199
201
|
private _openConsoleOnError;
|
|
@@ -276,12 +278,14 @@ export declare class CliRenderer extends EventEmitter implements RenderContext {
|
|
|
276
278
|
private setupInput;
|
|
277
279
|
private dispatchMouseEvent;
|
|
278
280
|
private handleMouseData;
|
|
281
|
+
private processSingleMouseEvent;
|
|
279
282
|
/**
|
|
280
283
|
* Recheck hover state after hit grid changes.
|
|
281
284
|
* Called after render when native code detects the hit grid changed.
|
|
282
285
|
* Fires out/over events if the element under the cursor changed.
|
|
283
286
|
*/
|
|
284
287
|
private recheckHoverState;
|
|
288
|
+
setMousePointer(style: MousePointerStyle): void;
|
|
285
289
|
hitTest(x: number, y: number): number;
|
|
286
290
|
private takeMemorySnapshot;
|
|
287
291
|
private startMemorySnapshotTimer;
|
|
@@ -304,10 +308,10 @@ export declare class CliRenderer extends EventEmitter implements RenderContext {
|
|
|
304
308
|
dumpBuffers(timestamp?: number): void;
|
|
305
309
|
dumpStdoutBuffer(timestamp?: number): void;
|
|
306
310
|
static setCursorPosition(renderer: CliRenderer, x: number, y: number, visible?: boolean): void;
|
|
307
|
-
static setCursorStyle(renderer: CliRenderer,
|
|
311
|
+
static setCursorStyle(renderer: CliRenderer, options: CursorStyleOptions): void;
|
|
308
312
|
static setCursorColor(renderer: CliRenderer, color: RGBA): void;
|
|
309
313
|
setCursorPosition(x: number, y: number, visible?: boolean): void;
|
|
310
|
-
setCursorStyle(
|
|
314
|
+
setCursorStyle(options: CursorStyleOptions): void;
|
|
311
315
|
setCursorColor(color: RGBA): void;
|
|
312
316
|
getCursorState(): import("./zig").CursorState;
|
|
313
317
|
addPostProcessFn(processFn: (buffer: OptimizedBuffer, deltaTime: number) => void): void;
|
package/testing.js
CHANGED
package/types.d.ts
CHANGED
|
@@ -23,9 +23,12 @@ export declare const ATTRIBUTE_BASE_MASK = 255;
|
|
|
23
23
|
export declare function getBaseAttributes(attr: number): number;
|
|
24
24
|
export type ThemeMode = "dark" | "light";
|
|
25
25
|
export type CursorStyle = "block" | "line" | "underline";
|
|
26
|
+
export type MousePointerStyle = "default" | "pointer" | "text" | "crosshair" | "move" | "not-allowed";
|
|
26
27
|
export interface CursorStyleOptions {
|
|
27
|
-
style
|
|
28
|
-
blinking
|
|
28
|
+
style?: CursorStyle;
|
|
29
|
+
blinking?: boolean;
|
|
30
|
+
color?: RGBA;
|
|
31
|
+
cursor?: MousePointerStyle;
|
|
29
32
|
}
|
|
30
33
|
export declare enum DebugOverlayCorner {
|
|
31
34
|
topLeft = 0,
|
|
@@ -55,8 +58,9 @@ export interface RenderContext extends EventEmitter {
|
|
|
55
58
|
height: number;
|
|
56
59
|
requestRender: () => void;
|
|
57
60
|
setCursorPosition: (x: number, y: number, visible: boolean) => void;
|
|
58
|
-
setCursorStyle: (
|
|
61
|
+
setCursorStyle: (options: CursorStyleOptions) => void;
|
|
59
62
|
setCursorColor: (color: RGBA) => void;
|
|
63
|
+
setMousePointer: (shape: MousePointerStyle) => void;
|
|
60
64
|
widthMethod: WidthMethod;
|
|
61
65
|
capabilities: any | null;
|
|
62
66
|
requestLive: () => void;
|
package/zig-structs.d.ts
CHANGED
|
@@ -40,6 +40,22 @@ export declare const LineInfoStruct: import("bun-ffi-structs").DefineStructRetur
|
|
|
40
40
|
}], readonly ["maxWidth", "u32"]], {}>;
|
|
41
41
|
export declare const MeasureResultStruct: import("bun-ffi-structs").DefineStructReturnType<[readonly ["lineCount", "u32"], readonly ["maxWidth", "u32"]], {}>;
|
|
42
42
|
export declare const CursorStateStruct: import("bun-ffi-structs").DefineStructReturnType<[readonly ["x", "u32"], readonly ["y", "u32"], readonly ["visible", "bool_u8"], readonly ["style", "u8"], readonly ["blinking", "bool_u8"], readonly ["r", "f32"], readonly ["g", "f32"], readonly ["b", "f32"], readonly ["a", "f32"]], {}>;
|
|
43
|
+
export declare const CursorStyleOptionsStruct: import("bun-ffi-structs").DefineStructReturnType<[readonly ["style", "u8", {
|
|
44
|
+
readonly default: 255;
|
|
45
|
+
}], readonly ["blinking", "u8", {
|
|
46
|
+
readonly default: 255;
|
|
47
|
+
}], readonly ["color", "pointer", {
|
|
48
|
+
readonly optional: true;
|
|
49
|
+
readonly packTransform: (rgba?: RGBA) => Pointer | null;
|
|
50
|
+
readonly unpackTransform: (ptr?: Pointer) => RGBA | undefined;
|
|
51
|
+
}], readonly ["cursor", "u8", {
|
|
52
|
+
readonly default: 255;
|
|
53
|
+
}]], {}>;
|
|
54
|
+
export declare const GridDrawOptionsStruct: import("bun-ffi-structs").DefineStructReturnType<[readonly ["drawInner", "bool_u8", {
|
|
55
|
+
readonly default: true;
|
|
56
|
+
}], readonly ["drawOuter", "bool_u8", {
|
|
57
|
+
readonly default: true;
|
|
58
|
+
}]], {}>;
|
|
43
59
|
export type GrowthPolicy = "grow" | "block";
|
|
44
60
|
export type NativeSpanFeedOptions = {
|
|
45
61
|
chunkSize?: number;
|
package/zig.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type Pointer } from "bun:ffi";
|
|
2
|
-
import { type CursorStyle, type DebugOverlayCorner, type WidthMethod, type Highlight, type LineInfo } from "./types";
|
|
2
|
+
import { type CursorStyle, type CursorStyleOptions, type DebugOverlayCorner, type WidthMethod, type Highlight, type LineInfo } from "./types";
|
|
3
3
|
export type { LineInfo };
|
|
4
4
|
import { RGBA } from "./lib/RGBA";
|
|
5
5
|
import { OptimizedBuffer } from "./buffer";
|
|
@@ -43,6 +43,7 @@ export interface RenderLib {
|
|
|
43
43
|
testing?: boolean;
|
|
44
44
|
remote?: boolean;
|
|
45
45
|
}) => Pointer | null;
|
|
46
|
+
setTerminalEnvVar: (renderer: Pointer, key: string, value: string) => boolean;
|
|
46
47
|
destroyRenderer: (renderer: Pointer) => void;
|
|
47
48
|
setUseThread: (renderer: Pointer, useThread: boolean) => void;
|
|
48
49
|
setBackgroundColor: (renderer: Pointer, color: RGBA) => void;
|
|
@@ -75,13 +76,17 @@ export interface RenderLib {
|
|
|
75
76
|
bufferDrawPackedBuffer: (buffer: Pointer, dataPtr: Pointer, dataLen: number, posX: number, posY: number, terminalWidthCells: number, terminalHeightCells: number) => void;
|
|
76
77
|
bufferDrawGrayscaleBuffer: (buffer: Pointer, posX: number, posY: number, intensitiesPtr: Pointer, srcWidth: number, srcHeight: number, fg: RGBA | null, bg: RGBA | null) => void;
|
|
77
78
|
bufferDrawGrayscaleBufferSupersampled: (buffer: Pointer, posX: number, posY: number, intensitiesPtr: Pointer, srcWidth: number, srcHeight: number, fg: RGBA | null, bg: RGBA | null) => void;
|
|
79
|
+
bufferDrawGrid: (buffer: Pointer, borderChars: Uint32Array, borderFg: RGBA, borderBg: RGBA, columnOffsets: Int32Array, columnCount: number, rowOffsets: Int32Array, rowCount: number, options: {
|
|
80
|
+
drawInner: boolean;
|
|
81
|
+
drawOuter: boolean;
|
|
82
|
+
}) => void;
|
|
78
83
|
bufferDrawBox: (buffer: Pointer, x: number, y: number, width: number, height: number, borderChars: Uint32Array, packedOptions: number, borderColor: RGBA, backgroundColor: RGBA, title: string | null) => void;
|
|
79
84
|
bufferResize: (buffer: Pointer, width: number, height: number) => void;
|
|
80
85
|
resizeRenderer: (renderer: Pointer, width: number, height: number) => void;
|
|
81
86
|
setCursorPosition: (renderer: Pointer, x: number, y: number, visible: boolean) => void;
|
|
82
|
-
setCursorStyle: (renderer: Pointer, style: CursorStyle, blinking: boolean) => void;
|
|
83
87
|
setCursorColor: (renderer: Pointer, color: RGBA) => void;
|
|
84
88
|
getCursorState: (renderer: Pointer) => CursorState;
|
|
89
|
+
setCursorStyleOptions: (renderer: Pointer, options: CursorStyleOptions) => void;
|
|
85
90
|
setDebugOverlay: (renderer: Pointer, enabled: boolean, corner: DebugOverlayCorner) => void;
|
|
86
91
|
clearTerminal: (renderer: Pointer) => void;
|
|
87
92
|
setTerminalTitle: (renderer: Pointer, title: string) => void;
|