remarks public export class InternalError extends Error { remarks public static breakInDebugger : boolean = true ; /**
     * The underlying error message, without the additional boilerplate for an `InternalError`.
     */ public readonly unformattedMessage : string ; /**
     * Constructs a new instance of the  InternalError class.
     *
     *  param message - A message describing the error.  This will be assigned to
     *  InternalError . unformattedMessage .  The `Error.message` field will have additional boilerplate
     * explaining that the user has encountered a software defect.
      public constructor ( message ) { super ( InternalError . _formatMessage ( message ) ) ; ( this as any ) . __proto__ = InternalError . prototype ; this . unformattedMessage = message ; if ( InternalError . breakInDebugger ) { debugger ; } } private static _formatMessage ( unformattedMessage ) { return ( `Internal Error: ${ unformattedMessage }\n\nYou have encountered a software defect. Please consider` + ` reporting the issue to the maintainers of this application.` ) ; } @override  public toString ( ) { return this . message ; } }