/// /// /** * ngTable: Table + Angular JS * * @author Vitalii Savchuk * @url https://github.com/esvit/ng-table/ * @license New BSD License */ import { IAttributes, IAugmentedJQuery, ICompileService, IDocumentService, IParseService, IScope, ITimeoutService } from 'angular'; import { DataResults, GroupedDataResults, NgTableParams, NgTableEventsChannel, IPageButton } from '../core'; import { IColumnDef, IDynamicTableColDef, ITableInputAttributes } from './public-interfaces'; import { NgTableColumn } from './ngTableColumn'; /** * @private */ export interface ITableScope extends IScope { $columns: IColumnDef[]; $loading: boolean; $filterRow: { disabled: boolean; }; $data?: DataResults; $groups?: GroupedDataResults; $groupRow: { show: boolean; }; show_filter: boolean; pages: IPageButton[]; templates: { header: string; pagination: string; }; params: NgTableParams; } /** * The controller for the {@link ngTable ngTable} and {@link ngTableDynamic ngTableDynamic} directives */ export declare class NgTableController { private $scope; private $parse; private $compile; private $attrs; private $element; private $document; private ngTableColumn; private ngTableEventsChannel; static $inject: string[]; private delayFilter; private readonly hasVisibleFilterColumn; constructor($scope: ITableScope, $timeout: ITimeoutService, $parse: IParseService, $compile: ICompileService, $attrs: IAttributes & ITableInputAttributes, $element: IAugmentedJQuery, $document: IDocumentService, ngTableColumn: NgTableColumn, ngTableEventsChannel: NgTableEventsChannel); private onDataReloadStatusChange(newStatus); compileDirectiveTemplates(): void; loadFilterData($columns: IColumnDef[]): void; buildColumns(columns: TCol[]): IColumnDef[]; parseNgTableDynamicExpr(attr: string): { tableParams: string; columns: string; }; setupBindingsToInternalScope(tableParamsExpr: string): void; private setupFilterRowBindingsToInternalScope(); private setupGroupRowBindingsToInternalScope(); private getVisibleColumns(); private subscribeToTableEvents(); private some(array, predicate); }