import Exceptional from "../util/Exceptional"; declare class Value { private type; private dotCount; private duration; constructor(type: Value.Type, dotCount?: number, duration?: number); dotted(): Value; undotted(): Value; tuplet(n: number): Value; triplet(): Value; static fromString(valueString: string): Exceptional; toString(): string; getType(): Value.Type; getDotCount(): number; getDuration(): number; } declare module Value { class Type { static size: number; private static _values; static DOUBLE_WHOLE: Type; static WHOLE: Type; static HALF: Type; static QUARTER: Type; static EIGHTH: Type; static SIXTEENTH: Type; static THIRTY_SECOND: Type; static SIXTY_FOURTH: Type; static HUNDRED_TWENTY_EIGHTH: Type; static TWO_HUNDRED_FIFTY_SIXTH: Type; private constructor(); static values(): Type[]; ordinal(): number; static valueOf(typeString: string): Type; toString(): string; static fromBaseDuration(baseDuration: number): Type; static fromString(typeString: string): Exceptional; getBaseDuration(): number; } const DOUBLE_WHOLE: Value; const WHOLE: Value; const HALF: Value; const QUARTER: Value; const EIGHTH: Value; const SIXTEENTH: Value; const THIRTY_SECOND: Value; const SIXTY_FOURTH: Value; const HUNDRED_TWENTY_EIGHTH: Value; const TWO_HUNDRED_FIFTY_SIXTH: Value; } export default Value;