mirror of
https://github.com/gosticks/DefinitelyTyped.git
synced 2026-08-11 20:40:20 +00:00
Merge pull request #33330 from bneumann/master
Updated vexflow to the latest version
This commit is contained in:
Vendored
+56
-21
@@ -1,9 +1,10 @@
|
||||
// Type definitions for VexFlow v1.2.85
|
||||
// Type definitions for VexFlow v1.2.88
|
||||
// Project: http://vexflow.com
|
||||
// Definitions by: Roman Quiring <https://github.com/rquiring>
|
||||
// Sebastian Haas <https://github.com/sebastianhaas>
|
||||
// Basti Hoffmann <https://github.com/bohoffi>
|
||||
// Simon Schmid <https://github.com/sschmidTU>
|
||||
// Benjamin Giesinger <https://github.com/bneumann>
|
||||
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
|
||||
|
||||
//inconsistent namespace: this is a helper funtion from tables.js and should not pollute the global namespace!
|
||||
@@ -54,8 +55,8 @@ declare namespace Vex {
|
||||
beginPath() : IRenderContext;
|
||||
moveTo(x : number, y : number) : IRenderContext;
|
||||
lineTo(x : number, y : number) : IRenderContext;
|
||||
bezierCurveToTo(x1 : number, y1 : number, x2 : number, y2 : number, x : number, y : number) : IRenderContext;
|
||||
quadraticCurveToTo(x1 : number, y1 : number, x2 : number, y2 : number) : IRenderContext;
|
||||
bezierCurveTo(x1 : number, y1 : number, x2 : number, y2 : number, x : number, y : number) : IRenderContext;
|
||||
quadraticCurveTo(x1 : number, y1 : number, x2 : number, y2 : number) : IRenderContext;
|
||||
arc(x : number, y : number, radius : number, startAngle : number, endAngle : number, antiClockwise : boolean) : IRenderContext;
|
||||
glow() : IRenderContext;
|
||||
fill() : IRenderContext;
|
||||
@@ -103,6 +104,7 @@ declare namespace Vex {
|
||||
const STAVE_LINE_THICKNESS : number;
|
||||
const TIME4_4 : {num_beats : number, beat_value : number, resolution : number};
|
||||
const unicode : {[name : string] : string}; //inconsistent API: this should be private and have a wrapper function like the other tables
|
||||
const DEFAULT_NOTATION_FONT_SCALE: number;
|
||||
function clefProperties(clef : string) : {line_shift : number};
|
||||
function keyProperties(key : string, clef : string, params : {octave_shift? : number}) : {key : string, octave : number, line : number, int_value : number, accidental : string, code : number, stroke : number, shift_right : number, displaced : boolean};
|
||||
function integerToNote(integer : number) : string;
|
||||
@@ -211,8 +213,9 @@ declare namespace Vex {
|
||||
drawRepeatBar(stave : Stave, x : number, begin : boolean) : void;
|
||||
}
|
||||
|
||||
class Beam {
|
||||
class Beam {
|
||||
constructor(notes : StemmableNote[], auto_stem? : boolean);
|
||||
setStyle(style : {shadowColor? : string, shadowBlur? : string, fillStyle? : string, strokeStyle? : string}) : Beam;
|
||||
setContext(context : IRenderContext) : Beam;
|
||||
getNotes() : StemmableNote[];
|
||||
getBeamCount() : number;
|
||||
@@ -275,8 +278,8 @@ declare namespace Vex {
|
||||
beginPath() : CanvasContext;
|
||||
moveTo(x : number, y : number) : CanvasContext;
|
||||
lineTo(x : number, y : number) : CanvasContext;
|
||||
bezierCurveToTo(x1 : number, y1 : number, x2 : number, y2 : number, x : number, y : number) : CanvasContext;
|
||||
quadraticCurveToTo(x1 : number, y1 : number, x2 : number, y2 : number) : CanvasContext;
|
||||
bezierCurveTo(x1 : number, y1 : number, x2 : number, y2 : number, x : number, y : number) : CanvasContext;
|
||||
quadraticCurveTo(x1 : number, y1 : number, x2 : number, y2 : number) : CanvasContext;
|
||||
arc(x : number, y : number, radius : number, startAngle : number, endAngle : number, antiClockwise : boolean) : CanvasContext;
|
||||
glow() : CanvasContext;
|
||||
fill() : CanvasContext;
|
||||
@@ -438,8 +441,9 @@ declare namespace Vex {
|
||||
}
|
||||
|
||||
class FretHandFinger extends Modifier {
|
||||
constructor(number : number);
|
||||
constructor(number : number|string);
|
||||
static format(nums : FretHandFinger[], state : {left_shift : number, right_shift : number, text_line : number}) : void;
|
||||
finger: number|string;
|
||||
getNote() : Note;
|
||||
setNote(note : Note) : FretHandFinger;
|
||||
getIndex() : number;
|
||||
@@ -488,11 +492,16 @@ declare namespace Vex {
|
||||
|
||||
class GraceNote extends StaveNote {
|
||||
constructor(note_struct : {slash? : boolean, type? : string, dots? : number, duration : string, clef? : string, keys : string[], octave_shift? : number, auto_stem? : boolean, stem_direction? : number});
|
||||
static LEDGER_LINE_OFFSET : number;
|
||||
getStemExtension() : number;
|
||||
getCategory() : string;
|
||||
draw() : void;
|
||||
}
|
||||
|
||||
namespace GraceNote {
|
||||
const SCALE : number;
|
||||
}
|
||||
|
||||
class GraceNoteGroup extends Modifier {
|
||||
//TODO remove the following lines once TypeScript allows subclass overrides with type changes or type inconsistencies mentioned below are fixed
|
||||
setWidth(width : number) : Modifier;
|
||||
@@ -621,7 +630,8 @@ declare namespace Vex {
|
||||
getTickMultiplier() : Fraction;
|
||||
applyTickMultiplier(numerator : number, denominator : number) : void;
|
||||
setDuration(duration : Fraction) : void;
|
||||
|
||||
preFormatted : boolean;
|
||||
|
||||
constructor(note_struct : {type? : string, dots? : number, duration : string});
|
||||
getPlayNote() : any;
|
||||
setPlayNote(note : any) : Note;
|
||||
@@ -757,8 +767,8 @@ declare namespace Vex {
|
||||
beginPath() : RaphaelContext;
|
||||
moveTo(x : number, y : number) : RaphaelContext;
|
||||
lineTo(x : number, y : number) : RaphaelContext;
|
||||
bezierCurveToTo(x1 : number, y1 : number, x2 : number, y2 : number, x : number, y : number) : RaphaelContext;
|
||||
quadraticCurveToTo(x1 : number, y1 : number, x : number, y : number) : RaphaelContext; //inconsistent name: x, y -> x2, y2
|
||||
bezierCurveTo(x1 : number, y1 : number, x2 : number, y2 : number, x : number, y : number) : RaphaelContext;
|
||||
quadraticCurveTo(x1 : number, y1 : number, x : number, y : number) : RaphaelContext; //inconsistent name: x, y -> x2, y2
|
||||
arc(x : number, y : number, radius : number, startAngle : number, endAngle : number, antiClockwise : boolean) : RaphaelContext;
|
||||
glow() : {width : number, fill : boolean, opacity : number, offsetx : number, offsety : number, color : string}; //inconsistent type : Object -> RaphaelContext
|
||||
fill() : RaphaelContext;
|
||||
@@ -805,6 +815,7 @@ declare namespace Vex {
|
||||
|
||||
class Stave {
|
||||
constructor(x : number, y : number, width : number, options? : {vertical_bar_width? : number, glyph_spacing_px? : number, num_lines? : number, fill_style? : string, spacing_between_lines_px? : number, space_above_staff_ln? : number, space_below_staff_ln? : number, top_text_position? : number});
|
||||
options: {vertical_bar_width? : number, glyph_spacing_px? : number, num_lines? : number, fill_style? : string, left_bar? : boolean, right_bar? : boolean, spacing_between_lines_px? : number, space_above_staff_ln? : number, space_below_staff_ln? : number, top_text_position? : number};
|
||||
resetLines() : void;
|
||||
setNoteStartX(x : number) : Stave;
|
||||
getNoteStartX() : number;
|
||||
@@ -827,7 +838,7 @@ declare namespace Vex {
|
||||
setRepetitionTypeRight(type : Repetition.type, y : number) : Stave;
|
||||
setVoltaType(type : Volta.type, number_t : number, y : number) : Stave;
|
||||
setSection(section : string, y : number) : Stave;
|
||||
setTempo(tempo : {name? : string, duration : string, dots : number, bpm : number}, y : number) : Stave;
|
||||
setTempo(tempo : {name? : string, duration : string, dots : boolean, bpm : number}, y : number) : Stave;
|
||||
setText(text : string, position : Modifier.Position, options? : {shift_x? : number, shift_y? : number, justification? : TextNote.Justification}) : Stave;
|
||||
getHeight() : number;
|
||||
getSpacingBetweenLines() : number;
|
||||
@@ -858,10 +869,15 @@ declare namespace Vex {
|
||||
getConfigForLines() : {visible : boolean}[];
|
||||
setConfigForLine(line_number : number, line_config : {visible : boolean}) : Stave;
|
||||
setConfigForLines(lines_configuration : {visible : boolean}[]) : Stave;
|
||||
getModifiers(position? : number, category? : string) : StaveModifier[];
|
||||
}
|
||||
|
||||
class StaveConnector {
|
||||
constructor(top_stave : Stave, bottom_stave : Stave);
|
||||
top_stave : Stave;
|
||||
bottom_stave : Stave;
|
||||
thickness : number;
|
||||
x_shift : number;
|
||||
setContext(ctx : IRenderContext) : StaveConnector;
|
||||
setType(type : StaveConnector.type) : StaveConnector;
|
||||
setText(text : string, text_options? : {shift_x? : number, shift_y? : number}) : StaveConnector;
|
||||
@@ -918,6 +934,9 @@ declare namespace Vex {
|
||||
addToStaveEnd(stave : Stave, firstGlyph : boolean) : StaveModifier;
|
||||
addModifier() : void;
|
||||
addEndModifier() : void;
|
||||
getPosition() : number;
|
||||
getWidth() : number;
|
||||
getPadding(index: number) : number;
|
||||
}
|
||||
|
||||
namespace StaveModifier {
|
||||
@@ -929,10 +948,13 @@ declare namespace Vex {
|
||||
//TODO remove the following lines once TypeScript allows subclass overrides with type changes and/or inconsistencies mentioned below are fixed
|
||||
buildStem() : StemmableNote;
|
||||
setStave(stave : Stave) : Note;
|
||||
addModifier(modifier : Modifier, index? : number) : Note;
|
||||
//TODO: vexflow actualy managed to have Note use modifier, index and stavenote index,modifier. To use the function in
|
||||
// Typescript we need to allow both. The name is the correct type :(
|
||||
addModifier(index : any, modifier? : any) : Note;
|
||||
getModifierStartXY() : {x : number, y : number};
|
||||
getDots() : number;
|
||||
|
||||
x_shift: number;
|
||||
|
||||
constructor(note_struct : {type? : string, dots? : number, duration : string, clef? : string, keys : string[], octave_shift? : number, auto_stem? : boolean, stem_direction? : number});
|
||||
static DEBUG : boolean;
|
||||
static format(notes : StaveNote[] , state : {left_shift : number, right_shift : number, text_line : number}) : boolean;
|
||||
@@ -959,11 +981,11 @@ declare namespace Vex {
|
||||
getLineForRest() : number;
|
||||
getModifierStartXY(position : Modifier.Position, index : number) : {x : number, y : number};
|
||||
setStyle(style : {shadowColor? : string, shadowBlur? : string, fillStyle? : string, strokeStyle? : string}) : void; // inconsistent type: void -> StaveNote
|
||||
setStemStyle(style : {shadowColor? : string, shadowBlur? : string, fillStyle? : string, strokeStyle? : string}) : void;
|
||||
setKeyStyle(index : number, style : {shadowColor? : string, shadowBlur? : string, fillStyle? : string, strokeStyle? : string}) : StaveNote;
|
||||
setKeyLine(index : number, line : number) : StaveNote;
|
||||
getKeyLine(index : number) : number;
|
||||
addToModifierContext(mContext : ModifierContext) : StaveNote;
|
||||
addModifier(index : number, modifier : Modifier) : StaveNote;
|
||||
addAccidental(index : number, accidental : Accidental) : StaveNote;
|
||||
addArticulation(index : number, articulation : Articulation) : StaveNote;
|
||||
addAnnotation(index : number, annotation : Annotation) : StaveNote;
|
||||
@@ -1084,6 +1106,9 @@ declare namespace Vex {
|
||||
|
||||
constructor(note_struct : {type? : string, dots? : number, duration : string});
|
||||
static DEBUG : boolean;
|
||||
flag: Glyph;
|
||||
getAttribute(attr : string) : any;
|
||||
setFlagStyle(style_struct : {shadowColor? : string, shadowBlur? : string, fillStyle? : string, strokeStyle? : string}) : void;
|
||||
getStem() : Stem;
|
||||
setStem(stem : Stem) : StemmableNote;
|
||||
buildStem() : StemmableNote;
|
||||
@@ -1108,8 +1133,11 @@ declare namespace Vex {
|
||||
//TODO remove the following lines once TypeScript allows subclass overrides with type changes
|
||||
setNote(note : Note) : StringNumber;
|
||||
|
||||
constructor(number : number);
|
||||
// actually this is not really consistent in the vexflow code "ctx.measureText(this.string_number).width" looks
|
||||
// like it is a string. But from the use of it it might be a number ?!
|
||||
constructor(number : number|string);
|
||||
static format(nums : StringNumber[], state : {left_shift : number, right_shift : number, text_line : number}) : boolean;
|
||||
string_number : number|string;
|
||||
getNote() : Note;
|
||||
setNote(note : StemmableNote) : StringNumber;
|
||||
getIndex() : number;
|
||||
@@ -1130,7 +1158,7 @@ declare namespace Vex {
|
||||
}
|
||||
|
||||
class Stroke extends Modifier {
|
||||
constructor(type : Stroke.Type, options : {all_voices? : boolean});
|
||||
constructor(type : Stroke.Type, options? : {all_voices? : boolean});
|
||||
static format(strokes : Stroke[], state : {left_shift : number, right_shift : number, text_line : number}) : boolean;
|
||||
getPosition() : Modifier.Position;
|
||||
addEndNote(note : Note) : Stroke;
|
||||
@@ -1138,14 +1166,18 @@ declare namespace Vex {
|
||||
}
|
||||
|
||||
namespace Stroke {
|
||||
const enum Type {BRUSH_DOWN = 1, BRUSH_UP, ROLL_DOWN, ROLL_UP, RASQUEDO_DOWN, RASQUEDO_UP}
|
||||
const enum Type {BRUSH_DOWN = 1, BRUSH_UP, ROLL_DOWN, ROLL_UP, RASQUEDO_DOWN, RASQUEDO_UP, ARPEGGIO_DIRECTIONLESS}
|
||||
const CATEGORY : string;
|
||||
}
|
||||
|
||||
class SVGContext implements IRenderContext {
|
||||
constructor(element : HTMLElement);
|
||||
svg: SVGElement;
|
||||
state: any;
|
||||
attributes: any;
|
||||
lineWidth: number;
|
||||
iePolyfill() : boolean;
|
||||
setFont(family : string, size : number, weight? : number) : SVGContext;
|
||||
setFont(family : string, size : number, weight? : number|string) : SVGContext;
|
||||
setRawFont(font : string) : SVGContext;
|
||||
setFillStyle(style : string) : SVGContext;
|
||||
setBackgroundFillStyle(style : string) : SVGContext;
|
||||
@@ -1165,8 +1197,8 @@ declare namespace Vex {
|
||||
beginPath() : SVGContext;
|
||||
moveTo(x : number, y : number) : SVGContext;
|
||||
lineTo(x : number, y : number) : SVGContext;
|
||||
bezierCurveToTo(x1 : number, y1 : number, x2 : number, y2 : number, x : number, y : number) : SVGContext;
|
||||
quadraticCurveToTo(x1 : number, y1 : number, x : number, y : number) : SVGContext; //inconsistent: x, y -> x2, y2
|
||||
bezierCurveTo(x1 : number, y1 : number, x2 : number, y2 : number, x : number, y : number) : SVGContext;
|
||||
quadraticCurveTo(x1 : number, y1 : number, x : number, y : number) : SVGContext; //inconsistent: x, y -> x2, y2
|
||||
arc(x : number, y : number, radius : number, startAngle : number, endAngle : number, antiClockwise : boolean) : SVGContext;
|
||||
closePath() : SVGContext;
|
||||
glow() : SVGContext;
|
||||
@@ -1236,6 +1268,9 @@ declare namespace Vex {
|
||||
class TextBracket {
|
||||
constructor(bracket_data : {start : Note, stop : Note, text? : string, superscript? : string, position? : TextBracket.Positions});
|
||||
static DEBUG : boolean;
|
||||
start : Note;
|
||||
stop : Note;
|
||||
position : TextBracket.Positions;
|
||||
applyStyle(context : IRenderContext) : TextBracket;
|
||||
setDashed(dashed : boolean, dash? : number[]) : TextBracket;
|
||||
setFont(font : {family : string, size : number, weight : string}) : TextBracket;
|
||||
@@ -1372,7 +1407,7 @@ declare namespace Vex {
|
||||
}
|
||||
|
||||
class Tuplet {
|
||||
constructor(notes : StaveNote[], options? : {num_notes? : number, beats_occupied? : number});
|
||||
constructor(notes : StaveNote[], options? : {location? : number, bracketed? : boolean, ratioed : boolean, num_notes? : number, notes_occupied? : number, y_offset? : number});
|
||||
attach() : void;
|
||||
detach() : void;
|
||||
setContext(context : IRenderContext) : Tuplet;
|
||||
|
||||
Reference in New Issue
Block a user