changeset 123:efd72dc8337c

Start writing type definitions for waves-ui - this may eventually belong in waves-ui itself.
author Lucas Thompson <dev@lucas.im>
date Wed, 15 Mar 2017 12:09:50 +0000
parents 3e19908d4c8b
children e40a39acec25
files src/app/waveform/waves-ui.d.ts
diffstat 1 files changed, 36 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/app/waveform/waves-ui.d.ts	Tue Mar 14 19:27:24 2017 +0000
+++ b/src/app/waveform/waves-ui.d.ts	Wed Mar 15 12:09:50 2017 +0000
@@ -1,4 +1,39 @@
 /**
  * Created by lucas on 01/12/2016.
  */
-declare module 'waves-ui';
+declare const AmbientInstance: WavesUserInterface;
+
+declare module 'waves-ui' {
+  export default AmbientInstance;
+}
+
+interface WavesUserInterface {
+  core: any;
+  helpers: any;
+  states: any;
+  utils: Utilities;
+}
+
+interface MatrixEntity {
+  getColumnCount: () => number;
+  getColumnHeight: () => number;
+  getColumn: (n: number) => number[];
+  getStepDuration: () => number;
+  getStartTime: () => number;
+}
+
+interface MatrixEntityConstructor {
+  new(): MatrixEntity;
+}
+
+interface PrefilledMatrixEntityConstructor {
+  new(data: Float32Array[] | number[][],
+      startTime: number,
+      stepDuration: number): MatrixEntity;
+}
+
+interface Utilities {
+  MatrixEntity: MatrixEntityConstructor;
+  PrefilledMatrixEntity: PrefilledMatrixEntityConstructor;
+  scales: any;
+}