effect-ts-laws
Version:
effect-ts law testing using fast-check.
25 lines • 872 B
TypeScript
import { Contravariant as CN } from '@effect/typeclass';
import type { TypeLambda } from 'effect/HKT';
/**
* A unary function from `A` to `E`. The underlying type is the argument type `A`.
* @category datatype
*/
export interface FunctionIn<A, E> {
(a: A): E;
}
/**
* Type lambda for a unary function with its argument as the underlying type.
* @category type lambda
*/
export interface FunctionInTypeLambda extends TypeLambda {
readonly type: FunctionIn<this['Target'], this['Out1']>;
}
/**
* Map over the argument of a unary function converting a function of
* type `(a: A) ⇒ E` to `(b: B) ⇒ E`.
* @category combinators
*/
export declare const mapInput: CN.Contravariant<FunctionInTypeLambda>['contramap'];
/** @category instances */
export declare const Contravariant: CN.Contravariant<FunctionInTypeLambda>;
//# sourceMappingURL=Function.d.ts.map