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

    Variable BORROWED_DEGREESConst

    BORROWED_DEGREES: Readonly<
        { bVI: 8; bVII: 10; bIII: 11; iv: 12; bII: 13; sharpIV: 14 },
    > = ...

    The borrowed (non-diatonic) chord roots a preset can name, as their semitone code for a borrowed degree. These are stable identifiers, not semitone offsets: their pitch-class offsets are resolved internally.

    Scale degrees 1..7 address the key's own chords; these codes continue the numbering for the chromatic chords a pop progression borrows, so a preset is one flat list of degree codes.

    import { BORROWED_DEGREES, generateProgression, majorKey } from '@libraz/libcantus';
    generateProgression({
    key: majorKey(0),
    style: 'rock',
    bars: 4,
    preset: { degrees: [1, BORROWED_DEGREES.bVII, 4, 1] },
    });