import type { Client } from './client';
import { BaseApi, BotsApi, ChatsApi, CommentsApi, MessagesApi, SubscriptionsApi, UploadsApi } from './modules';
export declare class RawApi extends BaseApi {
    private readonly client;
    constructor(client: Client);
    get: <Method extends "chats" | "chats/{chat_id}" | "chats/{chat_id}/members/admins" | "chats/{chat_id}/members" | "chats/{chat_id}/members/me" | "chats/{chat_id}/pin" | "me" | "updates" | "messages" | "messages/{message_id}" | "messages/{messageId}/comments" | "messages/{messageId}/comments/{commentId}" | "videos/{video_token}" | "subscriptions">(method: Method, options: {
        chats: {
            req: import("./modules").GetAllChatsDTO;
            res: import("./modules").GetAllChatsResponse;
        };
        'chats/{chat_id}': {
            req: import("./modules").GetChatByIdDTO;
            res: import("./modules").GetChatByIdResponse;
        };
        'chats/{chat_id}/members/admins': {
            req: import("./modules").GetChatAdminsDTO;
            res: import("./modules").GetChatAdminsResponse;
        };
        'chats/{chat_id}/members': {
            req: import("./modules").GetChatMembersDTO;
            res: import("./modules").GetChatMembersResponse;
        };
        'chats/{chat_id}/members/me': {
            req: import("./modules").GetChatMembershipDTO;
            res: import("./modules").GetChatMembershipResponse;
        };
        'chats/{chat_id}/pin': {
            req: import("./modules").GetPinnedMessageDTO;
            res: import("./modules").GetPinnedMessageResponse;
        };
        me: {
            req: {};
            res: import("./modules").GetMyInfoResponse;
        };
        updates: {
            req: import("./modules").GetUpdatesDTO;
            res: import("./modules").GetUpdatesResponse;
        };
        messages: {
            req: import("./modules").GetMessagesDTO;
            res: import("./modules").GetMessagesResponse;
        };
        'messages/{message_id}': {
            req: import("./modules").GetMessageDTO;
            res: import("./modules").GetMessageResponse;
        };
        'messages/{messageId}/comments': {
            req: import("./modules").GetCommentsDTO;
            res: import("./modules").GetCommentsResponse;
        };
        'messages/{messageId}/comments/{commentId}': {
            req: import("./modules").GetCommentDTO;
            res: import("./modules").GetCommentResponse;
        };
        'videos/{video_token}': {
            req: import("./modules").GetVideoInfoDTO;
            res: import("./modules").GetVideoInfoResponse;
        };
        subscriptions: {
            req: {};
            res: import("./modules").SubscriptionsResponseDTO;
        };
    }[Method]["req"] & {
        signal?: AbortSignal;
    }) => Promise<{
        chats: {
            req: import("./modules").GetAllChatsDTO;
            res: import("./modules").GetAllChatsResponse;
        };
        'chats/{chat_id}': {
            req: import("./modules").GetChatByIdDTO;
            res: import("./modules").GetChatByIdResponse;
        };
        'chats/{chat_id}/members/admins': {
            req: import("./modules").GetChatAdminsDTO;
            res: import("./modules").GetChatAdminsResponse;
        };
        'chats/{chat_id}/members': {
            req: import("./modules").GetChatMembersDTO;
            res: import("./modules").GetChatMembersResponse;
        };
        'chats/{chat_id}/members/me': {
            req: import("./modules").GetChatMembershipDTO;
            res: import("./modules").GetChatMembershipResponse;
        };
        'chats/{chat_id}/pin': {
            req: import("./modules").GetPinnedMessageDTO;
            res: import("./modules").GetPinnedMessageResponse;
        };
        me: {
            req: {};
            res: import("./modules").GetMyInfoResponse;
        };
        updates: {
            req: import("./modules").GetUpdatesDTO;
            res: import("./modules").GetUpdatesResponse;
        };
        messages: {
            req: import("./modules").GetMessagesDTO;
            res: import("./modules").GetMessagesResponse;
        };
        'messages/{message_id}': {
            req: import("./modules").GetMessageDTO;
            res: import("./modules").GetMessageResponse;
        };
        'messages/{messageId}/comments': {
            req: import("./modules").GetCommentsDTO;
            res: import("./modules").GetCommentsResponse;
        };
        'messages/{messageId}/comments/{commentId}': {
            req: import("./modules").GetCommentDTO;
            res: import("./modules").GetCommentResponse;
        };
        'videos/{video_token}': {
            req: import("./modules").GetVideoInfoDTO;
            res: import("./modules").GetVideoInfoResponse;
        };
        subscriptions: {
            req: {};
            res: import("./modules").SubscriptionsResponseDTO;
        };
    }[Method]["res"]>;
    post: <Method extends "chats/{chat_id}/members/admins" | "chats/{chat_id}/members" | "messages" | "messages/{messageId}/comments" | "subscriptions" | "chats/{chat_id}/actions" | "uploads" | "answers">(method: Method, options: {
        'chats/{chat_id}/actions': {
            req: import("./modules").SendActionDTO;
            res: import("./modules").SendActionResponse;
        };
        'chats/{chat_id}/members': {
            req: import("./modules").AddChatMembersDTO;
            res: import("./modules").AddChatMembersResponse;
        };
        messages: {
            req: import("./modules").SendMessageDTO;
            res: import("./modules").SendMessageResponse;
        };
        uploads: {
            req: import("./modules").GetUploadUrlDTO;
            res: import("./modules").GetUploadUrlResponse;
        };
        answers: {
            req: import("./modules").AnswerOnCallbackDTO;
            res: import("./modules").AnswerOnCallbackResponse;
        };
        'messages/{messageId}/comments': {
            req: import("./modules").SendCommentDTO;
            res: import("./modules").SendCommentResponse;
        };
        'chats/{chat_id}/members/admins': {
            req: import("./modules").AddChatAdminsDTO;
            res: import("./modules").AddChatAdminsResponse;
        };
        subscriptions: {
            req: import("./modules").SubscribeOnUpdatesDTO;
            res: import("./modules").SubscribeOnUpdatesResponse;
        };
    }[Method]["req"] & {
        signal?: AbortSignal;
    }) => Promise<{
        'chats/{chat_id}/actions': {
            req: import("./modules").SendActionDTO;
            res: import("./modules").SendActionResponse;
        };
        'chats/{chat_id}/members': {
            req: import("./modules").AddChatMembersDTO;
            res: import("./modules").AddChatMembersResponse;
        };
        messages: {
            req: import("./modules").SendMessageDTO;
            res: import("./modules").SendMessageResponse;
        };
        uploads: {
            req: import("./modules").GetUploadUrlDTO;
            res: import("./modules").GetUploadUrlResponse;
        };
        answers: {
            req: import("./modules").AnswerOnCallbackDTO;
            res: import("./modules").AnswerOnCallbackResponse;
        };
        'messages/{messageId}/comments': {
            req: import("./modules").SendCommentDTO;
            res: import("./modules").SendCommentResponse;
        };
        'chats/{chat_id}/members/admins': {
            req: import("./modules").AddChatAdminsDTO;
            res: import("./modules").AddChatAdminsResponse;
        };
        subscriptions: {
            req: import("./modules").SubscribeOnUpdatesDTO;
            res: import("./modules").SubscribeOnUpdatesResponse;
        };
    }[Method]["res"]>;
    patch: <Method extends "chats/{chat_id}" | "me/commands">(method: Method, options: {
        'me/commands': {
            req: import("./modules").EditMyCommandsDTO;
            res: import("./modules").EditMyCommandsResponse;
        };
        'chats/{chat_id}': {
            req: import("./modules").EditChatInfoDTO;
            res: import("./modules").EditChatInfoResponse;
        };
    }[Method]["req"] & {
        signal?: AbortSignal;
    }) => Promise<{
        'me/commands': {
            req: import("./modules").EditMyCommandsDTO;
            res: import("./modules").EditMyCommandsResponse;
        };
        'chats/{chat_id}': {
            req: import("./modules").EditChatInfoDTO;
            res: import("./modules").EditChatInfoResponse;
        };
    }[Method]["res"]>;
    private _chats?;
    get chats(): ChatsApi;
    private _bots?;
    get bots(): BotsApi;
    private _messages?;
    get messages(): MessagesApi;
    private _subscriptions?;
    get subscriptions(): SubscriptionsApi;
    private _uploads?;
    get uploads(): UploadsApi;
    private _comments?;
    get comments(): CommentsApi;
}
