import { Comparable, Predicate } from '../../interfaces';
export declare class PredicatesComparable<T extends Predicate[] = Predicate[]> implements Comparable<T> {
    /**
     * @inheritDoc
     */
    readonly value: T;
    /**
     * ** Constructor.
     */
    constructor(...predicates: T);
    /**
     * ** Factory method.
     */
    static of(...predicates: Predicate[]): PredicatesComparable;
    /**
     * @inheritDoc
     */
    compare(_comparable: Comparable): number;
    /**
     * @inheritDoc
     */
    isNil(): boolean;
    /**
     * @inheritDoc
     */
    notNil(): boolean;
    /**
     * @inheritDoc
     */
    like(comparable: Comparable): boolean;
    /**
     * @inheritDoc
     */
    equal(comparable: Comparable): boolean;
    /**
     * @inheritDoc
     */
    notEqual(comparable: Comparable): boolean;
    /**
     * @inheritDoc
     */
    lessThan(_comparable: Comparable): boolean;
    /**
     * @inheritDoc
     */
    lessThanInclusive(_comparable: Comparable): boolean;
    /**
     * @inheritDoc
     */
    greaterThan(_comparable: Comparable): boolean;
    /**
     * @inheritDoc
     */
    greaterThanInclusive(_comparable: Comparable): boolean;
    private static _defaultUnsupported;
}
