import { IApplication } from './types/api.interfaces'; import { IResolve } from './types/common.interfaces'; import { IOnReadyValidator, IWebexAppsApplication, IWebexAppsApplicationState } from './types/application.interfaces'; import { IWebexAppsUserState } from './types/user.interfaces'; /** * Webex Embedded app instance. * * @public */ declare class WebexAppsApplication implements IWebexAppsApplication { /** * @internal */ isReady: boolean; /** * @internal */ onReadyResolvers: IResolve[]; /** * @internal */ onReadyValidator: IOnReadyValidator; /** * @internal */ sdk: IApplication; /** * * This holds {@link IWebexAppsApplicationState | all the properties} of the Application. * * @readonly */ states: IWebexAppsApplicationState; /** * @internal */ constructor(sdk: IApplication); /** * @internal */ initialze(): void; /** * @internal */ updateStates(newStates: IWebexAppsApplicationState, eventName?: string): void; sendPerformanceReport(report: object): Promise; /** * @internal */ setShareUrl(internalUrl: string, externalUrl: string, title: string, optional?: object): Promise; /** * @internal */ clearShareUrl(): Promise; /** * * @internal */ initiateSystemBrowserOAuth(authenticateUrl: string): Promise; /** * * @internal */ isSdkSupported(version: string): boolean; /** * * @internal */ listen(): Promise; /** * * @internal */ onReady(): Promise; /** * * @internal */ openUrlInSystemBrowser(url: string): Promise; subscribeForEvent(eventName: string): Promise; getSelectedAudioDevices(audioDevices: string): Promise; /** * This event is fired when the user information changes. * * @event @internal * @removed * - This event is removed * * - User object is static in V2 * * - Event will be fired only if your Embedded App SDK is V1 * @example * ```javascript * app.onReady().then(() => { * app.listen() * .then(() => { * app.on("user:infoChanged", (user) => { * console.log("User object modified. New Information:", user); * }) * }) * .catch((reason) => { * console.error("listen: fail reason=" + webex.Application.ErrorCodes[reason]); * }); * }); * ``` * `user` object in the callback is of type {@link IWebexAppsUserState} */ readonly 'user:infoChanged': IWebexAppsUserState; } export { IWebexAppsApplicationState, IWebexAppsUserState, WebexAppsApplication }; export default WebexAppsApplication; //# sourceMappingURL=application.d.ts.map