diff --git a/api/@ohos.distributedBundle.d.ts b/api/@ohos.distributedBundle.d.ts new file mode 100644 index 0000000000000000000000000000000000000000..90aef0113a27acab1b229dbcdb05bfc4fa8bf73a --- /dev/null +++ b/api/@ohos.distributedBundle.d.ts @@ -0,0 +1,53 @@ +/* + * Copyright (c) 2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { AsyncCallback } from './basic'; +import { ElementName } from './bundle/elementName'; +import { RemoteAbilityInfo } from './bundle/remoteAbilityInfo'; + +/** + * distributedBundle. + * @name distributedBundle + * @since 8 + * @syscap SystemCapability.BundleManager.DistributedBundleFramework + * @permission NA + */ + declare namespace distributedBundle { + /** + * Obtains information about the ability info of the remote device. + * + * @since 8 + * @syscap SystemCapability.BundleManager.DistributedBundleFramework + * @param elementName Indicates the elementName. + * @return Returns the ability info of the remote device. + * @permission ohos.permission.GET_REMOTE_ABILITY_INFO_PRIVILEGED + * @systemapi + */ + function getRemoteAbilityInfo(elementName: ElementName, callback: AsyncCallback): void; + function getRemoteAbilityInfo(elementName: ElementName): Promise; + + /** + * Obtains information about the ability infos of the remote device. + * + * @since 8 + * @syscap SystemCapability.BundleManager.DistributedBundleFramework + * @param elementNames Indicates the elementNames, Maximum array length ten. + * @return Returns the ability infos of the remote device. + * @permission ohos.permission.GET_REMOTE_ABILITY_INFO_PRIVILEGED + * @systemapi + */ + function getRemoteAbilityInfos(elementNames: Array, callback: AsyncCallback>): void; + function getRemoteAbilityInfos(elementNames: Array): Promise>; +} \ No newline at end of file diff --git a/api/bundle/remoteAbilityInfo.d.ts b/api/bundle/remoteAbilityInfo.d.ts new file mode 100644 index 0000000000000000000000000000000000000000..e9a1585c266935fe61704347a15a25eaebd4ccb3 --- /dev/null +++ b/api/bundle/remoteAbilityInfo.d.ts @@ -0,0 +1,47 @@ +/* + * Copyright (c) 2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { ElementName } from './elementName'; + +/** + * @name Contains basic remote ability information. + * @since 8 + * @syscap SystemCapability.BundleManager.DistributedBundleFramework + * @systemapi + * + * @permission N/A + */ +export interface RemoteAbilityInfo { + /** + * @default Indicates the ability information + * @since 8 + * @syscap SystemCapability.BundleManager.DistributedBundleFramework + */ + readonly elementName: ElementName; + + /** + * @default Indicates the label of the ability + * @since 8 + * @syscap SystemCapability.BundleManager.DistributedBundleFramework + */ + readonly label: string; + + /** + * @default Indicates the icon of the ability + * @since 8 + * @syscap SystemCapability.BundleManager.DistributedBundleFramework + */ + readonly icon: string; +} \ No newline at end of file