import { BehaviorSubject, Subject } from 'rxjs'; import { LoggedUserInterface } from '../../models/logged-user.interface'; import { MenuInterface } from '../../models/menu.interface'; import { Router } from '@angular/router'; import { RouteCachingService } from '../../services/route-caching.service'; import { ThemeType } from '../../types/theme.type'; import * as i0 from "@angular/core"; declare class FIFOQueue { private maxLength; private queue; constructor(maxLength?: number); enqueue(item: T): void; dequeue(): T | undefined; getItems(): T[]; setItems(items: T[]): void; reset(): void; private areObjectsEqual; private isUnique; } export declare class FararuLayoutService { private router; private routeCachingService; $theme: BehaviorSubject; $settingsMenuIsShow: BehaviorSubject; lastMenuClicked$: Subject; favoritedMenuIds$: BehaviorSubject; companyConfigChanged$: Subject; private darkModeMediaQuery; private openedWindows$; private last3ClosedWindows$; private lastOpenedWindows$; private loggedUser$; private _browserHistory; onReload$: Subject; currentPage$: Subject; last3Pages: FIFOQueue; constructor(router: Router, routeCachingService: RouteCachingService); addWindow(data: MenuInterface, navigate?: boolean): void; removeWindow(data: MenuInterface, redirectLink?: string): void; removeWindowByLink(link: string, redirectLink?: string): void; setOpenedWindows(): void; getOpenedWidows(): import("rxjs").Observable; getLast3ClosedWidows(): import("rxjs").Observable; setLoggedUser(user: LoggedUserInterface): void; removeLinkQueryString(link: string): string; getLinkQueryString(link: string): any; clearAllTabs(): void; openSettingsMenu(): void; closeSettingsMenu(): void; handleFavorite(data: MenuInterface): void; set theme(theme: ThemeType); get theme(): ThemeType; private get getOpenedWindowsSessionName(); private get getLastOpenedWindowsSessionName(); private get getlast3ClosedWindowsSessionName(); private get favoritesSessionName(); private _getExistingBrowserHistoryItem; private _removeFromBrowserHistoryItem; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } export {};