/**
 * Canonical Weixin bot account id (ilink / state paths).
 * Kept separate from `accounts.ts` so token store can import it without circular deps with `inbound`.
 */
export declare function normalizeWeixinAccountId(raw: string): string;
/**
 * Peer id as in session keys / context-token map (same rules as `buildSessionKey` peer segment).
 */
export declare function canonicalWeixinPeerId(rawPeerId: string): string;
/**
 * ilink sendmessage / getUploadUrl / getconfig expect `…@im.wechat` for C2C users.
 * Session/cron addresses use sanitized `…-im-wechat` (from `sanitizeSegment`); map back before API calls.
 */
export declare function toRawIlinkUserIdForApi(peerId: string): string;
