kohutd / телеграм_бот

Телеграм Бот для Мавки

Отримати
взяти "хмарний.пак.укр/телеграм_бот/0.0.1"
0.0.1
js "
const mavka = getMavka();
const context = getContext();

context.set('телеграм_бот_отримати_список_оновлень', mavka.makeWrappedAsyncProxyFunction(async ([token, lastUpdateId]) => {
  const response = await fetch(`https://api.telegram.org/bot${token}/getUpdates`, {
    method: 'post',
    body: JSON.stringify({
      offset: lastUpdateId ? lastUpdateId + 1 : null
    }),
    headers: {
      'Accept': 'application/json',
      'Content-Type': 'application/json'
    }
  });
  const data = await response.json();
  const { result } = data;

  return mavka.toCell(result);
}));

context.set('телеграм_бот_надіслати_запит', mavka.makeWrappedAsyncProxyFunction(async ([token, method, params]) => {
  const response = await fetch(`https://api.telegram.org/bot${token}/${method}`, {
    method: 'post',
    body: JSON.stringify(params),
    headers: {
      'Accept': 'application/json',
      'Content-Type': 'application/json'
    }
  });
  const data = await response.json();
  const { result } = data;

  return result;
}));

mavka.context.set('отримати_джсон', mavka.makeWrappedAsyncProxyFunction(async ([url, body]) => {
  const response = await fetch(url, {
    method: 'get',
    headers: {
      'Accept': 'application/json'
    }
  });
  const data = await response.json();

console.log(data)

  return data;
}));
"

модуль ТелеграмБот

модуль Типи
структура Оновлення
  ідентифікатор_оновлення число = undefined
  повідомлення Повідомлення = undefined
  відредаговане_повідомлення Повідомлення = undefined
  повідомлення_каналу Повідомлення = undefined
  відредаговане_повідомлення_каналу Повідомлення = undefined
  інлайн_запит ВбудованийЗапит = undefined
  вибраний_результат_інлайну ВибранийРезультатПошукуПозастроками = undefined
  запит_зворотного_виклику ЗапитЗворотньогоВиклику = undefined
  запит_на_доставку ЗапитДоставки = undefined
  запит_перед_оформленням ЗапитНапередВідшкодування = undefined
  опитування Опитування = undefined
  відповідь_на_опитування ВідповідьОпитування = undefined
  мій_учасник_чату УчасникаЧатуОновлено = undefined
  учасник_чату УчасникаЧатуОновлено = undefined
  запит_на_приєднання_до_чату ЗапитНаПриєднанняДоЧату = undefined
кінець

Оновлення.назва_типу = "Update"

Оновлення.створити_з_телеграм_обʼєкта = (то): то ? Оновлення(
  ідентифікатор_оновлення=то.update_id,
  повідомлення=Повідомлення.створити_з_телеграм_обʼєкта(то.message),
  відредаговане_повідомлення=Повідомлення.створити_з_телеграм_обʼєкта(то.edited_message),
  повідомлення_каналу=Повідомлення.створити_з_телеграм_обʼєкта(то.channel_post),
  відредаговане_повідомлення_каналу=Повідомлення.створити_з_телеграм_обʼєкта(то.edited_channel_post),
  інлайн_запит=ВбудованийЗапит.створити_з_телеграм_обʼєкта(то.inline_query),
  вибраний_результат_інлайну=ВибранийРезультатПошукуПозастроками.створити_з_телеграм_обʼєкта(то.chosen_inline_result),
  запит_зворотного_виклику=ЗапитЗворотньогоВиклику.створити_з_телеграм_обʼєкта(то.callback_query),
  запит_на_доставку=ЗапитДоставки.створити_з_телеграм_обʼєкта(то.shipping_query),
  запит_перед_оформленням=ЗапитНапередВідшкодування.створити_з_телеграм_обʼєкта(то.pre_checkout_query),
  опитування=Опитування.створити_з_телеграм_обʼєкта(то.poll),
  відповідь_на_опитування=ВідповідьОпитування.створити_з_телеграм_обʼєкта(то.poll_answer),
  мій_учасник_чату=УчасникаЧатуОновлено.створити_з_телеграм_обʼєкта(то.my_chat_member),
  учасник_чату=УчасникаЧатуОновлено.створити_з_телеграм_обʼєкта(то.chat_member),
  запит_на_приєднання_до_чату=ЗапитНаПриєднанняДоЧату.створити_з_телеграм_обʼєкта(то.chat_join_request)
) : пусто

дія Оновлення.перетворити_на_телеграм_обʼєкт()
  (
    update_id=я.ідентифікатор_оновлення,
    message=я.повідомлення,
    edited_message=я.відредаговане_повідомлення,
    channel_post=я.повідомлення_каналу,
    edited_channel_post=я.відредаговане_повідомлення_каналу,
    inline_query=я.інлайн_запит,
    chosen_inline_result=я.вибраний_результат_інлайну,
    callback_query=я.запит_зворотного_виклику,
    shipping_query=я.запит_на_доставку,
    pre_checkout_query=я.запит_перед_оформленням,
    poll=я.опитування,
    poll_answer=я.відповідь_на_опитування,
    my_chat_member=я.мій_учасник_чату,
    chat_member=я.учасник_чату,
    chat_join_request=я.запит_на_приєднання_до_чату
  )
кінець

;; ---

структура ІнформаціяПроВебгук
  урл текст = undefined
  має_власний_сертифікат логічне = undefined
  кількість_оновлень_в_очікуванні число = undefined
  інтернет_адреса текст = undefined
  дата_останньої_помилки число = undefined
  остання_повідомлення_про_помилку текст = undefined
  дата_останньої_помилки_синхронізації число = undefined
  максимальна_кількість_з'єднань число = undefined
  дозволені_оновлення Список = undefined
кінець

ІнформаціяПроВебгук.назва_типу = "WebhookInfo"

ІнформаціяПроВебгук.створити_з_телеграм_обʼєкта = (то): то ? ІнформаціяПроВебгук(
  урл=то.url,
  має_власний_сертифікат=то.has_custom_certificate,
  кількість_оновлень_в_очікуванні=то.pending_update_count,
  інтернет_адреса=то.ip_address,
  дата_останньої_помилки=то.last_error_date,
  остання_повідомлення_про_помилку=то.last_error_message,
  дата_останньої_помилки_синхронізації=то.last_synchronization_error_date,
  максимальна_кількість_з'єднань=то.max_connections,
  дозволені_оновлення=то.allowed_updates
) : пусто

дія ІнформаціяПроВебгук.перетворити_на_телеграм_обʼєкт()
  (
    url=я.урл,
    has_custom_certificate=я.має_власний_сертифікат,
    pending_update_count=я.кількість_оновлень_в_очікуванні,
    ip_address=я.інтернет_адреса,
    last_error_date=я.дата_останньої_помилки,
    last_error_message=я.остання_повідомлення_про_помилку,
    last_synchronization_error_date=я.дата_останньої_помилки_синхронізації,
    max_connections=я.максимальна_кількість_з'єднань,
    allowed_updates=я.дозволені_оновлення
  )
кінець

;; ---

структура Користувач
  ідентифікатор число = undefined
  є_ботом логічне = undefined
  ім'я текст = undefined
  прізвище текст = undefined
  ім'я_користувача текст = undefined
  код_мови текст = undefined
  є_преміум логічне = undefined
  додано_в_меню_вкладень логічне = undefined
  може_приєднуватись_до_груп логічне = undefined
  може_читати_всі_повідомлення_групи логічне = undefined
  підтримує_інлайн_запити логічне = undefined
кінець

Користувач.назва_типу = "User"

Користувач.створити_з_телеграм_обʼєкта = (то): то ? Користувач(
  ідентифікатор=то.id,
  є_ботом=то.is_bot,
  ім'я=то.first_name,
  прізвище=то.last_name,
  ім'я_користувача=то.username,
  код_мови=то.language_code,
  є_преміум=то.is_premium,
  додано_в_меню_вкладень=то.added_to_attachment_menu,
  може_приєднуватись_до_груп=то.can_join_groups,
  може_читати_всі_повідомлення_групи=то.can_read_all_group_messages,
  підтримує_інлайн_запити=то.supports_inline_queries
) : пусто

дія Користувач.перетворити_на_телеграм_обʼєкт()
  (
    id=я.ідентифікатор,
    is_bot=я.є_ботом,
    first_name=я.ім'я,
    last_name=я.прізвище,
    username=я.ім'я_користувача,
    language_code=я.код_мови,
    is_premium=я.є_преміум,
    added_to_attachment_menu=я.додано_в_меню_вкладень,
    can_join_groups=я.може_приєднуватись_до_груп,
    can_read_all_group_messages=я.може_читати_всі_повідомлення_групи,
    supports_inline_queries=я.підтримує_інлайн_запити
  )
кінець

;; ---

структура Чат
  ідентифікатор число = undefined
  тип текст = undefined
  назва текст = undefined
  ім'я_користувача текст = undefined
  ім'я текст = undefined
  прізвище текст = undefined
  є_форумом логічне = undefined
  фото ФотоЧату = undefined
  активні_імена_користувачів Список = undefined
  ідентифікатор_призначеного_емодзі текст = undefined
  біографія текст = undefined
  має_приватні_пересилання логічне = undefined
  має_обмеження_на_голосові_та_відеоповідомлення логічне = undefined
  приєднуйтесь_щоб_надсилати_повідомлення логічне = undefined
  приєднання_за_запитом логічне = undefined
  опис текст = undefined
  посилання_запрошення текст = undefined
  закріплене_повідомлення Повідомлення = undefined
  дозволи ДозволиЧату = undefined
  затримка_у_повільному_режимі число = undefined
  час_автоматичного_видалення_повідомлення число = undefined
  ввімкнено_агресивний_антиспам логічне = undefined
  є_приховані_учасники логічне = undefined
  має_захищений_контент логічне = undefined
  назва_набору_стікерів текст = undefined
  може_встановлювати_набір_стікерів логічне = undefined
  ідентифікатор_пов'язаного_чату число = undefined
  розташування МісцезнаходженняЧату = undefined
кінець

Чат.назва_типу = "Chat"

Чат.створити_з_телеграм_обʼєкта = (то): то ? Чат(
  ідентифікатор=то.id,
  тип=то.type,
  назва=то.title,
  ім'я_користувача=то.username,
  ім'я=то.first_name,
  прізвище=то.last_name,
  є_форумом=то.is_forum,
  фото=ФотоЧату.створити_з_телеграм_обʼєкта(то.photo),
  активні_імена_користувачів=то.active_usernames,
  ідентифікатор_призначеного_емодзі=то.emoji_status_custom_emoji_id,
  біографія=то.bio,
  має_приватні_пересилання=то.has_private_forwards,
  має_обмеження_на_голосові_та_відеоповідомлення=то.has_restricted_voice_and_video_messages,
  приєднуйтесь_щоб_надсилати_повідомлення=то.join_to_send_messages,
  приєднання_за_запитом=то.join_by_request,
  опис=то.description,
  посилання_запрошення=то.invite_link,
  закріплене_повідомлення=Повідомлення.створити_з_телеграм_обʼєкта(то.pinned_message),
  дозволи=ДозволиЧату.створити_з_телеграм_обʼєкта(то.permissions),
  затримка_у_повільному_режимі=то.slow_mode_delay,
  час_автоматичного_видалення_повідомлення=то.message_auto_delete_time,
  ввімкнено_агресивний_антиспам=то.has_aggressive_anti_spam_enabled,
  є_приховані_учасники=то.has_hidden_members,
  має_захищений_контент=то.has_protected_content,
  назва_набору_стікерів=то.sticker_set_name,
  може_встановлювати_набір_стікерів=то.can_set_sticker_set,
  ідентифікатор_пов'язаного_чату=то.linked_chat_id,
  розташування=МісцезнаходженняЧату.створити_з_телеграм_обʼєкта(то.location)
) : пусто

дія Чат.перетворити_на_телеграм_обʼєкт()
  (
    id=я.ідентифікатор,
    type=я.тип,
    title=я.назва,
    username=я.ім'я_користувача,
    first_name=я.ім'я,
    last_name=я.прізвище,
    is_forum=я.є_форумом,
    photo=я.фото,
    active_usernames=я.активні_імена_користувачів,
    emoji_status_custom_emoji_id=я.ідентифікатор_призначеного_емодзі,
    bio=я.біографія,
    has_private_forwards=я.має_приватні_пересилання,
    has_restricted_voice_and_video_messages=я.має_обмеження_на_голосові_та_відеоповідомлення,
    join_to_send_messages=я.приєднуйтесь_щоб_надсилати_повідомлення,
    join_by_request=я.приєднання_за_запитом,
    description=я.опис,
    invite_link=я.посилання_запрошення,
    pinned_message=я.закріплене_повідомлення,
    permissions=я.дозволи,
    slow_mode_delay=я.затримка_у_повільному_режимі,
    message_auto_delete_time=я.час_автоматичного_видалення_повідомлення,
    has_aggressive_anti_spam_enabled=я.ввімкнено_агресивний_антиспам,
    has_hidden_members=я.є_приховані_учасники,
    has_protected_content=я.має_захищений_контент,
    sticker_set_name=я.назва_набору_стікерів,
    can_set_sticker_set=я.може_встановлювати_набір_стікерів,
    linked_chat_id=я.ідентифікатор_пов'язаного_чату,
    location=я.розташування
  )
кінець

;; ---

структура Повідомлення
  ідентифікатор_повідомлення число = undefined
  ідентифікатор_теми_повідомлення число = undefined
  від Користувач = undefined
  чат_відправника Чат = undefined
  дата число = undefined
  чат Чат = undefined
  відправник_переслання Користувач = undefined
  чат_відправника_переслання Чат = undefined
  ідентифікатор_повідомлення_відправника_переслання число = undefined
  підпис_відправника_переслання текст = undefined
  ім'я_відправника_переслання текст = undefined
  дата_переслання число = undefined
  є_темою_повідомлення логічне = undefined
  автоматичне_переслання логічне = undefined
  відповідь_на_повідомлення Повідомлення = undefined
  через_бота Користувач = undefined
  дата_редагування число = undefined
  має_захищений_контент логічне = undefined
  ідентифікатор_медіагрупи текст = undefined
  підпис_автора текст = undefined
  текст текст = undefined
  сутності Список = undefined
  анімація Анімація = undefined
  аудіо Аудіо = undefined
  документ Документ = undefined
  фото Список = undefined
  стікер Стікер = undefined
  відео Відео = undefined
  відео_замітка ВідеоНотатка = undefined
  голос Голос = undefined
  підпис текст = undefined
  сутності_підпису Список = undefined
  є_спойлер_медіа логічне = undefined
  контакт Контакт = undefined
  кубик Кубик = undefined
  гра Гра = undefined
  опитування Опитування = undefined
  місце_зустрічі МісцеЗустрічі = undefined
  розташування Місцезнаходження = undefined
  нові_учасники_чату Список = undefined
  покинув_чат_учасник Користувач = undefined
  нова_назва_чату текст = undefined
  нове_фото_чату Список = undefined
  видалено_фото_чату логічне = undefined
  створено_груповий_чат логічне = undefined
  створено_супергруповий_чат логічне = undefined
  створено_канал_чату логічне = undefined
  змінено_таймер_авто_видалення_повідомлень ЗмінаТаймераАвтоВидаленняПовідомлення = undefined
  перенесено_до_ідентифікатора_чату число = undefined
  перенесено_з_ідентифікатора_чату число = undefined
  закріплене_повідомлення Повідомлення = undefined
  рахунок Рахунок = undefined
  успішна_оплата УспішнаОплата = undefined
  користувач_поділився КористувачаПоширено = undefined
  чат_поділився ЧатПоширено = undefined
  підключений_вебсайт текст = undefined
  дозволений_доступ_на_запис ДоступНаПисьмоДозволений = undefined
  паспортні_дані ДаніПаспорта = undefined
  спрацювала_близькість_сповіщень СпрацюванняБлизькості = undefined
  створена_тема_форуму ТемуФорумуСтворено = undefined
  відредагована_тема_форуму ТемуФорумуВідредаговано = undefined
  закрита_тема_форуму ТемаФорумуЗакрита = undefined
  відкрита_тема_форуму_знову ТемаФорумуВідкрита = undefined
  прихована_загальна_тема_форуму ЗагальнаТемаФорумуПрихована = undefined
  розкрита_загальна_тема_форуму ЗагальнаТемаФорумуВідкрита = undefined
  заплановано_відеочат ВідеоЧатЗаплановано = undefined
  розпочато_відеочат ВідеоЧатРозпочато = undefined
  завершено_відеочат ВідеоЧатЗавершено = undefined
  учасники_відеочату_запрошені ЗапрошенняУчасниківВідеоЧату = undefined
  дані_вебдодатку ДаніВебДодатку = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
кінець

Повідомлення.назва_типу = "Message"

Повідомлення.створити_з_телеграм_обʼєкта = (то): то ? Повідомлення(
  ідентифікатор_повідомлення=то.message_id,
  ідентифікатор_теми_повідомлення=то.message_thread_id,
  від=Користувач.створити_з_телеграм_обʼєкта(то.from),
  чат_відправника=Чат.створити_з_телеграм_обʼєкта(то.sender_chat),
  дата=то.date,
  чат=Чат.створити_з_телеграм_обʼєкта(то.chat),
  відправник_переслання=Користувач.створити_з_телеграм_обʼєкта(то.forward_from),
  чат_відправника_переслання=Чат.створити_з_телеграм_обʼєкта(то.forward_from_chat),
  ідентифікатор_повідомлення_відправника_переслання=то.forward_from_message_id,
  підпис_відправника_переслання=то.forward_signature,
  ім'я_відправника_переслання=то.forward_sender_name,
  дата_переслання=то.forward_date,
  є_темою_повідомлення=то.is_topic_message,
  автоматичне_переслання=то.is_automatic_forward,
  відповідь_на_повідомлення=Повідомлення.створити_з_телеграм_обʼєкта(то.reply_to_message),
  через_бота=Користувач.створити_з_телеграм_обʼєкта(то.via_bot),
  дата_редагування=то.edit_date,
  має_захищений_контент=то.has_protected_content,
  ідентифікатор_медіагрупи=то.media_group_id,
  підпис_автора=то.author_signature,
  текст=то.text,
  сутності=то.entities,
  анімація=Анімація.створити_з_телеграм_обʼєкта(то.animation),
  аудіо=Аудіо.створити_з_телеграм_обʼєкта(то.audio),
  документ=Документ.створити_з_телеграм_обʼєкта(то.document),
  фото=то.photo,
  стікер=Стікер.створити_з_телеграм_обʼєкта(то.sticker),
  відео=Відео.створити_з_телеграм_обʼєкта(то.video),
  відео_замітка=ВідеоНотатка.створити_з_телеграм_обʼєкта(то.video_note),
  голос=Голос.створити_з_телеграм_обʼєкта(то.voice),
  підпис=то.caption,
  сутності_підпису=то.caption_entities,
  є_спойлер_медіа=то.has_media_spoiler,
  контакт=Контакт.створити_з_телеграм_обʼєкта(то.contact),
  кубик=Кубик.створити_з_телеграм_обʼєкта(то.dice),
  гра=Гра.створити_з_телеграм_обʼєкта(то.game),
  опитування=Опитування.створити_з_телеграм_обʼєкта(то.poll),
  місце_зустрічі=МісцеЗустрічі.створити_з_телеграм_обʼєкта(то.venue),
  розташування=Місцезнаходження.створити_з_телеграм_обʼєкта(то.location),
  нові_учасники_чату=то.new_chat_members,
  покинув_чат_учасник=Користувач.створити_з_телеграм_обʼєкта(то.left_chat_member),
  нова_назва_чату=то.new_chat_title,
  нове_фото_чату=то.new_chat_photo,
  видалено_фото_чату=то.delete_chat_photo,
  створено_груповий_чат=то.group_chat_created,
  створено_супергруповий_чат=то.supergroup_chat_created,
  створено_канал_чату=то.channel_chat_created,
  змінено_таймер_авто_видалення_повідомлень=ЗмінаТаймераАвтоВидаленняПовідомлення.створити_з_телеграм_обʼєкта(то.message_auto_delete_timer_changed),
  перенесено_до_ідентифікатора_чату=то.migrate_to_chat_id,
  перенесено_з_ідентифікатора_чату=то.migrate_from_chat_id,
  закріплене_повідомлення=Повідомлення.створити_з_телеграм_обʼєкта(то.pinned_message),
  рахунок=Рахунок.створити_з_телеграм_обʼєкта(то.invoice),
  успішна_оплата=УспішнаОплата.створити_з_телеграм_обʼєкта(то.successful_payment),
  користувач_поділився=КористувачаПоширено.створити_з_телеграм_обʼєкта(то.user_shared),
  чат_поділився=ЧатПоширено.створити_з_телеграм_обʼєкта(то.chat_shared),
  підключений_вебсайт=то.connected_website,
  дозволений_доступ_на_запис=ДоступНаПисьмоДозволений.створити_з_телеграм_обʼєкта(то.write_access_allowed),
  паспортні_дані=ДаніПаспорта.створити_з_телеграм_обʼєкта(то.passport_data),
  спрацювала_близькість_сповіщень=СпрацюванняБлизькості.створити_з_телеграм_обʼєкта(то.proximity_alert_triggered),
  створена_тема_форуму=ТемуФорумуСтворено.створити_з_телеграм_обʼєкта(то.forum_topic_created),
  відредагована_тема_форуму=ТемуФорумуВідредаговано.створити_з_телеграм_обʼєкта(то.forum_topic_edited),
  закрита_тема_форуму=ТемаФорумуЗакрита.створити_з_телеграм_обʼєкта(то.forum_topic_closed),
  відкрита_тема_форуму_знову=ТемаФорумуВідкрита.створити_з_телеграм_обʼєкта(то.forum_topic_reopened),
  прихована_загальна_тема_форуму=ЗагальнаТемаФорумуПрихована.створити_з_телеграм_обʼєкта(то.general_forum_topic_hidden),
  розкрита_загальна_тема_форуму=ЗагальнаТемаФорумуВідкрита.створити_з_телеграм_обʼєкта(то.general_forum_topic_unhidden),
  заплановано_відеочат=ВідеоЧатЗаплановано.створити_з_телеграм_обʼєкта(то.video_chat_scheduled),
  розпочато_відеочат=ВідеоЧатРозпочато.створити_з_телеграм_обʼєкта(то.video_chat_started),
  завершено_відеочат=ВідеоЧатЗавершено.створити_з_телеграм_обʼєкта(то.video_chat_ended),
  учасники_відеочату_запрошені=ЗапрошенняУчасниківВідеоЧату.створити_з_телеграм_обʼєкта(то.video_chat_participants_invited),
  дані_вебдодатку=ДаніВебДодатку.створити_з_телеграм_обʼєкта(то.web_app_data),
  розмітка_відповіді=РозміткаІнлайнКлавіатури.створити_з_телеграм_обʼєкта(то.reply_markup)
) : пусто

дія Повідомлення.перетворити_на_телеграм_обʼєкт()
  (
    message_id=я.ідентифікатор_повідомлення,
    message_thread_id=я.ідентифікатор_теми_повідомлення,
    from=я.від,
    sender_chat=я.чат_відправника,
    date=я.дата,
    chat=я.чат,
    forward_from=я.відправник_переслання,
    forward_from_chat=я.чат_відправника_переслання,
    forward_from_message_id=я.ідентифікатор_повідомлення_відправника_переслання,
    forward_signature=я.підпис_відправника_переслання,
    forward_sender_name=я.ім'я_відправника_переслання,
    forward_date=я.дата_переслання,
    is_topic_message=я.є_темою_повідомлення,
    is_automatic_forward=я.автоматичне_переслання,
    reply_to_message=я.відповідь_на_повідомлення,
    via_bot=я.через_бота,
    edit_date=я.дата_редагування,
    has_protected_content=я.має_захищений_контент,
    media_group_id=я.ідентифікатор_медіагрупи,
    author_signature=я.підпис_автора,
    text=я.текст,
    entities=я.сутності,
    animation=я.анімація,
    audio=я.аудіо,
    document=я.документ,
    photo=я.фото,
    sticker=я.стікер,
    video=я.відео,
    video_note=я.відео_замітка,
    voice=я.голос,
    caption=я.підпис,
    caption_entities=я.сутності_підпису,
    has_media_spoiler=я.є_спойлер_медіа,
    contact=я.контакт,
    dice=я.кубик,
    game=я.гра,
    poll=я.опитування,
    venue=я.місце_зустрічі,
    location=я.розташування,
    new_chat_members=я.нові_учасники_чату,
    left_chat_member=я.покинув_чат_учасник,
    new_chat_title=я.нова_назва_чату,
    new_chat_photo=я.нове_фото_чату,
    delete_chat_photo=я.видалено_фото_чату,
    group_chat_created=я.створено_груповий_чат,
    supergroup_chat_created=я.створено_супергруповий_чат,
    channel_chat_created=я.створено_канал_чату,
    message_auto_delete_timer_changed=я.змінено_таймер_авто_видалення_повідомлень,
    migrate_to_chat_id=я.перенесено_до_ідентифікатора_чату,
    migrate_from_chat_id=я.перенесено_з_ідентифікатора_чату,
    pinned_message=я.закріплене_повідомлення,
    invoice=я.рахунок,
    successful_payment=я.успішна_оплата,
    user_shared=я.користувач_поділився,
    chat_shared=я.чат_поділився,
    connected_website=я.підключений_вебсайт,
    write_access_allowed=я.дозволений_доступ_на_запис,
    passport_data=я.паспортні_дані,
    proximity_alert_triggered=я.спрацювала_близькість_сповіщень,
    forum_topic_created=я.створена_тема_форуму,
    forum_topic_edited=я.відредагована_тема_форуму,
    forum_topic_closed=я.закрита_тема_форуму,
    forum_topic_reopened=я.відкрита_тема_форуму_знову,
    general_forum_topic_hidden=я.прихована_загальна_тема_форуму,
    general_forum_topic_unhidden=я.розкрита_загальна_тема_форуму,
    video_chat_scheduled=я.заплановано_відеочат,
    video_chat_started=я.розпочато_відеочат,
    video_chat_ended=я.завершено_відеочат,
    video_chat_participants_invited=я.учасники_відеочату_запрошені,
    web_app_data=я.дані_вебдодатку,
    reply_markup=я.розмітка_відповіді
  )
кінець

;; ---

структура ІдПовідомлення
  ідентифікатор_повідомлення число = undefined
кінець

ІдПовідомлення.назва_типу = "MessageId"

ІдПовідомлення.створити_з_телеграм_обʼєкта = (то): то ? ІдПовідомлення(
  ідентифікатор_повідомлення=то.message_id
) : пусто

дія ІдПовідомлення.перетворити_на_телеграм_обʼєкт()
  (
    message_id=я.ідентифікатор_повідомлення
  )
кінець

;; ---

структура СутністьПовідомлення
  тип текст = undefined
  зсув число = undefined
  довжина число = undefined
  урл текст = undefined
  користувач Користувач = undefined
  мова текст = undefined
  ідентифікатор_спеціального_емодзі текст = undefined
кінець

СутністьПовідомлення.назва_типу = "MessageEntity"

СутністьПовідомлення.створити_з_телеграм_обʼєкта = (то): то ? СутністьПовідомлення(
  тип=то.type,
  зсув=то.offset,
  довжина=то.length,
  урл=то.url,
  користувач=Користувач.створити_з_телеграм_обʼєкта(то.user),
  мова=то.language,
  ідентифікатор_спеціального_емодзі=то.custom_emoji_id
) : пусто

дія СутністьПовідомлення.перетворити_на_телеграм_обʼєкт()
  (
    type=я.тип,
    offset=я.зсув,
    length=я.довжина,
    url=я.урл,
    user=я.користувач,
    language=я.мова,
    custom_emoji_id=я.ідентифікатор_спеціального_емодзі
  )
кінець

;; ---

структура РозмірФото
  ідентифікатор_файлу текст = undefined
  унікальний_ідентифікатор_файлу текст = undefined
  ширина число = undefined
  висота число = undefined
  розмір_файлу число = undefined
кінець

РозмірФото.назва_типу = "PhotoSize"

РозмірФото.створити_з_телеграм_обʼєкта = (то): то ? РозмірФото(
  ідентифікатор_файлу=то.file_id,
  унікальний_ідентифікатор_файлу=то.file_unique_id,
  ширина=то.width,
  висота=то.height,
  розмір_файлу=то.file_size
) : пусто

дія РозмірФото.перетворити_на_телеграм_обʼєкт()
  (
    file_id=я.ідентифікатор_файлу,
    file_unique_id=я.унікальний_ідентифікатор_файлу,
    width=я.ширина,
    height=я.висота,
    file_size=я.розмір_файлу
  )
кінець

;; ---

структура Анімація
  ідентифікатор_файлу текст = undefined
  унікальний_ідентифікатор_файлу текст = undefined
  ширина число = undefined
  висота число = undefined
  тривалість число = undefined
  мініатюра РозмірФото = undefined
  ім'я_файлу текст = undefined
  мімтип текст = undefined
  розмір_файлу число = undefined
кінець

Анімація.назва_типу = "Animation"

Анімація.створити_з_телеграм_обʼєкта = (то): то ? Анімація(
  ідентифікатор_файлу=то.file_id,
  унікальний_ідентифікатор_файлу=то.file_unique_id,
  ширина=то.width,
  висота=то.height,
  тривалість=то.duration,
  мініатюра=РозмірФото.створити_з_телеграм_обʼєкта(то.thumb),
  ім'я_файлу=то.file_name,
  мімтип=то.mime_type,
  розмір_файлу=то.file_size
) : пусто

дія Анімація.перетворити_на_телеграм_обʼєкт()
  (
    file_id=я.ідентифікатор_файлу,
    file_unique_id=я.унікальний_ідентифікатор_файлу,
    width=я.ширина,
    height=я.висота,
    duration=я.тривалість,
    thumb=я.мініатюра,
    file_name=я.ім'я_файлу,
    mime_type=я.мімтип,
    file_size=я.розмір_файлу
  )
кінець

;; ---

структура Аудіо
  ідентифікатор_файлу текст = undefined
  унікальний_ідентифікатор_файлу текст = undefined
  тривалість число = undefined
  виконавець текст = undefined
  назва текст = undefined
  ім'я_файлу текст = undefined
  мімтип текст = undefined
  розмір_файлу число = undefined
  мініатюра РозмірФото = undefined
кінець

Аудіо.назва_типу = "Audio"

Аудіо.створити_з_телеграм_обʼєкта = (то): то ? Аудіо(
  ідентифікатор_файлу=то.file_id,
  унікальний_ідентифікатор_файлу=то.file_unique_id,
  тривалість=то.duration,
  виконавець=то.performer,
  назва=то.title,
  ім'я_файлу=то.file_name,
  мімтип=то.mime_type,
  розмір_файлу=то.file_size,
  мініатюра=РозмірФото.створити_з_телеграм_обʼєкта(то.thumb)
) : пусто

дія Аудіо.перетворити_на_телеграм_обʼєкт()
  (
    file_id=я.ідентифікатор_файлу,
    file_unique_id=я.унікальний_ідентифікатор_файлу,
    duration=я.тривалість,
    performer=я.виконавець,
    title=я.назва,
    file_name=я.ім'я_файлу,
    mime_type=я.мімтип,
    file_size=я.розмір_файлу,
    thumb=я.мініатюра
  )
кінець

;; ---

структура Документ
  ідентифікатор_файлу текст = undefined
  унікальний_ідентифікатор_файлу текст = undefined
  мініатюра РозмірФото = undefined
  ім'я_файлу текст = undefined
  мімтип текст = undefined
  розмір_файлу число = undefined
кінець

Документ.назва_типу = "Document"

Документ.створити_з_телеграм_обʼєкта = (то): то ? Документ(
  ідентифікатор_файлу=то.file_id,
  унікальний_ідентифікатор_файлу=то.file_unique_id,
  мініатюра=РозмірФото.створити_з_телеграм_обʼєкта(то.thumb),
  ім'я_файлу=то.file_name,
  мімтип=то.mime_type,
  розмір_файлу=то.file_size
) : пусто

дія Документ.перетворити_на_телеграм_обʼєкт()
  (
    file_id=я.ідентифікатор_файлу,
    file_unique_id=я.унікальний_ідентифікатор_файлу,
    thumb=я.мініатюра,
    file_name=я.ім'я_файлу,
    mime_type=я.мімтип,
    file_size=я.розмір_файлу
  )
кінець

;; ---

структура Відео
  ідентифікатор_файлу текст = undefined
  унікальний_ідентифікатор_файлу текст = undefined
  ширина число = undefined
  висота число = undefined
  тривалість число = undefined
  мініатюра РозмірФото = undefined
  ім'я_файлу текст = undefined
  мімтип текст = undefined
  розмір_файлу число = undefined
кінець

Відео.назва_типу = "Video"

Відео.створити_з_телеграм_обʼєкта = (то): то ? Відео(
  ідентифікатор_файлу=то.file_id,
  унікальний_ідентифікатор_файлу=то.file_unique_id,
  ширина=то.width,
  висота=то.height,
  тривалість=то.duration,
  мініатюра=РозмірФото.створити_з_телеграм_обʼєкта(то.thumb),
  ім'я_файлу=то.file_name,
  мімтип=то.mime_type,
  розмір_файлу=то.file_size
) : пусто

дія Відео.перетворити_на_телеграм_обʼєкт()
  (
    file_id=я.ідентифікатор_файлу,
    file_unique_id=я.унікальний_ідентифікатор_файлу,
    width=я.ширина,
    height=я.висота,
    duration=я.тривалість,
    thumb=я.мініатюра,
    file_name=я.ім'я_файлу,
    mime_type=я.мімтип,
    file_size=я.розмір_файлу
  )
кінець

;; ---

структура ВідеоНотатка
  ідентифікатор_файлу текст = undefined
  унікальний_ідентифікатор_файлу текст = undefined
  довжина число = undefined
  тривалість число = undefined
  мініатюра РозмірФото = undefined
  розмір_файлу число = undefined
кінець

ВідеоНотатка.назва_типу = "VideoNote"

ВідеоНотатка.створити_з_телеграм_обʼєкта = (то): то ? ВідеоНотатка(
  ідентифікатор_файлу=то.file_id,
  унікальний_ідентифікатор_файлу=то.file_unique_id,
  довжина=то.length,
  тривалість=то.duration,
  мініатюра=РозмірФото.створити_з_телеграм_обʼєкта(то.thumb),
  розмір_файлу=то.file_size
) : пусто

дія ВідеоНотатка.перетворити_на_телеграм_обʼєкт()
  (
    file_id=я.ідентифікатор_файлу,
    file_unique_id=я.унікальний_ідентифікатор_файлу,
    length=я.довжина,
    duration=я.тривалість,
    thumb=я.мініатюра,
    file_size=я.розмір_файлу
  )
кінець

;; ---

структура Голос
  ідентифікатор_файлу текст = undefined
  унікальний_ідентифікатор_файлу текст = undefined
  тривалість число = undefined
  мімтип текст = undefined
  розмір_файлу число = undefined
кінець

Голос.назва_типу = "Voice"

Голос.створити_з_телеграм_обʼєкта = (то): то ? Голос(
  ідентифікатор_файлу=то.file_id,
  унікальний_ідентифікатор_файлу=то.file_unique_id,
  тривалість=то.duration,
  мімтип=то.mime_type,
  розмір_файлу=то.file_size
) : пусто

дія Голос.перетворити_на_телеграм_обʼєкт()
  (
    file_id=я.ідентифікатор_файлу,
    file_unique_id=я.унікальний_ідентифікатор_файлу,
    duration=я.тривалість,
    mime_type=я.мімтип,
    file_size=я.розмір_файлу
  )
кінець

;; ---

структура Контакт
  номер_телефону текст = undefined
  ім'я текст = undefined
  прізвище текст = undefined
  ідентифікатор_користувача число = undefined
  візитна_картка текст = undefined
кінець

Контакт.назва_типу = "Contact"

Контакт.створити_з_телеграм_обʼєкта = (то): то ? Контакт(
  номер_телефону=то.phone_number,
  ім'я=то.first_name,
  прізвище=то.last_name,
  ідентифікатор_користувача=то.user_id,
  візитна_картка=то.vcard
) : пусто

дія Контакт.перетворити_на_телеграм_обʼєкт()
  (
    phone_number=я.номер_телефону,
    first_name=я.ім'я,
    last_name=я.прізвище,
    user_id=я.ідентифікатор_користувача,
    vcard=я.візитна_картка
  )
кінець

;; ---

структура Кубик
  емодзі текст = undefined
  значення число = undefined
кінець

Кубик.назва_типу = "Dice"

Кубик.створити_з_телеграм_обʼєкта = (то): то ? Кубик(
  емодзі=то.emoji,
  значення=то.value
) : пусто

дія Кубик.перетворити_на_телеграм_обʼєкт()
  (
    emoji=я.емодзі,
    value=я.значення
  )
кінець

;; ---

структура ОпціяОпитування
  текст текст = undefined
  кількість_голосуючих число = undefined
кінець

ОпціяОпитування.назва_типу = "PollOption"

ОпціяОпитування.створити_з_телеграм_обʼєкта = (то): то ? ОпціяОпитування(
  текст=то.text,
  кількість_голосуючих=то.voter_count
) : пусто

дія ОпціяОпитування.перетворити_на_телеграм_обʼєкт()
  (
    text=я.текст,
    voter_count=я.кількість_голосуючих
  )
кінець

;; ---

структура ВідповідьОпитування
  ідентифікатор_опитування текст = undefined
  користувач Користувач = undefined
  ідентифікатори_варіантів_відповідей Список = undefined
кінець

ВідповідьОпитування.назва_типу = "PollAnswer"

ВідповідьОпитування.створити_з_телеграм_обʼєкта = (то): то ? ВідповідьОпитування(
  ідентифікатор_опитування=то.poll_id,
  користувач=Користувач.створити_з_телеграм_обʼєкта(то.user),
  ідентифікатори_варіантів_відповідей=то.option_ids
) : пусто

дія ВідповідьОпитування.перетворити_на_телеграм_обʼєкт()
  (
    poll_id=я.ідентифікатор_опитування,
    user=я.користувач,
    option_ids=я.ідентифікатори_варіантів_відповідей
  )
кінець

;; ---

структура Опитування
  ідентифікатор текст = undefined
  питання текст = undefined
  варіанти_відповідей Список = undefined
  загальна_кількість_голосуючих число = undefined
  опитування_закрите логічне = undefined
  анонімне_опитування логічне = undefined
  тип текст = undefined
  дозволені_множинні_відповіді логічне = undefined
  ідентифікатор_правильної_відповіді число = undefined
  пояснення текст = undefined
  сутності_пояснення Список = undefined
  відкритий_період число = undefined
  дата_закриття число = undefined
кінець

Опитування.назва_типу = "Poll"

Опитування.створити_з_телеграм_обʼєкта = (то): то ? Опитування(
  ідентифікатор=то.id,
  питання=то.question,
  варіанти_відповідей=то.options,
  загальна_кількість_голосуючих=то.total_voter_count,
  опитування_закрите=то.is_closed,
  анонімне_опитування=то.is_anonymous,
  тип=то.type,
  дозволені_множинні_відповіді=то.allows_multiple_answers,
  ідентифікатор_правильної_відповіді=то.correct_option_id,
  пояснення=то.explanation,
  сутності_пояснення=то.explanation_entities,
  відкритий_період=то.open_period,
  дата_закриття=то.close_date
) : пусто

дія Опитування.перетворити_на_телеграм_обʼєкт()
  (
    id=я.ідентифікатор,
    question=я.питання,
    options=я.варіанти_відповідей,
    total_voter_count=я.загальна_кількість_голосуючих,
    is_closed=я.опитування_закрите,
    is_anonymous=я.анонімне_опитування,
    type=я.тип,
    allows_multiple_answers=я.дозволені_множинні_відповіді,
    correct_option_id=я.ідентифікатор_правильної_відповіді,
    explanation=я.пояснення,
    explanation_entities=я.сутності_пояснення,
    open_period=я.відкритий_період,
    close_date=я.дата_закриття
  )
кінець

;; ---

структура Місцезнаходження
  довгота число = undefined
  широта число = undefined
  горизонтальна_точність число = undefined
  активний_період число = undefined
  напрямок число = undefined
  радіус_сповіщення число = undefined
кінець

Місцезнаходження.назва_типу = "Location"

Місцезнаходження.створити_з_телеграм_обʼєкта = (то): то ? Місцезнаходження(
  довгота=то.longitude,
  широта=то.latitude,
  горизонтальна_точність=то.horizontal_accuracy,
  активний_період=то.live_period,
  напрямок=то.heading,
  радіус_сповіщення=то.proximity_alert_radius
) : пусто

дія Місцезнаходження.перетворити_на_телеграм_обʼєкт()
  (
    longitude=я.довгота,
    latitude=я.широта,
    horizontal_accuracy=я.горизонтальна_точність,
    live_period=я.активний_період,
    heading=я.напрямок,
    proximity_alert_radius=я.радіус_сповіщення
  )
кінець

;; ---

структура МісцеЗустрічі
  розташування Місцезнаходження = undefined
  назва текст = undefined
  адреса текст = undefined
  ідентифікатор_Foursquare текст = undefined
  тип_Foursquare текст = undefined
  ідентифікатор_Google текст = undefined
  тип_Google текст = undefined
кінець

МісцеЗустрічі.назва_типу = "Venue"

МісцеЗустрічі.створити_з_телеграм_обʼєкта = (то): то ? МісцеЗустрічі(
  розташування=Місцезнаходження.створити_з_телеграм_обʼєкта(то.location),
  назва=то.title,
  адреса=то.address,
  ідентифікатор_Foursquare=то.foursquare_id,
  тип_Foursquare=то.foursquare_type,
  ідентифікатор_Google=то.google_place_id,
  тип_Google=то.google_place_type
) : пусто

дія МісцеЗустрічі.перетворити_на_телеграм_обʼєкт()
  (
    location=я.розташування,
    title=я.назва,
    address=я.адреса,
    foursquare_id=я.ідентифікатор_Foursquare,
    foursquare_type=я.тип_Foursquare,
    google_place_id=я.ідентифікатор_Google,
    google_place_type=я.тип_Google
  )
кінець

;; ---

структура ДаніВебДодатку
  дані текст = undefined
  текст_кнопки текст = undefined
кінець

ДаніВебДодатку.назва_типу = "WebAppData"

ДаніВебДодатку.створити_з_телеграм_обʼєкта = (то): то ? ДаніВебДодатку(
  дані=то.data,
  текст_кнопки=то.button_text
) : пусто

дія ДаніВебДодатку.перетворити_на_телеграм_обʼєкт()
  (
    data=я.дані,
    button_text=я.текст_кнопки
  )
кінець

;; ---

структура СпрацюванняБлизькості
  подорожуючий Користувач = undefined
  спостерігач Користувач = undefined
  відстань число = undefined
кінець

СпрацюванняБлизькості.назва_типу = "ProximityAlertTriggered"

СпрацюванняБлизькості.створити_з_телеграм_обʼєкта = (то): то ? СпрацюванняБлизькості(
  подорожуючий=Користувач.створити_з_телеграм_обʼєкта(то.traveler),
  спостерігач=Користувач.створити_з_телеграм_обʼєкта(то.watcher),
  відстань=то.distance
) : пусто

дія СпрацюванняБлизькості.перетворити_на_телеграм_обʼєкт()
  (
    traveler=я.подорожуючий,
    watcher=я.спостерігач,
    distance=я.відстань
  )
кінець

;; ---

структура ЗмінаТаймераАвтоВидаленняПовідомлення
  час_автоматичного_видалення_повідомлення число = undefined
кінець

ЗмінаТаймераАвтоВидаленняПовідомлення.назва_типу = "MessageAutoDeleteTimerChanged"

ЗмінаТаймераАвтоВидаленняПовідомлення.створити_з_телеграм_обʼєкта = (то): то ? ЗмінаТаймераАвтоВидаленняПовідомлення(
  час_автоматичного_видалення_повідомлення=то.message_auto_delete_time
) : пусто

дія ЗмінаТаймераАвтоВидаленняПовідомлення.перетворити_на_телеграм_обʼєкт()
  (
    message_auto_delete_time=я.час_автоматичного_видалення_повідомлення
  )
кінець

;; ---

структура ТемуФорумуСтворено
  назва текст = undefined
  колір_іконки число = undefined
  ідентифікатор_спеціальної_емоджі_іконки текст = undefined
кінець

ТемуФорумуСтворено.назва_типу = "ForumTopicCreated"

ТемуФорумуСтворено.створити_з_телеграм_обʼєкта = (то): то ? ТемуФорумуСтворено(
  назва=то.name,
  колір_іконки=то.icon_color,
  ідентифікатор_спеціальної_емоджі_іконки=то.icon_custom_emoji_id
) : пусто

дія ТемуФорумуСтворено.перетворити_на_телеграм_обʼєкт()
  (
    name=я.назва,
    icon_color=я.колір_іконки,
    icon_custom_emoji_id=я.ідентифікатор_спеціальної_емоджі_іконки
  )
кінець

;; ---

структура ТемаФорумуЗакрита
кінець

ТемаФорумуЗакрита.назва_типу = "ForumTopicClosed"

ТемаФорумуЗакрита.створити_з_телеграм_обʼєкта = (то): то ? ТемаФорумуЗакрита() : пусто

дія ТемаФорумуЗакрита.перетворити_на_телеграм_обʼєкт()
  ()
кінець

;; ---

структура ТемуФорумуВідредаговано
  назва текст = undefined
  ідентифікатор_спеціальної_емоджі_іконки текст = undefined
кінець

ТемуФорумуВідредаговано.назва_типу = "ForumTopicEdited"

ТемуФорумуВідредаговано.створити_з_телеграм_обʼєкта = (то): то ? ТемуФорумуВідредаговано(
  назва=то.name,
  ідентифікатор_спеціальної_емоджі_іконки=то.icon_custom_emoji_id
) : пусто

дія ТемуФорумуВідредаговано.перетворити_на_телеграм_обʼєкт()
  (
    name=я.назва,
    icon_custom_emoji_id=я.ідентифікатор_спеціальної_емоджі_іконки
  )
кінець

;; ---

структура ТемаФорумуВідкрита
кінець

ТемаФорумуВідкрита.назва_типу = "ForumTopicReopened"

ТемаФорумуВідкрита.створити_з_телеграм_обʼєкта = (то): то ? ТемаФорумуВідкрита() : пусто

дія ТемаФорумуВідкрита.перетворити_на_телеграм_обʼєкт()
  ()
кінець

;; ---

структура ЗагальнаТемаФорумуПрихована
кінець

ЗагальнаТемаФорумуПрихована.назва_типу = "GeneralForumTopicHidden"

ЗагальнаТемаФорумуПрихована.створити_з_телеграм_обʼєкта = (то): то ? ЗагальнаТемаФорумуПрихована() : пусто

дія ЗагальнаТемаФорумуПрихована.перетворити_на_телеграм_обʼєкт()
  ()
кінець

;; ---

структура ЗагальнаТемаФорумуВідкрита
кінець

ЗагальнаТемаФорумуВідкрита.назва_типу = "GeneralForumTopicUnhidden"

ЗагальнаТемаФорумуВідкрита.створити_з_телеграм_обʼєкта = (то): то ? ЗагальнаТемаФорумуВідкрита() : пусто

дія ЗагальнаТемаФорумуВідкрита.перетворити_на_телеграм_обʼєкт()
  ()
кінець

;; ---

структура КористувачаПоширено
  ідентифікатор_запиту число = undefined
  ідентифікатор_користувача число = undefined
кінець

КористувачаПоширено.назва_типу = "UserShared"

КористувачаПоширено.створити_з_телеграм_обʼєкта = (то): то ? КористувачаПоширено(
  ідентифікатор_запиту=то.request_id,
  ідентифікатор_користувача=то.user_id
) : пусто

дія КористувачаПоширено.перетворити_на_телеграм_обʼєкт()
  (
    request_id=я.ідентифікатор_запиту,
    user_id=я.ідентифікатор_користувача
  )
кінець

;; ---

структура ЧатПоширено
  ідентифікатор_запиту число = undefined
  ідентифікатор_чату число = undefined
кінець

ЧатПоширено.назва_типу = "ChatShared"

ЧатПоширено.створити_з_телеграм_обʼєкта = (то): то ? ЧатПоширено(
  ідентифікатор_запиту=то.request_id,
  ідентифікатор_чату=то.chat_id
) : пусто

дія ЧатПоширено.перетворити_на_телеграм_обʼєкт()
  (
    request_id=я.ідентифікатор_запиту,
    chat_id=я.ідентифікатор_чату
  )
кінець

;; ---

структура ДоступНаПисьмоДозволений
кінець

ДоступНаПисьмоДозволений.назва_типу = "WriteAccessAllowed"

ДоступНаПисьмоДозволений.створити_з_телеграм_обʼєкта = (то): то ? ДоступНаПисьмоДозволений() : пусто

дія ДоступНаПисьмоДозволений.перетворити_на_телеграм_обʼєкт()
  ()
кінець

;; ---

структура ВідеоЧатЗаплановано
  дата_початку число = undefined
кінець

ВідеоЧатЗаплановано.назва_типу = "VideoChatScheduled"

ВідеоЧатЗаплановано.створити_з_телеграм_обʼєкта = (то): то ? ВідеоЧатЗаплановано(
  дата_початку=то.start_date
) : пусто

дія ВідеоЧатЗаплановано.перетворити_на_телеграм_обʼєкт()
  (
    start_date=я.дата_початку
  )
кінець

;; ---

структура ВідеоЧатРозпочато
кінець

ВідеоЧатРозпочато.назва_типу = "VideoChatStarted"

ВідеоЧатРозпочато.створити_з_телеграм_обʼєкта = (то): то ? ВідеоЧатРозпочато() : пусто

дія ВідеоЧатРозпочато.перетворити_на_телеграм_обʼєкт()
  ()
кінець

;; ---

структура ВідеоЧатЗавершено
  тривалість число = undefined
кінець

ВідеоЧатЗавершено.назва_типу = "VideoChatEnded"

ВідеоЧатЗавершено.створити_з_телеграм_обʼєкта = (то): то ? ВідеоЧатЗавершено(
  тривалість=то.duration
) : пусто

дія ВідеоЧатЗавершено.перетворити_на_телеграм_обʼєкт()
  (
    duration=я.тривалість
  )
кінець

;; ---

структура ЗапрошенняУчасниківВідеоЧату
  користувачі Список = undefined
кінець

ЗапрошенняУчасниківВідеоЧату.назва_типу = "VideoChatParticipantsInvited"

ЗапрошенняУчасниківВідеоЧату.створити_з_телеграм_обʼєкта = (то): то ? ЗапрошенняУчасниківВідеоЧату(
  користувачі=то.users
) : пусто

дія ЗапрошенняУчасниківВідеоЧату.перетворити_на_телеграм_обʼєкт()
  (
    users=я.користувачі
  )
кінець

;; ---

структура ФотоПрофілю
  загальна_кількість число = undefined
  фотографії Список = undefined
кінець

ФотоПрофілю.назва_типу = "UserProfilePhotos"

ФотоПрофілю.створити_з_телеграм_обʼєкта = (то): то ? ФотоПрофілю(
  загальна_кількість=то.total_count,
  фотографії=то.photos
) : пусто

дія ФотоПрофілю.перетворити_на_телеграм_обʼєкт()
  (
    total_count=я.загальна_кількість,
    photos=я.фотографії
  )
кінець

;; ---

структура Файл
  ідентифікатор_файлу текст = undefined
  унікальний_ідентифікатор_файлу текст = undefined
  розмір_файлу число = undefined
  шлях_до_файлу текст = undefined
кінець

Файл.назва_типу = "File"

Файл.створити_з_телеграм_обʼєкта = (то): то ? Файл(
  ідентифікатор_файлу=то.file_id,
  унікальний_ідентифікатор_файлу=то.file_unique_id,
  розмір_файлу=то.file_size,
  шлях_до_файлу=то.file_path
) : пусто

дія Файл.перетворити_на_телеграм_обʼєкт()
  (
    file_id=я.ідентифікатор_файлу,
    file_unique_id=я.унікальний_ідентифікатор_файлу,
    file_size=я.розмір_файлу,
    file_path=я.шлях_до_файлу
  )
кінець

;; ---

структура ІнформаціяВебДодатку
  урл текст = undefined
кінець

ІнформаціяВебДодатку.назва_типу = "WebAppInfo"

ІнформаціяВебДодатку.створити_з_телеграм_обʼєкта = (то): то ? ІнформаціяВебДодатку(
  урл=то.url
) : пусто

дія ІнформаціяВебДодатку.перетворити_на_телеграм_обʼєкт()
  (
    url=я.урл
  )
кінець

;; ---

структура РозміткаКлавіатуриВідповіді
  клавіатура Список = undefined
  постійний логічне = undefined
  зміна_розміру_клавіатури логічне = undefined
  одноразова_клавіатура логічне = undefined
  підказка_для_поля_введення текст = undefined
  вибірковий логічне = undefined
кінець

РозміткаКлавіатуриВідповіді.назва_типу = "ReplyKeyboardMarkup"

РозміткаКлавіатуриВідповіді.створити_з_телеграм_обʼєкта = (то): то ? РозміткаКлавіатуриВідповіді(
  клавіатура=то.keyboard,
  постійний=то.is_persistent,
  зміна_розміру_клавіатури=то.resize_keyboard,
  одноразова_клавіатура=то.one_time_keyboard,
  підказка_для_поля_введення=то.input_field_placeholder,
  вибірковий=то.selective
) : пусто

дія РозміткаКлавіатуриВідповіді.перетворити_на_телеграм_обʼєкт()
  (
    keyboard=я.клавіатура,
    is_persistent=я.постійний,
    resize_keyboard=я.зміна_розміру_клавіатури,
    one_time_keyboard=я.одноразова_клавіатура,
    input_field_placeholder=я.підказка_для_поля_введення,
    selective=я.вибірковий
  )
кінець

;; ---

структура КлавішаКлавіатури
  текст текст = undefined
  запит_користувача КлавішаКлавіатуриЗапитатиКористувача = undefined
  запит_чату КлавішаКлавіатуриЗапитатиЧат = undefined
  запит_контакту логічне = undefined
  запит_локації логічне = undefined
  запит_опитування КлавішаКлавіатуриЗапитатиОпитування = undefined
  веб_додаток ІнформаціяВебДодатку = undefined
кінець

КлавішаКлавіатури.назва_типу = "KeyboardButton"

КлавішаКлавіатури.створити_з_телеграм_обʼєкта = (то): то ? КлавішаКлавіатури(
  текст=то.text,
  запит_користувача=КлавішаКлавіатуриЗапитатиКористувача.створити_з_телеграм_обʼєкта(то.request_user),
  запит_чату=КлавішаКлавіатуриЗапитатиЧат.створити_з_телеграм_обʼєкта(то.request_chat),
  запит_контакту=то.request_contact,
  запит_локації=то.request_location,
  запит_опитування=КлавішаКлавіатуриЗапитатиОпитування.створити_з_телеграм_обʼєкта(то.request_poll),
  веб_додаток=ІнформаціяВебДодатку.створити_з_телеграм_обʼєкта(то.web_app)
) : пусто

дія КлавішаКлавіатури.перетворити_на_телеграм_обʼєкт()
  (
    text=я.текст,
    request_user=я.запит_користувача,
    request_chat=я.запит_чату,
    request_contact=я.запит_контакту,
    request_location=я.запит_локації,
    request_poll=я.запит_опитування,
    web_app=я.веб_додаток
  )
кінець

;; ---

структура КлавішаКлавіатуриЗапитатиКористувача
  ідентифікатор_запиту число = undefined
  користувач_є_ботом логічне = undefined
  користувач_має_преміум логічне = undefined
кінець

КлавішаКлавіатуриЗапитатиКористувача.назва_типу = "KeyboardButtonRequestUser"

КлавішаКлавіатуриЗапитатиКористувача.створити_з_телеграм_обʼєкта = (то): то ? КлавішаКлавіатуриЗапитатиКористувача(
  ідентифікатор_запиту=то.request_id,
  користувач_є_ботом=то.user_is_bot,
  користувач_має_преміум=то.user_is_premium
) : пусто

дія КлавішаКлавіатуриЗапитатиКористувача.перетворити_на_телеграм_обʼєкт()
  (
    request_id=я.ідентифікатор_запиту,
    user_is_bot=я.користувач_є_ботом,
    user_is_premium=я.користувач_має_преміум
  )
кінець

;; ---

структура КлавішаКлавіатуриЗапитатиЧат
  ідентифікатор_запиту число = undefined
  чат_є_каналом логічне = undefined
  чат_є_форумом логічне = undefined
  чат_має_ім'я_користувача логічне = undefined
  чат_створено логічне = undefined
  права_адміністратора_користувача ПраваАдміністратораЧату = undefined
  права_адміністратора_бота ПраваАдміністратораЧату = undefined
  бот_є_учасником логічне = undefined
кінець

КлавішаКлавіатуриЗапитатиЧат.назва_типу = "KeyboardButtonRequestChat"

КлавішаКлавіатуриЗапитатиЧат.створити_з_телеграм_обʼєкта = (то): то ? КлавішаКлавіатуриЗапитатиЧат(
  ідентифікатор_запиту=то.request_id,
  чат_є_каналом=то.chat_is_channel,
  чат_є_форумом=то.chat_is_forum,
  чат_має_ім'я_користувача=то.chat_has_username,
  чат_створено=то.chat_is_created,
  права_адміністратора_користувача=ПраваАдміністратораЧату.створити_з_телеграм_обʼєкта(то.user_administrator_rights),
  права_адміністратора_бота=ПраваАдміністратораЧату.створити_з_телеграм_обʼєкта(то.bot_administrator_rights),
  бот_є_учасником=то.bot_is_member
) : пусто

дія КлавішаКлавіатуриЗапитатиЧат.перетворити_на_телеграм_обʼєкт()
  (
    request_id=я.ідентифікатор_запиту,
    chat_is_channel=я.чат_є_каналом,
    chat_is_forum=я.чат_є_форумом,
    chat_has_username=я.чат_має_ім'я_користувача,
    chat_is_created=я.чат_створено,
    user_administrator_rights=я.права_адміністратора_користувача,
    bot_administrator_rights=я.права_адміністратора_бота,
    bot_is_member=я.бот_є_учасником
  )
кінець

;; ---

структура КлавішаКлавіатуриЗапитатиОпитування
  тип текст = undefined
кінець

КлавішаКлавіатуриЗапитатиОпитування.назва_типу = "KeyboardButtonPollType"

КлавішаКлавіатуриЗапитатиОпитування.створити_з_телеграм_обʼєкта = (то): то ? КлавішаКлавіатуриЗапитатиОпитування(
  тип=то.type
) : пусто

дія КлавішаКлавіатуриЗапитатиОпитування.перетворити_на_телеграм_обʼєкт()
  (
    type=я.тип
  )
кінець

;; ---

структура ПрибратиКлавіатуруВідповіді
  видалити_клавіатуру логічне = undefined
  вибірковий логічне = undefined
кінець

ПрибратиКлавіатуруВідповіді.назва_типу = "ReplyKeyboardRemove"

ПрибратиКлавіатуруВідповіді.створити_з_телеграм_обʼєкта = (то): то ? ПрибратиКлавіатуруВідповіді(
  видалити_клавіатуру=то.remove_keyboard,
  вибірковий=то.selective
) : пусто

дія ПрибратиКлавіатуруВідповіді.перетворити_на_телеграм_обʼєкт()
  (
    remove_keyboard=я.видалити_клавіатуру,
    selective=я.вибірковий
  )
кінець

;; ---

структура РозміткаІнлайнКлавіатури
  інлайн_клавіатура Список = undefined
кінець

РозміткаІнлайнКлавіатури.назва_типу = "InlineKeyboardMarkup"

РозміткаІнлайнКлавіатури.створити_з_телеграм_обʼєкта = (то): то ? РозміткаІнлайнКлавіатури(
  інлайн_клавіатура=то.inline_keyboard
) : пусто

дія РозміткаІнлайнКлавіатури.перетворити_на_телеграм_обʼєкт()
  (
    inline_keyboard=я.інлайн_клавіатура
  )
кінець

;; ---

структура КлавішаІнлайнКлавіатури
  текст текст = undefined
  урл текст = undefined
  дані_для_виклику текст = undefined
  веб_додаток ІнформаціяВебДодатку = undefined
  url_входу ПосиланняАвторизації = undefined
  переключити_інлайн_запит текст = undefined
  переключити_інлайн_запит_поточного_чату текст = undefined
  ігри_для_виклику ЗворотнійВикликГра = undefined
  оплатити логічне = undefined
кінець

КлавішаІнлайнКлавіатури.назва_типу = "InlineKeyboardButton"

КлавішаІнлайнКлавіатури.створити_з_телеграм_обʼєкта = (то): то ? КлавішаІнлайнКлавіатури(
  текст=то.text,
  урл=то.url,
  дані_для_виклику=то.callback_data,
  веб_додаток=ІнформаціяВебДодатку.створити_з_телеграм_обʼєкта(то.web_app),
  url_входу=ПосиланняАвторизації.створити_з_телеграм_обʼєкта(то.login_url),
  переключити_інлайн_запит=то.switch_inline_query,
  переключити_інлайн_запит_поточного_чату=то.switch_inline_query_current_chat,
  ігри_для_виклику=ЗворотнійВикликГра.створити_з_телеграм_обʼєкта(то.callback_game),
  оплатити=то.pay
) : пусто

дія КлавішаІнлайнКлавіатури.перетворити_на_телеграм_обʼєкт()
  (
    text=я.текст,
    url=я.урл,
    callback_data=я.дані_для_виклику,
    web_app=я.веб_додаток,
    login_url=я.url_входу,
    switch_inline_query=я.переключити_інлайн_запит,
    switch_inline_query_current_chat=я.переключити_інлайн_запит_поточного_чату,
    callback_game=я.ігри_для_виклику,
    pay=я.оплатити
  )
кінець

;; ---

структура ПосиланняАвторизації
  урл текст = undefined
  переслати_текст текст = undefined
  ім'я_бота текст = undefined
  запит_на_доступ_до_запису логічне = undefined
кінець

ПосиланняАвторизації.назва_типу = "LoginUrl"

ПосиланняАвторизації.створити_з_телеграм_обʼєкта = (то): то ? ПосиланняАвторизації(
  урл=то.url,
  переслати_текст=то.forward_text,
  ім'я_бота=то.bot_username,
  запит_на_доступ_до_запису=то.request_write_access
) : пусто

дія ПосиланняАвторизації.перетворити_на_телеграм_обʼєкт()
  (
    url=я.урл,
    forward_text=я.переслати_текст,
    bot_username=я.ім'я_бота,
    request_write_access=я.запит_на_доступ_до_запису
  )
кінець

;; ---

структура ЗапитЗворотньогоВиклику
  ідентифікатор текст = undefined
  від Користувач = undefined
  повідомлення Повідомлення = undefined
  ідентифікатор_інлайн_повідомлення текст = undefined
  інстанція_чату текст = undefined
  дані текст = undefined
  коротке_ім'я_гри текст = undefined
кінець

ЗапитЗворотньогоВиклику.назва_типу = "CallbackQuery"

ЗапитЗворотньогоВиклику.створити_з_телеграм_обʼєкта = (то): то ? ЗапитЗворотньогоВиклику(
  ідентифікатор=то.id,
  від=Користувач.створити_з_телеграм_обʼєкта(то.from),
  повідомлення=Повідомлення.створити_з_телеграм_обʼєкта(то.message),
  ідентифікатор_інлайн_повідомлення=то.inline_message_id,
  інстанція_чату=то.chat_instance,
  дані=то.data,
  коротке_ім'я_гри=то.game_short_name
) : пусто

дія ЗапитЗворотньогоВиклику.перетворити_на_телеграм_обʼєкт()
  (
    id=я.ідентифікатор,
    from=я.від,
    message=я.повідомлення,
    inline_message_id=я.ідентифікатор_інлайн_повідомлення,
    chat_instance=я.інстанція_чату,
    data=я.дані,
    game_short_name=я.коротке_ім'я_гри
  )
кінець

;; ---

структура ПримусоваВідповідь
  примусова_відповідь логічне = undefined
  підказка_для_поля_введення текст = undefined
  вибірковий логічне = undefined
кінець

ПримусоваВідповідь.назва_типу = "ForceReply"

ПримусоваВідповідь.створити_з_телеграм_обʼєкта = (то): то ? ПримусоваВідповідь(
  примусова_відповідь=то.force_reply,
  підказка_для_поля_введення=то.input_field_placeholder,
  вибірковий=то.selective
) : пусто

дія ПримусоваВідповідь.перетворити_на_телеграм_обʼєкт()
  (
    force_reply=я.примусова_відповідь,
    input_field_placeholder=я.підказка_для_поля_введення,
    selective=я.вибірковий
  )
кінець

;; ---

структура ФотоЧату
  ідентифікатор_маленького_файлу текст = undefined
  унікальний_ідентифікатор_маленького_файлу текст = undefined
  ідентифікатор_великого_файлу текст = undefined
  унікальний_ідентифікатор_великого_файлу текст = undefined
кінець

ФотоЧату.назва_типу = "ChatPhoto"

ФотоЧату.створити_з_телеграм_обʼєкта = (то): то ? ФотоЧату(
  ідентифікатор_маленького_файлу=то.small_file_id,
  унікальний_ідентифікатор_маленького_файлу=то.small_file_unique_id,
  ідентифікатор_великого_файлу=то.big_file_id,
  унікальний_ідентифікатор_великого_файлу=то.big_file_unique_id
) : пусто

дія ФотоЧату.перетворити_на_телеграм_обʼєкт()
  (
    small_file_id=я.ідентифікатор_маленького_файлу,
    small_file_unique_id=я.унікальний_ідентифікатор_маленького_файлу,
    big_file_id=я.ідентифікатор_великого_файлу,
    big_file_unique_id=я.унікальний_ідентифікатор_великого_файлу
  )
кінець

;; ---

структура ПосиланняНаЗапрошенняДоЧату
  посилання_запрошення текст = undefined
  створювач Користувач = undefined
  створює_запит_на_вступ логічне = undefined
  є_первинним логічне = undefined
  було_відкликано логічне = undefined
  назва текст = undefined
  дата_закінчення число = undefined
  ліміт_учасників число = undefined
  кількість_очікуючих_запитів_на_вступ число = undefined
кінець

ПосиланняНаЗапрошенняДоЧату.назва_типу = "ChatInviteLink"

ПосиланняНаЗапрошенняДоЧату.створити_з_телеграм_обʼєкта = (то): то ? ПосиланняНаЗапрошенняДоЧату(
  посилання_запрошення=то.invite_link,
  створювач=Користувач.створити_з_телеграм_обʼєкта(то.creator),
  створює_запит_на_вступ=то.creates_join_request,
  є_первинним=то.is_primary,
  було_відкликано=то.is_revoked,
  назва=то.name,
  дата_закінчення=то.expire_date,
  ліміт_учасників=то.member_limit,
  кількість_очікуючих_запитів_на_вступ=то.pending_join_request_count
) : пусто

дія ПосиланняНаЗапрошенняДоЧату.перетворити_на_телеграм_обʼєкт()
  (
    invite_link=я.посилання_запрошення,
    creator=я.створювач,
    creates_join_request=я.створює_запит_на_вступ,
    is_primary=я.є_первинним,
    is_revoked=я.було_відкликано,
    name=я.назва,
    expire_date=я.дата_закінчення,
    member_limit=я.ліміт_учасників,
    pending_join_request_count=я.кількість_очікуючих_запитів_на_вступ
  )
кінець

;; ---

структура ПраваАдміністратораЧату
  анонімне_опитування логічне = undefined
  може_керувати_чатом логічне = undefined
  може_видаляти_повідомлення логічне = undefined
  може_керувати_відеоконференціями логічне = undefined
  може_обмежувати_учасників логічне = undefined
  може_підвищувати_учасників логічне = undefined
  може_змінювати_інформацію логічне = undefined
  може_запрошувати_користувачів логічне = undefined
  може_публікувати_повідомлення логічне = undefined
  може_редагувати_повідомлення логічне = undefined
  може_закріплювати_повідомлення логічне = undefined
  може_керувати_темами логічне = undefined
кінець

ПраваАдміністратораЧату.назва_типу = "ChatAdministratorRights"

ПраваАдміністратораЧату.створити_з_телеграм_обʼєкта = (то): то ? ПраваАдміністратораЧату(
  анонімне_опитування=то.is_anonymous,
  може_керувати_чатом=то.can_manage_chat,
  може_видаляти_повідомлення=то.can_delete_messages,
  може_керувати_відеоконференціями=то.can_manage_video_chats,
  може_обмежувати_учасників=то.can_restrict_members,
  може_підвищувати_учасників=то.can_promote_members,
  може_змінювати_інформацію=то.can_change_info,
  може_запрошувати_користувачів=то.can_invite_users,
  може_публікувати_повідомлення=то.can_post_messages,
  може_редагувати_повідомлення=то.can_edit_messages,
  може_закріплювати_повідомлення=то.can_pin_messages,
  може_керувати_темами=то.can_manage_topics
) : пусто

дія ПраваАдміністратораЧату.перетворити_на_телеграм_обʼєкт()
  (
    is_anonymous=я.анонімне_опитування,
    can_manage_chat=я.може_керувати_чатом,
    can_delete_messages=я.може_видаляти_повідомлення,
    can_manage_video_chats=я.може_керувати_відеоконференціями,
    can_restrict_members=я.може_обмежувати_учасників,
    can_promote_members=я.може_підвищувати_учасників,
    can_change_info=я.може_змінювати_інформацію,
    can_invite_users=я.може_запрошувати_користувачів,
    can_post_messages=я.може_публікувати_повідомлення,
    can_edit_messages=я.може_редагувати_повідомлення,
    can_pin_messages=я.може_закріплювати_повідомлення,
    can_manage_topics=я.може_керувати_темами
  )
кінець

;; ---

структура УчасникЧату
кінець

УчасникЧату.назва_типу = "ChatMember"

УчасникЧату.створити_з_телеграм_обʼєкта = (то): то ? УчасникЧату() : пусто

дія УчасникЧату.перетворити_на_телеграм_обʼєкт()
  ()
кінець

;; ---

структура УчасникЧатуВласник
  статус текст = undefined
  користувач Користувач = undefined
  анонімне_опитування логічне = undefined
  індивідуальний_заголовок текст = undefined
кінець

УчасникЧатуВласник.назва_типу = "ChatMemberOwner"

УчасникЧатуВласник.створити_з_телеграм_обʼєкта = (то): то ? УчасникЧатуВласник(
  статус=то.status,
  користувач=Користувач.створити_з_телеграм_обʼєкта(то.user),
  анонімне_опитування=то.is_anonymous,
  індивідуальний_заголовок=то.custom_title
) : пусто

дія УчасникЧатуВласник.перетворити_на_телеграм_обʼєкт()
  (
    status=я.статус,
    user=я.користувач,
    is_anonymous=я.анонімне_опитування,
    custom_title=я.індивідуальний_заголовок
  )
кінець

;; ---

структура УчасникЧатуАдміністратор
  статус текст = undefined
  користувач Користувач = undefined
  може_бути_змінене логічне = undefined
  анонімне_опитування логічне = undefined
  може_керувати_чатом логічне = undefined
  може_видаляти_повідомлення логічне = undefined
  може_керувати_відеоконференціями логічне = undefined
  може_обмежувати_учасників логічне = undefined
  може_підвищувати_учасників логічне = undefined
  може_змінювати_інформацію логічне = undefined
  може_запрошувати_користувачів логічне = undefined
  може_публікувати_повідомлення логічне = undefined
  може_редагувати_повідомлення логічне = undefined
  може_закріплювати_повідомлення логічне = undefined
  може_керувати_темами логічне = undefined
  індивідуальний_заголовок текст = undefined
кінець

УчасникЧатуАдміністратор.назва_типу = "ChatMemberAdministrator"

УчасникЧатуАдміністратор.створити_з_телеграм_обʼєкта = (то): то ? УчасникЧатуАдміністратор(
  статус=то.status,
  користувач=Користувач.створити_з_телеграм_обʼєкта(то.user),
  може_бути_змінене=то.can_be_edited,
  анонімне_опитування=то.is_anonymous,
  може_керувати_чатом=то.can_manage_chat,
  може_видаляти_повідомлення=то.can_delete_messages,
  може_керувати_відеоконференціями=то.can_manage_video_chats,
  може_обмежувати_учасників=то.can_restrict_members,
  може_підвищувати_учасників=то.can_promote_members,
  може_змінювати_інформацію=то.can_change_info,
  може_запрошувати_користувачів=то.can_invite_users,
  може_публікувати_повідомлення=то.can_post_messages,
  може_редагувати_повідомлення=то.can_edit_messages,
  може_закріплювати_повідомлення=то.can_pin_messages,
  може_керувати_темами=то.can_manage_topics,
  індивідуальний_заголовок=то.custom_title
) : пусто

дія УчасникЧатуАдміністратор.перетворити_на_телеграм_обʼєкт()
  (
    status=я.статус,
    user=я.користувач,
    can_be_edited=я.може_бути_змінене,
    is_anonymous=я.анонімне_опитування,
    can_manage_chat=я.може_керувати_чатом,
    can_delete_messages=я.може_видаляти_повідомлення,
    can_manage_video_chats=я.може_керувати_відеоконференціями,
    can_restrict_members=я.може_обмежувати_учасників,
    can_promote_members=я.може_підвищувати_учасників,
    can_change_info=я.може_змінювати_інформацію,
    can_invite_users=я.може_запрошувати_користувачів,
    can_post_messages=я.може_публікувати_повідомлення,
    can_edit_messages=я.може_редагувати_повідомлення,
    can_pin_messages=я.може_закріплювати_повідомлення,
    can_manage_topics=я.може_керувати_темами,
    custom_title=я.індивідуальний_заголовок
  )
кінець

;; ---

структура УчасникЧатуУчасник
  статус текст = undefined
  користувач Користувач = undefined
кінець

УчасникЧатуУчасник.назва_типу = "ChatMemberMember"

УчасникЧатуУчасник.створити_з_телеграм_обʼєкта = (то): то ? УчасникЧатуУчасник(
  статус=то.status,
  користувач=Користувач.створити_з_телеграм_обʼєкта(то.user)
) : пусто

дія УчасникЧатуУчасник.перетворити_на_телеграм_обʼєкт()
  (
    status=я.статус,
    user=я.користувач
  )
кінець

;; ---

структура ОбмеженийУчасникЧату
  статус текст = undefined
  користувач Користувач = undefined
  є_учасником логічне = undefined
  може_надсилати_повідомлення логічне = undefined
  може_надсилати_аудіо логічне = undefined
  може_надсилати_документи логічне = undefined
  може_надсилати_фото логічне = undefined
  може_надсилати_відео логічне = undefined
  може_надсилати_відео_з_нотатками логічне = undefined
  може_надсилати_голосові_повідомлення логічне = undefined
  може_надсилати_опитування логічне = undefined
  може_надсилати_інші_повідомлення логічне = undefined
  може_додавати_перегляд_вебсторінок логічне = undefined
  може_змінювати_інформацію логічне = undefined
  може_запрошувати_користувачів логічне = undefined
  може_закріплювати_повідомлення логічне = undefined
  може_керувати_темами логічне = undefined
  до_дати число = undefined
кінець

ОбмеженийУчасникЧату.назва_типу = "ChatMemberRestricted"

ОбмеженийУчасникЧату.створити_з_телеграм_обʼєкта = (то): то ? ОбмеженийУчасникЧату(
  статус=то.status,
  користувач=Користувач.створити_з_телеграм_обʼєкта(то.user),
  є_учасником=то.is_member,
  може_надсилати_повідомлення=то.can_send_messages,
  може_надсилати_аудіо=то.can_send_audios,
  може_надсилати_документи=то.can_send_documents,
  може_надсилати_фото=то.can_send_photos,
  може_надсилати_відео=то.can_send_videos,
  може_надсилати_відео_з_нотатками=то.can_send_video_notes,
  може_надсилати_голосові_повідомлення=то.can_send_voice_notes,
  може_надсилати_опитування=то.can_send_polls,
  може_надсилати_інші_повідомлення=то.can_send_other_messages,
  може_додавати_перегляд_вебсторінок=то.can_add_web_page_previews,
  може_змінювати_інформацію=то.can_change_info,
  може_запрошувати_користувачів=то.can_invite_users,
  може_закріплювати_повідомлення=то.can_pin_messages,
  може_керувати_темами=то.can_manage_topics,
  до_дати=то.until_date
) : пусто

дія ОбмеженийУчасникЧату.перетворити_на_телеграм_обʼєкт()
  (
    status=я.статус,
    user=я.користувач,
    is_member=я.є_учасником,
    can_send_messages=я.може_надсилати_повідомлення,
    can_send_audios=я.може_надсилати_аудіо,
    can_send_documents=я.може_надсилати_документи,
    can_send_photos=я.може_надсилати_фото,
    can_send_videos=я.може_надсилати_відео,
    can_send_video_notes=я.може_надсилати_відео_з_нотатками,
    can_send_voice_notes=я.може_надсилати_голосові_повідомлення,
    can_send_polls=я.може_надсилати_опитування,
    can_send_other_messages=я.може_надсилати_інші_повідомлення,
    can_add_web_page_previews=я.може_додавати_перегляд_вебсторінок,
    can_change_info=я.може_змінювати_інформацію,
    can_invite_users=я.може_запрошувати_користувачів,
    can_pin_messages=я.може_закріплювати_повідомлення,
    can_manage_topics=я.може_керувати_темами,
    until_date=я.до_дати
  )
кінець

;; ---

структура ПокинутийУчасникЧату
  статус текст = undefined
  користувач Користувач = undefined
кінець

ПокинутийУчасникЧату.назва_типу = "ChatMemberLeft"

ПокинутийУчасникЧату.створити_з_телеграм_обʼєкта = (то): то ? ПокинутийУчасникЧату(
  статус=то.status,
  користувач=Користувач.створити_з_телеграм_обʼєкта(то.user)
) : пусто

дія ПокинутийУчасникЧату.перетворити_на_телеграм_обʼєкт()
  (
    status=я.статус,
    user=я.користувач
  )
кінець

;; ---

структура ЗаблокованийУчасникЧату
  статус текст = undefined
  користувач Користувач = undefined
  до_дати число = undefined
кінець

ЗаблокованийУчасникЧату.назва_типу = "ChatMemberBanned"

ЗаблокованийУчасникЧату.створити_з_телеграм_обʼєкта = (то): то ? ЗаблокованийУчасникЧату(
  статус=то.status,
  користувач=Користувач.створити_з_телеграм_обʼєкта(то.user),
  до_дати=то.until_date
) : пусто

дія ЗаблокованийУчасникЧату.перетворити_на_телеграм_обʼєкт()
  (
    status=я.статус,
    user=я.користувач,
    until_date=я.до_дати
  )
кінець

;; ---

структура УчасникаЧатуОновлено
  чат Чат = undefined
  від Користувач = undefined
  дата число = undefined
  старий_учасник_чату УчасникЧату = undefined
  новий_учасник_чату УчасникЧату = undefined
  посилання_запрошення ПосиланняНаЗапрошенняДоЧату = undefined
кінець

УчасникаЧатуОновлено.назва_типу = "ChatMemberUpdated"

УчасникаЧатуОновлено.створити_з_телеграм_обʼєкта = (то): то ? УчасникаЧатуОновлено(
  чат=Чат.створити_з_телеграм_обʼєкта(то.chat),
  від=Користувач.створити_з_телеграм_обʼєкта(то.from),
  дата=то.date,
  старий_учасник_чату=УчасникЧату.створити_з_телеграм_обʼєкта(то.old_chat_member),
  новий_учасник_чату=УчасникЧату.створити_з_телеграм_обʼєкта(то.new_chat_member),
  посилання_запрошення=ПосиланняНаЗапрошенняДоЧату.створити_з_телеграм_обʼєкта(то.invite_link)
) : пусто

дія УчасникаЧатуОновлено.перетворити_на_телеграм_обʼєкт()
  (
    chat=я.чат,
    from=я.від,
    date=я.дата,
    old_chat_member=я.старий_учасник_чату,
    new_chat_member=я.новий_учасник_чату,
    invite_link=я.посилання_запрошення
  )
кінець

;; ---

структура ЗапитНаПриєднанняДоЧату
  чат Чат = undefined
  від Користувач = undefined
  ідентифікатор_користувача_в_чаті число = undefined
  дата число = undefined
  біографія текст = undefined
  посилання_запрошення ПосиланняНаЗапрошенняДоЧату = undefined
кінець

ЗапитНаПриєднанняДоЧату.назва_типу = "ChatJoinRequest"

ЗапитНаПриєднанняДоЧату.створити_з_телеграм_обʼєкта = (то): то ? ЗапитНаПриєднанняДоЧату(
  чат=Чат.створити_з_телеграм_обʼєкта(то.chat),
  від=Користувач.створити_з_телеграм_обʼєкта(то.from),
  ідентифікатор_користувача_в_чаті=то.user_chat_id,
  дата=то.date,
  біографія=то.bio,
  посилання_запрошення=ПосиланняНаЗапрошенняДоЧату.створити_з_телеграм_обʼєкта(то.invite_link)
) : пусто

дія ЗапитНаПриєднанняДоЧату.перетворити_на_телеграм_обʼєкт()
  (
    chat=я.чат,
    from=я.від,
    user_chat_id=я.ідентифікатор_користувача_в_чаті,
    date=я.дата,
    bio=я.біографія,
    invite_link=я.посилання_запрошення
  )
кінець

;; ---

структура ДозволиЧату
  може_надсилати_повідомлення логічне = undefined
  може_надсилати_аудіо логічне = undefined
  може_надсилати_документи логічне = undefined
  може_надсилати_фото логічне = undefined
  може_надсилати_відео логічне = undefined
  може_надсилати_відео_з_нотатками логічне = undefined
  може_надсилати_голосові_повідомлення логічне = undefined
  може_надсилати_опитування логічне = undefined
  може_надсилати_інші_повідомлення логічне = undefined
  може_додавати_перегляд_вебсторінок логічне = undefined
  може_змінювати_інформацію логічне = undefined
  може_запрошувати_користувачів логічне = undefined
  може_закріплювати_повідомлення логічне = undefined
  може_керувати_темами логічне = undefined
кінець

ДозволиЧату.назва_типу = "ChatPermissions"

ДозволиЧату.створити_з_телеграм_обʼєкта = (то): то ? ДозволиЧату(
  може_надсилати_повідомлення=то.can_send_messages,
  може_надсилати_аудіо=то.can_send_audios,
  може_надсилати_документи=то.can_send_documents,
  може_надсилати_фото=то.can_send_photos,
  може_надсилати_відео=то.can_send_videos,
  може_надсилати_відео_з_нотатками=то.can_send_video_notes,
  може_надсилати_голосові_повідомлення=то.can_send_voice_notes,
  може_надсилати_опитування=то.can_send_polls,
  може_надсилати_інші_повідомлення=то.can_send_other_messages,
  може_додавати_перегляд_вебсторінок=то.can_add_web_page_previews,
  може_змінювати_інформацію=то.can_change_info,
  може_запрошувати_користувачів=то.can_invite_users,
  може_закріплювати_повідомлення=то.can_pin_messages,
  може_керувати_темами=то.can_manage_topics
) : пусто

дія ДозволиЧату.перетворити_на_телеграм_обʼєкт()
  (
    can_send_messages=я.може_надсилати_повідомлення,
    can_send_audios=я.може_надсилати_аудіо,
    can_send_documents=я.може_надсилати_документи,
    can_send_photos=я.може_надсилати_фото,
    can_send_videos=я.може_надсилати_відео,
    can_send_video_notes=я.може_надсилати_відео_з_нотатками,
    can_send_voice_notes=я.може_надсилати_голосові_повідомлення,
    can_send_polls=я.може_надсилати_опитування,
    can_send_other_messages=я.може_надсилати_інші_повідомлення,
    can_add_web_page_previews=я.може_додавати_перегляд_вебсторінок,
    can_change_info=я.може_змінювати_інформацію,
    can_invite_users=я.може_запрошувати_користувачів,
    can_pin_messages=я.може_закріплювати_повідомлення,
    can_manage_topics=я.може_керувати_темами
  )
кінець

;; ---

структура МісцезнаходженняЧату
  розташування Місцезнаходження = undefined
  адреса текст = undefined
кінець

МісцезнаходженняЧату.назва_типу = "ChatLocation"

МісцезнаходженняЧату.створити_з_телеграм_обʼєкта = (то): то ? МісцезнаходженняЧату(
  розташування=Місцезнаходження.створити_з_телеграм_обʼєкта(то.location),
  адреса=то.address
) : пусто

дія МісцезнаходженняЧату.перетворити_на_телеграм_обʼєкт()
  (
    location=я.розташування,
    address=я.адреса
  )
кінець

;; ---

структура ТемаФоруму
  ідентифікатор_теми_повідомлення число = undefined
  назва текст = undefined
  колір_іконки число = undefined
  ідентифікатор_спеціальної_емоджі_іконки текст = undefined
кінець

ТемаФоруму.назва_типу = "ForumTopic"

ТемаФоруму.створити_з_телеграм_обʼєкта = (то): то ? ТемаФоруму(
  ідентифікатор_теми_повідомлення=то.message_thread_id,
  назва=то.name,
  колір_іконки=то.icon_color,
  ідентифікатор_спеціальної_емоджі_іконки=то.icon_custom_emoji_id
) : пусто

дія ТемаФоруму.перетворити_на_телеграм_обʼєкт()
  (
    message_thread_id=я.ідентифікатор_теми_повідомлення,
    name=я.назва,
    icon_color=я.колір_іконки,
    icon_custom_emoji_id=я.ідентифікатор_спеціальної_емоджі_іконки
  )
кінець

;; ---

структура КомандаБота
  команда текст = undefined
  опис текст = undefined
кінець

КомандаБота.назва_типу = "BotCommand"

КомандаБота.створити_з_телеграм_обʼєкта = (то): то ? КомандаБота(
  команда=то.command,
  опис=то.description
) : пусто

дія КомандаБота.перетворити_на_телеграм_обʼєкт()
  (
    command=я.команда,
    description=я.опис
  )
кінець

;; ---

структура ОбсягКомандБота
кінець

ОбсягКомандБота.назва_типу = "BotCommandScope"

ОбсягКомандБота.створити_з_телеграм_обʼєкта = (то): то ? ОбсягКомандБота() : пусто

дія ОбсягКомандБота.перетворити_на_телеграм_обʼєкт()
  ()
кінець

;; ---

структура BotCommandScopeDefault
  тип текст = undefined
кінець

BotCommandScopeDefault.назва_типу = "BotCommandScopeDefault"

BotCommandScopeDefault.створити_з_телеграм_обʼєкта = (то): то ? BotCommandScopeDefault(
  тип=то.type
) : пусто

дія BotCommandScopeDefault.перетворити_на_телеграм_обʼєкт()
  (
    type=я.тип
  )
кінець

;; ---

структура BotCommandScopeAllPrivateChats
  тип текст = undefined
кінець

BotCommandScopeAllPrivateChats.назва_типу = "BotCommandScopeAllPrivateChats"

BotCommandScopeAllPrivateChats.створити_з_телеграм_обʼєкта = (то): то ? BotCommandScopeAllPrivateChats(
  тип=то.type
) : пусто

дія BotCommandScopeAllPrivateChats.перетворити_на_телеграм_обʼєкт()
  (
    type=я.тип
  )
кінець

;; ---

структура BotCommandScopeAllGroupChats
  тип текст = undefined
кінець

BotCommandScopeAllGroupChats.назва_типу = "BotCommandScopeAllGroupChats"

BotCommandScopeAllGroupChats.створити_з_телеграм_обʼєкта = (то): то ? BotCommandScopeAllGroupChats(
  тип=то.type
) : пусто

дія BotCommandScopeAllGroupChats.перетворити_на_телеграм_обʼєкт()
  (
    type=я.тип
  )
кінець

;; ---

структура BotCommandScopeAllChatAdministrators
  тип текст = undefined
кінець

BotCommandScopeAllChatAdministrators.назва_типу = "BotCommandScopeAllChatAdministrators"

BotCommandScopeAllChatAdministrators.створити_з_телеграм_обʼєкта = (то): то ? BotCommandScopeAllChatAdministrators(
  тип=то.type
) : пусто

дія BotCommandScopeAllChatAdministrators.перетворити_на_телеграм_обʼєкт()
  (
    type=я.тип
  )
кінець

;; ---

структура BotCommandScopeChat
  тип текст = undefined
  ідентифікатор_чату число = undefined
кінець

BotCommandScopeChat.назва_типу = "BotCommandScopeChat"

BotCommandScopeChat.створити_з_телеграм_обʼєкта = (то): то ? BotCommandScopeChat(
  тип=то.type,
  ідентифікатор_чату=то.chat_id
) : пусто

дія BotCommandScopeChat.перетворити_на_телеграм_обʼєкт()
  (
    type=я.тип,
    chat_id=я.ідентифікатор_чату
  )
кінець

;; ---

структура BotCommandScopeChatAdministrators
  тип текст = undefined
  ідентифікатор_чату число = undefined
кінець

BotCommandScopeChatAdministrators.назва_типу = "BotCommandScopeChatAdministrators"

BotCommandScopeChatAdministrators.створити_з_телеграм_обʼєкта = (то): то ? BotCommandScopeChatAdministrators(
  тип=то.type,
  ідентифікатор_чату=то.chat_id
) : пусто

дія BotCommandScopeChatAdministrators.перетворити_на_телеграм_обʼєкт()
  (
    type=я.тип,
    chat_id=я.ідентифікатор_чату
  )
кінець

;; ---

структура BotCommandScopeChatMember
  тип текст = undefined
  ідентифікатор_чату число = undefined
  ідентифікатор_користувача число = undefined
кінець

BotCommandScopeChatMember.назва_типу = "BotCommandScopeChatMember"

BotCommandScopeChatMember.створити_з_телеграм_обʼєкта = (то): то ? BotCommandScopeChatMember(
  тип=то.type,
  ідентифікатор_чату=то.chat_id,
  ідентифікатор_користувача=то.user_id
) : пусто

дія BotCommandScopeChatMember.перетворити_на_телеграм_обʼєкт()
  (
    type=я.тип,
    chat_id=я.ідентифікатор_чату,
    user_id=я.ідентифікатор_користувача
  )
кінець

;; ---

структура КнопкаМеню
кінець

КнопкаМеню.назва_типу = "MenuButton"

КнопкаМеню.створити_з_телеграм_обʼєкта = (то): то ? КнопкаМеню() : пусто

дія КнопкаМеню.перетворити_на_телеграм_обʼєкт()
  ()
кінець

;; ---

структура КнопкаМенюКоманди
  тип текст = undefined
кінець

КнопкаМенюКоманди.назва_типу = "MenuButtonCommands"

КнопкаМенюКоманди.створити_з_телеграм_обʼєкта = (то): то ? КнопкаМенюКоманди(
  тип=то.type
) : пусто

дія КнопкаМенюКоманди.перетворити_на_телеграм_обʼєкт()
  (
    type=я.тип
  )
кінець

;; ---

структура КнопкаМенюВебДодаток
  тип текст = undefined
  текст текст = undefined
  веб_додаток ІнформаціяВебДодатку = undefined
кінець

КнопкаМенюВебДодаток.назва_типу = "MenuButtonWebApp"

КнопкаМенюВебДодаток.створити_з_телеграм_обʼєкта = (то): то ? КнопкаМенюВебДодаток(
  тип=то.type,
  текст=то.text,
  веб_додаток=ІнформаціяВебДодатку.створити_з_телеграм_обʼєкта(то.web_app)
) : пусто

дія КнопкаМенюВебДодаток.перетворити_на_телеграм_обʼєкт()
  (
    type=я.тип,
    text=я.текст,
    web_app=я.веб_додаток
  )
кінець

;; ---

структура КнопкаМенюЗаЗамовчуванням
  тип текст = undefined
кінець

КнопкаМенюЗаЗамовчуванням.назва_типу = "MenuButtonDefault"

КнопкаМенюЗаЗамовчуванням.створити_з_телеграм_обʼєкта = (то): то ? КнопкаМенюЗаЗамовчуванням(
  тип=то.type
) : пусто

дія КнопкаМенюЗаЗамовчуванням.перетворити_на_телеграм_обʼєкт()
  (
    type=я.тип
  )
кінець

;; ---

структура ПараметриВідповіді
  перенесено_до_ідентифікатора_чату число = undefined
  спробуйте_пізніше число = undefined
кінець

ПараметриВідповіді.назва_типу = "ResponseParameters"

ПараметриВідповіді.створити_з_телеграм_обʼєкта = (то): то ? ПараметриВідповіді(
  перенесено_до_ідентифікатора_чату=то.migrate_to_chat_id,
  спробуйте_пізніше=то.retry_after
) : пусто

дія ПараметриВідповіді.перетворити_на_телеграм_обʼєкт()
  (
    migrate_to_chat_id=я.перенесено_до_ідентифікатора_чату,
    retry_after=я.спробуйте_пізніше
  )
кінець

;; ---

структура ВвідМедіа
кінець

ВвідМедіа.назва_типу = "InputMedia"

ВвідМедіа.створити_з_телеграм_обʼєкта = (то): то ? ВвідМедіа() : пусто

дія ВвідМедіа.перетворити_на_телеграм_обʼєкт()
  ()
кінець

;; ---

структура ВхіднеМедіаФото
  тип текст = undefined
  медіа текст = undefined
  підпис текст = undefined
  режим_розбору текст = undefined
  сутності_підпису Список = undefined
  має_спойлер логічне = undefined
кінець

ВхіднеМедіаФото.назва_типу = "InputMediaPhoto"

ВхіднеМедіаФото.створити_з_телеграм_обʼєкта = (то): то ? ВхіднеМедіаФото(
  тип=то.type,
  медіа=то.media,
  підпис=то.caption,
  режим_розбору=то.parse_mode,
  сутності_підпису=то.caption_entities,
  має_спойлер=то.has_spoiler
) : пусто

дія ВхіднеМедіаФото.перетворити_на_телеграм_обʼєкт()
  (
    type=я.тип,
    media=я.медіа,
    caption=я.підпис,
    parse_mode=я.режим_розбору,
    caption_entities=я.сутності_підпису,
    has_spoiler=я.має_спойлер
  )
кінець

;; ---

структура ВхіднеМедіаВідео
  тип текст = undefined
  медіа текст = undefined
  мініатюра ВвідФайлу = undefined
  підпис текст = undefined
  режим_розбору текст = undefined
  сутності_підпису Список = undefined
  ширина число = undefined
  висота число = undefined
  тривалість число = undefined
  підтримує_стрімінг логічне = undefined
  має_спойлер логічне = undefined
кінець

ВхіднеМедіаВідео.назва_типу = "InputMediaVideo"

ВхіднеМедіаВідео.створити_з_телеграм_обʼєкта = (то): то ? ВхіднеМедіаВідео(
  тип=то.type,
  медіа=то.media,
  мініатюра=ВвідФайлу.створити_з_телеграм_обʼєкта(то.thumb),
  підпис=то.caption,
  режим_розбору=то.parse_mode,
  сутності_підпису=то.caption_entities,
  ширина=то.width,
  висота=то.height,
  тривалість=то.duration,
  підтримує_стрімінг=то.supports_streaming,
  має_спойлер=то.has_spoiler
) : пусто

дія ВхіднеМедіаВідео.перетворити_на_телеграм_обʼєкт()
  (
    type=я.тип,
    media=я.медіа,
    thumb=я.мініатюра,
    caption=я.підпис,
    parse_mode=я.режим_розбору,
    caption_entities=я.сутності_підпису,
    width=я.ширина,
    height=я.висота,
    duration=я.тривалість,
    supports_streaming=я.підтримує_стрімінг,
    has_spoiler=я.має_спойлер
  )
кінець

;; ---

структура ВхіднеМедіаАнімація
  тип текст = undefined
  медіа текст = undefined
  мініатюра ВвідФайлу = undefined
  підпис текст = undefined
  режим_розбору текст = undefined
  сутності_підпису Список = undefined
  ширина число = undefined
  висота число = undefined
  тривалість число = undefined
  має_спойлер логічне = undefined
кінець

ВхіднеМедіаАнімація.назва_типу = "InputMediaAnimation"

ВхіднеМедіаАнімація.створити_з_телеграм_обʼєкта = (то): то ? ВхіднеМедіаАнімація(
  тип=то.type,
  медіа=то.media,
  мініатюра=ВвідФайлу.створити_з_телеграм_обʼєкта(то.thumb),
  підпис=то.caption,
  режим_розбору=то.parse_mode,
  сутності_підпису=то.caption_entities,
  ширина=то.width,
  висота=то.height,
  тривалість=то.duration,
  має_спойлер=то.has_spoiler
) : пусто

дія ВхіднеМедіаАнімація.перетворити_на_телеграм_обʼєкт()
  (
    type=я.тип,
    media=я.медіа,
    thumb=я.мініатюра,
    caption=я.підпис,
    parse_mode=я.режим_розбору,
    caption_entities=я.сутності_підпису,
    width=я.ширина,
    height=я.висота,
    duration=я.тривалість,
    has_spoiler=я.має_спойлер
  )
кінець

;; ---

структура ВхіднеМедіаАудіо
  тип текст = undefined
  медіа текст = undefined
  мініатюра ВвідФайлу = undefined
  підпис текст = undefined
  режим_розбору текст = undefined
  сутності_підпису Список = undefined
  тривалість число = undefined
  виконавець текст = undefined
  назва текст = undefined
кінець

ВхіднеМедіаАудіо.назва_типу = "InputMediaAudio"

ВхіднеМедіаАудіо.створити_з_телеграм_обʼєкта = (то): то ? ВхіднеМедіаАудіо(
  тип=то.type,
  медіа=то.media,
  мініатюра=ВвідФайлу.створити_з_телеграм_обʼєкта(то.thumb),
  підпис=то.caption,
  режим_розбору=то.parse_mode,
  сутності_підпису=то.caption_entities,
  тривалість=то.duration,
  виконавець=то.performer,
  назва=то.title
) : пусто

дія ВхіднеМедіаАудіо.перетворити_на_телеграм_обʼєкт()
  (
    type=я.тип,
    media=я.медіа,
    thumb=я.мініатюра,
    caption=я.підпис,
    parse_mode=я.режим_розбору,
    caption_entities=я.сутності_підпису,
    duration=я.тривалість,
    performer=я.виконавець,
    title=я.назва
  )
кінець

;; ---

структура ВхіднеМедіаДокумент
  тип текст = undefined
  медіа текст = undefined
  мініатюра ВвідФайлу = undefined
  підпис текст = undefined
  режим_розбору текст = undefined
  сутності_підпису Список = undefined
  вимкнути_визначення_типу_контенту логічне = undefined
кінець

ВхіднеМедіаДокумент.назва_типу = "InputMediaDocument"

ВхіднеМедіаДокумент.створити_з_телеграм_обʼєкта = (то): то ? ВхіднеМедіаДокумент(
  тип=то.type,
  медіа=то.media,
  мініатюра=ВвідФайлу.створити_з_телеграм_обʼєкта(то.thumb),
  підпис=то.caption,
  режим_розбору=то.parse_mode,
  сутності_підпису=то.caption_entities,
  вимкнути_визначення_типу_контенту=то.disable_content_type_detection
) : пусто

дія ВхіднеМедіаДокумент.перетворити_на_телеграм_обʼєкт()
  (
    type=я.тип,
    media=я.медіа,
    thumb=я.мініатюра,
    caption=я.підпис,
    parse_mode=я.режим_розбору,
    caption_entities=я.сутності_підпису,
    disable_content_type_detection=я.вимкнути_визначення_типу_контенту
  )
кінець

;; ---

структура ВвідФайлу
кінець

ВвідФайлу.назва_типу = "InputFile"

ВвідФайлу.створити_з_телеграм_обʼєкта = (то): то ? ВвідФайлу() : пусто

дія ВвідФайлу.перетворити_на_телеграм_обʼєкт()
  ()
кінець

;; ---

структура Стікер
  ідентифікатор_файлу текст = undefined
  унікальний_ідентифікатор_файлу текст = undefined
  тип текст = undefined
  ширина число = undefined
  висота число = undefined
  є_анімованим логічне = undefined
  є_відео логічне = undefined
  мініатюра РозмірФото = undefined
  емодзі текст = undefined
  встановити_ім'я текст = undefined
  преміум_анімація Файл = undefined
  позиція_маски ПозиціяМаски = undefined
  ідентифікатор_спеціального_емодзі текст = undefined
  розмір_файлу число = undefined
кінець

Стікер.назва_типу = "Sticker"

Стікер.створити_з_телеграм_обʼєкта = (то): то ? Стікер(
  ідентифікатор_файлу=то.file_id,
  унікальний_ідентифікатор_файлу=то.file_unique_id,
  тип=то.type,
  ширина=то.width,
  висота=то.height,
  є_анімованим=то.is_animated,
  є_відео=то.is_video,
  мініатюра=РозмірФото.створити_з_телеграм_обʼєкта(то.thumb),
  емодзі=то.emoji,
  встановити_ім'я=то.set_name,
  преміум_анімація=Файл.створити_з_телеграм_обʼєкта(то.premium_animation),
  позиція_маски=ПозиціяМаски.створити_з_телеграм_обʼєкта(то.mask_position),
  ідентифікатор_спеціального_емодзі=то.custom_emoji_id,
  розмір_файлу=то.file_size
) : пусто

дія Стікер.перетворити_на_телеграм_обʼєкт()
  (
    file_id=я.ідентифікатор_файлу,
    file_unique_id=я.унікальний_ідентифікатор_файлу,
    type=я.тип,
    width=я.ширина,
    height=я.висота,
    is_animated=я.є_анімованим,
    is_video=я.є_відео,
    thumb=я.мініатюра,
    emoji=я.емодзі,
    set_name=я.встановити_ім'я,
    premium_animation=я.преміум_анімація,
    mask_position=я.позиція_маски,
    custom_emoji_id=я.ідентифікатор_спеціального_емодзі,
    file_size=я.розмір_файлу
  )
кінець

;; ---

структура НабірСтікерів
  назва текст = undefined
  назва текст = undefined
  тип_стікера текст = undefined
  є_анімованим логічне = undefined
  є_відео логічне = undefined
  стікери Список = undefined
  мініатюра РозмірФото = undefined
кінець

НабірСтікерів.назва_типу = "StickerSet"

НабірСтікерів.створити_з_телеграм_обʼєкта = (то): то ? НабірСтікерів(
  назва=то.name,
  назва=то.title,
  тип_стікера=то.sticker_type,
  є_анімованим=то.is_animated,
  є_відео=то.is_video,
  стікери=то.stickers,
  мініатюра=РозмірФото.створити_з_телеграм_обʼєкта(то.thumb)
) : пусто

дія НабірСтікерів.перетворити_на_телеграм_обʼєкт()
  (
    name=я.назва,
    title=я.назва,
    sticker_type=я.тип_стікера,
    is_animated=я.є_анімованим,
    is_video=я.є_відео,
    stickers=я.стікери,
    thumb=я.мініатюра
  )
кінець

;; ---

структура ПозиціяМаски
  точка текст = undefined
  зсув_x число = undefined
  зсув_y число = undefined
  масштаб число = undefined
кінець

ПозиціяМаски.назва_типу = "MaskPosition"

ПозиціяМаски.створити_з_телеграм_обʼєкта = (то): то ? ПозиціяМаски(
  точка=то.point,
  зсув_x=то.x_shift,
  зсув_y=то.y_shift,
  масштаб=то.scale
) : пусто

дія ПозиціяМаски.перетворити_на_телеграм_обʼєкт()
  (
    point=я.точка,
    x_shift=я.зсув_x,
    y_shift=я.зсув_y,
    scale=я.масштаб
  )
кінець

;; ---

структура ВбудованийЗапит
  ідентифікатор текст = undefined
  від Користувач = undefined
  запит текст = undefined
  зсув текст = undefined
  тип_чату текст = undefined
  розташування Місцезнаходження = undefined
кінець

ВбудованийЗапит.назва_типу = "InlineQuery"

ВбудованийЗапит.створити_з_телеграм_обʼєкта = (то): то ? ВбудованийЗапит(
  ідентифікатор=то.id,
  від=Користувач.створити_з_телеграм_обʼєкта(то.from),
  запит=то.query,
  зсув=то.offset,
  тип_чату=то.chat_type,
  розташування=Місцезнаходження.створити_з_телеграм_обʼєкта(то.location)
) : пусто

дія ВбудованийЗапит.перетворити_на_телеграм_обʼєкт()
  (
    id=я.ідентифікатор,
    from=я.від,
    query=я.запит,
    offset=я.зсув,
    chat_type=я.тип_чату,
    location=я.розташування
  )
кінець

;; ---

структура РезультатВбудованогоЗапиту
кінець

РезультатВбудованогоЗапиту.назва_типу = "InlineQueryResult"

РезультатВбудованогоЗапиту.створити_з_телеграм_обʼєкта = (то): то ? РезультатВбудованогоЗапиту() : пусто

дія РезультатВбудованогоЗапиту.перетворити_на_телеграм_обʼєкт()
  ()
кінець

;; ---

структура РезультатВбудованогоЗапитуСтаття
  тип текст = undefined
  ідентифікатор текст = undefined
  назва текст = undefined
  вхідний_контент_повідомлення ВмістВведенняПовідомлення = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
  урл текст = undefined
  приховати_посилання логічне = undefined
  опис текст = undefined
  посилання_на_мініатюру текст = undefined
  ширина_мініатюри число = undefined
  висота_мініатюри число = undefined
кінець

РезультатВбудованогоЗапитуСтаття.назва_типу = "InlineQueryResultArticle"

РезультатВбудованогоЗапитуСтаття.створити_з_телеграм_обʼєкта = (то): то ? РезультатВбудованогоЗапитуСтаття(
  тип=то.type,
  ідентифікатор=то.id,
  назва=то.title,
  вхідний_контент_повідомлення=ВмістВведенняПовідомлення.створити_з_телеграм_обʼєкта(то.input_message_content),
  розмітка_відповіді=РозміткаІнлайнКлавіатури.створити_з_телеграм_обʼєкта(то.reply_markup),
  урл=то.url,
  приховати_посилання=то.hide_url,
  опис=то.description,
  посилання_на_мініатюру=то.thumb_url,
  ширина_мініатюри=то.thumb_width,
  висота_мініатюри=то.thumb_height
) : пусто

дія РезультатВбудованогоЗапитуСтаття.перетворити_на_телеграм_обʼєкт()
  (
    type=я.тип,
    id=я.ідентифікатор,
    title=я.назва,
    input_message_content=я.вхідний_контент_повідомлення,
    reply_markup=я.розмітка_відповіді,
    url=я.урл,
    hide_url=я.приховати_посилання,
    description=я.опис,
    thumb_url=я.посилання_на_мініатюру,
    thumb_width=я.ширина_мініатюри,
    thumb_height=я.висота_мініатюри
  )
кінець

;; ---

структура РезультатВбудованогоЗапитуФото
  тип текст = undefined
  ідентифікатор текст = undefined
  посилання_на_фото текст = undefined
  посилання_на_мініатюру текст = undefined
  ширина_фото число = undefined
  висота_фото число = undefined
  назва текст = undefined
  опис текст = undefined
  підпис текст = undefined
  режим_розбору текст = undefined
  сутності_підпису Список = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
  вхідний_контент_повідомлення ВмістВведенняПовідомлення = undefined
кінець

РезультатВбудованогоЗапитуФото.назва_типу = "InlineQueryResultPhoto"

РезультатВбудованогоЗапитуФото.створити_з_телеграм_обʼєкта = (то): то ? РезультатВбудованогоЗапитуФото(
  тип=то.type,
  ідентифікатор=то.id,
  посилання_на_фото=то.photo_url,
  посилання_на_мініатюру=то.thumb_url,
  ширина_фото=то.photo_width,
  висота_фото=то.photo_height,
  назва=то.title,
  опис=то.description,
  підпис=то.caption,
  режим_розбору=то.parse_mode,
  сутності_підпису=то.caption_entities,
  розмітка_відповіді=РозміткаІнлайнКлавіатури.створити_з_телеграм_обʼєкта(то.reply_markup),
  вхідний_контент_повідомлення=ВмістВведенняПовідомлення.створити_з_телеграм_обʼєкта(то.input_message_content)
) : пусто

дія РезультатВбудованогоЗапитуФото.перетворити_на_телеграм_обʼєкт()
  (
    type=я.тип,
    id=я.ідентифікатор,
    photo_url=я.посилання_на_фото,
    thumb_url=я.посилання_на_мініатюру,
    photo_width=я.ширина_фото,
    photo_height=я.висота_фото,
    title=я.назва,
    description=я.опис,
    caption=я.підпис,
    parse_mode=я.режим_розбору,
    caption_entities=я.сутності_підпису,
    reply_markup=я.розмітка_відповіді,
    input_message_content=я.вхідний_контент_повідомлення
  )
кінець

;; ---

структура РезультатВбудованогоЗапитуGIF
  тип текст = undefined
  ідентифікатор текст = undefined
  посилання_на_GIF текст = undefined
  ширина_GIF число = undefined
  висота_GIF число = undefined
  тривалість_GIF число = undefined
  посилання_на_мініатюру текст = undefined
  мімтип_мініатюри текст = undefined
  назва текст = undefined
  підпис текст = undefined
  режим_розбору текст = undefined
  сутності_підпису Список = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
  вхідний_контент_повідомлення ВмістВведенняПовідомлення = undefined
кінець

РезультатВбудованогоЗапитуGIF.назва_типу = "InlineQueryResultGif"

РезультатВбудованогоЗапитуGIF.створити_з_телеграм_обʼєкта = (то): то ? РезультатВбудованогоЗапитуGIF(
  тип=то.type,
  ідентифікатор=то.id,
  посилання_на_GIF=то.gif_url,
  ширина_GIF=то.gif_width,
  висота_GIF=то.gif_height,
  тривалість_GIF=то.gif_duration,
  посилання_на_мініатюру=то.thumb_url,
  мімтип_мініатюри=то.thumb_mime_type,
  назва=то.title,
  підпис=то.caption,
  режим_розбору=то.parse_mode,
  сутності_підпису=то.caption_entities,
  розмітка_відповіді=РозміткаІнлайнКлавіатури.створити_з_телеграм_обʼєкта(то.reply_markup),
  вхідний_контент_повідомлення=ВмістВведенняПовідомлення.створити_з_телеграм_обʼєкта(то.input_message_content)
) : пусто

дія РезультатВбудованогоЗапитуGIF.перетворити_на_телеграм_обʼєкт()
  (
    type=я.тип,
    id=я.ідентифікатор,
    gif_url=я.посилання_на_GIF,
    gif_width=я.ширина_GIF,
    gif_height=я.висота_GIF,
    gif_duration=я.тривалість_GIF,
    thumb_url=я.посилання_на_мініатюру,
    thumb_mime_type=я.мімтип_мініатюри,
    title=я.назва,
    caption=я.підпис,
    parse_mode=я.режим_розбору,
    caption_entities=я.сутності_підпису,
    reply_markup=я.розмітка_відповіді,
    input_message_content=я.вхідний_контент_повідомлення
  )
кінець

;; ---

структура РезультатВбудованогоЗапитуMPEG4GIF
  тип текст = undefined
  ідентифікатор текст = undefined
  посилання_на_MPEG4 текст = undefined
  ширина_MPEG4 число = undefined
  висота_MPEG4 число = undefined
  тривалість_MPEG4 число = undefined
  посилання_на_мініатюру текст = undefined
  мімтип_мініатюри текст = undefined
  назва текст = undefined
  підпис текст = undefined
  режим_розбору текст = undefined
  сутності_підпису Список = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
  вхідний_контент_повідомлення ВмістВведенняПовідомлення = undefined
кінець

РезультатВбудованогоЗапитуMPEG4GIF.назва_типу = "InlineQueryResultMpeg4Gif"

РезультатВбудованогоЗапитуMPEG4GIF.створити_з_телеграм_обʼєкта = (то): то ? РезультатВбудованогоЗапитуMPEG4GIF(
  тип=то.type,
  ідентифікатор=то.id,
  посилання_на_MPEG4=то.mpeg4_url,
  ширина_MPEG4=то.mpeg4_width,
  висота_MPEG4=то.mpeg4_height,
  тривалість_MPEG4=то.mpeg4_duration,
  посилання_на_мініатюру=то.thumb_url,
  мімтип_мініатюри=то.thumb_mime_type,
  назва=то.title,
  підпис=то.caption,
  режим_розбору=то.parse_mode,
  сутності_підпису=то.caption_entities,
  розмітка_відповіді=РозміткаІнлайнКлавіатури.створити_з_телеграм_обʼєкта(то.reply_markup),
  вхідний_контент_повідомлення=ВмістВведенняПовідомлення.створити_з_телеграм_обʼєкта(то.input_message_content)
) : пусто

дія РезультатВбудованогоЗапитуMPEG4GIF.перетворити_на_телеграм_обʼєкт()
  (
    type=я.тип,
    id=я.ідентифікатор,
    mpeg4_url=я.посилання_на_MPEG4,
    mpeg4_width=я.ширина_MPEG4,
    mpeg4_height=я.висота_MPEG4,
    mpeg4_duration=я.тривалість_MPEG4,
    thumb_url=я.посилання_на_мініатюру,
    thumb_mime_type=я.мімтип_мініатюри,
    title=я.назва,
    caption=я.підпис,
    parse_mode=я.режим_розбору,
    caption_entities=я.сутності_підпису,
    reply_markup=я.розмітка_відповіді,
    input_message_content=я.вхідний_контент_повідомлення
  )
кінець

;; ---

структура РезультатВбудованогоЗапитуВідео
  тип текст = undefined
  ідентифікатор текст = undefined
  посилання_на_відео текст = undefined
  мімтип текст = undefined
  посилання_на_мініатюру текст = undefined
  назва текст = undefined
  підпис текст = undefined
  режим_розбору текст = undefined
  сутності_підпису Список = undefined
  ширина_відео число = undefined
  висота_відео число = undefined
  тривалість_відео число = undefined
  опис текст = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
  вхідний_контент_повідомлення ВмістВведенняПовідомлення = undefined
кінець

РезультатВбудованогоЗапитуВідео.назва_типу = "InlineQueryResultVideo"

РезультатВбудованогоЗапитуВідео.створити_з_телеграм_обʼєкта = (то): то ? РезультатВбудованогоЗапитуВідео(
  тип=то.type,
  ідентифікатор=то.id,
  посилання_на_відео=то.video_url,
  мімтип=то.mime_type,
  посилання_на_мініатюру=то.thumb_url,
  назва=то.title,
  підпис=то.caption,
  режим_розбору=то.parse_mode,
  сутності_підпису=то.caption_entities,
  ширина_відео=то.video_width,
  висота_відео=то.video_height,
  тривалість_відео=то.video_duration,
  опис=то.description,
  розмітка_відповіді=РозміткаІнлайнКлавіатури.створити_з_телеграм_обʼєкта(то.reply_markup),
  вхідний_контент_повідомлення=ВмістВведенняПовідомлення.створити_з_телеграм_обʼєкта(то.input_message_content)
) : пусто

дія РезультатВбудованогоЗапитуВідео.перетворити_на_телеграм_обʼєкт()
  (
    type=я.тип,
    id=я.ідентифікатор,
    video_url=я.посилання_на_відео,
    mime_type=я.мімтип,
    thumb_url=я.посилання_на_мініатюру,
    title=я.назва,
    caption=я.підпис,
    parse_mode=я.режим_розбору,
    caption_entities=я.сутності_підпису,
    video_width=я.ширина_відео,
    video_height=я.висота_відео,
    video_duration=я.тривалість_відео,
    description=я.опис,
    reply_markup=я.розмітка_відповіді,
    input_message_content=я.вхідний_контент_повідомлення
  )
кінець

;; ---

структура РезультатВбудованогоЗапитуАудіо
  тип текст = undefined
  ідентифікатор текст = undefined
  посилання_на_аудіо текст = undefined
  назва текст = undefined
  підпис текст = undefined
  режим_розбору текст = undefined
  сутності_підпису Список = undefined
  виконавець текст = undefined
  тривалість_аудіо число = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
  вхідний_контент_повідомлення ВмістВведенняПовідомлення = undefined
кінець

РезультатВбудованогоЗапитуАудіо.назва_типу = "InlineQueryResultAudio"

РезультатВбудованогоЗапитуАудіо.створити_з_телеграм_обʼєкта = (то): то ? РезультатВбудованогоЗапитуАудіо(
  тип=то.type,
  ідентифікатор=то.id,
  посилання_на_аудіо=то.audio_url,
  назва=то.title,
  підпис=то.caption,
  режим_розбору=то.parse_mode,
  сутності_підпису=то.caption_entities,
  виконавець=то.performer,
  тривалість_аудіо=то.audio_duration,
  розмітка_відповіді=РозміткаІнлайнКлавіатури.створити_з_телеграм_обʼєкта(то.reply_markup),
  вхідний_контент_повідомлення=ВмістВведенняПовідомлення.створити_з_телеграм_обʼєкта(то.input_message_content)
) : пусто

дія РезультатВбудованогоЗапитуАудіо.перетворити_на_телеграм_обʼєкт()
  (
    type=я.тип,
    id=я.ідентифікатор,
    audio_url=я.посилання_на_аудіо,
    title=я.назва,
    caption=я.підпис,
    parse_mode=я.режим_розбору,
    caption_entities=я.сутності_підпису,
    performer=я.виконавець,
    audio_duration=я.тривалість_аудіо,
    reply_markup=я.розмітка_відповіді,
    input_message_content=я.вхідний_контент_повідомлення
  )
кінець

;; ---

структура РезультатВбудованогоЗапитуГолос
  тип текст = undefined
  ідентифікатор текст = undefined
  посилання_на_голосове_повідомлення текст = undefined
  назва текст = undefined
  підпис текст = undefined
  режим_розбору текст = undefined
  сутності_підпису Список = undefined
  тривалість_голосового_повідомлення число = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
  вхідний_контент_повідомлення ВмістВведенняПовідомлення = undefined
кінець

РезультатВбудованогоЗапитуГолос.назва_типу = "InlineQueryResultVoice"

РезультатВбудованогоЗапитуГолос.створити_з_телеграм_обʼєкта = (то): то ? РезультатВбудованогоЗапитуГолос(
  тип=то.type,
  ідентифікатор=то.id,
  посилання_на_голосове_повідомлення=то.voice_url,
  назва=то.title,
  підпис=то.caption,
  режим_розбору=то.parse_mode,
  сутності_підпису=то.caption_entities,
  тривалість_голосового_повідомлення=то.voice_duration,
  розмітка_відповіді=РозміткаІнлайнКлавіатури.створити_з_телеграм_обʼєкта(то.reply_markup),
  вхідний_контент_повідомлення=ВмістВведенняПовідомлення.створити_з_телеграм_обʼєкта(то.input_message_content)
) : пусто

дія РезультатВбудованогоЗапитуГолос.перетворити_на_телеграм_обʼєкт()
  (
    type=я.тип,
    id=я.ідентифікатор,
    voice_url=я.посилання_на_голосове_повідомлення,
    title=я.назва,
    caption=я.підпис,
    parse_mode=я.режим_розбору,
    caption_entities=я.сутності_підпису,
    voice_duration=я.тривалість_голосового_повідомлення,
    reply_markup=я.розмітка_відповіді,
    input_message_content=я.вхідний_контент_повідомлення
  )
кінець

;; ---

структура РезультатВбудованогоЗапитуДокумент
  тип текст = undefined
  ідентифікатор текст = undefined
  назва текст = undefined
  підпис текст = undefined
  режим_розбору текст = undefined
  сутності_підпису Список = undefined
  посилання_на_документ текст = undefined
  мімтип текст = undefined
  опис текст = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
  вхідний_контент_повідомлення ВмістВведенняПовідомлення = undefined
  посилання_на_мініатюру текст = undefined
  ширина_мініатюри число = undefined
  висота_мініатюри число = undefined
кінець

РезультатВбудованогоЗапитуДокумент.назва_типу = "InlineQueryResultDocument"

РезультатВбудованогоЗапитуДокумент.створити_з_телеграм_обʼєкта = (то): то ? РезультатВбудованогоЗапитуДокумент(
  тип=то.type,
  ідентифікатор=то.id,
  назва=то.title,
  підпис=то.caption,
  режим_розбору=то.parse_mode,
  сутності_підпису=то.caption_entities,
  посилання_на_документ=то.document_url,
  мімтип=то.mime_type,
  опис=то.description,
  розмітка_відповіді=РозміткаІнлайнКлавіатури.створити_з_телеграм_обʼєкта(то.reply_markup),
  вхідний_контент_повідомлення=ВмістВведенняПовідомлення.створити_з_телеграм_обʼєкта(то.input_message_content),
  посилання_на_мініатюру=то.thumb_url,
  ширина_мініатюри=то.thumb_width,
  висота_мініатюри=то.thumb_height
) : пусто

дія РезультатВбудованогоЗапитуДокумент.перетворити_на_телеграм_обʼєкт()
  (
    type=я.тип,
    id=я.ідентифікатор,
    title=я.назва,
    caption=я.підпис,
    parse_mode=я.режим_розбору,
    caption_entities=я.сутності_підпису,
    document_url=я.посилання_на_документ,
    mime_type=я.мімтип,
    description=я.опис,
    reply_markup=я.розмітка_відповіді,
    input_message_content=я.вхідний_контент_повідомлення,
    thumb_url=я.посилання_на_мініатюру,
    thumb_width=я.ширина_мініатюри,
    thumb_height=я.висота_мініатюри
  )
кінець

;; ---

структура РезультатВбудованогоЗапитуМісцезнаходження
  тип текст = undefined
  ідентифікатор текст = undefined
  широта число = undefined
  довгота число = undefined
  назва текст = undefined
  горизонтальна_точність число = undefined
  активний_період число = undefined
  напрямок число = undefined
  радіус_сповіщення число = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
  вхідний_контент_повідомлення ВмістВведенняПовідомлення = undefined
  посилання_на_мініатюру текст = undefined
  ширина_мініатюри число = undefined
  висота_мініатюри число = undefined
кінець

РезультатВбудованогоЗапитуМісцезнаходження.назва_типу = "InlineQueryResultLocation"

РезультатВбудованогоЗапитуМісцезнаходження.створити_з_телеграм_обʼєкта = (то): то ? РезультатВбудованогоЗапитуМісцезнаходження(
  тип=то.type,
  ідентифікатор=то.id,
  широта=то.latitude,
  довгота=то.longitude,
  назва=то.title,
  горизонтальна_точність=то.horizontal_accuracy,
  активний_період=то.live_period,
  напрямок=то.heading,
  радіус_сповіщення=то.proximity_alert_radius,
  розмітка_відповіді=РозміткаІнлайнКлавіатури.створити_з_телеграм_обʼєкта(то.reply_markup),
  вхідний_контент_повідомлення=ВмістВведенняПовідомлення.створити_з_телеграм_обʼєкта(то.input_message_content),
  посилання_на_мініатюру=то.thumb_url,
  ширина_мініатюри=то.thumb_width,
  висота_мініатюри=то.thumb_height
) : пусто

дія РезультатВбудованогоЗапитуМісцезнаходження.перетворити_на_телеграм_обʼєкт()
  (
    type=я.тип,
    id=я.ідентифікатор,
    latitude=я.широта,
    longitude=я.довгота,
    title=я.назва,
    horizontal_accuracy=я.горизонтальна_точність,
    live_period=я.активний_період,
    heading=я.напрямок,
    proximity_alert_radius=я.радіус_сповіщення,
    reply_markup=я.розмітка_відповіді,
    input_message_content=я.вхідний_контент_повідомлення,
    thumb_url=я.посилання_на_мініатюру,
    thumb_width=я.ширина_мініатюри,
    thumb_height=я.висота_мініатюри
  )
кінець

;; ---

структура РезультатВбудованогоЗапитуЗаклад
  тип текст = undefined
  ідентифікатор текст = undefined
  широта число = undefined
  довгота число = undefined
  назва текст = undefined
  адреса текст = undefined
  ідентифікатор_Foursquare текст = undefined
  тип_Foursquare текст = undefined
  ідентифікатор_Google текст = undefined
  тип_Google текст = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
  вхідний_контент_повідомлення ВмістВведенняПовідомлення = undefined
  посилання_на_мініатюру текст = undefined
  ширина_мініатюри число = undefined
  висота_мініатюри число = undefined
кінець

РезультатВбудованогоЗапитуЗаклад.назва_типу = "InlineQueryResultVenue"

РезультатВбудованогоЗапитуЗаклад.створити_з_телеграм_обʼєкта = (то): то ? РезультатВбудованогоЗапитуЗаклад(
  тип=то.type,
  ідентифікатор=то.id,
  широта=то.latitude,
  довгота=то.longitude,
  назва=то.title,
  адреса=то.address,
  ідентифікатор_Foursquare=то.foursquare_id,
  тип_Foursquare=то.foursquare_type,
  ідентифікатор_Google=то.google_place_id,
  тип_Google=то.google_place_type,
  розмітка_відповіді=РозміткаІнлайнКлавіатури.створити_з_телеграм_обʼєкта(то.reply_markup),
  вхідний_контент_повідомлення=ВмістВведенняПовідомлення.створити_з_телеграм_обʼєкта(то.input_message_content),
  посилання_на_мініатюру=то.thumb_url,
  ширина_мініатюри=то.thumb_width,
  висота_мініатюри=то.thumb_height
) : пусто

дія РезультатВбудованогоЗапитуЗаклад.перетворити_на_телеграм_обʼєкт()
  (
    type=я.тип,
    id=я.ідентифікатор,
    latitude=я.широта,
    longitude=я.довгота,
    title=я.назва,
    address=я.адреса,
    foursquare_id=я.ідентифікатор_Foursquare,
    foursquare_type=я.тип_Foursquare,
    google_place_id=я.ідентифікатор_Google,
    google_place_type=я.тип_Google,
    reply_markup=я.розмітка_відповіді,
    input_message_content=я.вхідний_контент_повідомлення,
    thumb_url=я.посилання_на_мініатюру,
    thumb_width=я.ширина_мініатюри,
    thumb_height=я.висота_мініатюри
  )
кінець

;; ---

структура РезультатВбудованогоЗапитуКонтакт
  тип текст = undefined
  ідентифікатор текст = undefined
  номер_телефону текст = undefined
  ім'я текст = undefined
  прізвище текст = undefined
  візитна_картка текст = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
  вхідний_контент_повідомлення ВмістВведенняПовідомлення = undefined
  посилання_на_мініатюру текст = undefined
  ширина_мініатюри число = undefined
  висота_мініатюри число = undefined
кінець

РезультатВбудованогоЗапитуКонтакт.назва_типу = "InlineQueryResultContact"

РезультатВбудованогоЗапитуКонтакт.створити_з_телеграм_обʼєкта = (то): то ? РезультатВбудованогоЗапитуКонтакт(
  тип=то.type,
  ідентифікатор=то.id,
  номер_телефону=то.phone_number,
  ім'я=то.first_name,
  прізвище=то.last_name,
  візитна_картка=то.vcard,
  розмітка_відповіді=РозміткаІнлайнКлавіатури.створити_з_телеграм_обʼєкта(то.reply_markup),
  вхідний_контент_повідомлення=ВмістВведенняПовідомлення.створити_з_телеграм_обʼєкта(то.input_message_content),
  посилання_на_мініатюру=то.thumb_url,
  ширина_мініатюри=то.thumb_width,
  висота_мініатюри=то.thumb_height
) : пусто

дія РезультатВбудованогоЗапитуКонтакт.перетворити_на_телеграм_обʼєкт()
  (
    type=я.тип,
    id=я.ідентифікатор,
    phone_number=я.номер_телефону,
    first_name=я.ім'я,
    last_name=я.прізвище,
    vcard=я.візитна_картка,
    reply_markup=я.розмітка_відповіді,
    input_message_content=я.вхідний_контент_повідомлення,
    thumb_url=я.посилання_на_мініатюру,
    thumb_width=я.ширина_мініатюри,
    thumb_height=я.висота_мініатюри
  )
кінець

;; ---

структура РезультатВбудованогоЗапитуГра
  тип текст = undefined
  ідентифікатор текст = undefined
  коротке_ім'я_гри текст = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
кінець

РезультатВбудованогоЗапитуГра.назва_типу = "InlineQueryResultGame"

РезультатВбудованогоЗапитуГра.створити_з_телеграм_обʼєкта = (то): то ? РезультатВбудованогоЗапитуГра(
  тип=то.type,
  ідентифікатор=то.id,
  коротке_ім'я_гри=то.game_short_name,
  розмітка_відповіді=РозміткаІнлайнКлавіатури.створити_з_телеграм_обʼєкта(то.reply_markup)
) : пусто

дія РезультатВбудованогоЗапитуГра.перетворити_на_телеграм_обʼєкт()
  (
    type=я.тип,
    id=я.ідентифікатор,
    game_short_name=я.коротке_ім'я_гри,
    reply_markup=я.розмітка_відповіді
  )
кінець

;; ---

структура ЗбереженийРезультатВбудованогоЗапитуФото
  тип текст = undefined
  ідентифікатор текст = undefined
  ідентифікатор_файлу_фото текст = undefined
  назва текст = undefined
  опис текст = undefined
  підпис текст = undefined
  режим_розбору текст = undefined
  сутності_підпису Список = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
  вхідний_контент_повідомлення ВмістВведенняПовідомлення = undefined
кінець

ЗбереженийРезультатВбудованогоЗапитуФото.назва_типу = "InlineQueryResultCachedPhoto"

ЗбереженийРезультатВбудованогоЗапитуФото.створити_з_телеграм_обʼєкта = (то): то ? ЗбереженийРезультатВбудованогоЗапитуФото(
  тип=то.type,
  ідентифікатор=то.id,
  ідентифікатор_файлу_фото=то.photo_file_id,
  назва=то.title,
  опис=то.description,
  підпис=то.caption,
  режим_розбору=то.parse_mode,
  сутності_підпису=то.caption_entities,
  розмітка_відповіді=РозміткаІнлайнКлавіатури.створити_з_телеграм_обʼєкта(то.reply_markup),
  вхідний_контент_повідомлення=ВмістВведенняПовідомлення.створити_з_телеграм_обʼєкта(то.input_message_content)
) : пусто

дія ЗбереженийРезультатВбудованогоЗапитуФото.перетворити_на_телеграм_обʼєкт()
  (
    type=я.тип,
    id=я.ідентифікатор,
    photo_file_id=я.ідентифікатор_файлу_фото,
    title=я.назва,
    description=я.опис,
    caption=я.підпис,
    parse_mode=я.режим_розбору,
    caption_entities=я.сутності_підпису,
    reply_markup=я.розмітка_відповіді,
    input_message_content=я.вхідний_контент_повідомлення
  )
кінець

;; ---

структура ЗбереженийРезультатВбудованогоЗапитуГіф
  тип текст = undefined
  ідентифікатор текст = undefined
  ідентифікатор_файлу_GIF текст = undefined
  назва текст = undefined
  підпис текст = undefined
  режим_розбору текст = undefined
  сутності_підпису Список = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
  вхідний_контент_повідомлення ВмістВведенняПовідомлення = undefined
кінець

ЗбереженийРезультатВбудованогоЗапитуГіф.назва_типу = "InlineQueryResultCachedGif"

ЗбереженийРезультатВбудованогоЗапитуГіф.створити_з_телеграм_обʼєкта = (то): то ? ЗбереженийРезультатВбудованогоЗапитуГіф(
  тип=то.type,
  ідентифікатор=то.id,
  ідентифікатор_файлу_GIF=то.gif_file_id,
  назва=то.title,
  підпис=то.caption,
  режим_розбору=то.parse_mode,
  сутності_підпису=то.caption_entities,
  розмітка_відповіді=РозміткаІнлайнКлавіатури.створити_з_телеграм_обʼєкта(то.reply_markup),
  вхідний_контент_повідомлення=ВмістВведенняПовідомлення.створити_з_телеграм_обʼєкта(то.input_message_content)
) : пусто

дія ЗбереженийРезультатВбудованогоЗапитуГіф.перетворити_на_телеграм_обʼєкт()
  (
    type=я.тип,
    id=я.ідентифікатор,
    gif_file_id=я.ідентифікатор_файлу_GIF,
    title=я.назва,
    caption=я.підпис,
    parse_mode=я.режим_розбору,
    caption_entities=я.сутності_підпису,
    reply_markup=я.розмітка_відповіді,
    input_message_content=я.вхідний_контент_повідомлення
  )
кінець

;; ---

структура ЗбереженийРезультатВбудованогоЗапитуМпег4Гіф
  тип текст = undefined
  ідентифікатор текст = undefined
  ідентифікатор_файлу_MPEG4 текст = undefined
  назва текст = undefined
  підпис текст = undefined
  режим_розбору текст = undefined
  сутності_підпису Список = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
  вхідний_контент_повідомлення ВмістВведенняПовідомлення = undefined
кінець

ЗбереженийРезультатВбудованогоЗапитуМпег4Гіф.назва_типу = "InlineQueryResultCachedMpeg4Gif"

ЗбереженийРезультатВбудованогоЗапитуМпег4Гіф.створити_з_телеграм_обʼєкта = (то): то ? ЗбереженийРезультатВбудованогоЗапитуМпег4Гіф(
  тип=то.type,
  ідентифікатор=то.id,
  ідентифікатор_файлу_MPEG4=то.mpeg4_file_id,
  назва=то.title,
  підпис=то.caption,
  режим_розбору=то.parse_mode,
  сутності_підпису=то.caption_entities,
  розмітка_відповіді=РозміткаІнлайнКлавіатури.створити_з_телеграм_обʼєкта(то.reply_markup),
  вхідний_контент_повідомлення=ВмістВведенняПовідомлення.створити_з_телеграм_обʼєкта(то.input_message_content)
) : пусто

дія ЗбереженийРезультатВбудованогоЗапитуМпег4Гіф.перетворити_на_телеграм_обʼєкт()
  (
    type=я.тип,
    id=я.ідентифікатор,
    mpeg4_file_id=я.ідентифікатор_файлу_MPEG4,
    title=я.назва,
    caption=я.підпис,
    parse_mode=я.режим_розбору,
    caption_entities=я.сутності_підпису,
    reply_markup=я.розмітка_відповіді,
    input_message_content=я.вхідний_контент_повідомлення
  )
кінець

;; ---

структура КешованийРезультатПошукуСтікера
  тип текст = undefined
  ідентифікатор текст = undefined
  ідентифікатор_файлу_стікера текст = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
  вхідний_контент_повідомлення ВмістВведенняПовідомлення = undefined
кінець

КешованийРезультатПошукуСтікера.назва_типу = "InlineQueryResultCachedSticker"

КешованийРезультатПошукуСтікера.створити_з_телеграм_обʼєкта = (то): то ? КешованийРезультатПошукуСтікера(
  тип=то.type,
  ідентифікатор=то.id,
  ідентифікатор_файлу_стікера=то.sticker_file_id,
  розмітка_відповіді=РозміткаІнлайнКлавіатури.створити_з_телеграм_обʼєкта(то.reply_markup),
  вхідний_контент_повідомлення=ВмістВведенняПовідомлення.створити_з_телеграм_обʼєкта(то.input_message_content)
) : пусто

дія КешованийРезультатПошукуСтікера.перетворити_на_телеграм_обʼєкт()
  (
    type=я.тип,
    id=я.ідентифікатор,
    sticker_file_id=я.ідентифікатор_файлу_стікера,
    reply_markup=я.розмітка_відповіді,
    input_message_content=я.вхідний_контент_повідомлення
  )
кінець

;; ---

структура КешованийРезультатПошукуДокумента
  тип текст = undefined
  ідентифікатор текст = undefined
  назва текст = undefined
  ідентифікатор_файлу_документа текст = undefined
  опис текст = undefined
  підпис текст = undefined
  режим_розбору текст = undefined
  сутності_підпису Список = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
  вхідний_контент_повідомлення ВмістВведенняПовідомлення = undefined
кінець

КешованийРезультатПошукуДокумента.назва_типу = "InlineQueryResultCachedDocument"

КешованийРезультатПошукуДокумента.створити_з_телеграм_обʼєкта = (то): то ? КешованийРезультатПошукуДокумента(
  тип=то.type,
  ідентифікатор=то.id,
  назва=то.title,
  ідентифікатор_файлу_документа=то.document_file_id,
  опис=то.description,
  підпис=то.caption,
  режим_розбору=то.parse_mode,
  сутності_підпису=то.caption_entities,
  розмітка_відповіді=РозміткаІнлайнКлавіатури.створити_з_телеграм_обʼєкта(то.reply_markup),
  вхідний_контент_повідомлення=ВмістВведенняПовідомлення.створити_з_телеграм_обʼєкта(то.input_message_content)
) : пусто

дія КешованийРезультатПошукуДокумента.перетворити_на_телеграм_обʼєкт()
  (
    type=я.тип,
    id=я.ідентифікатор,
    title=я.назва,
    document_file_id=я.ідентифікатор_файлу_документа,
    description=я.опис,
    caption=я.підпис,
    parse_mode=я.режим_розбору,
    caption_entities=я.сутності_підпису,
    reply_markup=я.розмітка_відповіді,
    input_message_content=я.вхідний_контент_повідомлення
  )
кінець

;; ---

структура КешованийРезультатПошукуВідео
  тип текст = undefined
  ідентифікатор текст = undefined
  ідентифікатор_файлу_відео текст = undefined
  назва текст = undefined
  опис текст = undefined
  підпис текст = undefined
  режим_розбору текст = undefined
  сутності_підпису Список = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
  вхідний_контент_повідомлення ВмістВведенняПовідомлення = undefined
кінець

КешованийРезультатПошукуВідео.назва_типу = "InlineQueryResultCachedVideo"

КешованийРезультатПошукуВідео.створити_з_телеграм_обʼєкта = (то): то ? КешованийРезультатПошукуВідео(
  тип=то.type,
  ідентифікатор=то.id,
  ідентифікатор_файлу_відео=то.video_file_id,
  назва=то.title,
  опис=то.description,
  підпис=то.caption,
  режим_розбору=то.parse_mode,
  сутності_підпису=то.caption_entities,
  розмітка_відповіді=РозміткаІнлайнКлавіатури.створити_з_телеграм_обʼєкта(то.reply_markup),
  вхідний_контент_повідомлення=ВмістВведенняПовідомлення.створити_з_телеграм_обʼєкта(то.input_message_content)
) : пусто

дія КешованийРезультатПошукуВідео.перетворити_на_телеграм_обʼєкт()
  (
    type=я.тип,
    id=я.ідентифікатор,
    video_file_id=я.ідентифікатор_файлу_відео,
    title=я.назва,
    description=я.опис,
    caption=я.підпис,
    parse_mode=я.режим_розбору,
    caption_entities=я.сутності_підпису,
    reply_markup=я.розмітка_відповіді,
    input_message_content=я.вхідний_контент_повідомлення
  )
кінець

;; ---

структура КешованийРезультатПошукуГолосу
  тип текст = undefined
  ідентифікатор текст = undefined
  ідентифікатор_файлу_голосового_повідомлення текст = undefined
  назва текст = undefined
  підпис текст = undefined
  режим_розбору текст = undefined
  сутності_підпису Список = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
  вхідний_контент_повідомлення ВмістВведенняПовідомлення = undefined
кінець

КешованийРезультатПошукуГолосу.назва_типу = "InlineQueryResultCachedVoice"

КешованийРезультатПошукуГолосу.створити_з_телеграм_обʼєкта = (то): то ? КешованийРезультатПошукуГолосу(
  тип=то.type,
  ідентифікатор=то.id,
  ідентифікатор_файлу_голосового_повідомлення=то.voice_file_id,
  назва=то.title,
  підпис=то.caption,
  режим_розбору=то.parse_mode,
  сутності_підпису=то.caption_entities,
  розмітка_відповіді=РозміткаІнлайнКлавіатури.створити_з_телеграм_обʼєкта(то.reply_markup),
  вхідний_контент_повідомлення=ВмістВведенняПовідомлення.створити_з_телеграм_обʼєкта(то.input_message_content)
) : пусто

дія КешованийРезультатПошукуГолосу.перетворити_на_телеграм_обʼєкт()
  (
    type=я.тип,
    id=я.ідентифікатор,
    voice_file_id=я.ідентифікатор_файлу_голосового_повідомлення,
    title=я.назва,
    caption=я.підпис,
    parse_mode=я.режим_розбору,
    caption_entities=я.сутності_підпису,
    reply_markup=я.розмітка_відповіді,
    input_message_content=я.вхідний_контент_повідомлення
  )
кінець

;; ---

структура КешованийРезультатПошукуАудіо
  тип текст = undefined
  ідентифікатор текст = undefined
  ідентифікатор_файлу_аудіо текст = undefined
  підпис текст = undefined
  режим_розбору текст = undefined
  сутності_підпису Список = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
  вхідний_контент_повідомлення ВмістВведенняПовідомлення = undefined
кінець

КешованийРезультатПошукуАудіо.назва_типу = "InlineQueryResultCachedAudio"

КешованийРезультатПошукуАудіо.створити_з_телеграм_обʼєкта = (то): то ? КешованийРезультатПошукуАудіо(
  тип=то.type,
  ідентифікатор=то.id,
  ідентифікатор_файлу_аудіо=то.audio_file_id,
  підпис=то.caption,
  режим_розбору=то.parse_mode,
  сутності_підпису=то.caption_entities,
  розмітка_відповіді=РозміткаІнлайнКлавіатури.створити_з_телеграм_обʼєкта(то.reply_markup),
  вхідний_контент_повідомлення=ВмістВведенняПовідомлення.створити_з_телеграм_обʼєкта(то.input_message_content)
) : пусто

дія КешованийРезультатПошукуАудіо.перетворити_на_телеграм_обʼєкт()
  (
    type=я.тип,
    id=я.ідентифікатор,
    audio_file_id=я.ідентифікатор_файлу_аудіо,
    caption=я.підпис,
    parse_mode=я.режим_розбору,
    caption_entities=я.сутності_підпису,
    reply_markup=я.розмітка_відповіді,
    input_message_content=я.вхідний_контент_повідомлення
  )
кінець

;; ---

структура ВмістВведенняПовідомлення
кінець

ВмістВведенняПовідомлення.назва_типу = "InputMessageContent"

ВмістВведенняПовідомлення.створити_з_телеграм_обʼєкта = (то): то ? ВмістВведенняПовідомлення() : пусто

дія ВмістВведенняПовідомлення.перетворити_на_телеграм_обʼєкт()
  ()
кінець

;; ---

структура ВмістВведенняТекстовогоПовідомлення
  текст_повідомлення текст = undefined
  режим_розбору текст = undefined
  сутності Список = undefined
  вимкнути_попередній_перегляд_сторінки логічне = undefined
кінець

ВмістВведенняТекстовогоПовідомлення.назва_типу = "InputTextMessageContent"

ВмістВведенняТекстовогоПовідомлення.створити_з_телеграм_обʼєкта = (то): то ? ВмістВведенняТекстовогоПовідомлення(
  текст_повідомлення=то.message_text,
  режим_розбору=то.parse_mode,
  сутності=то.entities,
  вимкнути_попередній_перегляд_сторінки=то.disable_web_page_preview
) : пусто

дія ВмістВведенняТекстовогоПовідомлення.перетворити_на_телеграм_обʼєкт()
  (
    message_text=я.текст_повідомлення,
    parse_mode=я.режим_розбору,
    entities=я.сутності,
    disable_web_page_preview=я.вимкнути_попередній_перегляд_сторінки
  )
кінець

;; ---

структура ВмістВведенняПовідомленняПроМісцезнаходження
  широта число = undefined
  довгота число = undefined
  горизонтальна_точність число = undefined
  активний_період число = undefined
  напрямок число = undefined
  радіус_сповіщення число = undefined
кінець

ВмістВведенняПовідомленняПроМісцезнаходження.назва_типу = "InputLocationMessageContent"

ВмістВведенняПовідомленняПроМісцезнаходження.створити_з_телеграм_обʼєкта = (то): то ? ВмістВведенняПовідомленняПроМісцезнаходження(
  широта=то.latitude,
  довгота=то.longitude,
  горизонтальна_точність=то.horizontal_accuracy,
  активний_період=то.live_period,
  напрямок=то.heading,
  радіус_сповіщення=то.proximity_alert_radius
) : пусто

дія ВмістВведенняПовідомленняПроМісцезнаходження.перетворити_на_телеграм_обʼєкт()
  (
    latitude=я.широта,
    longitude=я.довгота,
    horizontal_accuracy=я.горизонтальна_точність,
    live_period=я.активний_період,
    heading=я.напрямок,
    proximity_alert_radius=я.радіус_сповіщення
  )
кінець

;; ---

структура ВмістВведенняПовідомленняПроМісце
  широта число = undefined
  довгота число = undefined
  назва текст = undefined
  адреса текст = undefined
  ідентифікатор_Foursquare текст = undefined
  тип_Foursquare текст = undefined
  ідентифікатор_Google текст = undefined
  тип_Google текст = undefined
кінець

ВмістВведенняПовідомленняПроМісце.назва_типу = "InputVenueMessageContent"

ВмістВведенняПовідомленняПроМісце.створити_з_телеграм_обʼєкта = (то): то ? ВмістВведенняПовідомленняПроМісце(
  широта=то.latitude,
  довгота=то.longitude,
  назва=то.title,
  адреса=то.address,
  ідентифікатор_Foursquare=то.foursquare_id,
  тип_Foursquare=то.foursquare_type,
  ідентифікатор_Google=то.google_place_id,
  тип_Google=то.google_place_type
) : пусто

дія ВмістВведенняПовідомленняПроМісце.перетворити_на_телеграм_обʼєкт()
  (
    latitude=я.широта,
    longitude=я.довгота,
    title=я.назва,
    address=я.адреса,
    foursquare_id=я.ідентифікатор_Foursquare,
    foursquare_type=я.тип_Foursquare,
    google_place_id=я.ідентифікатор_Google,
    google_place_type=я.тип_Google
  )
кінець

;; ---

структура ВмістВведенняПовідомленняПроКонтакт
  номер_телефону текст = undefined
  ім'я текст = undefined
  прізвище текст = undefined
  візитна_картка текст = undefined
кінець

ВмістВведенняПовідомленняПроКонтакт.назва_типу = "InputContactMessageContent"

ВмістВведенняПовідомленняПроКонтакт.створити_з_телеграм_обʼєкта = (то): то ? ВмістВведенняПовідомленняПроКонтакт(
  номер_телефону=то.phone_number,
  ім'я=то.first_name,
  прізвище=то.last_name,
  візитна_картка=то.vcard
) : пусто

дія ВмістВведенняПовідомленняПроКонтакт.перетворити_на_телеграм_обʼєкт()
  (
    phone_number=я.номер_телефону,
    first_name=я.ім'я,
    last_name=я.прізвище,
    vcard=я.візитна_картка
  )
кінець

;; ---

структура ВмістВведенняПовідомленняПроРахунок
  назва текст = undefined
  опис текст = undefined
  підзаголовок текст = undefined
  токен_провайдера текст = undefined
  валюта текст = undefined
  ціни Список = undefined
  максимальна_сума_чайових число = undefined
  рекомендовані_суми_чайових Список = undefined
  дані_провайдера текст = undefined
  посилання_на_фото текст = undefined
  розмір_фото число = undefined
  ширина_фото число = undefined
  висота_фото число = undefined
  потрібне_ім'я логічне = undefined
  потрібен_номер_телефону логічне = undefined
  потрібна_електронна_адреса логічне = undefined
  потрібна_адреса_доставки логічне = undefined
  надіслати_номер_телефону_провайдеру логічне = undefined
  надіслати_електронну_адресу_провайдеру логічне = undefined
  гнучкість логічне = undefined
кінець

ВмістВведенняПовідомленняПроРахунок.назва_типу = "InputInvoiceMessageContent"

ВмістВведенняПовідомленняПроРахунок.створити_з_телеграм_обʼєкта = (то): то ? ВмістВведенняПовідомленняПроРахунок(
  назва=то.title,
  опис=то.description,
  підзаголовок=то.payload,
  токен_провайдера=то.provider_token,
  валюта=то.currency,
  ціни=то.prices,
  максимальна_сума_чайових=то.max_tip_amount,
  рекомендовані_суми_чайових=то.suggested_tip_amounts,
  дані_провайдера=то.provider_data,
  посилання_на_фото=то.photo_url,
  розмір_фото=то.photo_size,
  ширина_фото=то.photo_width,
  висота_фото=то.photo_height,
  потрібне_ім'я=то.need_name,
  потрібен_номер_телефону=то.need_phone_number,
  потрібна_електронна_адреса=то.need_email,
  потрібна_адреса_доставки=то.need_shipping_address,
  надіслати_номер_телефону_провайдеру=то.send_phone_number_to_provider,
  надіслати_електронну_адресу_провайдеру=то.send_email_to_provider,
  гнучкість=то.is_flexible
) : пусто

дія ВмістВведенняПовідомленняПроРахунок.перетворити_на_телеграм_обʼєкт()
  (
    title=я.назва,
    description=я.опис,
    payload=я.підзаголовок,
    provider_token=я.токен_провайдера,
    currency=я.валюта,
    prices=я.ціни,
    max_tip_amount=я.максимальна_сума_чайових,
    suggested_tip_amounts=я.рекомендовані_суми_чайових,
    provider_data=я.дані_провайдера,
    photo_url=я.посилання_на_фото,
    photo_size=я.розмір_фото,
    photo_width=я.ширина_фото,
    photo_height=я.висота_фото,
    need_name=я.потрібне_ім'я,
    need_phone_number=я.потрібен_номер_телефону,
    need_email=я.потрібна_електронна_адреса,
    need_shipping_address=я.потрібна_адреса_доставки,
    send_phone_number_to_provider=я.надіслати_номер_телефону_провайдеру,
    send_email_to_provider=я.надіслати_електронну_адресу_провайдеру,
    is_flexible=я.гнучкість
  )
кінець

;; ---

структура ВибранийРезультатПошукуПозастроками
  ідентифікатор_результату текст = undefined
  від Користувач = undefined
  розташування Місцезнаходження = undefined
  ідентифікатор_інлайн_повідомлення текст = undefined
  запит текст = undefined
кінець

ВибранийРезультатПошукуПозастроками.назва_типу = "ChosenInlineResult"

ВибранийРезультатПошукуПозастроками.створити_з_телеграм_обʼєкта = (то): то ? ВибранийРезультатПошукуПозастроками(
  ідентифікатор_результату=то.result_id,
  від=Користувач.створити_з_телеграм_обʼєкта(то.from),
  розташування=Місцезнаходження.створити_з_телеграм_обʼєкта(то.location),
  ідентифікатор_інлайн_повідомлення=то.inline_message_id,
  запит=то.query
) : пусто

дія ВибранийРезультатПошукуПозастроками.перетворити_на_телеграм_обʼєкт()
  (
    result_id=я.ідентифікатор_результату,
    from=я.від,
    location=я.розташування,
    inline_message_id=я.ідентифікатор_інлайн_повідомлення,
    query=я.запит
  )
кінець

;; ---

структура ВідправленоПовідомленняВебДодатку
  ідентифікатор_інлайн_повідомлення текст = undefined
кінець

ВідправленоПовідомленняВебДодатку.назва_типу = "SentWebAppMessage"

ВідправленоПовідомленняВебДодатку.створити_з_телеграм_обʼєкта = (то): то ? ВідправленоПовідомленняВебДодатку(
  ідентифікатор_інлайн_повідомлення=то.inline_message_id
) : пусто

дія ВідправленоПовідомленняВебДодатку.перетворити_на_телеграм_обʼєкт()
  (
    inline_message_id=я.ідентифікатор_інлайн_повідомлення
  )
кінець

;; ---

структура ПозначенаЦіна
  мітка текст = undefined
  сума число = undefined
кінець

ПозначенаЦіна.назва_типу = "LabeledPrice"

ПозначенаЦіна.створити_з_телеграм_обʼєкта = (то): то ? ПозначенаЦіна(
  мітка=то.label,
  сума=то.amount
) : пусто

дія ПозначенаЦіна.перетворити_на_телеграм_обʼєкт()
  (
    label=я.мітка,
    amount=я.сума
  )
кінець

;; ---

структура Рахунок
  назва текст = undefined
  опис текст = undefined
  початковий_параметр текст = undefined
  валюта текст = undefined
  загальна_сума число = undefined
кінець

Рахунок.назва_типу = "Invoice"

Рахунок.створити_з_телеграм_обʼєкта = (то): то ? Рахунок(
  назва=то.title,
  опис=то.description,
  початковий_параметр=то.start_parameter,
  валюта=то.currency,
  загальна_сума=то.total_amount
) : пусто

дія Рахунок.перетворити_на_телеграм_обʼєкт()
  (
    title=я.назва,
    description=я.опис,
    start_parameter=я.початковий_параметр,
    currency=я.валюта,
    total_amount=я.загальна_сума
  )
кінець

;; ---

структура АдресаДоставки
  код_країни текст = undefined
  область текст = undefined
  місто текст = undefined
  вулиця_1 текст = undefined
  вулиця_2 текст = undefined
  поштовий_індекс текст = undefined
кінець

АдресаДоставки.назва_типу = "ShippingAddress"

АдресаДоставки.створити_з_телеграм_обʼєкта = (то): то ? АдресаДоставки(
  код_країни=то.country_code,
  область=то.state,
  місто=то.city,
  вулиця_1=то.street_line1,
  вулиця_2=то.street_line2,
  поштовий_індекс=то.post_code
) : пусто

дія АдресаДоставки.перетворити_на_телеграм_обʼєкт()
  (
    country_code=я.код_країни,
    state=я.область,
    city=я.місто,
    street_line1=я.вулиця_1,
    street_line2=я.вулиця_2,
    post_code=я.поштовий_індекс
  )
кінець

;; ---

структура ІнформаціяПроЗамовлення
  назва текст = undefined
  номер_телефону текст = undefined
  електронна_адреса текст = undefined
  адреса_доставки АдресаДоставки = undefined
кінець

ІнформаціяПроЗамовлення.назва_типу = "OrderInfo"

ІнформаціяПроЗамовлення.створити_з_телеграм_обʼєкта = (то): то ? ІнформаціяПроЗамовлення(
  назва=то.name,
  номер_телефону=то.phone_number,
  електронна_адреса=то.email,
  адреса_доставки=АдресаДоставки.створити_з_телеграм_обʼєкта(то.shipping_address)
) : пусто

дія ІнформаціяПроЗамовлення.перетворити_на_телеграм_обʼєкт()
  (
    name=я.назва,
    phone_number=я.номер_телефону,
    email=я.електронна_адреса,
    shipping_address=я.адреса_доставки
  )
кінець

;; ---

структура ВаріантДоставки
  ідентифікатор текст = undefined
  назва текст = undefined
  ціни Список = undefined
кінець

ВаріантДоставки.назва_типу = "ShippingOption"

ВаріантДоставки.створити_з_телеграм_обʼєкта = (то): то ? ВаріантДоставки(
  ідентифікатор=то.id,
  назва=то.title,
  ціни=то.prices
) : пусто

дія ВаріантДоставки.перетворити_на_телеграм_обʼєкт()
  (
    id=я.ідентифікатор,
    title=я.назва,
    prices=я.ціни
  )
кінець

;; ---

структура УспішнаОплата
  валюта текст = undefined
  загальна_сума число = undefined
  інформація_про_рахунок текст = undefined
  ідентифікатор_опції_доставки текст = undefined
  інформація_про_замовлення ІнформаціяПроЗамовлення = undefined
  ідентифікатор_оплати_в_Telegram текст = undefined
  ідентифікатор_оплати_провайдера текст = undefined
кінець

УспішнаОплата.назва_типу = "SuccessfulPayment"

УспішнаОплата.створити_з_телеграм_обʼєкта = (то): то ? УспішнаОплата(
  валюта=то.currency,
  загальна_сума=то.total_amount,
  інформація_про_рахунок=то.invoice_payload,
  ідентифікатор_опції_доставки=то.shipping_option_id,
  інформація_про_замовлення=ІнформаціяПроЗамовлення.створити_з_телеграм_обʼєкта(то.order_info),
  ідентифікатор_оплати_в_Telegram=то.telegram_payment_charge_id,
  ідентифікатор_оплати_провайдера=то.provider_payment_charge_id
) : пусто

дія УспішнаОплата.перетворити_на_телеграм_обʼєкт()
  (
    currency=я.валюта,
    total_amount=я.загальна_сума,
    invoice_payload=я.інформація_про_рахунок,
    shipping_option_id=я.ідентифікатор_опції_доставки,
    order_info=я.інформація_про_замовлення,
    telegram_payment_charge_id=я.ідентифікатор_оплати_в_Telegram,
    provider_payment_charge_id=я.ідентифікатор_оплати_провайдера
  )
кінець

;; ---

структура ЗапитДоставки
  ідентифікатор текст = undefined
  від Користувач = undefined
  інформація_про_рахунок текст = undefined
  адреса_доставки АдресаДоставки = undefined
кінець

ЗапитДоставки.назва_типу = "ShippingQuery"

ЗапитДоставки.створити_з_телеграм_обʼєкта = (то): то ? ЗапитДоставки(
  ідентифікатор=то.id,
  від=Користувач.створити_з_телеграм_обʼєкта(то.from),
  інформація_про_рахунок=то.invoice_payload,
  адреса_доставки=АдресаДоставки.створити_з_телеграм_обʼєкта(то.shipping_address)
) : пусто

дія ЗапитДоставки.перетворити_на_телеграм_обʼєкт()
  (
    id=я.ідентифікатор,
    from=я.від,
    invoice_payload=я.інформація_про_рахунок,
    shipping_address=я.адреса_доставки
  )
кінець

;; ---

структура ЗапитНапередВідшкодування
  ідентифікатор текст = undefined
  від Користувач = undefined
  валюта текст = undefined
  загальна_сума число = undefined
  інформація_про_рахунок текст = undefined
  ідентифікатор_опції_доставки текст = undefined
  інформація_про_замовлення ІнформаціяПроЗамовлення = undefined
кінець

ЗапитНапередВідшкодування.назва_типу = "PreCheckoutQuery"

ЗапитНапередВідшкодування.створити_з_телеграм_обʼєкта = (то): то ? ЗапитНапередВідшкодування(
  ідентифікатор=то.id,
  від=Користувач.створити_з_телеграм_обʼєкта(то.from),
  валюта=то.currency,
  загальна_сума=то.total_amount,
  інформація_про_рахунок=то.invoice_payload,
  ідентифікатор_опції_доставки=то.shipping_option_id,
  інформація_про_замовлення=ІнформаціяПроЗамовлення.створити_з_телеграм_обʼєкта(то.order_info)
) : пусто

дія ЗапитНапередВідшкодування.перетворити_на_телеграм_обʼєкт()
  (
    id=я.ідентифікатор,
    from=я.від,
    currency=я.валюта,
    total_amount=я.загальна_сума,
    invoice_payload=я.інформація_про_рахунок,
    shipping_option_id=я.ідентифікатор_опції_доставки,
    order_info=я.інформація_про_замовлення
  )
кінець

;; ---

структура ДаніПаспорта
  дані Список = undefined
  ідентифікаційні_дані ЗашифрованіОбліковіДані = undefined
кінець

ДаніПаспорта.назва_типу = "PassportData"

ДаніПаспорта.створити_з_телеграм_обʼєкта = (то): то ? ДаніПаспорта(
  дані=то.data,
  ідентифікаційні_дані=ЗашифрованіОбліковіДані.створити_з_телеграм_обʼєкта(то.credentials)
) : пусто

дія ДаніПаспорта.перетворити_на_телеграм_обʼєкт()
  (
    data=я.дані,
    credentials=я.ідентифікаційні_дані
  )
кінець

;; ---

структура ФайлПаспорта
  ідентифікатор_файлу текст = undefined
  унікальний_ідентифікатор_файлу текст = undefined
  розмір_файлу число = undefined
  дата_файлу число = undefined
кінець

ФайлПаспорта.назва_типу = "PassportFile"

ФайлПаспорта.створити_з_телеграм_обʼєкта = (то): то ? ФайлПаспорта(
  ідентифікатор_файлу=то.file_id,
  унікальний_ідентифікатор_файлу=то.file_unique_id,
  розмір_файлу=то.file_size,
  дата_файлу=то.file_date
) : пусто

дія ФайлПаспорта.перетворити_на_телеграм_обʼєкт()
  (
    file_id=я.ідентифікатор_файлу,
    file_unique_id=я.унікальний_ідентифікатор_файлу,
    file_size=я.розмір_файлу,
    file_date=я.дата_файлу
  )
кінець

;; ---

структура ЗашифрованийЕлементПаспорта
  тип текст = undefined
  дані текст = undefined
  номер_телефону текст = undefined
  електронна_адреса текст = undefined
  файли Список = undefined
  фронтальна_сторона ФайлПаспорта = undefined
  зворотна_сторона ФайлПаспорта = undefined
  селфі ФайлПаспорта = undefined
  переклад Список = undefined
  хеш текст = undefined
кінець

ЗашифрованийЕлементПаспорта.назва_типу = "EncryptedPassportElement"

ЗашифрованийЕлементПаспорта.створити_з_телеграм_обʼєкта = (то): то ? ЗашифрованийЕлементПаспорта(
  тип=то.type,
  дані=то.data,
  номер_телефону=то.phone_number,
  електронна_адреса=то.email,
  файли=то.files,
  фронтальна_сторона=ФайлПаспорта.створити_з_телеграм_обʼєкта(то.front_side),
  зворотна_сторона=ФайлПаспорта.створити_з_телеграм_обʼєкта(то.reverse_side),
  селфі=ФайлПаспорта.створити_з_телеграм_обʼєкта(то.selfie),
  переклад=то.translation,
  хеш=то.hash
) : пусто

дія ЗашифрованийЕлементПаспорта.перетворити_на_телеграм_обʼєкт()
  (
    type=я.тип,
    data=я.дані,
    phone_number=я.номер_телефону,
    email=я.електронна_адреса,
    files=я.файли,
    front_side=я.фронтальна_сторона,
    reverse_side=я.зворотна_сторона,
    selfie=я.селфі,
    translation=я.переклад,
    hash=я.хеш
  )
кінець

;; ---

структура ЗашифрованіОбліковіДані
  дані текст = undefined
  хеш текст = undefined
  секрет текст = undefined
кінець

ЗашифрованіОбліковіДані.назва_типу = "EncryptedCredentials"

ЗашифрованіОбліковіДані.створити_з_телеграм_обʼєкта = (то): то ? ЗашифрованіОбліковіДані(
  дані=то.data,
  хеш=то.hash,
  секрет=то.secret
) : пусто

дія ЗашифрованіОбліковіДані.перетворити_на_телеграм_обʼєкт()
  (
    data=я.дані,
    hash=я.хеш,
    secret=я.секрет
  )
кінець

;; ---

структура ПомилкаЕлементуПаспорту
кінець

ПомилкаЕлементуПаспорту.назва_типу = "PassportElementError"

ПомилкаЕлементуПаспорту.створити_з_телеграм_обʼєкта = (то): то ? ПомилкаЕлементуПаспорту() : пусто

дія ПомилкаЕлементуПаспорту.перетворити_на_телеграм_обʼєкт()
  ()
кінець

;; ---

структура ПомилкаДанихЕлементуПаспорту
  джерело текст = undefined
  тип текст = undefined
  ім'я_поля текст = undefined
  хеш_даних текст = undefined
  повідомлення текст = undefined
кінець

ПомилкаДанихЕлементуПаспорту.назва_типу = "PassportElementErrorDataField"

ПомилкаДанихЕлементуПаспорту.створити_з_телеграм_обʼєкта = (то): то ? ПомилкаДанихЕлементуПаспорту(
  джерело=то.source,
  тип=то.type,
  ім'я_поля=то.field_name,
  хеш_даних=то.data_hash,
  повідомлення=то.message
) : пусто

дія ПомилкаДанихЕлементуПаспорту.перетворити_на_телеграм_обʼєкт()
  (
    source=я.джерело,
    type=я.тип,
    field_name=я.ім'я_поля,
    data_hash=я.хеш_даних,
    message=я.повідомлення
  )
кінець

;; ---

структура ПомилкаПередньоїСторониЕлементуПаспорту
  джерело текст = undefined
  тип текст = undefined
  хеш_файлу текст = undefined
  повідомлення текст = undefined
кінець

ПомилкаПередньоїСторониЕлементуПаспорту.назва_типу = "PassportElementErrorFrontSide"

ПомилкаПередньоїСторониЕлементуПаспорту.створити_з_телеграм_обʼєкта = (то): то ? ПомилкаПередньоїСторониЕлементуПаспорту(
  джерело=то.source,
  тип=то.type,
  хеш_файлу=то.file_hash,
  повідомлення=то.message
) : пусто

дія ПомилкаПередньоїСторониЕлементуПаспорту.перетворити_на_телеграм_обʼєкт()
  (
    source=я.джерело,
    type=я.тип,
    file_hash=я.хеш_файлу,
    message=я.повідомлення
  )
кінець

;; ---

структура ПомилкаЗворотньоїСторониЕлементуПаспорту
  джерело текст = undefined
  тип текст = undefined
  хеш_файлу текст = undefined
  повідомлення текст = undefined
кінець

ПомилкаЗворотньоїСторониЕлементуПаспорту.назва_типу = "PassportElementErrorReverseSide"

ПомилкаЗворотньоїСторониЕлементуПаспорту.створити_з_телеграм_обʼєкта = (то): то ? ПомилкаЗворотньоїСторониЕлементуПаспорту(
  джерело=то.source,
  тип=то.type,
  хеш_файлу=то.file_hash,
  повідомлення=то.message
) : пусто

дія ПомилкаЗворотньоїСторониЕлементуПаспорту.перетворити_на_телеграм_обʼєкт()
  (
    source=я.джерело,
    type=я.тип,
    file_hash=я.хеш_файлу,
    message=я.повідомлення
  )
кінець

;; ---

структура ПомилкаСелфіЕлементуПаспорту
  джерело текст = undefined
  тип текст = undefined
  хеш_файлу текст = undefined
  повідомлення текст = undefined
кінець

ПомилкаСелфіЕлементуПаспорту.назва_типу = "PassportElementErrorSelfie"

ПомилкаСелфіЕлементуПаспорту.створити_з_телеграм_обʼєкта = (то): то ? ПомилкаСелфіЕлементуПаспорту(
  джерело=то.source,
  тип=то.type,
  хеш_файлу=то.file_hash,
  повідомлення=то.message
) : пусто

дія ПомилкаСелфіЕлементуПаспорту.перетворити_на_телеграм_обʼєкт()
  (
    source=я.джерело,
    type=я.тип,
    file_hash=я.хеш_файлу,
    message=я.повідомлення
  )
кінець

;; ---

структура ПомилкаФайлуЕлементуПаспорту
  джерело текст = undefined
  тип текст = undefined
  хеш_файлу текст = undefined
  повідомлення текст = undefined
кінець

ПомилкаФайлуЕлементуПаспорту.назва_типу = "PassportElementErrorFile"

ПомилкаФайлуЕлементуПаспорту.створити_з_телеграм_обʼєкта = (то): то ? ПомилкаФайлуЕлементуПаспорту(
  джерело=то.source,
  тип=то.type,
  хеш_файлу=то.file_hash,
  повідомлення=то.message
) : пусто

дія ПомилкаФайлуЕлементуПаспорту.перетворити_на_телеграм_обʼєкт()
  (
    source=я.джерело,
    type=я.тип,
    file_hash=я.хеш_файлу,
    message=я.повідомлення
  )
кінець

;; ---

структура ПомилкаФайлівЕлементуПаспорту
  джерело текст = undefined
  тип текст = undefined
  хеші_файлів Список = undefined
  повідомлення текст = undefined
кінець

ПомилкаФайлівЕлементуПаспорту.назва_типу = "PassportElementErrorFiles"

ПомилкаФайлівЕлементуПаспорту.створити_з_телеграм_обʼєкта = (то): то ? ПомилкаФайлівЕлементуПаспорту(
  джерело=то.source,
  тип=то.type,
  хеші_файлів=то.file_hashes,
  повідомлення=то.message
) : пусто

дія ПомилкаФайлівЕлементуПаспорту.перетворити_на_телеграм_обʼєкт()
  (
    source=я.джерело,
    type=я.тип,
    file_hashes=я.хеші_файлів,
    message=я.повідомлення
  )
кінець

;; ---

структура ПомилкаФайлуПерекладуЕлементуПаспорту
  джерело текст = undefined
  тип текст = undefined
  хеш_файлу текст = undefined
  повідомлення текст = undefined
кінець

ПомилкаФайлуПерекладуЕлементуПаспорту.назва_типу = "PassportElementErrorTranslationFile"

ПомилкаФайлуПерекладуЕлементуПаспорту.створити_з_телеграм_обʼєкта = (то): то ? ПомилкаФайлуПерекладуЕлементуПаспорту(
  джерело=то.source,
  тип=то.type,
  хеш_файлу=то.file_hash,
  повідомлення=то.message
) : пусто

дія ПомилкаФайлуПерекладуЕлементуПаспорту.перетворити_на_телеграм_обʼєкт()
  (
    source=я.джерело,
    type=я.тип,
    file_hash=я.хеш_файлу,
    message=я.повідомлення
  )
кінець

;; ---

структура ПомилкаФайлівПерекладуЕлементуПаспорту
  джерело текст = undefined
  тип текст = undefined
  хеші_файлів Список = undefined
  повідомлення текст = undefined
кінець

ПомилкаФайлівПерекладуЕлементуПаспорту.назва_типу = "PassportElementErrorTranslationFiles"

ПомилкаФайлівПерекладуЕлементуПаспорту.створити_з_телеграм_обʼєкта = (то): то ? ПомилкаФайлівПерекладуЕлементуПаспорту(
  джерело=то.source,
  тип=то.type,
  хеші_файлів=то.file_hashes,
  повідомлення=то.message
) : пусто

дія ПомилкаФайлівПерекладуЕлементуПаспорту.перетворити_на_телеграм_обʼєкт()
  (
    source=я.джерело,
    type=я.тип,
    file_hashes=я.хеші_файлів,
    message=я.повідомлення
  )
кінець

;; ---

структура НевизначенаПомилкаЕлементуПаспорту
  джерело текст = undefined
  тип текст = undefined
  хеш_елемента текст = undefined
  повідомлення текст = undefined
кінець

НевизначенаПомилкаЕлементуПаспорту.назва_типу = "PassportElementErrorUnspecified"

НевизначенаПомилкаЕлементуПаспорту.створити_з_телеграм_обʼєкта = (то): то ? НевизначенаПомилкаЕлементуПаспорту(
  джерело=то.source,
  тип=то.type,
  хеш_елемента=то.element_hash,
  повідомлення=то.message
) : пусто

дія НевизначенаПомилкаЕлементуПаспорту.перетворити_на_телеграм_обʼєкт()
  (
    source=я.джерело,
    type=я.тип,
    element_hash=я.хеш_елемента,
    message=я.повідомлення
  )
кінець

;; ---

структура Гра
  назва текст = undefined
  опис текст = undefined
  фото Список = undefined
  текст текст = undefined
  текстові_ентіті Список = undefined
  анімація Анімація = undefined
кінець

Гра.назва_типу = "Game"

Гра.створити_з_телеграм_обʼєкта = (то): то ? Гра(
  назва=то.title,
  опис=то.description,
  фото=то.photo,
  текст=то.text,
  текстові_ентіті=то.text_entities,
  анімація=Анімація.створити_з_телеграм_обʼєкта(то.animation)
) : пусто

дія Гра.перетворити_на_телеграм_обʼєкт()
  (
    title=я.назва,
    description=я.опис,
    photo=я.фото,
    text=я.текст,
    text_entities=я.текстові_ентіті,
    animation=я.анімація
  )
кінець

;; ---

структура ЗворотнійВикликГра
кінець

ЗворотнійВикликГра.назва_типу = "CallbackGame"

ЗворотнійВикликГра.створити_з_телеграм_обʼєкта = (то): то ? ЗворотнійВикликГра() : пусто

дія ЗворотнійВикликГра.перетворити_на_телеграм_обʼєкт()
  ()
кінець

;; ---

структура РекордУГрі
  позиція число = undefined
  користувач Користувач = undefined
  оцінка число = undefined
кінець

РекордУГрі.назва_типу = "GameHighScore"

РекордУГрі.створити_з_телеграм_обʼєкта = (то): то ? РекордУГрі(
  позиція=то.position,
  користувач=Користувач.створити_з_телеграм_обʼєкта(то.user),
  оцінка=то.score
) : пусто

дія РекордУГрі.перетворити_на_телеграм_обʼєкт()
  (
    position=я.позиція,
    user=я.користувач,
    score=я.оцінка
  )
кінець

дати Оновлення
дати ІнформаціяПроВебгук
дати Користувач
дати Чат
дати Повідомлення
дати ІдПовідомлення
дати СутністьПовідомлення
дати РозмірФото
дати Анімація
дати Аудіо
дати Документ
дати Відео
дати ВідеоНотатка
дати Голос
дати Контакт
дати Кубик
дати ОпціяОпитування
дати ВідповідьОпитування
дати Опитування
дати Місцезнаходження
дати МісцеЗустрічі
дати ДаніВебДодатку
дати СпрацюванняБлизькості
дати ЗмінаТаймераАвтоВидаленняПовідомлення
дати ТемуФорумуСтворено
дати ТемаФорумуЗакрита
дати ТемуФорумуВідредаговано
дати ТемаФорумуВідкрита
дати ЗагальнаТемаФорумуПрихована
дати ЗагальнаТемаФорумуВідкрита
дати КористувачаПоширено
дати ЧатПоширено
дати ДоступНаПисьмоДозволений
дати ВідеоЧатЗаплановано
дати ВідеоЧатРозпочато
дати ВідеоЧатЗавершено
дати ЗапрошенняУчасниківВідеоЧату
дати ФотоПрофілю
дати Файл
дати ІнформаціяВебДодатку
дати РозміткаКлавіатуриВідповіді
дати КлавішаКлавіатури
дати КлавішаКлавіатуриЗапитатиКористувача
дати КлавішаКлавіатуриЗапитатиЧат
дати КлавішаКлавіатуриЗапитатиОпитування
дати ПрибратиКлавіатуруВідповіді
дати РозміткаІнлайнКлавіатури
дати КлавішаІнлайнКлавіатури
дати ПосиланняАвторизації
дати ЗапитЗворотньогоВиклику
дати ПримусоваВідповідь
дати ФотоЧату
дати ПосиланняНаЗапрошенняДоЧату
дати ПраваАдміністратораЧату
дати УчасникЧату
дати УчасникЧатуВласник
дати УчасникЧатуАдміністратор
дати УчасникЧатуУчасник
дати ОбмеженийУчасникЧату
дати ПокинутийУчасникЧату
дати ЗаблокованийУчасникЧату
дати УчасникаЧатуОновлено
дати ЗапитНаПриєднанняДоЧату
дати ДозволиЧату
дати МісцезнаходженняЧату
дати ТемаФоруму
дати КомандаБота
дати ОбсягКомандБота
дати BotCommandScopeDefault
дати BotCommandScopeAllPrivateChats
дати BotCommandScopeAllGroupChats
дати BotCommandScopeAllChatAdministrators
дати BotCommandScopeChat
дати BotCommandScopeChatAdministrators
дати BotCommandScopeChatMember
дати КнопкаМеню
дати КнопкаМенюКоманди
дати КнопкаМенюВебДодаток
дати КнопкаМенюЗаЗамовчуванням
дати ПараметриВідповіді
дати ВвідМедіа
дати ВхіднеМедіаФото
дати ВхіднеМедіаВідео
дати ВхіднеМедіаАнімація
дати ВхіднеМедіаАудіо
дати ВхіднеМедіаДокумент
дати ВвідФайлу
дати Стікер
дати НабірСтікерів
дати ПозиціяМаски
дати ВбудованийЗапит
дати РезультатВбудованогоЗапиту
дати РезультатВбудованогоЗапитуСтаття
дати РезультатВбудованогоЗапитуФото
дати РезультатВбудованогоЗапитуGIF
дати РезультатВбудованогоЗапитуMPEG4GIF
дати РезультатВбудованогоЗапитуВідео
дати РезультатВбудованогоЗапитуАудіо
дати РезультатВбудованогоЗапитуГолос
дати РезультатВбудованогоЗапитуДокумент
дати РезультатВбудованогоЗапитуМісцезнаходження
дати РезультатВбудованогоЗапитуЗаклад
дати РезультатВбудованогоЗапитуКонтакт
дати РезультатВбудованогоЗапитуГра
дати ЗбереженийРезультатВбудованогоЗапитуФото
дати ЗбереженийРезультатВбудованогоЗапитуГіф
дати ЗбереженийРезультатВбудованогоЗапитуМпег4Гіф
дати КешованийРезультатПошукуСтікера
дати КешованийРезультатПошукуДокумента
дати КешованийРезультатПошукуВідео
дати КешованийРезультатПошукуГолосу
дати КешованийРезультатПошукуАудіо
дати ВмістВведенняПовідомлення
дати ВмістВведенняТекстовогоПовідомлення
дати ВмістВведенняПовідомленняПроМісцезнаходження
дати ВмістВведенняПовідомленняПроМісце
дати ВмістВведенняПовідомленняПроКонтакт
дати ВмістВведенняПовідомленняПроРахунок
дати ВибранийРезультатПошукуПозастроками
дати ВідправленоПовідомленняВебДодатку
дати ПозначенаЦіна
дати Рахунок
дати АдресаДоставки
дати ІнформаціяПроЗамовлення
дати ВаріантДоставки
дати УспішнаОплата
дати ЗапитДоставки
дати ЗапитНапередВідшкодування
дати ДаніПаспорта
дати ФайлПаспорта
дати ЗашифрованийЕлементПаспорта
дати ЗашифрованіОбліковіДані
дати ПомилкаЕлементуПаспорту
дати ПомилкаДанихЕлементуПаспорту
дати ПомилкаПередньоїСторониЕлементуПаспорту
дати ПомилкаЗворотньоїСторониЕлементуПаспорту
дати ПомилкаСелфіЕлементуПаспорту
дати ПомилкаФайлуЕлементуПаспорту
дати ПомилкаФайлівЕлементуПаспорту
дати ПомилкаФайлуПерекладуЕлементуПаспорту
дати ПомилкаФайлівПерекладуЕлементуПаспорту
дати НевизначенаПомилкаЕлементуПаспорту
дати Гра
дати ЗворотнійВикликГра
дати РекордУГрі
кінець

модуль Методи
структура ОтриматиОновлення
  зсув число = undefined
  ліміт число = undefined
  таймаут число = undefined
  дозволені_оновлення Список = undefined
кінець

ОтриматиОновлення.назва_методу = "getUpdates"

дія ОтриматиОновлення.перетворити_на_телеграм_обʼєкт()
  (
    offset=я.зсув,
    limit=я.ліміт,
    timeout=я.таймаут,
    allowed_updates=я.дозволені_оновлення ? дозволені_оновлення.перетворити_на_телеграм_обʼєкт() : я.дозволені_оновлення
  )
кінець

;; ---

структура ВстановитиВебхук
  урл текст = undefined
  сертифікат ВвідФайлу = undefined
  інтернет_адреса текст = undefined
  максимальна_кількість_з'єднань число = undefined
  дозволені_оновлення Список = undefined
  видалити_очікуючі_оновлення логічне = undefined
  секретний_токен текст = undefined
кінець

ВстановитиВебхук.назва_методу = "setWebhook"

дія ВстановитиВебхук.перетворити_на_телеграм_обʼєкт()
  (
    url=я.урл,
    certificate=я.сертифікат ? сертифікат.перетворити_на_телеграм_обʼєкт() : я.сертифікат,
    ip_address=я.інтернет_адреса,
    max_connections=я.максимальна_кількість_з'єднань,
    allowed_updates=я.дозволені_оновлення ? дозволені_оновлення.перетворити_на_телеграм_обʼєкт() : я.дозволені_оновлення,
    drop_pending_updates=я.видалити_очікуючі_оновлення,
    secret_token=я.секретний_токен
  )
кінець

;; ---

структура ВидалитиВебхук
  видалити_очікуючі_оновлення логічне = undefined
кінець

ВидалитиВебхук.назва_методу = "deleteWebhook"

дія ВидалитиВебхук.перетворити_на_телеграм_обʼєкт()
  (
    drop_pending_updates=я.видалити_очікуючі_оновлення
  )
кінець

;; ---

структура ОтриматиІнформаціюВебхука
кінець

ОтриматиІнформаціюВебхука.назва_методу = "getWebhookInfo"

дія ОтриматиІнформаціюВебхука.перетворити_на_телеграм_обʼєкт()
  ()
кінець

;; ---

структура ОтриматиСебе
кінець

ОтриматиСебе.назва_методу = "getMe"

дія ОтриматиСебе.перетворити_на_телеграм_обʼєкт()
  ()
кінець

;; ---

структура Вийти
кінець

Вийти.назва_методу = "logOut"

дія Вийти.перетворити_на_телеграм_обʼєкт()
  ()
кінець

;; ---

структура Закрити
кінець

Закрити.назва_методу = "close"

дія Закрити.перетворити_на_телеграм_обʼєкт()
  ()
кінець

;; ---

структура НадіслатиПовідомлення
  ідентифікатор_чату число = undefined
  ідентифікатор_теми_повідомлення число = undefined
  текст текст = undefined
  режим_розбору текст = undefined
  сутності Список = undefined
  вимкнути_попередній_перегляд_сторінки логічне = undefined
  відключити_сповіщення логічне = undefined
  захист_вмісту логічне = undefined
  відповісти_на_повідомлення_ід число = undefined
  дозволити_відправку_без_відповіді логічне = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
кінець

НадіслатиПовідомлення.назва_методу = "sendMessage"

дія НадіслатиПовідомлення.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    message_thread_id=я.ідентифікатор_теми_повідомлення,
    text=я.текст,
    parse_mode=я.режим_розбору,
    entities=я.сутності ? сутності.перетворити_на_телеграм_обʼєкт() : я.сутності,
    disable_web_page_preview=я.вимкнути_попередній_перегляд_сторінки,
    disable_notification=я.відключити_сповіщення,
    protect_content=я.захист_вмісту,
    reply_to_message_id=я.відповісти_на_повідомлення_ід,
    allow_sending_without_reply=я.дозволити_відправку_без_відповіді,
    reply_markup=я.розмітка_відповіді ? розмітка_відповіді.перетворити_на_телеграм_обʼєкт() : я.розмітка_відповіді
  )
кінець

;; ---

структура ПереслатиПовідомлення
  ідентифікатор_чату число = undefined
  ідентифікатор_теми_повідомлення число = undefined
  від_ід_чату число = undefined
  відключити_сповіщення логічне = undefined
  захист_вмісту логічне = undefined
  ідентифікатор_повідомлення число = undefined
кінець

ПереслатиПовідомлення.назва_методу = "forwardMessage"

дія ПереслатиПовідомлення.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    message_thread_id=я.ідентифікатор_теми_повідомлення,
    from_chat_id=я.від_ід_чату,
    disable_notification=я.відключити_сповіщення,
    protect_content=я.захист_вмісту,
    message_id=я.ідентифікатор_повідомлення
  )
кінець

;; ---

структура КопіюватиПовідомлення
  ідентифікатор_чату число = undefined
  ідентифікатор_теми_повідомлення число = undefined
  від_ід_чату число = undefined
  ідентифікатор_повідомлення число = undefined
  підпис текст = undefined
  режим_розбору текст = undefined
  сутності_підпису Список = undefined
  відключити_сповіщення логічне = undefined
  захист_вмісту логічне = undefined
  відповісти_на_повідомлення_ід число = undefined
  дозволити_відправку_без_відповіді логічне = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
кінець

КопіюватиПовідомлення.назва_методу = "copyMessage"

дія КопіюватиПовідомлення.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    message_thread_id=я.ідентифікатор_теми_повідомлення,
    from_chat_id=я.від_ід_чату,
    message_id=я.ідентифікатор_повідомлення,
    caption=я.підпис,
    parse_mode=я.режим_розбору,
    caption_entities=я.сутності_підпису ? сутності_підпису.перетворити_на_телеграм_обʼєкт() : я.сутності_підпису,
    disable_notification=я.відключити_сповіщення,
    protect_content=я.захист_вмісту,
    reply_to_message_id=я.відповісти_на_повідомлення_ід,
    allow_sending_without_reply=я.дозволити_відправку_без_відповіді,
    reply_markup=я.розмітка_відповіді ? розмітка_відповіді.перетворити_на_телеграм_обʼєкт() : я.розмітка_відповіді
  )
кінець

;; ---

структура НадіслатиФото
  ідентифікатор_чату число = undefined
  ідентифікатор_теми_повідомлення число = undefined
  фото ВвідФайлу = undefined
  підпис текст = undefined
  режим_розбору текст = undefined
  сутності_підпису Список = undefined
  має_спойлер логічне = undefined
  відключити_сповіщення логічне = undefined
  захист_вмісту логічне = undefined
  відповісти_на_повідомлення_ід число = undefined
  дозволити_відправку_без_відповіді логічне = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
кінець

НадіслатиФото.назва_методу = "sendPhoto"

дія НадіслатиФото.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    message_thread_id=я.ідентифікатор_теми_повідомлення,
    photo=я.фото ? фото.перетворити_на_телеграм_обʼєкт() : я.фото,
    caption=я.підпис,
    parse_mode=я.режим_розбору,
    caption_entities=я.сутності_підпису ? сутності_підпису.перетворити_на_телеграм_обʼєкт() : я.сутності_підпису,
    has_spoiler=я.має_спойлер,
    disable_notification=я.відключити_сповіщення,
    protect_content=я.захист_вмісту,
    reply_to_message_id=я.відповісти_на_повідомлення_ід,
    allow_sending_without_reply=я.дозволити_відправку_без_відповіді,
    reply_markup=я.розмітка_відповіді ? розмітка_відповіді.перетворити_на_телеграм_обʼєкт() : я.розмітка_відповіді
  )
кінець

;; ---

структура НадіслатиАудіо
  ідентифікатор_чату число = undefined
  ідентифікатор_теми_повідомлення число = undefined
  аудіо ВвідФайлу = undefined
  підпис текст = undefined
  режим_розбору текст = undefined
  сутності_підпису Список = undefined
  тривалість число = undefined
  виконавець текст = undefined
  назва текст = undefined
  мініатюра ВвідФайлу = undefined
  відключити_сповіщення логічне = undefined
  захист_вмісту логічне = undefined
  відповісти_на_повідомлення_ід число = undefined
  дозволити_відправку_без_відповіді логічне = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
кінець

НадіслатиАудіо.назва_методу = "sendAudio"

дія НадіслатиАудіо.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    message_thread_id=я.ідентифікатор_теми_повідомлення,
    audio=я.аудіо ? аудіо.перетворити_на_телеграм_обʼєкт() : я.аудіо,
    caption=я.підпис,
    parse_mode=я.режим_розбору,
    caption_entities=я.сутності_підпису ? сутності_підпису.перетворити_на_телеграм_обʼєкт() : я.сутності_підпису,
    duration=я.тривалість,
    performer=я.виконавець,
    title=я.назва,
    thumb=я.мініатюра ? мініатюра.перетворити_на_телеграм_обʼєкт() : я.мініатюра,
    disable_notification=я.відключити_сповіщення,
    protect_content=я.захист_вмісту,
    reply_to_message_id=я.відповісти_на_повідомлення_ід,
    allow_sending_without_reply=я.дозволити_відправку_без_відповіді,
    reply_markup=я.розмітка_відповіді ? розмітка_відповіді.перетворити_на_телеграм_обʼєкт() : я.розмітка_відповіді
  )
кінець

;; ---

структура НадіслатиДокумент
  ідентифікатор_чату число = undefined
  ідентифікатор_теми_повідомлення число = undefined
  документ ВвідФайлу = undefined
  мініатюра ВвідФайлу = undefined
  підпис текст = undefined
  режим_розбору текст = undefined
  сутності_підпису Список = undefined
  вимкнути_визначення_типу_контенту логічне = undefined
  відключити_сповіщення логічне = undefined
  захист_вмісту логічне = undefined
  відповісти_на_повідомлення_ід число = undefined
  дозволити_відправку_без_відповіді логічне = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
кінець

НадіслатиДокумент.назва_методу = "sendDocument"

дія НадіслатиДокумент.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    message_thread_id=я.ідентифікатор_теми_повідомлення,
    document=я.документ ? документ.перетворити_на_телеграм_обʼєкт() : я.документ,
    thumb=я.мініатюра ? мініатюра.перетворити_на_телеграм_обʼєкт() : я.мініатюра,
    caption=я.підпис,
    parse_mode=я.режим_розбору,
    caption_entities=я.сутності_підпису ? сутності_підпису.перетворити_на_телеграм_обʼєкт() : я.сутності_підпису,
    disable_content_type_detection=я.вимкнути_визначення_типу_контенту,
    disable_notification=я.відключити_сповіщення,
    protect_content=я.захист_вмісту,
    reply_to_message_id=я.відповісти_на_повідомлення_ід,
    allow_sending_without_reply=я.дозволити_відправку_без_відповіді,
    reply_markup=я.розмітка_відповіді ? розмітка_відповіді.перетворити_на_телеграм_обʼєкт() : я.розмітка_відповіді
  )
кінець

;; ---

структура НадіслатиВідео
  ідентифікатор_чату число = undefined
  ідентифікатор_теми_повідомлення число = undefined
  відео ВвідФайлу = undefined
  тривалість число = undefined
  ширина число = undefined
  висота число = undefined
  мініатюра ВвідФайлу = undefined
  підпис текст = undefined
  режим_розбору текст = undefined
  сутності_підпису Список = undefined
  має_спойлер логічне = undefined
  підтримує_стрімінг логічне = undefined
  відключити_сповіщення логічне = undefined
  захист_вмісту логічне = undefined
  відповісти_на_повідомлення_ід число = undefined
  дозволити_відправку_без_відповіді логічне = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
кінець

НадіслатиВідео.назва_методу = "sendVideo"

дія НадіслатиВідео.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    message_thread_id=я.ідентифікатор_теми_повідомлення,
    video=я.відео ? відео.перетворити_на_телеграм_обʼєкт() : я.відео,
    duration=я.тривалість,
    width=я.ширина,
    height=я.висота,
    thumb=я.мініатюра ? мініатюра.перетворити_на_телеграм_обʼєкт() : я.мініатюра,
    caption=я.підпис,
    parse_mode=я.режим_розбору,
    caption_entities=я.сутності_підпису ? сутності_підпису.перетворити_на_телеграм_обʼєкт() : я.сутності_підпису,
    has_spoiler=я.має_спойлер,
    supports_streaming=я.підтримує_стрімінг,
    disable_notification=я.відключити_сповіщення,
    protect_content=я.захист_вмісту,
    reply_to_message_id=я.відповісти_на_повідомлення_ід,
    allow_sending_without_reply=я.дозволити_відправку_без_відповіді,
    reply_markup=я.розмітка_відповіді ? розмітка_відповіді.перетворити_на_телеграм_обʼєкт() : я.розмітка_відповіді
  )
кінець

;; ---

структура НадіслатиАнімацію
  ідентифікатор_чату число = undefined
  ідентифікатор_теми_повідомлення число = undefined
  анімація ВвідФайлу = undefined
  тривалість число = undefined
  ширина число = undefined
  висота число = undefined
  мініатюра ВвідФайлу = undefined
  підпис текст = undefined
  режим_розбору текст = undefined
  сутності_підпису Список = undefined
  має_спойлер логічне = undefined
  відключити_сповіщення логічне = undefined
  захист_вмісту логічне = undefined
  відповісти_на_повідомлення_ід число = undefined
  дозволити_відправку_без_відповіді логічне = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
кінець

НадіслатиАнімацію.назва_методу = "sendAnimation"

дія НадіслатиАнімацію.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    message_thread_id=я.ідентифікатор_теми_повідомлення,
    animation=я.анімація ? анімація.перетворити_на_телеграм_обʼєкт() : я.анімація,
    duration=я.тривалість,
    width=я.ширина,
    height=я.висота,
    thumb=я.мініатюра ? мініатюра.перетворити_на_телеграм_обʼєкт() : я.мініатюра,
    caption=я.підпис,
    parse_mode=я.режим_розбору,
    caption_entities=я.сутності_підпису ? сутності_підпису.перетворити_на_телеграм_обʼєкт() : я.сутності_підпису,
    has_spoiler=я.має_спойлер,
    disable_notification=я.відключити_сповіщення,
    protect_content=я.захист_вмісту,
    reply_to_message_id=я.відповісти_на_повідомлення_ід,
    allow_sending_without_reply=я.дозволити_відправку_без_відповіді,
    reply_markup=я.розмітка_відповіді ? розмітка_відповіді.перетворити_на_телеграм_обʼєкт() : я.розмітка_відповіді
  )
кінець

;; ---

структура НадіслатиГолосовеПовідомлення
  ідентифікатор_чату число = undefined
  ідентифікатор_теми_повідомлення число = undefined
  голос ВвідФайлу = undefined
  підпис текст = undefined
  режим_розбору текст = undefined
  сутності_підпису Список = undefined
  тривалість число = undefined
  відключити_сповіщення логічне = undefined
  захист_вмісту логічне = undefined
  відповісти_на_повідомлення_ід число = undefined
  дозволити_відправку_без_відповіді логічне = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
кінець

НадіслатиГолосовеПовідомлення.назва_методу = "sendVoice"

дія НадіслатиГолосовеПовідомлення.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    message_thread_id=я.ідентифікатор_теми_повідомлення,
    voice=я.голос ? голос.перетворити_на_телеграм_обʼєкт() : я.голос,
    caption=я.підпис,
    parse_mode=я.режим_розбору,
    caption_entities=я.сутності_підпису ? сутності_підпису.перетворити_на_телеграм_обʼєкт() : я.сутності_підпису,
    duration=я.тривалість,
    disable_notification=я.відключити_сповіщення,
    protect_content=я.захист_вмісту,
    reply_to_message_id=я.відповісти_на_повідомлення_ід,
    allow_sending_without_reply=я.дозволити_відправку_без_відповіді,
    reply_markup=я.розмітка_відповіді ? розмітка_відповіді.перетворити_на_телеграм_обʼєкт() : я.розмітка_відповіді
  )
кінець

;; ---

структура НадіслатиВідеоповідомлення
  ідентифікатор_чату число = undefined
  ідентифікатор_теми_повідомлення число = undefined
  відео_замітка ВвідФайлу = undefined
  тривалість число = undefined
  довжина число = undefined
  мініатюра ВвідФайлу = undefined
  відключити_сповіщення логічне = undefined
  захист_вмісту логічне = undefined
  відповісти_на_повідомлення_ід число = undefined
  дозволити_відправку_без_відповіді логічне = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
кінець

НадіслатиВідеоповідомлення.назва_методу = "sendVideoNote"

дія НадіслатиВідеоповідомлення.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    message_thread_id=я.ідентифікатор_теми_повідомлення,
    video_note=я.відео_замітка ? відео_замітка.перетворити_на_телеграм_обʼєкт() : я.відео_замітка,
    duration=я.тривалість,
    length=я.довжина,
    thumb=я.мініатюра ? мініатюра.перетворити_на_телеграм_обʼєкт() : я.мініатюра,
    disable_notification=я.відключити_сповіщення,
    protect_content=я.захист_вмісту,
    reply_to_message_id=я.відповісти_на_повідомлення_ід,
    allow_sending_without_reply=я.дозволити_відправку_без_відповіді,
    reply_markup=я.розмітка_відповіді ? розмітка_відповіді.перетворити_на_телеграм_обʼєкт() : я.розмітка_відповіді
  )
кінець

;; ---

структура НадіслатиМедіаГрупу
  ідентифікатор_чату число = undefined
  ідентифікатор_теми_повідомлення число = undefined
  медіа Список = undefined
  відключити_сповіщення логічне = undefined
  захист_вмісту логічне = undefined
  відповісти_на_повідомлення_ід число = undefined
  дозволити_відправку_без_відповіді логічне = undefined
кінець

НадіслатиМедіаГрупу.назва_методу = "sendMediaGroup"

дія НадіслатиМедіаГрупу.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    message_thread_id=я.ідентифікатор_теми_повідомлення,
    media=я.медіа ? медіа.перетворити_на_телеграм_обʼєкт() : я.медіа,
    disable_notification=я.відключити_сповіщення,
    protect_content=я.захист_вмісту,
    reply_to_message_id=я.відповісти_на_повідомлення_ід,
    allow_sending_without_reply=я.дозволити_відправку_без_відповіді
  )
кінець

;; ---

структура НадіслатиЛокацію
  ідентифікатор_чату число = undefined
  ідентифікатор_теми_повідомлення число = undefined
  широта число = undefined
  довгота число = undefined
  горизонтальна_точність число = undefined
  активний_період число = undefined
  напрямок число = undefined
  радіус_сповіщення число = undefined
  відключити_сповіщення логічне = undefined
  захист_вмісту логічне = undefined
  відповісти_на_повідомлення_ід число = undefined
  дозволити_відправку_без_відповіді логічне = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
кінець

НадіслатиЛокацію.назва_методу = "sendLocation"

дія НадіслатиЛокацію.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    message_thread_id=я.ідентифікатор_теми_повідомлення,
    latitude=я.широта,
    longitude=я.довгота,
    horizontal_accuracy=я.горизонтальна_точність,
    live_period=я.активний_період,
    heading=я.напрямок,
    proximity_alert_radius=я.радіус_сповіщення,
    disable_notification=я.відключити_сповіщення,
    protect_content=я.захист_вмісту,
    reply_to_message_id=я.відповісти_на_повідомлення_ід,
    allow_sending_without_reply=я.дозволити_відправку_без_відповіді,
    reply_markup=я.розмітка_відповіді ? розмітка_відповіді.перетворити_на_телеграм_обʼєкт() : я.розмітка_відповіді
  )
кінець

;; ---

структура РедагуватиЖивуЛокаціюПовідомлення
  ідентифікатор_чату число = undefined
  ідентифікатор_повідомлення число = undefined
  ідентифікатор_інлайн_повідомлення текст = undefined
  широта число = undefined
  довгота число = undefined
  горизонтальна_точність число = undefined
  напрямок число = undefined
  радіус_сповіщення число = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
кінець

РедагуватиЖивуЛокаціюПовідомлення.назва_методу = "editMessageLiveLocation"

дія РедагуватиЖивуЛокаціюПовідомлення.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    message_id=я.ідентифікатор_повідомлення,
    inline_message_id=я.ідентифікатор_інлайн_повідомлення,
    latitude=я.широта,
    longitude=я.довгота,
    horizontal_accuracy=я.горизонтальна_точність,
    heading=я.напрямок,
    proximity_alert_radius=я.радіус_сповіщення,
    reply_markup=я.розмітка_відповіді ? розмітка_відповіді.перетворити_на_телеграм_обʼєкт() : я.розмітка_відповіді
  )
кінець

;; ---

структура ЗупинитиЖивуЛокаціюПовідомлення
  ідентифікатор_чату число = undefined
  ідентифікатор_повідомлення число = undefined
  ідентифікатор_інлайн_повідомлення текст = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
кінець

ЗупинитиЖивуЛокаціюПовідомлення.назва_методу = "stopMessageLiveLocation"

дія ЗупинитиЖивуЛокаціюПовідомлення.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    message_id=я.ідентифікатор_повідомлення,
    inline_message_id=я.ідентифікатор_інлайн_повідомлення,
    reply_markup=я.розмітка_відповіді ? розмітка_відповіді.перетворити_на_телеграм_обʼєкт() : я.розмітка_відповіді
  )
кінець

;; ---

структура НадіслатиМісцеЗустрічі
  ідентифікатор_чату число = undefined
  ідентифікатор_теми_повідомлення число = undefined
  широта число = undefined
  довгота число = undefined
  назва текст = undefined
  адреса текст = undefined
  ідентифікатор_Foursquare текст = undefined
  тип_Foursquare текст = undefined
  ідентифікатор_Google текст = undefined
  тип_Google текст = undefined
  відключити_сповіщення логічне = undefined
  захист_вмісту логічне = undefined
  відповісти_на_повідомлення_ід число = undefined
  дозволити_відправку_без_відповіді логічне = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
кінець

НадіслатиМісцеЗустрічі.назва_методу = "sendVenue"

дія НадіслатиМісцеЗустрічі.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    message_thread_id=я.ідентифікатор_теми_повідомлення,
    latitude=я.широта,
    longitude=я.довгота,
    title=я.назва,
    address=я.адреса,
    foursquare_id=я.ідентифікатор_Foursquare,
    foursquare_type=я.тип_Foursquare,
    google_place_id=я.ідентифікатор_Google,
    google_place_type=я.тип_Google,
    disable_notification=я.відключити_сповіщення,
    protect_content=я.захист_вмісту,
    reply_to_message_id=я.відповісти_на_повідомлення_ід,
    allow_sending_without_reply=я.дозволити_відправку_без_відповіді,
    reply_markup=я.розмітка_відповіді ? розмітка_відповіді.перетворити_на_телеграм_обʼєкт() : я.розмітка_відповіді
  )
кінець

;; ---

структура НадіслатиКонтакт
  ідентифікатор_чату число = undefined
  ідентифікатор_теми_повідомлення число = undefined
  номер_телефону текст = undefined
  ім'я текст = undefined
  прізвище текст = undefined
  візитна_картка текст = undefined
  відключити_сповіщення логічне = undefined
  захист_вмісту логічне = undefined
  відповісти_на_повідомлення_ід число = undefined
  дозволити_відправку_без_відповіді логічне = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
кінець

НадіслатиКонтакт.назва_методу = "sendContact"

дія НадіслатиКонтакт.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    message_thread_id=я.ідентифікатор_теми_повідомлення,
    phone_number=я.номер_телефону,
    first_name=я.ім'я,
    last_name=я.прізвище,
    vcard=я.візитна_картка,
    disable_notification=я.відключити_сповіщення,
    protect_content=я.захист_вмісту,
    reply_to_message_id=я.відповісти_на_повідомлення_ід,
    allow_sending_without_reply=я.дозволити_відправку_без_відповіді,
    reply_markup=я.розмітка_відповіді ? розмітка_відповіді.перетворити_на_телеграм_обʼєкт() : я.розмітка_відповіді
  )
кінець

;; ---

структура НадіслатиОпитування
  ідентифікатор_чату число = undefined
  ідентифікатор_теми_повідомлення число = undefined
  питання текст = undefined
  варіанти_відповідей Список = undefined
  анонімне_опитування логічне = undefined
  тип текст = undefined
  дозволені_множинні_відповіді логічне = undefined
  ідентифікатор_правильної_відповіді число = undefined
  пояснення текст = undefined
  режим_розбору_пояснення текст = undefined
  сутності_пояснення Список = undefined
  відкритий_період число = undefined
  дата_закриття число = undefined
  опитування_закрите логічне = undefined
  відключити_сповіщення логічне = undefined
  захист_вмісту логічне = undefined
  відповісти_на_повідомлення_ід число = undefined
  дозволити_відправку_без_відповіді логічне = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
кінець

НадіслатиОпитування.назва_методу = "sendPoll"

дія НадіслатиОпитування.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    message_thread_id=я.ідентифікатор_теми_повідомлення,
    question=я.питання,
    options=я.варіанти_відповідей ? варіанти_відповідей.перетворити_на_телеграм_обʼєкт() : я.варіанти_відповідей,
    is_anonymous=я.анонімне_опитування,
    type=я.тип,
    allows_multiple_answers=я.дозволені_множинні_відповіді,
    correct_option_id=я.ідентифікатор_правильної_відповіді,
    explanation=я.пояснення,
    explanation_parse_mode=я.режим_розбору_пояснення,
    explanation_entities=я.сутності_пояснення ? сутності_пояснення.перетворити_на_телеграм_обʼєкт() : я.сутності_пояснення,
    open_period=я.відкритий_період,
    close_date=я.дата_закриття,
    is_closed=я.опитування_закрите,
    disable_notification=я.відключити_сповіщення,
    protect_content=я.захист_вмісту,
    reply_to_message_id=я.відповісти_на_повідомлення_ід,
    allow_sending_without_reply=я.дозволити_відправку_без_відповіді,
    reply_markup=я.розмітка_відповіді ? розмітка_відповіді.перетворити_на_телеграм_обʼєкт() : я.розмітка_відповіді
  )
кінець

;; ---

структура НадіслатиКубик
  ідентифікатор_чату число = undefined
  ідентифікатор_теми_повідомлення число = undefined
  емодзі текст = undefined
  відключити_сповіщення логічне = undefined
  захист_вмісту логічне = undefined
  відповісти_на_повідомлення_ід число = undefined
  дозволити_відправку_без_відповіді логічне = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
кінець

НадіслатиКубик.назва_методу = "sendDice"

дія НадіслатиКубик.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    message_thread_id=я.ідентифікатор_теми_повідомлення,
    emoji=я.емодзі,
    disable_notification=я.відключити_сповіщення,
    protect_content=я.захист_вмісту,
    reply_to_message_id=я.відповісти_на_повідомлення_ід,
    allow_sending_without_reply=я.дозволити_відправку_без_відповіді,
    reply_markup=я.розмітка_відповіді ? розмітка_відповіді.перетворити_на_телеграм_обʼєкт() : я.розмітка_відповіді
  )
кінець

;; ---

структура НадіслатиДіюЧату
  ідентифікатор_чату число = undefined
  ідентифікатор_теми_повідомлення число = undefined
  операція текст = undefined
кінець

НадіслатиДіюЧату.назва_методу = "sendChatAction"

дія НадіслатиДіюЧату.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    message_thread_id=я.ідентифікатор_теми_повідомлення,
    action=я.операція
  )
кінець

;; ---

структура ОтриматиФотографіїПрофілюКористувача
  ідентифікатор_користувача число = undefined
  зсув число = undefined
  ліміт число = undefined
кінець

ОтриматиФотографіїПрофілюКористувача.назва_методу = "getUserProfilePhotos"

дія ОтриматиФотографіїПрофілюКористувача.перетворити_на_телеграм_обʼєкт()
  (
    user_id=я.ідентифікатор_користувача,
    offset=я.зсув,
    limit=я.ліміт
  )
кінець

;; ---

структура ОтриматиФайл
  ідентифікатор_файлу текст = undefined
кінець

ОтриматиФайл.назва_методу = "getFile"

дія ОтриматиФайл.перетворити_на_телеграм_обʼєкт()
  (
    file_id=я.ідентифікатор_файлу
  )
кінець

;; ---

структура ЗаблокуватиУчасникаЧату
  ідентифікатор_чату число = undefined
  ідентифікатор_користувача число = undefined
  до_дати число = undefined
  відкликати_повідомлення логічне = undefined
кінець

ЗаблокуватиУчасникаЧату.назва_методу = "banChatMember"

дія ЗаблокуватиУчасникаЧату.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    user_id=я.ідентифікатор_користувача,
    until_date=я.до_дати,
    revoke_messages=я.відкликати_повідомлення
  )
кінець

;; ---

структура РозблокуватиУчасникаЧату
  ідентифікатор_чату число = undefined
  ідентифікатор_користувача число = undefined
  тільки_якщо_забанено логічне = undefined
кінець

РозблокуватиУчасникаЧату.назва_методу = "unbanChatMember"

дія РозблокуватиУчасникаЧату.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    user_id=я.ідентифікатор_користувача,
    only_if_banned=я.тільки_якщо_забанено
  )
кінець

;; ---

структура restrictChatMember
  ідентифікатор_чату число = undefined
  ідентифікатор_користувача число = undefined
  дозволи ДозволиЧату = undefined
  використовувати_незалежні_права_чату логічне = undefined
  до_дати число = undefined
кінець

restrictChatMember.назва_методу = "restrictChatMember"

дія restrictChatMember.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    user_id=я.ідентифікатор_користувача,
    permissions=я.дозволи ? дозволи.перетворити_на_телеграм_обʼєкт() : я.дозволи,
    use_independent_chat_permissions=я.використовувати_незалежні_права_чату,
    until_date=я.до_дати
  )
кінець

;; ---

структура promoteChatMember
  ідентифікатор_чату число = undefined
  ідентифікатор_користувача число = undefined
  анонімне_опитування логічне = undefined
  може_керувати_чатом логічне = undefined
  може_публікувати_повідомлення логічне = undefined
  може_редагувати_повідомлення логічне = undefined
  може_видаляти_повідомлення логічне = undefined
  може_керувати_відеоконференціями логічне = undefined
  може_обмежувати_учасників логічне = undefined
  може_підвищувати_учасників логічне = undefined
  може_змінювати_інформацію логічне = undefined
  може_запрошувати_користувачів логічне = undefined
  може_закріплювати_повідомлення логічне = undefined
  може_керувати_темами логічне = undefined
кінець

promoteChatMember.назва_методу = "promoteChatMember"

дія promoteChatMember.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    user_id=я.ідентифікатор_користувача,
    is_anonymous=я.анонімне_опитування,
    can_manage_chat=я.може_керувати_чатом,
    can_post_messages=я.може_публікувати_повідомлення,
    can_edit_messages=я.може_редагувати_повідомлення,
    can_delete_messages=я.може_видаляти_повідомлення,
    can_manage_video_chats=я.може_керувати_відеоконференціями,
    can_restrict_members=я.може_обмежувати_учасників,
    can_promote_members=я.може_підвищувати_учасників,
    can_change_info=я.може_змінювати_інформацію,
    can_invite_users=я.може_запрошувати_користувачів,
    can_pin_messages=я.може_закріплювати_повідомлення,
    can_manage_topics=я.може_керувати_темами
  )
кінець

;; ---

структура setChatAdministratorCustomTitle
  ідентифікатор_чату число = undefined
  ідентифікатор_користувача число = undefined
  індивідуальний_заголовок текст = undefined
кінець

setChatAdministratorCustomTitle.назва_методу = "setChatAdministratorCustomTitle"

дія setChatAdministratorCustomTitle.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    user_id=я.ідентифікатор_користувача,
    custom_title=я.індивідуальний_заголовок
  )
кінець

;; ---

структура banChatSenderChat
  ідентифікатор_чату число = undefined
  ід_чату_відправника число = undefined
кінець

banChatSenderChat.назва_методу = "banChatSenderChat"

дія banChatSenderChat.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    sender_chat_id=я.ід_чату_відправника
  )
кінець

;; ---

структура unbanChatSenderChat
  ідентифікатор_чату число = undefined
  ід_чату_відправника число = undefined
кінець

unbanChatSenderChat.назва_методу = "unbanChatSenderChat"

дія unbanChatSenderChat.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    sender_chat_id=я.ід_чату_відправника
  )
кінець

;; ---

структура ВстановитиДозволиЧату
  ідентифікатор_чату число = undefined
  дозволи ДозволиЧату = undefined
  використовувати_незалежні_права_чату логічне = undefined
кінець

ВстановитиДозволиЧату.назва_методу = "setChatPermissions"

дія ВстановитиДозволиЧату.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    permissions=я.дозволи ? дозволи.перетворити_на_телеграм_обʼєкт() : я.дозволи,
    use_independent_chat_permissions=я.використовувати_незалежні_права_чату
  )
кінець

;; ---

структура ЕкспортуватиПосиланняЗапрошенняЧату
  ідентифікатор_чату число = undefined
кінець

ЕкспортуватиПосиланняЗапрошенняЧату.назва_методу = "exportChatInviteLink"

дія ЕкспортуватиПосиланняЗапрошенняЧату.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату
  )
кінець

;; ---

структура СтворитиПосиланняЗапрошенняЧату
  ідентифікатор_чату число = undefined
  назва текст = undefined
  дата_закінчення число = undefined
  ліміт_учасників число = undefined
  створює_запит_на_вступ логічне = undefined
кінець

СтворитиПосиланняЗапрошенняЧату.назва_методу = "createChatInviteLink"

дія СтворитиПосиланняЗапрошенняЧату.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    name=я.назва,
    expire_date=я.дата_закінчення,
    member_limit=я.ліміт_учасників,
    creates_join_request=я.створює_запит_на_вступ
  )
кінець

;; ---

структура РедагуватиПосиланняЗапрошенняЧату
  ідентифікатор_чату число = undefined
  посилання_запрошення текст = undefined
  назва текст = undefined
  дата_закінчення число = undefined
  ліміт_учасників число = undefined
  створює_запит_на_вступ логічне = undefined
кінець

РедагуватиПосиланняЗапрошенняЧату.назва_методу = "editChatInviteLink"

дія РедагуватиПосиланняЗапрошенняЧату.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    invite_link=я.посилання_запрошення,
    name=я.назва,
    expire_date=я.дата_закінчення,
    member_limit=я.ліміт_учасників,
    creates_join_request=я.створює_запит_на_вступ
  )
кінець

;; ---

структура ВідкликатиПосиланняЗапрошенняЧату
  ідентифікатор_чату число = undefined
  посилання_запрошення текст = undefined
кінець

ВідкликатиПосиланняЗапрошенняЧату.назва_методу = "revokeChatInviteLink"

дія ВідкликатиПосиланняЗапрошенняЧату.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    invite_link=я.посилання_запрошення
  )
кінець

;; ---

структура ЗатверджуватиЗапитНаВступДоЧату
  ідентифікатор_чату число = undefined
  ідентифікатор_користувача число = undefined
кінець

ЗатверджуватиЗапитНаВступДоЧату.назва_методу = "approveChatJoinRequest"

дія ЗатверджуватиЗапитНаВступДоЧату.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    user_id=я.ідентифікатор_користувача
  )
кінець

;; ---

структура ВідхилятиЗапитНаВступДоЧату
  ідентифікатор_чату число = undefined
  ідентифікатор_користувача число = undefined
кінець

ВідхилятиЗапитНаВступДоЧату.назва_методу = "declineChatJoinRequest"

дія ВідхилятиЗапитНаВступДоЧату.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    user_id=я.ідентифікатор_користувача
  )
кінець

;; ---

структура ВстановитиФотоЧату
  ідентифікатор_чату число = undefined
  фото ВвідФайлу = undefined
кінець

ВстановитиФотоЧату.назва_методу = "setChatPhoto"

дія ВстановитиФотоЧату.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    photo=я.фото ? фото.перетворити_на_телеграм_обʼєкт() : я.фото
  )
кінець

;; ---

структура ВидалитиФотоЧату
  ідентифікатор_чату число = undefined
кінець

ВидалитиФотоЧату.назва_методу = "deleteChatPhoto"

дія ВидалитиФотоЧату.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату
  )
кінець

;; ---

структура ВстановитиНазвуЧату
  ідентифікатор_чату число = undefined
  назва текст = undefined
кінець

ВстановитиНазвуЧату.назва_методу = "setChatTitle"

дія ВстановитиНазвуЧату.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    title=я.назва
  )
кінець

;; ---

структура ВстановитиОписЧату
  ідентифікатор_чату число = undefined
  опис текст = undefined
кінець

ВстановитиОписЧату.назва_методу = "setChatDescription"

дія ВстановитиОписЧату.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    description=я.опис
  )
кінець

;; ---

структура ЗакріпитиПовідомленняВЧаті
  ідентифікатор_чату число = undefined
  ідентифікатор_повідомлення число = undefined
  відключити_сповіщення логічне = undefined
кінець

ЗакріпитиПовідомленняВЧаті.назва_методу = "pinChatMessage"

дія ЗакріпитиПовідомленняВЧаті.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    message_id=я.ідентифікатор_повідомлення,
    disable_notification=я.відключити_сповіщення
  )
кінець

;; ---

структура ВідкріпитиПовідомленняВЧаті
  ідентифікатор_чату число = undefined
  ідентифікатор_повідомлення число = undefined
кінець

ВідкріпитиПовідомленняВЧаті.назва_методу = "unpinChatMessage"

дія ВідкріпитиПовідомленняВЧаті.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    message_id=я.ідентифікатор_повідомлення
  )
кінець

;; ---

структура ВідкріпитиВсіПовідомленняВЧаті
  ідентифікатор_чату число = undefined
кінець

ВідкріпитиВсіПовідомленняВЧаті.назва_методу = "unpinAllChatMessages"

дія ВідкріпитиВсіПовідомленняВЧаті.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату
  )
кінець

;; ---

структура ВийтиЗЧату
  ідентифікатор_чату число = undefined
кінець

ВийтиЗЧату.назва_методу = "leaveChat"

дія ВийтиЗЧату.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату
  )
кінець

;; ---

структура ОтриматиІнформаціюПроЧат
  ідентифікатор_чату число = undefined
кінець

ОтриматиІнформаціюПроЧат.назва_методу = "getChat"

дія ОтриматиІнформаціюПроЧат.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату
  )
кінець

;; ---

структура ОтриматиАдміністраторівЧату
  ідентифікатор_чату число = undefined
кінець

ОтриматиАдміністраторівЧату.назва_методу = "getChatAdministrators"

дія ОтриматиАдміністраторівЧату.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату
  )
кінець

;; ---

структура ОтриматиКількістьУчасниківЧату
  ідентифікатор_чату число = undefined
кінець

ОтриматиКількістьУчасниківЧату.назва_методу = "getChatMemberCount"

дія ОтриматиКількістьУчасниківЧату.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату
  )
кінець

;; ---

структура ОтриматиІнформаціюПроУчасникаЧату
  ідентифікатор_чату число = undefined
  ідентифікатор_користувача число = undefined
кінець

ОтриматиІнформаціюПроУчасникаЧату.назва_методу = "getChatMember"

дія ОтриматиІнформаціюПроУчасникаЧату.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    user_id=я.ідентифікатор_користувача
  )
кінець

;; ---

структура ВстановитиНабірСтікерівЧату
  ідентифікатор_чату число = undefined
  назва_набору_стікерів текст = undefined
кінець

ВстановитиНабірСтікерівЧату.назва_методу = "setChatStickerSet"

дія ВстановитиНабірСтікерівЧату.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    sticker_set_name=я.назва_набору_стікерів
  )
кінець

;; ---

структура ВидалитиНабірСтікерівЧату
  ідентифікатор_чату число = undefined
кінець

ВидалитиНабірСтікерівЧату.назва_методу = "deleteChatStickerSet"

дія ВидалитиНабірСтікерівЧату.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату
  )
кінець

;; ---

структура ОтриматиСтікериІконокТемФоруму
кінець

ОтриматиСтікериІконокТемФоруму.назва_методу = "getForumTopicIconStickers"

дія ОтриматиСтікериІконокТемФоруму.перетворити_на_телеграм_обʼєкт()
  ()
кінець

;; ---

структура СтворитиТемуФоруму
  ідентифікатор_чату число = undefined
  назва текст = undefined
  колір_іконки число = undefined
  ідентифікатор_спеціальної_емоджі_іконки текст = undefined
кінець

СтворитиТемуФоруму.назва_методу = "createForumTopic"

дія СтворитиТемуФоруму.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    name=я.назва,
    icon_color=я.колір_іконки,
    icon_custom_emoji_id=я.ідентифікатор_спеціальної_емоджі_іконки
  )
кінець

;; ---

структура РедагуватиТемуФоруму
  ідентифікатор_чату число = undefined
  ідентифікатор_теми_повідомлення число = undefined
  назва текст = undefined
  ідентифікатор_спеціальної_емоджі_іконки текст = undefined
кінець

РедагуватиТемуФоруму.назва_методу = "editForumTopic"

дія РедагуватиТемуФоруму.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    message_thread_id=я.ідентифікатор_теми_повідомлення,
    name=я.назва,
    icon_custom_emoji_id=я.ідентифікатор_спеціальної_емоджі_іконки
  )
кінець

;; ---

структура ЗакритиТемуФоруму
  ідентифікатор_чату число = undefined
  ідентифікатор_теми_повідомлення число = undefined
кінець

ЗакритиТемуФоруму.назва_методу = "closeForumTopic"

дія ЗакритиТемуФоруму.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    message_thread_id=я.ідентифікатор_теми_повідомлення
  )
кінець

;; ---

структура ВідкритиТемуФорумуЗнову
  ідентифікатор_чату число = undefined
  ідентифікатор_теми_повідомлення число = undefined
кінець

ВідкритиТемуФорумуЗнову.назва_методу = "reopenForumTopic"

дія ВідкритиТемуФорумуЗнову.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    message_thread_id=я.ідентифікатор_теми_повідомлення
  )
кінець

;; ---

структура ВидалитиТемуФоруму
  ідентифікатор_чату число = undefined
  ідентифікатор_теми_повідомлення число = undefined
кінець

ВидалитиТемуФоруму.назва_методу = "deleteForumTopic"

дія ВидалитиТемуФоруму.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    message_thread_id=я.ідентифікатор_теми_повідомлення
  )
кінець

;; ---

структура ВідкріпитиВсіПовідомленняТемиФоруму
  ідентифікатор_чату число = undefined
  ідентифікатор_теми_повідомлення число = undefined
кінець

ВідкріпитиВсіПовідомленняТемиФоруму.назва_методу = "unpinAllForumTopicMessages"

дія ВідкріпитиВсіПовідомленняТемиФоруму.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    message_thread_id=я.ідентифікатор_теми_повідомлення
  )
кінець

;; ---

структура РедагуватиЗагальнуТемуФоруму
  ідентифікатор_чату число = undefined
  назва текст = undefined
кінець

РедагуватиЗагальнуТемуФоруму.назва_методу = "editGeneralForumTopic"

дія РедагуватиЗагальнуТемуФоруму.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    name=я.назва
  )
кінець

;; ---

структура ЗакритиЗагальнуТемуФоруму
  ідентифікатор_чату число = undefined
кінець

ЗакритиЗагальнуТемуФоруму.назва_методу = "closeGeneralForumTopic"

дія ЗакритиЗагальнуТемуФоруму.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату
  )
кінець

;; ---

структура ВідкритиЗагальнуТемуФоруму
  ідентифікатор_чату число = undefined
кінець

ВідкритиЗагальнуТемуФоруму.назва_методу = "reopenGeneralForumTopic"

дія ВідкритиЗагальнуТемуФоруму.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату
  )
кінець

;; ---

структура СховатиЗагальнуТемуФоруму
  ідентифікатор_чату число = undefined
кінець

СховатиЗагальнуТемуФоруму.назва_методу = "hideGeneralForumTopic"

дія СховатиЗагальнуТемуФоруму.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату
  )
кінець

;; ---

структура ПоказатиЗагальнуТемуФоруму
  ідентифікатор_чату число = undefined
кінець

ПоказатиЗагальнуТемуФоруму.назва_методу = "unhideGeneralForumTopic"

дія ПоказатиЗагальнуТемуФоруму.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату
  )
кінець

;; ---

структура ВідповістиНаЗапитCallback
  ід_запиту_зворотного_виклику текст = undefined
  текст текст = undefined
  показати_сповіщення логічне = undefined
  урл текст = undefined
  час_кешування число = undefined
кінець

ВідповістиНаЗапитCallback.назва_методу = "answerCallbackQuery"

дія ВідповістиНаЗапитCallback.перетворити_на_телеграм_обʼєкт()
  (
    callback_query_id=я.ід_запиту_зворотного_виклику,
    text=я.текст,
    show_alert=я.показати_сповіщення,
    url=я.урл,
    cache_time=я.час_кешування
  )
кінець

;; ---

структура ВстановитиМоїКоманди
  команди Список = undefined
  діапазон ОбсягКомандБота = undefined
  код_мови текст = undefined
кінець

ВстановитиМоїКоманди.назва_методу = "setMyCommands"

дія ВстановитиМоїКоманди.перетворити_на_телеграм_обʼєкт()
  (
    commands=я.команди ? команди.перетворити_на_телеграм_обʼєкт() : я.команди,
    scope=я.діапазон ? діапазон.перетворити_на_телеграм_обʼєкт() : я.діапазон,
    language_code=я.код_мови
  )
кінець

;; ---

структура ВидалитиМоїКоманди
  діапазон ОбсягКомандБота = undefined
  код_мови текст = undefined
кінець

ВидалитиМоїКоманди.назва_методу = "deleteMyCommands"

дія ВидалитиМоїКоманди.перетворити_на_телеграм_обʼєкт()
  (
    scope=я.діапазон ? діапазон.перетворити_на_телеграм_обʼєкт() : я.діапазон,
    language_code=я.код_мови
  )
кінець

;; ---

структура ОтриматиМоїКоманди
  діапазон ОбсягКомандБота = undefined
  код_мови текст = undefined
кінець

ОтриматиМоїКоманди.назва_методу = "getMyCommands"

дія ОтриматиМоїКоманди.перетворити_на_телеграм_обʼєкт()
  (
    scope=я.діапазон ? діапазон.перетворити_на_телеграм_обʼєкт() : я.діапазон,
    language_code=я.код_мови
  )
кінець

;; ---

структура ВстановитиКнопкуМенюЧату
  ідентифікатор_чату число = undefined
  кнопка_меню КнопкаМеню = undefined
кінець

ВстановитиКнопкуМенюЧату.назва_методу = "setChatMenuButton"

дія ВстановитиКнопкуМенюЧату.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    menu_button=я.кнопка_меню ? кнопка_меню.перетворити_на_телеграм_обʼєкт() : я.кнопка_меню
  )
кінець

;; ---

структура ОтриматиКнопкуМенюЧату
  ідентифікатор_чату число = undefined
кінець

ОтриматиКнопкуМенюЧату.назва_методу = "getChatMenuButton"

дія ОтриматиКнопкуМенюЧату.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату
  )
кінець

;; ---

структура ВстановитиМоїПраваАдміністратора
  права ПраваАдміністратораЧату = undefined
  для_каналів логічне = undefined
кінець

ВстановитиМоїПраваАдміністратора.назва_методу = "setMyDefaultAdministratorRights"

дія ВстановитиМоїПраваАдміністратора.перетворити_на_телеграм_обʼєкт()
  (
    rights=я.права ? права.перетворити_на_телеграм_обʼєкт() : я.права,
    for_channels=я.для_каналів
  )
кінець

;; ---

структура ОтриматиМоїПраваАдміністратора
  для_каналів логічне = undefined
кінець

ОтриматиМоїПраваАдміністратора.назва_методу = "getMyDefaultAdministratorRights"

дія ОтриматиМоїПраваАдміністратора.перетворити_на_телеграм_обʼєкт()
  (
    for_channels=я.для_каналів
  )
кінець

;; ---

структура РедагуватиТекстПовідомлення
  ідентифікатор_чату число = undefined
  ідентифікатор_повідомлення число = undefined
  ідентифікатор_інлайн_повідомлення текст = undefined
  текст текст = undefined
  режим_розбору текст = undefined
  сутності Список = undefined
  вимкнути_попередній_перегляд_сторінки логічне = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
кінець

РедагуватиТекстПовідомлення.назва_методу = "editMessageText"

дія РедагуватиТекстПовідомлення.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    message_id=я.ідентифікатор_повідомлення,
    inline_message_id=я.ідентифікатор_інлайн_повідомлення,
    text=я.текст,
    parse_mode=я.режим_розбору,
    entities=я.сутності ? сутності.перетворити_на_телеграм_обʼєкт() : я.сутності,
    disable_web_page_preview=я.вимкнути_попередній_перегляд_сторінки,
    reply_markup=я.розмітка_відповіді ? розмітка_відповіді.перетворити_на_телеграм_обʼєкт() : я.розмітка_відповіді
  )
кінець

;; ---

структура РедагуватиПідписПовідомлення
  ідентифікатор_чату число = undefined
  ідентифікатор_повідомлення число = undefined
  ідентифікатор_інлайн_повідомлення текст = undefined
  підпис текст = undefined
  режим_розбору текст = undefined
  сутності_підпису Список = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
кінець

РедагуватиПідписПовідомлення.назва_методу = "editMessageCaption"

дія РедагуватиПідписПовідомлення.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    message_id=я.ідентифікатор_повідомлення,
    inline_message_id=я.ідентифікатор_інлайн_повідомлення,
    caption=я.підпис,
    parse_mode=я.режим_розбору,
    caption_entities=я.сутності_підпису ? сутності_підпису.перетворити_на_телеграм_обʼєкт() : я.сутності_підпису,
    reply_markup=я.розмітка_відповіді ? розмітка_відповіді.перетворити_на_телеграм_обʼєкт() : я.розмітка_відповіді
  )
кінець

;; ---

структура РедагуватиМедіаПовідомлення
  ідентифікатор_чату число = undefined
  ідентифікатор_повідомлення число = undefined
  ідентифікатор_інлайн_повідомлення текст = undefined
  медіа ВвідМедіа = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
кінець

РедагуватиМедіаПовідомлення.назва_методу = "editMessageMedia"

дія РедагуватиМедіаПовідомлення.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    message_id=я.ідентифікатор_повідомлення,
    inline_message_id=я.ідентифікатор_інлайн_повідомлення,
    media=я.медіа ? медіа.перетворити_на_телеграм_обʼєкт() : я.медіа,
    reply_markup=я.розмітка_відповіді ? розмітка_відповіді.перетворити_на_телеграм_обʼєкт() : я.розмітка_відповіді
  )
кінець

;; ---

структура РедагуватиРозміткуВідповідіПовідомлення
  ідентифікатор_чату число = undefined
  ідентифікатор_повідомлення число = undefined
  ідентифікатор_інлайн_повідомлення текст = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
кінець

РедагуватиРозміткуВідповідіПовідомлення.назва_методу = "editMessageReplyMarkup"

дія РедагуватиРозміткуВідповідіПовідомлення.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    message_id=я.ідентифікатор_повідомлення,
    inline_message_id=я.ідентифікатор_інлайн_повідомлення,
    reply_markup=я.розмітка_відповіді ? розмітка_відповіді.перетворити_на_телеграм_обʼєкт() : я.розмітка_відповіді
  )
кінець

;; ---

структура ЗупинитиОпитування
  ідентифікатор_чату число = undefined
  ідентифікатор_повідомлення число = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
кінець

ЗупинитиОпитування.назва_методу = "stopPoll"

дія ЗупинитиОпитування.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    message_id=я.ідентифікатор_повідомлення,
    reply_markup=я.розмітка_відповіді ? розмітка_відповіді.перетворити_на_телеграм_обʼєкт() : я.розмітка_відповіді
  )
кінець

;; ---

структура ВидалитиПовідомлення
  ідентифікатор_чату число = undefined
  ідентифікатор_повідомлення число = undefined
кінець

ВидалитиПовідомлення.назва_методу = "deleteMessage"

дія ВидалитиПовідомлення.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    message_id=я.ідентифікатор_повідомлення
  )
кінець

;; ---

структура НадіслатиСтікер
  ідентифікатор_чату число = undefined
  ідентифікатор_теми_повідомлення число = undefined
  стікер ВвідФайлу = undefined
  відключити_сповіщення логічне = undefined
  захист_вмісту логічне = undefined
  відповісти_на_повідомлення_ід число = undefined
  дозволити_відправку_без_відповіді логічне = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
кінець

НадіслатиСтікер.назва_методу = "sendSticker"

дія НадіслатиСтікер.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    message_thread_id=я.ідентифікатор_теми_повідомлення,
    sticker=я.стікер ? стікер.перетворити_на_телеграм_обʼєкт() : я.стікер,
    disable_notification=я.відключити_сповіщення,
    protect_content=я.захист_вмісту,
    reply_to_message_id=я.відповісти_на_повідомлення_ід,
    allow_sending_without_reply=я.дозволити_відправку_без_відповіді,
    reply_markup=я.розмітка_відповіді ? розмітка_відповіді.перетворити_на_телеграм_обʼєкт() : я.розмітка_відповіді
  )
кінець

;; ---

структура ОтриматиНабірСтікерів
  назва текст = undefined
кінець

ОтриматиНабірСтікерів.назва_методу = "getStickerSet"

дія ОтриматиНабірСтікерів.перетворити_на_телеграм_обʼєкт()
  (
    name=я.назва
  )
кінець

;; ---

структура ОтриматиСтікериСпеціальногоЕмодзі
  ід_власних_емодзі Список = undefined
кінець

ОтриматиСтікериСпеціальногоЕмодзі.назва_методу = "getCustomEmojiStickers"

дія ОтриматиСтікериСпеціальногоЕмодзі.перетворити_на_телеграм_обʼєкт()
  (
    custom_emoji_ids=я.ід_власних_емодзі ? ід_власних_емодзі.перетворити_на_телеграм_обʼєкт() : я.ід_власних_емодзі
  )
кінець

;; ---

структура ЗавантажитиФайлСтікера
  ідентифікатор_користувача число = undefined
  png_стікер ВвідФайлу = undefined
кінець

ЗавантажитиФайлСтікера.назва_методу = "uploadStickerFile"

дія ЗавантажитиФайлСтікера.перетворити_на_телеграм_обʼєкт()
  (
    user_id=я.ідентифікатор_користувача,
    png_sticker=я.png_стікер ? png_стікер.перетворити_на_телеграм_обʼєкт() : я.png_стікер
  )
кінець

;; ---

структура СтворитиНовийНабірСтікерів
  ідентифікатор_користувача число = undefined
  назва текст = undefined
  назва текст = undefined
  png_стікер ВвідФайлу = undefined
  tgs_стікер ВвідФайлу = undefined
  webm_стікер ВвідФайлу = undefined
  тип_стікера текст = undefined
  емодзі текст = undefined
  позиція_маски ПозиціяМаски = undefined
кінець

СтворитиНовийНабірСтікерів.назва_методу = "createNewStickerSet"

дія СтворитиНовийНабірСтікерів.перетворити_на_телеграм_обʼєкт()
  (
    user_id=я.ідентифікатор_користувача,
    name=я.назва,
    title=я.назва,
    png_sticker=я.png_стікер ? png_стікер.перетворити_на_телеграм_обʼєкт() : я.png_стікер,
    tgs_sticker=я.tgs_стікер ? tgs_стікер.перетворити_на_телеграм_обʼєкт() : я.tgs_стікер,
    webm_sticker=я.webm_стікер ? webm_стікер.перетворити_на_телеграм_обʼєкт() : я.webm_стікер,
    sticker_type=я.тип_стікера,
    emojis=я.емодзі,
    mask_position=я.позиція_маски ? позиція_маски.перетворити_на_телеграм_обʼєкт() : я.позиція_маски
  )
кінець

;; ---

структура ДодатиСтікерДоНабору
  ідентифікатор_користувача число = undefined
  назва текст = undefined
  png_стікер ВвідФайлу = undefined
  tgs_стікер ВвідФайлу = undefined
  webm_стікер ВвідФайлу = undefined
  емодзі текст = undefined
  позиція_маски ПозиціяМаски = undefined
кінець

ДодатиСтікерДоНабору.назва_методу = "addStickerToSet"

дія ДодатиСтікерДоНабору.перетворити_на_телеграм_обʼєкт()
  (
    user_id=я.ідентифікатор_користувача,
    name=я.назва,
    png_sticker=я.png_стікер ? png_стікер.перетворити_на_телеграм_обʼєкт() : я.png_стікер,
    tgs_sticker=я.tgs_стікер ? tgs_стікер.перетворити_на_телеграм_обʼєкт() : я.tgs_стікер,
    webm_sticker=я.webm_стікер ? webm_стікер.перетворити_на_телеграм_обʼєкт() : я.webm_стікер,
    emojis=я.емодзі,
    mask_position=я.позиція_маски ? позиція_маски.перетворити_на_телеграм_обʼєкт() : я.позиція_маски
  )
кінець

;; ---

структура ВстановитиПозиціюСтікераВНаборі
  стікер текст = undefined
  позиція число = undefined
кінець

ВстановитиПозиціюСтікераВНаборі.назва_методу = "setStickerPositionInSet"

дія ВстановитиПозиціюСтікераВНаборі.перетворити_на_телеграм_обʼєкт()
  (
    sticker=я.стікер,
    position=я.позиція
  )
кінець

;; ---

структура ВидалитиСтікерЗНабору
  стікер текст = undefined
кінець

ВидалитиСтікерЗНабору.назва_методу = "deleteStickerFromSet"

дія ВидалитиСтікерЗНабору.перетворити_на_телеграм_обʼєкт()
  (
    sticker=я.стікер
  )
кінець

;; ---

структура ВстановитиЕскізНаборуСтікерів
  назва текст = undefined
  ідентифікатор_користувача число = undefined
  мініатюра ВвідФайлу = undefined
кінець

ВстановитиЕскізНаборуСтікерів.назва_методу = "setStickerSetThumb"

дія ВстановитиЕскізНаборуСтікерів.перетворити_на_телеграм_обʼєкт()
  (
    name=я.назва,
    user_id=я.ідентифікатор_користувача,
    thumb=я.мініатюра ? мініатюра.перетворити_на_телеграм_обʼєкт() : я.мініатюра
  )
кінець

;; ---

структура ВідповістиНаInlineЗапит
  ід_вбудованого_запиту текст = undefined
  результати Список = undefined
  час_кешування число = undefined
  особистий логічне = undefined
  наступний_зсув текст = undefined
  текст_перемикача_повідомлення текст = undefined
  параметр_перемикача_повідомлення текст = undefined
кінець

ВідповістиНаInlineЗапит.назва_методу = "answerInlineQuery"

дія ВідповістиНаInlineЗапит.перетворити_на_телеграм_обʼєкт()
  (
    inline_query_id=я.ід_вбудованого_запиту,
    results=я.результати ? результати.перетворити_на_телеграм_обʼєкт() : я.результати,
    cache_time=я.час_кешування,
    is_personal=я.особистий,
    next_offset=я.наступний_зсув,
    switch_pm_text=я.текст_перемикача_повідомлення,
    switch_pm_parameter=я.параметр_перемикача_повідомлення
  )
кінець

;; ---

структура ВідповістиНаЗапитWebApp
  ід_запиту_веб_додатка текст = undefined
  результат РезультатВбудованогоЗапиту = undefined
кінець

ВідповістиНаЗапитWebApp.назва_методу = "answerWebAppQuery"

дія ВідповістиНаЗапитWebApp.перетворити_на_телеграм_обʼєкт()
  (
    web_app_query_id=я.ід_запиту_веб_додатка,
    result=я.результат ? результат.перетворити_на_телеграм_обʼєкт() : я.результат
  )
кінець

;; ---

структура НадіслатиРахунок
  ідентифікатор_чату число = undefined
  ідентифікатор_теми_повідомлення число = undefined
  назва текст = undefined
  опис текст = undefined
  підзаголовок текст = undefined
  токен_провайдера текст = undefined
  валюта текст = undefined
  ціни Список = undefined
  максимальна_сума_чайових число = undefined
  рекомендовані_суми_чайових Список = undefined
  початковий_параметр текст = undefined
  дані_провайдера текст = undefined
  посилання_на_фото текст = undefined
  розмір_фото число = undefined
  ширина_фото число = undefined
  висота_фото число = undefined
  потрібне_ім'я логічне = undefined
  потрібен_номер_телефону логічне = undefined
  потрібна_електронна_адреса логічне = undefined
  потрібна_адреса_доставки логічне = undefined
  надіслати_номер_телефону_провайдеру логічне = undefined
  надіслати_електронну_адресу_провайдеру логічне = undefined
  гнучкість логічне = undefined
  відключити_сповіщення логічне = undefined
  захист_вмісту логічне = undefined
  відповісти_на_повідомлення_ід число = undefined
  дозволити_відправку_без_відповіді логічне = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
кінець

НадіслатиРахунок.назва_методу = "sendInvoice"

дія НадіслатиРахунок.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    message_thread_id=я.ідентифікатор_теми_повідомлення,
    title=я.назва,
    description=я.опис,
    payload=я.підзаголовок,
    provider_token=я.токен_провайдера,
    currency=я.валюта,
    prices=я.ціни ? ціни.перетворити_на_телеграм_обʼєкт() : я.ціни,
    max_tip_amount=я.максимальна_сума_чайових,
    suggested_tip_amounts=я.рекомендовані_суми_чайових ? рекомендовані_суми_чайових.перетворити_на_телеграм_обʼєкт() : я.рекомендовані_суми_чайових,
    start_parameter=я.початковий_параметр,
    provider_data=я.дані_провайдера,
    photo_url=я.посилання_на_фото,
    photo_size=я.розмір_фото,
    photo_width=я.ширина_фото,
    photo_height=я.висота_фото,
    need_name=я.потрібне_ім'я,
    need_phone_number=я.потрібен_номер_телефону,
    need_email=я.потрібна_електронна_адреса,
    need_shipping_address=я.потрібна_адреса_доставки,
    send_phone_number_to_provider=я.надіслати_номер_телефону_провайдеру,
    send_email_to_provider=я.надіслати_електронну_адресу_провайдеру,
    is_flexible=я.гнучкість,
    disable_notification=я.відключити_сповіщення,
    protect_content=я.захист_вмісту,
    reply_to_message_id=я.відповісти_на_повідомлення_ід,
    allow_sending_without_reply=я.дозволити_відправку_без_відповіді,
    reply_markup=я.розмітка_відповіді ? розмітка_відповіді.перетворити_на_телеграм_обʼєкт() : я.розмітка_відповіді
  )
кінець

;; ---

структура СтворитиПосиланняРахунку
  назва текст = undefined
  опис текст = undefined
  підзаголовок текст = undefined
  токен_провайдера текст = undefined
  валюта текст = undefined
  ціни Список = undefined
  максимальна_сума_чайових число = undefined
  рекомендовані_суми_чайових Список = undefined
  дані_провайдера текст = undefined
  посилання_на_фото текст = undefined
  розмір_фото число = undefined
  ширина_фото число = undefined
  висота_фото число = undefined
  потрібне_ім'я логічне = undefined
  потрібен_номер_телефону логічне = undefined
  потрібна_електронна_адреса логічне = undefined
  потрібна_адреса_доставки логічне = undefined
  надіслати_номер_телефону_провайдеру логічне = undefined
  надіслати_електронну_адресу_провайдеру логічне = undefined
  гнучкість логічне = undefined
кінець

СтворитиПосиланняРахунку.назва_методу = "createInvoiceLink"

дія СтворитиПосиланняРахунку.перетворити_на_телеграм_обʼєкт()
  (
    title=я.назва,
    description=я.опис,
    payload=я.підзаголовок,
    provider_token=я.токен_провайдера,
    currency=я.валюта,
    prices=я.ціни ? ціни.перетворити_на_телеграм_обʼєкт() : я.ціни,
    max_tip_amount=я.максимальна_сума_чайових,
    suggested_tip_amounts=я.рекомендовані_суми_чайових ? рекомендовані_суми_чайових.перетворити_на_телеграм_обʼєкт() : я.рекомендовані_суми_чайових,
    provider_data=я.дані_провайдера,
    photo_url=я.посилання_на_фото,
    photo_size=я.розмір_фото,
    photo_width=я.ширина_фото,
    photo_height=я.висота_фото,
    need_name=я.потрібне_ім'я,
    need_phone_number=я.потрібен_номер_телефону,
    need_email=я.потрібна_електронна_адреса,
    need_shipping_address=я.потрібна_адреса_доставки,
    send_phone_number_to_provider=я.надіслати_номер_телефону_провайдеру,
    send_email_to_provider=я.надіслати_електронну_адресу_провайдеру,
    is_flexible=я.гнучкість
  )
кінець

;; ---

структура ВідповістиНаЗапитДоставки
  ід_запиту_доставки текст = undefined
  ок логічне = undefined
  варіанти_доставки Список = undefined
  повідомлення_про_помилку текст = undefined
кінець

ВідповістиНаЗапитДоставки.назва_методу = "answerShippingQuery"

дія ВідповістиНаЗапитДоставки.перетворити_на_телеграм_обʼєкт()
  (
    shipping_query_id=я.ід_запиту_доставки,
    ok=я.ок,
    shipping_options=я.варіанти_доставки ? варіанти_доставки.перетворити_на_телеграм_обʼєкт() : я.варіанти_доставки,
    error_message=я.повідомлення_про_помилку
  )
кінець

;; ---

структура ВідповістиНаПеревіркаРозрахунку
  ід_запиту_попереднього_розрахунку текст = undefined
  ок логічне = undefined
  повідомлення_про_помилку текст = undefined
кінець

ВідповістиНаПеревіркаРозрахунку.назва_методу = "answerPreCheckoutQuery"

дія ВідповістиНаПеревіркаРозрахунку.перетворити_на_телеграм_обʼєкт()
  (
    pre_checkout_query_id=я.ід_запиту_попереднього_розрахунку,
    ok=я.ок,
    error_message=я.повідомлення_про_помилку
  )
кінець

;; ---

структура ВстановитиПомилкиДанихПаспорту
  ідентифікатор_користувача число = undefined
  помилки Список = undefined
кінець

ВстановитиПомилкиДанихПаспорту.назва_методу = "setPassportDataErrors"

дія ВстановитиПомилкиДанихПаспорту.перетворити_на_телеграм_обʼєкт()
  (
    user_id=я.ідентифікатор_користувача,
    errors=я.помилки ? помилки.перетворити_на_телеграм_обʼєкт() : я.помилки
  )
кінець

;; ---

структура НадіслатиГру
  ідентифікатор_чату число = undefined
  ідентифікатор_теми_повідомлення число = undefined
  коротке_ім'я_гри текст = undefined
  відключити_сповіщення логічне = undefined
  захист_вмісту логічне = undefined
  відповісти_на_повідомлення_ід число = undefined
  дозволити_відправку_без_відповіді логічне = undefined
  розмітка_відповіді РозміткаІнлайнКлавіатури = undefined
кінець

НадіслатиГру.назва_методу = "sendGame"

дія НадіслатиГру.перетворити_на_телеграм_обʼєкт()
  (
    chat_id=я.ідентифікатор_чату,
    message_thread_id=я.ідентифікатор_теми_повідомлення,
    game_short_name=я.коротке_ім'я_гри,
    disable_notification=я.відключити_сповіщення,
    protect_content=я.захист_вмісту,
    reply_to_message_id=я.відповісти_на_повідомлення_ід,
    allow_sending_without_reply=я.дозволити_відправку_без_відповіді,
    reply_markup=я.розмітка_відповіді ? розмітка_відповіді.перетворити_на_телеграм_обʼєкт() : я.розмітка_відповіді
  )
кінець

;; ---

структура ВстановитиОчкиГри
  ідентифікатор_користувача число = undefined
  оцінка число = undefined
  примусити логічне = undefined
  вимкнути_редагування_повідомлення логічне = undefined
  ідентифікатор_чату число = undefined
  ідентифікатор_повідомлення число = undefined
  ідентифікатор_інлайн_повідомлення текст = undefined
кінець

ВстановитиОчкиГри.назва_методу = "setGameScore"

дія ВстановитиОчкиГри.перетворити_на_телеграм_обʼєкт()
  (
    user_id=я.ідентифікатор_користувача,
    score=я.оцінка,
    force=я.примусити,
    disable_edit_message=я.вимкнути_редагування_повідомлення,
    chat_id=я.ідентифікатор_чату,
    message_id=я.ідентифікатор_повідомлення,
    inline_message_id=я.ідентифікатор_інлайн_повідомлення
  )
кінець

;; ---

структура ОтриматиРекордиГри
  ідентифікатор_користувача число = undefined
  ідентифікатор_чату число = undefined
  ідентифікатор_повідомлення число = undefined
  ідентифікатор_інлайн_повідомлення текст = undefined
кінець

ОтриматиРекордиГри.назва_методу = "getGameHighScores"

дія ОтриматиРекордиГри.перетворити_на_телеграм_обʼєкт()
  (
    user_id=я.ідентифікатор_користувача,
    chat_id=я.ідентифікатор_чату,
    message_id=я.ідентифікатор_повідомлення,
    inline_message_id=я.ідентифікатор_інлайн_повідомлення
  )
кінець

дати ОтриматиОновлення
дати ВстановитиВебхук
дати ВидалитиВебхук
дати ОтриматиІнформаціюВебхука
дати ОтриматиСебе
дати Вийти
дати Закрити
дати НадіслатиПовідомлення
дати ПереслатиПовідомлення
дати КопіюватиПовідомлення
дати НадіслатиФото
дати НадіслатиАудіо
дати НадіслатиДокумент
дати НадіслатиВідео
дати НадіслатиАнімацію
дати НадіслатиГолосовеПовідомлення
дати НадіслатиВідеоповідомлення
дати НадіслатиМедіаГрупу
дати НадіслатиЛокацію
дати РедагуватиЖивуЛокаціюПовідомлення
дати ЗупинитиЖивуЛокаціюПовідомлення
дати НадіслатиМісцеЗустрічі
дати НадіслатиКонтакт
дати НадіслатиОпитування
дати НадіслатиКубик
дати НадіслатиДіюЧату
дати ОтриматиФотографіїПрофілюКористувача
дати ОтриматиФайл
дати ЗаблокуватиУчасникаЧату
дати РозблокуватиУчасникаЧату
дати restrictChatMember
дати promoteChatMember
дати setChatAdministratorCustomTitle
дати banChatSenderChat
дати unbanChatSenderChat
дати ВстановитиДозволиЧату
дати ЕкспортуватиПосиланняЗапрошенняЧату
дати СтворитиПосиланняЗапрошенняЧату
дати РедагуватиПосиланняЗапрошенняЧату
дати ВідкликатиПосиланняЗапрошенняЧату
дати ЗатверджуватиЗапитНаВступДоЧату
дати ВідхилятиЗапитНаВступДоЧату
дати ВстановитиФотоЧату
дати ВидалитиФотоЧату
дати ВстановитиНазвуЧату
дати ВстановитиОписЧату
дати ЗакріпитиПовідомленняВЧаті
дати ВідкріпитиПовідомленняВЧаті
дати ВідкріпитиВсіПовідомленняВЧаті
дати ВийтиЗЧату
дати ОтриматиІнформаціюПроЧат
дати ОтриматиАдміністраторівЧату
дати ОтриматиКількістьУчасниківЧату
дати ОтриматиІнформаціюПроУчасникаЧату
дати ВстановитиНабірСтікерівЧату
дати ВидалитиНабірСтікерівЧату
дати ОтриматиСтікериІконокТемФоруму
дати СтворитиТемуФоруму
дати РедагуватиТемуФоруму
дати ЗакритиТемуФоруму
дати ВідкритиТемуФорумуЗнову
дати ВидалитиТемуФоруму
дати ВідкріпитиВсіПовідомленняТемиФоруму
дати РедагуватиЗагальнуТемуФоруму
дати ЗакритиЗагальнуТемуФоруму
дати ВідкритиЗагальнуТемуФоруму
дати СховатиЗагальнуТемуФоруму
дати ПоказатиЗагальнуТемуФоруму
дати ВідповістиНаЗапитCallback
дати ВстановитиМоїКоманди
дати ВидалитиМоїКоманди
дати ОтриматиМоїКоманди
дати ВстановитиКнопкуМенюЧату
дати ОтриматиКнопкуМенюЧату
дати ВстановитиМоїПраваАдміністратора
дати ОтриматиМоїПраваАдміністратора
дати РедагуватиТекстПовідомлення
дати РедагуватиПідписПовідомлення
дати РедагуватиМедіаПовідомлення
дати РедагуватиРозміткуВідповідіПовідомлення
дати ЗупинитиОпитування
дати ВидалитиПовідомлення
дати НадіслатиСтікер
дати ОтриматиНабірСтікерів
дати ОтриматиСтікериСпеціальногоЕмодзі
дати ЗавантажитиФайлСтікера
дати СтворитиНовийНабірСтікерів
дати ДодатиСтікерДоНабору
дати ВстановитиПозиціюСтікераВНаборі
дати ВидалитиСтікерЗНабору
дати ВстановитиЕскізНаборуСтікерів
дати ВідповістиНаInlineЗапит
дати ВідповістиНаЗапитWebApp
дати НадіслатиРахунок
дати СтворитиПосиланняРахунку
дати ВідповістиНаЗапитДоставки
дати ВідповістиНаПеревіркаРозрахунку
дати ВстановитиПомилкиДанихПаспорту
дати НадіслатиГру
дати ВстановитиОчкиГри
дати ОтриматиРекордиГри

кінець

структура Бот
  токен текст
  останнє_оновлення Типи.Оновлення або пусто
кінець

тривала дія Бот.запустити(слухач Дія)
  поки так
    якщо я.останнє_оновлення
      чекати список_оновлень = телеграм_бот_отримати_список_оновлень(я.токен, я.останнє_оновлення.ідентифікатор_оновлення)
    інакше
      чекати список_оновлень = телеграм_бот_отримати_список_оновлень(я.токен, 0)
    кінець

    перебрати список_оновлень як оновлення
      оновлення = Типи.Оновлення.створити_з_телеграм_обʼєкта(оновлення)
      чекати слухач(оновлення)
      я.останнє_оновлення = оновлення
    кінець
  кінець
кінець

тривала дія Бот.виконати(метод обʼєкт)
  назва_методу = метод.__структура__.назва_методу
  чекати телеграм_бот_надіслати_запит(я.токен, назва_методу, метод.перетворити_на_телеграм_обʼєкт())
кінець

дати Бот
дати Типи
дати Методи
кінець

дати ТелеграмБот
Версії