@qwik.dev/core 2.0.0-beta.16 → 2.0.0-beta.18

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.
@@ -1,10 +1,7 @@
1
- import { ComputedSignal as ComputedSignal_2 } from '..';
2
1
  import * as CSS_2 from 'csstype';
3
2
  import { isBrowser } from './build';
4
3
  import { isDev } from './build';
5
4
  import { isServer } from './build';
6
- import { JSXNode as JSXNode_2 } from './types/jsx-node';
7
- import { QRL as QRL_2 } from './qrl.public';
8
5
 
9
6
  /**
10
7
  * Qwik Optimizer marker function.
@@ -421,7 +418,7 @@ declare type Augmented<E, A = {}> = Prettify<Filtered<E, A> & A>;
421
418
 
422
419
  /** Class for back reference to the EffectSubscription */
423
420
  declare abstract class BackRef {
424
- [_EFFECT_BACK_REF]: Map<EffectProperty | string, EffectSubscription> | undefined;
421
+ [_EFFECT_BACK_REF]: Map<any, any> | undefined;
425
422
  }
426
423
 
427
424
  declare type BivariantQrlFn<ARGS extends any[], RETURN> = {
@@ -444,51 +441,16 @@ declare type Booleanish = boolean | `${boolean}`;
444
441
  */
445
442
  export declare const _chk: (_: any, element: HTMLInputElement) => void;
446
443
 
447
- declare interface Chore<T extends ChoreType = ChoreType> {
448
- $type$: T;
449
- $idx$: number | string;
450
- $host$: HostElement;
451
- $target$: ChoreTarget | null;
452
- $payload$: unknown;
453
- $state$: ChoreState;
454
- $blockedChores$: ChoreArray | null;
455
- $startTime$: number | undefined;
456
- $endTime$: number | undefined;
457
- $resolve$: ((value: any) => void) | undefined;
458
- $reject$: ((reason?: any) => void) | undefined;
459
- $returnValue$: ValueOrPromise<ChoreReturnValue<T>>;
460
- }
461
-
462
- declare class ChoreArray extends Array<Chore> {
463
- add(value: Chore): number;
464
- delete(value: Chore): number;
465
- }
466
-
467
- declare type ChoreReturnValue<T extends ChoreType = ChoreType> = T extends ChoreType.RECOMPUTE_AND_SCHEDULE_EFFECTS | ChoreType.WAIT_FOR_QUEUE | ChoreType.NODE_PROP ? void : T extends ChoreType.NODE_DIFF | ChoreType.COMPONENT ? JSXOutput : unknown;
468
-
469
- declare enum ChoreState {
444
+ declare const enum ChoreBits {
470
445
  NONE = 0,
471
- RUNNING = 1,
472
- FAILED = 2,
473
- DONE = 3
474
- }
475
-
476
- declare type ChoreTarget = HostElement | _QRLInternal<(...args: unknown[]) => unknown> | Signal | StoreTarget;
477
-
478
- declare const enum ChoreType {
479
- MACRO = 240,
480
- MICRO = 15,
481
- /** Ensure that the QRL promise is resolved before processing next chores in the queue */
482
- QRL_RESOLVE = 1,
483
- RUN_QRL = 2,
484
- TASK = 3,
485
- NODE_DIFF = 4,
486
- NODE_PROP = 5,
487
- COMPONENT = 6,
488
- RECOMPUTE_AND_SCHEDULE_EFFECTS = 7,
489
- VISIBLE = 16,
490
- CLEANUP_VISIBLE = 32,
491
- WAIT_FOR_QUEUE = 255
446
+ TASKS = 1,
447
+ NODE_DIFF = 2,
448
+ COMPONENT = 4,
449
+ NODE_PROPS = 8,
450
+ COMPUTE = 16,
451
+ CHILDREN = 32,
452
+ CLEANUP = 64,
453
+ DIRTY_MASK = 127
492
454
  }
493
455
 
494
456
  /**
@@ -511,9 +473,7 @@ export declare interface ClientContainer extends Container {
511
473
  $locale$: string;
512
474
  qManifestHash: string;
513
475
  rootVNode: _ElementVNode;
514
- $journal$: VNodeJournal;
515
476
  $forwardRefs$: Array<number> | null;
516
- $flushEpoch$: number;
517
477
  parseQRL<T = unknown>(qrl: string): QRL<T>;
518
478
  $setRawState$(id: number, vParent: _ElementVNode | _VirtualVNode): void;
519
479
  }
@@ -683,17 +643,20 @@ export declare const _CONST_PROPS: unique symbol;
683
643
  * - `VNode` and `ISsrNode`: Either a component or `<Signal>`
684
644
  * - `Signal2`: A derived signal which contains a computation function.
685
645
  */
686
- declare type Consumer = Task | _VNode | ISsrNode | SignalImpl;
646
+ declare type Consumer = Task | _VNode | SignalImpl | ISsrNode;
687
647
 
688
648
  declare interface Container {
689
649
  readonly $version$: string;
690
- readonly $scheduler$: Scheduler;
691
650
  readonly $storeProxyMap$: ObjToProxyMap;
692
651
  readonly $locale$: string;
693
652
  readonly $getObjectById$: (id: number | string) => any;
694
653
  readonly $serverData$: Record<string, any>;
695
654
  $currentUniqueId$: number;
696
655
  $buildBase$: string | null;
656
+ $renderPromise$: Promise<void> | null;
657
+ $resolveRenderPromise$: (() => void) | null;
658
+ $cursorCount$: number;
659
+ $pausedCursorCount$: number;
697
660
  handleError(err: any, $host$: HostElement | null): void;
698
661
  getParentHost(host: HostElement): HostElement | null;
699
662
  setContext<T>(host: HostElement, context: ContextId<T>, value: T): void;
@@ -950,18 +913,6 @@ export declare const createComputedQrl: <T>(qrl: QRL<() => T>, options?: Compute
950
913
  */
951
914
  export declare const createContextId: <STATE = unknown>(name: string) => ContextId<STATE>;
952
915
 
953
- declare const createScheduler: (container: Container, journalFlush: () => void, choreQueue: ChoreArray, blockedChores: ChoreArray, runningChores: Set<Chore>) => {
954
- (type: ChoreType.QRL_RESOLVE, ignore: null, target: ComputeQRL<any> | AsyncComputeQRL<any>): Chore<ChoreType.QRL_RESOLVE>;
955
- (type: ChoreType.WAIT_FOR_QUEUE): Chore<ChoreType.WAIT_FOR_QUEUE>;
956
- (type: ChoreType.RECOMPUTE_AND_SCHEDULE_EFFECTS, host: HostElement | undefined, target: Signal<unknown> | StoreTarget, effects: Set<EffectSubscription> | undefined): Chore<ChoreType.RECOMPUTE_AND_SCHEDULE_EFFECTS>;
957
- (type: ChoreType.TASK | ChoreType.VISIBLE, task: Task): Chore<ChoreType.TASK | ChoreType.VISIBLE>;
958
- (type: ChoreType.RUN_QRL, host: HostElement, target: _QRLInternal<(...args: unknown[]) => unknown>, args: unknown[]): Chore<ChoreType.RUN_QRL>;
959
- (type: ChoreType.COMPONENT, host: HostElement, qrl: _QRLInternal<OnRenderFn<unknown>>, props: Props | null): Chore<ChoreType.COMPONENT>;
960
- (type: ChoreType.NODE_DIFF, host: HostElement, target: HostElement, value: JSXOutput | Signal): Chore<ChoreType.NODE_DIFF>;
961
- (type: ChoreType.NODE_PROP, host: HostElement, prop: string, value: any): Chore<ChoreType.NODE_PROP>;
962
- (type: ChoreType.CLEANUP_VISIBLE, task: Task): Chore<ChoreType.CLEANUP_VISIBLE>;
963
- };
964
-
965
916
  /**
966
917
  * Create a signal that holds a custom serializable value. See {@link useSerializer$} for more
967
918
  * details.
@@ -1025,7 +976,6 @@ declare interface DeserializeContainer {
1025
976
  $state$?: unknown[];
1026
977
  $storeProxyMap$: ObjToProxyMap;
1027
978
  $forwardRefs$: Array<number> | null;
1028
- readonly $scheduler$: Scheduler | null;
1029
979
  }
1030
980
 
1031
981
  /** @public */
@@ -1052,7 +1002,6 @@ declare class DomContainer extends _SharedContainer implements ClientContainer {
1052
1002
  qManifestHash: string;
1053
1003
  rootVNode: _ElementVNode;
1054
1004
  document: _QDocument;
1055
- $journal$: VNodeJournal;
1056
1005
  $rawStateData$: unknown[];
1057
1006
  $storeProxyMap$: ObjToProxyMap;
1058
1007
  $qFuncs$: Array<(...args: unknown[]) => unknown>;
@@ -1062,7 +1011,16 @@ declare class DomContainer extends _SharedContainer implements ClientContainer {
1062
1011
  private $stateData$;
1063
1012
  private $styleIds$;
1064
1013
  constructor(element: _ContainerElement);
1065
- $setRawState$(id: number, vParent: _ElementVNode | _VirtualVNode): void;
1014
+ /**
1015
+ * The first time we render we need to hoist the styles. (Meaning we need to move all styles from
1016
+ * component inline to <head>)
1017
+ *
1018
+ * We bulk move all of the styles, because the expensive part is for the browser to recompute the
1019
+ * styles, (not the actual DOM manipulation.) By moving all of them at once we can minimize the
1020
+ * reflow.
1021
+ */
1022
+ $hoistStyles$(): void;
1023
+ $setRawState$(id: number, vParent: _VNode): void;
1066
1024
  parseQRL<T = unknown>(qrl: string): QRL<T>;
1067
1025
  handleError(err: any, host: _VNode | null): void;
1068
1026
  setContext<T>(host: _VNode, context: ContextId<T>, value: T): void;
@@ -1131,23 +1089,19 @@ declare const enum EffectProperty {
1131
1089
  * - `EffectProperty.COMPONENT` if component
1132
1090
  * - `EffectProperty.VNODE` if VNode
1133
1091
  */
1134
- declare type EffectSubscription = [
1135
- Consumer,
1136
- // EffectSubscriptionProp.CONSUMER
1137
- EffectProperty | string,
1138
- // EffectSubscriptionProp.PROPERTY or string for attributes
1139
- Set<SignalImpl | StoreTarget> | null,
1140
- // EffectSubscriptionProp.BACK_REF
1141
- _SubscriptionData | null
1142
- ];
1092
+ declare class EffectSubscription {
1093
+ consumer: Consumer;
1094
+ property: EffectProperty | string;
1095
+ backRef: Set<SignalImpl | StoreTarget> | null;
1096
+ data: _SubscriptionData | null;
1097
+ constructor(consumer: Consumer, property: EffectProperty | string, backRef?: Set<SignalImpl | StoreTarget> | null, data?: _SubscriptionData | null);
1098
+ }
1143
1099
 
1144
1100
  /** @internal */
1145
- export declare class _ElementVNode extends _VNode {
1146
- firstChild: _VNode | null | undefined;
1147
- lastChild: _VNode | null | undefined;
1148
- element: QElement;
1101
+ export declare class _ElementVNode extends _VirtualVNode {
1102
+ node: Element;
1149
1103
  elementName: string | undefined;
1150
- constructor(flags: _VNodeFlags, parent: _ElementVNode | _VirtualVNode | null, previousSibling: _VNode | null | undefined, nextSibling: _VNode | null | undefined, firstChild: _VNode | null | undefined, lastChild: _VNode | null | undefined, element: QElement, elementName: string | undefined);
1104
+ constructor(key: string | null, flags: _VNodeFlags, parent: _ElementVNode | _VirtualVNode | null, previousSibling: _VNode | null | undefined, nextSibling: _VNode | null | undefined, props: Props | null, firstChild: _VNode | null | undefined, lastChild: _VNode | null | undefined, node: Element, elementName: string | undefined);
1151
1105
  }
1152
1106
 
1153
1107
  /** @internal */
@@ -1162,7 +1116,7 @@ export declare interface ErrorBoundaryStore {
1162
1116
  }
1163
1117
 
1164
1118
  /** @public */
1165
- export declare const event$: <T>(qrl: T) => QRL_2<T>;
1119
+ export declare const event$: <T>(qrl: T) => QRL<T>;
1166
1120
 
1167
1121
  declare type EventCorrectionMap = {
1168
1122
  auxclick: PointerEvent;
@@ -1188,6 +1142,9 @@ declare type EventQRL<T extends string = AllEventKeys> = QRL<EventHandler<EventF
1188
1142
  /** @internal */
1189
1143
  export declare const eventQrl: <T>(qrl: QRL<T>) => QRL<T>;
1190
1144
 
1145
+ /** @internal */
1146
+ export declare function _executeSsrChores(container: SSRContainer, ssrNode: ISsrNode): ValueOrPromise<void>;
1147
+
1191
1148
  declare type FilterBase<T> = {
1192
1149
  [K in keyof T as K extends string ? K extends Uppercase<K> ? never : any extends T[K] ? never : false extends IsAcceptableDOMValue<T[K]> ? never : IsReadOnlyKey<T, K> extends true ? never : K extends UnwantedKeys ? never : K : never]?: T[K];
1193
1150
  };
@@ -1237,7 +1194,7 @@ export declare const _getContextElement: () => unknown;
1237
1194
  export declare const _getContextEvent: () => unknown;
1238
1195
 
1239
1196
  /** @public */
1240
- declare function getDomContainer(element: Element | _VNode): ClientContainer;
1197
+ declare function getDomContainer(element: Element): ClientContainer;
1241
1198
  export { getDomContainer as _getDomContainer }
1242
1199
  export { getDomContainer }
1243
1200
 
@@ -1266,7 +1223,7 @@ export declare function getLocale(defaultLocale?: string): string;
1266
1223
  export declare const getPlatform: () => CorePlatform;
1267
1224
 
1268
1225
  /** @internal */
1269
- export declare function _getQContainerElement(element: Element | _VNode): Element | null;
1226
+ export declare function _getQContainerElement(element: Element): Element | null;
1270
1227
 
1271
1228
  /** Used by the optimizer for spread props operations @internal */
1272
1229
  export declare const _getVarProps: (props: PropsProxy | Record<string, unknown> | null | undefined) => Props | null;
@@ -1465,8 +1422,6 @@ declare interface InvokeContext {
1465
1422
  $url$: URL | undefined;
1466
1423
  /** The Virtual parent component for the current component code */
1467
1424
  $hostElement$: HostElement | undefined;
1468
- /** The current DOM element */
1469
- $element$: Element | undefined;
1470
1425
  /** The event we're currently handling */
1471
1426
  $event$: PossibleEvents | undefined;
1472
1427
  /** The QRL function we're currently executing */
@@ -1503,11 +1458,11 @@ export declare const isSignal: (value: any) => value is Signal<unknown>;
1503
1458
  /** @internal */
1504
1459
  export declare interface ISsrComponentFrame {
1505
1460
  componentNode: ISsrNode;
1461
+ slots: (string | JSXChildren)[];
1506
1462
  scopedStyleIds: Set<string>;
1507
1463
  projectionScopedStyle: string | null;
1508
1464
  projectionComponentFrame: ISsrComponentFrame | null;
1509
1465
  projectionDepth: number;
1510
- releaseUnclaimedProjections(unclaimedProjections: (ISsrComponentFrame | JSXChildren | string)[]): void;
1511
1466
  consumeChildrenForSlot(projectionNode: ISsrNode, slotName: string): JSXChildren | null;
1512
1467
  distributeChildrenIntoSlots(children: JSXChildren, parentScopedStyle: string | null, parentComponentFrame: ISsrComponentFrame | null): void;
1513
1468
  hasSlot(slotName: string): boolean;
@@ -1516,6 +1471,7 @@ export declare interface ISsrComponentFrame {
1516
1471
  declare interface ISsrNode {
1517
1472
  id: string;
1518
1473
  flags: SsrNodeFlags;
1474
+ dirty: ChoreBits;
1519
1475
  parentComponent: ISsrNode | null;
1520
1476
  vnodeData: VNodeData;
1521
1477
  currentFile: string | null;
@@ -1548,11 +1504,15 @@ export declare const _isTask: (value: any) => value is Task;
1548
1504
  */
1549
1505
  export declare const jsx: <T extends string | FunctionComponent<any>>(type: T, props: T extends FunctionComponent<infer PROPS> ? PROPS : Props, key?: string | number | null, _isStatic?: boolean, dev?: JsxDevOpts) => JSXNode<T>;
1550
1506
 
1551
- /** @internal */
1507
+ /**
1508
+ * @deprecated
1509
+ * @internal
1510
+ * No longer used since v2
1511
+ */
1552
1512
  export declare const _jsxBranch: <T>(input?: T) => T | undefined;
1553
1513
 
1554
1514
  /** @internal @deprecated v1 compat */
1555
- export declare const _jsxC: (type: any, mutable: any, _flags: any, key: any) => JSXNode_2<any>;
1515
+ export declare const _jsxC: (type: any, mutable: any, _flags: any, key: any) => JSXNode<any>;
1556
1516
 
1557
1517
  /** @public */
1558
1518
  export declare type JSXChildren = string | number | boolean | null | undefined | Function | RegExp | JSXChildren[] | Promise<JSXChildren> | Signal<JSXChildren> | JSXNode;
@@ -1593,16 +1553,16 @@ export declare interface JSXNode<T extends string | FunctionComponent | unknown
1593
1553
 
1594
1554
  declare class JSXNodeImpl<T = unknown> implements JSXNodeInternal<T> {
1595
1555
  type: T;
1556
+ children: JSXChildren;
1596
1557
  toSort: boolean;
1597
1558
  key: string | null;
1598
1559
  varProps: Props;
1599
1560
  constProps: Props | null;
1600
- children: JSXChildren;
1601
1561
  dev?: DevJSX & {
1602
1562
  stack: string | undefined;
1603
1563
  };
1604
1564
  _proxy: Props | null;
1605
- constructor(type: T, varProps?: Props | null, constProps?: Props | null, children?: JSXChildren, key?: string | number | null, toSort?: boolean, dev?: DevJSX);
1565
+ constructor(type: T, varProps: Props | null, constProps: Props | null, children: JSXChildren, key: string | number | null | undefined, toSort?: boolean, dev?: DevJSX);
1606
1566
  get props(): T extends FunctionComponent<infer PROPS> ? PROPS : Props;
1607
1567
  }
1608
1568
 
@@ -1654,10 +1614,10 @@ export declare interface JSXNodeInternal<T extends string | FunctionComponent |
1654
1614
  export declare type JSXOutput = JSXNode | string | number | boolean | null | undefined | JSXOutput[];
1655
1615
 
1656
1616
  /** @internal @deprecated v1 compat */
1657
- export declare const _jsxQ: (type: any, mutable: any, immutable: any, children: any, _flags: any, key: any) => JSXNode_2<any>;
1617
+ export declare const _jsxQ: (type: any, mutable: any, immutable: any, children: any, _flags: any, key: any) => JSXNode<any>;
1658
1618
 
1659
1619
  /** @internal @deprecated v1 compat */
1660
- export declare const _jsxS: (type: any, mutable: any, immutable: any, _flags: any, key: any) => JSXNode_2<any>;
1620
+ export declare const _jsxS: (type: any, mutable: any, immutable: any, _flags: any, key: any) => JSXNode<any>;
1661
1621
 
1662
1622
  /**
1663
1623
  * Alias of `jsx` to support JSX syntax.
@@ -2062,11 +2022,6 @@ export declare interface _QDocument extends Document {
2062
2022
  qVNodeData: WeakMap<Element, string>;
2063
2023
  }
2064
2024
 
2065
- declare interface QElement extends Element {
2066
- qDispatchEvent?: (event: Event, scope: QwikLoaderEventScope) => ValueOrPromise<unknown>;
2067
- vNode?: _VNode;
2068
- }
2069
-
2070
2025
  /**
2071
2026
  * The `QRL` type represents a lazy-loadable AND serializable resource.
2072
2027
  *
@@ -2432,8 +2387,6 @@ declare type QwikKnownEventsPlain<EL> = {
2432
2387
  [K in keyof QwikJSXEvents]?: QRLEventHandlerMulti<QwikJSXEvents[K], EL> | EventHandler<QwikJSXEvents[K], EL>;
2433
2388
  };
2434
2389
 
2435
- declare type QwikLoaderEventScope = '-document' | '-window' | '';
2436
-
2437
2390
  /**
2438
2391
  * The metadata of the build. One of its uses is storing where QRL symbols are located.
2439
2392
  *
@@ -2769,6 +2722,7 @@ declare interface ResourceReturnInternal<T> {
2769
2722
  _error: Error | undefined;
2770
2723
  _cache: number;
2771
2724
  _timeout: number;
2725
+ _generation: number;
2772
2726
  value: Promise<T>;
2773
2727
  loading: boolean;
2774
2728
  }
@@ -2783,8 +2737,6 @@ export declare const _restProps: (props: PropsProxy, omit?: string[], target?: P
2783
2737
  */
2784
2738
  export declare const _run: (...args: unknown[]) => ValueOrPromise<unknown>;
2785
2739
 
2786
- declare type Scheduler = ReturnType<typeof createScheduler>;
2787
-
2788
2740
  /** Stores the location of an object. If no parent, it's a root. */
2789
2741
  declare type SeenRef = {
2790
2742
  $index$: number;
@@ -2961,7 +2913,6 @@ export declare const setPlatform: (plt: CorePlatform) => CorePlatform;
2961
2913
  /** @internal */
2962
2914
  export declare abstract class _SharedContainer implements Container {
2963
2915
  readonly $version$: string;
2964
- readonly $scheduler$: Scheduler;
2965
2916
  readonly $storeProxyMap$: ObjToProxyMap;
2966
2917
  readonly $locale$: string;
2967
2918
  readonly $getObjectById$: (id: number | string) => any;
@@ -2969,8 +2920,11 @@ export declare abstract class _SharedContainer implements Container {
2969
2920
  $currentUniqueId$: number;
2970
2921
  $instanceHash$: string | null;
2971
2922
  $buildBase$: string | null;
2972
- $flushEpoch$: number;
2973
- constructor(journalFlush: () => void, serverData: Record<string, any>, locale: string);
2923
+ $renderPromise$: Promise<void> | null;
2924
+ $resolveRenderPromise$: (() => void) | null;
2925
+ $cursorCount$: number;
2926
+ $pausedCursorCount$: number;
2927
+ constructor(serverData: Record<string, any>, locale: string);
2974
2928
  trackSignalValue<T>(signal: Signal, subscriber: HostElement, property: string, data: _SubscriptionData): T;
2975
2929
  serializationCtxFactory(NodeConstructor: {
2976
2930
  new (...rest: any[]): {
@@ -3331,11 +3285,10 @@ declare interface SSRContainer extends Container {
3331
3285
  readonly resolvedManifest: ResolvedManifest;
3332
3286
  additionalHeadNodes: Array<JSXNodeInternal>;
3333
3287
  additionalBodyNodes: Array<JSXNodeInternal>;
3334
- unclaimedProjectionComponentFrameQueue: ISsrComponentFrame[];
3335
3288
  write(text: string): void;
3336
3289
  openContainer(): void;
3337
3290
  closeContainer(): ValueOrPromise<void>;
3338
- openElement(elementName: string, varAttrs: SsrAttrs | null, constAttrs?: SsrAttrs | null, currentFile?: string | null): string | undefined;
3291
+ openElement(elementName: string, key: string | null, varAttrs: SsrAttrs | null, constAttrs?: SsrAttrs | null, currentFile?: string | null): string | undefined;
3339
3292
  closeElement(): ValueOrPromise<void>;
3340
3293
  openFragment(attrs: SsrAttrs): void;
3341
3294
  closeFragment(): void;
@@ -3344,7 +3297,7 @@ declare interface SSRContainer extends Container {
3344
3297
  openComponent(attrs: SsrAttrs): void;
3345
3298
  getComponentFrame(projectionDepth: number): ISsrComponentFrame | null;
3346
3299
  getParentComponentFrame(): ISsrComponentFrame | null;
3347
- closeComponent(): void;
3300
+ closeComponent(): Promise<void>;
3348
3301
  textNode(text: string): void;
3349
3302
  htmlNode(rawHtml: string): void;
3350
3303
  commentNode(text: string): void;
@@ -3761,9 +3714,9 @@ export declare interface TaskOptions {
3761
3714
 
3762
3715
  /** @internal */
3763
3716
  export declare class _TextVNode extends _VNode {
3764
- textNode: Text | null;
3717
+ node: Text | null;
3765
3718
  text: string | undefined;
3766
- constructor(flags: _VNodeFlags, parent: _ElementVNode | _VirtualVNode | null, previousSibling: _VNode | null | undefined, nextSibling: _VNode | null | undefined, textNode: Text | null, text: string | undefined);
3719
+ constructor(flags: _VNodeFlags, parent: _VNode | null, previousSibling: _VNode | null | undefined, nextSibling: _VNode | null | undefined, props: Props | null, node: Text | null, text: string | undefined);
3767
3720
  }
3768
3721
 
3769
3722
  /**
@@ -4231,7 +4184,7 @@ export declare const useResourceQrl: <T>(qrl: QRL<ResourceFn<T>>, opts?: Resourc
4231
4184
  export declare const useSerializer$: typeof createSerializer$;
4232
4185
 
4233
4186
  /** @internal */
4234
- export declare const useSerializerQrl: <T, S>(qrl: QRL<SerializerArg<T, S>>) => ComputedSignal_2<unknown>;
4187
+ export declare const useSerializerQrl: <T, S>(qrl: QRL<SerializerArg<T, S>>) => ComputedSignal<unknown>;
4235
4188
 
4236
4189
  /** @public */
4237
4190
  export declare function useServerData<T>(key: string): T | undefined;
@@ -4486,7 +4439,7 @@ export declare const _VAR_PROPS: unique symbol;
4486
4439
  export declare const _verifySerializable: <T>(value: T, preMessage?: string) => T;
4487
4440
 
4488
4441
  /**
4489
- * 2.0.0-beta.16-dev+a83ccf3
4442
+ * 2.0.0-beta.18-dev+a8081d4
4490
4443
  *
4491
4444
  * @public
4492
4445
  */
@@ -4494,29 +4447,28 @@ export declare const version: string;
4494
4447
 
4495
4448
  /** @internal */
4496
4449
  export declare class _VirtualVNode extends _VNode {
4450
+ key: string | null;
4497
4451
  firstChild: _VNode | null | undefined;
4498
4452
  lastChild: _VNode | null | undefined;
4499
- constructor(flags: _VNodeFlags, parent: _ElementVNode | _VirtualVNode | null, previousSibling: _VNode | null | undefined, nextSibling: _VNode | null | undefined, firstChild: _VNode | null | undefined, lastChild: _VNode | null | undefined);
4453
+ constructor(key: string | null, flags: _VNodeFlags, parent: _ElementVNode | _VirtualVNode | null, previousSibling: _VNode | null | undefined, nextSibling: _VNode | null | undefined, props: Props | null, firstChild: _VNode | null | undefined, lastChild: _VNode | null | undefined);
4500
4454
  }
4501
4455
 
4502
4456
  /** @public */
4503
4457
  export declare type VisibleTaskStrategy = 'intersection-observer' | 'document-ready' | 'document-idle';
4504
4458
 
4505
4459
  /** @internal */
4506
- export declare abstract class _VNode extends BackRef {
4460
+ export declare abstract class _VNode implements BackRef {
4507
4461
  flags: _VNodeFlags;
4508
- parent: _ElementVNode | _VirtualVNode | null;
4462
+ parent: _VNode | null;
4509
4463
  previousSibling: _VNode | null | undefined;
4510
4464
  nextSibling: _VNode | null | undefined;
4511
- props: unknown[] | null;
4465
+ props: Props | null;
4466
+ [_EFFECT_BACK_REF]: Map<any, any> | undefined;
4512
4467
  slotParent: _VNode | null;
4513
- chores: ChoreArray | null;
4514
- blockedChores: ChoreArray | null;
4515
- constructor(flags: _VNodeFlags, parent: _ElementVNode | _VirtualVNode | null, previousSibling: _VNode | null | undefined, nextSibling: _VNode | null | undefined);
4516
- getProp<T>(key: string, getObject: ((id: string) => any) | null): T | null;
4517
- setProp(key: string, value: any): void;
4518
- getAttr(key: string): string | null;
4519
- setAttr(key: string, value: string | null | boolean, journal: VNodeJournal | null): void;
4468
+ dirty: ChoreBits;
4469
+ dirtyChildren: _VNode[] | null;
4470
+ nextDirtyChildIndex: number;
4471
+ constructor(flags: _VNodeFlags, parent: _VNode | null, previousSibling: _VNode | null | undefined, nextSibling: _VNode | null | undefined, props: Props | null);
4520
4472
  toString(): string;
4521
4473
  }
4522
4474
 
@@ -4529,9 +4481,6 @@ export declare const _vnode_getAttrKeys: (vnode: _ElementVNode | _VirtualVNode)
4529
4481
  /** @internal */
4530
4482
  export declare const _vnode_getFirstChild: (vnode: _VNode) => _VNode | null;
4531
4483
 
4532
- /** @internal */
4533
- export declare const _vnode_getProps: (vnode: _ElementVNode | _VirtualVNode) => unknown[];
4534
-
4535
4484
  /** @internal */
4536
4485
  export declare const _vnode_isMaterialized: (vNode: _VNode) => boolean;
4537
4486
 
@@ -4617,30 +4566,12 @@ export declare const enum _VNodeFlags {
4617
4566
  Inflated = 8,
4618
4567
  Resolved = 16,
4619
4568
  Deleted = 32,
4620
- NAMESPACE_MASK = 192,
4621
- NEGATED_NAMESPACE_MASK = -193,
4569
+ Cursor = 64,
4570
+ NAMESPACE_MASK = 384,
4571
+ NEGATED_NAMESPACE_MASK = -385,
4622
4572
  NS_html = 0,// http://www.w3.org/1999/xhtml
4623
- NS_svg = 64,// http://www.w3.org/2000/svg
4624
- NS_math = 128
4625
- }
4626
-
4627
- declare type VNodeJournal = Array<VNodeJournalOpCode | Document | Element | Text | string | boolean | null>;
4628
-
4629
- /**
4630
- * Fundamental DOM operations are:
4631
- *
4632
- * - Insert new DOM element/text
4633
- * - Remove DOM element/text
4634
- * - Set DOM element attributes
4635
- * - Set text node value
4636
- */
4637
- declare const enum VNodeJournalOpCode {
4638
- SetText = 1,// ------ [SetAttribute, target, text]
4639
- SetAttribute = 2,// - [SetAttribute, target, ...(key, values)]]
4640
- HoistStyles = 3,// -- [HoistStyles, document]
4641
- Remove = 4,// ------- [Remove, target(parent), ...nodes]
4642
- RemoveAll = 5,// ------- [RemoveAll, target(parent)]
4643
- Insert = 6
4573
+ NS_svg = 128,// http://www.w3.org/2000/svg
4574
+ NS_math = 256
4644
4575
  }
4645
4576
 
4646
4577
  /** @internal */