/** * Result of scanning a list of account names for construct-key collisions. * `empty-construct-key` — a name normalises to "" (no alphanumeric content). * `duplicate-construct-key` — two names share a construct key (same account * case- and separator-insensitively); `existingName` is the first-seen name. */ export type AccountNameCollision = { kind: "empty-construct-key"; name: string; } | { kind: "duplicate-construct-key"; name: string; existingName: string; constructKey: string; }; /** * Scan account names for the first construct-key collision in iteration order. * Empty-key is checked before duplicate per element. Pure — never throws; the * caller decides how to surface a non-null result. Single source for the * collision invariant shared by getConfig (synth-time) and buildOrgConfigPayload * (runtime); see `accountConstructKey` for the normalisation it builds on. */ export declare function findAccountNameCollision(names: readonly string[]): AccountNameCollision | null;