import { WaveSurferOptions } from 'wavesurfer.js'; import type { HoverPluginOptions } from 'wavesurfer.js/dist/plugins/hover'; import type { GenericPlugin } from 'wavesurfer.js/dist/base-plugin'; import { VcSoundPlayerSize } from '../../types/VcSoundPlayer.types'; interface IWrapperProps { soundId?: string | number; src?: string; currentPlay?: string; disabled?: boolean; preloadSound?: boolean; size?: VcSoundPlayerSize; options?: WaveSurferOptions; showHover?: boolean; skipSeconds?: number; defaultVolume?: number; hoverOptions?: HoverPluginOptions; } declare function play(time?: number): void; declare function pause(): void; declare function stop(): void; declare function skipBackward(seconds?: number): void; declare function skipForward(seconds?: number): void; declare function setVolume(val: number): void; declare function initSound(): void; declare function setTime(time: number): void; declare function seekTo(time: number): void; declare function setTimeAndPlay(time: number): void; declare function resetInitSound(): void; declare function setPlaybackRate(rate: number): void; declare function setDurationTime(time: number): void; declare const _default: __VLS_WithTemplateSlots, { soundId: undefined; src: undefined; currentPlay: undefined; disabled: boolean; preloadSound: boolean; showHover: boolean; skipSeconds: number; size: string; defaultVolume: number; options: () => { container: string | HTMLElement; height?: number | "auto" | undefined; width?: string | number | undefined; waveColor?: string | string[] | CanvasGradient | undefined; progressColor?: string | string[] | CanvasGradient | undefined; cursorColor?: string | undefined; cursorWidth?: number | undefined; barWidth?: number | undefined; barGap?: number | undefined; barRadius?: number | undefined; barHeight?: number | undefined; barAlign?: "top" | "bottom" | undefined; barMinHeight?: number | undefined; minPxPerSec?: number | undefined; fillParent?: boolean | undefined; url?: string | undefined; peaks?: (number[] | Float32Array)[] | undefined; duration?: number | undefined; media?: HTMLMediaElement | undefined; mediaControls?: boolean | undefined; autoplay?: boolean | undefined; interact?: boolean | undefined; dragToSeek?: boolean | { debounceTime: number; } | undefined; hideScrollbar?: boolean | undefined; audioRate?: number | undefined; autoScroll?: boolean | undefined; autoCenter?: boolean | undefined; sampleRate?: number | undefined; splitChannels?: (Partial & { overlay?: boolean | undefined; })[] | undefined; normalize?: boolean | undefined; maxPeak?: number | undefined; plugins?: GenericPlugin[] | undefined; renderFunction?: ((peaks: (number[] | Float32Array)[], ctx: CanvasRenderingContext2D) => void) | undefined; fetchParams?: RequestInit | undefined; backend?: "WebAudio" | "MediaElement" | undefined; cspNonce?: string | undefined; blobMimeType?: string | undefined; }; hoverOptions: () => {}; }>>, { initSound: typeof initSound; play: typeof play; stop: typeof stop; pause: typeof pause; setVolume: typeof setVolume; resetInitSound: typeof resetInitSound; skipBackward: typeof skipBackward; skipForward: typeof skipForward; setTime: typeof setTime; seekTo: typeof seekTo; getCurrentTime: () => number; getDurationTime: () => number; setDurationTime: typeof setDurationTime; setPlaybackRate: typeof setPlaybackRate; setTimeAndPlay: typeof setTimeAndPlay; setInitialStartTime: (seconds: number) => number; setLoadingState: (val: boolean) => boolean; }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, { "on-error": (msg: Error) => void; ready: (id: string) => void; "update:time": (time: number) => void; "update:duration": (time: number) => void; "update:currentPlay": (src: string | undefined, isPlaying: boolean) => void; start: (soundId: string | number | undefined, src: string | undefined) => void; stop: (soundId: string | number | undefined, src: string | undefined) => void; onPlay: (soundId: string | number | undefined, src: string | undefined) => void; pause: (soundId: string | number | undefined, src: string | undefined) => void; }, string, import("vue").PublicProps, Readonly, { soundId: undefined; src: undefined; currentPlay: undefined; disabled: boolean; preloadSound: boolean; showHover: boolean; skipSeconds: number; size: string; defaultVolume: number; options: () => { container: string | HTMLElement; height?: number | "auto" | undefined; width?: string | number | undefined; waveColor?: string | string[] | CanvasGradient | undefined; progressColor?: string | string[] | CanvasGradient | undefined; cursorColor?: string | undefined; cursorWidth?: number | undefined; barWidth?: number | undefined; barGap?: number | undefined; barRadius?: number | undefined; barHeight?: number | undefined; barAlign?: "top" | "bottom" | undefined; barMinHeight?: number | undefined; minPxPerSec?: number | undefined; fillParent?: boolean | undefined; url?: string | undefined; peaks?: (number[] | Float32Array)[] | undefined; duration?: number | undefined; media?: HTMLMediaElement | undefined; mediaControls?: boolean | undefined; autoplay?: boolean | undefined; interact?: boolean | undefined; dragToSeek?: boolean | { debounceTime: number; } | undefined; hideScrollbar?: boolean | undefined; audioRate?: number | undefined; autoScroll?: boolean | undefined; autoCenter?: boolean | undefined; sampleRate?: number | undefined; splitChannels?: (Partial & { overlay?: boolean | undefined; })[] | undefined; normalize?: boolean | undefined; maxPeak?: number | undefined; plugins?: GenericPlugin[] | undefined; renderFunction?: ((peaks: (number[] | Float32Array)[], ctx: CanvasRenderingContext2D) => void) | undefined; fetchParams?: RequestInit | undefined; backend?: "WebAudio" | "MediaElement" | undefined; cspNonce?: string | undefined; blobMimeType?: string | undefined; }; hoverOptions: () => {}; }>>> & Readonly<{ onStart?: ((soundId: string | number | undefined, src: string | undefined) => any) | undefined; onPause?: ((soundId: string | number | undefined, src: string | undefined) => any) | undefined; onStop?: ((soundId: string | number | undefined, src: string | undefined) => any) | undefined; onOnPlay?: ((soundId: string | number | undefined, src: string | undefined) => any) | undefined; "onOn-error"?: ((msg: Error) => any) | undefined; onReady?: ((id: string) => any) | undefined; "onUpdate:time"?: ((time: number) => any) | undefined; "onUpdate:duration"?: ((time: number) => any) | undefined; "onUpdate:currentPlay"?: ((src: string | undefined, isPlaying: boolean) => any) | undefined; }>, { size: VcSoundPlayerSize; disabled: boolean; options: WaveSurferOptions; defaultVolume: number; soundId: string | number; src: string; currentPlay: string; preloadSound: boolean; showHover: boolean; skipSeconds: number; hoverOptions: HoverPluginOptions; }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>, { default?(_: {}): any; }>; export default _default; type __VLS_NonUndefinedable = T extends undefined ? never : T; type __VLS_TypePropsToRuntimeProps = { [K in keyof T]-?: {} extends Pick ? { type: import('vue').PropType<__VLS_NonUndefinedable>; } : { type: import('vue').PropType; required: true; }; }; type __VLS_WithDefaults = { [K in keyof Pick]: K extends keyof D ? __VLS_Prettify : P[K]; }; type __VLS_Prettify = { [K in keyof T]: T[K]; } & {}; type __VLS_WithTemplateSlots = T & { new (): { $slots: S; }; };