diff --git a/.changeset/light-sheep-give.md b/.changeset/light-sheep-give.md index 9bd48a8cb40..16e4efa030a 100644 --- a/.changeset/light-sheep-give.md +++ b/.changeset/light-sheep-give.md @@ -20,7 +20,7 @@ export const action = async (args: ActionArgs): Promise> = In this case, Typescript would not show an error even though `42` is clearly not a `string`. This happens because `json` returns a `TypedResponse`, -but because `TypedReponse` is just `Response & { json: () => Promise }` -and `Response` already defines `{ json: () => Promise }`, type erasure causes `Promise` to be used for `42`. +but because `TypedReponse` was previously just `Response & { json: () => Promise }` +and `Response` already defines `{ json: () => Promise }`, type erasure caused `Promise` to be used for `42`. To fix this, we explicitly omit the `Response`'s `json` property before intersecting with `{ json: () => Promise }`.