There is a bug in the createQuery function where the validate function's argument type correctly inherits the result of mapData type-wise, but the actual runtime values do not match, causing validation issues.
Check the model.ts file where query is implemented.
Observe that while TypeScript shows no type errors, the runtime behavior indicates a mismatch between the mapData result and the validate input.
Expected Behavior
The validate function should receive the correctly mapped data from mapData at runtime, ensuring proper validation.
Alternatively, if validation is intended to occur before mapData, the overload types should be adjusted accordingly to reflect this order of operations.
Actual Behavior
Despite TypeScript showing no type errors, the validate function receives data that doesn't match the expected runtime values from mapData, leading to validation failures.
Description
There is a bug in the
createQuery
function where thevalidate
function's argument type correctly inherits the result ofmapData
type-wise, but the actual runtime values do not match, causing validation issues.Steps to Reproduce
model.ts
file wherequery
is implemented.mapData
result and thevalidate
input.Expected Behavior
The
validate
function should receive the correctly mapped data frommapData
at runtime, ensuring proper validation.Alternatively, if validation is intended to occur before
mapData
, the overload types should be adjusted accordingly to reflect this order of operations.Actual Behavior
Despite TypeScript showing no type errors, the
validate
function receives data that doesn't match the expected runtime values frommapData
, leading to validation failures.