/**
 * errors.ts — error taxonomy for @aperant/driver-sdk.
 *
 * Every driver-layer failure raises one of these classes. The taxonomy
 * is load-bearing for the resolver + audit log + verification.json's
 * `meta.fallback_attempts[].reason` field.
 *
 * Conventions:
 *   - Every class sets `.name` to its class identifier so structured
 *     audit lines can serialize the discriminator without `instanceof`
 *     gymnastics in cross-realm contexts.
 *   - Every class extends Error so plain Node consumers can match with
 *     try/catch.
 */
/** A driver manifest violates the structural contract (JSON-Schema). */
export declare class DriverManifestSchemaError extends Error {
    readonly name = "DriverManifestSchemaError";
    /** JSON-pointer paths into the manifest where validation failed. */
    readonly errors: ReadonlyArray<{
        path: string;
        message: string;
    }>;
    constructor(message: string, errors?: ReadonlyArray<{
        path: string;
        message: string;
    }>);
}
/** A driver's runtime configuration is invalid (missing env, malformed args). */
export declare class DriverConfigError extends Error {
    readonly name = "DriverConfigError";
}
/** A driver's preflight check failed (missing binary, unreachable service). */
export declare class DriverPreflightError extends Error {
    readonly name = "DriverPreflightError";
    /** Structured list of unsatisfied preflight requirements. */
    readonly missing: readonly string[];
    constructor(message: string, missing?: readonly string[]);
}
/** A driver verb invocation failed at the transport / RPC layer. */
export declare class DriverInvocationError extends Error {
    readonly name = "DriverInvocationError";
    /** The IDL verb name that was being invoked. */
    readonly verb: string | undefined;
    constructor(message: string, verb?: string);
}
/** A driver succeeded but evidence capture (screenshot, dom_dump) failed. */
export declare class DriverEvidenceCaptureError extends Error {
    readonly name = "DriverEvidenceCaptureError";
}
/** A non-first-party driver invocation is blocked by TOFU + policy. */
export declare class DriverNotApprovedError extends Error {
    readonly name = "DriverNotApprovedError";
    readonly driverId: string | undefined;
    readonly trustTier: string | undefined;
    constructor(message: string, driverId?: string, trustTier?: string);
}
/**
 * The resolver exhausted its driver chain without satisfying a REQUIRED
 * capability. Fail-closed — verdict logic must NOT silently turn this
 * into a `blocked_by_platform` skip (ID-02).
 */
export declare class UnsatisfiedRequiredCapabilityError extends Error {
    readonly name = "UnsatisfiedRequiredCapabilityError";
    readonly capability: string | undefined;
    /** Drivers attempted, with the reason each was rejected. */
    readonly attempts: ReadonlyArray<{
        driver_id: string;
        reason: string;
    }>;
    constructor(message: string, capability?: string, attempts?: ReadonlyArray<{
        driver_id: string;
        reason: string;
    }>);
}
//# sourceMappingURL=errors.d.ts.map