/**
 * SCHEMA.md loader + validator + frozen-path gate.
 *
 * Reads `<vault>/SCHEMA.md` (pure YAML inside a .md container), validates
 * shape against `VaultSchema`, and exposes the frozen-path predicate used
 * by `wiki-lint` to refuse restructure operations on OSS-pinned folders.
 *
 * Per v2.1 spec §2 (Hybrid folder architecture) — the `frozen: true` block
 * is a HARD contract: any lint or ingest operation that targets a frozen
 * path MUST fail closed.
 *
 * @module services/wiki/schema-loader.service
 */
import { VaultSchema } from './wiki.types.js';
/** Standard schema filename inside any vault root. */
export declare const SCHEMA_FILENAME = "SCHEMA.md";
/**
 * Loads + validates a vault's SCHEMA.md. Stateless — instantiate once
 * per service or use the static helper.
 */
export declare class SchemaLoaderService {
    /**
     * Load and validate the SCHEMA.md inside a vault directory.
     *
     * @param vaultPath - Absolute path to the vault root (the directory
     *   containing SCHEMA.md). Must be absolute.
     * @returns Validated VaultSchema.
     * @throws If vaultPath is not absolute, SCHEMA.md is missing, YAML
     *   parsing fails, or the parsed object is shape-invalid.
     */
    load(vaultPath: string): Promise<VaultSchema>;
    /**
     * Determine whether a path inside a vault is frozen (OSS-pinned).
     *
     * Used by `wiki-lint` and `wiki-ingest` to refuse restructure / write
     * operations. Comparison is by leading path segment — e.g. `sop/foo.md`
     * is frozen if `sop/` is declared frozen.
     *
     * @param schema - The vault's parsed schema.
     * @param relativePath - Path relative to vault root, e.g. `sop/team-1.md`.
     * @returns true if the path lives under a frozen folder.
     */
    isFrozenPath(schema: VaultSchema, relativePath: string): boolean;
    /**
     * Return every frozen folder path declared in a schema. Convenience for
     * lint reports.
     */
    getFrozenPaths(schema: VaultSchema): string[];
    private validate;
    private requireScope;
    private requireString;
    private requireHardcoded;
    private requireLlmCurated;
    private requireWritePolicy;
    private requireStringArray;
}
//# sourceMappingURL=schema-loader.service.d.ts.map