{"schemaVersion":"2.0","name":"expo-camera","variant":"project","kind":1,"children":[{"name":"PermissionStatus","variant":"declaration","kind":8,"children":[{"name":"DENIED","variant":"declaration","kind":16,"comment":{"summary":[{"kind":"text","text":"User has denied the permission."}]},"type":{"type":"literal","value":"denied"}},{"name":"GRANTED","variant":"declaration","kind":16,"comment":{"summary":[{"kind":"text","text":"User has granted the permission."}]},"type":{"type":"literal","value":"granted"}},{"name":"UNDETERMINED","variant":"declaration","kind":16,"comment":{"summary":[{"kind":"text","text":"User hasn't granted or denied the permission yet."}]},"type":{"type":"literal","value":"undetermined"}}]},{"name":"CameraNativeModule","variant":"declaration","kind":128,"children":[{"name":"constructor","variant":"declaration","kind":512,"signatures":[{"name":"CameraNativeModule","variant":"signature","kind":16384,"comment":{"summary":[{"kind":"text","text":"Creates a new event emitter instance."}]},"type":{"type":"reference","name":"CameraNativeModule","package":"expo-camera"},"inheritedFrom":{"type":"reference","name":"NativeModule.constructor","package":"expo-modules-core"}}],"inheritedFrom":{"type":"reference","name":"NativeModule.constructor","package":"expo-modules-core"}},{"name":"dismissScanner","variant":"declaration","kind":1024,"flags":{"isReadonly":true},"type":{"type":"reflection","declaration":{"name":"__type","variant":"declaration","kind":65536,"signatures":[{"name":"__type","variant":"signature","kind":4096,"type":{"type":"reference","target":{"packageName":"typescript","packagePath":"lib/lib.es5.d.ts","qualifiedName":"Promise"},"typeArguments":[{"type":"intrinsic","name":"void"}],"name":"Promise","package":"typescript"}}]}}},{"name":"FlashMode","variant":"declaration","kind":1024,"flags":{"isReadonly":true},"type":{"type":"reference","target":{"packageName":"typescript","packagePath":"lib/lib.es5.d.ts","qualifiedName":"Record"},"typeArguments":[{"type":"typeOperator","operator":"keyof","target":{"type":"reference","name":"FlashMode","package":"expo-camera"}},{"type":"indexedAccess","indexType":{"type":"literal","value":"flashMode"},"objectType":{"type":"reference","name":"CameraNativeProps","package":"expo-camera"}}],"name":"Record","package":"typescript"}},{"name":"getAvailableVideoCodecsAsync","variant":"declaration","kind":1024,"flags":{"isReadonly":true},"type":{"type":"reflection","declaration":{"name":"__type","variant":"declaration","kind":65536,"signatures":[{"name":"__type","variant":"signature","kind":4096,"type":{"type":"reference","target":{"packageName":"typescript","packagePath":"lib/lib.es5.d.ts","qualifiedName":"Promise"},"typeArguments":[{"type":"array","elementType":{"type":"reference","name":"VideoCodec","package":"expo-camera"}}],"name":"Promise","package":"typescript"}}]}}},{"name":"getCameraPermissionsAsync","variant":"declaration","kind":1024,"flags":{"isReadonly":true},"type":{"type":"reflection","declaration":{"name":"__type","variant":"declaration","kind":65536,"signatures":[{"name":"__type","variant":"signature","kind":4096,"type":{"type":"reference","target":{"packageName":"typescript","packagePath":"lib/lib.es5.d.ts","qualifiedName":"Promise"},"typeArguments":[{"type":"reference","name":"PermissionResponse","package":"expo-modules-core"}],"name":"Promise","package":"typescript"}}]}}},{"name":"getMicrophonePermissionsAsync","variant":"declaration","kind":1024,"flags":{"isReadonly":true},"type":{"type":"reflection","declaration":{"name":"__type","variant":"declaration","kind":65536,"signatures":[{"name":"__type","variant":"signature","kind":4096,"type":{"type":"reference","target":{"packageName":"typescript","packagePath":"lib/lib.es5.d.ts","qualifiedName":"Promise"},"typeArguments":[{"type":"reference","name":"PermissionResponse","package":"expo-modules-core"}],"name":"Promise","package":"typescript"}}]}}},{"name":"isAvailableAsync","variant":"declaration","kind":1024,"flags":{"isReadonly":true},"type":{"type":"reflection","declaration":{"name":"__type","variant":"declaration","kind":65536,"signatures":[{"name":"__type","variant":"signature","kind":4096,"type":{"type":"reference","target":{"packageName":"typescript","packagePath":"lib/lib.es5.d.ts","qualifiedName":"Promise"},"typeArguments":[{"type":"intrinsic","name":"boolean"}],"name":"Promise","package":"typescript"}}]}}},{"name":"isModernBarcodeScannerAvailable","variant":"declaration","kind":1024,"flags":{"isReadonly":true},"type":{"type":"intrinsic","name":"boolean"}},{"name":"launchScanner","variant":"declaration","kind":1024,"flags":{"isReadonly":true},"type":{"type":"reflection","declaration":{"name":"__type","variant":"declaration","kind":65536,"signatures":[{"name":"__type","variant":"signature","kind":4096,"parameters":[{"name":"options","variant":"param","kind":32768,"flags":{"isOptional":true},"type":{"type":"reference","name":"ScanningOptions","package":"expo-camera"}}],"type":{"type":"reference","target":{"packageName":"typescript","packagePath":"lib/lib.es5.d.ts","qualifiedName":"Promise"},"typeArguments":[{"type":"intrinsic","name":"void"}],"name":"Promise","package":"typescript"}}]}}},{"name":"requestCameraPermissionsAsync","variant":"declaration","kind":1024,"flags":{"isReadonly":true},"type":{"type":"reflection","declaration":{"name":"__type","variant":"declaration","kind":65536,"signatures":[{"name":"__type","variant":"signature","kind":4096,"type":{"type":"reference","target":{"packageName":"typescript","packagePath":"lib/lib.es5.d.ts","qualifiedName":"Promise"},"typeArguments":[{"type":"reference","name":"PermissionResponse","package":"expo-modules-core"}],"name":"Promise","package":"typescript"}}]}}},{"name":"requestMicrophonePermissionsAsync","variant":"declaration","kind":1024,"flags":{"isReadonly":true},"type":{"type":"reflection","declaration":{"name":"__type","variant":"declaration","kind":65536,"signatures":[{"name":"__type","variant":"signature","kind":4096,"type":{"type":"reference","target":{"packageName":"typescript","packagePath":"lib/lib.es5.d.ts","qualifiedName":"Promise"},"typeArguments":[{"type":"reference","name":"PermissionResponse","package":"expo-modules-core"}],"name":"Promise","package":"typescript"}}]}}},{"name":"scanFromURLAsync","variant":"declaration","kind":1024,"flags":{"isReadonly":true},"type":{"type":"reflection","declaration":{"name":"__type","variant":"declaration","kind":65536,"signatures":[{"name":"__type","variant":"signature","kind":4096,"parameters":[{"name":"url","variant":"param","kind":32768,"type":{"type":"intrinsic","name":"string"}},{"name":"barcodeTypes","variant":"param","kind":32768,"flags":{"isOptional":true},"type":{"type":"array","elementType":{"type":"reference","name":"BarcodeType","package":"expo-camera"}}}],"type":{"type":"reference","target":{"packageName":"typescript","packagePath":"lib/lib.es5.d.ts","qualifiedName":"Promise"},"typeArguments":[{"type":"array","elementType":{"type":"reference","name":"BarcodeScanningResult","package":"expo-camera"}}],"name":"Promise","package":"typescript"}}]}}},{"name":"toggleRecordingAsyncAvailable","variant":"declaration","kind":1024,"flags":{"isReadonly":true},"type":{"type":"intrinsic","name":"boolean"}},{"name":"Type","variant":"declaration","kind":1024,"flags":{"isReadonly":true},"type":{"type":"reference","target":{"packageName":"typescript","packagePath":"lib/lib.es5.d.ts","qualifiedName":"Record"},"typeArguments":[{"type":"typeOperator","operator":"keyof","target":{"type":"reference","name":"CameraType","package":"expo-camera"}},{"type":"indexedAccess","indexType":{"type":"literal","value":"facing"},"objectType":{"type":"reference","name":"CameraNativeProps","package":"expo-camera"}}],"name":"Record","package":"typescript"}},{"name":"addListener","variant":"declaration","kind":2048,"flags":{"isInherited":true},"signatures":[{"name":"addListener","variant":"signature","kind":4096,"flags":{"isInherited":true},"comment":{"summary":[{"kind":"text","text":"Adds a listener for the given event name."}]},"typeParameters":[{"name":"EventName","variant":"typeParam","kind":131072,"type":{"type":"literal","value":"onModernBarcodeScanned"}}],"parameters":[{"name":"eventName","variant":"param","kind":32768,"type":{"type":"reference","name":"EventName","package":"expo-modules-core","refersToTypeParameter":true}},{"name":"listener","variant":"param","kind":32768,"type":{"type":"indexedAccess","indexType":{"type":"reference","name":"EventName","package":"expo-modules-core","refersToTypeParameter":true},"objectType":{"type":"reference","name":"CameraEvents","package":"expo-camera"}}}],"type":{"type":"reference","target":{"packageName":"expo-modules-core","packagePath":"src/ts-declarations/EventEmitter.ts","qualifiedName":"EventSubscription"},"name":"EventSubscription","package":"expo-modules-core"},"inheritedFrom":{"type":"reference","name":"NativeModule.addListener","package":"expo-modules-core"}}],"inheritedFrom":{"type":"reference","name":"NativeModule.addListener","package":"expo-modules-core"}},{"name":"emit","variant":"declaration","kind":2048,"flags":{"isInherited":true},"signatures":[{"name":"emit","variant":"signature","kind":4096,"flags":{"isInherited":true},"comment":{"summary":[{"kind":"text","text":"Synchronously calls all the listeners attached to that specific event.\nThe event can include any number of arguments that will be passed to the listeners."}]},"typeParameters":[{"name":"EventName","variant":"typeParam","kind":131072,"type":{"type":"literal","value":"onModernBarcodeScanned"}}],"parameters":[{"name":"eventName","variant":"param","kind":32768,"type":{"type":"reference","name":"EventName","package":"expo-modules-core","refersToTypeParameter":true}},{"name":"args","variant":"param","kind":32768,"flags":{"isRest":true},"type":{"type":"reference","target":{"packageName":"typescript","packagePath":"lib/lib.es5.d.ts","qualifiedName":"Parameters"},"typeArguments":[{"type":"indexedAccess","indexType":{"type":"reference","name":"EventName","package":"expo-modules-core","refersToTypeParameter":true},"objectType":{"type":"reference","name":"CameraEvents","package":"expo-camera"}}],"name":"Parameters","package":"typescript"}}],"type":{"type":"intrinsic","name":"void"},"inheritedFrom":{"type":"reference","name":"NativeModule.emit","package":"expo-modules-core"}}],"inheritedFrom":{"type":"reference","name":"NativeModule.emit","package":"expo-modules-core"}},{"name":"listenerCount","variant":"declaration","kind":2048,"flags":{"isInherited":true},"signatures":[{"name":"listenerCount","variant":"signature","kind":4096,"flags":{"isInherited":true},"comment":{"summary":[{"kind":"text","text":"Returns a number of listeners added to the given event."}]},"typeParameters":[{"name":"EventName","variant":"typeParam","kind":131072,"type":{"type":"literal","value":"onModernBarcodeScanned"}}],"parameters":[{"name":"eventName","variant":"param","kind":32768,"type":{"type":"reference","name":"EventName","package":"expo-modules-core","refersToTypeParameter":true}}],"type":{"type":"intrinsic","name":"number"},"inheritedFrom":{"type":"reference","name":"NativeModule.listenerCount","package":"expo-modules-core"}}],"inheritedFrom":{"type":"reference","name":"NativeModule.listenerCount","package":"expo-modules-core"}},{"name":"removeAllListeners","variant":"declaration","kind":2048,"flags":{"isInherited":true},"signatures":[{"name":"removeAllListeners","variant":"signature","kind":4096,"flags":{"isInherited":true},"comment":{"summary":[{"kind":"text","text":"Removes all listeners for the given event name."}]},"parameters":[{"name":"eventName","variant":"param","kind":32768,"type":{"type":"literal","value":"onModernBarcodeScanned"}}],"type":{"type":"intrinsic","name":"void"},"inheritedFrom":{"type":"reference","name":"NativeModule.removeAllListeners","package":"expo-modules-core"}}],"inheritedFrom":{"type":"reference","name":"NativeModule.removeAllListeners","package":"expo-modules-core"}},{"name":"removeListener","variant":"declaration","kind":2048,"flags":{"isInherited":true},"signatures":[{"name":"removeListener","variant":"signature","kind":4096,"flags":{"isInherited":true},"comment":{"summary":[{"kind":"text","text":"Removes a listener for the given event name."}]},"typeParameters":[{"name":"EventName","variant":"typeParam","kind":131072,"type":{"type":"literal","value":"onModernBarcodeScanned"}}],"parameters":[{"name":"eventName","variant":"param","kind":32768,"type":{"type":"reference","name":"EventName","package":"expo-modules-core","refersToTypeParameter":true}},{"name":"listener","variant":"param","kind":32768,"type":{"type":"indexedAccess","indexType":{"type":"reference","name":"EventName","package":"expo-modules-core","refersToTypeParameter":true},"objectType":{"type":"reference","name":"CameraEvents","package":"expo-camera"}}}],"type":{"type":"intrinsic","name":"void"},"inheritedFrom":{"type":"reference","name":"NativeModule.removeListener","package":"expo-modules-core"}}],"inheritedFrom":{"type":"reference","name":"NativeModule.removeListener","package":"expo-modules-core"}},{"name":"startObserving","variant":"declaration","kind":2048,"flags":{"isOptional":true,"isInherited":true},"signatures":[{"name":"startObserving","variant":"signature","kind":4096,"flags":{"isInherited":true},"comment":{"summary":[{"kind":"text","text":"Function that is automatically invoked when the first listener for an event with the given name is added.\nOverride it in a subclass to perform some additional setup once the event started being observed."}]},"typeParameters":[{"name":"EventName","variant":"typeParam","kind":131072,"type":{"type":"literal","value":"onModernBarcodeScanned"}}],"parameters":[{"name":"eventName","variant":"param","kind":32768,"type":{"type":"reference","name":"EventName","package":"expo-modules-core","refersToTypeParameter":true}}],"type":{"type":"intrinsic","name":"void"},"inheritedFrom":{"type":"reference","name":"NativeModule.startObserving","package":"expo-modules-core"}}],"inheritedFrom":{"type":"reference","name":"NativeModule.startObserving","package":"expo-modules-core"}},{"name":"stopObserving","variant":"declaration","kind":2048,"flags":{"isOptional":true,"isInherited":true},"signatures":[{"name":"stopObserving","variant":"signature","kind":4096,"flags":{"isInherited":true},"comment":{"summary":[{"kind":"text","text":"Function that is automatically invoked when the last listener for an event with the given name is removed.\nOverride it in a subclass to perform some additional cleanup once the event is no longer observed."}]},"typeParameters":[{"name":"EventName","variant":"typeParam","kind":131072,"type":{"type":"literal","value":"onModernBarcodeScanned"}}],"parameters":[{"name":"eventName","variant":"param","kind":32768,"type":{"type":"reference","name":"EventName","package":"expo-modules-core","refersToTypeParameter":true}}],"type":{"type":"intrinsic","name":"void"},"inheritedFrom":{"type":"reference","name":"NativeModule.stopObserving","package":"expo-modules-core"}}],"inheritedFrom":{"type":"reference","name":"NativeModule.stopObserving","package":"expo-modules-core"}}],"extendedTypes":[{"type":"reference","target":{"packageName":"expo-modules-core","packagePath":"src/NativeModule.ts","qualifiedName":"NativeModule"},"typeArguments":[{"type":"reference","name":"CameraEvents","package":"expo-camera"}],"name":"NativeModule","package":"expo-modules-core"}]},{"name":"CameraView","variant":"declaration","kind":128,"children":[{"name":"constructor","variant":"declaration","kind":512,"flags":{"isExternal":true},"signatures":[{"name":"CameraView","variant":"signature","kind":16384,"flags":{"isExternal":true},"parameters":[{"name":"props","variant":"param","kind":32768,"flags":{"isExternal":true},"type":{"type":"reference","name":"CameraViewProps","package":"expo-camera"}}],"type":{"type":"reference","name":"CameraView","package":"expo-camera","qualifiedName":"default"},"inheritedFrom":{"type":"reference","name":"Component.constructor","package":"@types/react"}},{"name":"CameraView","variant":"signature","kind":16384,"flags":{"isExternal":true},"parameters":[{"name":"props","variant":"param","kind":32768,"flags":{"isExternal":true},"type":{"type":"reference","name":"CameraViewProps","package":"expo-camera"}},{"name":"context","variant":"param","kind":32768,"flags":{"isExternal":true},"comment":{"summary":[{"kind":"text","text":"value of the parent "},{"kind":"inline-tag","tag":"@link","text":"Context"},{"kind":"text","text":" specified\nin "},{"kind":"code","text":"`contextType`"},{"kind":"text","text":"."}]},"type":{"type":"intrinsic","name":"any"}}],"type":{"type":"reference","name":"CameraView","package":"expo-camera","qualifiedName":"default"},"inheritedFrom":{"type":"reference","name":"Component.constructor","package":"@types/react"}}],"inheritedFrom":{"type":"reference","name":"Component.constructor","package":"@types/react"}},{"name":"_cameraHandle","variant":"declaration","kind":1024,"flags":{"isOptional":true},"type":{"type":"union","types":[{"type":"intrinsic","name":"number"},{"type":"literal","value":null}]}},{"name":"_cameraRef","variant":"declaration","kind":1024,"type":{"type":"reference","target":{"packageName":"@types/react","packagePath":"index.d.ts","qualifiedName":"React.RefObject"},"typeArguments":[{"type":"union","types":[{"type":"reference","name":"CameraViewRef","package":"expo-camera"},{"type":"literal","value":null}]}],"name":"RefObject","package":"@types/react","qualifiedName":"React.RefObject"},"defaultValue":"..."},{"name":"_lastEvents","variant":"declaration","kind":1024,"type":{"type":"reflection","declaration":{"name":"__type","variant":"declaration","kind":65536,"indexSignatures":[{"name":"__index","variant":"signature","kind":8192,"parameters":[{"name":"eventName","variant":"param","kind":32768,"type":{"type":"intrinsic","name":"string"}}],"type":{"type":"intrinsic","name":"string"}}]}},"defaultValue":"{}"},{"name":"_lastEventsTimes","variant":"declaration","kind":1024,"type":{"type":"reflection","declaration":{"name":"__type","variant":"declaration","kind":65536,"indexSignatures":[{"name":"__index","variant":"signature","kind":8192,"parameters":[{"name":"eventName","variant":"param","kind":32768,"type":{"type":"intrinsic","name":"string"}}],"type":{"type":"reference","target":{"packageName":"typescript","packagePath":"lib/lib.es5.d.ts","qualifiedName":"Date"},"name":"Date","package":"typescript"}}]}},"defaultValue":"{}"},{"name":"ConversionTables","variant":"declaration","kind":1024,"flags":{"isStatic":true},"type":{"type":"reflection","declaration":{"name":"__type","variant":"declaration","kind":65536,"children":[{"name":"flash","variant":"declaration","kind":1024,"type":{"type":"reference","target":{"packageName":"typescript","packagePath":"lib/lib.es5.d.ts","qualifiedName":"Record"},"typeArguments":[{"type":"typeOperator","operator":"keyof","target":{"type":"reference","name":"FlashMode","package":"expo-camera"}},{"type":"indexedAccess","indexType":{"type":"literal","value":"flashMode"},"objectType":{"type":"reference","name":"CameraNativeProps","package":"expo-camera"}}],"name":"Record","package":"typescript"}},{"name":"type","variant":"declaration","kind":1024,"type":{"type":"reference","target":{"packageName":"typescript","packagePath":"lib/lib.es5.d.ts","qualifiedName":"Record"},"typeArguments":[{"type":"typeOperator","operator":"keyof","target":{"type":"reference","name":"CameraType","package":"expo-camera"}},{"type":"indexedAccess","indexType":{"type":"literal","value":"facing"},"objectType":{"type":"reference","name":"CameraNativeProps","package":"expo-camera"}}],"name":"Record","package":"typescript"}}],"indexSignatures":[{"name":"__index","variant":"signature","kind":8192,"parameters":[{"name":"prop","variant":"param","kind":32768,"type":{"type":"intrinsic","name":"string"}}],"type":{"type":"intrinsic","name":"unknown"}}]}},"defaultValue":"ConversionTables"},{"name":"defaultProps","variant":"declaration","kind":1024,"flags":{"isStatic":true},"type":{"type":"reference","name":"CameraViewProps","package":"expo-camera"},"defaultValue":"..."},{"name":"isModernBarcodeScannerAvailable","variant":"declaration","kind":1024,"flags":{"isStatic":true},"comment":{"summary":[{"kind":"text","text":"Property that determines if the current device has the ability to use "},{"kind":"code","text":"`DataScannerViewController`"},{"kind":"text","text":" (iOS 16+) or the Google code scanner (Android)."}]},"type":{"type":"intrinsic","name":"boolean"},"defaultValue":"CameraManager.isModernBarcodeScannerAvailable"},{"name":"_onAvailableLensesChanged","variant":"declaration","kind":2048,"signatures":[{"name":"_onAvailableLensesChanged","variant":"signature","kind":4096,"parameters":[{"name":"__namedParameters","variant":"param","kind":32768,"type":{"type":"reflection","declaration":{"name":"__type","variant":"declaration","kind":65536,"children":[{"name":"nativeEvent","variant":"declaration","kind":1024,"type":{"type":"reference","name":"AvailableLenses","package":"expo-camera"}}]}}}],"type":{"type":"intrinsic","name":"void"}}]},{"name":"_onCameraReady","variant":"declaration","kind":2048,"signatures":[{"name":"_onCameraReady","variant":"signature","kind":4096,"type":{"type":"intrinsic","name":"void"}}]},{"name":"_onMountError","variant":"declaration","kind":2048,"signatures":[{"name":"_onMountError","variant":"signature","kind":4096,"parameters":[{"name":"__namedParameters","variant":"param","kind":32768,"type":{"type":"reflection","declaration":{"name":"__type","variant":"declaration","kind":65536,"children":[{"name":"nativeEvent","variant":"declaration","kind":1024,"type":{"type":"reflection","declaration":{"name":"__type","variant":"declaration","kind":65536,"children":[{"name":"message","variant":"declaration","kind":1024,"type":{"type":"intrinsic","name":"string"}}]}}}]}}}],"type":{"type":"intrinsic","name":"void"}}]},{"name":"_onObjectDetected","variant":"declaration","kind":2048,"signatures":[{"name":"_onObjectDetected","variant":"signature","kind":4096,"parameters":[{"name":"callback","variant":"param","kind":32768,"flags":{"isOptional":true},"type":{"type":"reference","target":{"packageName":"typescript","packagePath":"lib/lib.es5.d.ts","qualifiedName":"Function"},"name":"Function","package":"typescript"}}],"type":{"type":"reflection","declaration":{"name":"__type","variant":"declaration","kind":65536,"signatures":[{"name":"__type","variant":"signature","kind":4096,"parameters":[{"name":"__namedParameters","variant":"param","kind":32768,"type":{"type":"reflection","declaration":{"name":"__type","variant":"declaration","kind":65536,"children":[{"name":"nativeEvent","variant":"declaration","kind":1024,"type":{"type":"intrinsic","name":"any"}}]}}}],"type":{"type":"intrinsic","name":"void"}}]}}}]},{"name":"_onResponsiveOrientationChanged","variant":"declaration","kind":2048,"signatures":[{"name":"_onResponsiveOrientationChanged","variant":"signature","kind":4096,"parameters":[{"name":"__namedParameters","variant":"param","kind":32768,"type":{"type":"reflection","declaration":{"name":"__type","variant":"declaration","kind":65536,"children":[{"name":"nativeEvent","variant":"declaration","kind":1024,"type":{"type":"reflection","declaration":{"name":"__type","variant":"declaration","kind":65536,"children":[{"name":"orientation","variant":"declaration","kind":1024,"type":{"type":"reference","name":"CameraOrientation","package":"expo-camera"}}]}}}]}}}],"type":{"type":"intrinsic","name":"void"}}]},{"name":"_setReference","variant":"declaration","kind":2048,"signatures":[{"name":"_setReference","variant":"signature","kind":4096,"parameters":[{"name":"ref","variant":"param","kind":32768,"type":{"type":"reference","target":{"packageName":"@types/react","packagePath":"index.d.ts","qualifiedName":"React.Ref"},"typeArguments":[{"type":"reference","name":"CameraViewRef","package":"expo-camera"}],"name":"Ref","package":"@types/react","qualifiedName":"React.Ref"}}],"type":{"type":"intrinsic","name":"void"}}]},{"name":"getAvailableLensesAsync","variant":"declaration","kind":2048,"signatures":[{"name":"getAvailableLensesAsync","variant":"signature","kind":4096,"comment":{"summary":[{"kind":"text","text":"Returns the available lenses for the currently selected camera."}],"blockTags":[{"tag":"@returns","content":[{"kind":"text","text":"Returns a Promise that resolves to an array of strings representing the lens type that can be passed to "},{"kind":"code","text":"`selectedLens`"},{"kind":"text","text":" prop."}]},{"tag":"@platform","content":[{"kind":"text","text":"ios"}]}]},"type":{"type":"reference","target":{"packageName":"typescript","packagePath":"lib/lib.es5.d.ts","qualifiedName":"Promise"},"typeArguments":[{"type":"array","elementType":{"type":"intrinsic","name":"string"}}],"name":"Promise","package":"typescript"}}]},{"name":"getAvailablePictureSizesAsync","variant":"declaration","kind":2048,"signatures":[{"name":"getAvailablePictureSizesAsync","variant":"signature","kind":4096,"comment":{"summary":[{"kind":"text","text":"Get picture sizes that are supported by the device."}],"blockTags":[{"tag":"@returns","content":[{"kind":"text","text":"Returns a Promise that resolves to an array of strings representing picture sizes that can be passed to "},{"kind":"code","text":"`pictureSize`"},{"kind":"text","text":" prop.\nThe list varies across Android devices but is the same for every iOS."}]}]},"type":{"type":"reference","target":{"packageName":"typescript","packagePath":"lib/lib.es5.d.ts","qualifiedName":"Promise"},"typeArguments":[{"type":"array","elementType":{"type":"intrinsic","name":"string"}}],"name":"Promise","package":"typescript"}}]},{"name":"getSupportedFeatures","variant":"declaration","kind":2048,"signatures":[{"name":"getSupportedFeatures","variant":"signature","kind":4096,"comment":{"summary":[{"kind":"text","text":"Returns an object with the supported features of the camera on the current device."}]},"type":{"type":"reflection","declaration":{"name":"__type","variant":"declaration","kind":65536,"children":[{"name":"isModernBarcodeScannerAvailable","variant":"declaration","kind":1024,"type":{"type":"intrinsic","name":"boolean"}},{"name":"toggleRecordingAsyncAvailable","variant":"declaration","kind":1024,"type":{"type":"intrinsic","name":"boolean"}}]}}}]},{"name":"pausePreview","variant":"declaration","kind":2048,"signatures":[{"name":"pausePreview","variant":"signature","kind":4096,"comment":{"summary":[{"kind":"text","text":"Pauses the camera preview. It is not recommended to use "},{"kind":"code","text":"`takePictureAsync`"},{"kind":"text","text":" when preview is paused."}]},"type":{"type":"reference","target":{"packageName":"typescript","packagePath":"lib/lib.es5.d.ts","qualifiedName":"Promise"},"typeArguments":[{"type":"intrinsic","name":"void"}],"name":"Promise","package":"typescript"}}]},{"name":"recordAsync","variant":"declaration","kind":2048,"signatures":[{"name":"recordAsync","variant":"signature","kind":4096,"comment":{"summary":[{"kind":"text","text":"Starts recording a video that will be saved to cache directory. Videos are rotated to match device's orientation.\nFlipping camera during a recording results in stopping it."}],"blockTags":[{"tag":"@returns","content":[{"kind":"text","text":"Returns a Promise that resolves to an object containing video file "},{"kind":"code","text":"`uri`"},{"kind":"text","text":" property and a "},{"kind":"code","text":"`codec`"},{"kind":"text","text":" property on iOS.\nThe Promise is returned if "},{"kind":"code","text":"`stopRecording`"},{"kind":"text","text":" was invoked, one of "},{"kind":"code","text":"`maxDuration`"},{"kind":"text","text":" and "},{"kind":"code","text":"`maxFileSize`"},{"kind":"text","text":" is reached or camera preview is stopped."}]},{"tag":"@platform","content":[{"kind":"text","text":"android"}]},{"tag":"@platform","content":[{"kind":"text","text":"ios"}]}]},"parameters":[{"name":"options","variant":"param","kind":32768,"flags":{"isOptional":true},"comment":{"summary":[{"kind":"text","text":"A map of "},{"kind":"code","text":"`CameraRecordingOptions`"},{"kind":"text","text":" type."}]},"type":{"type":"reference","name":"CameraRecordingOptions","package":"expo-camera"}}],"type":{"type":"reference","target":{"packageName":"typescript","packagePath":"lib/lib.es5.d.ts","qualifiedName":"Promise"},"typeArguments":[{"type":"union","types":[{"type":"reflection","declaration":{"name":"__type","variant":"declaration","kind":65536,"children":[{"name":"uri","variant":"declaration","kind":1024,"type":{"type":"intrinsic","name":"string"}}]}},{"type":"intrinsic","name":"undefined"}]}],"name":"Promise","package":"typescript"}}]},{"name":"render","variant":"declaration","kind":2048,"signatures":[{"name":"render","variant":"signature","kind":4096,"type":{"type":"reference","target":{"packageName":"@types/react","packagePath":"index.d.ts","qualifiedName":"React.JSX.Element"},"name":"Element","package":"@types/react","qualifiedName":"React.JSX.Element"},"overwrites":{"type":"reference","name":"Component.render","package":"@types/react"}}],"overwrites":{"type":"reference","name":"Component.render","package":"@types/react"}},{"name":"resumePreview","variant":"declaration","kind":2048,"signatures":[{"name":"resumePreview","variant":"signature","kind":4096,"comment":{"summary":[{"kind":"text","text":"Resumes the camera preview."}]},"type":{"type":"reference","target":{"packageName":"typescript","packagePath":"lib/lib.es5.d.ts","qualifiedName":"Promise"},"typeArguments":[{"type":"intrinsic","name":"void"}],"name":"Promise","package":"typescript"}}]},{"name":"stopRecording","variant":"declaration","kind":2048,"signatures":[{"name":"stopRecording","variant":"signature","kind":4096,"comment":{"summary":[{"kind":"text","text":"Stops recording if any is in progress."}],"blockTags":[{"tag":"@platform","content":[{"kind":"text","text":"android"}]},{"tag":"@platform","content":[{"kind":"text","text":"ios"}]}]},"type":{"type":"intrinsic","name":"void"}}]},{"name":"takePictureAsync","variant":"declaration","kind":2048,"signatures":[{"name":"takePictureAsync","variant":"signature","kind":4096,"comment":{"summary":[{"kind":"text","text":"Takes a picture and returns an object that references the native image instance.\n> **Note**: Make sure to wait for the ["},{"kind":"code","text":"`onCameraReady`"},{"kind":"text","text":"](#oncameraready) callback before calling this method.\n\n> **Note:** Avoid calling this method while the preview is paused. On Android, this will throw an error. On iOS, this will take a picture of the last frame that is currently on screen."}],"blockTags":[{"tag":"@returns","content":[{"kind":"text","text":"Returns a Promise that resolves to "},{"kind":"code","text":"`PictureRef`"},{"kind":"text","text":" class which contains basic image data, and a reference to native image instance which can be passed\nto other Expo packages supporting handling such an instance."}]}]},"parameters":[{"name":"optionsWithRef","variant":"param","kind":32768,"comment":{"summary":[{"kind":"text","text":"An object in form of "},{"kind":"code","text":"`CameraPictureOptions`"},{"kind":"text","text":" type and "},{"kind":"code","text":"`pictureRef`"},{"kind":"text","text":" key set to "},{"kind":"code","text":"`true`"},{"kind":"text","text":"."}]},"type":{"type":"intersection","types":[{"type":"reference","name":"CameraPictureOptions","package":"expo-camera"},{"type":"reflection","declaration":{"name":"__type","variant":"declaration","kind":65536,"children":[{"name":"pictureRef","variant":"declaration","kind":1024,"type":{"type":"literal","value":true}}]}}]}}],"type":{"type":"reference","target":{"packageName":"typescript","packagePath":"lib/lib.es5.d.ts","qualifiedName":"Promise"},"typeArguments":[{"type":"reference","name":"PictureRef","package":"expo-camera"}],"name":"Promise","package":"typescript"}},{"name":"takePictureAsync","variant":"signature","kind":4096,"comment":{"summary":[{"kind":"text","text":"Takes a picture and saves it to app's cache directory. Photos are rotated to match device's orientation\n(if "},{"kind":"code","text":"`options.skipProcessing`"},{"kind":"text","text":" flag is not enabled) and scaled to match the preview.\n> **Note**: Make sure to wait for the ["},{"kind":"code","text":"`onCameraReady`"},{"kind":"text","text":"](#oncameraready) callback before calling this method.\n\n> **Note:** Avoid calling this method while the preview is paused. On Android, this will throw an error. On iOS, this will take a picture of the last frame that is currently on screen."}],"blockTags":[{"tag":"@returns","content":[{"kind":"text","text":"Returns a Promise that resolves to "},{"kind":"code","text":"`CameraCapturedPicture`"},{"kind":"text","text":" object, where "},{"kind":"code","text":"`uri`"},{"kind":"text","text":" is a URI to the local image file on Android,\niOS, and a base64 string on web (usable as the source for an "},{"kind":"code","text":"`Image`"},{"kind":"text","text":" element). The "},{"kind":"code","text":"`width`"},{"kind":"text","text":" and "},{"kind":"code","text":"`height`"},{"kind":"text","text":" properties specify\nthe dimensions of the image.\n\n"},{"kind":"code","text":"`base64`"},{"kind":"text","text":" is included if the "},{"kind":"code","text":"`base64`"},{"kind":"text","text":" option was truthy, and is a string containing the JPEG data\nof the image in Base64. Prepend it with "},{"kind":"code","text":"`'data:image/jpg;base64,'`"},{"kind":"text","text":" to get a data URI, which you can use as the source\nfor an "},{"kind":"code","text":"`Image`"},{"kind":"text","text":" element for example.\n\n"},{"kind":"code","text":"`exif`"},{"kind":"text","text":" is included if the "},{"kind":"code","text":"`exif`"},{"kind":"text","text":" option was truthy, and is an object containing EXIF\ndata for the image. The names of its properties are EXIF tags and their values are the values for those tags.\n\n> On native platforms, the local image URI is temporary. Use ["},{"kind":"code","text":"`FileSystem.copy`"},{"kind":"text","text":"]("},{"kind":"relative-link","text":"filesystem/#copydestination-1"},{"kind":"text","text":")\n> to make a permanent copy of the image."}]}]},"parameters":[{"name":"options","variant":"param","kind":32768,"flags":{"isOptional":true},"comment":{"summary":[{"kind":"text","text":"An object in form of "},{"kind":"code","text":"`CameraPictureOptions`"},{"kind":"text","text":" type."}]},"type":{"type":"reference","name":"CameraPictureOptions","package":"expo-camera"}}],"type":{"type":"reference","target":{"packageName":"typescript","packagePath":"lib/lib.es5.d.ts","qualifiedName":"Promise"},"typeArguments":[{"type":"reference","name":"CameraCapturedPicture","package":"expo-camera"}],"name":"Promise","package":"typescript"}}]},{"name":"toggleRecordingAsync","variant":"declaration","kind":2048,"signatures":[{"name":"toggleRecordingAsync","variant":"signature","kind":4096,"comment":{"summary":[{"kind":"text","text":"Pauses or resumes the video recording. Only has an effect if there is an active recording. On "},{"kind":"code","text":"`iOS`"},{"kind":"text","text":", this method only supported on "},{"kind":"code","text":"`iOS`"},{"kind":"text","text":" 18."}],"blockTags":[{"tag":"@example","content":[{"kind":"code","text":"```ts\nconst { toggleRecordingAsyncAvailable } = getSupportedFeatures()\n\nreturn (\n {toggleRecordingAsyncAvailable && (\n