igniteui-angular
Version:
Ignite UI for Angular is a dependency-free Angular toolkit for building modern web apps
71 lines (70 loc) • 2.68 kB
TypeScript
import { IFilteringExpression, FilteringLogic } from './filtering-expression.interface';
export declare interface IFilteringExpressionsTree {
filteringOperands: (IFilteringExpressionsTree | IFilteringExpression)[];
operator: FilteringLogic;
fieldName?: string;
find(fieldName: string): IFilteringExpressionsTree | IFilteringExpression;
findIndex(fieldName: string): number;
}
export declare class FilteringExpressionsTree implements IFilteringExpressionsTree {
/**
* Sets/gets the filtering operands.
* ```typescript
* const gridExpressionsTree = new FilteringExpressionsTree(FilteringLogic.And);
* const expression = [
* {
* condition: IgxStringFilteringOperand.instance().condition('contains'),
* fieldName: 'Column Field',
* searchVal: 'Value',
* ignoreCase: false
* }];
* gridExpressionsTree.filteringOperands.push(expression);
* this.grid.filteringExpressionsTree = gridExpressionsTree;
* ```
* ```typescript
* let filteringOperands = gridExpressionsTree.filteringOperands;
* ```
* @memberof FilteringExpressionsTree
*/
filteringOperands: (IFilteringExpressionsTree | IFilteringExpression)[];
/**
* Sets/gets the operator.
* ```typescript
* gridExpressionsTree.operator = FilteringLogic.And;
* ```
* ```typescript
* let operator = gridExpressionsTree.operator;
* ```
* @memberof FilteringExpressionsTree
*/
operator: FilteringLogic;
/**
* Sets/gets the field name of the column where the filtering expression is placed.
* ```typescript
* gridExpressionTree.fieldName = 'Column Field';
* ```
* ```typescript
* let columnField = expressionTree.fieldName;
* ```
* @memberof FilteringExpressionsTree
*/
fieldName?: string;
constructor(operator: FilteringLogic, fieldName?: string);
/**
* Returns the filtering expression for a column with the provided fieldName.
* ```typescript
* let filteringExpression = gridExpressionTree.find('Column Field');
* ```
* @memberof FilteringExpressionsTree
*/
find(fieldName: string): IFilteringExpressionsTree | IFilteringExpression;
/**
* Returns the index of the filtering expression for a column with the provided fieldName.
* ```typescript
* let filteringExpressionIndex = gridExpressionTree.findIndex('Column Field');
* ```
* @memberof FilteringExpressionsTree
*/
findIndex(fieldName: string): number;
protected isFilteringExpressionsTreeForColumn(expressionsTree: IFilteringExpressionsTree, fieldName: string): boolean;
}