import WaveSurfer from 'wavesurfer.js';
import { PropType } from 'vue';
import { VcSoundPlayerSize, VcSoundDownloads } from './VcSoundPlayer.types';
declare const _default: import("vue").DefineComponent<{
    soundId: {
        type: (StringConstructor | NumberConstructor)[];
        default: string;
    };
    src: {
        type: StringConstructor;
        default: string;
    };
    simple: {
        type: BooleanConstructor;
        default: boolean;
    };
    size: {
        type: PropType<VcSoundPlayerSize>;
        default: string;
    };
    disabled: {
        type: BooleanConstructor;
        default: boolean;
    };
    preIcon: {
        type: StringConstructor;
        default: string;
    };
    currentPlay: {
        type: StringConstructor;
        default: string;
    };
    downloadLinks: {
        type: PropType<VcSoundDownloads>;
        default: () => never[];
    };
}, unknown, {
    loading: boolean;
    volumeTooltip: boolean;
    isPlaying: boolean;
    showReset: boolean;
    duration: number;
    currentTime: number;
    volume: number;
    wavesurfer: WaveSurfer;
    wavesurferOptions: {
        height: number;
        container: string;
        barWidth: number;
        barHeight: number;
        barMinHeight: number;
        waveColor: string;
        progressColor: string;
    };
    audioErrorMessage: string;
    isInitSound: boolean;
    firstPlay: boolean;
    timeInterval: number;
}, {
    isError(): boolean;
    height(): string;
    iconClass(): string;
    isPlayingInProgress(): boolean;
    showDownloadButton(): boolean;
    progressTime(): number;
}, {
    onClickOutsideVolume(e: PointerEvent): void;
    toggleVolumeTooltip(): void;
    closeTooltip(): void;
    initSound(): void;
    loadingSound(): void;
    onPlay(): void;
    onFinish(): void;
    stop(): void;
    play(): void;
    pause(): void;
    setVolume(val: number): void;
    toMinutes(seconds: number): string;
    download(sound: string): Promise<Blob>;
    downloadIconType(item: string): string;
}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("start" | "stop" | "onPlay" | "pause")[], "start" | "stop" | "onPlay" | "pause", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
    soundId: {
        type: (StringConstructor | NumberConstructor)[];
        default: string;
    };
    src: {
        type: StringConstructor;
        default: string;
    };
    simple: {
        type: BooleanConstructor;
        default: boolean;
    };
    size: {
        type: PropType<VcSoundPlayerSize>;
        default: string;
    };
    disabled: {
        type: BooleanConstructor;
        default: boolean;
    };
    preIcon: {
        type: StringConstructor;
        default: string;
    };
    currentPlay: {
        type: StringConstructor;
        default: string;
    };
    downloadLinks: {
        type: PropType<VcSoundDownloads>;
        default: () => never[];
    };
}>> & {
    onStart?: ((...args: any[]) => any) | undefined;
    onStop?: ((...args: any[]) => any) | undefined;
    onOnPlay?: ((...args: any[]) => any) | undefined;
    onPause?: ((...args: any[]) => any) | undefined;
}, {
    soundId: string | number;
    src: string;
    currentPlay: string;
    simple: boolean;
    size: VcSoundPlayerSize;
    disabled: boolean;
    preIcon: string;
    downloadLinks: VcSoundDownloads;
}>;
export default _default;
