/**
* The type of error that occurred.
* @public
*/
export type ErrorType = 'invalid-retry' | 'unknown-field'
/**
* Error thrown when encountering an issue during parsing.
*
* @public
*/
export class ParseError extends Error {
/**
* The type of error that occurred.
*/
type: ErrorType
/**
* In the case of an unknown field encountered in the stream, this will be the field name.
*/
field?: string
/**
* In the case of an unknown field encountered in the stream, this will be the value of the field.
*/
value?: string
/**
* The line that caused the error, if available.
*/
line?: string
constructor(
message: string,
options: {type: ErrorType; field?: string; value?: string; line?: string},
) {
super(message)
this.name = 'ParseError'
this.type = options.type
this.field = options.field
this.value = options.value
this.line = options.line
}
}