import type { Chat, ChatFromGetChat, ChatPermissions, InputFile, RawApi } from "../deps.node.js";
import type { Other, Ret } from "../plugin.js";
export interface ChatXFragment {
    setPermissions(permissions: ChatPermissions, other?: Other<"setChatPermissions">, signal?: AbortSignal): Ret<"setChatPermissions">;
    getMember(userId: number, other?: Other<"getChatMember">, signal?: AbortSignal): Ret<"getChatMember">;
    getMembersCount(other?: Other<"getChatMemberCount">, signal?: AbortSignal): Ret<"getChatMemberCount">;
    getAdmins(other?: Other<"getChatAdministrators">, signal?: AbortSignal): Ret<"getChatAdministrators">;
    setStickerSet(stickerSetName: string, other?: Other<"setChatStickerSet">, signal?: AbortSignal): Ret<"setChatStickerSet">;
    deleteStickerSet(other?: Other<"deleteChatStickerSet">, signal?: AbortSignal): Ret<"deleteChatStickerSet">;
    createForumTopic(name: string, other?: Other<"createForumTopic">, signal?: AbortSignal): Ret<"createForumTopic">;
    editForumTopic(messageThreadId: number, other?: Other<"editForumTopic">, signal?: AbortSignal): Ret<"editForumTopic">;
    closeForumTopic(messageThreadId: number, other?: Other<"closeForumTopic">, signal?: AbortSignal): Ret<"closeForumTopic">;
    reopenForumTopic(messageThreadId: number, other?: Other<"reopenForumTopic">, signal?: AbortSignal): Ret<"reopenForumTopic">;
    deleteForumTopic(messageThreadId: number, other?: Other<"deleteForumTopic">, signal?: AbortSignal): Ret<"deleteForumTopic">;
    unpinAllForumTopicMessages(messageThreadId: number, other?: Other<"unpinAllForumTopicMessages">, signal?: AbortSignal): Ret<"unpinAllForumTopicMessages">;
    editGeneralForumTopic(name: string, other?: Other<"editGeneralForumTopic">, signal?: AbortSignal): Ret<"editGeneralForumTopic">;
    closeGeneralForumTopic(other?: Other<"closeGeneralForumTopic">, signal?: AbortSignal): Ret<"closeGeneralForumTopic">;
    reopenGeneralForumTopic(other?: Other<"reopenGeneralForumTopic">, signal?: AbortSignal): Ret<"reopenGeneralForumTopic">;
    hideGeneralForumTopic(other?: Other<"hideGeneralForumTopic">, signal?: AbortSignal): Ret<"hideGeneralForumTopic">;
    unhideGeneralForumTopic(other?: Other<"unhideGeneralForumTopic">, signal?: AbortSignal): Ret<"unhideGeneralForumTopic">;
    setMenuButton(other?: Other<"setChatMenuButton">, signal?: AbortSignal): Ret<"setChatMenuButton">;
    getMenuButton(other?: Other<"getChatMenuButton">, signal?: AbortSignal): Ret<"getChatMenuButton">;
    leave(other?: Other<"leaveChat">, signal?: AbortSignal): Ret<"leaveChat">;
    setPhoto(photo: InputFile, other?: Other<"setChatPhoto">, signal?: AbortSignal): Ret<"setChatPhoto">;
    deletePhoto(other?: Other<"deleteChatPhoto">, signal?: AbortSignal): Ret<"deleteChatPhoto">;
    setTitle(title: string, other?: Other<"setChatTitle">, signal?: AbortSignal): Ret<"setChatTitle">;
    setDescription(description: string, other?: Other<"setChatDescription">, signal?: AbortSignal): Ret<"setChatDescription">;
    unpinAllMessages(other?: Other<"unpinAllChatMessages">, signal?: AbortSignal): Ret<"unpinAllChatMessages">;
    revokeInviteLink(inviteLink: string, other?: Other<"revokeChatInviteLink">, signal?: AbortSignal): Ret<"revokeChatInviteLink">;
    editInviteLink(inviteLink: string, other?: Other<"editChatInviteLink">, signal?: AbortSignal): Ret<"editChatInviteLink">;
    createInviteLink(other?: Other<"createChatInviteLink">, signal?: AbortSignal): Ret<"createChatInviteLink">;
    exportInviteLink(other?: Other<"exportChatInviteLink">, signal?: AbortSignal): Ret<"exportChatInviteLink">;
    unbanSenderChat(senderChatId: number, other?: Other<"unbanChatSenderChat">, signal?: AbortSignal): Ret<"unbanChatSenderChat">;
    banSenderChat(senderChatId: number, other?: Other<"banChatSenderChat">, signal?: AbortSignal): Ret<"banChatSenderChat">;
    banMember(userId: number, other?: Other<"banChatMember">, signal?: AbortSignal): Ret<"banChatMember">;
    unbanMember(userId: number, other?: Other<"unbanChatMember">, signal?: AbortSignal): Ret<"unbanChatMember">;
}
export type ChatX = ChatXFragment & ChatFromGetChat;
export declare function installChatMethods(api: RawApi, chat: Chat): void;
import { AbortSignal } from "./../shim.node.js";
