{"ast":null,"code":"export var FontDisplay;\n\n(function (FontDisplay) {\n  FontDisplay[\"AUTO\"] = \"auto\";\n  FontDisplay[\"SWAP\"] = \"swap\";\n  FontDisplay[\"BLOCK\"] = \"block\";\n  FontDisplay[\"FALLBACK\"] = \"fallback\";\n  FontDisplay[\"OPTIONAL\"] = \"optional\";\n})(FontDisplay || (FontDisplay = {}));","map":{"version":3,"sources":["../src/Font.types.ts"],"names":[],"mappings":"AAyBA,OAAA,IAAY,WAAZ;;AAAA,CAAA,UAAY,WAAZ,EAAuB;AAMrB,EAAA,WAAA,CAAA,MAAA,CAAA,GAAA,MAAA;AAKA,EAAA,WAAA,CAAA,MAAA,CAAA,GAAA,MAAA;AAKA,EAAA,WAAA,CAAA,OAAA,CAAA,GAAA,OAAA;AAOA,EAAA,WAAA,CAAA,UAAA,CAAA,GAAA,UAAA;AAKA,EAAA,WAAA,CAAA,UAAA,CAAA,GAAA,UAAA;AACD,CA7BD,EAAY,WAAW,KAAX,WAAW,GAAA,EAAA,CAAvB","sourcesContent":["import { Asset } from 'expo-asset';\n\n/**\n * The different types of assets you can provide to the [`loadAsync()`](#loadAsync) function.\n * A font source can be a URI, a module ID, or an Expo Asset.\n */\nexport type FontSource = string | number | Asset | FontResource;\n\n/**\n * Used to dictate the resource that is loaded into the provided font namespace when used with [`loadAsync`](#loadasync).\n * Optionally on web you can define a `display` value which sets the [`font-display`](#FontDisplay) property for a given typeface in the browser.\n */\nexport type FontResource = {\n  uri: string | number;\n  display?: FontDisplay;\n};\n\n/**\n * Sets the [font-display](https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display) for a given typeface.\n * This currently **only works on web**. The default font value on web is `FontDisplay.AUTO`.\n * Even though setting the `fontDisplay` does nothing on native platforms, the default behavior emulates `FontDisplay.SWAP`\n * on flagship devices like iOS, Samsung, Pixel, etc. Default functionality varies on One Plus devices.\n * In the browser this value is set in the generated `@font-face` CSS block and not as a style property meaning you cannot dynamically\n * change this value based on the element it's used in.\n */\nexport enum FontDisplay {\n  /**\n   * (Default on web) The font display strategy is defined by the user agent or platform.\n   * This generally defaults to the text being invisible until the font is loaded.\n   * Good for buttons or banners that require a specific treatment.\n   */\n  AUTO = 'auto',\n  /**\n   * Fallback text is rendered immediately with a default font while the desired font is loaded.\n   * This is good for making the content appear to load instantly and is usally preferred.\n   */\n  SWAP = 'swap',\n  /**\n   * The text will be invisible until the font has loaded.\n   * If the font fails to load, nothing will appear.\n   */\n  BLOCK = 'block',\n  /**\n   * Splits the behavior between `SWAP` and `BLOCK`.\n   * There will be a [100ms timeout](https://developers.google.com/web/updates/2016/02/font-display?hl=en) where the text with a custom font is invisible,\n   * after that the text will either swap to the styled text or it'll show the unstyled text and continue to load the custom font.\n   * This is good for buttons that need a custom font but should also be quickly available to screen-readers.\n   */\n  FALLBACK = 'fallback',\n  /**\n   * This works almost identically to `FALLBACK`,\n   * the only difference is that the browser will decide to load the font based on slow connection speed or critical resource demand.\n   */\n  OPTIONAL = 'optional',\n}\n\n/**\n * Used to query fonts for unloading\n */\nexport type UnloadFontOptions = Pick<FontResource, 'display'>;\n"],"sourceRoot":""},"metadata":{},"sourceType":"module"}