@docsvision/webclient
Version:
Type definitions for DocsVision WebClient scripts and extensions.
37 lines (36 loc) • 2.96 kB
TypeScript
import { GenModels } from '@docsvision/webclient/Generated/DocsVision.WebClient.Models';
import { IEmployeeStatusService } from '@docsvision/webclient/Platform/$EmployeeStatus';
import { $CurrentEmployee } from '@docsvision/webclient/StandardServices';
import { $EmployeeController } from '@docsvision/webclient/Generated/DocsVision.WebClient.Controllers';
import { SimpleEvent } from '@docsvision/webclient/System/SimpleEvent';
import { $CacheManagement } from '@docsvision/webclient/Platform/$CacheManagement';
/** Сервис для получения актуального статуса сотрудника. */
export declare class EmployeeStatusService implements IEmployeeStatusService {
private services;
private employeeCache;
private employeeStatusModelRequests;
/**
* Временной интервал от загрузки страницы, через который посылается запрос на обновление информации о статусе пользователя.
*
* Данная задержка сделана с целью оптимизации показа основного содержимого.
*/
private receiveTimeout;
private startupTime;
constructor(services: $CurrentEmployee & $EmployeeController & $CacheManagement, receiveTimeout?: number);
employeeStatusChanged: SimpleEvent<unknown>;
employeeDisplayNameChanged: SimpleEvent<unknown>;
setEmployeeStatus(employeeId: string, status: GenModels.StaffEmployeeStatus): Promise<void>;
setEmployeeDisplayName(employeeId: string, displayName: string): Promise<void>;
getCurrentEmployeeStatusUnobtrusively(): Promise<GenModels.StaffEmployeeStatus>;
getCurrentEmployeeDisplayNameUnobtrusively(): Promise<string>;
getCurrentEmployeeStatusModelUnobtrusively(): Promise<GenModels.EmployeeStatusModel>;
/** Выполняет запрос на обновление статуса сотрудника с отсрочкой, чтобы не мешать загрузке основного содержимого страницы. */
getEmployeeStatusUnobtrusively(employeeId: string): Promise<GenModels.StaffEmployeeStatus>;
/** Выполняет запрос на обновление имени сотрудника с отсрочкой, чтобы не мешать загрузке основного содержимого страницы. */
getEmployeeDisplayNameUnobtrusively(employeeId: string): Promise<string>;
resetCache(employeeId?: string): void;
/** Выполняет запрос на обновление статуса сотрудника с отсрочкой, чтобы не мешать загрузке основного содержимого страницы. */
getEmployeeStatusModelUnobtrusively(employeeId: string): Promise<GenModels.EmployeeStatusModel>;
private getEmployeeStatus;
private requestEmployeeStatus;
}