Saxonberg Server API
    Preparing search index...

    Interface MqlOneResult

    Per-field model-side wrapper for a type: object resolution. The dispatcher lands this on model[fieldName] after running MQL, bundling everything a controller might need:

    • stuff: the resolved Stuff, or null when MQL produced no match. (Inherited from MqlOne.) Distinguished from the field being absent on the model (player typed nothing) — controllers can tell the two apart.

    • via: sub-feature attribution (exit for direction matches, detailPath for detail drills, etc.). (Inherited from MqlOne.)

    • raw: the player-typed text post-desugar, before MQL replaced it with the resolved Stuff. Always present when this wrapper exists.

    • prep: lowercased preposition the matcher consumed for this field per the YAML's prepositions: declaration. Absent when no preposition was declared or none typed.

    Controllers destructure directly:

    const { stuff, via, raw, prep } = model.target;

    interface MqlOneResult {
        prep?: string;
        quantity?: MqlQuantity;
        raw: string;
        stuff: Stuff | null;
        via?: MqlMatchVia;
    }

    Hierarchy (View Summary)

    Index

    Properties

    prep?: string
    quantity?: MqlQuantity
    raw: string
    stuff: Stuff | null