import{getInnerText as o}from"../../../../../shared/markdoc.js";import{slugger as u}from"../../../../utils/slugger.js";class a{#t;#e;#r;#n;constructor(t){const{node:r,content:n,parentNode:i,rbacTeam:s}=t;this.#t=r,this.#e=n,this.#r=i,this.#n=s}get attributes(){return this.#t.attributes}get content(){return this.#e}get node(){return this.#t}get id(){throw new Error("SectionNode needs an id mixin applied")}get parentNode(){return this.#r}get rbacTeam(){return this.#n}getUrl(t){return`${t}#${this.id}`}getPath(t){return[...t.values()].slice(0,this.node.attributes.level+1).filter(Boolean)}}function h(e){let t=0;return class extends e{#t=++t;get id(){return this.#t}}}function l(e){return class extends e{#t;constructor(...t){super(...t);const r=this;this.#t=u.slug(o(r.node.children))}get id(){return this.#t}}}export{a as SectionNode,h as WithCounterId,l as WithSlugId};
