import { CustomError } from 'ts-custom-error' ; /**
 * Custom Error class of type Exception.
 */ export default class Exception extends CustomError { /**
     * It's typed as string so it can be extended and overriden.
     */ static readonly kind : string = 'Exception' ; /**
     * Allows Exception to be constructed directly
     * with some message and prototype definition.
     */ constructor ( public message = undefined ) { super ( message ) ; } public getKind ( ) { const ex = < typeof Exception > this . constructor ; return ex . kind ; } }