Me gustaría escribir una sugerencia de mi función en TypeScript de la siguiente manera:
// would like to remove this type type FN<TArgs, TReturn> = (args: TArgs) => TReturn; interface Args { itemWeight: number; quantity: number; } const calcTotalWeight: FN<Args, number> = ({ itemWeight, quantity }) => itemWeight * quantity; ¿Hay algún genérico incorporado que proporcione esta utilidad? Actualmente, he creado uno como el anterior, pero siento que este podría ser un caso de uso muy común. Por ejemplo, reaccionar tiene FC .
Observo que este tipo requiere que su función sea unaria, pero ese es el punto aquí. Es común tener una función unaria, con el único argumento de un objeto para que podamos tener parámetros "nombrados".
¿Alguien sabe si esto existe, o si piensa si es una buena idea?
¿Alguien sabe cómo hacer que el segundo argumento del genérico sea opcional para que se infiera si no se proporciona? Por ejemplo:
const calcTotalWeight: FN<Args> = ({ itemWeight, quantity }) => itemWeight * quantity; // typeof calcTotalWeight === FN<Args, number> , or // typeof calcTotalWeight === (Args) => number