Nadia.Behaviour behaviour (nadia v1.4.0)

View Source

Summary

Callbacks

Callbacks

add_sticker_to_set(t, integer, binary, binary, binary, list)

(optional)
@callback add_sticker_to_set(Nadia.Client.t(), integer(), binary(), binary(), binary(), [
  {atom(), any()}
]) ::
  :ok | {:error, Nadia.Model.Error.t()}

answer_callback_query(binary, list)

@callback answer_callback_query(binary(), [{atom(), any()}]) ::
  :ok | {:error, Nadia.Model.Error.t()}

answer_callback_query(t, binary, list)

(optional)
@callback answer_callback_query(Nadia.Client.t(), binary(), [{atom(), any()}]) ::
  :ok | {:error, Nadia.Model.Error.t()}

answer_chat_join_request_query(binary, binary)

(optional)
@callback answer_chat_join_request_query(binary(), binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

answer_chat_join_request_query(t, binary, binary)

(optional)
@callback answer_chat_join_request_query(Nadia.Client.t(), binary(), binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

answer_guest_query(binary, t, list)

@callback answer_guest_query(binary(), Nadia.Model.InlineQueryResult.t(), [
  {atom(), any()}
]) ::
  {:ok, Nadia.Model.SentGuestMessage.t()} | {:error, Nadia.Model.Error.t()}

answer_guest_query(t, binary, t, list)

(optional)
@callback answer_guest_query(
  Nadia.Client.t(),
  binary(),
  Nadia.Model.InlineQueryResult.t(),
  [
    {atom(), any()}
  ]
) :: {:ok, Nadia.Model.SentGuestMessage.t()} | {:error, Nadia.Model.Error.t()}

answer_inline_query(binary, list, list)

@callback answer_inline_query(binary(), [Nadia.Model.InlineQueryResult.t()], [
  {atom(), any()}
]) ::
  :ok | {:error, Nadia.Model.Error.t()}

answer_inline_query(t, binary, list, list)

(optional)
@callback answer_inline_query(
  Nadia.Client.t(),
  binary(),
  [Nadia.Model.InlineQueryResult.t()],
  [
    {atom(), any()}
  ]
) :: :ok | {:error, Nadia.Model.Error.t()}

answer_pre_checkout_query(binary, boolean)

(optional)
@callback answer_pre_checkout_query(binary(), boolean()) ::
  :ok | {:error, Nadia.Model.Error.t()}

answer_pre_checkout_query(binary, boolean, arg3)

(optional)
@callback answer_pre_checkout_query(binary(), boolean(), [{atom(), any()}] | map()) ::
  :ok | {:error, Nadia.Model.Error.t()}
@callback answer_pre_checkout_query(Nadia.Client.t(), binary(), boolean()) ::
  :ok | {:error, Nadia.Model.Error.t()}

answer_pre_checkout_query(t, binary, boolean, arg4)

(optional)
@callback answer_pre_checkout_query(
  Nadia.Client.t(),
  binary(),
  boolean(),
  [{atom(), any()}] | map()
) ::
  :ok | {:error, Nadia.Model.Error.t()}

answer_shipping_query(binary, boolean)

(optional)
@callback answer_shipping_query(binary(), boolean()) ::
  :ok | {:error, Nadia.Model.Error.t()}

answer_shipping_query(binary, boolean, arg3)

(optional)
@callback answer_shipping_query(binary(), boolean(), [{atom(), any()}] | map()) ::
  :ok | {:error, Nadia.Model.Error.t()}
@callback answer_shipping_query(Nadia.Client.t(), binary(), boolean()) ::
  :ok | {:error, Nadia.Model.Error.t()}

answer_shipping_query(t, binary, boolean, arg4)

(optional)
@callback answer_shipping_query(
  Nadia.Client.t(),
  binary(),
  boolean(),
  [{atom(), any()}] | map()
) ::
  :ok | {:error, Nadia.Model.Error.t()}

answer_web_app_query(binary, arg2)

(optional)
@callback answer_web_app_query(binary(), list() | map() | struct() | binary()) ::
  {:ok, Nadia.Model.SentWebAppMessage.t()} | {:error, Nadia.Model.Error.t()}

answer_web_app_query(t, binary, arg3)

(optional)
@callback answer_web_app_query(
  Nadia.Client.t(),
  binary(),
  list() | map() | struct() | binary()
) ::
  {:ok, Nadia.Model.SentWebAppMessage.t()} | {:error, Nadia.Model.Error.t()}

approve_chat_join_request(arg1, integer)

@callback approve_chat_join_request(integer() | binary(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

approve_chat_join_request(t, arg2, integer)

(optional)
@callback approve_chat_join_request(Nadia.Client.t(), integer() | binary(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

approve_suggested_post(integer, integer)

@callback approve_suggested_post(integer(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

approve_suggested_post(integer, integer, list)

(optional)
@callback approve_suggested_post(integer(), integer(), [{atom(), any()}]) ::
  :ok | {:error, Nadia.Model.Error.t()}
@callback approve_suggested_post(Nadia.Client.t(), integer(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

approve_suggested_post(t, integer, integer, list)

(optional)
@callback approve_suggested_post(Nadia.Client.t(), integer(), integer(), [{atom(), any()}]) ::
  :ok | {:error, Nadia.Model.Error.t()}

ban_chat_member(arg1, integer)

@callback ban_chat_member(integer() | binary(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

ban_chat_member(t, arg2, integer)

(optional)
@callback ban_chat_member(Nadia.Client.t(), integer() | binary(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

ban_chat_sender_chat(arg1, integer)

@callback ban_chat_sender_chat(integer() | binary(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

ban_chat_sender_chat(t, arg2, integer)

(optional)
@callback ban_chat_sender_chat(Nadia.Client.t(), integer() | binary(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

close()

(optional)
@callback close() :: :ok | {:error, Nadia.Model.Error.t()}

close(t)

(optional)
@callback close(Nadia.Client.t()) :: :ok | {:error, Nadia.Model.Error.t()}

close_forum_topic(arg1, integer)

@callback close_forum_topic(integer() | binary(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

close_forum_topic(t, arg2, integer)

(optional)
@callback close_forum_topic(Nadia.Client.t(), integer() | binary(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

close_general_forum_topic(arg1)

@callback close_general_forum_topic(integer() | binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

close_general_forum_topic(t, arg2)

(optional)
@callback close_general_forum_topic(Nadia.Client.t(), integer() | binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

convert_gift_to_stars(binary, binary)

(optional)
@callback convert_gift_to_stars(binary(), binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

convert_gift_to_stars(t, binary, binary)

(optional)
@callback convert_gift_to_stars(Nadia.Client.t(), binary(), binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

copy_message(arg1, arg2, integer)

@callback copy_message(integer() | binary(), integer() | binary(), integer()) ::
  {:ok, Nadia.Model.MessageId.t()} | {:error, Nadia.Model.Error.t()}

copy_message(arg1, arg2, integer, list)

(optional)
@callback copy_message(integer() | binary(), integer() | binary(), integer(), [
  {atom(), any()}
]) ::
  {:ok, Nadia.Model.MessageId.t()} | {:error, Nadia.Model.Error.t()}
@callback copy_message(
  Nadia.Client.t(),
  integer() | binary(),
  integer() | binary(),
  integer()
) ::
  {:ok, Nadia.Model.MessageId.t()} | {:error, Nadia.Model.Error.t()}

copy_message(t, arg2, arg3, integer, list)

(optional)
@callback copy_message(
  Nadia.Client.t(),
  integer() | binary(),
  integer() | binary(),
  integer(),
  [
    {atom(), any()}
  ]
) :: {:ok, Nadia.Model.MessageId.t()} | {:error, Nadia.Model.Error.t()}

copy_messages(arg1, arg2, list)

@callback copy_messages(integer() | binary(), integer() | binary(), [integer()]) ::
  {:ok, [Nadia.Model.MessageId.t()]} | {:error, Nadia.Model.Error.t()}

copy_messages(arg1, arg2, list, list)

(optional)
@callback copy_messages(integer() | binary(), integer() | binary(), [integer()], [
  {atom(), any()}
]) ::
  {:ok, [Nadia.Model.MessageId.t()]} | {:error, Nadia.Model.Error.t()}
@callback copy_messages(Nadia.Client.t(), integer() | binary(), integer() | binary(), [
  integer()
]) ::
  {:ok, [Nadia.Model.MessageId.t()]} | {:error, Nadia.Model.Error.t()}

copy_messages(t, arg2, arg3, list, list)

(optional)
@callback copy_messages(
  Nadia.Client.t(),
  integer() | binary(),
  integer() | binary(),
  [integer()],
  [
    {atom(), any()}
  ]
) :: {:ok, [Nadia.Model.MessageId.t()]} | {:error, Nadia.Model.Error.t()}

create_chat_invite_link(arg1)

(optional)
@callback create_chat_invite_link(integer() | binary()) ::
  {:ok, Nadia.Model.ChatInviteLink.t()} | {:error, Nadia.Model.Error.t()}

create_chat_invite_link(arg1, arg2)

(optional)
@callback create_chat_invite_link(integer() | binary(), [{atom(), any()}] | map()) ::
  {:ok, Nadia.Model.ChatInviteLink.t()} | {:error, Nadia.Model.Error.t()}
@callback create_chat_invite_link(Nadia.Client.t(), integer() | binary()) ::
  {:ok, Nadia.Model.ChatInviteLink.t()} | {:error, Nadia.Model.Error.t()}

create_chat_invite_link(t, arg2, arg3)

(optional)
@callback create_chat_invite_link(
  Nadia.Client.t(),
  integer() | binary(),
  [{atom(), any()}] | map()
) ::
  {:ok, Nadia.Model.ChatInviteLink.t()} | {:error, Nadia.Model.Error.t()}

create_chat_subscription_invite_link(arg1, integer, integer)

(optional)
@callback create_chat_subscription_invite_link(integer() | binary(), integer(), integer()) ::
  {:ok, Nadia.Model.ChatInviteLink.t()} | {:error, Nadia.Model.Error.t()}

create_chat_subscription_invite_link(arg1, integer, integer, arg4)

(optional)
@callback create_chat_subscription_invite_link(
  integer() | binary(),
  integer(),
  integer(),
  [{atom(), any()}] | map()
) :: {:ok, Nadia.Model.ChatInviteLink.t()} | {:error, Nadia.Model.Error.t()}
@callback create_chat_subscription_invite_link(
  Nadia.Client.t(),
  integer() | binary(),
  integer(),
  integer()
) :: {:ok, Nadia.Model.ChatInviteLink.t()} | {:error, Nadia.Model.Error.t()}

create_chat_subscription_invite_link(t, arg2, integer, integer, arg5)

(optional)
@callback create_chat_subscription_invite_link(
  Nadia.Client.t(),
  integer() | binary(),
  integer(),
  integer(),
  [{atom(), any()}] | map()
) :: {:ok, Nadia.Model.ChatInviteLink.t()} | {:error, Nadia.Model.Error.t()}

create_forum_topic(arg1, binary)

@callback create_forum_topic(integer() | binary(), binary()) ::
  {:ok, Nadia.Model.ForumTopic.t()} | {:error, Nadia.Model.Error.t()}

create_forum_topic(arg1, binary, list)

(optional)
@callback create_forum_topic(integer() | binary(), binary(), [{atom(), any()}]) ::
  {:ok, Nadia.Model.ForumTopic.t()} | {:error, Nadia.Model.Error.t()}
@callback create_forum_topic(Nadia.Client.t(), integer() | binary(), binary()) ::
  {:ok, Nadia.Model.ForumTopic.t()} | {:error, Nadia.Model.Error.t()}

create_forum_topic(t, arg2, binary, list)

(optional)
@callback create_forum_topic(Nadia.Client.t(), integer() | binary(), binary(), [
  {atom(), any()}
]) ::
  {:ok, Nadia.Model.ForumTopic.t()} | {:error, Nadia.Model.Error.t()}

create_invoice_link(binary, binary, binary, binary, arg5)

(optional)
@callback create_invoice_link(
  binary(),
  binary(),
  binary(),
  binary(),
  list() | map() | struct() | binary()
) ::
  {:ok, binary()} | {:error, Nadia.Model.Error.t()}

create_invoice_link(binary, binary, binary, binary, arg5, arg6)

(optional)
@callback create_invoice_link(
  binary(),
  binary(),
  binary(),
  binary(),
  list() | map() | struct() | binary(),
  [{atom(), any()}] | map()
) :: {:ok, binary()} | {:error, Nadia.Model.Error.t()}
@callback create_invoice_link(
  Nadia.Client.t(),
  binary(),
  binary(),
  binary(),
  binary(),
  list() | map() | struct() | binary()
) :: {:ok, binary()} | {:error, Nadia.Model.Error.t()}

create_invoice_link(t, binary, binary, binary, binary, arg6, arg7)

(optional)
@callback create_invoice_link(
  Nadia.Client.t(),
  binary(),
  binary(),
  binary(),
  binary(),
  list() | map() | struct() | binary(),
  [{atom(), any()}] | map()
) :: {:ok, binary()} | {:error, Nadia.Model.Error.t()}

create_new_sticker_set(t, integer, binary, binary, binary, binary, list)

(optional)
@callback create_new_sticker_set(
  Nadia.Client.t(),
  integer(),
  binary(),
  binary(),
  binary(),
  binary(),
  [
    {atom(), any()}
  ]
) :: :ok | {:error, Nadia.Model.Error.t()}

decline_chat_join_request(arg1, integer)

@callback decline_chat_join_request(integer() | binary(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

decline_chat_join_request(t, arg2, integer)

(optional)
@callback decline_chat_join_request(Nadia.Client.t(), integer() | binary(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

decline_suggested_post(integer, integer)

@callback decline_suggested_post(integer(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

decline_suggested_post(integer, integer, list)

(optional)
@callback decline_suggested_post(integer(), integer(), [{atom(), any()}]) ::
  :ok | {:error, Nadia.Model.Error.t()}
@callback decline_suggested_post(Nadia.Client.t(), integer(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

decline_suggested_post(t, integer, integer, list)

(optional)
@callback decline_suggested_post(Nadia.Client.t(), integer(), integer(), [{atom(), any()}]) ::
  :ok | {:error, Nadia.Model.Error.t()}

delete_all_message_reactions(arg1, list)

@callback delete_all_message_reactions(integer() | binary(), [{atom(), any()}]) ::
  :ok | {:error, Nadia.Model.Error.t()}

delete_all_message_reactions(t, arg2, list)

(optional)
@callback delete_all_message_reactions(Nadia.Client.t(), integer() | binary(), [
  {atom(), any()}
]) ::
  :ok | {:error, Nadia.Model.Error.t()}

delete_business_messages(binary, list)

(optional)
@callback delete_business_messages(binary(), [integer()]) ::
  :ok | {:error, Nadia.Model.Error.t()}

delete_business_messages(t, binary, list)

(optional)
@callback delete_business_messages(Nadia.Client.t(), binary(), [integer()]) ::
  :ok | {:error, Nadia.Model.Error.t()}

delete_chat_photo(arg1)

@callback delete_chat_photo(integer() | binary()) :: :ok | {:error, Nadia.Model.Error.t()}

delete_chat_photo(t, arg2)

(optional)
@callback delete_chat_photo(Nadia.Client.t(), integer() | binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

delete_chat_sticker_set(arg1)

@callback delete_chat_sticker_set(integer() | binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

delete_chat_sticker_set(t, arg2)

(optional)
@callback delete_chat_sticker_set(Nadia.Client.t(), integer() | binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

delete_forum_topic(arg1, integer)

@callback delete_forum_topic(integer() | binary(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

delete_forum_topic(t, arg2, integer)

(optional)
@callback delete_forum_topic(Nadia.Client.t(), integer() | binary(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

delete_message_reaction(arg1, integer, list)

@callback delete_message_reaction(integer() | binary(), integer(), [{atom(), any()}]) ::
  :ok | {:error, Nadia.Model.Error.t()}

delete_message_reaction(t, arg2, integer, list)

(optional)
@callback delete_message_reaction(Nadia.Client.t(), integer() | binary(), integer(), [
  {atom(), any()}
]) ::
  :ok | {:error, Nadia.Model.Error.t()}

delete_messages(arg1, list)

@callback delete_messages(integer() | binary(), [integer()]) ::
  :ok | {:error, Nadia.Model.Error.t()}

delete_messages(t, arg2, list)

(optional)
@callback delete_messages(Nadia.Client.t(), integer() | binary(), [integer()]) ::
  :ok | {:error, Nadia.Model.Error.t()}

delete_my_commands()

(optional)
@callback delete_my_commands() :: :ok | {:error, Nadia.Model.Error.t()}

delete_my_commands(arg1)

(optional)
@callback delete_my_commands([{atom(), any()}] | map()) ::
  :ok | {:error, Nadia.Model.Error.t()}
@callback delete_my_commands(Nadia.Client.t()) :: :ok | {:error, Nadia.Model.Error.t()}

delete_my_commands(t, arg2)

(optional)
@callback delete_my_commands(Nadia.Client.t(), [{atom(), any()}] | map()) ::
  :ok | {:error, Nadia.Model.Error.t()}

delete_sticker_from_set(t, binary)

(optional)
@callback delete_sticker_from_set(Nadia.Client.t(), binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

delete_sticker_set(binary)

(optional)
@callback delete_sticker_set(binary()) :: :ok | {:error, Nadia.Model.Error.t()}

delete_sticker_set(t, binary)

(optional)
@callback delete_sticker_set(Nadia.Client.t(), binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

delete_story(binary, integer)

(optional)
@callback delete_story(binary(), integer()) :: :ok | {:error, Nadia.Model.Error.t()}

delete_story(t, binary, integer)

(optional)
@callback delete_story(Nadia.Client.t(), binary(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

delete_webhook()

@callback delete_webhook() :: :ok | {:error, Nadia.Model.Error.t()}

delete_webhook(list)

(optional)
@callback delete_webhook([{atom(), any()}]) :: :ok | {:error, Nadia.Model.Error.t()}
@callback delete_webhook(Nadia.Client.t()) :: :ok | {:error, Nadia.Model.Error.t()}

delete_webhook(t, list)

(optional)
@callback delete_webhook(Nadia.Client.t(), [{atom(), any()}]) ::
  :ok | {:error, Nadia.Model.Error.t()}

edit_chat_invite_link(arg1, binary)

(optional)
@callback edit_chat_invite_link(integer() | binary(), binary()) ::
  {:ok, Nadia.Model.ChatInviteLink.t()} | {:error, Nadia.Model.Error.t()}

edit_chat_invite_link(arg1, binary, arg3)

(optional)
@callback edit_chat_invite_link(integer() | binary(), binary(), [{atom(), any()}] | map()) ::
  {:ok, Nadia.Model.ChatInviteLink.t()} | {:error, Nadia.Model.Error.t()}
@callback edit_chat_invite_link(Nadia.Client.t(), integer() | binary(), binary()) ::
  {:ok, Nadia.Model.ChatInviteLink.t()} | {:error, Nadia.Model.Error.t()}

edit_chat_invite_link(t, arg2, binary, arg4)

(optional)
@callback edit_chat_invite_link(
  Nadia.Client.t(),
  integer() | binary(),
  binary(),
  [{atom(), any()}] | map()
) ::
  {:ok, Nadia.Model.ChatInviteLink.t()} | {:error, Nadia.Model.Error.t()}

edit_chat_subscription_invite_link(arg1, binary)

(optional)
@callback edit_chat_subscription_invite_link(integer() | binary(), binary()) ::
  {:ok, Nadia.Model.ChatInviteLink.t()} | {:error, Nadia.Model.Error.t()}

edit_chat_subscription_invite_link(arg1, binary, arg3)

(optional)
@callback edit_chat_subscription_invite_link(
  integer() | binary(),
  binary(),
  [{atom(), any()}] | map()
) ::
  {:ok, Nadia.Model.ChatInviteLink.t()} | {:error, Nadia.Model.Error.t()}
@callback edit_chat_subscription_invite_link(
  Nadia.Client.t(),
  integer() | binary(),
  binary()
) ::
  {:ok, Nadia.Model.ChatInviteLink.t()} | {:error, Nadia.Model.Error.t()}

edit_chat_subscription_invite_link(t, arg2, binary, arg4)

(optional)
@callback edit_chat_subscription_invite_link(
  Nadia.Client.t(),
  integer() | binary(),
  binary(),
  [{atom(), any()}] | map()
) :: {:ok, Nadia.Model.ChatInviteLink.t()} | {:error, Nadia.Model.Error.t()}

edit_forum_topic(arg1, integer)

@callback edit_forum_topic(integer() | binary(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

edit_forum_topic(arg1, integer, list)

(optional)
@callback edit_forum_topic(integer() | binary(), integer(), [{atom(), any()}]) ::
  :ok | {:error, Nadia.Model.Error.t()}
@callback edit_forum_topic(Nadia.Client.t(), integer() | binary(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

edit_forum_topic(t, arg2, integer, list)

(optional)
@callback edit_forum_topic(Nadia.Client.t(), integer() | binary(), integer(), [
  {atom(), any()}
]) ::
  :ok | {:error, Nadia.Model.Error.t()}

edit_general_forum_topic(arg1, binary)

@callback edit_general_forum_topic(integer() | binary(), binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

edit_general_forum_topic(t, arg2, binary)

(optional)
@callback edit_general_forum_topic(Nadia.Client.t(), integer() | binary(), binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

edit_message_caption(arg1, integer, binary, list)

@callback edit_message_caption(integer() | binary(), integer(), binary(), [
  {atom(), any()}
]) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

edit_message_caption(t, arg2, integer, binary, list)

(optional)
@callback edit_message_caption(
  Nadia.Client.t(),
  integer() | binary(),
  integer(),
  binary(),
  [
    {atom(), any()}
  ]
) :: {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

edit_message_checklist(binary, arg2, integer, arg4)

@callback edit_message_checklist(
  binary(),
  integer() | binary(),
  integer(),
  list() | map() | struct() | binary()
) :: {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

edit_message_checklist(binary, arg2, integer, arg4, list)

(optional)
@callback edit_message_checklist(
  binary(),
  integer() | binary(),
  integer(),
  list() | map() | struct() | binary(),
  [{atom(), any()}]
) :: {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}
@callback edit_message_checklist(
  Nadia.Client.t(),
  binary(),
  integer() | binary(),
  integer(),
  list() | map() | struct() | binary()
) :: {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

edit_message_checklist(t, binary, arg3, integer, arg5, list)

(optional)
@callback edit_message_checklist(
  Nadia.Client.t(),
  binary(),
  integer() | binary(),
  integer(),
  list() | map() | struct() | binary(),
  [{atom(), any()}]
) :: {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

edit_message_live_location(float, float, list)

@callback edit_message_live_location(float(), float(), [{atom(), any()}]) ::
  :ok | {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

edit_message_live_location(t, float, float, list)

(optional)
@callback edit_message_live_location(Nadia.Client.t(), float(), float(), [{atom(), any()}]) ::
  :ok | {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

edit_message_media(arg1, list)

(optional)
@callback edit_message_media(list() | map() | struct() | binary(), [{atom(), any()}]) ::
  :ok | {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

edit_message_media(t, arg2, list)

(optional)
@callback edit_message_media(Nadia.Client.t(), list() | map() | struct() | binary(), [
  {atom(), any()}
]) ::
  :ok | {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

edit_message_reply_markup(arg1, integer, binary, list)

@callback edit_message_reply_markup(integer() | binary(), integer(), binary(), [
  {atom(), any()}
]) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

edit_message_reply_markup(t, arg2, integer, binary, list)

(optional)
@callback edit_message_reply_markup(
  Nadia.Client.t(),
  integer() | binary(),
  integer(),
  binary(),
  [
    {atom(), any()}
  ]
) :: {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

edit_message_text(arg1, arg2, arg3, arg4, list)

@callback edit_message_text(
  integer() | binary(),
  integer() | nil,
  binary() | nil,
  binary() | nil,
  [
    {atom(), any()}
  ]
) :: {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

edit_message_text(t, arg2, arg3, arg4, arg5, list)

(optional)
@callback edit_message_text(
  Nadia.Client.t(),
  integer() | binary(),
  integer() | nil,
  binary() | nil,
  binary() | nil,
  [{atom(), any()}]
) :: {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

edit_story(binary, integer, arg3)

(optional)
@callback edit_story(binary(), integer(), list() | map() | struct() | binary()) ::
  {:ok, Nadia.Model.Story.t()} | {:error, Nadia.Model.Error.t()}

edit_story(binary, integer, arg3, arg4)

(optional)
@callback edit_story(
  binary(),
  integer(),
  list() | map() | struct() | binary(),
  [{atom(), any()}] | map()
) ::
  {:ok, Nadia.Model.Story.t()} | {:error, Nadia.Model.Error.t()}
@callback edit_story(
  Nadia.Client.t(),
  binary(),
  integer(),
  list() | map() | struct() | binary()
) ::
  {:ok, Nadia.Model.Story.t()} | {:error, Nadia.Model.Error.t()}

edit_story(t, binary, integer, arg4, arg5)

(optional)
@callback edit_story(
  Nadia.Client.t(),
  binary(),
  integer(),
  list() | map() | struct() | binary(),
  [{atom(), any()}] | map()
) :: {:ok, Nadia.Model.Story.t()} | {:error, Nadia.Model.Error.t()}

edit_user_star_subscription(integer, binary, boolean)

(optional)
@callback edit_user_star_subscription(integer(), binary(), boolean()) ::
  :ok | {:error, Nadia.Model.Error.t()}

edit_user_star_subscription(t, integer, binary, boolean)

(optional)
@callback edit_user_star_subscription(Nadia.Client.t(), integer(), binary(), boolean()) ::
  :ok | {:error, Nadia.Model.Error.t()}

export_chat_invite_link(arg1)

(optional)
@callback export_chat_invite_link(integer() | binary()) ::
  {:ok, binary()} | {:error, Nadia.Model.Error.t()}

export_chat_invite_link(t, arg2)

(optional)
@callback export_chat_invite_link(Nadia.Client.t(), integer() | binary()) ::
  {:ok, binary()} | {:error, Nadia.Model.Error.t()}

forward_message(arg1, arg2, integer)

@callback forward_message(integer() | binary(), integer() | binary(), integer()) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

forward_message(arg1, arg2, integer, list)

(optional)
@callback forward_message(integer() | binary(), integer() | binary(), integer(), [
  {atom(), any()}
]) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}
@callback forward_message(
  Nadia.Client.t(),
  integer() | binary(),
  integer() | binary(),
  integer()
) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

forward_message(t, arg2, arg3, integer, list)

(optional)
@callback forward_message(
  Nadia.Client.t(),
  integer() | binary(),
  integer() | binary(),
  integer(),
  [
    {atom(), any()}
  ]
) :: {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

forward_messages(arg1, arg2, list)

@callback forward_messages(integer() | binary(), integer() | binary(), [integer()]) ::
  {:ok, [Nadia.Model.MessageId.t()]} | {:error, Nadia.Model.Error.t()}

forward_messages(arg1, arg2, list, list)

(optional)
@callback forward_messages(integer() | binary(), integer() | binary(), [integer()], [
  {atom(), any()}
]) ::
  {:ok, [Nadia.Model.MessageId.t()]} | {:error, Nadia.Model.Error.t()}
@callback forward_messages(Nadia.Client.t(), integer() | binary(), integer() | binary(), [
  integer()
]) ::
  {:ok, [Nadia.Model.MessageId.t()]} | {:error, Nadia.Model.Error.t()}

forward_messages(t, arg2, arg3, list, list)

(optional)
@callback forward_messages(
  Nadia.Client.t(),
  integer() | binary(),
  integer() | binary(),
  [integer()],
  [
    {atom(), any()}
  ]
) :: {:ok, [Nadia.Model.MessageId.t()]} | {:error, Nadia.Model.Error.t()}

get_available_gifts()

(optional)
@callback get_available_gifts() ::
  {:ok, Nadia.Model.Gifts.t()} | {:error, Nadia.Model.Error.t()}

get_available_gifts(t)

(optional)
@callback get_available_gifts(Nadia.Client.t()) ::
  {:ok, Nadia.Model.Gifts.t()} | {:error, Nadia.Model.Error.t()}

get_business_account_gifts(binary)

(optional)
@callback get_business_account_gifts(binary()) ::
  {:ok, Nadia.Model.OwnedGifts.t()} | {:error, Nadia.Model.Error.t()}

get_business_account_gifts(binary, arg2)

(optional)
@callback get_business_account_gifts(binary(), [{atom(), any()}] | map()) ::
  {:ok, Nadia.Model.OwnedGifts.t()} | {:error, Nadia.Model.Error.t()}
@callback get_business_account_gifts(Nadia.Client.t(), binary()) ::
  {:ok, Nadia.Model.OwnedGifts.t()} | {:error, Nadia.Model.Error.t()}

get_business_account_gifts(t, binary, arg3)

(optional)
@callback get_business_account_gifts(
  Nadia.Client.t(),
  binary(),
  [{atom(), any()}] | map()
) ::
  {:ok, Nadia.Model.OwnedGifts.t()} | {:error, Nadia.Model.Error.t()}

get_business_account_star_balance(binary)

(optional)
@callback get_business_account_star_balance(binary()) ::
  {:ok, Nadia.Model.StarAmount.t()} | {:error, Nadia.Model.Error.t()}

get_business_account_star_balance(t, binary)

(optional)
@callback get_business_account_star_balance(Nadia.Client.t(), binary()) ::
  {:ok, Nadia.Model.StarAmount.t()} | {:error, Nadia.Model.Error.t()}

get_business_connection(binary)

@callback get_business_connection(binary()) ::
  {:ok, Nadia.Model.BusinessConnection.t()} | {:error, Nadia.Model.Error.t()}

get_business_connection(t, binary)

(optional)
@callback get_business_connection(Nadia.Client.t(), binary()) ::
  {:ok, Nadia.Model.BusinessConnection.t()} | {:error, Nadia.Model.Error.t()}

get_chat(arg1)

@callback get_chat(integer() | binary()) ::
  {:ok, Nadia.Model.Chat.t()} | {:error, Nadia.Model.Error.t()}

get_chat(t, arg2)

(optional)
@callback get_chat(Nadia.Client.t(), integer() | binary()) ::
  {:ok, Nadia.Model.Chat.t()} | {:error, Nadia.Model.Error.t()}

get_chat_administrators(arg1)

@callback get_chat_administrators(integer() | binary()) ::
  {:ok, [Nadia.Model.ChatMember.t()]} | {:error, Nadia.Model.Error.t()}

get_chat_administrators(arg1, list)

(optional)
@callback get_chat_administrators(integer() | binary(), [{atom(), any()}]) ::
  {:ok, [Nadia.Model.ChatMember.t()]} | {:error, Nadia.Model.Error.t()}
@callback get_chat_administrators(Nadia.Client.t(), integer() | binary()) ::
  {:ok, [Nadia.Model.ChatMember.t()]} | {:error, Nadia.Model.Error.t()}

get_chat_administrators(t, arg2, list)

(optional)
@callback get_chat_administrators(Nadia.Client.t(), integer() | binary(), [
  {atom(), any()}
]) ::
  {:ok, [Nadia.Model.ChatMember.t()]} | {:error, Nadia.Model.Error.t()}

get_chat_gifts(arg1)

(optional)
@callback get_chat_gifts(integer() | binary()) ::
  {:ok, Nadia.Model.OwnedGifts.t()} | {:error, Nadia.Model.Error.t()}

get_chat_gifts(arg1, arg2)

(optional)
@callback get_chat_gifts(integer() | binary(), [{atom(), any()}] | map()) ::
  {:ok, Nadia.Model.OwnedGifts.t()} | {:error, Nadia.Model.Error.t()}
@callback get_chat_gifts(Nadia.Client.t(), integer() | binary()) ::
  {:ok, Nadia.Model.OwnedGifts.t()} | {:error, Nadia.Model.Error.t()}

get_chat_gifts(t, arg2, arg3)

(optional)
@callback get_chat_gifts(
  Nadia.Client.t(),
  integer() | binary(),
  [{atom(), any()}] | map()
) ::
  {:ok, Nadia.Model.OwnedGifts.t()} | {:error, Nadia.Model.Error.t()}

get_chat_member(arg1, integer)

@callback get_chat_member(integer() | binary(), integer()) ::
  {:ok, Nadia.Model.ChatMember.t()} | {:error, Nadia.Model.Error.t()}

get_chat_member(t, arg2, integer)

(optional)
@callback get_chat_member(Nadia.Client.t(), integer() | binary(), integer()) ::
  {:ok, Nadia.Model.ChatMember.t()} | {:error, Nadia.Model.Error.t()}

get_chat_member_count(arg1)

@callback get_chat_member_count(integer() | binary()) ::
  {:ok, integer()} | {:error, Nadia.Model.Error.t()}

get_chat_member_count(t, arg2)

(optional)
@callback get_chat_member_count(Nadia.Client.t(), integer() | binary()) ::
  {:ok, integer()} | {:error, Nadia.Model.Error.t()}

get_chat_menu_button()

(optional)
@callback get_chat_menu_button() ::
  {:ok, Nadia.Model.MenuButton.t()} | {:error, Nadia.Model.Error.t()}

get_chat_menu_button(arg1)

(optional)
@callback get_chat_menu_button([{atom(), any()}] | map()) ::
  {:ok, Nadia.Model.MenuButton.t()} | {:error, Nadia.Model.Error.t()}
@callback get_chat_menu_button(Nadia.Client.t()) ::
  {:ok, Nadia.Model.MenuButton.t()} | {:error, Nadia.Model.Error.t()}

get_chat_menu_button(t, arg2)

(optional)
@callback get_chat_menu_button(Nadia.Client.t(), [{atom(), any()}] | map()) ::
  {:ok, Nadia.Model.MenuButton.t()} | {:error, Nadia.Model.Error.t()}

get_custom_emoji_stickers(arg1)

(optional)
@callback get_custom_emoji_stickers([binary()] | binary()) ::
  {:ok, [Nadia.Model.Sticker.t()]} | {:error, Nadia.Model.Error.t()}

get_custom_emoji_stickers(t, arg2)

(optional)
@callback get_custom_emoji_stickers(Nadia.Client.t(), [binary()] | binary()) ::
  {:ok, [Nadia.Model.Sticker.t()]} | {:error, Nadia.Model.Error.t()}

get_file(binary)

@callback get_file(binary()) ::
  {:ok, Nadia.Model.File.t()} | {:error, Nadia.Model.Error.t()}

get_file(t, binary)

(optional)
@callback get_file(Nadia.Client.t(), binary()) ::
  {:ok, Nadia.Model.File.t()} | {:error, Nadia.Model.Error.t()}

get_file_link(t)

@callback get_file_link(Nadia.Model.File.t()) ::
  {:ok, binary()} | {:error, Nadia.Model.Error.t()}

get_file_link(t, t)

(optional)
@callback get_file_link(Nadia.Client.t(), Nadia.Model.File.t()) ::
  {:ok, binary()} | {:error, Nadia.Model.Error.t()}

get_forum_topic_icon_stickers()

@callback get_forum_topic_icon_stickers() ::
  {:ok, [Nadia.Model.Sticker.t()]} | {:error, Nadia.Model.Error.t()}

get_forum_topic_icon_stickers(t)

(optional)
@callback get_forum_topic_icon_stickers(Nadia.Client.t()) ::
  {:ok, [Nadia.Model.Sticker.t()]} | {:error, Nadia.Model.Error.t()}

get_game_high_scores(integer)

(optional)
@callback get_game_high_scores(integer()) ::
  {:ok, [Nadia.Model.GameHighScore.t()]} | {:error, Nadia.Model.Error.t()}

get_game_high_scores(integer, arg2)

(optional)
@callback get_game_high_scores(integer(), [{atom(), any()}] | map()) ::
  {:ok, [Nadia.Model.GameHighScore.t()]} | {:error, Nadia.Model.Error.t()}
@callback get_game_high_scores(Nadia.Client.t(), integer()) ::
  {:ok, [Nadia.Model.GameHighScore.t()]} | {:error, Nadia.Model.Error.t()}

get_game_high_scores(t, integer, arg3)

(optional)
@callback get_game_high_scores(Nadia.Client.t(), integer(), [{atom(), any()}] | map()) ::
  {:ok, [Nadia.Model.GameHighScore.t()]} | {:error, Nadia.Model.Error.t()}

get_managed_bot_access_settings(integer)

@callback get_managed_bot_access_settings(integer()) ::
  {:ok, Nadia.Model.BotAccessSettings.t()} | {:error, Nadia.Model.Error.t()}

get_managed_bot_access_settings(t, integer)

(optional)
@callback get_managed_bot_access_settings(Nadia.Client.t(), integer()) ::
  {:ok, Nadia.Model.BotAccessSettings.t()} | {:error, Nadia.Model.Error.t()}

get_managed_bot_token(integer)

@callback get_managed_bot_token(integer()) ::
  {:ok, binary()} | {:error, Nadia.Model.Error.t()}

get_managed_bot_token(t, integer)

(optional)
@callback get_managed_bot_token(Nadia.Client.t(), integer()) ::
  {:ok, binary()} | {:error, Nadia.Model.Error.t()}

get_me()

@callback get_me() :: {:ok, Nadia.Model.User.t()} | {:error, Nadia.Model.Error.t()}

get_me(t)

(optional)
@callback get_me(Nadia.Client.t()) ::
  {:ok, Nadia.Model.User.t()} | {:error, Nadia.Model.Error.t()}

get_my_commands()

(optional)
@callback get_my_commands() ::
  {:ok, [Nadia.Model.BotCommand.t()]} | {:error, Nadia.Model.Error.t()}

get_my_commands(arg1)

(optional)
@callback get_my_commands([{atom(), any()}] | map()) ::
  {:ok, [Nadia.Model.BotCommand.t()]} | {:error, Nadia.Model.Error.t()}
@callback get_my_commands(Nadia.Client.t()) ::
  {:ok, [Nadia.Model.BotCommand.t()]} | {:error, Nadia.Model.Error.t()}

get_my_commands(t, arg2)

(optional)
@callback get_my_commands(Nadia.Client.t(), [{atom(), any()}] | map()) ::
  {:ok, [Nadia.Model.BotCommand.t()]} | {:error, Nadia.Model.Error.t()}

get_my_default_administrator_rights()

(optional)
@callback get_my_default_administrator_rights() ::
  {:ok, Nadia.Model.ChatAdministratorRights.t()}
  | {:error, Nadia.Model.Error.t()}

get_my_default_administrator_rights(arg1)

(optional)
@callback get_my_default_administrator_rights([{atom(), any()}] | map()) ::
  {:ok, Nadia.Model.ChatAdministratorRights.t()}
  | {:error, Nadia.Model.Error.t()}
@callback get_my_default_administrator_rights(Nadia.Client.t()) ::
  {:ok, Nadia.Model.ChatAdministratorRights.t()}
  | {:error, Nadia.Model.Error.t()}

get_my_default_administrator_rights(t, arg2)

(optional)
@callback get_my_default_administrator_rights(Nadia.Client.t(), [{atom(), any()}] | map()) ::
  {:ok, Nadia.Model.ChatAdministratorRights.t()}
  | {:error, Nadia.Model.Error.t()}

get_my_description()

(optional)
@callback get_my_description() ::
  {:ok, Nadia.Model.BotDescription.t()} | {:error, Nadia.Model.Error.t()}

get_my_description(arg1)

(optional)
@callback get_my_description([{atom(), any()}] | map()) ::
  {:ok, Nadia.Model.BotDescription.t()} | {:error, Nadia.Model.Error.t()}
@callback get_my_description(Nadia.Client.t()) ::
  {:ok, Nadia.Model.BotDescription.t()} | {:error, Nadia.Model.Error.t()}

get_my_description(t, arg2)

(optional)
@callback get_my_description(Nadia.Client.t(), [{atom(), any()}] | map()) ::
  {:ok, Nadia.Model.BotDescription.t()} | {:error, Nadia.Model.Error.t()}

get_my_name()

(optional)
@callback get_my_name() ::
  {:ok, Nadia.Model.BotName.t()} | {:error, Nadia.Model.Error.t()}

get_my_name(arg1)

(optional)
@callback get_my_name([{atom(), any()}] | map()) ::
  {:ok, Nadia.Model.BotName.t()} | {:error, Nadia.Model.Error.t()}
@callback get_my_name(Nadia.Client.t()) ::
  {:ok, Nadia.Model.BotName.t()} | {:error, Nadia.Model.Error.t()}

get_my_name(t, arg2)

(optional)
@callback get_my_name(Nadia.Client.t(), [{atom(), any()}] | map()) ::
  {:ok, Nadia.Model.BotName.t()} | {:error, Nadia.Model.Error.t()}

get_my_short_description()

(optional)
@callback get_my_short_description() ::
  {:ok, Nadia.Model.BotShortDescription.t()} | {:error, Nadia.Model.Error.t()}

get_my_short_description(arg1)

(optional)
@callback get_my_short_description([{atom(), any()}] | map()) ::
  {:ok, Nadia.Model.BotShortDescription.t()} | {:error, Nadia.Model.Error.t()}
@callback get_my_short_description(Nadia.Client.t()) ::
  {:ok, Nadia.Model.BotShortDescription.t()} | {:error, Nadia.Model.Error.t()}

get_my_short_description(t, arg2)

(optional)
@callback get_my_short_description(Nadia.Client.t(), [{atom(), any()}] | map()) ::
  {:ok, Nadia.Model.BotShortDescription.t()} | {:error, Nadia.Model.Error.t()}

get_my_star_balance()

(optional)
@callback get_my_star_balance() ::
  {:ok, Nadia.Model.StarAmount.t()} | {:error, Nadia.Model.Error.t()}

get_my_star_balance(t)

(optional)
@callback get_my_star_balance(Nadia.Client.t()) ::
  {:ok, Nadia.Model.StarAmount.t()} | {:error, Nadia.Model.Error.t()}

get_star_transactions()

(optional)
@callback get_star_transactions() ::
  {:ok, Nadia.Model.StarTransactions.t()} | {:error, Nadia.Model.Error.t()}

get_star_transactions(arg1)

(optional)
@callback get_star_transactions([{atom(), any()}] | map()) ::
  {:ok, Nadia.Model.StarTransactions.t()} | {:error, Nadia.Model.Error.t()}
@callback get_star_transactions(Nadia.Client.t()) ::
  {:ok, Nadia.Model.StarTransactions.t()} | {:error, Nadia.Model.Error.t()}

get_star_transactions(t, arg2)

(optional)
@callback get_star_transactions(Nadia.Client.t(), [{atom(), any()}] | map()) ::
  {:ok, Nadia.Model.StarTransactions.t()} | {:error, Nadia.Model.Error.t()}

get_sticker_set(t, binary)

(optional)
@callback get_sticker_set(Nadia.Client.t(), binary()) ::
  {:ok, Nadia.Model.StickerSet.t()} | {:error, Nadia.Model.Error.t()}

get_updates(list)

@callback get_updates([{atom(), any()}]) ::
  {:ok, [Nadia.Model.Update.t()]} | {:error, Nadia.Model.Error.t()}

get_updates(t, list)

(optional)
@callback get_updates(Nadia.Client.t(), [{atom(), any()}]) ::
  {:ok, [Nadia.Model.Update.t()]} | {:error, Nadia.Model.Error.t()}

get_user_chat_boosts(arg1, integer)

@callback get_user_chat_boosts(integer() | binary(), integer()) ::
  {:ok, Nadia.Model.UserChatBoosts.t()} | {:error, Nadia.Model.Error.t()}

get_user_chat_boosts(t, arg2, integer)

(optional)
@callback get_user_chat_boosts(Nadia.Client.t(), integer() | binary(), integer()) ::
  {:ok, Nadia.Model.UserChatBoosts.t()} | {:error, Nadia.Model.Error.t()}

get_user_gifts(integer)

(optional)
@callback get_user_gifts(integer()) ::
  {:ok, Nadia.Model.OwnedGifts.t()} | {:error, Nadia.Model.Error.t()}

get_user_gifts(integer, arg2)

(optional)
@callback get_user_gifts(integer(), [{atom(), any()}] | map()) ::
  {:ok, Nadia.Model.OwnedGifts.t()} | {:error, Nadia.Model.Error.t()}
@callback get_user_gifts(Nadia.Client.t(), integer()) ::
  {:ok, Nadia.Model.OwnedGifts.t()} | {:error, Nadia.Model.Error.t()}

get_user_gifts(t, integer, arg3)

(optional)
@callback get_user_gifts(Nadia.Client.t(), integer(), [{atom(), any()}] | map()) ::
  {:ok, Nadia.Model.OwnedGifts.t()} | {:error, Nadia.Model.Error.t()}

get_user_personal_chat_messages(integer, integer)

@callback get_user_personal_chat_messages(integer(), integer()) ::
  {:ok, [Nadia.Model.Message.t()]} | {:error, Nadia.Model.Error.t()}

get_user_personal_chat_messages(t, integer, integer)

(optional)
@callback get_user_personal_chat_messages(Nadia.Client.t(), integer(), integer()) ::
  {:ok, [Nadia.Model.Message.t()]} | {:error, Nadia.Model.Error.t()}

get_user_profile_audios(integer)

(optional)
@callback get_user_profile_audios(integer()) ::
  {:ok, Nadia.Model.UserProfileAudios.t()} | {:error, Nadia.Model.Error.t()}

get_user_profile_audios(integer, arg2)

(optional)
@callback get_user_profile_audios(integer(), [{atom(), any()}] | map()) ::
  {:ok, Nadia.Model.UserProfileAudios.t()} | {:error, Nadia.Model.Error.t()}
@callback get_user_profile_audios(Nadia.Client.t(), integer()) ::
  {:ok, Nadia.Model.UserProfileAudios.t()} | {:error, Nadia.Model.Error.t()}

get_user_profile_audios(t, integer, arg3)

(optional)
@callback get_user_profile_audios(Nadia.Client.t(), integer(), [{atom(), any()}] | map()) ::
  {:ok, Nadia.Model.UserProfileAudios.t()} | {:error, Nadia.Model.Error.t()}

get_user_profile_photos(integer, list)

@callback get_user_profile_photos(integer(), [{atom(), any()}]) ::
  {:ok, Nadia.Model.UserProfilePhotos.t()} | {:error, Nadia.Model.Error.t()}

get_user_profile_photos(t, integer, list)

(optional)
@callback get_user_profile_photos(Nadia.Client.t(), integer(), [{atom(), any()}]) ::
  {:ok, Nadia.Model.UserProfilePhotos.t()} | {:error, Nadia.Model.Error.t()}

get_webhook_info(t)

(optional)
@callback get_webhook_info(Nadia.Client.t()) ::
  {:ok, Nadia.Model.WebhookInfo.t()} | {:error, Nadia.Model.Error.t()}

gift_premium_subscription(integer, integer, integer)

(optional)
@callback gift_premium_subscription(integer(), integer(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

gift_premium_subscription(integer, integer, integer, arg4)

(optional)
@callback gift_premium_subscription(
  integer(),
  integer(),
  integer(),
  [{atom(), any()}] | map()
) ::
  :ok | {:error, Nadia.Model.Error.t()}
@callback gift_premium_subscription(Nadia.Client.t(), integer(), integer(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

gift_premium_subscription(t, integer, integer, integer, arg5)

(optional)
@callback gift_premium_subscription(
  Nadia.Client.t(),
  integer(),
  integer(),
  integer(),
  [{atom(), any()}] | map()
) :: :ok | {:error, Nadia.Model.Error.t()}

hide_general_forum_topic(arg1)

@callback hide_general_forum_topic(integer() | binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

hide_general_forum_topic(t, arg2)

(optional)
@callback hide_general_forum_topic(Nadia.Client.t(), integer() | binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

leave_chat(arg1)

@callback leave_chat(integer() | binary()) :: :ok | {:error, Nadia.Model.Error.t()}

leave_chat(t, arg2)

(optional)
@callback leave_chat(Nadia.Client.t(), integer() | binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

log_out()

(optional)
@callback log_out() :: :ok | {:error, Nadia.Model.Error.t()}

log_out(t)

(optional)
@callback log_out(Nadia.Client.t()) :: :ok | {:error, Nadia.Model.Error.t()}

pin_chat_message(t, arg2, arg3, list)

(optional)
@callback pin_chat_message(Nadia.Client.t(), integer() | binary(), integer() | binary(), [
  {atom(), any()}
]) ::
  :ok | {:error, Nadia.Model.Error.t()}

post_story(binary, arg2, integer)

(optional)
@callback post_story(binary(), list() | map() | struct() | binary(), integer()) ::
  {:ok, Nadia.Model.Story.t()} | {:error, Nadia.Model.Error.t()}

post_story(binary, arg2, integer, arg4)

(optional)
@callback post_story(
  binary(),
  list() | map() | struct() | binary(),
  integer(),
  [{atom(), any()}] | map()
) ::
  {:ok, Nadia.Model.Story.t()} | {:error, Nadia.Model.Error.t()}
@callback post_story(
  Nadia.Client.t(),
  binary(),
  list() | map() | struct() | binary(),
  integer()
) ::
  {:ok, Nadia.Model.Story.t()} | {:error, Nadia.Model.Error.t()}

post_story(t, binary, arg3, integer, arg5)

(optional)
@callback post_story(
  Nadia.Client.t(),
  binary(),
  list() | map() | struct() | binary(),
  integer(),
  [{atom(), any()}] | map()
) :: {:ok, Nadia.Model.Story.t()} | {:error, Nadia.Model.Error.t()}

promote_chat_member(arg1, integer)

@callback promote_chat_member(integer() | binary(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

promote_chat_member(arg1, integer, list)

(optional)
@callback promote_chat_member(integer() | binary(), integer(), [{atom(), any()}]) ::
  :ok | {:error, Nadia.Model.Error.t()}
@callback promote_chat_member(Nadia.Client.t(), integer() | binary(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

promote_chat_member(t, arg2, integer, list)

(optional)
@callback promote_chat_member(Nadia.Client.t(), integer() | binary(), integer(), [
  {atom(), any()}
]) ::
  :ok | {:error, Nadia.Model.Error.t()}

read_business_message(binary, integer, integer)

(optional)
@callback read_business_message(binary(), integer(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

read_business_message(t, binary, integer, integer)

(optional)
@callback read_business_message(Nadia.Client.t(), binary(), integer(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

refund_star_payment(integer, binary)

(optional)
@callback refund_star_payment(integer(), binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

refund_star_payment(t, integer, binary)

(optional)
@callback refund_star_payment(Nadia.Client.t(), integer(), binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

remove_business_account_profile_photo(binary)

(optional)
@callback remove_business_account_profile_photo(binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

remove_business_account_profile_photo(binary, arg2)

(optional)
@callback remove_business_account_profile_photo(binary(), [{atom(), any()}] | map()) ::
  :ok | {:error, Nadia.Model.Error.t()}
@callback remove_business_account_profile_photo(Nadia.Client.t(), binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

remove_business_account_profile_photo(t, binary, arg3)

(optional)
@callback remove_business_account_profile_photo(
  Nadia.Client.t(),
  binary(),
  [{atom(), any()}] | map()
) ::
  :ok | {:error, Nadia.Model.Error.t()}

remove_chat_verification(arg1)

(optional)
@callback remove_chat_verification(integer() | binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

remove_chat_verification(t, arg2)

(optional)
@callback remove_chat_verification(Nadia.Client.t(), integer() | binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

remove_my_profile_photo()

(optional)
@callback remove_my_profile_photo() :: :ok | {:error, Nadia.Model.Error.t()}

remove_my_profile_photo(arg1)

(optional)
@callback remove_my_profile_photo([{atom(), any()}] | map()) ::
  :ok | {:error, Nadia.Model.Error.t()}
@callback remove_my_profile_photo(Nadia.Client.t()) ::
  :ok | {:error, Nadia.Model.Error.t()}

remove_my_profile_photo(t, arg2)

(optional)
@callback remove_my_profile_photo(Nadia.Client.t(), [{atom(), any()}] | map()) ::
  :ok | {:error, Nadia.Model.Error.t()}

remove_user_verification(integer)

(optional)
@callback remove_user_verification(integer()) :: :ok | {:error, Nadia.Model.Error.t()}

remove_user_verification(t, integer)

(optional)
@callback remove_user_verification(Nadia.Client.t(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

reopen_forum_topic(arg1, integer)

@callback reopen_forum_topic(integer() | binary(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

reopen_forum_topic(t, arg2, integer)

(optional)
@callback reopen_forum_topic(Nadia.Client.t(), integer() | binary(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

reopen_general_forum_topic(arg1)

@callback reopen_general_forum_topic(integer() | binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

reopen_general_forum_topic(t, arg2)

(optional)
@callback reopen_general_forum_topic(Nadia.Client.t(), integer() | binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

replace_managed_bot_token(integer)

@callback replace_managed_bot_token(integer()) ::
  {:ok, binary()} | {:error, Nadia.Model.Error.t()}

replace_managed_bot_token(t, integer)

(optional)
@callback replace_managed_bot_token(Nadia.Client.t(), integer()) ::
  {:ok, binary()} | {:error, Nadia.Model.Error.t()}

replace_sticker_in_set(integer, binary, binary, arg4)

(optional)
@callback replace_sticker_in_set(
  integer(),
  binary(),
  binary(),
  list() | map() | struct() | binary()
) ::
  :ok | {:error, Nadia.Model.Error.t()}

replace_sticker_in_set(t, integer, binary, binary, arg5)

(optional)
@callback replace_sticker_in_set(
  Nadia.Client.t(),
  integer(),
  binary(),
  binary(),
  list() | map() | struct() | binary()
) :: :ok | {:error, Nadia.Model.Error.t()}

repost_story(binary, integer, integer, integer)

(optional)
@callback repost_story(binary(), integer(), integer(), integer()) ::
  {:ok, Nadia.Model.Story.t()} | {:error, Nadia.Model.Error.t()}

repost_story(binary, integer, integer, integer, arg5)

(optional)
@callback repost_story(
  binary(),
  integer(),
  integer(),
  integer(),
  [{atom(), any()}] | map()
) ::
  {:ok, Nadia.Model.Story.t()} | {:error, Nadia.Model.Error.t()}
@callback repost_story(Nadia.Client.t(), binary(), integer(), integer(), integer()) ::
  {:ok, Nadia.Model.Story.t()} | {:error, Nadia.Model.Error.t()}

repost_story(t, binary, integer, integer, integer, arg6)

(optional)
@callback repost_story(
  Nadia.Client.t(),
  binary(),
  integer(),
  integer(),
  integer(),
  [{atom(), any()}] | map()
) :: {:ok, Nadia.Model.Story.t()} | {:error, Nadia.Model.Error.t()}

restrict_chat_member(arg1, integer, arg3)

@callback restrict_chat_member(
  integer() | binary(),
  integer(),
  map() | keyword() | struct() | binary()
) ::
  :ok | {:error, Nadia.Model.Error.t()}

restrict_chat_member(arg1, integer, arg3, list)

(optional)
@callback restrict_chat_member(
  integer() | binary(),
  integer(),
  map() | keyword() | struct() | binary(),
  [{atom(), any()}]
) :: :ok | {:error, Nadia.Model.Error.t()}
@callback restrict_chat_member(
  Nadia.Client.t(),
  integer() | binary(),
  integer(),
  map() | keyword() | struct() | binary()
) :: :ok | {:error, Nadia.Model.Error.t()}

restrict_chat_member(t, arg2, integer, arg4, list)

(optional)
@callback restrict_chat_member(
  Nadia.Client.t(),
  integer() | binary(),
  integer(),
  map() | keyword() | struct() | binary(),
  [{atom(), any()}]
) :: :ok | {:error, Nadia.Model.Error.t()}

revoke_chat_invite_link(arg1, binary)

(optional)
@callback revoke_chat_invite_link(integer() | binary(), binary()) ::
  {:ok, Nadia.Model.ChatInviteLink.t()} | {:error, Nadia.Model.Error.t()}

revoke_chat_invite_link(t, arg2, binary)

(optional)
@callback revoke_chat_invite_link(Nadia.Client.t(), integer() | binary(), binary()) ::
  {:ok, Nadia.Model.ChatInviteLink.t()} | {:error, Nadia.Model.Error.t()}

save_prepared_inline_message(integer, t)

(optional)
@callback save_prepared_inline_message(integer(), Nadia.Model.InlineQueryResult.t()) ::
  {:ok, Nadia.Model.PreparedInlineMessage.t()} | {:error, Nadia.Model.Error.t()}

save_prepared_inline_message(integer, t, arg3)

(optional)
@callback save_prepared_inline_message(
  integer(),
  Nadia.Model.InlineQueryResult.t(),
  [{atom(), any()}] | map()
) ::
  {:ok, Nadia.Model.PreparedInlineMessage.t()} | {:error, Nadia.Model.Error.t()}
@callback save_prepared_inline_message(
  Nadia.Client.t(),
  integer(),
  Nadia.Model.InlineQueryResult.t()
) ::
  {:ok, Nadia.Model.PreparedInlineMessage.t()} | {:error, Nadia.Model.Error.t()}

save_prepared_inline_message(t, integer, t, arg4)

(optional)
@callback save_prepared_inline_message(
  Nadia.Client.t(),
  integer(),
  Nadia.Model.InlineQueryResult.t(),
  [{atom(), any()}] | map()
) ::
  {:ok, Nadia.Model.PreparedInlineMessage.t()} | {:error, Nadia.Model.Error.t()}

save_prepared_keyboard_button(integer, arg2)

(optional)
@callback save_prepared_keyboard_button(integer(), list() | map() | struct() | binary()) ::
  {:ok, Nadia.Model.PreparedKeyboardButton.t()}
  | {:error, Nadia.Model.Error.t()}

save_prepared_keyboard_button(t, integer, arg3)

(optional)
@callback save_prepared_keyboard_button(
  Nadia.Client.t(),
  integer(),
  list() | map() | struct() | binary()
) ::
  {:ok, Nadia.Model.PreparedKeyboardButton.t()}
  | {:error, Nadia.Model.Error.t()}

send_animation(integer, binary, list)

@callback send_animation(integer(), binary(), [{atom(), any()}]) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_animation(t, arg2, binary, list)

(optional)
@callback send_animation(Nadia.Client.t(), integer() | binary(), binary(), [
  {atom(), any()}
]) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_audio(integer, binary, list)

@callback send_audio(integer(), binary(), [{atom(), any()}]) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_audio(t, arg2, binary, list)

(optional)
@callback send_audio(Nadia.Client.t(), integer() | binary(), binary(), [{atom(), any()}]) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_chat_action(arg1, binary)

@callback send_chat_action(integer() | binary(), binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

send_chat_action(arg1, binary, list)

(optional)
@callback send_chat_action(integer() | binary(), binary(), [{atom(), any()}]) ::
  :ok | {:error, Nadia.Model.Error.t()}
@callback send_chat_action(Nadia.Client.t(), integer() | binary(), binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

send_chat_action(t, arg2, binary, list)

(optional)
@callback send_chat_action(Nadia.Client.t(), integer() | binary(), binary(), [
  {atom(), any()}
]) ::
  :ok | {:error, Nadia.Model.Error.t()}

send_chat_join_request_web_app(binary, binary)

(optional)
@callback send_chat_join_request_web_app(binary(), binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

send_chat_join_request_web_app(t, binary, binary)

(optional)
@callback send_chat_join_request_web_app(Nadia.Client.t(), binary(), binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

send_checklist(binary, arg2, arg3)

@callback send_checklist(
  binary(),
  integer() | binary(),
  list() | map() | struct() | binary()
) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_checklist(binary, arg2, arg3, list)

(optional)
@callback send_checklist(
  binary(),
  integer() | binary(),
  list() | map() | struct() | binary(),
  [
    {atom(), any()}
  ]
) :: {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}
@callback send_checklist(
  Nadia.Client.t(),
  binary(),
  integer() | binary(),
  list() | map() | struct() | binary()
) :: {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_checklist(t, binary, arg3, arg4, list)

(optional)
@callback send_checklist(
  Nadia.Client.t(),
  binary(),
  integer() | binary(),
  list() | map() | struct() | binary(),
  [{atom(), any()}]
) :: {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_contact(integer, binary, binary, list)

@callback send_contact(integer(), binary(), binary(), [{atom(), any()}]) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_contact(t, arg2, binary, binary, list)

(optional)
@callback send_contact(Nadia.Client.t(), integer() | binary(), binary(), binary(), [
  {atom(), any()}
]) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_dice(arg1)

@callback send_dice(integer() | binary()) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_dice(arg1, list)

(optional)
@callback send_dice(integer() | binary(), [{atom(), any()}]) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}
@callback send_dice(Nadia.Client.t(), integer() | binary()) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_dice(t, arg2, list)

(optional)
@callback send_dice(Nadia.Client.t(), integer() | binary(), [{atom(), any()}]) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_document(integer, binary, list)

@callback send_document(integer(), binary(), [{atom(), any()}]) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_document(t, arg2, binary, list)

(optional)
@callback send_document(Nadia.Client.t(), integer() | binary(), binary(), [
  {atom(), any()}
]) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_game(arg1, binary)

(optional)
@callback send_game(integer() | binary(), binary()) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_game(arg1, binary, arg3)

(optional)
@callback send_game(integer() | binary(), binary(), [{atom(), any()}] | map()) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}
@callback send_game(Nadia.Client.t(), integer() | binary(), binary()) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_game(t, arg2, binary, arg4)

(optional)
@callback send_game(
  Nadia.Client.t(),
  integer() | binary(),
  binary(),
  [{atom(), any()}] | map()
) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_gift(binary)

(optional)
@callback send_gift(binary()) :: :ok | {:error, Nadia.Model.Error.t()}

send_gift(binary, arg2)

(optional)
@callback send_gift(binary(), [{atom(), any()}] | map()) ::
  :ok | {:error, Nadia.Model.Error.t()}
@callback send_gift(Nadia.Client.t(), binary()) :: :ok | {:error, Nadia.Model.Error.t()}

send_gift(t, binary, arg3)

(optional)
@callback send_gift(Nadia.Client.t(), binary(), [{atom(), any()}] | map()) ::
  :ok | {:error, Nadia.Model.Error.t()}

send_invoice(arg1, binary, binary, binary, binary, arg6)

(optional)
@callback send_invoice(
  integer() | binary(),
  binary(),
  binary(),
  binary(),
  binary(),
  list() | map() | struct() | binary()
) :: {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_invoice(arg1, binary, binary, binary, binary, arg6, arg7)

(optional)
@callback send_invoice(
  integer() | binary(),
  binary(),
  binary(),
  binary(),
  binary(),
  list() | map() | struct() | binary(),
  [{atom(), any()}] | map()
) :: {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}
@callback send_invoice(
  Nadia.Client.t(),
  integer() | binary(),
  binary(),
  binary(),
  binary(),
  binary(),
  list() | map() | struct() | binary()
) :: {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_invoice(t, arg2, binary, binary, binary, binary, arg7, arg8)

(optional)
@callback send_invoice(
  Nadia.Client.t(),
  integer() | binary(),
  binary(),
  binary(),
  binary(),
  binary(),
  list() | map() | struct() | binary(),
  [{atom(), any()}] | map()
) :: {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_live_photo(arg1, binary, binary, list)

@callback send_live_photo(integer() | binary(), binary(), binary(), [{atom(), any()}]) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_live_photo(t, arg2, binary, binary, list)

(optional)
@callback send_live_photo(Nadia.Client.t(), integer() | binary(), binary(), binary(), [
  {atom(), any()}
]) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_location(integer, float, float, list)

@callback send_location(integer(), float(), float(), [{atom(), any()}]) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_location(t, arg2, float, float, list)

(optional)
@callback send_location(Nadia.Client.t(), integer() | binary(), float(), float(), [
  {atom(), any()}
]) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_media_group(arg1, arg2, list)

@callback send_media_group(integer() | binary(), list() | map() | struct() | binary(), [
  {atom(), any()}
]) ::
  {:ok, [Nadia.Model.Message.t()]} | {:error, Nadia.Model.Error.t()}

send_media_group(t, arg2, arg3, list)

(optional)
@callback send_media_group(
  Nadia.Client.t(),
  integer() | binary(),
  list() | map() | struct() | binary(),
  [
    {atom(), any()}
  ]
) :: {:ok, [Nadia.Model.Message.t()]} | {:error, Nadia.Model.Error.t()}

send_message(integer, binary, list)

@callback send_message(integer(), binary(), [{atom(), any()}]) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_message(t, arg2, binary, list)

(optional)
@callback send_message(Nadia.Client.t(), integer() | binary(), binary(), [{atom(), any()}]) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_message_draft(arg1, integer)

@callback send_message_draft(integer() | binary(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

send_message_draft(arg1, integer, list)

(optional)
@callback send_message_draft(integer() | binary(), integer(), [{atom(), any()}]) ::
  :ok | {:error, Nadia.Model.Error.t()}
@callback send_message_draft(Nadia.Client.t(), integer() | binary(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

send_message_draft(t, arg2, integer, list)

(optional)
@callback send_message_draft(Nadia.Client.t(), integer() | binary(), integer(), [
  {atom(), any()}
]) ::
  :ok | {:error, Nadia.Model.Error.t()}

send_paid_media(arg1, integer, arg3, list)

@callback send_paid_media(
  integer() | binary(),
  integer(),
  list() | map() | struct() | binary(),
  [
    {atom(), any()}
  ]
) :: {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_paid_media(t, arg2, integer, arg4, list)

(optional)
@callback send_paid_media(
  Nadia.Client.t(),
  integer() | binary(),
  integer(),
  list() | map() | struct() | binary(),
  [{atom(), any()}]
) :: {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_photo(integer, binary, list)

@callback send_photo(integer(), binary(), [{atom(), any()}]) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_photo(t, arg2, binary, list)

(optional)
@callback send_photo(Nadia.Client.t(), integer() | binary(), binary(), [{atom(), any()}]) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_poll(arg1, binary, arg3)

@callback send_poll(integer() | binary(), binary(), [{atom(), any()}] | map()) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_poll(t, arg2, binary, arg4)

(optional)
@callback send_poll(
  Nadia.Client.t(),
  integer() | binary(),
  binary(),
  [{atom(), any()}] | map()
) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_rich_message(arg1, arg2)

(optional)
@callback send_rich_message(integer() | binary(), list() | map() | struct() | binary()) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_rich_message(arg1, arg2, list)

(optional)
@callback send_rich_message(integer() | binary(), list() | map() | struct() | binary(), [
  {atom(), any()}
]) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}
@callback send_rich_message(
  Nadia.Client.t(),
  integer() | binary(),
  list() | map() | struct() | binary()
) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_rich_message(t, arg2, arg3, list)

(optional)
@callback send_rich_message(
  Nadia.Client.t(),
  integer() | binary(),
  list() | map() | struct() | binary(),
  [
    {atom(), any()}
  ]
) :: {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_rich_message_draft(integer, integer, arg3)

(optional)
@callback send_rich_message_draft(
  integer(),
  integer(),
  list() | map() | struct() | binary()
) ::
  :ok | {:error, Nadia.Model.Error.t()}

send_rich_message_draft(integer, integer, arg3, list)

(optional)
@callback send_rich_message_draft(
  integer(),
  integer(),
  list() | map() | struct() | binary(),
  [
    {atom(), any()}
  ]
) :: :ok | {:error, Nadia.Model.Error.t()}
@callback send_rich_message_draft(
  Nadia.Client.t(),
  integer(),
  integer(),
  list() | map() | struct() | binary()
) :: :ok | {:error, Nadia.Model.Error.t()}

send_rich_message_draft(t, integer, integer, arg4, list)

(optional)
@callback send_rich_message_draft(
  Nadia.Client.t(),
  integer(),
  integer(),
  list() | map() | struct() | binary(),
  [{atom(), any()}]
) :: :ok | {:error, Nadia.Model.Error.t()}

send_sticker(integer, binary, list)

@callback send_sticker(integer(), binary(), [{atom(), any()}]) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_sticker(t, arg2, binary, list)

(optional)
@callback send_sticker(Nadia.Client.t(), integer() | binary(), binary(), [{atom(), any()}]) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_venue(integer, float, float, binary, binary, list)

@callback send_venue(integer(), float(), float(), binary(), binary(), [{atom(), any()}]) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_venue(t, arg2, float, float, binary, binary, list)

(optional)
@callback send_venue(
  Nadia.Client.t(),
  integer() | binary(),
  float(),
  float(),
  binary(),
  binary(),
  [
    {atom(), any()}
  ]
) :: {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_video(integer, binary, list)

@callback send_video(integer(), binary(), [{atom(), any()}]) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_video(t, arg2, binary, list)

(optional)
@callback send_video(Nadia.Client.t(), integer() | binary(), binary(), [{atom(), any()}]) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_video_note(arg1, binary, list)

@callback send_video_note(integer() | binary(), binary(), [{atom(), any()}]) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_video_note(t, arg2, binary, list)

(optional)
@callback send_video_note(Nadia.Client.t(), integer() | binary(), binary(), [
  {atom(), any()}
]) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_voice(integer, binary, list)

@callback send_voice(integer(), binary(), [{atom(), any()}]) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

send_voice(t, arg2, binary, list)

(optional)
@callback send_voice(Nadia.Client.t(), integer() | binary(), binary(), [{atom(), any()}]) ::
  {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

set_business_account_bio(binary)

(optional)
@callback set_business_account_bio(binary()) :: :ok | {:error, Nadia.Model.Error.t()}

set_business_account_bio(binary, arg2)

(optional)
@callback set_business_account_bio(binary(), [{atom(), any()}] | map()) ::
  :ok | {:error, Nadia.Model.Error.t()}
@callback set_business_account_bio(Nadia.Client.t(), binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_business_account_bio(t, binary, arg3)

(optional)
@callback set_business_account_bio(Nadia.Client.t(), binary(), [{atom(), any()}] | map()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_business_account_gift_settings(binary, boolean, arg3)

(optional)
@callback set_business_account_gift_settings(
  binary(),
  boolean(),
  list() | map() | struct() | binary()
) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_business_account_gift_settings(t, binary, boolean, arg4)

(optional)
@callback set_business_account_gift_settings(
  Nadia.Client.t(),
  binary(),
  boolean(),
  list() | map() | struct() | binary()
) :: :ok | {:error, Nadia.Model.Error.t()}

set_business_account_name(binary, binary)

(optional)
@callback set_business_account_name(binary(), binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_business_account_name(binary, binary, arg3)

(optional)
@callback set_business_account_name(binary(), binary(), [{atom(), any()}] | map()) ::
  :ok | {:error, Nadia.Model.Error.t()}
@callback set_business_account_name(Nadia.Client.t(), binary(), binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_business_account_name(t, binary, binary, arg4)

(optional)
@callback set_business_account_name(
  Nadia.Client.t(),
  binary(),
  binary(),
  [{atom(), any()}] | map()
) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_business_account_profile_photo(binary, arg2)

(optional)
@callback set_business_account_profile_photo(
  binary(),
  list() | map() | struct() | binary()
) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_business_account_profile_photo(binary, arg2, arg3)

(optional)
@callback set_business_account_profile_photo(
  binary(),
  list() | map() | struct() | binary(),
  [{atom(), any()}] | map()
) :: :ok | {:error, Nadia.Model.Error.t()}
@callback set_business_account_profile_photo(
  Nadia.Client.t(),
  binary(),
  list() | map() | struct() | binary()
) :: :ok | {:error, Nadia.Model.Error.t()}

set_business_account_profile_photo(t, binary, arg3, arg4)

(optional)
@callback set_business_account_profile_photo(
  Nadia.Client.t(),
  binary(),
  list() | map() | struct() | binary(),
  [{atom(), any()}] | map()
) :: :ok | {:error, Nadia.Model.Error.t()}

set_business_account_username(binary)

(optional)
@callback set_business_account_username(binary()) :: :ok | {:error, Nadia.Model.Error.t()}

set_business_account_username(binary, arg2)

(optional)
@callback set_business_account_username(binary(), [{atom(), any()}] | map()) ::
  :ok | {:error, Nadia.Model.Error.t()}
@callback set_business_account_username(Nadia.Client.t(), binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_business_account_username(t, binary, arg3)

(optional)
@callback set_business_account_username(
  Nadia.Client.t(),
  binary(),
  [{atom(), any()}] | map()
) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_chat_administrator_custom_title(arg1, integer, binary)

@callback set_chat_administrator_custom_title(integer() | binary(), integer(), binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_chat_administrator_custom_title(t, arg2, integer, binary)

(optional)
@callback set_chat_administrator_custom_title(
  Nadia.Client.t(),
  integer() | binary(),
  integer(),
  binary()
) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_chat_description(arg1)

@callback set_chat_description(integer() | binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_chat_description(arg1, list)

(optional)
@callback set_chat_description(integer() | binary(), [{atom(), any()}]) ::
  :ok | {:error, Nadia.Model.Error.t()}
@callback set_chat_description(Nadia.Client.t(), integer() | binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_chat_description(t, arg2, list)

(optional)
@callback set_chat_description(Nadia.Client.t(), integer() | binary(), [{atom(), any()}]) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_chat_member_tag(arg1, integer)

@callback set_chat_member_tag(integer() | binary(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_chat_member_tag(arg1, integer, list)

(optional)
@callback set_chat_member_tag(integer() | binary(), integer(), [{atom(), any()}]) ::
  :ok | {:error, Nadia.Model.Error.t()}
@callback set_chat_member_tag(Nadia.Client.t(), integer() | binary(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_chat_member_tag(t, arg2, integer, list)

(optional)
@callback set_chat_member_tag(Nadia.Client.t(), integer() | binary(), integer(), [
  {atom(), any()}
]) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_chat_menu_button()

(optional)
@callback set_chat_menu_button() :: :ok | {:error, Nadia.Model.Error.t()}

set_chat_menu_button(arg1)

(optional)
@callback set_chat_menu_button([{atom(), any()}] | map()) ::
  :ok | {:error, Nadia.Model.Error.t()}
@callback set_chat_menu_button(Nadia.Client.t()) :: :ok | {:error, Nadia.Model.Error.t()}

set_chat_menu_button(t, arg2)

(optional)
@callback set_chat_menu_button(Nadia.Client.t(), [{atom(), any()}] | map()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_chat_permissions(arg1, arg2)

@callback set_chat_permissions(
  integer() | binary(),
  map() | keyword() | struct() | binary()
) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_chat_permissions(arg1, arg2, list)

(optional)
@callback set_chat_permissions(
  integer() | binary(),
  map() | keyword() | struct() | binary(),
  [{atom(), any()}]
) :: :ok | {:error, Nadia.Model.Error.t()}
@callback set_chat_permissions(
  Nadia.Client.t(),
  integer() | binary(),
  map() | keyword() | struct() | binary()
) :: :ok | {:error, Nadia.Model.Error.t()}

set_chat_permissions(t, arg2, arg3, list)

(optional)
@callback set_chat_permissions(
  Nadia.Client.t(),
  integer() | binary(),
  map() | keyword() | struct() | binary(),
  [{atom(), any()}]
) :: :ok | {:error, Nadia.Model.Error.t()}

set_chat_photo(arg1, binary)

(optional)
@callback set_chat_photo(integer() | binary(), binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_chat_photo(t, arg2, binary)

(optional)
@callback set_chat_photo(Nadia.Client.t(), integer() | binary(), binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_chat_sticker_set(arg1, binary)

@callback set_chat_sticker_set(integer() | binary(), binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_chat_sticker_set(t, arg2, binary)

(optional)
@callback set_chat_sticker_set(Nadia.Client.t(), integer() | binary(), binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_chat_title(arg1, binary)

@callback set_chat_title(integer() | binary(), binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_chat_title(t, arg2, binary)

(optional)
@callback set_chat_title(Nadia.Client.t(), integer() | binary(), binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_custom_emoji_sticker_set_thumbnail(binary)

(optional)
@callback set_custom_emoji_sticker_set_thumbnail(binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_custom_emoji_sticker_set_thumbnail(binary, arg2)

(optional)
@callback set_custom_emoji_sticker_set_thumbnail(binary(), [{atom(), any()}] | map()) ::
  :ok | {:error, Nadia.Model.Error.t()}
@callback set_custom_emoji_sticker_set_thumbnail(Nadia.Client.t(), binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_custom_emoji_sticker_set_thumbnail(t, binary, arg3)

(optional)
@callback set_custom_emoji_sticker_set_thumbnail(
  Nadia.Client.t(),
  binary(),
  [{atom(), any()}] | map()
) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_game_score(integer, integer)

(optional)
@callback set_game_score(integer(), integer()) ::
  {:ok, Nadia.Model.Message.t()} | :ok | {:error, Nadia.Model.Error.t()}

set_game_score(integer, integer, arg3)

(optional)
@callback set_game_score(integer(), integer(), [{atom(), any()}] | map()) ::
  {:ok, Nadia.Model.Message.t()} | :ok | {:error, Nadia.Model.Error.t()}
@callback set_game_score(Nadia.Client.t(), integer(), integer()) ::
  {:ok, Nadia.Model.Message.t()} | :ok | {:error, Nadia.Model.Error.t()}

set_game_score(t, integer, integer, arg4)

(optional)
@callback set_game_score(
  Nadia.Client.t(),
  integer(),
  integer(),
  [{atom(), any()}] | map()
) ::
  {:ok, Nadia.Model.Message.t()} | :ok | {:error, Nadia.Model.Error.t()}

set_managed_bot_access_settings(integer, boolean, list)

@callback set_managed_bot_access_settings(integer(), boolean(), [{atom(), any()}]) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_managed_bot_access_settings(t, integer, boolean, list)

(optional)
@callback set_managed_bot_access_settings(Nadia.Client.t(), integer(), boolean(), [
  {atom(), any()}
]) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_message_reaction(arg1, integer, list)

@callback set_message_reaction(integer() | binary(), integer(), [{atom(), any()}]) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_message_reaction(t, arg2, integer, list)

(optional)
@callback set_message_reaction(Nadia.Client.t(), integer() | binary(), integer(), [
  {atom(), any()}
]) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_my_commands(arg1)

(optional)
@callback set_my_commands(list() | map() | struct() | binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_my_commands(arg1, arg2)

(optional)
@callback set_my_commands(list() | map() | struct() | binary(), [{atom(), any()}] | map()) ::
  :ok | {:error, Nadia.Model.Error.t()}
@callback set_my_commands(Nadia.Client.t(), list() | map() | struct() | binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_my_commands(t, arg2, arg3)

(optional)
@callback set_my_commands(
  Nadia.Client.t(),
  list() | map() | struct() | binary(),
  [{atom(), any()}] | map()
) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_my_default_administrator_rights()

(optional)
@callback set_my_default_administrator_rights() :: :ok | {:error, Nadia.Model.Error.t()}

set_my_default_administrator_rights(arg1)

(optional)
@callback set_my_default_administrator_rights([{atom(), any()}] | map()) ::
  :ok | {:error, Nadia.Model.Error.t()}
@callback set_my_default_administrator_rights(Nadia.Client.t()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_my_default_administrator_rights(t, arg2)

(optional)
@callback set_my_default_administrator_rights(Nadia.Client.t(), [{atom(), any()}] | map()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_my_description()

(optional)
@callback set_my_description() :: :ok | {:error, Nadia.Model.Error.t()}

set_my_description(arg1)

(optional)
@callback set_my_description([{atom(), any()}] | map()) ::
  :ok | {:error, Nadia.Model.Error.t()}
@callback set_my_description(Nadia.Client.t()) :: :ok | {:error, Nadia.Model.Error.t()}

set_my_description(t, arg2)

(optional)
@callback set_my_description(Nadia.Client.t(), [{atom(), any()}] | map()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_my_name()

(optional)
@callback set_my_name() :: :ok | {:error, Nadia.Model.Error.t()}

set_my_name(arg1)

(optional)
@callback set_my_name([{atom(), any()}] | map()) :: :ok | {:error, Nadia.Model.Error.t()}
@callback set_my_name(Nadia.Client.t()) :: :ok | {:error, Nadia.Model.Error.t()}

set_my_name(t, arg2)

(optional)
@callback set_my_name(Nadia.Client.t(), [{atom(), any()}] | map()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_my_profile_photo(arg1)

(optional)
@callback set_my_profile_photo(list() | map() | struct() | binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_my_profile_photo(t, arg2)

(optional)
@callback set_my_profile_photo(Nadia.Client.t(), list() | map() | struct() | binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_my_short_description()

(optional)
@callback set_my_short_description() :: :ok | {:error, Nadia.Model.Error.t()}

set_my_short_description(arg1)

(optional)
@callback set_my_short_description([{atom(), any()}] | map()) ::
  :ok | {:error, Nadia.Model.Error.t()}
@callback set_my_short_description(Nadia.Client.t()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_my_short_description(t, arg2)

(optional)
@callback set_my_short_description(Nadia.Client.t(), [{atom(), any()}] | map()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_passport_data_errors(integer, arg2)

(optional)
@callback set_passport_data_errors(integer(), list() | map() | struct() | binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_passport_data_errors(t, integer, arg3)

(optional)
@callback set_passport_data_errors(
  Nadia.Client.t(),
  integer(),
  list() | map() | struct() | binary()
) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_sticker_emoji_list(binary, arg2)

(optional)
@callback set_sticker_emoji_list(binary(), [binary()] | binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_sticker_emoji_list(t, binary, arg3)

(optional)
@callback set_sticker_emoji_list(Nadia.Client.t(), binary(), [binary()] | binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_sticker_keywords(binary)

(optional)
@callback set_sticker_keywords(binary()) :: :ok | {:error, Nadia.Model.Error.t()}

set_sticker_keywords(binary, arg2)

(optional)
@callback set_sticker_keywords(binary(), [{atom(), any()}] | map()) ::
  :ok | {:error, Nadia.Model.Error.t()}
@callback set_sticker_keywords(Nadia.Client.t(), binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_sticker_keywords(t, binary, arg3)

(optional)
@callback set_sticker_keywords(Nadia.Client.t(), binary(), [{atom(), any()}] | map()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_sticker_mask_position(binary)

(optional)
@callback set_sticker_mask_position(binary()) :: :ok | {:error, Nadia.Model.Error.t()}

set_sticker_mask_position(binary, arg2)

(optional)
@callback set_sticker_mask_position(binary(), [{atom(), any()}] | map()) ::
  :ok | {:error, Nadia.Model.Error.t()}
@callback set_sticker_mask_position(Nadia.Client.t(), binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_sticker_mask_position(t, binary, arg3)

(optional)
@callback set_sticker_mask_position(Nadia.Client.t(), binary(), [{atom(), any()}] | map()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_sticker_position_in_set(t, binary, integer)

(optional)
@callback set_sticker_position_in_set(Nadia.Client.t(), binary(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_sticker_set_thumbnail(binary, integer)

(optional)
@callback set_sticker_set_thumbnail(binary(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_sticker_set_thumbnail(binary, integer, arg3)

(optional)
@callback set_sticker_set_thumbnail(binary(), integer(), [{atom(), any()}] | map()) ::
  :ok | {:error, Nadia.Model.Error.t()}
@callback set_sticker_set_thumbnail(Nadia.Client.t(), binary(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_sticker_set_thumbnail(t, binary, integer, arg4)

(optional)
@callback set_sticker_set_thumbnail(
  Nadia.Client.t(),
  binary(),
  integer(),
  [{atom(), any()}] | map()
) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_sticker_set_title(binary, binary)

(optional)
@callback set_sticker_set_title(binary(), binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_sticker_set_title(t, binary, binary)

(optional)
@callback set_sticker_set_title(Nadia.Client.t(), binary(), binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_user_emoji_status(integer)

(optional)
@callback set_user_emoji_status(integer()) :: :ok | {:error, Nadia.Model.Error.t()}

set_user_emoji_status(integer, arg2)

(optional)
@callback set_user_emoji_status(integer(), [{atom(), any()}] | map()) ::
  :ok | {:error, Nadia.Model.Error.t()}
@callback set_user_emoji_status(Nadia.Client.t(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_user_emoji_status(t, integer, arg3)

(optional)
@callback set_user_emoji_status(Nadia.Client.t(), integer(), [{atom(), any()}] | map()) ::
  :ok | {:error, Nadia.Model.Error.t()}

set_webhook(list)

@callback set_webhook([{atom(), any()}]) :: :ok | {:error, Nadia.Model.Error.t()}

set_webhook(t, list)

(optional)
@callback set_webhook(Nadia.Client.t(), [{atom(), any()}]) ::
  :ok | {:error, Nadia.Model.Error.t()}

stop_message_live_location(list)

@callback stop_message_live_location([{atom(), any()}]) ::
  :ok | {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

stop_message_live_location(t, list)

(optional)
@callback stop_message_live_location(Nadia.Client.t(), [{atom(), any()}]) ::
  :ok | {:ok, Nadia.Model.Message.t()} | {:error, Nadia.Model.Error.t()}

stop_poll(arg1, integer)

@callback stop_poll(integer() | binary(), integer()) ::
  {:ok, Nadia.Model.Poll.t()} | {:error, Nadia.Model.Error.t()}

stop_poll(arg1, integer, list)

(optional)
@callback stop_poll(integer() | binary(), integer(), [{atom(), any()}]) ::
  {:ok, Nadia.Model.Poll.t()} | {:error, Nadia.Model.Error.t()}
@callback stop_poll(Nadia.Client.t(), integer() | binary(), integer()) ::
  {:ok, Nadia.Model.Poll.t()} | {:error, Nadia.Model.Error.t()}

stop_poll(t, arg2, integer, list)

(optional)
@callback stop_poll(Nadia.Client.t(), integer() | binary(), integer(), [{atom(), any()}]) ::
  {:ok, Nadia.Model.Poll.t()} | {:error, Nadia.Model.Error.t()}

transfer_business_account_stars(binary, integer)

(optional)
@callback transfer_business_account_stars(binary(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

transfer_business_account_stars(t, binary, integer)

(optional)
@callback transfer_business_account_stars(Nadia.Client.t(), binary(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

transfer_gift(binary, binary, integer)

(optional)
@callback transfer_gift(binary(), binary(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

transfer_gift(binary, binary, integer, arg4)

(optional)
@callback transfer_gift(binary(), binary(), integer(), [{atom(), any()}] | map()) ::
  :ok | {:error, Nadia.Model.Error.t()}
@callback transfer_gift(Nadia.Client.t(), binary(), binary(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

transfer_gift(t, binary, binary, integer, arg5)

(optional)
@callback transfer_gift(
  Nadia.Client.t(),
  binary(),
  binary(),
  integer(),
  [{atom(), any()}] | map()
) ::
  :ok | {:error, Nadia.Model.Error.t()}

unban_chat_member(arg1, integer)

@callback unban_chat_member(integer() | binary(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

unban_chat_member(arg1, integer, list)

(optional)
@callback unban_chat_member(integer() | binary(), integer(), [{atom(), any()}]) ::
  :ok | {:error, Nadia.Model.Error.t()}
@callback unban_chat_member(Nadia.Client.t(), integer() | binary(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

unban_chat_member(t, arg2, integer, list)

(optional)
@callback unban_chat_member(Nadia.Client.t(), integer() | binary(), integer(), [
  {atom(), any()}
]) ::
  :ok | {:error, Nadia.Model.Error.t()}

unban_chat_sender_chat(arg1, integer)

@callback unban_chat_sender_chat(integer() | binary(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

unban_chat_sender_chat(t, arg2, integer)

(optional)
@callback unban_chat_sender_chat(Nadia.Client.t(), integer() | binary(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

unhide_general_forum_topic(arg1)

@callback unhide_general_forum_topic(integer() | binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

unhide_general_forum_topic(t, arg2)

(optional)
@callback unhide_general_forum_topic(Nadia.Client.t(), integer() | binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

unpin_all_chat_messages(arg1)

@callback unpin_all_chat_messages(integer() | binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

unpin_all_chat_messages(t, arg2)

(optional)
@callback unpin_all_chat_messages(Nadia.Client.t(), integer() | binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

unpin_all_forum_topic_messages(arg1, integer)

@callback unpin_all_forum_topic_messages(integer() | binary(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

unpin_all_forum_topic_messages(t, arg2, integer)

(optional)
@callback unpin_all_forum_topic_messages(
  Nadia.Client.t(),
  integer() | binary(),
  integer()
) ::
  :ok | {:error, Nadia.Model.Error.t()}

unpin_all_general_forum_topic_messages(arg1)

@callback unpin_all_general_forum_topic_messages(integer() | binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

unpin_all_general_forum_topic_messages(t, arg2)

(optional)
@callback unpin_all_general_forum_topic_messages(Nadia.Client.t(), integer() | binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

unpin_chat_message(arg1)

@callback unpin_chat_message(integer() | binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

unpin_chat_message(arg1, list)

(optional)
@callback unpin_chat_message(integer() | binary(), [{atom(), any()}]) ::
  :ok | {:error, Nadia.Model.Error.t()}
@callback unpin_chat_message(Nadia.Client.t(), integer() | binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

unpin_chat_message(t, arg2, list)

(optional)
@callback unpin_chat_message(Nadia.Client.t(), integer() | binary(), [{atom(), any()}]) ::
  :ok | {:error, Nadia.Model.Error.t()}

upgrade_gift(binary, binary)

(optional)
@callback upgrade_gift(binary(), binary()) :: :ok | {:error, Nadia.Model.Error.t()}

upgrade_gift(binary, binary, arg3)

(optional)
@callback upgrade_gift(binary(), binary(), [{atom(), any()}] | map()) ::
  :ok | {:error, Nadia.Model.Error.t()}
@callback upgrade_gift(Nadia.Client.t(), binary(), binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

upgrade_gift(t, binary, binary, arg4)

(optional)
@callback upgrade_gift(Nadia.Client.t(), binary(), binary(), [{atom(), any()}] | map()) ::
  :ok | {:error, Nadia.Model.Error.t()}

upload_sticker_file(t, integer, binary)

(optional)
@callback upload_sticker_file(Nadia.Client.t(), integer(), binary()) ::
  {:ok, Nadia.Model.File.t()} | {:error, Nadia.Model.Error.t()}

verify_chat(arg1)

(optional)
@callback verify_chat(integer() | binary()) :: :ok | {:error, Nadia.Model.Error.t()}

verify_chat(arg1, arg2)

(optional)
@callback verify_chat(integer() | binary(), [{atom(), any()}] | map()) ::
  :ok | {:error, Nadia.Model.Error.t()}
@callback verify_chat(Nadia.Client.t(), integer() | binary()) ::
  :ok | {:error, Nadia.Model.Error.t()}

verify_chat(t, arg2, arg3)

(optional)
@callback verify_chat(Nadia.Client.t(), integer() | binary(), [{atom(), any()}] | map()) ::
  :ok | {:error, Nadia.Model.Error.t()}

verify_user(integer)

(optional)
@callback verify_user(integer()) :: :ok | {:error, Nadia.Model.Error.t()}

verify_user(integer, arg2)

(optional)
@callback verify_user(integer(), [{atom(), any()}] | map()) ::
  :ok | {:error, Nadia.Model.Error.t()}
@callback verify_user(Nadia.Client.t(), integer()) ::
  :ok | {:error, Nadia.Model.Error.t()}

verify_user(t, integer, arg3)

(optional)
@callback verify_user(Nadia.Client.t(), integer(), [{atom(), any()}] | map()) ::
  :ok | {:error, Nadia.Model.Error.t()}