@cascadetui/core 0.1.1

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.
Files changed (129) hide show
  1. package/3d/SpriteResourceManager.d.ts +74 -0
  2. package/3d/SpriteUtils.d.ts +13 -0
  3. package/3d/TextureUtils.d.ts +24 -0
  4. package/3d/ThreeRenderable.d.ts +40 -0
  5. package/3d/WGPURenderer.d.ts +61 -0
  6. package/3d/animation/ExplodingSpriteEffect.d.ts +71 -0
  7. package/3d/animation/PhysicsExplodingSpriteEffect.d.ts +76 -0
  8. package/3d/animation/SpriteAnimator.d.ts +124 -0
  9. package/3d/animation/SpriteParticleGenerator.d.ts +62 -0
  10. package/3d/canvas.d.ts +44 -0
  11. package/3d/index.d.ts +12 -0
  12. package/3d/physics/PlanckPhysicsAdapter.d.ts +19 -0
  13. package/3d/physics/RapierPhysicsAdapter.d.ts +19 -0
  14. package/3d/physics/physics-interface.d.ts +27 -0
  15. package/3d.d.ts +2 -0
  16. package/3d.js +34041 -0
  17. package/3d.js.map +155 -0
  18. package/LICENSE +21 -0
  19. package/NativeSpanFeed.d.ts +41 -0
  20. package/README.md +62 -0
  21. package/Renderable.d.ts +334 -0
  22. package/animation/Timeline.d.ts +126 -0
  23. package/ansi.d.ts +13 -0
  24. package/assets/javascript/highlights.scm +205 -0
  25. package/assets/javascript/tree-sitter-javascript.wasm +0 -0
  26. package/assets/markdown/highlights.scm +150 -0
  27. package/assets/markdown/injections.scm +27 -0
  28. package/assets/markdown/tree-sitter-markdown.wasm +0 -0
  29. package/assets/markdown_inline/highlights.scm +115 -0
  30. package/assets/markdown_inline/tree-sitter-markdown_inline.wasm +0 -0
  31. package/assets/typescript/highlights.scm +604 -0
  32. package/assets/typescript/tree-sitter-typescript.wasm +0 -0
  33. package/assets/zig/highlights.scm +284 -0
  34. package/assets/zig/tree-sitter-zig.wasm +0 -0
  35. package/buffer.d.ts +107 -0
  36. package/console.d.ts +140 -0
  37. package/edit-buffer.d.ts +98 -0
  38. package/editor-view.d.ts +73 -0
  39. package/index-jx194wn1.js +17723 -0
  40. package/index-jx194wn1.js.map +61 -0
  41. package/index.d.ts +18 -0
  42. package/index.js +12210 -0
  43. package/index.js.map +49 -0
  44. package/lib/KeyHandler.d.ts +61 -0
  45. package/lib/RGBA.d.ts +25 -0
  46. package/lib/ascii.font.d.ts +508 -0
  47. package/lib/border.d.ts +49 -0
  48. package/lib/bunfs.d.ts +7 -0
  49. package/lib/clipboard.d.ts +29 -0
  50. package/lib/data-paths.d.ts +26 -0
  51. package/lib/debounce.d.ts +42 -0
  52. package/lib/env.d.ts +42 -0
  53. package/lib/extmarks-history.d.ts +17 -0
  54. package/lib/extmarks.d.ts +89 -0
  55. package/lib/hast-styled-text.d.ts +17 -0
  56. package/lib/index.d.ts +18 -0
  57. package/lib/keymapping.d.ts +25 -0
  58. package/lib/objects-in-viewport.d.ts +24 -0
  59. package/lib/output.capture.d.ts +24 -0
  60. package/lib/parse.keypress-kitty.d.ts +2 -0
  61. package/lib/parse.keypress.d.ts +26 -0
  62. package/lib/parse.mouse.d.ts +30 -0
  63. package/lib/queue.d.ts +15 -0
  64. package/lib/renderable.validations.d.ts +12 -0
  65. package/lib/scroll-acceleration.d.ts +43 -0
  66. package/lib/selection.d.ts +63 -0
  67. package/lib/singleton.d.ts +7 -0
  68. package/lib/stdin-buffer.d.ts +44 -0
  69. package/lib/styled-text.d.ts +63 -0
  70. package/lib/terminal-capability-detection.d.ts +30 -0
  71. package/lib/terminal-palette.d.ts +43 -0
  72. package/lib/tree-sitter/assets/update.d.ts +11 -0
  73. package/lib/tree-sitter/client.d.ts +47 -0
  74. package/lib/tree-sitter/default-parsers.d.ts +2 -0
  75. package/lib/tree-sitter/download-utils.d.ts +21 -0
  76. package/lib/tree-sitter/index.d.ts +8 -0
  77. package/lib/tree-sitter/parser.worker.d.ts +1 -0
  78. package/lib/tree-sitter/parsers-config.d.ts +38 -0
  79. package/lib/tree-sitter/resolve-ft.d.ts +2 -0
  80. package/lib/tree-sitter/types.d.ts +81 -0
  81. package/lib/tree-sitter-styled-text.d.ts +14 -0
  82. package/lib/validate-dir-name.d.ts +1 -0
  83. package/lib/yoga.options.d.ts +32 -0
  84. package/package.json +67 -0
  85. package/parser.worker.js +878 -0
  86. package/parser.worker.js.map +12 -0
  87. package/post/filters.d.ts +105 -0
  88. package/renderables/ASCIIFont.d.ts +52 -0
  89. package/renderables/Box.d.ts +72 -0
  90. package/renderables/Code.d.ts +66 -0
  91. package/renderables/Diff.d.ts +135 -0
  92. package/renderables/EditBufferRenderable.d.ts +162 -0
  93. package/renderables/FrameBuffer.d.ts +16 -0
  94. package/renderables/Input.d.ts +67 -0
  95. package/renderables/LineNumberRenderable.d.ts +74 -0
  96. package/renderables/Markdown.d.ts +150 -0
  97. package/renderables/ScrollBar.d.ts +77 -0
  98. package/renderables/ScrollBox.d.ts +116 -0
  99. package/renderables/Select.d.ts +115 -0
  100. package/renderables/Slider.d.ts +44 -0
  101. package/renderables/TabSelect.d.ts +96 -0
  102. package/renderables/Text.d.ts +36 -0
  103. package/renderables/TextBufferRenderable.d.ts +105 -0
  104. package/renderables/TextNode.d.ts +91 -0
  105. package/renderables/TextTable.d.ts +130 -0
  106. package/renderables/Textarea.d.ts +114 -0
  107. package/renderables/__tests__/renderable-test-utils.d.ts +7 -0
  108. package/renderables/composition/VRenderable.d.ts +16 -0
  109. package/renderables/composition/constructs.d.ts +35 -0
  110. package/renderables/composition/vnode.d.ts +46 -0
  111. package/renderables/index.d.ts +21 -0
  112. package/renderables/markdown-parser.d.ts +10 -0
  113. package/renderer.d.ts +382 -0
  114. package/syntax-style.d.ts +54 -0
  115. package/testing/mock-keys.d.ts +80 -0
  116. package/testing/mock-mouse.d.ts +38 -0
  117. package/testing/mock-tree-sitter-client.d.ts +23 -0
  118. package/testing/spy.d.ts +7 -0
  119. package/testing/test-recorder.d.ts +61 -0
  120. package/testing/test-renderer.d.ts +23 -0
  121. package/testing.d.ts +6 -0
  122. package/testing.js +670 -0
  123. package/testing.js.map +15 -0
  124. package/text-buffer-view.d.ts +42 -0
  125. package/text-buffer.d.ts +67 -0
  126. package/types.d.ts +126 -0
  127. package/utils.d.ts +14 -0
  128. package/zig-structs.d.ts +155 -0
  129. package/zig.d.ts +351 -0
package/zig.d.ts ADDED
@@ -0,0 +1,351 @@
1
+ import { type Pointer } from "bun:ffi";
2
+ import { type CursorStyle, type CursorStyleOptions, type DebugOverlayCorner, type WidthMethod, type Highlight, type LineInfo } from "./types";
3
+ export type { LineInfo, AllocatorStats, BuildOptions };
4
+ import { RGBA } from "./lib/RGBA";
5
+ import { OptimizedBuffer } from "./buffer";
6
+ import { TextBuffer } from "./text-buffer";
7
+ import type { NativeSpanFeedOptions, NativeSpanFeedStats, ReserveInfo, BuildOptions, AllocatorStats } from "./zig-structs";
8
+ export declare enum LogLevel {
9
+ Error = 0,
10
+ Warn = 1,
11
+ Info = 2,
12
+ Debug = 3
13
+ }
14
+ /**
15
+ * VisualCursor represents a cursor position with both visual and logical coordinates.
16
+ * Visual coordinates (visualRow, visualCol) are VIEWPORT-RELATIVE.
17
+ * This means visualRow=0 is the first visible line in the viewport, not the first line in the document.
18
+ * Logical coordinates (logicalRow, logicalCol) are document-absolute.
19
+ */
20
+ export interface VisualCursor {
21
+ visualRow: number;
22
+ visualCol: number;
23
+ logicalRow: number;
24
+ logicalCol: number;
25
+ offset: number;
26
+ }
27
+ export interface LogicalCursor {
28
+ row: number;
29
+ col: number;
30
+ offset: number;
31
+ }
32
+ export interface CursorState {
33
+ x: number;
34
+ y: number;
35
+ visible: boolean;
36
+ style: CursorStyle;
37
+ blinking: boolean;
38
+ color: RGBA;
39
+ }
40
+ export type NativeSpanFeedEventHandler = (eventId: number, arg0: Pointer, arg1: number | bigint) => void;
41
+ export interface RenderLib {
42
+ createRenderer: (width: number, height: number, options?: {
43
+ testing?: boolean;
44
+ remote?: boolean;
45
+ }) => Pointer | null;
46
+ setTerminalEnvVar: (renderer: Pointer, key: string, value: string) => boolean;
47
+ destroyRenderer: (renderer: Pointer) => void;
48
+ setUseThread: (renderer: Pointer, useThread: boolean) => void;
49
+ setBackgroundColor: (renderer: Pointer, color: RGBA) => void;
50
+ setRenderOffset: (renderer: Pointer, offset: number) => void;
51
+ updateStats: (renderer: Pointer, time: number, fps: number, frameCallbackTime: number) => void;
52
+ updateMemoryStats: (renderer: Pointer, heapUsed: number, heapTotal: number, arrayBuffers: number) => void;
53
+ render: (renderer: Pointer, force: boolean) => void;
54
+ getNextBuffer: (renderer: Pointer) => OptimizedBuffer;
55
+ getCurrentBuffer: (renderer: Pointer) => OptimizedBuffer;
56
+ createOptimizedBuffer: (width: number, height: number, widthMethod: WidthMethod, respectAlpha?: boolean, id?: string) => OptimizedBuffer;
57
+ destroyOptimizedBuffer: (bufferPtr: Pointer) => void;
58
+ drawFrameBuffer: (targetBufferPtr: Pointer, destX: number, destY: number, bufferPtr: Pointer, sourceX?: number, sourceY?: number, sourceWidth?: number, sourceHeight?: number) => void;
59
+ getBufferWidth: (buffer: Pointer) => number;
60
+ getBufferHeight: (buffer: Pointer) => number;
61
+ bufferClear: (buffer: Pointer, color: RGBA) => void;
62
+ bufferGetCharPtr: (buffer: Pointer) => Pointer;
63
+ bufferGetFgPtr: (buffer: Pointer) => Pointer;
64
+ bufferGetBgPtr: (buffer: Pointer) => Pointer;
65
+ bufferGetAttributesPtr: (buffer: Pointer) => Pointer;
66
+ bufferGetRespectAlpha: (buffer: Pointer) => boolean;
67
+ bufferSetRespectAlpha: (buffer: Pointer, respectAlpha: boolean) => void;
68
+ bufferGetId: (buffer: Pointer) => string;
69
+ bufferGetRealCharSize: (buffer: Pointer) => number;
70
+ bufferWriteResolvedChars: (buffer: Pointer, outputBuffer: Uint8Array, addLineBreaks: boolean) => number;
71
+ bufferDrawText: (buffer: Pointer, text: string, x: number, y: number, color: RGBA, bgColor?: RGBA, attributes?: number) => void;
72
+ bufferSetCellWithAlphaBlending: (buffer: Pointer, x: number, y: number, char: string, color: RGBA, bgColor: RGBA, attributes?: number) => void;
73
+ bufferSetCell: (buffer: Pointer, x: number, y: number, char: string, color: RGBA, bgColor: RGBA, attributes?: number) => void;
74
+ bufferFillRect: (buffer: Pointer, x: number, y: number, width: number, height: number, color: RGBA) => void;
75
+ bufferDrawSuperSampleBuffer: (buffer: Pointer, x: number, y: number, pixelDataPtr: Pointer, pixelDataLength: number, format: "bgra8unorm" | "rgba8unorm", alignedBytesPerRow: number) => void;
76
+ bufferDrawPackedBuffer: (buffer: Pointer, dataPtr: Pointer, dataLen: number, posX: number, posY: number, terminalWidthCells: number, terminalHeightCells: number) => void;
77
+ bufferDrawGrayscaleBuffer: (buffer: Pointer, posX: number, posY: number, intensitiesPtr: Pointer, srcWidth: number, srcHeight: number, fg: RGBA | null, bg: RGBA | null) => void;
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;
83
+ bufferDrawBox: (buffer: Pointer, x: number, y: number, width: number, height: number, borderChars: Uint32Array, packedOptions: number, borderColor: RGBA, backgroundColor: RGBA, title: string | null) => void;
84
+ bufferResize: (buffer: Pointer, width: number, height: number) => void;
85
+ resizeRenderer: (renderer: Pointer, width: number, height: number) => void;
86
+ setCursorPosition: (renderer: Pointer, x: number, y: number, visible: boolean) => void;
87
+ setCursorColor: (renderer: Pointer, color: RGBA) => void;
88
+ getCursorState: (renderer: Pointer) => CursorState;
89
+ setCursorStyleOptions: (renderer: Pointer, options: CursorStyleOptions) => void;
90
+ setDebugOverlay: (renderer: Pointer, enabled: boolean, corner: DebugOverlayCorner) => void;
91
+ clearTerminal: (renderer: Pointer) => void;
92
+ setTerminalTitle: (renderer: Pointer, title: string) => void;
93
+ copyToClipboardOSC52: (renderer: Pointer, target: number, payload: Uint8Array) => boolean;
94
+ clearClipboardOSC52: (renderer: Pointer, target: number) => boolean;
95
+ addToHitGrid: (renderer: Pointer, x: number, y: number, width: number, height: number, id: number) => void;
96
+ clearCurrentHitGrid: (renderer: Pointer) => void;
97
+ hitGridPushScissorRect: (renderer: Pointer, x: number, y: number, width: number, height: number) => void;
98
+ hitGridPopScissorRect: (renderer: Pointer) => void;
99
+ hitGridClearScissorRects: (renderer: Pointer) => void;
100
+ addToCurrentHitGridClipped: (renderer: Pointer, x: number, y: number, width: number, height: number, id: number) => void;
101
+ checkHit: (renderer: Pointer, x: number, y: number) => number;
102
+ getHitGridDirty: (renderer: Pointer) => boolean;
103
+ dumpHitGrid: (renderer: Pointer) => void;
104
+ dumpBuffers: (renderer: Pointer, timestamp?: number) => void;
105
+ dumpStdoutBuffer: (renderer: Pointer, timestamp?: number) => void;
106
+ restoreTerminalModes: (renderer: Pointer) => void;
107
+ enableMouse: (renderer: Pointer, enableMovement: boolean) => void;
108
+ disableMouse: (renderer: Pointer) => void;
109
+ enableKittyKeyboard: (renderer: Pointer, flags: number) => void;
110
+ disableKittyKeyboard: (renderer: Pointer) => void;
111
+ setKittyKeyboardFlags: (renderer: Pointer, flags: number) => void;
112
+ getKittyKeyboardFlags: (renderer: Pointer) => number;
113
+ setupTerminal: (renderer: Pointer, useAlternateScreen: boolean) => void;
114
+ suspendRenderer: (renderer: Pointer) => void;
115
+ resumeRenderer: (renderer: Pointer) => void;
116
+ queryPixelResolution: (renderer: Pointer) => void;
117
+ writeOut: (renderer: Pointer, data: string | Uint8Array) => void;
118
+ createTextBuffer: (widthMethod: WidthMethod) => TextBuffer;
119
+ destroyTextBuffer: (buffer: Pointer) => void;
120
+ textBufferGetLength: (buffer: Pointer) => number;
121
+ textBufferGetByteSize: (buffer: Pointer) => number;
122
+ textBufferReset: (buffer: Pointer) => void;
123
+ textBufferClear: (buffer: Pointer) => void;
124
+ textBufferRegisterMemBuffer: (buffer: Pointer, bytes: Uint8Array, owned?: boolean) => number;
125
+ textBufferReplaceMemBuffer: (buffer: Pointer, memId: number, bytes: Uint8Array, owned?: boolean) => boolean;
126
+ textBufferClearMemRegistry: (buffer: Pointer) => void;
127
+ textBufferSetTextFromMem: (buffer: Pointer, memId: number) => void;
128
+ textBufferAppend: (buffer: Pointer, bytes: Uint8Array) => void;
129
+ textBufferAppendFromMemId: (buffer: Pointer, memId: number) => void;
130
+ textBufferLoadFile: (buffer: Pointer, path: string) => boolean;
131
+ textBufferSetStyledText: (buffer: Pointer, chunks: Array<{
132
+ text: string;
133
+ fg?: RGBA | null;
134
+ bg?: RGBA | null;
135
+ attributes?: number;
136
+ link?: {
137
+ url: string;
138
+ };
139
+ }>) => void;
140
+ textBufferSetDefaultFg: (buffer: Pointer, fg: RGBA | null) => void;
141
+ textBufferSetDefaultBg: (buffer: Pointer, bg: RGBA | null) => void;
142
+ textBufferSetDefaultAttributes: (buffer: Pointer, attributes: number | null) => void;
143
+ textBufferResetDefaults: (buffer: Pointer) => void;
144
+ textBufferGetTabWidth: (buffer: Pointer) => number;
145
+ textBufferSetTabWidth: (buffer: Pointer, width: number) => void;
146
+ textBufferGetLineCount: (buffer: Pointer) => number;
147
+ getPlainTextBytes: (buffer: Pointer, maxLength: number) => Uint8Array | null;
148
+ textBufferGetTextRange: (buffer: Pointer, startOffset: number, endOffset: number, maxLength: number) => Uint8Array | null;
149
+ textBufferGetTextRangeByCoords: (buffer: Pointer, startRow: number, startCol: number, endRow: number, endCol: number, maxLength: number) => Uint8Array | null;
150
+ createTextBufferView: (textBuffer: Pointer) => Pointer;
151
+ destroyTextBufferView: (view: Pointer) => void;
152
+ textBufferViewSetSelection: (view: Pointer, start: number, end: number, bgColor: RGBA | null, fgColor: RGBA | null) => void;
153
+ textBufferViewResetSelection: (view: Pointer) => void;
154
+ textBufferViewGetSelection: (view: Pointer) => {
155
+ start: number;
156
+ end: number;
157
+ } | null;
158
+ textBufferViewSetLocalSelection: (view: Pointer, anchorX: number, anchorY: number, focusX: number, focusY: number, bgColor: RGBA | null, fgColor: RGBA | null) => boolean;
159
+ textBufferViewUpdateSelection: (view: Pointer, end: number, bgColor: RGBA | null, fgColor: RGBA | null) => void;
160
+ textBufferViewUpdateLocalSelection: (view: Pointer, anchorX: number, anchorY: number, focusX: number, focusY: number, bgColor: RGBA | null, fgColor: RGBA | null) => boolean;
161
+ textBufferViewResetLocalSelection: (view: Pointer) => void;
162
+ textBufferViewSetWrapWidth: (view: Pointer, width: number) => void;
163
+ textBufferViewSetWrapMode: (view: Pointer, mode: "none" | "char" | "word") => void;
164
+ textBufferViewSetViewportSize: (view: Pointer, width: number, height: number) => void;
165
+ textBufferViewSetViewport: (view: Pointer, x: number, y: number, width: number, height: number) => void;
166
+ textBufferViewGetLineInfo: (view: Pointer) => LineInfo;
167
+ textBufferViewGetLogicalLineInfo: (view: Pointer) => LineInfo;
168
+ textBufferViewGetSelectedTextBytes: (view: Pointer, maxLength: number) => Uint8Array | null;
169
+ textBufferViewGetPlainTextBytes: (view: Pointer, maxLength: number) => Uint8Array | null;
170
+ textBufferViewSetTabIndicator: (view: Pointer, indicator: number) => void;
171
+ textBufferViewSetTabIndicatorColor: (view: Pointer, color: RGBA) => void;
172
+ textBufferViewSetTruncate: (view: Pointer, truncate: boolean) => void;
173
+ textBufferViewMeasureForDimensions: (view: Pointer, width: number, height: number) => {
174
+ lineCount: number;
175
+ maxWidth: number;
176
+ } | null;
177
+ textBufferViewGetVirtualLineCount: (view: Pointer) => number;
178
+ readonly encoder: TextEncoder;
179
+ readonly decoder: TextDecoder;
180
+ bufferDrawTextBufferView: (buffer: Pointer, view: Pointer, x: number, y: number) => void;
181
+ bufferDrawEditorView: (buffer: Pointer, view: Pointer, x: number, y: number) => void;
182
+ createEditBuffer: (widthMethod: WidthMethod) => Pointer;
183
+ destroyEditBuffer: (buffer: Pointer) => void;
184
+ editBufferSetText: (buffer: Pointer, textBytes: Uint8Array) => void;
185
+ editBufferSetTextFromMem: (buffer: Pointer, memId: number) => void;
186
+ editBufferReplaceText: (buffer: Pointer, textBytes: Uint8Array) => void;
187
+ editBufferReplaceTextFromMem: (buffer: Pointer, memId: number) => void;
188
+ editBufferGetText: (buffer: Pointer, maxLength: number) => Uint8Array | null;
189
+ editBufferInsertChar: (buffer: Pointer, char: string) => void;
190
+ editBufferInsertText: (buffer: Pointer, text: string) => void;
191
+ editBufferDeleteChar: (buffer: Pointer) => void;
192
+ editBufferDeleteCharBackward: (buffer: Pointer) => void;
193
+ editBufferDeleteRange: (buffer: Pointer, startLine: number, startCol: number, endLine: number, endCol: number) => void;
194
+ editBufferNewLine: (buffer: Pointer) => void;
195
+ editBufferDeleteLine: (buffer: Pointer) => void;
196
+ editBufferMoveCursorLeft: (buffer: Pointer) => void;
197
+ editBufferMoveCursorRight: (buffer: Pointer) => void;
198
+ editBufferMoveCursorUp: (buffer: Pointer) => void;
199
+ editBufferMoveCursorDown: (buffer: Pointer) => void;
200
+ editBufferGotoLine: (buffer: Pointer, line: number) => void;
201
+ editBufferSetCursor: (buffer: Pointer, line: number, col: number) => void;
202
+ editBufferSetCursorToLineCol: (buffer: Pointer, line: number, col: number) => void;
203
+ editBufferSetCursorByOffset: (buffer: Pointer, offset: number) => void;
204
+ editBufferGetCursorPosition: (buffer: Pointer) => LogicalCursor;
205
+ editBufferGetId: (buffer: Pointer) => number;
206
+ editBufferGetTextBuffer: (buffer: Pointer) => Pointer;
207
+ editBufferDebugLogRope: (buffer: Pointer) => void;
208
+ editBufferUndo: (buffer: Pointer, maxLength: number) => Uint8Array | null;
209
+ editBufferRedo: (buffer: Pointer, maxLength: number) => Uint8Array | null;
210
+ editBufferCanUndo: (buffer: Pointer) => boolean;
211
+ editBufferCanRedo: (buffer: Pointer) => boolean;
212
+ editBufferClearHistory: (buffer: Pointer) => void;
213
+ editBufferClear: (buffer: Pointer) => void;
214
+ editBufferGetNextWordBoundary: (buffer: Pointer) => {
215
+ row: number;
216
+ col: number;
217
+ offset: number;
218
+ };
219
+ editBufferGetPrevWordBoundary: (buffer: Pointer) => {
220
+ row: number;
221
+ col: number;
222
+ offset: number;
223
+ };
224
+ editBufferGetEOL: (buffer: Pointer) => {
225
+ row: number;
226
+ col: number;
227
+ offset: number;
228
+ };
229
+ editBufferOffsetToPosition: (buffer: Pointer, offset: number) => {
230
+ row: number;
231
+ col: number;
232
+ offset: number;
233
+ } | null;
234
+ editBufferPositionToOffset: (buffer: Pointer, row: number, col: number) => number;
235
+ editBufferGetLineStartOffset: (buffer: Pointer, row: number) => number;
236
+ editBufferGetTextRange: (buffer: Pointer, startOffset: number, endOffset: number, maxLength: number) => Uint8Array | null;
237
+ editBufferGetTextRangeByCoords: (buffer: Pointer, startRow: number, startCol: number, endRow: number, endCol: number, maxLength: number) => Uint8Array | null;
238
+ createEditorView: (editBufferPtr: Pointer, viewportWidth: number, viewportHeight: number) => Pointer;
239
+ destroyEditorView: (view: Pointer) => void;
240
+ editorViewSetViewportSize: (view: Pointer, width: number, height: number) => void;
241
+ editorViewSetViewport: (view: Pointer, x: number, y: number, width: number, height: number, moveCursor: boolean) => void;
242
+ editorViewGetViewport: (view: Pointer) => {
243
+ offsetY: number;
244
+ offsetX: number;
245
+ height: number;
246
+ width: number;
247
+ };
248
+ editorViewSetScrollMargin: (view: Pointer, margin: number) => void;
249
+ editorViewSetWrapMode: (view: Pointer, mode: "none" | "char" | "word") => void;
250
+ editorViewGetVirtualLineCount: (view: Pointer) => number;
251
+ editorViewGetTotalVirtualLineCount: (view: Pointer) => number;
252
+ editorViewGetTextBufferView: (view: Pointer) => Pointer;
253
+ editorViewSetSelection: (view: Pointer, start: number, end: number, bgColor: RGBA | null, fgColor: RGBA | null) => void;
254
+ editorViewResetSelection: (view: Pointer) => void;
255
+ editorViewGetSelection: (view: Pointer) => {
256
+ start: number;
257
+ end: number;
258
+ } | null;
259
+ editorViewSetLocalSelection: (view: Pointer, anchorX: number, anchorY: number, focusX: number, focusY: number, bgColor: RGBA | null, fgColor: RGBA | null, updateCursor: boolean, followCursor: boolean) => boolean;
260
+ editorViewUpdateSelection: (view: Pointer, end: number, bgColor: RGBA | null, fgColor: RGBA | null) => void;
261
+ editorViewUpdateLocalSelection: (view: Pointer, anchorX: number, anchorY: number, focusX: number, focusY: number, bgColor: RGBA | null, fgColor: RGBA | null, updateCursor: boolean, followCursor: boolean) => boolean;
262
+ editorViewResetLocalSelection: (view: Pointer) => void;
263
+ editorViewGetSelectedTextBytes: (view: Pointer, maxLength: number) => Uint8Array | null;
264
+ editorViewGetCursor: (view: Pointer) => {
265
+ row: number;
266
+ col: number;
267
+ };
268
+ editorViewGetText: (view: Pointer, maxLength: number) => Uint8Array | null;
269
+ editorViewGetVisualCursor: (view: Pointer) => VisualCursor;
270
+ editorViewMoveUpVisual: (view: Pointer) => void;
271
+ editorViewMoveDownVisual: (view: Pointer) => void;
272
+ editorViewDeleteSelectedText: (view: Pointer) => void;
273
+ editorViewSetCursorByOffset: (view: Pointer, offset: number) => void;
274
+ editorViewGetNextWordBoundary: (view: Pointer) => VisualCursor;
275
+ editorViewGetPrevWordBoundary: (view: Pointer) => VisualCursor;
276
+ editorViewGetEOL: (view: Pointer) => VisualCursor;
277
+ editorViewGetVisualSOL: (view: Pointer) => VisualCursor;
278
+ editorViewGetVisualEOL: (view: Pointer) => VisualCursor;
279
+ editorViewGetLineInfo: (view: Pointer) => LineInfo;
280
+ editorViewGetLogicalLineInfo: (view: Pointer) => LineInfo;
281
+ editorViewSetPlaceholderStyledText: (view: Pointer, chunks: Array<{
282
+ text: string;
283
+ fg?: RGBA | null;
284
+ bg?: RGBA | null;
285
+ attributes?: number;
286
+ }>) => void;
287
+ editorViewSetTabIndicator: (view: Pointer, indicator: number) => void;
288
+ editorViewSetTabIndicatorColor: (view: Pointer, color: RGBA) => void;
289
+ bufferPushScissorRect: (buffer: Pointer, x: number, y: number, width: number, height: number) => void;
290
+ bufferPopScissorRect: (buffer: Pointer) => void;
291
+ bufferClearScissorRects: (buffer: Pointer) => void;
292
+ bufferPushOpacity: (buffer: Pointer, opacity: number) => void;
293
+ bufferPopOpacity: (buffer: Pointer) => void;
294
+ bufferGetCurrentOpacity: (buffer: Pointer) => number;
295
+ bufferClearOpacity: (buffer: Pointer) => void;
296
+ textBufferAddHighlightByCharRange: (buffer: Pointer, highlight: Highlight) => void;
297
+ textBufferAddHighlight: (buffer: Pointer, lineIdx: number, highlight: Highlight) => void;
298
+ textBufferRemoveHighlightsByRef: (buffer: Pointer, hlRef: number) => void;
299
+ textBufferClearLineHighlights: (buffer: Pointer, lineIdx: number) => void;
300
+ textBufferClearAllHighlights: (buffer: Pointer) => void;
301
+ textBufferSetSyntaxStyle: (buffer: Pointer, style: Pointer | null) => void;
302
+ textBufferGetLineHighlights: (buffer: Pointer, lineIdx: number) => Array<Highlight>;
303
+ textBufferGetHighlightCount: (buffer: Pointer) => number;
304
+ getArenaAllocatedBytes: () => number;
305
+ getBuildOptions: () => BuildOptions;
306
+ getAllocatorStats: () => AllocatorStats;
307
+ createSyntaxStyle: () => Pointer;
308
+ destroySyntaxStyle: (style: Pointer) => void;
309
+ syntaxStyleRegister: (style: Pointer, name: string, fg: RGBA | null, bg: RGBA | null, attributes: number) => number;
310
+ syntaxStyleResolveByName: (style: Pointer, name: string) => number | null;
311
+ syntaxStyleGetStyleCount: (style: Pointer) => number;
312
+ getTerminalCapabilities: (renderer: Pointer) => any;
313
+ processCapabilityResponse: (renderer: Pointer, response: string) => void;
314
+ encodeUnicode: (text: string, widthMethod: WidthMethod) => {
315
+ ptr: Pointer;
316
+ data: Array<{
317
+ width: number;
318
+ char: number;
319
+ }>;
320
+ } | null;
321
+ freeUnicode: (encoded: {
322
+ ptr: Pointer;
323
+ data: Array<{
324
+ width: number;
325
+ char: number;
326
+ }>;
327
+ }) => void;
328
+ bufferDrawChar: (buffer: Pointer, char: number, x: number, y: number, fg: RGBA, bg: RGBA, attributes?: number) => void;
329
+ registerNativeSpanFeedStream: (stream: Pointer, handler: NativeSpanFeedEventHandler) => void;
330
+ unregisterNativeSpanFeedStream: (stream: Pointer) => void;
331
+ createNativeSpanFeed: (options?: NativeSpanFeedOptions | null) => Pointer;
332
+ attachNativeSpanFeed: (stream: Pointer) => number;
333
+ destroyNativeSpanFeed: (stream: Pointer) => void;
334
+ streamWrite: (stream: Pointer, data: Uint8Array | string) => number;
335
+ streamCommit: (stream: Pointer) => number;
336
+ streamDrainSpans: (stream: Pointer, outBuffer: Uint8Array, maxSpans: number) => number;
337
+ streamClose: (stream: Pointer) => number;
338
+ streamSetOptions: (stream: Pointer, options: NativeSpanFeedOptions) => number;
339
+ streamGetStats: (stream: Pointer) => NativeSpanFeedStats | null;
340
+ streamReserve: (stream: Pointer, minLen: number) => {
341
+ status: number;
342
+ info: ReserveInfo | null;
343
+ };
344
+ streamCommitReserved: (stream: Pointer, length: number) => number;
345
+ onNativeEvent: (name: string, handler: (data: ArrayBuffer) => void) => void;
346
+ onceNativeEvent: (name: string, handler: (data: ArrayBuffer) => void) => void;
347
+ offNativeEvent: (name: string, handler: (data: ArrayBuffer) => void) => void;
348
+ onAnyNativeEvent: (handler: (name: string, data: ArrayBuffer) => void) => void;
349
+ }
350
+ export declare function setRenderLibPath(libPath: string): void;
351
+ export declare function resolveRenderLib(): RenderLib;