@tonaljs/time-signature
Version:
Musical time signatures
31 lines (29 loc) • 1.1 kB
text/typescript
type TimeSignatureLiteral = string | [number, number] | [string, string];
type ParsedTimeSignature = [number | number[], number];
type ValidTimeSignature = {
readonly empty: false;
readonly name: string;
readonly upper: number | number[];
readonly lower: number;
readonly type: "simple" | "compound" | "irregular" | "irrational";
readonly additive: number[];
};
type InvalidTimeSignature = {
readonly empty: true;
readonly name: "";
readonly upper: undefined;
readonly lower: undefined;
readonly type: undefined;
readonly additive: [];
};
type TimeSignature = ValidTimeSignature | InvalidTimeSignature;
declare function names(): string[];
declare function get(literal: TimeSignatureLiteral): TimeSignature;
declare function parse(literal: TimeSignatureLiteral): ParsedTimeSignature;
/** @deprecated */
declare const _default: {
names: typeof names;
parse: typeof parse;
get: typeof get;
};
export { type InvalidTimeSignature, type TimeSignature, type TimeSignatureLiteral, type ValidTimeSignature, _default as default, get, names, parse };