@vmz/core 0.1.32 → 0.2.0

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 (62) hide show
  1. package/dist/{client-nav.d.ts → browser/client-nav.d.ts} +4 -13
  2. package/dist/{client-nav.js → browser/client-nav.js} +16 -74
  3. package/dist/browser/direct-api.types.d.ts +58 -0
  4. package/dist/browser/direct-api.types.js +4 -0
  5. package/dist/browser/direct-host-box.d.ts +11 -0
  6. package/dist/{direct-host-box.js → browser/direct-host-box.js} +2 -18
  7. package/dist/{dom-core.d.ts → browser/dom-core.d.ts} +64 -220
  8. package/dist/browser/dom-core.js +2453 -0
  9. package/dist/browser/dom-core.types.d.ts +138 -0
  10. package/dist/browser/dom-core.types.js +4 -0
  11. package/dist/{position-context.js → browser/position-context.js} +1 -1
  12. package/dist/browser/unknown-component.d.ts +14 -0
  13. package/dist/{unknown-component.js → browser/unknown-component.js} +4 -28
  14. package/dist/{dom.browser.d.ts → faces/dom.browser.d.ts} +2 -2
  15. package/dist/{dom.browser.js → faces/dom.browser.js} +2 -3
  16. package/dist/faces/dom.client.d.ts +4 -0
  17. package/dist/faces/dom.client.js +4 -0
  18. package/dist/faces/dom.d.ts +6 -0
  19. package/dist/faces/dom.js +6 -0
  20. package/dist/{http.d.ts → faces/http.d.ts} +1 -1
  21. package/dist/{http.js → faces/http.js} +1 -2
  22. package/dist/{server.d.ts → faces/server.d.ts} +8 -25
  23. package/dist/{server.js → faces/server.js} +25 -155
  24. package/dist/{vmz-dom.d.ts → faces/vmz-dom.d.ts} +1 -1
  25. package/dist/{vmz-dom.js → faces/vmz-dom.js} +1 -2
  26. package/dist/{vmz-runtime.d.ts → faces/vmz-runtime.d.ts} +1 -1
  27. package/dist/{vmz-runtime.js → faces/vmz-runtime.js} +1 -2
  28. package/dist/host/deployment-registry.d.ts +16 -0
  29. package/dist/{deployment-registry.js → host/deployment-registry.js} +1 -68
  30. package/dist/host/list-client-components.d.ts +14 -0
  31. package/dist/{list-client-components.js → host/list-client-components.js} +0 -37
  32. package/dist/{localize-body-links.js → host/localize-body-links.js} +0 -1
  33. package/dist/host/native-addon.d.ts +6 -0
  34. package/dist/{native-addon.js → host/native-addon.js} +0 -20
  35. package/dist/host/render-host.d.ts +20 -0
  36. package/dist/{render-host.js → host/render-host.js} +0 -16
  37. package/dist/{serve-host.d.ts → host/serve-host.d.ts} +3 -3
  38. package/dist/{serve-host.mjs → host/serve-host.mjs} +45 -168
  39. package/dist/shared/host.types.d.ts +67 -0
  40. package/dist/shared/host.types.js +4 -0
  41. package/dist/shared/server.types.d.ts +39 -0
  42. package/dist/shared/server.types.js +4 -0
  43. package/dist/{dom-ssr.d.ts → ssr/dom-ssr.d.ts} +8 -37
  44. package/dist/{dom-ssr.js → ssr/dom-ssr.js} +159 -217
  45. package/package.json +34 -34
  46. package/dist/deployment-registry.d.ts +0 -70
  47. package/dist/direct-host-box.d.ts +0 -26
  48. package/dist/dom-core.js +0 -4815
  49. package/dist/dom.client.d.ts +0 -4
  50. package/dist/dom.client.js +0 -5
  51. package/dist/dom.d.ts +0 -6
  52. package/dist/dom.js +0 -7
  53. package/dist/list-client-components.d.ts +0 -62
  54. package/dist/native-addon.d.ts +0 -12
  55. package/dist/render-host.d.ts +0 -32
  56. package/dist/unknown-component.d.ts +0 -40
  57. /package/dist/{position-context.d.ts → browser/position-context.d.ts} +0 -0
  58. /package/dist/{index.d.ts → faces/index.d.ts} +0 -0
  59. /package/dist/{index.js → faces/index.js} +0 -0
  60. /package/dist/{localize-body-links.d.ts → host/localize-body-links.d.ts} +0 -0
  61. /package/dist/{route-layout-chain.d.ts → host/route-layout-chain.d.ts} +0 -0
  62. /package/dist/{route-layout-chain.js → host/route-layout-chain.js} +0 -0
@@ -1,30 +1,36 @@
1
1
  /**
2
- * VMZ DOM client runtime — precise patches, no VDOM diff (SSR lives in dom-ssr).
2
+ * VMZ DOM client runtime ??precise patches, no VDOM diff (SSR lives in dom-ssr).
3
3
  *
4
4
  *
5
5
  * Direct components expose `__vmzCreate` / `__vmzSerialize` / `__vmzPlan`.
6
6
  * Mount and client patches run that same schedule (SSR/hydrate/resume in dom-ssr).
7
- * Field writes only run registered dep patches — never re-create structure.
7
+ * Field writes only run registered dep patches ??never re-create structure.
8
8
  */
9
+ import type { BindingId, DirectInstance, PatchFn } from './direct-api.types.js';
10
+ import type { ComponentCtor, EachCtx, ResumeAdoptCtx } from './dom-core.types.js';
9
11
  export { applyDirectHostBox, INLINE_HOST_CONTENTS, resolveDirectHostBox } from './direct-host-box.js';
10
12
  export { createUnknownComponentElement, markUnknownComponentHost, serializeUnknownComponentNode, UNKNOWN_COMPONENT_ERROR, } from './unknown-component.js';
11
- /** @param {boolean} [on] */
12
13
  export declare function __vmzPrecisionEnable(on?: boolean): void;
13
- /** @param {boolean} [on] */
14
14
  export declare function __vmzTraceEnable(on?: boolean): void;
15
15
  export declare function __vmzPrecisionReset(): void;
16
16
  export declare function __vmzTraceReset(): void;
17
17
  /**
18
- * StableId event snapshot (`vmz.dx.trace.v0` shape without schema stamp —
19
- * host may wrap via ingestRuntimeTrace).
20
- * @returns {{ schema: string, events: typeof traceBuf.events, status: string }}
18
+ * StableId event snapshot (`vmz.dx.trace.v0` shape without schema stamp ?? * host may wrap via ingestRuntimeTrace).
21
19
  */
22
20
  export declare function __vmzTraceSnapshot(): {
23
21
  schema: string;
24
- events: any[];
22
+ events: {
23
+ stableId: {
24
+ kind: string;
25
+ id: string;
26
+ };
27
+ kind: string;
28
+ dep?: string;
29
+ t?: number;
30
+ chunkId?: string | null;
31
+ }[];
25
32
  status: string;
26
33
  };
27
- /** @returns {typeof precision} */
28
34
  export declare function __vmzPrecisionSnapshot(): {
29
35
  enabled: boolean;
30
36
  writes: number;
@@ -34,369 +40,207 @@ export declare function __vmzPrecisionSnapshot(): {
34
40
  domMoves: number;
35
41
  domRemoves: number;
36
42
  componentExecs: number;
37
- writesByRoot: any;
38
- bindingEvalsByDep: any;
39
- patchesByDep: any;
40
- bindingEvalsByBinding: any;
41
- patchesByBinding: any;
43
+ writesByRoot: {
44
+ [x: string]: number;
45
+ };
46
+ bindingEvalsByDep: {
47
+ [x: string]: number;
48
+ };
49
+ patchesByDep: {
50
+ [x: string]: number;
51
+ };
52
+ bindingEvalsByBinding: {
53
+ [x: string]: number;
54
+ };
55
+ patchesByBinding: {
56
+ [x: string]: number;
57
+ };
42
58
  };
43
59
  export declare function noteDomCreate(): void;
44
- /** @param {Record<string, any>} map — Prefer createRenderHost().ensureComponents(); process-global registry. */
45
60
  export declare function registerComponents(map: any): void;
46
- /** Sync registry lookup (SSR serialize / client). */
47
- export declare function getRegisteredComponent(name: any): any;
61
+ export declare function getRegisteredComponent(name: any): ComponentCtor;
48
62
  /**
49
63
  * Lazy component loader for EventEntry mixed packs (set by entry-client / entry-event).
50
- * @param {string} name
51
- * @returns {Promise<any>}
52
64
  */
53
- export declare function resolveComponent(name: any): Promise<any>;
65
+ export declare function resolveComponent(name: any): Promise<ComponentCtor>;
54
66
  /**
55
67
  * Mount once; later updates are dep patches only (never re-run structure).
56
- * Requires compiler `__vmzCreate` (production Direct emit — no blueprint fallback).
57
- * @param {new (props?: object) => any} Component
58
- * @param {Element} container
59
- * @param {object} [props]
68
+ * Requires compiler `__vmzCreate` (production Direct emit ??no blueprint fallback).
60
69
  */
61
- export declare function mount(Component: any, container: any, props?: {}): Promise<any>;
70
+ export declare function mount(Component: any, container: any, props?: any): Promise<any>;
62
71
  /**
63
72
  * Nested Direct `component` schedules child onMount asynchronously; drain before return
64
- * so SSR/hydrate callers see post-mount DOM (e.g. UserCard Ada, not Loading…).
65
- * @param {object} inst
73
+ * so SSR/hydrate callers see post-mount DOM (e.g. UserCard Ada, not Loading??.
66
74
  */
67
75
  export declare function settlePendingChildMounts(inst: any): Promise<void>;
68
- /**
69
- * @param {new (props?: object) => any} Component
70
- * @param {object} inst
71
- */
72
76
  export declare function runDirectCreate(Component: any, inst: any): any;
73
- /** Host API for compiler-emitted `__vmzCreate` (direct path, Program IR B). */
74
77
  /**
75
- * First default `<slot>` owned by this component tree — skip nested `[data-vmz]`
78
+ * First default `<slot>` owned by this component tree ??skip nested `[data-vmz]`
76
79
  * hosts (Button/Link/Empty label slots). `querySelector('slot')` steals those and
77
80
  * projects parent siblings into the wrong host (commercial Drawer into Create btn).
78
- * @param {Element | null | undefined} root
79
- * @returns {Element | null}
80
81
  */
81
82
  export declare function findOwnedDefaultSlot(root: any): any;
82
83
  export declare const directApi: {
83
- /** @type {object | null} */
84
- _inst: any;
85
- /** @type {Array<{ deps: string[], fn: => any, bindingId?: number|string|null }> | null} */
86
- _branchBinds: any;
87
- /** @type {Array< => void> | null} */
88
- _itemPatches: any;
89
- /**
90
- * Active keyed-each context (/): item binds + event delegation.
91
- * @type {null | {
92
- * noteItemBind: (bindingId: number|string|null, deps: string[], fn: => void) => void,
93
- * needDelegate: (type: string) => void,
94
- * }}
95
- */
96
- _eachCtx: any;
97
- /** @type {null | {
98
- * el: (tag: string) => Element,
99
- * text: (value?: any) => Text,
100
- * componentHost?: (name: string) => HTMLElement | null,
101
- * enter?: (node: Element) => boolean,
102
- * leave?: () => void,
103
- * scopeDepth?: () => number,
104
- * rewindScope?: (depth: number) => void,
105
- * beginBranchScope?: () => () => void,
106
- * }} */
107
- _resumeAdopt: any;
84
+ _inst: DirectInstance | null;
85
+ _branchBinds: Array<{
86
+ deps: string[];
87
+ fn: PatchFn;
88
+ bindingId?: BindingId;
89
+ }> | null;
90
+ _itemPatches: PatchFn[] | null;
91
+ _eachCtx: EachCtx | null;
92
+ _resumeAdopt: ResumeAdoptCtx | null;
108
93
  el(tag: any): any;
109
- text(value: any): any;
110
- /** Push adopted node's private resume pool for depth-first child create. */
111
- adoptEnter(node: any): any;
94
+ text(value: any): Text;
95
+ adoptEnter(node: any): boolean;
112
96
  adoptLeave(): void;
113
97
  frag(): DocumentFragment;
98
+ comment(value: any): Comment;
99
+ insertBefore(parent: any, node: any, ref: any): void;
100
+ removeNode(node: any): void;
101
+ /**
102
+ * Register a generated per-binding patch (0.2.0). No generic get/cf interpreter.
103
+ */
104
+ trackPatch(inst: any, deps: any, patch: any, bindingId?: any): void;
105
+ untrackPatch(inst: any, deps: any, patch: any, bindingId?: any): void;
106
+ disposeTree(root: any): void;
114
107
  attr(el: any, name: any, value: any): void;
115
108
  on(el: any, type: any, handler: any): void;
116
109
  /**
117
110
  * Bind a named instance method (no arrow / Function#toString).
118
111
  * Learns `skipFlush` after a sync invocation that schedules no dirty work
119
112
  * (stride / transpose self-apply DOM).
120
- * @param {Element} el
121
- * @param {string} type
122
- * @param {string} methodName
123
- * @param {{ skipFlush?: boolean } | null | undefined} [opts]
124
113
  */
125
114
  onMethod(el: any, type: any, methodName: any, opts: any): void;
126
- /**
127
- * @param {object} inst
128
- * @param {number|string|null} bindingId
129
- * @param {string[]} deps
130
- * @param {() => any} get
131
- * @param {Text} textNode
132
- * @param {{ stable: string[], branches: Array<{ cond?: => any, deps: string[] }> } | null | undefined} [cf]
133
- */
134
- bindText(inst: any, bindingId: any, deps: any, get: any, textNode: any, cf: any): void;
135
- /**
136
- * @param {object} inst
137
- * @param {number|string|null} bindingId
138
- * @param {string[]} deps
139
- * @param {() => any} get
140
- * @param {Element} el
141
- * @param {string} name
142
- * @param {{ stable: string[], branches: Array<{ cond?: => any, deps: string[] }> } | null | undefined} [cf]
143
- */
144
- bindAttr(inst: any, bindingId: any, deps: any, get: any, el: any, name: any, cf: any): void;
145
115
  /**
146
116
  * Specialized single-field attr bind (0.1.29): compile-time field name, no generic get closure in artifact.
147
- * @param {object} inst
148
- * @param {number|string|null} bindingId
149
- * @param {string} fieldName
150
- * @param {Element} el
151
- * @param {string} name
152
117
  */
153
118
  specFieldAttr(inst: any, bindingId: any, fieldName: any, el: any, name: any): void;
154
119
  /**
155
120
  * Specialized single-field text bind (0.1.29): compile-time field name in generated artifact.
156
- * @param {object} inst
157
- * @param {number|string|null} bindingId
158
- * @param {string} fieldName
159
- * @param {Text} textNode
160
121
  */
161
122
  specFieldText(inst: any, bindingId: any, fieldName: any, textNode: any): void;
162
123
  setHtml(el: any, value: any): void;
163
- /**
164
- * Trusted HTML binding (`html={expr}`). Author/plugin responsibility.
165
- * @param {object} inst
166
- * @param {number|string|null} bindingId
167
- * @param {string[]} deps
168
- * @param {() => any} get
169
- * @param {Element} el
170
- * @param {{ stable: string[], branches: Array<{ cond?: => any, deps: string[] }> } | null | undefined} [cf]
171
- */
172
- bindHtml(inst: any, bindingId: any, deps: any, get: any, el: any, cf: any): void;
124
+ bindHtml(inst: any, bindingId: any, deps: any, get: any, el: any): void;
173
125
  /**
174
126
  * Nested component (sync Direct child or island schedule).
175
- * @param {object} hostInst
176
- * @param {string | Function} nameOrCtor — PascalCase tag string, or static Ctor import
177
- * @param {Record<string, any>} props
178
- * @param {string | null} client
179
127
  */
180
128
  component(hostInst: any, nameOrCtor: any, props: any, client: any): any;
181
129
  /**
182
- * Subscribe to a child component event (`@submit` → event name `submit`).
183
- * Orthogonal to function props (`:on-submit` → prop `onSubmit`).
184
- * @param {HTMLElement} hostEl
185
- * @param {string} eventName
186
- * @param {(ev?: any, ...rest: any[]) => any} handler
130
+ * Subscribe to a child component event (`@submit` ??event name `submit`).
131
+ * Orthogonal to function props (`:on-submit` ??prop `onSubmit`).
187
132
  */
188
133
  onComponentEvent(hostEl: any, eventName: any, handler: any): void;
189
134
  /**
190
135
  * Keep nested Direct child props live with parent field writes.
191
- * @param {object} hostInst
192
- * @param {HTMLElement} hostEl
193
- * @param {string} propName
194
- * @param {string[]} deps
195
- * @param {() => any} get
196
136
  */
197
137
  bindComponentProp(hostInst: any, hostEl: any, propName: any, deps: any, get: any): void;
198
138
  /**
199
139
  * Project parent children into nested Direct component default `<slot>`.
200
140
  * Uses {@link findOwnedDefaultSlot} so nested Button/Link slots are not stolen.
201
- * @param {HTMLElement} hostEl
202
- * @param {Node} node
203
141
  */
204
142
  projectDefaultSlot(hostEl: any, node: any): void;
205
- /**
206
- * Direct if/else — comment anchors (no empty `span[data-vmz-if]` layout box).
207
- * @param {object} inst
208
- * @param {number|string|null} bindingId
209
- * @param {string[]} deps
210
- * @param {Array<{ cond?: => any, create: (api: typeof directApi) => Node }>} branches
211
- * @param {number|string|null} [regionId]
212
- */
213
- ifBlock(inst: any, bindingId: any, deps: any, branches: any, regionId?: any): DocumentFragment;
214
- /**
215
- * Direct keyed each — no blueprint `kind: "each"` dispatch.
216
- * /: Set/Map + Fragment batch insert; item-local binds; host field dispatch; event delegate.
217
- * @param {object} inst
218
- * @param {number|string|null} bindingId
219
- * @param {string[]} deps
220
- * @param {{ as?: string, list: => any, key?: (box: {item:any,index:number}) => any, createItem: (api: typeof directApi, box: {item:any,index:number}) => Node }} spec
221
- * @param {number|string|null} [regionId]
222
- */
223
- eachBlock(inst: any, bindingId: any, deps: any, spec: any, regionId?: any): DocumentFragment;
224
143
  };
225
144
  /**
226
145
  * Function prop wire: only `onXxx` camelCase is a handler prop.
227
- * Component `@event` must never normalize here — that channel is `onComponentEvent`.
228
- * @param {unknown} name
229
- * @returns {string | null}
146
+ * Component `@event` must never normalize here ??that channel is `onComponentEvent`.
230
147
  */
231
148
  export declare function eventPropHandlerName(name: any): string;
232
149
  /**
233
150
  * Dispatch a component event to parent subscribers registered via `onComponentEvent`.
234
151
  * Installed on every Direct instance as `inst.emit`.
235
- * @param {object} inst
236
- * @param {string} eventName
237
- * @param {...any} payload
238
152
  */
239
153
  export declare function emitComponentEvent(inst: any, eventName: any, ...payload: any[]): void;
240
154
  export declare function isEventPropName(name: any): boolean;
241
- /** HTML boolean attributes: presence means true; `false`/`null` must remove the attr. */
242
155
  export declare const BOOLEAN_HTML_ATTRS: Set<string>;
243
- /**
244
- * @param {Element} el
245
- * @param {string} name
246
- * @param {any} value
247
- */
248
156
  export declare function applyDomAttr(el: any, name: any, value: any): void;
249
157
  export declare function stripFns(obj: any): {};
250
158
  /**
251
159
  * Snapshot plain state/prop field values for Island HMR (session).
252
- * @param {object} inst
253
- * @returns {Record<string, unknown> | null}
254
160
  */
255
161
  export declare function snapshotInstanceState(inst: any): {};
256
- /**
257
- * @param {object} inst
258
- * @param {Record<string, unknown> | null | undefined} state
259
- */
260
162
  export declare function applyPreservedState(inst: any, state: any): void;
261
163
  /**
262
164
  * Tear down binders and stop patches. Safe to call more than once.
263
165
  * Field writes after destroy no longer update DOM (values may still change).
264
166
  *: also dispose owned DOM trees (child __vmzInst / region __vmzDispose).
265
- * @param {object} inst
266
167
  */
267
168
  export declare function destroy(inst: any): void;
268
169
  /**
269
170
  *: walk a DOM subtree and run lifetime dispose hooks + nested instance destroy.
270
171
  * Does not mark the *calling* parent destroyed; safe from destroy(inst).
271
- * @param {Node | null | undefined} root
272
172
  */
273
173
  export declare function disposeDomTree(root: any): void;
274
174
  export declare function scheduleClient(strategy: any, fn: any): void;
275
- /** @param {string} strategy */
276
175
  export declare function isEventEntryStrategy(strategy: any): boolean;
277
176
  export declare function scheduleClientOn(el: any, strategy: any, fn: any): void;
278
177
  /**
279
178
  * AsyncTask cancel protocol (first slice): keyed generation + AbortSignal.
280
179
  * Superseded runs and `destroy(inst)` abort prior work; stale results must not apply.
281
- * @param {object} inst
282
- * @param {string} key
283
- * @param {(signal: AbortSignal, meta: { generation: number }) => any | Promise<any>} fn
284
- * @returns {Promise<any>}
285
180
  */
286
181
  export declare function __vmzRunTask(inst: any, key: any, fn: any): Promise<any>;
287
- /** Abort all keyed tasks on an instance (also called from destroy). */
288
182
  export declare function __vmzCancelTasks(inst: any): void;
289
- /** @returns {'pending'|'success'|'error'|'cancelled'|null} */
290
183
  export declare function __vmzTaskStatus(inst: any, key: any): any;
291
- export declare function createInstance(Component: any, props?: {}): any;
184
+ export declare function createInstance(Component: any, props?: any): any;
292
185
  /**
293
186
  * Mark a plain object as intentionally shared across ownership boundaries.
294
- * @param {any} value
295
187
  */
296
188
  export declare function __vmzAllowShared(value: any): any;
297
189
  /**
298
190
  * Take exclusive ownership intent: clear multi-owner registry for this object.
299
191
  * Subsequent field assigns re-register from the assigning instance only.
300
- * @param {any} value
301
192
  */
302
193
  export declare function __vmzTakeShared(value: any): any;
303
- /**
304
- * @returns {Array<{ kind: string, message: string }>}
305
- */
306
194
  export declare function __vmzSharedCrossComponentDiagnostics(): any[];
307
195
  export declare function __vmzSharedCrossComponentDiagnosticsReset(): void;
308
196
  /**
309
197
  * Read a nested path under a field root (for compound / update expansion).
310
- * @param {any} inst
311
- * @param {string} root
312
- * @param {string[]} segs
313
198
  */
314
199
  export declare function __vmzReadPath(inst: any, root: any, segs: any): any;
315
200
  /**
316
201
  * Short-circuit logical path assign (`||=` / `&&=` / `??=`).
317
- * @param {any} inst
318
- * @param {string} root
319
- * @param {string[]} segs
320
- * @param {'||'|'&&'|'??'} kind
321
- * @param {any} rhs
322
202
  */
323
203
  export declare function __vmzWritePathLogical(inst: any, root: any, segs: any, kind: any, rhs: any): any;
324
204
  export declare function __vmzWritePath(inst: any, root: any, segs: any, value: any): any;
325
205
  /**
326
206
  * Array-item leaf write without segs array alloc (`rows[i].label = v`).
327
- * @param {any} inst
328
- * @param {string} root
329
- * @param {string|number} idx
330
- * @param {string} leaf
331
- * @param {any} value
332
207
  */
333
208
  export declare function __vmzWritePathItem(inst: any, root: any, idx: any, leaf: any, value: any): any;
334
209
  /**
335
210
  * In-place two-index swap on an owned list field (WriteBarrier Slice 5).
336
211
  * Prefers eachBlock O(1) DOM transpose hook; otherwise schedules a list replace.
337
- * @param {any} inst
338
- * @param {string} root
339
- * @param {number|string} ia
340
- * @param {number|string} ib
341
212
  */
342
213
  export declare function __vmzListTranspose(inst: any, root: any, ia: any, ib: any): void;
343
214
  /**
344
- * Compound leaf write (`rows[i].label += x`) — one item touch, no separate ReadPath.
345
- * @param {any} inst
346
- * @param {string} root
347
- * @param {string[]} segs
348
- * @param {string} op
349
- * @param {any} rhs
215
+ * Compound leaf write (`rows[i].label += x`) ??one item touch, no separate ReadPath.
350
216
  */
351
217
  export declare function __vmzWritePathCompound(inst: any, root: any, segs: any, op: any, rhs: any): any;
352
218
  /**
353
219
  * Array-item compound without segs array alloc (`rows[i].label += x`).
354
- * @param {any} inst
355
- * @param {string} root
356
- * @param {string|number} idx
357
- * @param {string} leaf
358
- * @param {string} op
359
- * @param {any} rhs
360
220
  */
361
221
  export declare function __vmzWritePathCompoundItem(inst: any, root: any, idx: any, leaf: any, op: any, rhs: any): any;
362
222
  /**
363
223
  * Stride compound over an owned array (`for (i=start; i<n; i+=step) arr[i].leaf op= rhs`).
364
224
  * Mutates + applies DOM in one pass when eachBlock leaf hook is installed (update-every-Nth).
365
- * @param {any} inst
366
- * @param {string} root
367
- * @param {string} leaf
368
- * @param {string} op
369
- * @param {any} rhs
370
- * @param {number|string} start
371
- * @param {number|string} step
372
225
  */
373
226
  export declare function __vmzArrayItemCompoundStride(inst: any, root: any, leaf: any, op: any, rhs: any, start: any, step: any): void;
374
227
  /**
375
- * Compiler-inserted array mutator barrier (push/pop/splice/…).
228
+ * Compiler-inserted array mutator barrier (push/pop/splice/??.
376
229
  * Applies the mutator on the plain array and schedules a structural notice
377
- * at `root` + `baseSegs` (empty baseSegs → field replace).
230
+ * at `root` + `baseSegs` (empty baseSegs ??field replace).
378
231
  *
379
- * @param {any} inst
380
- * @param {string} root
381
- * @param {string[]} baseSegs
382
- * @param {string} method
383
- * @param {any[]} args
384
232
  */
385
233
  export declare function __vmzArrayMutate(inst: any, root: any, baseSegs: any, method: any, args: any): any;
386
234
  /**
387
235
  * WriteBarrier: true when value is an owned plain object with path barriers (no Proxy).
388
- * @param {any} value
389
236
  */
390
237
  export declare function __vmzIsWriteBarrierOwned(value: any): boolean;
391
238
  /**
392
239
  * True when value is the Proxy wrapper from array (or residual) reactive wrap.
393
- * @param {any} value
394
240
  */
395
241
  export declare function __vmzIsReactiveProxy(value: any): boolean;
396
- /** @param {object} inst */
397
242
  export declare function flushPending(inst: any): any;
398
243
  /**
399
244
  * True when the container already has meaningful DOM (SSR / resume shell).
400
- * @param {Element} el
401
245
  */
402
246
  export declare function hasMeaningfulChild(el: any): boolean;