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 { [key: string]: unknown; [key: number]: unknown; [key: symbol]: unknown; readonly _tag: "MachineDefect";} & YieldableError<this> { [key: string]: unknown; [key: number]: unknown; [key: symbol]: unknown; constructor(...args: [props: { [key: string]: unknown; [key: number]: unknown; [key: symbol]: unknown; readonly _tag: "MachineDefect"; }, options?: MakeOptions]); 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 symbolActorTypeId type
Added in v1.0.0
Source
Signature
type ActorTypeId = typeof ActorTypeIdSerializableTypeId
Added in v1.0.0
Source
Signature
declare const SerializableTypeId: unique symbolSerializableTypeId type
Added in v1.0.0
Source
Signature
type SerializableTypeId = typeof SerializableTypeIdSignature
declare const TypeId: unique symbolSignature
type TypeId = typeof TypeId