/// <reference types="node" />
import { Dict, Messenger, segment } from 'koishi';
import type WeComBot from './index';
import { OutMessage } from './def';
export declare class WeComMessenger extends Messenger<WeComBot> {
    private buffer;
    sendGenericMessage(messageInfo: OutMessage): Promise<string>;
    uploadMedia(content: Buffer, type?: string, fileName?: string): Promise<string>;
    sendMarkdownMessage(message: string, extras?: any): Promise<string>;
    sendTextMessage(message: string, extras?: any): Promise<string>;
    sendMediaMessage(type: string, fileName: string, message: Buffer, extras?: any): Promise<string>;
    prepareBufferAndFilename(type: string, data: Dict<string>): Promise<{
        buffer: Buffer;
        filename: string;
    }>;
    private text;
    private readonly cardPropertyArrayKeyList;
    private readonly cardPropertyArrayPartentKeyList;
    private parseCardProperties;
    flush(): Promise<void>;
    private post;
    private postElement;
    private isMarkdown;
    visit(element: segment): Promise<void>;
}
