import { PvError } from '@picovoice/web-utils';
import { PvStatus } from './types';
declare class ZebraError extends Error {
    private readonly _status;
    private readonly _shortMessage;
    private readonly _messageStack;
    constructor(status: PvStatus, message: string, messageStack?: string[], pvError?: PvError | null);
    get status(): PvStatus;
    get shortMessage(): string;
    get messageStack(): string[];
    private static errorToString;
}
declare class ZebraOutOfMemoryError extends ZebraError {
    constructor(message: string, messageStack?: string[], pvError?: PvError | null);
}
declare class ZebraIOError extends ZebraError {
    constructor(message: string, messageStack?: string[], pvError?: PvError | null);
}
declare class ZebraInvalidArgumentError extends ZebraError {
    constructor(message: string, messageStack?: string[], pvError?: PvError | null);
}
declare class ZebraStopIterationError extends ZebraError {
    constructor(message: string, messageStack?: string[], pvError?: PvError | null);
}
declare class ZebraKeyError extends ZebraError {
    constructor(message: string, messageStack?: string[], pvError?: PvError | null);
}
declare class ZebraInvalidStateError extends ZebraError {
    constructor(message: string, messageStack?: string[], pvError?: PvError | null);
}
declare class ZebraRuntimeError extends ZebraError {
    constructor(message: string, messageStack?: string[], pvError?: PvError | null);
}
declare class ZebraActivationError extends ZebraError {
    constructor(message: string, messageStack?: string[], pvError?: PvError | null);
}
declare class ZebraActivationLimitReachedError extends ZebraError {
    constructor(message: string, messageStack?: string[], pvError?: PvError | null);
}
declare class ZebraActivationThrottledError extends ZebraError {
    constructor(message: string, messageStack?: string[], pvError?: PvError | null);
}
declare class ZebraActivationRefusedError extends ZebraError {
    constructor(message: string, messageStack?: string[], pvError?: PvError | null);
}
export { ZebraError, ZebraOutOfMemoryError, ZebraIOError, ZebraInvalidArgumentError, ZebraStopIterationError, ZebraKeyError, ZebraInvalidStateError, ZebraRuntimeError, ZebraActivationError, ZebraActivationLimitReachedError, ZebraActivationThrottledError, ZebraActivationRefusedError, };
export declare function pvStatusToException(pvStatus: PvStatus, errorMessage: string, messageStack?: string[], pvError?: PvError | null): ZebraError;
//# sourceMappingURL=zebra_errors.d.ts.map