import { MessageContext, NCWebsocket, type Config, type Send } from "./types.js";
export declare const createEventHandlers: (napcat: NCWebsocket, config: Config) => {
    reply: (context: MessageContext, content: any, quote?: boolean) => Promise<{
        message_id: number;
    }>;
    sendPrivateMessage: (userId: number, content: any) => Promise<{
        message_id: number;
    }>;
    sendGroupMessage: (groupId: number, content: any) => Promise<{
        message_id: number;
    }>;
    isMaster: (id: number) => Promise<boolean>;
    isAdmin: (id: number) => Promise<boolean>;
    hasRight: (user_id: number) => Promise<boolean>;
    delete_msg: (message_id: number) => Promise<void>;
    kick: (group_id: number, user_id: number, reject_add_request?: boolean) => Promise<void>;
    ban: (group_id: number, user_id: number, duration?: number) => Promise<void>;
    banAll: (group_id: number, enable: boolean) => Promise<void>;
    setGroupName: (group_id: number, name: string) => Promise<void>;
    setAdmin: (group_id: number, user_id: number, enable: boolean) => Promise<void>;
    setTitle: (group_id: number, user_id: number, title: string) => Promise<void>;
    aprroveGroup: (flag: string) => Promise<void>;
    rejectGroup: (flag: string) => Promise<void>;
    isGroupAdmin: (group_id: number, user_id: number) => Promise<boolean>;
    isGroupOwner: (group_id: number, user_id: number) => Promise<boolean>;
    md5: (text: string) => string;
    randomInt: (min: number, max: number) => number;
    randomItem: <T>(array: T[]) => T;
    getGroupAvatarLink: (group_id: number, size?: number) => string;
    getQQAvatarLink: (user_id: number, size?: number) => string;
    getImageLink: (raw_message: string) => string;
    getDirectLink: (url: string) => Promise<string>;
    getMessageId: (raw_message: string) => string;
    getMessageAt: (raw_message: string) => number[];
    getText: (raw_message: string) => string;
    getQuotedText: (raw_message: string) => Promise<string>;
    fakeMessage: (target_id: number, message: Send["node"][], isGroup: boolean) => Promise<{
        message_id: number;
        res_id: string;
    }>;
};
