"use strict";var t=function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(t.__proto__=e)},e=function(){function t(t,e){for(var n in e){var r=e[n];r.configurable=!0,r.value&&(r.writable=!0)}Object.defineProperties(t,e)}return function(e,n,r){return n&&t(e.prototype,n),r&&t(e,r),e}}(),n=function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")},r=function(){function t(){n(this,t)}return e(t,null,{getInfo:{value:function(){throw"Implement static Layer.getInfo() to supply property meta data"}},isEvent:{value:function(){throw"Implement static Layer.isEvent()"}}}),t}(),o=function(r){function o(){n(this,o),null!=r&&r.apply(this,arguments)}return t(o,r),e(o,null,{generateDofs:{value:function(){throw"Implement static Layer.generateDofs()"}},isEvent:{value:function(){return!1}}}),o}(r),u=function(r){function o(){n(this,o),null!=r&&r.apply(this,arguments)}return t(o,r),e(o,null,{generateEvent:{value:function(){throw"Implement static Layer.generateEvent()"}},isEvent:{value:function(){return!0}},isValid:{value:function(){throw"Implement static Layer.isValid(generedatedEvent)"}}}),o}(r);module.exports={DOFBaseLayer:o,EventBaseLayer:u};