@azure/communication-react 1.3.3-alpha-202209220018.0 → 1.3.3-alpha-202210070024.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (119) hide show
  1. package/dist/communication-react.d.ts +258 -12
  2. package/dist/dist-cjs/communication-react/index.js +323 -113
  3. package/dist/dist-cjs/communication-react/index.js.map +1 -1
  4. package/dist/dist-esm/acs-ui-common/src/identifier.d.ts +5 -0
  5. package/dist/dist-esm/acs-ui-common/src/identifier.js +10 -0
  6. package/dist/dist-esm/acs-ui-common/src/identifier.js.map +1 -1
  7. package/dist/dist-esm/acs-ui-common/src/index.d.ts +1 -1
  8. package/dist/dist-esm/acs-ui-common/src/index.js +1 -1
  9. package/dist/dist-esm/acs-ui-common/src/index.js.map +1 -1
  10. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js +1 -1
  11. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js.map +1 -1
  12. package/dist/dist-esm/calling-component-bindings/src/handlers/createHandlers.d.ts +7 -8
  13. package/dist/dist-esm/calling-component-bindings/src/handlers/createHandlers.js +12 -4
  14. package/dist/dist-esm/calling-component-bindings/src/handlers/createHandlers.js.map +1 -1
  15. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.d.ts +2 -1
  16. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.js +7 -0
  17. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.js.map +1 -1
  18. package/dist/dist-esm/calling-component-bindings/src/index.d.ts +0 -1
  19. package/dist/dist-esm/calling-component-bindings/src/index.js.map +1 -1
  20. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarative.js +21 -1
  21. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarative.js.map +1 -1
  22. package/dist/dist-esm/calling-stateful-client/src/CallClientState.d.ts +1 -1
  23. package/dist/dist-esm/calling-stateful-client/src/CallClientState.js.map +1 -1
  24. package/dist/dist-esm/communication-react/src/index.d.ts +4 -1
  25. package/dist/dist-esm/communication-react/src/index.js +2 -0
  26. package/dist/dist-esm/communication-react/src/index.js.map +1 -1
  27. package/dist/dist-esm/react-components/src/components/BrowserPermissionDenied.d.ts +69 -0
  28. package/dist/dist-esm/react-components/src/components/BrowserPermissionDenied.js +35 -0
  29. package/dist/dist-esm/react-components/src/components/BrowserPermissionDenied.js.map +1 -0
  30. package/dist/dist-esm/react-components/src/components/BrowserPermissionDeniedIOS.d.ts +75 -0
  31. package/dist/dist-esm/react-components/src/components/BrowserPermissionDeniedIOS.js +57 -0
  32. package/dist/dist-esm/react-components/src/components/BrowserPermissionDeniedIOS.js.map +1 -0
  33. package/dist/dist-esm/react-components/src/components/CameraButton.js +3 -3
  34. package/dist/dist-esm/react-components/src/components/CameraButton.js.map +1 -1
  35. package/dist/dist-esm/react-components/src/components/DevicePermissionDropdown.d.ts +71 -0
  36. package/dist/dist-esm/react-components/src/components/DevicePermissionDropdown.js +26 -0
  37. package/dist/dist-esm/react-components/src/components/DevicePermissionDropdown.js.map +1 -0
  38. package/dist/dist-esm/react-components/src/components/DevicesButton.js +4 -2
  39. package/dist/dist-esm/react-components/src/components/DevicesButton.js.map +1 -1
  40. package/dist/dist-esm/react-components/src/components/DomainPermissions.d.ts +8 -0
  41. package/dist/dist-esm/react-components/src/components/DomainPermissions.js +4 -3
  42. package/dist/dist-esm/react-components/src/components/DomainPermissions.js.map +1 -1
  43. package/dist/dist-esm/react-components/src/components/HighContrastAwareIcon.d.ts +4 -4
  44. package/dist/dist-esm/react-components/src/components/HighContrastAwareIcon.js +2 -2
  45. package/dist/dist-esm/react-components/src/components/HighContrastAwareIcon.js.map +1 -1
  46. package/dist/dist-esm/react-components/src/components/HoldButton.js +3 -3
  47. package/dist/dist-esm/react-components/src/components/HoldButton.js.map +1 -1
  48. package/dist/dist-esm/react-components/src/components/MessageThread.js +2 -6
  49. package/dist/dist-esm/react-components/src/components/MessageThread.js.map +1 -1
  50. package/dist/dist-esm/react-components/src/components/MicrophoneButton.js +3 -3
  51. package/dist/dist-esm/react-components/src/components/MicrophoneButton.js.map +1 -1
  52. package/dist/dist-esm/react-components/src/components/ParticipantsButton.js +2 -2
  53. package/dist/dist-esm/react-components/src/components/ParticipantsButton.js.map +1 -1
  54. package/dist/dist-esm/react-components/src/components/ScreenShareButton.js +3 -3
  55. package/dist/dist-esm/react-components/src/components/ScreenShareButton.js.map +1 -1
  56. package/dist/dist-esm/react-components/src/components/VideoGallery.js +13 -4
  57. package/dist/dist-esm/react-components/src/components/VideoGallery.js.map +1 -1
  58. package/dist/dist-esm/react-components/src/components/index.d.ts +8 -0
  59. package/dist/dist-esm/react-components/src/components/index.js +6 -0
  60. package/dist/dist-esm/react-components/src/components/index.js.map +1 -1
  61. package/dist/dist-esm/react-components/src/components/styles/BrowserPermissionDenied.styles.d.ts +58 -0
  62. package/dist/dist-esm/react-components/src/components/styles/BrowserPermissionDenied.styles.js +144 -0
  63. package/dist/dist-esm/react-components/src/components/styles/BrowserPermissionDenied.styles.js.map +1 -0
  64. package/dist/dist-esm/react-components/src/components/styles/Dialpad.styles.js +5 -1
  65. package/dist/dist-esm/react-components/src/components/styles/Dialpad.styles.js.map +1 -1
  66. package/dist/dist-esm/react-components/src/components/styles/DomainPermissions.styles.d.ts +5 -1
  67. package/dist/dist-esm/react-components/src/components/styles/DomainPermissions.styles.js +12 -1
  68. package/dist/dist-esm/react-components/src/components/styles/DomainPermissions.styles.js.map +1 -1
  69. package/dist/dist-esm/react-components/src/localization/LocalizationProvider.d.ts +6 -0
  70. package/dist/dist-esm/react-components/src/localization/LocalizationProvider.js.map +1 -1
  71. package/dist/dist-esm/react-components/src/localization/locales/en-US/strings.json +24 -2
  72. package/dist/dist-esm/react-components/src/permissions/PermissionsProvider.d.ts +5 -0
  73. package/dist/dist-esm/react-components/src/permissions/PermissionsProvider.js +15 -2
  74. package/dist/dist-esm/react-components/src/permissions/PermissionsProvider.js.map +1 -1
  75. package/dist/dist-esm/react-components/src/theming/icons.d.ts +1 -0
  76. package/dist/dist-esm/react-components/src/theming/icons.js +12 -1
  77. package/dist/dist-esm/react-components/src/theming/icons.js.map +1 -1
  78. package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.d.ts +8 -0
  79. package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.js.map +1 -1
  80. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.d.ts +3 -3
  81. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js +10 -9
  82. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js.map +1 -1
  83. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.d.ts +15 -4
  84. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.js.map +1 -1
  85. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.d.ts +2 -0
  86. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.js +27 -17
  87. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.js.map +1 -1
  88. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallPane.js +2 -1
  89. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallPane.js.map +1 -1
  90. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationpageCameraDropdown.d.ts +15 -0
  91. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationpageCameraDropdown.js +28 -0
  92. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationpageCameraDropdown.js.map +1 -0
  93. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationpageMicDropdown.d.ts +15 -0
  94. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationpageMicDropdown.js +30 -0
  95. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationpageMicDropdown.js.map +1 -0
  96. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.js +59 -29
  97. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.js.map +1 -1
  98. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Devices.js +10 -1
  99. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Devices.js.map +1 -1
  100. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js +4 -0
  101. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js.map +1 -1
  102. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatPane.js +2 -1
  103. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatPane.js.map +1 -1
  104. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.d.ts +3 -3
  105. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js +9 -3
  106. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js.map +1 -1
  107. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.d.ts +13 -0
  108. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.js.map +1 -1
  109. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.d.ts +3 -3
  110. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.js +11 -2
  111. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.js.map +1 -1
  112. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.js +4 -4
  113. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.js.map +1 -1
  114. package/dist/dist-esm/react-composites/src/composites/common/ModalLocalAndRemotePIP.d.ts +2 -5
  115. package/dist/dist-esm/react-composites/src/composites/common/ModalLocalAndRemotePIP.js +26 -12
  116. package/dist/dist-esm/react-composites/src/composites/common/ModalLocalAndRemotePIP.js.map +1 -1
  117. package/dist/dist-esm/react-composites/src/composites/common/icons.d.ts +1 -0
  118. package/dist/dist-esm/react-composites/src/composites/localization/locales/en-US/strings.json +2 -0
  119. package/package.json +10 -10
@@ -50,6 +50,9 @@ import { IButtonStyles } from '@fluentui/react';
50
50
  import { IContextualMenuItem } from '@fluentui/react';
51
51
  import { IContextualMenuItemStyles } from '@fluentui/react';
52
52
  import { IContextualMenuStyles } from '@fluentui/react';
53
+ import { IDropdownOption } from '@fluentui/react';
54
+ import { IDropdownStyles } from '@fluentui/react';
55
+ import { ILinkStyles } from '@fluentui/react';
53
56
  import { IMessageBarProps } from '@fluentui/react';
54
57
  import { IncomingCall } from '@azure/communication-calling';
55
58
  import { IPersonaStyleProps } from '@fluentui/react';
@@ -184,13 +187,6 @@ export declare interface AdapterState<TState> {
184
187
  getState(): TState;
185
188
  }
186
189
 
187
- /**
188
- * handler type for addParticipant
189
- *
190
- * @beta
191
- */
192
- export declare type AddParticipantHandler = ((participant: CommunicationUserIdentifier) => Promise<void>) & ((participant: PhoneNumberIdentifier, options: AddPhoneNumberOptions) => Promise<void>);
193
-
194
190
  /**
195
191
  * Compare if 2 react components are exact equal, result type will be true/false
196
192
  *
@@ -360,6 +356,136 @@ export declare interface BaseCustomStyles {
360
356
  root?: IStyle;
361
357
  }
362
358
 
359
+ /**
360
+ * @beta
361
+ * Props for BrowserPermissionDeniedIOS component.
362
+ */
363
+ export declare interface BrowserPermissionDeniedIOSProps extends BrowserPermissionDeniedProps {
364
+ /**
365
+ * Localization strings for BrowserPermissionDeniedIOS component.
366
+ */
367
+ strings: BrowserPermissionDeniedIOSStrings;
368
+ /**
369
+ * Link to image source.
370
+ *
371
+ * Image is inserted into the top of the component.
372
+ */
373
+ imageSource?: string;
374
+ }
375
+
376
+ /**
377
+ * @beta
378
+ * Strings for BrowserPermissionDeniedIOS component
379
+ */
380
+ export declare interface BrowserPermissionDeniedIOSStrings extends BrowserPermissionDeniedStrings {
381
+ /**
382
+ * Image alt text
383
+ */
384
+ imageAltText: string;
385
+ /**
386
+ * Main text string.
387
+ */
388
+ primaryText: string;
389
+ /**
390
+ * Subtext string.
391
+ */
392
+ secondaryText: string;
393
+ /**
394
+ * Step 1 string
395
+ */
396
+ step1Text: string;
397
+ /**
398
+ * Step 1 digit string
399
+ */
400
+ step1DigitText: string;
401
+ /**
402
+ * Step 2 string
403
+ */
404
+ step2Text: string;
405
+ /**
406
+ * Step 2 digit string
407
+ */
408
+ step2DigitText: string;
409
+ /**
410
+ * Step 3 string
411
+ */
412
+ step3Text: string;
413
+ /**
414
+ * Step 3 digit string
415
+ */
416
+ step3DigitText: string;
417
+ /**
418
+ * Step 4 string
419
+ */
420
+ step4Text: string;
421
+ /**
422
+ * Step 4 digit string
423
+ */
424
+ step4DigitText: string;
425
+ }
426
+
427
+ /**
428
+ * @beta
429
+ * Props for BrowserPermissionDenied component.
430
+ */
431
+ export declare interface BrowserPermissionDeniedProps {
432
+ /**
433
+ * Action to be taken by the more help link. Possible to send to external page or show other modal.
434
+ */
435
+ onTroubleshootingClick: () => void;
436
+ /**
437
+ * Action to be taken by the try again primary button.
438
+ */
439
+ onTryAgainClick: () => void;
440
+ /**
441
+ * Localization strings for BrowserPermissionDenied component.
442
+ */
443
+ strings: BrowserPermissionDeniedStrings;
444
+ /**
445
+ * Allows users to pass in an object contains custom CSS styles.
446
+ * @Example
447
+ * ```
448
+ * <BrowserPermissionDenied styles={{ primaryButton: { root: {backgroundColor: 'blue' }}}} />
449
+ * ```
450
+ */
451
+ styles?: BrowserPermissionDeniedStyles;
452
+ }
453
+
454
+ /**
455
+ * @beta
456
+ * Strings for BrowserPermissionDenied component
457
+ */
458
+ export declare interface BrowserPermissionDeniedStrings {
459
+ /**
460
+ * Main button text string.
461
+ */
462
+ primaryButtonText: string;
463
+ /**
464
+ * Main text string.
465
+ */
466
+ primaryText: string;
467
+ /**
468
+ * Subtext string.
469
+ */
470
+ secondaryText: string;
471
+ /**
472
+ * More help link string.
473
+ */
474
+ linkText: string;
475
+ }
476
+
477
+ /**
478
+ * Fluent styles for {@link BrowserPermissionDenied}.
479
+ *
480
+ * @beta
481
+ */
482
+ export declare interface BrowserPermissionDeniedStyles extends BaseCustomStyles {
483
+ /** Styles for the primary button. */
484
+ primaryButton?: IButtonStyles;
485
+ /** Styles for the help troubleshooting link text. */
486
+ troubleshootingLink?: ILinkStyles;
487
+ }
488
+
363
489
  /**
364
490
  * {@link CallComposite} Adapter interface.
365
491
  *
@@ -375,7 +501,6 @@ export declare interface CallAdapter extends AdapterState<CallAdapterState>, Dis
375
501
  */
376
502
  export declare type CallAdapterCallEndedEvent = {
377
503
  callId?: string;
378
- callEndReason?: CallEndReason;
379
504
  };
380
505
 
381
506
  /**
@@ -436,6 +561,12 @@ export declare interface CallAdapterCallManagement {
436
561
  * @public
437
562
  */
438
563
  startCall(participants: string[], options?: StartCallOptions): Call | undefined;
564
+ /**
565
+ * Start the call.
566
+ * @param participants - An array of {@link @azure/communication-common#CommunicationIdentifier} to be called
567
+ * @beta
568
+ */
569
+ startCall(participants: CommunicationIdentifier[], options?: StartCallOptions): Call | undefined;
439
570
  /**
440
571
  * Start sharing the screen during a call.
441
572
  *
@@ -456,6 +587,12 @@ export declare interface CallAdapterCallManagement {
456
587
  * @public
457
588
  */
458
589
  removeParticipant(userId: string): Promise<void>;
590
+ /**
591
+ * Remove a participant from the call.
592
+ * @param participant - {@link @azure/communication-common#CommunicationIdentifier} of the participant to be removed
593
+ * @beta
594
+ */
595
+ removeParticipant(participant: CommunicationIdentifier): Promise<void>;
459
596
  /**
460
597
  * Create the html view for a stream.
461
598
  *
@@ -1330,6 +1467,14 @@ export declare interface CallCompositeStrings {
1330
1467
  * More details text of the page shown to the user when the user attempts to join a room to which they are not invited.
1331
1468
  */
1332
1469
  deniedPermissionToRoomDetails?: string;
1470
+ /**
1471
+ * Control bar People button ToolTipContent
1472
+ */
1473
+ peopleButtonTooltipOpen: string;
1474
+ /**
1475
+ * Control bar People button ToolTipContent
1476
+ */
1477
+ peopleButtonTooltipClose: string;
1333
1478
  }
1334
1479
 
1335
1480
  /**
@@ -1470,7 +1615,7 @@ export declare type CallErrors = {
1470
1615
  *
1471
1616
  * @public
1472
1617
  */
1473
- export declare type CallErrorTarget = 'Call.addParticipant' | 'Call.feature' | 'Call.hangUp' | 'Call.hold' | 'Call.mute' | /* @conditional-compile-remove(calling-beta-sdk) */ 'Call.muteIncomingAudio' | 'Call.off' | 'Call.on' | 'Call.removeParticipant' | 'Call.resume' | 'Call.sendDtmf' | /* @conditional-compile-remove(calling-beta-sdk) */ 'Call.startAudio' | 'Call.startScreenSharing' | 'Call.startVideo' | 'Call.stopScreenSharing' | /* @conditional-compile-remove(calling-beta-sdk) */ 'Call.stopAudio' | 'Call.stopVideo' | 'Call.unmute' | /* @conditional-compile-remove(calling-beta-sdk) */ 'Call.unmuteIncomingAudio' | 'CallAgent.dispose' | 'CallAgent.feature' | 'CallAgent.join' | 'CallAgent.off' | 'CallAgent.on' | 'CallAgent.startCall' | 'CallClient.createCallAgent' | 'CallClient.feature' | 'CallClient.getDeviceManager' | /* @conditional-compile-remove(calling-beta-sdk) */ 'CallClient.getEnvironmentInfo' | 'DeviceManager.askDevicePermission' | 'DeviceManager.getCameras' | 'DeviceManager.getMicrophones' | 'DeviceManager.getSpeakers' | 'DeviceManager.off' | 'DeviceManager.on' | 'DeviceManager.selectMicrophone' | 'DeviceManager.selectSpeaker' | 'IncomingCall.accept' | 'IncomingCall.reject';
1618
+ export declare type CallErrorTarget = 'Call.addParticipant' | /* @conditional-compile-remove(calling-beta-sdk) */ 'Call.dispose' | 'Call.feature' | 'Call.hangUp' | 'Call.hold' | 'Call.mute' | /* @conditional-compile-remove(calling-beta-sdk) */ 'Call.muteIncomingAudio' | 'Call.off' | 'Call.on' | 'Call.removeParticipant' | 'Call.resume' | 'Call.sendDtmf' | /* @conditional-compile-remove(calling-beta-sdk) */ 'Call.startAudio' | 'Call.startScreenSharing' | 'Call.startVideo' | 'Call.stopScreenSharing' | /* @conditional-compile-remove(calling-beta-sdk) */ 'Call.stopAudio' | 'Call.stopVideo' | 'Call.unmute' | /* @conditional-compile-remove(calling-beta-sdk) */ 'Call.unmuteIncomingAudio' | 'CallAgent.dispose' | 'CallAgent.feature' | 'CallAgent.join' | 'CallAgent.off' | 'CallAgent.on' | 'CallAgent.startCall' | 'CallClient.createCallAgent' | /* @conditional-compile-remove(calling-beta-sdk) */ 'CallClient.createTeamsCallAgent' | 'CallClient.feature' | 'CallClient.getDeviceManager' | /* @conditional-compile-remove(calling-beta-sdk) */ 'CallClient.getEnvironmentInfo' | 'DeviceManager.askDevicePermission' | 'DeviceManager.getCameras' | 'DeviceManager.getMicrophones' | 'DeviceManager.getSpeakers' | 'DeviceManager.off' | 'DeviceManager.on' | 'DeviceManager.selectMicrophone' | 'DeviceManager.selectSpeaker' | 'IncomingCall.accept' | 'IncomingCall.reject';
1474
1619
 
1475
1620
  /**
1476
1621
  * Callback for {@link CallAdapterSubscribers} 'callIdChanged' event.
@@ -1511,13 +1656,16 @@ export declare type CallingHandlers = {
1511
1656
  onToggleScreenShare: () => Promise<void>;
1512
1657
  onHangUp: () => Promise<void>;
1513
1658
  onToggleHold: () => Promise<void>;
1514
- onAddParticipant: AddParticipantHandler;
1659
+ onAddParticipant(participant: CommunicationUserIdentifier): Promise<void>;
1660
+ onAddParticipant(participant: PhoneNumberIdentifier, options: AddPhoneNumberOptions): Promise<void>;
1515
1661
  onCreateLocalStreamView: (options?: VideoStreamOptions) => Promise<void | CreateVideoStreamViewResult>;
1516
1662
  onCreateRemoteStreamView: (userId: string, options?: VideoStreamOptions) => Promise<void | CreateVideoStreamViewResult>;
1517
- onRemoveParticipant: (userId: string) => Promise<void>;
1663
+ onRemoveParticipant(userId: string): Promise<void>;
1664
+ onRemoveParticipant(participant: CommunicationIdentifier): Promise<void>;
1518
1665
  onDisposeRemoteStreamView: (userId: string) => Promise<void>;
1519
1666
  onDisposeLocalStreamView: () => Promise<void>;
1520
1667
  onSendDtmfTone: (dtmfTone: DtmfTone_2) => Promise<void>;
1668
+ askDevicePermission: (constrain: PermissionConstraints) => Promise<void>;
1521
1669
  };
1522
1670
 
1523
1671
  /**
@@ -1709,6 +1857,12 @@ export declare interface CallWithChatAdapterManagement {
1709
1857
  * @public
1710
1858
  */
1711
1859
  removeParticipant(userId: string): Promise<void>;
1860
+ /**
1861
+ * Remove a participant from the call.
1862
+ * @param participant - {@link @azure/communication-common#CommunicationIdentifier} of the participant to be removed
1863
+ * @beta
1864
+ */
1865
+ removeParticipant(participant: CommunicationIdentifier): Promise<void>;
1712
1866
  /**
1713
1867
  * Join the call with microphone initially on/off.
1714
1868
  *
@@ -1763,6 +1917,12 @@ export declare interface CallWithChatAdapterManagement {
1763
1917
  * @public
1764
1918
  */
1765
1919
  startCall(participants: string[], options?: StartCallOptions): Call | undefined;
1920
+ /**
1921
+ * Start the call.
1922
+ * @param participants - An array of {@link @azure/communication-common#CommunicationIdentifier} to be called
1923
+ * @beta
1924
+ */
1925
+ startCall(participants: CommunicationIdentifier[], options?: StartCallOptions): Call | undefined;
1766
1926
  /**
1767
1927
  * Start sharing the screen during a call.
1768
1928
  *
@@ -3337,6 +3497,10 @@ export declare interface ComponentStrings {
3337
3497
  DomainPermissions: DomainPermissionsStrings;
3338
3498
  /** Strings for unsupported browser UI */
3339
3499
  UnsupportedBrowser: UnsupportedBrowserStrings;
3500
+ /** Strings for BrowserPemissionDenied */
3501
+ BrowserPermissionDenied: BrowserPermissionDeniedStrings;
3502
+ /** Strings for BrowserPemissionDeniedIOS */
3503
+ BrowserPermissionDeniedIOS: BrowserPermissionDeniedIOSStrings;
3340
3504
  }
3341
3505
 
3342
3506
  /**
@@ -4048,6 +4212,7 @@ export declare const DEFAULT_COMPONENT_ICONS: {
4048
4212
  DomainPermissionCamera: JSX.Element;
4049
4213
  DomainPermissionMic: JSX.Element;
4050
4214
  UnsupportedBrowserWarning: JSX.Element;
4215
+ BrowserPermissionDeniedError: JSX.Element;
4051
4216
  };
4052
4217
 
4053
4218
  /**
@@ -4140,6 +4305,7 @@ export declare const DEFAULT_COMPOSITE_ICONS: {
4140
4305
  DomainPermissionCamera: JSX.Element;
4141
4306
  DomainPermissionMic: JSX.Element;
4142
4307
  UnsupportedBrowserWarning: JSX.Element;
4308
+ BrowserPermissionDeniedError: JSX.Element;
4143
4309
  };
4144
4310
 
4145
4311
  /**
@@ -4197,6 +4363,68 @@ export declare type DeviceManagerState = {
4197
4363
  unparentedViews: LocalVideoStreamState[];
4198
4364
  };
4199
4365
 
4366
+ /**
4367
+ * A dropdown to trigger device permission prompt
4368
+ *
4369
+ * @internal
4370
+ */
4371
+ export declare const _DevicePermissionDropdown: (props: _DevicePermissionDropdownProps) => JSX.Element;
4372
+
4373
+ /**
4374
+ * Props for {@link _DevicePermissionDropdown}.
4375
+ *
4376
+ * @internal
4377
+ */
4378
+ export declare interface _DevicePermissionDropdownProps {
4379
+ /**
4380
+ * icon shown in dropdown placeholder
4381
+ */
4382
+ icon?: JSX.Element;
4383
+ /**
4384
+ * Dropdown content
4385
+ */
4386
+ options?: IDropdownOption[];
4387
+ /**
4388
+ * Ask for permissions of devices.
4389
+ *
4390
+ * @remarks
4391
+ * Browser permission window will pop up if permissions are not granted yet
4392
+ *
4393
+ * @param constrain - Define constraints for accessing local devices {@link @azure/communication-calling#PermissionConstraints }
4394
+ */
4395
+ askDevicePermission?(constrain: _PermissionConstraints): Promise<void>;
4396
+ /**
4397
+ * Define constraints for accessing local devices {@link @azure/communication-calling#PermissionConstraints }
4398
+ */
4399
+ constrain?: _PermissionConstraints;
4400
+ /**
4401
+ * Strings for devicepermissiondropdown
4402
+ */
4403
+ strings?: _DevicePermissionDropdownStrings;
4404
+ /**
4405
+ * Styles for devicepermissiondropdown
4406
+ */
4407
+ styles?: Partial<IDropdownStyles>;
4408
+ }
4409
+
4410
+ /**
4411
+ * Strings of {@link DevicePermissionDropdown} that can be overridden.
4412
+ *
4413
+ * @internal
4414
+ */
4415
+ export declare interface _DevicePermissionDropdownStrings {
4416
+ /**
4417
+ * dropdown label
4418
+ */
4419
+ label?: string;
4420
+ /**
4421
+ * dropdown placeholder
4422
+ */
4423
+ placeHolderText: string;
4424
+ /** string for action button */
4425
+ actionButtonContent?: string;
4426
+ }
4427
+
4200
4428
  /**
4201
4429
  * Device Permission restrictions.
4202
4430
  * Be able to start a call depending on camera and microphone permission options.
@@ -4478,6 +4706,10 @@ export declare interface DomainPermissionsProps {
4478
4706
  * Action to be taken by the more help link. Possible to send to external page or show other modal.
4479
4707
  */
4480
4708
  onTroubleshootingClick: () => void;
4709
+ /**
4710
+ * Action to be taken by the Allow Access button.
4711
+ */
4712
+ onAllowAccessClick?: () => void;
4481
4713
  /**
4482
4714
  * Localization strings for DomainPermissions component.
4483
4715
  */
@@ -4501,6 +4733,10 @@ export declare interface DomainPermissionsStrings {
4501
4733
  * More help link string.
4502
4734
  */
4503
4735
  linkText: string;
4736
+ /**
4737
+ * Primary button text string.
4738
+ */
4739
+ primaryButtonText: string;
4504
4740
  }
4505
4741
 
4506
4742
  /**
@@ -4965,7 +5201,7 @@ export declare const fromFlatCommunicationIdentifier: (id: string) => Communicat
4965
5201
  *
4966
5202
  * @public
4967
5203
  */
4968
- export declare type GetCallingSelector<Component extends (props: any) => JSX.Element | undefined> = AreEqual<Component, typeof VideoGallery> extends true ? VideoGallerySelector : AreEqual<Component, typeof DevicesButton> extends true ? DevicesButtonSelector : AreEqual<Component, typeof MicrophoneButton> extends true ? MicrophoneButtonSelector : AreEqual<Component, typeof CameraButton> extends true ? CameraButtonSelector : AreEqual<Component, typeof ScreenShareButton> extends true ? ScreenShareButtonSelector : AreEqual<Component, typeof ParticipantList> extends true ? ParticipantListSelector : AreEqual<Component, typeof ParticipantsButton> extends true ? ParticipantsButtonSelector : AreEqual<Component, typeof EndCallButton> extends true ? EmptySelector : AreEqual<Component, typeof ErrorBar> extends true ? CallErrorBarSelector : AreEqual<Component, typeof Dialpad> extends true ? EmptySelector : AreEqual<Component, typeof HoldButton> extends true ? HoldButtonSelector : undefined;
5204
+ export declare type GetCallingSelector<Component extends (props: any) => JSX.Element | undefined> = AreEqual<Component, typeof VideoGallery> extends true ? VideoGallerySelector : AreEqual<Component, typeof DevicesButton> extends true ? DevicesButtonSelector : AreEqual<Component, typeof MicrophoneButton> extends true ? MicrophoneButtonSelector : AreEqual<Component, typeof CameraButton> extends true ? CameraButtonSelector : AreEqual<Component, typeof ScreenShareButton> extends true ? ScreenShareButtonSelector : AreEqual<Component, typeof ParticipantList> extends true ? ParticipantListSelector : AreEqual<Component, typeof ParticipantsButton> extends true ? ParticipantsButtonSelector : AreEqual<Component, typeof EndCallButton> extends true ? EmptySelector : AreEqual<Component, typeof ErrorBar> extends true ? CallErrorBarSelector : AreEqual<Component, typeof Dialpad> extends true ? EmptySelector : AreEqual<Component, typeof HoldButton> extends true ? HoldButtonSelector : AreEqual<Component, typeof _DevicePermissionDropdown> extends true ? EmptySelector : undefined;
4969
5205
 
4970
5206
  /**
4971
5207
  * Get the selector for a specified component.
@@ -6379,6 +6615,16 @@ export declare type ParticipantsRemovedListener = (event: {
6379
6615
  */
6380
6616
  export declare type ParticipantState = 'Idle' | 'Connecting' | 'Ringing' | 'Connected' | 'Hold' | 'InLobby' | 'EarlyMedia' | 'Disconnected';
6381
6617
 
6618
+ /**
6619
+ * Define constraints for accessing local devices {@link @azure/communication-calling#PermissionConstraints }
6620
+ *
6621
+ * @internal
6622
+ */
6623
+ export declare type _PermissionConstraints = {
6624
+ audio: boolean;
6625
+ video: boolean;
6626
+ };
6627
+
6382
6628
  /**
6383
6629
  * An array of key value pairs that stores each sender's display name and last read message
6384
6630
  *