@syncfusion/ej2-pdfviewer
Version:
Essential JS 2 PDF viewer Component
42 lines (41 loc) • 1.48 kB
TypeScript
import { CommentFilterSettings } from '../pdfviewer';
/**
* @hidden
* Represents the return value of buildFilterPredicates().
* Contains two predicates for filtering annotations.
*/
export interface FilterPredicates {
/**
* Predicate for comment panel filtering.
* Includes reply thread logic for author filtering.
*/
commentPredicate: (annotation: any) => boolean;
/**
* Predicate for document annotation rendering.
* Simpler logic, no thread evaluation.
*/
documentPredicate: (annotation: any) => boolean;
}
/**
* @hidden
* Builds filter predicates from a filter settings object.
*
* Returns two predicates:
* 1. commentPredicate: For comment panel filtering (includes reply logic)
* 2. documentPredicate: For document annotation filtering
*
* Both predicates are stateless, O(1) functions.
*
* @param {CommentFilterSettings} settings - Filter criteria
* @returns {FilterPredicates} Object containing commentPredicate and documentPredicate
*/
export declare function buildFilterPredicates(settings: CommentFilterSettings): FilterPredicates;
/**
* @hidden
* Helper function to check if a filter is empty (no criteria set).
* Used to determine if filtering is active.
*
* @param {CommentFilterSettings} settings - Filter settings to check
* @returns {boolean} true if filter has no criteria, false otherwise
*/
export declare function isFilterEmpty(settings: CommentFilterSettings | null | undefined): boolean;