@docsvision/webclient
Version:
Type definitions for DocsVision WebClient scripts and extensions.
25 lines (24 loc) • 1.58 kB
TypeScript
import { LayoutControl } from "@docsvision/webclient/System/BaseControl";
import { ControlWrapperMap } from "@docsvision/webclient/System/ControlWrapperMap";
import { IControlStoreManager } from '@docsvision/webclient/System/IControlStoreManager';
/** Хранилище контролов разметки, обеспечивающее доступ по имени. */
export declare class ControlStore implements IControlStoreManager {
protected controlCollection: ControlWrapperMap;
protected controlsList: LayoutControl[];
/** Возвращает словарь контролов, где ключами выступают имена контролов, а значениями их экземпляры. */
get controls(): ControlWrapperMap;
/** Добавляет контрол в словарь. */
add(nameSrc: string, control: LayoutControl): LayoutControl;
/** Удаляет контрол из словаря по имени. */
remove(name: string): void;
/** Удаляет контрол из словаря. */
removeControl(control: LayoutControl): void;
/** Вызывает методы onSaving в контролах. */
onSaving(control?: LayoutControl): Promise<any>;
/** Вызывает методы onSaved в контролах. */
onSaved(control?: LayoutControl): Promise<any>;
/** @internal */
protected collectControlData(func: (control: LayoutControl) => void): void;
/** @internal */
protected callSaveCallbacks(beforeSave: boolean, control?: LayoutControl): Promise<any>;
}