import { BaseOptions, MosPattern, MosScale } from '../types';
/**
 * Calculate the number of periods in a MOS pattern
 */
export declare function calculatePeriods(largeSteps: number, smallSteps: number): number;
/**
 * Calculate the period size of a MOS pattern
 */
export declare function calculatePeriodSize(largeSteps: number, smallSteps: number): number;
/**
 * Get the number of bright generators to go down based on options
 */
export declare function getDown(options: BaseOptions, period: number, numPeriods: number): number;
/**
 * Generate a MOS pattern string
 */
export declare function generatePattern(largeSteps: number, smallSteps: number, options?: BaseOptions): string;
/**
 * Generate a MOS scale from a pattern
 */
export declare function generateScale(pattern: string, sizeOfLargeStep: number, sizeOfSmallStep: number): number[];
/**
 * Create a complete MOS pattern object
 */
export declare function createMosPattern(largeSteps: number, smallSteps: number, options?: BaseOptions): MosPattern;
/**
 * Create a complete MOS scale object
 */
export declare function createMosScale(largeSteps: number, smallSteps: number, options?: BaseOptions & {
    sizeOfLargeStep?: number;
    sizeOfSmallStep?: number;
}): MosScale;
