ui-lit
Version:
UI Elements on LIT
36 lines (35 loc) • 1.25 kB
TypeScript
import { TemplateResult } from 'lit';
export declare type ISourceItem = {
key: string;
[key: string]: string | number | Record<string, any>;
};
export declare type TFilterType = 'checkbox' | 'text' | 'number' | 'date' | 'select';
export interface TFilterItem {
divider?: boolean;
title?: string;
text: string;
value: string | number | boolean;
items?: string[];
checked?: boolean;
placeholder?: string;
name?: string;
type?: TFilterType;
onFilter?: (value: string | number | boolean, record: ISourceItem, filters?: Map<string, TFilterItem[]>) => boolean;
}
export declare type TColumnItem = {
title: string;
key: string;
valueFn?: (data: any) => string | TemplateResult;
filters?: TFilterItem[];
sorter?: boolean | ((a: ISourceItem, b: ISourceItem, direction: TSortDirections) => number);
sortDirections?: TSortDirections[];
width?: number;
percent?: number;
defaultSort?: boolean;
align?: string;
ellipses?: boolean;
getStatus?: (data: any) => string;
halfHidden?: (data: any) => boolean;
};
export declare type TRowSelected = (data: any) => boolean;
export declare type TSortDirections = 'ascend' | 'descend';