UNPKG

@delon/theme

Version:

ng-alain theme system library.

41 lines (40 loc) 1.63 kB
import { InjectionToken, Provider } from '@angular/core'; import { Observable } from 'rxjs'; import type { NzSafeAny } from 'ng-zorro-antd/core/types'; import { App, Layout, SettingsNotify, User } from './types'; import * as i0 from "@angular/core"; export interface SettingsKeys { /** Layout data specifies the stored key, default: `layout` */ layout: string; /** User data specifies the stored key, default: `user` */ user: string; /** App data specifies the stored key, default: `app` */ app: string; } export declare const ALAIN_SETTING_KEYS: InjectionToken<SettingsKeys>; export declare const ALAIN_SETTING_DEFAULT: Provider; export declare class SettingsService<L extends Layout = Layout, U extends User = User, A extends App = App> { private readonly KEYS; private readonly platform; private notify$; private _app; private _user; private _layout; getData(key: string): NzSafeAny; setData(key: string, value: NzSafeAny): void; get layout(): L; get app(): A; get user(): U; get notify(): Observable<SettingsNotify>; setLayout<T extends Layout = Layout>(name: T, value?: NzSafeAny): boolean; setLayout(name: string | L, value?: NzSafeAny): boolean; getLayout<T>(): T; setApp<T extends App = App>(value: T): void; setApp(value: A): void; getApp<T>(): T; setUser<T extends User = User>(value: T): void; setUser(value: U): void; getUser<T>(): T; static ɵfac: i0.ɵɵFactoryDeclaration<SettingsService<any, any, any>, never>; static ɵprov: i0.ɵɵInjectableDeclaration<SettingsService<any, any, any>>; }