interface UIGridColumn { name: string; visible?: boolean; lookup?: any; columnOrder?: number; filterUrl?: string, allowHide?: boolean; filter?: UIColumnFilter, id?: string; sortable?: boolean; searchable?: boolean; label?: string; cellTemplate?: (container, data) => void; editable?: boolean; specialFormat?: string; defaultSort?: boolean; defaultSortOrder?: string; openWithCommonEditor?: boolean; linkFormat?: string; valueFormat?: string; openLinkInModal?: boolean; relateType?: string; rowFilter?: { filterValue: any, selectedFilterOperation: string }; } interface UIGridFilter { field: string; operator: string; data: string; type: string; } interface UIColumnFilter { filters: Array; filterURL: string filterURLText: string; filterURLValue: string; filterURLValueType: string; filterURLOPerator: string; } interface UIGridView { name: string; id?: string; objectName: string; isDefault?: boolean; addNewURL?: string; selectionMode?: string; buttons?: Array; uiGridColumns?: UIGridColumn[]; columns?: DevExpress.ui.dxDataGridColumn[]|customDxDataGridColumn[] ; uiGridFilters?: UIGridFilter[] | (()=>UIGridFilter[]); } interface UIGridButtons { title?: string; icon?: string; text?: string; } interface customDxDataGridColumn extends DevExpress.ui.dxDataGridColumn { relateType?: string; } interface CommonGridModel { objectName: string; views: UIGridView[]; }