import { Api, type Message } from 'kotori-bot';
import type OnebotAdapter from './adapter';
export declare class OnebotApi extends Api {
    private factory;
    readonly adapter: OnebotAdapter;
    constructor(adapter: OnebotAdapter);
    getSupportedEvents(): ReturnType<Api['getSupportedEvents']>;
    sendPrivateMsg(message: Message, userId: string): Promise<{
        messageId: string;
        time: number;
    }>;
    /**
     * @description: 发送私聊消息
     * @param message 要发送的内容
     * @param groupId 群号
     */
    sendGroupMsg(message: Message, groupId: string): Promise<{
        messageId: string;
        time: number;
    }>;
    /**
     * @description: 撤回消息
     * @param messageId 消息id
     */
    deleteMsg(messageId: string): void;
    getSelfInfo(): Promise<{
        userId: string;
        username: string;
        userDisplayname: string;
    }>;
    getUserInfo(userId: string): Promise<{
        userId: string;
        username: string;
        userDisplayname: string;
        userRemark: string;
    }>;
    getFriendList(): Promise<{
        userId: string;
        username: string;
        userDisplayname: string;
        userRemark: string;
    }[]>;
    getGroupInfo(groupId: string): Promise<{
        groupId: string;
        groupName: string;
    }>;
    getGroupList(): Promise<{
        groupId: string;
        groupName: string;
    }[]>;
    getGroupMemberInfo(groupId: string, userId: string): Promise<{
        userId: string;
        username: string;
        userDisplayname: string;
    }>;
    getGroupMemberList(groupId: string): Promise<{
        userId: string;
        username: string;
        userDisplayname: string;
    }[]>;
    /**
     * @description: 设置群名
     * @param groupId 群号
     * @param groupName 新群名
     */
    setGroupName(groupId: string, groupName: string): void;
    /**
     * @description: 退出群组
     * @param groupId 群号
     */
    leaveGroup(groupId: string): void;
    /**
     * @description: 设置群头像
     * @param groupId 群号
     * @param image 图片路径
     */
    setGroupAvatar(groupId: string, image: string): void;
    /**
     * @description: 设置群管理员
     * @param groupId 群号
     * @param userId 要设置的管理员的QQ号
     * @param enable true为设置,false取消,默认true
     */
    setGroupAdmin(groupId: string, userId: string, enable?: boolean): void;
    /**
     * @description: 设置群名片(群备注)
     * @param groupId 群号
     * @param userId 要设置的QQ号
     * @param card 群名片内容,不填或空字符串表示删除群名片
     */
    setGroupCard(groupId: string, userId: string, card: string): void;
    /**
     * @description: 群禁言
     * @param groupId 群号
     * @param userId 要禁言的QQ号,不填则为群禁言
     * @param time 禁言时长,单位秒,0表示取消禁言
     */
    setGroupBan(groupId: string, userId?: string, time?: number): void;
    setGroupWholeBan(groupId: string, enable?: boolean): void;
    /**
     * @description: 发送群公告
     * @param groupId 群号
     * @param content 公告内容
     * @param image 图片路径(可选)
     */
    sendGroupNotice(groupId: string, content: string, image?: string): void;
    /**
     * @description: 群组踢人
     * @param groupId 群号
     * @param userId 要踢的QQ号
     */
    setGroupKick(groupId: string, userId: string): void;
}
export default OnebotApi;
