UNPKG

novo-elements

Version:

Bullhorn's NOVO Element Repository for Angular 2

81 lines (70 loc) 1.79 kB
export interface SimpleTableColumn<T> { id: string, label: string; renderType?: 'text' | 'link'; renderer: Function; customClass?: (row?: T) => string; onClick?(row: T): any; width?: number; config?: { sortable?: boolean; filterable?: boolean; filterConfig?: SimpleTableColumnFilterConfig } } export interface SimpleTablePaginationOptions { page?: number; pageSize?: number; pageSizeOptions?: number[]; } export interface SimpleTableColumnFilterConfig { type: 'text' | 'date' | 'select', options?: string[] | SimpleTableColumnFilterOption[]; allowCustomRange?: boolean; } export interface SimpleTableColumnFilterOption { label: string; value?: string; min?: number; max?: number; } export interface SimpleTableSearchOptions { placeholder?: string; tooltip?: string; } export interface SimpleTableActionColumnOption<T> { label: string; onClick(row: T): string; disabled?: boolean; disabledCheck?(row: T): boolean; } export interface SimpleTableActionColumn<T> { id: string; icon?: string; label?: string; disabled?: boolean; disabledCheck?(row: T): boolean; options?: SimpleTableActionColumnOption<T>[]; onClick?(row: T): void; } export interface NovoSimpleSortFilter { id: string; direction?: string active?: boolean; filter?: string; } export interface NovoSimpleTableChange { sort?: { id: string, value: string }, filter?: { id: string, value: string }, page?: number; pageSize?: number; globalSearch?: string; } export interface NovoSimpleSelectionChange { selected: any[] } export interface NovoSimplePaginationEvent { page: number; pageSize: number; length: number; }