UNPKG

@bemedev/app-solid

Version:

Middleware between @bemedev/app-ts and solidjs

55 lines 4.36 kB
import { type AnyMachine, type ContextFrom, type EventsFrom, type InterpretArgs, type State } from '@bemedev/app-ts'; import type { Decompose } from '@bemedev/decompose'; import type { types } from '@bemedev/types'; import { type Accessor } from 'solid-js'; export declare const interpret: <const M extends AnyMachine>(...[machine, config]: InterpretArgs<M>) => { readonly contains: (...values: string[]) => () => boolean; readonly context: <R = Extract<M["context"], types.PrimitiveObject>>(accessor?: ((state: Extract<M["context"], types.PrimitiveObject>) => R) | undefined, equals?: ((prev: R, next: R) => boolean) | undefined) => Accessor<R>; readonly dispose: () => Promise<void>; readonly dps: () => string[]; readonly matches: (...values: string[]) => () => boolean; readonly pause: () => void; readonly reducer: <T>(accessor: Required<[accessor?: ((state: State<Extract<M["context"], types.PrimitiveObject>, import("@bemedev/app-ts/lib/events").ToEvents<Extract<M["eventsMap"], import("@bemedev/app-ts/lib/events").EventsMap>, Extract<M["promiseesMap"], import("@bemedev/app-ts/lib/events").PromiseeMap>>> | { context: Extract<M["context"], types.PrimitiveObject>; status: import("@bemedev/app-ts").WorkingStatus; value: import("@bemedev/app-ts/lib/states").StateValue; event: EventsFrom<M>; tags?: (string | readonly string[]) | undefined; }) => T) | undefined, equals?: ((prev: T, next: T) => boolean) | undefined]>[0]) => <R = T>(accessor?: ((state: T) => R) | undefined, equals?: ((prev: R, next: R) => boolean) | undefined) => Accessor<R>; readonly resume: () => void; readonly select: ContextFrom<M> extends types.Primitive ? undefined : <D = { context: ContextFrom<M>; status: import("@bemedev/app-ts").WorkingStatus; value: import("@bemedev/app-ts/lib/states").StateValue; event: EventsFrom<M>; tags?: (string | readonly string[]) | undefined; } & Decompose<Required<{ context: ContextFrom<M>; }>, { object: "both"; start: false; }>, K extends Extract<keyof D, string> = Extract<keyof D, string>, R = D[K]>(selector: K, equals?: (prev: R, next: R) => boolean) => Accessor<R>; readonly send: (_event: import("@bemedev/app-ts/lib/events").EventArg<Extract<M["eventsMap"], import("@bemedev/app-ts/lib/events").EventsMap>>) => void; readonly start: () => Promise<void>; readonly state: <T = { context: ContextFrom<M>; status: import("@bemedev/app-ts").WorkingStatus; value: import("@bemedev/app-ts/lib/states").StateValue; event: EventsFrom<M>; tags?: (string | readonly string[]) | undefined; }>(accessor?: ((state: State<Extract<M["context"], types.PrimitiveObject>, import("@bemedev/app-ts/lib/events").ToEvents<Extract<M["eventsMap"], import("@bemedev/app-ts/lib/events").EventsMap>, Extract<M["promiseesMap"], import("@bemedev/app-ts/lib/events").PromiseeMap>>> | { context: Extract<M["context"], types.PrimitiveObject>; status: import("@bemedev/app-ts").WorkingStatus; value: import("@bemedev/app-ts/lib/states").StateValue; event: EventsFrom<M>; tags?: (string | readonly string[]) | undefined; }) => T) | undefined, equals?: ((prev: T, next: T) => boolean) | undefined) => Accessor<T>; readonly status: () => import("@bemedev/app-ts").WorkingStatus; readonly stop: () => void; readonly subscribe: import("@bemedev/app-ts").AddSubscriber_F<Extract<M["eventsMap"], import("@bemedev/app-ts/lib/events").EventsMap>, Extract<M["promiseesMap"], import("@bemedev/app-ts/lib/events").PromiseeMap>, Extract<M["context"], types.PrimitiveObject>>; readonly tags: () => string | readonly string[] | undefined; readonly value: () => import("@bemedev/app-ts/lib/states").StateValue; readonly values: string[]; readonly addOptions: import("@bemedev/app-ts").AddOptions_F<Extract<M["eventsMap"], import("@bemedev/app-ts/lib/events").EventsMap>, Extract<M["promiseesMap"], import("@bemedev/app-ts/lib/events").PromiseeMap>, import("@bemedev/app-ts").PrivateContextFrom<M>, Extract<M["context"], types.PrimitiveObject>, Extract<M["options"], Partial<Record<"actions" | "predicates" | "promises" | "delays" | "machines", any>>>>; }; //# sourceMappingURL=interpret.d.ts.map