@elgato/schemas
Version:
Collection of schemas, and TypeScript declarations, to support the creation and validation of Stream Deck SDK files
92 lines (89 loc) • 3.67 kB
JavaScript
/**!
* @author Elgato
* @module elgato/streamdeck
* @license MIT
* @copyright Copyright (c) Corsair Memory Inc.
*/
'use strict';
/**
* Stream Deck device types.
*/
exports.DeviceType = void 0;
(function (DeviceType) {
/**
* Stream Deck, comprised of 15 customizable LCD keys in a 5 x 3 layout.
*/
DeviceType[DeviceType["StreamDeck"] = 0] = "StreamDeck";
/**
* Stream Deck Mini, comprised of 6 customizable LCD keys in a 3 x 2 layout.
*/
DeviceType[DeviceType["StreamDeckMini"] = 1] = "StreamDeckMini";
/**
* Stream Deck XL, comprised of 32 customizable LCD keys in an 8 x 4 layout.
*/
DeviceType[DeviceType["StreamDeckXL"] = 2] = "StreamDeckXL";
/**
* Stream Deck Mobile, for iOS and Android.
*/
DeviceType[DeviceType["StreamDeckMobile"] = 3] = "StreamDeckMobile";
/**
* Corsair G Keys, available on select Corsair keyboards.
*/
DeviceType[DeviceType["CorsairGKeys"] = 4] = "CorsairGKeys";
/**
* Stream Deck Pedal, comprised of 3 customizable pedals.
*/
DeviceType[DeviceType["StreamDeckPedal"] = 5] = "StreamDeckPedal";
/**
* Corsair Voyager laptop, comprising 10 buttons in a horizontal line above the keyboard.
*/
DeviceType[DeviceType["CorsairVoyager"] = 6] = "CorsairVoyager";
/**
* Stream Deck +, comprised of 8 customizable LCD keys in a 4 x 2 layout, a touch strip, and 4 dials.
*/
DeviceType[DeviceType["StreamDeckPlus"] = 7] = "StreamDeckPlus";
/**
* SCUF controller G keys, available on select SCUF controllers, for example SCUF Envision.
*/
DeviceType[DeviceType["SCUFController"] = 8] = "SCUFController";
/**
* Stream Deck Neo, comprised of 8 customizable LCD keys in a 4 x 2 layout, an info bar, and 2 touch points for page navigation.
*/
DeviceType[DeviceType["StreamDeckNeo"] = 9] = "StreamDeckNeo";
/**
* Stream Deck Studio, comprised of 32 customizable LCD keys in a 16 x 2 layout, and 2 dials (1 on either side).
*/
DeviceType[DeviceType["StreamDeckStudio"] = 10] = "StreamDeckStudio";
})(exports.DeviceType || (exports.DeviceType = {}));
/**
* List of available types that can be applied to {@link Bar} and {@link GBar} to determine their style.
*/
exports.BarSubType = void 0;
(function (BarSubType) {
/**
* Rectangle bar; the bar fills from left to right, determined by the {@link Bar.value}, similar to a standard progress bar.
*/
BarSubType[BarSubType["Rectangle"] = 0] = "Rectangle";
/**
* Rectangle bar; the bar fills outwards from the centre of the bar, determined by the {@link Bar.value}.
* @example
* // Value is 2, range is 1-10.
* // [ ███ ]
* @example
* // Value is 10, range is 1-10.
* // [ █████]
*/
BarSubType[BarSubType["DoubleRectangle"] = 1] = "DoubleRectangle";
/**
* Trapezoid bar, represented as a right-angle triangle; the bar fills from left to right, determined by the {@link Bar.value}, similar to a volume meter.
*/
BarSubType[BarSubType["Trapezoid"] = 2] = "Trapezoid";
/**
* Trapezoid bar, represented by two right-angle triangles; the bar fills outwards from the centre of the bar, determined by the {@link Bar.value}. See {@link BarSubType.DoubleRectangle}.
*/
BarSubType[BarSubType["DoubleTrapezoid"] = 3] = "DoubleTrapezoid";
/**
* Rounded rectangle bar; the bar fills from left to right, determined by the {@link Bar.value}, similar to a standard progress bar.
*/
BarSubType[BarSubType["Groove"] = 4] = "Groove";
})(exports.BarSubType || (exports.BarSubType = {}));