import { FullScreenType } from '../full-screen';
import { VideoPlaybackRate } from './symbol';
declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
    inherit: import('vue').PropType<boolean>;
    src: import('vue').PropType<string>;
    srcList: import('vue').PropType<string[]>;
    noControls: import('vue').PropType<boolean>;
    videoAttrs: import('vue').PropType<any>;
    time: import('vue').PropType<number>;
    volume: import('vue').PropType<number>;
    playbackRate: import('vue').PropType<number>;
    playbackRates: import('vue').PropType<(number | VideoPlaybackRate)[]>;
    controlLayout: import('vue').PropType<import('./symbol').VideoControlLayout>;
    poster: import('vue').PropType<string>;
    video: import('vue').PropType<HTMLVideoElement>;
    segments: import('vue').PropType<(number | import('./symbol').VideoSegment)[]>;
    loading: import('vue').PropType<boolean>;
    loadingIcon: import('vue').PropType<any>;
    loadingEffect: import('vue').PropType<string>;
    shortcuts: import('vue').PropType<import('./symbol').VideoShortcutOptions>;
    slots: import('vue').PropType<import('./symbol').VideoSlots>;
    onPlay: import('vue').PropType<import('@vexip-ui/config').AnyFunction | import('@vexip-ui/config').AnyFunction[]>;
    onPause: import('vue').PropType<import('@vexip-ui/config').AnyFunction | import('@vexip-ui/config').AnyFunction[]>;
    onEnded: import('vue').PropType<import('@vexip-ui/config').AnyFunction | import('@vexip-ui/config').AnyFunction[]>;
    onTimeChange: import('vue').PropType<((time: number) => void) | ((time: number) => void)[]>;
    onVolumeChange: import('vue').PropType<((volume: number) => void) | ((volume: number) => void)[]>;
    onRateChange: import('vue').PropType<((rate: number) => void) | ((rate: number) => void)[]>;
    onToggleFlip: import('vue').PropType<((flip: boolean) => void) | ((flip: boolean) => void)[]>;
    onTogglePip: import('vue').PropType<((pip: boolean) => void) | ((pip: boolean) => void)[]>;
    onToggleFull: import('vue').PropType<((full: false | FullScreenType) => void) | ((full: false | FullScreenType) => void)[]>;
    onPrev: import('vue').PropType<import('@vexip-ui/config').AnyFunction | import('@vexip-ui/config').AnyFunction[]>;
    onNext: import('vue').PropType<import('@vexip-ui/config').AnyFunction | import('@vexip-ui/config').AnyFunction[]>;
    onRefresh: import('vue').PropType<import('@vexip-ui/config').AnyFunction | import('@vexip-ui/config').AnyFunction[]>;
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, ("update:src" | "update:time" | "update:volume" | "update:playback-rate")[], "update:src" | "update:time" | "update:volume" | "update:playback-rate", import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
    inherit: import('vue').PropType<boolean>;
    src: import('vue').PropType<string>;
    srcList: import('vue').PropType<string[]>;
    noControls: import('vue').PropType<boolean>;
    videoAttrs: import('vue').PropType<any>;
    time: import('vue').PropType<number>;
    volume: import('vue').PropType<number>;
    playbackRate: import('vue').PropType<number>;
    playbackRates: import('vue').PropType<(number | VideoPlaybackRate)[]>;
    controlLayout: import('vue').PropType<import('./symbol').VideoControlLayout>;
    poster: import('vue').PropType<string>;
    video: import('vue').PropType<HTMLVideoElement>;
    segments: import('vue').PropType<(number | import('./symbol').VideoSegment)[]>;
    loading: import('vue').PropType<boolean>;
    loadingIcon: import('vue').PropType<any>;
    loadingEffect: import('vue').PropType<string>;
    shortcuts: import('vue').PropType<import('./symbol').VideoShortcutOptions>;
    slots: import('vue').PropType<import('./symbol').VideoSlots>;
    onPlay: import('vue').PropType<import('@vexip-ui/config').AnyFunction | import('@vexip-ui/config').AnyFunction[]>;
    onPause: import('vue').PropType<import('@vexip-ui/config').AnyFunction | import('@vexip-ui/config').AnyFunction[]>;
    onEnded: import('vue').PropType<import('@vexip-ui/config').AnyFunction | import('@vexip-ui/config').AnyFunction[]>;
    onTimeChange: import('vue').PropType<((time: number) => void) | ((time: number) => void)[]>;
    onVolumeChange: import('vue').PropType<((volume: number) => void) | ((volume: number) => void)[]>;
    onRateChange: import('vue').PropType<((rate: number) => void) | ((rate: number) => void)[]>;
    onToggleFlip: import('vue').PropType<((flip: boolean) => void) | ((flip: boolean) => void)[]>;
    onTogglePip: import('vue').PropType<((pip: boolean) => void) | ((pip: boolean) => void)[]>;
    onToggleFull: import('vue').PropType<((full: false | FullScreenType) => void) | ((full: false | FullScreenType) => void)[]>;
    onPrev: import('vue').PropType<import('@vexip-ui/config').AnyFunction | import('@vexip-ui/config').AnyFunction[]>;
    onNext: import('vue').PropType<import('@vexip-ui/config').AnyFunction | import('@vexip-ui/config').AnyFunction[]>;
    onRefresh: import('vue').PropType<import('@vexip-ui/config').AnyFunction | import('@vexip-ui/config').AnyFunction[]>;
}>> & Readonly<{
    "onUpdate:src"?: ((...args: any[]) => any) | undefined;
    "onUpdate:time"?: ((...args: any[]) => any) | undefined;
    "onUpdate:volume"?: ((...args: any[]) => any) | undefined;
    "onUpdate:playback-rate"?: ((...args: any[]) => any) | undefined;
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
export default _default;
