UNPKG

cloudevents

Version:
32 lines (31 loc) 915 B
/// <reference types="node" /> import { CloudEventV1 } from "../.."; import { Message, Binding } from ".."; export { Kafka }; export type { KafkaMessage, KafkaEvent }; /** * Bindings for Kafka transport * @implements {@linkcode Binding} */ declare const Kafka: Binding<KafkaMessage<unknown>, KafkaMessage<string>>; declare type Key = string | Buffer; /** * Extends the base Message type to include * Kafka-specific fields */ interface KafkaMessage<T = string | Buffer | unknown> extends Message { key: Key; value: T; timestamp?: string; } /** * Extends the base CloudEventV1 interface to include a `partitionkey` field * which is explicitly mapped to KafkaMessage#key */ interface KafkaEvent<T> extends CloudEventV1<T> { /** * Maps to KafkaMessage#key per * https://github.com/cloudevents/spec/blob/v1.0.1/kafka-protocol-binding.md#31-key-mapping */ partitionkey: Key; }