1import type { ExpoConfig } from '@expo/config-types'; 2import type { ConfigPlugin } from '../Plugin.types'; 3import { BuildPropertiesConfig, ConfigToPropertyRuleType } from '../utils/BuildProperties.types'; 4/** 5 * Creates a `withPodfileProperties` config-plugin based on given config to property mapping rules. 6 * 7 * The factory supports two modes from generic type inference 8 * ```ts 9 * // config-plugin without `props`, it will implicitly use the expo config as source config. 10 * createBuildPodfilePropsConfigPlugin<ExpoConfig>(): ConfigPlugin<void>; 11 * 12 * // config-plugin with a parameter `props: CustomType`, it will use the `props` as source config. 13 * createBuildPodfilePropsConfigPlugin<CustomType>(): ConfigPlugin<CustomType>; 14 * ``` 15 * 16 * @param configToPropertyRules config to property mapping rules 17 * @param name the config plugin name 18 */ 19export declare function createBuildPodfilePropsConfigPlugin<SourceConfigType extends BuildPropertiesConfig>(configToPropertyRules: ConfigToPropertyRuleType<SourceConfigType>[], name?: string): ConfigPlugin<SourceConfigType extends ExpoConfig ? void : SourceConfigType>; 20/** 21 * A config-plugin to update `ios/Podfile.properties.json` from the `jsEngine` in expo config 22 */ 23export declare const withJsEnginePodfileProps: ConfigPlugin<void>; 24export declare function updateIosBuildPropertiesFromConfig<SourceConfigType extends BuildPropertiesConfig>(config: SourceConfigType, podfileProperties: Record<string, string>, configToPropertyRules: ConfigToPropertyRuleType<SourceConfigType>[]): Record<string, string>; 25export declare function updateIosBuildProperty(podfileProperties: Record<string, string>, name: string, value: string | null | undefined, options?: { 26 removePropWhenValueIsNull?: boolean; 27}): Record<string, string>; 28