import { Ref } from "lit/directives/ref.js"; export function deref(refOrValue: Ref | T | null | undefined): T | undefined { if (isRef(refOrValue)) return refOrValue.value; return (refOrValue ?? undefined); } function isRef(refOrValue: Ref | T): refOrValue is Ref { if (!refOrValue || typeof refOrValue !== "object") return false; if (refOrValue instanceof Element) return false; const keys = Object.keys(refOrValue); return keys.length === 0 || (keys.length === 1 && keys[0] === "value") }