@stringsync/vexml
Version:
MusicXML to Vexflow
63 lines (62 loc) • 2.23 kB
TypeScript
import * as data from '../../data';
import * as musicxml from '../../musicxml';
import * as util from '../../util';
import { Notehead, StemDirection } from './enums';
import { Accidental } from './accidental';
import { Fraction } from './fraction';
import { VoiceContext } from './contexts';
import { Annotation } from './annotation';
import { Pitch } from './pitch';
import { Curve } from './curve';
import { Beam } from './beam';
import { Tuplet } from './tuplet';
import { Vibrato } from './vibrato';
import { Articulation } from './articulation';
import { Bend } from './bend';
import { TabPosition } from './tabposition';
import { Config } from '../../config';
import { Logger } from '../../debug';
type GraceNote = {
type: 'gracenote';
note: Note;
};
/** Container object to avoid a circular reference to Chord. */
type GraceChord = {
type: 'gracechord';
head: Note;
tail: Note[];
};
type GraceEntry = GraceNote | GraceChord;
export declare class Note {
private config;
private log;
private pitch;
private head;
private durationType;
private dotCount;
private stemDirection;
private duration;
private measureBeat;
private lyrics;
private accidental;
private curves;
private tuplets;
private beam;
private slash;
private graceEntries;
private vibratos;
private articulations;
private bends;
private tabPositions;
constructor(config: Config, log: Logger, pitch: Pitch, head: Notehead, durationType: data.DurationType, dotCount: number, stemDirection: StemDirection, duration: Fraction, measureBeat: Fraction, lyrics: Annotation[], accidental: Accidental, curves: Curve[], tuplets: Tuplet[], beam: Beam | null, slash: boolean, graceEntries: GraceEntry[], vibratos: Vibrato[], articulations: Articulation[], bends: Bend[], tabPositions: TabPosition[]);
static create(config: Config, log: Logger, measureBeat: util.Fraction, duration: util.Fraction, musicXML: {
note: musicxml.Note;
}): Note;
parse(voiceCtx: VoiceContext): data.Note;
private parseAnnotations;
private maybeParseAccidental;
private parseGraceEntries;
private parseGraceNote;
private parseGraceChord;
}
export {};