diff --git a/src/@ionic-native/plugins/last-cam/index.ts b/src/@ionic-native/plugins/last-cam/index.ts new file mode 100644 index 0000000000..cb8f4cb578 --- /dev/null +++ b/src/@ionic-native/plugins/last-cam/index.ts @@ -0,0 +1,137 @@ +import { Injectable } from '@angular/core'; +import { Cordova, IonicNativePlugin, Plugin } from '@ionic-native/core'; +import { Observable } from 'rxjs/Observable'; + +export interface LastCamStartupOptions { + /** The left edge in pixels, default 0 */ + x?: number; + + /** The top edge in pixels, default 0 */ + y?: number; + + /** The width in pixels, default window.screen.width */ + width?: number; + + /** The height in pixels, default window.screen.height */ + height?: number; + + /** Choose the camera to use 'front' or 'back', default 'front' */ + camera?: string; +} + +/** + * @name LastCam + * @description + * Last Cam is a Camera Preview plugin that allows you to take capture both Videos and images in a + * custom html preview of your choice. + * + * @interfaces + * LastCamStartupOptions + */ +@Plugin({ + pluginName: 'LastCam', + plugin: 'cordova-plugin-last-cam', + pluginRef: 'LastCam', + repo: 'https://github.com/bengejd/cordova-plugin-last-cam', + platforms: ['iOS'] +}) +@Injectable() +export class LastCam extends IonicNativePlugin { + /** + * Starts the camera preview instance. + * @param {LastCamStartupOptions} options + * @return {Promise} + */ + @Cordova({ + successIndex: 1, + errorIndex: 2 + }) + startCamera(options: LastCamStartupOptions): Promise { + return; + } + + /** + * Stops the camera preview instance. (iOS) + * @return {Promise} + */ + @Cordova() + stopCamera(): Promise { + return; + } + + /** + * Switch from the rear camera and front camera, if available. + * @return {Promise} + */ + @Cordova() + switchCamera(): Promise { + return; + } + + /** + * Switch the flash mode. + * @return {Promise} + */ + @Cordova() + switchFlash(): Promise { + return; + } + + /** + * Take the picture (base64) + * @return {Promise} + */ + @Cordova({ + successIndex: 0, + errorIndex: 1 + }) + takePicture(): Promise { + return; + } + + /** + * Start the video capture + * @return {Promise} + */ + @Cordova() + startVideoCapture(): Promise { + return; + } + + /** + * Stops the video capture + * @return {Promise} + */ + @Cordova({ + successIndex: 0, + errorIndex: 1 + }) + stopVideoCapture(): Promise { + return; + } + + /** + * Promise of the recordingTimer. + * @return {Promise} + */ + @Cordova({ + successIndex: 0, + errorIndex: 1 + }) + recordingTimer(): Promise { + return; + } + + /** + * Observable of the recordingTimer. + * @return {Observable} + */ + @Cordova({ + successIndex: 0, + errorIndex: 1, + observable: true + }) + watchRecordingTimer(): Observable { + return; + } +}