Argument of type 'PaymentMethodCcModel' is not assignable to parameter of type 'PaymentMethodModel'.
Types of property 'eachAttribute' are incompatible.
Type '<T>(callback: (this: NoInfer<T> | undefined, key: "last4" | "obfuscatedIdentifier", meta: LegacyAttributeField) => void, binding?: T | undefined) => void' is not assignable to type '<T>(callback: (this: NoInfer<T> | undefined, key: never, meta: LegacyAttributeField) => void, binding?: T | undefined) => void'.
Types of parameters 'callback' and 'callback' are incompatible.
Types of parameters 'key' and 'key' are incompatible.
Type 'string' is not assignable to type 'never'.
Type 'string' is not assignable to type 'never'.
I am guessing that the cause is the same as #9405.
we have in our project the same issue (more than one usecase with different models)... is there any workaround how we can fix it without adding // @ts-expect error ...?
Reproduction
model-upcasting-issue
npm install && npm run lint
Description
Implicit upcasting of indirect descendants of
Model
does not work when the child has an attribute or relationship that the parent does not.Source file: https://github.com/MathieuCouette/ember-data-issues/blob/d2b31433b1212b03879288990b763f9299c33e34/app/components/product.ts
I am guessing that the cause is the same as #9405.
Versions