import { IComponent } from '../types' ; export enum { number } export enum ChangeDetectionStrategy { OnPush , Default } export type TMarkForCheck = ( ) => Promise < void > ; returns { Promise < void > } async function markForCheck ( ) { if ( ( this as IComponent ) . nvDoCheck ) ( this as IComponent ) . nvDoCheck ( ) ; await ( this as IComponent ) . render ( ) ; } export returns { ( target : IComponent , propertyName : string ) => any } export function MarkForCheck ( ) { return function ( target , propertyName ) : any { target [ propertyName ] = markForCheck ; return target [ propertyName ] ; } ; }