Phoenix.React.Runtime behaviour
@type component() :: binary()
@type html() :: binary()
@type path() :: binary()
@type t() :: %Phoenix.React.Runtime{ component_base: path(), port: port(), render_timeout: integer() }
@callback config() :: list()
@callback render_to_static_markup(component(), map(), GenServer.from(), t()) :: {:reply, {:ok, html()}, t()} | {:reply, {:error, term()}, t()}
@callback render_to_string(component(), map(), GenServer.from(), t()) :: {:reply, {:ok, html()}, t()} | {:reply, {:error, term()}, t()}
@callback start(component_base: path(), render_timeout: integer()) :: port()