kafka-ts
Version:
**KafkaTS** is a Apache Kafka client library for Node.js. It provides both a low-level API for communicating directly with the Apache Kafka cluster and high-level APIs for publishing and subscribing to Kafka topics.
87 lines (86 loc) • 2.57 kB
TypeScript
export declare const enum IsolationLevel {
READ_UNCOMMITTED = 0,
READ_COMMITTED = 1
}
type FetchRequest = {
maxWaitMs: number;
minBytes: number;
maxBytes: number;
isolationLevel: IsolationLevel;
sessionId: number;
sessionEpoch: number;
topics: {
topicId: string;
topicName: string;
partitions: {
partition: number;
currentLeaderEpoch: number;
fetchOffset: bigint;
lastFetchedEpoch: number;
logStartOffset: bigint;
partitionMaxBytes: number;
}[];
}[];
forgottenTopicsData: {
topicId: string;
topicName: string;
partitions: number[];
}[];
rackId: string;
};
export type FetchResponse = {
throttleTimeMs: number;
errorCode: number;
sessionId: number;
responses: (({
topicId: string;
} | {
topicName: string;
}) & {
partitions: {
partitionIndex: number;
errorCode: number;
highWatermark: bigint;
lastStableOffset: bigint;
logStartOffset: bigint;
abortedTransactions: {
producerId: bigint;
firstOffset: bigint;
}[];
preferredReadReplica: number;
records: {
baseOffset: bigint;
batchLength: number;
partitionLeaderEpoch: number;
magic: number;
crc: number;
attributes: number;
compression: number;
timestampType: 'CreateTime' | 'LogAppendTime';
isTransactional: boolean;
isControlBatch: boolean;
hasDeleteHorizonMs: boolean;
deleteHorizonMs: bigint | null;
lastOffsetDelta: number;
baseTimestamp: bigint;
maxTimestamp: bigint;
producerId: bigint;
producerEpoch: number;
baseSequence: number;
records: {
attributes: number;
timestampDelta: bigint;
offsetDelta: number;
key: string | null;
value: string | null;
headers: {
key: string;
value: string;
}[];
}[];
}[];
}[];
})[];
};
export declare const FETCH: import("../utils/api").Api<FetchRequest, FetchResponse>;
export {};