typescript - ¿Es posible usar el operador spread en parámetros genéricos?
Por ejemplo, con el useQuery<TQueryFnData=unknown, TError=unknown, TData=TQueryFnData, TQueryKey extends QueryKey=QueryKey> de ReactQuery, quiero hacer lo siguiente;
type QueryTypeParams = [Record<string, number>, unknown, unknown, "aKey" as const]
const {data} = useQuery<...QueryTypeParams>(
"anotherKey", // <- expects typescript error
() => {...}
)
Pero el compilador dice
La variable 'QueryTypeParams' tiene implícitamente un tipo 'any'.
en donde uso el operador de propagación.
¿Hay alguna manera de pasar parámetros genéricos de una vez?
Gracias de antemano.
Respuesta #1
Esto no es posible en este momento, pero hay una discusión sobre esta función en GitHub.
Respuesta #2
Desafortunadamente, no creo que sea posible pasar parámetros genéricos de una vez. Tienes que proporcionar cada tipo por separado.