/*!
*
* 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.angular2.grid}
* Contains Angular 2 components for the wijmo.grid module.
*
* wijmo.angular2.grid is an external TypeScript module that can be imported to your code
* using its ambient module name. For example:
*
*
<p>Here is a data bound FlexGrid control with four columns:</p>
* <wj-flex-grid [itemsSource]="data">
* <wj-flex-grid-column
* [header]="'Country'"
* [binding]="'country'">
* </wj-flex-grid-column>
* <wj-flex-grid-column
* [header]="'Sales'"
* [binding]="'sales'">
* </wj-flex-grid-column>
* <wj-flex-grid-column
* [header]="'Expenses'"
* [binding]="'expenses'">
* </wj-flex-grid-column>
* <wj-flex-grid-column
* [header]="'Downloads'"
* [binding]="'downloads'">
* </wj-flex-grid-column>
* </wj-flex-grid>
*
*/
/**
*
*/
export declare var ___keepComment: any;
import { EventEmitter, AfterViewInit, ElementRef, Injector, ViewContainerRef, TemplateRef, OnInit, OnDestroy, ChangeDetectorRef, EmbeddedViewRef } from '@angular/core';
import { IWjComponentMetadata, IWjComponentMeta } from 'wijmo/wijmo.angular2.directiveBase';
import { DirectiveCellFactoryBase, ICellTemplateInfo, ICellRenderingInfo, ICellTemplateCache, CellBindingsData } from 'wijmo/wijmo.interop.grid';
import * as ngCore from '@angular/core';
import * as wjcCore from 'wijmo/wijmo';
import * as wjcGrid from 'wijmo/wijmo.grid';
import * as wjcInteropGrid from 'wijmo/wijmo.interop.grid';
/**
* Represents a cell template types enumeration.
*/
export import CellTemplateType = wjcInteropGrid.GridCellTemplateType;
declare var wjFlexGridMeta: IWjComponentMeta;
export { wjFlexGridMeta };
/**
* Angular 2 component for the {@link wijmo.grid.FlexGrid} control.
*
* Use the wj-flex-grid component to add FlexGrid controls to your
* Angular 2 applications. For details about Angular 2 markup syntax, see
* Angular 2 Markup. For example:
*
*
<p>Here is a data bound FlexGrid control with four columns:</p>
* <wj-flex-grid [itemsSource]="data">
* <wj-flex-grid-column
* [header]="'Country'"
* [binding]="'country'">
* </wj-flex-grid-column>
* <wj-flex-grid-column
* [header]="'Sales'"
* [binding]="'sales'">
* </wj-flex-grid-column>
* <wj-flex-grid-column
* [header]="'Expenses'"
* [binding]="'expenses'">
* </wj-flex-grid-column>
* <wj-flex-grid-column
* [header]="'Downloads'"
* [binding]="'downloads'">
* </wj-flex-grid-column>
* </wj-flex-grid>
*
* The WjFlexGrid component is derived from the FlexGrid control and
* inherits all its properties, events and methods.
* The following properties are not available for binding in templates:
* scrollPosition, selection and columnLayout properties.
*
* The wj-flex-grid component may contain the following child components:
* {@link wijmo.angular2.grid.detail.WjFlexGridDetail}
* , {@link wijmo.angular2.grid.filter.WjFlexGridFilter}
* , {@link wijmo.angular2.grid.WjFlexGridColumn}
* , {@link wijmo.angular2.grid.WjFlexGridColumnGroup}
* and {@link wijmo.angular2.grid.WjFlexGridCellTemplate}.
*/
export declare class WjFlexGrid extends wjcGrid.FlexGrid implements OnInit, OnDestroy, AfterViewInit {
cdRef: ChangeDetectorRef;
static readonly meta: IWjComponentMetadata;
private _wjBehaviour;
/**
* Indicates whether the component has been initialized by Angular.
* Changes its value from false to true right before triggering the initialized event.
*/
isInitialized: boolean;
/**
* This event is triggered after the component has been initialized by Angular, that is
* all bound properties have been assigned and child components (if any) have been initialized.
*/
initialized: EventEmitter;
/**
* Defines a name of a property represented by [(ngModel)] directive (if specified).
* Default value is ''.
*/
wjModelProperty: string;
/**
* Angular (EventEmitter) version of the Wijmo gotFocus event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional gotFocus Wijmo event name.
*/
gotFocusNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo lostFocus event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional lostFocus Wijmo event name.
*/
lostFocusNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo refreshing event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional refreshing Wijmo event name.
*/
refreshingNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo refreshed event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional refreshed Wijmo event name.
*/
refreshedNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo invalidInput event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional invalidInput Wijmo event name.
*/
invalidInputNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo beginningEdit event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional beginningEdit Wijmo event name.
*/
beginningEditNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo cellEditEnded event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional cellEditEnded Wijmo event name.
*/
cellEditEndedNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo cellEditEnding event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional cellEditEnding Wijmo event name.
*/
cellEditEndingNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo prepareCellForEdit event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional prepareCellForEdit Wijmo event name.
*/
prepareCellForEditNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo formatItem event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional formatItem Wijmo event name.
*/
formatItemNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo resizingColumn event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional resizingColumn Wijmo event name.
*/
resizingColumnNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo resizedColumn event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional resizedColumn Wijmo event name.
*/
resizedColumnNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo autoSizingColumn event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional autoSizingColumn Wijmo event name.
*/
autoSizingColumnNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo autoSizedColumn event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional autoSizedColumn Wijmo event name.
*/
autoSizedColumnNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo draggingColumn event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional draggingColumn Wijmo event name.
*/
draggingColumnNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo draggingColumnOver event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional draggingColumnOver Wijmo event name.
*/
draggingColumnOverNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo draggedColumn event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional draggedColumn Wijmo event name.
*/
draggedColumnNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo sortingColumn event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional sortingColumn Wijmo event name.
*/
sortingColumnNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo sortedColumn event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional sortedColumn Wijmo event name.
*/
sortedColumnNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo pinningColumn event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional pinningColumn Wijmo event name.
*/
pinningColumnNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo pinnedColumn event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional pinnedColumn Wijmo event name.
*/
pinnedColumnNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo resizingRow event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional resizingRow Wijmo event name.
*/
resizingRowNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo resizedRow event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional resizedRow Wijmo event name.
*/
resizedRowNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo autoSizingRow event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional autoSizingRow Wijmo event name.
*/
autoSizingRowNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo autoSizedRow event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional autoSizedRow Wijmo event name.
*/
autoSizedRowNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo draggingRow event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional draggingRow Wijmo event name.
*/
draggingRowNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo draggingRowOver event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional draggingRowOver Wijmo event name.
*/
draggingRowOverNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo draggedRow event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional draggedRow Wijmo event name.
*/
draggedRowNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo deletingRow event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional deletingRow Wijmo event name.
*/
deletingRowNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo deletedRow event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional deletedRow Wijmo event name.
*/
deletedRowNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo loadingRows event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional loadingRows Wijmo event name.
*/
loadingRowsNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo loadedRows event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional loadedRows Wijmo event name.
*/
loadedRowsNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo rowEditStarting event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional rowEditStarting Wijmo event name.
*/
rowEditStartingNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo rowEditStarted event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional rowEditStarted Wijmo event name.
*/
rowEditStartedNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo rowEditEnding event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional rowEditEnding Wijmo event name.
*/
rowEditEndingNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo rowEditEnded event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional rowEditEnded Wijmo event name.
*/
rowEditEndedNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo rowAdded event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional rowAdded Wijmo event name.
*/
rowAddedNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo groupCollapsedChanging event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional groupCollapsedChanging Wijmo event name.
*/
groupCollapsedChangingNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo groupCollapsedChanged event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional groupCollapsedChanged Wijmo event name.
*/
groupCollapsedChangedNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo columnGroupCollapsedChanging event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional columnGroupCollapsedChanging Wijmo event name.
*/
columnGroupCollapsedChangingNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo columnGroupCollapsedChanged event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional columnGroupCollapsedChanged Wijmo event name.
*/
columnGroupCollapsedChangedNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo itemsSourceChanging event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional itemsSourceChanging Wijmo event name.
*/
itemsSourceChangingNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo itemsSourceChanged event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional itemsSourceChanged Wijmo event name.
*/
itemsSourceChangedNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo selectionChanging event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional selectionChanging Wijmo event name.
*/
selectionChangingNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo selectionChanged event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional selectionChanged Wijmo event name.
*/
selectionChangedNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo scrollPositionChanged event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional scrollPositionChanged Wijmo event name.
*/
scrollPositionChangedNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo updatingView event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional updatingView Wijmo event name.
*/
updatingViewNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo updatedView event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional updatedView Wijmo event name.
*/
updatedViewNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo updatingLayout event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional updatingLayout Wijmo event name.
*/
updatingLayoutNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo updatedLayout event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional updatedLayout Wijmo event name.
*/
updatedLayoutNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo pasting event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional pasting Wijmo event name.
*/
pastingNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo pasted event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional pasted Wijmo event name.
*/
pastedNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo pastingCell event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional pastingCell Wijmo event name.
*/
pastingCellNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo pastedCell event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional pastedCell Wijmo event name.
*/
pastedCellNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo copying event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional copying Wijmo event name.
*/
copyingNg: EventEmitter;
/**
* Angular (EventEmitter) version of the Wijmo copied event for programmatic access.
* Use this event name if you want to subscribe to the Angular version of the event in code.
* In template bindings use the conventional copied Wijmo event name.
*/
copiedNg: EventEmitter;
constructor(elRef: ElementRef, injector: Injector, parentCmp: any, cdRef: ChangeDetectorRef);
/**
* If you create a custom component inherited from a Wijmo component, you can override this
* method and perform necessary initializations that you usually do in a class constructor.
* This method is called in the last line of a Wijmo component constructor and allows you
* to not declare your custom component's constructor at all, thus preventing you from a necessity
* to maintain constructor parameters and keep them in synch with Wijmo component's constructor parameters.
*/
created(): void;
ngOnInit(): void;
ngAfterViewInit(): void;
ngOnDestroy(): void;
addEventListener(target: EventTarget, type: string, fn: any, capture?: boolean): void;
_edtFocus: boolean;
startEditing(fullEdit?: boolean, r?: number, c?: number, focus?: boolean, evt?: any): boolean;
onCellEditEnding(e: wjcGrid.CellEditEndingEventArgs): boolean;
}
declare var wjFlexGridColumnMeta: IWjComponentMeta;
export { wjFlexGridColumnMeta };
/**
* Angular 2 component for the {@link wijmo.grid.Column} class.
*
* The wj-flex-grid-column component must be
* contained in a {@link wijmo.angular2.grid.WjFlexGrid} component.
*
* Use the wj-flex-grid-column component to add Column controls to your
* Angular 2 applications. For details about Angular 2 markup syntax, see
* Angular 2 Markup.
*
* The WjFlexGridColumn component is derived from the Column class and
* inherits all its properties, events and methods.
*
* The wj-flex-grid-column component may contain a {@link wijmo.angular2.grid.WjFlexGridCellTemplate} child directive.
*/
export declare class WjFlexGridColumn extends wjcGrid.Column implements OnInit, OnDestroy, AfterViewInit {
cdRef: ChangeDetectorRef;
static readonly meta: IWjComponentMetadata;
private _wjBehaviour;
/**
* Indicates whether the component has been initialized by Angular.
* Changes its value from false to true right before triggering the initialized event.
*/
isInitialized: boolean;
/**
* This event is triggered after the component has been initialized by Angular, that is
* all bound properties have been assigned and child components (if any) have been initialized.
*/
initialized: EventEmitter;
/**
* Gets or sets a name of a property that this component is assigned to.
* Default value is 'columns'.
*/
wjProperty: string;
/**
* Allows you to override the global WjOptions.asyncBindings setting for this specific component.
* See the WjOptions.{@link WjOptions.asyncBindings} property description for details.
*/
asyncBindings: boolean;
/**
* This event is used to implement two-way binding to the isSelected property.
* It's triggered when the property value changes, with the event argument holding the new property value.
* You can bind handlers to this event in templates using the isSelectedChange event name.
*/
isSelectedChangePC: EventEmitter;
constructor(elRef: ElementRef, injector: Injector, parentCmp: any, cdRef: ChangeDetectorRef);
/**
* If you create a custom component inherited from a Wijmo component, you can override this
* method and perform necessary initializations that you usually do in a class constructor.
* This method is called in the last line of a Wijmo component constructor and allows you
* to not declare your custom component's constructor at all, thus preventing you from a necessity
* to maintain constructor parameters and keep them in synch with Wijmo component's constructor parameters.
*/
created(): void;
ngOnInit(): void;
ngAfterViewInit(): void;
ngOnDestroy(): void;
}
declare var wjFlexGridColumnGroupMeta: IWjComponentMeta;
export { wjFlexGridColumnGroupMeta };
/**
* Angular 2 component for the {@link wijmo.grid.ColumnGroup} class.
*
* The wj-flex-grid-column-group component must be
* contained in one of the following components:
* {@link wijmo.angular2.grid.WjFlexGrid}
* or {@link wijmo.angular2.grid.WjFlexGridColumnGroup}.
*
* Use the wj-flex-grid-column-group component to add ColumnGroup controls to your
* Angular 2 applications. For details about Angular 2 markup syntax, see
* Angular 2 Markup.
*
* The WjFlexGridColumnGroup component is derived from the ColumnGroup class and
* inherits all its properties, events and methods.
*
* The wj-flex-grid-column-group component may contain the following child components:
* {@link wijmo.angular2.grid.WjFlexGridColumnGroup}
* and {@link wijmo.angular2.grid.WjFlexGridCellTemplate}.
*/
export declare class WjFlexGridColumnGroup extends wjcGrid.ColumnGroup implements OnInit, OnDestroy, AfterViewInit {
static readonly meta: IWjComponentMetadata;
private _wjBehaviour;
/**
* Indicates whether the component has been initialized by Angular.
* Changes its value from false to true right before triggering the initialized event.
*/
isInitialized: boolean;
/**
* This event is triggered after the component has been initialized by Angular, that is
* all bound properties have been assigned and child components (if any) have been initialized.
*/
initialized: EventEmitter;
/**
* Gets or sets a name of a property that this component is assigned to.
* Default value is 'columnGroups'.
*/
wjProperty: string;
/**
* Allows you to override the global WjOptions.asyncBindings setting for this specific component.
* See the WjOptions.{@link WjOptions.asyncBindings} property description for details.
*/
asyncBindings: boolean;
/**
* This event is used to implement two-way binding to the isSelected property.
* It's triggered when the property value changes, with the event argument holding the new property value.
* You can bind handlers to this event in templates using the isSelectedChange event name.
*/
isSelectedChangePC: EventEmitter;
constructor(elRef: ElementRef, injector: Injector, parentCmp: any);
/**
* If you create a custom component inherited from a Wijmo component, you can override this
* method and perform necessary initializations that you usually do in a class constructor.
* This method is called in the last line of a Wijmo component constructor and allows you
* to not declare your custom component's constructor at all, thus preventing you from a necessity
* to maintain constructor parameters and keep them in synch with Wijmo component's constructor parameters.
*/
created(): void;
ngOnInit(): void;
ngAfterViewInit(): void;
ngOnDestroy(): void;
}
/**
* Angular 2 directive for the {@link FlexGrid} cell templates.
*
* The wjFlexGridCellTemplate directive defines a template for a certain
* cell type in {@link FlexGrid}. The template should be defined on a <ng-template> element
* and must contain a cellType attribute that
* specifies the {@link wijmo.angular2.grid.CellTemplateType}. Depending on the template's cell type,
* the <ng-template> element with the wjFlexGridCellTemplate directive must be a child
* of either {@link wijmo.angular2.grid.WjFlexGrid}
* or {@link wijmo.angular2.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 <ng-template> element with the wjFlexGridCellTemplate directive
* may contain an arbitrary HTML fragment with Angular 2 interpolation expressions and
* other components and directives.
*
* Bindings in HTML fragment can use the cell local template variable containing the cell context object,
* with col, row, and item properties that 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. For example, here is a
* {@link FlexGrid} control with templates for row header cells and, regular
* and column header cells of the Country column:
*
* ```typescript
* // component.ts
* import * as wjGrid from 'wijmo/wijmo.angular2.grid';
*
* @Component({
* templateUrl: './component.html',
* selector: 'my-cmp',
* })
* export class MyCmp {
* data: any[];
* }
* ```
* ```html
*
*
*
* {{cell.row.index}}
*
*
* ...
*
*
*
*
*
* {{cell.col.header}}
*
*
*
* {{cell.item.country}}
*
*
*
*
* ```
*
* The cellType attribute takes any of the following enumerated values:
*
* Cell
*
* Defines a regular (data) cell template. Must be a child of the {@link wijmo.angular2.grid.WjFlexGridColumn} component.
* For example, this cell template shows flags in the cells of Country column:
*
* ```html
*
*
*
* {{cell.item.country}}
*
*
* ```
*
* If Group template is not provided for a hierarchical {@link FlexGrid} (that is, one with the childItemsPath property
* specified), non-header cells in group rows of
* this {@link Column} also use this template.
*
* CellEdit
*
* Defines a template for a cell in edit mode. Must be a child of the {@link wijmo.angular2.grid.WjFlexGridColumn} component.
* This cell type has an additional cell.value property available for binding. It contains the
* original cell value before editing, and the updated value after editing.
* For example, here is a template that uses the Wijmo {@link InputNumber} control as an editor
* for the "Sales" column:
*
* ```html
*
*
*
*
*
* ```
*
* ColumnHeader
*
* Defines a template for a column header cell. Must be a child of the {@link wijmo.angular2.grid.WjFlexGridColumn} component.
* For example, this template adds an image to the header of the "Country" column:
*
* ```html
*
*
*
* {{cell.col.header}}
*
*
* ```
*
* RowHeader
*
* Defines a template for a row header cell. Must be a child of the {@link wijmo.angular2.grid.WjFlexGrid} component.
* For example, this template shows row indices in the row headers:
*
* ```html
*
*
* {{cell.row.index + 1}}
*
*
* ```
*
* Note that this template is applied to a row header cell, even if it is in a row that is
* in edit mode. In order to provide an edit-mode version of a row header cell with alternate
* content, define the RowHeaderEdit template.
*
* RowHeaderEdit
*
* Defines a template for a row header cell in edit mode. Must be a child of the
* {@link wijmo.angular2.grid.WjFlexGrid} component. For example, this template shows dots in the header
* of rows being edited:
*
* ```html
*
*
* ...
*
*
* ```
*
* Use the following RowHeaderEdit template to add the standard edit-mode indicator to cells where the RowHeader template
* applies:
*
* ```html
*
*
* {{✎}}
*
*
* ```
*
* TopLeft
*
* Defines a template for the top left cell. Must be a child of the {@link wijmo.angular2.grid.WjFlexGrid} component.
* For example, this template shows a down/right glyph in the top-left cell of the grid:
*
* ```html
*
*
*
*
*
* ```
*
* GroupHeader
*
* Defines a template for a group header cell in a {@link GroupRow}. Must be a child of the {@link wijmo.angular2.grid.WjFlexGridColumn} component.
*
* The cell.row property contains an instance of the GroupRow class. If the grouping comes
* from {@link CollectionView}, the cell.item property references the {@link CollectionViewGroup} object.
*
* For example, this template uses a checkbox element as an expand/collapse toggle:
*
* ```html
*
*
*
* {{cell.item.name}} ({{cell.item.items.length}} items)
*
*
* ```
*
* Group
*
* Defines a template for a regular cell (not a group header) in a {@link GroupRow}. Must be a child of the
* {@link wijmo.angular2.grid.WjFlexGridColumn} component. This cell type has an additional cell.value property available for
* binding. In cases where columns have the aggregate property specified, it contains the unformatted
* aggregate value.
*
* For example, this template shows aggregate's value and kind for group row cells in the "Sales"
* column:
*
* ```html
*
*
* Average: {{cell.value | number:'1.0-0'}}
*
*
* ```
*
* ColumnFooter
*
* Defines a template for a regular cell in a columnFooters panel. Must be a child of the
* {@link wijmo.angular2.grid.WjFlexGridColumn} component. This cell type has an additional cell.value
* property available for binding that contains a cell value.
*
* For example, this template shows aggregate's value and kind for a footer cell in the "Sales"
* column:
*
* ```html
*
*
* Average: {{cell.value | number:'1.0-0'}}
*
*
* ```
*
* BottomLeft
*
* Defines a template for the bottom left cells (at the intersection of the row header and column footer cells).
* Must be a child of the {@link wijmo.angular2.grid.WjFlexGrid} component.
* For example, this template shows a sigma glyph in the bottom-left cell of the grid:
*
* ```html
*
*
* Σ
*
*
* ```
*
* NewCellTemplate
*
* Defines a cell in a new row template. Must be a child of the {@link wijmo.angular2.grid.WjFlexGridColumn} component.
* Note that the cell.item property is undefined for this type of a cell.
* For example, this cell template shows a placeholder in the Date column's cell in the "new row" item:
*
* ```html
*
*
* Enter a date here
*
*
* ```
*/
export declare class WjFlexGridCellTemplate implements ngCore.OnInit, ngCore.OnDestroy {
viewContainerRef: ViewContainerRef;
templateRef: TemplateRef;
elRef: ElementRef;
cdRef: ChangeDetectorRef;
wjFlexGridCellTemplate: any;
cellTypeStr: CellTemplateType;
/**
* Defines the style.overflow property value for cells.
*/
cellOverflow: string;
/**
* Defines the type of cell to which the template is applied. String enum member
* names can be used to specify the property value as well.
*/
cellType: any;
valuePaths: Object;
/**
* Gets or sets a value indicating whether the cell template will increase grid's default row height
* to accomodate cells content. Defaults to true.
*/
autoSizeRows: boolean;
/**
* For cell edit templates, indicates whether cell editing forcibly starts in full edit mode,
* regardless of how the editing was initiated. In full edit mode pressing cursor keys don't finish editing.
* Defaults to true.
*/
forceFullEdit: boolean;
grid: wjcGrid.FlexGrid;
column: wjcGrid.Column;
ownerControl: any;
constructor(viewContainerRef: ViewContainerRef, templateRef: TemplateRef, elRef: ElementRef, parentCmp: any, injector: Injector, cdRef: ChangeDetectorRef);
ngOnInit(): void;
ngOnDestroy(): void;
_instantiateTemplate(parent: HTMLElement, dataContext: any): {
viewRef: ngCore.EmbeddedViewRef;
rootElement: Element;
};
private _attachToControl;
}
interface ICellRenderingInfoNg extends ICellRenderingInfo {
templateContext: ICellTemplateContextNg;
templateCache: ICellTemplateCacheNg;
}
interface ICellTemplateCacheNg extends ICellTemplateCache {
viewRef: EmbeddedViewRef;
}
interface ICellTemplateContextNg extends ICellTemplateInfo {
cdRef: ChangeDetectorRef;
viewContainerRef: ViewContainerRef;
_instantiateTemplate(parent: HTMLElement, dataContext: any): {
viewRef: EmbeddedViewRef;
rootElement: Element;
};
}
export declare class DirectiveCellFactory extends DirectiveCellFactoryBase {
private _gridCdRef;
private _needsCdCheck;
grid: WjFlexGrid;
constructor(grid: WjFlexGrid, gridCdRef: ChangeDetectorRef);
protected _updatedViewHandler(): void;
protected shouldInstantiate(cellInfo: ICellRenderingInfoNg): boolean;
protected renderTemplate(cellInfo: ICellRenderingInfoNg, initNew: boolean): void;
protected setBindingsData(context: any, row: wjcGrid.Row, col: wjcGrid.Column, dataItem: any, cellValue: any, valuePaths: Object): CellBindingsData;
protected disposeTemplate(cell: HTMLElement, templateCache: ICellTemplateCacheNg, templateContext: ICellTemplateContextNg): void;
protected clearCell(cell: HTMLElement): void;
protected applyImmediately(cellInfo: ICellRenderingInfoNg): void;
protected flushPendingEvents(control: wjcCore.Control): void;
protected getEditorFocusFlag(): boolean;
protected setEditorFocusFlag(value: boolean): void;
protected checkHeight(cellInfo: ICellRenderingInfo): void;
}
export declare class WjGridModule {
}