"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.SelectorTimeoutError = exports.BinaryError = exports.NavigationError = exports.BinaryNotFoundError = void 0;
class BinaryNotFoundError extends Error {
    constructor(message = 'B4n1Web binary not found. Please install it first:\n  curl -sL https://web.b4n1.com/install | bash') {
        super(message);
        this.name = 'BinaryNotFoundError';
        Error.captureStackTrace(this, BinaryNotFoundError);
    }
}
exports.BinaryNotFoundError = BinaryNotFoundError;
class NavigationError extends Error {
    url;
    constructor(message, url) {
        super(message);
        this.url = url;
        this.name = 'NavigationError';
        Error.captureStackTrace(this, NavigationError);
    }
}
exports.NavigationError = NavigationError;
class BinaryError extends Error {
    stderr;
    constructor(message, stderr) {
        super(message);
        this.stderr = stderr;
        this.name = 'BinaryError';
        Error.captureStackTrace(this, BinaryError);
    }
}
exports.BinaryError = BinaryError;
class SelectorTimeoutError extends Error {
    constructor(selector, timeoutMs) {
        super(`Selector "${selector}" not found within ${timeoutMs}ms`);
        this.name = 'SelectorTimeoutError';
        Error.captureStackTrace(this, SelectorTimeoutError);
    }
}
exports.SelectorTimeoutError = SelectorTimeoutError;
//# sourceMappingURL=errors.js.map