Chainable
Combining
Signature
declare function zipLeft<F extends TypeLambda>( F: Chainable<F>,): { <R2, O2, E2, _>( that: Kind<F, R2, O2, E2, _>, ): <R1, O1, E1, A>(self: Kind<F, R1, O1, E1, A>) => Kind<F, R1 & R2, O2 | O1, E2 | E1, A>; <R1, O1, E1, A, R2, O2, E2, _>( self: Kind<F, R1, O1, E1, A>, that: Kind<F, R2, O2, E2, _>, ): Kind<F, R1 & R2, O1 | O2, E1 | E2, A>;};Do Notation
Signature
declare function bind<F extends TypeLambda>( F: Chainable<F>,): { <N extends string, A extends object, R2, O2, E2, B>( name: Exclude<N, keyof A>, f: (a: NoInfer<A>) => Kind<F, R2, O2, E2, B>, ): <R1, O1, E1>( self: Kind<F, R1, O1, E1, A>, ) => Kind< F, R1 & R2, O2 | O1, E2 | E1, { [K in string | number | symbol]: K extends keyof A ? A[K] : B } >; <R1, O1, E1, A extends object, N extends string, R2, O2, E2, B>( self: Kind<F, R1, O1, E1, A>, name: Exclude<N, keyof A>, f: (a: NoInfer<A>) => Kind<F, R2, O2, E2, B>, ): Kind< F, R1 & R2, O1 | O2, E1 | E2, { [K in string | number | symbol]: K extends keyof A ? A[K] : B } >;};Other
Returns an effect that effectfully "peeks" at the success of this effect.
Signature
declare function tap<F extends TypeLambda>( F: Chainable<F>,): { <A, R2, O2, E2, _>( f: (a: A) => Kind<F, R2, O2, E2, _>, ): <R1, O1, E1>(self: Kind<F, R1, O1, E1, A>) => Kind<F, R1 & R2, O2 | O1, E2 | E1, A>; <R1, O1, E1, A, R2, O2, E2, _>( self: Kind<F, R1, O1, E1, A>, f: (a: A) => Kind<F, R2, O2, E2, _>, ): Kind<F, R1 & R2, O1 | O2, E1 | E2, A>;};
Sequences the specified effect after this effect, but ignores the value produced by the effect.