type Dircory<T> {
[key:string]: T
}
function colname(columns:Array<string> | string| Dictory<string>, name){
if(Array.isArray(columns){
return columns.map(column=>table_name + "." + columns);
}else if(typeof columns == "string"){
return table_name + "." + columns;
}else if(typeof columns == "object"){
return columns as Dictory<string>
}
}
That's my code, but the return type of colname always Dictory<string> whatever pass any type, how should I correctly use type guard for key-value