UNPKG

8.89 kBTypeScriptView Raw
1/// <reference types="jquery" />
2
3export interface BootstrapTableIcons {
4 toggleOff?: string;
5 clearSearch?: string;
6 detailOpen?: string;
7 search?: string;
8 fullscreen?: string;
9 columns?: string;
10 detailClose?: string;
11 refresh?: string;
12 paginationSwitchDown?: string;
13 paginationSwitchUp?: string;
14 toggleOn?: string;
15 autoRefresh?: string;
16}
17
18export interface BootstrapTableEvents {
19 'refresh.bs.table': string;
20 'load-error.bs.table': string;
21 'click-row.bs.table': string;
22 'dbl-click-row.bs.table': string;
23 'post-body.bs.table': string;
24 'collapse-row.bs.table': string;
25 'reset-view.bs.table': string;
26 'click-cell.bs.table': string;
27 'check-all.bs.table': string;
28 'post-footer.bs.table': string;
29 'uncheck.bs.table': string;
30 'check-some.bs.table': string;
31 'refresh-options.bs.table': string;
32 'pre-body.bs.table': string;
33 'uncheck-some.bs.table': string;
34 'expand-row.bs.table': string;
35 'all.bs.table': string;
36 'uncheck-all.bs.table': string;
37 'column-switch.bs.table': string;
38 'column-switch-all.bs.table': string;
39 'check.bs.table': string;
40 'search.bs.table': string;
41 'load-success.bs.table': string;
42 'dbl-click-cell.bs.table': string;
43 'page-change.bs.table': string;
44 'post-header.bs.table': string;
45 'toggle.bs.table': string;
46 'sort.bs.table': string;
47 'scroll-body.bs.table': string;
48}
49
50export interface BootstrapTableColumn {
51 sortName?: any;
52 widthUnit?: string;
53 sorter?: any;
54 searchFormatter?: boolean;
55 titleTooltip?: any;
56 falign?: any;
57 title?: any;
58 align?: any;
59 radio?: boolean;
60 colspan?: any;
61 showSelectTitle?: boolean;
62 rowspan?: any;
63 checkbox?: boolean;
64 halign?: any;
65 switchable?: boolean;
66 class?: any;
67 escape?: boolean;
68 events?: BootstrapTableEvents;
69 order?: string;
70 visible?: boolean;
71 detailFormatter?: any;
72 valign?: any;
73 sortable?: boolean;
74 cellStyle?: any;
75 searchable?: boolean;
76 footerFormatter?: any;
77 formatter?: any;
78 checkboxEnabled?: boolean;
79 field?: any;
80 width?: any;
81 clickToSelect?: boolean;
82 searchHighlightFormatter?: boolean;
83 cardVisible?: boolean;
84}
85
86export interface BootstrapTableLocale {
87 formatPaginationSwitchDown?: () => string;
88
89 formatColumns?: () => string;
90
91 formatAllRows?: () => string;
92
93 formatLoadingMessage?: () => string;
94
95 formatSRPaginationPreText?: () => string;
96
97 formatPaginationSwitch?: () => string;
98
99 formatDetailPagination?: (totalRows: number) => string;
100
101 formatNoMatches?: () => string;
102
103 formatSRPaginationNextText?: () => string;
104
105 formatSearch?: () => string;
106
107 formatFullscreen?: () => string;
108
109 formatShowingRows?: (
110 pageFrom: number,
111 pageTo: number,
112 totalRows: number,
113 totalNotFiltered: number
114 ) => string;
115
116 formatSRPaginationPageText?: (page: number) => string;
117
118 formatClearSearch?: () => string;
119
120 formatPaginationSwitchUp?: () => string;
121
122 formatToggleOff?: () => string;
123
124 formatColumnsToggleAll?: () => string;
125
126 formatRefresh?: () => string;
127
128 formatToggleOn?: () => string;
129
130 formatRecordsPerPage(pageNumber: number): string;
131}
132
133export interface BootstrapAjaxParams {
134 cache: boolean;
135 data: {
136 search: string;
137 offset: number;
138 limit: number;
139 sort?: any;
140 order?: any;
141 };
142 dataType: string;
143 type: string;
144 contentType: string;
145 error: (jqXHR: JQueryXHR) => any;
146 success: (results: any, textStatus?: string, jqXHR?: JQueryXHR) => any;
147}
148
149export interface BootstrapTableOptions {
150 onCheck?: (row: any, $element: JQuery<HTMLElement>) => boolean | void;
151 loadingFontSize?: string;
152 onDblClickCell?: (
153 field: string,
154 value: any,
155 row: any,
156 $element: JQuery<HTMLElement>
157 ) => boolean | void;
158 rowStyle?: (row: any, index: number) => {};
159 showColumnsToggleAll?: boolean;
160 footerStyle?: (column: BootstrapTableColumn) => {};
161 onUncheck?: (row: any, $element: JQuery<HTMLElement>) => boolean | void;
162 pageSize?: number;
163 footerField?: string;
164 showFullscreen?: boolean;
165 sortResetPage?: boolean;
166 sortStable?: boolean;
167 searchAlign?: string;
168 ajax?: (params: BootstrapAjaxParams) => any;
169 onAll?: (name: string, args: any) => boolean | void;
170 onClickRow?: (
171 row: any,
172 $element: JQuery<HTMLElement>,
173 field: string
174 ) => boolean | void;
175 ajaxOptions?: {};
176 onCheckSome?: (rows: any[]) => boolean | void;
177 customSort?: any;
178 iconSize?: any;
179 onCollapseRow?: (
180 index: number,
181 row: any,
182 detailView: any
183 ) => boolean | void;
184 searchHighlight?: boolean;
185 height?: any;
186 onUncheckSome?: (rows: any[]) => boolean | void;
187 onToggle?: (cardView: boolean) => boolean | void;
188 ignoreClickToSelectOn?: ({ tagName }?: { tagName: any }) => any;
189 cache?: boolean;
190 method?: string;
191 onColumnSwitch?: (field: string, checked: boolean) => boolean | void;
192 searchSelector?: boolean | string;
193 strictSearch?: boolean;
194 multipleSelectRow?: boolean;
195 onLoadError?: (status: string, jqXHR: JQuery.jqXHR) => boolean | void;
196 buttonsToolbar?: any;
197 paginationVAlign?: string;
198 showColumnsSearch?: boolean;
199 queryParamsType?: string;
200 sortOrder?: any;
201 paginationDetailHAlign?: string;
202 customSearch?: any;
203 visibleSearch?: boolean;
204 showButtonText?: boolean;
205 sortName?: any;
206 columns?: BootstrapTableColumn[];
207 onScrollBody?: () => boolean | void;
208 iconsPrefix?: string;
209 onPostBody?: () => boolean | void;
210 search?: boolean;
211 searchOnEnterKey?: boolean;
212 searchText?: string;
213 responseHandler?: (res: any) => any;
214 toolbarAlign?: string;
215 paginationParts?: string[];
216 cardView?: boolean;
217 showSearchButton?: boolean;
218 escape?: boolean;
219 searchTimeOut?: number;
220 buttonsAlign?: string;
221 buttonsOrder?: string[];
222 detailFormatter?: (
223 index: number,
224 row: any,
225 $element: JQuery<HTMLElement>
226 ) => string;
227 onDblClickRow?: (
228 row: any,
229 $element: JQuery<HTMLElement>,
230 field: string
231 ) => boolean | void;
232 paginationNextText?: string;
233 buttonsPrefix?: string;
234 loadingTemplate?: (loadingMessage: string) => string;
235 theadClasses?: string;
236 onLoadSuccess?: (
237 data: any,
238 status: string,
239 jqXHR: JQuery.jqXHR
240 ) => boolean | void;
241 url?: any;
242 toolbar?: any;
243 onPostHeader?: () => boolean | void;
244 sidePagination?: string;
245 clickToSelect?: boolean;
246 virtualScrollItemHeight?: any;
247 rowAttributes?: (row: any, index: number) => {};
248 dataField?: string;
249 idField?: string;
250 onSort?: (name: string, order: number) => boolean | void;
251 pageNumber?: number;
252 data?: any[];
253 totalNotFilteredField?: string;
254 undefinedText?: string;
255 onSearch?: (text: string) => boolean | void;
256 onPageChange?: (number: number, size: number) => boolean | void;
257 paginationUseIntermediate?: boolean;
258 searchAccentNeutralise?: boolean;
259 singleSelect?: boolean;
260 showButtonIcons?: boolean;
261 showPaginationSwitch?: boolean;
262 onPreBody?: (data: any) => boolean | void;
263 detailFilter?: (index: number, row: any) => boolean | void;
264 detailViewByClick?: boolean;
265 totalField?: string;
266 contentType?: string;
267 showColumns?: boolean;
268 totalNotFiltered?: number;
269 checkboxHeader?: boolean;
270 onRefresh?: (params: any[]) => boolean | void;
271 dataType?: string;
272 paginationPreText?: string;
273 showToggle?: boolean;
274 detailView?: boolean;
275 serverSort?: boolean;
276 totalRows?: number;
277 silentSort?: boolean;
278 onPostFooter?: () => boolean | void;
279 selectItemName?: string;
280 detailViewIcon?: boolean;
281 detailViewAlign?: string;
282 minimumCountColumns?: number;
283 uniqueId?: any;
284 onResetView?: () => boolean | void;
285 paginationHAlign?: string;
286 sortClass?: any;
287 pagination?: boolean;
288 queryParams?: (params: any) => any;
289 paginationSuccessivelySize?: number;
290 classes?: string;
291 rememberOrder?: boolean;
292 paginationPagesBySide?: number;
293 trimOnSearch?: boolean;
294 showRefresh?: boolean;
295 locale?: BootstrapTableLocale;
296 onCheckAll?: (rowsAfter: any[], rowsBefore: any[]) => boolean | void;
297 showFooter?: boolean;
298 headerStyle?: (column: BootstrapTableColumn) => {};
299 maintainMetaData?: boolean;
300 onRefreshOptions?: (options: BootstrapTableOptions) => boolean | void;
301 showExtendedPagination?: boolean;
302 smartDisplay?: boolean;
303 paginationLoop?: boolean;
304 virtualScroll?: boolean;
305 sortReset?: boolean;
306 filterOptions?: { filterAlgorithm: string };
307 onUncheckAll?: (rowsAfter: any[], rowsBefore: any[]) => boolean | void;
308 showSearchClearButton?: boolean;
309 buttons?: {};
310 showHeader?: boolean;
311 onClickCell?: (
312 field: string,
313 value: any,
314 row: any,
315 $element: JQuery<HTMLElement>
316 ) => boolean | void;
317 sortable?: boolean;
318 icons?: BootstrapTableIcons;
319 onExpandRow?: (
320 index: number,
321 row: any,
322 $detail: JQuery<HTMLElement>
323 ) => boolean | void;
324 buttonsClass?: string;
325 pageList?: number[];
326}
327
328declare global {
329 interface JQuery {
330 bootstrapTable(options: BootstrapTableOptions): JQuery;
331
332 bootstrapTable(method: string, ...parameters: any[]): JQuery | any;
333 }
334}