import { Awaitable } from '@blackglory/prelude' import { Option } from '@classes/option.js' export async function toOptionAsync(fn: () => Awaitable): Promise> { try { const result = await fn() return Option.Some(result) } catch { return Option.None() } }