Avoid unsafe declaration merging


ID: typescript-best-practices/no-unsafe-declaration-merging

Language: TypeScript

Severity: Error

Category: Error Prone


Do not merge class and interface declarations. The compiler won’t check property initialization, which might lead to runtime errors.

Non-Compliant Code Examples

interface Foo {}
class Foo {}

Compliant Code Examples

interface Foo {}
class Bar implements Foo {}

namespace Baz {}
namespace Baz {}
enum Baz {}

namespace Qux {}
function Qux() {}
https://static.datadoghq.com/static/images/logos/github_avatar.svg https://static.datadoghq.com/static/images/logos/vscode_avatar.svg jetbrains

Seamless integrations. Try Datadog Code Analysis