/**
 * @template S
 * @author Alex Goldring
 * @copyright Company Named Limited (c) 2026
 */
export class MoveEdge<S> {
    /**
     * @template S
     * @param {function(S):S} f
     * @return {MoveEdge<S>}
     */
    static fromFunction<S_1>(f: (arg0: S_1) => S_1): MoveEdge<S_1>;
    /**
     *
     * @type {null|StateNode}
     */
    target: null | StateNode;
    /**
     * Move that leads from source state to the target state
     * @param {S} inputState
     * @returns S output state
     */
    move(inputState: S): void;
    /**
     *
     * @returns {boolean}
     */
    isTargetMaterialized(): boolean;
}
//# sourceMappingURL=MoveEdge.d.ts.map