@awesomeniko/kafka-trail
Version:
A Node.js library for managing message queue with Kafka
21 lines (20 loc) • 926 B
TypeScript
import type { ICustomPartitioner, IHeaders, IResourceConfigEntry } from "kafkajs";
import type { KafkaMessageKey, KafkaTopicName } from "../libs/branded-types/kafka/index.js";
import type { KafkaBrokerConfig, KafkaWithLogger } from "./kafka-broker.js";
import { KTKafkaBroker } from "./kafka-broker.js";
type KTKafkaProducerConfig = {
createPartitioner?: ICustomPartitioner;
} & KafkaBrokerConfig;
declare class KTKafkaProducer extends KTKafkaBroker {
#private;
constructor(params: KafkaWithLogger<KTKafkaProducerConfig>);
init(): Promise<[void, void]>;
destroy(): Promise<[void, void]>;
createTopic(topicName: string, partitions?: number, customConfigArray?: IResourceConfigEntry[]): Promise<void>;
sendSingleMessage(params: {
topicName: KafkaTopicName;
message: string;
messageKey: KafkaMessageKey;
}, headers?: IHeaders): Promise<void>;
}
export { KTKafkaProducer };