import { ColumnDataSchemaModel, ColumnTemplateProp, EditCell, EditorBase, HyperFunc, VNode, EditorCtr } from '@revolist/revogrid'; export * from '@revolist/revogrid'; import * as i0 from '@angular/core'; import { NgZone, EventEmitter, ChangeDetectorRef, ElementRef, ComponentRef, Type, Injector } from '@angular/core'; import { MultiDimensionType, BeforeSaveDataDetails, BeforeRangeSaveDataDetails, AfterEditEvent, ChangedRange, FocusAfterRenderEvent, ColumnRegular, DimensionRows, SortingOrder, RowDragStartDetails, FocusedData, DataType, ColumnGrouping, ColumnCollection, ColumnProp, FilterCollectionItem, ViewPortScrollEvent, DataInput, SortingConfig, Components, Theme } from '@revolist/revogrid/standalone'; declare class RevoGrid { protected z: NgZone; protected el: HTMLRevoGridElement; contentsizechanged: EventEmitter>; beforeedit: EventEmitter>; beforerangeedit: EventEmitter>; afteredit: EventEmitter>; beforeautofill: EventEmitter>; beforerange: EventEmitter>; afterfocus: EventEmitter>; roworderchanged: EventEmitter>; beforesorting: EventEmitter>; beforesourcesortingapply: EventEmitter>; beforesortingapply: EventEmitter>; rowdragstart: EventEmitter>; headerclick: EventEmitter>; beforecellfocus: EventEmitter>; beforefocuslost: EventEmitter>; beforesourceset: EventEmitter>; beforeanysource: EventEmitter>; aftersourceset: EventEmitter>; afteranysource: EventEmitter>; beforecolumnsgather: EventEmitter>; beforecolumnsset: EventEmitter>; beforecolumnapplied: EventEmitter>; aftercolumnsset: EventEmitter>; beforefilterapply: EventEmitter; }>>; beforefiltertrimmed: EventEmitter; itemsToFilter: Record; }>>; beforetrimmed: EventEmitter; trimmedType: string; type: string; }>>; aftertrimmed: EventEmitter>; viewportscroll: EventEmitter>; beforeexport: EventEmitter>; beforeeditstart: EventEmitter>; aftercolumnresize: EventEmitter>; beforerowdefinition: EventEmitter>; filterconfigchanged: EventEmitter>; sortingconfigchanged: EventEmitter>; rowheaderschanged: EventEmitter>; beforegridrender: EventEmitter>; aftergridrender: EventEmitter>; aftergridinit: EventEmitter>; additionaldatachanged: EventEmitter>; afterthemechanged: EventEmitter>; created: EventEmitter>; constructor(c: ChangeDetectorRef, r: ElementRef, z: NgZone); static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare interface RevoGrid extends Components.RevoGrid { /** * New content size has been applied. The size excludes the header. Currently, the event responsible for applying the new content size does not provide the actual size. To retrieve the actual content size, you can utilize the `getContentSize` function after the event has been triggered. */ contentsizechanged: EventEmitter>; /** * Before the data is edited. To prevent the default behavior of editing data and use your own implementation, call `e.preventDefault()`. To override the edit result with your own value, set the `e.val` property to your desired value. */ beforeedit: EventEmitter>; /** * Before applying range data, specifically when a range selection occurs. To customize the data and prevent the default edit data from being set, you can call `e.preventDefault()`. */ beforerangeedit: EventEmitter>; /** * After data applied or range changed. */ afteredit: EventEmitter>; /** * Before autofill is applied. To prevent the default behavior of applying the edit data, you can call `e.preventDefault()`. */ beforeautofill: EventEmitter>; /** * Before autofill is applied. Runs before beforeautofill event. Use e.preventDefault() to prevent range. */ beforerange: EventEmitter>; /** * After focus render finished. Can be used to access a focus element through `event.target`. This is just a duplicate of `afterfocus` from `revogr-focus.tsx`. */ afterfocus: EventEmitter>; /** * Before the order of `rgRow` is applied. To prevent the default behavior of changing the order of `rgRow`, you can call `e.preventDefault()`. */ roworderchanged: EventEmitter>; /** * By `SortingPlugin`
Triggered immediately after header click.
First in sorting event sequence. Ff this event stops no other event called.
Use `e.preventDefault()` to prevent sorting. */ beforesorting: EventEmitter>; /** * By `SortingPlugin`
Same as `beforesorting` but triggered after `beforeanysource` (when source is changed).
Use `e.preventDefault()` to prevent sorting data change. */ beforesourcesortingapply: EventEmitter>; /** * By `SortingPlugin`
After `beforesorting`
Triggered after column data updated with new sorting order.
Use `e.preventDefault()` to prevent sorting data change. */ beforesortingapply: EventEmitter>; /** * This event is triggered when the row order change is started. To prevent the default behavior of changing the row order, you can call `e.preventDefault()`. To change the item name at the start of the row order change, you can set `e.text` to the desired new name. */ rowdragstart: EventEmitter>; /** * On header click. */ headerclick: EventEmitter>; /** * Before the cell focus is changed. To prevent the default behavior of changing the cell focus, you can call `e.preventDefault()`. */ beforecellfocus: EventEmitter>; /** * Before the grid focus is lost. To prevent the default behavior of changing the cell focus, you can call `e.preventDefault()`. */ beforefocuslost: EventEmitter>; /** * Before main source/rows data apply. You can override data source here */ beforesourceset: EventEmitter>; /** * Before data apply on any source type. Can be source from pinned and main viewport. You can override data source here */ beforeanysource: EventEmitter>; /** * After main source/rows updated */ aftersourceset: EventEmitter>; /** * Emitted after each source update, whether from the pinned or main viewport. Useful for tracking all changes originating from sources in both the pinned and main viewports. */ afteranysource: EventEmitter>; /** * Emitted before user column definitions are gathered into the internal column collection. Listeners can replace `detail.columns` to rewrite the raw column set before RevoGrid normalizes it. */ beforecolumnsgather: EventEmitter>; /** * Emitted before a column update is applied. Listeners can use this event to perform any necessary actions or modifications before the column update is finalized. */ beforecolumnsset: EventEmitter>; /** * Emitted before a column update is applied, after the column set is gathered and the viewport is updated. Useful for performing actions or modifications before the final application of the column update. */ beforecolumnapplied: EventEmitter>; /** * Column updated */ aftercolumnsset: EventEmitter>; /** * Emitted before applying a filter to the data source. Use e.preventDefault() to prevent cell focus change. Modify if you need to change filters. */ beforefilterapply: EventEmitter; }>>; /** * Emitted before applying a filter to the data source. Use e.preventDefault() to prevent the default behavior of trimming values and applying the filter. Modify the `collection` property if you want to change the filters. Modify the `itemsToFilter` property if you want to filter the indexes for trimming. */ beforefiltertrimmed: EventEmitter; itemsToFilter: Record; }>>; /** * Emitted before trimming values. Use e.preventDefault() to prevent the default behavior of trimming values. Modify the `trimmed` property if you want to filter the indexes for trimming. */ beforetrimmed: EventEmitter; trimmedType: string; type: string; }>>; /** * Emitted after trimmed values have been applied. Useful for notifying when trimming of values has taken place. */ aftertrimmed: EventEmitter>; /** * Emitted when the viewport is scrolled. Useful for tracking viewport scrolling events. */ viewportscroll: EventEmitter>; /** * Before export Use e.preventDefault() to prevent export Replace data in Event in case you want to modify it in export */ beforeexport: EventEmitter>; /** * Emitted before editing starts. Use e.preventDefault() to prevent the default edit behavior. */ beforeeditstart: EventEmitter>; /** * Emitted after column resizing. Useful for retrieving the resized columns. */ aftercolumnresize: EventEmitter>; /** * Emitted before the row definition is applied. Useful for modifying or preventing the default row definition behavior. */ beforerowdefinition: EventEmitter>; /** * Emitted when the filter configuration is changed */ filterconfigchanged: EventEmitter>; /** * Emitted when the sorting configuration is changed SortingPlugin subsribed to this event */ sortingconfigchanged: EventEmitter>; /** * Emmited when the row headers are changed. */ rowheaderschanged: EventEmitter>; /** * Emmited before the grid is rendered. */ beforegridrender: EventEmitter>; /** * Emmited after the grid is rendered. */ aftergridrender: EventEmitter>; /** * Emmited after the grid is initialized. Connected to the DOM. */ aftergridinit: EventEmitter>; /** * Emmited after the additional data is changed */ additionaldatachanged: EventEmitter>; /** * Emmited after the theme is changed */ afterthemechanged: EventEmitter>; /** * Emmited after grid created */ created: EventEmitter>; } /** * Angular Adapter Function: * Handles the rendering and lifecycle of Angular components within StencilJS using updated Angular APIs. */ interface AngularElement extends HTMLElement { componentRef?: ComponentRef; } interface RenderedComponent { update: (newProps: T) => void; destroy: () => void; } declare function TemplateConstructor(el: AngularElement | null, AngularComponent: Type, initialProps: T | undefined, injector: Injector, lastEl?: RenderedComponent | null): RenderedComponent | null; declare const Template: (AngularComponent: Type, customProps?: any, injector?: Injector) => (h: any, p: ColumnDataSchemaModel | ColumnTemplateProp, addition?: any) => any; /** * Data passed to editor */ type EditorType = { column: ColumnDataSchemaModel; save: (value: any, preventFocus?: boolean) => void; close: (focusNext?: boolean) => void; } & Partial; declare class EditorAdapter implements EditorBase { private EditorComponent; private injector; column: ColumnDataSchemaModel; private save; private close; element: AngularElement | null; editCell?: EditCell; private renderedComponent; constructor(EditorComponent: Type, injector: Injector, column: ColumnDataSchemaModel, save: (value: any, preventFocus?: boolean) => void, close: (focusNext?: boolean) => void); componentDidRender(): void; disconnectedCallback(): void; render(h: HyperFunc): VNode; } /** * Create editor constructor. * This function creates editor constructor by wrapping it with EditorAdapter * which is responsible for connecting editor with grid. */ declare const Editor: (EditorComponent: Type, injector?: Injector) => EditorCtr; export { Editor, EditorAdapter, RevoGrid, Template, TemplateConstructor }; export type { AngularElement, EditorType, RenderedComponent };