Machine
Combinators
Constructors
Signature
declare const make: { <State, Public extends Any, Private extends Any, InitErr, R>( initialize: Effect<ProcedureList<State, Public, Private, R>, InitErr, R>, ): Machine<State, Public, Private, void, InitErr, Exclude<R, Scope | MachineContext>>; <State, Public extends Any, Private extends Any, Input, InitErr, R>( initialize: Initialize<Input, State, Public, Private, R, InitErr, R>, ): Machine<State, Public, Private, Input, InitErr, Exclude<R, Scope | MachineContext>>;};makeSerializable
Added in v1.0.0
Source
Signature
declare const makeSerializable: { <State, IS, RS, Public extends All, Private extends All, InitErr, R>( options: { readonly input?: undefined; readonly state: Schema.Schema<State, IS, RS>; }, initialize: | Effect<SerializableProcedureList<State, Public, Private, R>, InitErr, R> | InitializeSerializable<void, State, Public, Private, R, InitErr, R>, ): SerializableMachine< State, Public, Private, void, InitErr, Exclude<R, Scope | MachineContext>, RS >; <State, IS, RS, Input, II, RI, Public extends All, Private extends All, InitErr, R>( options: { readonly input: Schema.Schema<Input, II, RI>; readonly state: Schema.Schema<State, IS, RS>; }, initialize: InitializeSerializable<Input, State, Public, Private, R, InitErr, R>, ): SerializableMachine< State, Public, Private, Input, InitErr, Exclude<R, Scope | MachineContext>, RS | RI >;};Signature
declare function makeWith<State, Input = void>(): { <Public extends Any, Private extends Any, InitErr, R>( initialize: Effect<ProcedureList<State, Public, Private, R>, InitErr, R>, ): Machine<State, Public, Private, void, InitErr, Exclude<R, Scope | MachineContext>>; <Public extends Any, Private extends Any, InitErr, R>( initialize: Initialize<Input, State, Public, Private, R, InitErr, R>, ): Machine<State, Public, Private, Input, InitErr, Exclude<R, Scope | MachineContext>>;};Errors
MachineDefect
Added in v1.0.0
Source
Signature
declare class MachineDefect extends any { constructor(); static wrap<A, E, R>(effect: Effect<A, E, R>): Effect<A, MachineDefect, R>;}Models
Signature
interface Actor<M extends Machine.Any> extends unknown<Machine.State<M>> { readonly [ActorTypeId]: typeof ActorTypeId; readonly input: Input<M>; readonly join: Effect<never, MachineDefect | InitError<M>>; readonly machine: M; readonly send: <Req extends any>(request: Req) => Effect<Success<Req>, Error<Req>>;}Signature
interface Machine< State, Public extends Procedure.TaggedRequest.Any, Private extends Procedure.TaggedRequest.Any, Input, InitErr, R,> extends Pipeable { readonly [TypeId]: typeof TypeId; readonly initialize: Initialize<Input, State, Public, Private, R, InitErr, R>; readonly retryPolicy: Schedule<unknown, InitErr | MachineDefect, R, never> | undefined;}SerializableActor interface
Added in v1.0.0
Source
Signature
interface SerializableActor<M extends Machine.Any> extends Actor<M> { readonly sendUnknown: ( request: unknown, ) => Effect<ExitEncoded<unknown, unknown, unknown>, ParseError>;}SerializableMachine interface
Added in v1.0.0
Source
Signature
interface SerializableMachine< State, Public extends Schema.TaggedRequest.All, Private extends Schema.TaggedRequest.All, Input, InitErr, R, SR,> extends Machine<State, Public, Private, Input, InitErr, R> { readonly [SerializableTypeId]: typeof SerializableTypeId; readonly schemaInput: any; readonly schemaState: any;}Procedures
procedures
Added in v1.0.0
Source
serializable
Added in v1.0.0
Source
Runtime
Signature
declare function boot<M extends Any>( self: M, ...__namedParameters: [Input<M>] extends [void] ? [ input?: Input, options?: { readonly previousState?: State<M>; }, ] : [ input: Input<M>, options?: { readonly previousState?: State<M>; }, ]): Effect< M extends { readonly [SerializableTypeId]: typeof SerializableTypeId; } ? SerializableActor<M> : Actor<M>, never, Scope | Context<M>>;Signature
declare function restore<State, Public extends All, Private extends All, Input, InitErr, R, SR>( self: SerializableMachine<State, Public, Private, Input, InitErr, R, SR>, snapshot: readonly [unknown, unknown],): Effect< Actor<SerializableMachine<State, Public, Private, Input, InitErr, R, SR>>, ParseError, R | SR>;Signature
declare function snapshot<State, Public extends All, Private extends All, Input, InitErr, R, SR>( self: Actor<SerializableMachine<State, Public, Private, Input, InitErr, R, SR>>,): Effect<[input: unknown, state: unknown], ParseError, SR>;Symbols
Tracing
currentTracingEnabled
Added in v1.0.0
Source
Signature
declare const currentTracingEnabled: FiberRef.FiberRef<boolean>;withTracingEnabled
Added in v1.0.0
Source
Signature
declare const withTracingEnabled: { (enabled: boolean): <A, E, R>(effect: Effect<A, E, R>) => Effect<A, E, R>; <A, E, R>(effect: Effect<A, E, R>, enabled: boolean): Effect<A, E, R>;};Type Ids
ActorTypeId
Added in v1.0.0
Source
Signature
declare const ActorTypeId: unique symbol;ActorTypeId type
Added in v1.0.0
Source
Signature
type ActorTypeId = typeof ActorTypeId;SerializableTypeId
Added in v1.0.0
Source
Signature
declare const SerializableTypeId: unique symbol;SerializableTypeId type
Added in v1.0.0
Source
Signature
type SerializableTypeId = typeof SerializableTypeId;Signature
declare const TypeId: unique symbol;Signature
type TypeId = typeof TypeId;