title: Unexpected mix of '||' and '&&' no-mixed-operators
body: <p>I have the following hook and we use it to bind to channels.</p>
  <pre><code>import { useEffect, useState } from &quot;react&quot;;
  import { Channel, PresenceChannel } from &quot;pusher-js&quot;;
  import PrivateChannel from 'pusher-js/types/src/core/channels/private_channel';
  import { usePusher } from &quot;./usePusher&quot;;
  
  export type ChannelType = PrivateChannel | PresenceChannel
  
  function _useChannel&lt;T extends ChannelType&gt;(channelName: string) {
      const pusher = usePusher()
      const [channel, setChannel] = useState&lt;T&gt;();
  
      useEffect(() =&gt; {
          const pusherChannel = pusher.subscribe(channelName) as T;
          setChannel(pusherChannel);
  
          return () =&gt; pusher?.unsubscribe(channelName);
      }, [channelName, pusher]);
  
      return channel;
  }
  </code></pre>
  <p>When I open the console, I see this message: <code>Unexpected mix of '||' and '&amp;&amp;'  no-mixed-operators</code></p>
  <p>Why does this happen?</p>