import { UserListDropdownInterface, UserListDropdownOptionProps, UserListDropdownSeparatorProps, UserListDropdownInformationProps } from './types';
import { UserListDropdownItemType } from './enums';
export declare class UserListDropdownOption implements UserListDropdownInterface {
    id: string;
    userId: string;
    type: UserListDropdownItemType;
    label: string;
    icon: string;
    tooltip: string;
    allowed: boolean;
    onClick: () => void;
    /**
     * Returns object to be used in the setter for the User List Dropdown. In this case,
     * a button.
     *
     * @param label - label to be displayed in user list dropdown option.
     * @param tooltip - label to be displayed when hovering the user list dropdown option.
     * @param icon - icon to be used in the user list dropdown option. It goes in the left side of it.
     * @param onClick - function to be called when clicking the option.
     * @param allowed - if false, the use list dropdown  will not appear in the dropdown.
     * @param userId - the userId in which this dropdown option will appear when the user
     * list item is clicked.
     *
     * @returns Object that will be interpreted by the core of Bigbluebutton (HTML5).
     */
    constructor({ label, icon, tooltip, allowed, onClick, userId, }: UserListDropdownOptionProps);
    setItemId: (id: string) => void;
}
export declare class UserListDropdownSeparator implements UserListDropdownInterface {
    id: string;
    userId: string;
    type: UserListDropdownItemType;
    /**
     * Returns object to be used in the setter for the User List Dropdown. In this case,
     * a separator.
     *
     * @param userId - the userId in which this dropdown separator will appear when the user
     * list item is clicked.
     *
     * @returns Object that will be interpreted by the core of Bigbluebutton (HTML5).
     */
    constructor({ userId }: UserListDropdownSeparatorProps);
    setItemId: (id: string) => void;
}
export declare class UserListDropdownInformation implements UserListDropdownInterface {
    id: string;
    userId: string;
    type: UserListDropdownItemType;
    label: string;
    icon: string;
    iconRight: string;
    textColor: string;
    allowed: boolean;
    /**
     * Returns object to be used in the setter for the User List Dropdown. In this case,
     * a button.
     *
     * @param label - label to be displayed in user list dropdown information.
     * @param icon - icon to be used in the user list dropdown information.
     * It goes on the left side of it.
     * @param iconRight - icon to be used in the user list dropdown information.
     * It goes on the right side of it.
     * @param allowed - if false, the use list dropdown  will not appear in the dropdown.
     * @param textColor - Color that the text will have.
     * @param userId - the userId in which this dropdown information will appear when the user
     * list item is clicked.
     *
     * @returns Object that will be interpreted by the core of Bigbluebutton (HTML5).
     */
    constructor({ label, icon, iconRight, allowed, userId, textColor, }: UserListDropdownInformationProps);
    setItemId: (id: string) => void;
}
