/// /// declare namespace pxsim { let pinIds: Map; function pinByName(name: string): Pin; class DalBoard extends CoreBoard implements MusicBoard, LightBoard, CapTouchBoard, AccelerometerBoard, StorageBoard, LightSensorBoard, TemperatureBoard, MicrophoneBoard, ScreenBoard, InfraredBoard, LCDBoard, RadioBoard, ControlMessageBoard { boardDefinition: BoardDefinition; viewHost: visuals.BoardHost; view: SVGElement; edgeConnectorState: EdgeConnectorState; lightSensorState: AnalogSensorState; buttonState: CommonButtonState; lightState: pxt.Map; audioState: AudioState; neopixelPin: Pin; touchButtonState: TouchButtonState; accelerometerState: AccelerometerState; storageState: StorageState; thermometerState: AnalogSensorState; thermometerUnitState: TemperatureUnit; microphoneState: MicrophoneState; screenState: ScreenState; irState: InfraredState; lcdState: LCDState; radioState: RadioState; controlMessageState: ControlMessageState; constructor(boardDefinition: BoardDefinition); kill(): void; initAsync(msg: SimulatorRunMessage): Promise; screenshotAsync(width?: number): Promise; accelerometer(): Accelerometer; getDefaultPitchPin(): Pin; tryGetNeopixelState(pinId: number): CommonNeoPixelState; neopixelState(pinId: number): CommonNeoPixelState; } function initRuntimeWithDalBoard(msg: SimulatorRunMessage): void; function parsePinString(pinString: string): Pin; namespace jacdac { function _setLedChannel(ch: number, val: number): void; } } declare namespace pxsim.visuals { const VIEW_WIDTH = 372.3404255319149; const VIEW_HEIGHT = 361.70212765957444; interface IBoardTheme { accent?: string; display?: string; pin?: string; pinTouched?: string; pinActive?: string; ledOn?: string; ledOff?: string; buttonOuter?: string; buttonUps: string[]; buttonDown?: string; virtualButtonOuter?: string; virtualButtonUp?: string; virtualButtonDown?: string; lightLevelOn?: string; lightLevelOff?: string; soundLevelOn?: string; soundLevelOff?: string; } var themes: IBoardTheme[]; function randomTheme(): IBoardTheme; type ComputedBoardDimensions = { scaleFn: (n: number) => number; height: number; width: number; xOff: number; yOff: number; }; function getBoardDimensions(vis: BoardImageDefinition): ComputedBoardDimensions; interface MetroBoardProps extends GenericBoardProps { runtime?: pxsim.Runtime; theme?: IBoardTheme; disableTilt?: boolean; } class MetroBoardSvg extends GenericBoardSvg { props: MetroBoardProps; board: pxsim.DalBoard; private onBoardLeds; private onBoardNeopixels; private onBoardReset; private onBoardButtons; private onBoardTouchPads; constructor(props: MetroBoardProps); updateTheme(): void; updateState(): void; private addDefs; } } declare namespace pxsim.visuals { } declare namespace pxsim.visuals { class ButtonView implements IBoardPart { element: SVGElement; defs: SVGElement[]; style: string; private state; private bus; private btn; private pinId; private button; init(bus: EventBus, state: CommonButtonState, svgEl: SVGSVGElement, otherParams: Map): void; moveToCoord(xy: Coord): void; updateState(): void; updateTheme(): void; private mkBtn; private attachEvents; } }