/** * Resolve the effective root-folder set for layout lint/audit — the hardcoded * `SANCTIONED_ROOT_DIRS` default union whatever a wiki declared for itself. * * `unsanctioned-root-folder` used to have exactly one remedy: move the page * under `projects//`. A wiki that had deliberately built its own * root-level taxonomy (Johnny-Decimal-flavoured folders, in the case that * motivated this: GH #764) had no way to say so, so every write into its own * layout warned forever. `additional_root_folders:` in * `instructions/brain-structure.md` frontmatter is that declaration. It is * additive-only — it can only ever widen the sanctioned set, never remove a * default dir or touch any other invariant. */ import { type StorageClient } from "../storage/client.js"; /** * Pull `additional_root_folders` out of parsed frontmatter. A missing key, a * non-array value, or an array of the wrong shape all degrade to the empty * list rather than throwing — the declaration is advisory input from a page a * user can hand-edit, not a schema Brains controls. */ export declare function parseAdditionalRootFolders(frontmatter: Record | undefined): string[]; /** * Resolve the effective root-folder set for a batch of write targets. * * Skips the `instructions/brain-structure.md` read entirely when none of the * given paths could possibly trip `unsanctioned-root-folder` — the common * case, since most writes land under an already-sanctioned dir like * `projects/`. That keeps the round-trip cost to only the writes that would * otherwise warn, which is also the only case where the answer can change * anything. Never throws: a missing page, a read error, or malformed * frontmatter all degrade to the hardcoded default set. */ export declare function resolveEffectiveRootDirs(drive: StorageClient, paths: string[]): Promise>; //# sourceMappingURL=rootFolders.d.ts.map