/** A way of comparing two values of the same type for equality. */
export interface Eq {
eq: (x: A, y: A) => boolean;
}
export declare const contramap: (eqa: Eq, f: (b: B) => A) => Eq;
export declare const eq: (f: (x: A, y: A) => boolean) => Eq;
export declare const tripleEq: Eq;
export declare const eqString: Eq;
export declare const eqBoolean: Eq;
export declare const eqNumber: Eq;
export declare const eqUndefined: Eq;
export declare const eqNull: Eq;
export declare const eqArray: (eqa: Eq) => Eq>;
export declare const eqRecord: (eqa: Eq) => Eq>;
export declare const eqAny: Eq;