export declare enum ProtocolError {
    MALFORMED_MESSAGE = 1,
    UNKNOWN_OPCODE = 2,
    HANDSHAKE_REQUIRED = 3,
    HANDSHAKE_ALREADY_COMPLETED = 4,
    UNSUPPORTED_PROTOCOL_VERSION = 5,
    PAYLOAD_TOO_LARGE = 6,
    INVALID_REQUEST_ID = 7,
    CONNECTION_CLOSING = 8,
    RATE_LIMIT_EXCEEDED = 9,
    TOO_MANY_PENDING_REQUESTS = 10,
    REQUEST_TIMEOUT = 11,
    INVALID_MESSAGE_FORMAT = 12
}
export declare enum AuthError {
    AUTHENTICATION_REQUIRED = 1000,
    INVALID_CREDENTIALS = 1001,
    SESSION_EXPIRED = 1002,
    PERMISSION_DENIED = 1003,
    INVALID_CLIENT_INFO = 1004
}
export declare enum ResourceError {
    NOT_FOUND = 2000,
    BLOCK_NOT_FOUND = 2001,
    TRANSACTION_NOT_FOUND = 2002,
    ADDRESS_NOT_FOUND = 2003,
    CONTRACT_NOT_FOUND = 2004,
    EPOCH_NOT_FOUND = 2005,
    SUBSCRIPTION_NOT_FOUND = 2006,
    ALREADY_EXISTS = 2100,
    SUBSCRIPTION_ALREADY_EXISTS = 2101,
    MAX_SUBSCRIPTIONS_REACHED = 2102
}
export declare enum ValidationError {
    INVALID_PARAMS = 3000,
    MISSING_REQUIRED_FIELD = 3001,
    VALUE_OUT_OF_RANGE = 3002,
    INVALID_ADDRESS = 3003,
    INVALID_HASH = 3004,
    INVALID_BLOCK_IDENTIFIER = 3005,
    INVALID_TRANSACTION_DATA = 3006,
    INVALID_SIGNATURE = 3007,
    INVALID_CALLDATA = 3008,
    INVALID_BLOCK_HEIGHT = 3009,
    INVALID_EPOCH_NUMBER = 3010,
    INVALID_POINTER = 3011,
    INVALID_PUBLIC_KEY = 3012
}
export declare enum InternalError {
    INTERNAL_ERROR = 4000,
    DATABASE_ERROR = 4001,
    STORAGE_ERROR = 4002,
    SERIALIZATION_ERROR = 4003,
    DESERIALIZATION_ERROR = 4004,
    VM_ERROR = 4005,
    NETWORK_ERROR = 4006,
    SERVICE_UNAVAILABLE = 4007,
    NOT_IMPLEMENTED = 4008,
    TIMEOUT = 4009
}
export type WebSocketErrorCode = ProtocolError | AuthError | ResourceError | ValidationError | InternalError;
export declare const ErrorMessages: Readonly<Record<WebSocketErrorCode, string>>;
export declare function getErrorMessage(code: WebSocketErrorCode): string;
