import { NgPackagerHooks } from './hooks' ; const store = new WeakMap < Type , JobMetadata > ( ) ; export interface Type < T = any > extends Function { new ( ... args ) : T ; } export interface JobMetadata { schema : string ; selector : string ; hooks : NgPackagerHooks ; internalWatch ? : boolean ; } export function findJobMetadata ( type ) { return store . get ( type ) ; } export function Job ( metadata ) { return target => { store . set ( target , metadata ) ; } ; }