import Component from '@glimmer/component';
import Timer from '../utils/timer';
import type EuiToasterService from '../services/eui-toaster';
import type { EuiToastProps, EuiToastPropsWithId } from '../services/eui-toaster';
import type { sideMapping } from '../utils/css-mappings/eui-global-toast-list';
type EuiToastSide = keyof typeof sideMapping;
type GlobalToastListArgs = {
    toasts: EuiToastPropsWithId[];
    dismissToast?: (this: EuiGlobalToastList, toast: EuiToastProps) => void;
    toastLifeTimeMs: number;
    side?: EuiToastSide;
};
export interface EuiGlobalToastListItemSignature {
    Element: HTMLDivElement;
    Args: GlobalToastListArgs;
}
export default class EuiGlobalToastList extends Component<EuiGlobalToastListItemSignature> {
    euiToaster: EuiToasterService;
    dismissTimeoutIds: number[];
    toastIdToTimerMap: {
        [toastId: string]: Timer;
    };
    isScrollingToBottom: boolean;
    isScrolledToBottom: boolean;
    isUserInteracting: boolean;
    isScrollingAnimationFrame: number;
    startScrollingAnimationFrame: number;
    listElement: Element | null;
    toastIdToDismissedMap: {
        [toastId: string]: boolean;
    };
    startScrollingToBottom(): void;
    didInsertToast(toast: EuiToastPropsWithId): void;
    onMouseEnter(): void;
    onMouseLeave(): void;
    onScroll(): void;
    scheduleAllToastsForDismissal(): void;
    scheduleToastForDismissal(toast: EuiToastPropsWithId): void;
    dismissToast(toast: EuiToastPropsWithId): void;
    constructor(owner: unknown, args: GlobalToastListArgs);
    didInsert(element: Element): void;
    willDestroy(): void;
}
export {};
//# sourceMappingURL=eui-global-toast-list.d.ts.map