import type { IMessageProducer, TransactionContext } from "@dugongjs/core";
import { type Kafka, type Message, type ProducerConfig } from "kafkajs";
import { MessageChannelParticipantKafkaJS } from "../../common/message-broker/message-channel-participator-kafkajs.js";
export declare class MessageProducerKafkaJS extends MessageChannelParticipantKafkaJS implements IMessageProducer<Message> {
    private readonly kafka;
    private readonly producerConfig?;
    private producer;
    private isConnected;
    constructor(kafka: Kafka, producerConfig?: ProducerConfig | undefined);
    publishMessage(_: TransactionContext | null, messageChannelId: string, message: Message): Promise<void>;
    publishMessages(_: TransactionContext | null, messageChannelId: string, messages: Message[]): Promise<void>;
    connect(): Promise<void>;
    disconnect(): Promise<void>;
    private ensureConnected;
}
