import { Application, EggApplication } from 'egg';
import { ConsumerStream, ProducerStream, ProducerGlobalConfig, ProducerTopicConfig, WriteStreamOptions } from 'node-rdkafka';
export declare class Consumer {
    protected readonly app: Application;
    constructor(app: Application);
}
export declare class Kafka {
    app: EggApplication;
    consumer: ConsumerStream;
    producers: Map<string, ProducerStream>;
    constructor(app: EggApplication);
    initConsumer(): void;
    initProducer(topic: string, opts?: {
        producerGlobalConfig?: ProducerGlobalConfig;
        producerTopicConfig?: ProducerTopicConfig;
        writeStreamOptions?: WriteStreamOptions;
    }): void;
    appDelegate(): void;
    agentDelegate(): void;
    write(topic: string, data: Record<string, unknown>): void;
}
