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

    Type Alias ProgressionOptions

    Options controlling generateProgression.

    type ProgressionOptions = {
        key: KeyLike;
        style: ProgStyle;
        bars: number;
        ts?: MeterLike;
        presetId?: string;
        preset?: Partial<ProgressionPreset> & { degrees: ProgressionDegree[] };
        ext?: ChordQuality | "auto";
        ctx?: GenerationContextInput;
    }
    Index
    key: KeyLike

    The key the degrees are resolved against; a key name such as 'C major' is read as that key.

    style: ProgStyle

    Which pool of built-in presets to choose from. Ignored when preset names the progression outright.

    bars: number

    The meter the bars are counted in, in any form that names one; a meter map is read as the signature it opens in. One chord is laid out per bar, so this is what the chords are spaced by — a chord every three beats in 3/4, every three in 6/8 — and a progression written against another bar length drifts off the bar lines of the part it is played under.

    4/4

    presetId?: string

    Pick a specific built-in preset by id instead of choosing one by style.

    preset?: Partial<ProgressionPreset> & { degrees: ProgressionDegree[] }

    Use this progression rather than a built-in one. Only degrees is required; see BORROWED_DEGREES for the non-diatonic codes.

    ext?: ChordQuality | "auto"

    The generation context.

    Its complexity.harmonic sets how much of the progression is replaced by the secondary dominant of what follows: 0 — the default — leaves it alone, 0.5 takes about half of what the voice-leading rules allow, and 1 takes every one of them. Its seed fixes both the preset choice and which chords are replaced, so the same seed always yields the same progression.

    { seed: 0 }