# Source: https://github.com/quick-lint/quick-lint-js/blob/master/docs/errors/E0033.md

# E0033: redeclaration of global variable

```config-for-examples
{
  "globals": {
    "windowlib": true,
    "$": {
      "shadowable": false
    },
    "window": {
      "shadowable": false
    }
  }
}
```

Global variables listed in `quick-lint-js.config` with `"shadowable": false`
cannot be re-declared in the global scope by a JavaScript module or script:

```javascript
let window = new windowlib.Window();

let $ = (sel) => document.querySelector(sel);
$('#banana')[0].peel();
```

To fix this error, choose a different variable name, or put the variable (and
code which uses the variable) into a function:

```javascript
let qsa = (sel) => document.querySelector(sel);
qsa('#banana')[0].peel();

function createUI() {
  let myWindow = new windowlib.Window();
}
createUI();
```

Introduced in quick-lint-js version 0.2.0.