/**
|
* Accumulates multiple errors, to all be thrown together instead of one at a time.
|
*/
|
export declare class ErrorBuffer {
|
errors: Error[];
|
/**
|
* Adds the given error(s) (or other objects, which are converted to errors).
|
*/
|
add(...errors: unknown[]): void;
|
/**
|
* Adds the given error, then throws it. If other errors have been added already, throws a `MultiError` instead.
|
*/
|
throw(error: unknown): never;
|
/**
|
* Catches errors thrown from the given function, adding them to the array of accumulated errors.
|
*/
|
catching<T>(fun: () => T): T | undefined;
|
/**
|
* Catches errors thrown from the given async function or promise, adding them to the array of accumulated errors.
|
*/
|
catchingAsync<T>(fun: Promise<T> | (() => Promise<T>)): Promise<T | undefined>;
|
/**
|
* Throws any accumulated errors.
|
*/
|
check(): void;
|
readonly isEmpty: boolean;
|
}
|