import React from 'react';
import { IIconProps } from '@fluentui/react';
/**
 * The default set of icons used by the composites directly (i.e. not via the components defined in this library).
 *
 * @public
 */
export declare const COMPOSITE_ONLY_ICONS: CompositeIcons;
/**
 * The default set of icons that are available to used in the Composites.
 *
 * @public
 */
export declare const DEFAULT_COMPOSITE_ICONS: {
    EditBoxCancel: JSX.Element;
    EditBoxSubmit: JSX.Element;
    MessageDelivered: JSX.Element;
    MessageEdit: JSX.Element;
    MessageFailed: JSX.Element;
    MessageRemove: JSX.Element;
    MessageSeen: JSX.Element;
    MessageSending: JSX.Element;
    ParticipantItemOptions: JSX.Element;
    ParticipantItemOptionsHovered: JSX.Element;
    SendBoxSend: JSX.Element;
    SendBoxSendHovered: JSX.Element;
    ControlBarPeopleButton?: JSX.Element | undefined;
    ControlButtonCameraOff: JSX.Element;
    ControlButtonCameraOn: JSX.Element;
    ControlButtonEndCall: JSX.Element;
    ControlButtonMicOff: JSX.Element;
    ControlButtonMicOn: JSX.Element;
    ControlButtonOptions: JSX.Element;
    ControlButtonParticipants: JSX.Element;
    ControlButtonScreenShareStart: JSX.Element;
    ControlButtonScreenShareStop: JSX.Element;
    ControlButtonCameraProhibited: JSX.Element;
    ControlButtonCameraProhibitedSmall: JSX.Element;
    ControlButtonMicProhibited: JSX.Element;
    ControlButtonMicProhibitedSmall: JSX.Element;
    ControlButtonRaiseHand: JSX.Element;
    ControlButtonLowerHand: JSX.Element;
    ControlButtonExitSpotlight?: JSX.Element | undefined;
    RaiseHandContextualMenuItem: JSX.Element;
    ReactionContextualMenuItem?: JSX.Element | undefined;
    LowerHandContextualMenuItem: JSX.Element;
    ReactionButtonIcon: JSX.Element;
    ErrorBarCallCameraAccessDenied: JSX.Element;
    ErrorBarCallCameraAlreadyInUse: JSX.Element;
    ErrorBarCallLocalVideoFreeze: JSX.Element;
    ErrorBarCallMacOsCameraAccessDenied: JSX.Element;
    ErrorBarCallMacOsMicrophoneAccessDenied: JSX.Element;
    ErrorBarCallMicrophoneAccessDenied: JSX.Element;
    ErrorBarCallMicrophoneMutedBySystem: JSX.Element;
    ErrorBarCallMicrophoneUnmutedBySystem: JSX.Element;
    ErrorBarCallNetworkQualityLow: JSX.Element;
    ErrorBarCallNoMicrophoneFound: JSX.Element;
    ErrorBarCallNoSpeakerFound: JSX.Element;
    ErrorBarClear: JSX.Element;
    HorizontalGalleryLeftButton: JSX.Element;
    HorizontalGalleryRightButton: JSX.Element;
    LobbyScreenConnectingToCall?: JSX.Element | undefined;
    LobbyScreenWaitingToBeAdmitted?: JSX.Element | undefined;
    LocalDeviceSettingsCamera?: JSX.Element | undefined;
    LocalDeviceSettingsMic?: JSX.Element | undefined;
    LocalDeviceSettingsSpeaker?: JSX.Element | undefined;
    LocalPreviewPlaceholder?: JSX.Element | undefined;
    Muted?: JSX.Element | undefined;
    NetworkReconnectIcon?: JSX.Element | undefined;
    NoticePageAccessDeniedTeamsMeeting?: JSX.Element | undefined;
    NoticePageJoinCallFailedDueToNoNetwork?: JSX.Element | undefined;
    NoticePageLeftCall?: JSX.Element | undefined;
    NoticePageRemovedFromCall?: JSX.Element | undefined;
    NoticePageCallRejected?: JSX.Element | undefined;
    NoticePageNotInvitedToRoom?: JSX.Element | undefined;
    NoticePageRoomNotFound?: JSX.Element | undefined;
    NoticePageRoomNotValid?: JSX.Element | undefined;
    NoticePageCallTimeout?: JSX.Element | undefined;
    OptionsCamera: JSX.Element;
    OptionsMic: JSX.Element;
    OptionsSpeaker: JSX.Element;
    ParticipantItemMicOff: JSX.Element;
    ParticipantItemScreenShareStart: JSX.Element;
    VideoTileMicOff: JSX.Element;
    LocalCameraSwitch?: JSX.Element | undefined;
    PeoplePaneAddPerson?: JSX.Element | undefined;
    PeoplePaneOpenDialpad?: JSX.Element | undefined;
    DialpadStartCall?: JSX.Element | undefined;
    NoticePageInviteToRoomRemoved?: JSX.Element | undefined;
    BlurVideoBackground?: JSX.Element | undefined;
    RemoveVideoBackgroundEffect?: JSX.Element | undefined;
    GalleryOptions?: JSX.Element | undefined;
    SpeakerGalleryLayout?: JSX.Element | undefined;
    FloatingLocalVideoGalleryLayout?: JSX.Element | undefined;
    DefaultGalleryLayout?: JSX.Element | undefined;
    FocusedContentGalleryLayout?: JSX.Element | undefined;
    OverflowGalleryTop?: JSX.Element | undefined;
    LargeGalleryLayout?: JSX.Element | undefined;
    DefaultCustomButton?: JSX.Element | undefined;
    DtmfDialpadButton?: JSX.Element | undefined;
    PhoneNumberButton?: JSX.Element | undefined;
    JoinByPhoneDialStepIcon?: JSX.Element | undefined;
    JoinByPhoneConferenceIdIcon?: JSX.Element | undefined;
    JoinByPhoneWaitToBeAdmittedIcon?: JSX.Element | undefined;
    PeoplePaneMoreButton?: JSX.Element | undefined;
    StopAllSpotlightMenuButton?: JSX.Element | undefined;
    ChevronLeft?: JSX.Element | undefined;
    ControlBarChatButtonActive?: JSX.Element | undefined;
    ControlBarChatButtonInactive?: JSX.Element | undefined;
    Link?: JSX.Element | undefined;
    MoreDrawerMicrophones?: JSX.Element | undefined;
    MoreDrawerPeople?: JSX.Element | undefined;
    MoreDrawerSelectedMicrophone?: JSX.Element | undefined;
    MoreDrawerSelectedSpeaker?: JSX.Element | undefined;
    MoreDrawerSpeakers?: JSX.Element | undefined;
    SendBoxAttachFile?: JSX.Element | undefined;
    ChatMessageOptions: React.JSX.Element;
    ControlButtonParticipantsContextualMenuItem: React.JSX.Element;
    OpenAttachment: React.JSX.Element;
    ErrorBarCallVideoRecoveredBySystem: React.JSX.Element;
    ErrorBarCallVideoStoppedBySystem: React.JSX.Element;
    ErrorBarMutedByRemoteParticipant: React.JSX.Element;
    NotificationBarRecording: React.JSX.Element;
    NotificationBarBreakoutRoomOpened: React.JSX.Element;
    NotificationBarBreakoutRoomPromptJoin: React.JSX.Element;
    NotificationBarBreakoutRoomChanged: React.JSX.Element;
    NotificationBarBreakoutRoomJoined: React.JSX.Element;
    NotificationBarBreakoutRoomClosingSoon: React.JSX.Element;
    NotificationBarBreakoutRoomClosed: React.JSX.Element;
    MessageResend: React.JSX.Element;
    ParticipantItemSpotlighted: React.JSX.Element;
    HoldCallContextualMenuItem: React.JSX.Element;
    HoldCallButton: React.JSX.Element;
    ResumeCall: React.JSX.Element;
    VideoTileCameraOff: React.JSX.Element;
    DialpadBackspace: React.JSX.Element;
    VideoTilePinned: React.JSX.Element;
    ParticipantItemPinned: React.JSX.Element;
    VideoTileMoreOptions: React.JSX.Element;
    VideoTileScaleFit: React.JSX.Element;
    VideoTileScaleFill: React.JSX.Element;
    PinParticipant: React.JSX.Element;
    UnpinParticipant: React.JSX.Element;
    SplitButtonPrimaryActionCameraOn: React.JSX.Element;
    SplitButtonPrimaryActionCameraOff: React.JSX.Element;
    SplitButtonPrimaryActionMicUnmuted: React.JSX.Element;
    SplitButtonPrimaryActionMicMuted: React.JSX.Element;
    VerticalGalleryLeftButton: React.JSX.Element;
    VerticalGalleryRightButton: React.JSX.Element;
    ControlButtonVideoEffectsOption: React.JSX.Element;
    ConfigurationScreenVideoEffectsButton: React.JSX.Element;
    CaptionsIcon: React.JSX.Element;
    CaptionsOffIcon: React.JSX.Element;
    CaptionsSettingsIcon: React.JSX.Element;
    ChangeSpokenLanguageIcon: React.JSX.Element;
    ChangeCaptionLanguageIcon: React.JSX.Element;
    ContextMenuCameraIcon: React.JSX.Element;
    ContextMenuMicIcon: React.JSX.Element;
    ContextMenuSpeakerIcon: React.JSX.Element;
    ContextMenuRemoveParticipant: React.JSX.Element;
    SurveyStarIcon: React.JSX.Element;
    SurveyStarIconFilled: React.JSX.Element;
    StartSpotlightContextualMenuItem: React.JSX.Element;
    StopSpotlightContextualMenuItem: React.JSX.Element;
    VideoTileSpotlighted: React.JSX.Element;
    ContextualMenuMicMutedIcon: React.JSX.Element;
    IncomingCallNotificationRejectIcon: React.JSX.Element;
    IncomingCallNotificationAcceptIcon: React.JSX.Element;
    IncomingCallNotificationAcceptWithVideoIcon: React.JSX.Element;
};
/** @private */
export type CompositeIconProps<Icons> = IIconProps & {
    iconName: keyof Icons;
};
/**
 * Icons that can be overridden for {@link ChatComposite}.
 *
 * @public
 */
export type ChatCompositeIcons = {
    EditBoxCancel?: JSX.Element;
    EditBoxSubmit?: JSX.Element;
    MessageDelivered?: JSX.Element;
    MessageEdit?: JSX.Element;
    MessageFailed?: JSX.Element;
    MessageRemove?: JSX.Element;
    MessageSeen?: JSX.Element;
    MessageSending?: JSX.Element;
    ParticipantItemOptions?: JSX.Element;
    ParticipantItemOptionsHovered?: JSX.Element;
    SendBoxSend?: JSX.Element;
    SendBoxSendHovered?: JSX.Element;
};
/**
 * Icon wrapper to use when including customizable icons inside the ChatComposite.
 * This wrapper ensures the icon name is being type-checked helping ensure no typos
 * and ensure that icon is customizable through the composite API.
 *
 * @private
 */
export declare const ChatCompositeIcon: (props: CompositeIconProps<ChatCompositeIcons>) => JSX.Element;
/**
 * Icons that can be overridden for {@link CallComposite}.
 *
 * @public
 */
export type CallCompositeIcons = {
    ControlBarPeopleButton?: JSX.Element;
    ControlButtonCameraOff?: JSX.Element;
    ControlButtonCameraOn?: JSX.Element;
    ControlButtonEndCall?: JSX.Element;
    ControlButtonMicOff?: JSX.Element;
    ControlButtonMicOn?: JSX.Element;
    ControlButtonOptions?: JSX.Element;
    ControlButtonParticipants?: JSX.Element;
    ControlButtonScreenShareStart?: JSX.Element;
    ControlButtonScreenShareStop?: JSX.Element;
    ControlButtonCameraProhibited?: JSX.Element;
    ControlButtonCameraProhibitedSmall?: JSX.Element;
    ControlButtonMicProhibited?: JSX.Element;
    ControlButtonMicProhibitedSmall?: JSX.Element;
    ControlButtonRaiseHand?: JSX.Element;
    ControlButtonLowerHand?: JSX.Element;
    ControlButtonExitSpotlight?: JSX.Element;
    RaiseHandContextualMenuItem?: JSX.Element;
    ReactionContextualMenuItem?: JSX.Element;
    LowerHandContextualMenuItem?: JSX.Element;
    ReactionButtonIcon?: JSX.Element;
    ErrorBarCallCameraAccessDenied?: JSX.Element;
    ErrorBarCallCameraAlreadyInUse?: JSX.Element;
    ErrorBarCallLocalVideoFreeze?: JSX.Element;
    ErrorBarCallMacOsCameraAccessDenied?: JSX.Element;
    ErrorBarCallMacOsMicrophoneAccessDenied?: JSX.Element;
    ErrorBarCallMicrophoneAccessDenied?: JSX.Element;
    ErrorBarCallMicrophoneMutedBySystem?: JSX.Element;
    ErrorBarCallMicrophoneUnmutedBySystem?: JSX.Element;
    ErrorBarCallNetworkQualityLow?: JSX.Element;
    ErrorBarCallNoMicrophoneFound?: JSX.Element;
    ErrorBarCallNoSpeakerFound?: JSX.Element;
    ErrorBarClear?: JSX.Element;
    HorizontalGalleryLeftButton?: JSX.Element;
    HorizontalGalleryRightButton?: JSX.Element;
    LobbyScreenConnectingToCall?: JSX.Element;
    LobbyScreenWaitingToBeAdmitted?: JSX.Element;
    LocalDeviceSettingsCamera?: JSX.Element;
    LocalDeviceSettingsMic?: JSX.Element;
    LocalDeviceSettingsSpeaker?: JSX.Element;
    LocalPreviewPlaceholder?: JSX.Element;
    Muted?: JSX.Element;
    NetworkReconnectIcon?: JSX.Element;
    NoticePageAccessDeniedTeamsMeeting?: JSX.Element;
    NoticePageJoinCallFailedDueToNoNetwork?: JSX.Element;
    NoticePageLeftCall?: JSX.Element;
    NoticePageRemovedFromCall?: JSX.Element;
    NoticePageCallRejected?: JSX.Element;
    NoticePageNotInvitedToRoom?: JSX.Element;
    NoticePageRoomNotFound?: JSX.Element;
    NoticePageRoomNotValid?: JSX.Element;
    NoticePageCallTimeout?: JSX.Element;
    OptionsCamera?: JSX.Element;
    OptionsMic?: JSX.Element;
    OptionsSpeaker?: JSX.Element;
    ParticipantItemMicOff?: JSX.Element;
    ParticipantItemOptions?: JSX.Element;
    ParticipantItemOptionsHovered?: JSX.Element;
    ParticipantItemScreenShareStart?: JSX.Element;
    VideoTileMicOff?: JSX.Element;
    LocalCameraSwitch?: JSX.Element;
    PeoplePaneAddPerson?: JSX.Element;
    PeoplePaneOpenDialpad?: JSX.Element;
    DialpadStartCall?: JSX.Element;
    NoticePageInviteToRoomRemoved?: JSX.Element;
    BlurVideoBackground?: JSX.Element;
    RemoveVideoBackgroundEffect?: JSX.Element;
    GalleryOptions?: JSX.Element;
    SpeakerGalleryLayout?: JSX.Element;
    FloatingLocalVideoGalleryLayout?: JSX.Element;
    DefaultGalleryLayout?: JSX.Element;
    FocusedContentGalleryLayout?: JSX.Element;
    OverflowGalleryTop?: JSX.Element;
    LargeGalleryLayout?: JSX.Element;
    DefaultCustomButton?: JSX.Element;
    DtmfDialpadButton?: JSX.Element;
    PhoneNumberButton?: JSX.Element;
    JoinByPhoneDialStepIcon?: JSX.Element;
    JoinByPhoneConferenceIdIcon?: JSX.Element;
    JoinByPhoneWaitToBeAdmittedIcon?: JSX.Element;
    PeoplePaneMoreButton?: JSX.Element;
    StopAllSpotlightMenuButton?: JSX.Element;
};
/**
 * Icon wrapper to use when including customizable icons inside the CallComposite.
 * This wrapper ensures the icon name is being type-checked helping ensure no typos
 * and ensure that icon is customizable through the composite API.
 *
 * @private
 */
export declare const CallCompositeIcon: (props: CompositeIconProps<CallCompositeIcons>) => JSX.Element;
/**
 * Icons that can be overridden for {@link CallWithChatComposite}.
 *
 * @public
 */
export type CallWithChatCompositeIcons = {
    ChevronLeft?: JSX.Element;
    ControlBarChatButtonActive?: JSX.Element;
    ControlBarChatButtonInactive?: JSX.Element;
    ControlBarPeopleButton?: JSX.Element;
    Link?: JSX.Element;
    MoreDrawerMicrophones?: JSX.Element;
    MoreDrawerPeople?: JSX.Element;
    MoreDrawerSelectedMicrophone?: JSX.Element;
    MoreDrawerSelectedSpeaker?: JSX.Element;
    MoreDrawerSpeakers?: JSX.Element;
    ControlButtonCameraOff?: JSX.Element;
    ControlButtonCameraOn?: JSX.Element;
    ControlButtonEndCall?: JSX.Element;
    ControlButtonMicOff?: JSX.Element;
    ControlButtonMicOn?: JSX.Element;
    ControlButtonOptions?: JSX.Element;
    ControlButtonScreenShareStart?: JSX.Element;
    ControlButtonScreenShareStop?: JSX.Element;
    ControlButtonCameraProhibited?: JSX.Element;
    ControlButtonCameraProhibitedSmall?: JSX.Element;
    ControlButtonMicProhibited?: JSX.Element;
    ControlButtonMicProhibitedSmall?: JSX.Element;
    ErrorBarCallCameraAccessDenied?: JSX.Element;
    ErrorBarCallCameraAlreadyInUse?: JSX.Element;
    ErrorBarCallLocalVideoFreeze?: JSX.Element;
    ErrorBarCallMacOsCameraAccessDenied?: JSX.Element;
    ErrorBarCallMacOsMicrophoneAccessDenied?: JSX.Element;
    ErrorBarCallMicrophoneAccessDenied?: JSX.Element;
    ErrorBarCallMicrophoneMutedBySystem?: JSX.Element;
    ErrorBarCallMicrophoneUnmutedBySystem?: JSX.Element;
    ErrorBarCallNetworkQualityLow?: JSX.Element;
    ErrorBarCallNoMicrophoneFound?: JSX.Element;
    ErrorBarCallNoSpeakerFound?: JSX.Element;
    ErrorBarClear?: JSX.Element;
    HorizontalGalleryLeftButton?: JSX.Element;
    HorizontalGalleryRightButton?: JSX.Element;
    LobbyScreenConnectingToCall?: JSX.Element;
    LobbyScreenWaitingToBeAdmitted?: JSX.Element;
    LocalDeviceSettingsCamera?: JSX.Element;
    LocalDeviceSettingsMic?: JSX.Element;
    LocalDeviceSettingsSpeaker?: JSX.Element;
    LocalPreviewPlaceholder?: JSX.Element;
    Muted?: JSX.Element;
    NetworkReconnectIcon?: JSX.Element;
    NoticePageAccessDeniedTeamsMeeting?: JSX.Element;
    NoticePageJoinCallFailedDueToNoNetwork?: JSX.Element;
    NoticePageLeftCall?: JSX.Element;
    NoticePageRemovedFromCall?: JSX.Element;
    OptionsCamera?: JSX.Element;
    OptionsMic?: JSX.Element;
    OptionsSpeaker?: JSX.Element;
    ParticipantItemMicOff?: JSX.Element;
    ParticipantItemScreenShareStart?: JSX.Element;
    VideoTileMicOff?: JSX.Element;
    LocalCameraSwitch?: JSX.Element;
    PeoplePaneAddPerson?: JSX.Element;
    PeoplePaneOpenDialpad?: JSX.Element;
    DialpadStartCall?: JSX.Element;
    DefaultCustomButton?: JSX.Element;
    DtmfDialpadButton?: JSX.Element;
    EditBoxCancel?: JSX.Element;
    EditBoxSubmit?: JSX.Element;
    MessageDelivered?: JSX.Element;
    MessageEdit?: JSX.Element;
    MessageFailed?: JSX.Element;
    MessageRemove?: JSX.Element;
    MessageSeen?: JSX.Element;
    MessageSending?: JSX.Element;
    SendBoxSend?: JSX.Element;
    SendBoxSendHovered?: JSX.Element;
    SendBoxAttachFile?: JSX.Element;
    ParticipantItemOptions?: JSX.Element;
    ParticipantItemOptionsHovered?: JSX.Element;
    PeoplePaneMoreButton?: JSX.Element;
    StopAllSpotlightMenuButton?: JSX.Element;
};
/**
 * Icon wrapper to use when including customizable icons inside the CallWithChatComposite.
 * This wrapper ensures the icon name is being type-checked helping ensure no typos
 * and ensure that icon is customizable through the composite API.
 *
 * @private
 */
export declare const CallWithChatCompositeIcon: (props: CompositeIconProps<CallWithChatCompositeIcons>) => JSX.Element;
/**
 * Icons that can be overridden in one of the composites exported by this library.
 *
 * See {@link ChatCompositeIcons}, {@link CallCompositeIcons} and {@link CallWithChatCompositeIcons} for more targeted types.
 *
 * @public
 */
export type CompositeIcons = ChatCompositeIcons & CallCompositeIcons & CallWithChatCompositeIcons;
//# sourceMappingURL=icons.d.ts.map