Knowing how to get the type of a function’s arguments in TypeScript will be very helpful when working with more than one function. So how to do it? Let’s go into detail now.
Get the type of a function’s arguments in TypeScript
Use Parameters<Type>
Typescript provided us with the Parameters utility type, which will help you to return a tuple type of parameters in your function.
Syntax:
parameters<Type>
Example:
// type parameterType = [string, number, [], {}] type parameterType = Parameters< (para1: string, para2: number, para3: number[], para4: {}) => void >;
Here I use the Parameters utility type to get all parameter types of the arrow function that I pass inside. Then I get a tuple of the type of that arrow function’s parameter. We can also get each element by passing the index inside square brackets with the tuple type.
Example:
// type parameterType = [string, number, [], {}] type parameterType = Parameters< (para1: string, para2: number, para3: number[], para4: {}) => void >; type para1Type = parameterType[0]; // string type para2Type = parameterType[1]; // number type para3Type = parameterType[2]; // [] type para4Type = parameterType[3]; // {}
If you have two functions and the second function want to get all type of parameters of the first function, you can apply this way.
Example:
// type parameterType = [string, number, [], {}] type parameterType = Parameters< ( para1: string, para2: number, para3: number[], para4: { freetime: string } ) => void >; type para1Type = parameterType[0]; // string type para2Type = parameterType[1]; // number type para3Type = parameterType[2]; // [] type para4Type = parameterType[3]; // {} const logInfor = ( name: para1Type, age: para2Type, id: para3Type, favourites: para4Type ) => { console.log("name: " + name); console.log("age: " + age); console.log("id: " + id); console.log("favourites: " + favourites.freetime); }; logInfor("James", 28, [15, 1, 5], { freetime: "read book, watching movie , walking", });
Output:
[LOG]: "name: James"
[LOG]: "age: 28"
[LOG]: "id: 15,1,5"
[LOG]: "favourites: reading books, watching the movie,
walking"
Use with the type of argument of an already function
You can also get the type of argument of an already function.
Example:
// type parameterType = [string, number, [], {}] const anFunction = ( para1: string, para2: number, para3: number[], para4: { freetime: string } ) => { console.log("done"); }; type parameterType = Parameters<typeof anFunction>; type para1Type = parameterType[0]; // string type para2Type = parameterType[1]; // number type para3Type = parameterType[2]; // [] type para4Type = parameterType[3]; // {}
To get the parameters’ type of already function, you need to use the typeof type of operator.
Summary
In this article, I showed and explained very detail for you how to get the type of a function’s arguments in TypeScript. You can use the Parameters utility type to do it. If you have any problems, please comment below. I will answer as possible. Thanks for reading!
Maybe you are interested:
- Using generics in Arrow functions in TypeScrip
- Solutions For Using Generics In Arrow Functions In TypeScript
- How To Declare Function With A Readonly Return Type In TypeScript

Hello, guys! I hope that my knowledge in HTML, CSS, JavaScript, TypeScript, NodeJS, ReactJS, MongoDB, Python, MySQL, and npm computer languages may be of use to you. I’m Brent Johnson, a software developer.
Name of the university: HOU
Major: IT
Programming Languages: HTML, CSS, JavaScript, TypeScript, NodeJS, ReactJS, MongoDB, PyThon, MySQL, npm