UNPKG

@stringsync/vexml

Version:

MusicXML to Vexflow

78 lines (77 loc) 2.94 kB
import { Metronome } from './metronome'; import { StaveCount } from './stavecount'; import { StaveLineCount } from './stavelinecount'; import { Clef } from './clef'; import { Key } from './key'; import { Time } from './time'; import { SignatureChange } from './types'; import { FragmentSignature } from './fragmentsignature'; import { PartSignature } from './partsignature'; import { StaveSignature } from './stavesignature'; import { Config } from '../../config'; import { Logger } from '../../debug'; /** Signature tracks how subsignatures evolve as the piece progresses. */ export declare class Signature { private config; private log; private metronome; private staveCounts; private staveLineCounts; private clefs; private keys; private times; private changes; constructor(config: Config, log: Logger, metronome: Metronome | null, staveCounts: StaveCount[], staveLineCounts: StaveLineCount[], clefs: Clef[], keys: Key[], times: Time[], changes: SignatureChange[]); static default(config: Config, log: Logger): Signature; static builder(config: Config, log: Logger): SignatureBuilder; asFragmentSignature(): FragmentSignature; asPartSignature(partId: string): PartSignature; asStaveSignature(partId: string, staveNumber: number): StaveSignature; getMetronome(): Metronome; getStaveCount(partId: string): StaveCount; getStaveCounts(): StaveCount[]; getStaveLineCount(partId: string, staveNumber: number): StaveLineCount; getStaveLineCounts(): StaveLineCount[]; getClef(partId: string, staveNumber: number): Clef; getClefs(): Clef[]; getKey(partId: string, staveNumber: number): Key; getPreviousKey(partId: string, staveNumber: number): Key | null; getKeys(): Key[]; getTime(partId: string, staveNumber: number): Time; getTimes(): Time[]; getChanges(): SignatureChange[]; hasChanges(): boolean; } declare class SignatureBuilder { private config; private log; private previousSignature; private metronome; private staveCounts; private staveLineCounts; private clefs; private keys; private times; constructor(config: Config, log: Logger); setPreviousSignature(signature: Signature): SignatureBuilder; setMetronome(metronome: Metronome): SignatureBuilder; addStaveCount(staveCount: StaveCount): SignatureBuilder; addStaveLineCount(staveLineCount: StaveLineCount): SignatureBuilder; addKey(key: Key): SignatureBuilder; addClef(clef: Clef): SignatureBuilder; addTime(time: Time): SignatureBuilder; build(): Signature; private buildMetronome; private buildStaveCounts; private buildStaveLineCounts; private buildClefs; private buildKeys; private buildTimes; private diffMetronome; private diffStaveCounts; private diffStaveLineCounts; private diffClefs; private diffKeys; private diffTimes; } export {};