mwg API
    Preparing search index...

    Interface MwlValidationOptions

    interface MwlValidationOptions {
        hookAttributes?: readonly string[];
        hooks?: readonly (string | MwlHookDeclaration)[];
        mapBounds?: { height: number; width: number };
        rowIdScope?: "global" | "file";
        slots?: readonly string[];
    }
    Index
    hookAttributes?: readonly string[]

    Additional game-owned attributes whose values are domain hook references.

    hooks?: readonly (string | MwlHookDeclaration)[]

    Hooks exported by the game's adapter, by type:name. A bare id declares the hook exists; MwlHookDeclaration additionally declares the attributes its [hook] calls carry, which is what turns a typo in one of them into a compile-time diagnostic.

    mapBounds?: { height: number; width: number }

    Optional map dimensions used to reject authored coordinates outside the map.

    rowIdScope?: "global" | "file"

    What MWL_DUPLICATE_ID's tag:id key is scoped to.

    Defaults to 'global': the whole compiled catalog, every source file combined, so the same [item] id=sword in two different files is one real duplicate. A game whose own id convention is meaningful only within one file - a domain- or table-scoped id, reused on purpose across files the way a database's own per-table primary key is - wants 'file' instead, which folds each node's source file into the key so that reuse across files no longer reports a false MWL_DUPLICATE_ID; a real duplicate within one file still does.

    slots?: readonly string[]

    Slots are game-defined. Supplying them enables unknown-slot diagnostics.