import type { RefreshAccessTokenType } from './models'; /** * CommsAPI is a main object that allows an application to interact with Dolby.io services. */ export declare class CommsAPI { /** @internal */ private _nativeEvents; /** @internal */ private refreshAccessTokenInBackground?; /** * Retrieves the AudioService instance that allows changing audio settings for the local and remote participants. * * This API is available in SDK 3.7 and later. */ audio: import("./services/audio/AudioService").AudioService; /** * Retrieves the CommandService instance that allows sending messages to conferences. */ command: import("./services/command/CommandService").CommandService; /** * Retrieves the ConferenceService instance that allows interacting with conferences. */ conference: import("./services/conference/ConferenceService").ConferenceService; /** * Retrieves the FilePresentationService instance that allows presenting files during conferences. */ filePresentation: import("./services/filePresentation/FilePresentationService").FilePresentationService; /** * Retrieves the MediaDeviceService instance that allows interacting with devices through the system. */ mediaDevice: import("./services/mediaDevice/MediaDeviceService").MediaDeviceService; /** * Retrieves the NotificationService instance that allows inviting participants to a conference. */ notification: import("./services/notification/NotificationService").NotificationService; /** * Retrieves the RecordingService instance that allows recording conferences. */ recording: import("./services/recording/RecordingService").RecordingService; /** * Retrieves the SessionService instance that allows using sessions. */ session: import("./services/session/SessionService").SessionService; /** * Retrieves the VideoPresentationService instance that allows presenting videos during conferences. */ videoPresentation: import("./services/videoPresentation/VideoPresentationService").VideoPresentationService; /** * Retrieves the VideoService instance that allows enabling and disabling video for the local and remote participants. * * This API is available in SDK 3.7 and later. */ video: import("./services/video/VideoService").VideoService; /** * Initializes the SDK using the customer key and secret. * @param consumerKey The customer key. * @param consumerSecret The customer secret. */ initialize(consumerKey: string, consumerSecret: string): Promise; /** * Initializes the SDK with the client access token provided by the Dolby.io platform. The client access token protects customer's conferences from unauthorized access and can be generated only by the Dolby.io platform via an application's authentication server and the [client access token](ref:get-client-access-token) request. * * The method requires providing two parameters - the **client access token** received from the Dolby.io platform and the **refresh access token** callback. The callback must be a function that requests a new token and returns a promise containing the refreshed client access token when the token is incorrect or needs to be refreshed. The refresh token callback uses an **isExpired** boolean parameter to inform whether the currently used client access token is expired. * * For more information, see the [Accessing Dolby.io Platform](doc:guides-accessing-dolbyio-platform) guide. * @param accessToken The access token provided by the customer's backend. * @param refreshAccessToken A callback that returns a promise when the access token needs to be refreshed. The callback parameter takes the isExpired boolean parameter to check if the previous token has expired. */ initializeToken(accessToken: string | null, refreshAccessToken: RefreshAccessTokenType): Promise; } declare const _default: CommsAPI; export default _default;