/**
 * @module Cast
 * @group Files
 */
import type { Ref } from 'vue';
export declare const currentCamera: Ref<string>;
export declare const currentMic: Ref<string>;
export declare const recordingName: Ref<string>;
export declare const recordCamera: Ref<boolean>;
export declare const mimeType: Ref<string>;
export declare const mimeExtMap: {
    'video/webm': string;
    'video/webm;codecs=h264': string;
    'video/x-matroska;codecs=avc1': string;
};
export type MimeTypes = 'video/webm' | 'video/webm;codecs=h264' | 'video/x-matroska;codecs=avc1' | undefined;
export declare function getFilename(media: string, mimeType: MimeTypes): string;
export declare function getSupportedMimeTypes(): string[];
export declare const fileNames: {
    screen: string;
    camera: string;
};
export declare const devices: Ref<MediaDeviceInfo[]>, cameras: import("vue").ComputedRef<MediaDeviceInfo[]>, microphones: import("vue").ComputedRef<MediaDeviceInfo[]>, ensureDevicesListPermissions: () => Promise<boolean>;
export declare function download(name: string, url: string): void;
export declare function useRecording(): {
    recording: Ref<boolean>;
    recordingTime: import("vue").ComputedRef<number>;
    showAvatar: Ref<boolean>;
    toggleRecording: () => void;
    startRecording: (customConfig?: {}) => Promise<void>;
    stopRecording: () => Promise<void>;
    toggleAvatar: () => Promise<void>;
    recorderCamera: import("vue").ShallowRef<any>;
    recorderSlides: import("vue").ShallowRef<any>;
    streamCamera: import("vue").ShallowRef<any>;
    streamCapture: import("vue").ShallowRef<any>;
    streamSlides: import("vue").ShallowRef<any>;
};
export declare const cast: {
    recording: Ref<boolean>;
    recordingTime: import("vue").ComputedRef<number>;
    showAvatar: Ref<boolean>;
    toggleRecording: () => void;
    startRecording: (customConfig?: {}) => Promise<void>;
    stopRecording: () => Promise<void>;
    toggleAvatar: () => Promise<void>;
    recorderCamera: import("vue").ShallowRef<any>;
    recorderSlides: import("vue").ShallowRef<any>;
    streamCamera: import("vue").ShallowRef<any>;
    streamCapture: import("vue").ShallowRef<any>;
    streamSlides: import("vue").ShallowRef<any>;
};
