import { RomanNumeral } from './roman-numeral'; import { Scale } from '../scale'; import { Rule, MatchingRule } from './rule'; export interface ProgressionRule extends Rule { source: MatchingRule; target: MatchingRule; } export declare namespace Progression { namespace Shared { const basic: ProgressionRule[]; const basicInversions: ProgressionRule[]; const dominantSevenths: ProgressionRule[]; const basicPredominant: ProgressionRule[]; const submediant: ProgressionRule[]; const subdominantSevenths: ProgressionRule[]; const tonicSubstitutes: ProgressionRule[]; const mediant: ProgressionRule[]; const neopolitan: ProgressionRule[]; } const defaultProgressions: ProgressionRule[]; function matchingProgressions(scale: Scale, previous: RomanNumeral, progressions?: ProgressionRule[]): Generator; }