create-expo-module
Version:
The script to create the Expo module
25 lines (24 loc) • 959 B
TypeScript
import type { Feature } from './features';
export type DetectedFeatures = {
features: Feature[];
/** Class name extracted from `Class(Name.self)` or `Class(Name::class)`, or null. */
sharedObjectName: string | null;
};
/**
* Reads a native module definition file and detects which Expo Modules API
* features it uses.
*/
export declare function detectFeaturesFromFile(filePath: string): Promise<DetectedFeatures>;
/**
* Parses module definition content to detect features.
* Exported for unit testing.
*/
export declare function detectFeaturesFromContent(content: string): DetectedFeatures;
/**
* Searches a module's platform directory for the file containing `ModuleDefinition`.
* Returns the absolute path or null if not found.
*
* apple → scans ios/**\/*.swift
* android → scans android/src/**\/*.kt
*/
export declare function findModuleDefinitionFile(moduleRoot: string, platform: 'apple' | 'android'): Promise<string | null>;