From 10b0cdfe5d11d0f56ac709e0725785d07d6811d1 Mon Sep 17 00:00:00 2001 From: Chukwuebuka Nwankwo Date: Mon, 13 Jan 2025 23:33:40 +0000 Subject: [PATCH] updated api --- .../review/stable/communication-react.api.md | 9834 ++++++++--------- .../src/composites/common/icons.tsx | 1 + 2 files changed, 4917 insertions(+), 4918 deletions(-) diff --git a/packages/communication-react/review/stable/communication-react.api.md b/packages/communication-react/review/stable/communication-react.api.md index 1322fce2c4f..4c4fd6fa9cf 100644 --- a/packages/communication-react/review/stable/communication-react.api.md +++ b/packages/communication-react/review/stable/communication-react.api.md @@ -1,4918 +1,4916 @@ -## API Report File for "@azure/communication-react" - -> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). - -```ts - -/// - -import { AddPhoneNumberOptions } from '@azure/communication-calling'; -import { AudioDeviceInfo } from '@azure/communication-calling'; -import { AudioEffectsStartConfig } from '@azure/communication-calling'; -import { BackgroundBlurConfig } from '@azure/communication-calling'; -import { BackgroundBlurEffect } from '@azure/communication-calling'; -import { BackgroundReplacementConfig } from '@azure/communication-calling'; -import { BackgroundReplacementEffect } from '@azure/communication-calling'; -import { Call } from '@azure/communication-calling'; -import { CallAgent } from '@azure/communication-calling'; -import { CallClient } from '@azure/communication-calling'; -import { CallClientOptions } from '@azure/communication-calling'; -import { CallDirection } from '@azure/communication-calling'; -import { CallEndReason } from '@azure/communication-calling'; -import { CallerInfo } from '@azure/communication-calling'; -import { CallKind } from '@azure/communication-calling'; -import { CallState as CallState_2 } from '@azure/communication-calling'; -import { CallSurvey } from '@azure/communication-calling'; -import { CallSurveyResponse } from '@azure/communication-calling'; -import { CapabilitiesChangeInfo } from '@azure/communication-calling'; -import { CaptionsKind } from '@azure/communication-calling'; -import { CaptionsResultType } from '@azure/communication-calling'; -import { ChatClient } from '@azure/communication-chat'; -import { ChatClientOptions } from '@azure/communication-chat'; -import { ChatMessage as ChatMessage_2 } from '@azure/communication-chat'; -import { ChatMessageReadReceipt } from '@azure/communication-chat'; -import { ChatParticipant } from '@azure/communication-chat'; -import { ChatThreadClient } from '@azure/communication-chat'; -import { CommunicationIdentifier } from '@azure/communication-common'; -import { CommunicationIdentifierKind } from '@azure/communication-common'; -import { CommunicationTokenCredential } from '@azure/communication-common'; -import { CommunicationUserIdentifier } from '@azure/communication-common'; -import type { CommunicationUserKind } from '@azure/communication-common'; -import { CreateViewOptions } from '@azure/communication-calling'; -import { DeviceAccess } from '@azure/communication-calling'; -import { DeviceManager } from '@azure/communication-calling'; -import { DominantSpeakersInfo } from '@azure/communication-calling'; -import { DtmfTone as DtmfTone_2 } from '@azure/communication-calling'; -import { EnvironmentInfo } from '@azure/communication-calling'; -import { GroupCallLocator } from '@azure/communication-calling'; -import { IButtonProps } from '@fluentui/react'; -import { IButtonStyles } from '@fluentui/react'; -import { IContextualMenuItem } from '@fluentui/react'; -import { IContextualMenuItemStyles } from '@fluentui/react'; -import { IContextualMenuProps } from '@fluentui/react'; -import { IContextualMenuStyles } from '@fluentui/react'; -import { IIconProps } from '@fluentui/react'; -import { IIconStyles } from '@fluentui/react'; -import { IMessageBarProps } from '@fluentui/react'; -import { IncomingCall } from '@azure/communication-calling'; -import { IncomingCallKind } from '@azure/communication-calling'; -import { IPersonaStyleProps } from '@fluentui/react'; -import { IPersonaStyles } from '@fluentui/react'; -import { IRawStyle } from '@fluentui/react'; -import { IRenderFunction } from '@fluentui/react'; -import { IStackStyles } from '@fluentui/react'; -import { IStyle } from '@fluentui/react'; -import { IStyleFunctionOrObject } from '@fluentui/react'; -import { ITextFieldStyles } from '@fluentui/react'; -import { LatestMediaDiagnostics } from '@azure/communication-calling'; -import { LatestNetworkDiagnostics } from '@azure/communication-calling'; -import { LocalVideoStream } from '@azure/communication-calling'; -import type { MediaDiagnosticChangedEventArgs } from '@azure/communication-calling'; -import { MediaStreamType } from '@azure/communication-calling'; -import { MicrosoftTeamsAppIdentifier } from '@azure/communication-common'; -import { MicrosoftTeamsUserIdentifier } from '@azure/communication-common'; -import type { NetworkDiagnosticChangedEventArgs } from '@azure/communication-calling'; -import { PartialTheme } from '@fluentui/react'; -import { ParticipantCapabilities } from '@azure/communication-calling'; -import { ParticipantRole } from '@azure/communication-calling'; -import { PermissionConstraints } from '@azure/communication-calling'; -import { PersonaInitialsColor } from '@fluentui/react'; -import { PersonaPresence } from '@fluentui/react'; -import { PersonaSize } from '@fluentui/react'; -import { PhoneNumberIdentifier } from '@azure/communication-common'; -import { PropertyChangedEvent } from '@azure/communication-calling'; -import { default as React_2 } from 'react'; -import { Reaction as Reaction_2 } from '@azure/communication-calling'; -import { ReactionMessage } from '@azure/communication-calling'; -import type { RemoteParticipant } from '@azure/communication-calling'; -import { RemoteParticipantState as RemoteParticipantState_2 } from '@azure/communication-calling'; -import { RoomCallLocator } from '@azure/communication-calling'; -import { ScalingMode } from '@azure/communication-calling'; -import { SendMessageOptions } from '@azure/communication-chat'; -import { SpotlightedParticipant } from '@azure/communication-calling'; -import { StartCallOptions } from '@azure/communication-calling'; -import { StartCaptionsOptions } from '@azure/communication-calling'; -import { TeamsCall } from '@azure/communication-calling'; -import { TeamsCallAgent } from '@azure/communication-calling'; -import { TeamsCallInfo } from '@azure/communication-calling'; -import { TeamsIncomingCall } from '@azure/communication-calling'; -import { TeamsMeetingIdLocator } from '@azure/communication-calling'; -import { TeamsMeetingLinkLocator } from '@azure/communication-calling'; -import { Theme } from '@fluentui/react'; -import { TransferEventArgs } from '@azure/communication-calling'; -import { TypingIndicatorReceivedEvent } from '@azure/communication-chat'; -import { UnknownIdentifier } from '@azure/communication-common'; -import { VideoDeviceInfo } from '@azure/communication-calling'; -import { VideoEffectName } from '@azure/communication-calling'; -import { VideoStreamRenderer } from '@azure/communication-calling'; -import { VideoStreamRendererView } from '@azure/communication-calling'; - -// @public -export interface AcceptedTransfer { - callId: string; - timestamp: Date; -} - -// @public -export interface ActiveErrorMessage { - timestamp?: Date; - type: ErrorType; -} - -// @public -export interface ActiveNotification { - ariaLive?: 'assertive' | 'off' | 'polite'; - autoDismiss?: boolean; - onClickPrimaryButton?: () => void; - onClickSecondaryButton?: () => void; - onDismiss?: () => void; - timestamp?: Date; - type: NotificationType; -} - -// @public -export interface AdapterError extends Error { - innerError: Error; - target: string; - timestamp: Date; -} - -// @public -export type AdapterErrors = { - [target: string]: AdapterError; -}; - -// @public -export interface AdapterState { - getState(): TState; - offStateChange(handler: (state: TState) => void): void; - onStateChange(handler: (state: TState) => void): void; -} - -// @public -export type AreEqual JSX.Element | undefined, B extends (props: any) => JSX.Element | undefined> = true extends AreTypeEqual & AreParamEqual ? true : false; - -// @public -export type AreParamEqual JSX.Element | undefined, B extends (props: any) => JSX.Element | undefined> = AreTypeEqual[0]>, Required[0]>>; - -// @public -export type AreTypeEqual = A extends B ? (B extends A ? true : false) : false; - -// @public -export interface AttachmentMetadata { - id: string; - name: string; - url: string; -} - -// @public -export type AvatarPersonaData = { - text?: string; - imageUrl?: string; - imageInitials?: string; - initialsColor?: PersonaInitialsColor | string; - initialsTextColor?: string; - showUnknownPersonaCoin?: boolean; -}; - -// @public -export type AvatarPersonaDataCallback = (userId: string) => Promise; - -// @public -export type AzureCommunicationCallAdapterArgs = { - userId: CommunicationUserIdentifier; - displayName: string; - credential: CommunicationTokenCredential; - locator: CallAdapterLocator; - options?: AzureCommunicationCallAdapterOptions; -}; - -// @public -export type AzureCommunicationCallAdapterOptions = CommonCallAdapterOptions; - -// @public -export type AzureCommunicationCallWithChatAdapterArgs = { - endpoint: string; - userId: CommunicationUserIdentifier; - displayName: string; - credential: CommunicationTokenCredential; - locator: CallAndChatLocator | TeamsMeetingLinkLocator | TeamsMeetingIdLocator; - alternateCallerId?: string; - callAdapterOptions?: AzureCommunicationCallAdapterOptions; -}; - -// @public -export type AzureCommunicationCallWithChatAdapterFromClientArgs = { - callLocator: CallAdapterLocator | TeamsMeetingLinkLocator; - callAgent: CallAgent; - callClient: StatefulCallClient; - chatClient: StatefulChatClient; - chatThreadClient: ChatThreadClient; - callAdapterOptions?: AzureCommunicationCallAdapterOptions; -}; - -// @public -export type AzureCommunicationChatAdapterArgs = { - endpoint: string; - userId: CommunicationUserIdentifier; - displayName: string; - credential: CommunicationTokenCredential; - threadId: string; -}; - -// @public -export type AzureCommunicationOutboundCallAdapterArgs = { - userId: CommunicationUserIdentifier; - displayName: string; - credential: CommunicationTokenCredential; - targetCallees: StartCallIdentifier[]; - alternateCallerId?: string; - options?: AzureCommunicationCallAdapterOptions; -}; - -// @public -export interface BaseCompositeProps> { - fluentTheme?: PartialTheme | Theme; - icons?: TIcons; - locale?: CompositeLocale; - onFetchAvatarPersonaData?: AvatarPersonaDataCallback; - onFetchParticipantMenuItems?: ParticipantMenuItemsCallback; - rtl?: boolean; -} - -// @public -export interface BaseCustomStyles { - root?: IStyle; -} - -// @public -export interface CallAdapter extends CommonCallAdapter { - // @deprecated - joinCall(microphoneOn?: boolean): Call | undefined; - joinCall(options?: JoinCallOptions): Call | undefined; - startCall(participants: string[], options?: StartCallOptions): Call | undefined; - startCall(participants: StartCallIdentifier[], options?: StartCallOptions): Call | undefined; -} - -// @public -export type CallAdapterCallEndedEvent = { - callId: string; -}; - -// @public @deprecated -export interface CallAdapterCallManagement extends CallAdapterCallOperations { - // @deprecated - joinCall(microphoneOn?: boolean): Call | undefined; - joinCall(options?: JoinCallOptions): Call | undefined; - startCall(participants: string[], options?: StartCallOptions): Call | undefined; - startCall(participants: StartCallIdentifier[], options?: StartCallOptions): Call | undefined; -} - -// @public -export interface CallAdapterCallOperations { - addParticipant(participant: PhoneNumberIdentifier, options?: AddPhoneNumberOptions): Promise; - // (undocumented) - addParticipant(participant: CommunicationUserIdentifier): Promise; - createStreamView(remoteUserId?: string, options?: VideoStreamOptions): Promise; - disposeLocalVideoStreamView(): Promise; - disposeRemoteVideoStreamView(remoteUserId: string): Promise; - disposeScreenShareStreamView(remoteUserId: string): Promise; - // @deprecated - disposeStreamView(remoteUserId?: string, options?: VideoStreamOptions): Promise; - forbidAudio(userIds: string[]): Promise; - forbidOthersAudio(): Promise; - forbidOthersVideo(): Promise; - forbidVideo(userIds: string[]): Promise; - holdCall(): Promise; - leaveCall(forEveryone?: boolean): Promise; - lowerHand(): Promise; - mute(): Promise; - muteAllRemoteParticipants(): Promise; - muteParticipant(userId: string): Promise; - onReactionClick(reaction: Reaction_2): Promise; - permitAudio(userIds: string[]): Promise; - permitOthersAudio(): Promise; - permitOthersVideo(): Promise; - permitVideo(userIds: string[]): Promise; - raiseHand(): Promise; - removeParticipant(userId: string): Promise; - removeParticipant(participant: CommunicationIdentifier): Promise; - resumeCall(): Promise; - sendDtmfTone(dtmfTone: DtmfTone_2): Promise; - setCaptionLanguage(language: string): Promise; - setSpokenLanguage(language: string): Promise; - startCamera(options?: VideoStreamOptions): Promise; - startCaptions(options?: StartCaptionsAdapterOptions): Promise; - startNoiseSuppressionEffect(): Promise; - startScreenShare(): Promise; - startSpotlight(userIds?: string[]): Promise; - startVideoBackgroundEffect(videoBackgroundEffect: VideoBackgroundEffect): Promise; - stopAllSpotlight(): Promise; - stopCamera(): Promise; - stopCaptions(options?: StopCaptionsAdapterOptions): Promise; - stopNoiseSuppressionEffect(): Promise; - stopScreenShare(): Promise; - stopSpotlight(userIds?: string[]): Promise; - stopVideoBackgroundEffects(): Promise; - submitSurvey(survey: CallSurvey): Promise; - unmute(): Promise; - updateBackgroundPickerImages(backgroundImages: VideoBackgroundImage[]): void; - updateSelectedVideoBackgroundEffect(selectedVideoBackground: VideoBackgroundEffect): void; -} - -// @public -export type CallAdapterClientState = { - userId: CommunicationIdentifierKind; - displayName?: string; - call?: CallState; - targetCallees?: CommunicationIdentifier[]; - devices: DeviceManagerState; - endedCall?: CallState; - isTeamsCall: boolean; - isTeamsMeeting: boolean; - isRoomsCall: boolean; - latestErrors: AdapterErrors; - alternateCallerId?: string; - environmentInfo?: EnvironmentInfo; - cameraStatus?: 'On' | 'Off'; - videoBackgroundImages?: VideoBackgroundImage[]; - onResolveVideoEffectDependency?: () => Promise; - onResolveDeepNoiseSuppressionDependency?: () => Promise; - deepNoiseSuppressionOnByDefault?: boolean; - hideDeepNoiseSuppressionButton?: boolean; - selectedVideoBackgroundEffect?: VideoBackgroundEffect; - acceptedTransferCallState?: CallState; - hideAttendeeNames?: boolean; - sounds?: CallingSounds; - reactions?: ReactionResources; -}; - -// @public -export interface CallAdapterDeviceManagement { - askDevicePermission(constrain: PermissionConstraints): Promise; - queryCameras(): Promise; - queryMicrophones(): Promise; - querySpeakers(): Promise; - setCamera(sourceInfo: VideoDeviceInfo, options?: VideoStreamOptions): Promise; - setMicrophone(sourceInfo: AudioDeviceInfo): Promise; - setSpeaker(sourceInfo: AudioDeviceInfo): Promise; -} - -// @public -export type CallAdapterLocator = TeamsMeetingLinkLocator | GroupCallLocator | RoomCallLocator | TeamsMeetingIdLocator; - -// @public -export type CallAdapterState = CallAdapterUiState & CallAdapterClientState; - -// @public -export interface CallAdapterSubscribers { - off(event: 'participantsJoined', listener: ParticipantsJoinedListener): void; - off(event: 'participantsLeft', listener: ParticipantsLeftListener): void; - off(event: 'isMutedChanged', listener: IsMutedChangedListener): void; - off(event: 'callIdChanged', listener: CallIdChangedListener): void; - off(event: 'isLocalScreenSharingActiveChanged', listener: IsLocalScreenSharingActiveChangedListener): void; - off(event: 'displayNameChanged', listener: DisplayNameChangedListener): void; - off(event: 'isSpeakingChanged', listener: IsSpeakingChangedListener): void; - off(event: 'callEnded', listener: CallEndedListener): void; - off(event: 'diagnosticChanged', listener: DiagnosticChangedEventListner): void; - off(event: 'selectedMicrophoneChanged', listener: PropertyChangedEvent): void; - off(event: 'selectedSpeakerChanged', listener: PropertyChangedEvent): void; - off(event: 'error', listener: (e: AdapterError) => void): void; - off(event: 'captionsReceived', listener: CaptionsReceivedListener): void; - off(event: 'isCaptionsActiveChanged', listener: IsCaptionsActiveChangedListener): void; - off(event: 'isCaptionLanguageChanged', listener: IsCaptionLanguageChangedListener): void; - off(event: 'isSpokenLanguageChanged', listener: IsSpokenLanguageChangedListener): void; - off(event: 'transferAccepted', listener: TransferAcceptedListener): void; - off(event: 'capabilitiesChanged', listener: CapabilitiesChangedListener): void; - off(event: 'roleChanged', listener: PropertyChangedEvent): void; - off(event: 'spotlightChanged', listener: SpotlightChangedListener): void; - off(event: 'mutedByOthers', listener: PropertyChangedEvent): void; - on(event: 'participantsJoined', listener: ParticipantsJoinedListener): void; - on(event: 'participantsLeft', listener: ParticipantsLeftListener): void; - on(event: 'isMutedChanged', listener: IsMutedChangedListener): void; - on(event: 'callIdChanged', listener: CallIdChangedListener): void; - on(event: 'isLocalScreenSharingActiveChanged', listener: IsLocalScreenSharingActiveChangedListener): void; - on(event: 'displayNameChanged', listener: DisplayNameChangedListener): void; - on(event: 'isSpeakingChanged', listener: IsSpeakingChangedListener): void; - on(event: 'callEnded', listener: CallEndedListener): void; - on(event: 'diagnosticChanged', listener: DiagnosticChangedEventListner): void; - on(event: 'selectedMicrophoneChanged', listener: PropertyChangedEvent): void; - on(event: 'selectedSpeakerChanged', listener: PropertyChangedEvent): void; - on(event: 'error', listener: (e: AdapterError) => void): void; - on(event: 'captionsReceived', listener: CaptionsReceivedListener): void; - on(event: 'isCaptionsActiveChanged', listener: IsCaptionsActiveChangedListener): void; - on(event: 'isCaptionLanguageChanged', listener: IsCaptionLanguageChangedListener): void; - on(event: 'isSpokenLanguageChanged', listener: IsSpokenLanguageChangedListener): void; - on(event: 'transferAccepted', listener: TransferAcceptedListener): void; - on(event: 'capabilitiesChanged', listener: CapabilitiesChangedListener): void; - on(event: 'roleChanged', listener: PropertyChangedEvent): void; - on(event: 'spotlightChanged', listener: SpotlightChangedListener): void; - on(event: 'mutedByOthers', listener: PropertyChangedEvent): void; -} - -// @public -export type CallAdapterUiState = { - isLocalPreviewMicrophoneEnabled: boolean; - page: CallCompositePage; -}; - -// @public -export const CallAgentProvider: (props: CallAgentProviderProps) => JSX.Element; - -// @public -export interface CallAgentProviderProps { - // (undocumented) - callAgent?: CallAgent | TeamsCallAgent; - // (undocumented) - children: React_2.ReactNode; -} - -// @public -export interface CallAgentState { - displayName?: string; -} - -// @public -export interface CallAndChatLocator { - callLocator: GroupCallLocator; - chatThreadId: string; -} - -// @public -export const CallClientProvider: (props: CallClientProviderProps) => JSX.Element; - -// @public -export interface CallClientProviderProps { - // (undocumented) - callClient: StatefulCallClient; - // (undocumented) - children: React_2.ReactNode; -} - -// @public -export interface CallClientState { - alternateCallerId?: string; - callAgent?: CallAgentState; - calls: { - [key: string]: CallState; - }; - callsEnded: { - [key: string]: CallState; - }; - deviceManager: DeviceManagerState; - environmentInfo?: EnvironmentInfo; - incomingCalls: { - [key: string]: IncomingCallState | TeamsIncomingCallState; - }; - incomingCallsEnded: { - [key: string]: IncomingCallState | TeamsIncomingCallState; - }; - latestErrors: CallErrors; - latestNotifications: CallNotifications; - userId: CommunicationIdentifierKind; -} - -// @public -export const CallComposite: (props: CallCompositeProps) => JSX.Element; - -// @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; - TogetherModeLayout?: JSX.Element; -}; - -// @public -export type CallCompositeLoaderProps = { - userId: CommunicationUserIdentifier; - credential: CommunicationTokenCredential; - displayName: string; - locator: CallAdapterLocator; - callAdapterOptions?: AzureCommunicationCallAdapterOptions; - callCompositeOptions?: CallCompositeOptions; -}; - -// @public -export type CallCompositeOptions = { - captionsBanner?: { - height: 'full' | 'default'; - }; - errorBar?: boolean; - callControls?: boolean | CallControlOptions; - remoteVideoTileMenuOptions?: RemoteVideoTileMenuOptions; - localVideoTile?: boolean | LocalVideoTileOptions; - videoTilesOptions?: VideoTilesOptions; - disableAutoShowDtmfDialer?: boolean | DtmfDialPadOptions; - galleryOptions?: { - layout?: VideoGalleryLayout; - }; - surveyOptions?: { - disableSurvey?: boolean; - onSurveyClosed?: (surveyState: 'sent' | 'skipped' | 'error', surveyError?: string) => void; - onSurveySubmitted?: (callId: string, surveyId: string, - submittedSurvey: CallSurvey, - improvementSuggestions: CallSurveyImprovementSuggestions) => Promise; - }; - branding?: { - logo?: { - url: string; - alt?: string; - shape?: 'unset' | 'circle'; - }; - backgroundImage?: { - url: string; - }; - }; - spotlight?: { - hideSpotlightButtons?: boolean; - }; -}; - -// @public -export type CallCompositePage = 'accessDeniedTeamsMeeting' | 'call' | 'configuration' | 'hold' | 'joinCallFailedDueToNoNetwork' | 'leftCall' | 'leaving' | 'lobby' | 'removedFromCall' | 'transferring' | 'badRequest'; - -// @public -export interface CallCompositeProps extends BaseCompositeProps { - adapter: CommonCallAdapter; - callInvitationUrl?: string; - formFactor?: 'desktop' | 'mobile'; - options?: CallCompositeOptions; -} - -// @public -export interface CallCompositeStrings { - addSpotlightMenuLabel: string; - blurBackgroundEffectButtonLabel?: string; - blurBackgroundTooltip?: string; - callRejectedMoreDetails?: string; - callRejectedTitle?: string; - callTimeoutBotDetails?: string; - callTimeoutBotTitle?: string; - callTimeoutDetails?: string; - callTimeoutTitle?: string; - cameraLabel: string; - cameraOffBackgroundEffectWarningText?: string; - cameraPermissionDenied: string; - cameraTurnedOff: string; - capabilityChangedNotification?: CapabilityChangedNotificationStrings; - captionLanguageStrings?: CaptionLanguageStrings; - captionsBannerMoreButtonCallingLabel?: string; - captionsBannerMoreButtonTooltip?: string; - captionsBannerSpinnerText?: string; - captionsSettingsCancelButtonLabel?: string; - captionsSettingsCaptionLanguageDropdownInfoText?: string; - captionsSettingsCaptionLanguageDropdownLabel?: string; - captionsSettingsCloseModalButtonAriaLabel?: string; - captionsSettingsConfirmButtonLabel?: string; - captionsSettingsLabel?: string; - captionsSettingsModalAriaLabel?: string; - captionsSettingsModalTitle?: string; - captionsSettingsSpokenLanguageDropdownInfoText?: string; - captionsSettingsSpokenLanguageDropdownLabel?: string; - chatButtonLabel: string; - close: string; - complianceBannerNowOnlyRecording: string; - complianceBannerNowOnlyTranscription: string; - complianceBannerRecordingAndTranscriptionSaved: string; - complianceBannerRecordingAndTranscriptionStarted: string; - complianceBannerRecordingAndTranscriptionStopped: string; - complianceBannerRecordingSaving: string; - complianceBannerRecordingStarted: string; - complianceBannerRecordingStopped: string; - complianceBannerTranscriptionConsent: string; - complianceBannerTranscriptionSaving: string; - complianceBannerTranscriptionStarted: string; - complianceBannerTranscriptionStopped: string; - configurationPageCallDetails?: string; - configurationPageCameraIsLoadingLabel?: string; - configurationPageTitle: string; - configurationPageVideoEffectsButtonLabel?: string; - copyInviteLinkActionedAriaLabel: string; - copyInviteLinkButtonActionedLabel?: string; - copyInviteLinkButtonLabel?: string; - defaultPlaceHolder: string; - dialpadCloseModalButtonAriaLabel?: string; - dialpadModalAriaLabel?: string; - dialpadModalTitle?: string; - dialpadStartCallButtonLabel?: string; - dismissModalAriaLabel?: string; - dismissSidePaneButtonLabel?: string; - dtmfDialerButtonLabel?: string; - dtmfDialerButtonTooltipOff?: string; - dtmfDialerButtonTooltipOn?: string; - dtmfDialerMoreButtonLabelOff?: string; - dtmfDialerMoreButtonLabelOn?: string; - dtmfDialpadPlaceholderText?: string; - endCallConfirmButtonLabel?: string; - endCallConfirmDialogContent?: string; - endCallConfirmDialogTitle?: string; - endOfSurveyText: string; - exitSpotlightButtonLabel: string; - exitSpotlightButtonTooltip: string; - failedToJoinCallDueToNoNetworkMoreDetails?: string; - failedToJoinCallDueToNoNetworkTitle: string; - failedToJoinTeamsMeetingReasonAccessDeniedMoreDetails?: string; - failedToJoinTeamsMeetingReasonAccessDeniedTitle: string; - forbidAudioMenuLabel: string; - forbidOthersAudioCancelButtonLabel: string; - forbidOthersAudioConfirmButtonLabel: string; - forbidOthersAudioDialogContent: string; - forbidOthersAudioDialogTitle: string; - forbidOthersAudioMenuLabel: string; - forbidOthersVideoCancelButtonLabel: string; - forbidOthersVideoConfirmButtonLabel: string; - forbidOthersVideoDialogContent: string; - forbidOthersVideoDialogTitle: string; - forbidOthersVideoMenuLabel: string; - forbidVideoMenuLabel: string; - hangUpCancelButtonLabel?: string; - holdScreenLabel?: string; - invalidMeetingIdentifier: string; - inviteToRoomRemovedDetails?: string; - inviteToRoomRemovedTitle: string; - learnMore: string; - leaveConfirmButtonLabel?: string; - leaveConfirmDialogContent?: string; - leaveConfirmDialogTitle?: string; - leavingCallTitle?: string; - leftCallMoreDetails?: string; - leftCallTitle: string; - liveCaptionsLabel?: string; - lobbyScreenConnectingToCallMoreDetails?: string; - lobbyScreenConnectingToCallTitle: string; - lobbyScreenWaitingToBeAdmittedMoreDetails?: string; - lobbyScreenWaitingToBeAdmittedTitle: string; - manyParticipantsJoined: string; - manyParticipantsLeft: string; - manyUnnamedParticipantsJoined: string; - manyUnnamedParticipantsLeft: string; - microphonePermissionDenied: string; - microphoneToggleInLobbyNotAllowed: string; - moreButtonCallingLabel: string; - moreButtonGalleryControlLabel?: string; - moreButtonGalleryDefaultLayoutLabel?: string; - moreButtonGalleryFloatingLocalLayoutLabel?: string; - moreButtonGalleryFocusedContentLayoutLabel?: string; - moreButtonGalleryPositionToggleLabel?: string; - moreButtonGallerySpeakerLayoutLabel?: string; - moreButtonLargeGalleryDefaultLayoutLabel?: string; - moreButtonTogetherModeLayoutLabel?: string; - muteAllCancelButtonLabel: string; - muteAllConfirmButtonLabel: string; - muteAllDialogContent: string; - muteAllDialogTitle: string; - muteAllMenuLabel: string; - mutedMessage: string; - networkReconnectMoreDetails: string; - networkReconnectTitle: string; - noCamerasLabel: string; - noMicrophonesLabel: string; - noSpeakersLabel: string; - notInvitedToRoomDetails?: string; - notInvitedToRoomTitle: string; - openDialpadButtonLabel?: string; - openDtmfDialpadLabel?: string; - outboundCallingNoticeString?: string; - participantCouldNotBeReachedMoreDetails?: string; - participantCouldNotBeReachedTitle?: string; - participantIdIsMalformedMoreDetails?: string; - participantIdIsMalformedTitle?: string; - participantJoinedNoticeString: string; - participantLeftNoticeString: string; - peopleButtonLabel: string; - peopleButtonTooltipClose: string; - peopleButtonTooltipOpen: string; - peoplePaneAddPeopleButtonLabel?: string; - peoplePaneMoreButtonAriaLabel: string; - peoplePaneSubTitle?: string; - peoplePaneTitle: string; - permissionToReachTargetParticipantNotAllowedMoreDetails?: string; - permissionToReachTargetParticipantNotAllowedTitle?: string; - permitAudioMenuLabel: string; - permitOthersAudioCancelButtonLabel: string; - permitOthersAudioConfirmButtonLabel: string; - permitOthersAudioDialogContent: string; - permitOthersAudioDialogTitle: string; - permitOthersAudioMenuLabel: string; - permitOthersVideoCancelButtonLabel: string; - permitOthersVideoConfirmButtonLabel: string; - permitOthersVideoDialogContent: string; - permitOthersVideoDialogTitle: string; - permitOthersVideoMenuLabel: string; - permitVideoMenuLabel: string; - phoneCallMoreButtonLabel: string; - pinParticipantLimitReachedMenuLabel: string; - pinParticipantMenuItemAriaLabel: string; - pinParticipantMenuLabel: string; - privacyPolicy: string; - rejoinCallButtonLabel: string; - removeBackgroundEffectButtonLabel?: string; - removeBackgroundTooltip?: string; - removedFromCallMoreDetails?: string; - removedFromCallTitle: string; - removeMenuLabel?: string; - resumeCallButtonAriaLabel?: string; - resumeCallButtonLabel?: string; - resumingCallButtonAriaLabel?: string; - resumingCallButtonLabel?: string; - returnToCallButtonAriaDescription?: string; - returnToCallButtonAriaLabel?: string; - roomNotFoundDetails?: string; - roomNotFoundTitle: string; - roomNotValidDetails?: string; - roomNotValidTitle: string; - selectedPeopleButtonLabel: string; - soundLabel: string; - spokenLanguageStrings?: SpokenLanguageStrings; - spotlightLimitReachedMenuTitle: string; - spotlightPrompt: SpotlightPromptStrings; - starRatingAriaLabel: string; - starSurveyFiveStarText: string; - starSurveyFourStarText: string; - starSurveyHelperText: string; - starSurveyOneStarText: string; - starSurveyThreeStarText: string; - starSurveyTwoStarText: string; - startCallButtonLabel: string; - startCaptionsButtonOffLabel?: string; - startCaptionsButtonOnLabel?: string; - startCaptionsButtonTooltipOffContent?: string; - startCaptionsButtonTooltipOnContent?: string; - startSpotlightMenuLabel: string; - stopAllSpotlightMenuLabel: string; - stopSpotlightMenuLabel: string; - stopSpotlightOnSelfMenuLabel: string; - surveyConfirmButtonLabel: string; - surveyIssues: SurveyIssues; - surveyIssuesHeadingStrings: SurveyIssuesHeadingStrings; - surveySkipButtonLabel: string; - surveyTitle: string; - tagsSurveyHelperText: string; - tagsSurveyQuestion: string; - tagsSurveyTextFieldDefaultText: string; - threeParticipantJoinedNoticeString: string; - threeParticipantLeftNoticeString: string; - transferPageNoticeString: string; - transferPageTransferorText: string; - transferPageTransferTargetText: string; - transferPageUnknownTransferorDisplayName: string; - transferPageUnknownTransferTargetDisplayName: string; - twoParticipantJoinedNoticeString: string; - twoParticipantLeftNoticeString: string; - unableToResolveTenantMoreDetails?: string; - unableToResolveTenantTitle?: string; - unableToStartVideoEffect?: string; - unnamedParticipantString: string; - unpinParticipantMenuItemAriaLabel: string; - unpinParticipantMenuLabel: string; - videoEffectsPaneAriaLabel: string; - videoEffectsPaneBackgroundSelectionTitle: string; - videoEffectsPaneTitle: string; -} - -// @public -export type CallControlDisplayType = 'default' | 'compact'; - -// @public -export type CallControlOptions = CommonCallControlOptions & { - participantsButton?: boolean | { - disabled: boolean; - }; - legacyControlBarExperience?: boolean; -}; - -// @public -export type CallEndedListener = (event: CallAdapterCallEndedEvent) => void; - -// @public -export class CallError extends Error { - constructor(target: CallErrorTarget, innerError: Error, timestamp?: Date); - innerError: Error; - target: CallErrorTarget; - timestamp: Date; -} - -// @public -export type CallErrorBarSelector = (state: CallClientState, props: CallingBaseSelectorProps) => { - activeErrorMessages: ActiveErrorMessage[]; -}; - -// @public -export type CallErrors = { - [target in CallErrorTarget]: CallError; -}; - -// @public -export type CallErrorTarget = 'Call.addParticipant' | 'Call.dispose' | 'Call.feature' | 'Call.hangUp' | 'Call.hold' | 'Call.mute' | 'Call.muteIncomingAudio' | 'Call.off' | 'Call.on' | 'Call.removeParticipant' | 'Call.resume' | 'Call.sendDtmf' | 'Call.startAudio' | 'Call.startScreenSharing' | 'Call.startVideo' | 'Call.stopScreenSharing' | 'Call.stopAudio' | 'Call.stopVideo' | 'Call.unmute' | 'Call.unmuteIncomingAudio' | 'CallAgent.dispose' | 'CallAgent.feature' | 'CallAgent.join' | 'CallAgent.off' | 'CallAgent.on' | 'CallAgent.startCall' | 'CallClient.createCallAgent' | 'CallClient.createTeamsCallAgent' | 'CallClient.feature' | 'CallClient.getDeviceManager' | 'CallClient.getEnvironmentInfo' | 'DeviceManager.askDevicePermission' | 'DeviceManager.getCameras' | 'DeviceManager.getMicrophones' | 'DeviceManager.getSpeakers' | 'DeviceManager.off' | 'DeviceManager.on' | 'DeviceManager.selectMicrophone' | 'DeviceManager.selectSpeaker' | 'IncomingCall.accept' | 'IncomingCall.reject' | 'TeamsCall.addParticipant' | 'VideoEffectsFeature.startEffects' | 'Call.mutedByOthers' | 'Call.muteAllRemoteParticipants' | 'Call.setConstraints'; - -// @public -export type CallIdChangedListener = (event: { - callId: string; -}) => void; - -// @public -export interface CallInfoState { - groupId?: string; - kind: IncomingCallKind; - participantId: string; - threadId?: string; -} - -// @public -export type CallingBaseSelectorProps = { - callId: string; -}; - -// @public -export interface CallingHandlers extends CommonCallingHandlers { - // (undocumented) - onStartCall: (participants: CommunicationIdentifier[], options?: StartCallOptions) => Call | undefined; -} - -// @public -export type CallingHandlersOptions = { - onResolveVideoBackgroundEffectsDependency?: () => Promise; - onResolveDeepNoiseSuppressionDependency?: () => Promise; -}; - -// @public -export type CallingReturnProps JSX.Element> = GetCallingSelector extends (state: CallClientState, props: any) => any ? ReturnType> & Common[0]> : never; - -// @public -export type CallingSounds = { - callEnded?: SoundEffect; - callRinging?: SoundEffect; - callBusy?: SoundEffect; -}; - -// @public -export interface CallingTheme { - // (undocumented) - callingPalette: { - callRed: string; - callRedDark: string; - callRedDarker: string; - iconWhite: string; - raiseHandGold: string; - videoTileLabelBackgroundLight: string; - }; -} - -// @public (undocumented) -export interface CallNotification { - // (undocumented) - target: NotificationTarget; - // (undocumented) - timestamp: Date; -} - -// @public (undocumented) -export type CallNotifications = { - [target in NotificationTarget]: CallNotification; -}; - -// @public -export type CallParticipantListParticipant = ParticipantListParticipant & { - state: ParticipantState; - isScreenSharing?: boolean; - isMuted?: boolean; - isSpeaking?: boolean; - raisedHand?: RaisedHand; - reaction?: Reaction; - spotlight?: Spotlight; - mediaAccess?: MediaAccess; -}; - -// @public -export const CallProvider: (props: CallProviderProps) => JSX.Element; - -// @public -export interface CallProviderProps { - // (undocumented) - call?: Call | TeamsCall; - // (undocumented) - children: React_2.ReactNode; -} - -// @public -export interface CallState { - callEndReason?: CallEndReason; - callerInfo: CallerInfo; - capabilitiesFeature?: CapabilitiesFeatureState; - captionsFeature: CaptionsCallFeatureState; - contentSharingRemoteParticipant?: string; - diagnostics: DiagnosticsCallFeatureState; - direction: CallDirection; - dominantSpeakers?: DominantSpeakersInfo; - endTime: Date | undefined; - hideAttendeeNames?: boolean; - id: string; - info?: TeamsCallInfo; - isMuted: boolean; - isScreenSharingOn: boolean; - kind: CallKind; - localParticipantReaction?: ReactionState; - localVideoStreams: LocalVideoStreamState[]; - meetingConference?: { - conferencePhones: ConferencePhoneInfo[]; - }; - meetingMediaAccess?: MediaAccessState; - optimalVideoCount: OptimalVideoCountFeatureState; - pptLive: PPTLiveCallFeatureState; - raiseHand: RaiseHandCallFeature; - recording: RecordingCallFeature; - remoteParticipants: { - [keys: string]: RemoteParticipantState; - }; - remoteParticipantsEnded: { - [keys: string]: RemoteParticipantState; - }; - role?: ParticipantRole; - screenShareRemoteParticipant?: string; - spotlight?: SpotlightCallFeatureState; - startTime: Date; - state: CallState_2; - transcription: TranscriptionCallFeature; - transfer: TransferFeature; -} - -// @public -export interface CallSurveyImprovementSuggestions { - audioRating?: string; - overallRating?: string; - screenshareRating?: string; - videoRating?: string; -} - -// @public -export interface CallWithChatAdapter extends CallWithChatAdapterManagement, AdapterState, Disposable_2, CallWithChatAdapterSubscriptions { -} - -// @public -export interface CallWithChatAdapterManagement { - addParticipant(participant: PhoneNumberIdentifier, options?: AddPhoneNumberOptions): Promise; - // (undocumented) - addParticipant(participant: CommunicationUserIdentifier): Promise; - askDevicePermission(constrain: PermissionConstraints): Promise; - createStreamView(remoteUserId?: string, options?: VideoStreamOptions): Promise; - deleteMessage(messageId: string): Promise; - disposeLocalVideoStreamView(): Promise; - disposeRemoteVideoStreamView(remoteUserId: string): Promise; - disposeScreenShareStreamView(remoteUserId: string): Promise; - disposeStreamView(remoteUserId?: string, options?: VideoStreamOptions): Promise; - // (undocumented) - downloadResourceToCache(resourceDetails: ResourceDetails): Promise; - fetchInitialData(): Promise; - forbidAudio: (userIds: string[]) => Promise; - forbidOthersAudio: () => Promise; - forbidOthersVideo: () => Promise; - forbidVideo: (userIds: string[]) => Promise; - holdCall(): Promise; - // @deprecated - joinCall(microphoneOn?: boolean): Call | undefined; - joinCall(options?: JoinCallOptions): Call | undefined; - leaveCall(forEveryone?: boolean): Promise; - loadPreviousChatMessages(messagesToLoad: number): Promise; - lowerHand(): Promise; - mute(): Promise; - muteAllRemoteParticipants(): Promise; - muteParticipant(userId: string): Promise; - onReactionClick(reaction: Reaction_2): Promise; - permitAudio: (userIds: string[]) => Promise; - permitOthersAudio: () => Promise; - permitOthersVideo: () => Promise; - permitVideo: (userIds: string[]) => Promise; - queryCameras(): Promise; - queryMicrophones(): Promise; - querySpeakers(): Promise; - raiseHand(): Promise; - removeParticipant(userId: string): Promise; - removeParticipant(participant: CommunicationIdentifier): Promise; - // (undocumented) - removeResourceFromCache(resourceDetails: ResourceDetails): void; - resumeCall(): Promise; - sendDtmfTone: (dtmfTone: DtmfTone_2) => Promise; - sendMessage(content: string, options?: SendMessageOptions): Promise; - sendReadReceipt(chatMessageId: string): Promise; - sendTypingIndicator(): Promise; - setCamera(sourceInfo: VideoDeviceInfo, options?: VideoStreamOptions): Promise; - setCaptionLanguage(language: string): Promise; - setMicrophone(sourceInfo: AudioDeviceInfo): Promise; - setSpeaker(sourceInfo: AudioDeviceInfo): Promise; - setSpokenLanguage(language: string): Promise; - startCall(participants: string[], options?: StartCallOptions): Call | undefined; - startCall(participants: (MicrosoftTeamsAppIdentifier | PhoneNumberIdentifier | CommunicationUserIdentifier | MicrosoftTeamsUserIdentifier | UnknownIdentifier)[], options?: StartCallOptions): Call | undefined; - startCamera(options?: VideoStreamOptions): Promise; - startCaptions(options?: StartCaptionsAdapterOptions): Promise; - startNoiseSuppressionEffect(): Promise; - startScreenShare(): Promise; - startSpotlight(userIds?: string[]): Promise; - startVideoBackgroundEffect(videoBackgroundEffect: VideoBackgroundEffect): Promise; - stopAllSpotlight(): Promise; - stopCamera(): Promise; - stopCaptions(options?: StopCaptionsAdapterOptions): Promise; - stopNoiseSuppressionEffect(): Promise; - stopScreenShare(): Promise; - stopSpotlight(userIds?: string[]): Promise; - stopVideoBackgroundEffects(): Promise; - submitSurvey(survey: CallSurvey): Promise; - unmute(): Promise; - updateBackgroundPickerImages(backgroundImages: VideoBackgroundImage[]): void; - updateMessage(messageId: string, content: string, options?: Record): Promise; - updateSelectedVideoBackgroundEffect(selectedVideoBackground: VideoBackgroundEffect): void; -} - -// @public -export interface CallWithChatAdapterState extends CallWithChatAdapterUiState, CallWithChatClientState { -} - -// @public -export interface CallWithChatAdapterSubscriptions { - // (undocumented) - off(event: 'callEnded', listener: CallEndedListener): void; - // (undocumented) - off(event: 'isMutedChanged', listener: IsMutedChangedListener): void; - // (undocumented) - off(event: 'callIdChanged', listener: CallIdChangedListener): void; - // (undocumented) - off(event: 'isLocalScreenSharingActiveChanged', listener: IsLocalScreenSharingActiveChangedListener): void; - // (undocumented) - off(event: 'displayNameChanged', listener: DisplayNameChangedListener): void; - // (undocumented) - off(event: 'isSpeakingChanged', listener: IsSpeakingChangedListener): void; - // (undocumented) - off(event: 'callParticipantsJoined', listener: ParticipantsJoinedListener): void; - // (undocumented) - off(event: 'callParticipantsLeft', listener: ParticipantsLeftListener): void; - // (undocumented) - off(event: 'selectedMicrophoneChanged', listener: PropertyChangedEvent): void; - // (undocumented) - off(event: 'selectedSpeakerChanged', listener: PropertyChangedEvent): void; - // (undocumented) - off(event: 'callError', listener: (e: AdapterError) => void): void; - // (undocumented) - off(event: 'captionsReceived', listener: CaptionsReceivedListener): void; - // (undocumented) - off(event: 'isCaptionsActiveChanged', listener: IsCaptionsActiveChangedListener): void; - // (undocumented) - off(event: 'isCaptionLanguageChanged', listener: IsCaptionLanguageChangedListener): void; - // (undocumented) - off(event: 'isSpokenLanguageChanged', listener: IsSpokenLanguageChangedListener): void; - // (undocumented) - off(event: 'capabilitiesChanged', listener: CapabilitiesChangedListener): void; - // (undocumented) - off(event: 'spotlightChanged', listener: SpotlightChangedListener): void; - // (undocumented) - off(event: 'messageReceived', listener: MessageReceivedListener): void; - // (undocumented) - off(event: 'messageEdited', listener: MessageEditedListener): void; - // (undocumented) - off(event: 'messageDeleted', listener: MessageDeletedListener): void; - // (undocumented) - off(event: 'messageSent', listener: MessageSentListener): void; - // (undocumented) - off(event: 'messageRead', listener: MessageReadListener): void; - // (undocumented) - off(event: 'chatParticipantsAdded', listener: ParticipantsAddedListener): void; - // (undocumented) - off(event: 'chatParticipantsRemoved', listener: ParticipantsRemovedListener): void; - // (undocumented) - off(event: 'chatError', listener: (e: AdapterError) => void): void; - // (undocumented) - off(event: 'chatInitialized', listener: ChatInitializedListener): void; - // (undocumented) - on(event: 'callEnded', listener: CallEndedListener): void; - // (undocumented) - on(event: 'isMutedChanged', listener: IsMutedChangedListener): void; - // (undocumented) - on(event: 'callIdChanged', listener: CallIdChangedListener): void; - // (undocumented) - on(event: 'isLocalScreenSharingActiveChanged', listener: IsLocalScreenSharingActiveChangedListener): void; - // (undocumented) - on(event: 'displayNameChanged', listener: DisplayNameChangedListener): void; - // (undocumented) - on(event: 'isSpeakingChanged', listener: IsSpeakingChangedListener): void; - // (undocumented) - on(event: 'callParticipantsJoined', listener: ParticipantsJoinedListener): void; - // (undocumented) - on(event: 'callParticipantsLeft', listener: ParticipantsLeftListener): void; - // (undocumented) - on(event: 'selectedMicrophoneChanged', listener: PropertyChangedEvent): void; - // (undocumented) - on(event: 'selectedSpeakerChanged', listener: PropertyChangedEvent): void; - // (undocumented) - on(event: 'callError', listener: (e: AdapterError) => void): void; - // (undocumented) - on(event: 'captionsReceived', listener: CaptionsReceivedListener): void; - // (undocumented) - on(event: 'isCaptionsActiveChanged', listener: IsCaptionsActiveChangedListener): void; - // (undocumented) - on(event: 'isCaptionLanguageChanged', listener: IsCaptionLanguageChangedListener): void; - // (undocumented) - on(event: 'isSpokenLanguageChanged', listener: IsSpokenLanguageChangedListener): void; - // (undocumented) - on(event: 'capabilitiesChanged', listener: CapabilitiesChangedListener): void; - // (undocumented) - on(event: 'spotlightChanged', listener: SpotlightChangedListener): void; - // (undocumented) - on(event: 'messageReceived', listener: MessageReceivedListener): void; - // (undocumented) - on(event: 'messageEdited', listener: MessageEditedListener): void; - // (undocumented) - on(event: 'messageDeleted', listener: MessageDeletedListener): void; - // (undocumented) - on(event: 'messageSent', listener: MessageSentListener): void; - // (undocumented) - on(event: 'messageRead', listener: MessageReadListener): void; - // (undocumented) - on(event: 'chatParticipantsAdded', listener: ParticipantsAddedListener): void; - // (undocumented) - on(event: 'chatParticipantsRemoved', listener: ParticipantsRemovedListener): void; - // (undocumented) - on(event: 'chatError', listener: (e: AdapterError) => void): void; - // (undocumented) - on(event: 'chatInitialized', listener: ChatInitializedListener): void; -} - -// @public -export interface CallWithChatAdapterUiState { - isLocalPreviewMicrophoneEnabled: boolean; - page: CallCompositePage; -} - -// @public -export interface CallWithChatClientState { - alternateCallerId?: string; - call?: CallState; - chat?: ChatThreadClientState; - deepNoiseSuppressionOnByDefault?: boolean; - devices: DeviceManagerState; - displayName: string | undefined; - environmentInfo?: EnvironmentInfo; - hideAttendeeNames?: boolean; - hideDeepNoiseSuppressionButton?: boolean; - isTeamsCall: boolean; - isTeamsMeeting: boolean; - latestCallErrors: AdapterErrors; - latestChatErrors: AdapterErrors; - onResolveDeepNoiseSuppressionDependency?: () => Promise; - onResolveVideoEffectDependency?: () => Promise; - reactions?: ReactionResources; - selectedVideoBackgroundEffect?: VideoBackgroundEffect; - userId: CommunicationIdentifierKind; - videoBackgroundImages?: VideoBackgroundImage[]; -} - -// @public -export const CallWithChatComposite: (props: CallWithChatCompositeProps) => JSX.Element; - -// @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; -}; - -// @public -export type CallWithChatCompositeLoaderProps = { - userId: CommunicationUserIdentifier; - credential: CommunicationTokenCredential; - displayName: string; - endpoint: string; - locator: CallAndChatLocator; - callAdapterOptions?: AzureCommunicationCallAdapterOptions; - callWithChatCompositeOptions?: CallWithChatCompositeOptions; -}; - -// @public -export type CallWithChatCompositeOptions = { - callControls?: boolean | CallWithChatControlOptions; - remoteVideoTileMenuOptions?: RemoteVideoTileMenuOptions; - localVideoTile?: boolean | LocalVideoTileOptions; - galleryOptions?: { - layout?: VideoGalleryLayout; - }; - surveyOptions?: { - disableSurvey?: boolean; - onSurveyClosed?: (surveyState: 'sent' | 'skipped' | 'error', surveyError?: string) => void; - onSurveySubmitted?: (callId: string, surveyId: string, - submittedSurvey: CallSurvey, - improvementSuggestions: CallSurveyImprovementSuggestions) => Promise; - }; - branding?: { - logo?: { - url: string; - alt?: string; - shape?: 'unset' | 'circle'; - }; - backgroundImage?: { - url: string; - }; - }; - spotlight?: { - hideSpotlightButtons?: boolean; - }; -}; - -// @public -export interface CallWithChatCompositeProps extends BaseCompositeProps { - // (undocumented) - adapter: CallWithChatAdapter; - fluentTheme?: PartialTheme | Theme; - formFactor?: 'desktop' | 'mobile'; - joinInvitationURL?: string; - options?: CallWithChatCompositeOptions; -} - -// @public -export interface CallWithChatCompositeStrings { - chatButtonLabel: string; - chatButtonNewMessageNotificationLabel: string; - chatButtonTooltipClose: string; - chatButtonTooltipClosedWithMessageCount: string; - chatButtonTooltipOpen: string; - chatPaneTitle: string; - copyInviteLinkActionedAriaLabel: string; - copyInviteLinkButtonActionedLabel: string; - copyInviteLinkButtonLabel: string; - dialpadCloseModalButtonAriaLabel: string; - dialpadModalAriaLabel: string; - dialpadModalTitle: string; - dialpadStartCallButtonLabel: string; - dismissSidePaneButtonLabel?: string; - dtmfDialpadPlaceholderText: string; - moreDrawerAudioDeviceMenuTitle?: string; - moreDrawerButtonLabel: string; - moreDrawerButtonTooltip: string; - moreDrawerCaptionLanguageMenuTitle: string; - moreDrawerCaptionsMenuTitle: string; - moreDrawerGalleryOptionsMenuTitle: string; - moreDrawerMicrophoneMenuTitle: string; - moreDrawerSpeakerMenuTitle: string; - moreDrawerSpokenLanguageMenuTitle: string; - openDialpadButtonLabel: string; - openDtmfDialpadLabel: string; - peopleButtonLabel: string; - peopleButtonTooltipClose: string; - peopleButtonTooltipCloseAriaLabel: string; - peopleButtonTooltipOpen: string; - peopleButtonTooltipOpenAriaLabel: string; - peoplePaneAddPeopleButtonLabel: string; - peoplePaneSubTitle: string; - peoplePaneTitle: string; - pictureInPictureTileAriaLabel: string; - removeMenuLabel: string; - returnToCallButtonAriaDescription?: string; - returnToCallButtonAriaLabel?: string; - selectedPeopleButtonLabel: string; -} - -// @public -export interface CallWithChatControlOptions extends CommonCallControlOptions { - chatButton?: boolean | { - disabled: boolean; - }; -} - -// @public -export type CallWithChatEvent = 'callError' | 'chatError' | 'callEnded' | 'isMutedChanged' | 'callIdChanged' | 'isLocalScreenSharingActiveChanged' | 'displayNameChanged' | 'isSpeakingChanged' | 'callParticipantsJoined' | 'callParticipantsLeft' | 'selectedMicrophoneChanged' | 'selectedSpeakerChanged' | 'isCaptionsActiveChanged' | 'captionsReceived' | 'isCaptionLanguageChanged' | 'isSpokenLanguageChanged' | 'capabilitiesChanged' | 'spotlightChanged' | 'messageReceived' | 'messageEdited' | 'messageDeleted' | 'messageSent' | 'messageRead' | 'chatParticipantsAdded' | 'chatParticipantsRemoved' | 'chatInitialized'; - -// @public -export const CameraButton: (props: CameraButtonProps) => JSX.Element; - -// @public -export interface CameraButtonContextualMenuStyles extends IContextualMenuStyles { - menuItemStyles?: IContextualMenuItemStyles; -} - -// @public -export interface CameraButtonProps extends ControlBarButtonProps { - cameras?: OptionsDevice[]; - enableDeviceSelectionMenu?: boolean; - localVideoViewOptions?: VideoStreamOptions; - onClickVideoEffects?: (showVideoEffects: boolean) => void; - onSelectCamera?: (device: OptionsDevice) => Promise; - onToggleCamera?: (options?: VideoStreamOptions) => Promise; - selectedCamera?: OptionsDevice; - strings?: Partial; - styles?: Partial; -} - -// @public -export type CameraButtonSelector = (state: CallClientState, props: CallingBaseSelectorProps) => { - disabled: boolean; - checked: boolean; - cameras: VideoDeviceInfo[]; - selectedCamera?: VideoDeviceInfo; -}; - -// @public -export interface CameraButtonStrings { - cameraActionTurnedOffAnnouncement?: string; - cameraActionTurnedOnAnnouncement?: string; - cameraButtonAriaDescription?: string; - cameraButtonSplitRoleDescription?: string; - cameraMenuTitle: string; - cameraMenuTooltip: string; - cameraPrimaryActionSplitButtonTitle?: string; - offLabel: string; - offSplitButtonAriaLabel?: string; - offSplitButtonPrimaryActionCamera?: string; - onLabel: string; - onSplitButtonAriaLabel?: string; - onSplitButtonPrimaryActionCamera?: string; - tooltipDisabledContent?: string; - tooltipOffContent?: string; - tooltipOnContent?: string; - tooltipVideoLoadingContent?: string; - videoEffectsMenuItemTitle?: string; -} - -// @public -export interface CameraButtonStyles extends ControlBarButtonStyles { - menuStyles?: Partial; -} - -// @public -export type CancelEditCallback = (messageId: string) => void; - -// @public -export type CapabilitiesChangedListener = (data: CapabilitiesChangeInfo) => void; - -// @public -export interface CapabilitiesFeatureState { - capabilities: ParticipantCapabilities; - latestCapabilitiesChangeInfo: CapabilitiesChangeInfo; -} - -// @public -export interface CapabilityChangedNotificationStrings { - hideAttendeeNames?: { - hideAttendeeNameAttendee?: string; - hideAttendeeNamePresenter?: string; - }; - shareScreen?: { - lostDueToRoleChangeToAttendee?: string; - grantedDueToRoleChangeToPresenter?: string; - }; - turnVideoOn?: { - lostDueToMeetingOption?: string; - grantedDueToMeetingOption?: string; - }; - unmuteMic?: { - lostDueToMeetingOption?: string; - grantedDueToMeetingOption?: string; - }; -} - -// @public -export interface CaptionLanguageStrings { - // (undocumented) - 'fr-ca': string; - // (undocumented) - 'pt-pt': string; - // (undocumented) - 'zh-Hans': string; - // (undocumented) - 'zh-Hant': string; - // (undocumented) - ar: string; - // (undocumented) - cs: string; - // (undocumented) - cy: string; - // (undocumented) - da: string; - // (undocumented) - de: string; - // (undocumented) - el: string; - // (undocumented) - en: string; - // (undocumented) - es: string; - // (undocumented) - fi: string; - // (undocumented) - fr: string; - // (undocumented) - he: string; - // (undocumented) - hi: string; - // (undocumented) - hu: string; - // (undocumented) - it: string; - // (undocumented) - ja: string; - // (undocumented) - ko: string; - // (undocumented) - nb: string; - // (undocumented) - nl: string; - // (undocumented) - pl: string; - // (undocumented) - pt: string; - // (undocumented) - ro: string; - // (undocumented) - ru: string; - // (undocumented) - sk: string; - // (undocumented) - sv: string; - // (undocumented) - th: string; - // (undocumented) - tr: string; - // (undocumented) - uk: string; - // (undocumented) - vi: string; -} - -// @public -export const CaptionsBanner: (props: CaptionsBannerProps) => JSX.Element; - -// @public -export interface CaptionsBannerProps { - captions: CaptionsInformation[]; - captionsOptions?: { - height: 'full' | 'default'; - }; - formFactor?: 'default' | 'compact'; - isCaptionsOn?: boolean; - onRenderAvatar?: OnRenderAvatarCallback; - startCaptionsInProgress?: boolean; - strings?: CaptionsBannerStrings; -} - -// @public -export type CaptionsBannerSelector = (state: CallClientState, props: CallingBaseSelectorProps) => { - captions: CaptionsInformation[]; - isCaptionsOn: boolean; -}; - -// @public -export interface CaptionsBannerStrings { - captionsBannerSpinnerText?: string; -} - -// @public (undocumented) -export interface CaptionsCallFeatureState { - captions: CaptionsInfo[]; - captionsKind: CaptionsKind; - currentCaptionLanguage: string; - currentSpokenLanguage: string; - isCaptionsFeatureActive: boolean; - startCaptionsInProgress: boolean; - supportedCaptionLanguages: string[]; - supportedSpokenLanguages: string[]; -} - -// @public -export type CaptionSettingsSelector = (state: CallClientState, props: CallingBaseSelectorProps) => { - supportedCaptionLanguages: SupportedCaptionLanguage[]; - currentCaptionLanguage: SupportedCaptionLanguage; - supportedSpokenLanguages: SupportedSpokenLanguage[]; - currentSpokenLanguage: SupportedSpokenLanguage; - isCaptionsFeatureActive: boolean; -}; - -// @public (undocumented) -export interface CaptionsInfo { - captionLanguage?: string; - captionText: string; - resultType: CaptionsResultType; - speaker: CallerInfo; - spokenLanguage: string; - spokenText?: string; - timestamp: Date; -} - -// @public -export type CaptionsInformation = { - id: string; - displayName: string; - captionText: string; - userId?: string; -}; - -// @public -export type CaptionsOptions = { - spokenLanguage: string; -}; - -// @public -export type CaptionsReceivedListener = (event: { - captionsInfo: CaptionsInfo; -}) => void; - -// @public -export const CaptionsSettingsModal: (props: CaptionsSettingsModalProps) => JSX.Element; - -// @public -export interface CaptionsSettingsModalProps { - captionLanguageStrings?: CaptionLanguageStrings; - changeCaptionLanguage?: boolean; - currentCaptionLanguage?: SupportedCaptionLanguage; - currentSpokenLanguage: SupportedSpokenLanguage; - isCaptionsFeatureActive?: boolean; - onDismissCaptionsSettings?: () => void; - onSetCaptionLanguage?: (language: SupportedCaptionLanguage) => Promise; - onSetSpokenLanguage: (language: SupportedSpokenLanguage) => Promise; - onStartCaptions: (options?: CaptionsOptions) => Promise; - showModal?: boolean; - spokenLanguageStrings?: SpokenLanguageStrings; - strings?: CaptionsSettingsModalStrings; - supportedCaptionLanguages?: SupportedCaptionLanguage[]; - supportedSpokenLanguages: SupportedSpokenLanguage[]; -} - -// @public -export interface CaptionsSettingsModalStrings { - captionsSettingsCancelButtonLabel?: string; - captionsSettingsCaptionLanguageDropdownInfoText?: string; - captionsSettingsCaptionLanguageDropdownLabel?: string; - captionsSettingsCloseModalButtonAriaLabel?: string; - captionsSettingsConfirmButtonLabel?: string; - captionsSettingsModalAriaLabel?: string; - captionsSettingsModalTitle?: string; - captionsSettingsSpokenLanguageDropdownInfoText?: string; - captionsSettingsSpokenLanguageDropdownLabel?: string; -} - -// @public -export type ChatAdapter = ChatAdapterThreadManagement & AdapterState & Disposable_2 & ChatAdapterSubscribers; - -// @public -export type ChatAdapterState = ChatAdapterUiState & ChatCompositeClientState; - -// @public -export interface ChatAdapterSubscribers { - off(event: 'messageReceived', listener: MessageReceivedListener): void; - off(event: 'messageEdited', listener: MessageEditedListener): void; - off(event: 'messageDeleted', listener: MessageDeletedListener): void; - off(event: 'messageSent', listener: MessageSentListener): void; - off(event: 'messageRead', listener: MessageReadListener): void; - off(event: 'participantsAdded', listener: ParticipantsAddedListener): void; - off(event: 'participantsRemoved', listener: ParticipantsRemovedListener): void; - off(event: 'topicChanged', listener: TopicChangedListener): void; - off(event: 'error', listener: (e: AdapterError) => void): void; - on(event: 'messageReceived', listener: MessageReceivedListener): void; - on(event: 'messageEdited', listener: MessageEditedListener): void; - on(event: 'messageDeleted', listener: MessageDeletedListener): void; - on(event: 'messageSent', listener: MessageSentListener): void; - on(event: 'messageRead', listener: MessageReadListener): void; - on(event: 'participantsAdded', listener: ParticipantsAddedListener): void; - on(event: 'participantsRemoved', listener: ParticipantsRemovedListener): void; - on(event: 'topicChanged', listener: TopicChangedListener): void; - on(event: 'error', listener: (e: AdapterError) => void): void; -} - -// @public -export interface ChatAdapterThreadManagement { - deleteMessage(messageId: string): Promise; - downloadResourceToCache(resourceDetails: ResourceDetails): Promise; - fetchInitialData(): Promise; - loadPreviousChatMessages(messagesToLoad: number): Promise; - removeParticipant(userId: string): Promise; - removeResourceFromCache(resourceDetails: ResourceDetails): void; - sendMessage(content: string, options?: SendMessageOptions): Promise; - sendReadReceipt(chatMessageId: string): Promise; - sendTypingIndicator(): Promise; - setTopic(topicName: string): Promise; - updateMessage(messageId: string, content: string, options?: Record): Promise; -} - -// @public -export type ChatAdapterUiState = { - error?: Error; -}; - -// @public -export type ChatAttachmentType = 'unknown' | 'image' | 'file'; - -// @public -export type ChatBaseSelectorProps = { - threadId: string; -}; - -// @public -export const ChatClientProvider: (props: ChatClientProviderProps) => JSX.Element; - -// @public -export type ChatClientProviderProps = { - children: React_2.ReactNode; - chatClient: StatefulChatClient; -}; - -// @public -export type ChatClientState = { - userId: CommunicationIdentifierKind; - displayName: string; - threads: { - [key: string]: ChatThreadClientState; - }; - latestErrors: ChatErrors; -}; - -// @public -export const ChatComposite: (props: ChatCompositeProps) => JSX.Element; - -// @public -export type ChatCompositeClientState = { - userId: CommunicationIdentifierKind; - displayName: string; - thread: ChatThreadClientState; - latestErrors: AdapterErrors; -}; - -// @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; -}; - -// @public -export type ChatCompositeLoaderProps = { - userId: CommunicationUserIdentifier; - credential: CommunicationTokenCredential; - displayName?: string; - endpoint: string; - threadId: string; - chatCompositeOptions?: ChatCompositeOptions; -}; - -// @public -export type ChatCompositeOptions = { - errorBar?: boolean; - topic?: boolean; - autoFocus?: 'sendBoxTextField'; -}; - -// @public -export interface ChatCompositeProps extends BaseCompositeProps { - adapter: ChatAdapter; - onRenderMessage?: (messageProps: MessageProps, defaultOnRender?: MessageRenderer) => JSX.Element; - onRenderTypingIndicator?: (typingUsers: CommunicationParticipant[]) => JSX.Element; - options?: ChatCompositeOptions; -} - -// @public -export interface ChatCompositeStrings { - chatListHeader: string; -} - -// @public -export class ChatError extends Error { - constructor(target: ChatErrorTarget, innerError: Error, timestamp?: Date); - innerError: Error; - target: ChatErrorTarget; - timestamp: Date; -} - -// @public -export type ChatErrorBarSelector = (state: ChatClientState, props: ChatBaseSelectorProps) => { - activeErrorMessages: ActiveErrorMessage[]; -}; - -// @public -export type ChatErrors = { - [target in ChatErrorTarget]: ChatError; -}; - -// @public -export type ChatErrorTarget = 'ChatClient.createChatThread' | 'ChatClient.deleteChatThread' | 'ChatClient.getChatThreadClient' | 'ChatClient.listChatThreads' | 'ChatClient.off' | 'ChatClient.on' | 'ChatClient.startRealtimeNotifications' | 'ChatClient.stopRealtimeNotifications' | 'ChatThreadClient.addParticipants' | 'ChatThreadClient.deleteMessage' | 'ChatThreadClient.getMessage' | 'ChatThreadClient.getProperties' | 'ChatThreadClient.listMessages' | 'ChatThreadClient.listParticipants' | 'ChatThreadClient.listReadReceipts' | 'ChatThreadClient.removeParticipant' | 'ChatThreadClient.sendMessage' | 'ChatThreadClient.sendReadReceipt' | 'ChatThreadClient.sendTypingNotification' | 'ChatThreadClient.updateMessage' | 'ChatThreadClient.updateTopic'; - -// @public -export type ChatHandlers = { - onSendMessage: (content: string, options?: SendMessageOptions) => Promise; - onMessageSeen: (chatMessageId: string) => Promise; - onTyping: () => Promise; - onRemoveParticipant: (userId: string) => Promise; - updateThreadTopicName: (topicName: string) => Promise; - onLoadPreviousChatMessages: (messagesToLoad: number) => Promise; - onUpdateMessage: (messageId: string, content: string) => Promise; - onDeleteMessage: (messageId: string) => Promise; -}; - -// @public -export type ChatInitializedListener = (event: { - adapter: CallWithChatAdapter; -}) => void; - -// @public -export interface ChatMessage extends MessageCommon { - // (undocumented) - attached?: MessageAttachedStatus; - attachments?: AttachmentMetadata[]; - // (undocumented) - clientMessageId?: string; - // (undocumented) - content?: string; - // (undocumented) - contentType: MessageContentType; - // (undocumented) - deletedOn?: Date; - // (undocumented) - editedOn?: Date; - // (undocumented) - failureReason?: string; - // (undocumented) - messageType: 'chat'; - metadata?: Record; - // (undocumented) - mine?: boolean; - // (undocumented) - senderDisplayName?: string; - // (undocumented) - senderId?: string; - // (undocumented) - status?: MessageStatus; -} - -// @public -export type ChatMessageWithStatus = ChatMessage_2 & { - clientMessageId?: string; - status: MessageStatus; - resourceCache?: Record; -}; - -// @public -export type ChatParticipantListSelector = (state: ChatClientState, props: ChatBaseSelectorProps) => { - myUserId: string; - participants: ParticipantListParticipant[]; -}; - -// @public -export type ChatReturnProps JSX.Element> = GetChatSelector extends (state: ChatClientState, props: any) => any ? ReturnType> & Common[0]> : never; - -// @public -export const ChatThreadClientProvider: (props: ChatThreadClientProviderProps) => JSX.Element; - -// @public -export type ChatThreadClientProviderProps = { - children: React_2.ReactNode; - chatThreadClient: ChatThreadClient; -}; - -// @public -export type ChatThreadClientState = { - chatMessages: { - [key: string]: ChatMessageWithStatus; - }; - participants: { - [key: string]: ChatParticipant; - }; - threadId: string; - properties?: ChatThreadProperties; - readReceipts: ChatMessageReadReceipt[]; - typingIndicators: TypingIndicatorReceivedEvent[]; - latestReadTime: Date; -}; - -// @public -export type ChatThreadProperties = { - topic?: string; -}; - -// @public -export type ClientState = CallClientState & ChatClientState; - -// @public -export type Common = Pick>; - -// @public -export interface CommonCallAdapter extends AdapterState, Disposable_2, CallAdapterCallOperations, CallAdapterDeviceManagement, CallAdapterSubscribers { - // @deprecated - joinCall(microphoneOn?: boolean): void; - joinCall(options?: JoinCallOptions): void; - startCall(participants: string[], options?: StartCallOptions): void; - startCall(participants: StartCallIdentifier[], options?: StartCallOptions): void; -} - -// @public -export type CommonCallAdapterOptions = { - videoBackgroundOptions?: { - videoBackgroundImages?: VideoBackgroundImage[]; - onResolveDependency?: () => Promise; - }; - deepNoiseSuppressionOptions?: { - onResolveDependency?: () => Promise; - deepNoiseSuppressionOnByDefault?: boolean; - hideDeepNoiseSuppressionButton?: boolean; - }; - onFetchProfile?: OnFetchProfileCallback; - callingSounds?: CallingSounds; - reactionResources?: ReactionResources; - alternateCallerId?: string; -}; - -// @public -export type CommonCallControlOptions = { - displayType?: CallControlDisplayType; - cameraButton?: boolean | { - disabled: boolean; - }; - endCallButton?: boolean | { - hangUpForEveryone?: false | 'endCallOptions'; - disableEndCallModal?: boolean; - }; - microphoneButton?: boolean | { - disabled: boolean; - }; - devicesButton?: boolean | { - disabled: boolean; - }; - participantsButton?: boolean | { - disabled: boolean; - }; - screenShareButton?: boolean | { - disabled: boolean; - }; - moreButton?: boolean; - raiseHandButton?: boolean | { - disabled: boolean; - }; - reactionButton?: boolean | { - disabled: boolean; - }; - onFetchCustomButtonProps?: CustomCallControlButtonCallback[]; - holdButton?: boolean | { - disabled: boolean; - }; - peopleButton?: boolean | { - disabled: boolean; - }; - dtmfDialerButton?: boolean | { - disabled: boolean; - }; - exitSpotlightButton?: boolean; - captionsButton?: boolean; - galleryControlsButton?: boolean; - teamsMeetingPhoneCallButton?: boolean; -}; - -// @public -export interface CommonCallingHandlers { - // (undocumented) - onAcceptCall: (incomingCallId: string, useVideo?: boolean) => Promise; - // (undocumented) - onAddParticipant(participant: CommunicationUserIdentifier): Promise; - // (undocumented) - onAddParticipant(participant: PhoneNumberIdentifier, options: AddPhoneNumberOptions): Promise; - // (undocumented) - onBlurVideoBackground: (backgroundBlurConfig?: BackgroundBlurConfig) => Promise; - // (undocumented) - onCreateLocalStreamView: (options?: VideoStreamOptions) => Promise; - // (undocumented) - onCreateRemoteStreamView: (userId: string, options?: VideoStreamOptions) => Promise; - // (undocumented) - onDisposeLocalScreenShareStreamView: () => Promise; - // (undocumented) - onDisposeLocalStreamView: () => Promise; - // (undocumented) - onDisposeRemoteScreenShareStreamView: (userId: string) => Promise; - // @deprecated (undocumented) - onDisposeRemoteStreamView: (userId: string) => Promise; - // (undocumented) - onDisposeRemoteVideoStreamView: (userId: string) => Promise; - onForbidAudio?: (userIds: string[]) => Promise; - onForbidOthersAudio?: () => Promise; - onForbidOthersVideo?: () => Promise; - onForbidVideo?: (userIds: string[]) => Promise; - // (undocumented) - onHangUp: (forEveryone?: boolean) => Promise; - // (undocumented) - onLowerHand: () => Promise; - // (undocumented) - onMuteAllRemoteParticipants: () => Promise; - // (undocumented) - onMuteParticipant: (userId: string) => Promise; - onPermitAudio?: (userIds: string[]) => Promise; - onPermitOthersAudio?: () => Promise; - onPermitOthersVideo?: () => Promise; - onPermitVideo?: (userIds: string[]) => Promise; - // (undocumented) - onRaiseHand: () => Promise; - // (undocumented) - onReactionClick: (reaction: Reaction_2) => Promise; - // (undocumented) - onRejectCall: (incomingCallId: string) => Promise; - // (undocumented) - onRemoveParticipant(userId: string): Promise; - // (undocumented) - onRemoveParticipant(participant: CommunicationIdentifier): Promise; - // (undocumented) - onRemoveVideoBackgroundEffects: () => Promise; - // (undocumented) - onReplaceVideoBackground: (backgroundReplacementConfig: BackgroundReplacementConfig) => Promise; - // (undocumented) - onSelectCamera: (device: VideoDeviceInfo, options?: VideoStreamOptions) => Promise; - // (undocumented) - onSelectMicrophone: (device: AudioDeviceInfo) => Promise; - // (undocumented) - onSelectSpeaker: (device: AudioDeviceInfo) => Promise; - // (undocumented) - onSendDtmfTone: (dtmfTone: DtmfTone_2) => Promise; - // (undocumented) - onSetCaptionLanguage: (language: string) => Promise; - // (undocumented) - onSetSpokenLanguage: (language: string) => Promise; - // (undocumented) - onStartCall: (participants: CommunicationIdentifier[], options?: StartCallOptions) => void; - // (undocumented) - onStartCaptions: (options?: CaptionsOptions) => Promise; - // (undocumented) - onStartLocalVideo: () => Promise; - // (undocumented) - onStartNoiseSuppressionEffect: () => Promise; - // (undocumented) - onStartScreenShare: () => Promise; - // (undocumented) - onStartSpotlight: (userIds?: string[]) => Promise; - // (undocumented) - onStopAllSpotlight: () => Promise; - // (undocumented) - onStopCaptions: () => Promise; - // (undocumented) - onStopNoiseSuppressionEffect: () => Promise; - // (undocumented) - onStopScreenShare: () => Promise; - // (undocumented) - onStopSpotlight: (userIds?: string[]) => Promise; - // (undocumented) - onSubmitSurvey(survey: CallSurvey): Promise; - // (undocumented) - onToggleCamera: (options?: VideoStreamOptions) => Promise; - // (undocumented) - onToggleHold: () => Promise; - // (undocumented) - onToggleMicrophone: () => Promise; - // (undocumented) - onToggleRaiseHand: () => Promise; - // (undocumented) - onToggleScreenShare: () => Promise; -} - -// @public -export type CommonProperties = { - [P in keyof A & keyof B]: A[P] extends B[P] ? P : never; -}[keyof A & keyof B]; - -// @public -export type CommunicationParticipant = { - userId: string; - displayName?: string; -}; - -// @public -export const COMPONENT_LOCALE_AR_SA: ComponentLocale; - -// @public -export const COMPONENT_LOCALE_CS_CZ: ComponentLocale; - -// @public -export const COMPONENT_LOCALE_CY_GB: ComponentLocale; - -// @public -export const COMPONENT_LOCALE_DE_DE: ComponentLocale; - -// @public -export const COMPONENT_LOCALE_EN_GB: ComponentLocale; - -// @public -export const COMPONENT_LOCALE_EN_US: ComponentLocale; - -// @public -export const COMPONENT_LOCALE_ES_ES: ComponentLocale; - -// @public -export const COMPONENT_LOCALE_ES_MX: ComponentLocale; - -// @public -export const COMPONENT_LOCALE_FI_FI: ComponentLocale; - -// @public -export const COMPONENT_LOCALE_FR_CA: ComponentLocale; - -// @public -export const COMPONENT_LOCALE_FR_FR: ComponentLocale; - -// @public -export const COMPONENT_LOCALE_HE_IL: ComponentLocale; - -// @public -export const COMPONENT_LOCALE_IT_IT: ComponentLocale; - -// @public -export const COMPONENT_LOCALE_JA_JP: ComponentLocale; - -// @public -export const COMPONENT_LOCALE_KO_KR: ComponentLocale; - -// @public -export const COMPONENT_LOCALE_NB_NO: ComponentLocale; - -// @public -export const COMPONENT_LOCALE_NL_NL: ComponentLocale; - -// @public -export const COMPONENT_LOCALE_PL_PL: ComponentLocale; - -// @public -export const COMPONENT_LOCALE_PT_BR: ComponentLocale; - -// @public -export const COMPONENT_LOCALE_RU_RU: ComponentLocale; - -// @public -export const COMPONENT_LOCALE_SV_SE: ComponentLocale; - -// @public -export const COMPONENT_LOCALE_TR_TR: ComponentLocale; - -// @public -export const COMPONENT_LOCALE_ZH_CN: ComponentLocale; - -// @public -export const COMPONENT_LOCALE_ZH_TW: ComponentLocale; - -// @public -export type ComponentIcons = Record; - -// @public -export interface ComponentLocale { - strings: ComponentStrings; -} - -// @public -export type ComponentProps JSX.Element> = ChatReturnProps extends never ? CallingReturnProps extends never ? undefined : CallingReturnProps : ChatReturnProps; - -// @public -export type ComponentSlotStyle = Omit; - -// @public -export interface ComponentStrings { - cameraButton: CameraButtonStrings; - captionLanguages: CaptionLanguageStrings; - captionsBanner: CaptionsBannerStrings; - captionsSettingsModal: CaptionsSettingsModalStrings; - devicesButton: DevicesButtonStrings; - dialpad: DialpadStrings; - endCallButton: EndCallButtonStrings; - errorBar: ErrorBarStrings; - holdButton: HoldButtonStrings; - imageOverlay: ImageOverlayStrings; - // (undocumented) - IncomingCallNotification: IncomingCallNotificationStrings; - meetingConferencePhoneInfo: MeetingConferencePhoneInfoModalStrings; - messageStatusIndicator: MessageStatusIndicatorStrings; - messageThread: MessageThreadStrings; - microphoneButton: MicrophoneButtonStrings; - notificationStack: NotificationStackStrings; - participantItem: ParticipantItemStrings; - participantsButton: ParticipantsButtonStrings; - raiseHandButton: RaiseHandButtonStrings; - reactionButton: ReactionButtonStrings; - screenShareButton: ScreenShareButtonStrings; - sendBox: SendBoxStrings; - spokenLanguages: SpokenLanguageStrings; - startCaptionsButton: StartCaptionsButtonStrings; - typingIndicator: TypingIndicatorStrings; - verticalGallery: VerticalGalleryStrings; - videoGallery: VideoGalleryStrings; - videoTile: VideoTileStrings; -} - -// @public -export const COMPOSITE_LOCALE_AR_SA: CompositeLocale; - -// @public -export const COMPOSITE_LOCALE_CS_CZ: CompositeLocale; - -// @public -export const COMPOSITE_LOCALE_CY_GB: CompositeLocale; - -// @public -export const COMPOSITE_LOCALE_DE_DE: CompositeLocale; - -// @public -export const COMPOSITE_LOCALE_EN_GB: CompositeLocale; - -// @public -export const COMPOSITE_LOCALE_EN_US: CompositeLocale; - -// @public -export const COMPOSITE_LOCALE_ES_ES: CompositeLocale; - -// @public -export const COMPOSITE_LOCALE_ES_MX: CompositeLocale; - -// @public -export const COMPOSITE_LOCALE_FI_FI: CompositeLocale; - -// @public -export const COMPOSITE_LOCALE_FR_CA: CompositeLocale; - -// @public -export const COMPOSITE_LOCALE_FR_FR: CompositeLocale; - -// @public -export const COMPOSITE_LOCALE_HE_IL: CompositeLocale; - -// @public -export const COMPOSITE_LOCALE_IT_IT: CompositeLocale; - -// @public -export const COMPOSITE_LOCALE_JA_JP: CompositeLocale; - -// @public -export const COMPOSITE_LOCALE_KO_KR: CompositeLocale; - -// @public -export const COMPOSITE_LOCALE_NB_NO: CompositeLocale; - -// @public -export const COMPOSITE_LOCALE_NL_NL: CompositeLocale; - -// @public -export const COMPOSITE_LOCALE_PL_PL: CompositeLocale; - -// @public -export const COMPOSITE_LOCALE_PT_BR: CompositeLocale; - -// @public -export const COMPOSITE_LOCALE_RU_RU: CompositeLocale; - -// @public -export const COMPOSITE_LOCALE_SV_SE: CompositeLocale; - -// @public -export const COMPOSITE_LOCALE_TR_TR: CompositeLocale; - -// @public -export const COMPOSITE_LOCALE_ZH_CN: CompositeLocale; - -// @public -export const COMPOSITE_LOCALE_ZH_TW: CompositeLocale; - -// @public -export const COMPOSITE_ONLY_ICONS: CompositeIcons; - -// @public -export type CompositeIcons = ChatCompositeIcons & CallCompositeIcons & CallWithChatCompositeIcons; - -// @public -export interface CompositeLocale { - component: ComponentLocale; - strings: CompositeStrings; -} - -// @public -export interface CompositeStrings { - call: CallCompositeStrings; - callWithChat: CallWithChatCompositeStrings; - chat: ChatCompositeStrings; -} - -// @public -export interface ConferencePhoneInfo { - city?: string; - conferenceId: string; - country?: string; - isTollFree: boolean; - phoneNumber: string; -} - -// @public -export interface ContentSystemMessage extends SystemMessageCommon { - // (undocumented) - content: string; - // (undocumented) - systemMessageType: 'content'; -} - -// @public -export const ControlBar: (props: ControlBarProps) => JSX.Element; - -// @public -export const ControlBarButton: (props: ControlBarButtonProps) => JSX.Element; - -// @public -export interface ControlBarButtonProps extends IButtonProps { - disableTooltip?: boolean; - labelKey?: string; - onRenderOffIcon?: IRenderFunction; - onRenderOnIcon?: IRenderFunction; - showLabel?: boolean; - strings?: ControlBarButtonStrings; - styles?: ControlBarButtonStyles; - tooltipId?: string; -} - -// @public -export interface ControlBarButtonStrings { - label?: string; - offLabel?: string; - onLabel?: string; - tooltipContent?: string; - tooltipDisabledContent?: string; - tooltipOffContent?: string; - tooltipOnContent?: string; -} - -// @public -export type ControlBarButtonStyles = IButtonStyles; - -// @public -export type ControlBarLayout = 'horizontal' | 'vertical' | 'dockedTop' | 'dockedBottom' | 'dockedLeft' | 'dockedRight' | 'floatingTop' | 'floatingBottom' | 'floatingLeft' | 'floatingRight'; - -// @public -export interface ControlBarProps { - children?: React_2.ReactNode; - layout?: ControlBarLayout; - styles?: BaseCustomStyles; -} - -// @public -export function createAzureCommunicationCallAdapter(args: AzureCommunicationCallAdapterArgs): Promise; - -// @public -export function createAzureCommunicationCallAdapter(args: AzureCommunicationOutboundCallAdapterArgs): Promise; - -// @public -export function createAzureCommunicationCallAdapterFromClient(callClient: StatefulCallClient, callAgent: CallAgent, targetCallees: StartCallIdentifier[], options?: AzureCommunicationCallAdapterOptions): Promise; - -// @public -export function createAzureCommunicationCallAdapterFromClient(callClient: StatefulCallClient, callAgent: CallAgent, locator: CallAdapterLocator, options?: AzureCommunicationCallAdapterOptions): Promise; - -// @public -export const createAzureCommunicationCallWithChatAdapter: ({ userId, displayName, credential, endpoint, locator, alternateCallerId, callAdapterOptions }: AzureCommunicationCallWithChatAdapterArgs) => Promise; - -// @public -export const createAzureCommunicationCallWithChatAdapterFromClients: ({ callClient, callAgent, callLocator, chatClient, chatThreadClient, callAdapterOptions }: AzureCommunicationCallWithChatAdapterFromClientArgs) => Promise; - -// @public -export const createAzureCommunicationChatAdapter: ({ endpoint: endpointUrl, userId, displayName, credential, threadId }: AzureCommunicationChatAdapterArgs) => Promise; - -// @public -export function createAzureCommunicationChatAdapterFromClient(chatClient: StatefulChatClient, chatThreadClient: ChatThreadClient): Promise; - -// @public -export type CreateDefaultCallingHandlers = (callClient: StatefulCallClient, callAgent: CallAgent | undefined, deviceManager: StatefulDeviceManager | undefined, call: Call | undefined, options?: CallingHandlersOptions) => CallingHandlers; - -// @public -export const createDefaultCallingHandlers: CreateDefaultCallingHandlers; - -// @public -export const createDefaultChatHandlers: (chatClient: StatefulChatClient, chatThreadClient: ChatThreadClient) => ChatHandlers; - -// @public -export const createDefaultTeamsCallingHandlers: (callClient: StatefulCallClient, callAgent?: TeamsCallAgent, deviceManager?: StatefulDeviceManager, call?: TeamsCall, options?: { - onResolveVideoBackgroundEffectsDependency?: () => Promise; - onResolveDeepNoiseSuppressionDependency?: () => Promise; -}) => TeamsCallingHandlers; - -// @public -export const createStatefulCallClient: (args: StatefulCallClientArgs, options?: StatefulCallClientOptions) => StatefulCallClient; - -// @public -export const createStatefulChatClient: (args: StatefulChatClientArgs, options?: StatefulChatClientOptions) => StatefulChatClient; - -// @public (undocumented) -export const createTeamsCallAdapter: (args: TeamsCallAdapterArgs) => Promise; - -// @public -export const createTeamsCallAdapterFromClient: (callClient: StatefulCallClient, callAgent: TeamsCallAgent, locator: CallAdapterLocator, options?: TeamsAdapterOptions) => Promise; - -// @public -export interface CreateVideoStreamViewResult { - view: { - updateScalingMode: (scalingMode: ViewScalingMode) => Promise; - }; -} - -// @public -export type CreateViewResult = { - renderer: VideoStreamRenderer; - view: VideoStreamRendererView; -}; - -// @public -export type CustomAvatarOptions = { - coinSize?: number; - hidePersonaDetails?: boolean; - initialsTextColor?: string; - noVideoAvailableAriaLabel?: string; - presence?: PersonaPresence; - size?: PersonaSize; - styles?: IStyleFunctionOrObject; - text?: string; - participantState?: ParticipantState; - showUnknownPersonaCoin?: boolean; -}; - -// @public -export type CustomCallControlButtonCallback = (args: CustomCallControlButtonCallbackArgs) => CustomCallControlButtonProps; - -// @public -export interface CustomCallControlButtonCallbackArgs { - displayType?: CallControlDisplayType; -} - -// @public -export type CustomCallControlButtonPlacement = 'primary' | 'overflow' | 'secondary'; - -// @public -export interface CustomCallControlButtonProps { - disabled?: boolean; - iconName?: string; - id?: string; - onItemClick?: () => void; - placement: CustomCallControlButtonPlacement; - showLabel?: boolean; - strings?: CustomCallControlButtonStrings; -} - -// @public -export interface CustomCallControlButtonStrings { - ariaDescription?: string; - ariaLabel?: string; - label?: string; - tooltipContent?: string; -} - -// @public -export interface CustomMessage extends MessageCommon { - // (undocumented) - content: string; - // (undocumented) - messageType: 'custom'; -} - -// @public -export const darkTheme: PartialTheme & CallingTheme; - -// @public -export type DeclarativeCallAgent = CallAgent & IncomingCallManagement; - -// @public -export type DeclarativeTeamsCallAgent = TeamsCallAgent & TeamsIncomingCallManagement; - -// @public -export type DeepNoiseSuppressionEffectDependency = { - deepNoiseSuppressionEffect: AudioEffectsStartConfig; -}; - -// @public -export const DEFAULT_COMPONENT_ICONS: { - ChatMessageOptions: React_2.JSX.Element; - ControlButtonCameraOff: React_2.JSX.Element; - ControlButtonCameraOn: React_2.JSX.Element; - ControlButtonEndCall: React_2.JSX.Element; - ControlButtonMicOff: React_2.JSX.Element; - ControlButtonMicOn: React_2.JSX.Element; - ControlButtonOptions: React_2.JSX.Element; - ControlButtonParticipants: React_2.JSX.Element; - ControlButtonParticipantsContextualMenuItem: React_2.JSX.Element; - ControlButtonScreenShareStart: React_2.JSX.Element; - ControlButtonScreenShareStop: React_2.JSX.Element; - ControlButtonRaiseHand: React_2.JSX.Element; - ControlButtonLowerHand: React_2.JSX.Element; - ControlButtonMicProhibited: React_2.JSX.Element; - ControlButtonMicProhibitedSmall: React_2.JSX.Element; - ControlButtonCameraProhibited: React_2.JSX.Element; - ControlButtonCameraProhibitedSmall: React_2.JSX.Element; - RaiseHandContextualMenuItem: React_2.JSX.Element; - LowerHandContextualMenuItem: React_2.JSX.Element; - ReactionButtonIcon: React_2.JSX.Element; - OpenAttachment: React_2.JSX.Element; - EditBoxCancel: React_2.JSX.Element; - EditBoxSubmit: React_2.JSX.Element; - ErrorBarCallCameraAccessDenied: React_2.JSX.Element; - ErrorBarCallCameraAlreadyInUse: React_2.JSX.Element; - ErrorBarCallLocalVideoFreeze: React_2.JSX.Element; - ErrorBarCallMacOsCameraAccessDenied: React_2.JSX.Element; - ErrorBarCallMacOsMicrophoneAccessDenied: React_2.JSX.Element; - ErrorBarCallMicrophoneAccessDenied: React_2.JSX.Element; - ErrorBarCallMicrophoneMutedBySystem: React_2.JSX.Element; - ErrorBarCallMicrophoneUnmutedBySystem: React_2.JSX.Element; - ErrorBarCallNetworkQualityLow: React_2.JSX.Element; - ErrorBarCallNoMicrophoneFound: React_2.JSX.Element; - ErrorBarCallNoSpeakerFound: React_2.JSX.Element; - ErrorBarClear: React_2.JSX.Element; - ErrorBarCallVideoRecoveredBySystem: React_2.JSX.Element; - ErrorBarCallVideoStoppedBySystem: React_2.JSX.Element; - ErrorBarMutedByRemoteParticipant: React_2.JSX.Element; - NotificationBarRecording: React_2.JSX.Element; - HorizontalGalleryLeftButton: React_2.JSX.Element; - HorizontalGalleryRightButton: React_2.JSX.Element; - MessageDelivered: React_2.JSX.Element; - MessageEdit: React_2.JSX.Element; - MessageFailed: React_2.JSX.Element; - MessageRemove: React_2.JSX.Element; - MessageResend: React_2.JSX.Element; - MessageSeen: React_2.JSX.Element; - MessageSending: React_2.JSX.Element; - OptionsCamera: React_2.JSX.Element; - OptionsMic: React_2.JSX.Element; - OptionsSpeaker: React_2.JSX.Element; - ParticipantItemMicOff: React_2.JSX.Element; - ParticipantItemOptions: React_2.JSX.Element; - ParticipantItemOptionsHovered: React_2.JSX.Element; - ParticipantItemScreenShareStart: React_2.JSX.Element; - ParticipantItemSpotlighted: React_2.JSX.Element; - HoldCallContextualMenuItem: React_2.JSX.Element; - HoldCallButton: React_2.JSX.Element; - ResumeCall: React_2.JSX.Element; - SendBoxSend: React_2.JSX.Element; - SendBoxSendHovered: React_2.JSX.Element; - VideoTileMicOff: React_2.JSX.Element; - VideoTileCameraOff: React_2.JSX.Element; - DialpadBackspace: React_2.JSX.Element; - VideoTilePinned: React_2.JSX.Element; - ParticipantItemPinned: React_2.JSX.Element; - VideoTileMoreOptions: React_2.JSX.Element; - VideoTileScaleFit: React_2.JSX.Element; - VideoTileScaleFill: React_2.JSX.Element; - PinParticipant: React_2.JSX.Element; - UnpinParticipant: React_2.JSX.Element; - SplitButtonPrimaryActionCameraOn: React_2.JSX.Element; - SplitButtonPrimaryActionCameraOff: React_2.JSX.Element; - SplitButtonPrimaryActionMicUnmuted: React_2.JSX.Element; - SplitButtonPrimaryActionMicMuted: React_2.JSX.Element; - VerticalGalleryLeftButton: React_2.JSX.Element; - VerticalGalleryRightButton: React_2.JSX.Element; - ControlButtonVideoEffectsOption: React_2.JSX.Element; - ConfigurationScreenVideoEffectsButton: React_2.JSX.Element; - CaptionsIcon: React_2.JSX.Element; - CaptionsOffIcon: React_2.JSX.Element; - CaptionsSettingsIcon: React_2.JSX.Element; - ChangeSpokenLanguageIcon: React_2.JSX.Element; - ChangeCaptionLanguageIcon: React_2.JSX.Element; - ContextMenuCameraIcon: React_2.JSX.Element; - ContextMenuMicIcon: React_2.JSX.Element; - ContextMenuSpeakerIcon: React_2.JSX.Element; - ContextMenuRemoveParticipant: React_2.JSX.Element; - SurveyStarIcon: React_2.JSX.Element; - SurveyStarIconFilled: React_2.JSX.Element; - StartSpotlightContextualMenuItem: React_2.JSX.Element; - StopSpotlightContextualMenuItem: React_2.JSX.Element; - VideoTileSpotlighted: React_2.JSX.Element; - ContextualMenuMicMutedIcon: React_2.JSX.Element; - IncomingCallNotificationRejectIcon: React_2.JSX.Element; - IncomingCallNotificationAcceptIcon: React_2.JSX.Element; - IncomingCallNotificationAcceptWithVideoIcon: React_2.JSX.Element; -}; - -// @public -export 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; - TogetherModeLayout?: 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_2.JSX.Element; - ControlButtonParticipantsContextualMenuItem: React_2.JSX.Element; - OpenAttachment: React_2.JSX.Element; - ErrorBarCallVideoRecoveredBySystem: React_2.JSX.Element; - ErrorBarCallVideoStoppedBySystem: React_2.JSX.Element; - ErrorBarMutedByRemoteParticipant: React_2.JSX.Element; - NotificationBarRecording: React_2.JSX.Element; - MessageResend: React_2.JSX.Element; - ParticipantItemSpotlighted: React_2.JSX.Element; - HoldCallContextualMenuItem: React_2.JSX.Element; - HoldCallButton: React_2.JSX.Element; - ResumeCall: React_2.JSX.Element; - VideoTileCameraOff: React_2.JSX.Element; - DialpadBackspace: React_2.JSX.Element; - VideoTilePinned: React_2.JSX.Element; - ParticipantItemPinned: React_2.JSX.Element; - VideoTileMoreOptions: React_2.JSX.Element; - VideoTileScaleFit: React_2.JSX.Element; - VideoTileScaleFill: React_2.JSX.Element; - PinParticipant: React_2.JSX.Element; - UnpinParticipant: React_2.JSX.Element; - SplitButtonPrimaryActionCameraOn: React_2.JSX.Element; - SplitButtonPrimaryActionCameraOff: React_2.JSX.Element; - SplitButtonPrimaryActionMicUnmuted: React_2.JSX.Element; - SplitButtonPrimaryActionMicMuted: React_2.JSX.Element; - VerticalGalleryLeftButton: React_2.JSX.Element; - VerticalGalleryRightButton: React_2.JSX.Element; - ControlButtonVideoEffectsOption: React_2.JSX.Element; - ConfigurationScreenVideoEffectsButton: React_2.JSX.Element; - CaptionsIcon: React_2.JSX.Element; - CaptionsOffIcon: React_2.JSX.Element; - CaptionsSettingsIcon: React_2.JSX.Element; - ChangeSpokenLanguageIcon: React_2.JSX.Element; - ChangeCaptionLanguageIcon: React_2.JSX.Element; - ContextMenuCameraIcon: React_2.JSX.Element; - ContextMenuMicIcon: React_2.JSX.Element; - ContextMenuSpeakerIcon: React_2.JSX.Element; - ContextMenuRemoveParticipant: React_2.JSX.Element; - SurveyStarIcon: React_2.JSX.Element; - SurveyStarIconFilled: React_2.JSX.Element; - StartSpotlightContextualMenuItem: React_2.JSX.Element; - StopSpotlightContextualMenuItem: React_2.JSX.Element; - VideoTileSpotlighted: React_2.JSX.Element; - ContextualMenuMicMutedIcon: React_2.JSX.Element; - IncomingCallNotificationRejectIcon: React_2.JSX.Element; - IncomingCallNotificationAcceptIcon: React_2.JSX.Element; - IncomingCallNotificationAcceptWithVideoIcon: React_2.JSX.Element; -}; - -// @public -export type DeviceManagerState = { - isSpeakerSelectionAvailable: boolean; - selectedMicrophone?: AudioDeviceInfo; - selectedSpeaker?: AudioDeviceInfo; - selectedCamera?: VideoDeviceInfo; - cameras: VideoDeviceInfo[]; - microphones: AudioDeviceInfo[]; - speakers: AudioDeviceInfo[]; - deviceAccess?: DeviceAccess; - unparentedViews: LocalVideoStreamState[]; -}; - -// @public -export const DevicesButton: (props: DevicesButtonProps) => JSX.Element; - -// @public -export interface DevicesButtonContextualMenuStyles extends IContextualMenuStyles { - menuItemStyles?: IContextualMenuItemStyles; -} - -// @public -export interface DevicesButtonProps extends ControlBarButtonProps { - cameras?: OptionsDevice[]; - microphones?: OptionsDevice[]; - onSelectCamera?: (device: OptionsDevice) => Promise; - onSelectMicrophone?: (device: OptionsDevice) => Promise; - onSelectSpeaker?: (device: OptionsDevice) => Promise; - selectedCamera?: OptionsDevice; - selectedMicrophone?: OptionsDevice; - selectedSpeaker?: OptionsDevice; - speakers?: OptionsDevice[]; - strings?: Partial; - styles?: DevicesButtonStyles; -} - -// @public -export type DevicesButtonSelector = (state: CallClientState, props: CallingBaseSelectorProps) => { - microphones: AudioDeviceInfo[]; - speakers: AudioDeviceInfo[]; - cameras: VideoDeviceInfo[]; - selectedMicrophone?: AudioDeviceInfo; - selectedSpeaker?: AudioDeviceInfo; - selectedCamera?: VideoDeviceInfo; -}; - -// @public -export interface DevicesButtonStrings { - cameraMenuTitle: string; - cameraMenuTooltip: string; - label: string; - microphoneMenuTitle: string; - microphoneMenuTooltip: string; - speakerMenuTitle: string; - speakerMenuTooltip: string; - tooltipContent?: string; -} - -// @public -export interface DevicesButtonStyles extends ControlBarButtonStyles { - menuStyles?: Partial; -} - -// @public -export type DiagnosticChangedEventListner = (event: MediaDiagnosticChangedEvent | NetworkDiagnosticChangedEvent) => void; - -// @public -export interface DiagnosticsCallFeatureState { - media: MediaDiagnosticsState; - network: NetworkDiagnosticsState; -} - -// @public -export const Dialpad: (props: DialpadProps) => JSX.Element; - -// @public -export type DialpadMode = 'dtmf' | 'dialer'; - -// @public -export interface DialpadProps { - dialpadMode?: DialpadMode; - disableDtmfPlayback?: boolean; - dtmfAudioContext?: AudioContext; - longPressTrigger?: LongPressTrigger; - onChange?: (input: string) => void; - onClickDialpadButton?: (buttonValue: string, buttonIndex: number) => void; - onSendDtmfTone?: (dtmfTone: DtmfTone) => Promise; - showDeleteButton?: boolean; - // (undocumented) - strings?: DialpadStrings; - styles?: DialpadStyles; - textFieldValue?: string; -} - -// @public -export interface DialpadStrings { - // (undocumented) - deleteButtonAriaLabel?: string; - // (undocumented) - placeholderText: string; -} - -// @public -export interface DialpadStyles { - // (undocumented) - button?: IButtonStyles; - // (undocumented) - deleteIcon?: IButtonStyles; - // (undocumented) - digit?: IStyle; - // (undocumented) - letter?: IStyle; - // (undocumented) - root?: IStyle; - // (undocumented) - textField?: Partial; -} - -// @public -export type DisplayNameChangedListener = (event: { - participantId: CommunicationIdentifierKind; - displayName: string; -}) => void; - -// @public -interface Disposable_2 { - dispose(): void; -} -export { Disposable_2 as Disposable } - -// @public -export interface DtmfDialPadOptions { - // (undocumented) - dialerBehavior?: 'autoShow' | 'alwaysShow' | 'alwaysHide'; -} - -// @public -export type DtmfTone = 'A' | 'B' | 'C' | 'D' | 'Flash' | 'Num0' | 'Num1' | 'Num2' | 'Num3' | 'Num4' | 'Num5' | 'Num6' | 'Num7' | 'Num8' | 'Num9' | 'Pound' | 'Star'; - -// @public -export type EmptySelector = () => Record; - -// @public -export const EndCallButton: (props: EndCallButtonProps) => JSX.Element; - -// @public -export interface EndCallButtonProps extends ControlBarButtonProps { - enableEndCallMenu?: boolean; - onHangUp?: (forEveryone?: boolean) => Promise; - strings?: EndCallButtonStrings; -} - -// @public -export interface EndCallButtonStrings { - endCallOption?: string; - label: string; - leaveOption?: string; - tooltipContent?: string; -} - -// @public -export const ErrorBar: (props: ErrorBarProps) => JSX.Element; - -// @public -export interface ErrorBarProps extends IMessageBarProps { - activeErrorMessages: ActiveErrorMessage[]; - ignorePremountErrors?: boolean; - onDismissError?: (dismissedError: ActiveErrorMessage) => void; - strings?: ErrorBarStrings; -} - -// @public -export interface ErrorBarStrings { - accessDenied: string; - callCameraAccessDenied: string; - callCameraAccessDeniedSafari: string; - callCameraAlreadyInUse: string; - callLocalVideoFreeze: string; - callMacOsCameraAccessDenied: string; - callMacOsMicrophoneAccessDenied: string; - callMacOsScreenShareAccessDenied: string; - callMicrophoneAccessDenied: string; - callMicrophoneAccessDeniedSafari: string; - callMicrophoneMutedBySystem: string; - callMicrophoneUnmutedBySystem: string; - callNetworkQualityLow: string; - callNoMicrophoneFound: string; - callNoSpeakerFound: string; - callVideoRecoveredBySystem: string; - callVideoStoppedBySystem: string; - cameraFrozenForRemoteParticipants?: string; - dismissButtonAriaLabel?: string; - failedToJoinCallGeneric?: string; - failedToJoinCallInvalidMeetingLink?: string; - mutedByRemoteParticipant: string; - muteGeneric: string; - sendMessageGeneric: string; - sendMessageNotInChatThread: string; - startScreenShareGeneric: string; - startSpotlightWhileMaxParticipantsAreSpotlighted: string; - startVideoGeneric: string; - stopScreenShareGeneric: string; - stopVideoGeneric: string; - teamsMeetingCallNetworkQualityLow: string; - unableToReachChatService: string; - unableToStartVideoEffect?: string; - unmuteGeneric: string; - userNotInChatThread: string; -} - -// @public -export type ErrorType = keyof ErrorBarStrings; - -// @public -export const FluentThemeProvider: (props: FluentThemeProviderProps) => JSX.Element; - -// @public -export interface FluentThemeProviderProps { - children: React_2.ReactNode; - fluentTheme?: PartialTheme | Theme; - rootStyle?: React_2.CSSProperties | undefined; - rtl?: boolean; -} - -// @public -export const fromFlatCommunicationIdentifier: (id: string) => CommunicationIdentifier; - -// @public -export type GetCallingSelector JSX.Element | undefined> = AreEqual extends true ? VideoGallerySelector : AreEqual extends true ? DevicesButtonSelector : AreEqual extends true ? MicrophoneButtonSelector : AreEqual extends true ? CameraButtonSelector : AreEqual extends true ? ScreenShareButtonSelector : AreEqual extends true ? ParticipantListSelector : AreEqual extends true ? ParticipantsButtonSelector : AreEqual extends true ? EmptySelector : AreEqual extends true ? CallErrorBarSelector : AreEqual extends true ? EmptySelector : AreEqual extends true ? HoldButtonSelector : AreEqual extends true ? NotificationStackSelector : AreEqual extends true ? IncomingCallStackSelector : AreEqual extends true ? RaiseHandButtonSelector : AreEqual extends true ? CaptionSettingsSelector : AreEqual extends true ? CaptionsBannerSelector : AreEqual extends true ? StartCaptionsButtonSelector : AreEqual extends true ? EmptySelector : undefined; - -// @public -export const getCallingSelector: JSX.Element | undefined>(component: Component) => GetCallingSelector; - -// @public -export type GetChatSelector JSX.Element | undefined> = AreEqual extends true ? SendBoxSelector : AreEqual extends true ? MessageThreadSelector : AreEqual extends true ? TypingIndicatorSelector : AreEqual extends true ? ChatParticipantListSelector : AreEqual extends true ? ChatErrorBarSelector : undefined; - -// @public -export const getChatSelector: JSX.Element | undefined>(component: Component) => GetChatSelector; - -// @public -export const GridLayout: (props: GridLayoutProps) => JSX.Element; - -// @public -export interface GridLayoutProps { - // (undocumented) - children: React_2.ReactNode; - styles?: BaseCustomStyles; -} - -// @public -export interface GridLayoutStyles extends BaseCustomStyles { - children?: IStyle; -} - -// @public -export const HoldButton: (props: HoldButtonProps) => JSX.Element; - -// @public (undocumented) -export interface HoldButtonProps extends ControlBarButtonProps { - onToggleHold: () => Promise; - strings?: HoldButtonStrings; -} - -// @public -export type HoldButtonSelector = (state: CallClientState, props: CallingBaseSelectorProps) => { - checked: boolean; -}; - -// @public -export interface HoldButtonStrings { - offLabel?: string; - onLabel?: string; - tooltipOffContent?: string; - tooltipOnContent?: string; -} - -// @public -export interface HorizontalGalleryStyles extends BaseCustomStyles { - children?: IStyle; - nextButton?: IStyle; - previousButton?: IStyle; -} - -// @internal -export const _IdentifierProvider: (props: _IdentifierProviderProps) => JSX.Element; - -// @internal -export interface _IdentifierProviderProps { - // (undocumented) - children: React_2.ReactNode; - // (undocumented) - identifiers?: _Identifiers; -} - -// @internal -export interface _Identifiers { - horizontalGalleryVideoTile: string; - messageContent: string; - messageTimestamp: string; - overflowGalleryLeftNavButton: string; - overflowGalleryRightNavButton: string; - participantButtonPeopleMenuItem: string; - participantItemMenuButton: string; - participantList: string; - participantListPeopleButton: string; - participantListRemoveParticipantButton: string; - sendboxTextField: string; - typingIndicator: string; - verticalGalleryPageCounter: string; - verticalGalleryVideoTile: string; - videoGallery: string; - videoTile: string; -} - -// @public -export const ImageOverlay: (props: ImageOverlayProps) => JSX.Element; - -// @public -export interface ImageOverlayProps { - altText?: string; - imageSrc: string; - isOpen: boolean; - onDismiss: () => void; - onDownloadButtonClicked?: (imageSrc: string) => void; - title?: string; - titleIcon?: JSX.Element; -} - -// @public -export interface ImageOverlayStrings { - dismissButtonAriaLabel: string; - downloadButtonLabel: string; - overlayVisibleMessage: string; -} - -// @public -export type IncomingCallManagement = { - incomingCalls: ReadonlyArray; -}; - -// @public -export const IncomingCallNotification: (props: IncomingCallNotificationProps) => JSX.Element; - -// @public -export interface IncomingCallNotificationProps { - acceptOptions: { - showAcceptWithVideo: boolean; - }; - alertText?: string; - avatarImage?: string; - callerName?: string; - onAcceptWithAudio: () => void; - onAcceptWithVideo: () => void; - onDismiss?: () => void; - onReject: () => void; - onRenderAvatar?: () => JSX.Element; - personaSize?: number; - strings?: IncomingCallNotificationStrings; - styles?: IncomingCallNotificationStyles; -} - -// @public -export interface IncomingCallNotificationStrings { - incomingCallNoticicationAcceptWithAudioAriaLabel?: string; - incomingCallNoticicationAcceptWithVideoAriaLabel?: string; - incomingCallNoticicationRejectAriaLabel?: string; - incomingCallNotificationAccceptWithVideoButtonLabel?: string; - incomingCallNotificationAcceptButtonLabel?: string; - incomingCallNotificationDismissButtonAriaLabel?: string; - incomingCallNotificationPlaceholderAlert?: string; - incomingCallNotificationPlaceholderId?: string; - incomingCallNotificationRejectButtonLabel?: string; -} - -// @public -export interface IncomingCallNotificationStyles { - acceptButton?: IButtonStyles; - avatarContainer?: IStackStyles; - rejectButton?: IButtonStyles; - root?: IStackStyles; -} - -// @public -export const IncomingCallStack: (props: IncomingCallStackProps) => JSX.Element; - -// @public -export interface IncomingCallStackCall { - callerInfo: { - displayName?: string; - }; - id: string; - videoAvailable: boolean; -} - -// @public -export interface IncomingCallStackProps { - activeIncomingCalls: IncomingCallStackCall[]; - onAcceptCall: (incomingCallId: string, useVideo?: boolean) => void; - onRejectCall: (incomingCallId: string) => void; - removedIncomingCalls: IncomingCallStackCall[]; - strings?: IncomingCallNotificationStrings; - styles?: IncomingCallNotificationStyles; - tabIndex?: number; -} - -// @public -export type IncomingCallStackSelector = (state: CallClientState) => { - activeIncomingCalls: IncomingCallStackCall[]; - removedIncomingCalls: IncomingCallStackCall[]; -}; - -// @public -export interface IncomingCallState { - callEndReason?: CallEndReason; - callerInfo: CallerInfo; - endTime?: Date; - id: string; - info: CallInfoState; - startTime: Date; -} - -// @public -export interface InlineImage { - imageAttributes: React_2.ImgHTMLAttributes; - messageId: string; -} - -// @public -export interface InlineImageOptions { - onRenderInlineImage?: (inlineImage: InlineImage, defaultOnRender: (inlineImage: InlineImage) => JSX.Element) => JSX.Element; -} - -// @public -export type IsCaptionLanguageChangedListener = (event: { - activeCaptionLanguage: string; -}) => void; - -// @public -export type IsCaptionsActiveChangedListener = (event: { - isActive: boolean; -}) => void; - -// @public -export type IsLocalScreenSharingActiveChangedListener = (event: { - isScreenSharingOn: boolean; -}) => void; - -// @public -export type IsMutedChangedListener = (event: { - identifier: CommunicationIdentifierKind; - isMuted: boolean; -}) => void; - -// @public -export type IsSpeakingChangedListener = (event: { - identifier: CommunicationIdentifierKind; - isSpeaking: boolean; -}) => void; - -// @public -export type IsSpokenLanguageChangedListener = (event: { - activeSpokenLanguage: string; -}) => void; - -// @public -export interface JoinCallOptions { - cameraOn?: boolean | 'keep'; - microphoneOn?: boolean | 'keep'; -} - -// @public -export interface JumpToNewMessageButtonProps { - onClick: () => void; - text: string; -} - -// @public -export const lightTheme: PartialTheme & CallingTheme; - -// @public -export const loadCallComposite: (loaderArgs: CallCompositeLoaderProps, htmlElement: HTMLElement) => Promise; - -// @public -export const loadCallWithChatComposite: (loaderArgs: CallWithChatCompositeLoaderProps, htmlElement: HTMLElement) => Promise; - -// @public -export const loadChatComposite: (loaderArgs: ChatCompositeLoaderProps, htmlElement: HTMLElement) => Promise; - -// @public -export type LoadingState = 'loading' | 'none' | 'reconnecting'; - -// @public -export const loadOutboundCallComposite: (loaderArgs: OutboundCallCompositeLoaderProps, htmlElement: HTMLElement) => Promise; - -// @public -export const LocalizationProvider: (props: LocalizationProviderProps) => JSX.Element; - -// @public -export type LocalizationProviderProps = { - locale: ComponentLocale; - children: React_2.ReactNode; -}; - -// @public (undocumented) -export interface LocalVideoCameraCycleButtonProps { - ariaDescription?: string; - cameras?: OptionsDevice[]; - label?: string; - onSelectCamera?: (device: OptionsDevice) => Promise; - selectedCamera?: OptionsDevice; - size?: 'small' | 'large'; -} - -// @public -export interface LocalVideoStreamState { - mediaStreamType: MediaStreamType; - source: VideoDeviceInfo; - videoEffects?: LocalVideoStreamVideoEffectsState; - view?: VideoStreamRendererViewState; -} - -// @public -export interface LocalVideoStreamVideoEffectsState { - activeEffects?: VideoEffectName[]; -} - -// @public -export interface LocalVideoTileOptions { - position?: 'grid' | 'floating'; -} - -// @public -export type LocalVideoTileSize = '9:16' | '16:9' | 'hidden' | 'followDeviceOrientation'; - -// @public -export type LongPressTrigger = 'mouseAndTouch' | 'touch'; - -// @public -export type MediaAccess = { - isAudioPermitted: boolean; - isVideoPermitted: boolean; -}; - -// @public -export interface MediaAccessState { - isAudioPermitted: boolean; - isVideoPermitted: boolean; -} - -// @public -export type MediaDiagnosticChangedEvent = MediaDiagnosticChangedEventArgs & { - type: 'media'; -}; - -// @public -export interface MediaDiagnosticsState { - // (undocumented) - latest: LatestMediaDiagnostics; -} - -// @public -export interface MeetingConferencePhoneInfoModalStrings { - meetingConferencePhoneInfoModalDialIn: string; - meetingConferencePhoneInfoModalMeetingId: string; - meetingConferencePhoneInfoModalNoPhoneAvailable: string; - meetingConferencePhoneInfoModalTitle: string; - meetingConferencePhoneInfoModalToll: string; - meetingConferencePhoneInfoModalTollFree: string; - meetingConferencePhoneInfoModalTollGeoData: string; - meetingConferencePhoneInfoModalWait: string; -} - -// @public -export type Message = ChatMessage | SystemMessage | CustomMessage; - -// @public -export type MessageAttachedStatus = 'bottom' | 'top' | boolean; - -// @public -export interface MessageCommon { - // (undocumented) - createdOn: Date; - // (undocumented) - messageId: string; -} - -// @public -export type MessageContentType = 'text' | 'html' | 'richtext/html' | 'unknown'; - -// @public -export type MessageDeletedListener = MessageReceivedListener; - -// @public -export type MessageEditedListener = MessageReceivedListener; - -// @public -export type MessageProps = { - message: Message; - strings: MessageThreadStrings; - messageContainerStyle?: ComponentSlotStyle; - showDate?: boolean; - disableEditing?: boolean; - onUpdateMessage?: UpdateMessageCallback; - onCancelEditMessage?: CancelEditCallback; - onDeleteMessage?: (messageId: string) => Promise; - onSendMessage?: (content: string) => Promise; -}; - -// @public -export type MessageReadListener = (event: { - message: ChatMessage_2; - readBy: CommunicationUserKind; -}) => void; - -// @public -export type MessageReceivedListener = (event: { - message: ChatMessage_2; -}) => void; - -// @public -export type MessageRenderer = (props: MessageProps) => JSX.Element; - -// @public -export type MessageSentListener = MessageReceivedListener; - -// @public -export type MessageStatus = 'delivered' | 'sending' | 'seen' | 'failed'; - -// @public -export const MessageStatusIndicator: (props: MessageStatusIndicatorProps) => JSX.Element; - -// @public -export interface MessageStatusIndicatorProps { - // (undocumented) - onToggleToolTip?: (isToggled: boolean) => void; - // (undocumented) - readCount?: number; - remoteParticipantsCount?: number; - status?: MessageStatus; - strings?: MessageStatusIndicatorStrings; - styles?: BaseCustomStyles; -} - -// @public -export interface MessageStatusIndicatorStrings { - deliveredAriaLabel?: string; - deliveredTooltipText: string; - failedToSendAriaLabel?: string; - failedToSendTooltipText: string; - readByTooltipText?: string; - seenAriaLabel?: string; - seenTooltipText: string; - sendingAriaLabel?: string; - sendingTooltipText: string; -} - -// @public -export const MessageThread: (props: MessageThreadProps) => JSX.Element; - -// @public -export type MessageThreadProps = { - userId: string; - messages: (ChatMessage | SystemMessage | CustomMessage)[]; - participantCount?: number; - readReceiptsBySenderId?: ReadReceiptsBySenderId; - styles?: MessageThreadStyles; - disableJumpToNewMessageButton?: boolean; - showMessageDate?: boolean; - showMessageStatus?: boolean; - numberOfChatMessagesToReload?: number; - onMessageSeen?: (messageId: string) => Promise; - onRenderMessageStatus?: (messageStatusIndicatorProps: MessageStatusIndicatorProps) => JSX.Element | null; - onRenderAvatar?: OnRenderAvatarCallback; - onRenderJumpToNewMessageButton?: (newMessageButtonProps: JumpToNewMessageButtonProps) => JSX.Element; - onLoadPreviousChatMessages?: (messagesToLoad: number) => Promise; - onRenderMessage?: (messageProps: MessageProps, messageRenderer?: MessageRenderer) => JSX.Element; - onUpdateMessage?: UpdateMessageCallback; - onCancelEditMessage?: CancelEditCallback; - onDeleteMessage?: (messageId: string) => Promise; - onSendMessage?: (content: string) => Promise; - disableEditing?: boolean; - strings?: Partial; - inlineImageOptions?: InlineImageOptions; -}; - -// @public -export type MessageThreadSelector = (state: ChatClientState, props: ChatBaseSelectorProps) => { - userId: string; - showMessageStatus: boolean; - messages: Message[]; -}; - -// @public -export interface MessageThreadStrings { - actionMenuMoreOptions?: string; - attachmentCardGroupMessage: string; - editBoxCancelButton: string; - editBoxPlaceholderText: string; - editBoxSubmitButton: string; - editBoxTextLimit: string; - editedTag: string; - editMessage: string; - failToSendTag?: string; - friday: string; - liveAuthorIntro: string; - messageContentAriaText: string; - messageContentMineAriaText: string; - messageDeletedAnnouncementAriaLabel: string; - messageReadCount?: string; - monday: string; - newMessagesIndicator: string; - noDisplayNameSub: string; - openAttachment: string; - participantJoined: string; - participantLeft: string; - removeMessage: string; - resendMessage?: string; - saturday: string; - sunday: string; - thursday: string; - tuesday: string; - wednesday: string; - yesterday: string; -} - -// @public -export interface MessageThreadStyles extends BaseCustomStyles { - chatContainer?: ComponentSlotStyle; - chatItemMessageContainer?: ComponentSlotStyle; - chatMessageContainer?: ComponentSlotStyle; - failedMyChatMessageContainer?: ComponentSlotStyle; - loadPreviousMessagesButtonContainer?: IStyle; - messageStatusContainer?: (mine: boolean) => IStyle; - myChatItemMessageContainer?: ComponentSlotStyle; - myChatMessageContainer?: ComponentSlotStyle; - newMessageButtonContainer?: IStyle; - systemMessageContainer?: ComponentSlotStyle; -} - -// @public -export const MicrophoneButton: (props: MicrophoneButtonProps) => JSX.Element; - -// @public -export interface MicrophoneButtonContextualMenuStyles extends IContextualMenuStyles { - menuItemStyles?: IContextualMenuItemStyles; -} - -// @public -export interface MicrophoneButtonProps extends ControlBarButtonProps { - enableDeviceSelectionMenu?: boolean; - isDeepNoiseSuppressionOn?: boolean; - microphones?: OptionsDevice[]; - onClickNoiseSuppression?: () => void; - onSelectMicrophone?: (device: OptionsDevice) => Promise; - onSelectSpeaker?: (device: OptionsDevice) => Promise; - onToggleMicrophone?: () => Promise; - selectedMicrophone?: OptionsDevice; - selectedSpeaker?: OptionsDevice; - showNoiseSuppressionButton?: boolean; - speakers?: OptionsDevice[]; - strings?: Partial; - styles?: Partial; -} - -// @public -export type MicrophoneButtonSelector = (state: CallClientState, props: CallingBaseSelectorProps) => { - disabled: boolean; - checked: boolean; - microphones: AudioDeviceInfo[]; - speakers: AudioDeviceInfo[]; - selectedMicrophone?: AudioDeviceInfo; - selectedSpeaker?: AudioDeviceInfo; -}; - -// @public -export interface MicrophoneButtonStrings { - deepNoiseSuppressionOffAnnouncement?: string; - deepNoiseSuppressionOnAnnouncement?: string; - deepNoiseSuppressionTitle?: string; - microphoneActionTurnedOffAnnouncement?: string; - microphoneActionTurnedOnAnnouncement?: string; - microphoneAriaDescription?: string; - microphoneButtonSplitRoleDescription?: string; - microphoneMenuTitle?: string; - microphoneMenuTooltip?: string; - microphonePrimaryActionSplitButtonTitle?: string; - offLabel: string; - offSplitButtonAriaLabel?: string; - offSplitButtonMicrophonePrimaryAction?: string; - onLabel: string; - onSplitButtonAriaLabel?: string; - onSplitButtonMicrophonePrimaryAction?: string; - speakerMenuTitle?: string; - speakerMenuTooltip?: string; - tooltipDisabledContent?: string; - tooltipOffContent?: string; - tooltipOnContent?: string; -} - -// @public -export interface MicrophoneButtonStyles extends ControlBarButtonStyles { - menuStyles?: Partial; -} - -// @public -export type NetworkDiagnosticChangedEvent = NetworkDiagnosticChangedEventArgs & { - type: 'network'; -}; - -// @public -export interface NetworkDiagnosticsState { - // (undocumented) - latest: LatestNetworkDiagnostics; -} - -// @public -const Notification_2: (props: NotificationProps) => JSX.Element; -export { Notification_2 as Notification } - -// @public -export interface NotificationProps { - ariaLive?: 'assertive' | 'off' | 'polite'; - autoDismiss?: boolean; - notificationIconProps?: IIconProps; - notificationStrings?: NotificationStrings; - onClickLink?: () => void; - onClickPrimaryButton?: () => void; - onClickSecondaryButton?: () => void; - onDismiss?: () => void; - role?: 'alert' | 'status' | 'presentation' | 'none'; - showStackedEffect?: boolean; - styles?: NotificationStyles; -} - -// @public -export const NotificationStack: (props: NotificationStackProps) => JSX.Element; - -// @public -export interface NotificationStackProps { - activeNotifications: ActiveNotification[]; - ignorePremountNotifications?: boolean; - maxNotificationsToShow?: number; - onDismissNotification?: (dismissedNotification: ActiveNotification) => void; - strings?: NotificationStackStrings; -} - -// @public -export type NotificationStackSelector = (state: CallClientState, props: CallingBaseSelectorProps) => { - activeErrorMessages: ActiveNotification[]; - activeNotifications: ActiveNotification[]; -}; - -// @public -export interface NotificationStackStrings { - callCameraAccessDenied?: NotificationStrings; - callCameraAccessDeniedSafari?: NotificationStrings; - callCameraAlreadyInUse?: NotificationStrings; - callLocalVideoFreeze?: NotificationStrings; - callMacOsCameraAccessDenied?: NotificationStrings; - callMacOsMicrophoneAccessDenied?: NotificationStrings; - callMacOsScreenShareAccessDenied?: NotificationStrings; - callMicrophoneAccessDenied?: NotificationStrings; - callMicrophoneAccessDeniedSafari?: NotificationStrings; - callMicrophoneMutedBySystem?: NotificationStrings; - callMicrophoneUnmutedBySystem?: NotificationStrings; - callNetworkQualityLow?: NotificationStrings; - callNoMicrophoneFound?: NotificationStrings; - callNoSpeakerFound?: NotificationStrings; - callVideoRecoveredBySystem?: NotificationStrings; - callVideoStoppedBySystem?: NotificationStrings; - cameraFrozenForRemoteParticipants?: NotificationStrings; - capabilityTurnVideoOnAbsent?: NotificationStrings; - capabilityTurnVideoOnPresent?: NotificationStrings; - capabilityUnmuteMicAbsent?: NotificationStrings; - capabilityUnmuteMicPresent?: NotificationStrings; - dismissButtonAriaLabel?: NotificationStrings; - failedToJoinCallGeneric?: NotificationStrings; - failedToJoinCallInvalidMeetingLink?: NotificationStrings; - mutedByRemoteParticipant?: NotificationStrings; - muteGeneric?: NotificationStrings; - recordingAndTranscriptionStarted?: NotificationStrings; - recordingAndTranscriptionStopped?: NotificationStrings; - recordingStarted?: NotificationStrings; - recordingStopped?: NotificationStrings; - recordingStoppedStillTranscribing?: NotificationStrings; - speakingWhileMuted?: NotificationStrings; - startScreenShareGeneric?: NotificationStrings; - startSpotlightWhileMaxParticipantsAreSpotlighted?: NotificationStrings; - startVideoGeneric?: NotificationStrings; - stopScreenShareGeneric?: NotificationStrings; - stopVideoGeneric?: NotificationStrings; - teamsMeetingCallNetworkQualityLow?: NotificationStrings; - transcriptionStarted?: NotificationStrings; - transcriptionStopped?: NotificationStrings; - transcriptionStoppedStillRecording?: NotificationStrings; - unableToStartVideoEffect?: NotificationStrings; - unmuteGeneric?: NotificationStrings; -} - -// @public -export interface NotificationStrings { - dismissButtonAriaLabel?: string; - linkLabel?: string; - message?: string; - primaryButtonLabel?: string; - secondaryButtonLabel?: string; - title: string; -} - -// @public -export interface NotificationStyles { - content?: IStackStyles; - icon?: IIconStyles; - link?: IStackStyles; - primaryButton?: IButtonStyles; - root?: IStackStyles; - secondaryButton?: IButtonStyles; - title?: IStackStyles; -} - -// @public (undocumented) -export type NotificationTarget = 'assignedBreakoutRoomOpened' | 'assignedBreakoutRoomOpenedPromptJoin' | 'assignedBreakoutRoomChanged' | 'breakoutRoomJoined' | 'breakoutRoomClosingSoon' | 'capabilityTurnVideoOnPresent' | 'capabilityTurnVideoOnAbsent' | 'capabilityUnmuteMicPresent' | 'capabilityUnmuteMicAbsent'; - -// @public -export type NotificationType = keyof NotificationStackStrings; - -// @public -export type OnFetchProfileCallback = (userId: string, defaultProfile?: Profile) => Promise; - -// @public -export type OnRenderAvatarCallback = ( -userId?: string, options?: CustomAvatarOptions, -defaultOnRender?: (props: CustomAvatarOptions) => JSX.Element) => JSX.Element | undefined; - -// @public -export const onResolveDeepNoiseSuppressionDependency: () => Promise; - -// @public -export const onResolveDeepNoiseSuppressionDependencyLazy: () => Promise; - -// @public -export const onResolveVideoEffectDependency: () => Promise; - -// @public -export const onResolveVideoEffectDependencyLazy: () => Promise; - -// @public -export interface OptimalVideoCountFeatureState { - maxRemoteVideoStreams: number; -} - -// @public -export interface OptionsDevice { - id: string; - name: string; -} - -// @public -export type OutboundCallCompositeLoaderProps = { - userId: CommunicationUserIdentifier; - credential: CommunicationTokenCredential; - displayName: string; - targetCallees: string[] | StartCallIdentifier[]; - callAdapterOptions?: AzureCommunicationCallAdapterOptions; - callCompositeOptions?: CallCompositeOptions; -}; - -// @public -export type OverflowGalleryPosition = 'horizontalBottom' | 'verticalRight' | 'horizontalTop'; - -// @public -export interface ParticipantAddedSystemMessage extends SystemMessageCommon { - // (undocumented) - participants: CommunicationParticipant[]; - // (undocumented) - systemMessageType: 'participantAdded'; -} - -// @public -export const ParticipantItem: (props: ParticipantItemProps) => JSX.Element; - -// @public -export interface ParticipantItemProps { - ariaLabelledBy?: string; - displayName?: string; - me?: boolean; - menuItems?: IContextualMenuItem[]; - onClick?: (props?: ParticipantItemProps) => void; - onRenderAvatar?: OnRenderAvatarCallback; - onRenderIcon?: (props?: ParticipantItemProps) => JSX.Element | null; - participantState?: ParticipantState; - presence?: PersonaPresence; - showParticipantOverflowTooltip?: boolean; - strings?: Partial; - styles?: ParticipantItemStyles; - userId?: string; -} - -// @public -export interface ParticipantItemStrings { - attendeeRole: string; - cameraDisabledIconLabel: string; - displayNamePlaceholder?: string; - handRaisedIconLabel?: string; - isMeText: string; - menuTitle: string; - micDisabledIconLabel: string; - mutedIconLabel: string; - participantItemAriaLabel?: string; - participantItemWithMoreOptionsAriaLabel?: string; - participantStateHold?: string; - participantStateRinging?: string; - removeButtonLabel: string; - sharingIconLabel: string; -} - -// @public -export interface ParticipantItemStyles extends BaseCustomStyles { - avatar?: IStyle; - iconContainer?: IStyle; - me?: IStyle; - menu?: IStyle; -} - -// @public -export const ParticipantList: (props: ParticipantListProps) => JSX.Element; - -// @public -export interface ParticipantListItemStyles extends ParticipantItemStyles { - participantSubMenuItemsStyles?: IContextualMenuItemStyles; -} - -// @public -export type ParticipantListParticipant = CommunicationParticipant & { - isRemovable: boolean; -}; - -// @public -export type ParticipantListProps = { - participants: ParticipantListParticipant[]; - myUserId?: string; - excludeMe?: boolean; - onRenderParticipant?: (participant: ParticipantListParticipant) => JSX.Element | null; - onRenderAvatar?: OnRenderAvatarCallback; - onRemoveParticipant?: (userId: string) => void; - onFetchParticipantMenuItems?: ParticipantMenuItemsCallback; - onParticipantClick?: (participant?: ParticipantListParticipant) => void; - onMuteParticipant?: (userId: string) => Promise; - styles?: ParticipantListStyles; - showParticipantOverflowTooltip?: boolean; - participantAriaLabelledBy?: string; - pinnedParticipants?: string[]; -}; - -// @public -export type ParticipantListSelector = (state: CallClientState, props: CallingBaseSelectorProps) => { - participants: CallParticipantListParticipant[]; - myUserId: string; -}; - -// @public -export interface ParticipantListStyles extends BaseCustomStyles { - participantItemStyles?: ParticipantListItemStyles; -} - -// @public -export type ParticipantMenuItemsCallback = (participantUserId: string, userId?: string, defaultMenuItems?: IContextualMenuItem[]) => IContextualMenuItem[]; - -// @public -export interface ParticipantRemovedSystemMessage extends SystemMessageCommon { - // (undocumented) - participants: CommunicationParticipant[]; - // (undocumented) - systemMessageType: 'participantRemoved'; -} - -// @public -export type ParticipantsAddedListener = (event: { - participantsAdded: ChatParticipant[]; - addedBy: ChatParticipant; -}) => void; - -// @public -export const ParticipantsButton: (props: ParticipantsButtonProps) => JSX.Element; - -// @public -export interface ParticipantsButtonContextualMenuStyles extends IContextualMenuStyles { - menuItemStyles?: IContextualMenuItemStyles; - participantListStyles?: ParticipantListStyles; -} - -// @public -export interface ParticipantsButtonProps extends ControlBarButtonProps { - callInvitationURL?: string; - excludeMe?: boolean; - myUserId?: string; - onFetchParticipantMenuItems?: ParticipantMenuItemsCallback; - onMuteAll?: () => void; - onRemoveParticipant?: (userId: string) => void; - onRenderAvatar?: OnRenderAvatarCallback; - onRenderParticipant?: (participant: CommunicationParticipant) => JSX.Element | null; - onRenderParticipantList?: (props: ParticipantListProps) => JSX.Element | null; - participants: ParticipantListParticipant[]; - showParticipantOverflowTooltip?: boolean; - strings?: Partial; - styles?: ParticipantsButtonStyles; -} - -// @public -export type ParticipantsButtonSelector = (state: CallClientState, props: CallingBaseSelectorProps) => { - participants: CallParticipantListParticipant[]; - myUserId: string; -}; - -// @public -export interface ParticipantsButtonStrings { - ariaLabel?: string; - copyInviteLinkActionedAriaLabel: string; - copyInviteLinkButtonLabel: string; - label: string; - menuHeader: string; - muteAllButtonLabel: string; - participantsListButtonLabel: string; - tooltipContent?: string; -} - -// @public -export interface ParticipantsButtonStyles extends ControlBarButtonStyles { - menuStyles?: Partial; -} - -// @public -export type ParticipantsJoinedListener = (event: { - joined: RemoteParticipant[]; -}) => void; - -// @public -export type ParticipantsLeftListener = (event: { - removed: RemoteParticipant[]; -}) => void; - -// @public -export type ParticipantsRemovedListener = (event: { - participantsRemoved: ChatParticipant[]; - removedBy: ChatParticipant; -}) => void; - -// @public -export type ParticipantState = 'Idle' | 'Connecting' | 'Ringing' | 'Connected' | 'Hold' | 'InLobby' | 'EarlyMedia' | 'Disconnected' | 'Reconnecting'; - -// @public -export interface PPTLiveCallFeatureState { - isActive: boolean; -} - -// @public -export type Profile = { - displayName?: string; -}; - -// @public -export type RaisedHand = { - raisedHandOrderPosition: number; -}; - -// @public -export type RaisedHandState = { - raisedHandOrderPosition: number; -}; - -// @public -export const RaiseHandButton: (props: RaiseHandButtonProps) => JSX.Element; - -// @public -export interface RaiseHandButtonProps extends ControlBarButtonProps { - onToggleRaiseHand?: () => Promise; - strings?: Partial; -} - -// @public -export type RaiseHandButtonSelector = (state: CallClientState, props: CallingBaseSelectorProps) => { - checked?: boolean; - disabled?: boolean; -}; - -// @public -export interface RaiseHandButtonStrings { - offLabel: string; - onLabel: string; - tooltipDisabledContent?: string; - tooltipOffContent?: string; - tooltipOnContent?: string; -} - -// @public -export interface RaiseHandCallFeature { - localParticipantRaisedHand?: RaisedHandState; - raisedHands: RaisedHandState[]; -} - -// @public -export type Reaction = { - reactionType: string; - receivedOn: Date; -}; - -// @public -export const ReactionButton: (props: ReactionButtonProps) => JSX.Element; - -// @public -export interface ReactionButtonProps extends ControlBarButtonProps { - onReactionClick: (reaction: ReactionButtonReaction) => Promise; - reactionResources: ReactionResources; - strings?: Partial; -} - -// @public -export type ReactionButtonReaction = 'like' | 'heart' | 'applause' | 'laugh' | 'surprised'; - -// @public -export interface ReactionButtonStrings { - applauseReactionTooltipContent?: string; - ariaLabel: string; - heartReactionTooltipContent?: string; - label: string; - laughReactionTooltipContent?: string; - likeReactionTooltipContent?: string; - surprisedReactionTooltipContent?: string; - tooltipContent?: string; - tooltipDisabledContent?: string; -} - -// @public -export interface ReactionResources { - applauseReaction?: ReactionSprite; - heartReaction?: ReactionSprite; - laughReaction?: ReactionSprite; - likeReaction?: ReactionSprite; - surprisedReaction?: ReactionSprite; -} - -// @public -export type ReactionSprite = { - url: string; - frameCount: number; -}; - -// @public -export type ReactionState = { - reactionMessage: ReactionMessage; - receivedOn: Date; -}; - -// @public -export type ReadReceiptsBySenderId = { - [key: string]: { - lastReadMessage: string; - displayName: string; - }; -}; - -// @public -export interface RecordingCallFeature { - isRecordingActive: boolean; -} - -// @public -export interface RemoteParticipantState { - callEndReason?: CallEndReason; - contentSharingStream?: HTMLElement; - displayName?: string; - identifier: CommunicationIdentifierKind; - isMuted: boolean; - isSpeaking: boolean; - mediaAccess?: MediaAccessState; - raisedHand?: RaisedHandState; - reactionState?: ReactionState; - role?: ParticipantRole; - spotlight?: SpotlightState; - state: RemoteParticipantState_2; - videoStreams: { - [key: number]: RemoteVideoStreamState; - }; -} - -// @public -export interface RemoteVideoStreamState { - id: number; - isAvailable: boolean; - isReceiving: boolean; - mediaStreamType: MediaStreamType; - streamSize?: { - width: number; - height: number; - }; - view?: VideoStreamRendererViewState; -} - -// @public -export interface RemoteVideoTileMenuOptions { - isHidden?: boolean; -} - -// @public -export type ResourceDetails = { - threadId: string; - messageId: string; - resourceUrl: string; -}; - -// @public -export type ResourceFetchResult = { - sourceUrl?: string; - error?: Error; -}; - -// @public -export const ScreenShareButton: (props: ScreenShareButtonProps) => JSX.Element; - -// @public -export interface ScreenShareButtonProps extends ControlBarButtonProps { - onToggleScreenShare?: () => Promise; - strings?: Partial; -} - -// @public -export type ScreenShareButtonSelector = (state: CallClientState, props: CallingBaseSelectorProps) => { - checked?: boolean; - disabled?: boolean; -}; - -// @public -export interface ScreenShareButtonStrings { - offLabel: string; - onLabel: string; - tooltipDisabledContent?: string; - tooltipOffContent?: string; - tooltipOnContent?: string; -} - -// @public -export type Selector = (state: ClientState, props: any) => any; - -// @public -export const SendBox: (props: SendBoxProps) => JSX.Element; - -// @public -export interface SendBoxProps { - autoFocus?: 'sendBoxTextField'; - disabled?: boolean; - onRenderIcon?: (isHover: boolean) => JSX.Element; - onRenderSystemMessage?: (systemMessage: string | undefined) => React_2.ReactElement; - onSendMessage?: (content: string) => Promise; - onTyping?: () => Promise; - strings?: Partial; - styles?: SendBoxStylesProps; - supportNewline?: boolean; - systemMessage?: string; -} - -// @public -export type SendBoxSelector = (state: ChatClientState, props: ChatBaseSelectorProps) => { - displayName: string; - userId: string; -}; - -// @public -export interface SendBoxStrings { - placeholderText: string; - sendButtonAriaLabel: string; - textTooLong: string; -} - -// @public -export interface SendBoxStylesProps extends BaseCustomStyles { - sendMessageIcon?: IStyle; - sendMessageIconContainer?: IStyle; - systemMessage?: IStyle; - textField?: IStyle; - textFieldContainer?: IStyle; -} - -// @public -export type SoundEffect = { - url: string; -}; - -// @public -export interface SpokenLanguageStrings { - // (undocumented) - 'ar-ae': string; - // (undocumented) - 'ar-sa': string; - // (undocumented) - 'cs-cz': string; - // (undocumented) - 'cy-gb': string; - // (undocumented) - 'da-dk': string; - // (undocumented) - 'de-de': string; - // (undocumented) - 'el-gr': string; - // (undocumented) - 'en-au': string; - // (undocumented) - 'en-ca': string; - // (undocumented) - 'en-gb': string; - // (undocumented) - 'en-in': string; - // (undocumented) - 'en-nz': string; - // (undocumented) - 'en-us': string; - // (undocumented) - 'es-es': string; - // (undocumented) - 'es-mx': string; - // (undocumented) - 'fi-fi': string; - // (undocumented) - 'fr-ca': string; - // (undocumented) - 'fr-fr': string; - // (undocumented) - 'he-il': string; - // (undocumented) - 'hi-in': string; - // (undocumented) - 'hu-hu': string; - // (undocumented) - 'it-it': string; - // (undocumented) - 'ja-jp': string; - // (undocumented) - 'ko-kr': string; - // (undocumented) - 'nb-no': string; - // (undocumented) - 'nl-be': string; - // (undocumented) - 'nl-nl': string; - // (undocumented) - 'pl-pl': string; - // (undocumented) - 'pt-br': string; - // (undocumented) - 'pt-pt': string; - // (undocumented) - 'ro-ro': string; - // (undocumented) - 'ru-ru': string; - // (undocumented) - 'sk-sk': string; - // (undocumented) - 'sv-se': string; - // (undocumented) - 'th-th': string; - // (undocumented) - 'tr-tr': string; - // (undocumented) - 'uk-ua': string; - // (undocumented) - 'vi-vn': string; - // (undocumented) - 'zh-cn': string; - // (undocumented) - 'zh-hk': string; - // (undocumented) - 'zh-tw': string; -} - -// @public -export type Spotlight = { - spotlightedOrderPosition?: number; -}; - -// @public -export interface SpotlightCallFeatureState { - localParticipantSpotlight?: SpotlightState; - maxParticipantsToSpotlight: number; - spotlightedParticipants: SpotlightedParticipant[]; -} - -// @public -export type SpotlightChangedListener = (args: { - added: SpotlightedParticipant[]; - removed: SpotlightedParticipant[]; -}) => void; - -// @public -export interface SpotlightPromptStrings { - closeSpotlightPromptButtonLabel: string; - startSpotlightCancelButtonLabel: string; - startSpotlightConfirmButtonLabel: string; - startSpotlightHeading: string; - startSpotlightOnSelfText: string; - startSpotlightText: string; - stopAllSpotlightHeading: string; - stopAllSpotlightText: string; - stopSpotlightCancelButtonLabel: string; - stopSpotlightConfirmButtonLabel: string; - stopSpotlightHeading: string; - stopSpotlightOnSelfConfirmButtonLabel: string; - stopSpotlightOnSelfHeading: string; - stopSpotlightOnSelfText: string; - stopSpotlightText: string; -} - -// @public -export interface SpotlightState { - spotlightedOrderPosition?: number; -} - -// @public -export type StartCallIdentifier = CommunicationIdentifier; - -// @public -export interface StartCaptionsAdapterOptions extends StartCaptionsOptions { - startInBackground?: boolean; -} - -// @public -export const StartCaptionsButton: (props: StartCaptionsButtonProps) => JSX.Element; - -// @public (undocumented) -export interface StartCaptionsButtonProps extends ControlBarButtonProps { - currentSpokenLanguage: string; - onSetSpokenLanguage: (language: string) => Promise; - onStartCaptions: (options?: CaptionsOptions) => Promise; - onStopCaptions: () => Promise; - strings?: StartCaptionsButtonStrings; -} - -// @public -export type StartCaptionsButtonSelector = (state: CallClientState, props: CallingBaseSelectorProps) => { - checked: boolean; - currentCaptionLanguage: string; - currentSpokenLanguage: string; -}; - -// @public -export interface StartCaptionsButtonStrings { - offLabel: string; - onLabel: string; - tooltipOffContent: string; - tooltipOnContent: string; -} - -// @public -export interface StatefulCallClient extends CallClient { - createCallAgent(...args: Parameters): Promise; - createTeamsCallAgent(...args: Parameters): Promise; - createView(callId: string | undefined, participantId: CommunicationIdentifier | undefined, stream: LocalVideoStreamState | RemoteVideoStreamState, options?: CreateViewOptions): Promise; - disposeView(callId: string | undefined, participantId: CommunicationIdentifier | undefined, stream: LocalVideoStreamState | RemoteVideoStreamState): void; - getState(): CallClientState; - offStateChange(handler: (state: CallClientState) => void): void; - onStateChange(handler: (state: CallClientState) => void): void; -} - -// @public -export type StatefulCallClientArgs = { - userId: CommunicationUserIdentifier | MicrosoftTeamsUserIdentifier; -}; - -// @public -export type StatefulCallClientOptions = { - callClientOptions: CallClientOptions; - maxStateChangeListeners?: number; -}; - -// @public -export interface StatefulChatClient extends ChatClient { - dispose(): void; - downloadResourceToCache(threadId: string, messageId: string, resourceUrl: string): void; - getState(): ChatClientState; - offStateChange(handler: (state: ChatClientState) => void): void; - onStateChange(handler: (state: ChatClientState) => void): void; - removeResourceFromCache(threadId: string, messageId: string, resourceUrl: string): void; -} - -// @public -export type StatefulChatClientArgs = { - userId: CommunicationUserIdentifier; - displayName: string; - endpoint: string; - credential: CommunicationTokenCredential; -}; - -// @public -export type StatefulChatClientOptions = { - chatClientOptions: ChatClientOptions; - maxStateChangeListeners?: number; -}; - -// @public -export interface StatefulDeviceManager extends DeviceManager { - getUnparentedVideoStreams: () => LocalVideoStream[]; - selectCamera: (device: VideoDeviceInfo) => void; -} - -// @public -export interface StopCaptionsAdapterOptions { - stopInBackground?: boolean; -} - -// @public -export const StreamMedia: (props: StreamMediaProps) => JSX.Element; - -// @public -export interface StreamMediaProps { - isMirrored?: boolean; - loadingState?: LoadingState; - styles?: BaseCustomStyles; - videoStreamElement: HTMLElement | null; -} - -// @public (undocumented) -export type SupportedCaptionLanguage = keyof CaptionLanguageStrings; - -// @public (undocumented) -export type SupportedSpokenLanguage = keyof SpokenLanguageStrings; - -// @public -export interface SurveyIssues { - // (undocumented) - audioRating: { - noLocalAudio: string; - noRemoteAudio: string; - echo: string; - audioNoise: string; - lowVolume: string; - audioStoppedUnexpectedly: string; - distortedSpeech: string; - audioInterruption: string; - otherIssues: string; - }; - // (undocumented) - overallRating: { - callCannotJoin: string; - callCannotInvite: string; - hadToRejoin: string; - callEndedUnexpectedly: string; - otherIssues: string; - }; - // (undocumented) - screenshareRating: { - noContentLocal: string; - noContentRemote: string; - cannotPresent: string; - lowQuality: string; - freezes: string; - stoppedUnexpectedly: string; - largeDelay: string; - otherIssues: string; - }; - // (undocumented) - videoRating: { - noVideoReceived: string; - noVideoSent: string; - lowQuality: string; - freezes: string; - stoppedUnexpectedly: string; - darkVideoReceived: string; - audioVideoOutOfSync: string; - otherIssues: string; - }; -} - -// @public -export interface SurveyIssuesHeadingStrings { - // (undocumented) - audioRating: string; - // (undocumented) - overallRating: string; - // (undocumented) - screenshareRating: string; - // (undocumented) - videoRating: string; -} - -// @public -export type SystemMessage = ParticipantAddedSystemMessage | ParticipantRemovedSystemMessage | TopicUpdatedSystemMessage | ContentSystemMessage; - -// @public -export interface SystemMessageCommon extends MessageCommon { - // (undocumented) - iconName: string; - // (undocumented) - messageType: 'system'; -} - -// @public -export type TeamsAdapterOptions = CommonCallAdapterOptions; - -// @public -export interface TeamsCallAdapter extends CommonCallAdapter { - // @deprecated - joinCall(microphoneOn?: boolean): TeamsCall | undefined; - joinCall(options?: JoinCallOptions): TeamsCall | undefined; - startCall(participants: string[], options?: StartCallOptions): TeamsCall | undefined; - startCall(participants: StartCallIdentifier[], options?: StartCallOptions): TeamsCall | undefined; -} - -// @public -export type TeamsCallAdapterArgs = TeamsCallAdapterArgsCommon & { - locator: TeamsMeetingLinkLocator | TeamsMeetingIdLocator; -}; - -// @public -export type TeamsCallAdapterArgsCommon = { - userId: MicrosoftTeamsUserIdentifier; - credential: CommunicationTokenCredential; - options?: TeamsAdapterOptions; -}; - -// @public -export interface TeamsCallingHandlers extends CommonCallingHandlers { - // (undocumented) - onStartCall: (participants: CommunicationIdentifier[], options?: StartCallOptions) => undefined | TeamsCall; -} - -// @public -export type TeamsIncomingCallManagement = { - incomingCalls: ReadonlyArray; -}; - -// @public -export interface TeamsIncomingCallState { - callEndReason?: CallEndReason; - callerInfo: CallerInfo; - endTime?: Date; - id: string; - info: CallInfoState; - startTime: Date; -} - -// @public -export const toFlatCommunicationIdentifier: (identifier: CommunicationIdentifier) => string; - -// @public -export type TopicChangedListener = (event: { - topic: string; -}) => void; - -// @public -export interface TopicUpdatedSystemMessage extends SystemMessageCommon { - // (undocumented) - systemMessageType: 'topicUpdated'; - // (undocumented) - topic: string; -} - -// @public -export interface TranscriptionCallFeature { - isTranscriptionActive: boolean; -} - -// @public -export type TransferAcceptedListener = (event: TransferEventArgs) => void; - -// @public -export interface TransferFeature { - acceptedTransfers: { - [key: string]: AcceptedTransfer; - }; -} - -// @public -export const TypingIndicator: (props: TypingIndicatorProps) => JSX.Element; - -// @public -export interface TypingIndicatorProps { - onRenderUser?: (users: CommunicationParticipant) => JSX.Element; - strings?: Partial; - styles?: TypingIndicatorStylesProps; - typingUsers: CommunicationParticipant[]; -} - -// @public -export type TypingIndicatorSelector = (state: ChatClientState, props: ChatBaseSelectorProps) => { - typingUsers: CommunicationParticipant[]; -}; - -// @public -export interface TypingIndicatorStrings { - delimiter: string; - multipleUsers: string; - multipleUsersAbbreviateMany: string; - multipleUsersAbbreviateOne: string; - singleUser: string; -} - -// @public -export interface TypingIndicatorStylesProps extends BaseCustomStyles { - typingString?: IStyle; - typingUserDisplayName?: IStyle; -} - -// @public -export type UpdateMessageCallback = (messageId: string, content: string) => Promise; - -// @public -export const useAzureCommunicationCallAdapter: (args: Partial, afterCreate?: (adapter: CallAdapter) => Promise, beforeDispose?: (adapter: CallAdapter) => Promise) => CallAdapter | undefined; - -// @public -export const useAzureCommunicationCallWithChatAdapter: (args: Partial, afterCreate?: (adapter: CallWithChatAdapter) => Promise, beforeDispose?: (adapter: CallWithChatAdapter) => Promise) => CallWithChatAdapter | undefined; - -// @public -export const useAzureCommunicationChatAdapter: (args: Partial, afterCreate?: (adapter: ChatAdapter) => Promise, beforeDispose?: (adapter: ChatAdapter) => Promise) => ChatAdapter | undefined; - -// @public -export const useCall: () => Call | undefined; - -// @public -export const useCallAgent: () => CallAgent | undefined; - -// @public -export const useCallClient: () => StatefulCallClient; - -// @public -export const useChatClient: () => StatefulChatClient; - -// @public -export const useChatThreadClient: () => ChatThreadClient; - -// @public -export const useDeviceManager: () => StatefulDeviceManager | undefined; - -// @public -export const usePropsFor: JSX.Element>(component: Component, type?: 'calling' | 'chat') => ComponentProps; - -// @public -export const useSelector: (selector: ParamT, selectorProps?: ParamT extends Selector ? Parameters[1] : undefined, type?: 'calling' | 'chat') => ParamT extends Selector ? ReturnType : undefined; - -// @public -export const useTeamsCall: () => undefined | TeamsCall; - -// @public -export const useTeamsCallAdapter: (args: Partial, afterCreate?: (adapter: TeamsCallAdapter) => Promise, beforeDispose?: (adapter: TeamsCallAdapter) => Promise) => TeamsCallAdapter | undefined; - -// @public -export const useTeamsCallAgent: () => undefined | TeamsCallAgent; - -// @public -export const useTheme: () => Theme; - -// @public -export interface VerticalGalleryControlBarStyles extends BaseCustomStyles { - counter?: IStyle; - nextButton?: IStyle; - previousButton?: IStyle; -} - -// @public -export interface VerticalGalleryStrings { - leftNavButtonAriaLabel?: string; - rightNavButtonAriaLabel?: string; -} - -// @public -export interface VerticalGalleryStyles extends BaseCustomStyles { - children?: IStyle; - controlBar?: VerticalGalleryControlBarStyles; -} - -// @public -export interface VideoBackgroundBlurEffect extends BackgroundBlurConfig { - effectName: 'blur'; -} - -// @public -export type VideoBackgroundEffect = VideoBackgroundNoEffect | VideoBackgroundBlurEffect | VideoBackgroundReplacementEffect; - -// @public -export type VideoBackgroundEffectsDependency = { - createBackgroundBlurEffect: (config?: BackgroundBlurConfig) => BackgroundBlurEffect; - createBackgroundReplacementEffect: (config: BackgroundReplacementConfig) => BackgroundReplacementEffect; -}; - -// @public -export interface VideoBackgroundImage { - key: string; - tooltipText?: string; - url: string; -} - -// @public -export interface VideoBackgroundNoEffect { - effectName: 'none'; -} - -// @public -export interface VideoBackgroundReplacementEffect extends BackgroundReplacementConfig { - effectName: 'replacement'; - key?: string; -} - -// @public -export const VideoGallery: (props: VideoGalleryProps) => JSX.Element; - -// @public (undocumented) -export type VideoGalleryLayout = 'default' | 'floatingLocalVideo' | 'speaker' | 'focusedContent'; - -// @public -export interface VideoGalleryLocalParticipant extends VideoGalleryParticipant { - raisedHand?: RaisedHand; - reaction?: Reaction; - screenShareStream?: VideoGalleryStream; -} - -// @public -export type VideoGalleryParticipant = { - userId: string; - isMuted?: boolean; - displayName?: string; - videoStream?: VideoGalleryStream; - isScreenSharingOn?: boolean; - spotlight?: Spotlight; - mediaAccess?: MediaAccess; - canAudioBeForbidden?: boolean; - canVideoBeForbidden?: boolean; -}; - -// @public -export interface VideoGalleryProps { - dominantSpeakers?: string[]; - layout?: VideoGalleryLayout; - localParticipant: VideoGalleryLocalParticipant; - localVideoCameraCycleButtonProps?: LocalVideoCameraCycleButtonProps; - localVideoTileSize?: LocalVideoTileSize; - localVideoViewOptions?: VideoStreamOptions; - maxParticipantsToSpotlight?: number; - maxRemoteVideoStreams?: number; - onCreateLocalStreamView?: (options?: VideoStreamOptions) => Promise; - onCreateRemoteStreamView?: (userId: string, options?: VideoStreamOptions) => Promise; - onDisposeLocalScreenShareStreamView?: () => Promise; - onDisposeLocalStreamView?: () => void; - onDisposeRemoteScreenShareStreamView?: (userId: string) => Promise; - // @deprecated (undocumented) - onDisposeRemoteStreamView?: (userId: string) => Promise; - onDisposeRemoteVideoStreamView?: (userId: string) => Promise; - onForbidAudio?: (userIds: string[]) => Promise; - onForbidVideo?: (userIds: string[]) => Promise; - onMuteParticipant?: (userId: string) => Promise; - onPermitAudio?: (userIds: string[]) => Promise; - onPermitVideo?: (userIds: string[]) => Promise; - onPinParticipant?: (userId: string) => void; - onRenderAvatar?: OnRenderAvatarCallback; - onRenderLocalVideoTile?: (localParticipant: VideoGalleryLocalParticipant) => JSX.Element; - onRenderRemoteVideoTile?: (remoteParticipant: VideoGalleryRemoteParticipant) => JSX.Element; - onStartLocalSpotlight?: () => Promise; - onStartRemoteSpotlight?: (userIds: string[]) => Promise; - onStopLocalSpotlight?: () => Promise; - onStopRemoteSpotlight?: (userIds: string[]) => Promise; - onUnpinParticipant?: (userId: string) => void; - overflowGalleryPosition?: OverflowGalleryPosition; - pinnedParticipants?: string[]; - reactionResources?: ReactionResources; - remoteParticipants?: VideoGalleryRemoteParticipant[]; - remoteVideoTileMenu?: false | VideoTileContextualMenuProps | VideoTileDrawerMenuProps; - remoteVideoViewOptions?: VideoStreamOptions; - showCameraSwitcherInLocalPreview?: boolean; - showMuteIndicator?: boolean; - spotlightedParticipants?: string[]; - strings?: Partial; - styles?: VideoGalleryStyles; - videoTilesOptions?: VideoTilesOptions; -} - -// @public -export interface VideoGalleryRemoteParticipant extends VideoGalleryParticipant { - isSpeaking?: boolean; - mediaAccess?: MediaAccess; - raisedHand?: RaisedHand; - reaction?: Reaction; - screenShareStream?: VideoGalleryStream; - state?: ParticipantState; -} - -// @public -export type VideoGallerySelector = (state: CallClientState, props: CallingBaseSelectorProps) => { - screenShareParticipant?: VideoGalleryRemoteParticipant; - localParticipant: VideoGalleryLocalParticipant; - remoteParticipants: VideoGalleryRemoteParticipant[]; - dominantSpeakers?: string[]; - optimalVideoCount?: number; - spotlightedParticipants?: string[]; - maxParticipantsToSpotlight?: number; -}; - -// @public -export interface VideoGalleryStream { - id?: number; - isAvailable?: boolean; - isMirrored?: boolean; - isReceiving?: boolean; - renderElement?: HTMLElement; - scalingMode?: ViewScalingMode; - streamSize?: { - width: number; - height: number; - }; -} - -// @public -export interface VideoGalleryStrings { - addSpotlightVideoTileMenuLabel: string; - attendeeRole: string; - displayNamePlaceholder: string; - fillRemoteParticipantFrame: string; - fitRemoteParticipantToFrame: string; - localScreenShareLoadingMessage: string; - localVideoCameraSwitcherLabel: string; - localVideoLabel: string; - localVideoMovementAriaLabel: string; - localVideoMovementLabel: string; - localVideoSelectedDescription: string; - muteParticipantMenuItemLabel: string; - pinnedParticipantAnnouncementAriaLabel: string; - pinParticipantForMe: string; - pinParticipantMenuItemAriaLabel: string; - screenIsBeingSharedMessage: string; - screenShareLoadingMessage: string; - spotlightLimitReachedMenuTitle: string; - startSpotlightVideoTileMenuLabel: string; - stopSpotlightOnSelfVideoTileMenuLabel: string; - stopSpotlightVideoTileMenuLabel: string; - unpinnedParticipantAnnouncementAriaLabel: string; - unpinParticipantForMe: string; - unpinParticipantMenuItemAriaLabel: string; - waitingScreenText: string; -} - -// @public -export interface VideoGalleryStyles extends BaseCustomStyles { - gridLayout?: GridLayoutStyles; - horizontalGallery?: HorizontalGalleryStyles; - localVideo?: IStyle; - verticalGallery?: VerticalGalleryStyles; -} - -// @public -export interface VideoStreamOptions { - isMirrored?: boolean; - scalingMode?: ViewScalingMode; -} - -// @public -export interface VideoStreamRendererViewState { - isMirrored: boolean; - scalingMode: ScalingMode; - target: HTMLElement; -} - -// @public -export const VideoTile: (props: VideoTileProps) => JSX.Element; - -// @public -export interface VideoTileContextualMenuProps { - kind: 'contextual'; -} - -// @public -export interface VideoTileDrawerMenuProps { - hostId?: string; - kind: 'drawer'; -} - -// @public -export interface VideoTileProps { - alwaysShowLabelBackground?: boolean; - children?: React_2.ReactNode; - contextualMenu?: IContextualMenuProps; - displayName?: string; - initialsName?: string; - isMirrored?: boolean; - isMuted?: boolean; - isPinned?: boolean; - isSpeaking?: boolean; - isSpotlighted?: boolean; - mediaAccess?: MediaAccess; - noVideoAvailableAriaLabel?: string; - onLongTouch?: () => void; - onRenderPlaceholder?: OnRenderAvatarCallback; - overlay?: JSX.Element | null; - participantState?: ParticipantState; - personaMaxSize?: number; - personaMinSize?: number; - raisedHand?: RaisedHand; - reactionResources?: ReactionResources; - renderElement?: JSX.Element | null; - showLabel?: boolean; - showMuteIndicator?: boolean; - strings?: VideoTileStrings; - styles?: VideoTileStylesProps; - userId?: string; -} - -// @public -export interface VideoTilesOptions { - alwaysShowLabelBackground?: boolean; -} - -// @public -export interface VideoTileStrings { - moreOptionsButtonAriaLabel: string; - moreOptionsParticipantCameraDisabledAriaLabel: string; - moreOptionsParticipantHandRaisedAriaLabel: string; - moreOptionsParticipantIsSpeakingAriaLabel: string; - moreOptionsParticipantMicDisabledAriaLabel: string; - moreOptionsParticipantMutedStateMutedAriaLabel: string; - moreOptionsParticipantMutedStateUnmutedAriaLabel: string; - participantStateHold: string; - participantStateRinging: string; -} - -// @public -export interface VideoTileStylesProps extends BaseCustomStyles { - displayNameContainer?: IStyle; - overlayContainer?: IStyle; - videoContainer?: IStyle; -} - -// @public -export type ViewScalingMode = 'Stretch' | 'Crop' | 'Fit'; - -// (No @packageDocumentation comment for this package) - -``` +## API Report File for "@azure/communication-react" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +/// + +import { AddPhoneNumberOptions } from '@azure/communication-calling'; +import { AudioDeviceInfo } from '@azure/communication-calling'; +import { AudioEffectsStartConfig } from '@azure/communication-calling'; +import { BackgroundBlurConfig } from '@azure/communication-calling'; +import { BackgroundBlurEffect } from '@azure/communication-calling'; +import { BackgroundReplacementConfig } from '@azure/communication-calling'; +import { BackgroundReplacementEffect } from '@azure/communication-calling'; +import { Call } from '@azure/communication-calling'; +import { CallAgent } from '@azure/communication-calling'; +import { CallClient } from '@azure/communication-calling'; +import { CallClientOptions } from '@azure/communication-calling'; +import { CallDirection } from '@azure/communication-calling'; +import { CallEndReason } from '@azure/communication-calling'; +import { CallerInfo } from '@azure/communication-calling'; +import { CallKind } from '@azure/communication-calling'; +import { CallState as CallState_2 } from '@azure/communication-calling'; +import { CallSurvey } from '@azure/communication-calling'; +import { CallSurveyResponse } from '@azure/communication-calling'; +import { CapabilitiesChangeInfo } from '@azure/communication-calling'; +import { CaptionsKind } from '@azure/communication-calling'; +import { CaptionsResultType } from '@azure/communication-calling'; +import { ChatClient } from '@azure/communication-chat'; +import { ChatClientOptions } from '@azure/communication-chat'; +import { ChatMessage as ChatMessage_2 } from '@azure/communication-chat'; +import { ChatMessageReadReceipt } from '@azure/communication-chat'; +import { ChatParticipant } from '@azure/communication-chat'; +import { ChatThreadClient } from '@azure/communication-chat'; +import { CommunicationIdentifier } from '@azure/communication-common'; +import { CommunicationIdentifierKind } from '@azure/communication-common'; +import { CommunicationTokenCredential } from '@azure/communication-common'; +import { CommunicationUserIdentifier } from '@azure/communication-common'; +import type { CommunicationUserKind } from '@azure/communication-common'; +import { CreateViewOptions } from '@azure/communication-calling'; +import { DeviceAccess } from '@azure/communication-calling'; +import { DeviceManager } from '@azure/communication-calling'; +import { DominantSpeakersInfo } from '@azure/communication-calling'; +import { DtmfTone as DtmfTone_2 } from '@azure/communication-calling'; +import { EnvironmentInfo } from '@azure/communication-calling'; +import { GroupCallLocator } from '@azure/communication-calling'; +import { IButtonProps } from '@fluentui/react'; +import { IButtonStyles } from '@fluentui/react'; +import { IContextualMenuItem } from '@fluentui/react'; +import { IContextualMenuItemStyles } from '@fluentui/react'; +import { IContextualMenuProps } from '@fluentui/react'; +import { IContextualMenuStyles } from '@fluentui/react'; +import { IIconProps } from '@fluentui/react'; +import { IIconStyles } from '@fluentui/react'; +import { IMessageBarProps } from '@fluentui/react'; +import { IncomingCall } from '@azure/communication-calling'; +import { IncomingCallKind } from '@azure/communication-calling'; +import { IPersonaStyleProps } from '@fluentui/react'; +import { IPersonaStyles } from '@fluentui/react'; +import { IRawStyle } from '@fluentui/react'; +import { IRenderFunction } from '@fluentui/react'; +import { IStackStyles } from '@fluentui/react'; +import { IStyle } from '@fluentui/react'; +import { IStyleFunctionOrObject } from '@fluentui/react'; +import { ITextFieldStyles } from '@fluentui/react'; +import { LatestMediaDiagnostics } from '@azure/communication-calling'; +import { LatestNetworkDiagnostics } from '@azure/communication-calling'; +import { LocalVideoStream } from '@azure/communication-calling'; +import type { MediaDiagnosticChangedEventArgs } from '@azure/communication-calling'; +import { MediaStreamType } from '@azure/communication-calling'; +import { MicrosoftTeamsAppIdentifier } from '@azure/communication-common'; +import { MicrosoftTeamsUserIdentifier } from '@azure/communication-common'; +import type { NetworkDiagnosticChangedEventArgs } from '@azure/communication-calling'; +import { PartialTheme } from '@fluentui/react'; +import { ParticipantCapabilities } from '@azure/communication-calling'; +import { ParticipantRole } from '@azure/communication-calling'; +import { PermissionConstraints } from '@azure/communication-calling'; +import { PersonaInitialsColor } from '@fluentui/react'; +import { PersonaPresence } from '@fluentui/react'; +import { PersonaSize } from '@fluentui/react'; +import { PhoneNumberIdentifier } from '@azure/communication-common'; +import { PropertyChangedEvent } from '@azure/communication-calling'; +import { default as React_2 } from 'react'; +import { Reaction as Reaction_2 } from '@azure/communication-calling'; +import { ReactionMessage } from '@azure/communication-calling'; +import type { RemoteParticipant } from '@azure/communication-calling'; +import { RemoteParticipantState as RemoteParticipantState_2 } from '@azure/communication-calling'; +import { RoomCallLocator } from '@azure/communication-calling'; +import { ScalingMode } from '@azure/communication-calling'; +import { SendMessageOptions } from '@azure/communication-chat'; +import { SpotlightedParticipant } from '@azure/communication-calling'; +import { StartCallOptions } from '@azure/communication-calling'; +import { StartCaptionsOptions } from '@azure/communication-calling'; +import { TeamsCall } from '@azure/communication-calling'; +import { TeamsCallAgent } from '@azure/communication-calling'; +import { TeamsCallInfo } from '@azure/communication-calling'; +import { TeamsIncomingCall } from '@azure/communication-calling'; +import { TeamsMeetingIdLocator } from '@azure/communication-calling'; +import { TeamsMeetingLinkLocator } from '@azure/communication-calling'; +import { Theme } from '@fluentui/react'; +import { TransferEventArgs } from '@azure/communication-calling'; +import { TypingIndicatorReceivedEvent } from '@azure/communication-chat'; +import { UnknownIdentifier } from '@azure/communication-common'; +import { VideoDeviceInfo } from '@azure/communication-calling'; +import { VideoEffectName } from '@azure/communication-calling'; +import { VideoStreamRenderer } from '@azure/communication-calling'; +import { VideoStreamRendererView } from '@azure/communication-calling'; + +// @public +export interface AcceptedTransfer { + callId: string; + timestamp: Date; +} + +// @public +export interface ActiveErrorMessage { + timestamp?: Date; + type: ErrorType; +} + +// @public +export interface ActiveNotification { + ariaLive?: 'assertive' | 'off' | 'polite'; + autoDismiss?: boolean; + onClickPrimaryButton?: () => void; + onClickSecondaryButton?: () => void; + onDismiss?: () => void; + timestamp?: Date; + type: NotificationType; +} + +// @public +export interface AdapterError extends Error { + innerError: Error; + target: string; + timestamp: Date; +} + +// @public +export type AdapterErrors = { + [target: string]: AdapterError; +}; + +// @public +export interface AdapterState { + getState(): TState; + offStateChange(handler: (state: TState) => void): void; + onStateChange(handler: (state: TState) => void): void; +} + +// @public +export type AreEqual JSX.Element | undefined, B extends (props: any) => JSX.Element | undefined> = true extends AreTypeEqual & AreParamEqual ? true : false; + +// @public +export type AreParamEqual JSX.Element | undefined, B extends (props: any) => JSX.Element | undefined> = AreTypeEqual[0]>, Required[0]>>; + +// @public +export type AreTypeEqual = A extends B ? (B extends A ? true : false) : false; + +// @public +export interface AttachmentMetadata { + id: string; + name: string; + url: string; +} + +// @public +export type AvatarPersonaData = { + text?: string; + imageUrl?: string; + imageInitials?: string; + initialsColor?: PersonaInitialsColor | string; + initialsTextColor?: string; + showUnknownPersonaCoin?: boolean; +}; + +// @public +export type AvatarPersonaDataCallback = (userId: string) => Promise; + +// @public +export type AzureCommunicationCallAdapterArgs = { + userId: CommunicationUserIdentifier; + displayName: string; + credential: CommunicationTokenCredential; + locator: CallAdapterLocator; + options?: AzureCommunicationCallAdapterOptions; +}; + +// @public +export type AzureCommunicationCallAdapterOptions = CommonCallAdapterOptions; + +// @public +export type AzureCommunicationCallWithChatAdapterArgs = { + endpoint: string; + userId: CommunicationUserIdentifier; + displayName: string; + credential: CommunicationTokenCredential; + locator: CallAndChatLocator | TeamsMeetingLinkLocator | TeamsMeetingIdLocator; + alternateCallerId?: string; + callAdapterOptions?: AzureCommunicationCallAdapterOptions; +}; + +// @public +export type AzureCommunicationCallWithChatAdapterFromClientArgs = { + callLocator: CallAdapterLocator | TeamsMeetingLinkLocator; + callAgent: CallAgent; + callClient: StatefulCallClient; + chatClient: StatefulChatClient; + chatThreadClient: ChatThreadClient; + callAdapterOptions?: AzureCommunicationCallAdapterOptions; +}; + +// @public +export type AzureCommunicationChatAdapterArgs = { + endpoint: string; + userId: CommunicationUserIdentifier; + displayName: string; + credential: CommunicationTokenCredential; + threadId: string; +}; + +// @public +export type AzureCommunicationOutboundCallAdapterArgs = { + userId: CommunicationUserIdentifier; + displayName: string; + credential: CommunicationTokenCredential; + targetCallees: StartCallIdentifier[]; + alternateCallerId?: string; + options?: AzureCommunicationCallAdapterOptions; +}; + +// @public +export interface BaseCompositeProps> { + fluentTheme?: PartialTheme | Theme; + icons?: TIcons; + locale?: CompositeLocale; + onFetchAvatarPersonaData?: AvatarPersonaDataCallback; + onFetchParticipantMenuItems?: ParticipantMenuItemsCallback; + rtl?: boolean; +} + +// @public +export interface BaseCustomStyles { + root?: IStyle; +} + +// @public +export interface CallAdapter extends CommonCallAdapter { + // @deprecated + joinCall(microphoneOn?: boolean): Call | undefined; + joinCall(options?: JoinCallOptions): Call | undefined; + startCall(participants: string[], options?: StartCallOptions): Call | undefined; + startCall(participants: StartCallIdentifier[], options?: StartCallOptions): Call | undefined; +} + +// @public +export type CallAdapterCallEndedEvent = { + callId: string; +}; + +// @public @deprecated +export interface CallAdapterCallManagement extends CallAdapterCallOperations { + // @deprecated + joinCall(microphoneOn?: boolean): Call | undefined; + joinCall(options?: JoinCallOptions): Call | undefined; + startCall(participants: string[], options?: StartCallOptions): Call | undefined; + startCall(participants: StartCallIdentifier[], options?: StartCallOptions): Call | undefined; +} + +// @public +export interface CallAdapterCallOperations { + addParticipant(participant: PhoneNumberIdentifier, options?: AddPhoneNumberOptions): Promise; + // (undocumented) + addParticipant(participant: CommunicationUserIdentifier): Promise; + createStreamView(remoteUserId?: string, options?: VideoStreamOptions): Promise; + disposeLocalVideoStreamView(): Promise; + disposeRemoteVideoStreamView(remoteUserId: string): Promise; + disposeScreenShareStreamView(remoteUserId: string): Promise; + // @deprecated + disposeStreamView(remoteUserId?: string, options?: VideoStreamOptions): Promise; + forbidAudio(userIds: string[]): Promise; + forbidOthersAudio(): Promise; + forbidOthersVideo(): Promise; + forbidVideo(userIds: string[]): Promise; + holdCall(): Promise; + leaveCall(forEveryone?: boolean): Promise; + lowerHand(): Promise; + mute(): Promise; + muteAllRemoteParticipants(): Promise; + muteParticipant(userId: string): Promise; + onReactionClick(reaction: Reaction_2): Promise; + permitAudio(userIds: string[]): Promise; + permitOthersAudio(): Promise; + permitOthersVideo(): Promise; + permitVideo(userIds: string[]): Promise; + raiseHand(): Promise; + removeParticipant(userId: string): Promise; + removeParticipant(participant: CommunicationIdentifier): Promise; + resumeCall(): Promise; + sendDtmfTone(dtmfTone: DtmfTone_2): Promise; + setCaptionLanguage(language: string): Promise; + setSpokenLanguage(language: string): Promise; + startCamera(options?: VideoStreamOptions): Promise; + startCaptions(options?: StartCaptionsAdapterOptions): Promise; + startNoiseSuppressionEffect(): Promise; + startScreenShare(): Promise; + startSpotlight(userIds?: string[]): Promise; + startVideoBackgroundEffect(videoBackgroundEffect: VideoBackgroundEffect): Promise; + stopAllSpotlight(): Promise; + stopCamera(): Promise; + stopCaptions(options?: StopCaptionsAdapterOptions): Promise; + stopNoiseSuppressionEffect(): Promise; + stopScreenShare(): Promise; + stopSpotlight(userIds?: string[]): Promise; + stopVideoBackgroundEffects(): Promise; + submitSurvey(survey: CallSurvey): Promise; + unmute(): Promise; + updateBackgroundPickerImages(backgroundImages: VideoBackgroundImage[]): void; + updateSelectedVideoBackgroundEffect(selectedVideoBackground: VideoBackgroundEffect): void; +} + +// @public +export type CallAdapterClientState = { + userId: CommunicationIdentifierKind; + displayName?: string; + call?: CallState; + targetCallees?: CommunicationIdentifier[]; + devices: DeviceManagerState; + endedCall?: CallState; + isTeamsCall: boolean; + isTeamsMeeting: boolean; + isRoomsCall: boolean; + latestErrors: AdapterErrors; + alternateCallerId?: string; + environmentInfo?: EnvironmentInfo; + cameraStatus?: 'On' | 'Off'; + videoBackgroundImages?: VideoBackgroundImage[]; + onResolveVideoEffectDependency?: () => Promise; + onResolveDeepNoiseSuppressionDependency?: () => Promise; + deepNoiseSuppressionOnByDefault?: boolean; + hideDeepNoiseSuppressionButton?: boolean; + selectedVideoBackgroundEffect?: VideoBackgroundEffect; + acceptedTransferCallState?: CallState; + hideAttendeeNames?: boolean; + sounds?: CallingSounds; + reactions?: ReactionResources; +}; + +// @public +export interface CallAdapterDeviceManagement { + askDevicePermission(constrain: PermissionConstraints): Promise; + queryCameras(): Promise; + queryMicrophones(): Promise; + querySpeakers(): Promise; + setCamera(sourceInfo: VideoDeviceInfo, options?: VideoStreamOptions): Promise; + setMicrophone(sourceInfo: AudioDeviceInfo): Promise; + setSpeaker(sourceInfo: AudioDeviceInfo): Promise; +} + +// @public +export type CallAdapterLocator = TeamsMeetingLinkLocator | GroupCallLocator | RoomCallLocator | TeamsMeetingIdLocator; + +// @public +export type CallAdapterState = CallAdapterUiState & CallAdapterClientState; + +// @public +export interface CallAdapterSubscribers { + off(event: 'participantsJoined', listener: ParticipantsJoinedListener): void; + off(event: 'participantsLeft', listener: ParticipantsLeftListener): void; + off(event: 'isMutedChanged', listener: IsMutedChangedListener): void; + off(event: 'callIdChanged', listener: CallIdChangedListener): void; + off(event: 'isLocalScreenSharingActiveChanged', listener: IsLocalScreenSharingActiveChangedListener): void; + off(event: 'displayNameChanged', listener: DisplayNameChangedListener): void; + off(event: 'isSpeakingChanged', listener: IsSpeakingChangedListener): void; + off(event: 'callEnded', listener: CallEndedListener): void; + off(event: 'diagnosticChanged', listener: DiagnosticChangedEventListner): void; + off(event: 'selectedMicrophoneChanged', listener: PropertyChangedEvent): void; + off(event: 'selectedSpeakerChanged', listener: PropertyChangedEvent): void; + off(event: 'error', listener: (e: AdapterError) => void): void; + off(event: 'captionsReceived', listener: CaptionsReceivedListener): void; + off(event: 'isCaptionsActiveChanged', listener: IsCaptionsActiveChangedListener): void; + off(event: 'isCaptionLanguageChanged', listener: IsCaptionLanguageChangedListener): void; + off(event: 'isSpokenLanguageChanged', listener: IsSpokenLanguageChangedListener): void; + off(event: 'transferAccepted', listener: TransferAcceptedListener): void; + off(event: 'capabilitiesChanged', listener: CapabilitiesChangedListener): void; + off(event: 'roleChanged', listener: PropertyChangedEvent): void; + off(event: 'spotlightChanged', listener: SpotlightChangedListener): void; + off(event: 'mutedByOthers', listener: PropertyChangedEvent): void; + on(event: 'participantsJoined', listener: ParticipantsJoinedListener): void; + on(event: 'participantsLeft', listener: ParticipantsLeftListener): void; + on(event: 'isMutedChanged', listener: IsMutedChangedListener): void; + on(event: 'callIdChanged', listener: CallIdChangedListener): void; + on(event: 'isLocalScreenSharingActiveChanged', listener: IsLocalScreenSharingActiveChangedListener): void; + on(event: 'displayNameChanged', listener: DisplayNameChangedListener): void; + on(event: 'isSpeakingChanged', listener: IsSpeakingChangedListener): void; + on(event: 'callEnded', listener: CallEndedListener): void; + on(event: 'diagnosticChanged', listener: DiagnosticChangedEventListner): void; + on(event: 'selectedMicrophoneChanged', listener: PropertyChangedEvent): void; + on(event: 'selectedSpeakerChanged', listener: PropertyChangedEvent): void; + on(event: 'error', listener: (e: AdapterError) => void): void; + on(event: 'captionsReceived', listener: CaptionsReceivedListener): void; + on(event: 'isCaptionsActiveChanged', listener: IsCaptionsActiveChangedListener): void; + on(event: 'isCaptionLanguageChanged', listener: IsCaptionLanguageChangedListener): void; + on(event: 'isSpokenLanguageChanged', listener: IsSpokenLanguageChangedListener): void; + on(event: 'transferAccepted', listener: TransferAcceptedListener): void; + on(event: 'capabilitiesChanged', listener: CapabilitiesChangedListener): void; + on(event: 'roleChanged', listener: PropertyChangedEvent): void; + on(event: 'spotlightChanged', listener: SpotlightChangedListener): void; + on(event: 'mutedByOthers', listener: PropertyChangedEvent): void; +} + +// @public +export type CallAdapterUiState = { + isLocalPreviewMicrophoneEnabled: boolean; + page: CallCompositePage; +}; + +// @public +export const CallAgentProvider: (props: CallAgentProviderProps) => JSX.Element; + +// @public +export interface CallAgentProviderProps { + // (undocumented) + callAgent?: CallAgent | TeamsCallAgent; + // (undocumented) + children: React_2.ReactNode; +} + +// @public +export interface CallAgentState { + displayName?: string; +} + +// @public +export interface CallAndChatLocator { + callLocator: GroupCallLocator; + chatThreadId: string; +} + +// @public +export const CallClientProvider: (props: CallClientProviderProps) => JSX.Element; + +// @public +export interface CallClientProviderProps { + // (undocumented) + callClient: StatefulCallClient; + // (undocumented) + children: React_2.ReactNode; +} + +// @public +export interface CallClientState { + alternateCallerId?: string; + callAgent?: CallAgentState; + calls: { + [key: string]: CallState; + }; + callsEnded: { + [key: string]: CallState; + }; + deviceManager: DeviceManagerState; + environmentInfo?: EnvironmentInfo; + incomingCalls: { + [key: string]: IncomingCallState | TeamsIncomingCallState; + }; + incomingCallsEnded: { + [key: string]: IncomingCallState | TeamsIncomingCallState; + }; + latestErrors: CallErrors; + latestNotifications: CallNotifications; + userId: CommunicationIdentifierKind; +} + +// @public +export const CallComposite: (props: CallCompositeProps) => JSX.Element; + +// @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; +}; + +// @public +export type CallCompositeLoaderProps = { + userId: CommunicationUserIdentifier; + credential: CommunicationTokenCredential; + displayName: string; + locator: CallAdapterLocator; + callAdapterOptions?: AzureCommunicationCallAdapterOptions; + callCompositeOptions?: CallCompositeOptions; +}; + +// @public +export type CallCompositeOptions = { + captionsBanner?: { + height: 'full' | 'default'; + }; + errorBar?: boolean; + callControls?: boolean | CallControlOptions; + remoteVideoTileMenuOptions?: RemoteVideoTileMenuOptions; + localVideoTile?: boolean | LocalVideoTileOptions; + videoTilesOptions?: VideoTilesOptions; + disableAutoShowDtmfDialer?: boolean | DtmfDialPadOptions; + galleryOptions?: { + layout?: VideoGalleryLayout; + }; + surveyOptions?: { + disableSurvey?: boolean; + onSurveyClosed?: (surveyState: 'sent' | 'skipped' | 'error', surveyError?: string) => void; + onSurveySubmitted?: (callId: string, surveyId: string, + submittedSurvey: CallSurvey, + improvementSuggestions: CallSurveyImprovementSuggestions) => Promise; + }; + branding?: { + logo?: { + url: string; + alt?: string; + shape?: 'unset' | 'circle'; + }; + backgroundImage?: { + url: string; + }; + }; + spotlight?: { + hideSpotlightButtons?: boolean; + }; +}; + +// @public +export type CallCompositePage = 'accessDeniedTeamsMeeting' | 'call' | 'configuration' | 'hold' | 'joinCallFailedDueToNoNetwork' | 'leftCall' | 'leaving' | 'lobby' | 'removedFromCall' | 'transferring' | 'badRequest'; + +// @public +export interface CallCompositeProps extends BaseCompositeProps { + adapter: CommonCallAdapter; + callInvitationUrl?: string; + formFactor?: 'desktop' | 'mobile'; + options?: CallCompositeOptions; +} + +// @public +export interface CallCompositeStrings { + addSpotlightMenuLabel: string; + blurBackgroundEffectButtonLabel?: string; + blurBackgroundTooltip?: string; + callRejectedMoreDetails?: string; + callRejectedTitle?: string; + callTimeoutBotDetails?: string; + callTimeoutBotTitle?: string; + callTimeoutDetails?: string; + callTimeoutTitle?: string; + cameraLabel: string; + cameraOffBackgroundEffectWarningText?: string; + cameraPermissionDenied: string; + cameraTurnedOff: string; + capabilityChangedNotification?: CapabilityChangedNotificationStrings; + captionLanguageStrings?: CaptionLanguageStrings; + captionsBannerMoreButtonCallingLabel?: string; + captionsBannerMoreButtonTooltip?: string; + captionsBannerSpinnerText?: string; + captionsSettingsCancelButtonLabel?: string; + captionsSettingsCaptionLanguageDropdownInfoText?: string; + captionsSettingsCaptionLanguageDropdownLabel?: string; + captionsSettingsCloseModalButtonAriaLabel?: string; + captionsSettingsConfirmButtonLabel?: string; + captionsSettingsLabel?: string; + captionsSettingsModalAriaLabel?: string; + captionsSettingsModalTitle?: string; + captionsSettingsSpokenLanguageDropdownInfoText?: string; + captionsSettingsSpokenLanguageDropdownLabel?: string; + chatButtonLabel: string; + close: string; + complianceBannerNowOnlyRecording: string; + complianceBannerNowOnlyTranscription: string; + complianceBannerRecordingAndTranscriptionSaved: string; + complianceBannerRecordingAndTranscriptionStarted: string; + complianceBannerRecordingAndTranscriptionStopped: string; + complianceBannerRecordingSaving: string; + complianceBannerRecordingStarted: string; + complianceBannerRecordingStopped: string; + complianceBannerTranscriptionConsent: string; + complianceBannerTranscriptionSaving: string; + complianceBannerTranscriptionStarted: string; + complianceBannerTranscriptionStopped: string; + configurationPageCallDetails?: string; + configurationPageCameraIsLoadingLabel?: string; + configurationPageTitle: string; + configurationPageVideoEffectsButtonLabel?: string; + copyInviteLinkActionedAriaLabel: string; + copyInviteLinkButtonActionedLabel?: string; + copyInviteLinkButtonLabel?: string; + defaultPlaceHolder: string; + dialpadCloseModalButtonAriaLabel?: string; + dialpadModalAriaLabel?: string; + dialpadModalTitle?: string; + dialpadStartCallButtonLabel?: string; + dismissModalAriaLabel?: string; + dismissSidePaneButtonLabel?: string; + dtmfDialerButtonLabel?: string; + dtmfDialerButtonTooltipOff?: string; + dtmfDialerButtonTooltipOn?: string; + dtmfDialerMoreButtonLabelOff?: string; + dtmfDialerMoreButtonLabelOn?: string; + dtmfDialpadPlaceholderText?: string; + endCallConfirmButtonLabel?: string; + endCallConfirmDialogContent?: string; + endCallConfirmDialogTitle?: string; + endOfSurveyText: string; + exitSpotlightButtonLabel: string; + exitSpotlightButtonTooltip: string; + failedToJoinCallDueToNoNetworkMoreDetails?: string; + failedToJoinCallDueToNoNetworkTitle: string; + failedToJoinTeamsMeetingReasonAccessDeniedMoreDetails?: string; + failedToJoinTeamsMeetingReasonAccessDeniedTitle: string; + forbidAudioMenuLabel: string; + forbidOthersAudioCancelButtonLabel: string; + forbidOthersAudioConfirmButtonLabel: string; + forbidOthersAudioDialogContent: string; + forbidOthersAudioDialogTitle: string; + forbidOthersAudioMenuLabel: string; + forbidOthersVideoCancelButtonLabel: string; + forbidOthersVideoConfirmButtonLabel: string; + forbidOthersVideoDialogContent: string; + forbidOthersVideoDialogTitle: string; + forbidOthersVideoMenuLabel: string; + forbidVideoMenuLabel: string; + hangUpCancelButtonLabel?: string; + holdScreenLabel?: string; + invalidMeetingIdentifier: string; + inviteToRoomRemovedDetails?: string; + inviteToRoomRemovedTitle: string; + learnMore: string; + leaveConfirmButtonLabel?: string; + leaveConfirmDialogContent?: string; + leaveConfirmDialogTitle?: string; + leavingCallTitle?: string; + leftCallMoreDetails?: string; + leftCallTitle: string; + liveCaptionsLabel?: string; + lobbyScreenConnectingToCallMoreDetails?: string; + lobbyScreenConnectingToCallTitle: string; + lobbyScreenWaitingToBeAdmittedMoreDetails?: string; + lobbyScreenWaitingToBeAdmittedTitle: string; + manyParticipantsJoined: string; + manyParticipantsLeft: string; + manyUnnamedParticipantsJoined: string; + manyUnnamedParticipantsLeft: string; + microphonePermissionDenied: string; + microphoneToggleInLobbyNotAllowed: string; + moreButtonCallingLabel: string; + moreButtonGalleryControlLabel?: string; + moreButtonGalleryDefaultLayoutLabel?: string; + moreButtonGalleryFloatingLocalLayoutLabel?: string; + moreButtonGalleryFocusedContentLayoutLabel?: string; + moreButtonGalleryPositionToggleLabel?: string; + moreButtonGallerySpeakerLayoutLabel?: string; + moreButtonLargeGalleryDefaultLayoutLabel?: string; + moreButtonTogetherModeLayoutLabel?: string; + muteAllCancelButtonLabel: string; + muteAllConfirmButtonLabel: string; + muteAllDialogContent: string; + muteAllDialogTitle: string; + muteAllMenuLabel: string; + mutedMessage: string; + networkReconnectMoreDetails: string; + networkReconnectTitle: string; + noCamerasLabel: string; + noMicrophonesLabel: string; + noSpeakersLabel: string; + notInvitedToRoomDetails?: string; + notInvitedToRoomTitle: string; + openDialpadButtonLabel?: string; + openDtmfDialpadLabel?: string; + outboundCallingNoticeString?: string; + participantCouldNotBeReachedMoreDetails?: string; + participantCouldNotBeReachedTitle?: string; + participantIdIsMalformedMoreDetails?: string; + participantIdIsMalformedTitle?: string; + participantJoinedNoticeString: string; + participantLeftNoticeString: string; + peopleButtonLabel: string; + peopleButtonTooltipClose: string; + peopleButtonTooltipOpen: string; + peoplePaneAddPeopleButtonLabel?: string; + peoplePaneMoreButtonAriaLabel: string; + peoplePaneSubTitle?: string; + peoplePaneTitle: string; + permissionToReachTargetParticipantNotAllowedMoreDetails?: string; + permissionToReachTargetParticipantNotAllowedTitle?: string; + permitAudioMenuLabel: string; + permitOthersAudioCancelButtonLabel: string; + permitOthersAudioConfirmButtonLabel: string; + permitOthersAudioDialogContent: string; + permitOthersAudioDialogTitle: string; + permitOthersAudioMenuLabel: string; + permitOthersVideoCancelButtonLabel: string; + permitOthersVideoConfirmButtonLabel: string; + permitOthersVideoDialogContent: string; + permitOthersVideoDialogTitle: string; + permitOthersVideoMenuLabel: string; + permitVideoMenuLabel: string; + phoneCallMoreButtonLabel: string; + pinParticipantLimitReachedMenuLabel: string; + pinParticipantMenuItemAriaLabel: string; + pinParticipantMenuLabel: string; + privacyPolicy: string; + rejoinCallButtonLabel: string; + removeBackgroundEffectButtonLabel?: string; + removeBackgroundTooltip?: string; + removedFromCallMoreDetails?: string; + removedFromCallTitle: string; + removeMenuLabel?: string; + resumeCallButtonAriaLabel?: string; + resumeCallButtonLabel?: string; + resumingCallButtonAriaLabel?: string; + resumingCallButtonLabel?: string; + returnToCallButtonAriaDescription?: string; + returnToCallButtonAriaLabel?: string; + roomNotFoundDetails?: string; + roomNotFoundTitle: string; + roomNotValidDetails?: string; + roomNotValidTitle: string; + selectedPeopleButtonLabel: string; + soundLabel: string; + spokenLanguageStrings?: SpokenLanguageStrings; + spotlightLimitReachedMenuTitle: string; + spotlightPrompt: SpotlightPromptStrings; + starRatingAriaLabel: string; + starSurveyFiveStarText: string; + starSurveyFourStarText: string; + starSurveyHelperText: string; + starSurveyOneStarText: string; + starSurveyThreeStarText: string; + starSurveyTwoStarText: string; + startCallButtonLabel: string; + startCaptionsButtonOffLabel?: string; + startCaptionsButtonOnLabel?: string; + startCaptionsButtonTooltipOffContent?: string; + startCaptionsButtonTooltipOnContent?: string; + startSpotlightMenuLabel: string; + stopAllSpotlightMenuLabel: string; + stopSpotlightMenuLabel: string; + stopSpotlightOnSelfMenuLabel: string; + surveyConfirmButtonLabel: string; + surveyIssues: SurveyIssues; + surveyIssuesHeadingStrings: SurveyIssuesHeadingStrings; + surveySkipButtonLabel: string; + surveyTitle: string; + tagsSurveyHelperText: string; + tagsSurveyQuestion: string; + tagsSurveyTextFieldDefaultText: string; + threeParticipantJoinedNoticeString: string; + threeParticipantLeftNoticeString: string; + transferPageNoticeString: string; + transferPageTransferorText: string; + transferPageTransferTargetText: string; + transferPageUnknownTransferorDisplayName: string; + transferPageUnknownTransferTargetDisplayName: string; + twoParticipantJoinedNoticeString: string; + twoParticipantLeftNoticeString: string; + unableToResolveTenantMoreDetails?: string; + unableToResolveTenantTitle?: string; + unableToStartVideoEffect?: string; + unnamedParticipantString: string; + unpinParticipantMenuItemAriaLabel: string; + unpinParticipantMenuLabel: string; + videoEffectsPaneAriaLabel: string; + videoEffectsPaneBackgroundSelectionTitle: string; + videoEffectsPaneTitle: string; +} + +// @public +export type CallControlDisplayType = 'default' | 'compact'; + +// @public +export type CallControlOptions = CommonCallControlOptions & { + participantsButton?: boolean | { + disabled: boolean; + }; + legacyControlBarExperience?: boolean; +}; + +// @public +export type CallEndedListener = (event: CallAdapterCallEndedEvent) => void; + +// @public +export class CallError extends Error { + constructor(target: CallErrorTarget, innerError: Error, timestamp?: Date); + innerError: Error; + target: CallErrorTarget; + timestamp: Date; +} + +// @public +export type CallErrorBarSelector = (state: CallClientState, props: CallingBaseSelectorProps) => { + activeErrorMessages: ActiveErrorMessage[]; +}; + +// @public +export type CallErrors = { + [target in CallErrorTarget]: CallError; +}; + +// @public +export type CallErrorTarget = 'Call.addParticipant' | 'Call.dispose' | 'Call.feature' | 'Call.hangUp' | 'Call.hold' | 'Call.mute' | 'Call.muteIncomingAudio' | 'Call.off' | 'Call.on' | 'Call.removeParticipant' | 'Call.resume' | 'Call.sendDtmf' | 'Call.startAudio' | 'Call.startScreenSharing' | 'Call.startVideo' | 'Call.stopScreenSharing' | 'Call.stopAudio' | 'Call.stopVideo' | 'Call.unmute' | 'Call.unmuteIncomingAudio' | 'CallAgent.dispose' | 'CallAgent.feature' | 'CallAgent.join' | 'CallAgent.off' | 'CallAgent.on' | 'CallAgent.startCall' | 'CallClient.createCallAgent' | 'CallClient.createTeamsCallAgent' | 'CallClient.feature' | 'CallClient.getDeviceManager' | 'CallClient.getEnvironmentInfo' | 'DeviceManager.askDevicePermission' | 'DeviceManager.getCameras' | 'DeviceManager.getMicrophones' | 'DeviceManager.getSpeakers' | 'DeviceManager.off' | 'DeviceManager.on' | 'DeviceManager.selectMicrophone' | 'DeviceManager.selectSpeaker' | 'IncomingCall.accept' | 'IncomingCall.reject' | 'TeamsCall.addParticipant' | 'VideoEffectsFeature.startEffects' | 'Call.mutedByOthers' | 'Call.muteAllRemoteParticipants' | 'Call.setConstraints'; + +// @public +export type CallIdChangedListener = (event: { + callId: string; +}) => void; + +// @public +export interface CallInfoState { + groupId?: string; + kind: IncomingCallKind; + participantId: string; + threadId?: string; +} + +// @public +export type CallingBaseSelectorProps = { + callId: string; +}; + +// @public +export interface CallingHandlers extends CommonCallingHandlers { + // (undocumented) + onStartCall: (participants: CommunicationIdentifier[], options?: StartCallOptions) => Call | undefined; +} + +// @public +export type CallingHandlersOptions = { + onResolveVideoBackgroundEffectsDependency?: () => Promise; + onResolveDeepNoiseSuppressionDependency?: () => Promise; +}; + +// @public +export type CallingReturnProps JSX.Element> = GetCallingSelector extends (state: CallClientState, props: any) => any ? ReturnType> & Common[0]> : never; + +// @public +export type CallingSounds = { + callEnded?: SoundEffect; + callRinging?: SoundEffect; + callBusy?: SoundEffect; +}; + +// @public +export interface CallingTheme { + // (undocumented) + callingPalette: { + callRed: string; + callRedDark: string; + callRedDarker: string; + iconWhite: string; + raiseHandGold: string; + videoTileLabelBackgroundLight: string; + }; +} + +// @public (undocumented) +export interface CallNotification { + // (undocumented) + target: NotificationTarget; + // (undocumented) + timestamp: Date; +} + +// @public (undocumented) +export type CallNotifications = { + [target in NotificationTarget]: CallNotification; +}; + +// @public +export type CallParticipantListParticipant = ParticipantListParticipant & { + state: ParticipantState; + isScreenSharing?: boolean; + isMuted?: boolean; + isSpeaking?: boolean; + raisedHand?: RaisedHand; + reaction?: Reaction; + spotlight?: Spotlight; + mediaAccess?: MediaAccess; +}; + +// @public +export const CallProvider: (props: CallProviderProps) => JSX.Element; + +// @public +export interface CallProviderProps { + // (undocumented) + call?: Call | TeamsCall; + // (undocumented) + children: React_2.ReactNode; +} + +// @public +export interface CallState { + callEndReason?: CallEndReason; + callerInfo: CallerInfo; + capabilitiesFeature?: CapabilitiesFeatureState; + captionsFeature: CaptionsCallFeatureState; + contentSharingRemoteParticipant?: string; + diagnostics: DiagnosticsCallFeatureState; + direction: CallDirection; + dominantSpeakers?: DominantSpeakersInfo; + endTime: Date | undefined; + hideAttendeeNames?: boolean; + id: string; + info?: TeamsCallInfo; + isMuted: boolean; + isScreenSharingOn: boolean; + kind: CallKind; + localParticipantReaction?: ReactionState; + localVideoStreams: LocalVideoStreamState[]; + meetingConference?: { + conferencePhones: ConferencePhoneInfo[]; + }; + meetingMediaAccess?: MediaAccessState; + optimalVideoCount: OptimalVideoCountFeatureState; + pptLive: PPTLiveCallFeatureState; + raiseHand: RaiseHandCallFeature; + recording: RecordingCallFeature; + remoteParticipants: { + [keys: string]: RemoteParticipantState; + }; + remoteParticipantsEnded: { + [keys: string]: RemoteParticipantState; + }; + role?: ParticipantRole; + screenShareRemoteParticipant?: string; + spotlight?: SpotlightCallFeatureState; + startTime: Date; + state: CallState_2; + transcription: TranscriptionCallFeature; + transfer: TransferFeature; +} + +// @public +export interface CallSurveyImprovementSuggestions { + audioRating?: string; + overallRating?: string; + screenshareRating?: string; + videoRating?: string; +} + +// @public +export interface CallWithChatAdapter extends CallWithChatAdapterManagement, AdapterState, Disposable_2, CallWithChatAdapterSubscriptions { +} + +// @public +export interface CallWithChatAdapterManagement { + addParticipant(participant: PhoneNumberIdentifier, options?: AddPhoneNumberOptions): Promise; + // (undocumented) + addParticipant(participant: CommunicationUserIdentifier): Promise; + askDevicePermission(constrain: PermissionConstraints): Promise; + createStreamView(remoteUserId?: string, options?: VideoStreamOptions): Promise; + deleteMessage(messageId: string): Promise; + disposeLocalVideoStreamView(): Promise; + disposeRemoteVideoStreamView(remoteUserId: string): Promise; + disposeScreenShareStreamView(remoteUserId: string): Promise; + disposeStreamView(remoteUserId?: string, options?: VideoStreamOptions): Promise; + // (undocumented) + downloadResourceToCache(resourceDetails: ResourceDetails): Promise; + fetchInitialData(): Promise; + forbidAudio: (userIds: string[]) => Promise; + forbidOthersAudio: () => Promise; + forbidOthersVideo: () => Promise; + forbidVideo: (userIds: string[]) => Promise; + holdCall(): Promise; + // @deprecated + joinCall(microphoneOn?: boolean): Call | undefined; + joinCall(options?: JoinCallOptions): Call | undefined; + leaveCall(forEveryone?: boolean): Promise; + loadPreviousChatMessages(messagesToLoad: number): Promise; + lowerHand(): Promise; + mute(): Promise; + muteAllRemoteParticipants(): Promise; + muteParticipant(userId: string): Promise; + onReactionClick(reaction: Reaction_2): Promise; + permitAudio: (userIds: string[]) => Promise; + permitOthersAudio: () => Promise; + permitOthersVideo: () => Promise; + permitVideo: (userIds: string[]) => Promise; + queryCameras(): Promise; + queryMicrophones(): Promise; + querySpeakers(): Promise; + raiseHand(): Promise; + removeParticipant(userId: string): Promise; + removeParticipant(participant: CommunicationIdentifier): Promise; + // (undocumented) + removeResourceFromCache(resourceDetails: ResourceDetails): void; + resumeCall(): Promise; + sendDtmfTone: (dtmfTone: DtmfTone_2) => Promise; + sendMessage(content: string, options?: SendMessageOptions): Promise; + sendReadReceipt(chatMessageId: string): Promise; + sendTypingIndicator(): Promise; + setCamera(sourceInfo: VideoDeviceInfo, options?: VideoStreamOptions): Promise; + setCaptionLanguage(language: string): Promise; + setMicrophone(sourceInfo: AudioDeviceInfo): Promise; + setSpeaker(sourceInfo: AudioDeviceInfo): Promise; + setSpokenLanguage(language: string): Promise; + startCall(participants: string[], options?: StartCallOptions): Call | undefined; + startCall(participants: (MicrosoftTeamsAppIdentifier | PhoneNumberIdentifier | CommunicationUserIdentifier | MicrosoftTeamsUserIdentifier | UnknownIdentifier)[], options?: StartCallOptions): Call | undefined; + startCamera(options?: VideoStreamOptions): Promise; + startCaptions(options?: StartCaptionsAdapterOptions): Promise; + startNoiseSuppressionEffect(): Promise; + startScreenShare(): Promise; + startSpotlight(userIds?: string[]): Promise; + startVideoBackgroundEffect(videoBackgroundEffect: VideoBackgroundEffect): Promise; + stopAllSpotlight(): Promise; + stopCamera(): Promise; + stopCaptions(options?: StopCaptionsAdapterOptions): Promise; + stopNoiseSuppressionEffect(): Promise; + stopScreenShare(): Promise; + stopSpotlight(userIds?: string[]): Promise; + stopVideoBackgroundEffects(): Promise; + submitSurvey(survey: CallSurvey): Promise; + unmute(): Promise; + updateBackgroundPickerImages(backgroundImages: VideoBackgroundImage[]): void; + updateMessage(messageId: string, content: string, options?: Record): Promise; + updateSelectedVideoBackgroundEffect(selectedVideoBackground: VideoBackgroundEffect): void; +} + +// @public +export interface CallWithChatAdapterState extends CallWithChatAdapterUiState, CallWithChatClientState { +} + +// @public +export interface CallWithChatAdapterSubscriptions { + // (undocumented) + off(event: 'callEnded', listener: CallEndedListener): void; + // (undocumented) + off(event: 'isMutedChanged', listener: IsMutedChangedListener): void; + // (undocumented) + off(event: 'callIdChanged', listener: CallIdChangedListener): void; + // (undocumented) + off(event: 'isLocalScreenSharingActiveChanged', listener: IsLocalScreenSharingActiveChangedListener): void; + // (undocumented) + off(event: 'displayNameChanged', listener: DisplayNameChangedListener): void; + // (undocumented) + off(event: 'isSpeakingChanged', listener: IsSpeakingChangedListener): void; + // (undocumented) + off(event: 'callParticipantsJoined', listener: ParticipantsJoinedListener): void; + // (undocumented) + off(event: 'callParticipantsLeft', listener: ParticipantsLeftListener): void; + // (undocumented) + off(event: 'selectedMicrophoneChanged', listener: PropertyChangedEvent): void; + // (undocumented) + off(event: 'selectedSpeakerChanged', listener: PropertyChangedEvent): void; + // (undocumented) + off(event: 'callError', listener: (e: AdapterError) => void): void; + // (undocumented) + off(event: 'captionsReceived', listener: CaptionsReceivedListener): void; + // (undocumented) + off(event: 'isCaptionsActiveChanged', listener: IsCaptionsActiveChangedListener): void; + // (undocumented) + off(event: 'isCaptionLanguageChanged', listener: IsCaptionLanguageChangedListener): void; + // (undocumented) + off(event: 'isSpokenLanguageChanged', listener: IsSpokenLanguageChangedListener): void; + // (undocumented) + off(event: 'capabilitiesChanged', listener: CapabilitiesChangedListener): void; + // (undocumented) + off(event: 'spotlightChanged', listener: SpotlightChangedListener): void; + // (undocumented) + off(event: 'messageReceived', listener: MessageReceivedListener): void; + // (undocumented) + off(event: 'messageEdited', listener: MessageEditedListener): void; + // (undocumented) + off(event: 'messageDeleted', listener: MessageDeletedListener): void; + // (undocumented) + off(event: 'messageSent', listener: MessageSentListener): void; + // (undocumented) + off(event: 'messageRead', listener: MessageReadListener): void; + // (undocumented) + off(event: 'chatParticipantsAdded', listener: ParticipantsAddedListener): void; + // (undocumented) + off(event: 'chatParticipantsRemoved', listener: ParticipantsRemovedListener): void; + // (undocumented) + off(event: 'chatError', listener: (e: AdapterError) => void): void; + // (undocumented) + off(event: 'chatInitialized', listener: ChatInitializedListener): void; + // (undocumented) + on(event: 'callEnded', listener: CallEndedListener): void; + // (undocumented) + on(event: 'isMutedChanged', listener: IsMutedChangedListener): void; + // (undocumented) + on(event: 'callIdChanged', listener: CallIdChangedListener): void; + // (undocumented) + on(event: 'isLocalScreenSharingActiveChanged', listener: IsLocalScreenSharingActiveChangedListener): void; + // (undocumented) + on(event: 'displayNameChanged', listener: DisplayNameChangedListener): void; + // (undocumented) + on(event: 'isSpeakingChanged', listener: IsSpeakingChangedListener): void; + // (undocumented) + on(event: 'callParticipantsJoined', listener: ParticipantsJoinedListener): void; + // (undocumented) + on(event: 'callParticipantsLeft', listener: ParticipantsLeftListener): void; + // (undocumented) + on(event: 'selectedMicrophoneChanged', listener: PropertyChangedEvent): void; + // (undocumented) + on(event: 'selectedSpeakerChanged', listener: PropertyChangedEvent): void; + // (undocumented) + on(event: 'callError', listener: (e: AdapterError) => void): void; + // (undocumented) + on(event: 'captionsReceived', listener: CaptionsReceivedListener): void; + // (undocumented) + on(event: 'isCaptionsActiveChanged', listener: IsCaptionsActiveChangedListener): void; + // (undocumented) + on(event: 'isCaptionLanguageChanged', listener: IsCaptionLanguageChangedListener): void; + // (undocumented) + on(event: 'isSpokenLanguageChanged', listener: IsSpokenLanguageChangedListener): void; + // (undocumented) + on(event: 'capabilitiesChanged', listener: CapabilitiesChangedListener): void; + // (undocumented) + on(event: 'spotlightChanged', listener: SpotlightChangedListener): void; + // (undocumented) + on(event: 'messageReceived', listener: MessageReceivedListener): void; + // (undocumented) + on(event: 'messageEdited', listener: MessageEditedListener): void; + // (undocumented) + on(event: 'messageDeleted', listener: MessageDeletedListener): void; + // (undocumented) + on(event: 'messageSent', listener: MessageSentListener): void; + // (undocumented) + on(event: 'messageRead', listener: MessageReadListener): void; + // (undocumented) + on(event: 'chatParticipantsAdded', listener: ParticipantsAddedListener): void; + // (undocumented) + on(event: 'chatParticipantsRemoved', listener: ParticipantsRemovedListener): void; + // (undocumented) + on(event: 'chatError', listener: (e: AdapterError) => void): void; + // (undocumented) + on(event: 'chatInitialized', listener: ChatInitializedListener): void; +} + +// @public +export interface CallWithChatAdapterUiState { + isLocalPreviewMicrophoneEnabled: boolean; + page: CallCompositePage; +} + +// @public +export interface CallWithChatClientState { + alternateCallerId?: string; + call?: CallState; + chat?: ChatThreadClientState; + deepNoiseSuppressionOnByDefault?: boolean; + devices: DeviceManagerState; + displayName: string | undefined; + environmentInfo?: EnvironmentInfo; + hideAttendeeNames?: boolean; + hideDeepNoiseSuppressionButton?: boolean; + isTeamsCall: boolean; + isTeamsMeeting: boolean; + latestCallErrors: AdapterErrors; + latestChatErrors: AdapterErrors; + onResolveDeepNoiseSuppressionDependency?: () => Promise; + onResolveVideoEffectDependency?: () => Promise; + reactions?: ReactionResources; + selectedVideoBackgroundEffect?: VideoBackgroundEffect; + userId: CommunicationIdentifierKind; + videoBackgroundImages?: VideoBackgroundImage[]; +} + +// @public +export const CallWithChatComposite: (props: CallWithChatCompositeProps) => JSX.Element; + +// @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; +}; + +// @public +export type CallWithChatCompositeLoaderProps = { + userId: CommunicationUserIdentifier; + credential: CommunicationTokenCredential; + displayName: string; + endpoint: string; + locator: CallAndChatLocator; + callAdapterOptions?: AzureCommunicationCallAdapterOptions; + callWithChatCompositeOptions?: CallWithChatCompositeOptions; +}; + +// @public +export type CallWithChatCompositeOptions = { + callControls?: boolean | CallWithChatControlOptions; + remoteVideoTileMenuOptions?: RemoteVideoTileMenuOptions; + localVideoTile?: boolean | LocalVideoTileOptions; + galleryOptions?: { + layout?: VideoGalleryLayout; + }; + surveyOptions?: { + disableSurvey?: boolean; + onSurveyClosed?: (surveyState: 'sent' | 'skipped' | 'error', surveyError?: string) => void; + onSurveySubmitted?: (callId: string, surveyId: string, + submittedSurvey: CallSurvey, + improvementSuggestions: CallSurveyImprovementSuggestions) => Promise; + }; + branding?: { + logo?: { + url: string; + alt?: string; + shape?: 'unset' | 'circle'; + }; + backgroundImage?: { + url: string; + }; + }; + spotlight?: { + hideSpotlightButtons?: boolean; + }; +}; + +// @public +export interface CallWithChatCompositeProps extends BaseCompositeProps { + // (undocumented) + adapter: CallWithChatAdapter; + fluentTheme?: PartialTheme | Theme; + formFactor?: 'desktop' | 'mobile'; + joinInvitationURL?: string; + options?: CallWithChatCompositeOptions; +} + +// @public +export interface CallWithChatCompositeStrings { + chatButtonLabel: string; + chatButtonNewMessageNotificationLabel: string; + chatButtonTooltipClose: string; + chatButtonTooltipClosedWithMessageCount: string; + chatButtonTooltipOpen: string; + chatPaneTitle: string; + copyInviteLinkActionedAriaLabel: string; + copyInviteLinkButtonActionedLabel: string; + copyInviteLinkButtonLabel: string; + dialpadCloseModalButtonAriaLabel: string; + dialpadModalAriaLabel: string; + dialpadModalTitle: string; + dialpadStartCallButtonLabel: string; + dismissSidePaneButtonLabel?: string; + dtmfDialpadPlaceholderText: string; + moreDrawerAudioDeviceMenuTitle?: string; + moreDrawerButtonLabel: string; + moreDrawerButtonTooltip: string; + moreDrawerCaptionLanguageMenuTitle: string; + moreDrawerCaptionsMenuTitle: string; + moreDrawerGalleryOptionsMenuTitle: string; + moreDrawerMicrophoneMenuTitle: string; + moreDrawerSpeakerMenuTitle: string; + moreDrawerSpokenLanguageMenuTitle: string; + openDialpadButtonLabel: string; + openDtmfDialpadLabel: string; + peopleButtonLabel: string; + peopleButtonTooltipClose: string; + peopleButtonTooltipCloseAriaLabel: string; + peopleButtonTooltipOpen: string; + peopleButtonTooltipOpenAriaLabel: string; + peoplePaneAddPeopleButtonLabel: string; + peoplePaneSubTitle: string; + peoplePaneTitle: string; + pictureInPictureTileAriaLabel: string; + removeMenuLabel: string; + returnToCallButtonAriaDescription?: string; + returnToCallButtonAriaLabel?: string; + selectedPeopleButtonLabel: string; +} + +// @public +export interface CallWithChatControlOptions extends CommonCallControlOptions { + chatButton?: boolean | { + disabled: boolean; + }; +} + +// @public +export type CallWithChatEvent = 'callError' | 'chatError' | 'callEnded' | 'isMutedChanged' | 'callIdChanged' | 'isLocalScreenSharingActiveChanged' | 'displayNameChanged' | 'isSpeakingChanged' | 'callParticipantsJoined' | 'callParticipantsLeft' | 'selectedMicrophoneChanged' | 'selectedSpeakerChanged' | 'isCaptionsActiveChanged' | 'captionsReceived' | 'isCaptionLanguageChanged' | 'isSpokenLanguageChanged' | 'capabilitiesChanged' | 'spotlightChanged' | 'messageReceived' | 'messageEdited' | 'messageDeleted' | 'messageSent' | 'messageRead' | 'chatParticipantsAdded' | 'chatParticipantsRemoved' | 'chatInitialized'; + +// @public +export const CameraButton: (props: CameraButtonProps) => JSX.Element; + +// @public +export interface CameraButtonContextualMenuStyles extends IContextualMenuStyles { + menuItemStyles?: IContextualMenuItemStyles; +} + +// @public +export interface CameraButtonProps extends ControlBarButtonProps { + cameras?: OptionsDevice[]; + enableDeviceSelectionMenu?: boolean; + localVideoViewOptions?: VideoStreamOptions; + onClickVideoEffects?: (showVideoEffects: boolean) => void; + onSelectCamera?: (device: OptionsDevice) => Promise; + onToggleCamera?: (options?: VideoStreamOptions) => Promise; + selectedCamera?: OptionsDevice; + strings?: Partial; + styles?: Partial; +} + +// @public +export type CameraButtonSelector = (state: CallClientState, props: CallingBaseSelectorProps) => { + disabled: boolean; + checked: boolean; + cameras: VideoDeviceInfo[]; + selectedCamera?: VideoDeviceInfo; +}; + +// @public +export interface CameraButtonStrings { + cameraActionTurnedOffAnnouncement?: string; + cameraActionTurnedOnAnnouncement?: string; + cameraButtonAriaDescription?: string; + cameraButtonSplitRoleDescription?: string; + cameraMenuTitle: string; + cameraMenuTooltip: string; + cameraPrimaryActionSplitButtonTitle?: string; + offLabel: string; + offSplitButtonAriaLabel?: string; + offSplitButtonPrimaryActionCamera?: string; + onLabel: string; + onSplitButtonAriaLabel?: string; + onSplitButtonPrimaryActionCamera?: string; + tooltipDisabledContent?: string; + tooltipOffContent?: string; + tooltipOnContent?: string; + tooltipVideoLoadingContent?: string; + videoEffectsMenuItemTitle?: string; +} + +// @public +export interface CameraButtonStyles extends ControlBarButtonStyles { + menuStyles?: Partial; +} + +// @public +export type CancelEditCallback = (messageId: string) => void; + +// @public +export type CapabilitiesChangedListener = (data: CapabilitiesChangeInfo) => void; + +// @public +export interface CapabilitiesFeatureState { + capabilities: ParticipantCapabilities; + latestCapabilitiesChangeInfo: CapabilitiesChangeInfo; +} + +// @public +export interface CapabilityChangedNotificationStrings { + hideAttendeeNames?: { + hideAttendeeNameAttendee?: string; + hideAttendeeNamePresenter?: string; + }; + shareScreen?: { + lostDueToRoleChangeToAttendee?: string; + grantedDueToRoleChangeToPresenter?: string; + }; + turnVideoOn?: { + lostDueToMeetingOption?: string; + grantedDueToMeetingOption?: string; + }; + unmuteMic?: { + lostDueToMeetingOption?: string; + grantedDueToMeetingOption?: string; + }; +} + +// @public +export interface CaptionLanguageStrings { + // (undocumented) + 'fr-ca': string; + // (undocumented) + 'pt-pt': string; + // (undocumented) + 'zh-Hans': string; + // (undocumented) + 'zh-Hant': string; + // (undocumented) + ar: string; + // (undocumented) + cs: string; + // (undocumented) + cy: string; + // (undocumented) + da: string; + // (undocumented) + de: string; + // (undocumented) + el: string; + // (undocumented) + en: string; + // (undocumented) + es: string; + // (undocumented) + fi: string; + // (undocumented) + fr: string; + // (undocumented) + he: string; + // (undocumented) + hi: string; + // (undocumented) + hu: string; + // (undocumented) + it: string; + // (undocumented) + ja: string; + // (undocumented) + ko: string; + // (undocumented) + nb: string; + // (undocumented) + nl: string; + // (undocumented) + pl: string; + // (undocumented) + pt: string; + // (undocumented) + ro: string; + // (undocumented) + ru: string; + // (undocumented) + sk: string; + // (undocumented) + sv: string; + // (undocumented) + th: string; + // (undocumented) + tr: string; + // (undocumented) + uk: string; + // (undocumented) + vi: string; +} + +// @public +export const CaptionsBanner: (props: CaptionsBannerProps) => JSX.Element; + +// @public +export interface CaptionsBannerProps { + captions: CaptionsInformation[]; + captionsOptions?: { + height: 'full' | 'default'; + }; + formFactor?: 'default' | 'compact'; + isCaptionsOn?: boolean; + onRenderAvatar?: OnRenderAvatarCallback; + startCaptionsInProgress?: boolean; + strings?: CaptionsBannerStrings; +} + +// @public +export type CaptionsBannerSelector = (state: CallClientState, props: CallingBaseSelectorProps) => { + captions: CaptionsInformation[]; + isCaptionsOn: boolean; +}; + +// @public +export interface CaptionsBannerStrings { + captionsBannerSpinnerText?: string; +} + +// @public (undocumented) +export interface CaptionsCallFeatureState { + captions: CaptionsInfo[]; + captionsKind: CaptionsKind; + currentCaptionLanguage: string; + currentSpokenLanguage: string; + isCaptionsFeatureActive: boolean; + startCaptionsInProgress: boolean; + supportedCaptionLanguages: string[]; + supportedSpokenLanguages: string[]; +} + +// @public +export type CaptionSettingsSelector = (state: CallClientState, props: CallingBaseSelectorProps) => { + supportedCaptionLanguages: SupportedCaptionLanguage[]; + currentCaptionLanguage: SupportedCaptionLanguage; + supportedSpokenLanguages: SupportedSpokenLanguage[]; + currentSpokenLanguage: SupportedSpokenLanguage; + isCaptionsFeatureActive: boolean; +}; + +// @public (undocumented) +export interface CaptionsInfo { + captionLanguage?: string; + captionText: string; + resultType: CaptionsResultType; + speaker: CallerInfo; + spokenLanguage: string; + spokenText?: string; + timestamp: Date; +} + +// @public +export type CaptionsInformation = { + id: string; + displayName: string; + captionText: string; + userId?: string; +}; + +// @public +export type CaptionsOptions = { + spokenLanguage: string; +}; + +// @public +export type CaptionsReceivedListener = (event: { + captionsInfo: CaptionsInfo; +}) => void; + +// @public +export const CaptionsSettingsModal: (props: CaptionsSettingsModalProps) => JSX.Element; + +// @public +export interface CaptionsSettingsModalProps { + captionLanguageStrings?: CaptionLanguageStrings; + changeCaptionLanguage?: boolean; + currentCaptionLanguage?: SupportedCaptionLanguage; + currentSpokenLanguage: SupportedSpokenLanguage; + isCaptionsFeatureActive?: boolean; + onDismissCaptionsSettings?: () => void; + onSetCaptionLanguage?: (language: SupportedCaptionLanguage) => Promise; + onSetSpokenLanguage: (language: SupportedSpokenLanguage) => Promise; + onStartCaptions: (options?: CaptionsOptions) => Promise; + showModal?: boolean; + spokenLanguageStrings?: SpokenLanguageStrings; + strings?: CaptionsSettingsModalStrings; + supportedCaptionLanguages?: SupportedCaptionLanguage[]; + supportedSpokenLanguages: SupportedSpokenLanguage[]; +} + +// @public +export interface CaptionsSettingsModalStrings { + captionsSettingsCancelButtonLabel?: string; + captionsSettingsCaptionLanguageDropdownInfoText?: string; + captionsSettingsCaptionLanguageDropdownLabel?: string; + captionsSettingsCloseModalButtonAriaLabel?: string; + captionsSettingsConfirmButtonLabel?: string; + captionsSettingsModalAriaLabel?: string; + captionsSettingsModalTitle?: string; + captionsSettingsSpokenLanguageDropdownInfoText?: string; + captionsSettingsSpokenLanguageDropdownLabel?: string; +} + +// @public +export type ChatAdapter = ChatAdapterThreadManagement & AdapterState & Disposable_2 & ChatAdapterSubscribers; + +// @public +export type ChatAdapterState = ChatAdapterUiState & ChatCompositeClientState; + +// @public +export interface ChatAdapterSubscribers { + off(event: 'messageReceived', listener: MessageReceivedListener): void; + off(event: 'messageEdited', listener: MessageEditedListener): void; + off(event: 'messageDeleted', listener: MessageDeletedListener): void; + off(event: 'messageSent', listener: MessageSentListener): void; + off(event: 'messageRead', listener: MessageReadListener): void; + off(event: 'participantsAdded', listener: ParticipantsAddedListener): void; + off(event: 'participantsRemoved', listener: ParticipantsRemovedListener): void; + off(event: 'topicChanged', listener: TopicChangedListener): void; + off(event: 'error', listener: (e: AdapterError) => void): void; + on(event: 'messageReceived', listener: MessageReceivedListener): void; + on(event: 'messageEdited', listener: MessageEditedListener): void; + on(event: 'messageDeleted', listener: MessageDeletedListener): void; + on(event: 'messageSent', listener: MessageSentListener): void; + on(event: 'messageRead', listener: MessageReadListener): void; + on(event: 'participantsAdded', listener: ParticipantsAddedListener): void; + on(event: 'participantsRemoved', listener: ParticipantsRemovedListener): void; + on(event: 'topicChanged', listener: TopicChangedListener): void; + on(event: 'error', listener: (e: AdapterError) => void): void; +} + +// @public +export interface ChatAdapterThreadManagement { + deleteMessage(messageId: string): Promise; + downloadResourceToCache(resourceDetails: ResourceDetails): Promise; + fetchInitialData(): Promise; + loadPreviousChatMessages(messagesToLoad: number): Promise; + removeParticipant(userId: string): Promise; + removeResourceFromCache(resourceDetails: ResourceDetails): void; + sendMessage(content: string, options?: SendMessageOptions): Promise; + sendReadReceipt(chatMessageId: string): Promise; + sendTypingIndicator(): Promise; + setTopic(topicName: string): Promise; + updateMessage(messageId: string, content: string, options?: Record): Promise; +} + +// @public +export type ChatAdapterUiState = { + error?: Error; +}; + +// @public +export type ChatAttachmentType = 'unknown' | 'image' | 'file'; + +// @public +export type ChatBaseSelectorProps = { + threadId: string; +}; + +// @public +export const ChatClientProvider: (props: ChatClientProviderProps) => JSX.Element; + +// @public +export type ChatClientProviderProps = { + children: React_2.ReactNode; + chatClient: StatefulChatClient; +}; + +// @public +export type ChatClientState = { + userId: CommunicationIdentifierKind; + displayName: string; + threads: { + [key: string]: ChatThreadClientState; + }; + latestErrors: ChatErrors; +}; + +// @public +export const ChatComposite: (props: ChatCompositeProps) => JSX.Element; + +// @public +export type ChatCompositeClientState = { + userId: CommunicationIdentifierKind; + displayName: string; + thread: ChatThreadClientState; + latestErrors: AdapterErrors; +}; + +// @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; +}; + +// @public +export type ChatCompositeLoaderProps = { + userId: CommunicationUserIdentifier; + credential: CommunicationTokenCredential; + displayName?: string; + endpoint: string; + threadId: string; + chatCompositeOptions?: ChatCompositeOptions; +}; + +// @public +export type ChatCompositeOptions = { + errorBar?: boolean; + topic?: boolean; + autoFocus?: 'sendBoxTextField'; +}; + +// @public +export interface ChatCompositeProps extends BaseCompositeProps { + adapter: ChatAdapter; + onRenderMessage?: (messageProps: MessageProps, defaultOnRender?: MessageRenderer) => JSX.Element; + onRenderTypingIndicator?: (typingUsers: CommunicationParticipant[]) => JSX.Element; + options?: ChatCompositeOptions; +} + +// @public +export interface ChatCompositeStrings { + chatListHeader: string; +} + +// @public +export class ChatError extends Error { + constructor(target: ChatErrorTarget, innerError: Error, timestamp?: Date); + innerError: Error; + target: ChatErrorTarget; + timestamp: Date; +} + +// @public +export type ChatErrorBarSelector = (state: ChatClientState, props: ChatBaseSelectorProps) => { + activeErrorMessages: ActiveErrorMessage[]; +}; + +// @public +export type ChatErrors = { + [target in ChatErrorTarget]: ChatError; +}; + +// @public +export type ChatErrorTarget = 'ChatClient.createChatThread' | 'ChatClient.deleteChatThread' | 'ChatClient.getChatThreadClient' | 'ChatClient.listChatThreads' | 'ChatClient.off' | 'ChatClient.on' | 'ChatClient.startRealtimeNotifications' | 'ChatClient.stopRealtimeNotifications' | 'ChatThreadClient.addParticipants' | 'ChatThreadClient.deleteMessage' | 'ChatThreadClient.getMessage' | 'ChatThreadClient.getProperties' | 'ChatThreadClient.listMessages' | 'ChatThreadClient.listParticipants' | 'ChatThreadClient.listReadReceipts' | 'ChatThreadClient.removeParticipant' | 'ChatThreadClient.sendMessage' | 'ChatThreadClient.sendReadReceipt' | 'ChatThreadClient.sendTypingNotification' | 'ChatThreadClient.updateMessage' | 'ChatThreadClient.updateTopic'; + +// @public +export type ChatHandlers = { + onSendMessage: (content: string, options?: SendMessageOptions) => Promise; + onMessageSeen: (chatMessageId: string) => Promise; + onTyping: () => Promise; + onRemoveParticipant: (userId: string) => Promise; + updateThreadTopicName: (topicName: string) => Promise; + onLoadPreviousChatMessages: (messagesToLoad: number) => Promise; + onUpdateMessage: (messageId: string, content: string) => Promise; + onDeleteMessage: (messageId: string) => Promise; +}; + +// @public +export type ChatInitializedListener = (event: { + adapter: CallWithChatAdapter; +}) => void; + +// @public +export interface ChatMessage extends MessageCommon { + // (undocumented) + attached?: MessageAttachedStatus; + attachments?: AttachmentMetadata[]; + // (undocumented) + clientMessageId?: string; + // (undocumented) + content?: string; + // (undocumented) + contentType: MessageContentType; + // (undocumented) + deletedOn?: Date; + // (undocumented) + editedOn?: Date; + // (undocumented) + failureReason?: string; + // (undocumented) + messageType: 'chat'; + metadata?: Record; + // (undocumented) + mine?: boolean; + // (undocumented) + senderDisplayName?: string; + // (undocumented) + senderId?: string; + // (undocumented) + status?: MessageStatus; +} + +// @public +export type ChatMessageWithStatus = ChatMessage_2 & { + clientMessageId?: string; + status: MessageStatus; + resourceCache?: Record; +}; + +// @public +export type ChatParticipantListSelector = (state: ChatClientState, props: ChatBaseSelectorProps) => { + myUserId: string; + participants: ParticipantListParticipant[]; +}; + +// @public +export type ChatReturnProps JSX.Element> = GetChatSelector extends (state: ChatClientState, props: any) => any ? ReturnType> & Common[0]> : never; + +// @public +export const ChatThreadClientProvider: (props: ChatThreadClientProviderProps) => JSX.Element; + +// @public +export type ChatThreadClientProviderProps = { + children: React_2.ReactNode; + chatThreadClient: ChatThreadClient; +}; + +// @public +export type ChatThreadClientState = { + chatMessages: { + [key: string]: ChatMessageWithStatus; + }; + participants: { + [key: string]: ChatParticipant; + }; + threadId: string; + properties?: ChatThreadProperties; + readReceipts: ChatMessageReadReceipt[]; + typingIndicators: TypingIndicatorReceivedEvent[]; + latestReadTime: Date; +}; + +// @public +export type ChatThreadProperties = { + topic?: string; +}; + +// @public +export type ClientState = CallClientState & ChatClientState; + +// @public +export type Common = Pick>; + +// @public +export interface CommonCallAdapter extends AdapterState, Disposable_2, CallAdapterCallOperations, CallAdapterDeviceManagement, CallAdapterSubscribers { + // @deprecated + joinCall(microphoneOn?: boolean): void; + joinCall(options?: JoinCallOptions): void; + startCall(participants: string[], options?: StartCallOptions): void; + startCall(participants: StartCallIdentifier[], options?: StartCallOptions): void; +} + +// @public +export type CommonCallAdapterOptions = { + videoBackgroundOptions?: { + videoBackgroundImages?: VideoBackgroundImage[]; + onResolveDependency?: () => Promise; + }; + deepNoiseSuppressionOptions?: { + onResolveDependency?: () => Promise; + deepNoiseSuppressionOnByDefault?: boolean; + hideDeepNoiseSuppressionButton?: boolean; + }; + onFetchProfile?: OnFetchProfileCallback; + callingSounds?: CallingSounds; + reactionResources?: ReactionResources; + alternateCallerId?: string; +}; + +// @public +export type CommonCallControlOptions = { + displayType?: CallControlDisplayType; + cameraButton?: boolean | { + disabled: boolean; + }; + endCallButton?: boolean | { + hangUpForEveryone?: false | 'endCallOptions'; + disableEndCallModal?: boolean; + }; + microphoneButton?: boolean | { + disabled: boolean; + }; + devicesButton?: boolean | { + disabled: boolean; + }; + participantsButton?: boolean | { + disabled: boolean; + }; + screenShareButton?: boolean | { + disabled: boolean; + }; + moreButton?: boolean; + raiseHandButton?: boolean | { + disabled: boolean; + }; + reactionButton?: boolean | { + disabled: boolean; + }; + onFetchCustomButtonProps?: CustomCallControlButtonCallback[]; + holdButton?: boolean | { + disabled: boolean; + }; + peopleButton?: boolean | { + disabled: boolean; + }; + dtmfDialerButton?: boolean | { + disabled: boolean; + }; + exitSpotlightButton?: boolean; + captionsButton?: boolean; + galleryControlsButton?: boolean; + teamsMeetingPhoneCallButton?: boolean; +}; + +// @public +export interface CommonCallingHandlers { + // (undocumented) + onAcceptCall: (incomingCallId: string, useVideo?: boolean) => Promise; + // (undocumented) + onAddParticipant(participant: CommunicationUserIdentifier): Promise; + // (undocumented) + onAddParticipant(participant: PhoneNumberIdentifier, options: AddPhoneNumberOptions): Promise; + // (undocumented) + onBlurVideoBackground: (backgroundBlurConfig?: BackgroundBlurConfig) => Promise; + // (undocumented) + onCreateLocalStreamView: (options?: VideoStreamOptions) => Promise; + // (undocumented) + onCreateRemoteStreamView: (userId: string, options?: VideoStreamOptions) => Promise; + // (undocumented) + onDisposeLocalScreenShareStreamView: () => Promise; + // (undocumented) + onDisposeLocalStreamView: () => Promise; + // (undocumented) + onDisposeRemoteScreenShareStreamView: (userId: string) => Promise; + // @deprecated (undocumented) + onDisposeRemoteStreamView: (userId: string) => Promise; + // (undocumented) + onDisposeRemoteVideoStreamView: (userId: string) => Promise; + onForbidAudio?: (userIds: string[]) => Promise; + onForbidOthersAudio?: () => Promise; + onForbidOthersVideo?: () => Promise; + onForbidVideo?: (userIds: string[]) => Promise; + // (undocumented) + onHangUp: (forEveryone?: boolean) => Promise; + // (undocumented) + onLowerHand: () => Promise; + // (undocumented) + onMuteAllRemoteParticipants: () => Promise; + // (undocumented) + onMuteParticipant: (userId: string) => Promise; + onPermitAudio?: (userIds: string[]) => Promise; + onPermitOthersAudio?: () => Promise; + onPermitOthersVideo?: () => Promise; + onPermitVideo?: (userIds: string[]) => Promise; + // (undocumented) + onRaiseHand: () => Promise; + // (undocumented) + onReactionClick: (reaction: Reaction_2) => Promise; + // (undocumented) + onRejectCall: (incomingCallId: string) => Promise; + // (undocumented) + onRemoveParticipant(userId: string): Promise; + // (undocumented) + onRemoveParticipant(participant: CommunicationIdentifier): Promise; + // (undocumented) + onRemoveVideoBackgroundEffects: () => Promise; + // (undocumented) + onReplaceVideoBackground: (backgroundReplacementConfig: BackgroundReplacementConfig) => Promise; + // (undocumented) + onSelectCamera: (device: VideoDeviceInfo, options?: VideoStreamOptions) => Promise; + // (undocumented) + onSelectMicrophone: (device: AudioDeviceInfo) => Promise; + // (undocumented) + onSelectSpeaker: (device: AudioDeviceInfo) => Promise; + // (undocumented) + onSendDtmfTone: (dtmfTone: DtmfTone_2) => Promise; + // (undocumented) + onSetCaptionLanguage: (language: string) => Promise; + // (undocumented) + onSetSpokenLanguage: (language: string) => Promise; + // (undocumented) + onStartCall: (participants: CommunicationIdentifier[], options?: StartCallOptions) => void; + // (undocumented) + onStartCaptions: (options?: CaptionsOptions) => Promise; + // (undocumented) + onStartLocalVideo: () => Promise; + // (undocumented) + onStartNoiseSuppressionEffect: () => Promise; + // (undocumented) + onStartScreenShare: () => Promise; + // (undocumented) + onStartSpotlight: (userIds?: string[]) => Promise; + // (undocumented) + onStopAllSpotlight: () => Promise; + // (undocumented) + onStopCaptions: () => Promise; + // (undocumented) + onStopNoiseSuppressionEffect: () => Promise; + // (undocumented) + onStopScreenShare: () => Promise; + // (undocumented) + onStopSpotlight: (userIds?: string[]) => Promise; + // (undocumented) + onSubmitSurvey(survey: CallSurvey): Promise; + // (undocumented) + onToggleCamera: (options?: VideoStreamOptions) => Promise; + // (undocumented) + onToggleHold: () => Promise; + // (undocumented) + onToggleMicrophone: () => Promise; + // (undocumented) + onToggleRaiseHand: () => Promise; + // (undocumented) + onToggleScreenShare: () => Promise; +} + +// @public +export type CommonProperties = { + [P in keyof A & keyof B]: A[P] extends B[P] ? P : never; +}[keyof A & keyof B]; + +// @public +export type CommunicationParticipant = { + userId: string; + displayName?: string; +}; + +// @public +export const COMPONENT_LOCALE_AR_SA: ComponentLocale; + +// @public +export const COMPONENT_LOCALE_CS_CZ: ComponentLocale; + +// @public +export const COMPONENT_LOCALE_CY_GB: ComponentLocale; + +// @public +export const COMPONENT_LOCALE_DE_DE: ComponentLocale; + +// @public +export const COMPONENT_LOCALE_EN_GB: ComponentLocale; + +// @public +export const COMPONENT_LOCALE_EN_US: ComponentLocale; + +// @public +export const COMPONENT_LOCALE_ES_ES: ComponentLocale; + +// @public +export const COMPONENT_LOCALE_ES_MX: ComponentLocale; + +// @public +export const COMPONENT_LOCALE_FI_FI: ComponentLocale; + +// @public +export const COMPONENT_LOCALE_FR_CA: ComponentLocale; + +// @public +export const COMPONENT_LOCALE_FR_FR: ComponentLocale; + +// @public +export const COMPONENT_LOCALE_HE_IL: ComponentLocale; + +// @public +export const COMPONENT_LOCALE_IT_IT: ComponentLocale; + +// @public +export const COMPONENT_LOCALE_JA_JP: ComponentLocale; + +// @public +export const COMPONENT_LOCALE_KO_KR: ComponentLocale; + +// @public +export const COMPONENT_LOCALE_NB_NO: ComponentLocale; + +// @public +export const COMPONENT_LOCALE_NL_NL: ComponentLocale; + +// @public +export const COMPONENT_LOCALE_PL_PL: ComponentLocale; + +// @public +export const COMPONENT_LOCALE_PT_BR: ComponentLocale; + +// @public +export const COMPONENT_LOCALE_RU_RU: ComponentLocale; + +// @public +export const COMPONENT_LOCALE_SV_SE: ComponentLocale; + +// @public +export const COMPONENT_LOCALE_TR_TR: ComponentLocale; + +// @public +export const COMPONENT_LOCALE_ZH_CN: ComponentLocale; + +// @public +export const COMPONENT_LOCALE_ZH_TW: ComponentLocale; + +// @public +export type ComponentIcons = Record; + +// @public +export interface ComponentLocale { + strings: ComponentStrings; +} + +// @public +export type ComponentProps JSX.Element> = ChatReturnProps extends never ? CallingReturnProps extends never ? undefined : CallingReturnProps : ChatReturnProps; + +// @public +export type ComponentSlotStyle = Omit; + +// @public +export interface ComponentStrings { + cameraButton: CameraButtonStrings; + captionLanguages: CaptionLanguageStrings; + captionsBanner: CaptionsBannerStrings; + captionsSettingsModal: CaptionsSettingsModalStrings; + devicesButton: DevicesButtonStrings; + dialpad: DialpadStrings; + endCallButton: EndCallButtonStrings; + errorBar: ErrorBarStrings; + holdButton: HoldButtonStrings; + imageOverlay: ImageOverlayStrings; + // (undocumented) + IncomingCallNotification: IncomingCallNotificationStrings; + meetingConferencePhoneInfo: MeetingConferencePhoneInfoModalStrings; + messageStatusIndicator: MessageStatusIndicatorStrings; + messageThread: MessageThreadStrings; + microphoneButton: MicrophoneButtonStrings; + notificationStack: NotificationStackStrings; + participantItem: ParticipantItemStrings; + participantsButton: ParticipantsButtonStrings; + raiseHandButton: RaiseHandButtonStrings; + reactionButton: ReactionButtonStrings; + screenShareButton: ScreenShareButtonStrings; + sendBox: SendBoxStrings; + spokenLanguages: SpokenLanguageStrings; + startCaptionsButton: StartCaptionsButtonStrings; + typingIndicator: TypingIndicatorStrings; + verticalGallery: VerticalGalleryStrings; + videoGallery: VideoGalleryStrings; + videoTile: VideoTileStrings; +} + +// @public +export const COMPOSITE_LOCALE_AR_SA: CompositeLocale; + +// @public +export const COMPOSITE_LOCALE_CS_CZ: CompositeLocale; + +// @public +export const COMPOSITE_LOCALE_CY_GB: CompositeLocale; + +// @public +export const COMPOSITE_LOCALE_DE_DE: CompositeLocale; + +// @public +export const COMPOSITE_LOCALE_EN_GB: CompositeLocale; + +// @public +export const COMPOSITE_LOCALE_EN_US: CompositeLocale; + +// @public +export const COMPOSITE_LOCALE_ES_ES: CompositeLocale; + +// @public +export const COMPOSITE_LOCALE_ES_MX: CompositeLocale; + +// @public +export const COMPOSITE_LOCALE_FI_FI: CompositeLocale; + +// @public +export const COMPOSITE_LOCALE_FR_CA: CompositeLocale; + +// @public +export const COMPOSITE_LOCALE_FR_FR: CompositeLocale; + +// @public +export const COMPOSITE_LOCALE_HE_IL: CompositeLocale; + +// @public +export const COMPOSITE_LOCALE_IT_IT: CompositeLocale; + +// @public +export const COMPOSITE_LOCALE_JA_JP: CompositeLocale; + +// @public +export const COMPOSITE_LOCALE_KO_KR: CompositeLocale; + +// @public +export const COMPOSITE_LOCALE_NB_NO: CompositeLocale; + +// @public +export const COMPOSITE_LOCALE_NL_NL: CompositeLocale; + +// @public +export const COMPOSITE_LOCALE_PL_PL: CompositeLocale; + +// @public +export const COMPOSITE_LOCALE_PT_BR: CompositeLocale; + +// @public +export const COMPOSITE_LOCALE_RU_RU: CompositeLocale; + +// @public +export const COMPOSITE_LOCALE_SV_SE: CompositeLocale; + +// @public +export const COMPOSITE_LOCALE_TR_TR: CompositeLocale; + +// @public +export const COMPOSITE_LOCALE_ZH_CN: CompositeLocale; + +// @public +export const COMPOSITE_LOCALE_ZH_TW: CompositeLocale; + +// @public +export const COMPOSITE_ONLY_ICONS: CompositeIcons; + +// @public +export type CompositeIcons = ChatCompositeIcons & CallCompositeIcons & CallWithChatCompositeIcons; + +// @public +export interface CompositeLocale { + component: ComponentLocale; + strings: CompositeStrings; +} + +// @public +export interface CompositeStrings { + call: CallCompositeStrings; + callWithChat: CallWithChatCompositeStrings; + chat: ChatCompositeStrings; +} + +// @public +export interface ConferencePhoneInfo { + city?: string; + conferenceId: string; + country?: string; + isTollFree: boolean; + phoneNumber: string; +} + +// @public +export interface ContentSystemMessage extends SystemMessageCommon { + // (undocumented) + content: string; + // (undocumented) + systemMessageType: 'content'; +} + +// @public +export const ControlBar: (props: ControlBarProps) => JSX.Element; + +// @public +export const ControlBarButton: (props: ControlBarButtonProps) => JSX.Element; + +// @public +export interface ControlBarButtonProps extends IButtonProps { + disableTooltip?: boolean; + labelKey?: string; + onRenderOffIcon?: IRenderFunction; + onRenderOnIcon?: IRenderFunction; + showLabel?: boolean; + strings?: ControlBarButtonStrings; + styles?: ControlBarButtonStyles; + tooltipId?: string; +} + +// @public +export interface ControlBarButtonStrings { + label?: string; + offLabel?: string; + onLabel?: string; + tooltipContent?: string; + tooltipDisabledContent?: string; + tooltipOffContent?: string; + tooltipOnContent?: string; +} + +// @public +export type ControlBarButtonStyles = IButtonStyles; + +// @public +export type ControlBarLayout = 'horizontal' | 'vertical' | 'dockedTop' | 'dockedBottom' | 'dockedLeft' | 'dockedRight' | 'floatingTop' | 'floatingBottom' | 'floatingLeft' | 'floatingRight'; + +// @public +export interface ControlBarProps { + children?: React_2.ReactNode; + layout?: ControlBarLayout; + styles?: BaseCustomStyles; +} + +// @public +export function createAzureCommunicationCallAdapter(args: AzureCommunicationCallAdapterArgs): Promise; + +// @public +export function createAzureCommunicationCallAdapter(args: AzureCommunicationOutboundCallAdapterArgs): Promise; + +// @public +export function createAzureCommunicationCallAdapterFromClient(callClient: StatefulCallClient, callAgent: CallAgent, targetCallees: StartCallIdentifier[], options?: AzureCommunicationCallAdapterOptions): Promise; + +// @public +export function createAzureCommunicationCallAdapterFromClient(callClient: StatefulCallClient, callAgent: CallAgent, locator: CallAdapterLocator, options?: AzureCommunicationCallAdapterOptions): Promise; + +// @public +export const createAzureCommunicationCallWithChatAdapter: ({ userId, displayName, credential, endpoint, locator, alternateCallerId, callAdapterOptions }: AzureCommunicationCallWithChatAdapterArgs) => Promise; + +// @public +export const createAzureCommunicationCallWithChatAdapterFromClients: ({ callClient, callAgent, callLocator, chatClient, chatThreadClient, callAdapterOptions }: AzureCommunicationCallWithChatAdapterFromClientArgs) => Promise; + +// @public +export const createAzureCommunicationChatAdapter: ({ endpoint: endpointUrl, userId, displayName, credential, threadId }: AzureCommunicationChatAdapterArgs) => Promise; + +// @public +export function createAzureCommunicationChatAdapterFromClient(chatClient: StatefulChatClient, chatThreadClient: ChatThreadClient): Promise; + +// @public +export type CreateDefaultCallingHandlers = (callClient: StatefulCallClient, callAgent: CallAgent | undefined, deviceManager: StatefulDeviceManager | undefined, call: Call | undefined, options?: CallingHandlersOptions) => CallingHandlers; + +// @public +export const createDefaultCallingHandlers: CreateDefaultCallingHandlers; + +// @public +export const createDefaultChatHandlers: (chatClient: StatefulChatClient, chatThreadClient: ChatThreadClient) => ChatHandlers; + +// @public +export const createDefaultTeamsCallingHandlers: (callClient: StatefulCallClient, callAgent?: TeamsCallAgent, deviceManager?: StatefulDeviceManager, call?: TeamsCall, options?: { + onResolveVideoBackgroundEffectsDependency?: () => Promise; + onResolveDeepNoiseSuppressionDependency?: () => Promise; +}) => TeamsCallingHandlers; + +// @public +export const createStatefulCallClient: (args: StatefulCallClientArgs, options?: StatefulCallClientOptions) => StatefulCallClient; + +// @public +export const createStatefulChatClient: (args: StatefulChatClientArgs, options?: StatefulChatClientOptions) => StatefulChatClient; + +// @public (undocumented) +export const createTeamsCallAdapter: (args: TeamsCallAdapterArgs) => Promise; + +// @public +export const createTeamsCallAdapterFromClient: (callClient: StatefulCallClient, callAgent: TeamsCallAgent, locator: CallAdapterLocator, options?: TeamsAdapterOptions) => Promise; + +// @public +export interface CreateVideoStreamViewResult { + view: { + updateScalingMode: (scalingMode: ViewScalingMode) => Promise; + }; +} + +// @public +export type CreateViewResult = { + renderer: VideoStreamRenderer; + view: VideoStreamRendererView; +}; + +// @public +export type CustomAvatarOptions = { + coinSize?: number; + hidePersonaDetails?: boolean; + initialsTextColor?: string; + noVideoAvailableAriaLabel?: string; + presence?: PersonaPresence; + size?: PersonaSize; + styles?: IStyleFunctionOrObject; + text?: string; + participantState?: ParticipantState; + showUnknownPersonaCoin?: boolean; +}; + +// @public +export type CustomCallControlButtonCallback = (args: CustomCallControlButtonCallbackArgs) => CustomCallControlButtonProps; + +// @public +export interface CustomCallControlButtonCallbackArgs { + displayType?: CallControlDisplayType; +} + +// @public +export type CustomCallControlButtonPlacement = 'primary' | 'overflow' | 'secondary'; + +// @public +export interface CustomCallControlButtonProps { + disabled?: boolean; + iconName?: string; + id?: string; + onItemClick?: () => void; + placement: CustomCallControlButtonPlacement; + showLabel?: boolean; + strings?: CustomCallControlButtonStrings; +} + +// @public +export interface CustomCallControlButtonStrings { + ariaDescription?: string; + ariaLabel?: string; + label?: string; + tooltipContent?: string; +} + +// @public +export interface CustomMessage extends MessageCommon { + // (undocumented) + content: string; + // (undocumented) + messageType: 'custom'; +} + +// @public +export const darkTheme: PartialTheme & CallingTheme; + +// @public +export type DeclarativeCallAgent = CallAgent & IncomingCallManagement; + +// @public +export type DeclarativeTeamsCallAgent = TeamsCallAgent & TeamsIncomingCallManagement; + +// @public +export type DeepNoiseSuppressionEffectDependency = { + deepNoiseSuppressionEffect: AudioEffectsStartConfig; +}; + +// @public +export const DEFAULT_COMPONENT_ICONS: { + ChatMessageOptions: React_2.JSX.Element; + ControlButtonCameraOff: React_2.JSX.Element; + ControlButtonCameraOn: React_2.JSX.Element; + ControlButtonEndCall: React_2.JSX.Element; + ControlButtonMicOff: React_2.JSX.Element; + ControlButtonMicOn: React_2.JSX.Element; + ControlButtonOptions: React_2.JSX.Element; + ControlButtonParticipants: React_2.JSX.Element; + ControlButtonParticipantsContextualMenuItem: React_2.JSX.Element; + ControlButtonScreenShareStart: React_2.JSX.Element; + ControlButtonScreenShareStop: React_2.JSX.Element; + ControlButtonRaiseHand: React_2.JSX.Element; + ControlButtonLowerHand: React_2.JSX.Element; + ControlButtonMicProhibited: React_2.JSX.Element; + ControlButtonMicProhibitedSmall: React_2.JSX.Element; + ControlButtonCameraProhibited: React_2.JSX.Element; + ControlButtonCameraProhibitedSmall: React_2.JSX.Element; + RaiseHandContextualMenuItem: React_2.JSX.Element; + LowerHandContextualMenuItem: React_2.JSX.Element; + ReactionButtonIcon: React_2.JSX.Element; + OpenAttachment: React_2.JSX.Element; + EditBoxCancel: React_2.JSX.Element; + EditBoxSubmit: React_2.JSX.Element; + ErrorBarCallCameraAccessDenied: React_2.JSX.Element; + ErrorBarCallCameraAlreadyInUse: React_2.JSX.Element; + ErrorBarCallLocalVideoFreeze: React_2.JSX.Element; + ErrorBarCallMacOsCameraAccessDenied: React_2.JSX.Element; + ErrorBarCallMacOsMicrophoneAccessDenied: React_2.JSX.Element; + ErrorBarCallMicrophoneAccessDenied: React_2.JSX.Element; + ErrorBarCallMicrophoneMutedBySystem: React_2.JSX.Element; + ErrorBarCallMicrophoneUnmutedBySystem: React_2.JSX.Element; + ErrorBarCallNetworkQualityLow: React_2.JSX.Element; + ErrorBarCallNoMicrophoneFound: React_2.JSX.Element; + ErrorBarCallNoSpeakerFound: React_2.JSX.Element; + ErrorBarClear: React_2.JSX.Element; + ErrorBarCallVideoRecoveredBySystem: React_2.JSX.Element; + ErrorBarCallVideoStoppedBySystem: React_2.JSX.Element; + ErrorBarMutedByRemoteParticipant: React_2.JSX.Element; + NotificationBarRecording: React_2.JSX.Element; + HorizontalGalleryLeftButton: React_2.JSX.Element; + HorizontalGalleryRightButton: React_2.JSX.Element; + MessageDelivered: React_2.JSX.Element; + MessageEdit: React_2.JSX.Element; + MessageFailed: React_2.JSX.Element; + MessageRemove: React_2.JSX.Element; + MessageResend: React_2.JSX.Element; + MessageSeen: React_2.JSX.Element; + MessageSending: React_2.JSX.Element; + OptionsCamera: React_2.JSX.Element; + OptionsMic: React_2.JSX.Element; + OptionsSpeaker: React_2.JSX.Element; + ParticipantItemMicOff: React_2.JSX.Element; + ParticipantItemOptions: React_2.JSX.Element; + ParticipantItemOptionsHovered: React_2.JSX.Element; + ParticipantItemScreenShareStart: React_2.JSX.Element; + ParticipantItemSpotlighted: React_2.JSX.Element; + HoldCallContextualMenuItem: React_2.JSX.Element; + HoldCallButton: React_2.JSX.Element; + ResumeCall: React_2.JSX.Element; + SendBoxSend: React_2.JSX.Element; + SendBoxSendHovered: React_2.JSX.Element; + VideoTileMicOff: React_2.JSX.Element; + VideoTileCameraOff: React_2.JSX.Element; + DialpadBackspace: React_2.JSX.Element; + VideoTilePinned: React_2.JSX.Element; + ParticipantItemPinned: React_2.JSX.Element; + VideoTileMoreOptions: React_2.JSX.Element; + VideoTileScaleFit: React_2.JSX.Element; + VideoTileScaleFill: React_2.JSX.Element; + PinParticipant: React_2.JSX.Element; + UnpinParticipant: React_2.JSX.Element; + SplitButtonPrimaryActionCameraOn: React_2.JSX.Element; + SplitButtonPrimaryActionCameraOff: React_2.JSX.Element; + SplitButtonPrimaryActionMicUnmuted: React_2.JSX.Element; + SplitButtonPrimaryActionMicMuted: React_2.JSX.Element; + VerticalGalleryLeftButton: React_2.JSX.Element; + VerticalGalleryRightButton: React_2.JSX.Element; + ControlButtonVideoEffectsOption: React_2.JSX.Element; + ConfigurationScreenVideoEffectsButton: React_2.JSX.Element; + CaptionsIcon: React_2.JSX.Element; + CaptionsOffIcon: React_2.JSX.Element; + CaptionsSettingsIcon: React_2.JSX.Element; + ChangeSpokenLanguageIcon: React_2.JSX.Element; + ChangeCaptionLanguageIcon: React_2.JSX.Element; + ContextMenuCameraIcon: React_2.JSX.Element; + ContextMenuMicIcon: React_2.JSX.Element; + ContextMenuSpeakerIcon: React_2.JSX.Element; + ContextMenuRemoveParticipant: React_2.JSX.Element; + SurveyStarIcon: React_2.JSX.Element; + SurveyStarIconFilled: React_2.JSX.Element; + StartSpotlightContextualMenuItem: React_2.JSX.Element; + StopSpotlightContextualMenuItem: React_2.JSX.Element; + VideoTileSpotlighted: React_2.JSX.Element; + ContextualMenuMicMutedIcon: React_2.JSX.Element; + IncomingCallNotificationRejectIcon: React_2.JSX.Element; + IncomingCallNotificationAcceptIcon: React_2.JSX.Element; + IncomingCallNotificationAcceptWithVideoIcon: React_2.JSX.Element; +}; + +// @public +export 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_2.JSX.Element; + ControlButtonParticipantsContextualMenuItem: React_2.JSX.Element; + OpenAttachment: React_2.JSX.Element; + ErrorBarCallVideoRecoveredBySystem: React_2.JSX.Element; + ErrorBarCallVideoStoppedBySystem: React_2.JSX.Element; + ErrorBarMutedByRemoteParticipant: React_2.JSX.Element; + NotificationBarRecording: React_2.JSX.Element; + MessageResend: React_2.JSX.Element; + ParticipantItemSpotlighted: React_2.JSX.Element; + HoldCallContextualMenuItem: React_2.JSX.Element; + HoldCallButton: React_2.JSX.Element; + ResumeCall: React_2.JSX.Element; + VideoTileCameraOff: React_2.JSX.Element; + DialpadBackspace: React_2.JSX.Element; + VideoTilePinned: React_2.JSX.Element; + ParticipantItemPinned: React_2.JSX.Element; + VideoTileMoreOptions: React_2.JSX.Element; + VideoTileScaleFit: React_2.JSX.Element; + VideoTileScaleFill: React_2.JSX.Element; + PinParticipant: React_2.JSX.Element; + UnpinParticipant: React_2.JSX.Element; + SplitButtonPrimaryActionCameraOn: React_2.JSX.Element; + SplitButtonPrimaryActionCameraOff: React_2.JSX.Element; + SplitButtonPrimaryActionMicUnmuted: React_2.JSX.Element; + SplitButtonPrimaryActionMicMuted: React_2.JSX.Element; + VerticalGalleryLeftButton: React_2.JSX.Element; + VerticalGalleryRightButton: React_2.JSX.Element; + ControlButtonVideoEffectsOption: React_2.JSX.Element; + ConfigurationScreenVideoEffectsButton: React_2.JSX.Element; + CaptionsIcon: React_2.JSX.Element; + CaptionsOffIcon: React_2.JSX.Element; + CaptionsSettingsIcon: React_2.JSX.Element; + ChangeSpokenLanguageIcon: React_2.JSX.Element; + ChangeCaptionLanguageIcon: React_2.JSX.Element; + ContextMenuCameraIcon: React_2.JSX.Element; + ContextMenuMicIcon: React_2.JSX.Element; + ContextMenuSpeakerIcon: React_2.JSX.Element; + ContextMenuRemoveParticipant: React_2.JSX.Element; + SurveyStarIcon: React_2.JSX.Element; + SurveyStarIconFilled: React_2.JSX.Element; + StartSpotlightContextualMenuItem: React_2.JSX.Element; + StopSpotlightContextualMenuItem: React_2.JSX.Element; + VideoTileSpotlighted: React_2.JSX.Element; + ContextualMenuMicMutedIcon: React_2.JSX.Element; + IncomingCallNotificationRejectIcon: React_2.JSX.Element; + IncomingCallNotificationAcceptIcon: React_2.JSX.Element; + IncomingCallNotificationAcceptWithVideoIcon: React_2.JSX.Element; +}; + +// @public +export type DeviceManagerState = { + isSpeakerSelectionAvailable: boolean; + selectedMicrophone?: AudioDeviceInfo; + selectedSpeaker?: AudioDeviceInfo; + selectedCamera?: VideoDeviceInfo; + cameras: VideoDeviceInfo[]; + microphones: AudioDeviceInfo[]; + speakers: AudioDeviceInfo[]; + deviceAccess?: DeviceAccess; + unparentedViews: LocalVideoStreamState[]; +}; + +// @public +export const DevicesButton: (props: DevicesButtonProps) => JSX.Element; + +// @public +export interface DevicesButtonContextualMenuStyles extends IContextualMenuStyles { + menuItemStyles?: IContextualMenuItemStyles; +} + +// @public +export interface DevicesButtonProps extends ControlBarButtonProps { + cameras?: OptionsDevice[]; + microphones?: OptionsDevice[]; + onSelectCamera?: (device: OptionsDevice) => Promise; + onSelectMicrophone?: (device: OptionsDevice) => Promise; + onSelectSpeaker?: (device: OptionsDevice) => Promise; + selectedCamera?: OptionsDevice; + selectedMicrophone?: OptionsDevice; + selectedSpeaker?: OptionsDevice; + speakers?: OptionsDevice[]; + strings?: Partial; + styles?: DevicesButtonStyles; +} + +// @public +export type DevicesButtonSelector = (state: CallClientState, props: CallingBaseSelectorProps) => { + microphones: AudioDeviceInfo[]; + speakers: AudioDeviceInfo[]; + cameras: VideoDeviceInfo[]; + selectedMicrophone?: AudioDeviceInfo; + selectedSpeaker?: AudioDeviceInfo; + selectedCamera?: VideoDeviceInfo; +}; + +// @public +export interface DevicesButtonStrings { + cameraMenuTitle: string; + cameraMenuTooltip: string; + label: string; + microphoneMenuTitle: string; + microphoneMenuTooltip: string; + speakerMenuTitle: string; + speakerMenuTooltip: string; + tooltipContent?: string; +} + +// @public +export interface DevicesButtonStyles extends ControlBarButtonStyles { + menuStyles?: Partial; +} + +// @public +export type DiagnosticChangedEventListner = (event: MediaDiagnosticChangedEvent | NetworkDiagnosticChangedEvent) => void; + +// @public +export interface DiagnosticsCallFeatureState { + media: MediaDiagnosticsState; + network: NetworkDiagnosticsState; +} + +// @public +export const Dialpad: (props: DialpadProps) => JSX.Element; + +// @public +export type DialpadMode = 'dtmf' | 'dialer'; + +// @public +export interface DialpadProps { + dialpadMode?: DialpadMode; + disableDtmfPlayback?: boolean; + dtmfAudioContext?: AudioContext; + longPressTrigger?: LongPressTrigger; + onChange?: (input: string) => void; + onClickDialpadButton?: (buttonValue: string, buttonIndex: number) => void; + onSendDtmfTone?: (dtmfTone: DtmfTone) => Promise; + showDeleteButton?: boolean; + // (undocumented) + strings?: DialpadStrings; + styles?: DialpadStyles; + textFieldValue?: string; +} + +// @public +export interface DialpadStrings { + // (undocumented) + deleteButtonAriaLabel?: string; + // (undocumented) + placeholderText: string; +} + +// @public +export interface DialpadStyles { + // (undocumented) + button?: IButtonStyles; + // (undocumented) + deleteIcon?: IButtonStyles; + // (undocumented) + digit?: IStyle; + // (undocumented) + letter?: IStyle; + // (undocumented) + root?: IStyle; + // (undocumented) + textField?: Partial; +} + +// @public +export type DisplayNameChangedListener = (event: { + participantId: CommunicationIdentifierKind; + displayName: string; +}) => void; + +// @public +interface Disposable_2 { + dispose(): void; +} +export { Disposable_2 as Disposable } + +// @public +export interface DtmfDialPadOptions { + // (undocumented) + dialerBehavior?: 'autoShow' | 'alwaysShow' | 'alwaysHide'; +} + +// @public +export type DtmfTone = 'A' | 'B' | 'C' | 'D' | 'Flash' | 'Num0' | 'Num1' | 'Num2' | 'Num3' | 'Num4' | 'Num5' | 'Num6' | 'Num7' | 'Num8' | 'Num9' | 'Pound' | 'Star'; + +// @public +export type EmptySelector = () => Record; + +// @public +export const EndCallButton: (props: EndCallButtonProps) => JSX.Element; + +// @public +export interface EndCallButtonProps extends ControlBarButtonProps { + enableEndCallMenu?: boolean; + onHangUp?: (forEveryone?: boolean) => Promise; + strings?: EndCallButtonStrings; +} + +// @public +export interface EndCallButtonStrings { + endCallOption?: string; + label: string; + leaveOption?: string; + tooltipContent?: string; +} + +// @public +export const ErrorBar: (props: ErrorBarProps) => JSX.Element; + +// @public +export interface ErrorBarProps extends IMessageBarProps { + activeErrorMessages: ActiveErrorMessage[]; + ignorePremountErrors?: boolean; + onDismissError?: (dismissedError: ActiveErrorMessage) => void; + strings?: ErrorBarStrings; +} + +// @public +export interface ErrorBarStrings { + accessDenied: string; + callCameraAccessDenied: string; + callCameraAccessDeniedSafari: string; + callCameraAlreadyInUse: string; + callLocalVideoFreeze: string; + callMacOsCameraAccessDenied: string; + callMacOsMicrophoneAccessDenied: string; + callMacOsScreenShareAccessDenied: string; + callMicrophoneAccessDenied: string; + callMicrophoneAccessDeniedSafari: string; + callMicrophoneMutedBySystem: string; + callMicrophoneUnmutedBySystem: string; + callNetworkQualityLow: string; + callNoMicrophoneFound: string; + callNoSpeakerFound: string; + callVideoRecoveredBySystem: string; + callVideoStoppedBySystem: string; + cameraFrozenForRemoteParticipants?: string; + dismissButtonAriaLabel?: string; + failedToJoinCallGeneric?: string; + failedToJoinCallInvalidMeetingLink?: string; + mutedByRemoteParticipant: string; + muteGeneric: string; + sendMessageGeneric: string; + sendMessageNotInChatThread: string; + startScreenShareGeneric: string; + startSpotlightWhileMaxParticipantsAreSpotlighted: string; + startVideoGeneric: string; + stopScreenShareGeneric: string; + stopVideoGeneric: string; + teamsMeetingCallNetworkQualityLow: string; + unableToReachChatService: string; + unableToStartVideoEffect?: string; + unmuteGeneric: string; + userNotInChatThread: string; +} + +// @public +export type ErrorType = keyof ErrorBarStrings; + +// @public +export const FluentThemeProvider: (props: FluentThemeProviderProps) => JSX.Element; + +// @public +export interface FluentThemeProviderProps { + children: React_2.ReactNode; + fluentTheme?: PartialTheme | Theme; + rootStyle?: React_2.CSSProperties | undefined; + rtl?: boolean; +} + +// @public +export const fromFlatCommunicationIdentifier: (id: string) => CommunicationIdentifier; + +// @public +export type GetCallingSelector JSX.Element | undefined> = AreEqual extends true ? VideoGallerySelector : AreEqual extends true ? DevicesButtonSelector : AreEqual extends true ? MicrophoneButtonSelector : AreEqual extends true ? CameraButtonSelector : AreEqual extends true ? ScreenShareButtonSelector : AreEqual extends true ? ParticipantListSelector : AreEqual extends true ? ParticipantsButtonSelector : AreEqual extends true ? EmptySelector : AreEqual extends true ? CallErrorBarSelector : AreEqual extends true ? EmptySelector : AreEqual extends true ? HoldButtonSelector : AreEqual extends true ? NotificationStackSelector : AreEqual extends true ? IncomingCallStackSelector : AreEqual extends true ? RaiseHandButtonSelector : AreEqual extends true ? CaptionSettingsSelector : AreEqual extends true ? CaptionsBannerSelector : AreEqual extends true ? StartCaptionsButtonSelector : AreEqual extends true ? EmptySelector : undefined; + +// @public +export const getCallingSelector: JSX.Element | undefined>(component: Component) => GetCallingSelector; + +// @public +export type GetChatSelector JSX.Element | undefined> = AreEqual extends true ? SendBoxSelector : AreEqual extends true ? MessageThreadSelector : AreEqual extends true ? TypingIndicatorSelector : AreEqual extends true ? ChatParticipantListSelector : AreEqual extends true ? ChatErrorBarSelector : undefined; + +// @public +export const getChatSelector: JSX.Element | undefined>(component: Component) => GetChatSelector; + +// @public +export const GridLayout: (props: GridLayoutProps) => JSX.Element; + +// @public +export interface GridLayoutProps { + // (undocumented) + children: React_2.ReactNode; + styles?: BaseCustomStyles; +} + +// @public +export interface GridLayoutStyles extends BaseCustomStyles { + children?: IStyle; +} + +// @public +export const HoldButton: (props: HoldButtonProps) => JSX.Element; + +// @public (undocumented) +export interface HoldButtonProps extends ControlBarButtonProps { + onToggleHold: () => Promise; + strings?: HoldButtonStrings; +} + +// @public +export type HoldButtonSelector = (state: CallClientState, props: CallingBaseSelectorProps) => { + checked: boolean; +}; + +// @public +export interface HoldButtonStrings { + offLabel?: string; + onLabel?: string; + tooltipOffContent?: string; + tooltipOnContent?: string; +} + +// @public +export interface HorizontalGalleryStyles extends BaseCustomStyles { + children?: IStyle; + nextButton?: IStyle; + previousButton?: IStyle; +} + +// @internal +export const _IdentifierProvider: (props: _IdentifierProviderProps) => JSX.Element; + +// @internal +export interface _IdentifierProviderProps { + // (undocumented) + children: React_2.ReactNode; + // (undocumented) + identifiers?: _Identifiers; +} + +// @internal +export interface _Identifiers { + horizontalGalleryVideoTile: string; + messageContent: string; + messageTimestamp: string; + overflowGalleryLeftNavButton: string; + overflowGalleryRightNavButton: string; + participantButtonPeopleMenuItem: string; + participantItemMenuButton: string; + participantList: string; + participantListPeopleButton: string; + participantListRemoveParticipantButton: string; + sendboxTextField: string; + typingIndicator: string; + verticalGalleryPageCounter: string; + verticalGalleryVideoTile: string; + videoGallery: string; + videoTile: string; +} + +// @public +export const ImageOverlay: (props: ImageOverlayProps) => JSX.Element; + +// @public +export interface ImageOverlayProps { + altText?: string; + imageSrc: string; + isOpen: boolean; + onDismiss: () => void; + onDownloadButtonClicked?: (imageSrc: string) => void; + title?: string; + titleIcon?: JSX.Element; +} + +// @public +export interface ImageOverlayStrings { + dismissButtonAriaLabel: string; + downloadButtonLabel: string; + overlayVisibleMessage: string; +} + +// @public +export type IncomingCallManagement = { + incomingCalls: ReadonlyArray; +}; + +// @public +export const IncomingCallNotification: (props: IncomingCallNotificationProps) => JSX.Element; + +// @public +export interface IncomingCallNotificationProps { + acceptOptions: { + showAcceptWithVideo: boolean; + }; + alertText?: string; + avatarImage?: string; + callerName?: string; + onAcceptWithAudio: () => void; + onAcceptWithVideo: () => void; + onDismiss?: () => void; + onReject: () => void; + onRenderAvatar?: () => JSX.Element; + personaSize?: number; + strings?: IncomingCallNotificationStrings; + styles?: IncomingCallNotificationStyles; +} + +// @public +export interface IncomingCallNotificationStrings { + incomingCallNoticicationAcceptWithAudioAriaLabel?: string; + incomingCallNoticicationAcceptWithVideoAriaLabel?: string; + incomingCallNoticicationRejectAriaLabel?: string; + incomingCallNotificationAccceptWithVideoButtonLabel?: string; + incomingCallNotificationAcceptButtonLabel?: string; + incomingCallNotificationDismissButtonAriaLabel?: string; + incomingCallNotificationPlaceholderAlert?: string; + incomingCallNotificationPlaceholderId?: string; + incomingCallNotificationRejectButtonLabel?: string; +} + +// @public +export interface IncomingCallNotificationStyles { + acceptButton?: IButtonStyles; + avatarContainer?: IStackStyles; + rejectButton?: IButtonStyles; + root?: IStackStyles; +} + +// @public +export const IncomingCallStack: (props: IncomingCallStackProps) => JSX.Element; + +// @public +export interface IncomingCallStackCall { + callerInfo: { + displayName?: string; + }; + id: string; + videoAvailable: boolean; +} + +// @public +export interface IncomingCallStackProps { + activeIncomingCalls: IncomingCallStackCall[]; + onAcceptCall: (incomingCallId: string, useVideo?: boolean) => void; + onRejectCall: (incomingCallId: string) => void; + removedIncomingCalls: IncomingCallStackCall[]; + strings?: IncomingCallNotificationStrings; + styles?: IncomingCallNotificationStyles; + tabIndex?: number; +} + +// @public +export type IncomingCallStackSelector = (state: CallClientState) => { + activeIncomingCalls: IncomingCallStackCall[]; + removedIncomingCalls: IncomingCallStackCall[]; +}; + +// @public +export interface IncomingCallState { + callEndReason?: CallEndReason; + callerInfo: CallerInfo; + endTime?: Date; + id: string; + info: CallInfoState; + startTime: Date; +} + +// @public +export interface InlineImage { + imageAttributes: React_2.ImgHTMLAttributes; + messageId: string; +} + +// @public +export interface InlineImageOptions { + onRenderInlineImage?: (inlineImage: InlineImage, defaultOnRender: (inlineImage: InlineImage) => JSX.Element) => JSX.Element; +} + +// @public +export type IsCaptionLanguageChangedListener = (event: { + activeCaptionLanguage: string; +}) => void; + +// @public +export type IsCaptionsActiveChangedListener = (event: { + isActive: boolean; +}) => void; + +// @public +export type IsLocalScreenSharingActiveChangedListener = (event: { + isScreenSharingOn: boolean; +}) => void; + +// @public +export type IsMutedChangedListener = (event: { + identifier: CommunicationIdentifierKind; + isMuted: boolean; +}) => void; + +// @public +export type IsSpeakingChangedListener = (event: { + identifier: CommunicationIdentifierKind; + isSpeaking: boolean; +}) => void; + +// @public +export type IsSpokenLanguageChangedListener = (event: { + activeSpokenLanguage: string; +}) => void; + +// @public +export interface JoinCallOptions { + cameraOn?: boolean | 'keep'; + microphoneOn?: boolean | 'keep'; +} + +// @public +export interface JumpToNewMessageButtonProps { + onClick: () => void; + text: string; +} + +// @public +export const lightTheme: PartialTheme & CallingTheme; + +// @public +export const loadCallComposite: (loaderArgs: CallCompositeLoaderProps, htmlElement: HTMLElement) => Promise; + +// @public +export const loadCallWithChatComposite: (loaderArgs: CallWithChatCompositeLoaderProps, htmlElement: HTMLElement) => Promise; + +// @public +export const loadChatComposite: (loaderArgs: ChatCompositeLoaderProps, htmlElement: HTMLElement) => Promise; + +// @public +export type LoadingState = 'loading' | 'none' | 'reconnecting'; + +// @public +export const loadOutboundCallComposite: (loaderArgs: OutboundCallCompositeLoaderProps, htmlElement: HTMLElement) => Promise; + +// @public +export const LocalizationProvider: (props: LocalizationProviderProps) => JSX.Element; + +// @public +export type LocalizationProviderProps = { + locale: ComponentLocale; + children: React_2.ReactNode; +}; + +// @public (undocumented) +export interface LocalVideoCameraCycleButtonProps { + ariaDescription?: string; + cameras?: OptionsDevice[]; + label?: string; + onSelectCamera?: (device: OptionsDevice) => Promise; + selectedCamera?: OptionsDevice; + size?: 'small' | 'large'; +} + +// @public +export interface LocalVideoStreamState { + mediaStreamType: MediaStreamType; + source: VideoDeviceInfo; + videoEffects?: LocalVideoStreamVideoEffectsState; + view?: VideoStreamRendererViewState; +} + +// @public +export interface LocalVideoStreamVideoEffectsState { + activeEffects?: VideoEffectName[]; +} + +// @public +export interface LocalVideoTileOptions { + position?: 'grid' | 'floating'; +} + +// @public +export type LocalVideoTileSize = '9:16' | '16:9' | 'hidden' | 'followDeviceOrientation'; + +// @public +export type LongPressTrigger = 'mouseAndTouch' | 'touch'; + +// @public +export type MediaAccess = { + isAudioPermitted: boolean; + isVideoPermitted: boolean; +}; + +// @public +export interface MediaAccessState { + isAudioPermitted: boolean; + isVideoPermitted: boolean; +} + +// @public +export type MediaDiagnosticChangedEvent = MediaDiagnosticChangedEventArgs & { + type: 'media'; +}; + +// @public +export interface MediaDiagnosticsState { + // (undocumented) + latest: LatestMediaDiagnostics; +} + +// @public +export interface MeetingConferencePhoneInfoModalStrings { + meetingConferencePhoneInfoModalDialIn: string; + meetingConferencePhoneInfoModalMeetingId: string; + meetingConferencePhoneInfoModalNoPhoneAvailable: string; + meetingConferencePhoneInfoModalTitle: string; + meetingConferencePhoneInfoModalToll: string; + meetingConferencePhoneInfoModalTollFree: string; + meetingConferencePhoneInfoModalTollGeoData: string; + meetingConferencePhoneInfoModalWait: string; +} + +// @public +export type Message = ChatMessage | SystemMessage | CustomMessage; + +// @public +export type MessageAttachedStatus = 'bottom' | 'top' | boolean; + +// @public +export interface MessageCommon { + // (undocumented) + createdOn: Date; + // (undocumented) + messageId: string; +} + +// @public +export type MessageContentType = 'text' | 'html' | 'richtext/html' | 'unknown'; + +// @public +export type MessageDeletedListener = MessageReceivedListener; + +// @public +export type MessageEditedListener = MessageReceivedListener; + +// @public +export type MessageProps = { + message: Message; + strings: MessageThreadStrings; + messageContainerStyle?: ComponentSlotStyle; + showDate?: boolean; + disableEditing?: boolean; + onUpdateMessage?: UpdateMessageCallback; + onCancelEditMessage?: CancelEditCallback; + onDeleteMessage?: (messageId: string) => Promise; + onSendMessage?: (content: string) => Promise; +}; + +// @public +export type MessageReadListener = (event: { + message: ChatMessage_2; + readBy: CommunicationUserKind; +}) => void; + +// @public +export type MessageReceivedListener = (event: { + message: ChatMessage_2; +}) => void; + +// @public +export type MessageRenderer = (props: MessageProps) => JSX.Element; + +// @public +export type MessageSentListener = MessageReceivedListener; + +// @public +export type MessageStatus = 'delivered' | 'sending' | 'seen' | 'failed'; + +// @public +export const MessageStatusIndicator: (props: MessageStatusIndicatorProps) => JSX.Element; + +// @public +export interface MessageStatusIndicatorProps { + // (undocumented) + onToggleToolTip?: (isToggled: boolean) => void; + // (undocumented) + readCount?: number; + remoteParticipantsCount?: number; + status?: MessageStatus; + strings?: MessageStatusIndicatorStrings; + styles?: BaseCustomStyles; +} + +// @public +export interface MessageStatusIndicatorStrings { + deliveredAriaLabel?: string; + deliveredTooltipText: string; + failedToSendAriaLabel?: string; + failedToSendTooltipText: string; + readByTooltipText?: string; + seenAriaLabel?: string; + seenTooltipText: string; + sendingAriaLabel?: string; + sendingTooltipText: string; +} + +// @public +export const MessageThread: (props: MessageThreadProps) => JSX.Element; + +// @public +export type MessageThreadProps = { + userId: string; + messages: (ChatMessage | SystemMessage | CustomMessage)[]; + participantCount?: number; + readReceiptsBySenderId?: ReadReceiptsBySenderId; + styles?: MessageThreadStyles; + disableJumpToNewMessageButton?: boolean; + showMessageDate?: boolean; + showMessageStatus?: boolean; + numberOfChatMessagesToReload?: number; + onMessageSeen?: (messageId: string) => Promise; + onRenderMessageStatus?: (messageStatusIndicatorProps: MessageStatusIndicatorProps) => JSX.Element | null; + onRenderAvatar?: OnRenderAvatarCallback; + onRenderJumpToNewMessageButton?: (newMessageButtonProps: JumpToNewMessageButtonProps) => JSX.Element; + onLoadPreviousChatMessages?: (messagesToLoad: number) => Promise; + onRenderMessage?: (messageProps: MessageProps, messageRenderer?: MessageRenderer) => JSX.Element; + onUpdateMessage?: UpdateMessageCallback; + onCancelEditMessage?: CancelEditCallback; + onDeleteMessage?: (messageId: string) => Promise; + onSendMessage?: (content: string) => Promise; + disableEditing?: boolean; + strings?: Partial; + inlineImageOptions?: InlineImageOptions; +}; + +// @public +export type MessageThreadSelector = (state: ChatClientState, props: ChatBaseSelectorProps) => { + userId: string; + showMessageStatus: boolean; + messages: Message[]; +}; + +// @public +export interface MessageThreadStrings { + actionMenuMoreOptions?: string; + attachmentCardGroupMessage: string; + editBoxCancelButton: string; + editBoxPlaceholderText: string; + editBoxSubmitButton: string; + editBoxTextLimit: string; + editedTag: string; + editMessage: string; + failToSendTag?: string; + friday: string; + liveAuthorIntro: string; + messageContentAriaText: string; + messageContentMineAriaText: string; + messageDeletedAnnouncementAriaLabel: string; + messageReadCount?: string; + monday: string; + newMessagesIndicator: string; + noDisplayNameSub: string; + openAttachment: string; + participantJoined: string; + participantLeft: string; + removeMessage: string; + resendMessage?: string; + saturday: string; + sunday: string; + thursday: string; + tuesday: string; + wednesday: string; + yesterday: string; +} + +// @public +export interface MessageThreadStyles extends BaseCustomStyles { + chatContainer?: ComponentSlotStyle; + chatItemMessageContainer?: ComponentSlotStyle; + chatMessageContainer?: ComponentSlotStyle; + failedMyChatMessageContainer?: ComponentSlotStyle; + loadPreviousMessagesButtonContainer?: IStyle; + messageStatusContainer?: (mine: boolean) => IStyle; + myChatItemMessageContainer?: ComponentSlotStyle; + myChatMessageContainer?: ComponentSlotStyle; + newMessageButtonContainer?: IStyle; + systemMessageContainer?: ComponentSlotStyle; +} + +// @public +export const MicrophoneButton: (props: MicrophoneButtonProps) => JSX.Element; + +// @public +export interface MicrophoneButtonContextualMenuStyles extends IContextualMenuStyles { + menuItemStyles?: IContextualMenuItemStyles; +} + +// @public +export interface MicrophoneButtonProps extends ControlBarButtonProps { + enableDeviceSelectionMenu?: boolean; + isDeepNoiseSuppressionOn?: boolean; + microphones?: OptionsDevice[]; + onClickNoiseSuppression?: () => void; + onSelectMicrophone?: (device: OptionsDevice) => Promise; + onSelectSpeaker?: (device: OptionsDevice) => Promise; + onToggleMicrophone?: () => Promise; + selectedMicrophone?: OptionsDevice; + selectedSpeaker?: OptionsDevice; + showNoiseSuppressionButton?: boolean; + speakers?: OptionsDevice[]; + strings?: Partial; + styles?: Partial; +} + +// @public +export type MicrophoneButtonSelector = (state: CallClientState, props: CallingBaseSelectorProps) => { + disabled: boolean; + checked: boolean; + microphones: AudioDeviceInfo[]; + speakers: AudioDeviceInfo[]; + selectedMicrophone?: AudioDeviceInfo; + selectedSpeaker?: AudioDeviceInfo; +}; + +// @public +export interface MicrophoneButtonStrings { + deepNoiseSuppressionOffAnnouncement?: string; + deepNoiseSuppressionOnAnnouncement?: string; + deepNoiseSuppressionTitle?: string; + microphoneActionTurnedOffAnnouncement?: string; + microphoneActionTurnedOnAnnouncement?: string; + microphoneAriaDescription?: string; + microphoneButtonSplitRoleDescription?: string; + microphoneMenuTitle?: string; + microphoneMenuTooltip?: string; + microphonePrimaryActionSplitButtonTitle?: string; + offLabel: string; + offSplitButtonAriaLabel?: string; + offSplitButtonMicrophonePrimaryAction?: string; + onLabel: string; + onSplitButtonAriaLabel?: string; + onSplitButtonMicrophonePrimaryAction?: string; + speakerMenuTitle?: string; + speakerMenuTooltip?: string; + tooltipDisabledContent?: string; + tooltipOffContent?: string; + tooltipOnContent?: string; +} + +// @public +export interface MicrophoneButtonStyles extends ControlBarButtonStyles { + menuStyles?: Partial; +} + +// @public +export type NetworkDiagnosticChangedEvent = NetworkDiagnosticChangedEventArgs & { + type: 'network'; +}; + +// @public +export interface NetworkDiagnosticsState { + // (undocumented) + latest: LatestNetworkDiagnostics; +} + +// @public +const Notification_2: (props: NotificationProps) => JSX.Element; +export { Notification_2 as Notification } + +// @public +export interface NotificationProps { + ariaLive?: 'assertive' | 'off' | 'polite'; + autoDismiss?: boolean; + notificationIconProps?: IIconProps; + notificationStrings?: NotificationStrings; + onClickLink?: () => void; + onClickPrimaryButton?: () => void; + onClickSecondaryButton?: () => void; + onDismiss?: () => void; + role?: 'alert' | 'status' | 'presentation' | 'none'; + showStackedEffect?: boolean; + styles?: NotificationStyles; +} + +// @public +export const NotificationStack: (props: NotificationStackProps) => JSX.Element; + +// @public +export interface NotificationStackProps { + activeNotifications: ActiveNotification[]; + ignorePremountNotifications?: boolean; + maxNotificationsToShow?: number; + onDismissNotification?: (dismissedNotification: ActiveNotification) => void; + strings?: NotificationStackStrings; +} + +// @public +export type NotificationStackSelector = (state: CallClientState, props: CallingBaseSelectorProps) => { + activeErrorMessages: ActiveNotification[]; + activeNotifications: ActiveNotification[]; +}; + +// @public +export interface NotificationStackStrings { + callCameraAccessDenied?: NotificationStrings; + callCameraAccessDeniedSafari?: NotificationStrings; + callCameraAlreadyInUse?: NotificationStrings; + callLocalVideoFreeze?: NotificationStrings; + callMacOsCameraAccessDenied?: NotificationStrings; + callMacOsMicrophoneAccessDenied?: NotificationStrings; + callMacOsScreenShareAccessDenied?: NotificationStrings; + callMicrophoneAccessDenied?: NotificationStrings; + callMicrophoneAccessDeniedSafari?: NotificationStrings; + callMicrophoneMutedBySystem?: NotificationStrings; + callMicrophoneUnmutedBySystem?: NotificationStrings; + callNetworkQualityLow?: NotificationStrings; + callNoMicrophoneFound?: NotificationStrings; + callNoSpeakerFound?: NotificationStrings; + callVideoRecoveredBySystem?: NotificationStrings; + callVideoStoppedBySystem?: NotificationStrings; + cameraFrozenForRemoteParticipants?: NotificationStrings; + capabilityTurnVideoOnAbsent?: NotificationStrings; + capabilityTurnVideoOnPresent?: NotificationStrings; + capabilityUnmuteMicAbsent?: NotificationStrings; + capabilityUnmuteMicPresent?: NotificationStrings; + dismissButtonAriaLabel?: NotificationStrings; + failedToJoinCallGeneric?: NotificationStrings; + failedToJoinCallInvalidMeetingLink?: NotificationStrings; + mutedByRemoteParticipant?: NotificationStrings; + muteGeneric?: NotificationStrings; + recordingAndTranscriptionStarted?: NotificationStrings; + recordingAndTranscriptionStopped?: NotificationStrings; + recordingStarted?: NotificationStrings; + recordingStopped?: NotificationStrings; + recordingStoppedStillTranscribing?: NotificationStrings; + speakingWhileMuted?: NotificationStrings; + startScreenShareGeneric?: NotificationStrings; + startSpotlightWhileMaxParticipantsAreSpotlighted?: NotificationStrings; + startVideoGeneric?: NotificationStrings; + stopScreenShareGeneric?: NotificationStrings; + stopVideoGeneric?: NotificationStrings; + teamsMeetingCallNetworkQualityLow?: NotificationStrings; + transcriptionStarted?: NotificationStrings; + transcriptionStopped?: NotificationStrings; + transcriptionStoppedStillRecording?: NotificationStrings; + unableToStartVideoEffect?: NotificationStrings; + unmuteGeneric?: NotificationStrings; +} + +// @public +export interface NotificationStrings { + dismissButtonAriaLabel?: string; + linkLabel?: string; + message?: string; + primaryButtonLabel?: string; + secondaryButtonLabel?: string; + title: string; +} + +// @public +export interface NotificationStyles { + content?: IStackStyles; + icon?: IIconStyles; + link?: IStackStyles; + primaryButton?: IButtonStyles; + root?: IStackStyles; + secondaryButton?: IButtonStyles; + title?: IStackStyles; +} + +// @public (undocumented) +export type NotificationTarget = 'assignedBreakoutRoomOpened' | 'assignedBreakoutRoomOpenedPromptJoin' | 'assignedBreakoutRoomChanged' | 'breakoutRoomJoined' | 'breakoutRoomClosingSoon' | 'capabilityTurnVideoOnPresent' | 'capabilityTurnVideoOnAbsent' | 'capabilityUnmuteMicPresent' | 'capabilityUnmuteMicAbsent'; + +// @public +export type NotificationType = keyof NotificationStackStrings; + +// @public +export type OnFetchProfileCallback = (userId: string, defaultProfile?: Profile) => Promise; + +// @public +export type OnRenderAvatarCallback = ( +userId?: string, options?: CustomAvatarOptions, +defaultOnRender?: (props: CustomAvatarOptions) => JSX.Element) => JSX.Element | undefined; + +// @public +export const onResolveDeepNoiseSuppressionDependency: () => Promise; + +// @public +export const onResolveDeepNoiseSuppressionDependencyLazy: () => Promise; + +// @public +export const onResolveVideoEffectDependency: () => Promise; + +// @public +export const onResolveVideoEffectDependencyLazy: () => Promise; + +// @public +export interface OptimalVideoCountFeatureState { + maxRemoteVideoStreams: number; +} + +// @public +export interface OptionsDevice { + id: string; + name: string; +} + +// @public +export type OutboundCallCompositeLoaderProps = { + userId: CommunicationUserIdentifier; + credential: CommunicationTokenCredential; + displayName: string; + targetCallees: string[] | StartCallIdentifier[]; + callAdapterOptions?: AzureCommunicationCallAdapterOptions; + callCompositeOptions?: CallCompositeOptions; +}; + +// @public +export type OverflowGalleryPosition = 'horizontalBottom' | 'verticalRight' | 'horizontalTop'; + +// @public +export interface ParticipantAddedSystemMessage extends SystemMessageCommon { + // (undocumented) + participants: CommunicationParticipant[]; + // (undocumented) + systemMessageType: 'participantAdded'; +} + +// @public +export const ParticipantItem: (props: ParticipantItemProps) => JSX.Element; + +// @public +export interface ParticipantItemProps { + ariaLabelledBy?: string; + displayName?: string; + me?: boolean; + menuItems?: IContextualMenuItem[]; + onClick?: (props?: ParticipantItemProps) => void; + onRenderAvatar?: OnRenderAvatarCallback; + onRenderIcon?: (props?: ParticipantItemProps) => JSX.Element | null; + participantState?: ParticipantState; + presence?: PersonaPresence; + showParticipantOverflowTooltip?: boolean; + strings?: Partial; + styles?: ParticipantItemStyles; + userId?: string; +} + +// @public +export interface ParticipantItemStrings { + attendeeRole: string; + cameraDisabledIconLabel: string; + displayNamePlaceholder?: string; + handRaisedIconLabel?: string; + isMeText: string; + menuTitle: string; + micDisabledIconLabel: string; + mutedIconLabel: string; + participantItemAriaLabel?: string; + participantItemWithMoreOptionsAriaLabel?: string; + participantStateHold?: string; + participantStateRinging?: string; + removeButtonLabel: string; + sharingIconLabel: string; +} + +// @public +export interface ParticipantItemStyles extends BaseCustomStyles { + avatar?: IStyle; + iconContainer?: IStyle; + me?: IStyle; + menu?: IStyle; +} + +// @public +export const ParticipantList: (props: ParticipantListProps) => JSX.Element; + +// @public +export interface ParticipantListItemStyles extends ParticipantItemStyles { + participantSubMenuItemsStyles?: IContextualMenuItemStyles; +} + +// @public +export type ParticipantListParticipant = CommunicationParticipant & { + isRemovable: boolean; +}; + +// @public +export type ParticipantListProps = { + participants: ParticipantListParticipant[]; + myUserId?: string; + excludeMe?: boolean; + onRenderParticipant?: (participant: ParticipantListParticipant) => JSX.Element | null; + onRenderAvatar?: OnRenderAvatarCallback; + onRemoveParticipant?: (userId: string) => void; + onFetchParticipantMenuItems?: ParticipantMenuItemsCallback; + onParticipantClick?: (participant?: ParticipantListParticipant) => void; + onMuteParticipant?: (userId: string) => Promise; + styles?: ParticipantListStyles; + showParticipantOverflowTooltip?: boolean; + participantAriaLabelledBy?: string; + pinnedParticipants?: string[]; +}; + +// @public +export type ParticipantListSelector = (state: CallClientState, props: CallingBaseSelectorProps) => { + participants: CallParticipantListParticipant[]; + myUserId: string; +}; + +// @public +export interface ParticipantListStyles extends BaseCustomStyles { + participantItemStyles?: ParticipantListItemStyles; +} + +// @public +export type ParticipantMenuItemsCallback = (participantUserId: string, userId?: string, defaultMenuItems?: IContextualMenuItem[]) => IContextualMenuItem[]; + +// @public +export interface ParticipantRemovedSystemMessage extends SystemMessageCommon { + // (undocumented) + participants: CommunicationParticipant[]; + // (undocumented) + systemMessageType: 'participantRemoved'; +} + +// @public +export type ParticipantsAddedListener = (event: { + participantsAdded: ChatParticipant[]; + addedBy: ChatParticipant; +}) => void; + +// @public +export const ParticipantsButton: (props: ParticipantsButtonProps) => JSX.Element; + +// @public +export interface ParticipantsButtonContextualMenuStyles extends IContextualMenuStyles { + menuItemStyles?: IContextualMenuItemStyles; + participantListStyles?: ParticipantListStyles; +} + +// @public +export interface ParticipantsButtonProps extends ControlBarButtonProps { + callInvitationURL?: string; + excludeMe?: boolean; + myUserId?: string; + onFetchParticipantMenuItems?: ParticipantMenuItemsCallback; + onMuteAll?: () => void; + onRemoveParticipant?: (userId: string) => void; + onRenderAvatar?: OnRenderAvatarCallback; + onRenderParticipant?: (participant: CommunicationParticipant) => JSX.Element | null; + onRenderParticipantList?: (props: ParticipantListProps) => JSX.Element | null; + participants: ParticipantListParticipant[]; + showParticipantOverflowTooltip?: boolean; + strings?: Partial; + styles?: ParticipantsButtonStyles; +} + +// @public +export type ParticipantsButtonSelector = (state: CallClientState, props: CallingBaseSelectorProps) => { + participants: CallParticipantListParticipant[]; + myUserId: string; +}; + +// @public +export interface ParticipantsButtonStrings { + ariaLabel?: string; + copyInviteLinkActionedAriaLabel: string; + copyInviteLinkButtonLabel: string; + label: string; + menuHeader: string; + muteAllButtonLabel: string; + participantsListButtonLabel: string; + tooltipContent?: string; +} + +// @public +export interface ParticipantsButtonStyles extends ControlBarButtonStyles { + menuStyles?: Partial; +} + +// @public +export type ParticipantsJoinedListener = (event: { + joined: RemoteParticipant[]; +}) => void; + +// @public +export type ParticipantsLeftListener = (event: { + removed: RemoteParticipant[]; +}) => void; + +// @public +export type ParticipantsRemovedListener = (event: { + participantsRemoved: ChatParticipant[]; + removedBy: ChatParticipant; +}) => void; + +// @public +export type ParticipantState = 'Idle' | 'Connecting' | 'Ringing' | 'Connected' | 'Hold' | 'InLobby' | 'EarlyMedia' | 'Disconnected' | 'Reconnecting'; + +// @public +export interface PPTLiveCallFeatureState { + isActive: boolean; +} + +// @public +export type Profile = { + displayName?: string; +}; + +// @public +export type RaisedHand = { + raisedHandOrderPosition: number; +}; + +// @public +export type RaisedHandState = { + raisedHandOrderPosition: number; +}; + +// @public +export const RaiseHandButton: (props: RaiseHandButtonProps) => JSX.Element; + +// @public +export interface RaiseHandButtonProps extends ControlBarButtonProps { + onToggleRaiseHand?: () => Promise; + strings?: Partial; +} + +// @public +export type RaiseHandButtonSelector = (state: CallClientState, props: CallingBaseSelectorProps) => { + checked?: boolean; + disabled?: boolean; +}; + +// @public +export interface RaiseHandButtonStrings { + offLabel: string; + onLabel: string; + tooltipDisabledContent?: string; + tooltipOffContent?: string; + tooltipOnContent?: string; +} + +// @public +export interface RaiseHandCallFeature { + localParticipantRaisedHand?: RaisedHandState; + raisedHands: RaisedHandState[]; +} + +// @public +export type Reaction = { + reactionType: string; + receivedOn: Date; +}; + +// @public +export const ReactionButton: (props: ReactionButtonProps) => JSX.Element; + +// @public +export interface ReactionButtonProps extends ControlBarButtonProps { + onReactionClick: (reaction: ReactionButtonReaction) => Promise; + reactionResources: ReactionResources; + strings?: Partial; +} + +// @public +export type ReactionButtonReaction = 'like' | 'heart' | 'applause' | 'laugh' | 'surprised'; + +// @public +export interface ReactionButtonStrings { + applauseReactionTooltipContent?: string; + ariaLabel: string; + heartReactionTooltipContent?: string; + label: string; + laughReactionTooltipContent?: string; + likeReactionTooltipContent?: string; + surprisedReactionTooltipContent?: string; + tooltipContent?: string; + tooltipDisabledContent?: string; +} + +// @public +export interface ReactionResources { + applauseReaction?: ReactionSprite; + heartReaction?: ReactionSprite; + laughReaction?: ReactionSprite; + likeReaction?: ReactionSprite; + surprisedReaction?: ReactionSprite; +} + +// @public +export type ReactionSprite = { + url: string; + frameCount: number; +}; + +// @public +export type ReactionState = { + reactionMessage: ReactionMessage; + receivedOn: Date; +}; + +// @public +export type ReadReceiptsBySenderId = { + [key: string]: { + lastReadMessage: string; + displayName: string; + }; +}; + +// @public +export interface RecordingCallFeature { + isRecordingActive: boolean; +} + +// @public +export interface RemoteParticipantState { + callEndReason?: CallEndReason; + contentSharingStream?: HTMLElement; + displayName?: string; + identifier: CommunicationIdentifierKind; + isMuted: boolean; + isSpeaking: boolean; + mediaAccess?: MediaAccessState; + raisedHand?: RaisedHandState; + reactionState?: ReactionState; + role?: ParticipantRole; + spotlight?: SpotlightState; + state: RemoteParticipantState_2; + videoStreams: { + [key: number]: RemoteVideoStreamState; + }; +} + +// @public +export interface RemoteVideoStreamState { + id: number; + isAvailable: boolean; + isReceiving: boolean; + mediaStreamType: MediaStreamType; + streamSize?: { + width: number; + height: number; + }; + view?: VideoStreamRendererViewState; +} + +// @public +export interface RemoteVideoTileMenuOptions { + isHidden?: boolean; +} + +// @public +export type ResourceDetails = { + threadId: string; + messageId: string; + resourceUrl: string; +}; + +// @public +export type ResourceFetchResult = { + sourceUrl?: string; + error?: Error; +}; + +// @public +export const ScreenShareButton: (props: ScreenShareButtonProps) => JSX.Element; + +// @public +export interface ScreenShareButtonProps extends ControlBarButtonProps { + onToggleScreenShare?: () => Promise; + strings?: Partial; +} + +// @public +export type ScreenShareButtonSelector = (state: CallClientState, props: CallingBaseSelectorProps) => { + checked?: boolean; + disabled?: boolean; +}; + +// @public +export interface ScreenShareButtonStrings { + offLabel: string; + onLabel: string; + tooltipDisabledContent?: string; + tooltipOffContent?: string; + tooltipOnContent?: string; +} + +// @public +export type Selector = (state: ClientState, props: any) => any; + +// @public +export const SendBox: (props: SendBoxProps) => JSX.Element; + +// @public +export interface SendBoxProps { + autoFocus?: 'sendBoxTextField'; + disabled?: boolean; + onRenderIcon?: (isHover: boolean) => JSX.Element; + onRenderSystemMessage?: (systemMessage: string | undefined) => React_2.ReactElement; + onSendMessage?: (content: string) => Promise; + onTyping?: () => Promise; + strings?: Partial; + styles?: SendBoxStylesProps; + supportNewline?: boolean; + systemMessage?: string; +} + +// @public +export type SendBoxSelector = (state: ChatClientState, props: ChatBaseSelectorProps) => { + displayName: string; + userId: string; +}; + +// @public +export interface SendBoxStrings { + placeholderText: string; + sendButtonAriaLabel: string; + textTooLong: string; +} + +// @public +export interface SendBoxStylesProps extends BaseCustomStyles { + sendMessageIcon?: IStyle; + sendMessageIconContainer?: IStyle; + systemMessage?: IStyle; + textField?: IStyle; + textFieldContainer?: IStyle; +} + +// @public +export type SoundEffect = { + url: string; +}; + +// @public +export interface SpokenLanguageStrings { + // (undocumented) + 'ar-ae': string; + // (undocumented) + 'ar-sa': string; + // (undocumented) + 'cs-cz': string; + // (undocumented) + 'cy-gb': string; + // (undocumented) + 'da-dk': string; + // (undocumented) + 'de-de': string; + // (undocumented) + 'el-gr': string; + // (undocumented) + 'en-au': string; + // (undocumented) + 'en-ca': string; + // (undocumented) + 'en-gb': string; + // (undocumented) + 'en-in': string; + // (undocumented) + 'en-nz': string; + // (undocumented) + 'en-us': string; + // (undocumented) + 'es-es': string; + // (undocumented) + 'es-mx': string; + // (undocumented) + 'fi-fi': string; + // (undocumented) + 'fr-ca': string; + // (undocumented) + 'fr-fr': string; + // (undocumented) + 'he-il': string; + // (undocumented) + 'hi-in': string; + // (undocumented) + 'hu-hu': string; + // (undocumented) + 'it-it': string; + // (undocumented) + 'ja-jp': string; + // (undocumented) + 'ko-kr': string; + // (undocumented) + 'nb-no': string; + // (undocumented) + 'nl-be': string; + // (undocumented) + 'nl-nl': string; + // (undocumented) + 'pl-pl': string; + // (undocumented) + 'pt-br': string; + // (undocumented) + 'pt-pt': string; + // (undocumented) + 'ro-ro': string; + // (undocumented) + 'ru-ru': string; + // (undocumented) + 'sk-sk': string; + // (undocumented) + 'sv-se': string; + // (undocumented) + 'th-th': string; + // (undocumented) + 'tr-tr': string; + // (undocumented) + 'uk-ua': string; + // (undocumented) + 'vi-vn': string; + // (undocumented) + 'zh-cn': string; + // (undocumented) + 'zh-hk': string; + // (undocumented) + 'zh-tw': string; +} + +// @public +export type Spotlight = { + spotlightedOrderPosition?: number; +}; + +// @public +export interface SpotlightCallFeatureState { + localParticipantSpotlight?: SpotlightState; + maxParticipantsToSpotlight: number; + spotlightedParticipants: SpotlightedParticipant[]; +} + +// @public +export type SpotlightChangedListener = (args: { + added: SpotlightedParticipant[]; + removed: SpotlightedParticipant[]; +}) => void; + +// @public +export interface SpotlightPromptStrings { + closeSpotlightPromptButtonLabel: string; + startSpotlightCancelButtonLabel: string; + startSpotlightConfirmButtonLabel: string; + startSpotlightHeading: string; + startSpotlightOnSelfText: string; + startSpotlightText: string; + stopAllSpotlightHeading: string; + stopAllSpotlightText: string; + stopSpotlightCancelButtonLabel: string; + stopSpotlightConfirmButtonLabel: string; + stopSpotlightHeading: string; + stopSpotlightOnSelfConfirmButtonLabel: string; + stopSpotlightOnSelfHeading: string; + stopSpotlightOnSelfText: string; + stopSpotlightText: string; +} + +// @public +export interface SpotlightState { + spotlightedOrderPosition?: number; +} + +// @public +export type StartCallIdentifier = CommunicationIdentifier; + +// @public +export interface StartCaptionsAdapterOptions extends StartCaptionsOptions { + startInBackground?: boolean; +} + +// @public +export const StartCaptionsButton: (props: StartCaptionsButtonProps) => JSX.Element; + +// @public (undocumented) +export interface StartCaptionsButtonProps extends ControlBarButtonProps { + currentSpokenLanguage: string; + onSetSpokenLanguage: (language: string) => Promise; + onStartCaptions: (options?: CaptionsOptions) => Promise; + onStopCaptions: () => Promise; + strings?: StartCaptionsButtonStrings; +} + +// @public +export type StartCaptionsButtonSelector = (state: CallClientState, props: CallingBaseSelectorProps) => { + checked: boolean; + currentCaptionLanguage: string; + currentSpokenLanguage: string; +}; + +// @public +export interface StartCaptionsButtonStrings { + offLabel: string; + onLabel: string; + tooltipOffContent: string; + tooltipOnContent: string; +} + +// @public +export interface StatefulCallClient extends CallClient { + createCallAgent(...args: Parameters): Promise; + createTeamsCallAgent(...args: Parameters): Promise; + createView(callId: string | undefined, participantId: CommunicationIdentifier | undefined, stream: LocalVideoStreamState | RemoteVideoStreamState, options?: CreateViewOptions): Promise; + disposeView(callId: string | undefined, participantId: CommunicationIdentifier | undefined, stream: LocalVideoStreamState | RemoteVideoStreamState): void; + getState(): CallClientState; + offStateChange(handler: (state: CallClientState) => void): void; + onStateChange(handler: (state: CallClientState) => void): void; +} + +// @public +export type StatefulCallClientArgs = { + userId: CommunicationUserIdentifier | MicrosoftTeamsUserIdentifier; +}; + +// @public +export type StatefulCallClientOptions = { + callClientOptions: CallClientOptions; + maxStateChangeListeners?: number; +}; + +// @public +export interface StatefulChatClient extends ChatClient { + dispose(): void; + downloadResourceToCache(threadId: string, messageId: string, resourceUrl: string): void; + getState(): ChatClientState; + offStateChange(handler: (state: ChatClientState) => void): void; + onStateChange(handler: (state: ChatClientState) => void): void; + removeResourceFromCache(threadId: string, messageId: string, resourceUrl: string): void; +} + +// @public +export type StatefulChatClientArgs = { + userId: CommunicationUserIdentifier; + displayName: string; + endpoint: string; + credential: CommunicationTokenCredential; +}; + +// @public +export type StatefulChatClientOptions = { + chatClientOptions: ChatClientOptions; + maxStateChangeListeners?: number; +}; + +// @public +export interface StatefulDeviceManager extends DeviceManager { + getUnparentedVideoStreams: () => LocalVideoStream[]; + selectCamera: (device: VideoDeviceInfo) => void; +} + +// @public +export interface StopCaptionsAdapterOptions { + stopInBackground?: boolean; +} + +// @public +export const StreamMedia: (props: StreamMediaProps) => JSX.Element; + +// @public +export interface StreamMediaProps { + isMirrored?: boolean; + loadingState?: LoadingState; + styles?: BaseCustomStyles; + videoStreamElement: HTMLElement | null; +} + +// @public (undocumented) +export type SupportedCaptionLanguage = keyof CaptionLanguageStrings; + +// @public (undocumented) +export type SupportedSpokenLanguage = keyof SpokenLanguageStrings; + +// @public +export interface SurveyIssues { + // (undocumented) + audioRating: { + noLocalAudio: string; + noRemoteAudio: string; + echo: string; + audioNoise: string; + lowVolume: string; + audioStoppedUnexpectedly: string; + distortedSpeech: string; + audioInterruption: string; + otherIssues: string; + }; + // (undocumented) + overallRating: { + callCannotJoin: string; + callCannotInvite: string; + hadToRejoin: string; + callEndedUnexpectedly: string; + otherIssues: string; + }; + // (undocumented) + screenshareRating: { + noContentLocal: string; + noContentRemote: string; + cannotPresent: string; + lowQuality: string; + freezes: string; + stoppedUnexpectedly: string; + largeDelay: string; + otherIssues: string; + }; + // (undocumented) + videoRating: { + noVideoReceived: string; + noVideoSent: string; + lowQuality: string; + freezes: string; + stoppedUnexpectedly: string; + darkVideoReceived: string; + audioVideoOutOfSync: string; + otherIssues: string; + }; +} + +// @public +export interface SurveyIssuesHeadingStrings { + // (undocumented) + audioRating: string; + // (undocumented) + overallRating: string; + // (undocumented) + screenshareRating: string; + // (undocumented) + videoRating: string; +} + +// @public +export type SystemMessage = ParticipantAddedSystemMessage | ParticipantRemovedSystemMessage | TopicUpdatedSystemMessage | ContentSystemMessage; + +// @public +export interface SystemMessageCommon extends MessageCommon { + // (undocumented) + iconName: string; + // (undocumented) + messageType: 'system'; +} + +// @public +export type TeamsAdapterOptions = CommonCallAdapterOptions; + +// @public +export interface TeamsCallAdapter extends CommonCallAdapter { + // @deprecated + joinCall(microphoneOn?: boolean): TeamsCall | undefined; + joinCall(options?: JoinCallOptions): TeamsCall | undefined; + startCall(participants: string[], options?: StartCallOptions): TeamsCall | undefined; + startCall(participants: StartCallIdentifier[], options?: StartCallOptions): TeamsCall | undefined; +} + +// @public +export type TeamsCallAdapterArgs = TeamsCallAdapterArgsCommon & { + locator: TeamsMeetingLinkLocator | TeamsMeetingIdLocator; +}; + +// @public +export type TeamsCallAdapterArgsCommon = { + userId: MicrosoftTeamsUserIdentifier; + credential: CommunicationTokenCredential; + options?: TeamsAdapterOptions; +}; + +// @public +export interface TeamsCallingHandlers extends CommonCallingHandlers { + // (undocumented) + onStartCall: (participants: CommunicationIdentifier[], options?: StartCallOptions) => undefined | TeamsCall; +} + +// @public +export type TeamsIncomingCallManagement = { + incomingCalls: ReadonlyArray; +}; + +// @public +export interface TeamsIncomingCallState { + callEndReason?: CallEndReason; + callerInfo: CallerInfo; + endTime?: Date; + id: string; + info: CallInfoState; + startTime: Date; +} + +// @public +export const toFlatCommunicationIdentifier: (identifier: CommunicationIdentifier) => string; + +// @public +export type TopicChangedListener = (event: { + topic: string; +}) => void; + +// @public +export interface TopicUpdatedSystemMessage extends SystemMessageCommon { + // (undocumented) + systemMessageType: 'topicUpdated'; + // (undocumented) + topic: string; +} + +// @public +export interface TranscriptionCallFeature { + isTranscriptionActive: boolean; +} + +// @public +export type TransferAcceptedListener = (event: TransferEventArgs) => void; + +// @public +export interface TransferFeature { + acceptedTransfers: { + [key: string]: AcceptedTransfer; + }; +} + +// @public +export const TypingIndicator: (props: TypingIndicatorProps) => JSX.Element; + +// @public +export interface TypingIndicatorProps { + onRenderUser?: (users: CommunicationParticipant) => JSX.Element; + strings?: Partial; + styles?: TypingIndicatorStylesProps; + typingUsers: CommunicationParticipant[]; +} + +// @public +export type TypingIndicatorSelector = (state: ChatClientState, props: ChatBaseSelectorProps) => { + typingUsers: CommunicationParticipant[]; +}; + +// @public +export interface TypingIndicatorStrings { + delimiter: string; + multipleUsers: string; + multipleUsersAbbreviateMany: string; + multipleUsersAbbreviateOne: string; + singleUser: string; +} + +// @public +export interface TypingIndicatorStylesProps extends BaseCustomStyles { + typingString?: IStyle; + typingUserDisplayName?: IStyle; +} + +// @public +export type UpdateMessageCallback = (messageId: string, content: string) => Promise; + +// @public +export const useAzureCommunicationCallAdapter: (args: Partial, afterCreate?: (adapter: CallAdapter) => Promise, beforeDispose?: (adapter: CallAdapter) => Promise) => CallAdapter | undefined; + +// @public +export const useAzureCommunicationCallWithChatAdapter: (args: Partial, afterCreate?: (adapter: CallWithChatAdapter) => Promise, beforeDispose?: (adapter: CallWithChatAdapter) => Promise) => CallWithChatAdapter | undefined; + +// @public +export const useAzureCommunicationChatAdapter: (args: Partial, afterCreate?: (adapter: ChatAdapter) => Promise, beforeDispose?: (adapter: ChatAdapter) => Promise) => ChatAdapter | undefined; + +// @public +export const useCall: () => Call | undefined; + +// @public +export const useCallAgent: () => CallAgent | undefined; + +// @public +export const useCallClient: () => StatefulCallClient; + +// @public +export const useChatClient: () => StatefulChatClient; + +// @public +export const useChatThreadClient: () => ChatThreadClient; + +// @public +export const useDeviceManager: () => StatefulDeviceManager | undefined; + +// @public +export const usePropsFor: JSX.Element>(component: Component, type?: 'calling' | 'chat') => ComponentProps; + +// @public +export const useSelector: (selector: ParamT, selectorProps?: ParamT extends Selector ? Parameters[1] : undefined, type?: 'calling' | 'chat') => ParamT extends Selector ? ReturnType : undefined; + +// @public +export const useTeamsCall: () => undefined | TeamsCall; + +// @public +export const useTeamsCallAdapter: (args: Partial, afterCreate?: (adapter: TeamsCallAdapter) => Promise, beforeDispose?: (adapter: TeamsCallAdapter) => Promise) => TeamsCallAdapter | undefined; + +// @public +export const useTeamsCallAgent: () => undefined | TeamsCallAgent; + +// @public +export const useTheme: () => Theme; + +// @public +export interface VerticalGalleryControlBarStyles extends BaseCustomStyles { + counter?: IStyle; + nextButton?: IStyle; + previousButton?: IStyle; +} + +// @public +export interface VerticalGalleryStrings { + leftNavButtonAriaLabel?: string; + rightNavButtonAriaLabel?: string; +} + +// @public +export interface VerticalGalleryStyles extends BaseCustomStyles { + children?: IStyle; + controlBar?: VerticalGalleryControlBarStyles; +} + +// @public +export interface VideoBackgroundBlurEffect extends BackgroundBlurConfig { + effectName: 'blur'; +} + +// @public +export type VideoBackgroundEffect = VideoBackgroundNoEffect | VideoBackgroundBlurEffect | VideoBackgroundReplacementEffect; + +// @public +export type VideoBackgroundEffectsDependency = { + createBackgroundBlurEffect: (config?: BackgroundBlurConfig) => BackgroundBlurEffect; + createBackgroundReplacementEffect: (config: BackgroundReplacementConfig) => BackgroundReplacementEffect; +}; + +// @public +export interface VideoBackgroundImage { + key: string; + tooltipText?: string; + url: string; +} + +// @public +export interface VideoBackgroundNoEffect { + effectName: 'none'; +} + +// @public +export interface VideoBackgroundReplacementEffect extends BackgroundReplacementConfig { + effectName: 'replacement'; + key?: string; +} + +// @public +export const VideoGallery: (props: VideoGalleryProps) => JSX.Element; + +// @public (undocumented) +export type VideoGalleryLayout = 'default' | 'floatingLocalVideo' | 'speaker' | 'focusedContent'; + +// @public +export interface VideoGalleryLocalParticipant extends VideoGalleryParticipant { + raisedHand?: RaisedHand; + reaction?: Reaction; + screenShareStream?: VideoGalleryStream; +} + +// @public +export type VideoGalleryParticipant = { + userId: string; + isMuted?: boolean; + displayName?: string; + videoStream?: VideoGalleryStream; + isScreenSharingOn?: boolean; + spotlight?: Spotlight; + mediaAccess?: MediaAccess; + canAudioBeForbidden?: boolean; + canVideoBeForbidden?: boolean; +}; + +// @public +export interface VideoGalleryProps { + dominantSpeakers?: string[]; + layout?: VideoGalleryLayout; + localParticipant: VideoGalleryLocalParticipant; + localVideoCameraCycleButtonProps?: LocalVideoCameraCycleButtonProps; + localVideoTileSize?: LocalVideoTileSize; + localVideoViewOptions?: VideoStreamOptions; + maxParticipantsToSpotlight?: number; + maxRemoteVideoStreams?: number; + onCreateLocalStreamView?: (options?: VideoStreamOptions) => Promise; + onCreateRemoteStreamView?: (userId: string, options?: VideoStreamOptions) => Promise; + onDisposeLocalScreenShareStreamView?: () => Promise; + onDisposeLocalStreamView?: () => void; + onDisposeRemoteScreenShareStreamView?: (userId: string) => Promise; + // @deprecated (undocumented) + onDisposeRemoteStreamView?: (userId: string) => Promise; + onDisposeRemoteVideoStreamView?: (userId: string) => Promise; + onForbidAudio?: (userIds: string[]) => Promise; + onForbidVideo?: (userIds: string[]) => Promise; + onMuteParticipant?: (userId: string) => Promise; + onPermitAudio?: (userIds: string[]) => Promise; + onPermitVideo?: (userIds: string[]) => Promise; + onPinParticipant?: (userId: string) => void; + onRenderAvatar?: OnRenderAvatarCallback; + onRenderLocalVideoTile?: (localParticipant: VideoGalleryLocalParticipant) => JSX.Element; + onRenderRemoteVideoTile?: (remoteParticipant: VideoGalleryRemoteParticipant) => JSX.Element; + onStartLocalSpotlight?: () => Promise; + onStartRemoteSpotlight?: (userIds: string[]) => Promise; + onStopLocalSpotlight?: () => Promise; + onStopRemoteSpotlight?: (userIds: string[]) => Promise; + onUnpinParticipant?: (userId: string) => void; + overflowGalleryPosition?: OverflowGalleryPosition; + pinnedParticipants?: string[]; + reactionResources?: ReactionResources; + remoteParticipants?: VideoGalleryRemoteParticipant[]; + remoteVideoTileMenu?: false | VideoTileContextualMenuProps | VideoTileDrawerMenuProps; + remoteVideoViewOptions?: VideoStreamOptions; + showCameraSwitcherInLocalPreview?: boolean; + showMuteIndicator?: boolean; + spotlightedParticipants?: string[]; + strings?: Partial; + styles?: VideoGalleryStyles; + videoTilesOptions?: VideoTilesOptions; +} + +// @public +export interface VideoGalleryRemoteParticipant extends VideoGalleryParticipant { + isSpeaking?: boolean; + mediaAccess?: MediaAccess; + raisedHand?: RaisedHand; + reaction?: Reaction; + screenShareStream?: VideoGalleryStream; + state?: ParticipantState; +} + +// @public +export type VideoGallerySelector = (state: CallClientState, props: CallingBaseSelectorProps) => { + screenShareParticipant?: VideoGalleryRemoteParticipant; + localParticipant: VideoGalleryLocalParticipant; + remoteParticipants: VideoGalleryRemoteParticipant[]; + dominantSpeakers?: string[]; + optimalVideoCount?: number; + spotlightedParticipants?: string[]; + maxParticipantsToSpotlight?: number; +}; + +// @public +export interface VideoGalleryStream { + id?: number; + isAvailable?: boolean; + isMirrored?: boolean; + isReceiving?: boolean; + renderElement?: HTMLElement; + scalingMode?: ViewScalingMode; + streamSize?: { + width: number; + height: number; + }; +} + +// @public +export interface VideoGalleryStrings { + addSpotlightVideoTileMenuLabel: string; + attendeeRole: string; + displayNamePlaceholder: string; + fillRemoteParticipantFrame: string; + fitRemoteParticipantToFrame: string; + localScreenShareLoadingMessage: string; + localVideoCameraSwitcherLabel: string; + localVideoLabel: string; + localVideoMovementAriaLabel: string; + localVideoMovementLabel: string; + localVideoSelectedDescription: string; + muteParticipantMenuItemLabel: string; + pinnedParticipantAnnouncementAriaLabel: string; + pinParticipantForMe: string; + pinParticipantMenuItemAriaLabel: string; + screenIsBeingSharedMessage: string; + screenShareLoadingMessage: string; + spotlightLimitReachedMenuTitle: string; + startSpotlightVideoTileMenuLabel: string; + stopSpotlightOnSelfVideoTileMenuLabel: string; + stopSpotlightVideoTileMenuLabel: string; + unpinnedParticipantAnnouncementAriaLabel: string; + unpinParticipantForMe: string; + unpinParticipantMenuItemAriaLabel: string; + waitingScreenText: string; +} + +// @public +export interface VideoGalleryStyles extends BaseCustomStyles { + gridLayout?: GridLayoutStyles; + horizontalGallery?: HorizontalGalleryStyles; + localVideo?: IStyle; + verticalGallery?: VerticalGalleryStyles; +} + +// @public +export interface VideoStreamOptions { + isMirrored?: boolean; + scalingMode?: ViewScalingMode; +} + +// @public +export interface VideoStreamRendererViewState { + isMirrored: boolean; + scalingMode: ScalingMode; + target: HTMLElement; +} + +// @public +export const VideoTile: (props: VideoTileProps) => JSX.Element; + +// @public +export interface VideoTileContextualMenuProps { + kind: 'contextual'; +} + +// @public +export interface VideoTileDrawerMenuProps { + hostId?: string; + kind: 'drawer'; +} + +// @public +export interface VideoTileProps { + alwaysShowLabelBackground?: boolean; + children?: React_2.ReactNode; + contextualMenu?: IContextualMenuProps; + displayName?: string; + initialsName?: string; + isMirrored?: boolean; + isMuted?: boolean; + isPinned?: boolean; + isSpeaking?: boolean; + isSpotlighted?: boolean; + mediaAccess?: MediaAccess; + noVideoAvailableAriaLabel?: string; + onLongTouch?: () => void; + onRenderPlaceholder?: OnRenderAvatarCallback; + overlay?: JSX.Element | null; + participantState?: ParticipantState; + personaMaxSize?: number; + personaMinSize?: number; + raisedHand?: RaisedHand; + reactionResources?: ReactionResources; + renderElement?: JSX.Element | null; + showLabel?: boolean; + showMuteIndicator?: boolean; + strings?: VideoTileStrings; + styles?: VideoTileStylesProps; + userId?: string; +} + +// @public +export interface VideoTilesOptions { + alwaysShowLabelBackground?: boolean; +} + +// @public +export interface VideoTileStrings { + moreOptionsButtonAriaLabel: string; + moreOptionsParticipantCameraDisabledAriaLabel: string; + moreOptionsParticipantHandRaisedAriaLabel: string; + moreOptionsParticipantIsSpeakingAriaLabel: string; + moreOptionsParticipantMicDisabledAriaLabel: string; + moreOptionsParticipantMutedStateMutedAriaLabel: string; + moreOptionsParticipantMutedStateUnmutedAriaLabel: string; + participantStateHold: string; + participantStateRinging: string; +} + +// @public +export interface VideoTileStylesProps extends BaseCustomStyles { + displayNameContainer?: IStyle; + overlayContainer?: IStyle; + videoContainer?: IStyle; +} + +// @public +export type ViewScalingMode = 'Stretch' | 'Crop' | 'Fit'; + +// (No @packageDocumentation comment for this package) + +``` diff --git a/packages/react-composites/src/composites/common/icons.tsx b/packages/react-composites/src/composites/common/icons.tsx index c44caa39625..2c9ec2afc5f 100644 --- a/packages/react-composites/src/composites/common/icons.tsx +++ b/packages/react-composites/src/composites/common/icons.tsx @@ -255,6 +255,7 @@ export type CallCompositeIcons = { JoinByPhoneWaitToBeAdmittedIcon?: JSX.Element; PeoplePaneMoreButton?: JSX.Element; StopAllSpotlightMenuButton?: JSX.Element; + /* @conditional-compile-remove(together-mode) */ TogetherModeLayout?: JSX.Element; };