/// <reference types="node" />
import EventEmitter from 'events';
import { RedisClientType, RedisDefaultModules, RedisModules, RedisScripts } from 'redis';
import { RedisFunctions } from '@redis/client';
import { ILoggerEx } from './interfaces';
export interface IStartTimeRedisOptions {
    useStartTimeFromRedisCache: boolean;
    host: string;
    port: string | number;
    streamId: string;
    eventEmitter: EventEmitter;
    exitOnError: Function;
    logger: ILoggerEx;
}
export declare class StartTimeRedis {
    private readonly options;
    private readonly client;
    private readonly streamKey;
    constructor(options: IStartTimeRedisOptions);
    getRedisClient(): Promise<RedisClientType<RedisDefaultModules, RedisFunctions & RedisModules, RedisScripts>>;
    getStartTimeFromRedis(): Promise<number>;
    getStartTimeFromENV(): number;
    getStartTime(): Promise<{
        isUsedSavedStartTime: boolean;
        startTime: number;
    }>;
}
//# sourceMappingURL=StartTimeRedis.d.ts.map