/** * @since 2.0.0 */ import { Comonad2C } from './Comonad' import { Functor2 } from './Functor' import { Monoid } from './Monoid' /** * @category model * @since 2.0.0 */ export interface Traced
{ (p: P): A } /** * Extracts a value at a relative position which depends on the current value. * * @since 2.0.0 */ export declare function tracks
(M: Monoid
, f: (a: A) => P): (wa: Traced
) => A /** * Get the current position * * @since 2.0.0 */ export declare function listen
(wa: Traced
): Traced
/** * Get a value which depends on the current position * * @since 2.0.0 */ export declare function listens
(f: (p: P) => B): (wa: Traced ) => Traced
/**
* Apply a function to the current position
*
* @since 2.0.0
*/
export declare function censor (f: (p: P) => P): (wa: Traced ) => Traced
/**
* @category instances
* @since 2.0.0
*/
export declare function getComonad (monoid: Monoid ): Comonad2C