import { JISInfotextsRedisRepository } from "../../../jis/data-access/cache/JISInfotextsRedisRepository";
import { JISInfotextRepository } from "../../data-access/JISInfotextRepository";
import { IInfotextDepartureOutputDto, IInfotextOverviewOutputDto, IInfotextTransferOutputDto, IV4InfotextTransferOutputDto } from "../../domain/InfotextInterfaces";
import { JISInfotextStopSuppressionFilter } from "../../helpers/JISInfotextStopSuppressionFilter";
import { IGetDeparturesOptions } from "../../models/interfaces/IGetDeparturesOptions";
import { Moment } from "@golemio/core/dist/shared/moment-timezone";
import { JISInfotextCacheTransferTransformation } from "../transformations/JISInfotextCacheTransferTransformation";
import { JISInfotextDepartureTransformation } from "../transformations/JISInfotextDepartureTransformation";
import { JISInfotextOverviewTransformation } from "../transformations/JISInfotextOverviewTransformation";
import { JISInfotextTransferTransformation } from "../transformations/JISInfotextTransferTransformation";
export declare class InfotextFacade {
    private infotextRepository;
    private infotextDepartureTransformation;
    private infotextTransferTransformation;
    private infotextOverviewTransformation;
    private infotextStopFilter;
    private infotextsRedisRepository;
    private cacheTransferTransformation;
    constructor(infotextRepository: JISInfotextRepository, infotextDepartureTransformation: JISInfotextDepartureTransformation, infotextTransferTransformation: JISInfotextTransferTransformation, infotextOverviewTransformation: JISInfotextOverviewTransformation, infotextStopFilter: JISInfotextStopSuppressionFilter, infotextsRedisRepository: JISInfotextsRedisRepository, cacheTransferTransformation: JISInfotextCacheTransferTransformation);
    getInfotextsForDepartureBoards(stopIds: string[], currentMoment: Moment, options: IGetDeparturesOptions): Promise<IInfotextDepartureOutputDto[]>;
    getInfotextsForTransferBoards(stopIds: string[], currentMoment: Moment, timeFrom: Moment | null): Promise<IInfotextTransferOutputDto[]>;
    getInfotextsForOverview(includeFuture: boolean): Promise<IInfotextOverviewOutputDto[]>;
    getInfotextsCache(stopIds: string[], currentMoment: Date, timeFrom: Date | null): Promise<IV4InfotextTransferOutputDto[]>;
    private filterInfotexts;
}
