import type { RailDeckDirectIntegrationClient as Client } from '@raildeck/frontend-sdk/direct-integration'; /** * Read a bridge, current status and the consequences of retiring it without replacement. * @param client - Configured client; the caller owns current authority. * @param accountId - Authorised account for this workflow. * @param bridgeId - Explicitly selected bridge. * @param signal - Caller-owned cancellation signal. * @returns Management evidence only; no pairing code, credential or retirement command. */ export async function prepareBridgeReview( client: Client, accountId: string, bridgeId: string, signal: AbortSignal, ) { const options = { signal, timeoutMs: 15_000 }; const bridge = await client.bridges.get(accountId, bridgeId, options); const status = await client.bridges.getStatus(accountId, bridgeId, options); const retirement = await client.bridges.getRetirementPreview(accountId, bridgeId, null, options); return { bridge, status, retirement }; }