add CommonType.d.ts

Signed-off-by: 1529367376@qq.com <wanghuajian3@huawei.com>
This commit is contained in:
1529367376@qq.com 2023-11-27 14:54:59 +08:00
parent f63992145f
commit ce37d5b2f4
2 changed files with 278 additions and 0 deletions

196
api/@ohos.data.commonType.d.ts vendored Normal file
View File

@ -0,0 +1,196 @@
/*
* Copyright (c) 2023 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.
*/
/**
* Indicates the common data types.
*
* @namespace commonType
* @syscap SystemCapability.DistributedDataManager.CommonType
* @crossplatform
* @since 11
*/
declare namespace commonType {
/**
* Describes the status of asset.
*
* @enum { number }
* @syscap SystemCapability.DistributedDataManager.CommonType
* @crossplatform
* @since 11
*/
enum AssetStatus {
/**
* Means the status of asset is normal.
*
* @syscap SystemCapability.DistributedDataManager.CommonType
* @crossplatform
* @since 11
*/
ASSET_NORMAL,
/**
* Means the asset needs to be inserted.
*
* @syscap SystemCapability.DistributedDataManager.CommonType
* @crossplatform
* @since 11
*/
ASSET_INSERT,
/**
* Means the asset needs to be updated.
*
* @syscap SystemCapability.DistributedDataManager.CommonType
* @crossplatform
* @since 11
*/
ASSET_UPDATE,
/**
* Means the asset needs to be deleted.
*
* @syscap SystemCapability.DistributedDataManager.CommonType
* @crossplatform
* @since 11
*/
ASSET_DELETE,
/**
* Means the status of asset is abnormal.
*
* @syscap SystemCapability.DistributedDataManager.CommonType
* @crossplatform
* @since 11
*/
ASSET_ABNORMAL,
/**
* Means the status of asset is downloading.
*
* @syscap SystemCapability.DistributedDataManager.CommonType
* @crossplatform
* @since 11
*/
ASSET_DOWNLOADING
}
/**
* Information of the asset.
*
* @interface Asset
* @syscap SystemCapability.DistributedDataManager.CommonType
* @crossplatform
* @since 11
*/
interface Asset {
/**
* The name of asset.
* @type { string }
* @syscap SystemCapability.DistributedDataManager.CommonType
* @crossplatform
* @since 11
*/
name: string;
/**
* The uri of asset.
*
* @type { string }
* @syscap SystemCapability.DistributedDataManager.CommonType
* @crossplatform
* @since 11
*/
uri: string;
/**
* The path of asset.
*
* @type { string }
* @syscap SystemCapability.DistributedDataManager.CommonType
* @crossplatform
* @since 11
*/
path: string;
/**
* The created time of asset.
*
* @type { string }
* @syscap SystemCapability.DistributedDataManager.CommonType
* @crossplatform
* @since 11
*/
createTime: string;
/**
* The modified time of asset. If this field changes, the asset is considered to have changed.
*
* @type { string }
* @syscap SystemCapability.DistributedDataManager.CommonType
* @crossplatform
* @since 11
*/
modifyTime: string;
/**
* The size of asset. If this field changes, the asset is considered to have changed.
*
* @type { string }
* @syscap SystemCapability.DistributedDataManager.CommonType
* @crossplatform
* @since 11
*/
size: string;
/**
* The status of asset.
*
* @type { ?AssetStatus }
* @syscap SystemCapability.DistributedDataManager.CommonType
* @crossplatform
* @since 11
*/
status?: AssetStatus;
}
/**
* Indicates several assets
*
* @syscap SystemCapability.DistributedDataManager.CommonType
* @crossplatform
* @since 11
*/
type Assets = Array<Asset>;
/**
* Indicates possible value types.
*
* @syscap SystemCapability.DistributedDataManager.CommonType
* @crossplatform
* @since 11
*/
type ValueType = null | number | string | boolean | Uint8Array | Asset | Assets;
/**
* Values in buckets are stored in key-value pairs.
*
* @syscap SystemCapability.DistributedDataManager.CommonType
* @crossplatform
* @since 11
*/
type ValuesBucket = { [key: string]: ValueType; };
}
export default commonType;

View File

@ -15,6 +15,7 @@
import { AsyncCallback, Callback } from './@ohos.base'; import { AsyncCallback, Callback } from './@ohos.base';
import type Context from './application/BaseContext'; import type Context from './application/BaseContext';
import commonType from '@ohos.data.commonType';
/** /**
* Provides interfaces to sync distributed object. * Provides interfaces to sync distributed object.
@ -24,6 +25,61 @@ import type Context from './application/BaseContext';
* @since 8 * @since 8
*/ */
declare namespace distributedDataObject { declare namespace distributedDataObject {
/**
* The information about the database bound to the asset.
*
* @interface BindInfo
* @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject
* @since 11
*/
interface BindInfo {
/**
* The name of store where the asset resides.
*
* @type { string }
* @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject
* @since 11
*/
storeName: string;
/**
* The name of table where the asset resides.
*
* @type { string }
* @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject
* @since 11
*/
tableName: string;
/**
* The Primary key of the rdb table where the asset resides.
*
* @type { commonType.ValuesBucket }
* @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject
* @since 11
*/
primaryKey: commonType.ValuesBucket;
/**
* The field(column) name of the rdb table where the asset resides.
*
* @type { string }
* @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject
* @since 11
*/
field: string;
/**
* Name of the asset to be bound. When the column type is Assets, this field refers to the asset name of
* one of the assets.
*
* @type { string }
* @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject
* @since 11
*/
assetName: string;
}
/** /**
* Create distributed object. * Create distributed object.
* *
@ -395,6 +451,32 @@ declare namespace distributedDataObject {
* @since 9 * @since 9
*/ */
revokeSave(): Promise<RevokeSaveSuccessResponse>; revokeSave(): Promise<RevokeSaveSuccessResponse>;
/**
* Bind an Asset of a distributed object to an asset in rdb that points to the same asset file, which means that
* both assets have the same uri.
* @param { string } assetKey - Indicates the key of the asset type in Object.
* @param { BindInfo } bindInfo - Indicates the information of the asset in RelationalStore.
* @param { AsyncCallback<void> } callback - The callback of bindAssetStore.
* @throws { BusinessError } 401 - Parameter error.
* @throws { BusinessError } 801 - Capability not supported.
* @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject
* @since 11
*/
bindAssetStore(assetKey: string, bindInfo: BindInfo, callback: AsyncCallback<void>): void;
/**
* Bind an Asset of a distributed object to an asset in rdb that points to the same asset file, which means that
* both assets have the same uri.
* @param { string } assetKey - Indicates the key of the asset type in Object.
* @param { BindInfo } bindInfo - Indicates the information of the asset in RelationalStore.
* @returns { Promise<void> } The promise returned by the function.
* @throws { BusinessError } 401 - Parameter error.
* @throws { BusinessError } 801 - Capability not supported.
* @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject
* @since 11
*/
bindAssetStore(assetKey: string, bindInfo: BindInfo): Promise<void>;
} }
} }