type FuncWithMultipleSignatures = ((arg: number) => void) | ((arg1: string, arg2: boolean) => void);
function myFunction(func: FuncWithMultipleSignatures) {
// 函数体
}
上述代码中,我们首先定义了 FuncWithMultipleSignatures
类型别名,它定义了函数可能有两种不同的签名,即接受一个数字参数的签名和接受一个字符串和布尔值参数的签名。
然后,我们定义了 myFunction
函数,它接受一个类型为 FuncWithMultipleSignatures
的参数 func
,我们可以在函数体内根据传入的不同类型的函数做出相应的处理。