type ArgsBaseType = any[];
type Handler<K extends ArgsBaseType> = (...args: K) => void;
type Condition<T> = T | ((reference: T) => boolean);
export declare class ConditionalHandler<T, K extends ArgsBaseType = any[]> {
    private readonly actions;
    add(condition: Condition<T>, handler: Handler<K>): ConditionalHandler<T, K>;
    /**
     * @returns {Boolean} found - был ли найден и вызван хоть один обработчик
     */
    build(): (reference: T, ...args: K) => boolean;
}
export {};
