1 <?php
2
3 /**
4 * @copyright Copyright (c) 2015 ublaboo <ublaboo@paveljanda.com>
5 * @author Pavel Janda <me@paveljanda.com>
6 * @package Ublaboo
7 */
8
9 namespace Ublaboo\DataGrid\AggregationFunction;
10
11 interface IAggregationFunction
12 {
13 const DATA_TYPE_ALL = 'data_type_all';
14 const DATA_TYPE_FILTERED = 'data_type_filtered';
15 const DATA_TYPE_PAGINATED = 'data_type_paginated';
16
17
18 /**
19 * @return string
20 */
21 public function getFilterDataType();
22
23 /**
24 * @param mixed $dataSource
25 * @return void
26 */
27 public function processDataSource($dataSource);
28
29 /**
30 * @return mixed
31 */
32 public function renderResult();
33 }
34