@swaptoshi/governance-module
Version:
Klayr governance on-chain module
40 lines • 1.04 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.GovernableConfigRegistry = void 0;
class GovernableConfigRegistry {
constructor() {
this._registry = new Map();
}
register(key, value) {
this._registry.set(key, value);
}
unregister(key) {
if (!this._registry.has(key)) {
return false;
}
this._registry.delete(key);
return true;
}
get(key) {
const named = this._registry.get(key);
if (!named) {
throw new Error(`Governable config for module ${key} is not registered.`);
}
return named;
}
keys() {
return this._registry.keys();
}
has(key) {
return this._registry.has(key);
}
values() {
const result = [];
for (const klass of this._registry.values()) {
result.push(klass);
}
return result;
}
}
exports.GovernableConfigRegistry = GovernableConfigRegistry;
//# sourceMappingURL=registry.js.map