music21j
Version:
A toolkit for computer-aided musicology, Javascript version
126 lines • 4.55 kB
TypeScript
import * as base from './base';
import * as interval from './interval';
import * as pitch from './pitch';
import * as note from './note';
/**
* A generalized Scale object.
*/
export declare class Scale extends base.Music21Object {
static get className(): string;
type: string;
constructor();
/**
*
* @returns {string}
* @readonly
*/
get name(): string;
/**
* @readonly
* @returns {boolean}
*/
get isConcrete(): boolean;
}
/**
* An Abstract Scale
*/
export declare class AbstractScale extends Scale {
static get className(): string;
protected _net: interval.Interval[];
tonicDegree: number;
octaveDuplicating: boolean;
deterministic: boolean;
protected _alteredDegrees: {};
protected _oneOctaveRealizationCache: any;
constructor();
/**
* To be subclassed
*/
buildNetwork(mode?: any): void;
/**
* One scale equals another
*
* @param {AbstractScale} other - the scale compared to.
* @returns {boolean}
*/
equals(other: AbstractScale): boolean;
buildNetworkFromPitches(pitchList: string[] | pitch.Pitch[] | note.Note[]): void;
getDegreeMaxUnique(): number;
getRealization(pitchObj: pitch.Pitch, unused_stepOfPitch?: any, unused_minPitch?: any, unused_maxPitch?: any, unused_direction?: any, unused_reverse?: any): pitch.Pitch[];
getPitchFromNodeDegree(pitchReference: pitch.Pitch, _nodeName: string | number, nodeDegreeTarget: number): pitch.Pitch;
getRelativeNodeDegree(pitchReference: pitch.Pitch, unused_nodeName: string | number, pitchTarget: pitch.Pitch, unused_comparisonAttribute?: any, unused_direction?: any): number;
}
export declare class AbstractDiatonicScale extends AbstractScale {
static get className(): string;
dominantDegree: number;
relativeMajorDegree: number;
relativeMinorDegree: number;
/**
*
* @property {string} type
* @property {number|undefined} tonicDegree
* @property {number|undefined} dominantDegree
* @property {boolean} octaveDuplicating
*/
constructor(mode?: string);
buildNetwork(mode: string): void;
}
export declare class AbstractHarmonicMinorScale extends AbstractScale {
static get className(): string;
constructor();
buildNetwork(): void;
}
export declare class AbstractAscendingMelodicMinorScale extends AbstractScale {
static get className(): string;
constructor();
buildNetwork(): void;
}
export declare class ConcreteScale extends Scale {
static get className(): string;
tonic: pitch.Pitch;
abstract: AbstractScale;
constructor(tonic: string | pitch.Pitch);
get isConcrete(): boolean;
getTonic(): pitch.Pitch;
getPitches(unused_minPitch?: any, unused_maxPitch?: any, unused_direction?: any): pitch.Pitch[];
pitchFromDegree(degree: number, unused_minPitch?: any, unused_maxPitch?: any, unused_direction?: any, unused_equateTermini?: any): pitch.Pitch;
getScaleDegreeFromPitch(pitchTarget: pitch.Pitch, unused_direction?: any, unused_comparisonAttribute?: any): number;
}
export declare class DiatonicScale extends ConcreteScale {
static get className(): string;
constructor(tonic: string | pitch.Pitch);
}
export declare class MajorScale extends DiatonicScale {
static get className(): string;
constructor(tonic: string | pitch.Pitch);
}
export declare class MinorScale extends DiatonicScale {
static get className(): string;
constructor(tonic: string | pitch.Pitch);
}
export declare class HarmonicMinorScale extends ConcreteScale {
static get className(): string;
constructor(tonic: string | pitch.Pitch);
}
export declare class AscendingMelodicMinorScale extends ConcreteScale {
static get className(): string;
constructor(tonic: string | pitch.Pitch);
}
/**
* Function, not class. DEPRECATED: to be removed.
*/
export declare function SimpleDiatonicScale(tonic: pitch.Pitch, scaleSteps: string[]): pitch.Pitch[];
/**
* Function, not class. DEPRECATED: to be removed.
* One octave of a major scale
*/
export declare function ScaleSimpleMajor(tonic: pitch.Pitch): pitch.Pitch[];
/**
* Function, not class. DEPRECATED: to be removed.
* One octave of a minor scale
* [minorType='natural'] - 'harmonic', 'harmonic-minor',
* 'melodic', 'melodic-minor', 'melodic-minor-ascending',
* 'melodic-ascending' or other (=natural/melodic-descending)
*/
export declare function ScaleSimpleMinor(tonic: any, minorType: any): pitch.Pitch[];
//# sourceMappingURL=scale.d.ts.map