;; SPDX-License-Identifier: EUPL-1.2 ;; SPDX-FileCopyrightText: 2025 Uko Kokņevičs (defpackage :ukkoclot/src/tg/inline-keyboard-button (:documentation "InlineKeyboardButton Telegram type") (:use :c2cl :ukkoclot/src/tg/type-macros :ukkoclot/src/tg/web-app-info) (:export #:inline-keyboard-button #:make-inline-keyboard-button #:inline-keyboard-button-p #:copy-inline-keyboard-button #:inline-keyboard-button-text #:inline-keyboard-button-url #:inline-keyboard-button-callback-data #:inline-keyboard-button-web-app #:inline-keyboard-button-switch-inline-query #:inline-keyboard-button-switch-inline-query-current-chat #:inline-keyboard-button-pay)) (in-package :ukkoclot/src/tg/inline-keyboard-button) (define-tg-type inline-keyboard-button (text string) (url (or string null) nil) (callback-data string) (web-app (or web-app-info null) nil) ;; TODO: (login-url (or login-url null) nil) (switch-inline-query (or string null) nil) (switch-inline-query-current-chat (or string null) nil) ;; TODO: (switch-inline-query-chosen-chat (or switch-inline-query-chosen-chat null) nil) ;; TODO: (copy-text (or copy-text-button null) nil) ;; TODO: (callback-game (or callback-game null) nil) (pay boolean nil))