summaryrefslogtreecommitdiff
path: root/src/tg-types/reply-parameters.lisp
blob: 5f0595dfad9ce8f42b61a0131162aef5ff85a89b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
;; SPDX-License-Identifier: EUPL-1.2
;; SPDX-FileCopyrightText: 2025 Uko Kokņevičs <perkontevs@gmail.com>
(defpackage :ukkoclot/tg-types/reply-parameters
  (:use :c2cl :ukkoclot/tg-types/macros :ukkoclot/tg-types/message-entity)
  (:export
   reply-parameters
   make-reply-parameters
   reply-parameters-p
   copy-reply-parameters
   reply-parameters-message-id
   reply-parameters-chat-id
   reply-parameters-allow-sending-without-reply
   reply-parameters-quote
   reply-parameters-quote-parse-mode
   reply-parameters-quote-entities
   reply-parameters-quote-position
   reply-parameters-checklist-task-id

   hash->reply-parameters
   parse-reply-parameters-array))
(in-package :ukkoclot/tg-types/reply-parameters)

(define-tg-type reply-parameters
  (message-id integer)
  (chat-id (or integer string null) nil)
  ;; Technically true if on a business account but yeah right lmao
  (allow-sending-without-reply boolean nil)
  (quote (or string null) nil)
  (quote-parse-mode (or string null) nil)
  (quote-entities (or (array message-entity) null) nil)
  (quote-position (or integer null) nil)
  (checklist-task-id (or integer null) nil))