@twurple/api
Version:
Interact with Twitch's API.
52 lines (51 loc) • 1.62 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.HelixExtensionBitsProduct = void 0;
const tslib_1 = require("tslib");
const shared_utils_1 = require("@d-fischer/shared-utils");
const common_1 = require("@twurple/common");
/**
* An extension's product to purchase with Bits.
*/
let HelixExtensionBitsProduct = class HelixExtensionBitsProduct extends common_1.DataObject {
/**
* The product's unique identifier.
*/
get sku() {
return this[common_1.rawDataSymbol].sku;
}
/**
* The product's cost, in bits.
*/
get cost() {
return this[common_1.rawDataSymbol].cost.amount;
}
/**
* The product's display name.
*/
get displayName() {
return this[common_1.rawDataSymbol].display_name;
}
/**
* Whether the product is in development.
*/
get inDevelopment() {
return this[common_1.rawDataSymbol].in_development;
}
/**
* Whether the product's purchases is broadcast to all users.
*/
get isBroadcast() {
return this[common_1.rawDataSymbol].is_broadcast;
}
/**
* The product's expiration date. If the product never expires, this is null.
*/
get expirationDate() {
return (0, shared_utils_1.mapNullable)(this[common_1.rawDataSymbol].expiration, exp => new Date(exp));
}
};
exports.HelixExtensionBitsProduct = HelixExtensionBitsProduct;
exports.HelixExtensionBitsProduct = HelixExtensionBitsProduct = tslib_1.__decorate([
(0, common_1.rtfm)('api', 'HelixExtensionBitsProduct', 'sku')
], HelixExtensionBitsProduct);