/** * Class 1 drift classification over a stack's last CloudFormation operation * (drift-remediation plan ยง Phase 5 item 1). Fetches the failure events of * the most recent operation via `DescribeStackEvents` (newest-first), maps * them onto the shared NotFound anchors (`@fjall/util/aws` `driftSuspects`, * derived from the Phase 0 BC fixture `__tests__/fixtures/bc-stack-events.json`) * and returns out-of-band-deletion SUSPECTS โ€” never verdicts; `driftProbe.ts` * confirms. * * Suspect `statusReason`s are masked at construction (a CloudFormation status * reason can embed anything a failed handler echoed), so journal writes and * CLI sinks may surface them directly. */ import { type Result } from "@fjall/generator"; import { type ResourceEvent } from "@fjall/util/aws"; import type { AwsProvider } from "../../aws/AwsProvider.js"; import type { DriftSuspect } from "../../types/drift.js"; /** * Fetch the events of the stack's most recent operation, newest-first. Pages * `DescribeStackEvents` until the operation's opening event (inclusive โ€” the * shared `isOperationOpeningEvent` boundary, which a CancelUpdateStack * rollback's "User Initiated" stamp does NOT satisfy) or the page budget is * exhausted. */ export declare function fetchLastOperationEvents(aws: AwsProvider, stackName: string, abortSignal?: AbortSignal): Promise>; /** * Classify a stack's last-operation events into drift suspects. Pure โ€” * callers fetch events via {@link fetchLastOperationEvents} or hand over a * monitor's history. */ export declare function classifyDriftFailure(stackName: string, events: readonly ResourceEvent[]): DriftSuspect[];