import { parseLine as f, createLineData as s } from "./parser.js"; function d(l, i = " ") { let r = s(null, i); const t = { ended: !1, clone() { return d(l.clone(), i); }, async next() { if (r.line = await l.next(), r.line === null) return !0; f(r); }, current() { return t; }, line() { var e; return (e = r.line) == null ? void 0 : e.slice(r.offsetHead); }, head() { var e; return (e = r.line) == null ? void 0 : e.slice(r.offsetHead, r.offsetTail); }, tail() { var e; return (e = r.line) == null ? void 0 : e.slice(r.offsetTail); }, level() { return r.level; }, async content(e = -1, n = []) { var u; return e === -1 && (e = r.level + 1), await t.next() || r.level < e ? n : (n.push(((u = r.line) == null ? void 0 : u.slice(e)) || ""), t.content(e, n)); }, async seek(e, n = -1) { return n === -1 && (n = r.level), await t.next() ? !1 : t.head() === e ? t : r.level < n ? !1 : t.seek(e, n); } }; return t; } export { d as useDocument };