strudel-docker/repl/src/types.d.ts
2022-02-05 13:02:26 +01:00

23 lines
455 B
TypeScript

export declare interface Fraction {
(v: number): Fraction;
d: number;
n: number;
s: number;
sub: (f: Fraction) => Fraction;
sam: () => Fraction;
}
export declare interface TimeSpan {
constructor: any; //?
begin: Fraction;
end: Fraction;
}
export declare interface Hap<T = any> {
whole: TimeSpan;
part: TimeSpan;
value: T;
show: () => string;
}
export declare interface Pattern<T = any> {
query: (span: TimeSpan) => Hap<T>[];
}