UNPKG

react-orchestra

Version:

A toolbox to build interactive and smart instruments on the web and mobile.

55 lines (54 loc) 1.4 kB
export declare type NoteType = { noteName: string; instrumentName: string; durationInMS: number; }; export declare type ROMidiFormat = { meta: any; tracks: any[]; }; export declare type Midi = { meta: any; tracks: Track[]; header: { ticksPerBeat: number; }; }; export interface ProgramChangeEvent extends MidiTrackEvent { programNumber: number; } export interface MidiTrackEvent { type: string; subtype: string; deltaTime: number; } export interface KeySignatureEvent extends MidiTrackEvent { key: string; scale: string; } export interface TimeSignatureEvent extends MidiTrackEvent { numerator: number; denominator: number; metronome: number; thirtyseconds: number; } export interface EndOfTrackEvent extends MidiTrackEvent { } export declare type SetTempoEvent = { type: string; subtype: string; deltaTime: number; microsecondsPerBeat: number; }; export declare type NoteOnEvent = { type: string; subtype: string; deltaTime: number; }; export declare type NoteOffEvent = { type: string; subtype: string; deltaTime: number; }; export declare type MidiEvent = TimeSignatureEvent | EndOfTrackEvent | KeySignatureEvent | SetTempoEvent | NoteOnEvent | ProgramChangeEvent | NoteOffEvent; export declare type Track = (MidiEvent)[];