hunk.code_window: import Video from '~/components/plugins/Video';
   import { BoxLink } from '~/ui/components/BoxLink';
   Building your project with Expo allows you to make most changes in JavaScript. This helps iterate quickly and safely and allows your team to [achieve web-like iteration speeds](https://blog.expo.dev/javascript-driven-development-with-custom-runtimes-eda87d574c9d) by dividing your application into:
   - **A native runtime**: A native binary that is built with Xcode or Android Studio. Expo Go is an example of a native runtime for iterating on React Native projects.
   - **An update**: A bundle of your application's JavaScript code and assets (images, video, fonts, and so on). An update can be served from your local computer with Expo CLI, embedded in the binary by EAS Build, or hosted on a publicly available server.
   When your project requires custom native code, a config plugin, a custom runtime version, or a reduced bundle size of the app, you can transition from using [Expo Go](https://expo.dev/client) to develop to a development build.
  
hunk.labels: keep keep keep keep keep replace keep keep keep
hunk.after_edit: - **A native runtime**: A native binary that is built with Android Studio or Xcode. Expo Go is an example of a native runtime for iterating on React Native projects.
  
hunk.file_path: docs/pages/develop/development-builds/introduction.mdx
hunk.type: replace
file: import { DevicePushToken } from './Tokens.types';
  /**
   * Returns a native FCM, APNs token or a [`PushSubscription` data](https://developer.mozilla.org/en-US/docs/Web/API/PushSubscription)
   * that can be used with another push notification service.
   * @header fetch
   */
  export default function getDevicePushTokenAsync(): Promise<DevicePushToken>;
  //# sourceMappingURL=getDevicePushTokenAsync.d.ts.map