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.
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;
{ "@typescript-eslint/no-object-literal-type-assertion": ["error", { allowAsParameter: false // Allow type assertion in call and new expression, default false }] }