export interface EmbedPublicKeyConfig { /** Absolute path to the public key file. */ publicKeyPath: string; /** Absolute path to the project root. */ projectRoot: string; /** Custom path to iOS Info.plist. Auto-detected if not provided. */ iosInfoPlistPath?: string; /** Custom path to Android strings.xml. Auto-detected if not provided. */ androidStringsXmlPath?: string; } export interface EmbedPublicKeyResult { error?: string; ios: { modified: boolean; path?: string; error?: string; }; android: { modified: boolean; path?: string; error?: string; }; } /** * Embeds the Re.Pack code-signing public key into native project files. * Modifies `Info.plist` (iOS) and `strings.xml` (Android) so the runtime * can verify signed bundles without manual file editing. */ export declare function embedPublicKey(config: EmbedPublicKeyConfig): EmbedPublicKeyResult; /** * Searches for `Info.plist` inside `ios//Info.plist`. * Returns the first match or `null`. */ export declare function findIOSInfoPlistPath(projectRoot: string): string | null; /** * Returns the standard path to `strings.xml` if it exists, or `null`. */ export declare function findAndroidStringsXmlPath(projectRoot: string): string | null; /** * Embeds or updates `RepackPublicKey` in an iOS `Info.plist` file. * Returns true if the file was written, false if it was already up-to-date. */ export declare function embedPublicKeyInPlist(publicKey: string, plistPath: string): boolean; /** * Embeds or updates `RepackPublicKey` in an Android `strings.xml` file. * Creates the file if it does not exist. * Returns true if the file was written, false if it was already up-to-date. */ export declare function embedPublicKeyInStringsXml(publicKey: string, stringsXmlPath: string): boolean;