/** * Migration error classes. */ import type { MigrationBlocker } from "@artu-ai/shared"; import { ComplianceError } from "./base"; /** * Thrown when a migration cannot run because resources in the graph lack an * externalId. Nothing was written; fix the blockers and retry. * * @example * ```typescript * try { * await sdk.clients.migrate(clientId, { to: "live" }); * } catch (error) { * if (error instanceof MigrationBlockedError) { * for (const blocker of error.blockers) { * console.log(`${blocker.resource} ${blocker.label}: ${blocker.reason}`); * } * } * } * ``` */ export declare class MigrationBlockedError extends ComplianceError { /** * The resources in the graph that prevented the migration. Each lacks an * externalId; assign one and retry. */ readonly blockers: MigrationBlocker[]; constructor(blockers: MigrationBlocker[]); }