import DefinitionPattern from './DefinitionPattern';
export declare enum UnaryOperationType {
    LOOK_ALIKE = "LOOK_ALIKE",
    FILTER = "FILTER",
    GREATER = "GREATER",
    LOWER = "LOWER",
    EQUAL = "EQUAL",
    AVG = "AVG",
    AVG_GREATER = "AVG_GREATER",
    AVG_LOWER = "AVG_LOWER",
    SUM = "SUM",
    SUM_GREATER = "SUM_GREATER",
    SUM_LOWER = "SUM_LOWER",
    COUNT = "COUNT",
    COUNT_GREATER = "COUNT_GREATER",
    COUNT_LOWER = "COUNT_LOWER",
    MIN = "MIN",
    MIN_GREATER = "MIN_GREATER",
    MIN_LOWER = "MIN_LOWER",
    MAX = "MAX",
    MAX_GREATER = "MAX_GREATER",
    MAX_LOWER = "MAX_LOWER"
}
export interface UnaryOperation {
    operation: UnaryOperationType;
    json_pointers: string | string[];
    arguments?: any;
}
export declare function unaryFunction(unaryOperation: UnaryOperation, definition: DefinitionPattern, reference: string): DefinitionPattern;
export declare function operationUnroller(reference: string, unaryOperationArray: UnaryOperation[]): DefinitionPattern;
export default unaryFunction;
