import { EventBridgeClient } from '@aws-sdk/client-eventbridge';
import { f as RenameCascadeFinalizeInput, g as RenameCascadeFinalizeOutput } from './events-Da_cFgtc.js';
export { c as RENAME_CASCADE_OPS_EVENT_BUS_ENV_VAR } from './events-Da_cFgtc.js';
import '@openhi/workflows';

/**
 * Final step of the TR-023 rename cascade.
 *
 * After the Distributed Map state rewrites every affected projection
 * row, this handler emits `control-plane.rename-complete.v1` on the ops
 * event bus, carrying the cascade's chunk count, items rewritten, and
 * duration. UI subscribers consume the event to refresh stale list
 * views.
 *
 * Unlike the owning-delete cascade's finalize step, this handler does
 * NOT touch the canonical record — the rename is a consumer that only
 * rewrites projections; the canonical Tenant / User / Role row was
 * already updated by the originating PUT that triggered the cascade's
 * upstream `control-plane.rename.v1` event.
 */

/** Test seam: per-handler-call EventBridge client + clock. */
interface FinalizeHandlerDependencies {
    readonly eventBridgeClient?: EventBridgeClient;
    readonly now?: () => Date;
    readonly eventIdGenerator?: () => string;
}
declare const handler: (input: RenameCascadeFinalizeInput, deps?: FinalizeHandlerDependencies) => Promise<RenameCascadeFinalizeOutput>;

export { type FinalizeHandlerDependencies, handler };
