@libraz/libcantus - v1.1.0
    Preparing search index...

    Type Alias VoicingSafetyQuery

    VoicingSafetyQuery: Omit<
        SafetyQuery,
        "candidatePitch"
        | "otherVoices"
        | "chord"
        | "key",
    > & { chord: ChordLike | null; key: KeyLike; previous?: Voicing }

    The context a candidate pitch is judged in, with the voices of this voicing standing as the other parts.

    The same query serves Voicing.safetyOf and Voicing.safePitches: it is everything SafetyQuery carries except the candidate and the other voices, which the voicing supplies, with the chord and key taken in whichever form the caller holds them. It is derived from the query itself, so a field the safety module adds arrives here rather than being silently dropped on the way.

    Type Declaration

    • chord: ChordLike | null

      The chord sounding under the candidate, or null when none is known.

    • key: KeyLike

      The prevailing key.

    • Optionalprevious?: Voicing

      The voicing these voices moved from, aligned voice for voice with this one. It is what lets the parallel, hidden-parallel and voice-crossing rules apply: without a previous pitch per voice there is no motion to read.