///
///
import { Destination } from "./Destination";
import { Entrance } from "./Entrance";
import { Transport } from "./Transport";
import { Props } from "../Types/Props";
import { Payload as _Payload } from "../Utilities/XState";
import { Interpreter } from "xstate";
export declare namespace Manager {
type TransferPayload = {
type: Type;
} & {
destinationID: string;
entranceID: string;
mode: ("Automatic" | "Manual");
};
type Context = (typeof context);
const context: {
destinations: EntityMap;
entranceGroups: NestedEntityMap;
transportGroups: NestedEntityMap;
};
type Payload = _Payload.Map;
type Event = {
type: "REGISTER_DESTINATION";
$: HTMLElement;
destinationID: string;
defaultPosition: Props.Destination["defaultPosition"];
transferMode: Props.Destination["transferMode"];
} | {
type: "REGISTER_ENTRANCE";
$: HTMLElement;
destinationID: string;
entranceID: string;
position: Props.Entrance["position"];
} | {
type: "REGISTER_TRANSPORT";
$: HTMLElement;
destinationID: string;
entranceID: string;
} | {
type: "UNREGISTER_DESTINATION";
destinationID: string;
unmountMode: Props.Destination["unmountMode"];
} | {
type: "UNREGISTER_ENTRANCE";
destinationID: string;
entranceID: string;
} | {
type: "UNREGISTER_TRANSPORT";
destinationID: string;
entranceID: string;
} | TransferPayload<"TRANSFER_TO_DESTINATION"> | TransferPayload<"TRANSFER_TO_ENTRANCE">;
type Machine = (typeof machine);
const machine: import("xstate").StateMachine<{
destinations: EntityMap;
entranceGroups: NestedEntityMap;
transportGroups: NestedEntityMap;
}, any, Event, {
value: any;
context: {
destinations: EntityMap;
entranceGroups: NestedEntityMap;
transportGroups: NestedEntityMap;
};
}, import("xstate").BaseActionObject, import("xstate").ServiceMap, import("xstate").ResolveTypegenMeta>;
}
declare type Entity> = {
service: T;
$: WeakRef;
};
declare type EntityMap> = Map>;
declare type NestedEntityMap> = Map>;
export {};
//# sourceMappingURL=Manager.d.ts.map