title: Add custom component-level property to Vue typescript components
body: <p>I am using <code>vue-class-component</code> (and <code>vue-property-decorator</code>) in my vue2 project.  I would like to incorporate component-level security checking to each component as it is loaded.  I envision a signature like this:</p>
  <pre><code>
  @Component
  @Security('USERS_LIST')
  export default class UserList extends Vue {
  ...
  }
  
  </code></pre>
  <p>Internally, the parameter passed (USERS_LIST) is checked against some Vuex store, and on failure the user is notified or redirected using Vue-Router.  I can handle all the wiring, but I'm a bit lost on how I can create a component-level decorator, or expand the existing <code>@Component</code> decorator on my own.</p>
  <p>I feel like I could use a <code>mixin</code> to override a lifecycle method and check state for the security aspect.  But how do I define the <code>@Security</code> decorator, and provide it a value per-component?</p>