eslint/no-bitwise Restriction 
What it does 
Disallow bitwise operators
Why is this bad? 
The use of bitwise operators in JavaScript is very rare and often & or | is simply a mistyped && or ||, which will lead to unexpected behavior.
Examples 
Examples of incorrect code for this rule:
var x = y | z;var x = y ^ z;var x = y >> z;Examples of correct code for this rule:
var x = y || z;var x = y && z;var x = y > z;Options 
allow 
{ type: string[], default: [] }
The allow option permits the given list of bitwise operators to be used as exceptions to this rule.
For example { "allow": ["~"] } would allow the use of the bitwise operator ~ without restriction. Such as in the following:
~[1, 2, 3].indexOf(1) === -1;int32Hint 
{ type: boolean, default: false }
When set to true the int32Hint option allows the use of bitwise OR in |0 pattern for type casting.
For example with { "int32Hint": true } the following is permitted:
const b = a | 0;How to use 
To enable this rule in the CLI or using the config file, you can use:
oxlint --deny no-bitwise{
  "rules": {
    "no-bitwise": "error"
  }
}