import { CastSessionVO } from "../vo/cast/CastSessionVO";
import { ControllerDeviceVO } from "../vo/device/ControllerDeviceVO";
import { DisplayReportVO } from "../vo/report/DisplayReportVO";
export declare class GlobalCache {
    private readonly onlineDisplays;
    private readonly connectedDisplays;
    private readonly displayReports;
    private readonly castSessions;
    private readonly controllers;
    constructor();
    addOnlineDisplay(displayDeviceId: string, displayCode: number, report: DisplayReportVO): void;
    removeOnlineDisplay(displayDeviceId: string, displayCode: number): void;
    clearOnlineDisplay(): void;
    getOnlineDisplayByID(displayDeviceId: string): DisplayReportVO | null;
    getOnlineDisplayByCode(displayCode: number): DisplayReportVO | null;
    addConnectedDisplay(controllerGuid: string, displayCode: number, report: DisplayReportVO): void;
    removeConnectedDisplay(controllerGuid: string, displayCode: number): void;
    clearConnectedDisplay(): void;
    getConnectedDisplayByID(controllerGuid: string): DisplayReportVO | null;
    getConnectedDisplayByCode(displayCode: number): DisplayReportVO | null;
    addCastSession(castSessionId: number, session: CastSessionVO): void;
    removeCastSession(castSessionId: number): void;
    castSessionValues(): IterableIterator<CastSessionVO>;
    getCastSession(castSessionId: number): CastSessionVO | null;
    clearCastSessions(): void;
    addControllerDevice(guid: string, device: ControllerDeviceVO): void;
    removeControllerDevice(guid: string): void;
    getControllerDevice(guid: string): ControllerDeviceVO | null;
}
//# sourceMappingURL=GlobalCache.d.ts.map