import { MosScale, MosScaleWithParent, MosScaleWithDaughter } from '../types';
/**
 * Generate a MOS scale in a specific EDO
 */
export declare function mosInEdo(edo: number, largeSteps: number, smallSteps: number, options?: {
    sizeOfLargeStep?: number;
    sizeOfSmallStep?: number;
    down?: number;
    up?: number;
}): MosScale;
/**
 * Generate a MOS scale in a specific EDO with parent relationship
 */
export declare function mosInEdoWithParent(edo: number, largeSteps: number, smallSteps: number, options?: {
    sizeOfLargeStep?: number;
    sizeOfSmallStep?: number;
    down?: number;
    up?: number;
    accidentals?: 'flat' | 'sharp';
}): MosScaleWithParent;
/**
 * Generate a MOS scale in a specific EDO with daughter relationship
 */
export declare function mosInEdoWithDaughter(edo: number, largeSteps: number, smallSteps: number, options?: {
    sizeOfLargeStep?: number;
    sizeOfSmallStep?: number;
    down?: number;
    up?: number;
    accidentals?: 'flat' | 'sharp' | 'both';
}): MosScaleWithDaughter;
/**
 * Find all valid MOS scales in a specific EDO
 */
export declare function findAllMosInEdo(edo: number, minSize?: number, maxSize?: number, maxHardness?: number): MosScale[];
