def convert_emoji_reaction(emoji: Union[(EmojiInputType, Reaction)]) -> str:
    if isinstance(emoji, Reaction):
        emoji = emoji.emoji
    if isinstance(emoji, Emoji):
        return f'{emoji.name}:{emoji.id}'
    if isinstance(emoji, PartialEmoji):
        return emoji._as_reaction()
    if isinstance(emoji, str):
        return emoji.strip('<>')
    raise TypeError(f'emoji argument must be str, Emoji, or Reaction not {emoji.__class__.__name__}.')
def convert_emoji_reaction(emoji: Union[(EmojiInputType, Reaction)]) -> str:
    if isinstance(emoji, Reaction):
        emoji = emoji.emoji
    if isinstance(emoji, Emoji):
        return f'{emoji.name}:{emoji.id}'
    if isinstance(emoji, PartialEmoji):
        return emoji._as_reaction()
    if isinstance(emoji, str):
        return emoji.strip('<>')
    raise TypeError(f'emoji argument must be str, Emoji, or Reaction not {emoji.__class__.__name__}.')