import { CustomTransportStrategy, KafkaOptions, ReadPacket, ServerKafka } from '@nestjs/microservices';
import { BaseRpcContext } from '@nestjs/microservices/ctx-host/base-rpc.context';
import { Consumer, EachMessagePayload, IHeaders } from '@nestjs/microservices/external/kafka.interface';
export declare class KafkaStrategy extends ServerKafka implements CustomTransportStrategy {
    protected readonly options: KafkaOptions['options'];
    constructor(options: KafkaOptions['options']);
    listen(callback: (err?: unknown, ...optionalParams: unknown[]) => void): Promise<void>;
    start(callback: () => void): Promise<void>;
    bindEvents(consumer: Consumer): Promise<void>;
    getRemainingTimeToProcess(rawMessage: any): number;
    parseRawMessage(payload: EachMessagePayload): {
        isRetry: boolean;
        rawMessage: any;
    };
    handleMessage(rawMessage: any): Promise<any>;
    handleEvent(pattern: string, packet: ReadPacket, context: BaseRpcContext): Promise<any>;
    handleRetry(pattern: string, headers: IHeaders, payload: any): void;
    bindRetryEvents(consumer: Consumer): Promise<void>;
    close(): Promise<void>;
}
