import { BehaviorSubject } from 'rxjs'; import * as i0 from '@angular/core'; /** * Represents an appearance scheme (light-mode, dark-mode) * * ### Import * * ```typescript * import { AppearanceScheme } from '@talenra/ngx-base/layout-service'; * ``` */ declare enum AppearanceScheme { Light = "LIGHT", Dark = "DARK" } /** * Represents a color theme (petrol, denim) * * ### Import * * ```typescript * import { Theme } from '@talenra/ngx-base/layout-service'; * ``` */ declare enum Theme { Petrol = "PETROL", Denim = "DENIM", Coshare = "COSHARE" } /** * Provides control and state of the global layout. * * ### Import * * ```typescript * import { LayoutService } from '@talenra/ngx-base/layout-service'; * ``` */ declare class LayoutService { private renderer; private renderFactory; /** @internal */ constructor(); /** * Update the class name reflecting the current appearance scheme and color theme. * @param prefix {String} - Prefix of the class to be applied, e.g. "theme" * @param value {String} - Value of the class to be applied, e.g. "petrol" */ private updatePrefixedClass; /** * Provides the current appearance scheme. * * see {@link AppearanceScheme} */ readonly appearanceScheme$: BehaviorSubject; /** * Applies the given appearance scheme. */ setAppearance(scheme: AppearanceScheme): void; /** * Provides the current color theme. * * see {@link Theme} */ readonly theme$: BehaviorSubject; /** * Applies the given color theme. */ setTheme(theme: Theme): void; /** * Returns whether to use "overlay layout" for side-navigation and sidepanels. * Overlay layout means that elements like side-navigation and sidepanels are * displayes on top of the content. It is used for small viewports. * * Note: Has nothing to do with OverlayService or OverlayLayout and will probably * be renamed. */ useOverlayLayout(): boolean; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } export { AppearanceScheme, LayoutService, Theme };