FILTER
Creating new filter
const filterEngine = new Filter(data);
Updating data
filterEngine.setData(newData);
Adding and updating filters
const filteredData = filterEngine.update(filter, filter2, filter3 );
Removing filters
const filteredData = filterEngine.removeFilter(filter, 'name' );
Clearing filters
const filteredData = filterEngine.clearFilters();
Getting data
const filteredData = filterEngine.getFilteredData();
SORT
Creating new Sort
const sort = new Sort(data);
const sort2 = new Sort(data, 'Primary key');
const sort3 = new Sort(data, 'Primary key', CustomSortFunction);
Updating data
const data = sort.updateData(newData);
const data2 = sort.updateData(newData, true);
Updating criteria
sort.setSortFunction(CustomFunction);
sort.setPrimaryKey('new key');
Removing criteria
sort.removePrimaryKey();
sort.setDefaultSort();
Sorting data
const data = sort.sortBy('name');
Getting data
const data = sort.getData();
Resorting data
const data = sort.justSort();
WHAT NEXT
Add promise like for big data!
Test all usecases
Set filter-value manually