@docsvision/webclient
Version:
Type definitions for DocsVision WebClient scripts and extensions.
17 lines (16 loc) • 979 B
TypeScript
export declare function addServices<T1, T2>(servicesSrc: T1, newServices: T2, clone?: boolean): T1 & T2;
export declare function assertService<T1>(services: any): T1;
export declare function assertServiceAt<T1>(services: T1): <T2>() => T1 & T2;
export declare function cloneServices<T>(services: T): T;
export declare function replaceService<T1, T2>(servicesSrc: T1, newService: T2, clone?: boolean): T1 & T2;
declare type FieldSpecLocal<TModel, TResult> = ((model?: TModel) => TResult) | string;
/**
* Вспомогательная функция, используемя при объявлении сервисов.
*
* Например:
*
* export type $RequestManager = { requestManager: IRequestManager };
* export const $RequestManager = serviceName((s: $RequestManager) => s.requestManager);
*/
export declare function serviceName<TContainer, TValue>(x: FieldSpecLocal<TContainer, TValue>): FieldSpecLocal<TContainer, TValue>;
export {};