text: Title: Bot.******_chat_invite_link() return type does not match documentation
  Body: ## Context
  
  * Operating System: Win10
  * Python Version: 3.9.2
  * aiogram version: 2.12.1
  * aiohttp version: 3.7.4.post0
  
  ## Expected Behavior
  
  bot.create_chat_invite_link() return types.ChatInviteLink object
  bot.edit_chat_invite_link() return types.ChatInviteLink object
  bot.revoke_chat_invite_link() return types.ChatInviteLink object
  
  link to code:
  https://github.com/aiogram/aiogram/blob/79c59b34f9141427d221842662dcef2eb90a558f/aiogram/bot/bot.py#L1805
  
  ## Current Behavior
  
  all returned values is dicts
  
  ### Steps to Reproduce
  ```python
  create = await bot.create_chat_invite_link(chat_id)
  print(type(create), create)
  edit = await bot.edit_chat_invite_link(chat_id, create["invite_link"], member_limit=15)
  print(type(edit), edit)
  revoke = await bot.revoke_chat_invite_link(chat_id, create["invite_link"])
  print(type(revoke), revoke)
  ```
  
  ### Failure Logs
  
  ```python
  <class 'dict'> {'invite_link': 'https://t.me/joinchat/xxxxxxxxxxx', 'creator': {'id': xxxxxxxxxxx, 'is_bot': True, 'first_name': 'xxxxxxxxxxxx', 'username': 'xxxxxxxxxxxx'}, 'is_primary': False, 'is_revoked': False}
  <class 'dict'> {'invite_link': 'https://t.me/joinchat/xxxxxxxxxxx', 'creator': {'id': xxxxxxxxxxx, 'is_bot': True, 'first_name': 'xxxxxxxxxxxx', 'username': 'xxxxxxxxxxxx'}, 'member_limit': 15, 'is_primary': False, 'is_revoked': False}
  <class 'dict'> {'invite_link': 'https://t.me/joinchat/xxxxxxxxxxx', 'creator': {'id': xxxxxxxxxxx, 'is_bot': True, 'first_name': 'xxxxxxxxxxxx', 'username': 'xxxxxxxxxxxx'}, 'member_limit': 15, 'is_primary': False, 'is_revoked': True}
  
  ```
  