UNPKG

@docsvision/webclient

Version:

Type definitions for DocsVision WebClient scripts and extensions.

29 lines (28 loc) 1.47 kB
import { IAccessor } from "@docsvision/webclient/Helpers/DynamicModel/IAccessor"; import { FieldSpec } from '@docsvision/webclient/System/GetFieldName'; /** * @review Реализация {@link IAccessor} через обращение к свойству объекта по имени. Имя задается в конструкторе, при создании акссессора. */ export declare class DynamicFieldNameAccessor<NodeT, ObjectT, ValueT> implements IAccessor<NodeT, ValueT> { private getModel; static Create<NodeT, ObjectT, ValueT>(getModel: (node: NodeT) => ObjectT, key: FieldSpec<ObjectT, ValueT>): DynamicFieldNameAccessor<NodeT, ObjectT, ValueT>; /** * Название свойства. */ fieldName: string; /** * @param key Имя свойства. Может быть задано строкой (например, `myProperty`) или выржанием вида `() => obj.myProperty`. */ constructor(getModel: (node: NodeT) => ObjectT, key: FieldSpec<ObjectT, ValueT>); /** * Получить значение свойства для указанного объекта. * @param node Объект. */ get(node: NodeT): ValueT; /** * Установить значение свойства для указанного объекта. * @param node Объект. * @param value Значение. */ set(node: NodeT, value: ValueT): void; }