UNPKG

@docsvision/webclient

Version:

Type definitions for DocsVision WebClient scripts and extensions.

97 lines (96 loc) 5.11 kB
import { IApp } from "@docsvision/webclient/App"; import { GenModels } from "@docsvision/webclient/Generated/DocsVision.WebClient.Models"; import "@docsvision/webclient/Legacy/NativeFunctions"; import { $StandardControllers } from "@docsvision/webclient/Legacy/StandardControllers"; import { $StandardServices } from "@docsvision/webclient/StandardServices"; import { FieldSpec } from '@docsvision/webclient/System/GetFieldName'; import { IBasicEvent } from "@docsvision/webclient/System/IBasicEvent"; import { Factories, ServiceContainer, ServiceGetter, ServiceSetter } from "@docsvision/web/core/services"; /** Входная точка приложения Web-клиента. */ export declare class Application extends ServiceContainer implements IApp { private localization; private static logEnabled; private static isIE; private static routeTimestampVal; private static isMobileSafary; private static isIOS; private static webViewIOSEnabled; private previousLogTimestamp; private appCreatedTimestamp; constructor(); get isInitialized(): boolean; logTimestamp(message: string): void; /** Экземпляр приложения Web-клиента. */ static Instance: Application & $StandardControllers & $StandardServices; /** * Регистрирует сервис через вызов `app.registerService` при инициализации приложения (по событию {@link AppInitialized}). * * @see {@link ServiceContainer.registerService} */ static registerService<T>(name: FieldSpec<any, T>, service: T, meta?: object): void; /** * Регистрирует сервис через вызов `app.registerServiceFactory` при инициализации приложения (по событию {@link AppInitialized}). * * @see {@link ServiceContainer.registerServiceFactory} */ static registerServiceFactory<T>(name: FieldSpec<any, T>, serviceFactory: (services: any) => T, meta?: object): void; /** * Регистрирует сервис через вызов `app.registerServiceAccessors` при инициализации приложения (по событию {@link AppInitialized}). * * @see {@link ServiceContainer.registerServiceAccessors} */ static registerServiceAccessors<T>(name: FieldSpec<any, T>, get: ServiceGetter<T>, set?: ServiceSetter<T>, meta?: object): void; /** * Регистрирует сервис через вызов `app.addService` при инициализации приложения (по событию {@link AppInitialized}). * * @see {@link ServiceContainer.addService} */ static addService<$T>(container: $T, meta?: object): void; /** * Регистрирует сервис через вызов `app.addServiceFactory` при инициализации приложения (по событию {@link AppInitialized}). * * @see {@link ServiceContainer.addServiceFactory} */ static addServiceFactory<$T>(container: Factories<$T>, meta?: object): void; /** Событие инициализации приложения. */ static get Initialized(): IBasicEvent<IApp>; get logEnabled(): boolean; set logEnabled(value: boolean); static get LogEnabled(): boolean; static set LogEnabled(value: boolean); get routeTimestamp(): number; updateRouteTimestamp(): void; /** Временная метка роута - при смене роута она изменяется. */ static get RouteTimestamp(): number; /** Обновить {@link RouteTimestamp}. */ static UpdateRouteTimestamp(): void; /** Является ли текущий браузер мобильной версией Safary. */ get isMobileSafari(): boolean; static get IsMobileSafari(): boolean; /** Является ли текущая ОС iOS. */ get isIOS(): boolean; static get IsIOS(): boolean; /** Открыт ли ВК через WebView в ОС iOS. */ get webViewIOSEnabled(): boolean; static get WebViewIOSEnabled(): boolean; /** @internal */ initialize(applicationSettings: GenModels.ApplicationSettings): void; private ApplyBrowserFixes; /** Открыть домашнюю страницу. */ GoToDashBoard(refresh?: boolean): Promise<void>; /** Скрыть логотип Docsvision в шапке приложения. */ HideLogo(): void; /** Отобразить логотип Docsvision в шапке приложения. */ ShowLogo(): void; /** Сбрасывает локальные настройки и кеши пользователя сохраненные в браузере. */ ResetSettings(): Promise<void>; /** @deprecated */ get CompanyLogo(): HTMLElement; set InstalledCSP(value: boolean); private isApple; private DetectBrowsers; private registerNotificationListener; isIE(): boolean; } export declare type App = Application; export declare const App: typeof Application;