You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

PhotoLibrary.d.ts 3.4 KiB

4 years ago
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. declare module PhotoLibraryCordova {
  2. export interface Plugin {
  3. getLibrary(success: (chunk: { library: LibraryItem[], isLastChunk: boolean }) => void, error: (err: any) => void, options?: GetLibraryOptions): void;
  4. requestAuthorization(success: () => void, error: (err: any) => void, options?: RequestAuthorizationOptions): void;
  5. getAlbums(success: (result: AlbumItem[]) => void, error: (err:any) => void): void;
  6. isAuthorized(success: (result: boolean) => void, error: (err:any) => void): void;
  7. getThumbnailURL(photoId: string, success: (result: string) => void, error: (err: any) => void, options?: GetThumbnailOptions): void;
  8. getThumbnailURL(libraryItem: LibraryItem, success: (result: string) => void, error: (err: any) => void, options?: GetThumbnailOptions): void;
  9. getThumbnailURL(photoId: string, options?: GetThumbnailOptions): string; // Will not work in browser
  10. getThumbnailURL(libraryItem: LibraryItem, options?: GetThumbnailOptions): string; // Will not work in browser
  11. getPhotoURL(photoId: string, success: (result: string) => void, error: (err: any) => void, options?: GetPhotoOptions): void;
  12. getPhotoURL(libraryItem: LibraryItem, success: (result: string) => void, error: (err: any) => void, options?: GetPhotoOptions): void;
  13. getPhotoURL(photoId: string, options?: GetPhotoOptions): string; // Will not work in browser
  14. getPhotoURL(libraryItem: LibraryItem, options?: GetPhotoOptions): string; // Will not work in browser
  15. getThumbnail(photoId: string, success: (result: Blob) => void, error: (err: any) => void, options?: GetThumbnailOptions): void;
  16. getThumbnail(libraryItem: LibraryItem, success: (result: Blob) => void, error: (err: any) => void, options?: GetThumbnailOptions): void;
  17. getPhoto(photoId: string, success: (result: Blob) => void, error: (err: any) => void, options?: GetPhotoOptions): void;
  18. getPhoto(libraryItem: LibraryItem, success: (result: Blob) => void, error: (err: any) => void, options?: GetPhotoOptions): void;
  19. getLibraryItem(libraryItem: LibraryItem, success: (result: Blob) => void, error: (err: any) => void, options?: GetPhotoOptions): void;
  20. stopCaching(success: () => void, error: (err: any) => void): void;
  21. saveImage(url: string, album: AlbumItem | string, success: (libraryItem: LibraryItem) => void, error: (err: any) => void, options?: GetThumbnailOptions): void;
  22. saveVideo(url: string, album: AlbumItem | string, success: () => void, error: (err: any) => void): void;
  23. }
  24. export interface LibraryItem {
  25. id: string;
  26. photoURL: string;
  27. thumbnailURL: string;
  28. fileName: string;
  29. width: number;
  30. height: number;
  31. creationDate: Date;
  32. latitude?: number;
  33. longitude?: number;
  34. albumIds?: string[];
  35. }
  36. export interface AlbumItem {
  37. id: string;
  38. title: string;
  39. }
  40. export interface GetLibraryOptions {
  41. thumbnailWidth?: number;
  42. thumbnailHeight?: number;
  43. quality?: number;
  44. itemsInChunk?: number;
  45. chunkTimeSec?: number;
  46. useOriginalFileNames?: boolean;
  47. includeImages?: boolean;
  48. includeAlbumData?: boolean;
  49. includeCloudData?: boolean;
  50. includeVideos?: boolean;
  51. }
  52. export interface RequestAuthorizationOptions {
  53. read?: boolean;
  54. write?: boolean;
  55. }
  56. export interface GetThumbnailOptions {
  57. thumbnailWidth?: number;
  58. thumbnailHeight?: number;
  59. quality?: number;
  60. }
  61. export interface GetPhotoOptions {
  62. }
  63. }
  64. interface CordovaPlugins {
  65. photoLibrary: PhotoLibraryCordova.Plugin;
  66. }