/// <reference types="react" />
import { PresentationToolbarItemType } from './enums';
import { PresentationToolbarInterface, PresentationToolbarButtonProps } from './types';
export declare class PresentationToolbarButton implements PresentationToolbarInterface {
    id: string;
    type: PresentationToolbarItemType;
    label: string;
    tooltip: string;
    style: React.CSSProperties;
    dataTest: string;
    onClick: () => void;
    /**
     * Returns object to be used in the setter for presentation toolbar. In this case
     * a button.
     *
     * @param label - label to be displayed in the button
     * @param tooltip - tooltip to be displayed when hovering the button
     * @param onClick - function to be called when clicking the button
     * @param style - style of the button in the presentation toolbar
     * @param dataTest - data-test attribute for testing purposes
     *
     * @returns Object that will be interpreted by the core of Bigbluebutton (HTML5)
     */
    constructor({ id, label, tooltip, dataTest, onClick, style, }: PresentationToolbarButtonProps);
    setItemId: (id: string) => void;
}
export declare class PresentationToolbarSpinner implements PresentationToolbarInterface {
    id: string;
    type: PresentationToolbarItemType;
    /**
     * Returns object to be used in the setter for presentation toolbar. In this case
     * a spinner (ring that will be rotating).
     *
     * @returns Object that will be interpreted by the core of Bigbluebutton (HTML5)
     */
    constructor();
    setItemId: (id: string) => void;
}
export declare class PresentationToolbarSeparator implements PresentationToolbarInterface {
    id: string;
    type: PresentationToolbarItemType;
    /**
     * Returns object to be used in the setter for presentation toolbar. In this case
     * a separator.
     *
     * @returns Object that will be interpreted by the core of Bigbluebutton (HTML5)
     */
    constructor();
    setItemId: (id: string) => void;
}
