/** Frontend-specific helpers used by the frontend package install scripts. */
import type { FrontPackageInstallerContext } from './front-package-installer.js';
/**
 * Idempotently swap the `CurrentAccountService` provider in
 * `aurora.provider.ts` from `AnonymousCurrentAccountAdapter` to
 * `CurrentAccountIamAdapter` (design D5).
 *
 * Operations (all idempotent):
 * 1. Add `import { CurrentAccountIamAdapter } from './domains/admin/bounded-contexts/iam/account'`
 *    — skipped when the import is already present.
 * 2. Find the object literal whose `provide` property text is `CurrentAccountService`
 *    and set its `useClass` initializer to `CurrentAccountIamAdapter`
 *    — no-op when `useClass` is already `CurrentAccountIamAdapter`.
 * 3. Remove the `AnonymousCurrentAccountAdapter` named specifier from the
 *    existing `@aurora` import declaration — never drops the whole import,
 *    just the one named specifier; no-op when already absent.
 *
 * Saves the file synchronously via ts-morph `saveSync()`.
 */
export declare function swapCurrentAccountAdapter(ctx: FrontPackageInstallerContext): void;
/**
 * Run the consumer's own Prettier over a list of workspace-relative file paths.
 *
 * Identical contract to the backend `formatWorkspaceFiles` in `package-helpers.ts`
 * but accepts a `FrontPackageInstallerContext` (the frontend context does not
 * expose `install`, so it cannot be the backend `PackageInstallerContext`).
 *
 * Using `npx prettier --write` delegates to the consumer's installed Prettier
 * binary and config (including `prettier-plugin-organize-imports` and trailing-
 * comma settings), so the output is byte-for-byte equivalent to what the consumer's
 * `pnpm lint` would produce.
 *
 * Non-fatal: a Prettier failure warns and continues so the install is not aborted
 * for cosmetic reasons.
 */
export declare function formatFrontWorkspaceFiles(ctx: FrontPackageInstallerContext, relativePaths: string[]): Promise<void>;
