import { EventObject, Subscribable, InvokeDefinition, AnyEventObject, StateMachine, Spawnable, SCXML, ActorRef, BaseActorRef } from './types'; export interface Actor extends Subscribable { id: string; send: (event: TEvent) => any; stop?: () => any | undefined; toJSON: () => { id: string; }; meta?: InvokeDefinition; state?: any; deferred?: boolean; } export declare function createNullActor(id: string): ActorRef; /** * Creates a deferred actor that is able to be invoked given the provided * invocation information in its `.meta` value. * * @param invokeDefinition The meta information needed to invoke the actor. */ export declare function createInvocableActor(invokeDefinition: InvokeDefinition, machine: StateMachine, context: TC, _event: SCXML.Event): ActorRef; export declare function createDeferredActor(entity: Spawnable, id: string, data?: any): ActorRef; export declare function isActor(item: any): item is ActorRef; export declare function isSpawnedActor(item: any): item is ActorRef; export declare function toActorRef = BaseActorRef>(actorRefLike: TActorRefLike): ActorRef & Omit>; //# sourceMappingURL=Actor.d.ts.map