mirror of
https://github.com/facebook/react-native.git
synced 2025-11-01 09:14:26 +00:00
de667fffa4
Summary: For some reason the specs were internal, but the native impl is still in github. So let's move these to github for consistency. Changelog: [Internal] Reviewed By: hramos Differential Revision: D21419934 fbshipit-source-id: f2c4486edca43c4348f3a3c6ce98f76a322bab0b
72 lines
1.5 KiB
JavaScript
72 lines
1.5 KiB
JavaScript
/**
|
|
* (c) Facebook, Inc. and its affiliates. Confidential and proprietary.
|
|
*
|
|
* @flow strict-local
|
|
* @format
|
|
*/
|
|
|
|
'use strict';
|
|
|
|
import type {TurboModule} from '../TurboModule/RCTExport';
|
|
import * as TurboModuleRegistry from '../TurboModule/TurboModuleRegistry';
|
|
|
|
export type PhotoIdentifier = {|
|
|
node: {|
|
|
image: PhotoIdentifierImage,
|
|
type: string,
|
|
group_name: string,
|
|
timestamp: number,
|
|
location: {|
|
|
longitude: number,
|
|
latitude: number,
|
|
|
|
// iOS Only
|
|
altitude: ?number,
|
|
heading: ?number,
|
|
speed: ?number,
|
|
|},
|
|
|},
|
|
|};
|
|
|
|
export type PhotoIdentifierImage = {|
|
|
uri: string,
|
|
playableDuration: number,
|
|
width: number,
|
|
height: number,
|
|
isStored: ?boolean,
|
|
filename: ?string,
|
|
|};
|
|
|
|
export type PhotoIdentifiersPage = {|
|
|
edges: Array<PhotoIdentifier>,
|
|
page_info: {|
|
|
has_next_page: boolean,
|
|
start_cursor?: ?string,
|
|
end_cursor?: ?string,
|
|
|},
|
|
|};
|
|
|
|
export type GetPhotosParams = {|
|
|
first: number,
|
|
after?: ?string,
|
|
groupName?: ?string,
|
|
groupTypes?: ?string,
|
|
assetType?: ?string,
|
|
maxSize?: ?number,
|
|
mimeTypes?: ?Array<string>,
|
|
|};
|
|
|
|
export interface Spec extends TurboModule {
|
|
+getConstants: () => {||};
|
|
// eslint-disable-next-line lint/react-native-modules
|
|
+getPhotos: (params: GetPhotosParams) => Promise<PhotoIdentifiersPage>;
|
|
+saveToCameraRoll: (uri: string, type: string) => Promise<string>;
|
|
|
|
// iOS Only
|
|
+deletePhotos: (assets: Array<string>) => Promise<boolean>;
|
|
}
|
|
|
|
export default (TurboModuleRegistry.getEnforcing<Spec>(
|
|
'CameraRollManager',
|
|
): Spec);
|