/// <reference types="node" />
import { NoticeBarProps, NoticeBarEvents, NoticeBarType, NoticeBarAction } from './types';
import type { CSSProperties } from 'vue';
export interface NoticeBarInnerProps {
    isShow: boolean;
    marqueeMoveDistance: number;
    marqueeWidth: number;
    marqueeContainerWidth: number;
    translateX: number | string;
    marqueeStyle: CSSProperties;
    isScroll: boolean;
    offsetLeft: number;
    getInitMarqueeStyle: () => CSSProperties;
    setMarqueeWidth: () => void;
    setMarqueStyle: (translateX?: number, duration?: number) => void;
    computeInitMoveDistance: () => number;
    initMarquee: () => void;
    resetMarquee: () => void;
    handleAction: (e: Event) => void;
}
declare const _default: import("vue-tsx-support")._TsxComponentV3<import("vue").default<Record<string, any>, Record<string, any>, never, never, (event: string, ...args: any[]) => import("vue").default<Record<string, any>, Record<string, any>, never, never, any>> & NoticeBarInnerProps & import("../_utils/defineComponent").OhuComponentInnerProps & {
    timeoutId: NodeJS.Timeout | null;
    isShow: boolean;
    translateX: number;
    marqueeMoveDistance: number;
    marqueeWidth: number;
    marqueeContainerWidth: number;
    marqueeStyle: CSSProperties;
} & {
    text: string;
    icon: import("@ohu-mobile/icons/lib/types").SVGIconDef | undefined;
    action: NoticeBarAction | undefined;
    type: NoticeBarType;
    multiline: boolean;
    scrollable: Boolean | undefined;
    offset: string;
    delay: number;
    speed: number;
}, {}, {} & {
    icon?: import("@ohu-mobile/icons/lib/types").SVGIconDef | undefined;
    type?: NoticeBarType | undefined;
    offset?: string | undefined;
    text?: string | undefined;
    action?: NoticeBarAction | undefined;
    scrollable?: Boolean | undefined;
    delay?: number | undefined;
    multiline?: boolean | undefined;
    speed?: number | undefined;
} & NoticeBarProps, NoticeBarEvents, {}, {}>;
export default _default;
