import { Ord } from "@tsplus/stdlib/prelude/Ord/definition";
import { Equivalence } from "@tsplus/stdlib/prelude/Equivalence/definition";
/**
* Contramap Ord input
* @tsplus fluent Ord contramap
* @tsplus location "@tsplus/stdlib/prelude/Ord/operations"
*/
export declare function contramap(fa: Ord, f: (b: B) => A): Ord;
/**
* Test whether one value is _strictly greater than_ another
* @tsplus getter Ord gt
* @tsplus location "@tsplus/stdlib/prelude/Ord/operations"
*/
export declare function gt(O: Ord): (x: A, y: A) => boolean;
/**
* Test whether one value is _non-strictly less than_ another
* @tsplus getter Ord leq
* @tsplus location "@tsplus/stdlib/prelude/Ord/operations"
*/
export declare function leq(O: Ord): (x: A, y: A) => boolean;
/**
* Test whether one value is _strictly less than_ another
* @tsplus getter Ord lt
* @tsplus location "@tsplus/stdlib/prelude/Ord/operations"
*/
export declare function lt(O: Ord): (x: A, y: A) => boolean;
/**
* Take the maximum of two values. If they are considered equal, the first argument is chosen
* @tsplus getter Ord max
* @tsplus location "@tsplus/stdlib/prelude/Ord/operations"
*/
export declare function max(O: Ord): (x: A, y: A) => A;
/**
* Take the minimum of two values. If they are considered equal, the first argument is chosen
* @tsplus getter Ord min
* @tsplus location "@tsplus/stdlib/prelude/Ord/operations"
*/
export declare function min(O: Ord): (x: A, y: A) => A;
/**
* Test whether a value is between a minimum and a maximum (inclusive)
* @tsplus getter Ord between
* @tsplus location "@tsplus/stdlib/prelude/Ord/operations"
*/
export declare function between(O: Ord): (low: A, hi: A) => (x: A) => boolean;
/**
* Clamp a value between a minimum and a maximum
* @tsplus getter Ord clamp
* @tsplus location "@tsplus/stdlib/prelude/Ord/operations"
*/
export declare function clamp(O: Ord): (low: A, hi: A) => (x: A) => A;
/**
* Get the dual of an Ord
* @tsplus getter Ord inverted
* @tsplus location "@tsplus/stdlib/prelude/Ord/operations"
*/
export declare function inverted(O: Ord): import("./definition").Ord;
/**
* Get an instance of Equal
* @tsplus getter Ord equivalence
* @tsplus location "@tsplus/stdlib/prelude/Ord/operations"
*/
export declare function getEquivalence(O: Ord): Equivalence;
//# sourceMappingURL=operations.d.ts.map