How to write JavaScript function in TypeScript code example

Example 1: typescript function

// Parameter type annotation
function greet(name: string): string {
 return name.toUpperCase();
}

console.log(greet("hello"));		// HELLO
console.log(greet(1));				// error, name is typed (string)

Example 2: typescript function type

// define your parameter's type inside the parenthesis
// define your return type after the parenthesis

function sayHello(name: string): string  {
  console.log(`Hello, ${name}`!);
}

sayHello('Bob'); // Hello, Bob!

Example 3: types function typescript

interface Better_still_safe_but_way_more_flexible_fix {
    title: string;
    callback: <T = unknown, R = unknown>(args?: T) => R;
}
interface Alternate_Syntax_4_Better_still_safe_but_way_more_flexible_fix {
    title: string;
    callback<T = unknown, R = unknown>(args?: T): R;
}