@rowsncolumns/rnc-engine 0.10.132
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/LICENSE.md +100 -0
- package/README.md +83 -0
- package/dist/esm/command-handlers.d.ts +169 -0
- package/dist/esm/command-handlers.d.ts.map +1 -0
- package/dist/esm/command-handlers.js +404 -0
- package/dist/esm/fold.d.ts +140 -0
- package/dist/esm/fold.d.ts.map +1 -0
- package/dist/esm/fold.js +539 -0
- package/dist/esm/index.d.ts +620 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +425 -0
- package/dist/esm/io.d.ts +119 -0
- package/dist/esm/io.d.ts.map +1 -0
- package/dist/esm/io.js +318 -0
- package/dist/esm/keys.d.ts +20 -0
- package/dist/esm/keys.d.ts.map +1 -0
- package/dist/esm/keys.js +41 -0
- package/dist/esm/move-rescope.d.ts +18 -0
- package/dist/esm/move-rescope.d.ts.map +1 -0
- package/dist/esm/move-rescope.js +38 -0
- package/dist/esm/use-engine-core.d.ts +293 -0
- package/dist/esm/use-engine-core.d.ts.map +1 -0
- package/dist/esm/use-engine-core.js +2279 -0
- package/dist/esm/use-engine-pivot-editor.d.ts +78 -0
- package/dist/esm/use-engine-pivot-editor.d.ts.map +1 -0
- package/dist/esm/use-engine-pivot-editor.js +252 -0
- package/dist/esm/use-spreadsheet-engine.d.ts +7 -0
- package/dist/esm/use-spreadsheet-engine.d.ts.map +1 -0
- package/dist/esm/use-spreadsheet-engine.js +23 -0
- package/dist/esm/use-spreadsheet-ui.d.ts +39 -0
- package/dist/esm/use-spreadsheet-ui.d.ts.map +1 -0
- package/dist/esm/use-spreadsheet-ui.js +78 -0
- package/dist/esm/wasm/rnc_wasm.d.ts +394 -0
- package/dist/esm/wasm/rnc_wasm.js +1455 -0
- package/dist/esm/wasm/rnc_wasm_bg.wasm +0 -0
- package/dist/esm/wasm/rnc_wasm_bg.wasm.d.ts +81 -0
- package/package.json +51 -0
|
@@ -0,0 +1,394 @@
|
|
|
1
|
+
/* tslint:disable */
|
|
2
|
+
/* eslint-disable */
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* A collaborative spreadsheet engine backed by a Yjs CRDT document.
|
|
6
|
+
*
|
|
7
|
+
* Same command / read surface as `SpreadsheetEngine`, plus sync methods for exchanging Yrs
|
|
8
|
+
* updates between peers.
|
|
9
|
+
*/
|
|
10
|
+
export class CollabSpreadsheetEngine {
|
|
11
|
+
free(): void;
|
|
12
|
+
[Symbol.dispose](): void;
|
|
13
|
+
addSheet(sheet_id: number, name: string): void;
|
|
14
|
+
applyCommand(command_json: string): string;
|
|
15
|
+
/**
|
|
16
|
+
* Apply a remote Yjs V1 update into this peer's document. After calling this, call
|
|
17
|
+
* `syncRemote()` to rebuild the engine and get a `CommitResult` for the UI.
|
|
18
|
+
*/
|
|
19
|
+
applyUpdate(update: Uint8Array): void;
|
|
20
|
+
canRedo(): boolean;
|
|
21
|
+
canUndo(): boolean;
|
|
22
|
+
clearHistory(): void;
|
|
23
|
+
dependents(sheet_id: number, row: number, col: number): string;
|
|
24
|
+
documentFacets(): string;
|
|
25
|
+
/**
|
|
26
|
+
* Encode a diff: everything this peer has that the remote (identified by its state vector)
|
|
27
|
+
* doesn't. Send the result to the remote via `applyUpdate`.
|
|
28
|
+
*/
|
|
29
|
+
encodeDiffV1(remote_sv: Uint8Array): Uint8Array;
|
|
30
|
+
/**
|
|
31
|
+
* Encode the full document state as a Yjs V1 update (for persistence or initial sync).
|
|
32
|
+
*/
|
|
33
|
+
encodeStateAsUpdate(): Uint8Array;
|
|
34
|
+
/**
|
|
35
|
+
* Encode the current state vector (compact summary of what this peer has seen).
|
|
36
|
+
*/
|
|
37
|
+
encodeStateVector(): Uint8Array;
|
|
38
|
+
/**
|
|
39
|
+
* Export a sheet's display values as RFC-4180 CSV.
|
|
40
|
+
*/
|
|
41
|
+
exportCsv(sheet_id: number): string;
|
|
42
|
+
/**
|
|
43
|
+
* Export the whole workbook to in-memory XLSX bytes (a JS `Uint8Array`) via `rnc-export`.
|
|
44
|
+
*/
|
|
45
|
+
exportXlsx(): Uint8Array;
|
|
46
|
+
/**
|
|
47
|
+
* Pre-allocate rows and columns for a sheet. YrsStore addresses cells by positional index
|
|
48
|
+
* within CRDT arrays, so the grid dimensions must be established before cells can be written.
|
|
49
|
+
* Call this once per sheet after `addSheet`.
|
|
50
|
+
*/
|
|
51
|
+
initGrid(sheet_id: number, rows: number, cols: number): void;
|
|
52
|
+
loadDocument(document_json: string): string;
|
|
53
|
+
/**
|
|
54
|
+
* Create a new collaborative engine with a random client ID.
|
|
55
|
+
*/
|
|
56
|
+
constructor();
|
|
57
|
+
/**
|
|
58
|
+
* Create a new collaborative engine with a specific client ID (important when running two
|
|
59
|
+
* instances on the same page — they must have distinct IDs for CRDT correctness).
|
|
60
|
+
*/
|
|
61
|
+
static newWithClientId(client_id: number): CollabSpreadsheetEngine;
|
|
62
|
+
precedents(sheet_id: number, row: number, col: number): string;
|
|
63
|
+
/**
|
|
64
|
+
* Selection statistics over a 1-indexed inclusive range, computed in Rust; returns `RangeStats`
|
|
65
|
+
* JSON (`{ sum, count, average, min, max, numericalCount }`). See `SpreadsheetEngine::rangeStats`.
|
|
66
|
+
*/
|
|
67
|
+
rangeStats(sheet_id: number, start_row: number, start_col: number, end_row: number, end_col: number): string;
|
|
68
|
+
readWindow(sheet_id: number, start_row: number, start_col: number, end_row: number, end_col: number): string;
|
|
69
|
+
redo(): string;
|
|
70
|
+
redoDepth(): number;
|
|
71
|
+
registerCustomFunction(name: string): void;
|
|
72
|
+
/**
|
|
73
|
+
* See [`SpreadsheetEngine::set_windowed`](super::SpreadsheetEngine). When on, commits serialized
|
|
74
|
+
* by this engine omit the per-cell channels the windowed host re-reads from the window. Idempotent.
|
|
75
|
+
*/
|
|
76
|
+
setWindowed(on: boolean): void;
|
|
77
|
+
/**
|
|
78
|
+
* Per-sheet used extent as JSON `[[sheetId, rowCount, colCount], …]` (nav + windowing bounds).
|
|
79
|
+
*/
|
|
80
|
+
sheetExtents(): string;
|
|
81
|
+
sheetIds(): Int32Array;
|
|
82
|
+
/**
|
|
83
|
+
* The workbook's sheets in tab order as JSON `[{sheetId, title, index, hidden?, tabColor?}]` —
|
|
84
|
+
* the engine's authoritative sheet identity/order. A thin UI reconciles its tab list from this.
|
|
85
|
+
*/
|
|
86
|
+
sheets(): string;
|
|
87
|
+
/**
|
|
88
|
+
* Begin a streaming NDJSON hydration (huge workbooks). Feed chunks with `streamWrite`, then
|
|
89
|
+
* `streamEnd`. Read the viewport with `readWindow` afterward.
|
|
90
|
+
*/
|
|
91
|
+
streamBegin(): void;
|
|
92
|
+
/**
|
|
93
|
+
* Finish the streaming hydration (ingest the trailing line + recompute once).
|
|
94
|
+
*/
|
|
95
|
+
streamEnd(): void;
|
|
96
|
+
/**
|
|
97
|
+
* Ingest one NDJSON byte chunk of the hydration stream (partial lines are buffered).
|
|
98
|
+
*/
|
|
99
|
+
streamWrite(chunk: Uint8Array): void;
|
|
100
|
+
/**
|
|
101
|
+
* Rebuild the calc engine from the (now-mutated) CRDT store and return a full `CommitResult`
|
|
102
|
+
* JSON so the UI can repaint after a remote update.
|
|
103
|
+
*/
|
|
104
|
+
syncRemote(): string;
|
|
105
|
+
undo(): string;
|
|
106
|
+
undoDepth(): number;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
/**
|
|
110
|
+
* The spreadsheet engine instance the UI holds (standalone, in-memory document).
|
|
111
|
+
*/
|
|
112
|
+
export class SpreadsheetEngine {
|
|
113
|
+
free(): void;
|
|
114
|
+
[Symbol.dispose](): void;
|
|
115
|
+
/**
|
|
116
|
+
* Register a sheet (id → display name).
|
|
117
|
+
*/
|
|
118
|
+
addSheet(sheet_id: number, name: string): void;
|
|
119
|
+
/**
|
|
120
|
+
* Apply a `commands.ts` JSON command; returns `CommitResult` JSON.
|
|
121
|
+
*/
|
|
122
|
+
applyCommand(command_json: string): string;
|
|
123
|
+
canRedo(): boolean;
|
|
124
|
+
/**
|
|
125
|
+
* Whether an undo / redo is currently available (for enabling toolbar buttons).
|
|
126
|
+
*/
|
|
127
|
+
canUndo(): boolean;
|
|
128
|
+
/**
|
|
129
|
+
* Drop the entire undo/redo history (the document is unchanged). Backs `onClearHistory`.
|
|
130
|
+
*/
|
|
131
|
+
clearHistory(): void;
|
|
132
|
+
/**
|
|
133
|
+
* The DEPENDENTS of a cell — every formula cell that references it (directly or within a range) —
|
|
134
|
+
* as `[{sheetId,rowIndex,columnIndex}]`. Powers `getDependents`.
|
|
135
|
+
*/
|
|
136
|
+
dependents(sheet_id: number, row: number, col: number): string;
|
|
137
|
+
/**
|
|
138
|
+
* Document-level facets the renderer draws (CF rules, tables, named/protected ranges, embeds,
|
|
139
|
+
* slicers, banded ranges, basic filters, DV rules) as canonical JSON — the thin hook re-reads
|
|
140
|
+
* this once per commit (they're small and change rarely, so they ride a getter, not a diff).
|
|
141
|
+
*/
|
|
142
|
+
documentFacets(): string;
|
|
143
|
+
/**
|
|
144
|
+
* Scratch-evaluate a formula at a cell — `ExtendedValue` JSON or `"null"`. Read-only; powers
|
|
145
|
+
* the cell editor's live result preview (`onRequestCalculate`).
|
|
146
|
+
*/
|
|
147
|
+
evalFormula(sheet_id: number, row: number, col: number, formula: string): string;
|
|
148
|
+
/**
|
|
149
|
+
* Export a sheet's display values as RFC-4180 CSV.
|
|
150
|
+
*/
|
|
151
|
+
exportCsv(sheet_id: number): string;
|
|
152
|
+
/**
|
|
153
|
+
* Export the whole workbook to in-memory XLSX bytes (a JS `Uint8Array`). Reads the full document
|
|
154
|
+
* from the store (all sheets, values, formats, merges, frozen panes, dims, tables, named ranges)
|
|
155
|
+
* and runs the `rnc-export` writer; formulas are inserted, not recalculated.
|
|
156
|
+
*/
|
|
157
|
+
exportXlsx(): Uint8Array;
|
|
158
|
+
/**
|
|
159
|
+
* [`SpreadsheetEngine::export_xlsx`] with client export options — `options_json` is
|
|
160
|
+
* `{"includeNotes":bool,"citationsAsNotes":bool}` (camelCase, fields optional).
|
|
161
|
+
* `includeNotes:false` omits every cell-note comment part; `citationsAsNotes:true`
|
|
162
|
+
* additionally writes each citation's string as a note on its anchor (top-left) cell.
|
|
163
|
+
*/
|
|
164
|
+
exportXlsxWithOptions(options_json: string): Uint8Array;
|
|
165
|
+
/**
|
|
166
|
+
* Find every cell on `sheet_id` matching `find`, returned as a JSON array of `SheetCoordinate`
|
|
167
|
+
* (row-major). Read-only — the windowed UI calls this for off-window matches the JS search can't
|
|
168
|
+
* see (it only holds the loaded viewport). `ranges_json` is a JSON array of `SheetRange`
|
|
169
|
+
* (empty/`""` = whole sheet). Matching mirrors the UI: `match_case` / `whole_word` / `use_regex`.
|
|
170
|
+
* Distinct fill/font colors + CF icons in one column's body rows — JSON
|
|
171
|
+
* `{cellColors, fontColors, icons}`. Powers the "Filter by color" picker on windowed hosts.
|
|
172
|
+
*/
|
|
173
|
+
filterColors(sheet_id: number, col: number, start_row: number, end_row: number): string;
|
|
174
|
+
findAll(sheet_id: number, ranges_json: string, find: string, match_case: boolean, whole_word: boolean, use_regex: boolean): string;
|
|
175
|
+
/**
|
|
176
|
+
* Import an `.xlsx` workbook with the native `rnc-import` reader (the symmetric inverse of
|
|
177
|
+
* [`SpreadsheetEngine::export_xlsx`]) and hydrate the engine from it. Returns the full
|
|
178
|
+
* `CommitResult` (every cell + style) so the UI repaints in one shot — the same path and shape as
|
|
179
|
+
* [`SpreadsheetEngine::load_document`]. The imported sheets are loaded into the current store
|
|
180
|
+
* (by sheet id); start from a fresh engine for a clean replace.
|
|
181
|
+
*/
|
|
182
|
+
importXlsx(bytes: Uint8Array): string;
|
|
183
|
+
/**
|
|
184
|
+
* Like [`SpreadsheetEngine::import_xlsx`] but for password-protected workbooks (ECMA-376 agile,
|
|
185
|
+
* standard AES, or RC4 CryptoAPI): decrypts with `password` first. A non-encrypted file imports
|
|
186
|
+
* directly (password ignored), so a host can route every import here. A wrong password returns an
|
|
187
|
+
* error the UI can re-prompt on.
|
|
188
|
+
*/
|
|
189
|
+
importXlsxWithPassword(bytes: Uint8Array, password: string): string;
|
|
190
|
+
/**
|
|
191
|
+
* Whether the bytes are an encrypted (CFB) workbook needing a password (vs a plain `.xlsx`).
|
|
192
|
+
*/
|
|
193
|
+
isEncryptedXlsx(bytes: Uint8Array): boolean;
|
|
194
|
+
/**
|
|
195
|
+
* Hydrate the engine from an initial document (`{ sheets, sheetData, styles }` JSON, the
|
|
196
|
+
* `rnc-model` shape an API returns). Loads cells + styles, recomputes formulas, and returns the
|
|
197
|
+
* full `CommitResult` (every cell + style) so the UI can populate in one shot.
|
|
198
|
+
*/
|
|
199
|
+
loadDocument(document_json: string): string;
|
|
200
|
+
constructor();
|
|
201
|
+
/**
|
|
202
|
+
* The PRECEDENTS of a cell — the cells + ranges its formula references — as
|
|
203
|
+
* `{cells:[{sheetId,rowIndex,columnIndex}], ranges:[{sheetId,startRowIndex,…}]}`. The engine
|
|
204
|
+
* parses the formula with the grammar it evaluates, so this is exact. Powers `getPrecedents`.
|
|
205
|
+
*/
|
|
206
|
+
precedents(sheet_id: number, row: number, col: number): string;
|
|
207
|
+
/**
|
|
208
|
+
* Selection statistics over a 1-indexed inclusive range, computed in Rust; returns `RangeStats`
|
|
209
|
+
* JSON (`{ sum, count, average, min, max, numericalCount }`, numeric fields `null` when the
|
|
210
|
+
* range holds no numbers). Cheap even at a million cells — the status bar can show stats for
|
|
211
|
+
* any selection without iterating it on the JS main thread.
|
|
212
|
+
*/
|
|
213
|
+
rangeStats(sheet_id: number, start_row: number, start_col: number, end_row: number, end_col: number): string;
|
|
214
|
+
/**
|
|
215
|
+
* Read a 1-indexed inclusive window; returns `WindowSnapshot` JSON.
|
|
216
|
+
*/
|
|
217
|
+
readWindow(sheet_id: number, start_row: number, start_col: number, end_row: number, end_col: number): string;
|
|
218
|
+
/**
|
|
219
|
+
* Redo the last undone mutation; returns the `CommitResult` JSON.
|
|
220
|
+
*/
|
|
221
|
+
redo(): string;
|
|
222
|
+
redoDepth(): number;
|
|
223
|
+
/**
|
|
224
|
+
* Register a host (JS) custom-function NAME so `=NAME(…)` resolves (and its arg cell refs are
|
|
225
|
+
* tracked as dependencies) instead of `#NAME?`. The body runs in JS: on recalc the engine streams
|
|
226
|
+
* a `customEvals` request (cell + resolved args) the host answers via `set-effective-value`.
|
|
227
|
+
*/
|
|
228
|
+
registerCustomFunction(name: string): void;
|
|
229
|
+
/**
|
|
230
|
+
* Declare whether the host renders WINDOWED. When on, every commit serialized by this engine
|
|
231
|
+
* (`applyCommand` / `undo` / `redo` / `loadDocument`) omits the per-cell channels the windowed
|
|
232
|
+
* host re-reads via `readWindow` anyway — see [`SpreadsheetEngine::serialize_commit`]. Idempotent.
|
|
233
|
+
*/
|
|
234
|
+
setWindowed(on: boolean): void;
|
|
235
|
+
/**
|
|
236
|
+
* Per-sheet used extent as JSON `[[sheetId, rowCount, colCount], …]` (1-based data extents).
|
|
237
|
+
* A windowed renderer reads this to size the grid's scroll extent to the engine's data — so it
|
|
238
|
+
* can hold only the visible viewport in JS yet scroll the full sheet.
|
|
239
|
+
*/
|
|
240
|
+
sheetExtents(): string;
|
|
241
|
+
/**
|
|
242
|
+
* Sheet ids in order.
|
|
243
|
+
*/
|
|
244
|
+
sheetIds(): Int32Array;
|
|
245
|
+
/**
|
|
246
|
+
* The workbook's sheets in tab order as JSON `[{sheetId, title, index, hidden?, tabColor?}]` —
|
|
247
|
+
* the engine's authoritative sheet identity/order (it owns `create`/`rename`/`move`/`delete`).
|
|
248
|
+
* A thin UI reconciles its tab list from this after each commit.
|
|
249
|
+
*/
|
|
250
|
+
sheets(): string;
|
|
251
|
+
/**
|
|
252
|
+
* Begin a streaming hydration (for huge workbooks). Then feed NDJSON bytes via
|
|
253
|
+
* `streamWrite(chunk)` as they arrive (e.g. from `fetch(url).body`) and finish with
|
|
254
|
+
* `streamEnd()`. Nothing is streamed back — read the viewport with `readWindow` afterward.
|
|
255
|
+
*/
|
|
256
|
+
streamBegin(): void;
|
|
257
|
+
/**
|
|
258
|
+
* Finish the streaming hydration: ingest the trailing line and recompute once.
|
|
259
|
+
*/
|
|
260
|
+
streamEnd(): void;
|
|
261
|
+
/**
|
|
262
|
+
* Ingest one byte chunk of the NDJSON hydration stream (a `Uint8Array`). Chunk boundaries may
|
|
263
|
+
* fall anywhere — partial lines are buffered until complete.
|
|
264
|
+
*/
|
|
265
|
+
streamWrite(chunk: Uint8Array): void;
|
|
266
|
+
/**
|
|
267
|
+
* Every function name the calc engine resolves by registration (formualizer builtins + rnc
|
|
268
|
+
* overrides), as a JSON string array — uppercase, sorted. Alias spellings are not listed;
|
|
269
|
+
* probe `evalFormula` for `#NAME?` to cover them. Feeds the cross-engine function-catalog
|
|
270
|
+
* parity harness (`libs/functions/__tests__/engine-function-parity.spec.ts`).
|
|
271
|
+
*/
|
|
272
|
+
supportedFunctionNames(): string;
|
|
273
|
+
/**
|
|
274
|
+
* Undo the last document mutation; returns the `CommitResult` JSON to stream back.
|
|
275
|
+
*/
|
|
276
|
+
undo(): string;
|
|
277
|
+
/**
|
|
278
|
+
* Undo / redo stack depth — a UI keeping parallel per-edit state (cursor/selection) watches these
|
|
279
|
+
* to push/pop its own snapshots in lockstep with the engine.
|
|
280
|
+
*/
|
|
281
|
+
undoDepth(): number;
|
|
282
|
+
/**
|
|
283
|
+
* The engine's WASM linear-memory size in bytes — the VM's committed heap (`memory.size` × 64 KiB
|
|
284
|
+
* page). It never shrinks, so read it after a workload for the high-water mark. Returns 0 on a
|
|
285
|
+
* non-wasm (native test) target.
|
|
286
|
+
*/
|
|
287
|
+
wasmMemoryBytes(): number;
|
|
288
|
+
}
|
|
289
|
+
|
|
290
|
+
export type InitInput = RequestInfo | URL | Response | BufferSource | WebAssembly.Module;
|
|
291
|
+
|
|
292
|
+
export interface InitOutput {
|
|
293
|
+
readonly memory: WebAssembly.Memory;
|
|
294
|
+
readonly __wbg_spreadsheetengine_free: (a: number, b: number) => void;
|
|
295
|
+
readonly spreadsheetengine_addSheet: (a: number, b: number, c: number, d: number) => void;
|
|
296
|
+
readonly spreadsheetengine_applyCommand: (a: number, b: number, c: number) => [number, number, number, number];
|
|
297
|
+
readonly spreadsheetengine_canRedo: (a: number) => number;
|
|
298
|
+
readonly spreadsheetengine_canUndo: (a: number) => number;
|
|
299
|
+
readonly spreadsheetengine_clearHistory: (a: number) => void;
|
|
300
|
+
readonly spreadsheetengine_dependents: (a: number, b: number, c: number, d: number) => [number, number, number, number];
|
|
301
|
+
readonly spreadsheetengine_documentFacets: (a: number) => [number, number];
|
|
302
|
+
readonly spreadsheetengine_evalFormula: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number];
|
|
303
|
+
readonly spreadsheetengine_exportCsv: (a: number, b: number) => [number, number];
|
|
304
|
+
readonly spreadsheetengine_exportXlsx: (a: number) => [number, number, number, number];
|
|
305
|
+
readonly spreadsheetengine_exportXlsxWithOptions: (a: number, b: number, c: number) => [number, number, number, number];
|
|
306
|
+
readonly spreadsheetengine_filterColors: (a: number, b: number, c: number, d: number, e: number) => [number, number];
|
|
307
|
+
readonly spreadsheetengine_findAll: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number) => [number, number, number, number];
|
|
308
|
+
readonly spreadsheetengine_importXlsx: (a: number, b: number, c: number) => [number, number, number, number];
|
|
309
|
+
readonly spreadsheetengine_importXlsxWithPassword: (a: number, b: number, c: number, d: number, e: number) => [number, number, number, number];
|
|
310
|
+
readonly spreadsheetengine_isEncryptedXlsx: (a: number, b: number, c: number) => number;
|
|
311
|
+
readonly spreadsheetengine_loadDocument: (a: number, b: number, c: number) => [number, number, number, number];
|
|
312
|
+
readonly spreadsheetengine_new: () => number;
|
|
313
|
+
readonly spreadsheetengine_precedents: (a: number, b: number, c: number, d: number) => [number, number, number, number];
|
|
314
|
+
readonly spreadsheetengine_rangeStats: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number, number];
|
|
315
|
+
readonly spreadsheetengine_readWindow: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number, number];
|
|
316
|
+
readonly spreadsheetengine_redo: (a: number) => [number, number, number, number];
|
|
317
|
+
readonly spreadsheetengine_redoDepth: (a: number) => number;
|
|
318
|
+
readonly spreadsheetengine_registerCustomFunction: (a: number, b: number, c: number) => void;
|
|
319
|
+
readonly spreadsheetengine_setWindowed: (a: number, b: number) => void;
|
|
320
|
+
readonly spreadsheetengine_sheetExtents: (a: number) => [number, number, number, number];
|
|
321
|
+
readonly spreadsheetengine_sheetIds: (a: number) => [number, number];
|
|
322
|
+
readonly spreadsheetengine_sheets: (a: number) => [number, number];
|
|
323
|
+
readonly spreadsheetengine_streamBegin: (a: number) => void;
|
|
324
|
+
readonly spreadsheetengine_streamEnd: (a: number) => void;
|
|
325
|
+
readonly spreadsheetengine_streamWrite: (a: number, b: number, c: number) => void;
|
|
326
|
+
readonly spreadsheetengine_supportedFunctionNames: (a: number) => [number, number];
|
|
327
|
+
readonly spreadsheetengine_undo: (a: number) => [number, number, number, number];
|
|
328
|
+
readonly spreadsheetengine_undoDepth: (a: number) => number;
|
|
329
|
+
readonly spreadsheetengine_wasmMemoryBytes: (a: number) => number;
|
|
330
|
+
readonly __wbg_collabspreadsheetengine_free: (a: number, b: number) => void;
|
|
331
|
+
readonly collabspreadsheetengine_addSheet: (a: number, b: number, c: number, d: number) => void;
|
|
332
|
+
readonly collabspreadsheetengine_applyCommand: (a: number, b: number, c: number) => [number, number, number, number];
|
|
333
|
+
readonly collabspreadsheetengine_applyUpdate: (a: number, b: number, c: number) => [number, number];
|
|
334
|
+
readonly collabspreadsheetengine_canRedo: (a: number) => number;
|
|
335
|
+
readonly collabspreadsheetengine_canUndo: (a: number) => number;
|
|
336
|
+
readonly collabspreadsheetengine_clearHistory: (a: number) => void;
|
|
337
|
+
readonly collabspreadsheetengine_dependents: (a: number, b: number, c: number, d: number) => [number, number, number, number];
|
|
338
|
+
readonly collabspreadsheetengine_documentFacets: (a: number) => [number, number];
|
|
339
|
+
readonly collabspreadsheetengine_encodeDiffV1: (a: number, b: number, c: number) => [number, number, number, number];
|
|
340
|
+
readonly collabspreadsheetengine_encodeStateAsUpdate: (a: number) => [number, number];
|
|
341
|
+
readonly collabspreadsheetengine_encodeStateVector: (a: number) => [number, number];
|
|
342
|
+
readonly collabspreadsheetengine_exportCsv: (a: number, b: number) => [number, number];
|
|
343
|
+
readonly collabspreadsheetengine_exportXlsx: (a: number) => [number, number, number, number];
|
|
344
|
+
readonly collabspreadsheetengine_initGrid: (a: number, b: number, c: number, d: number) => void;
|
|
345
|
+
readonly collabspreadsheetengine_loadDocument: (a: number, b: number, c: number) => [number, number, number, number];
|
|
346
|
+
readonly collabspreadsheetengine_new: () => number;
|
|
347
|
+
readonly collabspreadsheetengine_newWithClientId: (a: number) => number;
|
|
348
|
+
readonly collabspreadsheetengine_precedents: (a: number, b: number, c: number, d: number) => [number, number, number, number];
|
|
349
|
+
readonly collabspreadsheetengine_rangeStats: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number, number];
|
|
350
|
+
readonly collabspreadsheetengine_readWindow: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number, number];
|
|
351
|
+
readonly collabspreadsheetengine_redo: (a: number) => [number, number, number, number];
|
|
352
|
+
readonly collabspreadsheetengine_redoDepth: (a: number) => number;
|
|
353
|
+
readonly collabspreadsheetengine_registerCustomFunction: (a: number, b: number, c: number) => void;
|
|
354
|
+
readonly collabspreadsheetengine_setWindowed: (a: number, b: number) => void;
|
|
355
|
+
readonly collabspreadsheetengine_sheetExtents: (a: number) => [number, number, number, number];
|
|
356
|
+
readonly collabspreadsheetengine_sheetIds: (a: number) => [number, number];
|
|
357
|
+
readonly collabspreadsheetengine_sheets: (a: number) => [number, number];
|
|
358
|
+
readonly collabspreadsheetengine_streamBegin: (a: number) => void;
|
|
359
|
+
readonly collabspreadsheetengine_streamEnd: (a: number) => void;
|
|
360
|
+
readonly collabspreadsheetengine_streamWrite: (a: number, b: number, c: number) => void;
|
|
361
|
+
readonly collabspreadsheetengine_syncRemote: (a: number) => [number, number, number, number];
|
|
362
|
+
readonly collabspreadsheetengine_undo: (a: number) => [number, number, number, number];
|
|
363
|
+
readonly collabspreadsheetengine_undoDepth: (a: number) => number;
|
|
364
|
+
readonly __wbindgen_free: (a: number, b: number, c: number) => void;
|
|
365
|
+
readonly __wbindgen_exn_store: (a: number) => void;
|
|
366
|
+
readonly __externref_table_alloc: () => number;
|
|
367
|
+
readonly __wbindgen_externrefs: WebAssembly.Table;
|
|
368
|
+
readonly __wbindgen_malloc: (a: number, b: number) => number;
|
|
369
|
+
readonly __wbindgen_realloc: (a: number, b: number, c: number, d: number) => number;
|
|
370
|
+
readonly __externref_table_dealloc: (a: number) => void;
|
|
371
|
+
readonly __wbindgen_start: () => void;
|
|
372
|
+
}
|
|
373
|
+
|
|
374
|
+
export type SyncInitInput = BufferSource | WebAssembly.Module;
|
|
375
|
+
|
|
376
|
+
/**
|
|
377
|
+
* Instantiates the given `module`, which can either be bytes or
|
|
378
|
+
* a precompiled `WebAssembly.Module`.
|
|
379
|
+
*
|
|
380
|
+
* @param {{ module: SyncInitInput }} module - Passing `SyncInitInput` directly is deprecated.
|
|
381
|
+
*
|
|
382
|
+
* @returns {InitOutput}
|
|
383
|
+
*/
|
|
384
|
+
export function initSync(module: { module: SyncInitInput } | SyncInitInput): InitOutput;
|
|
385
|
+
|
|
386
|
+
/**
|
|
387
|
+
* If `module_or_path` is {RequestInfo} or {URL}, makes a request and
|
|
388
|
+
* for everything else, calls `WebAssembly.instantiate` directly.
|
|
389
|
+
*
|
|
390
|
+
* @param {{ module_or_path: InitInput | Promise<InitInput> }} module_or_path - Passing `InitInput` directly is deprecated.
|
|
391
|
+
*
|
|
392
|
+
* @returns {Promise<InitOutput>}
|
|
393
|
+
*/
|
|
394
|
+
export default function __wbg_init (module_or_path?: { module_or_path: InitInput | Promise<InitInput> } | InitInput | Promise<InitInput>): Promise<InitOutput>;
|