- TypeScript Spec (
specs/NativeDeviceInfo.ts):
export interface Spec extends TurboModule {
getDeviceName(): string;
getBatteryLevel(): Promise<number>;
}
- package.json →
codegenConfig: имя, директория спеков, платформы
- Android (Kotlin): наследование от
NativeDeviceInfoSpec, реализация методов
- iOS (Obj-C++): реализация
NativeDeviceInfoSpec, getTurboModule возвращает JSI-привязку
- Использование в JS:
const name = NativeDeviceInfo.getDeviceName(); // Sync!
const battery = await NativeDeviceInfo.getBatteryLevel(); // Async