export type Control = { value: T; label: string; }; export interface Range extends Control { range: { min: number; max: number; step: number; }; } export interface Text extends Control { placeholder: string; } export type Bool = Control; interface ThemeObject { a: string; b: string; } export type Theme = Control; export interface KeyboardControls { [key: string]: Range | Bool | Theme; width: Range; height: Range; polyphony: Range; theme: Theme; notes: Bool; keys: Bool; sound: Bool; } export {};