UNPKG

gridjs

Version:

Advanced table plugin

88 lines (87 loc) 3 kB
import { CSSDeclaration, OneDArray, ProtoExtends, TColumn, TData } from './types'; import Storage from './storage/storage'; import Pipeline from './pipeline/pipeline'; import Tabular from './tabular'; import { SearchConfig } from './view/plugin/search/search'; import { PaginationConfig } from './view/plugin/pagination'; import Header from './header'; import { ServerStorageOptions } from './storage/server'; import Dispatcher from './util/dispatcher'; import { GenericSortConfig } from './view/plugin/sort/sort'; import { Language, Translator } from './i18n/language'; import { Component, ComponentChild, RefObject } from 'preact'; import { EventEmitter } from './util/eventEmitter'; import { GridEvents } from './events'; import { PluginManager, Plugin } from './plugin'; import Grid from './grid'; export interface Config { instance: Grid; eventEmitter: EventEmitter<GridEvents>; dispatcher: Dispatcher<any>; plugin: PluginManager; container?: Element; tableRef?: RefObject<Component>; tempRef?: RefObject<HTMLDivElement>; data?: TData | (() => TData) | (() => Promise<TData>); server?: ServerStorageOptions; header?: Header; from: HTMLElement; storage: Storage<any>; pipeline: Pipeline<Tabular>; autoWidth: boolean; width: string; height: string; pagination: PaginationConfig; sort: GenericSortConfig; translator: Translator; style?: Partial<{ table: CSSDeclaration; td: CSSDeclaration; th: CSSDeclaration; container: CSSDeclaration; header: CSSDeclaration; footer: CSSDeclaration; }>; className?: Partial<{ table: string; th: string; thead: string; tbody: string; tr: string; td: string; container: string; footer: string; header: string; search: string; sort: string; pagination: string; paginationSummary: string; paginationButton: string; paginationButtonNext: string; paginationButtonCurrent: string; paginationButtonPrev: string; loading: string; notfound: string; error: string; }>; } interface UserConfigExtend { fixedHeader: boolean; resizable: boolean; columns: OneDArray<TColumn | string | ComponentChild>; search: SearchConfig | boolean; pagination: PaginationConfig | boolean; sort: GenericSortConfig | boolean; language: Language; plugins?: Plugin<any>[]; } export declare type UserConfig = ProtoExtends<Partial<Config>, Partial<UserConfigExtend>>; export declare class Config { private _userConfig; constructor(config?: Partial<Config>); assign(updatedConfig: Partial<Config>): Config; update(userConfig: Partial<UserConfig>): Config; static defaultConfig(): Config; static fromUserConfig(userConfig: UserConfig): Config; } export {};