/** * Extracts the optional value, or executes the effect 'orElse'. * * @tsplus static effect/core/stm/STM.Aspects someOrElseSTM * @tsplus pipeable effect/core/stm/STM someOrElseSTM */ export function someOrElseSTM(orElse: LazyArg>) { return (self: STM>): STM => (self as STM>).flatMap((option) => option.map(STM.succeed).getOrElse(orElse)) }