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

    Type Alias CompositionPlan

    What a new piece is going to be: its keys, meter and span, the sections and phrases it is built from, the harmony and motif derivations a generator fills those phrases with, and the rhythmic target it aims for.

    type CompositionPlan = {
        planVersion: number;
        seed: number;
        algorithmVersion: number;
        keys: ResolvedKey[];
        meters: MeterMap;
        span: { startBeat: number; endBeat: number; bars: number };
        sections: PlannedSection[];
        phrases: PlannedPhrase[];
        harmony: PlannedChord[];
        motifs: PlannedMotif[];
        rhythm: PlannedRhythm;
    }
    Index
    planVersion: number

    Schema version this record is written at; see COMPOSITION_PLAN_VERSION.

    seed: number

    The project seed a generator following this plan draws from.

    algorithmVersion: number

    The algorithm version a generator following this plan runs under.

    keys: ResolvedKey[]

    Keys the piece passes through; index 0 is the home key harmony is read against by default.

    meters: MeterMap

    The piece's meter across the planned span.

    span: { startBeat: number; endBeat: number; bars: number }

    The planned span.

    sections: PlannedSection[]

    Sections, in time order.

    phrases: PlannedPhrase[]

    Phrases, in time order.

    harmony: PlannedChord[]

    The harmonic progression, as a partition of the span.

    motifs: PlannedMotif[]

    Motifs and how they derive from one another.

    The rhythmic target a generator's onset placement aims for.