api_text_entities.h 831 B

123456789101112131415161718192021222324252627282930313233343536
  1. /*
  2. This file is part of Telegram Desktop,
  3. the official desktop application for the Telegram messaging service.
  4. For license and copyright information please follow this link:
  5. https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
  6. */
  7. #pragma once
  8. #include "ui/text/text_entity.h"
  9. namespace Main {
  10. class Session;
  11. } // namespace Main
  12. namespace Api {
  13. enum class ConvertOption {
  14. WithLocal,
  15. SkipLocal,
  16. };
  17. [[nodiscard]] EntitiesInText EntitiesFromMTP(
  18. Main::Session *session,
  19. const QVector<MTPMessageEntity> &entities);
  20. [[nodiscard]] MTPVector<MTPMessageEntity> EntitiesToMTP(
  21. Main::Session *session,
  22. const EntitiesInText &entities,
  23. ConvertOption option = ConvertOption::WithLocal);
  24. [[nodiscard]] TextWithEntities ParseTextWithEntities(
  25. Main::Session *session,
  26. const MTPTextWithEntities &text);
  27. } // namespace Api