/**
* Returns a new layer whose output is mapped by the specified function.
*
* @tsplus static effect/core/io/Layer.Aspects map
* @tsplus pipeable effect/core/io/Layer map
*/
export function map(f: (a: Env) => Env) {
return (self: Layer): Layer =>
self.flatMap(
(a) => Layer.succeedEnvironment(f(a))
)
}