import { Optional } from '../../../common/domain/Optional';
import { DescribedPredicate } from '../../base/DescribedPredicate';
export declare class PredicateAggregator<T> {
    private readonly addMode;
    private readonly predicate;
    private constructor();
    static default(): PredicateAggregator<unknown>;
    getPredicate(): Optional<DescribedPredicate<T>>;
    add(other: DescribedPredicate<T>): PredicateAggregator<T>;
    thatANDs(): PredicateAggregator<T>;
    thatORs(): PredicateAggregator<T>;
}
