/// <reference types="node" />
export declare enum MessageType {
    Error = 0,
    Warning = 1,
    Print = 2
}
export interface IMessage {
    readonly timestamp: number;
    readonly seqNumber: number;
    readonly messageType: MessageType;
}
export interface IPrintMessage extends IMessage {
    readonly line: string;
}
export interface IErrorMessage extends IMessage {
    readonly numOccur: number;
    readonly errorCode: number;
    readonly flags: number;
    readonly details: string;
    readonly location: string;
    readonly callStack: string;
}
export declare class PrintMessage implements IPrintMessage {
    readonly timestamp: number;
    readonly seqNumber: number;
    readonly line: string;
    readonly messageType: MessageType;
    constructor(data: Buffer);
}
export declare class ErrorMessage implements IMessage {
    readonly timestamp: number;
    readonly seqNumber: number;
    readonly numOccur: number;
    readonly errorCode: number;
    readonly flags: number;
    readonly details: string;
    readonly location: string;
    readonly callStack: string;
    readonly messageType: MessageType;
    constructor(data: Buffer);
    private getSizedString;
}
