Skip to content

Latest commit

 

History

History
33 lines (23 loc) · 845 Bytes

no-object-literal-type-assertion.md

File metadata and controls

33 lines (23 loc) · 845 Bytes

Forbids an object literal to appear in a type assertion expression (no-object-literal-type-assertion)

Always prefer const x: T = { ... }; to const x = { ... } as T;. Casting to any and unknown is still allowed, and const assertions (as const) are still allowed.

Rule Details

Examples of incorrect code for this rule.

const x = { ... } as T;

Examples of correct code for this rule.

const x: T = { ... };
const y = { ... } as any;
const z = { ... } as unknown;

Options

{
  "@typescript-eslint/no-object-literal-type-assertion": ["error", {
    allowAsParameter: false // Allow type assertion in call and new expression, default false
  }]
}

Compatibility