@darkpay/dark-types
Version:
JavaScript type definitions for Darkdot blockchain.
59 lines (58 loc) • 1.72 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.ProductExtension = exports.Comment = exports.SharedProduct = exports.RegularProduct = void 0;
/* eslint-disable @typescript-eslint/adjacent-overload-signatures */
const types_1 = require("@polkadot/types");
const registry_1 = __importDefault(require("../registry"));
class RegularProduct extends types_1.Null {
}
exports.RegularProduct = RegularProduct;
class SharedProduct extends types_1.u64 {
}
exports.SharedProduct = SharedProduct;
class Comment extends types_1.Struct {
constructor(value) {
super(registry_1.default, {
parent_id: 'Option<u64>',
root_product_id: 'u64'
}, value);
}
get parent_id() {
return this.get('parent_id');
}
get root_product_id() {
return this.get('root_product_id');
}
}
exports.Comment = Comment;
class ProductExtension extends types_1.Enum {
constructor(value) {
super(registry_1.default, {
RegularProduct,
Comment: Comment,
SharedProduct
}, value);
}
get isComment() {
return this.type === 'Comment';
}
get asComment() {
return this.value;
}
get isRegularProduct() {
return this.type === 'RegularProduct';
}
get isSharedProduct() {
return this.type === 'SharedProduct';
}
get isSharedComment() {
return this.type === 'SharedComment';
}
get asSharedProduct() {
return this.value;
}
}
exports.ProductExtension = ProductExtension;