import { BarrageItem } from '../interface';
import { Listener } from '../lib';
export declare abstract class BarrageBase<T extends HTMLElement> implements BarrageItem {
    abstract readonly duration: number;
    protected readonly listener: Listener;
    get height(): number;
    get width(): number;
    readonly $el: T;
    protected constructor(el: T);
    destroy(): void;
    on(key: string, listener: (data: any) => void): void;
    off(key: string, listener: (data: any) => void): void;
    once(key: string, listener: (data: any) => void): void;
}
