@jitl/opentui-core 0.1.97-next.c8a3f05

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 (180) 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 +33843 -0
  17. package/3d.js.map +155 -0
  18. package/LICENSE +21 -0
  19. package/NativeSpanFeed.d.ts +41 -0
  20. package/README.md +65 -0
  21. package/Renderable.d.ts +334 -0
  22. package/Worker-vajwjk0s.js +94 -0
  23. package/Worker-vajwjk0s.js.map +10 -0
  24. package/animation/Timeline.d.ts +126 -0
  25. package/ansi.d.ts +13 -0
  26. package/assets/javascript/highlights.scm +205 -0
  27. package/assets/javascript/tree-sitter-javascript.wasm +0 -0
  28. package/assets/markdown/highlights.scm +150 -0
  29. package/assets/markdown/injections.scm +27 -0
  30. package/assets/markdown/tree-sitter-markdown.wasm +0 -0
  31. package/assets/markdown_inline/highlights.scm +115 -0
  32. package/assets/markdown_inline/tree-sitter-markdown_inline.wasm +0 -0
  33. package/assets/typescript/highlights.scm +604 -0
  34. package/assets/typescript/tree-sitter-typescript.wasm +0 -0
  35. package/assets/zig/highlights.scm +284 -0
  36. package/assets/zig/tree-sitter-zig.wasm +0 -0
  37. package/buffer.d.ts +111 -0
  38. package/compat/FFIType.d.ts +304 -0
  39. package/compat/Worker.d.ts +1 -0
  40. package/compat/bun-ffi-structs.d.ts +2 -0
  41. package/compat/ffi.d.ts +86 -0
  42. package/compat/nodejs/Worker.d.ts +16 -0
  43. package/compat/nodejs/bun-ffi-structs/index.d.ts +46 -0
  44. package/compat/nodejs/ffi.d.ts +21 -0
  45. package/compat/nodejs/registerBun.d.ts +1 -0
  46. package/compat/nodejs/registerResolveJs.d.ts +1 -0
  47. package/compat/nodejs/runtime.d.ts +7 -0
  48. package/compat/nodejs/test.d.ts +4 -0
  49. package/compat/nodejs/trampoline.worker.d.ts +1 -0
  50. package/compat/runtime.d.ts +8 -0
  51. package/compat/test.d.ts +1 -0
  52. package/compat/testHelpers.d.ts +18 -0
  53. package/console.d.ts +144 -0
  54. package/edit-buffer.d.ts +98 -0
  55. package/editor-view.d.ts +73 -0
  56. package/ffi-x3zvcksd.js +25 -0
  57. package/ffi-x3zvcksd.js.map +9 -0
  58. package/index-5yqvbmcz.js +220 -0
  59. package/index-5yqvbmcz.js.map +10 -0
  60. package/index-bnfz2g63.js +654 -0
  61. package/index-bnfz2g63.js.map +10 -0
  62. package/index-cbvybypy.js +43 -0
  63. package/index-cbvybypy.js.map +10 -0
  64. package/index-hjna9d1h.js +12074 -0
  65. package/index-hjna9d1h.js.map +42 -0
  66. package/index-jjp8mmgk.js +19991 -0
  67. package/index-jjp8mmgk.js.map +70 -0
  68. package/index-re3ntm60.js +51 -0
  69. package/index-re3ntm60.js.map +9 -0
  70. package/index-t16hn6zn.js +411 -0
  71. package/index-t16hn6zn.js.map +10 -0
  72. package/index-tkk6cmr2.js +650 -0
  73. package/index-tkk6cmr2.js.map +10 -0
  74. package/index.d.ts +23 -0
  75. package/index.js +480 -0
  76. package/index.js.map +9 -0
  77. package/lib/KeyHandler.d.ts +61 -0
  78. package/lib/RGBA.d.ts +26 -0
  79. package/lib/ascii.font.d.ts +508 -0
  80. package/lib/border.d.ts +51 -0
  81. package/lib/bunfs.d.ts +7 -0
  82. package/lib/clipboard.d.ts +17 -0
  83. package/lib/clock.d.ts +15 -0
  84. package/lib/data-paths.d.ts +26 -0
  85. package/lib/debounce.d.ts +42 -0
  86. package/lib/detect-links.d.ts +6 -0
  87. package/lib/env.d.ts +42 -0
  88. package/lib/extmarks-history.d.ts +17 -0
  89. package/lib/extmarks.d.ts +89 -0
  90. package/lib/hast-styled-text.d.ts +17 -0
  91. package/lib/index.d.ts +21 -0
  92. package/lib/keymapping.d.ts +25 -0
  93. package/lib/objects-in-viewport.d.ts +24 -0
  94. package/lib/output.capture.d.ts +24 -0
  95. package/lib/parse.keypress-kitty.d.ts +2 -0
  96. package/lib/parse.keypress.d.ts +26 -0
  97. package/lib/parse.mouse.d.ts +30 -0
  98. package/lib/paste.d.ts +7 -0
  99. package/lib/queue.d.ts +15 -0
  100. package/lib/renderable.validations.d.ts +12 -0
  101. package/lib/scroll-acceleration.d.ts +43 -0
  102. package/lib/selection.d.ts +64 -0
  103. package/lib/singleton.d.ts +7 -0
  104. package/lib/stdin-parser.d.ts +87 -0
  105. package/lib/styled-text.d.ts +63 -0
  106. package/lib/terminal-capability-detection.d.ts +30 -0
  107. package/lib/terminal-palette.d.ts +50 -0
  108. package/lib/tree-sitter/assets/update.d.ts +11 -0
  109. package/lib/tree-sitter/client.d.ts +47 -0
  110. package/lib/tree-sitter/default-parsers.d.ts +2 -0
  111. package/lib/tree-sitter/download-utils.d.ts +21 -0
  112. package/lib/tree-sitter/index.d.ts +8 -0
  113. package/lib/tree-sitter/parser.worker.d.ts +1 -0
  114. package/lib/tree-sitter/parsers-config.d.ts +53 -0
  115. package/lib/tree-sitter/resolve-ft.d.ts +5 -0
  116. package/lib/tree-sitter/types.d.ts +82 -0
  117. package/lib/tree-sitter-styled-text.d.ts +14 -0
  118. package/lib/validate-dir-name.d.ts +1 -0
  119. package/lib/yoga.options.d.ts +32 -0
  120. package/package.json +80 -0
  121. package/parser.worker.js +888 -0
  122. package/parser.worker.js.map +12 -0
  123. package/plugins/core-slot.d.ts +72 -0
  124. package/plugins/registry.d.ts +42 -0
  125. package/plugins/types.d.ts +34 -0
  126. package/post/effects.d.ts +147 -0
  127. package/post/filters.d.ts +65 -0
  128. package/post/matrices.d.ts +20 -0
  129. package/renderables/ASCIIFont.d.ts +52 -0
  130. package/renderables/Box.d.ts +81 -0
  131. package/renderables/Code.d.ts +78 -0
  132. package/renderables/Diff.d.ts +142 -0
  133. package/renderables/EditBufferRenderable.d.ts +237 -0
  134. package/renderables/FrameBuffer.d.ts +16 -0
  135. package/renderables/Input.d.ts +67 -0
  136. package/renderables/LineNumberRenderable.d.ts +78 -0
  137. package/renderables/Markdown.d.ts +181 -0
  138. package/renderables/ScrollBar.d.ts +77 -0
  139. package/renderables/ScrollBox.d.ts +124 -0
  140. package/renderables/Select.d.ts +115 -0
  141. package/renderables/Slider.d.ts +47 -0
  142. package/renderables/TabSelect.d.ts +96 -0
  143. package/renderables/Text.d.ts +36 -0
  144. package/renderables/TextBufferRenderable.d.ts +105 -0
  145. package/renderables/TextNode.d.ts +91 -0
  146. package/renderables/TextTable.d.ts +140 -0
  147. package/renderables/Textarea.d.ts +63 -0
  148. package/renderables/TimeToFirstDraw.d.ts +24 -0
  149. package/renderables/__tests__/renderable-test-utils.d.ts +12 -0
  150. package/renderables/composition/VRenderable.d.ts +16 -0
  151. package/renderables/composition/constructs.d.ts +35 -0
  152. package/renderables/composition/vnode.d.ts +46 -0
  153. package/renderables/index.d.ts +23 -0
  154. package/renderables/markdown-parser.d.ts +10 -0
  155. package/renderer.d.ts +419 -0
  156. package/runtime-hdpkc6qf.js +220 -0
  157. package/runtime-hdpkc6qf.js.map +17 -0
  158. package/runtime-plugin-support.d.ts +3 -0
  159. package/runtime-plugin-support.js +31 -0
  160. package/runtime-plugin-support.js.map +10 -0
  161. package/runtime-plugin.d.ts +19 -0
  162. package/runtime-plugin.js +18 -0
  163. package/runtime-plugin.js.map +9 -0
  164. package/syntax-style.d.ts +54 -0
  165. package/testing/manual-clock.d.ts +17 -0
  166. package/testing/mock-keys.d.ts +81 -0
  167. package/testing/mock-mouse.d.ts +38 -0
  168. package/testing/mock-tree-sitter-client.d.ts +23 -0
  169. package/testing/spy.d.ts +7 -0
  170. package/testing/test-recorder.d.ts +61 -0
  171. package/testing/test-renderer.d.ts +23 -0
  172. package/testing.d.ts +6 -0
  173. package/testing.js +699 -0
  174. package/testing.js.map +15 -0
  175. package/text-buffer-view.d.ts +42 -0
  176. package/text-buffer.d.ts +67 -0
  177. package/types.d.ts +139 -0
  178. package/utils.d.ts +14 -0
  179. package/zig-structs.d.ts +155 -0
  180. package/zig.d.ts +353 -0
@@ -0,0 +1,284 @@
1
+ ; Query from: https://github.com/nvim-treesitter/nvim-treesitter/raw/refs/heads/master/queries/zig/highlights.scm
2
+ ; Variables
3
+ (identifier) @variable
4
+
5
+ ; Parameters
6
+ (parameter
7
+ name: (identifier) @variable.parameter)
8
+
9
+ (payload
10
+ (identifier) @variable.parameter)
11
+
12
+ ; Types
13
+ (parameter
14
+ type: (identifier) @type)
15
+
16
+ ((identifier) @type
17
+ (#lua-match? @type "^[A-Z_][a-zA-Z0-9_]*"))
18
+
19
+ (variable_declaration
20
+ (identifier) @type
21
+ "="
22
+ [
23
+ (struct_declaration)
24
+ (enum_declaration)
25
+ (union_declaration)
26
+ (opaque_declaration)
27
+ ])
28
+
29
+ [
30
+ (builtin_type)
31
+ "anyframe"
32
+ ] @type.builtin
33
+
34
+ ; Constants
35
+ ((identifier) @constant
36
+ (#lua-match? @constant "^[A-Z][A-Z_0-9]+$"))
37
+
38
+ [
39
+ "null"
40
+ "unreachable"
41
+ "undefined"
42
+ ] @constant.builtin
43
+
44
+ (field_expression
45
+ .
46
+ member: (identifier) @constant)
47
+
48
+ (enum_declaration
49
+ (container_field
50
+ type: (identifier) @constant))
51
+
52
+ ; Labels
53
+ (block_label
54
+ (identifier) @label)
55
+
56
+ (break_label
57
+ (identifier) @label)
58
+
59
+ ; Fields
60
+ (field_initializer
61
+ .
62
+ (identifier) @variable.member)
63
+
64
+ (field_expression
65
+ (_)
66
+ member: (identifier) @variable.member)
67
+
68
+ (container_field
69
+ name: (identifier) @variable.member)
70
+
71
+ (initializer_list
72
+ (assignment_expression
73
+ left: (field_expression
74
+ .
75
+ member: (identifier) @variable.member)))
76
+
77
+ ; Functions
78
+ (builtin_identifier) @function.builtin
79
+
80
+ (call_expression
81
+ function: (identifier) @function.call)
82
+
83
+ (call_expression
84
+ function: (field_expression
85
+ member: (identifier) @function.call))
86
+
87
+ (function_declaration
88
+ name: (identifier) @function)
89
+
90
+ ; Modules
91
+ (variable_declaration
92
+ (identifier) @module
93
+ (builtin_function
94
+ (builtin_identifier) @keyword.import
95
+ (#any-of? @keyword.import "@import" "@cImport")))
96
+
97
+ ; Builtins
98
+ [
99
+ "c"
100
+ "..."
101
+ ] @variable.builtin
102
+
103
+ ((identifier) @variable.builtin
104
+ (#eq? @variable.builtin "_"))
105
+
106
+ (calling_convention
107
+ (identifier) @variable.builtin)
108
+
109
+ ; Keywords
110
+ [
111
+ "asm"
112
+ "defer"
113
+ "errdefer"
114
+ "test"
115
+ "error"
116
+ "const"
117
+ "var"
118
+ ] @keyword
119
+
120
+ [
121
+ "struct"
122
+ "union"
123
+ "enum"
124
+ "opaque"
125
+ ] @keyword.type
126
+
127
+ [
128
+ "async"
129
+ "await"
130
+ "suspend"
131
+ "nosuspend"
132
+ "resume"
133
+ ] @keyword.coroutine
134
+
135
+ "fn" @keyword.function
136
+
137
+ [
138
+ "and"
139
+ "or"
140
+ "orelse"
141
+ ] @keyword.operator
142
+
143
+ "return" @keyword.return
144
+
145
+ [
146
+ "if"
147
+ "else"
148
+ "switch"
149
+ ] @keyword.conditional
150
+
151
+ [
152
+ "for"
153
+ "while"
154
+ "break"
155
+ "continue"
156
+ ] @keyword.repeat
157
+
158
+ [
159
+ "usingnamespace"
160
+ "export"
161
+ ] @keyword.import
162
+
163
+ [
164
+ "try"
165
+ "catch"
166
+ ] @keyword.exception
167
+
168
+ [
169
+ "volatile"
170
+ "allowzero"
171
+ "noalias"
172
+ "addrspace"
173
+ "align"
174
+ "callconv"
175
+ "linksection"
176
+ "pub"
177
+ "inline"
178
+ "noinline"
179
+ "extern"
180
+ "comptime"
181
+ "packed"
182
+ "threadlocal"
183
+ ] @keyword.modifier
184
+
185
+ ; Operator
186
+ [
187
+ "="
188
+ "*="
189
+ "*%="
190
+ "*|="
191
+ "/="
192
+ "%="
193
+ "+="
194
+ "+%="
195
+ "+|="
196
+ "-="
197
+ "-%="
198
+ "-|="
199
+ "<<="
200
+ "<<|="
201
+ ">>="
202
+ "&="
203
+ "^="
204
+ "|="
205
+ "!"
206
+ "~"
207
+ "-"
208
+ "-%"
209
+ "&"
210
+ "=="
211
+ "!="
212
+ ">"
213
+ ">="
214
+ "<="
215
+ "<"
216
+ "&"
217
+ "^"
218
+ "|"
219
+ "<<"
220
+ ">>"
221
+ "<<|"
222
+ "+"
223
+ "++"
224
+ "+%"
225
+ "-%"
226
+ "+|"
227
+ "-|"
228
+ "*"
229
+ "/"
230
+ "%"
231
+ "**"
232
+ "*%"
233
+ "*|"
234
+ "||"
235
+ ".*"
236
+ ".?"
237
+ "?"
238
+ ".."
239
+ ] @operator
240
+
241
+ ; Literals
242
+ (character) @character
243
+
244
+ ([
245
+ (string)
246
+ (multiline_string)
247
+ ] @string
248
+ (#set! "priority" 95))
249
+
250
+ (integer) @number
251
+
252
+ (float) @number.float
253
+
254
+ (boolean) @boolean
255
+
256
+ (escape_sequence) @string.escape
257
+
258
+ ; Punctuation
259
+ [
260
+ "["
261
+ "]"
262
+ "("
263
+ ")"
264
+ "{"
265
+ "}"
266
+ ] @punctuation.bracket
267
+
268
+ [
269
+ ";"
270
+ "."
271
+ ","
272
+ ":"
273
+ "=>"
274
+ "->"
275
+ ] @punctuation.delimiter
276
+
277
+ (payload
278
+ "|" @punctuation.bracket)
279
+
280
+ ; Comments
281
+ (comment) @comment @spell
282
+
283
+ ((comment) @comment.documentation
284
+ (#lua-match? @comment.documentation "^//!"))
Binary file
package/buffer.d.ts ADDED
@@ -0,0 +1,111 @@
1
+ import { RGBA } from "./lib/index.js";
2
+ import { type RenderLib } from "./zig.js";
3
+ import { type Pointer } from "./compat/ffi.js";
4
+ import { type BorderStyle, type BorderSides } from "./lib/index.js";
5
+ import { TargetChannel, type WidthMethod, type CapturedLine } from "./types.js";
6
+ import type { TextBufferView } from "./text-buffer-view.js";
7
+ import type { EditorView } from "./editor-view.js";
8
+ export declare class OptimizedBuffer {
9
+ private static fbIdCounter;
10
+ id: string;
11
+ lib: RenderLib;
12
+ private bufferPtr;
13
+ private _width;
14
+ private _height;
15
+ private _widthMethod;
16
+ respectAlpha: boolean;
17
+ private _rawBuffers;
18
+ private _destroyed;
19
+ get ptr(): Pointer;
20
+ private guard;
21
+ get buffers(): {
22
+ char: Uint32Array;
23
+ fg: Float32Array;
24
+ bg: Float32Array;
25
+ attributes: Uint32Array;
26
+ };
27
+ constructor(lib: RenderLib, ptr: Pointer, width: number, height: number, options: {
28
+ respectAlpha?: boolean;
29
+ id?: string;
30
+ widthMethod?: WidthMethod;
31
+ });
32
+ static create(width: number, height: number, widthMethod: WidthMethod, options?: {
33
+ respectAlpha?: boolean;
34
+ id?: string;
35
+ }): OptimizedBuffer;
36
+ get widthMethod(): WidthMethod;
37
+ get width(): number;
38
+ get height(): number;
39
+ setRespectAlpha(respectAlpha: boolean): void;
40
+ getNativeId(): string;
41
+ getRealCharBytes(addLineBreaks?: boolean): Uint8Array;
42
+ getSpanLines(): CapturedLine[];
43
+ clear(bg?: RGBA): void;
44
+ setCell(x: number, y: number, char: string, fg: RGBA, bg: RGBA, attributes?: number): void;
45
+ setCellWithAlphaBlending(x: number, y: number, char: string, fg: RGBA, bg: RGBA, attributes?: number): void;
46
+ drawText(text: string, x: number, y: number, fg: RGBA, bg?: RGBA, attributes?: number, selection?: {
47
+ start: number;
48
+ end: number;
49
+ bgColor?: RGBA;
50
+ fgColor?: RGBA;
51
+ } | null): void;
52
+ fillRect(x: number, y: number, width: number, height: number, bg: RGBA): void;
53
+ colorMatrix(matrix: Float32Array, cellMask: Float32Array, strength?: number, target?: TargetChannel): void;
54
+ colorMatrixUniform(matrix: Float32Array, strength?: number, target?: TargetChannel): void;
55
+ drawFrameBuffer(destX: number, destY: number, frameBuffer: OptimizedBuffer, sourceX?: number, sourceY?: number, sourceWidth?: number, sourceHeight?: number): void;
56
+ destroy(): void;
57
+ drawTextBuffer(textBufferView: TextBufferView, x: number, y: number): void;
58
+ drawEditorView(editorView: EditorView, x: number, y: number): void;
59
+ drawSuperSampleBuffer(x: number, y: number, pixelDataPtr: Pointer, pixelDataLength: number, format: "bgra8unorm" | "rgba8unorm", alignedBytesPerRow: number): void;
60
+ drawPackedBuffer(dataPtr: Pointer, dataLen: number, posX: number, posY: number, terminalWidthCells: number, terminalHeightCells: number): void;
61
+ drawGrayscaleBuffer(posX: number, posY: number, intensities: Float32Array, srcWidth: number, srcHeight: number, fg?: RGBA | null, bg?: RGBA | null): void;
62
+ drawGrayscaleBufferSupersampled(posX: number, posY: number, intensities: Float32Array, srcWidth: number, srcHeight: number, fg?: RGBA | null, bg?: RGBA | null): void;
63
+ resize(width: number, height: number): void;
64
+ drawBox(options: {
65
+ x: number;
66
+ y: number;
67
+ width: number;
68
+ height: number;
69
+ borderStyle?: BorderStyle;
70
+ customBorderChars?: Uint32Array;
71
+ border: boolean | BorderSides[];
72
+ borderColor: RGBA;
73
+ backgroundColor: RGBA;
74
+ shouldFill?: boolean;
75
+ title?: string;
76
+ titleAlignment?: "left" | "center" | "right";
77
+ bottomTitle?: string;
78
+ bottomTitleAlignment?: "left" | "center" | "right";
79
+ }): void;
80
+ pushScissorRect(x: number, y: number, width: number, height: number): void;
81
+ popScissorRect(): void;
82
+ clearScissorRects(): void;
83
+ pushOpacity(opacity: number): void;
84
+ popOpacity(): void;
85
+ getCurrentOpacity(): number;
86
+ clearOpacity(): void;
87
+ encodeUnicode(text: string): {
88
+ ptr: Pointer;
89
+ data: Array<{
90
+ width: number;
91
+ char: number;
92
+ }>;
93
+ } | null;
94
+ freeUnicode(encoded: {
95
+ ptr: Pointer;
96
+ data: Array<{
97
+ width: number;
98
+ char: number;
99
+ }>;
100
+ }): void;
101
+ drawGrid(options: {
102
+ borderChars: Uint32Array;
103
+ borderFg: RGBA;
104
+ borderBg: RGBA;
105
+ columnOffsets: Int32Array;
106
+ rowOffsets: Int32Array;
107
+ drawInner: boolean;
108
+ drawOuter: boolean;
109
+ }): void;
110
+ drawChar(char: number, x: number, y: number, fg: RGBA, bg: RGBA, attributes?: number): void;
111
+ }
@@ -0,0 +1,304 @@
1
+ /** Copy of bun:ffi#FFIType */
2
+ export declare enum FFIType {
3
+ char = 0,
4
+ /**
5
+ * 8-bit signed integer
6
+ *
7
+ * Must be a value between -127 and 127
8
+ *
9
+ * When passing to a FFI function (C ABI), type coercion is not performed.
10
+ *
11
+ * In C:
12
+ * ```c
13
+ * signed char
14
+ * char // on x64 & aarch64 macOS
15
+ * ```
16
+ *
17
+ * In JavaScript:
18
+ * ```js
19
+ * var num = 0;
20
+ * ```
21
+ */
22
+ int8_t = 1,
23
+ /**
24
+ * 8-bit signed integer
25
+ *
26
+ * Must be a value between -127 and 127
27
+ *
28
+ * When passing to a FFI function (C ABI), type coercion is not performed.
29
+ *
30
+ * In C:
31
+ * ```c
32
+ * signed char
33
+ * char // on x64 & aarch64 macOS
34
+ * ```
35
+ *
36
+ * In JavaScript:
37
+ * ```js
38
+ * var num = 0;
39
+ * ```
40
+ */
41
+ i8 = 1,
42
+ /**
43
+ * 8-bit unsigned integer
44
+ *
45
+ * Must be a value between 0 and 255
46
+ *
47
+ * When passing to a FFI function (C ABI), type coercion is not performed.
48
+ *
49
+ * In C:
50
+ * ```c
51
+ * unsigned char
52
+ * ```
53
+ *
54
+ * In JavaScript:
55
+ * ```js
56
+ * var num = 0;
57
+ * ```
58
+ */
59
+ uint8_t = 2,
60
+ /**
61
+ * 8-bit unsigned integer
62
+ *
63
+ * Must be a value between 0 and 255
64
+ *
65
+ * When passing to a FFI function (C ABI), type coercion is not performed.
66
+ *
67
+ * In C:
68
+ * ```c
69
+ * unsigned char
70
+ * ```
71
+ *
72
+ * In JavaScript:
73
+ * ```js
74
+ * var num = 0;
75
+ * ```
76
+ */
77
+ u8 = 2,
78
+ /**
79
+ * 16-bit signed integer
80
+ *
81
+ * Must be a value between -32768 and 32767
82
+ *
83
+ * When passing to a FFI function (C ABI), type coercion is not performed.
84
+ *
85
+ * In C:
86
+ * ```c
87
+ * in16_t
88
+ * short // on arm64 & x64
89
+ * ```
90
+ *
91
+ * In JavaScript:
92
+ * ```js
93
+ * var num = 0;
94
+ * ```
95
+ */
96
+ int16_t = 3,
97
+ /**
98
+ * 16-bit signed integer
99
+ *
100
+ * Must be a value between -32768 and 32767
101
+ *
102
+ * When passing to a FFI function (C ABI), type coercion is not performed.
103
+ *
104
+ * In C:
105
+ * ```c
106
+ * in16_t
107
+ * short // on arm64 & x64
108
+ * ```
109
+ *
110
+ * In JavaScript:
111
+ * ```js
112
+ * var num = 0;
113
+ * ```
114
+ */
115
+ i16 = 3,
116
+ /**
117
+ * 16-bit unsigned integer
118
+ *
119
+ * Must be a value between 0 and 65535, inclusive.
120
+ *
121
+ * When passing to a FFI function (C ABI), type coercion is not performed.
122
+ *
123
+ * In C:
124
+ * ```c
125
+ * uint16_t
126
+ * unsigned short // on arm64 & x64
127
+ * ```
128
+ *
129
+ * In JavaScript:
130
+ * ```js
131
+ * var num = 0;
132
+ * ```
133
+ */
134
+ uint16_t = 4,
135
+ /**
136
+ * 16-bit unsigned integer
137
+ *
138
+ * Must be a value between 0 and 65535, inclusive.
139
+ *
140
+ * When passing to a FFI function (C ABI), type coercion is not performed.
141
+ *
142
+ * In C:
143
+ * ```c
144
+ * uint16_t
145
+ * unsigned short // on arm64 & x64
146
+ * ```
147
+ *
148
+ * In JavaScript:
149
+ * ```js
150
+ * var num = 0;
151
+ * ```
152
+ */
153
+ u16 = 4,
154
+ /**
155
+ * 32-bit signed integer
156
+ */
157
+ int32_t = 5,
158
+ /**
159
+ * 32-bit signed integer
160
+ *
161
+ * Alias of {@link FFIType.int32_t}
162
+ */
163
+ i32 = 5,
164
+ /**
165
+ * 32-bit signed integer
166
+ *
167
+ * The same as `int` in C
168
+ *
169
+ * ```c
170
+ * int
171
+ * ```
172
+ */
173
+ int = 5,
174
+ /**
175
+ * 32-bit unsigned integer
176
+ *
177
+ * The same as `unsigned int` in C (on x64 & arm64)
178
+ *
179
+ * C:
180
+ * ```c
181
+ * unsigned int
182
+ * ```
183
+ * JavaScript:
184
+ * ```js
185
+ * ptr(new Uint32Array(1))
186
+ * ```
187
+ */
188
+ uint32_t = 6,
189
+ /**
190
+ * 32-bit unsigned integer
191
+ *
192
+ * Alias of {@link FFIType.uint32_t}
193
+ */
194
+ u32 = 6,
195
+ /**
196
+ * int64 is a 64-bit signed integer
197
+ */
198
+ int64_t = 7,
199
+ /**
200
+ * i64 is a 64-bit signed integer
201
+ */
202
+ i64 = 7,
203
+ /**
204
+ * 64-bit unsigned integer
205
+ */
206
+ uint64_t = 8,
207
+ /**
208
+ * 64-bit unsigned integer
209
+ */
210
+ u64 = 8,
211
+ /**
212
+ * IEEE-754 double precision float
213
+ */
214
+ double = 9,
215
+ /**
216
+ * Alias of {@link FFIType.double}
217
+ */
218
+ f64 = 9,
219
+ /**
220
+ * IEEE-754 single precision float
221
+ */
222
+ float = 10,
223
+ /**
224
+ * Alias of {@link FFIType.float}
225
+ */
226
+ f32 = 10,
227
+ /**
228
+ * Boolean value
229
+ *
230
+ * Must be `true` or `false`. `0` and `1` type coercion is not supported.
231
+ *
232
+ * In C, this corresponds to:
233
+ * ```c
234
+ * bool
235
+ * _Bool
236
+ * ```
237
+ */
238
+ bool = 11,
239
+ /**
240
+ * Pointer value
241
+ *
242
+ * See {@link Bun.FFI.ptr} for more information
243
+ *
244
+ * In C:
245
+ * ```c
246
+ * void*
247
+ * ```
248
+ *
249
+ * In JavaScript:
250
+ * ```js
251
+ * ptr(new Uint8Array(1))
252
+ * ```
253
+ */
254
+ ptr = 12,
255
+ /**
256
+ * Pointer value
257
+ *
258
+ * alias of {@link FFIType.ptr}
259
+ */
260
+ pointer = 12,
261
+ /**
262
+ * void value
263
+ *
264
+ * void arguments are not supported
265
+ *
266
+ * void return type is the default return type
267
+ *
268
+ * In C:
269
+ * ```c
270
+ * void
271
+ * ```
272
+ */
273
+ void = 13,
274
+ /**
275
+ * When used as a `returns`, this will automatically become a {@link CString}.
276
+ *
277
+ * When used in `args` it is equivalent to {@link FFIType.pointer}
278
+ */
279
+ cstring = 14,
280
+ /**
281
+ * Attempt to coerce `BigInt` into a `Number` if it fits. This improves performance
282
+ * but means you might get a `BigInt` or you might get a `number`.
283
+ *
284
+ * In C, this always becomes `int64_t`
285
+ *
286
+ * In JavaScript, this could be number or it could be BigInt, depending on what
287
+ * value is passed in.
288
+ */
289
+ i64_fast = 15,
290
+ /**
291
+ * Attempt to coerce `BigInt` into a `Number` if it fits. This improves performance
292
+ * but means you might get a `BigInt` or you might get a `number`.
293
+ *
294
+ * In C, this always becomes `uint64_t`
295
+ *
296
+ * In JavaScript, this could be number or it could be BigInt, depending on what
297
+ * value is passed in.
298
+ */
299
+ u64_fast = 16,
300
+ function = 17,
301
+ napi_env = 18,
302
+ napi_value = 19,
303
+ buffer = 20
304
+ }
@@ -0,0 +1 @@
1
+ export declare const Worker: typeof globalThis.Worker;
@@ -0,0 +1,2 @@
1
+ export declare const defineStruct: typeof import("./nodejs/bun-ffi-structs/structs_ffi.js").defineStruct;
2
+ export declare const defineEnum: typeof import("./nodejs/bun-ffi-structs/structs_ffi.js").defineEnum;