Instead of using type assertions to narrow a type, it's better to rely on type guards, which help avoid potential runtime errors caused by unsafe type assertions.
Currently the rule is enforced in `common-utils` pkg
Dup of https://github.com/hyperdxio/hyperdx/pull/679
- Allow IDE to determine the best formatter based on settings, not force ESLint formatter (which has issues in v9)
- Added Prettier extension to VSCode extensions list.
- Updated ESLint settings to include working directories for better integration.
- Removed redundant TypeScript formatter settings.
- Excluded `.next` directory from search results in VSCode settings.
- Minor formatting adjustments in ESLint configuration files for consistency.
References: https://github.com/microsoft/vscode-eslint/issues/1826