import type { CameraCaptureFormat } from '../../../Types/CameraCaptureFormat';
import type { CameraRecorderFormat } from '../../../Types/CameraRecorderFormat';
import type { CameraType } from '../../../Types/CameraType';
import type { CameraFrame } from './CameraFrame';
/**
 * Represents the `{@link ICameraElementProps}` interface.
 *
 * @public
 */
export interface ICameraElementProps {
    /**
     * The source of the video.
     */
    src: string | MediaStream | MediaSource | Blob | null;
    /**
     * Auto play the video.
     *
     * @remarks
     * For security reasons, the modern browsers do not allow auto play becouase auf irritating the user.
     * When this property is the to `true` the video will be *not* played automatically if the user had no interaction on the page.
     */
    autoPlay: boolean;
    /**
     * The poster of the video.
     */
    poster: string;
    /**
     * Sets the video to full screen.
     * This property is only available on mobile devices.
     * If its set to `true` the video will be played automatically in full screen mode; otherwise it will be played inline.
     */
    autoFullScreen: boolean;
    type: CameraType;
    recorderFormat: CameraRecorderFormat;
    captureFormat: CameraCaptureFormat;
    /**
     * A camera frame info object
     * When the camera frame is set, the camera will be displayed as a frame.
     * If a picture will captured, only the inner part of the frame will be captured.
     *
     * @remarks
     * A frame can be defined as a string (*e.g.* `16:9`) or as an object (*e.g.* `{ width: 16, height: 9 }`).
     */
    frame: CameraFrame | null;
}
//# sourceMappingURL=ICameraElementProps.d.ts.map