@getodk/xforms-engine 0.16.0 → 0.17.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 (124) hide show
  1. package/dist/client/AttributeNode.d.ts +4 -3
  2. package/dist/client/InputNode.d.ts +8 -4
  3. package/dist/client/MarkdownNode.d.ts +3 -0
  4. package/dist/client/NoteNode.d.ts +6 -2
  5. package/dist/client/form/FormInstanceConfig.d.ts +4 -0
  6. package/dist/client/form/LoadFormResult.d.ts +5 -14
  7. package/dist/client/form/ResetFormInstance.d.ts +13 -0
  8. package/dist/entrypoints/FormResult/BaseFormResult.d.ts +1 -0
  9. package/dist/entrypoints/FormResult/BaseInstantiableFormResult.d.ts +2 -0
  10. package/dist/entrypoints/FormResult/FormFailureResult.d.ts +2 -0
  11. package/dist/entrypoints/createPotentiallyClientOwnedReactiveScope.d.ts +19 -0
  12. package/dist/index.js +22150 -25908
  13. package/dist/index.js.map +1 -1
  14. package/dist/instance/Attribute.d.ts +11 -23
  15. package/dist/instance/Group.d.ts +3 -0
  16. package/dist/instance/InputControl.d.ts +3 -0
  17. package/dist/instance/ModelValue.d.ts +4 -0
  18. package/dist/instance/Note.d.ts +4 -0
  19. package/dist/instance/PrimaryInstance.d.ts +7 -1
  20. package/dist/instance/RangeControl.d.ts +4 -0
  21. package/dist/instance/RankControl.d.ts +5 -1
  22. package/dist/instance/Root.d.ts +3 -0
  23. package/dist/instance/SelectControl.d.ts +5 -1
  24. package/dist/instance/TriggerControl.d.ts +4 -0
  25. package/dist/instance/UploadControl.d.ts +3 -0
  26. package/dist/instance/abstract/DescendantNode.d.ts +5 -4
  27. package/dist/instance/abstract/InstanceNode.d.ts +4 -3
  28. package/dist/instance/hierarchy.d.ts +2 -1
  29. package/dist/instance/internal-api/AttributeContext.d.ts +1 -0
  30. package/dist/instance/internal-api/InstanceConfig.d.ts +2 -1
  31. package/dist/instance/internal-api/InstanceValueContext.d.ts +1 -0
  32. package/dist/instance/markdown/MarkdownNode.d.ts +14 -9
  33. package/dist/instance/repeat/RepeatInstance.d.ts +2 -0
  34. package/dist/integration/xpath/adapter/XFormsXPathNode.d.ts +1 -1
  35. package/dist/integration/xpath/adapter/kind.d.ts +5 -3
  36. package/dist/integration/xpath/adapter/traversal.d.ts +3 -3
  37. package/dist/integration/xpath/static-dom/StaticAttribute.d.ts +1 -0
  38. package/dist/integration/xpath/static-dom/StaticDocument.d.ts +2 -0
  39. package/dist/lib/codecs/{Geopoint/Geopoint.d.ts → geolocation/Geolocation.d.ts} +11 -15
  40. package/dist/lib/codecs/geolocation/Geopoint.d.ts +7 -0
  41. package/dist/lib/codecs/geolocation/Geoshape.d.ts +7 -0
  42. package/dist/lib/codecs/geolocation/Geotrace.d.ts +7 -0
  43. package/dist/lib/codecs/geolocation/createGeolocationValueCodec.d.ts +3 -0
  44. package/dist/lib/codecs/getSharedValueCodec.d.ts +7 -5
  45. package/dist/lib/reactivity/text/createTextRange.d.ts +0 -2
  46. package/dist/parse/XFormDOM.d.ts +7 -1
  47. package/dist/parse/body/appearance/inputAppearanceParser.d.ts +1 -1
  48. package/dist/parse/model/ActionDefinition.d.ts +1 -1
  49. package/dist/parse/model/AttributeDefinition.d.ts +2 -0
  50. package/dist/parse/model/BindPreloadDefinition.d.ts +2 -1
  51. package/dist/parse/model/ModelActionMap.d.ts +3 -2
  52. package/dist/parse/model/ModelDefinition.d.ts +3 -5
  53. package/dist/parse/model/SecondaryInstance/sources/CSVExternalSecondaryInstance.d.ts +0 -17
  54. package/dist/parse/model/SecondaryInstance/sources/external-instance-csv-parser.d.ts +8 -0
  55. package/dist/parse/model/TranslationDefinitionMap.d.ts +4 -0
  56. package/dist/solid.js +21608 -25366
  57. package/dist/solid.js.map +1 -1
  58. package/package.json +2 -2
  59. package/src/client/AttributeNode.ts +4 -3
  60. package/src/client/InputNode.ts +11 -3
  61. package/src/client/MarkdownNode.ts +3 -0
  62. package/src/client/NoteNode.ts +9 -1
  63. package/src/client/form/FormInstanceConfig.ts +6 -0
  64. package/src/client/form/LoadFormResult.ts +5 -17
  65. package/src/client/form/ResetFormInstance.ts +17 -0
  66. package/src/entrypoints/FormInstance.ts +2 -0
  67. package/src/entrypoints/FormResult/BaseFormResult.ts +1 -0
  68. package/src/entrypoints/FormResult/BaseInstantiableFormResult.ts +10 -1
  69. package/src/entrypoints/FormResult/FormFailureResult.ts +3 -0
  70. package/src/entrypoints/createPotentiallyClientOwnedReactiveScope.ts +30 -0
  71. package/src/entrypoints/loadForm.ts +1 -31
  72. package/src/instance/Attribute.ts +38 -54
  73. package/src/instance/Group.ts +12 -4
  74. package/src/instance/InputControl.ts +15 -9
  75. package/src/instance/ModelValue.ts +13 -4
  76. package/src/instance/Note.ts +13 -4
  77. package/src/instance/PrimaryInstance.ts +29 -6
  78. package/src/instance/RangeControl.ts +13 -4
  79. package/src/instance/RankControl.ts +14 -5
  80. package/src/instance/Root.ts +12 -4
  81. package/src/instance/SelectControl.ts +14 -5
  82. package/src/instance/TriggerControl.ts +13 -4
  83. package/src/instance/UploadControl.ts +13 -3
  84. package/src/instance/abstract/DescendantNode.ts +4 -3
  85. package/src/instance/abstract/InstanceNode.ts +5 -3
  86. package/src/instance/attachments/buildAttributes.ts +26 -2
  87. package/src/instance/children/childrenInitOptions.ts +2 -1
  88. package/src/instance/hierarchy.ts +2 -0
  89. package/src/instance/internal-api/AttributeContext.ts +1 -0
  90. package/src/instance/internal-api/InstanceConfig.ts +3 -0
  91. package/src/instance/internal-api/InstanceValueContext.ts +1 -0
  92. package/src/instance/markdown/MarkdownNode.ts +19 -7
  93. package/src/instance/repeat/RepeatInstance.ts +11 -3
  94. package/src/instance/text/markdownFormat.ts +4 -3
  95. package/src/integration/xpath/adapter/XFormsXPathNode.ts +1 -0
  96. package/src/integration/xpath/adapter/engineDOMAdapter.ts +2 -2
  97. package/src/integration/xpath/adapter/kind.ts +6 -1
  98. package/src/integration/xpath/adapter/names.ts +1 -0
  99. package/src/integration/xpath/adapter/traversal.ts +5 -6
  100. package/src/integration/xpath/static-dom/StaticAttribute.ts +1 -0
  101. package/src/integration/xpath/static-dom/StaticDocument.ts +2 -0
  102. package/src/lib/codecs/{Geopoint/Geopoint.ts → geolocation/Geolocation.ts} +43 -24
  103. package/src/lib/codecs/geolocation/Geopoint.ts +15 -0
  104. package/src/lib/codecs/geolocation/Geoshape.ts +36 -0
  105. package/src/lib/codecs/geolocation/Geotrace.ts +36 -0
  106. package/src/lib/codecs/geolocation/createGeolocationValueCodec.ts +18 -0
  107. package/src/lib/codecs/getSharedValueCodec.ts +37 -11
  108. package/src/lib/reactivity/createInstanceValueState.ts +90 -34
  109. package/src/lib/reactivity/text/createTextRange.ts +71 -45
  110. package/src/parse/XFormDOM.ts +22 -2
  111. package/src/parse/model/ActionDefinition.ts +6 -6
  112. package/src/parse/model/AttributeDefinition.ts +7 -0
  113. package/src/parse/model/BindDefinition.ts +1 -1
  114. package/src/parse/model/BindPreloadDefinition.ts +21 -14
  115. package/src/parse/model/ModelActionMap.ts +30 -13
  116. package/src/parse/model/ModelDefinition.ts +5 -10
  117. package/src/parse/model/RootDefinition.ts +2 -1
  118. package/src/parse/model/SecondaryInstance/sources/CSVExternalSecondaryInstance.ts +2 -184
  119. package/src/parse/model/SecondaryInstance/sources/external-instance-csv-parser.ts +185 -0
  120. package/src/parse/model/TranslationDefinitionMap.ts +23 -0
  121. package/dist/lib/codecs/Geopoint/GeopointValueCodec.d.ts +0 -5
  122. package/dist/parse/model/generateItextChunks.d.ts +0 -5
  123. package/src/lib/codecs/Geopoint/GeopointValueCodec.ts +0 -20
  124. package/src/parse/model/generateItextChunks.ts +0 -61
@@ -1,14 +1,15 @@
1
1
  import { Root } from '../instance/Root.ts';
2
2
  import { AttributeDefinition } from '../parse/model/AttributeDefinition.ts';
3
+ import { BaseNode, BaseNodeState } from './BaseNode.ts';
3
4
  import { InstanceState } from './serialization/InstanceState.ts';
4
- export interface AttributeNodeState {
5
+ export interface AttributeNodeState extends BaseNodeState {
5
6
  get value(): string;
6
7
  get relevant(): boolean;
7
8
  }
8
9
  /**
9
10
  * Base interface for common/shared aspects of attributes.
10
11
  */
11
- export interface AttributeNode {
12
+ export interface AttributeNode extends BaseNode {
12
13
  /**
13
14
  * Specifies the node's general type. This can be useful for narrowing types,
14
15
  * e.g. those of children.
@@ -25,7 +26,7 @@ export interface AttributeNode {
25
26
  * Each node links back to the node representing the root of the form.
26
27
  */
27
28
  readonly root: Root;
28
- readonly owner: unknown;
29
+ readonly parent: unknown;
29
30
  /**
30
31
  * Each node provides a discrete object representing the stateful aspects of
31
32
  * that node which will change over time. This includes state which is either
@@ -40,8 +40,8 @@ interface InputNodeOptionsByValueType {
40
40
  readonly time: null;
41
41
  readonly dateTime: null;
42
42
  readonly geopoint: GeoInputNodeOptions;
43
- readonly geotrace: GeoInputNodeOptions;
44
- readonly geoshape: GeoInputNodeOptions;
43
+ readonly geotrace: null;
44
+ readonly geoshape: null;
45
45
  readonly binary: null;
46
46
  readonly barcode: null;
47
47
  readonly intent: null;
@@ -72,13 +72,17 @@ export type IntInputValue = InputValue<'int'>;
72
72
  export type DecimalInputValue = InputValue<'decimal'>;
73
73
  export type DateInputValue = InputValue<'date'>;
74
74
  export type GeopointInputValue = InputValue<'geopoint'>;
75
+ export type GeoshapeInputValue = InputValue<'geoshape'>;
76
+ export type GeotraceInputValue = InputValue<'geotrace'>;
75
77
  export type StringInputNode = InputNode<'string'>;
76
78
  export type IntInputNode = InputNode<'int'>;
77
79
  export type DecimalInputNode = InputNode<'decimal'>;
78
80
  export type DateInputNode = InputNode<'date'>;
79
81
  export type GeopointInputNode = InputNode<'geopoint'>;
80
- type SupportedInputValueType = 'string' | 'int' | 'decimal' | 'date' | 'geopoint';
82
+ export type GeoshapeInputNode = InputNode<'geoshape'>;
83
+ export type GeotraceInputNode = InputNode<'geotrace'>;
84
+ type SupportedInputValueType = 'string' | 'int' | 'decimal' | 'date' | 'geopoint' | 'geoshape' | 'geotrace';
81
85
  type TemporaryStringValueType = Exclude<ValueType, SupportedInputValueType>;
82
86
  export type TemporaryStringValueInputNode = InputNode<TemporaryStringValueType>;
83
- export type AnyInputNode = StringInputNode | IntInputNode | DecimalInputNode | DateInputNode | GeopointInputNode | TemporaryStringValueInputNode;
87
+ export type AnyInputNode = StringInputNode | IntInputNode | DecimalInputNode | DateInputNode | GeopointInputNode | GeoshapeInputNode | GeotraceInputNode | TemporaryStringValueInputNode;
84
88
  export {};
@@ -2,15 +2,18 @@ export type Heading = 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';
2
2
  export type ElementName = Heading | 'a' | 'div' | 'em' | 'li' | 'ol' | 'p' | 'span' | 'strong' | 'u' | 'ul';
3
3
  export type MarkdownNode = ChildMarkdownNode | HtmlMarkdownNode | ParentMarkdownNode;
4
4
  export interface ParentMarkdownNode {
5
+ readonly id: string;
5
6
  readonly role: 'parent';
6
7
  readonly elementName: string;
7
8
  readonly children: MarkdownNode[];
8
9
  }
9
10
  export interface ChildMarkdownNode {
11
+ readonly id: string;
10
12
  readonly role: 'child';
11
13
  readonly value: string;
12
14
  }
13
15
  export interface HtmlMarkdownNode {
16
+ readonly id: string;
14
17
  readonly role: 'html';
15
18
  readonly unsafeHtml: string;
16
19
  }
@@ -59,13 +59,17 @@ export type IntNoteValue = NoteValue<'int'>;
59
59
  export type DecimalNoteValue = NoteValue<'decimal'>;
60
60
  export type DateNoteValue = NoteValue<'date'>;
61
61
  export type GeopointNoteValue = NoteValue<'geopoint'>;
62
+ export type GeoshapeNoteValue = NoteValue<'geoshape'>;
63
+ export type GeotraceNoteValue = NoteValue<'geotrace'>;
62
64
  export type StringNoteNode = NoteNode<'string'>;
63
65
  export type IntNoteNode = NoteNode<'int'>;
64
66
  export type DecimalNoteNode = NoteNode<'decimal'>;
65
67
  export type DateNoteNode = NoteNode<'date'>;
66
68
  export type GeopointNoteNode = NoteNode<'geopoint'>;
67
- type SupportedNoteValueType = 'string' | 'int' | 'decimal' | 'date' | 'geopoint';
69
+ export type GeoshapeNoteNode = NoteNode<'geoshape'>;
70
+ export type GeotraceNoteNode = NoteNode<'geotrace'>;
71
+ type SupportedNoteValueType = 'string' | 'int' | 'decimal' | 'date' | 'geopoint' | 'geoshape' | 'geotrace';
68
72
  type TemporaryStringValueType = Exclude<ValueType, SupportedNoteValueType>;
69
73
  export type TemporaryStringValueNoteNode = NoteNode<TemporaryStringValueType>;
70
- export type AnyNoteNode = StringNoteNode | IntNoteNode | DecimalNoteNode | DateNoteNode | GeopointNoteNode | TemporaryStringValueNoteNode;
74
+ export type AnyNoteNode = StringNoteNode | IntNoteNode | DecimalNoteNode | DateNoteNode | GeopointNoteNode | GeoshapeNoteNode | GeotraceNoteNode | TemporaryStringValueNoteNode;
71
75
  export {};
@@ -14,6 +14,9 @@ export interface PreloadProperties {
14
14
  readonly username?: string;
15
15
  readonly phoneNumber?: string;
16
16
  }
17
+ export interface GeolocationProvider {
18
+ getLocation(): Promise<string>;
19
+ }
17
20
  export interface FormInstanceConfig {
18
21
  /**
19
22
  * A client may specify a generic function for constructing stateful objects.
@@ -31,4 +34,5 @@ export interface FormInstanceConfig {
31
34
  readonly stateFactory?: OpaqueReactiveObjectFactory;
32
35
  readonly instanceAttachments?: InstanceAttachmentsConfig;
33
36
  readonly preloadProperties?: PreloadProperties;
37
+ readonly geolocationProvider?: GeolocationProvider;
34
38
  }
@@ -3,6 +3,7 @@ import { AnyFunction } from '../../../../common/types/helpers.js';
3
3
  import { LoadFormFailureError } from '../../error/LoadFormFailureError.ts';
4
4
  import { CreateFormInstance } from './CreateFormInstance.ts';
5
5
  import { EditFormInstance } from './EditFormInstance.ts';
6
+ import { ResetFormInstance } from './ResetFormInstance.ts';
6
7
  import { RestoreFormInstance } from './RestoreFormInstance.ts';
7
8
  export type { LoadFormFailureError };
8
9
  export type FormResultStatus = 'success' | 'warning' | 'failure';
@@ -22,6 +23,7 @@ interface BaseLoadFormResult {
22
23
  readonly warnings: LoadFormWarnings | null;
23
24
  readonly error: LoadFormFailureError | null;
24
25
  readonly createInstance: FallibleLoadFormResultMethod<CreateFormInstance>;
26
+ readonly resetInstance: FallibleLoadFormResultMethod<ResetFormInstance>;
25
27
  readonly editInstance: FallibleLoadFormResultMethod<EditFormInstance>;
26
28
  readonly restoreInstance: FallibleLoadFormResultMethod<RestoreFormInstance>;
27
29
  }
@@ -30,6 +32,7 @@ export interface LoadFormSuccessResult extends BaseLoadFormResult {
30
32
  readonly warnings: null;
31
33
  readonly error: null;
32
34
  readonly createInstance: CreateFormInstance;
35
+ readonly resetInstance: ResetFormInstance;
33
36
  readonly editInstance: EditFormInstance;
34
37
  readonly restoreInstance: RestoreFormInstance;
35
38
  }
@@ -38,6 +41,7 @@ export interface LoadFormWarningResult extends BaseLoadFormResult {
38
41
  readonly warnings: LoadFormWarnings;
39
42
  readonly error: null;
40
43
  readonly createInstance: CreateFormInstance;
44
+ readonly resetInstance: ResetFormInstance;
41
45
  readonly editInstance: EditFormInstance;
42
46
  readonly restoreInstance: RestoreFormInstance;
43
47
  }
@@ -45,22 +49,9 @@ export interface LoadFormFailureResult extends BaseLoadFormResult {
45
49
  readonly status: 'failure';
46
50
  readonly warnings: LoadFormWarnings | null;
47
51
  readonly error: LoadFormFailureError;
48
- /**
49
- * @example A temporary demo integration was built during development of this
50
- * interface.
51
- *
52
- * @see
53
- * {@link https://github.com/getodk/web-forms/pull/345/commits/9ef36355d89dd1450d3a87c3a55506bb9b0fc414}
54
- */
55
52
  readonly createInstance: FailedLoadFormResultMethod<CreateFormInstance>;
53
+ readonly resetInstance: FailedLoadFormResultMethod<ResetFormInstance>;
56
54
  readonly editInstance: FailedLoadFormResultMethod<EditFormInstance>;
57
- /**
58
- * @example A temporary demo integration was built during development of this
59
- * interface.
60
- *
61
- * @see
62
- * {@link https://github.com/getodk/web-forms/pull/345/commits/9ef36355d89dd1450d3a87c3a55506bb9b0fc414}
63
- */
64
55
  readonly restoreInstance: FailedLoadFormResultMethod<RestoreFormInstance>;
65
56
  }
66
57
  export type InstantiableLoadFormResult = LoadFormSuccessResult | LoadFormWarningResult;
@@ -0,0 +1,13 @@
1
+ import { CreatedFormInstance } from './CreateFormInstance.ts';
2
+ import { FormInstanceConfig } from './FormInstanceConfig.ts';
3
+ /**
4
+ * @todo This is fallible! Client-facing interfaces will need to account for
5
+ * this. We've begun addressing fallibility _at the interface level_ in
6
+ * {@link LoadForm} (with {@link LoadFormResult}). We'll eventually have a more
7
+ * general interface pattern for this, and we'll apply it here as well. The baby
8
+ * step approach in {@link LoadFormResult} is impractical here due to
9
+ * engine-internal designs, and revising that is currently out of scope. As
10
+ * such, explicit interface-level documentation of fallibility is deferred here,
11
+ * on {@link RootNode} itself, and into any of its sub-interfaces.
12
+ */
13
+ export type ResetFormInstance = (config?: FormInstanceConfig) => CreatedFormInstance;
@@ -15,6 +15,7 @@ export declare abstract class BaseFormResult<Status extends FormResultStatus> {
15
15
  readonly warnings: BaseFormResultProperty<Status, 'warnings'>;
16
16
  readonly error: BaseFormResultProperty<Status, 'error'>;
17
17
  abstract readonly createInstance: BaseFormResultProperty<Status, 'createInstance'>;
18
+ abstract readonly resetInstance: BaseFormResultProperty<Status, 'resetInstance'>;
18
19
  abstract readonly editInstance: BaseFormResultProperty<Status, 'editInstance'>;
19
20
  abstract readonly restoreInstance: BaseFormResultProperty<Status, 'restoreInstance'>;
20
21
  constructor(options: BaseFormResultOptions<Status>);
@@ -1,5 +1,6 @@
1
1
  import { CreateFormInstance } from '../../client/form/CreateFormInstance.ts';
2
2
  import { EditFormInstance } from '../../client/form/EditFormInstance.ts';
3
+ import { ResetFormInstance } from '../../client/form/ResetFormInstance.ts';
3
4
  import { RestoreFormInstance } from '../../client/form/RestoreFormInstance.ts';
4
5
  import { BasePrimaryInstanceOptions } from '../../instance/PrimaryInstance.ts';
5
6
  import { FormResource } from '../../instance/resource.ts';
@@ -17,6 +18,7 @@ export interface BaseInstantiableFormResultOptions<Status extends InstantiableFo
17
18
  }
18
19
  export declare abstract class BaseInstantiableFormResult<Status extends InstantiableFormResultStatus> extends BaseFormResult<Status> {
19
20
  readonly createInstance: CreateFormInstance;
21
+ readonly resetInstance: ResetFormInstance;
20
22
  readonly editInstance: EditFormInstance;
21
23
  readonly restoreInstance: RestoreFormInstance;
22
24
  constructor(options: BaseInstantiableFormResultOptions<Status>);
@@ -1,6 +1,7 @@
1
1
  import { CreateFormInstance } from '../../client/form/CreateFormInstance.ts';
2
2
  import { EditFormInstance } from '../../client/form/EditFormInstance.ts';
3
3
  import { FailedLoadFormResultMethod, LoadFormFailureResult, LoadFormWarnings } from '../../client/form/LoadFormResult.ts';
4
+ import { ResetFormInstance } from '../../client/form/ResetFormInstance.ts';
4
5
  import { RestoreFormInstance } from '../../client/form/RestoreFormInstance.ts';
5
6
  import { LoadFormFailureError } from '../../error/LoadFormFailureError.ts';
6
7
  import { BaseFormResult } from './BaseFormResult.ts';
@@ -10,6 +11,7 @@ interface FormFailureOptions {
10
11
  }
11
12
  export declare class FormFailureResult extends BaseFormResult<'failure'> implements LoadFormFailureResult {
12
13
  readonly createInstance: FailedLoadFormResultMethod<CreateFormInstance>;
14
+ readonly resetInstance: FailedLoadFormResultMethod<ResetFormInstance>;
13
15
  readonly editInstance: FailedLoadFormResultMethod<EditFormInstance>;
14
16
  readonly restoreInstance: FailedLoadFormResultMethod<RestoreFormInstance>;
15
17
  constructor(options: FormFailureOptions);
@@ -0,0 +1,19 @@
1
+ import { ReactiveScope } from '../lib/reactivity/scope';
2
+ /**
3
+ * Creates a {@link ReactiveScope | reactive scope} from which all form
4
+ * instances derive, and:
5
+ *
6
+ * - if a client loads a form within a Solid reactive context, the scope will be
7
+ * disposed along with the client's reactive context; OR
8
+ * - if a client loads a form outside a Solid reactive context (typically: if a
9
+ * client does not use Solid reactivity), the scope will disposed if and when
10
+ * the engine drops access to the loaded form
11
+ *
12
+ * **IMPORTANT:** this **MUST** be called synchronously. If it is called in an
13
+ * `async` function, it **MUST** be called before any `await` expression; if it
14
+ * is called in any other flow with mixed synchrony, it must be called before
15
+ * yielding to the event loop. Failing to do this will cause the engine to lose
16
+ * access to a client's Solid reactive context, potentially leaking form
17
+ * reactivity indefinitely.
18
+ */
19
+ export declare const createPotentiallyClientOwnedReactiveScope: () => ReactiveScope;