/**
 * External dependencies
 */
import type { MutableRefObject, ReactNode } from 'react';
/**
 * Internal dependencies
 */
import type { NoticeProps, NoticeChildren } from '../notice/types';
type SnackbarOnlyProps = {
    /**
     * The icon to render in the snackbar.
     *
     * @default null
     */
    icon?: ReactNode;
    /**
     * Whether to require user action to dismiss the snackbar.
     * By default, this is dismissed on a timeout, without user interaction.
     *
     * @default false
     */
    explicitDismiss?: boolean;
    /**
     * A ref to the list that contains the snackbar.
     */
    listRef?: MutableRefObject<HTMLDivElement | null>;
};
export type SnackbarProps = NoticeProps & SnackbarOnlyProps;
export type SnackbarListProps = {
    notices: Array<Omit<SnackbarProps, 'children'> & {
        id: string;
        content: string;
    }>;
    onRemove: (id: string) => void;
    children?: NoticeChildren | Array<NoticeChildren>;
};
export {};
//# sourceMappingURL=types.d.ts.map