Just one main FSM and several slave FSMs as Objects in OOP sense.
So, I basically want to "call" methods on them which internally change state.
For example I would have UpdateData(float, float) method on SlaveFSM1 and would like to call it and use it to send two floats from MasterFSM. Or SlaveFSM2 might have a method SetPositions(Vector3, Vector3, Vector3).
Setting variables on slave FSMs looks very non-OOP style.
Having a separate proxy object to store data looks like a hack but might be viable for a while.