import { type Reader } from '../../protocol/reader.ts';
import { Writer } from '../../protocol/writer.ts';
export interface OffsetForLeaderEpochRequestPartition {
    partitionIndex: number;
    currentLeaderEpoch: number;
    leaderEpoch: number;
}
export interface OffsetForLeaderEpochRequestTopic {
    name: string;
    partitions: OffsetForLeaderEpochRequestPartition[];
}
export type OffsetForLeaderEpochRequest = Parameters<typeof createRequest>;
export interface OffsetForLeaderEpochResponsePartition {
    partition: number;
    errorCode: number;
    leaderEpoch: number;
    endOffset: bigint;
}
export interface OffsetForLeaderEpochResponseTopic {
    topic: string;
    partitions: OffsetForLeaderEpochResponsePartition[];
}
export interface OffsetForLeaderEpochResponse {
    throttleTimeMs: number;
    topics: OffsetForLeaderEpochResponseTopic[];
}
export declare function createRequest(replicaId: number, topics: OffsetForLeaderEpochRequestTopic[]): Writer;
export declare function parseResponse(_correlationId: number, apiKey: number, apiVersion: number, reader: Reader): OffsetForLeaderEpochResponse;
export declare const api: import("../definitions.ts").API<[replicaId: number, topics: OffsetForLeaderEpochRequestTopic[]], OffsetForLeaderEpochResponse>;
