@docsvision/webclient
Version:
Type definitions for DocsVision WebClient scripts and extensions.
64 lines (62 loc) • 3.26 kB
TypeScript
/// <reference types="react" />
import { $DataGridControlController } from "@docsvision/webclient/Generated/DocsVision.WebClient.Controllers";
import { GenModels } from "@docsvision/webclient/Generated/DocsVision.WebClient.Models";
import { BaseControl, BaseControlParams, BaseControlState } from "@docsvision/webclient/System/BaseControl";
import { ControlImpl } from "@docsvision/webclient/System/ControlImpl";
import { LoadingState } from "@docsvision/webclient/System/LoadingState";
import { RequestHelper } from "@docsvision/webclient/System/RequestHelper";
import { $CardId } from '@docsvision/webclient/System/LayoutServices';
import { CancelableEvent } from '@docsvision/webclient/System/CancelableEvent';
import { IEventArgs } from '@docsvision/webclient/System/IEventArgs';
import { SimpleEvent } from '@docsvision/webclient/System/SimpleEvent';
import { ITableData, ITablePlugins } from '@docsvision/web/components/table/interfaces';
/**
* Содержит публичные свойства элемента управления [ReadOnlyTable]{@link ReadOnlyTable}.
*/
export declare class DataGridControlParams extends BaseControlParams {
/** Стандартный CSS класс со стилями элемента управления */
standardCssClass?: string;
/** Название плагина для формирования контентента таблицы */
pluginName?: string;
/** Перечнь параметров, которые будут переданы при запросе данных таблицы. */
params?: GenModels.ParamModel[];
/** Данные для заполнения талибцы */
data?: ITableData;
/**
* Информация о загрузке таблицы
* @param state Состояние
*/
renderLoadingState?: (state: LoadingState) => JSX.Element;
/** Расширения таблицы. */
plugins?: ITablePlugins;
tableLoaded?: SimpleEvent<IEventArgs>;
tableLoading?: CancelableEvent<IEventArgs>;
/** Необходимые сервисы для работы контрола */
services?: $DataGridControlController & $CardId;
}
/** @internal */
export interface IDataGridControlState extends BaseControlState, DataGridControlParams {
loadingHelper: RequestHelper;
}
/**
* Класс элемента управления, служащего для загрузки и отображения таблицы в режиме чтения.
*/
export declare class DataGridControl extends BaseControl<DataGridControlParams, IDataGridControlState> {
protected construct(): void;
componentWillUnmount(): void;
protected createParams(): DataGridControlParams;
protected createImpl(): ControlImpl;
protected set paramsHandler(params: string | GenModels.ParamModel[] | undefined | null);
/** @internal */
init(): void;
protected initInternal(): Promise<void>;
/** @internal */
protected loadTableData(): Promise<GenModels.TableModel>;
/**
* Инициализация данных талицы
* @param data данные
*/
protected initializeTableData(data: ITableData): void;
/** @internal */
renderControl(): JSX.Element;
}