Here's a TypeScript function that checks if a given string is a palindrome, ignoring whitespace, punctuation, and capitalization:

```typescript
function isPalindrome(input: string): boolean {
  // Remove all non-alphanumeric characters and convert to lowercase
  const cleanedInput = input.replace(/[^a-zA-Z0-9]/g, '').toLowerCase();

  // Reverse the cleaned input
  const reversedInput = cleanedInput.split('').reverse().join('');

  // Check if the cleaned input is equal to its reverse
  return cleanedInput === reversedInput;
}

// Example usage:
console.log(isPalindrome("A man, a plan, a canal: Panama")); // true
console.log(isPalindrome("race a car")); // false
```

This function first removes all non-alphanumeric characters from the input string using a regular expression and converts it to lowercase. Then, it reverses the cleaned input and checks if it's equal to the original cleaned input. If they are equal, the function returns `true`, indicating that the input is a palindrome; otherwise, it returns `false`.
Write a TypeScript function that accepts a string and checks if it is a palindrome. The function should ignore whitespace, punctuation, and capitalization when determining if the string is a palindrome.
