/*! * * Wijmo Library 5.20251.40 * https://developer.mescius.com/wijmo * * Copyright(c) MESCIUS inc. All rights reserved. * * Licensed under the End-User License Agreement For MESCIUS Wijmo Software. * us.sales@mescius.com * https://developer.mescius.com/wijmo/licensing * */ /** * {@module wijmo.vue2.grid} * Contains Vue 2 and 3 components for the wijmo.grid module. */ /** * */ export declare var ___keepComment: any; import * as wjcCore from 'wijmo/wijmo'; import * as wjcInteropGrid from 'wijmo/wijmo.interop.grid'; /** * Represents a cell template types enumeration. */ export import CellTemplateType = wjcInteropGrid.GridCellTemplateType; /** * Vue component for the {@link wijmo.grid.FlexGrid} control. * * The wj-flex-grid component may contain * the following child components: * {@link wijmo.vue2.grid.detail.WjFlexGridDetail} * , {@link wijmo.vue2.grid.filter.WjFlexGridFilter} * , {@link wijmo.vue2.grid.WjFlexGridColumn} * , {@link wijmo.vue2.grid.WjFlexGridColumnGroup} * and {@link wijmo.vue2.grid.WjFlexGridCellTemplate}. * * The component supports all properties and events of the pure JavaScript {@link wijmo.grid.FlexGrid} control it represents. * * The component includes an initialized event that is raised when the control is initialized after it is added to the page. * You can use this event to perform further initialization in addition to setting properties in markup. * The signature of the handler function is the same as any other Wijmo event handlers. * * The example below shows how to instantiate and initialize a * {@link wijmo.grid.FlexGrid} control using Vue markup: * *
<wj-flex-grid * :items-source="data"> * <wj-flex-grid-column binding="name" header="Name"> * </wj-flex-grid-column> * <wj-flex-grid-column binding="sales" header="Sales" format="c0"> * </wj-flex-grid-column> * <wj-flex-grid-column binding="expenses" header="Expenses" format="c0"> * </wj-flex-grid-column> * <wj-flex-grid-column binding="active" header="Active"> * </wj-flex-grid-column> * <wj-flex-grid-column binding="date" header="Date"> * </wj-flex-grid-column> * </wj-flex-grid>* * The code sets the itemsSource property to a collection that contains the grid * data, then specifies the columns to display using wj-flex-grid-column * components. */ export declare var WjFlexGrid: any; /** * Vue component for the {@link wijmo.grid.Column} class. * * The wj-flex-grid-column component should be contained in * a {@link wijmo.vue2.grid.WjFlexGrid} component. * * The wj-flex-grid-column component may contain * a {@link wijmo.vue2.grid.WjFlexGridCellTemplate} child component. * * The component supports all properties and events of the pure JavaScript {@link wijmo.grid.Column} class it represents. * * The component includes an initialized event that is raised when the control is initialized after it is added to the page. * You can use this event to perform further initialization in addition to setting properties in markup. * The signature of the handler function is the same as any other Wijmo event handlers. */ export declare var WjFlexGridColumn: any; /** * Vue component for the {@link wijmo.grid.ColumnGroup} class. * * The wj-flex-grid-column-group component should be contained in * one of the following components: * {@link wijmo.vue2.grid.WjFlexGrid} * or {@link wijmo.vue2.grid.WjFlexGridColumnGroup}. * * The wj-flex-grid-column-group component may contain * the following child components: * {@link wijmo.vue2.grid.WjFlexGridColumnGroup} * and {@link wijmo.vue2.grid.WjFlexGridCellTemplate}. * * The component supports all properties and events of the pure JavaScript {@link wijmo.grid.ColumnGroup} class it represents. * * The component includes an initialized event that is raised when the control is initialized after it is added to the page. * You can use this event to perform further initialization in addition to setting properties in markup. * The signature of the handler function is the same as any other Wijmo event handlers. */ export declare var WjFlexGridColumnGroup: any; interface ICellTemplateInfoVue extends wjcInteropGrid.ICellTemplateInfo { _instantiateTemplate(parent: HTMLElement, dataContext: any): any; } interface ICellTemplateCacheVue extends wjcInteropGrid.ICellTemplateCache { cellCmp: typeof CellTemplateCmp; } interface ICellRenderingInfoVue extends wjcInteropGrid.ICellRenderingInfo { templateContext: ICellTemplateInfoVue; templateCache: ICellTemplateCacheVue; } export declare class DirectiveCellFactory extends wjcInteropGrid.DirectiveCellFactoryBase { protected shouldInstantiate(cellInfo: ICellRenderingInfoVue): boolean; protected renderTemplate(cellInfo: ICellRenderingInfoVue, initNew: boolean): void; protected disposeTemplate(cell: HTMLElement, templateCache: ICellTemplateCacheVue, templateContext: ICellTemplateInfoVue): void; protected clearCell(cell: HTMLElement): void; protected applyImmediately(cellInfo: ICellRenderingInfoVue): void; protected flushPendingEvents(control: wjcCore.Control): void; protected getEditorFocusFlag(): boolean; protected setEditorFocusFlag(value: boolean): void; } export declare const WjFlexGridCellTemplateDefinition: { props: { cellOverflow: { default: any; }; cellType: { default: any; }; autoSizeRows: { default: boolean; }; forceFullEdit: { default: boolean; }; }; render: (createElement: any) => any; mounted: () => void; methods: { _attachToControl: () => void; _detachFromControl: () => void; _instantiateTemplate: (parent: HTMLElement, dataContext: any) => any; }; }; /** * Vue component for the {@link FlexGrid} cell templates. * * The wj-flex-grid-cell-template component defines a template for a certain * cell type in {@link FlexGrid}. The template element must contain a cellType attribute that * specifies the {@link wijmo.vue2.grid.CellTemplateType}. Depending on the template's cell type, * the wj-flex-grid-cell-template element must be a child * of either {@link wijmo.vue2.grid.WjFlexGrid} * or {@link wijmo.vue2.grid.WjFlexGridColumn} components. * * Column-specific cell templates must be contained in wj-flex-grid-column * components, and cells that are not column-specific (like row header or top left cells) * must be contained in the wj-flex-grid component. * * The wj-flex-grid-cell-template element * may contain an arbitrary HTML fragment with Vue interpolation expressions and * other components and directives. * * Bindings in HTML fragment can use scoped slot properties that store cell specific data. * The properties are col, row, and item, which refer to the {@link Column}, * {@link Row}, and Row.dataItem objects pertaining to the cell. * * For cell types like Group and CellEdit, an additional value * property containing an unformatted cell value is provided. * * To reference slot properties, you can use either a new v-slot directive right on the * wj-flex-grid-cell-template element (it's available in Vue 2.6.0 or higher), * or an old slot-scope directive on the <template> element nested in * wj-flex-grid-cell-template. * * For example, here is a * {@link FlexGrid} control with templates for row header cells and, regular * and column header cells of the Country column: * * ```html * *