solid-js 1.9.2 → 1.9.4

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 (52) hide show
  1. package/dist/dev.cjs +5 -5
  2. package/dist/dev.js +563 -322
  3. package/dist/server.cjs +50 -10
  4. package/dist/server.js +220 -83
  5. package/dist/solid.cjs +5 -5
  6. package/dist/solid.js +490 -280
  7. package/h/dist/h.js +40 -9
  8. package/h/jsx-runtime/dist/jsx.js +1 -1
  9. package/h/jsx-runtime/types/index.d.ts +11 -8
  10. package/h/jsx-runtime/types/jsx.d.ts +93 -91
  11. package/h/types/hyperscript.d.ts +11 -11
  12. package/html/dist/html.js +219 -94
  13. package/html/types/lit.d.ts +52 -33
  14. package/package.json +1 -1
  15. package/store/dist/dev.cjs +1 -1
  16. package/store/dist/dev.js +123 -43
  17. package/store/dist/server.js +20 -8
  18. package/store/dist/store.cjs +1 -1
  19. package/store/dist/store.js +114 -40
  20. package/store/types/index.d.ts +21 -7
  21. package/store/types/modifiers.d.ts +6 -3
  22. package/store/types/mutable.d.ts +5 -2
  23. package/store/types/server.d.ts +25 -5
  24. package/store/types/store.d.ts +218 -61
  25. package/types/index.d.ts +75 -10
  26. package/types/jsx.d.ts +143 -157
  27. package/types/reactive/array.d.ts +12 -4
  28. package/types/reactive/observable.d.ts +25 -17
  29. package/types/reactive/scheduler.d.ts +9 -6
  30. package/types/reactive/signal.d.ts +233 -142
  31. package/types/render/Suspense.d.ts +5 -5
  32. package/types/render/component.d.ts +71 -35
  33. package/types/render/flow.d.ts +43 -31
  34. package/types/render/hydration.d.ts +15 -15
  35. package/types/server/index.d.ts +57 -2
  36. package/types/server/reactive.d.ts +73 -42
  37. package/types/server/rendering.d.ts +169 -98
  38. package/universal/dist/dev.js +28 -12
  39. package/universal/dist/universal.js +28 -12
  40. package/universal/types/index.d.ts +3 -1
  41. package/universal/types/universal.d.ts +0 -1
  42. package/web/dist/dev.js +639 -89
  43. package/web/dist/server.cjs +18 -13
  44. package/web/dist/server.js +657 -120
  45. package/web/dist/web.js +627 -87
  46. package/web/storage/dist/storage.js +3 -3
  47. package/web/types/client.d.ts +1 -1
  48. package/web/types/core.d.ts +10 -1
  49. package/web/types/index.d.ts +27 -10
  50. package/web/types/server-mock.d.ts +47 -32
  51. package/web/types/server.d.ts +1 -1
  52. package/web/storage/types/index.js +0 -13
@@ -11,7 +11,7 @@ export type Component<P extends Record<string, any> = {}> = (props: P) => JSX.El
11
11
  * would silently throw them away.
12
12
  */
13
13
  export type VoidProps<P extends Record<string, any> = {}> = P & {
14
- children?: never;
14
+ children?: never;
15
15
  };
16
16
  /**
17
17
  * `VoidComponent` forbids the `children` prop.
@@ -25,7 +25,7 @@ export type VoidComponent<P extends Record<string, any> = {}> = Component<VoidPr
25
25
  * Use this for components that you want to accept children.
26
26
  */
27
27
  export type ParentProps<P extends Record<string, any> = {}> = P & {
28
- children?: JSX.Element;
28
+ children?: JSX.Element;
29
29
  };
30
30
  /**
31
31
  * `ParentComponent` allows an optional `children` prop with the usual
@@ -40,7 +40,7 @@ export type ParentComponent<P extends Record<string, any> = {}> = Component<Pare
40
40
  * Note that all JSX <Elements> are of the type `JSX.Element`.
41
41
  */
42
42
  export type FlowProps<P extends Record<string, any> = {}, C = JSX.Element> = P & {
43
- children: C;
43
+ children: C;
44
44
  };
45
45
  /**
46
46
  * `FlowComponent` requires a `children` prop with the specified type.
@@ -48,7 +48,9 @@ export type FlowProps<P extends Record<string, any> = {}, C = JSX.Element> = P &
48
48
  * typically a function that receives specific argument types.
49
49
  * Note that all JSX <Elements> are of the type `JSX.Element`.
50
50
  */
51
- export type FlowComponent<P extends Record<string, any> = {}, C = JSX.Element> = Component<FlowProps<P, C>>;
51
+ export type FlowComponent<P extends Record<string, any> = {}, C = JSX.Element> = Component<
52
+ FlowProps<P, C>
53
+ >;
52
54
  /** @deprecated: use `ParentProps` instead */
53
55
  export type PropsWithChildren<P extends Record<string, any> = {}> = ParentProps<P>;
54
56
  export type ValidComponent = keyof JSX.IntrinsicElements | Component<any> | (string & {});
@@ -59,53 +61,87 @@ export type ValidComponent = keyof JSX.IntrinsicElements | Component<any> | (str
59
61
  * ComponentProps<typeof Portal> // { mount?: Node; useShadow?: boolean; children: JSX.Element }
60
62
  * ComponentProps<'div'> // JSX.HTMLAttributes<HTMLDivElement>
61
63
  */
62
- export type ComponentProps<T extends ValidComponent> = T extends Component<infer P> ? P : T extends keyof JSX.IntrinsicElements ? JSX.IntrinsicElements[T] : Record<string, unknown>;
64
+ export type ComponentProps<T extends ValidComponent> = T extends Component<infer P>
65
+ ? P
66
+ : T extends keyof JSX.IntrinsicElements
67
+ ? JSX.IntrinsicElements[T]
68
+ : Record<string, unknown>;
63
69
  /**
64
70
  * Type of `props.ref`, for use in `Component` or `props` typing.
65
71
  *
66
72
  * @example Component<{ref: Ref<Element>}>
67
73
  */
68
74
  export type Ref<T> = T | ((val: T) => void);
69
- export declare function createComponent<T extends Record<string, any>>(Comp: Component<T>, props: T): JSX.Element;
75
+ export declare function createComponent<T extends Record<string, any>>(
76
+ Comp: Component<T>,
77
+ props: T
78
+ ): JSX.Element;
70
79
  type DistributeOverride<T, F> = T extends undefined ? F : T;
71
- type Override<T, U> = T extends any ? U extends any ? {
72
- [K in keyof T]: K extends keyof U ? DistributeOverride<U[K], T[K]> : T[K];
73
- } & {
74
- [K in keyof U]: K extends keyof T ? DistributeOverride<U[K], T[K]> : U[K];
75
- } : T & U : T & U;
76
- type OverrideSpread<T, U> = T extends any ? {
77
- [K in keyof ({
80
+ type Override<T, U> = T extends any
81
+ ? U extends any
82
+ ? {
83
+ [K in keyof T]: K extends keyof U ? DistributeOverride<U[K], T[K]> : T[K];
84
+ } & {
85
+ [K in keyof U]: K extends keyof T ? DistributeOverride<U[K], T[K]> : U[K];
86
+ }
87
+ : T & U
88
+ : T & U;
89
+ type OverrideSpread<T, U> = T extends any
90
+ ? {
91
+ [K in keyof ({
78
92
  [K in keyof T]: any;
79
- } & {
93
+ } & {
80
94
  [K in keyof U]?: any;
81
- } & {
95
+ } & {
82
96
  [K in U extends any ? keyof U : keyof U]?: any;
83
- })]: K extends keyof T ? Exclude<U extends any ? U[K & keyof U] : never, undefined> | T[K] : U extends any ? U[K & keyof U] : never;
84
- } : T & U;
85
- type Simplify<T> = T extends any ? {
86
- [K in keyof T]: T[K];
87
- } : T;
97
+ })]: K extends keyof T
98
+ ? Exclude<U extends any ? U[K & keyof U] : never, undefined> | T[K]
99
+ : U extends any
100
+ ? U[K & keyof U]
101
+ : never;
102
+ }
103
+ : T & U;
104
+ type Simplify<T> = T extends any
105
+ ? {
106
+ [K in keyof T]: T[K];
107
+ }
108
+ : T;
88
109
  type _MergeProps<T extends unknown[], Curr = {}> = T extends [
89
- infer Next | (() => infer Next),
90
- ...infer Rest
91
- ] ? _MergeProps<Rest, Override<Curr, Next>> : T extends [...infer Rest, infer Next | (() => infer Next)] ? Override<_MergeProps<Rest, Curr>, Next> : T extends [] ? Curr : T extends (infer I | (() => infer I))[] ? OverrideSpread<Curr, I> : Curr;
110
+ infer Next | (() => infer Next),
111
+ ...infer Rest
112
+ ]
113
+ ? _MergeProps<Rest, Override<Curr, Next>>
114
+ : T extends [...infer Rest, infer Next | (() => infer Next)]
115
+ ? Override<_MergeProps<Rest, Curr>, Next>
116
+ : T extends []
117
+ ? Curr
118
+ : T extends (infer I | (() => infer I))[]
119
+ ? OverrideSpread<Curr, I>
120
+ : Curr;
92
121
  export type MergeProps<T extends unknown[]> = Simplify<_MergeProps<T>>;
93
122
  export declare function mergeProps<T extends unknown[]>(...sources: T): MergeProps<T>;
94
123
  export type SplitProps<T, K extends (readonly (keyof T)[])[]> = [
95
- ...{
96
- [P in keyof K]: P extends `${number}` ? Pick<T, Extract<K[P], readonly (keyof T)[]>[number]> : never;
97
- },
98
- {
99
- [P in keyof T as Exclude<P, K[number][number]>]: T[P];
100
- }
124
+ ...{
125
+ [P in keyof K]: P extends `${number}`
126
+ ? Pick<T, Extract<K[P], readonly (keyof T)[]>[number]>
127
+ : never;
128
+ },
129
+ {
130
+ [P in keyof T as Exclude<P, K[number][number]>]: T[P];
131
+ }
101
132
  ];
102
- export declare function splitProps<T extends Record<any, any>, K extends [readonly (keyof T)[], ...(readonly (keyof T)[])[]]>(props: T, ...keys: K): SplitProps<T, K>;
103
- export declare function lazy<T extends Component<any>>(fn: () => Promise<{
133
+ export declare function splitProps<
134
+ T extends Record<any, any>,
135
+ K extends [readonly (keyof T)[], ...(readonly (keyof T)[])[]]
136
+ >(props: T, ...keys: K): SplitProps<T, K>;
137
+ export declare function lazy<T extends Component<any>>(
138
+ fn: () => Promise<{
139
+ default: T;
140
+ }>
141
+ ): T & {
142
+ preload: () => Promise<{
104
143
  default: T;
105
- }>): T & {
106
- preload: () => Promise<{
107
- default: T;
108
- }>;
144
+ }>;
109
145
  };
110
146
  export declare function createUniqueId(): string;
111
147
  export {};
@@ -14,9 +14,9 @@ import type { JSX } from "../jsx.js";
14
14
  * @description https://docs.solidjs.com/reference/components/for
15
15
  */
16
16
  export declare function For<T extends readonly any[], U extends JSX.Element>(props: {
17
- each: T | undefined | null | false;
18
- fallback?: JSX.Element;
19
- children: (item: T[number], index: Accessor<number>) => U;
17
+ each: T | undefined | null | false;
18
+ fallback?: JSX.Element;
19
+ children: (item: T[number], index: Accessor<number>) => U;
20
20
  }): JSX.Element;
21
21
  /**
22
22
  * Non-keyed iteration over a list creating elements from its items
@@ -32,26 +32,32 @@ export declare function For<T extends readonly any[], U extends JSX.Element>(pro
32
32
  * @description https://docs.solidjs.com/reference/components/index
33
33
  */
34
34
  export declare function Index<T extends readonly any[], U extends JSX.Element>(props: {
35
- each: T | undefined | null | false;
36
- fallback?: JSX.Element;
37
- children: (item: Accessor<T[number]>, index: number) => U;
35
+ each: T | undefined | null | false;
36
+ fallback?: JSX.Element;
37
+ children: (item: Accessor<T[number]>, index: number) => U;
38
38
  }): JSX.Element;
39
39
  type RequiredParameter<T> = T extends () => unknown ? never : T;
40
40
  /**
41
41
  * Conditionally render its children or an optional fallback component
42
42
  * @description https://docs.solidjs.com/reference/components/show
43
43
  */
44
- export declare function Show<T, TRenderFunction extends (item: Accessor<NonNullable<T>>) => JSX.Element>(props: {
45
- when: T | undefined | null | false;
46
- keyed?: false;
47
- fallback?: JSX.Element;
48
- children: JSX.Element | RequiredParameter<TRenderFunction>;
44
+ export declare function Show<
45
+ T,
46
+ TRenderFunction extends (item: Accessor<NonNullable<T>>) => JSX.Element
47
+ >(props: {
48
+ when: T | undefined | null | false;
49
+ keyed?: false;
50
+ fallback?: JSX.Element;
51
+ children: JSX.Element | RequiredParameter<TRenderFunction>;
49
52
  }): JSX.Element;
50
- export declare function Show<T, TRenderFunction extends (item: NonNullable<T>) => JSX.Element>(props: {
51
- when: T | undefined | null | false;
52
- keyed: true;
53
- fallback?: JSX.Element;
54
- children: JSX.Element | RequiredParameter<TRenderFunction>;
53
+ export declare function Show<
54
+ T,
55
+ TRenderFunction extends (item: NonNullable<T>) => JSX.Element
56
+ >(props: {
57
+ when: T | undefined | null | false;
58
+ keyed: true;
59
+ fallback?: JSX.Element;
60
+ children: JSX.Element | RequiredParameter<TRenderFunction>;
55
61
  }): JSX.Element;
56
62
  /**
57
63
  * Switches between content based on mutually exclusive conditions
@@ -68,13 +74,13 @@ export declare function Show<T, TRenderFunction extends (item: NonNullable<T>) =
68
74
  * @description https://docs.solidjs.com/reference/components/switch-and-match
69
75
  */
70
76
  export declare function Switch(props: {
71
- fallback?: JSX.Element;
72
- children: JSX.Element;
77
+ fallback?: JSX.Element;
78
+ children: JSX.Element;
73
79
  }): JSX.Element;
74
80
  export type MatchProps<T> = {
75
- when: T | undefined | null | false;
76
- keyed?: boolean;
77
- children: JSX.Element | ((item: NonNullable<T> | Accessor<NonNullable<T>>) => JSX.Element);
81
+ when: T | undefined | null | false;
82
+ keyed?: boolean;
83
+ children: JSX.Element | ((item: NonNullable<T> | Accessor<NonNullable<T>>) => JSX.Element);
78
84
  };
79
85
  /**
80
86
  * Selects a content based on condition when inside a `<Switch>` control flow
@@ -85,15 +91,21 @@ export type MatchProps<T> = {
85
91
  * ```
86
92
  * @description https://docs.solidjs.com/reference/components/switch-and-match
87
93
  */
88
- export declare function Match<T, TRenderFunction extends (item: Accessor<NonNullable<T>>) => JSX.Element>(props: {
89
- when: T | undefined | null | false;
90
- keyed?: false;
91
- children: JSX.Element | RequiredParameter<TRenderFunction>;
94
+ export declare function Match<
95
+ T,
96
+ TRenderFunction extends (item: Accessor<NonNullable<T>>) => JSX.Element
97
+ >(props: {
98
+ when: T | undefined | null | false;
99
+ keyed?: false;
100
+ children: JSX.Element | RequiredParameter<TRenderFunction>;
92
101
  }): JSX.Element;
93
- export declare function Match<T, TRenderFunction extends (item: NonNullable<T>) => JSX.Element>(props: {
94
- when: T | undefined | null | false;
95
- keyed: true;
96
- children: JSX.Element | RequiredParameter<TRenderFunction>;
102
+ export declare function Match<
103
+ T,
104
+ TRenderFunction extends (item: NonNullable<T>) => JSX.Element
105
+ >(props: {
106
+ when: T | undefined | null | false;
107
+ keyed: true;
108
+ children: JSX.Element | RequiredParameter<TRenderFunction>;
97
109
  }): JSX.Element;
98
110
  export declare function resetErrorBoundaries(): void;
99
111
  /**
@@ -112,7 +124,7 @@ export declare function resetErrorBoundaries(): void;
112
124
  * @description https://docs.solidjs.com/reference/components/error-boundary
113
125
  */
114
126
  export declare function ErrorBoundary(props: {
115
- fallback: JSX.Element | ((err: any, reset: () => void) => JSX.Element);
116
- children: JSX.Element;
127
+ fallback: JSX.Element | ((err: any, reset: () => void) => JSX.Element);
128
+ children: JSX.Element;
117
129
  }): JSX.Element;
118
130
  export {};
@@ -1,22 +1,22 @@
1
1
  import { Computation } from "../reactive/signal.js";
2
2
  export type HydrationContext = {
3
- id: string;
4
- count: number;
3
+ id: string;
4
+ count: number;
5
5
  };
6
6
  type SharedConfig = {
7
- context?: HydrationContext;
8
- resources?: {
9
- [key: string]: any;
10
- };
11
- load?: (id: string) => Promise<any> | any;
12
- has?: (id: string) => boolean;
13
- gather?: (key: string) => void;
14
- registry?: Map<string, Element>;
15
- done?: boolean;
16
- count?: number;
17
- effects?: Computation<any, any>[];
18
- getContextId(): string;
19
- getNextContextId(): string;
7
+ context?: HydrationContext;
8
+ resources?: {
9
+ [key: string]: any;
10
+ };
11
+ load?: (id: string) => Promise<any> | any;
12
+ has?: (id: string) => boolean;
13
+ gather?: (key: string) => void;
14
+ registry?: Map<string, Element>;
15
+ done?: boolean;
16
+ count?: number;
17
+ effects?: Computation<any, any>[];
18
+ getContextId(): string;
19
+ getNextContextId(): string;
20
20
  };
21
21
  export declare const sharedConfig: SharedConfig;
22
22
  export declare function setHydrateContext(context?: HydrationContext): void;
@@ -1,3 +1,58 @@
1
- export { catchError, createRoot, createSignal, createComputed, createRenderEffect, createEffect, createReaction, createDeferred, createSelector, createMemo, getListener, onMount, onCleanup, onError, untrack, batch, on, children, createContext, useContext, getOwner, runWithOwner, equalFn, requestCallback, mapArray, indexArray, observable, from, $PROXY, $DEVCOMP, $TRACK, DEV, enableExternalSource } from "./reactive.js";
2
- export { mergeProps, splitProps, createComponent, For, Index, Show, Switch, Match, ErrorBoundary, Suspense, SuspenseList, createResource, resetErrorBoundaries, enableScheduling, enableHydration, startTransition, useTransition, createUniqueId, lazy, sharedConfig } from "./rendering.js";
1
+ export {
2
+ catchError,
3
+ createRoot,
4
+ createSignal,
5
+ createComputed,
6
+ createRenderEffect,
7
+ createEffect,
8
+ createReaction,
9
+ createDeferred,
10
+ createSelector,
11
+ createMemo,
12
+ getListener,
13
+ onMount,
14
+ onCleanup,
15
+ onError,
16
+ untrack,
17
+ batch,
18
+ on,
19
+ children,
20
+ createContext,
21
+ useContext,
22
+ getOwner,
23
+ runWithOwner,
24
+ equalFn,
25
+ requestCallback,
26
+ mapArray,
27
+ indexArray,
28
+ observable,
29
+ from,
30
+ $PROXY,
31
+ $DEVCOMP,
32
+ $TRACK,
33
+ DEV,
34
+ enableExternalSource
35
+ } from "./reactive.js";
36
+ export {
37
+ mergeProps,
38
+ splitProps,
39
+ createComponent,
40
+ For,
41
+ Index,
42
+ Show,
43
+ Switch,
44
+ Match,
45
+ ErrorBoundary,
46
+ Suspense,
47
+ SuspenseList,
48
+ createResource,
49
+ resetErrorBoundaries,
50
+ enableScheduling,
51
+ enableHydration,
52
+ startTransition,
53
+ useTransition,
54
+ createUniqueId,
55
+ lazy,
56
+ sharedConfig
57
+ } from "./rendering.js";
3
58
  export type { Component, Resource } from "./rendering.js";
@@ -4,87 +4,118 @@ export declare const $TRACK: unique symbol;
4
4
  export declare const $DEVCOMP: unique symbol;
5
5
  export declare const DEV: undefined;
6
6
  export type Accessor<T> = () => T;
7
- export type Setter<T> = undefined extends T ? <U extends T>(value?: (U extends Function ? never : U) | ((prev?: T) => U)) => U : <U extends T>(value: (U extends Function ? never : U) | ((prev: T) => U)) => U;
7
+ export type Setter<T> = undefined extends T
8
+ ? <U extends T>(value?: (U extends Function ? never : U) | ((prev?: T) => U)) => U
9
+ : <U extends T>(value: (U extends Function ? never : U) | ((prev: T) => U)) => U;
8
10
  export type Signal<T> = [get: Accessor<T>, set: Setter<T>];
9
11
  export declare function castError(err: unknown): Error;
10
12
  export declare let Owner: Owner | null;
11
13
  interface Owner {
12
- owner: Owner | null;
13
- context: any | null;
14
- owned: Owner[] | null;
15
- cleanups: (() => void)[] | null;
14
+ owner: Owner | null;
15
+ context: any | null;
16
+ owned: Owner[] | null;
17
+ cleanups: (() => void)[] | null;
16
18
  }
17
19
  export declare function createOwner(): Owner;
18
- export declare function createRoot<T>(fn: (dispose: () => void) => T, detachedOwner?: typeof Owner): T;
19
- export declare function createSignal<T>(value: T, options?: {
20
+ export declare function createRoot<T>(
21
+ fn: (dispose: () => void) => T,
22
+ detachedOwner?: typeof Owner
23
+ ): T;
24
+ export declare function createSignal<T>(
25
+ value: T,
26
+ options?: {
20
27
  equals?: false | ((prev: T, next: T) => boolean);
21
28
  name?: string;
22
- }): [get: () => T, set: (v: (T extends Function ? never : T) | ((prev: T) => T)) => T];
29
+ }
30
+ ): [get: () => T, set: (v: (T extends Function ? never : T) | ((prev: T) => T)) => T];
23
31
  export declare function createComputed<T>(fn: (v?: T) => T, value?: T): void;
24
32
  export declare const createRenderEffect: typeof createComputed;
25
33
  export declare function createEffect<T>(fn: (v?: T) => T, value?: T): void;
26
34
  export declare function createReaction(fn: () => void): (fn: () => void) => void;
27
35
  export declare function createMemo<T>(fn: (v?: T) => T, value?: T): () => T;
28
36
  export declare function createDeferred<T>(source: () => T): () => T;
29
- export declare function createSelector<T>(source: () => T, fn?: (k: T, value: T) => boolean): (k: T) => boolean;
37
+ export declare function createSelector<T>(
38
+ source: () => T,
39
+ fn?: (k: T, value: T) => boolean
40
+ ): (k: T) => boolean;
30
41
  export declare function batch<T>(fn: () => T): T;
31
42
  export declare const untrack: typeof batch;
32
- export declare function on<T, U>(deps: Array<() => T> | (() => T), fn: (value: Array<T> | T, prev?: Array<T> | T, prevResults?: U) => U, options?: {
43
+ export declare function on<T, U>(
44
+ deps: Array<() => T> | (() => T),
45
+ fn: (value: Array<T> | T, prev?: Array<T> | T, prevResults?: U) => U,
46
+ options?: {
33
47
  defer?: boolean;
34
- }): (prev?: U) => U | undefined;
48
+ }
49
+ ): (prev?: U) => U | undefined;
35
50
  export declare function onMount(fn: () => void): void;
36
51
  export declare function onCleanup(fn: () => void): () => void;
37
52
  export declare function cleanNode(node: Owner): void;
38
53
  export declare function catchError<T>(fn: () => T, handler: (err: Error) => void): T | undefined;
39
54
  export declare function getListener(): null;
40
55
  export interface Context<T> {
41
- id: symbol;
42
- Provider: (props: {
43
- value: T;
44
- children: any;
45
- }) => any;
46
- defaultValue?: T;
56
+ id: symbol;
57
+ Provider: (props: { value: T; children: any }) => any;
58
+ defaultValue?: T;
47
59
  }
48
60
  export declare function createContext<T>(defaultValue?: T): Context<T>;
49
61
  export declare function useContext<T>(context: Context<T>): T;
50
62
  export declare function getOwner(): Owner | null;
51
63
  type ChildrenReturn = Accessor<any> & {
52
- toArray: () => any[];
64
+ toArray: () => any[];
53
65
  };
54
66
  export declare function children(fn: () => any): ChildrenReturn;
55
67
  export declare function runWithOwner<T>(o: typeof Owner, fn: () => T): T | undefined;
56
68
  export interface Task {
57
- id: number;
58
- fn: ((didTimeout: boolean) => void) | null;
59
- startTime: number;
60
- expirationTime: number;
69
+ id: number;
70
+ fn: ((didTimeout: boolean) => void) | null;
71
+ startTime: number;
72
+ expirationTime: number;
61
73
  }
62
- export declare function requestCallback(fn: () => void, options?: {
74
+ export declare function requestCallback(
75
+ fn: () => void,
76
+ options?: {
63
77
  timeout: number;
64
- }): Task;
78
+ }
79
+ ): Task;
65
80
  export declare function cancelCallback(task: Task): void;
66
- export declare function mapArray<T, U>(list: Accessor<readonly T[] | undefined | null | false>, mapFn: (v: T, i: Accessor<number>) => U, options?: {
81
+ export declare function mapArray<T, U>(
82
+ list: Accessor<readonly T[] | undefined | null | false>,
83
+ mapFn: (v: T, i: Accessor<number>) => U,
84
+ options?: {
67
85
  fallback?: Accessor<any>;
68
- }): () => U[];
69
- export declare function indexArray<T, U>(list: Accessor<readonly T[] | undefined | null | false>, mapFn: (v: Accessor<T>, i: number) => U, options?: {
86
+ }
87
+ ): () => U[];
88
+ export declare function indexArray<T, U>(
89
+ list: Accessor<readonly T[] | undefined | null | false>,
90
+ mapFn: (v: Accessor<T>, i: number) => U,
91
+ options?: {
70
92
  fallback?: Accessor<any>;
71
- }): () => U[];
72
- export type ObservableObserver<T> = ((v: T) => void) | {
73
- next: (v: T) => void;
74
- error?: (v: any) => void;
75
- complete?: (v: boolean) => void;
76
- };
77
- export declare function observable<T>(input: Accessor<T>): {
78
- subscribe(observer: ObservableObserver<T>): {
79
- unsubscribe(): void;
93
+ }
94
+ ): () => U[];
95
+ export type ObservableObserver<T> =
96
+ | ((v: T) => void)
97
+ | {
98
+ next: (v: T) => void;
99
+ error?: (v: any) => void;
100
+ complete?: (v: boolean) => void;
80
101
  };
81
- [Symbol.observable](): any;
102
+ export declare function observable<T>(input: Accessor<T>): {
103
+ subscribe(observer: ObservableObserver<T>): {
104
+ unsubscribe(): void;
105
+ };
106
+ [Symbol.observable](): any;
82
107
  };
83
- export declare function from<T>(producer: ((setter: Setter<T>) => () => void) | {
84
- subscribe: (fn: (v: T) => void) => (() => void) | {
85
- unsubscribe: () => void;
86
- };
87
- }): Accessor<T>;
108
+ export declare function from<T>(
109
+ producer:
110
+ | ((setter: Setter<T>) => () => void)
111
+ | {
112
+ subscribe: (fn: (v: T) => void) =>
113
+ | (() => void)
114
+ | {
115
+ unsubscribe: () => void;
116
+ };
117
+ }
118
+ ): Accessor<T>;
88
119
  export declare function enableExternalSource(factory: any): void;
89
120
  /**
90
121
  * @deprecated since version 1.7.0 and will be removed in next major - use catchError instead