/** * Walking a container's body and naming what does not belong in it. * * Three containers used to accept an invented tag without a word — the body of * ``, a ``/`` wrapper, and (elsewhere) `` and the * fixtures. The walk is the same each time and only the allowed list differs, * so it lives here once rather than four times in `validate.ts`. * * `` is never walked. A tag inside it is output TEXT — * `xy` renders `xy` — which is how a config emits XML or * HTML, and refusing it would take that away to catch a typo. */ import type { Diagnostic } from '../errors/index.js'; import type { OpenCloseElementContext, SelfClosingElementContext } from '../generated/TDCParser.js'; import { elementKind } from '../processor/walk.js'; /** Report every child of `el` that is not on `allowed`. */ export declare function checkContainedTags(el: OpenCloseElementContext, parent: string, allowed: readonly string[], sink: { diagnostics: Diagnostic[]; }): void; /** * The open/close form of `` has a body, and everything but `` in it * was ignored. The self-closing form has none, so it is nothing to check. */ export declare function checkGenBody(gen: OpenCloseElementContext | SelfClosingElementContext, sink: { diagnostics: Diagnostic[]; }): void; /** * A ``/`` wrapper's own body, whichever level it sits at — the * caller supplies the list, because the two levels hold different things: the * FIELDS of one record inside a ``, whole COLUMNS at `` level. */ export declare function checkGroupBody(el: { readonly node: OpenCloseElementContext; } | undefined, tag: string, allowed: readonly string[], sink: { diagnostics: Diagnostic[]; }): void; /** The open/close node of a child element, or undefined for anything else. */ export declare function openChild(child: Parameters[0]): { readonly node: OpenCloseElementContext; } | undefined; /** * A second `` or a second `` under ``. * * Both are read by taking the FIRST of their kind, so a second one is dropped * whole — every sequence it declares, every line it lays out — and the run * finishes looking healthy. `check` called such a document valid, and half the * config produced nothing: the same silent discard TDC014 refuses for the * self-closing spelling, one level up. * * Reported on the SECOND one: the first is the one that runs, so the second is * the surprise, and pointing at it puts the caret on the text to delete or * merge. */ export declare function checkOneEnvOneBlock(tdc: OpenCloseElementContext, diagnostics: Diagnostic[]): void; //# sourceMappingURL=container-children.d.ts.map