1# @ohos.app.ability.common (Ability Common Module) 2 3<!--Kit: Ability Kit--> 4<!--Subsystem: Ability--> 5<!--Owner: @zexin_c--> 6<!--Designer: @li-weifeng2--> 7<!--Tester: @lixueqing513--> 8<!--Adviser: @huipeizi--> 9 10The module provides pure type definitions for common capabilities within Ability Kit, including various context objects, callback interfaces, and data structures. It exports type declarations only and does not include any implementation logic or executable code. 11 12> **NOTE** 13> 14> The initial APIs of this module are supported since API version 9. Newly added APIs will be marked with a superscript to indicate their earliest API version. 15 16## Modules to Import 17 18```ts 19import { common } from '@kit.AbilityKit'; 20``` 21 22## UIAbilityContext 23 24type UIAbilityContext = _UIAbilityContext.default 25 26Defines the context environment for the [UIAbility](../apis-ability-kit/js-apis-app-ability-uiAbility.md). It inherits from Context. 27 28**Atomic service API**: This API can be used in atomic services since API version 11. 29 30**System capability**: SystemCapability.Ability.AbilityRuntime.Core 31 32**Model restriction**: This API can be used only in the stage model. 33 34| Type| Description| 35| --- | --- | 36| [_UIAbilityContext.default](js-apis-inner-application-uiAbilityContext.md) | Default context of the UIAbility.| 37 38## AbilityStageContext 39 40type AbilityStageContext = _AbilityStageContext.default 41 42Defines the context environment for the [AbilityStage](../apis-ability-kit/js-apis-app-ability-abilityStage.md). It inherits from Context. 43 44**Atomic service API**: This API can be used in atomic services since API version 11. 45 46**System capability**: SystemCapability.Ability.AbilityRuntime.Core 47 48**Model restriction**: This API can be used only in the stage model. 49 50| Type| Description| 51| --- | --- | 52| [_AbilityStageContext.default](js-apis-inner-application-abilityStageContext.md) | Default context of the AbilityStage.| 53 54## ApplicationContext 55 56type ApplicationContext = _ApplicationContext.default 57 58Defines the application context. It inherits from Context. 59 60**Atomic service API**: This API can be used in atomic services since API version 11. 61 62**System capability**: SystemCapability.Ability.AbilityRuntime.Core 63 64**Model restriction**: This API can be used only in the stage model. 65 66| Type| Description| 67| --- | --- | 68| [_ApplicationContext.default](js-apis-inner-application-applicationContext.md) | Application context.| 69 70## BaseContext 71 72type BaseContext = _BaseContext.default 73 74Defines the parent class of all context types. 75 76**Atomic service API**: This API can be used in atomic services since API version 11. 77 78**System capability**: SystemCapability.Ability.AbilityRuntime.Core 79 80**Model restriction**: This API can be used only in the stage model. 81 82| Type| Description| 83| --- | --- | 84| [_BaseContext.default](js-apis-inner-application-baseContext.md) | Parent class of all context types.| 85 86## Context 87 88type Context = _Context.default 89 90Defines the base class of the context in the stage model. 91 92**Atomic service API**: This API can be used in atomic services since API version 11. 93 94**System capability**: SystemCapability.Ability.AbilityRuntime.Core 95 96**Model restriction**: This API can be used only in the stage model. 97 98| Type| Description| 99| --- | --- | 100| [_Context.default](js-apis-inner-application-context.md) | Base class of the context in the stage model.| 101 102## ExtensionContext 103 104type ExtensionContext = _ExtensionContext.default 105 106Defines the context environment for the [ExtensionAbility](../apis-ability-kit/js-apis-app-ability-extensionAbility.md). It inherits from Context. 107 108**Atomic service API**: This API can be used in atomic services since API version 11. 109 110**System capability**: SystemCapability.Ability.AbilityRuntime.Core 111 112**Model restriction**: This API can be used only in the stage model. 113 114| Type| Description| 115| --- | --- | 116| [_ExtensionContext.default](js-apis-inner-application-extensionContext.md) | Default context of the ExtensionAbility.| 117 118## FormExtensionContext 119 120type FormExtensionContext = _FormExtensionContext.default 121 122Defines the context environment for the [FormExtensionAbility](../apis-form-kit/js-apis-app-form-formExtensionAbility.md). It inherits from Context. 123 124**Atomic service API**: This API can be used in atomic services since API version 11. 125 126**System capability**: SystemCapability.Ability.AbilityRuntime.Core 127 128**Model restriction**: This API can be used only in the stage model. 129 130| Type| Description| 131| --- | --- | 132| [_FormExtensionContext.default](../apis-form-kit/js-apis-inner-application-formExtensionContext.md) | Default context of the FormExtensionAbility.| 133 134## VpnExtensionContext<sup>11+<sup> 135 136type VpnExtensionContext = _VpnExtensionContext.default 137 138Defines the context environment for the [VpnExtensionAbility](../apis-network-kit/js-apis-VpnExtensionAbility.md). It inherits from Context. 139 140**System capability**: SystemCapability.Ability.AbilityRuntime.Core 141 142**Model restriction**: This API can be used only in the stage model. 143 144| Type| Description| 145| --- | --- | 146| [_VpnExtensionContext.default](../apis-network-kit/js-apis-inner-application-VpnExtensionContext.md) | Default context of the VpnExtensionAbility.| 147 148## EventHub 149 150type EventHub = _EventHub.default 151 152Defines EventHub, which is an event communication mechanism based on the publish-subscribe pattern. 153 154**Atomic service API**: This API can be used in atomic services since API version 11. 155 156**System capability**: SystemCapability.Ability.AbilityRuntime.Core 157 158**Model restriction**: This API can be used only in the stage model. 159 160| Type| Description| 161| --- | --- | 162| [_EventHub.default](js-apis-inner-application-eventHub.md) | Event communication mechanism based on the publish-subscribe pattern.| 163 164## PacMap 165 166type PacMap = _PacMap 167 168Defines the container of basic data types. 169 170**Atomic service API**: This API can be used in atomic services since API version 11. 171 172**System capability**: SystemCapability.Ability.AbilityRuntime.Core 173 174| Type| Description| 175| --- | --- | 176| [_PacMap](js-apis-inner-ability-dataAbilityHelper.md#pacmap) | Container of basic data types.| 177 178## AbilityResult 179 180type AbilityResult = _AbilityResult 181 182Defines the result code and data returned when a started ability is terminated. 183 184**Atomic service API**: This API can be used in atomic services since API version 11. 185 186**System capability**: SystemCapability.Ability.AbilityRuntime.Core 187 188**Model restriction**: This API can be used only in the stage model. 189 190| Type| Description| 191| --- | --- | 192| [_AbilityResult](js-apis-inner-ability-abilityResult.md) | Result code and data returned when a started ability is terminated.| 193 194## AbilityStartCallback<sup>11+<sup> 195 196type AbilityStartCallback = _AbilityStartCallback 197 198Defines the callback invoked to return the UIExtensionAbility startup result. It is usually used as an input parameter in [UIAbilityContext.startAbilityByType](js-apis-inner-application-uiAbilityContext.md#startabilitybytype11) or [UIExtensionContext.startAbilityByType](js-apis-app-ability-uiExtensionContentSession.md#startabilitybytype11). 199 200**Atomic service API**: This API can be used in atomic services since API version 11. 201 202**System capability**: SystemCapability.Ability.AbilityRuntime.Core 203 204**Model restriction**: This API can be used only in the stage model. 205 206| Type| Description| 207| --- | --- | 208| [_AbilityStartCallback](js-apis-inner-application-abilityStartCallback.md) | Callback invoked to return the UIExtensionAbility startup result.| 209 210## ConnectOptions 211 212type ConnectOptions = _ConnectOptions 213 214Defines the connection options. It is used as an input parameter for connection to a background service, to receive the connection status with the background service. 215 216**System capability**: SystemCapability.Ability.AbilityRuntime.Core 217 218**Model restriction**: This API can be used only in the stage model. 219 220| Type| Description| 221| --- | --- | 222| [_ConnectOptions](js-apis-inner-ability-connectOptions.md) | Input parameter used to receive the connection status with the background service.| 223 224## UIExtensionContext<sup>10+</sup> 225 226type UIExtensionContext = _UIExtensionContext.default 227 228Defines the context environment for the [UIExtensionAbility](../apis-ability-kit/js-apis-app-ability-uiExtensionAbility.md). It inherits from Context. 229 230**System capability**: SystemCapability.Ability.AbilityRuntime.Core 231 232**Model restriction**: This API can be used only in the stage model. 233 234| Type| Description| 235| --- | --- | 236| [_UIExtensionContext.default](js-apis-inner-application-uiExtensionContext.md) | Default context of the UIExtensionAbility.| 237 238## EmbeddableUIAbilityContext<sup>12+<sup> 239 240type EmbeddableUIAbilityContext = _EmbeddableUIAbilityContext.default 241 242Defines the context environment for the [EmbeddableUIAbility](../apis-ability-kit/js-apis-app-ability-embeddableUIAbility.md). It inherits from Context. 243 244**Atomic service API**: This API can be used in atomic services since API version 12. 245 246**System capability**: SystemCapability.Ability.AbilityRuntime.Core 247 248**Model restriction**: This API can be used only in the stage model. 249 250| Type| Description| 251| --- | --- | 252| [_EmbeddableUIAbilityContext.default](js-apis-inner-application-EmbeddableUIAbilityContext.md) | Default context of the EmbeddableUIAbility.| 253 254## PhotoEditorExtensionContext<sup>12+<sup> 255 256type PhotoEditorExtensionContext = _PhotoEditorExtensionContext.default 257 258Defines the context environment for the [PhotoEditorExtensionAbility](../apis-ability-kit/js-apis-app-ability-photoEditorExtensionAbility.md). It inherits from Context. 259 260**System capability**: SystemCapability.Ability.AppExtension.PhotoEditorExtension 261 262**Model restriction**: This API can be used only in the stage model. 263 264| Type| Description| 265| --- | --- | 266| [_PhotoEditorExtensionContext.default](js-apis-app-ability-photoEditorExtensionContext.md) | Default context of the PhotoEditorExtensionAbility.| 267 268## UIServiceProxy<sup>14+<sup> 269 270type UIServiceProxy = _UIServiceProxy.default 271 272Defines the capability for data communication with the UIServiceExtensionAbility. UIServiceExtensionAbility is a special type of ExtensionAbility provided by the system and is used to provide extended capabilities related to floating windows. 273 274**Atomic service API**: This API can be used in atomic services since API version 14. 275 276**System capability**: SystemCapability.Ability.AbilityRuntime.Core 277 278**Model restriction**: This API can be used only in the stage model. 279 280| Type| Description| 281| --- | --- | 282| [_UIServiceProxy.default](js-apis-inner-application-uiserviceproxy.md) | Capability for data communication with the UIServiceExtensionAbility.| 283 284## UIServiceExtensionConnectCallback<sup>14+<sup> 285 286type UIServiceExtensionConnectCallback = _UIServiceExtensionConnectCallback.default 287 288Defines the connection callback. It is used as an input parameter for connection to a UIServiceExtensionAbility, to provide the callback for the connection. 289 290**Atomic service API**: This API can be used in atomic services since API version 14. 291 292**System capability**: SystemCapability.Ability.AbilityRuntime.Core 293 294**Model restriction**: This API can be used only in the stage model. 295 296| Type| Description| 297| --- | --- | 298| [_UIServiceExtensionConnectCallback.default](js-apis-inner-application-uiServiceExtensionconnectcallback.md) | Callback for connection to a UIServiceExtensionAbility.| 299 300## AppServiceExtensionContext<sup>20+</sup> 301 302type AppServiceExtensionContext = _AppServiceExtensionContext.default 303 304Defines the context environment for the [AppServiceExtensionAbility](js-apis-app-ability-appServiceExtensionAbility.md). It inherits from Context. 305 306**System capability**: SystemCapability.Ability.AbilityRuntime.Core 307 308**Model restriction**: This API can be used only in the stage model. 309 310| Type| Description| 311| --- | --- | 312| [_AppServiceExtensionContext.default](js-apis-inner-application-appServiceExtensionContext.md) | Default context of the AppServiceExtensionAbility.| 313 314**Example** 315 316```ts 317import { common } from '@kit.AbilityKit'; 318 319let uiAbilityContext: common.UIAbilityContext; 320let abilityStageContext: common.AbilityStageContext; 321let applicationContext: common.ApplicationContext; 322let baseContext: common.BaseContext; 323let context: common.Context; 324let uiExtensionContext: common.UIExtensionContext; 325let extensionContext: common.ExtensionContext; 326let formExtensionContext: common.FormExtensionContext; 327let vpnExtensionContext: common.VpnExtensionContext; 328let eventHub: common.EventHub; 329let pacMap: common.PacMap; 330let abilityResult: common.AbilityResult; 331let abilityStartCallback: common.AbilityStartCallback; 332let connectOptions: common.ConnectOptions; 333let embeddableUIAbilityContext: common.EmbeddableUIAbilityContext; 334let photoEditorExtensionContext: common.PhotoEditorExtensionContext; 335let uiServiceProxy : common.UIServiceProxy; 336let uiServiceExtensionConnectCallback : common.UIServiceExtensionConnectCallback; 337let appServiceExtensionContext : common.AppServiceExtensionContext; 338``` 339