import { ClientConfig, LogService, RetryOptions } from '@joktec/core';
import { ISocketFactory, logCreator, logLevel, SASLOptions } from 'kafkajs';
export declare class KafkaRetryConfig implements RetryOptions {
    maxRetryTime?: number;
    initialRetryTime?: number;
    factor?: number;
    multiplier?: number;
    retries?: number;
    restartOnFailure?: (e: Error) => Promise<boolean>;
    constructor(props: KafkaRetryConfig);
}
export declare class KafkaConfig extends ClientConfig {
    brokers: string[];
    ssl?: boolean;
    sasl?: SASLOptions;
    clientId?: string;
    connectionTimeout?: number;
    authenticationTimeout?: number;
    reauthenticationThreshold?: number;
    requestTimeout?: number;
    enforceRequestTimeout?: boolean;
    logLevel?: logLevel;
    retry?: KafkaRetryConfig;
    socketFactory?: ISocketFactory;
    logCreator?: logCreator;
    constructor(props: KafkaConfig);
    log(logService: LogService): void;
}
//# sourceMappingURL=kafka.config.d.ts.map