/**
* @param {URL | string} url
* @param {boolean} returnAsURL
* @return {URL | string}
*/
function clearURL (url, returnAsURL = url instanceof URL) {
url = new URL(url)
// ...
return returnAsURL ? url : url.toString()
}
.d.ts
файле, чтобы VS Code однозначно понимал какой тип данных будет возвращён? export function clearURL (url: URL): URL;
export function clearURL (url: string): string;
export function clearURL (url: URL | string, returnAsURL: true): URL;
export function clearURL (url: URL | string, returnAsURL: false): string;
export function clearURL (url: URL | string, returnAsURL: boolean): URL | string;