161847f8eSopenharmony_ci/*
261847f8eSopenharmony_ci * Copyright (c) 2023 Huawei Device Co., Ltd.
361847f8eSopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License");
461847f8eSopenharmony_ci * you may not use this file except in compliance with the License.
561847f8eSopenharmony_ci * You may obtain a copy of the License at
661847f8eSopenharmony_ci *
761847f8eSopenharmony_ci *     http://www.apache.org/licenses/LICENSE-2.0
861847f8eSopenharmony_ci *
961847f8eSopenharmony_ci * Unless required by applicable law or agreed to in writing, software
1061847f8eSopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS,
1161847f8eSopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1261847f8eSopenharmony_ci * See the License for the specific language governing permissions and
1361847f8eSopenharmony_ci * limitations under the License.
1461847f8eSopenharmony_ci */
1561847f8eSopenharmony_ci
1661847f8eSopenharmony_ci/**
1761847f8eSopenharmony_ci * @file
1861847f8eSopenharmony_ci * @kit ArkData
1961847f8eSopenharmony_ci */
2061847f8eSopenharmony_ci
2161847f8eSopenharmony_ciimport { AsyncCallback, Callback } from './@ohos.base';
2261847f8eSopenharmony_ciimport Context from './application/BaseContext';
2361847f8eSopenharmony_ciimport dataSharePredicates from './@ohos.data.dataSharePredicates';
2461847f8eSopenharmony_ciimport sendableRelationalStore from './@ohos.data.sendableRelationalStore';
2561847f8eSopenharmony_ci/**
2661847f8eSopenharmony_ci * Provides methods for rdbStore create and delete.
2761847f8eSopenharmony_ci *
2861847f8eSopenharmony_ci * @namespace relationalStore
2961847f8eSopenharmony_ci * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
3061847f8eSopenharmony_ci * @since 9
3161847f8eSopenharmony_ci */
3261847f8eSopenharmony_ci/**
3361847f8eSopenharmony_ci * Provides methods for rdbStore create and delete.
3461847f8eSopenharmony_ci *
3561847f8eSopenharmony_ci * @namespace relationalStore
3661847f8eSopenharmony_ci * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
3761847f8eSopenharmony_ci * @crossplatform
3861847f8eSopenharmony_ci * @since 10
3961847f8eSopenharmony_ci */
4061847f8eSopenharmony_cideclare namespace relationalStore {
4161847f8eSopenharmony_ci  /**
4261847f8eSopenharmony_ci   * Describes the status of asset
4361847f8eSopenharmony_ci   *
4461847f8eSopenharmony_ci   * @enum { number }
4561847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
4661847f8eSopenharmony_ci   * @crossplatform
4761847f8eSopenharmony_ci   * @since 10
4861847f8eSopenharmony_ci   */
4961847f8eSopenharmony_ci  enum AssetStatus {
5061847f8eSopenharmony_ci    /**
5161847f8eSopenharmony_ci     * ASSET_NORMAL: means the status of asset is normal.
5261847f8eSopenharmony_ci     *
5361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
5461847f8eSopenharmony_ci     * @crossplatform
5561847f8eSopenharmony_ci     * @since 10
5661847f8eSopenharmony_ci     */
5761847f8eSopenharmony_ci    ASSET_NORMAL,
5861847f8eSopenharmony_ci
5961847f8eSopenharmony_ci    /**
6061847f8eSopenharmony_ci     * ASSET_ABNORMAL: means the asset needs to be inserted.
6161847f8eSopenharmony_ci     *
6261847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
6361847f8eSopenharmony_ci     * @crossplatform
6461847f8eSopenharmony_ci     * @since 10
6561847f8eSopenharmony_ci     */
6661847f8eSopenharmony_ci    ASSET_INSERT,
6761847f8eSopenharmony_ci
6861847f8eSopenharmony_ci    /**
6961847f8eSopenharmony_ci     * ASSET_ABNORMAL: means the asset needs to be updated.
7061847f8eSopenharmony_ci     *
7161847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
7261847f8eSopenharmony_ci     * @crossplatform
7361847f8eSopenharmony_ci     * @since 10
7461847f8eSopenharmony_ci     */
7561847f8eSopenharmony_ci    ASSET_UPDATE,
7661847f8eSopenharmony_ci
7761847f8eSopenharmony_ci    /**
7861847f8eSopenharmony_ci     * ASSET_ABNORMAL: means the asset needs to be deleted.
7961847f8eSopenharmony_ci     *
8061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
8161847f8eSopenharmony_ci     * @crossplatform
8261847f8eSopenharmony_ci     * @since 10
8361847f8eSopenharmony_ci     */
8461847f8eSopenharmony_ci    ASSET_DELETE,
8561847f8eSopenharmony_ci
8661847f8eSopenharmony_ci    /**
8761847f8eSopenharmony_ci     * ASSET_ABNORMAL: means the status of asset is abnormal.
8861847f8eSopenharmony_ci     *
8961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
9061847f8eSopenharmony_ci     * @crossplatform
9161847f8eSopenharmony_ci     * @since 10
9261847f8eSopenharmony_ci     */
9361847f8eSopenharmony_ci    ASSET_ABNORMAL,
9461847f8eSopenharmony_ci
9561847f8eSopenharmony_ci    /**
9661847f8eSopenharmony_ci     * ASSET_DOWNLOADING: means the status of asset is downloading.
9761847f8eSopenharmony_ci     *
9861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
9961847f8eSopenharmony_ci     * @crossplatform
10061847f8eSopenharmony_ci     * @since 10
10161847f8eSopenharmony_ci     */
10261847f8eSopenharmony_ci    ASSET_DOWNLOADING
10361847f8eSopenharmony_ci  }
10461847f8eSopenharmony_ci
10561847f8eSopenharmony_ci  /**
10661847f8eSopenharmony_ci   * Records information of the asset.
10761847f8eSopenharmony_ci   *
10861847f8eSopenharmony_ci   * @interface Asset
10961847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
11061847f8eSopenharmony_ci   * @crossplatform
11161847f8eSopenharmony_ci   * @since 10
11261847f8eSopenharmony_ci   */
11361847f8eSopenharmony_ci  interface Asset {
11461847f8eSopenharmony_ci    /**
11561847f8eSopenharmony_ci     * The name of asset.
11661847f8eSopenharmony_ci     *
11761847f8eSopenharmony_ci     * @type { string }
11861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
11961847f8eSopenharmony_ci     * @crossplatform
12061847f8eSopenharmony_ci     * @since 10
12161847f8eSopenharmony_ci     */
12261847f8eSopenharmony_ci    name: string;
12361847f8eSopenharmony_ci
12461847f8eSopenharmony_ci    /**
12561847f8eSopenharmony_ci     * The uri of asset.
12661847f8eSopenharmony_ci     *
12761847f8eSopenharmony_ci     * @type { string }
12861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
12961847f8eSopenharmony_ci     * @crossplatform
13061847f8eSopenharmony_ci     * @since 10
13161847f8eSopenharmony_ci     */
13261847f8eSopenharmony_ci    uri: string;
13361847f8eSopenharmony_ci
13461847f8eSopenharmony_ci    /**
13561847f8eSopenharmony_ci     * The path of asset.
13661847f8eSopenharmony_ci     *
13761847f8eSopenharmony_ci     * @type { string }
13861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
13961847f8eSopenharmony_ci     * @crossplatform
14061847f8eSopenharmony_ci     * @since 10
14161847f8eSopenharmony_ci     */
14261847f8eSopenharmony_ci    path: string;
14361847f8eSopenharmony_ci
14461847f8eSopenharmony_ci    /**
14561847f8eSopenharmony_ci     * The create time of asset.
14661847f8eSopenharmony_ci     *
14761847f8eSopenharmony_ci     * @type { string }
14861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
14961847f8eSopenharmony_ci     * @crossplatform
15061847f8eSopenharmony_ci     * @since 10
15161847f8eSopenharmony_ci     */
15261847f8eSopenharmony_ci    createTime: string;
15361847f8eSopenharmony_ci
15461847f8eSopenharmony_ci    /**
15561847f8eSopenharmony_ci     * The modify time of asset.
15661847f8eSopenharmony_ci     *
15761847f8eSopenharmony_ci     * @type { string }
15861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
15961847f8eSopenharmony_ci     * @crossplatform
16061847f8eSopenharmony_ci     * @since 10
16161847f8eSopenharmony_ci     */
16261847f8eSopenharmony_ci    modifyTime: string;
16361847f8eSopenharmony_ci
16461847f8eSopenharmony_ci    /**
16561847f8eSopenharmony_ci     * The size of asset.
16661847f8eSopenharmony_ci     *
16761847f8eSopenharmony_ci     * @type { string }
16861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
16961847f8eSopenharmony_ci     * @crossplatform
17061847f8eSopenharmony_ci     * @since 10
17161847f8eSopenharmony_ci     */
17261847f8eSopenharmony_ci    size: string;
17361847f8eSopenharmony_ci
17461847f8eSopenharmony_ci    /**
17561847f8eSopenharmony_ci     * The status of asset.
17661847f8eSopenharmony_ci     *
17761847f8eSopenharmony_ci     * @type { ?AssetStatus }
17861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
17961847f8eSopenharmony_ci     * @crossplatform
18061847f8eSopenharmony_ci     * @since 10
18161847f8eSopenharmony_ci     */
18261847f8eSopenharmony_ci    status?: AssetStatus;
18361847f8eSopenharmony_ci  }
18461847f8eSopenharmony_ci
18561847f8eSopenharmony_ci  /**
18661847f8eSopenharmony_ci   * Indicates several assets in one column
18761847f8eSopenharmony_ci   *
18861847f8eSopenharmony_ci   * @typedef { Asset[] } Assets
18961847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
19061847f8eSopenharmony_ci   * @crossplatform
19161847f8eSopenharmony_ci   * @since 10
19261847f8eSopenharmony_ci   */
19361847f8eSopenharmony_ci  type Assets = Asset[];
19461847f8eSopenharmony_ci
19561847f8eSopenharmony_ci  /**
19661847f8eSopenharmony_ci   * Indicates possible value types
19761847f8eSopenharmony_ci   *
19861847f8eSopenharmony_ci   * @typedef { null | number | string | boolean | Uint8Array } ValueType
19961847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
20061847f8eSopenharmony_ci   * @since 9
20161847f8eSopenharmony_ci   */
20261847f8eSopenharmony_ci  /**
20361847f8eSopenharmony_ci   * Indicates possible value types
20461847f8eSopenharmony_ci   *
20561847f8eSopenharmony_ci   * @typedef { null | number | string | boolean | Uint8Array | Asset | Assets } ValueType
20661847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
20761847f8eSopenharmony_ci   * @crossplatform
20861847f8eSopenharmony_ci   * @since 10
20961847f8eSopenharmony_ci   */
21061847f8eSopenharmony_ci  /**
21161847f8eSopenharmony_ci   * Indicates possible value types
21261847f8eSopenharmony_ci   *
21361847f8eSopenharmony_ci   * @typedef { null | number | string | boolean | Uint8Array | Asset | Assets | Float32Array | bigint } ValueType
21461847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
21561847f8eSopenharmony_ci   * @crossplatform
21661847f8eSopenharmony_ci   * @since 12
21761847f8eSopenharmony_ci   */
21861847f8eSopenharmony_ci  type ValueType = null | number | string | boolean | Uint8Array | Asset | Assets | Float32Array | bigint;
21961847f8eSopenharmony_ci
22061847f8eSopenharmony_ci  /**
22161847f8eSopenharmony_ci   * Values in buckets are stored in key-value pairs
22261847f8eSopenharmony_ci   *
22361847f8eSopenharmony_ci   * @typedef { Record<string, ValueType> } ValuesBucket
22461847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
22561847f8eSopenharmony_ci   * @since 9
22661847f8eSopenharmony_ci   */
22761847f8eSopenharmony_ci  /**
22861847f8eSopenharmony_ci   * Values in buckets are stored in key-value pairs, move Uint8Array add to ValueType
22961847f8eSopenharmony_ci   *
23061847f8eSopenharmony_ci   * @typedef { Record<string, ValueType> } ValuesBucket
23161847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
23261847f8eSopenharmony_ci   * @crossplatform
23361847f8eSopenharmony_ci   * @since 10
23461847f8eSopenharmony_ci   */
23561847f8eSopenharmony_ci  /**
23661847f8eSopenharmony_ci   * Values in buckets are stored in key-value pairs, change {[key: string]: ValueType;} to Record<string, ValueType>
23761847f8eSopenharmony_ci   *
23861847f8eSopenharmony_ci   * @typedef { Record<string, ValueType> } ValuesBucket
23961847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
24061847f8eSopenharmony_ci   * @crossplatform
24161847f8eSopenharmony_ci   * @since 11
24261847f8eSopenharmony_ci   */
24361847f8eSopenharmony_ci  type ValuesBucket = Record<string, ValueType>;
24461847f8eSopenharmony_ci
24561847f8eSopenharmony_ci  /**
24661847f8eSopenharmony_ci   * The type of the priority key can be number or string
24761847f8eSopenharmony_ci   *
24861847f8eSopenharmony_ci   * @typedef { number | string } PRIKeyType
24961847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
25061847f8eSopenharmony_ci   * @since 10
25161847f8eSopenharmony_ci   */
25261847f8eSopenharmony_ci  type PRIKeyType = number | string;
25361847f8eSopenharmony_ci
25461847f8eSopenharmony_ci  /**
25561847f8eSopenharmony_ci   * The time is in UTC format.
25661847f8eSopenharmony_ci   *
25761847f8eSopenharmony_ci   * @typedef { Date } UTCTime
25861847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
25961847f8eSopenharmony_ci   * @since 10
26061847f8eSopenharmony_ci   */
26161847f8eSopenharmony_ci  type UTCTime = Date;
26261847f8eSopenharmony_ci
26361847f8eSopenharmony_ci  /**
26461847f8eSopenharmony_ci   * Indicates the primary key and UTC time of the modified rows.
26561847f8eSopenharmony_ci   *
26661847f8eSopenharmony_ci   * @typedef { Map<PRIKeyType, UTCTime> } ModifyTime
26761847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
26861847f8eSopenharmony_ci   * @since 10
26961847f8eSopenharmony_ci   */
27061847f8eSopenharmony_ci  type ModifyTime = Map<PRIKeyType, UTCTime>;
27161847f8eSopenharmony_ci
27261847f8eSopenharmony_ci  /**
27361847f8eSopenharmony_ci   * Manages relational database configurations.
27461847f8eSopenharmony_ci   *
27561847f8eSopenharmony_ci   * @interface StoreConfig
27661847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
27761847f8eSopenharmony_ci   * @since 9
27861847f8eSopenharmony_ci   */
27961847f8eSopenharmony_ci  /**
28061847f8eSopenharmony_ci   * Manages relational database configurations.
28161847f8eSopenharmony_ci   *
28261847f8eSopenharmony_ci   * @interface StoreConfig
28361847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
28461847f8eSopenharmony_ci   * @crossplatform
28561847f8eSopenharmony_ci   * @since 10
28661847f8eSopenharmony_ci   */
28761847f8eSopenharmony_ci  interface StoreConfig {
28861847f8eSopenharmony_ci    /**
28961847f8eSopenharmony_ci     * The database name.
29061847f8eSopenharmony_ci     *
29161847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
29261847f8eSopenharmony_ci     * @since 9
29361847f8eSopenharmony_ci     */
29461847f8eSopenharmony_ci    /**
29561847f8eSopenharmony_ci     * The database name.
29661847f8eSopenharmony_ci     *
29761847f8eSopenharmony_ci     * @type { string }
29861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
29961847f8eSopenharmony_ci     * @crossplatform
30061847f8eSopenharmony_ci     * @since 10
30161847f8eSopenharmony_ci     */
30261847f8eSopenharmony_ci    name: string;
30361847f8eSopenharmony_ci
30461847f8eSopenharmony_ci    /**
30561847f8eSopenharmony_ci     * Specifies the security level of the database.
30661847f8eSopenharmony_ci     *
30761847f8eSopenharmony_ci     * @type { SecurityLevel }
30861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
30961847f8eSopenharmony_ci     * @crossplatform
31061847f8eSopenharmony_ci     * @since 9
31161847f8eSopenharmony_ci     */
31261847f8eSopenharmony_ci    securityLevel: SecurityLevel;
31361847f8eSopenharmony_ci
31461847f8eSopenharmony_ci    /**
31561847f8eSopenharmony_ci     * Specifies whether the database is encrypted.
31661847f8eSopenharmony_ci     *
31761847f8eSopenharmony_ci     * @type { ?boolean }
31861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
31961847f8eSopenharmony_ci     * @since 9
32061847f8eSopenharmony_ci     */
32161847f8eSopenharmony_ci    encrypt?: boolean;
32261847f8eSopenharmony_ci
32361847f8eSopenharmony_ci    /**
32461847f8eSopenharmony_ci     * The data group id of application.
32561847f8eSopenharmony_ci     *
32661847f8eSopenharmony_ci     * @type { ?string }
32761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
32861847f8eSopenharmony_ci     * @StageModelOnly
32961847f8eSopenharmony_ci     * @since 10
33061847f8eSopenharmony_ci     */
33161847f8eSopenharmony_ci    dataGroupId?: string;
33261847f8eSopenharmony_ci
33361847f8eSopenharmony_ci    /**
33461847f8eSopenharmony_ci     * Specifies the directory relative to the database directory obtained from context
33561847f8eSopenharmony_ci     *
33661847f8eSopenharmony_ci     * @type { ?string }
33761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
33861847f8eSopenharmony_ci     * @crossplatform
33961847f8eSopenharmony_ci     * @since 11
34061847f8eSopenharmony_ci     */
34161847f8eSopenharmony_ci    customDir?: string;
34261847f8eSopenharmony_ci
34361847f8eSopenharmony_ci    /**
34461847f8eSopenharmony_ci     * Specifies whether to clean up dirty data that is synchronized to
34561847f8eSopenharmony_ci     * the local but deleted in the cloud.
34661847f8eSopenharmony_ci     *
34761847f8eSopenharmony_ci     * @type { ?boolean }
34861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
34961847f8eSopenharmony_ci     * @since 11
35061847f8eSopenharmony_ci     */
35161847f8eSopenharmony_ci    autoCleanDirtyData?: boolean;
35261847f8eSopenharmony_ci
35361847f8eSopenharmony_ci    /**
35461847f8eSopenharmony_ci     * Specifies whether data can be searched.
35561847f8eSopenharmony_ci     *
35661847f8eSopenharmony_ci     * @type { ?boolean }
35761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
35861847f8eSopenharmony_ci     * @systemapi
35961847f8eSopenharmony_ci     * @since 11
36061847f8eSopenharmony_ci     */
36161847f8eSopenharmony_ci    isSearchable?: boolean;
36261847f8eSopenharmony_ci
36361847f8eSopenharmony_ci    /**
36461847f8eSopenharmony_ci     * Specifies whether database allows rebuild.
36561847f8eSopenharmony_ci     *
36661847f8eSopenharmony_ci     * @type { ?boolean }
36761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
36861847f8eSopenharmony_ci     * @since 12
36961847f8eSopenharmony_ci     */
37061847f8eSopenharmony_ci    allowRebuild?: boolean;
37161847f8eSopenharmony_ci
37261847f8eSopenharmony_ci    /**
37361847f8eSopenharmony_ci     * Specifies whether the vector type is supported.
37461847f8eSopenharmony_ci     *
37561847f8eSopenharmony_ci     * @type { ?boolean }
37661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
37761847f8eSopenharmony_ci     * @systemapi
37861847f8eSopenharmony_ci     * @since 12
37961847f8eSopenharmony_ci     */
38061847f8eSopenharmony_ci    vector?: boolean;
38161847f8eSopenharmony_ci
38261847f8eSopenharmony_ci    /**
38361847f8eSopenharmony_ci     * Specifies whether the database opened is read-only.
38461847f8eSopenharmony_ci     * If isReadOnly is true, other configuration items will become invalid.
38561847f8eSopenharmony_ci     *
38661847f8eSopenharmony_ci     * @type { ?boolean }
38761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
38861847f8eSopenharmony_ci     * @since 12
38961847f8eSopenharmony_ci     */
39061847f8eSopenharmony_ci    isReadOnly?: boolean;
39161847f8eSopenharmony_ci
39261847f8eSopenharmony_ci    /**
39361847f8eSopenharmony_ci     * Indicates the names of the shared library containing fts etc.
39461847f8eSopenharmony_ci     *
39561847f8eSopenharmony_ci     * @type { ?Array<string> }
39661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
39761847f8eSopenharmony_ci     * @since 12
39861847f8eSopenharmony_ci     */
39961847f8eSopenharmony_ci    pluginLibs?: Array<string>;
40061847f8eSopenharmony_ci
40161847f8eSopenharmony_ci    /**
40261847f8eSopenharmony_ci     * Enumerates the high availability modes of the RDB store.
40361847f8eSopenharmony_ci     *
40461847f8eSopenharmony_ci     * @type { ?HAMode }
40561847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
40661847f8eSopenharmony_ci     * @systemapi
40761847f8eSopenharmony_ci     * @since 12
40861847f8eSopenharmony_ci     */
40961847f8eSopenharmony_ci    haMode?: HAMode;
41061847f8eSopenharmony_ci
41161847f8eSopenharmony_ci    /**
41261847f8eSopenharmony_ci     * Specifies the cryptographic parameters used when opening an encrypted database.
41361847f8eSopenharmony_ci     *
41461847f8eSopenharmony_ci     * @type { ?CryptoParam }
41561847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
41661847f8eSopenharmony_ci     * @since 14
41761847f8eSopenharmony_ci     */
41861847f8eSopenharmony_ci    cryptoParam?: CryptoParam;
41961847f8eSopenharmony_ci  }
42061847f8eSopenharmony_ci
42161847f8eSopenharmony_ci  /**
42261847f8eSopenharmony_ci   * Enumerates the high availability modes of the RDB store.
42361847f8eSopenharmony_ci   *
42461847f8eSopenharmony_ci   * @enum { number }
42561847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
42661847f8eSopenharmony_ci   * @systemapi
42761847f8eSopenharmony_ci   * @since 12
42861847f8eSopenharmony_ci   */
42961847f8eSopenharmony_ci  enum HAMode {
43061847f8eSopenharmony_ci    /**
43161847f8eSopenharmony_ci     * SINGLE: Data is written to a single RDB store.
43261847f8eSopenharmony_ci     *
43361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
43461847f8eSopenharmony_ci     * @systemapi
43561847f8eSopenharmony_ci     * @since 12
43661847f8eSopenharmony_ci     */
43761847f8eSopenharmony_ci    SINGLE = 0,
43861847f8eSopenharmony_ci
43961847f8eSopenharmony_ci    /**
44061847f8eSopenharmony_ci     * MAIN_REPLICA: Data is written to the main and replica RDB stores.
44161847f8eSopenharmony_ci     *
44261847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
44361847f8eSopenharmony_ci     * @systemapi
44461847f8eSopenharmony_ci     * @since 12
44561847f8eSopenharmony_ci     */
44661847f8eSopenharmony_ci    MAIN_REPLICA
44761847f8eSopenharmony_ci  }
44861847f8eSopenharmony_ci
44961847f8eSopenharmony_ci  /**
45061847f8eSopenharmony_ci   * Specifies the cryptographic parameters used when opening an encrypted database.
45161847f8eSopenharmony_ci   *
45261847f8eSopenharmony_ci   * @typedef CryptoParam
45361847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
45461847f8eSopenharmony_ci   * @since 14
45561847f8eSopenharmony_ci   */
45661847f8eSopenharmony_ci  interface CryptoParam {
45761847f8eSopenharmony_ci    /**
45861847f8eSopenharmony_ci     * Specifies the key used when opening an encrypted database.
45961847f8eSopenharmony_ci     * When finished passing the key to the database, its content should be set to all-zero.
46061847f8eSopenharmony_ci     *
46161847f8eSopenharmony_ci     * @type { Uint8Array }
46261847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
46361847f8eSopenharmony_ci     * @since 14
46461847f8eSopenharmony_ci     */
46561847f8eSopenharmony_ci    encryptionKey: Uint8Array;
46661847f8eSopenharmony_ci
46761847f8eSopenharmony_ci    /**
46861847f8eSopenharmony_ci     * Specifies the number of KDF iterations used when opening an encrypted database.
46961847f8eSopenharmony_ci     * Default number is 10000.
47061847f8eSopenharmony_ci     * When the number is set to 0, use default iteration number and encryption algorithm.
47161847f8eSopenharmony_ci     *
47261847f8eSopenharmony_ci     * @type { ?number }
47361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
47461847f8eSopenharmony_ci     * @since 14
47561847f8eSopenharmony_ci     */
47661847f8eSopenharmony_ci    iterationCount?: number;
47761847f8eSopenharmony_ci
47861847f8eSopenharmony_ci    /**
47961847f8eSopenharmony_ci     * Specifies the encryption algorithm when opening an encrypted database.
48061847f8eSopenharmony_ci     * Default encryption algorithm is AES_256_GCM.
48161847f8eSopenharmony_ci     *
48261847f8eSopenharmony_ci     * @type { ?EncryptionAlgo }
48361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
48461847f8eSopenharmony_ci     * @since 14
48561847f8eSopenharmony_ci     */
48661847f8eSopenharmony_ci    encryptionAlgo?: EncryptionAlgo;
48761847f8eSopenharmony_ci
48861847f8eSopenharmony_ci    /**
48961847f8eSopenharmony_ci     * Specifies the HMAC algorithm when opening an encrypted database.
49061847f8eSopenharmony_ci     * Default HMAC algorithm is SHA256.
49161847f8eSopenharmony_ci     *
49261847f8eSopenharmony_ci     * @type { ?HmacAlgo }
49361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
49461847f8eSopenharmony_ci     * @since 14
49561847f8eSopenharmony_ci     */
49661847f8eSopenharmony_ci    hmacAlgo?: HmacAlgo;
49761847f8eSopenharmony_ci
49861847f8eSopenharmony_ci    /**
49961847f8eSopenharmony_ci     * Specifies the KDF algorithm when opening an encrypted database.
50061847f8eSopenharmony_ci     * Default KDF SHA algorithm is the same as HMAC algorithm.
50161847f8eSopenharmony_ci     *
50261847f8eSopenharmony_ci     * @type { ?KdfAlgo }
50361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
50461847f8eSopenharmony_ci     * @since 14
50561847f8eSopenharmony_ci     */
50661847f8eSopenharmony_ci    kdfAlgo?: KdfAlgo;
50761847f8eSopenharmony_ci
50861847f8eSopenharmony_ci    /**
50961847f8eSopenharmony_ci     * Specifies the page size used when opening an encrypted database.
51061847f8eSopenharmony_ci     * Default crypto page size is 1024.
51161847f8eSopenharmony_ci     *
51261847f8eSopenharmony_ci     * @type { ?number }
51361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
51461847f8eSopenharmony_ci     * @since 14
51561847f8eSopenharmony_ci     */
51661847f8eSopenharmony_ci    cryptoPageSize?: number;
51761847f8eSopenharmony_ci  }
51861847f8eSopenharmony_ci
51961847f8eSopenharmony_ci  /**
52061847f8eSopenharmony_ci   * Enumerates the supported encryption algorithm when opening a database.
52161847f8eSopenharmony_ci   *
52261847f8eSopenharmony_ci   * @enum { number }
52361847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
52461847f8eSopenharmony_ci   * @since 14
52561847f8eSopenharmony_ci   */
52661847f8eSopenharmony_ci  enum EncryptionAlgo {
52761847f8eSopenharmony_ci    /**
52861847f8eSopenharmony_ci     * AES_256_GCM: Database is encrypted using AES_256_GCM.
52961847f8eSopenharmony_ci     *
53061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
53161847f8eSopenharmony_ci     * @since 14
53261847f8eSopenharmony_ci     */
53361847f8eSopenharmony_ci    AES_256_GCM = 0,
53461847f8eSopenharmony_ci
53561847f8eSopenharmony_ci    /**
53661847f8eSopenharmony_ci     * AES_256_CBC: Database is encrypted using AES_256_CBC.
53761847f8eSopenharmony_ci     *
53861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
53961847f8eSopenharmony_ci     * @since 14
54061847f8eSopenharmony_ci     */
54161847f8eSopenharmony_ci    AES_256_CBC
54261847f8eSopenharmony_ci  }
54361847f8eSopenharmony_ci
54461847f8eSopenharmony_ci  /**
54561847f8eSopenharmony_ci   * Enumerates the supported HMAC algorithm when opening a database.
54661847f8eSopenharmony_ci   *
54761847f8eSopenharmony_ci   * @enum { number }
54861847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
54961847f8eSopenharmony_ci   * @since 14
55061847f8eSopenharmony_ci   */
55161847f8eSopenharmony_ci  enum HmacAlgo {
55261847f8eSopenharmony_ci    /**
55361847f8eSopenharmony_ci     * SHA1: HMAC_SHA1 algorithm.
55461847f8eSopenharmony_ci     *
55561847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
55661847f8eSopenharmony_ci     * @since 14
55761847f8eSopenharmony_ci     */
55861847f8eSopenharmony_ci    SHA1 = 0,
55961847f8eSopenharmony_ci
56061847f8eSopenharmony_ci    /**
56161847f8eSopenharmony_ci     * SHA256: HMAC_SHA256 algorithm.
56261847f8eSopenharmony_ci     *
56361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
56461847f8eSopenharmony_ci     * @since 14
56561847f8eSopenharmony_ci     */
56661847f8eSopenharmony_ci    SHA256,
56761847f8eSopenharmony_ci
56861847f8eSopenharmony_ci    /**
56961847f8eSopenharmony_ci     * SHA512: HMAC_SHA512 algorithm.
57061847f8eSopenharmony_ci     *
57161847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
57261847f8eSopenharmony_ci     * @since 14
57361847f8eSopenharmony_ci     */
57461847f8eSopenharmony_ci    SHA512
57561847f8eSopenharmony_ci  }
57661847f8eSopenharmony_ci
57761847f8eSopenharmony_ci  /**
57861847f8eSopenharmony_ci   * Enumerates the supported KDF algorithm when opening a database.
57961847f8eSopenharmony_ci   *
58061847f8eSopenharmony_ci   * @enum { number }
58161847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
58261847f8eSopenharmony_ci   * @since 14
58361847f8eSopenharmony_ci   */
58461847f8eSopenharmony_ci  enum KdfAlgo {
58561847f8eSopenharmony_ci    /**
58661847f8eSopenharmony_ci     * KDF_SHA1: PBKDF2_HMAC_SHA1 algorithm.
58761847f8eSopenharmony_ci     *
58861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
58961847f8eSopenharmony_ci     * @since 14
59061847f8eSopenharmony_ci     */
59161847f8eSopenharmony_ci    KDF_SHA1 = 0,
59261847f8eSopenharmony_ci
59361847f8eSopenharmony_ci    /**
59461847f8eSopenharmony_ci     * KDF_SHA256: PBKDF2_HMAC_SHA256 algorithm.
59561847f8eSopenharmony_ci     *
59661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
59761847f8eSopenharmony_ci     * @since 14
59861847f8eSopenharmony_ci     */
59961847f8eSopenharmony_ci    KDF_SHA256,
60061847f8eSopenharmony_ci
60161847f8eSopenharmony_ci    /**
60261847f8eSopenharmony_ci     * KDF_SHA512: PBKDF2_HMAC_SHA512 algorithm.
60361847f8eSopenharmony_ci     *
60461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
60561847f8eSopenharmony_ci     * @since 14
60661847f8eSopenharmony_ci     */
60761847f8eSopenharmony_ci    KDF_SHA512
60861847f8eSopenharmony_ci  }
60961847f8eSopenharmony_ci
61061847f8eSopenharmony_ci  /**
61161847f8eSopenharmony_ci   * The cloud sync progress
61261847f8eSopenharmony_ci   *
61361847f8eSopenharmony_ci   * @enum { number }
61461847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
61561847f8eSopenharmony_ci   * @since 10
61661847f8eSopenharmony_ci   */
61761847f8eSopenharmony_ci  enum Progress {
61861847f8eSopenharmony_ci    /**
61961847f8eSopenharmony_ci     * SYNC_BEGIN: means the sync process begin.
62061847f8eSopenharmony_ci     *
62161847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
62261847f8eSopenharmony_ci     * @since 10
62361847f8eSopenharmony_ci     */
62461847f8eSopenharmony_ci    SYNC_BEGIN,
62561847f8eSopenharmony_ci
62661847f8eSopenharmony_ci    /**
62761847f8eSopenharmony_ci     * SYNC_BEGIN: means the sync process is in progress
62861847f8eSopenharmony_ci     *
62961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
63061847f8eSopenharmony_ci     * @since 10
63161847f8eSopenharmony_ci     */
63261847f8eSopenharmony_ci    SYNC_IN_PROGRESS,
63361847f8eSopenharmony_ci
63461847f8eSopenharmony_ci    /**
63561847f8eSopenharmony_ci     * SYNC_BEGIN: means the sync process is finished
63661847f8eSopenharmony_ci     *
63761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
63861847f8eSopenharmony_ci     * @since 10
63961847f8eSopenharmony_ci     */
64061847f8eSopenharmony_ci    SYNC_FINISH
64161847f8eSopenharmony_ci  }
64261847f8eSopenharmony_ci
64361847f8eSopenharmony_ci  /**
64461847f8eSopenharmony_ci   * Describes the statistic of the cloud sync process.
64561847f8eSopenharmony_ci   *
64661847f8eSopenharmony_ci   * @interface Statistic
64761847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
64861847f8eSopenharmony_ci   * @since 10
64961847f8eSopenharmony_ci   */
65061847f8eSopenharmony_ci  interface Statistic {
65161847f8eSopenharmony_ci    /**
65261847f8eSopenharmony_ci     * Describes the total number of data to sync.
65361847f8eSopenharmony_ci     *
65461847f8eSopenharmony_ci     * @type { number }
65561847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
65661847f8eSopenharmony_ci     * @since 10
65761847f8eSopenharmony_ci     */
65861847f8eSopenharmony_ci    total: number;
65961847f8eSopenharmony_ci
66061847f8eSopenharmony_ci    /**
66161847f8eSopenharmony_ci     * Describes the number of successfully synced data.
66261847f8eSopenharmony_ci     *
66361847f8eSopenharmony_ci     * @type { number }
66461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
66561847f8eSopenharmony_ci     * @since 10
66661847f8eSopenharmony_ci     */
66761847f8eSopenharmony_ci    successful: number;
66861847f8eSopenharmony_ci
66961847f8eSopenharmony_ci    /**
67061847f8eSopenharmony_ci     * Describes the number of data failed to sync.
67161847f8eSopenharmony_ci     *
67261847f8eSopenharmony_ci     * @type { number }
67361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
67461847f8eSopenharmony_ci     * @since 10
67561847f8eSopenharmony_ci     */
67661847f8eSopenharmony_ci    failed: number;
67761847f8eSopenharmony_ci
67861847f8eSopenharmony_ci    /**
67961847f8eSopenharmony_ci     * Describes the number of data remained to sync.
68061847f8eSopenharmony_ci     *
68161847f8eSopenharmony_ci     * @type { number }
68261847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
68361847f8eSopenharmony_ci     * @since 10
68461847f8eSopenharmony_ci     */
68561847f8eSopenharmony_ci    remained: number;
68661847f8eSopenharmony_ci  }
68761847f8eSopenharmony_ci
68861847f8eSopenharmony_ci  /**
68961847f8eSopenharmony_ci   * Describes the {@code Statistic} details of the table.
69061847f8eSopenharmony_ci   *
69161847f8eSopenharmony_ci   * @interface TableDetails
69261847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
69361847f8eSopenharmony_ci   * @since 10
69461847f8eSopenharmony_ci   */
69561847f8eSopenharmony_ci  interface TableDetails {
69661847f8eSopenharmony_ci    /**
69761847f8eSopenharmony_ci     * Describes the {@code Statistic} details of the upload process.
69861847f8eSopenharmony_ci     *
69961847f8eSopenharmony_ci     * @type { Statistic }
70061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
70161847f8eSopenharmony_ci     * @since 10
70261847f8eSopenharmony_ci     */
70361847f8eSopenharmony_ci    upload: Statistic;
70461847f8eSopenharmony_ci
70561847f8eSopenharmony_ci    /**
70661847f8eSopenharmony_ci     * Describes the {@code Statistic} details of the download process.
70761847f8eSopenharmony_ci     *
70861847f8eSopenharmony_ci     * @type { Statistic }
70961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
71061847f8eSopenharmony_ci     * @since 10
71161847f8eSopenharmony_ci     */
71261847f8eSopenharmony_ci    download: Statistic;
71361847f8eSopenharmony_ci  }
71461847f8eSopenharmony_ci
71561847f8eSopenharmony_ci  /**
71661847f8eSopenharmony_ci   * Describes the status of {@code Progress}.
71761847f8eSopenharmony_ci   *
71861847f8eSopenharmony_ci   * @enum { number }
71961847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
72061847f8eSopenharmony_ci   * @since 10
72161847f8eSopenharmony_ci   */
72261847f8eSopenharmony_ci  enum ProgressCode {
72361847f8eSopenharmony_ci    /**
72461847f8eSopenharmony_ci     * SUCCESS: means the status of progress is success.
72561847f8eSopenharmony_ci     *
72661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
72761847f8eSopenharmony_ci     * @since 10
72861847f8eSopenharmony_ci     */
72961847f8eSopenharmony_ci    SUCCESS,
73061847f8eSopenharmony_ci
73161847f8eSopenharmony_ci    /**
73261847f8eSopenharmony_ci     * UNKNOWN_ERROR: means the progress meets unknown error.
73361847f8eSopenharmony_ci     *
73461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
73561847f8eSopenharmony_ci     * @since 10
73661847f8eSopenharmony_ci     */
73761847f8eSopenharmony_ci    UNKNOWN_ERROR,
73861847f8eSopenharmony_ci
73961847f8eSopenharmony_ci    /**
74061847f8eSopenharmony_ci     * NETWORK_ERROR: means the progress meets network error.
74161847f8eSopenharmony_ci     *
74261847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
74361847f8eSopenharmony_ci     * @since 10
74461847f8eSopenharmony_ci     */
74561847f8eSopenharmony_ci    NETWORK_ERROR,
74661847f8eSopenharmony_ci
74761847f8eSopenharmony_ci    /**
74861847f8eSopenharmony_ci     * CLOUD_DISABLED: means cloud is disabled.
74961847f8eSopenharmony_ci     *
75061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
75161847f8eSopenharmony_ci     * @since 10
75261847f8eSopenharmony_ci     */
75361847f8eSopenharmony_ci    CLOUD_DISABLED,
75461847f8eSopenharmony_ci
75561847f8eSopenharmony_ci    /**
75661847f8eSopenharmony_ci     * LOCKED_BY_OTHERS: means the progress is locked by others.
75761847f8eSopenharmony_ci     *
75861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
75961847f8eSopenharmony_ci     * @since 10
76061847f8eSopenharmony_ci     */
76161847f8eSopenharmony_ci    LOCKED_BY_OTHERS,
76261847f8eSopenharmony_ci
76361847f8eSopenharmony_ci    /**
76461847f8eSopenharmony_ci     * RECORD_LIMIT_EXCEEDED: means the record exceeds the limit.
76561847f8eSopenharmony_ci     *
76661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
76761847f8eSopenharmony_ci     * @since 10
76861847f8eSopenharmony_ci     */
76961847f8eSopenharmony_ci    RECORD_LIMIT_EXCEEDED,
77061847f8eSopenharmony_ci
77161847f8eSopenharmony_ci    /**
77261847f8eSopenharmony_ci     * NO_SPACE_FOR_ASSET: means the cloud has no space for the asset.
77361847f8eSopenharmony_ci     *
77461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
77561847f8eSopenharmony_ci     * @since 10
77661847f8eSopenharmony_ci     */
77761847f8eSopenharmony_ci    NO_SPACE_FOR_ASSET,
77861847f8eSopenharmony_ci
77961847f8eSopenharmony_ci    /**
78061847f8eSopenharmony_ci     * BLOCKED_BY_NETWORK_STRATEGY: means the sync blocked by network strategy.
78161847f8eSopenharmony_ci     *
78261847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
78361847f8eSopenharmony_ci     * @since 12
78461847f8eSopenharmony_ci     */
78561847f8eSopenharmony_ci    BLOCKED_BY_NETWORK_STRATEGY
78661847f8eSopenharmony_ci  }
78761847f8eSopenharmony_ci
78861847f8eSopenharmony_ci  /**
78961847f8eSopenharmony_ci   * Describes detail of the cloud sync {@code Progress}.
79061847f8eSopenharmony_ci   *
79161847f8eSopenharmony_ci   * @interface ProgressDetails
79261847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
79361847f8eSopenharmony_ci   * @since 10
79461847f8eSopenharmony_ci   */
79561847f8eSopenharmony_ci  interface ProgressDetails {
79661847f8eSopenharmony_ci    /**
79761847f8eSopenharmony_ci     * Describes the status of data sync progress.
79861847f8eSopenharmony_ci     *
79961847f8eSopenharmony_ci     * @type { Progress }
80061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
80161847f8eSopenharmony_ci     * @since 10
80261847f8eSopenharmony_ci     */
80361847f8eSopenharmony_ci    schedule: Progress;
80461847f8eSopenharmony_ci
80561847f8eSopenharmony_ci    /**
80661847f8eSopenharmony_ci     * Describes the code of data sync progress.
80761847f8eSopenharmony_ci     *
80861847f8eSopenharmony_ci     * @type { ProgressCode }
80961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
81061847f8eSopenharmony_ci     * @since 10
81161847f8eSopenharmony_ci     */
81261847f8eSopenharmony_ci    code: ProgressCode;
81361847f8eSopenharmony_ci
81461847f8eSopenharmony_ci    /**
81561847f8eSopenharmony_ci     * The statistic details of the tables.
81661847f8eSopenharmony_ci     *
81761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
81861847f8eSopenharmony_ci     * @since 10
81961847f8eSopenharmony_ci     */
82061847f8eSopenharmony_ci    /**
82161847f8eSopenharmony_ci     * The statistic details of the tables.
82261847f8eSopenharmony_ci     *
82361847f8eSopenharmony_ci     * @type { Record<string, TableDetails> }
82461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
82561847f8eSopenharmony_ci     * @since 11
82661847f8eSopenharmony_ci     */
82761847f8eSopenharmony_ci    details: Record<string, TableDetails>;
82861847f8eSopenharmony_ci  }
82961847f8eSopenharmony_ci
83061847f8eSopenharmony_ci  /**
83161847f8eSopenharmony_ci   * Defines information about the SQL statements executed.
83261847f8eSopenharmony_ci   *
83361847f8eSopenharmony_ci   * @interface SqlExecutionInfo
83461847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
83561847f8eSopenharmony_ci   * @since 12
83661847f8eSopenharmony_ci   */
83761847f8eSopenharmony_ci  interface SqlExecutionInfo {
83861847f8eSopenharmony_ci    /**
83961847f8eSopenharmony_ci     * Array of SQL statements executed. When the args of batchInsert is too large, there may be more than one SQL.
84061847f8eSopenharmony_ci     *
84161847f8eSopenharmony_ci     * @type { Array<string> }
84261847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
84361847f8eSopenharmony_ci     * @since 12
84461847f8eSopenharmony_ci     */
84561847f8eSopenharmony_ci    sql: Array<string>;
84661847f8eSopenharmony_ci
84761847f8eSopenharmony_ci    /**
84861847f8eSopenharmony_ci     * Total time used for executing the SQL statements, in μs.
84961847f8eSopenharmony_ci     *
85061847f8eSopenharmony_ci     * @type { number }
85161847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
85261847f8eSopenharmony_ci     * @since 12
85361847f8eSopenharmony_ci     */
85461847f8eSopenharmony_ci    totalTime: number;
85561847f8eSopenharmony_ci
85661847f8eSopenharmony_ci    /**
85761847f8eSopenharmony_ci     * Maximum time allowed to obtain the SQL file handle, in μs.
85861847f8eSopenharmony_ci     *
85961847f8eSopenharmony_ci     * @type { number }
86061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
86161847f8eSopenharmony_ci     * @since 12
86261847f8eSopenharmony_ci     */
86361847f8eSopenharmony_ci    waitTime: number;
86461847f8eSopenharmony_ci
86561847f8eSopenharmony_ci    /**
86661847f8eSopenharmony_ci     * Time used to prepare SQL and args, in μs.
86761847f8eSopenharmony_ci     *
86861847f8eSopenharmony_ci     * @type { number }
86961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
87061847f8eSopenharmony_ci     * @since 12
87161847f8eSopenharmony_ci     */
87261847f8eSopenharmony_ci    prepareTime: number;
87361847f8eSopenharmony_ci
87461847f8eSopenharmony_ci    /**
87561847f8eSopenharmony_ci     * Time used to execute the SQL statements, in μs.
87661847f8eSopenharmony_ci     *
87761847f8eSopenharmony_ci     * @type { number }
87861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
87961847f8eSopenharmony_ci     * @since 12
88061847f8eSopenharmony_ci     */
88161847f8eSopenharmony_ci    executeTime: number;
88261847f8eSopenharmony_ci  }
88361847f8eSopenharmony_ci
88461847f8eSopenharmony_ci  /**
88561847f8eSopenharmony_ci   * Describes the {@code RdbStore} type.
88661847f8eSopenharmony_ci   *
88761847f8eSopenharmony_ci   * @enum { number }
88861847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
88961847f8eSopenharmony_ci   * @crossplatform
89061847f8eSopenharmony_ci   * @since 9
89161847f8eSopenharmony_ci   */
89261847f8eSopenharmony_ci  enum SecurityLevel {
89361847f8eSopenharmony_ci    /**
89461847f8eSopenharmony_ci     * S1: means the db is low level security
89561847f8eSopenharmony_ci     * There are some low impact, when the data is leaked.
89661847f8eSopenharmony_ci     *
89761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
89861847f8eSopenharmony_ci     * @crossplatform
89961847f8eSopenharmony_ci     * @since 9
90061847f8eSopenharmony_ci     */
90161847f8eSopenharmony_ci    S1 = 1,
90261847f8eSopenharmony_ci
90361847f8eSopenharmony_ci    /**
90461847f8eSopenharmony_ci     * S2: means the db is middle level security
90561847f8eSopenharmony_ci     * There are some major impact, when the data is leaked.
90661847f8eSopenharmony_ci     *
90761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
90861847f8eSopenharmony_ci     * @crossplatform
90961847f8eSopenharmony_ci     * @since 9
91061847f8eSopenharmony_ci     */
91161847f8eSopenharmony_ci    S2 = 2,
91261847f8eSopenharmony_ci
91361847f8eSopenharmony_ci    /**
91461847f8eSopenharmony_ci     * S3: means the db is high level security
91561847f8eSopenharmony_ci     * There are some severity impact, when the data is leaked.
91661847f8eSopenharmony_ci     *
91761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
91861847f8eSopenharmony_ci     * @crossplatform
91961847f8eSopenharmony_ci     * @since 9
92061847f8eSopenharmony_ci     */
92161847f8eSopenharmony_ci    S3 = 3,
92261847f8eSopenharmony_ci
92361847f8eSopenharmony_ci    /**
92461847f8eSopenharmony_ci     * S4: means the db is critical level security
92561847f8eSopenharmony_ci     * There are some critical impact, when the data is leaked.
92661847f8eSopenharmony_ci     *
92761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
92861847f8eSopenharmony_ci     * @crossplatform
92961847f8eSopenharmony_ci     * @since 9
93061847f8eSopenharmony_ci     */
93161847f8eSopenharmony_ci    S4 = 4
93261847f8eSopenharmony_ci  }
93361847f8eSopenharmony_ci
93461847f8eSopenharmony_ci  /**
93561847f8eSopenharmony_ci   * Indicates the database synchronization mode.
93661847f8eSopenharmony_ci   *
93761847f8eSopenharmony_ci   * @enum { number }
93861847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
93961847f8eSopenharmony_ci   * @since 9
94061847f8eSopenharmony_ci   */
94161847f8eSopenharmony_ci  enum SyncMode {
94261847f8eSopenharmony_ci    /**
94361847f8eSopenharmony_ci     * Indicates the data is pushed to remote device from local device.
94461847f8eSopenharmony_ci     *
94561847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
94661847f8eSopenharmony_ci     * @since 9
94761847f8eSopenharmony_ci     */
94861847f8eSopenharmony_ci    SYNC_MODE_PUSH = 0,
94961847f8eSopenharmony_ci
95061847f8eSopenharmony_ci    /**
95161847f8eSopenharmony_ci     * Indicates the data is pulled from remote device to local device.
95261847f8eSopenharmony_ci     *
95361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
95461847f8eSopenharmony_ci     * @since 9
95561847f8eSopenharmony_ci     */
95661847f8eSopenharmony_ci    SYNC_MODE_PULL = 1,
95761847f8eSopenharmony_ci
95861847f8eSopenharmony_ci    /**
95961847f8eSopenharmony_ci     * Indicates the data is pulled from remote device to local device.
96061847f8eSopenharmony_ci     *
96161847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
96261847f8eSopenharmony_ci     * @since 10
96361847f8eSopenharmony_ci     */
96461847f8eSopenharmony_ci    SYNC_MODE_TIME_FIRST,
96561847f8eSopenharmony_ci
96661847f8eSopenharmony_ci    /**
96761847f8eSopenharmony_ci     * Indicates force push the native data to the cloud.
96861847f8eSopenharmony_ci     *
96961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
97061847f8eSopenharmony_ci     * @since 10
97161847f8eSopenharmony_ci     */
97261847f8eSopenharmony_ci    SYNC_MODE_NATIVE_FIRST,
97361847f8eSopenharmony_ci
97461847f8eSopenharmony_ci    /**
97561847f8eSopenharmony_ci     * Indicates the data is pulled from cloud to local device.
97661847f8eSopenharmony_ci     *
97761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
97861847f8eSopenharmony_ci     * @since 10
97961847f8eSopenharmony_ci     */
98061847f8eSopenharmony_ci    SYNC_MODE_CLOUD_FIRST
98161847f8eSopenharmony_ci  }
98261847f8eSopenharmony_ci
98361847f8eSopenharmony_ci  /**
98461847f8eSopenharmony_ci   * Describes the subscription type.
98561847f8eSopenharmony_ci   *
98661847f8eSopenharmony_ci   * @enum { number }
98761847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
98861847f8eSopenharmony_ci   * @since 9
98961847f8eSopenharmony_ci   */
99061847f8eSopenharmony_ci  enum SubscribeType {
99161847f8eSopenharmony_ci    /**
99261847f8eSopenharmony_ci     * Subscription to remote data changes
99361847f8eSopenharmony_ci     *
99461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
99561847f8eSopenharmony_ci     * @since 9
99661847f8eSopenharmony_ci     */
99761847f8eSopenharmony_ci    SUBSCRIBE_TYPE_REMOTE = 0,
99861847f8eSopenharmony_ci
99961847f8eSopenharmony_ci    /**
100061847f8eSopenharmony_ci     * Subscription to cloud data changes
100161847f8eSopenharmony_ci     *
100261847f8eSopenharmony_ci     * @permission ohos.permission.DISTRIBUTED_DATASYNC
100361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
100461847f8eSopenharmony_ci     * @since 10
100561847f8eSopenharmony_ci     */
100661847f8eSopenharmony_ci    /**
100761847f8eSopenharmony_ci     * Subscription to cloud data changes
100861847f8eSopenharmony_ci     *
100961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
101061847f8eSopenharmony_ci     * @since 12
101161847f8eSopenharmony_ci     */
101261847f8eSopenharmony_ci    SUBSCRIBE_TYPE_CLOUD,
101361847f8eSopenharmony_ci
101461847f8eSopenharmony_ci    /**
101561847f8eSopenharmony_ci     * Subscription to cloud data changes details
101661847f8eSopenharmony_ci     *
101761847f8eSopenharmony_ci     * @permission ohos.permission.DISTRIBUTED_DATASYNC
101861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
101961847f8eSopenharmony_ci     * @since 10
102061847f8eSopenharmony_ci     */
102161847f8eSopenharmony_ci    /**
102261847f8eSopenharmony_ci     * Subscription to cloud data changes details
102361847f8eSopenharmony_ci     *
102461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
102561847f8eSopenharmony_ci     * @since 12
102661847f8eSopenharmony_ci     */
102761847f8eSopenharmony_ci    SUBSCRIBE_TYPE_CLOUD_DETAILS,
102861847f8eSopenharmony_ci
102961847f8eSopenharmony_ci    /**
103061847f8eSopenharmony_ci     * Subscription to local data changes details
103161847f8eSopenharmony_ci     *
103261847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
103361847f8eSopenharmony_ci     * @since 12
103461847f8eSopenharmony_ci     */
103561847f8eSopenharmony_ci    SUBSCRIBE_TYPE_LOCAL_DETAILS
103661847f8eSopenharmony_ci  }
103761847f8eSopenharmony_ci
103861847f8eSopenharmony_ci  /**
103961847f8eSopenharmony_ci   * Describes the change type.
104061847f8eSopenharmony_ci   *
104161847f8eSopenharmony_ci   * @enum { number }
104261847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
104361847f8eSopenharmony_ci   * @since 10
104461847f8eSopenharmony_ci   */
104561847f8eSopenharmony_ci  enum ChangeType {
104661847f8eSopenharmony_ci    /**
104761847f8eSopenharmony_ci     * Means the change type is data change.
104861847f8eSopenharmony_ci     *
104961847f8eSopenharmony_ci     * @permission ohos.permission.DISTRIBUTED_DATASYNC
105061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
105161847f8eSopenharmony_ci     * @since 10
105261847f8eSopenharmony_ci     */
105361847f8eSopenharmony_ci    /**
105461847f8eSopenharmony_ci     * Means the change type is data change.
105561847f8eSopenharmony_ci     *
105661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
105761847f8eSopenharmony_ci     * @since 12
105861847f8eSopenharmony_ci     */
105961847f8eSopenharmony_ci    DATA_CHANGE,
106061847f8eSopenharmony_ci
106161847f8eSopenharmony_ci    /**
106261847f8eSopenharmony_ci     * Means the change type is asset change.
106361847f8eSopenharmony_ci     *
106461847f8eSopenharmony_ci     * @permission ohos.permission.DISTRIBUTED_DATASYNC
106561847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
106661847f8eSopenharmony_ci     * @since 10
106761847f8eSopenharmony_ci     */
106861847f8eSopenharmony_ci    /**
106961847f8eSopenharmony_ci     * Means the change type is asset change.
107061847f8eSopenharmony_ci     *
107161847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
107261847f8eSopenharmony_ci     * @since 12
107361847f8eSopenharmony_ci     */
107461847f8eSopenharmony_ci    ASSET_CHANGE
107561847f8eSopenharmony_ci  }
107661847f8eSopenharmony_ci
107761847f8eSopenharmony_ci  /**
107861847f8eSopenharmony_ci   * Indicates the notify info
107961847f8eSopenharmony_ci   *
108061847f8eSopenharmony_ci   * @interface ChangeInfo
108161847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
108261847f8eSopenharmony_ci   * @since 10
108361847f8eSopenharmony_ci   */
108461847f8eSopenharmony_ci  interface ChangeInfo {
108561847f8eSopenharmony_ci    /**
108661847f8eSopenharmony_ci     * Indicates the changed table
108761847f8eSopenharmony_ci     *
108861847f8eSopenharmony_ci     * @type { string }
108961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
109061847f8eSopenharmony_ci     * @since 10
109161847f8eSopenharmony_ci     */
109261847f8eSopenharmony_ci    table: string;
109361847f8eSopenharmony_ci
109461847f8eSopenharmony_ci    /**
109561847f8eSopenharmony_ci     * Indicates the changed type
109661847f8eSopenharmony_ci     *
109761847f8eSopenharmony_ci     * @type { ChangeType }
109861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
109961847f8eSopenharmony_ci     * @since 10
110061847f8eSopenharmony_ci     */
110161847f8eSopenharmony_ci    type: ChangeType;
110261847f8eSopenharmony_ci
110361847f8eSopenharmony_ci    /**
110461847f8eSopenharmony_ci     * Indicates if there is a string primary key, the inserted will keep data's primary keys
110561847f8eSopenharmony_ci     * otherwise it will keep the data's rowid.
110661847f8eSopenharmony_ci     *
110761847f8eSopenharmony_ci     * @type { Array<string> | Array<number> }
110861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
110961847f8eSopenharmony_ci     * @since 10
111061847f8eSopenharmony_ci     */
111161847f8eSopenharmony_ci    inserted: Array<string> | Array<number>;
111261847f8eSopenharmony_ci
111361847f8eSopenharmony_ci    /**
111461847f8eSopenharmony_ci     * Indicates if there is a string primary key, the updated will keep data's primary keys
111561847f8eSopenharmony_ci     * otherwise it will keep the data's rowid.
111661847f8eSopenharmony_ci     *
111761847f8eSopenharmony_ci     * @type { Array<string> | Array<number> }
111861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
111961847f8eSopenharmony_ci     * @since 10
112061847f8eSopenharmony_ci     */
112161847f8eSopenharmony_ci    updated: Array<string> | Array<number>;
112261847f8eSopenharmony_ci
112361847f8eSopenharmony_ci    /**
112461847f8eSopenharmony_ci     * Indicates if there is a string primary key, the deleted will keep data's primary keys
112561847f8eSopenharmony_ci     * otherwise it will keep the data's rowid.
112661847f8eSopenharmony_ci     *
112761847f8eSopenharmony_ci     * @type { Array<string> | Array<number> }
112861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
112961847f8eSopenharmony_ci     * @since 10
113061847f8eSopenharmony_ci     */
113161847f8eSopenharmony_ci    deleted: Array<string> | Array<number>;
113261847f8eSopenharmony_ci  }
113361847f8eSopenharmony_ci
113461847f8eSopenharmony_ci  /**
113561847f8eSopenharmony_ci   * Describes the distribution type of the tables.
113661847f8eSopenharmony_ci   *
113761847f8eSopenharmony_ci   * @enum { number }
113861847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
113961847f8eSopenharmony_ci   * @since 10
114061847f8eSopenharmony_ci   */
114161847f8eSopenharmony_ci  enum DistributedType {
114261847f8eSopenharmony_ci    /**
114361847f8eSopenharmony_ci     * Indicates the table is distributed among the devices
114461847f8eSopenharmony_ci     *
114561847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
114661847f8eSopenharmony_ci     * @since 10
114761847f8eSopenharmony_ci     */
114861847f8eSopenharmony_ci    DISTRIBUTED_DEVICE,
114961847f8eSopenharmony_ci
115061847f8eSopenharmony_ci    /**
115161847f8eSopenharmony_ci     * Indicates the table is distributed between the cloud and the devices.
115261847f8eSopenharmony_ci     *
115361847f8eSopenharmony_ci     * @permission ohos.permission.DISTRIBUTED_DATASYNC
115461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
115561847f8eSopenharmony_ci     * @since 10
115661847f8eSopenharmony_ci     */
115761847f8eSopenharmony_ci    /**
115861847f8eSopenharmony_ci     * Indicates the table is distributed between the cloud and the devices.
115961847f8eSopenharmony_ci     *
116061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
116161847f8eSopenharmony_ci     * @since 12
116261847f8eSopenharmony_ci     */
116361847f8eSopenharmony_ci    DISTRIBUTED_CLOUD
116461847f8eSopenharmony_ci  }
116561847f8eSopenharmony_ci
116661847f8eSopenharmony_ci  /**
116761847f8eSopenharmony_ci   * Indicates the reference between tables.
116861847f8eSopenharmony_ci   *
116961847f8eSopenharmony_ci   * @interface Reference
117061847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
117161847f8eSopenharmony_ci   * @systemapi
117261847f8eSopenharmony_ci   * @since 11
117361847f8eSopenharmony_ci   */
117461847f8eSopenharmony_ci  interface Reference {
117561847f8eSopenharmony_ci    /**
117661847f8eSopenharmony_ci     * Indicates the table that references another table.
117761847f8eSopenharmony_ci     *
117861847f8eSopenharmony_ci     * @type { string }
117961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
118061847f8eSopenharmony_ci     * @systemapi
118161847f8eSopenharmony_ci     * @since 11
118261847f8eSopenharmony_ci     */
118361847f8eSopenharmony_ci    sourceTable: string;
118461847f8eSopenharmony_ci
118561847f8eSopenharmony_ci    /**
118661847f8eSopenharmony_ci     * Indicates the table to be referenced.
118761847f8eSopenharmony_ci     *
118861847f8eSopenharmony_ci     * @type { string }
118961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
119061847f8eSopenharmony_ci     * @systemapi
119161847f8eSopenharmony_ci     * @since 11
119261847f8eSopenharmony_ci     */
119361847f8eSopenharmony_ci    targetTable: string;
119461847f8eSopenharmony_ci
119561847f8eSopenharmony_ci    /**
119661847f8eSopenharmony_ci     * Indicates the reference fields.
119761847f8eSopenharmony_ci     *
119861847f8eSopenharmony_ci     * @type { Record<string, string> }
119961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
120061847f8eSopenharmony_ci     * @systemapi
120161847f8eSopenharmony_ci     * @since 11
120261847f8eSopenharmony_ci     */
120361847f8eSopenharmony_ci    refFields: Record<string, string>
120461847f8eSopenharmony_ci  }
120561847f8eSopenharmony_ci
120661847f8eSopenharmony_ci  /**
120761847f8eSopenharmony_ci   * Manages the distributed configuration of the table.
120861847f8eSopenharmony_ci   *
120961847f8eSopenharmony_ci   * @interface DistributedConfig
121061847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
121161847f8eSopenharmony_ci   * @since 10
121261847f8eSopenharmony_ci   */
121361847f8eSopenharmony_ci  interface DistributedConfig {
121461847f8eSopenharmony_ci    /**
121561847f8eSopenharmony_ci     * Specifies whether the database auto sync.
121661847f8eSopenharmony_ci     *
121761847f8eSopenharmony_ci     * @type { boolean }
121861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
121961847f8eSopenharmony_ci     * @since 10
122061847f8eSopenharmony_ci     */
122161847f8eSopenharmony_ci    autoSync: boolean;
122261847f8eSopenharmony_ci
122361847f8eSopenharmony_ci    /**
122461847f8eSopenharmony_ci     * Specifies the reference relationships between tables.
122561847f8eSopenharmony_ci     *
122661847f8eSopenharmony_ci     * @type { ?Array<Reference> }
122761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
122861847f8eSopenharmony_ci     * @systemapi
122961847f8eSopenharmony_ci     * @since 11
123061847f8eSopenharmony_ci     */
123161847f8eSopenharmony_ci    references?: Array<Reference>;
123261847f8eSopenharmony_ci  }
123361847f8eSopenharmony_ci
123461847f8eSopenharmony_ci  /**
123561847f8eSopenharmony_ci   * Describes the conflict resolutions to insert data into the table.
123661847f8eSopenharmony_ci   *
123761847f8eSopenharmony_ci   * @enum { number }
123861847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
123961847f8eSopenharmony_ci   * @crossplatform
124061847f8eSopenharmony_ci   * @since 10
124161847f8eSopenharmony_ci   */
124261847f8eSopenharmony_ci  enum ConflictResolution {
124361847f8eSopenharmony_ci    /**
124461847f8eSopenharmony_ci     * Implements no action when conflict occurs.
124561847f8eSopenharmony_ci     *
124661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
124761847f8eSopenharmony_ci     * @crossplatform
124861847f8eSopenharmony_ci     * @since 10
124961847f8eSopenharmony_ci     */
125061847f8eSopenharmony_ci    ON_CONFLICT_NONE = 0,
125161847f8eSopenharmony_ci
125261847f8eSopenharmony_ci    /**
125361847f8eSopenharmony_ci     * Implements rollback operation when conflict occurs.
125461847f8eSopenharmony_ci     *
125561847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
125661847f8eSopenharmony_ci     * @crossplatform
125761847f8eSopenharmony_ci     * @since 10
125861847f8eSopenharmony_ci     */
125961847f8eSopenharmony_ci    ON_CONFLICT_ROLLBACK = 1,
126061847f8eSopenharmony_ci
126161847f8eSopenharmony_ci    /**
126261847f8eSopenharmony_ci     * Implements abort operation when conflict occurs.
126361847f8eSopenharmony_ci     *
126461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
126561847f8eSopenharmony_ci     * @crossplatform
126661847f8eSopenharmony_ci     * @since 10
126761847f8eSopenharmony_ci     */
126861847f8eSopenharmony_ci    ON_CONFLICT_ABORT = 2,
126961847f8eSopenharmony_ci
127061847f8eSopenharmony_ci    /**
127161847f8eSopenharmony_ci     * Implements fail operation when conflict occurs.
127261847f8eSopenharmony_ci     *
127361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
127461847f8eSopenharmony_ci     * @crossplatform
127561847f8eSopenharmony_ci     * @since 10
127661847f8eSopenharmony_ci     */
127761847f8eSopenharmony_ci    ON_CONFLICT_FAIL = 3,
127861847f8eSopenharmony_ci
127961847f8eSopenharmony_ci    /**
128061847f8eSopenharmony_ci     * Implements ignore operation when conflict occurs.
128161847f8eSopenharmony_ci     *
128261847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
128361847f8eSopenharmony_ci     * @crossplatform
128461847f8eSopenharmony_ci     * @since 10
128561847f8eSopenharmony_ci     */
128661847f8eSopenharmony_ci    ON_CONFLICT_IGNORE = 4,
128761847f8eSopenharmony_ci
128861847f8eSopenharmony_ci    /**
128961847f8eSopenharmony_ci     * Implements replace operation operator when conflict occurs.
129061847f8eSopenharmony_ci     *
129161847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
129261847f8eSopenharmony_ci     * @crossplatform
129361847f8eSopenharmony_ci     * @since 10
129461847f8eSopenharmony_ci     */
129561847f8eSopenharmony_ci    ON_CONFLICT_REPLACE = 5
129661847f8eSopenharmony_ci  }
129761847f8eSopenharmony_ci
129861847f8eSopenharmony_ci  /**
129961847f8eSopenharmony_ci   * Describes the data origin sources.
130061847f8eSopenharmony_ci   *
130161847f8eSopenharmony_ci   * @enum { number }
130261847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
130361847f8eSopenharmony_ci   * @since 11
130461847f8eSopenharmony_ci   */
130561847f8eSopenharmony_ci  enum Origin {
130661847f8eSopenharmony_ci    /**
130761847f8eSopenharmony_ci     * Indicates the data source is local.
130861847f8eSopenharmony_ci     *
130961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
131061847f8eSopenharmony_ci     * @since 11
131161847f8eSopenharmony_ci     */
131261847f8eSopenharmony_ci    LOCAL,
131361847f8eSopenharmony_ci
131461847f8eSopenharmony_ci    /**
131561847f8eSopenharmony_ci     * Indicates the data source is cloud.
131661847f8eSopenharmony_ci     *
131761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
131861847f8eSopenharmony_ci     * @since 11
131961847f8eSopenharmony_ci     */
132061847f8eSopenharmony_ci    CLOUD,
132161847f8eSopenharmony_ci
132261847f8eSopenharmony_ci    /**
132361847f8eSopenharmony_ci     * Indicates the data source is remote.
132461847f8eSopenharmony_ci     *
132561847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
132661847f8eSopenharmony_ci     * @since 11
132761847f8eSopenharmony_ci     */
132861847f8eSopenharmony_ci    REMOTE,
132961847f8eSopenharmony_ci  }
133061847f8eSopenharmony_ci
133161847f8eSopenharmony_ci  /**
133261847f8eSopenharmony_ci   * Enumerates the field.
133361847f8eSopenharmony_ci   *
133461847f8eSopenharmony_ci   * @enum { string }
133561847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
133661847f8eSopenharmony_ci   * @since 11
133761847f8eSopenharmony_ci   */
133861847f8eSopenharmony_ci  enum Field {
133961847f8eSopenharmony_ci    /**
134061847f8eSopenharmony_ci     * Cursor field.
134161847f8eSopenharmony_ci     *
134261847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
134361847f8eSopenharmony_ci     * @since 11
134461847f8eSopenharmony_ci     */
134561847f8eSopenharmony_ci    CURSOR_FIELD = '#_cursor',
134661847f8eSopenharmony_ci
134761847f8eSopenharmony_ci    /**
134861847f8eSopenharmony_ci     * Origin field. For details, see {@link Origin}.
134961847f8eSopenharmony_ci     *
135061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
135161847f8eSopenharmony_ci     * @since 11
135261847f8eSopenharmony_ci     */
135361847f8eSopenharmony_ci    ORIGIN_FIELD = '#_origin',
135461847f8eSopenharmony_ci
135561847f8eSopenharmony_ci    /**
135661847f8eSopenharmony_ci     * Deleted flag field.
135761847f8eSopenharmony_ci     * Indicates whether data has deleted in cloud.
135861847f8eSopenharmony_ci     *
135961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
136061847f8eSopenharmony_ci     * @since 11
136161847f8eSopenharmony_ci     */
136261847f8eSopenharmony_ci    DELETED_FLAG_FIELD = '#_deleted_flag',
136361847f8eSopenharmony_ci
136461847f8eSopenharmony_ci    /**
136561847f8eSopenharmony_ci     * Data status field.
136661847f8eSopenharmony_ci     * Indicates data status.
136761847f8eSopenharmony_ci     *
136861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
136961847f8eSopenharmony_ci     * @since 12
137061847f8eSopenharmony_ci     */
137161847f8eSopenharmony_ci    DATA_STATUS_FIELD = '#_data_status',
137261847f8eSopenharmony_ci
137361847f8eSopenharmony_ci    /**
137461847f8eSopenharmony_ci     * Owner field.
137561847f8eSopenharmony_ci     *
137661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
137761847f8eSopenharmony_ci     * @since 11
137861847f8eSopenharmony_ci     */
137961847f8eSopenharmony_ci    OWNER_FIELD = '#_cloud_owner',
138061847f8eSopenharmony_ci
138161847f8eSopenharmony_ci    /**
138261847f8eSopenharmony_ci     * Privilege field.
138361847f8eSopenharmony_ci     *
138461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
138561847f8eSopenharmony_ci     * @since 11
138661847f8eSopenharmony_ci     */
138761847f8eSopenharmony_ci    PRIVILEGE_FIELD = '#_cloud_privilege',
138861847f8eSopenharmony_ci
138961847f8eSopenharmony_ci    /**
139061847f8eSopenharmony_ci     * Sharing resource field.
139161847f8eSopenharmony_ci     *
139261847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
139361847f8eSopenharmony_ci     * @since 11
139461847f8eSopenharmony_ci     */
139561847f8eSopenharmony_ci    SHARING_RESOURCE_FIELD = '#_sharing_resource_field'
139661847f8eSopenharmony_ci  }
139761847f8eSopenharmony_ci
139861847f8eSopenharmony_ci  /**
139961847f8eSopenharmony_ci   * Enumerates the type of rebuild.
140061847f8eSopenharmony_ci   *
140161847f8eSopenharmony_ci   * @enum { number }
140261847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
140361847f8eSopenharmony_ci   * @since 12
140461847f8eSopenharmony_ci   */
140561847f8eSopenharmony_ci  enum RebuildType {
140661847f8eSopenharmony_ci    /**
140761847f8eSopenharmony_ci     * The database is not rebuilt or repaired.
140861847f8eSopenharmony_ci     *
140961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
141061847f8eSopenharmony_ci     * @since 12
141161847f8eSopenharmony_ci     */
141261847f8eSopenharmony_ci    NONE,
141361847f8eSopenharmony_ci
141461847f8eSopenharmony_ci    /**
141561847f8eSopenharmony_ci     * The database is rebuilt.
141661847f8eSopenharmony_ci     *
141761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
141861847f8eSopenharmony_ci     * @since 12
141961847f8eSopenharmony_ci     */
142061847f8eSopenharmony_ci    REBUILT,
142161847f8eSopenharmony_ci
142261847f8eSopenharmony_ci    /**
142361847f8eSopenharmony_ci     * The database is repaired.
142461847f8eSopenharmony_ci     *
142561847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
142661847f8eSopenharmony_ci     * @since 12
142761847f8eSopenharmony_ci     */
142861847f8eSopenharmony_ci    REPAIRED
142961847f8eSopenharmony_ci  }
143061847f8eSopenharmony_ci
143161847f8eSopenharmony_ci  /**
143261847f8eSopenharmony_ci   * Manages relational database configurations.
143361847f8eSopenharmony_ci   *
143461847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
143561847f8eSopenharmony_ci   * @since 9
143661847f8eSopenharmony_ci   */
143761847f8eSopenharmony_ci  /**
143861847f8eSopenharmony_ci   * Manages relational database configurations.
143961847f8eSopenharmony_ci   *
144061847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
144161847f8eSopenharmony_ci   * @crossplatform
144261847f8eSopenharmony_ci   * @since 10
144361847f8eSopenharmony_ci   */
144461847f8eSopenharmony_ci  class RdbPredicates {
144561847f8eSopenharmony_ci    /**
144661847f8eSopenharmony_ci     * A parameterized constructor used to create a RdbPredicates instance.
144761847f8eSopenharmony_ci     *
144861847f8eSopenharmony_ci     * @param { string } name - Indicates the table name of the database.
144961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
145061847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
145161847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
145261847f8eSopenharmony_ci     * @since 9
145361847f8eSopenharmony_ci     */
145461847f8eSopenharmony_ci    /**
145561847f8eSopenharmony_ci     * A parameterized constructor used to create a RdbPredicates instance.
145661847f8eSopenharmony_ci     *
145761847f8eSopenharmony_ci     * @param { string } name - Indicates the table name of the database.
145861847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
145961847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
146061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
146161847f8eSopenharmony_ci     * @crossplatform
146261847f8eSopenharmony_ci     * @since 10
146361847f8eSopenharmony_ci     */
146461847f8eSopenharmony_ci    constructor(name: string);
146561847f8eSopenharmony_ci
146661847f8eSopenharmony_ci    /**
146761847f8eSopenharmony_ci     * Specifies remote devices which connect to local device when syncing distributed database.
146861847f8eSopenharmony_ci     * When query database, this function should not be called.
146961847f8eSopenharmony_ci     *
147061847f8eSopenharmony_ci     * @param { Array<string> } devices - Indicates specified remote devices.
147161847f8eSopenharmony_ci     * @returns { RdbPredicates } - The {@link RdbPredicates} self.
147261847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
147361847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
147461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
147561847f8eSopenharmony_ci     * @since 9
147661847f8eSopenharmony_ci     */
147761847f8eSopenharmony_ci    inDevices(devices: Array<string>): RdbPredicates;
147861847f8eSopenharmony_ci
147961847f8eSopenharmony_ci    /**
148061847f8eSopenharmony_ci     * Specifies all remote devices which connect to local device when syncing distributed database.
148161847f8eSopenharmony_ci     * When query database, this function should not be called.
148261847f8eSopenharmony_ci     *
148361847f8eSopenharmony_ci     * @returns { RdbPredicates } - The {@link RdbPredicates} self.
148461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
148561847f8eSopenharmony_ci     * @since 9
148661847f8eSopenharmony_ci     */
148761847f8eSopenharmony_ci    inAllDevices(): RdbPredicates;
148861847f8eSopenharmony_ci
148961847f8eSopenharmony_ci    /**
149061847f8eSopenharmony_ci     * Configure the RdbPredicates to match the field whose data type is ValueType and value is equal
149161847f8eSopenharmony_ci     * to a specified value.
149261847f8eSopenharmony_ci     * This method is similar to = of the SQL statement.
149361847f8eSopenharmony_ci     *
149461847f8eSopenharmony_ci     * @param { string } field - Indicates the column name in the database table.
149561847f8eSopenharmony_ci     * @param { ValueType } value - Indicates the value to match with the {@link RdbPredicates}.
149661847f8eSopenharmony_ci     * @returns { RdbPredicates } - The {@link RdbPredicates} self.
149761847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
149861847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
149961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
150061847f8eSopenharmony_ci     * @since 9
150161847f8eSopenharmony_ci     */
150261847f8eSopenharmony_ci    /**
150361847f8eSopenharmony_ci     * Configure the RdbPredicates to match the field whose data type is ValueType and value is equal
150461847f8eSopenharmony_ci     * to a specified value.
150561847f8eSopenharmony_ci     * This method is similar to = of the SQL statement.
150661847f8eSopenharmony_ci     *
150761847f8eSopenharmony_ci     * @param { string } field - Indicates the column name in the database table.
150861847f8eSopenharmony_ci     * @param { ValueType } value - Indicates the value to match with the {@link RdbPredicates}.
150961847f8eSopenharmony_ci     * @returns { RdbPredicates } - The {@link RdbPredicates} self.
151061847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
151161847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
151261847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
151361847f8eSopenharmony_ci     * @crossplatform
151461847f8eSopenharmony_ci     * @since 10
151561847f8eSopenharmony_ci     */
151661847f8eSopenharmony_ci    equalTo(field: string, value: ValueType): RdbPredicates;
151761847f8eSopenharmony_ci
151861847f8eSopenharmony_ci    /**
151961847f8eSopenharmony_ci     * Configure the RdbPredicates to match the field whose data type is ValueType and value is not equal to
152061847f8eSopenharmony_ci     * a specified value.
152161847f8eSopenharmony_ci     * This method is similar to != of the SQL statement.
152261847f8eSopenharmony_ci     *
152361847f8eSopenharmony_ci     * @param { string } field - Indicates the column name in the database table.
152461847f8eSopenharmony_ci     * @param { ValueType } value - Indicates the value to match with the {@link RdbPredicates}.
152561847f8eSopenharmony_ci     * @returns { RdbPredicates } - The {@link RdbPredicates} self.
152661847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
152761847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
152861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
152961847f8eSopenharmony_ci     * @since 9
153061847f8eSopenharmony_ci     */
153161847f8eSopenharmony_ci    /**
153261847f8eSopenharmony_ci     * Configure the RdbPredicates to match the field whose data type is ValueType and value is not equal to
153361847f8eSopenharmony_ci     * a specified value.
153461847f8eSopenharmony_ci     * This method is similar to != of the SQL statement.
153561847f8eSopenharmony_ci     *
153661847f8eSopenharmony_ci     * @param { string } field - Indicates the column name in the database table.
153761847f8eSopenharmony_ci     * @param { ValueType } value - Indicates the value to match with the {@link RdbPredicates}.
153861847f8eSopenharmony_ci     * @returns { RdbPredicates } - The {@link RdbPredicates} self.
153961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
154061847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
154161847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
154261847f8eSopenharmony_ci     * @crossplatform
154361847f8eSopenharmony_ci     * @since 10
154461847f8eSopenharmony_ci     */
154561847f8eSopenharmony_ci    notEqualTo(field: string, value: ValueType): RdbPredicates;
154661847f8eSopenharmony_ci
154761847f8eSopenharmony_ci    /**
154861847f8eSopenharmony_ci     * Adds a left parenthesis to the RdbPredicates.
154961847f8eSopenharmony_ci     * This method is similar to ( of the SQL statement and needs to be used together with endWrap().
155061847f8eSopenharmony_ci     *
155161847f8eSopenharmony_ci     * @returns { RdbPredicates } - The {@link RdbPredicates} with the left parenthesis.
155261847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
155361847f8eSopenharmony_ci     * @since 9
155461847f8eSopenharmony_ci     */
155561847f8eSopenharmony_ci    /**
155661847f8eSopenharmony_ci     * Adds a left parenthesis to the RdbPredicates.
155761847f8eSopenharmony_ci     * This method is similar to ( of the SQL statement and needs to be used together with endWrap().
155861847f8eSopenharmony_ci     *
155961847f8eSopenharmony_ci     * @returns { RdbPredicates } - The {@link RdbPredicates} with the left parenthesis.
156061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
156161847f8eSopenharmony_ci     * @crossplatform
156261847f8eSopenharmony_ci     * @since 10
156361847f8eSopenharmony_ci     */
156461847f8eSopenharmony_ci    beginWrap(): RdbPredicates;
156561847f8eSopenharmony_ci
156661847f8eSopenharmony_ci    /**
156761847f8eSopenharmony_ci     * Adds a right parenthesis to the RdbPredicates.
156861847f8eSopenharmony_ci     * This method is similar to ) of the SQL statement and needs to be used together with beginWrap().
156961847f8eSopenharmony_ci     *
157061847f8eSopenharmony_ci     * @returns { RdbPredicates } - The {@link RdbPredicates} with the right parenthesis.
157161847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
157261847f8eSopenharmony_ci     * @since 9
157361847f8eSopenharmony_ci     */
157461847f8eSopenharmony_ci    /**
157561847f8eSopenharmony_ci     * Adds a right parenthesis to the RdbPredicates.
157661847f8eSopenharmony_ci     * This method is similar to ) of the SQL statement and needs to be used together with beginWrap().
157761847f8eSopenharmony_ci     *
157861847f8eSopenharmony_ci     * @returns { RdbPredicates } - The {@link RdbPredicates} with the right parenthesis.
157961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
158061847f8eSopenharmony_ci     * @crossplatform
158161847f8eSopenharmony_ci     * @since 10
158261847f8eSopenharmony_ci     */
158361847f8eSopenharmony_ci    endWrap(): RdbPredicates;
158461847f8eSopenharmony_ci
158561847f8eSopenharmony_ci    /**
158661847f8eSopenharmony_ci     * Adds an or condition to the RdbPredicates.
158761847f8eSopenharmony_ci     * This method is similar to or of the SQL statement.
158861847f8eSopenharmony_ci     *
158961847f8eSopenharmony_ci     * @returns { RdbPredicates } - The {@link RdbPredicates} with the or condition.
159061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
159161847f8eSopenharmony_ci     * @since 9
159261847f8eSopenharmony_ci     */
159361847f8eSopenharmony_ci    /**
159461847f8eSopenharmony_ci     * Adds an or condition to the RdbPredicates.
159561847f8eSopenharmony_ci     * This method is similar to or of the SQL statement.
159661847f8eSopenharmony_ci     *
159761847f8eSopenharmony_ci     * @returns { RdbPredicates } - The {@link RdbPredicates} with the or condition.
159861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
159961847f8eSopenharmony_ci     * @crossplatform
160061847f8eSopenharmony_ci     * @since 10
160161847f8eSopenharmony_ci     */
160261847f8eSopenharmony_ci    or(): RdbPredicates;
160361847f8eSopenharmony_ci
160461847f8eSopenharmony_ci    /**
160561847f8eSopenharmony_ci     * Adds an and condition to the RdbPredicates.
160661847f8eSopenharmony_ci     * This method is similar to and of the SQL statement.
160761847f8eSopenharmony_ci     *
160861847f8eSopenharmony_ci     * @returns { RdbPredicates } - The {@link RdbPredicates} with the and condition.
160961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
161061847f8eSopenharmony_ci     * @since 9
161161847f8eSopenharmony_ci     */
161261847f8eSopenharmony_ci    /**
161361847f8eSopenharmony_ci     * Adds an and condition to the RdbPredicates.
161461847f8eSopenharmony_ci     * This method is similar to and of the SQL statement.
161561847f8eSopenharmony_ci     *
161661847f8eSopenharmony_ci     * @returns { RdbPredicates } - The {@link RdbPredicates} with the and condition.
161761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
161861847f8eSopenharmony_ci     * @crossplatform
161961847f8eSopenharmony_ci     * @since 10
162061847f8eSopenharmony_ci     */
162161847f8eSopenharmony_ci    and(): RdbPredicates;
162261847f8eSopenharmony_ci
162361847f8eSopenharmony_ci    /**
162461847f8eSopenharmony_ci     * Configure the RdbPredicates to match the field whose data type is string and value
162561847f8eSopenharmony_ci     * contains a specified value.
162661847f8eSopenharmony_ci     * This method is similar to contains of the SQL statement.
162761847f8eSopenharmony_ci     *
162861847f8eSopenharmony_ci     * @param { string } field - Indicates the column name in the database table.
162961847f8eSopenharmony_ci     * @param { string } value - Indicates the value to match with the {@link RdbPredicates}.
163061847f8eSopenharmony_ci     * @returns { RdbPredicates } - The {@link RdbPredicates} self.
163161847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
163261847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
163361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
163461847f8eSopenharmony_ci     * @since 9
163561847f8eSopenharmony_ci     */
163661847f8eSopenharmony_ci    /**
163761847f8eSopenharmony_ci     * Configure the RdbPredicates to match the field whose data type is string and value
163861847f8eSopenharmony_ci     * contains a specified value.
163961847f8eSopenharmony_ci     * This method is similar to contains of the SQL statement.
164061847f8eSopenharmony_ci     *
164161847f8eSopenharmony_ci     * @param { string } field - Indicates the column name in the database table.
164261847f8eSopenharmony_ci     * @param { string } value - Indicates the value to match with the {@link RdbPredicates}.
164361847f8eSopenharmony_ci     * @returns { RdbPredicates } - The {@link RdbPredicates} self.
164461847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
164561847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
164661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
164761847f8eSopenharmony_ci     * @crossplatform
164861847f8eSopenharmony_ci     * @since 10
164961847f8eSopenharmony_ci     */
165061847f8eSopenharmony_ci    contains(field: string, value: string): RdbPredicates;
165161847f8eSopenharmony_ci
165261847f8eSopenharmony_ci    /**
165361847f8eSopenharmony_ci     * Configure the RdbPredicates to match the field whose data type is string and value starts
165461847f8eSopenharmony_ci     * with a specified string.
165561847f8eSopenharmony_ci     * This method is similar to value% of the SQL statement.
165661847f8eSopenharmony_ci     *
165761847f8eSopenharmony_ci     * @param { string } field - Indicates the column name in the database table.
165861847f8eSopenharmony_ci     * @param { string } value - Indicates the value to match with the {@link RdbPredicates}.
165961847f8eSopenharmony_ci     * @returns { RdbPredicates } - The {@link RdbPredicates} self.
166061847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
166161847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
166261847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
166361847f8eSopenharmony_ci     * @since 9
166461847f8eSopenharmony_ci     */
166561847f8eSopenharmony_ci    /**
166661847f8eSopenharmony_ci     * Configure the RdbPredicates to match the field whose data type is string and value starts
166761847f8eSopenharmony_ci     * with a specified string.
166861847f8eSopenharmony_ci     * This method is similar to value% of the SQL statement.
166961847f8eSopenharmony_ci     *
167061847f8eSopenharmony_ci     * @param { string } field - Indicates the column name in the database table.
167161847f8eSopenharmony_ci     * @param { string } value - Indicates the value to match with the {@link RdbPredicates}.
167261847f8eSopenharmony_ci     * @returns { RdbPredicates } - The {@link RdbPredicates} self.
167361847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
167461847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
167561847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
167661847f8eSopenharmony_ci     * @crossplatform
167761847f8eSopenharmony_ci     * @since 10
167861847f8eSopenharmony_ci     */
167961847f8eSopenharmony_ci    beginsWith(field: string, value: string): RdbPredicates;
168061847f8eSopenharmony_ci
168161847f8eSopenharmony_ci    /**
168261847f8eSopenharmony_ci     * Configure the RdbPredicates to match the field whose data type is string and value
168361847f8eSopenharmony_ci     * ends with a specified string.
168461847f8eSopenharmony_ci     * This method is similar to %value of the SQL statement.
168561847f8eSopenharmony_ci     *
168661847f8eSopenharmony_ci     * @param { string } field - Indicates the column name in the database table.
168761847f8eSopenharmony_ci     * @param { string } value - Indicates the value to match with the {@link RdbPredicates}.
168861847f8eSopenharmony_ci     * @returns { RdbPredicates } - The {@link RdbPredicates} self.
168961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
169061847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
169161847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
169261847f8eSopenharmony_ci     * @since 9
169361847f8eSopenharmony_ci     */
169461847f8eSopenharmony_ci    /**
169561847f8eSopenharmony_ci     * Configure the RdbPredicates to match the field whose data type is string and value
169661847f8eSopenharmony_ci     * ends with a specified string.
169761847f8eSopenharmony_ci     * This method is similar to %value of the SQL statement.
169861847f8eSopenharmony_ci     *
169961847f8eSopenharmony_ci     * @param { string } field - Indicates the column name in the database table.
170061847f8eSopenharmony_ci     * @param { string } value - Indicates the value to match with the {@link RdbPredicates}.
170161847f8eSopenharmony_ci     * @returns { RdbPredicates } - The {@link RdbPredicates} self.
170261847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
170361847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
170461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
170561847f8eSopenharmony_ci     * @crossplatform
170661847f8eSopenharmony_ci     * @since 10
170761847f8eSopenharmony_ci     */
170861847f8eSopenharmony_ci    endsWith(field: string, value: string): RdbPredicates;
170961847f8eSopenharmony_ci
171061847f8eSopenharmony_ci    /**
171161847f8eSopenharmony_ci     * Configure the RdbPredicates to match the fields whose value is null.
171261847f8eSopenharmony_ci     * This method is similar to is null of the SQL statement.
171361847f8eSopenharmony_ci     *
171461847f8eSopenharmony_ci     * @param { string } field - Indicates the column name in the database table.
171561847f8eSopenharmony_ci     * @returns { RdbPredicates } - The {@link RdbPredicates} self.
171661847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
171761847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
171861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
171961847f8eSopenharmony_ci     * @since 9
172061847f8eSopenharmony_ci     */
172161847f8eSopenharmony_ci    /**
172261847f8eSopenharmony_ci     * Configure the RdbPredicates to match the fields whose value is null.
172361847f8eSopenharmony_ci     * This method is similar to is null of the SQL statement.
172461847f8eSopenharmony_ci     *
172561847f8eSopenharmony_ci     * @param { string } field - Indicates the column name in the database table.
172661847f8eSopenharmony_ci     * @returns { RdbPredicates } - The {@link RdbPredicates} self.
172761847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
172861847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
172961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
173061847f8eSopenharmony_ci     * @crossplatform
173161847f8eSopenharmony_ci     * @since 10
173261847f8eSopenharmony_ci     */
173361847f8eSopenharmony_ci    isNull(field: string): RdbPredicates;
173461847f8eSopenharmony_ci
173561847f8eSopenharmony_ci    /**
173661847f8eSopenharmony_ci     * Configure the RdbPredicates to match the specified fields whose value is not null.
173761847f8eSopenharmony_ci     * This method is similar to is not null of the SQL statement.
173861847f8eSopenharmony_ci     *
173961847f8eSopenharmony_ci     * @param { string } field - Indicates the column name in the database table.
174061847f8eSopenharmony_ci     * @returns { RdbPredicates } - The {@link RdbPredicates} self.
174161847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
174261847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
174361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
174461847f8eSopenharmony_ci     * @since 9
174561847f8eSopenharmony_ci     */
174661847f8eSopenharmony_ci    /**
174761847f8eSopenharmony_ci     * Configure the RdbPredicates to match the specified fields whose value is not null.
174861847f8eSopenharmony_ci     * This method is similar to is not null of the SQL statement.
174961847f8eSopenharmony_ci     *
175061847f8eSopenharmony_ci     * @param { string } field - Indicates the column name in the database table.
175161847f8eSopenharmony_ci     * @returns { RdbPredicates } - The {@link RdbPredicates} self.
175261847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
175361847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
175461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
175561847f8eSopenharmony_ci     * @crossplatform
175661847f8eSopenharmony_ci     * @since 10
175761847f8eSopenharmony_ci     */
175861847f8eSopenharmony_ci    isNotNull(field: string): RdbPredicates;
175961847f8eSopenharmony_ci
176061847f8eSopenharmony_ci    /**
176161847f8eSopenharmony_ci     * Configure the RdbPredicates to match the fields whose data type is string and value is
176261847f8eSopenharmony_ci     * similar to a specified string.
176361847f8eSopenharmony_ci     * This method is similar to like of the SQL statement.
176461847f8eSopenharmony_ci     *
176561847f8eSopenharmony_ci     * @param { string } field - Indicates the column name in the database table.
176661847f8eSopenharmony_ci     * @param { string } value - Indicates the value to match with the {@link RdbPredicates}.
176761847f8eSopenharmony_ci     * @returns { RdbPredicates } - The {@link RdbPredicates} that match the specified field.
176861847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
176961847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
177061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
177161847f8eSopenharmony_ci     * @since 9
177261847f8eSopenharmony_ci     */
177361847f8eSopenharmony_ci    /**
177461847f8eSopenharmony_ci     * Configure the RdbPredicates to match the fields whose data type is string and value is
177561847f8eSopenharmony_ci     * similar to a specified string.
177661847f8eSopenharmony_ci     * This method is similar to like of the SQL statement.
177761847f8eSopenharmony_ci     *
177861847f8eSopenharmony_ci     * @param { string } field - Indicates the column name in the database table.
177961847f8eSopenharmony_ci     * @param { string } value - Indicates the value to match with the {@link RdbPredicates}.
178061847f8eSopenharmony_ci     * @returns { RdbPredicates } - The {@link RdbPredicates} that match the specified field.
178161847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
178261847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
178361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
178461847f8eSopenharmony_ci     * @crossplatform
178561847f8eSopenharmony_ci     * @since 10
178661847f8eSopenharmony_ci     */
178761847f8eSopenharmony_ci    like(field: string, value: string): RdbPredicates;
178861847f8eSopenharmony_ci
178961847f8eSopenharmony_ci    /**
179061847f8eSopenharmony_ci     * Configure RdbPredicates to match the specified field whose data type is string and the value contains
179161847f8eSopenharmony_ci     * a wildcard.
179261847f8eSopenharmony_ci     * Different from like, the input parameters of this method are case-sensitive.
179361847f8eSopenharmony_ci     *
179461847f8eSopenharmony_ci     * @param { string } field - Indicates the column name in the database table.
179561847f8eSopenharmony_ci     * @param { string } value - Indicates the value to match with the {@link RdbPredicates}.
179661847f8eSopenharmony_ci     * @returns { RdbPredicates } - The SQL statement with the specified {@link RdbPredicates}.
179761847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
179861847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
179961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
180061847f8eSopenharmony_ci     * @since 9
180161847f8eSopenharmony_ci     */
180261847f8eSopenharmony_ci    /**
180361847f8eSopenharmony_ci     * Configure RdbPredicates to match the specified field whose data type is string and the value contains
180461847f8eSopenharmony_ci     * a wildcard.
180561847f8eSopenharmony_ci     * Different from like, the input parameters of this method are case-sensitive.
180661847f8eSopenharmony_ci     *
180761847f8eSopenharmony_ci     * @param { string } field - Indicates the column name in the database table.
180861847f8eSopenharmony_ci     * @param { string } value - Indicates the value to match with the {@link RdbPredicates}.
180961847f8eSopenharmony_ci     * @returns { RdbPredicates } - The SQL statement with the specified {@link RdbPredicates}.
181061847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
181161847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
181261847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
181361847f8eSopenharmony_ci     * @crossplatform
181461847f8eSopenharmony_ci     * @since 10
181561847f8eSopenharmony_ci     */
181661847f8eSopenharmony_ci    glob(field: string, value: string): RdbPredicates;
181761847f8eSopenharmony_ci
181861847f8eSopenharmony_ci    /**
181961847f8eSopenharmony_ci     * Configure RdbPredicates to match the specified field whose value is within a given range.
182061847f8eSopenharmony_ci     *
182161847f8eSopenharmony_ci     * @param { string } field - Indicates the column name.
182261847f8eSopenharmony_ci     * @param { ValueType } low - Indicates the minimum value.
182361847f8eSopenharmony_ci     * @param { ValueType } high - Indicates the maximum value.
182461847f8eSopenharmony_ci     * @returns { RdbPredicates } - The SQL statement with the specified {@link RdbPredicates}.
182561847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
182661847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
182761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
182861847f8eSopenharmony_ci     * @since 9
182961847f8eSopenharmony_ci     */
183061847f8eSopenharmony_ci    /**
183161847f8eSopenharmony_ci     * Configure RdbPredicates to match the specified field whose value is within a given range.
183261847f8eSopenharmony_ci     *
183361847f8eSopenharmony_ci     * @param { string } field - Indicates the column name.
183461847f8eSopenharmony_ci     * @param { ValueType } low - Indicates the minimum value.
183561847f8eSopenharmony_ci     * @param { ValueType } high - Indicates the maximum value.
183661847f8eSopenharmony_ci     * @returns { RdbPredicates } - The SQL statement with the specified {@link RdbPredicates}.
183761847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
183861847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
183961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
184061847f8eSopenharmony_ci     * @crossplatform
184161847f8eSopenharmony_ci     * @since 10
184261847f8eSopenharmony_ci     */
184361847f8eSopenharmony_ci    between(field: string, low: ValueType, high: ValueType): RdbPredicates;
184461847f8eSopenharmony_ci
184561847f8eSopenharmony_ci    /**
184661847f8eSopenharmony_ci     * Configure RdbPredicates to match the specified field whose value is out of a given range.
184761847f8eSopenharmony_ci     *
184861847f8eSopenharmony_ci     * @param { string } field - Indicates the column name in the database table.
184961847f8eSopenharmony_ci     * @param { ValueType } low - Indicates the minimum value.
185061847f8eSopenharmony_ci     * @param { ValueType } high - Indicates the maximum value.
185161847f8eSopenharmony_ci     * @returns { RdbPredicates } - The SQL statement with the specified {@link RdbPredicates}.
185261847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
185361847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
185461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
185561847f8eSopenharmony_ci     * @since 9
185661847f8eSopenharmony_ci     */
185761847f8eSopenharmony_ci    /**
185861847f8eSopenharmony_ci     * Configure RdbPredicates to match the specified field whose value is out of a given range.
185961847f8eSopenharmony_ci     *
186061847f8eSopenharmony_ci     * @param { string } field - Indicates the column name in the database table.
186161847f8eSopenharmony_ci     * @param { ValueType } low - Indicates the minimum value.
186261847f8eSopenharmony_ci     * @param { ValueType } high - Indicates the maximum value.
186361847f8eSopenharmony_ci     * @returns { RdbPredicates } - The SQL statement with the specified {@link RdbPredicates}.
186461847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
186561847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
186661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
186761847f8eSopenharmony_ci     * @crossplatform
186861847f8eSopenharmony_ci     * @since 10
186961847f8eSopenharmony_ci     */
187061847f8eSopenharmony_ci    notBetween(field: string, low: ValueType, high: ValueType): RdbPredicates;
187161847f8eSopenharmony_ci
187261847f8eSopenharmony_ci    /**
187361847f8eSopenharmony_ci     * Restricts the value of the field to be greater than the specified value.
187461847f8eSopenharmony_ci     *
187561847f8eSopenharmony_ci     * @param { string } field - Indicates the column name in the database table.
187661847f8eSopenharmony_ci     * @param { ValueType } value - Indicates the value to match with the {@link RdbPredicates}.
187761847f8eSopenharmony_ci     * @returns { RdbPredicates } - The SQL query statement with the specified {@link RdbPredicates}.
187861847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
187961847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
188061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
188161847f8eSopenharmony_ci     * @since 9
188261847f8eSopenharmony_ci     */
188361847f8eSopenharmony_ci    /**
188461847f8eSopenharmony_ci     * Restricts the value of the field to be greater than the specified value.
188561847f8eSopenharmony_ci     *
188661847f8eSopenharmony_ci     * @param { string } field - Indicates the column name in the database table.
188761847f8eSopenharmony_ci     * @param { ValueType } value - Indicates the value to match with the {@link RdbPredicates}.
188861847f8eSopenharmony_ci     * @returns { RdbPredicates } - The SQL query statement with the specified {@link RdbPredicates}.
188961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
189061847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
189161847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
189261847f8eSopenharmony_ci     * @crossplatform
189361847f8eSopenharmony_ci     * @since 10
189461847f8eSopenharmony_ci     */
189561847f8eSopenharmony_ci    greaterThan(field: string, value: ValueType): RdbPredicates;
189661847f8eSopenharmony_ci
189761847f8eSopenharmony_ci    /**
189861847f8eSopenharmony_ci     * Restricts the value of the field to be smaller than the specified value.
189961847f8eSopenharmony_ci     *
190061847f8eSopenharmony_ci     * @param { string } field - Indicates the column name in the database table.
190161847f8eSopenharmony_ci     * @param { ValueType } value - Indicates the value to match with the {@link RdbPredicates}.
190261847f8eSopenharmony_ci     * @returns { RdbPredicates } - The SQL query statement with the specified {@link RdbPredicates}.
190361847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
190461847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
190561847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
190661847f8eSopenharmony_ci     * @since 9
190761847f8eSopenharmony_ci     */
190861847f8eSopenharmony_ci    /**
190961847f8eSopenharmony_ci     * Restricts the value of the field to be smaller than the specified value.
191061847f8eSopenharmony_ci     *
191161847f8eSopenharmony_ci     * @param { string } field - Indicates the column name in the database table.
191261847f8eSopenharmony_ci     * @param { ValueType } value - Indicates the value to match with the {@link RdbPredicates}.
191361847f8eSopenharmony_ci     * @returns { RdbPredicates } - The SQL query statement with the specified {@link RdbPredicates}.
191461847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
191561847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
191661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
191761847f8eSopenharmony_ci     * @crossplatform
191861847f8eSopenharmony_ci     * @since 10
191961847f8eSopenharmony_ci     */
192061847f8eSopenharmony_ci    lessThan(field: string, value: ValueType): RdbPredicates;
192161847f8eSopenharmony_ci
192261847f8eSopenharmony_ci    /**
192361847f8eSopenharmony_ci     * Restricts the value of the field to be greater than or equal to the specified value.
192461847f8eSopenharmony_ci     *
192561847f8eSopenharmony_ci     * @param { string } field - Indicates the column name in the database table.
192661847f8eSopenharmony_ci     * @param { ValueType } value - Indicates the value to match with the {@link RdbPredicates}.
192761847f8eSopenharmony_ci     * @returns { RdbPredicates } - The SQL query statement with the specified {@link RdbPredicates}.
192861847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
192961847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
193061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
193161847f8eSopenharmony_ci     * @since 9
193261847f8eSopenharmony_ci     */
193361847f8eSopenharmony_ci    /**
193461847f8eSopenharmony_ci     * Restricts the value of the field to be greater than or equal to the specified value.
193561847f8eSopenharmony_ci     *
193661847f8eSopenharmony_ci     * @param { string } field - Indicates the column name in the database table.
193761847f8eSopenharmony_ci     * @param { ValueType } value - Indicates the value to match with the {@link RdbPredicates}.
193861847f8eSopenharmony_ci     * @returns { RdbPredicates } - The SQL query statement with the specified {@link RdbPredicates}.
193961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
194061847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
194161847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
194261847f8eSopenharmony_ci     * @crossplatform
194361847f8eSopenharmony_ci     * @since 10
194461847f8eSopenharmony_ci     */
194561847f8eSopenharmony_ci    greaterThanOrEqualTo(field: string, value: ValueType): RdbPredicates;
194661847f8eSopenharmony_ci
194761847f8eSopenharmony_ci    /**
194861847f8eSopenharmony_ci     * Restricts the value of the field to be smaller than or equal to the specified value.
194961847f8eSopenharmony_ci     *
195061847f8eSopenharmony_ci     * @param { string } field - Indicates the column name in the database table.
195161847f8eSopenharmony_ci     * @param { ValueType } value - Indicates the value to match with the {@link RdbPredicates}.
195261847f8eSopenharmony_ci     * @returns { RdbPredicates } - The SQL query statement with the specified {@link RdbPredicates}.
195361847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
195461847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
195561847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
195661847f8eSopenharmony_ci     * @since 9
195761847f8eSopenharmony_ci     */
195861847f8eSopenharmony_ci    /**
195961847f8eSopenharmony_ci     * Restricts the value of the field to be smaller than or equal to the specified value.
196061847f8eSopenharmony_ci     *
196161847f8eSopenharmony_ci     * @param { string } field - Indicates the column name in the database table.
196261847f8eSopenharmony_ci     * @param { ValueType } value - Indicates the value to match with the {@link RdbPredicates}.
196361847f8eSopenharmony_ci     * @returns { RdbPredicates } - The SQL query statement with the specified {@link RdbPredicates}.
196461847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
196561847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
196661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
196761847f8eSopenharmony_ci     * @crossplatform
196861847f8eSopenharmony_ci     * @since 10
196961847f8eSopenharmony_ci     */
197061847f8eSopenharmony_ci    lessThanOrEqualTo(field: string, value: ValueType): RdbPredicates;
197161847f8eSopenharmony_ci
197261847f8eSopenharmony_ci    /**
197361847f8eSopenharmony_ci     * Restricts the ascending order of the return list. When there are several orders,
197461847f8eSopenharmony_ci     * the one close to the head has the highest priority.
197561847f8eSopenharmony_ci     *
197661847f8eSopenharmony_ci     * @param { string } field - Indicates the column name for sorting the return list.
197761847f8eSopenharmony_ci     * @returns { RdbPredicates } - The SQL query statement with the specified {@link RdbPredicates}.
197861847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
197961847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
198061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
198161847f8eSopenharmony_ci     * @since 9
198261847f8eSopenharmony_ci     */
198361847f8eSopenharmony_ci    /**
198461847f8eSopenharmony_ci     * Restricts the ascending order of the return list. When there are several orders,
198561847f8eSopenharmony_ci     * the one close to the head has the highest priority.
198661847f8eSopenharmony_ci     *
198761847f8eSopenharmony_ci     * @param { string } field - Indicates the column name for sorting the return list.
198861847f8eSopenharmony_ci     * @returns { RdbPredicates } - The SQL query statement with the specified {@link RdbPredicates}.
198961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
199061847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
199161847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
199261847f8eSopenharmony_ci     * @crossplatform
199361847f8eSopenharmony_ci     * @since 10
199461847f8eSopenharmony_ci     */
199561847f8eSopenharmony_ci    orderByAsc(field: string): RdbPredicates;
199661847f8eSopenharmony_ci
199761847f8eSopenharmony_ci    /**
199861847f8eSopenharmony_ci     * Restricts the descending order of the return list. When there are several orders,
199961847f8eSopenharmony_ci     * the one close to the head has the highest priority.
200061847f8eSopenharmony_ci     *
200161847f8eSopenharmony_ci     * @param { string } field - Indicates the column name for sorting the return list.
200261847f8eSopenharmony_ci     * @returns { RdbPredicates } - The SQL query statement with the specified {@link RdbPredicates}.
200361847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
200461847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
200561847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
200661847f8eSopenharmony_ci     * @since 9
200761847f8eSopenharmony_ci     */
200861847f8eSopenharmony_ci    /**
200961847f8eSopenharmony_ci     * Restricts the descending order of the return list. When there are several orders,
201061847f8eSopenharmony_ci     * the one close to the head has the highest priority.
201161847f8eSopenharmony_ci     *
201261847f8eSopenharmony_ci     * @param { string } field - Indicates the column name for sorting the return list.
201361847f8eSopenharmony_ci     * @returns { RdbPredicates } - The SQL query statement with the specified {@link RdbPredicates}.
201461847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
201561847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
201661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
201761847f8eSopenharmony_ci     * @crossplatform
201861847f8eSopenharmony_ci     * @since 10
201961847f8eSopenharmony_ci     */
202061847f8eSopenharmony_ci    orderByDesc(field: string): RdbPredicates;
202161847f8eSopenharmony_ci
202261847f8eSopenharmony_ci    /**
202361847f8eSopenharmony_ci     * Restricts each row of the query result to be unique.
202461847f8eSopenharmony_ci     *
202561847f8eSopenharmony_ci     * @returns { RdbPredicates } - The SQL query statement with the specified {@link RdbPredicates}.
202661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
202761847f8eSopenharmony_ci     * @since 9
202861847f8eSopenharmony_ci     */
202961847f8eSopenharmony_ci    /**
203061847f8eSopenharmony_ci     * Restricts each row of the query result to be unique.
203161847f8eSopenharmony_ci     *
203261847f8eSopenharmony_ci     * @returns { RdbPredicates } - The SQL query statement with the specified {@link RdbPredicates}.
203361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
203461847f8eSopenharmony_ci     * @crossplatform
203561847f8eSopenharmony_ci     * @since 10
203661847f8eSopenharmony_ci     */
203761847f8eSopenharmony_ci    distinct(): RdbPredicates;
203861847f8eSopenharmony_ci
203961847f8eSopenharmony_ci    /**
204061847f8eSopenharmony_ci     * Restricts the max number of return records.
204161847f8eSopenharmony_ci     *
204261847f8eSopenharmony_ci     * @param { number } value - Indicates the max length of the return list.
204361847f8eSopenharmony_ci     * @returns { RdbPredicates } - The SQL query statement with the specified {@link RdbPredicates}.
204461847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
204561847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
204661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
204761847f8eSopenharmony_ci     * @since 9
204861847f8eSopenharmony_ci     */
204961847f8eSopenharmony_ci    /**
205061847f8eSopenharmony_ci     * Restricts the max number of return records.
205161847f8eSopenharmony_ci     *
205261847f8eSopenharmony_ci     * @param { number } value - Indicates the max length of the return list.
205361847f8eSopenharmony_ci     * @returns { RdbPredicates } - The SQL query statement with the specified {@link RdbPredicates}.
205461847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
205561847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
205661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
205761847f8eSopenharmony_ci     * @crossplatform
205861847f8eSopenharmony_ci     * @since 10
205961847f8eSopenharmony_ci     */
206061847f8eSopenharmony_ci    limitAs(value: number): RdbPredicates;
206161847f8eSopenharmony_ci
206261847f8eSopenharmony_ci    /**
206361847f8eSopenharmony_ci     * Configure RdbPredicates to specify the start position of the returned result.
206461847f8eSopenharmony_ci     * Use this method together with limit(number).
206561847f8eSopenharmony_ci     *
206661847f8eSopenharmony_ci     * @param { number } rowOffset - Indicates the start position of the returned result. The value is a positive integer.
206761847f8eSopenharmony_ci     * @returns { RdbPredicates } - The SQL query statement with the specified {@link RdbPredicates}.
206861847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
206961847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
207061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
207161847f8eSopenharmony_ci     * @since 9
207261847f8eSopenharmony_ci     */
207361847f8eSopenharmony_ci    /**
207461847f8eSopenharmony_ci     * Configure RdbPredicates to specify the start position of the returned result.
207561847f8eSopenharmony_ci     * Use this method together with limit(number).
207661847f8eSopenharmony_ci     *
207761847f8eSopenharmony_ci     * @param { number } rowOffset - Indicates the start position of the returned result. The value is a positive integer.
207861847f8eSopenharmony_ci     * @returns { RdbPredicates } - The SQL query statement with the specified {@link RdbPredicates}.
207961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
208061847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
208161847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
208261847f8eSopenharmony_ci     * @crossplatform
208361847f8eSopenharmony_ci     * @since 10
208461847f8eSopenharmony_ci     */
208561847f8eSopenharmony_ci    offsetAs(rowOffset: number): RdbPredicates;
208661847f8eSopenharmony_ci
208761847f8eSopenharmony_ci    /**
208861847f8eSopenharmony_ci     * Configure RdbPredicates to group query results by specified columns.
208961847f8eSopenharmony_ci     *
209061847f8eSopenharmony_ci     * @param { Array<string> } fields - Indicates the specified columns by which query results are grouped.
209161847f8eSopenharmony_ci     * @returns { RdbPredicates } - The SQL query statement with the specified {@link RdbPredicates}.
209261847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
209361847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
209461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
209561847f8eSopenharmony_ci     * @since 9
209661847f8eSopenharmony_ci     */
209761847f8eSopenharmony_ci    /**
209861847f8eSopenharmony_ci     * Configure RdbPredicates to group query results by specified columns.
209961847f8eSopenharmony_ci     *
210061847f8eSopenharmony_ci     * @param { Array<string> } fields - Indicates the specified columns by which query results are grouped.
210161847f8eSopenharmony_ci     * @returns { RdbPredicates } - The SQL query statement with the specified {@link RdbPredicates}.
210261847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
210361847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
210461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
210561847f8eSopenharmony_ci     * @crossplatform
210661847f8eSopenharmony_ci     * @since 10
210761847f8eSopenharmony_ci     */
210861847f8eSopenharmony_ci    groupBy(fields: Array<string>): RdbPredicates;
210961847f8eSopenharmony_ci
211061847f8eSopenharmony_ci    /**
211161847f8eSopenharmony_ci     * Configure RdbPredicates to specify the index column.
211261847f8eSopenharmony_ci     * Before using this method, you need to create an index column.
211361847f8eSopenharmony_ci     *
211461847f8eSopenharmony_ci     * @param { string } field - Indicates the name of the index column.
211561847f8eSopenharmony_ci     * @returns { RdbPredicates } - The SQL statement with the specified {@link RdbPredicates}.
211661847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
211761847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
211861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
211961847f8eSopenharmony_ci     * @since 9
212061847f8eSopenharmony_ci     */
212161847f8eSopenharmony_ci    /**
212261847f8eSopenharmony_ci     * Configure RdbPredicates to specify the index column.
212361847f8eSopenharmony_ci     * Before using this method, you need to create an index column.
212461847f8eSopenharmony_ci     *
212561847f8eSopenharmony_ci     * @param { string } field - Indicates the name of the index column.
212661847f8eSopenharmony_ci     * @returns { RdbPredicates } - The SQL statement with the specified {@link RdbPredicates}.
212761847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
212861847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
212961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
213061847f8eSopenharmony_ci     * @crossplatform
213161847f8eSopenharmony_ci     * @since 10
213261847f8eSopenharmony_ci     */
213361847f8eSopenharmony_ci    indexedBy(field: string): RdbPredicates;
213461847f8eSopenharmony_ci
213561847f8eSopenharmony_ci    /**
213661847f8eSopenharmony_ci     * Configure RdbPredicates to match the specified field whose data type is ValueType array and values
213761847f8eSopenharmony_ci     * are within a given range.
213861847f8eSopenharmony_ci     *
213961847f8eSopenharmony_ci     * @param { string } field - Indicates the column name in the database table.
214061847f8eSopenharmony_ci     * @param { Array<ValueType> } value - Indicates the values to match with {@link RdbPredicates}.
214161847f8eSopenharmony_ci     * @returns { RdbPredicates } - The SQL statement with the specified {@link RdbPredicates}.
214261847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
214361847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
214461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
214561847f8eSopenharmony_ci     * @since 9
214661847f8eSopenharmony_ci     */
214761847f8eSopenharmony_ci    /**
214861847f8eSopenharmony_ci     * Configure RdbPredicates to match the specified field whose data type is ValueType array and values
214961847f8eSopenharmony_ci     * are within a given range.
215061847f8eSopenharmony_ci     *
215161847f8eSopenharmony_ci     * @param { string } field - Indicates the column name in the database table.
215261847f8eSopenharmony_ci     * @param { Array<ValueType> } value - Indicates the values to match with {@link RdbPredicates}.
215361847f8eSopenharmony_ci     * @returns { RdbPredicates } - The SQL statement with the specified {@link RdbPredicates}.
215461847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
215561847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
215661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
215761847f8eSopenharmony_ci     * @crossplatform
215861847f8eSopenharmony_ci     * @since 10
215961847f8eSopenharmony_ci     */
216061847f8eSopenharmony_ci    in(field: string, value: Array<ValueType>): RdbPredicates;
216161847f8eSopenharmony_ci
216261847f8eSopenharmony_ci    /**
216361847f8eSopenharmony_ci     * Configure RdbPredicates to match the specified field whose data type is ValueType array and values
216461847f8eSopenharmony_ci     * are out of a given range.
216561847f8eSopenharmony_ci     *
216661847f8eSopenharmony_ci     * @param { string } field - Indicates the column name in the database table.
216761847f8eSopenharmony_ci     * @param { Array<ValueType> } value - Indicates the values to match with {@link RdbPredicates}.
216861847f8eSopenharmony_ci     * @returns { RdbPredicates } - The SQL statement with the specified {@link RdbPredicates}.
216961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
217061847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
217161847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
217261847f8eSopenharmony_ci     * @since 9
217361847f8eSopenharmony_ci     */
217461847f8eSopenharmony_ci    /**
217561847f8eSopenharmony_ci     * Configure RdbPredicates to match the specified field whose data type is ValueType array and values
217661847f8eSopenharmony_ci     * are out of a given range.
217761847f8eSopenharmony_ci     *
217861847f8eSopenharmony_ci     * @param { string } field - Indicates the column name in the database table.
217961847f8eSopenharmony_ci     * @param { Array<ValueType> } value - Indicates the values to match with {@link RdbPredicates}.
218061847f8eSopenharmony_ci     * @returns { RdbPredicates } - The SQL statement with the specified {@link RdbPredicates}.
218161847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
218261847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
218361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
218461847f8eSopenharmony_ci     * @crossplatform
218561847f8eSopenharmony_ci     * @since 10
218661847f8eSopenharmony_ci     */
218761847f8eSopenharmony_ci    notIn(field: string, value: Array<ValueType>): RdbPredicates;
218861847f8eSopenharmony_ci
218961847f8eSopenharmony_ci    /**
219061847f8eSopenharmony_ci     * Sets the RdbPredicates to match the field whose data type is string and value
219161847f8eSopenharmony_ci     * does not contain the specified value.
219261847f8eSopenharmony_ci     * This method is similar to "Not like %value%" of the SQL statement.
219361847f8eSopenharmony_ci     *
219461847f8eSopenharmony_ci     * @param { string } field - Indicates the column name in the database table.
219561847f8eSopenharmony_ci     * @param { string } value - Indicates the value that is not contained.
219661847f8eSopenharmony_ci     * @returns { RdbPredicates } - The {@Link RdbPredicates} set.
219761847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
219861847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
219961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
220061847f8eSopenharmony_ci     * @since 12
220161847f8eSopenharmony_ci     */
220261847f8eSopenharmony_ci    notContains(field: string, value: string): RdbPredicates;
220361847f8eSopenharmony_ci
220461847f8eSopenharmony_ci    /**
220561847f8eSopenharmony_ci     * Sets the RdbPredicates to match the field whose data type is string and value
220661847f8eSopenharmony_ci     * is not like the specified value.
220761847f8eSopenharmony_ci     * This method is similar to "Not like" of the SQL statement.
220861847f8eSopenharmony_ci     *
220961847f8eSopenharmony_ci     * @param { string } field - Indicates the column name in the database table.
221061847f8eSopenharmony_ci     * @param { string } value - Indicates the value to compare against.
221161847f8eSopenharmony_ci     * @returns { RdbPredicates } - The {@Link RdbPredicates} set.
221261847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
221361847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
221461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
221561847f8eSopenharmony_ci     * @since 12
221661847f8eSopenharmony_ci     */
221761847f8eSopenharmony_ci    notLike(field: string, value: string): RdbPredicates;
221861847f8eSopenharmony_ci  }
221961847f8eSopenharmony_ci
222061847f8eSopenharmony_ci  /**
222161847f8eSopenharmony_ci   * Provides methods for accessing a database result set generated by querying the database.
222261847f8eSopenharmony_ci   *
222361847f8eSopenharmony_ci   * @interface ResultSet
222461847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
222561847f8eSopenharmony_ci   * @since 9
222661847f8eSopenharmony_ci   */
222761847f8eSopenharmony_ci  /**
222861847f8eSopenharmony_ci   * Provides methods for accessing a database result set generated by querying the database.
222961847f8eSopenharmony_ci   *
223061847f8eSopenharmony_ci   * @interface ResultSet
223161847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
223261847f8eSopenharmony_ci   * @crossplatform
223361847f8eSopenharmony_ci   * @since 10
223461847f8eSopenharmony_ci   */
223561847f8eSopenharmony_ci  interface ResultSet {
223661847f8eSopenharmony_ci    /**
223761847f8eSopenharmony_ci     * Obtains the names of all columns in a result set.
223861847f8eSopenharmony_ci     * The column names are returned as a string array, in which the strings are in the same order
223961847f8eSopenharmony_ci     * as the columns in the result set.
224061847f8eSopenharmony_ci     *
224161847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
224261847f8eSopenharmony_ci     * @since 9
224361847f8eSopenharmony_ci     */
224461847f8eSopenharmony_ci    /**
224561847f8eSopenharmony_ci     * Obtains the names of all columns in a result set.
224661847f8eSopenharmony_ci     * The column names are returned as a string array, in which the strings are in the same order
224761847f8eSopenharmony_ci     * as the columns in the result set.
224861847f8eSopenharmony_ci     *
224961847f8eSopenharmony_ci     * @type { Array<string> }
225061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
225161847f8eSopenharmony_ci     * @crossplatform
225261847f8eSopenharmony_ci     * @since 10
225361847f8eSopenharmony_ci     */
225461847f8eSopenharmony_ci    columnNames: Array<string>;
225561847f8eSopenharmony_ci
225661847f8eSopenharmony_ci    /**
225761847f8eSopenharmony_ci     * Obtains the number of columns in the result set.
225861847f8eSopenharmony_ci     * The returned number is equal to the length of the string array returned by the
225961847f8eSopenharmony_ci     * columnNames method.
226061847f8eSopenharmony_ci     *
226161847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
226261847f8eSopenharmony_ci     * @since 9
226361847f8eSopenharmony_ci     */
226461847f8eSopenharmony_ci    /**
226561847f8eSopenharmony_ci     * Obtains the number of columns in the result set.
226661847f8eSopenharmony_ci     * The returned number is equal to the length of the string array returned by the
226761847f8eSopenharmony_ci     * columnNames method.
226861847f8eSopenharmony_ci     *
226961847f8eSopenharmony_ci     * @type { number }
227061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
227161847f8eSopenharmony_ci     * @crossplatform
227261847f8eSopenharmony_ci     * @since 10
227361847f8eSopenharmony_ci     */
227461847f8eSopenharmony_ci    columnCount: number;
227561847f8eSopenharmony_ci
227661847f8eSopenharmony_ci    /**
227761847f8eSopenharmony_ci     * Obtains the number of rows in the result set.
227861847f8eSopenharmony_ci     *
227961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
228061847f8eSopenharmony_ci     * @since 9
228161847f8eSopenharmony_ci     */
228261847f8eSopenharmony_ci    /**
228361847f8eSopenharmony_ci     * Obtains the number of rows in the result set.
228461847f8eSopenharmony_ci     *
228561847f8eSopenharmony_ci     * @type { number }
228661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
228761847f8eSopenharmony_ci     * @crossplatform
228861847f8eSopenharmony_ci     * @since 10
228961847f8eSopenharmony_ci     */
229061847f8eSopenharmony_ci    rowCount: number;
229161847f8eSopenharmony_ci
229261847f8eSopenharmony_ci    /**
229361847f8eSopenharmony_ci     * Obtains the current index of the result set.
229461847f8eSopenharmony_ci     * The result set index starts from 0.
229561847f8eSopenharmony_ci     *
229661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
229761847f8eSopenharmony_ci     * @since 9
229861847f8eSopenharmony_ci     */
229961847f8eSopenharmony_ci    /**
230061847f8eSopenharmony_ci     * Obtains the current index of the result set.
230161847f8eSopenharmony_ci     * The result set index starts from 0.
230261847f8eSopenharmony_ci     *
230361847f8eSopenharmony_ci     * @type { number }
230461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
230561847f8eSopenharmony_ci     * @crossplatform
230661847f8eSopenharmony_ci     * @since 10
230761847f8eSopenharmony_ci     */
230861847f8eSopenharmony_ci    rowIndex: number;
230961847f8eSopenharmony_ci
231061847f8eSopenharmony_ci    /**
231161847f8eSopenharmony_ci     * Checks whether the cursor is positioned at the first row.
231261847f8eSopenharmony_ci     *
231361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
231461847f8eSopenharmony_ci     * @since 9
231561847f8eSopenharmony_ci     */
231661847f8eSopenharmony_ci    /**
231761847f8eSopenharmony_ci     * Checks whether the cursor is positioned at the first row.
231861847f8eSopenharmony_ci     *
231961847f8eSopenharmony_ci     * @type { boolean }
232061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
232161847f8eSopenharmony_ci     * @crossplatform
232261847f8eSopenharmony_ci     * @since 10
232361847f8eSopenharmony_ci     */
232461847f8eSopenharmony_ci    isAtFirstRow: boolean;
232561847f8eSopenharmony_ci
232661847f8eSopenharmony_ci    /**
232761847f8eSopenharmony_ci     * Checks whether the cursor is positioned at the last row.
232861847f8eSopenharmony_ci     *
232961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
233061847f8eSopenharmony_ci     * @since 9
233161847f8eSopenharmony_ci     */
233261847f8eSopenharmony_ci    /**
233361847f8eSopenharmony_ci     * Checks whether the cursor is positioned at the last row.
233461847f8eSopenharmony_ci     *
233561847f8eSopenharmony_ci     * @type { boolean }
233661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
233761847f8eSopenharmony_ci     * @crossplatform
233861847f8eSopenharmony_ci     * @since 10
233961847f8eSopenharmony_ci     */
234061847f8eSopenharmony_ci    isAtLastRow: boolean;
234161847f8eSopenharmony_ci
234261847f8eSopenharmony_ci    /**
234361847f8eSopenharmony_ci     * Checks whether the cursor is positioned after the last row.
234461847f8eSopenharmony_ci     *
234561847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
234661847f8eSopenharmony_ci     * @since 9
234761847f8eSopenharmony_ci     */
234861847f8eSopenharmony_ci    /**
234961847f8eSopenharmony_ci     * Checks whether the cursor is positioned after the last row.
235061847f8eSopenharmony_ci     *
235161847f8eSopenharmony_ci     * @type { boolean }
235261847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
235361847f8eSopenharmony_ci     * @crossplatform
235461847f8eSopenharmony_ci     * @since 10
235561847f8eSopenharmony_ci     */
235661847f8eSopenharmony_ci    isEnded: boolean;
235761847f8eSopenharmony_ci
235861847f8eSopenharmony_ci    /**
235961847f8eSopenharmony_ci     * Checks whether the cursor is positioned before the first row.
236061847f8eSopenharmony_ci     *
236161847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
236261847f8eSopenharmony_ci     * @since 9
236361847f8eSopenharmony_ci     */
236461847f8eSopenharmony_ci    /**
236561847f8eSopenharmony_ci     * Checks whether the cursor is positioned before the first row.
236661847f8eSopenharmony_ci     *
236761847f8eSopenharmony_ci     * @type { boolean }
236861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
236961847f8eSopenharmony_ci     * @crossplatform
237061847f8eSopenharmony_ci     * @since 10
237161847f8eSopenharmony_ci     */
237261847f8eSopenharmony_ci    isStarted: boolean;
237361847f8eSopenharmony_ci
237461847f8eSopenharmony_ci    /**
237561847f8eSopenharmony_ci     * Checks whether the current result set is closed.
237661847f8eSopenharmony_ci     * If the result set is closed by calling the close method, true will be returned.
237761847f8eSopenharmony_ci     *
237861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
237961847f8eSopenharmony_ci     * @since 9
238061847f8eSopenharmony_ci     */
238161847f8eSopenharmony_ci    /**
238261847f8eSopenharmony_ci     * Checks whether the current result set is closed.
238361847f8eSopenharmony_ci     * If the result set is closed by calling the close method, true will be returned.
238461847f8eSopenharmony_ci     *
238561847f8eSopenharmony_ci     * @type { boolean }
238661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
238761847f8eSopenharmony_ci     * @crossplatform
238861847f8eSopenharmony_ci     * @since 10
238961847f8eSopenharmony_ci     */
239061847f8eSopenharmony_ci    isClosed: boolean;
239161847f8eSopenharmony_ci
239261847f8eSopenharmony_ci    /**
239361847f8eSopenharmony_ci     * Obtains the column index based on the specified column name.
239461847f8eSopenharmony_ci     * The column name is passed as an input parameter.
239561847f8eSopenharmony_ci     *
239661847f8eSopenharmony_ci     * @param { string } columnName - Indicates the name of the specified column in the result set.
239761847f8eSopenharmony_ci     * @returns { number } The index of the specified column.
239861847f8eSopenharmony_ci     * @throws { BusinessError } 14800013 - The column value is null or the column type is incompatible.
239961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
240061847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
240161847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
240261847f8eSopenharmony_ci     * @since 9
240361847f8eSopenharmony_ci     */
240461847f8eSopenharmony_ci    /**
240561847f8eSopenharmony_ci     * Obtains the column index based on the specified column name.
240661847f8eSopenharmony_ci     * The column name is passed as an input parameter.
240761847f8eSopenharmony_ci     *
240861847f8eSopenharmony_ci     * @param { string } columnName - Indicates the name of the specified column in the result set.
240961847f8eSopenharmony_ci     * @returns { number } The index of the specified column.
241061847f8eSopenharmony_ci     * @throws { BusinessError } 14800013 - The column value is null or the column type is incompatible.
241161847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
241261847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
241361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
241461847f8eSopenharmony_ci     * @crossplatform
241561847f8eSopenharmony_ci     * @since 10
241661847f8eSopenharmony_ci     */
241761847f8eSopenharmony_ci    /**
241861847f8eSopenharmony_ci     * Obtains the column index based on the specified column name.
241961847f8eSopenharmony_ci     * The column name is passed as an input parameter.
242061847f8eSopenharmony_ci     *
242161847f8eSopenharmony_ci     * @param { string } columnName - Indicates the name of the specified column in the result set.
242261847f8eSopenharmony_ci     * @returns { number } The index of the specified column.
242361847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
242461847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
242561847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
242661847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
242761847f8eSopenharmony_ci     * @throws { BusinessError } 14800013 - Column out of bounds.
242861847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
242961847f8eSopenharmony_ci     * @throws { BusinessError } 14800019 - The SQL must be a query statement.
243061847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
243161847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
243261847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
243361847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
243461847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
243561847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
243661847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
243761847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
243861847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
243961847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
244061847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
244161847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
244261847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
244361847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
244461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
244561847f8eSopenharmony_ci     * @crossplatform
244661847f8eSopenharmony_ci     * @since 12
244761847f8eSopenharmony_ci     */
244861847f8eSopenharmony_ci    getColumnIndex(columnName: string): number;
244961847f8eSopenharmony_ci
245061847f8eSopenharmony_ci    /**
245161847f8eSopenharmony_ci     * Obtains the column name based on the specified column index.
245261847f8eSopenharmony_ci     * The column index is passed as an input parameter.
245361847f8eSopenharmony_ci     *
245461847f8eSopenharmony_ci     * @param { number } columnIndex - Indicates the index of the specified column in the result set.
245561847f8eSopenharmony_ci     * @returns { string } The name of the specified column.
245661847f8eSopenharmony_ci     * @throws { BusinessError } 14800013 - The column value is null or the column type is incompatible.
245761847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
245861847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
245961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
246061847f8eSopenharmony_ci     * @since 9
246161847f8eSopenharmony_ci     */
246261847f8eSopenharmony_ci    /**
246361847f8eSopenharmony_ci     * Obtains the column name based on the specified column index.
246461847f8eSopenharmony_ci     * The column index is passed as an input parameter.
246561847f8eSopenharmony_ci     *
246661847f8eSopenharmony_ci     * @param { number } columnIndex - Indicates the index of the specified column in the result set.
246761847f8eSopenharmony_ci     * @returns { string } The name of the specified column.
246861847f8eSopenharmony_ci     * @throws { BusinessError } 14800013 - The column value is null or the column type is incompatible.
246961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
247061847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
247161847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
247261847f8eSopenharmony_ci     * @crossplatform
247361847f8eSopenharmony_ci     * @since 10
247461847f8eSopenharmony_ci     */
247561847f8eSopenharmony_ci    /**
247661847f8eSopenharmony_ci     * Obtains the column name based on the specified column index.
247761847f8eSopenharmony_ci     * The column index is passed as an input parameter.
247861847f8eSopenharmony_ci     *
247961847f8eSopenharmony_ci     * @param { number } columnIndex - Indicates the index of the specified column in the result set.
248061847f8eSopenharmony_ci     * @returns { string } The name of the specified column.
248161847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
248261847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
248361847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
248461847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
248561847f8eSopenharmony_ci     * @throws { BusinessError } 14800013 - Column out of bounds.
248661847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
248761847f8eSopenharmony_ci     * @throws { BusinessError } 14800019 - The SQL must be a query statement.
248861847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
248961847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
249061847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
249161847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
249261847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
249361847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
249461847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
249561847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
249661847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
249761847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
249861847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
249961847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
250061847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
250161847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
250261847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
250361847f8eSopenharmony_ci     * @crossplatform
250461847f8eSopenharmony_ci     * @since 12
250561847f8eSopenharmony_ci     */
250661847f8eSopenharmony_ci    getColumnName(columnIndex: number): string;
250761847f8eSopenharmony_ci
250861847f8eSopenharmony_ci    /**
250961847f8eSopenharmony_ci     * Go to the specified row of the result set forwards or backwards by an offset relative to its current position.
251061847f8eSopenharmony_ci     * A positive offset indicates moving backwards, and a negative offset indicates moving forwards.
251161847f8eSopenharmony_ci     *
251261847f8eSopenharmony_ci     * @param { number } offset - Indicates the offset relative to the current position.
251361847f8eSopenharmony_ci     * @returns { boolean } True if the result set is moved successfully and does not go beyond the range;
251461847f8eSopenharmony_ci     *                   Returns false otherwise.
251561847f8eSopenharmony_ci     * @throws { BusinessError } 14800012 - The result set is empty or the specified location is invalid.
251661847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
251761847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
251861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
251961847f8eSopenharmony_ci     * @since 9
252061847f8eSopenharmony_ci     */
252161847f8eSopenharmony_ci    /**
252261847f8eSopenharmony_ci     * Go to the specified row of the result set forwards or backwards by an offset relative to its current position.
252361847f8eSopenharmony_ci     * A positive offset indicates moving backwards, and a negative offset indicates moving forwards.
252461847f8eSopenharmony_ci     *
252561847f8eSopenharmony_ci     * @param { number } offset - Indicates the offset relative to the current position.
252661847f8eSopenharmony_ci     * @returns { boolean } True if the result set is moved successfully and does not go beyond the range;
252761847f8eSopenharmony_ci     *                   Returns false otherwise.
252861847f8eSopenharmony_ci     * @throws { BusinessError } 14800012 - The result set is empty or the specified location is invalid.
252961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
253061847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
253161847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
253261847f8eSopenharmony_ci     * @crossplatform
253361847f8eSopenharmony_ci     * @since 10
253461847f8eSopenharmony_ci     */
253561847f8eSopenharmony_ci    /**
253661847f8eSopenharmony_ci     * Go to the specified row of the result set forwards or backwards by an offset relative to its current position.
253761847f8eSopenharmony_ci     * A positive offset indicates moving backwards, and a negative offset indicates moving forwards.
253861847f8eSopenharmony_ci     *
253961847f8eSopenharmony_ci     * @param { number } offset - Indicates the offset relative to the current position.
254061847f8eSopenharmony_ci     * @returns { boolean } True if the result set is moved successfully and does not go beyond the range;
254161847f8eSopenharmony_ci     *                   Returns false otherwise.
254261847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
254361847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
254461847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
254561847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
254661847f8eSopenharmony_ci     * @throws { BusinessError } 14800012 - Row out of bounds.
254761847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
254861847f8eSopenharmony_ci     * @throws { BusinessError } 14800019 - The SQL must be a query statement.
254961847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
255061847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
255161847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
255261847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
255361847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
255461847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
255561847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
255661847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
255761847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
255861847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
255961847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
256061847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
256161847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
256261847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
256361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
256461847f8eSopenharmony_ci     * @crossplatform
256561847f8eSopenharmony_ci     * @since 12
256661847f8eSopenharmony_ci     */
256761847f8eSopenharmony_ci    goTo(offset: number): boolean;
256861847f8eSopenharmony_ci
256961847f8eSopenharmony_ci    /**
257061847f8eSopenharmony_ci     * Go to the specified row of the result set.
257161847f8eSopenharmony_ci     *
257261847f8eSopenharmony_ci     * @param { number } position - Indicates the index of the specified row, which starts from 0.
257361847f8eSopenharmony_ci     * @returns { boolean } True if the result set is moved successfully; Returns false otherwise.
257461847f8eSopenharmony_ci     * @throws { BusinessError } 14800012 - The result set is empty or the specified location is invalid.
257561847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
257661847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
257761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
257861847f8eSopenharmony_ci     * @since 9
257961847f8eSopenharmony_ci     */
258061847f8eSopenharmony_ci    /**
258161847f8eSopenharmony_ci     * Go to the specified row of the result set.
258261847f8eSopenharmony_ci     *
258361847f8eSopenharmony_ci     * @param { number } position - Indicates the index of the specified row, which starts from 0.
258461847f8eSopenharmony_ci     * @returns { boolean } True if the result set is moved successfully; Returns false otherwise.
258561847f8eSopenharmony_ci     * @throws { BusinessError } 14800012 - The result set is empty or the specified location is invalid.
258661847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
258761847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
258861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
258961847f8eSopenharmony_ci     * @crossplatform
259061847f8eSopenharmony_ci     * @since 10
259161847f8eSopenharmony_ci     */
259261847f8eSopenharmony_ci    /**
259361847f8eSopenharmony_ci     * Go to the specified row of the result set.
259461847f8eSopenharmony_ci     *
259561847f8eSopenharmony_ci     * @param { number } position - Indicates the index of the specified row, which starts from 0.
259661847f8eSopenharmony_ci     * @returns { boolean } True if the result set is moved successfully; Returns false otherwise.
259761847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
259861847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
259961847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
260061847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
260161847f8eSopenharmony_ci     * @throws { BusinessError } 14800012 - Row out of bounds.
260261847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
260361847f8eSopenharmony_ci     * @throws { BusinessError } 14800019 - The SQL must be a query statement.
260461847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
260561847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
260661847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
260761847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
260861847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
260961847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
261061847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
261161847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
261261847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
261361847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
261461847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
261561847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
261661847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
261761847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
261861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
261961847f8eSopenharmony_ci     * @crossplatform
262061847f8eSopenharmony_ci     * @since 12
262161847f8eSopenharmony_ci     */
262261847f8eSopenharmony_ci    goToRow(position: number): boolean;
262361847f8eSopenharmony_ci
262461847f8eSopenharmony_ci    /**
262561847f8eSopenharmony_ci     * Go to the first row of the result set.
262661847f8eSopenharmony_ci     *
262761847f8eSopenharmony_ci     * @returns { boolean } True if the result set is moved successfully;
262861847f8eSopenharmony_ci     *                    Returns false otherwise, for example, if the result set is empty.
262961847f8eSopenharmony_ci     * @throws { BusinessError } 14800012 - The result set is empty or the specified location is invalid.
263061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
263161847f8eSopenharmony_ci     * @since 9
263261847f8eSopenharmony_ci     */
263361847f8eSopenharmony_ci    /**
263461847f8eSopenharmony_ci     * Go to the first row of the result set.
263561847f8eSopenharmony_ci     *
263661847f8eSopenharmony_ci     * @returns { boolean } True if the result set is moved successfully;
263761847f8eSopenharmony_ci     *                    Returns false otherwise, for example, if the result set is empty.
263861847f8eSopenharmony_ci     * @throws { BusinessError } 14800012 - The result set is empty or the specified location is invalid.
263961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
264061847f8eSopenharmony_ci     * @crossplatform
264161847f8eSopenharmony_ci     * @since 10
264261847f8eSopenharmony_ci     */
264361847f8eSopenharmony_ci    /**
264461847f8eSopenharmony_ci     * Go to the first row of the result set.
264561847f8eSopenharmony_ci     *
264661847f8eSopenharmony_ci     * @returns { boolean } True if the result set is moved successfully;
264761847f8eSopenharmony_ci     *                    Returns false otherwise, for example, if the result set is empty.
264861847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
264961847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
265061847f8eSopenharmony_ci     * @throws { BusinessError } 14800012 - Row out of bounds.
265161847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
265261847f8eSopenharmony_ci     * @throws { BusinessError } 14800019 - The SQL must be a query statement.
265361847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
265461847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
265561847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
265661847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
265761847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
265861847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
265961847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
266061847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
266161847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
266261847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
266361847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
266461847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
266561847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
266661847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
266761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
266861847f8eSopenharmony_ci     * @crossplatform
266961847f8eSopenharmony_ci     * @since 12
267061847f8eSopenharmony_ci     */
267161847f8eSopenharmony_ci    goToFirstRow(): boolean;
267261847f8eSopenharmony_ci
267361847f8eSopenharmony_ci    /**
267461847f8eSopenharmony_ci     * Go to the last row of the result set.
267561847f8eSopenharmony_ci     *
267661847f8eSopenharmony_ci     * @returns { boolean } True if the result set is moved successfully;
267761847f8eSopenharmony_ci     *                    Returns false otherwise, for example, if the result set is empty.
267861847f8eSopenharmony_ci     * @throws { BusinessError } 14800012 - The result set is empty or the specified location is invalid.
267961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
268061847f8eSopenharmony_ci     * @since 9
268161847f8eSopenharmony_ci     */
268261847f8eSopenharmony_ci    /**
268361847f8eSopenharmony_ci     * Go to the last row of the result set.
268461847f8eSopenharmony_ci     *
268561847f8eSopenharmony_ci     * @returns { boolean } True if the result set is moved successfully;
268661847f8eSopenharmony_ci     *                    Returns false otherwise, for example, if the result set is empty.
268761847f8eSopenharmony_ci     * @throws { BusinessError } 14800012 - The result set is empty or the specified location is invalid.
268861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
268961847f8eSopenharmony_ci     * @crossplatform
269061847f8eSopenharmony_ci     * @since 10
269161847f8eSopenharmony_ci     */
269261847f8eSopenharmony_ci    /**
269361847f8eSopenharmony_ci     * Go to the last row of the result set.
269461847f8eSopenharmony_ci     *
269561847f8eSopenharmony_ci     * @returns { boolean } True if the result set is moved successfully;
269661847f8eSopenharmony_ci     *                    Returns false otherwise, for example, if the result set is empty.
269761847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
269861847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
269961847f8eSopenharmony_ci     * @throws { BusinessError } 14800012 - Row out of bounds.
270061847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
270161847f8eSopenharmony_ci     * @throws { BusinessError } 14800019 - The SQL must be a query statement.
270261847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
270361847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
270461847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
270561847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
270661847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
270761847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
270861847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
270961847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
271061847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
271161847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
271261847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
271361847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
271461847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
271561847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
271661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
271761847f8eSopenharmony_ci     * @crossplatform
271861847f8eSopenharmony_ci     * @since 12
271961847f8eSopenharmony_ci     */
272061847f8eSopenharmony_ci    goToLastRow(): boolean;
272161847f8eSopenharmony_ci
272261847f8eSopenharmony_ci    /**
272361847f8eSopenharmony_ci     * Go to the next row of the result set.
272461847f8eSopenharmony_ci     *
272561847f8eSopenharmony_ci     * @returns { boolean } True if the result set is moved successfully;
272661847f8eSopenharmony_ci     *                    Returns false otherwise, for example, if the result set is already in the last row.
272761847f8eSopenharmony_ci     * @throws { BusinessError } 14800012 - The result set is empty or the specified location is invalid.
272861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
272961847f8eSopenharmony_ci     * @since 9
273061847f8eSopenharmony_ci     */
273161847f8eSopenharmony_ci    /**
273261847f8eSopenharmony_ci     * Go to the next row of the result set.
273361847f8eSopenharmony_ci     *
273461847f8eSopenharmony_ci     * @returns { boolean } True if the result set is moved successfully;
273561847f8eSopenharmony_ci     *                    Returns false otherwise, for example, if the result set is already in the last row.
273661847f8eSopenharmony_ci     * @throws { BusinessError } 14800012 - The result set is empty or the specified location is invalid.
273761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
273861847f8eSopenharmony_ci     * @crossplatform
273961847f8eSopenharmony_ci     * @since 10
274061847f8eSopenharmony_ci     */
274161847f8eSopenharmony_ci    /**
274261847f8eSopenharmony_ci     * Go to the next row of the result set.
274361847f8eSopenharmony_ci     *
274461847f8eSopenharmony_ci     * @returns { boolean } True if the result set is moved successfully;
274561847f8eSopenharmony_ci     *                    Returns false otherwise, for example, if the result set is already in the last row.
274661847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
274761847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
274861847f8eSopenharmony_ci     * @throws { BusinessError } 14800012 - Row out of bounds.
274961847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
275061847f8eSopenharmony_ci     * @throws { BusinessError } 14800019 - The SQL must be a query statement.
275161847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
275261847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
275361847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
275461847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
275561847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
275661847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
275761847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
275861847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
275961847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
276061847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
276161847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
276261847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
276361847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
276461847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
276561847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
276661847f8eSopenharmony_ci     * @crossplatform
276761847f8eSopenharmony_ci     * @since 12
276861847f8eSopenharmony_ci     */
276961847f8eSopenharmony_ci    goToNextRow(): boolean;
277061847f8eSopenharmony_ci
277161847f8eSopenharmony_ci    /**
277261847f8eSopenharmony_ci     * Go to the previous row of the result set.
277361847f8eSopenharmony_ci     *
277461847f8eSopenharmony_ci     * @returns { boolean } True if the result set is moved successfully;
277561847f8eSopenharmony_ci     *                    Returns false otherwise, for example, if the result set is already in the first row.
277661847f8eSopenharmony_ci     * @throws { BusinessError } 14800012 - The result set is empty or the specified location is invalid.
277761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
277861847f8eSopenharmony_ci     * @since 9
277961847f8eSopenharmony_ci     */
278061847f8eSopenharmony_ci    /**
278161847f8eSopenharmony_ci     * Go to the previous row of the result set.
278261847f8eSopenharmony_ci     *
278361847f8eSopenharmony_ci     * @returns { boolean } True if the result set is moved successfully;
278461847f8eSopenharmony_ci     *                    Returns false otherwise, for example, if the result set is already in the first row.
278561847f8eSopenharmony_ci     * @throws { BusinessError } 14800012 - The result set is empty or the specified location is invalid.
278661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
278761847f8eSopenharmony_ci     * @crossplatform
278861847f8eSopenharmony_ci     * @since 10
278961847f8eSopenharmony_ci     */
279061847f8eSopenharmony_ci    /**
279161847f8eSopenharmony_ci     * Go to the previous row of the result set.
279261847f8eSopenharmony_ci     *
279361847f8eSopenharmony_ci     * @returns { boolean } True if the result set is moved successfully;
279461847f8eSopenharmony_ci     *                    Returns false otherwise, for example, if the result set is already in the first row.
279561847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
279661847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
279761847f8eSopenharmony_ci     * @throws { BusinessError } 14800012 - Row out of bounds.
279861847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
279961847f8eSopenharmony_ci     * @throws { BusinessError } 14800019 - The SQL must be a query statement.
280061847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
280161847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
280261847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
280361847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
280461847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
280561847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
280661847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
280761847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
280861847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
280961847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
281061847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
281161847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
281261847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
281361847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
281461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
281561847f8eSopenharmony_ci     * @crossplatform
281661847f8eSopenharmony_ci     * @since 12
281761847f8eSopenharmony_ci     */
281861847f8eSopenharmony_ci    goToPreviousRow(): boolean;
281961847f8eSopenharmony_ci
282061847f8eSopenharmony_ci    /**
282161847f8eSopenharmony_ci     * Obtains the value of the specified column in the current row as a byte array.
282261847f8eSopenharmony_ci     * The implementation class determines whether to throw an exception if the value of the specified column
282361847f8eSopenharmony_ci     * in the current row is null or the specified column is not of the Blob type.
282461847f8eSopenharmony_ci     *
282561847f8eSopenharmony_ci     * @param { number } columnIndex - Indicates the specified column index, which starts from 0.
282661847f8eSopenharmony_ci     * @returns { Uint8Array } The value of the specified column as a byte array.
282761847f8eSopenharmony_ci     * @throws { BusinessError } 14800013 - The column value is null or the column type is incompatible.
282861847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
282961847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
283061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
283161847f8eSopenharmony_ci     * @since 9
283261847f8eSopenharmony_ci     */
283361847f8eSopenharmony_ci    /**
283461847f8eSopenharmony_ci     * Obtains the value of the specified column in the current row as a byte array.
283561847f8eSopenharmony_ci     * The implementation class determines whether to throw an exception if the value of the specified column
283661847f8eSopenharmony_ci     * in the current row is null or the specified column is not of the Blob type.
283761847f8eSopenharmony_ci     *
283861847f8eSopenharmony_ci     * @param { number } columnIndex - Indicates the specified column index, which starts from 0.
283961847f8eSopenharmony_ci     * @returns { Uint8Array } The value of the specified column as a byte array.
284061847f8eSopenharmony_ci     * @throws { BusinessError } 14800013 - The column value is null or the column type is incompatible.
284161847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
284261847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
284361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
284461847f8eSopenharmony_ci     * @crossplatform
284561847f8eSopenharmony_ci     * @since 10
284661847f8eSopenharmony_ci     */
284761847f8eSopenharmony_ci    /**
284861847f8eSopenharmony_ci     * Obtains the value of the specified column in the current row as a byte array.
284961847f8eSopenharmony_ci     * The implementation class determines whether to throw an exception if the value of the specified column
285061847f8eSopenharmony_ci     * in the current row is null or the specified column is not of the Blob type.
285161847f8eSopenharmony_ci     *
285261847f8eSopenharmony_ci     * @param { number } columnIndex - Indicates the specified column index, which starts from 0.
285361847f8eSopenharmony_ci     * @returns { Uint8Array } The value of the specified column as a byte array.
285461847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
285561847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
285661847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
285761847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
285861847f8eSopenharmony_ci     * @throws { BusinessError } 14800012 - Row out of bounds.
285961847f8eSopenharmony_ci     * @throws { BusinessError } 14800013 - Column out of bounds.
286061847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
286161847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
286261847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
286361847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
286461847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
286561847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
286661847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
286761847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
286861847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
286961847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
287061847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
287161847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
287261847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
287361847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
287461847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
287561847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
287661847f8eSopenharmony_ci     * @crossplatform
287761847f8eSopenharmony_ci     * @since 12
287861847f8eSopenharmony_ci     */
287961847f8eSopenharmony_ci    getBlob(columnIndex: number): Uint8Array;
288061847f8eSopenharmony_ci
288161847f8eSopenharmony_ci    /**
288261847f8eSopenharmony_ci     * Obtains the value of the specified column in the current row as string.
288361847f8eSopenharmony_ci     * The implementation class determines whether to throw an exception if the value of the specified column
288461847f8eSopenharmony_ci     * in the current row is null or the specified column is not of the string type.
288561847f8eSopenharmony_ci     *
288661847f8eSopenharmony_ci     * @param { number } columnIndex - Indicates the specified column index, which starts from 0.
288761847f8eSopenharmony_ci     * @returns { string } The value of the specified column as a string.
288861847f8eSopenharmony_ci     * @throws { BusinessError } 14800013 - The column value is null or the column type is incompatible.
288961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
289061847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
289161847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
289261847f8eSopenharmony_ci     * @since 9
289361847f8eSopenharmony_ci     */
289461847f8eSopenharmony_ci    /**
289561847f8eSopenharmony_ci     * Obtains the value of the specified column in the current row as string.
289661847f8eSopenharmony_ci     * The implementation class determines whether to throw an exception if the value of the specified column
289761847f8eSopenharmony_ci     * in the current row is null or the specified column is not of the string type.
289861847f8eSopenharmony_ci     *
289961847f8eSopenharmony_ci     * @param { number } columnIndex - Indicates the specified column index, which starts from 0.
290061847f8eSopenharmony_ci     * @returns { string } The value of the specified column as a string.
290161847f8eSopenharmony_ci     * @throws { BusinessError } 14800013 - The column value is null or the column type is incompatible.
290261847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
290361847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
290461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
290561847f8eSopenharmony_ci     * @crossplatform
290661847f8eSopenharmony_ci     * @since 10
290761847f8eSopenharmony_ci     */
290861847f8eSopenharmony_ci    /**
290961847f8eSopenharmony_ci     * Obtains the value of the specified column in the current row as string.
291061847f8eSopenharmony_ci     * The implementation class determines whether to throw an exception if the value of the specified column
291161847f8eSopenharmony_ci     * in the current row is null or the specified column is not of the string type.
291261847f8eSopenharmony_ci     *
291361847f8eSopenharmony_ci     * @param { number } columnIndex - Indicates the specified column index, which starts from 0.
291461847f8eSopenharmony_ci     * @returns { string } The value of the specified column as a string.
291561847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
291661847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
291761847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
291861847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
291961847f8eSopenharmony_ci     * @throws { BusinessError } 14800012 - Row out of bounds.
292061847f8eSopenharmony_ci     * @throws { BusinessError } 14800013 - Column out of bounds.
292161847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
292261847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
292361847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
292461847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
292561847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
292661847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
292761847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
292861847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
292961847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
293061847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
293161847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
293261847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
293361847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
293461847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
293561847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
293661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
293761847f8eSopenharmony_ci     * @crossplatform
293861847f8eSopenharmony_ci     * @since 12
293961847f8eSopenharmony_ci     */
294061847f8eSopenharmony_ci    getString(columnIndex: number): string;
294161847f8eSopenharmony_ci
294261847f8eSopenharmony_ci    /**
294361847f8eSopenharmony_ci     * Obtains the value of the specified column in the current row as long.
294461847f8eSopenharmony_ci     * The implementation class determines whether to throw an exception if the value of the specified column
294561847f8eSopenharmony_ci     * in the current row is null, the specified column is not of the integer type.
294661847f8eSopenharmony_ci     *
294761847f8eSopenharmony_ci     * @param { number } columnIndex - Indicates the specified column index, which starts from 0.
294861847f8eSopenharmony_ci     * @returns { number } The value of the specified column as a long.
294961847f8eSopenharmony_ci     * @throws { BusinessError } 14800013 - The column value is null or the column type is incompatible.
295061847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
295161847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
295261847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
295361847f8eSopenharmony_ci     * @since 9
295461847f8eSopenharmony_ci     */
295561847f8eSopenharmony_ci    /**
295661847f8eSopenharmony_ci     * Obtains the value of the specified column in the current row as long.
295761847f8eSopenharmony_ci     * The implementation class determines whether to throw an exception if the value of the specified column
295861847f8eSopenharmony_ci     * in the current row is null, the specified column is not of the integer type.
295961847f8eSopenharmony_ci     *
296061847f8eSopenharmony_ci     * @param { number } columnIndex - Indicates the specified column index, which starts from 0.
296161847f8eSopenharmony_ci     * @returns { number } The value of the specified column as a long.
296261847f8eSopenharmony_ci     * @throws { BusinessError } 14800013 - The column value is null or the column type is incompatible.
296361847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
296461847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
296561847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
296661847f8eSopenharmony_ci     * @crossplatform
296761847f8eSopenharmony_ci     * @since 10
296861847f8eSopenharmony_ci     */
296961847f8eSopenharmony_ci    /**
297061847f8eSopenharmony_ci     * Obtains the value of the specified column in the current row as long.
297161847f8eSopenharmony_ci     * The implementation class determines whether to throw an exception if the value of the specified column
297261847f8eSopenharmony_ci     * in the current row is null, the specified column is not of the integer type.
297361847f8eSopenharmony_ci     *
297461847f8eSopenharmony_ci     * @param { number } columnIndex - Indicates the specified column index, which starts from 0.
297561847f8eSopenharmony_ci     * @returns { number } The value of the specified column as a long.
297661847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
297761847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
297861847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
297961847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
298061847f8eSopenharmony_ci     * @throws { BusinessError } 14800012 - Row out of bounds.
298161847f8eSopenharmony_ci     * @throws { BusinessError } 14800013 - Column out of bounds.
298261847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
298361847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
298461847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
298561847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
298661847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
298761847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
298861847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
298961847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
299061847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
299161847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
299261847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
299361847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
299461847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
299561847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
299661847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
299761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
299861847f8eSopenharmony_ci     * @crossplatform
299961847f8eSopenharmony_ci     * @since 12
300061847f8eSopenharmony_ci     */
300161847f8eSopenharmony_ci    getLong(columnIndex: number): number;
300261847f8eSopenharmony_ci
300361847f8eSopenharmony_ci    /**
300461847f8eSopenharmony_ci     * Obtains the value of the specified column in the current row as double.
300561847f8eSopenharmony_ci     * The implementation class determines whether to throw an exception if the value of the specified column
300661847f8eSopenharmony_ci     * in the current row is null, the specified column is not of the double type.
300761847f8eSopenharmony_ci     *
300861847f8eSopenharmony_ci     * @param { number } columnIndex - Indicates the specified column index, which starts from 0.
300961847f8eSopenharmony_ci     * @returns { number } The value of the specified column as a double.
301061847f8eSopenharmony_ci     * @throws { BusinessError } 14800013 - The column value is null or the column type is incompatible.
301161847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
301261847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
301361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
301461847f8eSopenharmony_ci     * @since 9
301561847f8eSopenharmony_ci     */
301661847f8eSopenharmony_ci    /**
301761847f8eSopenharmony_ci     * Obtains the value of the specified column in the current row as double.
301861847f8eSopenharmony_ci     * The implementation class determines whether to throw an exception if the value of the specified column
301961847f8eSopenharmony_ci     * in the current row is null, the specified column is not of the double type.
302061847f8eSopenharmony_ci     *
302161847f8eSopenharmony_ci     * @param { number } columnIndex - Indicates the specified column index, which starts from 0.
302261847f8eSopenharmony_ci     * @returns { number } The value of the specified column as a double.
302361847f8eSopenharmony_ci     * @throws { BusinessError } 14800013 - The column value is null or the column type is incompatible.
302461847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
302561847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
302661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
302761847f8eSopenharmony_ci     * @crossplatform
302861847f8eSopenharmony_ci     * @since 10
302961847f8eSopenharmony_ci     */
303061847f8eSopenharmony_ci    /**
303161847f8eSopenharmony_ci     * Obtains the value of the specified column in the current row as double.
303261847f8eSopenharmony_ci     * The implementation class determines whether to throw an exception if the value of the specified column
303361847f8eSopenharmony_ci     * in the current row is null, the specified column is not of the double type.
303461847f8eSopenharmony_ci     *
303561847f8eSopenharmony_ci     * @param { number } columnIndex - Indicates the specified column index, which starts from 0.
303661847f8eSopenharmony_ci     * @returns { number } The value of the specified column as a double.
303761847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
303861847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
303961847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
304061847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
304161847f8eSopenharmony_ci     * @throws { BusinessError } 14800012 - Row out of bounds.
304261847f8eSopenharmony_ci     * @throws { BusinessError } 14800013 - Column out of bounds.
304361847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
304461847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
304561847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
304661847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
304761847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
304861847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
304961847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
305061847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
305161847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
305261847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
305361847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
305461847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
305561847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
305661847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
305761847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
305861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
305961847f8eSopenharmony_ci     * @crossplatform
306061847f8eSopenharmony_ci     * @since 12
306161847f8eSopenharmony_ci     */
306261847f8eSopenharmony_ci    getDouble(columnIndex: number): number;
306361847f8eSopenharmony_ci
306461847f8eSopenharmony_ci    /**
306561847f8eSopenharmony_ci     * Obtains the value of the specified column in the current row as an asset.
306661847f8eSopenharmony_ci     * The implementation class determines whether to throw an exception if the value of the specified column
306761847f8eSopenharmony_ci     * in the current row is null or the specified column is not of the Asset type.
306861847f8eSopenharmony_ci     *
306961847f8eSopenharmony_ci     * @param { number } columnIndex - Indicates the specified column index, which starts from 0.
307061847f8eSopenharmony_ci     * @returns { Asset } The value of the specified column as an asset.
307161847f8eSopenharmony_ci     * @throws { BusinessError } 14800013 - The column value is null or the column type is incompatible.
307261847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
307361847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
307461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
307561847f8eSopenharmony_ci     * @crossplatform
307661847f8eSopenharmony_ci     * @since 10
307761847f8eSopenharmony_ci     */
307861847f8eSopenharmony_ci    /**
307961847f8eSopenharmony_ci     * Obtains the value of the specified column in the current row as an asset.
308061847f8eSopenharmony_ci     * The implementation class determines whether to throw an exception if the value of the specified column
308161847f8eSopenharmony_ci     * in the current row is null or the specified column is not of the Asset type.
308261847f8eSopenharmony_ci     *
308361847f8eSopenharmony_ci     * @param { number } columnIndex - Indicates the specified column index, which starts from 0.
308461847f8eSopenharmony_ci     * @returns { Asset } The value of the specified column as an asset.
308561847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
308661847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
308761847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
308861847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
308961847f8eSopenharmony_ci     * @throws { BusinessError } 14800012 - Row out of bounds.
309061847f8eSopenharmony_ci     * @throws { BusinessError } 14800013 - Column out of bounds.
309161847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
309261847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
309361847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
309461847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
309561847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
309661847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
309761847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
309861847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
309961847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
310061847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
310161847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
310261847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
310361847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
310461847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
310561847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
310661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
310761847f8eSopenharmony_ci     * @crossplatform
310861847f8eSopenharmony_ci     * @since 12
310961847f8eSopenharmony_ci     */
311061847f8eSopenharmony_ci    getAsset(columnIndex: number): Asset;
311161847f8eSopenharmony_ci
311261847f8eSopenharmony_ci    /**
311361847f8eSopenharmony_ci     * Obtains the value of the specified column in the current row as assets.
311461847f8eSopenharmony_ci     * The implementation class determines whether to throw an exception if the value of the specified column
311561847f8eSopenharmony_ci     * in the current row is null or the specified column is not of the Assets type.
311661847f8eSopenharmony_ci     *
311761847f8eSopenharmony_ci     * @param { number } columnIndex - Indicates the specified column index, which starts from 0.
311861847f8eSopenharmony_ci     * @returns { Assets } The value of the specified column as assets.
311961847f8eSopenharmony_ci     * @throws { BusinessError } 14800013 - The column value is null or the column type is incompatible.
312061847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
312161847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
312261847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
312361847f8eSopenharmony_ci     * @crossplatform
312461847f8eSopenharmony_ci     * @since 10
312561847f8eSopenharmony_ci     */
312661847f8eSopenharmony_ci    /**
312761847f8eSopenharmony_ci     * Obtains the value of the specified column in the current row as assets.
312861847f8eSopenharmony_ci     * The implementation class determines whether to throw an exception if the value of the specified column
312961847f8eSopenharmony_ci     * in the current row is null or the specified column is not of the Assets type.
313061847f8eSopenharmony_ci     *
313161847f8eSopenharmony_ci     * @param { number } columnIndex - Indicates the specified column index, which starts from 0.
313261847f8eSopenharmony_ci     * @returns { Assets } The value of the specified column as assets.
313361847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
313461847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
313561847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
313661847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
313761847f8eSopenharmony_ci     * @throws { BusinessError } 14800012 - Row out of bounds.
313861847f8eSopenharmony_ci     * @throws { BusinessError } 14800013 - Column out of bounds.
313961847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
314061847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
314161847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
314261847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
314361847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
314461847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
314561847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
314661847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
314761847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
314861847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
314961847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
315061847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
315161847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
315261847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
315361847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
315461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
315561847f8eSopenharmony_ci     * @crossplatform
315661847f8eSopenharmony_ci     * @since 12
315761847f8eSopenharmony_ci     */
315861847f8eSopenharmony_ci    getAssets(columnIndex: number): Assets;
315961847f8eSopenharmony_ci
316061847f8eSopenharmony_ci    /**
316161847f8eSopenharmony_ci     * Obtains the value of the specified column in the current row.
316261847f8eSopenharmony_ci     * The implementation class determines whether to throw an exception if the value of the specified column
316361847f8eSopenharmony_ci     * in the current row is null or the specified column is not of the Assets type.
316461847f8eSopenharmony_ci     *
316561847f8eSopenharmony_ci     * @param { number } columnIndex - Indicates the specified column index, which starts from 0.
316661847f8eSopenharmony_ci     * @returns { ValueType } The value of the specified column.
316761847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
316861847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
316961847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
317061847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
317161847f8eSopenharmony_ci     * @throws { BusinessError } 14800012 - Row out of bounds.
317261847f8eSopenharmony_ci     * @throws { BusinessError } 14800013 - Column out of bounds.
317361847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
317461847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
317561847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
317661847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
317761847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
317861847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
317961847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
318061847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
318161847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
318261847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
318361847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
318461847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
318561847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
318661847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
318761847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
318861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
318961847f8eSopenharmony_ci     * @since 12
319061847f8eSopenharmony_ci     */
319161847f8eSopenharmony_ci    getValue(columnIndex: number): ValueType;
319261847f8eSopenharmony_ci
319361847f8eSopenharmony_ci    /**
319461847f8eSopenharmony_ci     * Obtains the value of the specified column in the current row as a float array.
319561847f8eSopenharmony_ci     * The implementation class determines whether to throw an exception if the value of the specified column
319661847f8eSopenharmony_ci     * in the current row is null or the specified column is not of the float array type.
319761847f8eSopenharmony_ci     *
319861847f8eSopenharmony_ci     * @param { number } columnIndex - Indicates the specified column index, which starts from 0.
319961847f8eSopenharmony_ci     * @returns { Float32Array } The value of the specified column as a float array.
320061847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
320161847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
320261847f8eSopenharmony_ci     * @throws { BusinessError } 801 - The capability is not supported because the database is not a vector DB.
320361847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
320461847f8eSopenharmony_ci     * @throws { BusinessError } 14800013 - Column out of bounds.
320561847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
320661847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
320761847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
320861847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
320961847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
321061847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
321161847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
321261847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
321361847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
321461847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
321561847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
321661847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
321761847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
321861847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
321961847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
322061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
322161847f8eSopenharmony_ci     * @systemapi
322261847f8eSopenharmony_ci     * @since 12
322361847f8eSopenharmony_ci     */
322461847f8eSopenharmony_ci    getFloat32Array(columnIndex: number): Float32Array;
322561847f8eSopenharmony_ci
322661847f8eSopenharmony_ci    /**
322761847f8eSopenharmony_ci     * Obtains the values of all columns in the specified row.
322861847f8eSopenharmony_ci     *
322961847f8eSopenharmony_ci     * @returns { ValuesBucket } Indicates the row of data {@link ValuesBucket} to be inserted into the table.
323061847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
323161847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
323261847f8eSopenharmony_ci     * @crossplatform
323361847f8eSopenharmony_ci     * @since 11
323461847f8eSopenharmony_ci     */
323561847f8eSopenharmony_ci    /**
323661847f8eSopenharmony_ci     * Obtains the values of all columns in the specified row.
323761847f8eSopenharmony_ci     *
323861847f8eSopenharmony_ci     * @returns { ValuesBucket } Indicates the row of data {@link ValuesBucket} to be inserted into the table.
323961847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
324061847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
324161847f8eSopenharmony_ci     * @throws { BusinessError } 14800012 - Row out of bounds.
324261847f8eSopenharmony_ci     * @throws { BusinessError } 14800013 - Column out of bounds.
324361847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
324461847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
324561847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
324661847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
324761847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
324861847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
324961847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
325061847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
325161847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
325261847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
325361847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
325461847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
325561847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
325661847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
325761847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
325861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
325961847f8eSopenharmony_ci     * @crossplatform
326061847f8eSopenharmony_ci     * @since 12
326161847f8eSopenharmony_ci     */
326261847f8eSopenharmony_ci    getRow(): ValuesBucket;
326361847f8eSopenharmony_ci
326461847f8eSopenharmony_ci    /**
326561847f8eSopenharmony_ci     * Obtains the values of all columns in the specified row.
326661847f8eSopenharmony_ci     *
326761847f8eSopenharmony_ci     * @returns { sendableRelationalStore.ValuesBucket } Indicates the row of data
326861847f8eSopenharmony_ci     *   {@link sendableRelationalStore.ValuesBucket} to be inserted into the table.
326961847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
327061847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
327161847f8eSopenharmony_ci     * @throws { BusinessError } 14800012 - Row out of bounds.
327261847f8eSopenharmony_ci     * @throws { BusinessError } 14800013 - Column out of bounds.
327361847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
327461847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
327561847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
327661847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
327761847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
327861847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
327961847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
328061847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
328161847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
328261847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
328361847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
328461847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
328561847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
328661847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
328761847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
328861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
328961847f8eSopenharmony_ci     * @since 12
329061847f8eSopenharmony_ci     */
329161847f8eSopenharmony_ci    getSendableRow(): sendableRelationalStore.ValuesBucket;
329261847f8eSopenharmony_ci
329361847f8eSopenharmony_ci    /**
329461847f8eSopenharmony_ci     * Checks whether the value of the specified column in the current row is null.
329561847f8eSopenharmony_ci     *
329661847f8eSopenharmony_ci     * @param { number } columnIndex - Indicates the specified column index, which starts from 0.
329761847f8eSopenharmony_ci     * @returns { boolean } True if the value of the specified column in the current row is null;
329861847f8eSopenharmony_ci     *                    Returns false otherwise.
329961847f8eSopenharmony_ci     * @throws { BusinessError } 14800013 - The column value is null or the column type is incompatible.
330061847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
330161847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
330261847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
330361847f8eSopenharmony_ci     * @since 9
330461847f8eSopenharmony_ci     */
330561847f8eSopenharmony_ci    /**
330661847f8eSopenharmony_ci     * Checks whether the value of the specified column in the current row is null.
330761847f8eSopenharmony_ci     *
330861847f8eSopenharmony_ci     * @param { number } columnIndex - Indicates the specified column index, which starts from 0.
330961847f8eSopenharmony_ci     * @returns { boolean } True if the value of the specified column in the current row is null;
331061847f8eSopenharmony_ci     *                    Returns false otherwise.
331161847f8eSopenharmony_ci     * @throws { BusinessError } 14800013 - The column value is null or the column type is incompatible.
331261847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
331361847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
331461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
331561847f8eSopenharmony_ci     * @crossplatform
331661847f8eSopenharmony_ci     * @since 10
331761847f8eSopenharmony_ci     */
331861847f8eSopenharmony_ci    /**
331961847f8eSopenharmony_ci     * Checks whether the value of the specified column in the current row is null.
332061847f8eSopenharmony_ci     *
332161847f8eSopenharmony_ci     * @param { number } columnIndex - Indicates the specified column index, which starts from 0.
332261847f8eSopenharmony_ci     * @returns { boolean } True if the value of the specified column in the current row is null;
332361847f8eSopenharmony_ci     *                    Returns false otherwise.
332461847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
332561847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
332661847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
332761847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
332861847f8eSopenharmony_ci     * @throws { BusinessError } 14800012 - Row out of bounds.
332961847f8eSopenharmony_ci     * @throws { BusinessError } 14800013 - Column out of bounds.
333061847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
333161847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
333261847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
333361847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
333461847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
333561847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
333661847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
333761847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
333861847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
333961847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
334061847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
334161847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
334261847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
334361847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
334461847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
334561847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
334661847f8eSopenharmony_ci     * @crossplatform
334761847f8eSopenharmony_ci     * @since 12
334861847f8eSopenharmony_ci     */
334961847f8eSopenharmony_ci    isColumnNull(columnIndex: number): boolean;
335061847f8eSopenharmony_ci
335161847f8eSopenharmony_ci    /**
335261847f8eSopenharmony_ci     * Closes the result set.
335361847f8eSopenharmony_ci     * Calling this method on the result set will release all of its resources and makes it ineffective.
335461847f8eSopenharmony_ci     *
335561847f8eSopenharmony_ci     * @throws { BusinessError } 14800012 - The result set is empty or the specified location is invalid.
335661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
335761847f8eSopenharmony_ci     * @since 9
335861847f8eSopenharmony_ci     */
335961847f8eSopenharmony_ci    /**
336061847f8eSopenharmony_ci     * Closes the result set.
336161847f8eSopenharmony_ci     * Calling this method on the result set will release all of its resources and makes it ineffective.
336261847f8eSopenharmony_ci     *
336361847f8eSopenharmony_ci     * @throws { BusinessError } 14800012 - The result set is empty or the specified location is invalid.
336461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
336561847f8eSopenharmony_ci     * @crossplatform
336661847f8eSopenharmony_ci     * @since 10
336761847f8eSopenharmony_ci     */
336861847f8eSopenharmony_ci    /**
336961847f8eSopenharmony_ci     * Closes the result set.
337061847f8eSopenharmony_ci     * Calling this method on the result set will release all of its resources and makes it ineffective.
337161847f8eSopenharmony_ci     *
337261847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
337361847f8eSopenharmony_ci     * @throws { BusinessError } 14800012 - Row out of bounds.
337461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
337561847f8eSopenharmony_ci     * @crossplatform
337661847f8eSopenharmony_ci     * @since 12
337761847f8eSopenharmony_ci     */
337861847f8eSopenharmony_ci    close(): void;
337961847f8eSopenharmony_ci  }
338061847f8eSopenharmony_ci
338161847f8eSopenharmony_ci  /**
338261847f8eSopenharmony_ci   * Provides methods for managing the relational database (RDB).
338361847f8eSopenharmony_ci   * This class provides methods for creating, querying, updating, and deleting RDBs.
338461847f8eSopenharmony_ci   *
338561847f8eSopenharmony_ci   * @interface RdbStore
338661847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
338761847f8eSopenharmony_ci   * @since 9
338861847f8eSopenharmony_ci   */
338961847f8eSopenharmony_ci  /**
339061847f8eSopenharmony_ci   * Provides methods for managing the relational database (RDB).
339161847f8eSopenharmony_ci   * This class provides methods for creating, querying, updating, and deleting RDBs.
339261847f8eSopenharmony_ci   *
339361847f8eSopenharmony_ci   * @interface RdbStore
339461847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
339561847f8eSopenharmony_ci   * @crossplatform
339661847f8eSopenharmony_ci   * @since 10
339761847f8eSopenharmony_ci   */
339861847f8eSopenharmony_ci  interface RdbStore {
339961847f8eSopenharmony_ci    /**
340061847f8eSopenharmony_ci     * Set RdbStore version. The version number must be an integer greater than 0.
340161847f8eSopenharmony_ci     * Obtains the RdbStore version.
340261847f8eSopenharmony_ci     *
340361847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
340461847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
340561847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
340661847f8eSopenharmony_ci     * @since 10
340761847f8eSopenharmony_ci     */
340861847f8eSopenharmony_ci    /**
340961847f8eSopenharmony_ci     * Set RdbStore version. The version number must be an integer greater than 0.
341061847f8eSopenharmony_ci     * Obtains the RdbStore version.
341161847f8eSopenharmony_ci     *
341261847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
341361847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
341461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
341561847f8eSopenharmony_ci     * @crossplatform
341661847f8eSopenharmony_ci     * @since 10
341761847f8eSopenharmony_ci     */
341861847f8eSopenharmony_ci    /**
341961847f8eSopenharmony_ci     * Set RdbStore version. The version number must be an integer greater than 0.
342061847f8eSopenharmony_ci     * Obtains the RdbStore version.
342161847f8eSopenharmony_ci     *
342261847f8eSopenharmony_ci     * @type { number }
342361847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
342461847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
342561847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
342661847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
342761847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
342861847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
342961847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
343061847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
343161847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
343261847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
343361847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
343461847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
343561847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
343661847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
343761847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
343861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
343961847f8eSopenharmony_ci     * @crossplatform
344061847f8eSopenharmony_ci     * @since 12
344161847f8eSopenharmony_ci     */
344261847f8eSopenharmony_ci    version: number;
344361847f8eSopenharmony_ci
344461847f8eSopenharmony_ci    /**
344561847f8eSopenharmony_ci     * Set whether the database is rebuilt.
344661847f8eSopenharmony_ci     *
344761847f8eSopenharmony_ci     * @type {RebuildType}
344861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
344961847f8eSopenharmony_ci     * @since 12
345061847f8eSopenharmony_ci     */
345161847f8eSopenharmony_ci    rebuilt: RebuildType;
345261847f8eSopenharmony_ci
345361847f8eSopenharmony_ci    /**
345461847f8eSopenharmony_ci     * Inserts a row of data into the target table.
345561847f8eSopenharmony_ci     *
345661847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
345761847f8eSopenharmony_ci     * @param { ValuesBucket } values - Indicates the row of data {@link ValuesBucket} to be inserted into the table.
345861847f8eSopenharmony_ci     * @param { AsyncCallback<number> } callback - The row ID if the operation is successful. returns -1 otherwise.
345961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
346061847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
346161847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
346261847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
346361847f8eSopenharmony_ci     * @since 9
346461847f8eSopenharmony_ci     */
346561847f8eSopenharmony_ci    /**
346661847f8eSopenharmony_ci     * Inserts a row of data into the target table.
346761847f8eSopenharmony_ci     *
346861847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
346961847f8eSopenharmony_ci     * @param { ValuesBucket } values - Indicates the row of data {@link ValuesBucket} to be inserted into the table.
347061847f8eSopenharmony_ci     * @param { AsyncCallback<number> } callback - The row ID if the operation is successful. returns -1 otherwise.
347161847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
347261847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
347361847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
347461847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
347561847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
347661847f8eSopenharmony_ci     * @crossplatform
347761847f8eSopenharmony_ci     * @since 10
347861847f8eSopenharmony_ci     */
347961847f8eSopenharmony_ci    /**
348061847f8eSopenharmony_ci     * Inserts a row of data into the target table.
348161847f8eSopenharmony_ci     *
348261847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
348361847f8eSopenharmony_ci     * @param { ValuesBucket } values - Indicates the row of data {@link ValuesBucket} to be inserted into the table.
348461847f8eSopenharmony_ci     * @param { AsyncCallback<number> } callback - The row ID if the operation is successful. returns -1 otherwise.
348561847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
348661847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
348761847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
348861847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
348961847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
349061847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
349161847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
349261847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
349361847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
349461847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
349561847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
349661847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
349761847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
349861847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
349961847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
350061847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
350161847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
350261847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
350361847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
350461847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
350561847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
350661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
350761847f8eSopenharmony_ci     * @crossplatform
350861847f8eSopenharmony_ci     * @since 12
350961847f8eSopenharmony_ci     */
351061847f8eSopenharmony_ci    insert(table: string, values: ValuesBucket, callback: AsyncCallback<number>): void;
351161847f8eSopenharmony_ci
351261847f8eSopenharmony_ci    /**
351361847f8eSopenharmony_ci     * Inserts a row of data into the target table.
351461847f8eSopenharmony_ci     *
351561847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
351661847f8eSopenharmony_ci     * @param { ValuesBucket } values - Indicates the row of data {@link ValuesBucket} to be inserted into the table.
351761847f8eSopenharmony_ci     * @param { ConflictResolution } conflict - Indicates the {@link ConflictResolution} to insert data into the table.
351861847f8eSopenharmony_ci     * @param { AsyncCallback<number> } callback - The row ID if the operation is successful. returns -1 otherwise.
351961847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
352061847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
352161847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
352261847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
352361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
352461847f8eSopenharmony_ci     * @crossplatform
352561847f8eSopenharmony_ci     * @since 10
352661847f8eSopenharmony_ci     */
352761847f8eSopenharmony_ci    /**
352861847f8eSopenharmony_ci     * Inserts a row of data into the target table.
352961847f8eSopenharmony_ci     *
353061847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
353161847f8eSopenharmony_ci     * @param { ValuesBucket } values - Indicates the row of data {@link ValuesBucket} to be inserted into the table.
353261847f8eSopenharmony_ci     * @param { ConflictResolution } conflict - Indicates the {@link ConflictResolution} to insert data into the table.
353361847f8eSopenharmony_ci     * @param { AsyncCallback<number> } callback - The row ID if the operation is successful. returns -1 otherwise.
353461847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
353561847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
353661847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
353761847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
353861847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
353961847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
354061847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
354161847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
354261847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
354361847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
354461847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
354561847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
354661847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
354761847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
354861847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
354961847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
355061847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
355161847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
355261847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
355361847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
355461847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
355561847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
355661847f8eSopenharmony_ci     * @crossplatform
355761847f8eSopenharmony_ci     * @since 12
355861847f8eSopenharmony_ci     */
355961847f8eSopenharmony_ci    insert(table: string, values: ValuesBucket, conflict: ConflictResolution, callback: AsyncCallback<number>): void;
356061847f8eSopenharmony_ci
356161847f8eSopenharmony_ci    /**
356261847f8eSopenharmony_ci     * Inserts a row of data into the target table.
356361847f8eSopenharmony_ci     *
356461847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
356561847f8eSopenharmony_ci     * @param { ValuesBucket } values - Indicates the row of data {@link ValuesBucket} to be inserted into the table.
356661847f8eSopenharmony_ci     * @returns { Promise<number> } The row ID if the operation is successful. return -1 otherwise.
356761847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
356861847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
356961847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
357061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
357161847f8eSopenharmony_ci     * @since 9
357261847f8eSopenharmony_ci     */
357361847f8eSopenharmony_ci    /**
357461847f8eSopenharmony_ci     * Inserts a row of data into the target table.
357561847f8eSopenharmony_ci     *
357661847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
357761847f8eSopenharmony_ci     * @param { ValuesBucket } values - Indicates the row of data {@link ValuesBucket} to be inserted into the table.
357861847f8eSopenharmony_ci     * @returns { Promise<number> } The row ID if the operation is successful. return -1 otherwise.
357961847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
358061847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
358161847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
358261847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
358361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
358461847f8eSopenharmony_ci     * @crossplatform
358561847f8eSopenharmony_ci     * @since 10
358661847f8eSopenharmony_ci     */
358761847f8eSopenharmony_ci    /**
358861847f8eSopenharmony_ci     * Inserts a row of data into the target table.
358961847f8eSopenharmony_ci     *
359061847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
359161847f8eSopenharmony_ci     * @param { ValuesBucket } values - Indicates the row of data {@link ValuesBucket} to be inserted into the table.
359261847f8eSopenharmony_ci     * @returns { Promise<number> } The row ID if the operation is successful. return -1 otherwise.
359361847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
359461847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
359561847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
359661847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
359761847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
359861847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
359961847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
360061847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
360161847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
360261847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
360361847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
360461847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
360561847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
360661847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
360761847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
360861847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
360961847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
361061847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
361161847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
361261847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
361361847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
361461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
361561847f8eSopenharmony_ci     * @crossplatform
361661847f8eSopenharmony_ci     * @since 12
361761847f8eSopenharmony_ci     */
361861847f8eSopenharmony_ci    insert(table: string, values: ValuesBucket): Promise<number>;
361961847f8eSopenharmony_ci
362061847f8eSopenharmony_ci    /**
362161847f8eSopenharmony_ci     * Inserts a row of data into the target table.
362261847f8eSopenharmony_ci     *
362361847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
362461847f8eSopenharmony_ci     * @param { ValuesBucket } values - Indicates the row of data {@link ValuesBucket} to be inserted into the table.
362561847f8eSopenharmony_ci     * @param { ConflictResolution } conflict - Indicates the {@link ConflictResolution} to insert data into the table.
362661847f8eSopenharmony_ci     * @returns { Promise<number> } The row ID if the operation is successful. return -1 otherwise.
362761847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
362861847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
362961847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
363061847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
363161847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
363261847f8eSopenharmony_ci     * @crossplatform
363361847f8eSopenharmony_ci     * @since 10
363461847f8eSopenharmony_ci     */
363561847f8eSopenharmony_ci    /**
363661847f8eSopenharmony_ci     * Inserts a row of data into the target table.
363761847f8eSopenharmony_ci     *
363861847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
363961847f8eSopenharmony_ci     * @param { ValuesBucket } values - Indicates the row of data {@link ValuesBucket} to be inserted into the table.
364061847f8eSopenharmony_ci     * @param { ConflictResolution } conflict - Indicates the {@link ConflictResolution} to insert data into the table.
364161847f8eSopenharmony_ci     * @returns { Promise<number> } The row ID if the operation is successful. return -1 otherwise.
364261847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
364361847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
364461847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
364561847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
364661847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
364761847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
364861847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
364961847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
365061847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
365161847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
365261847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
365361847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
365461847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
365561847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
365661847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
365761847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
365861847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
365961847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
366061847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
366161847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
366261847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
366361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
366461847f8eSopenharmony_ci     * @crossplatform
366561847f8eSopenharmony_ci     * @since 12
366661847f8eSopenharmony_ci     */
366761847f8eSopenharmony_ci    insert(table: string, values: ValuesBucket, conflict: ConflictResolution): Promise<number>;
366861847f8eSopenharmony_ci
366961847f8eSopenharmony_ci    /**
367061847f8eSopenharmony_ci     * Inserts a row of data into the target table with sync interface.
367161847f8eSopenharmony_ci     *
367261847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
367361847f8eSopenharmony_ci     * @param { ValuesBucket } values - Indicates the row of data {@link ValuesBucket} to be inserted into the table.
367461847f8eSopenharmony_ci     * @param { ConflictResolution } conflict - Indicates the {@link ConflictResolution} to insert data into the table.
367561847f8eSopenharmony_ci     * @returns { number } The row ID if the operation is successful. return -1 otherwise.
367661847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
367761847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
367861847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
367961847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
368061847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
368161847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
368261847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
368361847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
368461847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
368561847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
368661847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
368761847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
368861847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
368961847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
369061847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
369161847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
369261847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
369361847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
369461847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
369561847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
369661847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
369761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
369861847f8eSopenharmony_ci     * @crossplatform
369961847f8eSopenharmony_ci     * @since 12
370061847f8eSopenharmony_ci     */
370161847f8eSopenharmony_ci    insertSync(table: string, values: ValuesBucket, conflict?: ConflictResolution): number;
370261847f8eSopenharmony_ci
370361847f8eSopenharmony_ci    /**
370461847f8eSopenharmony_ci     * Inserts a row of data into the target table with sync interface.
370561847f8eSopenharmony_ci     *
370661847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
370761847f8eSopenharmony_ci     * @param { sendableRelationalStore.ValuesBucket } values - Indicates the row of data
370861847f8eSopenharmony_ci     *   {@link sendableRelationalStore.ValuesBucket} to be inserted into the table.
370961847f8eSopenharmony_ci     * @param { ConflictResolution } conflict - Indicates the {@link ConflictResolution} to insert data into the table.
371061847f8eSopenharmony_ci     * @returns { number } The row ID if the operation is successful. return -1 otherwise.
371161847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
371261847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
371361847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
371461847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
371561847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
371661847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
371761847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
371861847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
371961847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
372061847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
372161847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
372261847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
372361847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
372461847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
372561847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
372661847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
372761847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
372861847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
372961847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
373061847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
373161847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
373261847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
373361847f8eSopenharmony_ci     * @since 12
373461847f8eSopenharmony_ci     */
373561847f8eSopenharmony_ci    insertSync(table: string, values: sendableRelationalStore.ValuesBucket, conflict?: ConflictResolution): number;
373661847f8eSopenharmony_ci
373761847f8eSopenharmony_ci    /**
373861847f8eSopenharmony_ci     * Inserts a batch of data into the target table.
373961847f8eSopenharmony_ci     *
374061847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
374161847f8eSopenharmony_ci     * @param { Array<ValuesBucket> } values - Indicates the rows of data {@link ValuesBucket} to be inserted into the table.
374261847f8eSopenharmony_ci     * @param { AsyncCallback<number> } callback - The number of values that were inserted if the operation is successful. returns -1 otherwise.
374361847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
374461847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
374561847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
374661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
374761847f8eSopenharmony_ci     * @since 9
374861847f8eSopenharmony_ci     */
374961847f8eSopenharmony_ci    /**
375061847f8eSopenharmony_ci     * Inserts a batch of data into the target table.
375161847f8eSopenharmony_ci     *
375261847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
375361847f8eSopenharmony_ci     * @param { Array<ValuesBucket> } values - Indicates the rows of data {@link ValuesBucket} to be inserted into the table.
375461847f8eSopenharmony_ci     * @param { AsyncCallback<number> } callback - The number of values that were inserted if the operation is successful. returns -1 otherwise.
375561847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
375661847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
375761847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
375861847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
375961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
376061847f8eSopenharmony_ci     * @crossplatform
376161847f8eSopenharmony_ci     * @since 10
376261847f8eSopenharmony_ci     */
376361847f8eSopenharmony_ci    /**
376461847f8eSopenharmony_ci     * Inserts a batch of data into the target table.
376561847f8eSopenharmony_ci     *
376661847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
376761847f8eSopenharmony_ci     * @param { Array<ValuesBucket> } values - Indicates the rows of data {@link ValuesBucket} to be inserted into the table.
376861847f8eSopenharmony_ci     * @param { AsyncCallback<number> } callback - The number of values that were inserted if the operation is successful. returns -1 otherwise.
376961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
377061847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
377161847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
377261847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
377361847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
377461847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
377561847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
377661847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
377761847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
377861847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
377961847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
378061847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
378161847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
378261847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
378361847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
378461847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
378561847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
378661847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
378761847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
378861847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
378961847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
379061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
379161847f8eSopenharmony_ci     * @crossplatform
379261847f8eSopenharmony_ci     * @since 12
379361847f8eSopenharmony_ci     */
379461847f8eSopenharmony_ci    batchInsert(table: string, values: Array<ValuesBucket>, callback: AsyncCallback<number>): void;
379561847f8eSopenharmony_ci
379661847f8eSopenharmony_ci    /**
379761847f8eSopenharmony_ci     * Inserts a batch of data into the target table.
379861847f8eSopenharmony_ci     *
379961847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
380061847f8eSopenharmony_ci     * @param { Array<ValuesBucket> } values - Indicates the rows of data {@link ValuesBucket} to be inserted into the table.
380161847f8eSopenharmony_ci     * @returns { Promise<number> } The number of values that were inserted if the operation is successful. returns -1 otherwise.
380261847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
380361847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
380461847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
380561847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
380661847f8eSopenharmony_ci     * @since 9
380761847f8eSopenharmony_ci     */
380861847f8eSopenharmony_ci    /**
380961847f8eSopenharmony_ci     * Inserts a batch of data into the target table.
381061847f8eSopenharmony_ci     *
381161847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
381261847f8eSopenharmony_ci     * @param { Array<ValuesBucket> } values - Indicates the rows of data {@link ValuesBucket} to be inserted into the table.
381361847f8eSopenharmony_ci     * @returns { Promise<number> } The number of values that were inserted if the operation is successful. returns -1 otherwise.
381461847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
381561847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
381661847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
381761847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
381861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
381961847f8eSopenharmony_ci     * @crossplatform
382061847f8eSopenharmony_ci     * @since 10
382161847f8eSopenharmony_ci     */
382261847f8eSopenharmony_ci    /**
382361847f8eSopenharmony_ci     * Inserts a batch of data into the target table.
382461847f8eSopenharmony_ci     *
382561847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
382661847f8eSopenharmony_ci     * @param { Array<ValuesBucket> } values - Indicates the rows of data {@link ValuesBucket} to be inserted into the table.
382761847f8eSopenharmony_ci     * @returns { Promise<number> } The number of values that were inserted if the operation is successful. returns -1 otherwise.
382861847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
382961847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
383061847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
383161847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
383261847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
383361847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
383461847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
383561847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
383661847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
383761847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
383861847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
383961847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
384061847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
384161847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
384261847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
384361847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
384461847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
384561847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
384661847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
384761847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
384861847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
384961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
385061847f8eSopenharmony_ci     * @crossplatform
385161847f8eSopenharmony_ci     * @since 12
385261847f8eSopenharmony_ci     */
385361847f8eSopenharmony_ci    batchInsert(table: string, values: Array<ValuesBucket>): Promise<number>;
385461847f8eSopenharmony_ci
385561847f8eSopenharmony_ci    /**
385661847f8eSopenharmony_ci     * Inserts a batch of data into the target table.
385761847f8eSopenharmony_ci     *
385861847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
385961847f8eSopenharmony_ci     * @param { Array<ValuesBucket> } values - Indicates the rows of data {@link ValuesBucket} to be inserted into the table.
386061847f8eSopenharmony_ci     * @returns { number } The number of values that were inserted if the operation is successful. returns -1 otherwise.
386161847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
386261847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
386361847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
386461847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
386561847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
386661847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
386761847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
386861847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
386961847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
387061847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
387161847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
387261847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
387361847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
387461847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
387561847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
387661847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
387761847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
387861847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
387961847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
388061847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
388161847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
388261847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
388361847f8eSopenharmony_ci     * @crossplatform
388461847f8eSopenharmony_ci     * @since 12
388561847f8eSopenharmony_ci     */
388661847f8eSopenharmony_ci    batchInsertSync(table: string, values: Array<ValuesBucket>): number;
388761847f8eSopenharmony_ci
388861847f8eSopenharmony_ci    /**
388961847f8eSopenharmony_ci     * Updates data in the database based on a specified instance object of RdbPredicates.
389061847f8eSopenharmony_ci     *
389161847f8eSopenharmony_ci     * @param { ValuesBucket } values - Indicates the row of data to be updated in the database.
389261847f8eSopenharmony_ci     *                         The key-value pairs are associated with column names of the database table.
389361847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - Indicates the specified update condition by the instance object of  {@link RdbPredicates}.
389461847f8eSopenharmony_ci     * @param { AsyncCallback<number> } callback - The number of affected rows.
389561847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
389661847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
389761847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
389861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
389961847f8eSopenharmony_ci     * @since 9
390061847f8eSopenharmony_ci     */
390161847f8eSopenharmony_ci    /**
390261847f8eSopenharmony_ci     * Updates data in the database based on a specified instance object of RdbPredicates.
390361847f8eSopenharmony_ci     *
390461847f8eSopenharmony_ci     * @param { ValuesBucket } values - Indicates the row of data to be updated in the database.
390561847f8eSopenharmony_ci     *                         The key-value pairs are associated with column names of the database table.
390661847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - Indicates the specified update condition by the instance object of  {@link RdbPredicates}.
390761847f8eSopenharmony_ci     * @param { AsyncCallback<number> } callback - The number of affected rows.
390861847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
390961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
391061847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
391161847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
391261847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
391361847f8eSopenharmony_ci     * @crossplatform
391461847f8eSopenharmony_ci     * @since 10
391561847f8eSopenharmony_ci     */
391661847f8eSopenharmony_ci    /**
391761847f8eSopenharmony_ci     * Updates data in the database based on a specified instance object of RdbPredicates.
391861847f8eSopenharmony_ci     *
391961847f8eSopenharmony_ci     * @param { ValuesBucket } values - Indicates the row of data to be updated in the database.
392061847f8eSopenharmony_ci     *                         The key-value pairs are associated with column names of the database table.
392161847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - Indicates the specified update condition by the instance object of  {@link RdbPredicates}.
392261847f8eSopenharmony_ci     * @param { AsyncCallback<number> } callback - The number of affected rows.
392361847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
392461847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
392561847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
392661847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
392761847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
392861847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
392961847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
393061847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
393161847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
393261847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
393361847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
393461847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
393561847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
393661847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
393761847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
393861847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
393961847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
394061847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
394161847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
394261847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
394361847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
394461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
394561847f8eSopenharmony_ci     * @crossplatform
394661847f8eSopenharmony_ci     * @since 12
394761847f8eSopenharmony_ci     */
394861847f8eSopenharmony_ci    update(values: ValuesBucket, predicates: RdbPredicates, callback: AsyncCallback<number>): void;
394961847f8eSopenharmony_ci
395061847f8eSopenharmony_ci    /**
395161847f8eSopenharmony_ci     * Updates data in the database based on a specified instance object of RdbPredicates.
395261847f8eSopenharmony_ci     *
395361847f8eSopenharmony_ci     * @param { ValuesBucket } values - Indicates the row of data to be updated in the database.
395461847f8eSopenharmony_ci     *                         The key-value pairs are associated with column names of the database table.
395561847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - Indicates the specified update condition by the instance object of  {@link RdbPredicates}.
395661847f8eSopenharmony_ci     * @param { ConflictResolution } conflict - Indicates the {@link ConflictResolution} to insert data into the table.
395761847f8eSopenharmony_ci     * @param { AsyncCallback<number> } callback - The number of affected rows.
395861847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
395961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
396061847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
396161847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
396261847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
396361847f8eSopenharmony_ci     * @crossplatform
396461847f8eSopenharmony_ci     * @since 10
396561847f8eSopenharmony_ci     */
396661847f8eSopenharmony_ci    /**
396761847f8eSopenharmony_ci     * Updates data in the database based on a specified instance object of RdbPredicates.
396861847f8eSopenharmony_ci     *
396961847f8eSopenharmony_ci     * @param { ValuesBucket } values - Indicates the row of data to be updated in the database.
397061847f8eSopenharmony_ci     *                         The key-value pairs are associated with column names of the database table.
397161847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - Indicates the specified update condition by the instance object of  {@link RdbPredicates}.
397261847f8eSopenharmony_ci     * @param { ConflictResolution } conflict - Indicates the {@link ConflictResolution} to insert data into the table.
397361847f8eSopenharmony_ci     * @param { AsyncCallback<number> } callback - The number of affected rows.
397461847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
397561847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
397661847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
397761847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
397861847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
397961847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
398061847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
398161847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
398261847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
398361847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
398461847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
398561847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
398661847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
398761847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
398861847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
398961847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
399061847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
399161847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
399261847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
399361847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
399461847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
399561847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
399661847f8eSopenharmony_ci     * @crossplatform
399761847f8eSopenharmony_ci     * @since 12
399861847f8eSopenharmony_ci     */
399961847f8eSopenharmony_ci    update(
400061847f8eSopenharmony_ci      values: ValuesBucket,
400161847f8eSopenharmony_ci      predicates: RdbPredicates,
400261847f8eSopenharmony_ci      conflict: ConflictResolution,
400361847f8eSopenharmony_ci      callback: AsyncCallback<number>
400461847f8eSopenharmony_ci    ): void;
400561847f8eSopenharmony_ci
400661847f8eSopenharmony_ci    /**
400761847f8eSopenharmony_ci     * Updates data in the database based on a specified instance object of RdbPredicates.
400861847f8eSopenharmony_ci     *
400961847f8eSopenharmony_ci     * @param { ValuesBucket } values - Indicates the row of data to be updated in the database.
401061847f8eSopenharmony_ci     *                         The key-value pairs are associated with column names of the database table.
401161847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - Indicates the specified update condition by the instance object of  {@link RdbPredicates}.
401261847f8eSopenharmony_ci     * @returns { Promise<number> } The number of affected rows.
401361847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
401461847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
401561847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
401661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
401761847f8eSopenharmony_ci     * @since 9
401861847f8eSopenharmony_ci     */
401961847f8eSopenharmony_ci    /**
402061847f8eSopenharmony_ci     * Updates data in the database based on a specified instance object of RdbPredicates.
402161847f8eSopenharmony_ci     *
402261847f8eSopenharmony_ci     * @param { ValuesBucket } values - Indicates the row of data to be updated in the database.
402361847f8eSopenharmony_ci     *                         The key-value pairs are associated with column names of the database table.
402461847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - Indicates the specified update condition by the instance object of  {@link RdbPredicates}.
402561847f8eSopenharmony_ci     * @returns { Promise<number> } The number of affected rows.
402661847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
402761847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
402861847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
402961847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
403061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
403161847f8eSopenharmony_ci     * @crossplatform
403261847f8eSopenharmony_ci     * @since 10
403361847f8eSopenharmony_ci     */
403461847f8eSopenharmony_ci    /**
403561847f8eSopenharmony_ci     * Updates data in the database based on a specified instance object of RdbPredicates.
403661847f8eSopenharmony_ci     *
403761847f8eSopenharmony_ci     * @param { ValuesBucket } values - Indicates the row of data to be updated in the database.
403861847f8eSopenharmony_ci     *                         The key-value pairs are associated with column names of the database table.
403961847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - Indicates the specified update condition by the instance object of  {@link RdbPredicates}.
404061847f8eSopenharmony_ci     * @returns { Promise<number> } The number of affected rows.
404161847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
404261847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
404361847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
404461847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
404561847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
404661847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
404761847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
404861847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
404961847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
405061847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
405161847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
405261847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
405361847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
405461847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
405561847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
405661847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
405761847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
405861847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
405961847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
406061847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
406161847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
406261847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
406361847f8eSopenharmony_ci     * @crossplatform
406461847f8eSopenharmony_ci     * @since 12
406561847f8eSopenharmony_ci     */
406661847f8eSopenharmony_ci    update(values: ValuesBucket, predicates: RdbPredicates): Promise<number>;
406761847f8eSopenharmony_ci
406861847f8eSopenharmony_ci    /**
406961847f8eSopenharmony_ci     * Updates data in the database based on a specified instance object of RdbPredicates.
407061847f8eSopenharmony_ci     *
407161847f8eSopenharmony_ci     * @param { ValuesBucket } values - Indicates the row of data to be updated in the database.
407261847f8eSopenharmony_ci     *                         The key-value pairs are associated with column names of the database table.
407361847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - Indicates the specified update condition by the instance object of  {@link RdbPredicates}.
407461847f8eSopenharmony_ci     * @param { ConflictResolution } conflict - Indicates the {@link ConflictResolution} to insert data into the table.
407561847f8eSopenharmony_ci     * @returns { Promise<number> } The number of affected rows.
407661847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
407761847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
407861847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
407961847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
408061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
408161847f8eSopenharmony_ci     * @crossplatform
408261847f8eSopenharmony_ci     * @since 10
408361847f8eSopenharmony_ci     */
408461847f8eSopenharmony_ci    /**
408561847f8eSopenharmony_ci     * Updates data in the database based on a specified instance object of RdbPredicates.
408661847f8eSopenharmony_ci     *
408761847f8eSopenharmony_ci     * @param { ValuesBucket } values - Indicates the row of data to be updated in the database.
408861847f8eSopenharmony_ci     *                         The key-value pairs are associated with column names of the database table.
408961847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - Indicates the specified update condition by the instance object of  {@link RdbPredicates}.
409061847f8eSopenharmony_ci     * @param { ConflictResolution } conflict - Indicates the {@link ConflictResolution} to insert data into the table.
409161847f8eSopenharmony_ci     * @returns { Promise<number> } The number of affected rows.
409261847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
409361847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
409461847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
409561847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
409661847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
409761847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
409861847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
409961847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
410061847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
410161847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
410261847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
410361847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
410461847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
410561847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
410661847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
410761847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
410861847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
410961847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
411061847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
411161847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
411261847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
411361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
411461847f8eSopenharmony_ci     * @crossplatform
411561847f8eSopenharmony_ci     * @since 12
411661847f8eSopenharmony_ci     */
411761847f8eSopenharmony_ci    update(values: ValuesBucket, predicates: RdbPredicates, conflict: ConflictResolution): Promise<number>;
411861847f8eSopenharmony_ci
411961847f8eSopenharmony_ci    /**
412061847f8eSopenharmony_ci     * Updates data in the database based on a specified instance object of RdbPredicates with sync interface.
412161847f8eSopenharmony_ci     *
412261847f8eSopenharmony_ci     * @param { ValuesBucket } values - Indicates the row of data to be updated in the database.
412361847f8eSopenharmony_ci     *                         The key-value pairs are associated with column names of the database table.
412461847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - Indicates the specified update condition by the instance object of  {@link RdbPredicates}.
412561847f8eSopenharmony_ci     * @param { ConflictResolution } conflict - Indicates the {@link ConflictResolution} to insert data into the table.
412661847f8eSopenharmony_ci     * @returns { number } The number of affected rows.
412761847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
412861847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
412961847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
413061847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
413161847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
413261847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
413361847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
413461847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
413561847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
413661847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
413761847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
413861847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
413961847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
414061847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
414161847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
414261847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
414361847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
414461847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
414561847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
414661847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
414761847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
414861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
414961847f8eSopenharmony_ci     * @crossplatform
415061847f8eSopenharmony_ci     * @since 12
415161847f8eSopenharmony_ci     */
415261847f8eSopenharmony_ci    updateSync(values: ValuesBucket, predicates: RdbPredicates, conflict?: ConflictResolution): number;
415361847f8eSopenharmony_ci
415461847f8eSopenharmony_ci    /**
415561847f8eSopenharmony_ci     * Updates data in the database based on a specified instance object of RdbPredicates.
415661847f8eSopenharmony_ci     *
415761847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
415861847f8eSopenharmony_ci     * @param { ValuesBucket } values - Indicates the row of data to be updated in the database.
415961847f8eSopenharmony_ci     *                         The key-value pairs are associated with column names of the database table.
416061847f8eSopenharmony_ci     * @param { dataSharePredicates.DataSharePredicates } predicates - Indicates the specified update condition by
416161847f8eSopenharmony_ci     *                                                    the instance object of {@link dataSharePredicates.DataSharePredicates}.
416261847f8eSopenharmony_ci     * @param { AsyncCallback<number> } callback - The number of affected rows.
416361847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
416461847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
416561847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
416661847f8eSopenharmony_ci     * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API.
416761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
416861847f8eSopenharmony_ci     * @systemapi
416961847f8eSopenharmony_ci     * @StageModelOnly
417061847f8eSopenharmony_ci     * @since 9
417161847f8eSopenharmony_ci     */
417261847f8eSopenharmony_ci    /**
417361847f8eSopenharmony_ci     * Updates data in the database based on a specified instance object of RdbPredicates.
417461847f8eSopenharmony_ci     *
417561847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
417661847f8eSopenharmony_ci     * @param { ValuesBucket } values - Indicates the row of data to be updated in the database.
417761847f8eSopenharmony_ci     *                         The key-value pairs are associated with column names of the database table.
417861847f8eSopenharmony_ci     * @param { dataSharePredicates.DataSharePredicates } predicates - Indicates the specified update condition by
417961847f8eSopenharmony_ci     *                                                    the instance object of {@link dataSharePredicates.DataSharePredicates}.
418061847f8eSopenharmony_ci     * @param { AsyncCallback<number> } callback - The number of affected rows.
418161847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
418261847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
418361847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
418461847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
418561847f8eSopenharmony_ci     * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API.
418661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
418761847f8eSopenharmony_ci     * @systemapi
418861847f8eSopenharmony_ci     * @StageModelOnly
418961847f8eSopenharmony_ci     * @since 10
419061847f8eSopenharmony_ci     */
419161847f8eSopenharmony_ci    /**
419261847f8eSopenharmony_ci     * Updates data in the database based on a specified instance object of RdbPredicates.
419361847f8eSopenharmony_ci     *
419461847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
419561847f8eSopenharmony_ci     * @param { ValuesBucket } values - Indicates the row of data to be updated in the database.
419661847f8eSopenharmony_ci     *                         The key-value pairs are associated with column names of the database table.
419761847f8eSopenharmony_ci     * @param { dataSharePredicates.DataSharePredicates } predicates - Indicates the specified update condition by
419861847f8eSopenharmony_ci     *                                                    the instance object of {@link dataSharePredicates.DataSharePredicates}.
419961847f8eSopenharmony_ci     * @param { AsyncCallback<number> } callback - The number of affected rows.
420061847f8eSopenharmony_ci     * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API.
420161847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
420261847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
420361847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
420461847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
420561847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
420661847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
420761847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
420861847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
420961847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
421061847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
421161847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
421261847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
421361847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
421461847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
421561847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
421661847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
421761847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
421861847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
421961847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
422061847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
422161847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
422261847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
422361847f8eSopenharmony_ci     * @systemapi
422461847f8eSopenharmony_ci     * @StageModelOnly
422561847f8eSopenharmony_ci     * @since 12
422661847f8eSopenharmony_ci     */
422761847f8eSopenharmony_ci    update(
422861847f8eSopenharmony_ci      table: string,
422961847f8eSopenharmony_ci      values: ValuesBucket,
423061847f8eSopenharmony_ci      predicates: dataSharePredicates.DataSharePredicates,
423161847f8eSopenharmony_ci      callback: AsyncCallback<number>
423261847f8eSopenharmony_ci    ): void;
423361847f8eSopenharmony_ci
423461847f8eSopenharmony_ci    /**
423561847f8eSopenharmony_ci     * Updates data in the database based on a specified instance object of RdbPredicates.
423661847f8eSopenharmony_ci     *
423761847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
423861847f8eSopenharmony_ci     * @param { ValuesBucket } values - Indicates the row of data to be updated in the database.
423961847f8eSopenharmony_ci     *                         The key-value pairs are associated with column names of the database table.
424061847f8eSopenharmony_ci     * @param { dataSharePredicates.DataSharePredicates } predicates - Indicates the specified update condition by
424161847f8eSopenharmony_ci     *                                                    the instance object of {@link dataSharePredicates.DataSharePredicates}.
424261847f8eSopenharmony_ci     * @returns { Promise<number> } The number of affected rows.
424361847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
424461847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
424561847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
424661847f8eSopenharmony_ci     * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API.
424761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
424861847f8eSopenharmony_ci     * @systemapi
424961847f8eSopenharmony_ci     * @StageModelOnly
425061847f8eSopenharmony_ci     * @since 9
425161847f8eSopenharmony_ci     */
425261847f8eSopenharmony_ci    /**
425361847f8eSopenharmony_ci     * Updates data in the database based on a specified instance object of RdbPredicates.
425461847f8eSopenharmony_ci     *
425561847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
425661847f8eSopenharmony_ci     * @param { ValuesBucket } values - Indicates the row of data to be updated in the database.
425761847f8eSopenharmony_ci     *                         The key-value pairs are associated with column names of the database table.
425861847f8eSopenharmony_ci     * @param { dataSharePredicates.DataSharePredicates } predicates - Indicates the specified update condition by
425961847f8eSopenharmony_ci     *                                                    the instance object of {@link dataSharePredicates.DataSharePredicates}.
426061847f8eSopenharmony_ci     * @returns { Promise<number> } The number of affected rows.
426161847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
426261847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
426361847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
426461847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
426561847f8eSopenharmony_ci     * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API.
426661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
426761847f8eSopenharmony_ci     * @systemapi
426861847f8eSopenharmony_ci     * @StageModelOnly
426961847f8eSopenharmony_ci     * @since 10
427061847f8eSopenharmony_ci     */
427161847f8eSopenharmony_ci    /**
427261847f8eSopenharmony_ci     * Updates data in the database based on a specified instance object of RdbPredicates.
427361847f8eSopenharmony_ci     *
427461847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
427561847f8eSopenharmony_ci     * @param { ValuesBucket } values - Indicates the row of data to be updated in the database.
427661847f8eSopenharmony_ci     *                         The key-value pairs are associated with column names of the database table.
427761847f8eSopenharmony_ci     * @param { dataSharePredicates.DataSharePredicates } predicates - Indicates the specified update condition by
427861847f8eSopenharmony_ci     *                                                    the instance object of {@link dataSharePredicates.DataSharePredicates}.
427961847f8eSopenharmony_ci     * @returns { Promise<number> } The number of affected rows.
428061847f8eSopenharmony_ci     * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API.
428161847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
428261847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
428361847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
428461847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
428561847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
428661847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
428761847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
428861847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
428961847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
429061847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
429161847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
429261847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
429361847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
429461847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
429561847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
429661847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
429761847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
429861847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
429961847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
430061847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
430161847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
430261847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
430361847f8eSopenharmony_ci     * @systemapi
430461847f8eSopenharmony_ci     * @StageModelOnly
430561847f8eSopenharmony_ci     * @since 12
430661847f8eSopenharmony_ci     */
430761847f8eSopenharmony_ci    update(table: string, values: ValuesBucket, predicates: dataSharePredicates.DataSharePredicates): Promise<number>;
430861847f8eSopenharmony_ci
430961847f8eSopenharmony_ci    /**
431061847f8eSopenharmony_ci     * Deletes data from the database based on a specified instance object of RdbPredicates.
431161847f8eSopenharmony_ci     *
431261847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - The specified delete condition by the instance object of {@link RdbPredicates}.
431361847f8eSopenharmony_ci     * @param { AsyncCallback<number> } callback - The number of affected rows.
431461847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
431561847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
431661847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
431761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
431861847f8eSopenharmony_ci     * @since 9
431961847f8eSopenharmony_ci     */
432061847f8eSopenharmony_ci    /**
432161847f8eSopenharmony_ci     * Deletes data from the database based on a specified instance object of RdbPredicates.
432261847f8eSopenharmony_ci     *
432361847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - The specified delete condition by the instance object of {@link RdbPredicates}.
432461847f8eSopenharmony_ci     * @param { AsyncCallback<number> } callback - The number of affected rows.
432561847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
432661847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
432761847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
432861847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
432961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
433061847f8eSopenharmony_ci     * @crossplatform
433161847f8eSopenharmony_ci     * @since 10
433261847f8eSopenharmony_ci     */
433361847f8eSopenharmony_ci    /**
433461847f8eSopenharmony_ci     * Deletes data from the database based on a specified instance object of RdbPredicates.
433561847f8eSopenharmony_ci     *
433661847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - The specified delete condition by the instance object of {@link RdbPredicates}.
433761847f8eSopenharmony_ci     * @param { AsyncCallback<number> } callback - The number of affected rows.
433861847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
433961847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
434061847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
434161847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
434261847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
434361847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
434461847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
434561847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
434661847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
434761847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
434861847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
434961847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
435061847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
435161847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
435261847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
435361847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
435461847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
435561847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
435661847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
435761847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
435861847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
435961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
436061847f8eSopenharmony_ci     * @crossplatform
436161847f8eSopenharmony_ci     * @since 12
436261847f8eSopenharmony_ci     */
436361847f8eSopenharmony_ci    delete(predicates: RdbPredicates, callback: AsyncCallback<number>): void;
436461847f8eSopenharmony_ci
436561847f8eSopenharmony_ci    /**
436661847f8eSopenharmony_ci     * Deletes data from the database based on a specified instance object of RdbPredicates.
436761847f8eSopenharmony_ci     *
436861847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - The specified delete condition by the instance object of {@link RdbPredicates}.
436961847f8eSopenharmony_ci     * @returns { Promise<number> } The number of affected rows.
437061847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
437161847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
437261847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
437361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
437461847f8eSopenharmony_ci     * @since 9
437561847f8eSopenharmony_ci     */
437661847f8eSopenharmony_ci    /**
437761847f8eSopenharmony_ci     * Deletes data from the database based on a specified instance object of RdbPredicates.
437861847f8eSopenharmony_ci     *
437961847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - The specified delete condition by the instance object of {@link RdbPredicates}.
438061847f8eSopenharmony_ci     * @returns { Promise<number> } return the number of affected rows.
438161847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
438261847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
438361847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
438461847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
438561847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
438661847f8eSopenharmony_ci     * @crossplatform
438761847f8eSopenharmony_ci     * @since 10
438861847f8eSopenharmony_ci     */
438961847f8eSopenharmony_ci    /**
439061847f8eSopenharmony_ci     * Deletes data from the database based on a specified instance object of RdbPredicates.
439161847f8eSopenharmony_ci     *
439261847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - The specified delete condition by the instance object of {@link RdbPredicates}.
439361847f8eSopenharmony_ci     * @returns { Promise<number> } return the number of affected rows.
439461847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
439561847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
439661847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
439761847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
439861847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
439961847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
440061847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
440161847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
440261847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
440361847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
440461847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
440561847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
440661847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
440761847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
440861847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
440961847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
441061847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
441161847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
441261847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
441361847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
441461847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
441561847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
441661847f8eSopenharmony_ci     * @crossplatform
441761847f8eSopenharmony_ci     * @since 12
441861847f8eSopenharmony_ci     */
441961847f8eSopenharmony_ci    delete(predicates: RdbPredicates): Promise<number>;
442061847f8eSopenharmony_ci
442161847f8eSopenharmony_ci    /**
442261847f8eSopenharmony_ci     * Deletes data from the database based on a specified instance object of RdbPredicates with sync interface.
442361847f8eSopenharmony_ci     *
442461847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - The specified delete condition by the instance object of {@link RdbPredicates}.
442561847f8eSopenharmony_ci     * @returns { number } return the number of affected rows.
442661847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
442761847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
442861847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
442961847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
443061847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
443161847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
443261847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
443361847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
443461847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
443561847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
443661847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
443761847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
443861847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
443961847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
444061847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
444161847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
444261847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
444361847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
444461847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
444561847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
444661847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
444761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
444861847f8eSopenharmony_ci     * @crossplatform
444961847f8eSopenharmony_ci     * @since 12
445061847f8eSopenharmony_ci     */
445161847f8eSopenharmony_ci    deleteSync(predicates: RdbPredicates): number;
445261847f8eSopenharmony_ci    /**
445361847f8eSopenharmony_ci     * Deletes data from the database based on a specified instance object of RdbPredicates.
445461847f8eSopenharmony_ci     *
445561847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
445661847f8eSopenharmony_ci     * @param { dataSharePredicates.DataSharePredicates } predicates - The specified delete condition by
445761847f8eSopenharmony_ci     *                                                    the instance object of {@link dataSharePredicates.DataSharePredicates}.
445861847f8eSopenharmony_ci     * @param { AsyncCallback<number> } callback - The number of affected rows.
445961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
446061847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
446161847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
446261847f8eSopenharmony_ci     * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API.
446361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
446461847f8eSopenharmony_ci     * @systemapi
446561847f8eSopenharmony_ci     * @StageModelOnly
446661847f8eSopenharmony_ci     * @since 9
446761847f8eSopenharmony_ci     */
446861847f8eSopenharmony_ci    /**
446961847f8eSopenharmony_ci     * Deletes data from the database based on a specified instance object of RdbPredicates.
447061847f8eSopenharmony_ci     *
447161847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
447261847f8eSopenharmony_ci     * @param { dataSharePredicates.DataSharePredicates } predicates - The specified delete condition by the instance object
447361847f8eSopenharmony_ci     *                                                    of {@link dataSharePredicates.DataSharePredicates}.
447461847f8eSopenharmony_ci     * @param { AsyncCallback<number> } callback - The number of affected rows.
447561847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
447661847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
447761847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
447861847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
447961847f8eSopenharmony_ci     * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API.
448061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
448161847f8eSopenharmony_ci     * @systemapi
448261847f8eSopenharmony_ci     * @StageModelOnly
448361847f8eSopenharmony_ci     * @since 10
448461847f8eSopenharmony_ci     */
448561847f8eSopenharmony_ci    /**
448661847f8eSopenharmony_ci     * Deletes data from the database based on a specified instance object of RdbPredicates.
448761847f8eSopenharmony_ci     *
448861847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
448961847f8eSopenharmony_ci     * @param { dataSharePredicates.DataSharePredicates } predicates - The specified delete condition by the instance object
449061847f8eSopenharmony_ci     *                                                    of {@link dataSharePredicates.DataSharePredicates}.
449161847f8eSopenharmony_ci     * @param { AsyncCallback<number> } callback - The number of affected rows.
449261847f8eSopenharmony_ci     * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API.
449361847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
449461847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
449561847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
449661847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
449761847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
449861847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
449961847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
450061847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
450161847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
450261847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
450361847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
450461847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
450561847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
450661847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
450761847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
450861847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
450961847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
451061847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
451161847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
451261847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
451361847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
451461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
451561847f8eSopenharmony_ci     * @systemapi
451661847f8eSopenharmony_ci     * @StageModelOnly
451761847f8eSopenharmony_ci     * @since 12
451861847f8eSopenharmony_ci     */
451961847f8eSopenharmony_ci    delete(table: string, predicates: dataSharePredicates.DataSharePredicates, callback: AsyncCallback<number>): void;
452061847f8eSopenharmony_ci
452161847f8eSopenharmony_ci    /**
452261847f8eSopenharmony_ci     * Deletes data from the database based on a specified instance object of RdbPredicates.
452361847f8eSopenharmony_ci     *
452461847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
452561847f8eSopenharmony_ci     * @param { dataSharePredicates.DataSharePredicates } predicates - The specified delete condition by the instance object
452661847f8eSopenharmony_ci     *                                                    of {@link dataSharePredicates.DataSharePredicates}.
452761847f8eSopenharmony_ci     * @returns { Promise<number> } The number of affected rows.
452861847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
452961847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
453061847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
453161847f8eSopenharmony_ci     * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API.
453261847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
453361847f8eSopenharmony_ci     * @systemapi
453461847f8eSopenharmony_ci     * @StageModelOnly
453561847f8eSopenharmony_ci     * @since 9
453661847f8eSopenharmony_ci     */
453761847f8eSopenharmony_ci    /**
453861847f8eSopenharmony_ci     * Deletes data from the database based on a specified instance object of RdbPredicates.
453961847f8eSopenharmony_ci     *
454061847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
454161847f8eSopenharmony_ci     * @param { dataSharePredicates.DataSharePredicates } predicates - The specified delete condition by the instance object
454261847f8eSopenharmony_ci     *                                                    of {@link dataSharePredicates.DataSharePredicates}.
454361847f8eSopenharmony_ci     * @returns { Promise<number> } The number of affected rows.
454461847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
454561847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
454661847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
454761847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
454861847f8eSopenharmony_ci     * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API.
454961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
455061847f8eSopenharmony_ci     * @systemapi
455161847f8eSopenharmony_ci     * @StageModelOnly
455261847f8eSopenharmony_ci     * @since 10
455361847f8eSopenharmony_ci     */
455461847f8eSopenharmony_ci    /**
455561847f8eSopenharmony_ci     * Deletes data from the database based on a specified instance object of RdbPredicates.
455661847f8eSopenharmony_ci     *
455761847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
455861847f8eSopenharmony_ci     * @param { dataSharePredicates.DataSharePredicates } predicates - The specified delete condition by the instance object
455961847f8eSopenharmony_ci     *                                                    of {@link dataSharePredicates.DataSharePredicates}.
456061847f8eSopenharmony_ci     * @returns { Promise<number> } The number of affected rows.
456161847f8eSopenharmony_ci     * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API.
456261847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
456361847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
456461847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
456561847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
456661847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
456761847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
456861847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
456961847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
457061847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
457161847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
457261847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
457361847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
457461847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
457561847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
457661847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
457761847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
457861847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
457961847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
458061847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
458161847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
458261847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
458361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
458461847f8eSopenharmony_ci     * @systemapi
458561847f8eSopenharmony_ci     * @StageModelOnly
458661847f8eSopenharmony_ci     * @since 12
458761847f8eSopenharmony_ci     */
458861847f8eSopenharmony_ci    delete(table: string, predicates: dataSharePredicates.DataSharePredicates): Promise<number>;
458961847f8eSopenharmony_ci
459061847f8eSopenharmony_ci    /**
459161847f8eSopenharmony_ci     * Queries data in the database based on specified conditions.
459261847f8eSopenharmony_ci     *
459361847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - The specified query condition by the instance object of {@link RdbPredicates}.
459461847f8eSopenharmony_ci     * @param { AsyncCallback<ResultSet> } callback - The {@link ResultSet} object if the operation is successful.
459561847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
459661847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
459761847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
459861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
459961847f8eSopenharmony_ci     * @crossplatform
460061847f8eSopenharmony_ci     * @since 10
460161847f8eSopenharmony_ci     */
460261847f8eSopenharmony_ci    /**
460361847f8eSopenharmony_ci     * Queries data in the database based on specified conditions.
460461847f8eSopenharmony_ci     *
460561847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - The specified query condition by the instance object of {@link RdbPredicates}.
460661847f8eSopenharmony_ci     * @param { AsyncCallback<ResultSet> } callback - The {@link ResultSet} object if the operation is successful.
460761847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
460861847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
460961847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
461061847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
461161847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
461261847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
461361847f8eSopenharmony_ci     * @crossplatform
461461847f8eSopenharmony_ci     * @since 12
461561847f8eSopenharmony_ci     */
461661847f8eSopenharmony_ci    query(predicates: RdbPredicates, callback: AsyncCallback<ResultSet>): void;
461761847f8eSopenharmony_ci
461861847f8eSopenharmony_ci    /**
461961847f8eSopenharmony_ci     * Queries data in the database based on specified conditions.
462061847f8eSopenharmony_ci     *
462161847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - The specified query condition by the instance object of {@link RdbPredicates}.
462261847f8eSopenharmony_ci     * @param { Array<string> } columns - The columns to query. If the value is empty array, the query applies to all columns.
462361847f8eSopenharmony_ci     * @param { AsyncCallback<ResultSet> } callback - The {@link ResultSet} object if the operation is successful.
462461847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
462561847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
462661847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
462761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
462861847f8eSopenharmony_ci     * @since 9
462961847f8eSopenharmony_ci     */
463061847f8eSopenharmony_ci    /**
463161847f8eSopenharmony_ci     * Queries data in the database based on specified conditions.
463261847f8eSopenharmony_ci     *
463361847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - The specified query condition by the instance object of {@link RdbPredicates}.
463461847f8eSopenharmony_ci     * @param { Array<string> } columns - The columns to query. If the value is empty array, the query applies to all columns.
463561847f8eSopenharmony_ci     * @param { AsyncCallback<ResultSet> } callback - The {@link ResultSet} object if the operation is successful.
463661847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
463761847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
463861847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
463961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
464061847f8eSopenharmony_ci     * @crossplatform
464161847f8eSopenharmony_ci     * @since 10
464261847f8eSopenharmony_ci     */
464361847f8eSopenharmony_ci    /**
464461847f8eSopenharmony_ci     * Queries data in the database based on specified conditions.
464561847f8eSopenharmony_ci     *
464661847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - The specified query condition by the instance object of {@link RdbPredicates}.
464761847f8eSopenharmony_ci     * @param { Array<string> } columns - The columns to query. If the value is empty array, the query applies to all columns.
464861847f8eSopenharmony_ci     * @param { AsyncCallback<ResultSet> } callback - The {@link ResultSet} object if the operation is successful.
464961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
465061847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
465161847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
465261847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
465361847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
465461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
465561847f8eSopenharmony_ci     * @crossplatform
465661847f8eSopenharmony_ci     * @since 12
465761847f8eSopenharmony_ci     */
465861847f8eSopenharmony_ci    query(predicates: RdbPredicates, columns: Array<string>, callback: AsyncCallback<ResultSet>): void;
465961847f8eSopenharmony_ci
466061847f8eSopenharmony_ci    /**
466161847f8eSopenharmony_ci     * Queries data in the database based on specified conditions.
466261847f8eSopenharmony_ci     *
466361847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - The specified query condition by the instance object of {@link RdbPredicates}.
466461847f8eSopenharmony_ci     * @param { Array<string> } columns - The columns to query. If the value is null, the query applies to all columns.
466561847f8eSopenharmony_ci     * @returns { Promise<ResultSet> } The {@link ResultSet} object if the operation is successful.
466661847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
466761847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
466861847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
466961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
467061847f8eSopenharmony_ci     * @since 9
467161847f8eSopenharmony_ci     */
467261847f8eSopenharmony_ci    /**
467361847f8eSopenharmony_ci     * Queries data in the database based on specified conditions.
467461847f8eSopenharmony_ci     *
467561847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - The specified query condition by the instance object of {@link RdbPredicates}.
467661847f8eSopenharmony_ci     * @param { Array<string> } columns - The columns to query. If the value is null, the query applies to all columns.
467761847f8eSopenharmony_ci     * @returns { Promise<ResultSet> } The {@link ResultSet} object if the operation is successful.
467861847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
467961847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
468061847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
468161847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
468261847f8eSopenharmony_ci     * @crossplatform
468361847f8eSopenharmony_ci     * @since 10
468461847f8eSopenharmony_ci     */
468561847f8eSopenharmony_ci    /**
468661847f8eSopenharmony_ci     * Queries data in the database based on specified conditions.
468761847f8eSopenharmony_ci     *
468861847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - The specified query condition by the instance object of {@link RdbPredicates}.
468961847f8eSopenharmony_ci     * @param { Array<string> } columns - The columns to query. If the value is null, the query applies to all columns.
469061847f8eSopenharmony_ci     * @returns { Promise<ResultSet> } The {@link ResultSet} object if the operation is successful.
469161847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
469261847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
469361847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
469461847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
469561847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
469661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
469761847f8eSopenharmony_ci     * @crossplatform
469861847f8eSopenharmony_ci     * @since 12
469961847f8eSopenharmony_ci     */
470061847f8eSopenharmony_ci    query(predicates: RdbPredicates, columns?: Array<string>): Promise<ResultSet>;
470161847f8eSopenharmony_ci
470261847f8eSopenharmony_ci    /**
470361847f8eSopenharmony_ci     * Queries data in the database based on specified conditions.
470461847f8eSopenharmony_ci     *
470561847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
470661847f8eSopenharmony_ci     * @param { dataSharePredicates.DataSharePredicates } predicates - The specified query condition by the instance object
470761847f8eSopenharmony_ci     *                                                    of {@link dataSharePredicates.DataSharePredicates}.
470861847f8eSopenharmony_ci     * @param { AsyncCallback<ResultSet> } callback - The {@link ResultSet} object if the operation is successful.
470961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
471061847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
471161847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
471261847f8eSopenharmony_ci     * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API.
471361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
471461847f8eSopenharmony_ci     * @systemapi
471561847f8eSopenharmony_ci     * @StageModelOnly
471661847f8eSopenharmony_ci     * @since 10
471761847f8eSopenharmony_ci     */
471861847f8eSopenharmony_ci    /**
471961847f8eSopenharmony_ci     * Queries data in the database based on specified conditions.
472061847f8eSopenharmony_ci     *
472161847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
472261847f8eSopenharmony_ci     * @param { dataSharePredicates.DataSharePredicates } predicates - The specified query condition by the instance object
472361847f8eSopenharmony_ci     *                                                    of {@link dataSharePredicates.DataSharePredicates}.
472461847f8eSopenharmony_ci     * @param { AsyncCallback<ResultSet> } callback - The {@link ResultSet} object if the operation is successful.
472561847f8eSopenharmony_ci     * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API.
472661847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
472761847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
472861847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
472961847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
473061847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
473161847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
473261847f8eSopenharmony_ci     * @systemapi
473361847f8eSopenharmony_ci     * @StageModelOnly
473461847f8eSopenharmony_ci     * @since 12
473561847f8eSopenharmony_ci     */
473661847f8eSopenharmony_ci    query(table: string, predicates: dataSharePredicates.DataSharePredicates, callback: AsyncCallback<ResultSet>): void;
473761847f8eSopenharmony_ci
473861847f8eSopenharmony_ci    /**
473961847f8eSopenharmony_ci     * Queries data in the database based on specified conditions.
474061847f8eSopenharmony_ci     *
474161847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
474261847f8eSopenharmony_ci     * @param { dataSharePredicates.DataSharePredicates } predicates - The specified query condition by the instance object
474361847f8eSopenharmony_ci     *                                                    of {@link dataSharePredicates.DataSharePredicates}.
474461847f8eSopenharmony_ci     * @param { Array<string> } columns - The columns to query. If the value is empty array, the query applies to all columns.
474561847f8eSopenharmony_ci     * @param { AsyncCallback<ResultSet> } callback - The {@link ResultSet} object if the operation is successful.
474661847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
474761847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
474861847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
474961847f8eSopenharmony_ci     * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API.
475061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
475161847f8eSopenharmony_ci     * @systemapi
475261847f8eSopenharmony_ci     * @StageModelOnly
475361847f8eSopenharmony_ci     * @since 9
475461847f8eSopenharmony_ci     */
475561847f8eSopenharmony_ci    /**
475661847f8eSopenharmony_ci     * Queries data in the database based on specified conditions.
475761847f8eSopenharmony_ci     *
475861847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
475961847f8eSopenharmony_ci     * @param { dataSharePredicates.DataSharePredicates } predicates - The specified query condition by the instance object
476061847f8eSopenharmony_ci     *                                                    of {@link dataSharePredicates.DataSharePredicates}.
476161847f8eSopenharmony_ci     * @param { Array<string> } columns - The columns to query. If the value is empty array, the query applies to all columns.
476261847f8eSopenharmony_ci     * @param { AsyncCallback<ResultSet> } callback - The {@link ResultSet} object if the operation is successful.
476361847f8eSopenharmony_ci     * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API.
476461847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
476561847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
476661847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
476761847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
476861847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
476961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
477061847f8eSopenharmony_ci     * @systemapi
477161847f8eSopenharmony_ci     * @StageModelOnly
477261847f8eSopenharmony_ci     * @since 12
477361847f8eSopenharmony_ci     */
477461847f8eSopenharmony_ci    query(
477561847f8eSopenharmony_ci      table: string,
477661847f8eSopenharmony_ci      predicates: dataSharePredicates.DataSharePredicates,
477761847f8eSopenharmony_ci      columns: Array<string>,
477861847f8eSopenharmony_ci      callback: AsyncCallback<ResultSet>
477961847f8eSopenharmony_ci    ): void;
478061847f8eSopenharmony_ci
478161847f8eSopenharmony_ci    /**
478261847f8eSopenharmony_ci     * Queries data in the database based on specified conditions.
478361847f8eSopenharmony_ci     *
478461847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
478561847f8eSopenharmony_ci     * @param { dataSharePredicates.DataSharePredicates } predicates - The specified query condition by the instance object
478661847f8eSopenharmony_ci     *                                                    of {@link dataSharePredicates.DataSharePredicates}.
478761847f8eSopenharmony_ci     * @param { Array<string> } columns - The columns to query. If the value is null, the query applies to all columns.
478861847f8eSopenharmony_ci     * @returns { Promise<ResultSet> } The {@link ResultSet} object if the operation is successful.
478961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
479061847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
479161847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
479261847f8eSopenharmony_ci     * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API.
479361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
479461847f8eSopenharmony_ci     * @systemapi
479561847f8eSopenharmony_ci     * @StageModelOnly
479661847f8eSopenharmony_ci     * @since 9
479761847f8eSopenharmony_ci     */
479861847f8eSopenharmony_ci    /**
479961847f8eSopenharmony_ci     * Queries data in the database based on specified conditions.
480061847f8eSopenharmony_ci     *
480161847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
480261847f8eSopenharmony_ci     * @param { dataSharePredicates.DataSharePredicates } predicates - The specified query condition by the instance object
480361847f8eSopenharmony_ci     *                                                    of {@link dataSharePredicates.DataSharePredicates}.
480461847f8eSopenharmony_ci     * @param { Array<string> } columns - The columns to query. If the value is null, the query applies to all columns.
480561847f8eSopenharmony_ci     * @returns { Promise<ResultSet> } The {@link ResultSet} object if the operation is successful.
480661847f8eSopenharmony_ci     * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API.
480761847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
480861847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
480961847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
481061847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
481161847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
481261847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
481361847f8eSopenharmony_ci     * @systemapi
481461847f8eSopenharmony_ci     * @StageModelOnly
481561847f8eSopenharmony_ci     * @since 12
481661847f8eSopenharmony_ci     */
481761847f8eSopenharmony_ci    query(
481861847f8eSopenharmony_ci      table: string,
481961847f8eSopenharmony_ci      predicates: dataSharePredicates.DataSharePredicates,
482061847f8eSopenharmony_ci      columns?: Array<string>
482161847f8eSopenharmony_ci    ): Promise<ResultSet>;
482261847f8eSopenharmony_ci
482361847f8eSopenharmony_ci    /**
482461847f8eSopenharmony_ci     * Queries data in the database based on specified conditions with sync function.
482561847f8eSopenharmony_ci     *
482661847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - The specified query condition by the instance object of {@link RdbPredicates}.
482761847f8eSopenharmony_ci     * @param { Array<string> } columns - The columns to query. If the value is empty array, the query applies to all columns.
482861847f8eSopenharmony_ci     * @returns { ResultSet } The {@link ResultSet} object if the operation is successful.
482961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
483061847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
483161847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
483261847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
483361847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
483461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
483561847f8eSopenharmony_ci     * @crossplatform
483661847f8eSopenharmony_ci     * @since 12
483761847f8eSopenharmony_ci     */
483861847f8eSopenharmony_ci    querySync(predicates: RdbPredicates, columns?: Array<string>): ResultSet;
483961847f8eSopenharmony_ci
484061847f8eSopenharmony_ci    /**
484161847f8eSopenharmony_ci     * Queries data in the database based on SQL statement.
484261847f8eSopenharmony_ci     *
484361847f8eSopenharmony_ci     * @param { string } sql - Indicates the SQL statement to execute.
484461847f8eSopenharmony_ci     * @param { AsyncCallback<ResultSet> } callback - The {@link ResultSet} object if the operation is successful.
484561847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
484661847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
484761847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
484861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
484961847f8eSopenharmony_ci     * @crossplatform
485061847f8eSopenharmony_ci     * @since 10
485161847f8eSopenharmony_ci     */
485261847f8eSopenharmony_ci    /**
485361847f8eSopenharmony_ci     * Queries data in the database based on SQL statement.
485461847f8eSopenharmony_ci     *
485561847f8eSopenharmony_ci     * @param { string } sql - Indicates the SQL statement to execute.
485661847f8eSopenharmony_ci     * @param { AsyncCallback<ResultSet> } callback - The {@link ResultSet} object if the operation is successful.
485761847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
485861847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
485961847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
486061847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
486161847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
486261847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
486361847f8eSopenharmony_ci     * @crossplatform
486461847f8eSopenharmony_ci     * @since 12
486561847f8eSopenharmony_ci     */
486661847f8eSopenharmony_ci    querySql(sql: string, callback: AsyncCallback<ResultSet>): void;
486761847f8eSopenharmony_ci
486861847f8eSopenharmony_ci    /**
486961847f8eSopenharmony_ci     * Queries data in the database based on SQL statement.
487061847f8eSopenharmony_ci     *
487161847f8eSopenharmony_ci     * @param { string } sql - Indicates the SQL statement to execute.
487261847f8eSopenharmony_ci     * @param { Array<ValueType> } bindArgs - Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings.
487361847f8eSopenharmony_ci     * @param { AsyncCallback<ResultSet> } callback - The {@link ResultSet} object if the operation is successful.
487461847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
487561847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
487661847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
487761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
487861847f8eSopenharmony_ci     * @since 9
487961847f8eSopenharmony_ci     */
488061847f8eSopenharmony_ci    /**
488161847f8eSopenharmony_ci     * Queries data in the database based on SQL statement.
488261847f8eSopenharmony_ci     *
488361847f8eSopenharmony_ci     * @param { string } sql - Indicates the SQL statement to execute.
488461847f8eSopenharmony_ci     * @param { Array<ValueType> } bindArgs - Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings.
488561847f8eSopenharmony_ci     * @param { AsyncCallback<ResultSet> } callback - The {@link ResultSet} object if the operation is successful.
488661847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
488761847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
488861847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
488961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
489061847f8eSopenharmony_ci     * @crossplatform
489161847f8eSopenharmony_ci     * @since 10
489261847f8eSopenharmony_ci     */
489361847f8eSopenharmony_ci    /**
489461847f8eSopenharmony_ci     * Queries data in the database based on SQL statement.
489561847f8eSopenharmony_ci     *
489661847f8eSopenharmony_ci     * @param { string } sql - Indicates the SQL statement to execute.
489761847f8eSopenharmony_ci     * @param { Array<ValueType> } bindArgs - Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings.
489861847f8eSopenharmony_ci     * @param { AsyncCallback<ResultSet> } callback - The {@link ResultSet} object if the operation is successful.
489961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
490061847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
490161847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
490261847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
490361847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
490461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
490561847f8eSopenharmony_ci     * @crossplatform
490661847f8eSopenharmony_ci     * @since 12
490761847f8eSopenharmony_ci     */
490861847f8eSopenharmony_ci    querySql(sql: string, bindArgs: Array<ValueType>, callback: AsyncCallback<ResultSet>): void;
490961847f8eSopenharmony_ci
491061847f8eSopenharmony_ci    /**
491161847f8eSopenharmony_ci     * Queries data in the database based on SQL statement.
491261847f8eSopenharmony_ci     *
491361847f8eSopenharmony_ci     * @param { string } sql - Indicates the SQL statement to execute.
491461847f8eSopenharmony_ci     * @param { Array<ValueType> } bindArgs - Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings.
491561847f8eSopenharmony_ci     * @returns { Promise<ResultSet> } The {@link ResultSet} object if the operation is successful.
491661847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
491761847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
491861847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
491961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
492061847f8eSopenharmony_ci     * @since 9
492161847f8eSopenharmony_ci     */
492261847f8eSopenharmony_ci    /**
492361847f8eSopenharmony_ci     * Queries data in the database based on SQL statement.
492461847f8eSopenharmony_ci     *
492561847f8eSopenharmony_ci     * @param { string } sql - Indicates the SQL statement to execute.
492661847f8eSopenharmony_ci     * @param { Array<ValueType> } bindArgs - Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings.
492761847f8eSopenharmony_ci     * @returns { Promise<ResultSet> } The {@link ResultSet} object if the operation is successful.
492861847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
492961847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
493061847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
493161847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
493261847f8eSopenharmony_ci     * @crossplatform
493361847f8eSopenharmony_ci     * @since 10
493461847f8eSopenharmony_ci     */
493561847f8eSopenharmony_ci    /**
493661847f8eSopenharmony_ci     * Queries data in the database based on SQL statement.
493761847f8eSopenharmony_ci     *
493861847f8eSopenharmony_ci     * @param { string } sql - Indicates the SQL statement to execute.
493961847f8eSopenharmony_ci     * @param { Array<ValueType> } bindArgs - Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings.
494061847f8eSopenharmony_ci     * @returns { Promise<ResultSet> } The {@link ResultSet} object if the operation is successful.
494161847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
494261847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
494361847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
494461847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
494561847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
494661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
494761847f8eSopenharmony_ci     * @crossplatform
494861847f8eSopenharmony_ci     * @since 12
494961847f8eSopenharmony_ci     */
495061847f8eSopenharmony_ci    querySql(sql: string, bindArgs?: Array<ValueType>): Promise<ResultSet>;
495161847f8eSopenharmony_ci
495261847f8eSopenharmony_ci    /**
495361847f8eSopenharmony_ci     * Queries data in the database based on SQL statement with sync interface.
495461847f8eSopenharmony_ci     *
495561847f8eSopenharmony_ci     * @param { string } sql - Indicates the SQL statement to execute.
495661847f8eSopenharmony_ci     * @param { Array<ValueType> } bindArgs - Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings.
495761847f8eSopenharmony_ci     * @returns { ResultSet } The {@link ResultSet} object if the operation is successful.
495861847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
495961847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
496061847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
496161847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
496261847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
496361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
496461847f8eSopenharmony_ci     * @crossplatform
496561847f8eSopenharmony_ci     * @since 12
496661847f8eSopenharmony_ci     */
496761847f8eSopenharmony_ci    querySqlSync(sql: string, bindArgs?: Array<ValueType>): ResultSet;
496861847f8eSopenharmony_ci
496961847f8eSopenharmony_ci    /**
497061847f8eSopenharmony_ci     * Obtains the modify time of rows corresponding to the primary keys.
497161847f8eSopenharmony_ci     *
497261847f8eSopenharmony_ci     * @param { string } table - Indicates the name of the table to check.
497361847f8eSopenharmony_ci     * @param { string } columnName - Indicates the name of the column to check.
497461847f8eSopenharmony_ci     * @param { PRIKeyType[] } primaryKeys - Indicates the primary keys of the rows to check.
497561847f8eSopenharmony_ci     * @returns { Promise<ModifyTime> } -The promise returned by the function. ModifyTime indicates the modify time of current row.
497661847f8eSopenharmony_ci     * If this table does not support cloud, the {@link ModifyTime} will be empty.
497761847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
497861847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
497961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 3 - 4  parameter(s)! 2. The RdbStore must be not nullptr.
498061847f8eSopenharmony_ci     * 3. The tablesNames must be not empty string. 4. The columnName must be not empty string. 5. The PRIKey must be number or string.
498161847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
498261847f8eSopenharmony_ci     * @since 10
498361847f8eSopenharmony_ci     */
498461847f8eSopenharmony_ci    /**
498561847f8eSopenharmony_ci     * Obtains the modify time of rows corresponding to the primary keys.
498661847f8eSopenharmony_ci     *
498761847f8eSopenharmony_ci     * @param { string } table - Indicates the name of the table to check.
498861847f8eSopenharmony_ci     * @param { string } columnName - Indicates the name of the column to check.
498961847f8eSopenharmony_ci     * @param { PRIKeyType[] } primaryKeys - Indicates the primary keys of the rows to check.
499061847f8eSopenharmony_ci     * @returns { Promise<ModifyTime> } -The promise returned by the function. ModifyTime indicates the modify time of current row.
499161847f8eSopenharmony_ci     * If this table does not support cloud, the {@link ModifyTime} will be empty.
499261847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 3 - 4  parameter(s)! 2. The RdbStore must be not nullptr.
499361847f8eSopenharmony_ci     * 3. The tablesNames must be not empty string. 4. The columnName must be not empty string. 5. The PRIKey must be number or string.
499461847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
499561847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
499661847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
499761847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
499861847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
499961847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
500061847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
500161847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
500261847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
500361847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
500461847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
500561847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
500661847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
500761847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
500861847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
500961847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
501061847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
501161847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
501261847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
501361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
501461847f8eSopenharmony_ci     * @since 12
501561847f8eSopenharmony_ci     */
501661847f8eSopenharmony_ci    getModifyTime(table: string, columnName: string, primaryKeys: PRIKeyType[]): Promise<ModifyTime>;
501761847f8eSopenharmony_ci
501861847f8eSopenharmony_ci    /**
501961847f8eSopenharmony_ci     * Obtains the modify time of rows corresponding to the primary keys.
502061847f8eSopenharmony_ci     *
502161847f8eSopenharmony_ci     * @param { string } table - Indicates the name of the table to check.
502261847f8eSopenharmony_ci     * @param { string } columnName - Indicates the name of the column to check.
502361847f8eSopenharmony_ci     * @param { PRIKeyType[] } primaryKeys - Indicates the primary keys of the rows to check.
502461847f8eSopenharmony_ci     * @param { AsyncCallback<ModifyTime> } callback - The callback of getModifyTime. ModifyTime indicates the modify time of current row.
502561847f8eSopenharmony_ci     * If this table does not support cloud, the {@link ModifyTime} will be empty.
502661847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
502761847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
502861847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 3 - 4  parameter(s)! 2. The RdbStore must be not nullptr.
502961847f8eSopenharmony_ci     * 3. The tablesNames must be not empty string. 4. The columnName must be not empty string. 5. The PRIKey must be number or string.
503061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
503161847f8eSopenharmony_ci     * @since 10
503261847f8eSopenharmony_ci     */
503361847f8eSopenharmony_ci    /**
503461847f8eSopenharmony_ci     * Obtains the modify time of rows corresponding to the primary keys.
503561847f8eSopenharmony_ci     *
503661847f8eSopenharmony_ci     * @param { string } table - Indicates the name of the table to check.
503761847f8eSopenharmony_ci     * @param { string } columnName - Indicates the name of the column to check.
503861847f8eSopenharmony_ci     * @param { PRIKeyType[] } primaryKeys - Indicates the primary keys of the rows to check.
503961847f8eSopenharmony_ci     * @param { AsyncCallback<ModifyTime> } callback - The callback of getModifyTime. ModifyTime indicates the modify time of current row.
504061847f8eSopenharmony_ci     * If this table does not support cloud, the {@link ModifyTime} will be empty.
504161847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 3 - 4  parameter(s)! 2. The RdbStore must be not nullptr.
504261847f8eSopenharmony_ci     * 3. The tablesNames must be not empty string. 4. The columnName must be not empty string. 5. The PRIKey must be number or string.
504361847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
504461847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
504561847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
504661847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
504761847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
504861847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
504961847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
505061847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
505161847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
505261847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
505361847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
505461847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
505561847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
505661847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
505761847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
505861847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
505961847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
506061847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
506161847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
506261847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
506361847f8eSopenharmony_ci     * @since 12
506461847f8eSopenharmony_ci     */
506561847f8eSopenharmony_ci    getModifyTime(
506661847f8eSopenharmony_ci      table: string,
506761847f8eSopenharmony_ci      columnName: string,
506861847f8eSopenharmony_ci      primaryKeys: PRIKeyType[],
506961847f8eSopenharmony_ci      callback: AsyncCallback<ModifyTime>
507061847f8eSopenharmony_ci    ): void;
507161847f8eSopenharmony_ci
507261847f8eSopenharmony_ci    /**
507361847f8eSopenharmony_ci     * Cleans the dirty data, which is the data deleted in the cloud.
507461847f8eSopenharmony_ci     *
507561847f8eSopenharmony_ci     * Data with a cursor smaller than the specified cursor will be cleaned up.
507661847f8eSopenharmony_ci     *
507761847f8eSopenharmony_ci     * @param { string } table - Indicates the name of the table to check.
507861847f8eSopenharmony_ci     * @param { number } cursor - Indicates the position of the data to be cleaned up.
507961847f8eSopenharmony_ci     * @param { AsyncCallback<void> } callback - Indicates the callback invoked to return the result.
508061847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
508161847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
508261847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 1 - 3  parameter(s)! 2. The RdbStore must be not nullptr.
508361847f8eSopenharmony_ci     * 3. The tablesNames must be not empty string. 4. The cursor must be valid cursor.
508461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
508561847f8eSopenharmony_ci     * @since 11
508661847f8eSopenharmony_ci     */
508761847f8eSopenharmony_ci    /**
508861847f8eSopenharmony_ci     * Cleans the dirty data, which is the data deleted in the cloud.
508961847f8eSopenharmony_ci     *
509061847f8eSopenharmony_ci     * Data with a cursor smaller than the specified cursor will be cleaned up.
509161847f8eSopenharmony_ci     *
509261847f8eSopenharmony_ci     * @param { string } table - Indicates the name of the table to check.
509361847f8eSopenharmony_ci     * @param { number } cursor - Indicates the position of the data to be cleaned up.
509461847f8eSopenharmony_ci     * @param { AsyncCallback<void> } callback - Indicates the callback invoked to return the result.
509561847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 1 - 3  parameter(s)! 2. The RdbStore must be not nullptr.
509661847f8eSopenharmony_ci     * 3. The tablesNames must be not empty string. 4. The cursor must be valid cursor.
509761847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
509861847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
509961847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
510061847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
510161847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
510261847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
510361847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
510461847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
510561847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
510661847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
510761847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
510861847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
510961847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
511061847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
511161847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
511261847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
511361847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
511461847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
511561847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
511661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
511761847f8eSopenharmony_ci     * @since 12
511861847f8eSopenharmony_ci     */
511961847f8eSopenharmony_ci    cleanDirtyData(table: string, cursor: number, callback: AsyncCallback<void>): void;
512061847f8eSopenharmony_ci
512161847f8eSopenharmony_ci    /**
512261847f8eSopenharmony_ci     * Cleans all dirty data deleted in the cloud.
512361847f8eSopenharmony_ci     *
512461847f8eSopenharmony_ci     * @param { string } table - Indicates the name of the table to check.
512561847f8eSopenharmony_ci     * @param { AsyncCallback<void> } callback - The callback of clean.
512661847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
512761847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
512861847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 1 - 3  parameter(s)! 2. The RdbStore must be not nullptr.
512961847f8eSopenharmony_ci     * 3. The tablesNames must be not empty string.
513061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
513161847f8eSopenharmony_ci     * @since 11
513261847f8eSopenharmony_ci     */
513361847f8eSopenharmony_ci    /**
513461847f8eSopenharmony_ci     * Cleans all dirty data deleted in the cloud.
513561847f8eSopenharmony_ci     *
513661847f8eSopenharmony_ci     * @param { string } table - Indicates the name of the table to check.
513761847f8eSopenharmony_ci     * @param { AsyncCallback<void> } callback - The callback of clean.
513861847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 1 - 3  parameter(s). 2. The RdbStore must be not nullptr.
513961847f8eSopenharmony_ci     * 3. The tablesNames must be not empty string.
514061847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
514161847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
514261847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
514361847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
514461847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
514561847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
514661847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
514761847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
514861847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
514961847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
515061847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
515161847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
515261847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
515361847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
515461847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
515561847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
515661847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
515761847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
515861847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
515961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
516061847f8eSopenharmony_ci     * @since 12
516161847f8eSopenharmony_ci     */
516261847f8eSopenharmony_ci    cleanDirtyData(table: string, callback: AsyncCallback<void>): void;
516361847f8eSopenharmony_ci
516461847f8eSopenharmony_ci    /**
516561847f8eSopenharmony_ci     * Cleans dirty data deleted in the cloud.
516661847f8eSopenharmony_ci     *
516761847f8eSopenharmony_ci     * If a cursor is specified, data with a cursor smaller than the specified cursor will be cleaned up.
516861847f8eSopenharmony_ci     * otherwise clean all.
516961847f8eSopenharmony_ci     *
517061847f8eSopenharmony_ci     * @param { string } table - Indicates the name of the table to check.
517161847f8eSopenharmony_ci     * @param { number } [cursor] - Indicates the cursor.
517261847f8eSopenharmony_ci     * @returns { Promise<void> } -The promise returned by the function.
517361847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
517461847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
517561847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 1 - 3  parameter(s)! 2. The RdbStore must be not nullptr.
517661847f8eSopenharmony_ci     * 3. The tablesNames must be not empty string. 4. The cursor must be valid cursor.
517761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
517861847f8eSopenharmony_ci     * @since 11
517961847f8eSopenharmony_ci     */
518061847f8eSopenharmony_ci    /**
518161847f8eSopenharmony_ci     * Cleans dirty data deleted in the cloud.
518261847f8eSopenharmony_ci     *
518361847f8eSopenharmony_ci     * If a cursor is specified, data with a cursor smaller than the specified cursor will be cleaned up.
518461847f8eSopenharmony_ci     * otherwise clean all.
518561847f8eSopenharmony_ci     *
518661847f8eSopenharmony_ci     * @param { string } table - Indicates the name of the table to check.
518761847f8eSopenharmony_ci     * @param { number } [cursor] - Indicates the cursor.
518861847f8eSopenharmony_ci     * @returns { Promise<void> } -The promise returned by the function.
518961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 1 - 3  parameter(s)! 2. The RdbStore must be not nullptr.
519061847f8eSopenharmony_ci     * 3. The tablesNames must be not empty string. 4. The cursor must be valid cursor.
519161847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
519261847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
519361847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
519461847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
519561847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
519661847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
519761847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
519861847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
519961847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
520061847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
520161847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
520261847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
520361847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
520461847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
520561847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
520661847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
520761847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
520861847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
520961847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
521061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
521161847f8eSopenharmony_ci     * @since 12
521261847f8eSopenharmony_ci     */
521361847f8eSopenharmony_ci    cleanDirtyData(table: string, cursor?: number): Promise<void>;
521461847f8eSopenharmony_ci
521561847f8eSopenharmony_ci    /**
521661847f8eSopenharmony_ci     * Obtains sharing resource of rows corresponding to the predicates.
521761847f8eSopenharmony_ci     *
521861847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - The specified query condition by the instance object of {@link RdbPredicates}.
521961847f8eSopenharmony_ci     * @param { Array<string> } [columns] - The specified columns to query.
522061847f8eSopenharmony_ci     * @returns { Promise<ResultSet> } -The promise returned by the function.
522161847f8eSopenharmony_ci     * {@link ResultSet} is query result.
522261847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
522361847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
522461847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 1 - 3  parameter(s)! 2. The RdbStore must be not nullptr.
522561847f8eSopenharmony_ci     * 3. The predicates must be an RdbPredicates. 4. The columns must be a string array.
522661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
522761847f8eSopenharmony_ci     * @systemapi
522861847f8eSopenharmony_ci     * @since 11
522961847f8eSopenharmony_ci     */
523061847f8eSopenharmony_ci    /**
523161847f8eSopenharmony_ci     * Obtains sharing resource of rows corresponding to the predicates.
523261847f8eSopenharmony_ci     *
523361847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - The specified query condition by the instance object of {@link RdbPredicates}.
523461847f8eSopenharmony_ci     * @param { Array<string> } [columns] - The specified columns to query.
523561847f8eSopenharmony_ci     * @returns { Promise<ResultSet> } -The promise returned by the function.
523661847f8eSopenharmony_ci     * {@link ResultSet} is query result.
523761847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 1 - 3  parameter(s)! 2. The RdbStore must be not nullptr.
523861847f8eSopenharmony_ci     * 3. The predicates must be an RdbPredicates. 4. The columns must be a string array.
523961847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
524061847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
524161847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
524261847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
524361847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
524461847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
524561847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
524661847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
524761847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
524861847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
524961847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
525061847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
525161847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
525261847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
525361847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
525461847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
525561847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
525661847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
525761847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
525861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
525961847f8eSopenharmony_ci     * @systemapi
526061847f8eSopenharmony_ci     * @since 12
526161847f8eSopenharmony_ci     */
526261847f8eSopenharmony_ci    querySharingResource(predicates: RdbPredicates, columns?: Array<string>): Promise<ResultSet>;
526361847f8eSopenharmony_ci
526461847f8eSopenharmony_ci    /**
526561847f8eSopenharmony_ci     * Obtains sharing resource of rows corresponding to the predicates.
526661847f8eSopenharmony_ci     *
526761847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - The specified query condition by the instance object of {@link RdbPredicates}.
526861847f8eSopenharmony_ci     * @param { AsyncCallback<ResultSet> } callback - The callback of querySharingResource.
526961847f8eSopenharmony_ci     * {@link ResultSet} is query result.
527061847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
527161847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
527261847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 1 - 3  parameter(s)! 2. The RdbStore must be not nullptr.
527361847f8eSopenharmony_ci     * 3. The predicates must be an RdbPredicates.
527461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
527561847f8eSopenharmony_ci     * @systemapi
527661847f8eSopenharmony_ci     * @since 11
527761847f8eSopenharmony_ci     */
527861847f8eSopenharmony_ci    /**
527961847f8eSopenharmony_ci     * Obtains sharing resource of rows corresponding to the predicates.
528061847f8eSopenharmony_ci     *
528161847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - The specified query condition by the instance object of {@link RdbPredicates}.
528261847f8eSopenharmony_ci     * @param { AsyncCallback<ResultSet> } callback - The callback of querySharingResource.
528361847f8eSopenharmony_ci     * {@link ResultSet} is query result.
528461847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 1 - 3  parameter(s)! 2. The RdbStore must be not nullptr.
528561847f8eSopenharmony_ci     * 3. The predicates must be an RdbPredicates.
528661847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
528761847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
528861847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
528961847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
529061847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
529161847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
529261847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
529361847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
529461847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
529561847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
529661847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
529761847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
529861847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
529961847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
530061847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
530161847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
530261847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
530361847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
530461847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
530561847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
530661847f8eSopenharmony_ci     * @systemapi
530761847f8eSopenharmony_ci     * @since 12
530861847f8eSopenharmony_ci     */
530961847f8eSopenharmony_ci    querySharingResource(predicates: RdbPredicates, callback: AsyncCallback<ResultSet>): void;
531061847f8eSopenharmony_ci
531161847f8eSopenharmony_ci    /**
531261847f8eSopenharmony_ci     * Obtains sharing resource of rows corresponding to the predicates.
531361847f8eSopenharmony_ci     *
531461847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - The specified query condition by the instance object of {@link RdbPredicates}.
531561847f8eSopenharmony_ci     * @param { Array<string> } columns - The specified columns to query.
531661847f8eSopenharmony_ci     * @param { AsyncCallback<ResultSet> } callback - The callback of querySharingResource.
531761847f8eSopenharmony_ci     * {@link ResultSet} is query result.
531861847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
531961847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
532061847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 1 - 3  parameter(s)! 2. The RdbStore must be not nullptr.
532161847f8eSopenharmony_ci     * 3. The predicates must be an RdbPredicates. 4. The columns must be a string array.
532261847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
532361847f8eSopenharmony_ci     * @systemapi
532461847f8eSopenharmony_ci     * @since 11
532561847f8eSopenharmony_ci     */
532661847f8eSopenharmony_ci    /**
532761847f8eSopenharmony_ci     * Obtains sharing resource of rows corresponding to the predicates.
532861847f8eSopenharmony_ci     *
532961847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - The specified query condition by the instance object of {@link RdbPredicates}.
533061847f8eSopenharmony_ci     * @param { Array<string> } columns - The specified columns to query.
533161847f8eSopenharmony_ci     * @param { AsyncCallback<ResultSet> } callback - The callback of querySharingResource.
533261847f8eSopenharmony_ci     * {@link ResultSet} is query result.
533361847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 1 - 3  parameter(s)! 2. The RdbStore must be not nullptr.
533461847f8eSopenharmony_ci     * 3. The predicates must be an RdbPredicates. 4. The columns must be a string array.
533561847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
533661847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
533761847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
533861847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
533961847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
534061847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
534161847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
534261847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
534361847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
534461847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
534561847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
534661847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
534761847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
534861847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
534961847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
535061847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
535161847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
535261847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
535361847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
535461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
535561847f8eSopenharmony_ci     * @systemapi
535661847f8eSopenharmony_ci     * @since 12
535761847f8eSopenharmony_ci     */
535861847f8eSopenharmony_ci    querySharingResource(predicates: RdbPredicates, columns: Array<string>, callback: AsyncCallback<ResultSet>): void;
535961847f8eSopenharmony_ci
536061847f8eSopenharmony_ci    /**
536161847f8eSopenharmony_ci     * Executes a SQL statement that contains specified parameters but returns no value.
536261847f8eSopenharmony_ci     *
536361847f8eSopenharmony_ci     * @param { string } sql - Indicates the SQL statement to execute.
536461847f8eSopenharmony_ci     * @param { AsyncCallback<void> } callback - The callback of executeSql.
536561847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
536661847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
536761847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
536861847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
536961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
537061847f8eSopenharmony_ci     * @crossplatform
537161847f8eSopenharmony_ci     * @since 10
537261847f8eSopenharmony_ci     */
537361847f8eSopenharmony_ci    /**
537461847f8eSopenharmony_ci     * Executes a SQL statement that contains specified parameters but returns no value.
537561847f8eSopenharmony_ci     *
537661847f8eSopenharmony_ci     * @param { string } sql - Indicates the SQL statement to execute.
537761847f8eSopenharmony_ci     * @param { AsyncCallback<void> } callback - The callback of executeSql.
537861847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
537961847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
538061847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported the sql(attach,begin,commit,rollback etc.).
538161847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
538261847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
538361847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
538461847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
538561847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
538661847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
538761847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
538861847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
538961847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
539061847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
539161847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
539261847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
539361847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
539461847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
539561847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
539661847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
539761847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
539861847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
539961847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
540061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
540161847f8eSopenharmony_ci     * @crossplatform
540261847f8eSopenharmony_ci     * @since 12
540361847f8eSopenharmony_ci     */
540461847f8eSopenharmony_ci    executeSql(sql: string, callback: AsyncCallback<void>): void;
540561847f8eSopenharmony_ci
540661847f8eSopenharmony_ci    /**
540761847f8eSopenharmony_ci     * Executes a SQL statement that contains specified parameters but returns no value.
540861847f8eSopenharmony_ci     *
540961847f8eSopenharmony_ci     * @param { string } sql - Indicates the SQL statement to execute.
541061847f8eSopenharmony_ci     * @param { Array<ValueType> } bindArgs - Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings.
541161847f8eSopenharmony_ci     * @param { AsyncCallback<void> } callback - The callback of executeSql.
541261847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
541361847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
541461847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
541561847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
541661847f8eSopenharmony_ci     * @since 9
541761847f8eSopenharmony_ci     */
541861847f8eSopenharmony_ci    /**
541961847f8eSopenharmony_ci     * Executes a SQL statement that contains specified parameters but returns no value.
542061847f8eSopenharmony_ci     *
542161847f8eSopenharmony_ci     * @param { string } sql - Indicates the SQL statement to execute.
542261847f8eSopenharmony_ci     * @param { Array<ValueType> } bindArgs - Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings.
542361847f8eSopenharmony_ci     * @param { AsyncCallback<void> } callback - The callback of executeSql.
542461847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
542561847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
542661847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
542761847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
542861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
542961847f8eSopenharmony_ci     * @crossplatform
543061847f8eSopenharmony_ci     * @since 10
543161847f8eSopenharmony_ci     */
543261847f8eSopenharmony_ci    /**
543361847f8eSopenharmony_ci     * Executes a SQL statement that contains specified parameters but returns no value.
543461847f8eSopenharmony_ci     *
543561847f8eSopenharmony_ci     * @param { string } sql - Indicates the SQL statement to execute.
543661847f8eSopenharmony_ci     * @param { Array<ValueType> } bindArgs - Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings.
543761847f8eSopenharmony_ci     * @param { AsyncCallback<void> } callback - The callback of executeSql.
543861847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
543961847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
544061847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported the sql(attach,begin,commit,rollback etc.).
544161847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
544261847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
544361847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
544461847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
544561847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
544661847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
544761847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
544861847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
544961847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
545061847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
545161847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
545261847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
545361847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
545461847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
545561847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
545661847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
545761847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
545861847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
545961847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
546061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
546161847f8eSopenharmony_ci     * @crossplatform
546261847f8eSopenharmony_ci     * @since 12
546361847f8eSopenharmony_ci     */
546461847f8eSopenharmony_ci    executeSql(sql: string, bindArgs: Array<ValueType>, callback: AsyncCallback<void>): void;
546561847f8eSopenharmony_ci
546661847f8eSopenharmony_ci    /**
546761847f8eSopenharmony_ci     * Executes a SQL statement that contains specified parameters but returns no value.
546861847f8eSopenharmony_ci     *
546961847f8eSopenharmony_ci     * @param { string } sql - Indicates the SQL statement to execute.
547061847f8eSopenharmony_ci     * @param { Array<ValueType> } bindArgs - Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings.
547161847f8eSopenharmony_ci     * @returns { Promise<void> } The promise returned by the function.
547261847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
547361847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
547461847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
547561847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
547661847f8eSopenharmony_ci     * @since 9
547761847f8eSopenharmony_ci     */
547861847f8eSopenharmony_ci    /**
547961847f8eSopenharmony_ci     * Executes a SQL statement that contains specified parameters but returns no value.
548061847f8eSopenharmony_ci     *
548161847f8eSopenharmony_ci     * @param { string } sql - Indicates the SQL statement to execute.
548261847f8eSopenharmony_ci     * @param { Array<ValueType> } bindArgs - Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings.
548361847f8eSopenharmony_ci     * @returns { Promise<void> } The promise returned by the function.
548461847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
548561847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
548661847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
548761847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
548861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
548961847f8eSopenharmony_ci     * @crossplatform
549061847f8eSopenharmony_ci     * @since 10
549161847f8eSopenharmony_ci     */
549261847f8eSopenharmony_ci    /**
549361847f8eSopenharmony_ci     * Executes a SQL statement that contains specified parameters but returns no value.
549461847f8eSopenharmony_ci     *
549561847f8eSopenharmony_ci     * @param { string } sql - Indicates the SQL statement to execute.
549661847f8eSopenharmony_ci     * @param { Array<ValueType> } bindArgs - Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings.
549761847f8eSopenharmony_ci     * @returns { Promise<void> } The promise returned by the function.
549861847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
549961847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
550061847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported the sql(attach,begin,commit,rollback etc.).
550161847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
550261847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
550361847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
550461847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
550561847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
550661847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
550761847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
550861847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
550961847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
551061847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
551161847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
551261847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
551361847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
551461847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
551561847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
551661847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
551761847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
551861847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
551961847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
552061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
552161847f8eSopenharmony_ci     * @crossplatform
552261847f8eSopenharmony_ci     * @since 12
552361847f8eSopenharmony_ci     */
552461847f8eSopenharmony_ci    executeSql(sql: string, bindArgs?: Array<ValueType>): Promise<void>;
552561847f8eSopenharmony_ci
552661847f8eSopenharmony_ci    /**
552761847f8eSopenharmony_ci     * Executes a SQL statement that contains specified parameters and returns a value of ValueType.
552861847f8eSopenharmony_ci     *
552961847f8eSopenharmony_ci     * @param { string } sql - Indicates the SQL statement to execute.
553061847f8eSopenharmony_ci     * @param { Array<ValueType> } args - Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings.
553161847f8eSopenharmony_ci     * @returns { Promise<ValueType> } The promise returned by the function.
553261847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
553361847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
553461847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported the sql(attach,begin,commit,rollback etc.).
553561847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
553661847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
553761847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
553861847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
553961847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
554061847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
554161847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
554261847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
554361847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
554461847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
554561847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
554661847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
554761847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
554861847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
554961847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
555061847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
555161847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
555261847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
555361847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
555461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
555561847f8eSopenharmony_ci     * @since 12
555661847f8eSopenharmony_ci     */
555761847f8eSopenharmony_ci    execute(sql: string, args?: Array<ValueType>): Promise<ValueType>;
555861847f8eSopenharmony_ci
555961847f8eSopenharmony_ci    /**
556061847f8eSopenharmony_ci     * Executes a SQL statement that contains specified parameters and returns a value of ValueType.
556161847f8eSopenharmony_ci     *
556261847f8eSopenharmony_ci     * @param { string } sql - Indicates the SQL statement to execute.
556361847f8eSopenharmony_ci     * @param { number } txId - Indicates the transaction ID which is obtained by beginTrans or 0.
556461847f8eSopenharmony_ci     * @param { Array<ValueType> } args - Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings.
556561847f8eSopenharmony_ci     * @returns { Promise<ValueType> } The promise returned by the function.
556661847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
556761847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
556861847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported the sql(attach,begin,commit,rollback etc.).
556961847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
557061847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
557161847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
557261847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
557361847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
557461847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
557561847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
557661847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
557761847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
557861847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
557961847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
558061847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
558161847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
558261847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
558361847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
558461847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
558561847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
558661847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
558761847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
558861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
558961847f8eSopenharmony_ci     * @since 12
559061847f8eSopenharmony_ci     */
559161847f8eSopenharmony_ci    execute(sql: string, txId: number, args?: Array<ValueType>): Promise<ValueType>;
559261847f8eSopenharmony_ci
559361847f8eSopenharmony_ci    /**
559461847f8eSopenharmony_ci     * Executes a SQL statement that contains specified parameters and returns a value of ValueType with sync interface.
559561847f8eSopenharmony_ci     *
559661847f8eSopenharmony_ci     * @param { string } sql - Indicates the SQL statement to execute.
559761847f8eSopenharmony_ci     * @param { Array<ValueType> } args - Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings.
559861847f8eSopenharmony_ci     * @returns { ValueType } The promise returned by the function.
559961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
560061847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
560161847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
560261847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
560361847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
560461847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
560561847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
560661847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
560761847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
560861847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
560961847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
561061847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
561161847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
561261847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
561361847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
561461847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
561561847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
561661847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
561761847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
561861847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
561961847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
562061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
562161847f8eSopenharmony_ci     * @crossplatform
562261847f8eSopenharmony_ci     * @since 12
562361847f8eSopenharmony_ci     */
562461847f8eSopenharmony_ci    executeSync(sql: string, args?: Array<ValueType>): ValueType;
562561847f8eSopenharmony_ci
562661847f8eSopenharmony_ci    /**
562761847f8eSopenharmony_ci     * BeginTransaction before execute your sql.
562861847f8eSopenharmony_ci     *
562961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. The store must not be nullptr.
563061847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
563161847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
563261847f8eSopenharmony_ci     * @since 9
563361847f8eSopenharmony_ci     */
563461847f8eSopenharmony_ci    /**
563561847f8eSopenharmony_ci     * BeginTransaction before execute your sql.
563661847f8eSopenharmony_ci     *
563761847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
563861847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. The store must not be nullptr.
563961847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
564061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
564161847f8eSopenharmony_ci     * @crossplatform
564261847f8eSopenharmony_ci     * @since 10
564361847f8eSopenharmony_ci     */
564461847f8eSopenharmony_ci    /**
564561847f8eSopenharmony_ci     * BeginTransaction before execute your sql.
564661847f8eSopenharmony_ci     *
564761847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. The store must not be nullptr.
564861847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
564961847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
565061847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
565161847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
565261847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
565361847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
565461847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
565561847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
565661847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
565761847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
565861847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
565961847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
566061847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
566161847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
566261847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
566361847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
566461847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
566561847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
566661847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
566761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
566861847f8eSopenharmony_ci     * @crossplatform
566961847f8eSopenharmony_ci     * @since 12
567061847f8eSopenharmony_ci     */
567161847f8eSopenharmony_ci    beginTransaction(): void;
567261847f8eSopenharmony_ci
567361847f8eSopenharmony_ci    /**
567461847f8eSopenharmony_ci     * Begins a transaction before executing the SQL statement.
567561847f8eSopenharmony_ci     *
567661847f8eSopenharmony_ci     * @returns { Promise<number> } Returns the transaction ID.
567761847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. The store must not be nullptr.
567861847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported the sql(attach,begin,commit,rollback etc.).
567961847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
568061847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
568161847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
568261847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
568361847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
568461847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
568561847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
568661847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
568761847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
568861847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
568961847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
569061847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
569161847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
569261847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
569361847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
569461847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
569561847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
569661847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
569761847f8eSopenharmony_ci     * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit.
569861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
569961847f8eSopenharmony_ci     * @since 12
570061847f8eSopenharmony_ci     */
570161847f8eSopenharmony_ci    beginTrans(): Promise<number>;
570261847f8eSopenharmony_ci
570361847f8eSopenharmony_ci    /**
570461847f8eSopenharmony_ci     * Commit the the sql you have executed.
570561847f8eSopenharmony_ci     *
570661847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. The store must not be nullptr.
570761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
570861847f8eSopenharmony_ci     * @since 9
570961847f8eSopenharmony_ci     */
571061847f8eSopenharmony_ci    /**
571161847f8eSopenharmony_ci     * Commit the the sql you have executed.
571261847f8eSopenharmony_ci     *
571361847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. The store must not be nullptr.
571461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
571561847f8eSopenharmony_ci     * @crossplatform
571661847f8eSopenharmony_ci     * @since 10
571761847f8eSopenharmony_ci     */
571861847f8eSopenharmony_ci    /**
571961847f8eSopenharmony_ci     * Commit the the sql you have executed.
572061847f8eSopenharmony_ci     *
572161847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. The store must not be nullptr.
572261847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
572361847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
572461847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
572561847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
572661847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
572761847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
572861847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
572961847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
573061847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
573161847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
573261847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
573361847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
573461847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
573561847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
573661847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
573761847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
573861847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
573961847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
574061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
574161847f8eSopenharmony_ci     * @crossplatform
574261847f8eSopenharmony_ci     * @since 12
574361847f8eSopenharmony_ci     */
574461847f8eSopenharmony_ci    commit(): void;
574561847f8eSopenharmony_ci
574661847f8eSopenharmony_ci    /**
574761847f8eSopenharmony_ci     * Commits the SQL statement executed.
574861847f8eSopenharmony_ci     *
574961847f8eSopenharmony_ci     * @param { number } txId - Indicates the transaction ID which is obtained by beginTrans.
575061847f8eSopenharmony_ci     * @returns { Promise<void> } Promise used to return the result.
575161847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
575261847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
575361847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
575461847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
575561847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
575661847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
575761847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
575861847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
575961847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
576061847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
576161847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
576261847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
576361847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
576461847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
576561847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
576661847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
576761847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
576861847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
576961847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
577061847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
577161847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
577261847f8eSopenharmony_ci     * @since 12
577361847f8eSopenharmony_ci     */
577461847f8eSopenharmony_ci    commit(txId : number): Promise<void>;
577561847f8eSopenharmony_ci
577661847f8eSopenharmony_ci    /**
577761847f8eSopenharmony_ci     * Roll back the sql you have already executed.
577861847f8eSopenharmony_ci     *
577961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. The store must not be nullptr.
578061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
578161847f8eSopenharmony_ci     * @since 9
578261847f8eSopenharmony_ci     */
578361847f8eSopenharmony_ci    /**
578461847f8eSopenharmony_ci     * Roll back the sql you have already executed.
578561847f8eSopenharmony_ci     *
578661847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. The store must not be nullptr.
578761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
578861847f8eSopenharmony_ci     * @crossplatform
578961847f8eSopenharmony_ci     * @since 10
579061847f8eSopenharmony_ci     */
579161847f8eSopenharmony_ci    /**
579261847f8eSopenharmony_ci     * Roll back the sql you have already executed.
579361847f8eSopenharmony_ci     *
579461847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. The store must not be nullptr.
579561847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
579661847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
579761847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
579861847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
579961847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
580061847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
580161847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
580261847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
580361847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
580461847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
580561847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
580661847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
580761847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
580861847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
580961847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
581061847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
581161847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
581261847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
581361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
581461847f8eSopenharmony_ci     * @crossplatform
581561847f8eSopenharmony_ci     * @since 12
581661847f8eSopenharmony_ci     */
581761847f8eSopenharmony_ci    rollBack(): void;
581861847f8eSopenharmony_ci
581961847f8eSopenharmony_ci    /**
582061847f8eSopenharmony_ci     * Rolls back the SQL statement executed.
582161847f8eSopenharmony_ci     *
582261847f8eSopenharmony_ci     * @param { number } txId - Indicates the transaction ID which is obtained by beginTrans.
582361847f8eSopenharmony_ci     * @returns { Promise<void> } Promise used to return the result.
582461847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. The store must not be nullptr.
582561847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
582661847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
582761847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
582861847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
582961847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
583061847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
583161847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
583261847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
583361847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
583461847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
583561847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
583661847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
583761847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
583861847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
583961847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
584061847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
584161847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
584261847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
584361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
584461847f8eSopenharmony_ci     * @since 12
584561847f8eSopenharmony_ci     */
584661847f8eSopenharmony_ci    rollback(txId : number): Promise<void>;
584761847f8eSopenharmony_ci
584861847f8eSopenharmony_ci    /**
584961847f8eSopenharmony_ci     * Backs up a database in a specified name.
585061847f8eSopenharmony_ci     *
585161847f8eSopenharmony_ci     * @param { string } destName - Indicates the name that saves the database backup.
585261847f8eSopenharmony_ci     * @param { AsyncCallback<void> } callback - The callback of backup.
585361847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
585461847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
585561847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
585661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
585761847f8eSopenharmony_ci     * @since 9
585861847f8eSopenharmony_ci     */
585961847f8eSopenharmony_ci    /**
586061847f8eSopenharmony_ci     * Backs up a database in a specified name.
586161847f8eSopenharmony_ci     *
586261847f8eSopenharmony_ci     * @param { string } destName - Indicates the name that saves the database backup.
586361847f8eSopenharmony_ci     * @param { AsyncCallback<void> } callback - The callback of backup.
586461847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
586561847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
586661847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
586761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
586861847f8eSopenharmony_ci     * @crossplatform
586961847f8eSopenharmony_ci     * @since 10
587061847f8eSopenharmony_ci     */
587161847f8eSopenharmony_ci    /**
587261847f8eSopenharmony_ci     * Backs up a database in a specified name.
587361847f8eSopenharmony_ci     *
587461847f8eSopenharmony_ci     * @param { string } destName - Indicates the name that saves the database backup.
587561847f8eSopenharmony_ci     * @param { AsyncCallback<void> } callback - The callback of backup.
587661847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. The store must not be nullptr.
587761847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
587861847f8eSopenharmony_ci     * @throws { BusinessError } 14800010 - Invalid database path.
587961847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
588061847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
588161847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
588261847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
588361847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
588461847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
588561847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
588661847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
588761847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
588861847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
588961847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
589061847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
589161847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
589261847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
589361847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
589461847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
589561847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
589661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
589761847f8eSopenharmony_ci     * @crossplatform
589861847f8eSopenharmony_ci     * @since 12
589961847f8eSopenharmony_ci     */
590061847f8eSopenharmony_ci    backup(destName: string, callback: AsyncCallback<void>): void;
590161847f8eSopenharmony_ci
590261847f8eSopenharmony_ci    /**
590361847f8eSopenharmony_ci     * Backs up a database in a specified name.
590461847f8eSopenharmony_ci     *
590561847f8eSopenharmony_ci     * @param { string } destName - Indicates the name that saves the database backup.
590661847f8eSopenharmony_ci     * @returns { Promise<void> } The promise returned by the function.
590761847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
590861847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
590961847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
591061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
591161847f8eSopenharmony_ci     * @since 9
591261847f8eSopenharmony_ci     */
591361847f8eSopenharmony_ci    /**
591461847f8eSopenharmony_ci     * Backs up a database in a specified name.
591561847f8eSopenharmony_ci     *
591661847f8eSopenharmony_ci     * @param { string } destName - Indicates the name that saves the database backup.
591761847f8eSopenharmony_ci     * @returns { Promise<void> } The promise returned by the function.
591861847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
591961847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
592061847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
592161847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
592261847f8eSopenharmony_ci     * @crossplatform
592361847f8eSopenharmony_ci     * @since 10
592461847f8eSopenharmony_ci     */
592561847f8eSopenharmony_ci    /**
592661847f8eSopenharmony_ci     * Backs up a database in a specified name.
592761847f8eSopenharmony_ci     *
592861847f8eSopenharmony_ci     * @param { string } destName - Indicates the name that saves the database backup.
592961847f8eSopenharmony_ci     * @returns { Promise<void> } The promise returned by the function.
593061847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
593161847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
593261847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
593361847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
593461847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
593561847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
593661847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
593761847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
593861847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
593961847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
594061847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
594161847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
594261847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
594361847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
594461847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
594561847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
594661847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
594761847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
594861847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
594961847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
595061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
595161847f8eSopenharmony_ci     * @crossplatform
595261847f8eSopenharmony_ci     * @since 12
595361847f8eSopenharmony_ci     */
595461847f8eSopenharmony_ci    backup(destName: string): Promise<void>;
595561847f8eSopenharmony_ci
595661847f8eSopenharmony_ci    /**
595761847f8eSopenharmony_ci     * Restores a database from a specified database file.
595861847f8eSopenharmony_ci     *
595961847f8eSopenharmony_ci     * @param { string } srcName - Indicates the name that saves the database file.
596061847f8eSopenharmony_ci     * @param { AsyncCallback<void> } callback - The callback of restore.
596161847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
596261847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
596361847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
596461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
596561847f8eSopenharmony_ci     * @since 9
596661847f8eSopenharmony_ci     */
596761847f8eSopenharmony_ci    /**
596861847f8eSopenharmony_ci     * Restores a database from a specified database file.
596961847f8eSopenharmony_ci     *
597061847f8eSopenharmony_ci     * @param { string } srcName - Indicates the name that saves the database file.
597161847f8eSopenharmony_ci     * @param { AsyncCallback<void> } callback - The callback of restore.
597261847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
597361847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
597461847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
597561847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
597661847f8eSopenharmony_ci     * @crossplatform
597761847f8eSopenharmony_ci     * @since 10
597861847f8eSopenharmony_ci     */
597961847f8eSopenharmony_ci    /**
598061847f8eSopenharmony_ci     * Restores a database from a specified database file.
598161847f8eSopenharmony_ci     *
598261847f8eSopenharmony_ci     * @param { string } srcName - Indicates the name that saves the database file.
598361847f8eSopenharmony_ci     * @param { AsyncCallback<void> } callback - The callback of restore.
598461847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
598561847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
598661847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
598761847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
598861847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
598961847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
599061847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
599161847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
599261847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
599361847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
599461847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
599561847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
599661847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
599761847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
599861847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
599961847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
600061847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
600161847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
600261847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
600361847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
600461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
600561847f8eSopenharmony_ci     * @crossplatform
600661847f8eSopenharmony_ci     * @since 12
600761847f8eSopenharmony_ci     */
600861847f8eSopenharmony_ci    restore(srcName: string, callback: AsyncCallback<void>): void;
600961847f8eSopenharmony_ci
601061847f8eSopenharmony_ci    /**
601161847f8eSopenharmony_ci     * Restores a database from a specified database file.
601261847f8eSopenharmony_ci     *
601361847f8eSopenharmony_ci     * @param { string } srcName - Indicates the name that saves the database file.
601461847f8eSopenharmony_ci     * @returns { Promise<void> } The promise returned by the function.
601561847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
601661847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
601761847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
601861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
601961847f8eSopenharmony_ci     * @since 9
602061847f8eSopenharmony_ci     */
602161847f8eSopenharmony_ci    /**
602261847f8eSopenharmony_ci     * Restores a database from a specified database file.
602361847f8eSopenharmony_ci     *
602461847f8eSopenharmony_ci     * @param { string } srcName - Indicates the name that saves the database file.
602561847f8eSopenharmony_ci     * @returns { Promise<void> } The promise returned by the function.
602661847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
602761847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
602861847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
602961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
603061847f8eSopenharmony_ci     * @crossplatform
603161847f8eSopenharmony_ci     * @since 10
603261847f8eSopenharmony_ci     */
603361847f8eSopenharmony_ci    /**
603461847f8eSopenharmony_ci     * Restores a database from a specified database file.
603561847f8eSopenharmony_ci     *
603661847f8eSopenharmony_ci     * @param { string } srcName - Indicates the name that saves the database file.
603761847f8eSopenharmony_ci     * @returns { Promise<void> } The promise returned by the function.
603861847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
603961847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
604061847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
604161847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
604261847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
604361847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
604461847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
604561847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
604661847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
604761847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
604861847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
604961847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
605061847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
605161847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
605261847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
605361847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
605461847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
605561847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
605661847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
605761847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
605861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
605961847f8eSopenharmony_ci     * @crossplatform
606061847f8eSopenharmony_ci     * @since 12
606161847f8eSopenharmony_ci     */
606261847f8eSopenharmony_ci    restore(srcName: string): Promise<void>;
606361847f8eSopenharmony_ci
606461847f8eSopenharmony_ci    /**
606561847f8eSopenharmony_ci     * Restores a database from a specified database file.
606661847f8eSopenharmony_ci     *
606761847f8eSopenharmony_ci     * @returns { Promise<void> } The promise returned by the function.
606861847f8eSopenharmony_ci     * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API.
606961847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
607061847f8eSopenharmony_ci     * @throws { BusinessError } 14800010 - Invalid database path.
607161847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
607261847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
607361847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
607461847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
607561847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
607661847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
607761847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
607861847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
607961847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
608061847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
608161847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
608261847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
608361847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
608461847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
608561847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
608661847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
608761847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
608861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
608961847f8eSopenharmony_ci     * @systemapi
609061847f8eSopenharmony_ci     * @since 12
609161847f8eSopenharmony_ci     */
609261847f8eSopenharmony_ci    restore(): Promise<void>;
609361847f8eSopenharmony_ci
609461847f8eSopenharmony_ci    /**
609561847f8eSopenharmony_ci     * Set table to be distributed table.
609661847f8eSopenharmony_ci     *
609761847f8eSopenharmony_ci     * @permission ohos.permission.DISTRIBUTED_DATASYNC
609861847f8eSopenharmony_ci     * @param { Array<string> } tables - Indicates the table names you want to set.
609961847f8eSopenharmony_ci     * @param { AsyncCallback<void> } callback - The callback of setDistributedTables.
610061847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
610161847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
610261847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
610361847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
610461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
610561847f8eSopenharmony_ci     * @since 9
610661847f8eSopenharmony_ci     */
610761847f8eSopenharmony_ci    /**
610861847f8eSopenharmony_ci     * Set table to be distributed table.
610961847f8eSopenharmony_ci     *
611061847f8eSopenharmony_ci     * @permission ohos.permission.DISTRIBUTED_DATASYNC
611161847f8eSopenharmony_ci     * @param { Array<string> } tables - Indicates the table names you want to set.
611261847f8eSopenharmony_ci     * @param { AsyncCallback<void> } callback - The callback of setDistributedTables.
611361847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
611461847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
611561847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
611661847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
611761847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
611861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
611961847f8eSopenharmony_ci     * @since 12
612061847f8eSopenharmony_ci     */
612161847f8eSopenharmony_ci    setDistributedTables(tables: Array<string>, callback: AsyncCallback<void>): void;
612261847f8eSopenharmony_ci
612361847f8eSopenharmony_ci    /**
612461847f8eSopenharmony_ci     * Set table to be distributed table.
612561847f8eSopenharmony_ci     *
612661847f8eSopenharmony_ci     * @permission ohos.permission.DISTRIBUTED_DATASYNC
612761847f8eSopenharmony_ci     * @param { Array<string> } tables - Indicates the table names you want to set.
612861847f8eSopenharmony_ci     * @returns { Promise<void> } The promise returned by the function.
612961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
613061847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
613161847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
613261847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
613361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
613461847f8eSopenharmony_ci     * @since 9
613561847f8eSopenharmony_ci     */
613661847f8eSopenharmony_ci    /**
613761847f8eSopenharmony_ci     * Set table to be distributed table.
613861847f8eSopenharmony_ci     *
613961847f8eSopenharmony_ci     * @permission ohos.permission.DISTRIBUTED_DATASYNC
614061847f8eSopenharmony_ci     * @param { Array<string> } tables - Indicates the table names you want to set.
614161847f8eSopenharmony_ci     * @returns { Promise<void> } The promise returned by the function.
614261847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
614361847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
614461847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
614561847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
614661847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
614761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
614861847f8eSopenharmony_ci     * @since 12
614961847f8eSopenharmony_ci     */
615061847f8eSopenharmony_ci    setDistributedTables(tables: Array<string>): Promise<void>;
615161847f8eSopenharmony_ci
615261847f8eSopenharmony_ci    /**
615361847f8eSopenharmony_ci     * Set table to be distributed table.
615461847f8eSopenharmony_ci     *
615561847f8eSopenharmony_ci     * @permission ohos.permission.DISTRIBUTED_DATASYNC
615661847f8eSopenharmony_ci     * @param { Array<string> } tables - Indicates the table names you want to set.
615761847f8eSopenharmony_ci     * @param { DistributedType } type - Indicates the distributed type {@link DistributedType}.
615861847f8eSopenharmony_ci     * This method only works when type equals to DistributedType.DISTRIBUTED_CLOUD
615961847f8eSopenharmony_ci     * @param { AsyncCallback<void> } callback - The callback of setDistributedTables.
616061847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
616161847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
616261847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
616361847f8eSopenharmony_ci     * @throws { BusinessError } 14800051 - The type of the distributed table does not match.
616461847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
616561847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
616661847f8eSopenharmony_ci     * @since 10
616761847f8eSopenharmony_ci     */
616861847f8eSopenharmony_ci    /**
616961847f8eSopenharmony_ci     * Set table to be distributed table.
617061847f8eSopenharmony_ci     *
617161847f8eSopenharmony_ci     * @permission ohos.permission.DISTRIBUTED_DATASYNC
617261847f8eSopenharmony_ci     * @param { Array<string> } tables - Indicates the table names you want to set.
617361847f8eSopenharmony_ci     * @param { DistributedType } type - Indicates the distributed type {@link DistributedType}.
617461847f8eSopenharmony_ci     * ohos.permission.DISTRIBUTED_DATASYNC is required only when type is DISTRIBUTED_DEVICE.
617561847f8eSopenharmony_ci     * @param { AsyncCallback<void> } callback - The callback of setDistributedTables.
617661847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
617761847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
617861847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
617961847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
618061847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
618161847f8eSopenharmony_ci     * @throws { BusinessError } 14800051 - The type of the distributed table does not match.
618261847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
618361847f8eSopenharmony_ci     * @since 12
618461847f8eSopenharmony_ci     */
618561847f8eSopenharmony_ci    setDistributedTables(tables: Array<string>, type: DistributedType, callback: AsyncCallback<void>): void;
618661847f8eSopenharmony_ci
618761847f8eSopenharmony_ci    /**
618861847f8eSopenharmony_ci     * Set table to be distributed table.
618961847f8eSopenharmony_ci     *
619061847f8eSopenharmony_ci     * @permission ohos.permission.DISTRIBUTED_DATASYNC
619161847f8eSopenharmony_ci     * @param { Array<string> } tables - Indicates the table names you want to set.
619261847f8eSopenharmony_ci     * @param { DistributedType } type - Indicates the distributed type {@link DistributedType}.
619361847f8eSopenharmony_ci     * This method only works when type equals to DistributedType.DISTRIBUTED_CLOUD
619461847f8eSopenharmony_ci     * @param { DistributedConfig } config - Indicates the distributed config of the tables. For details, see {@link DistributedConfig}.
619561847f8eSopenharmony_ci     * @param { AsyncCallback<void> } callback - The callback of setDistributedTables.
619661847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
619761847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
619861847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
619961847f8eSopenharmony_ci     * @throws { BusinessError } 14800051 - The type of the distributed table does not match.
620061847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
620161847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
620261847f8eSopenharmony_ci     * @since 10
620361847f8eSopenharmony_ci     */
620461847f8eSopenharmony_ci    /**
620561847f8eSopenharmony_ci     * Set table to be distributed table.
620661847f8eSopenharmony_ci     *
620761847f8eSopenharmony_ci     * @permission ohos.permission.DISTRIBUTED_DATASYNC
620861847f8eSopenharmony_ci     * @param { Array<string> } tables - Indicates the table names you want to set.
620961847f8eSopenharmony_ci     * @param { DistributedType } type - Indicates the distributed type {@link DistributedType}.
621061847f8eSopenharmony_ci     * ohos.permission.DISTRIBUTED_DATASYNC is required only when type is DISTRIBUTED_DEVICE.
621161847f8eSopenharmony_ci     * @param { DistributedConfig } config - Indicates the distributed config of the tables. For details, see {@link DistributedConfig}.
621261847f8eSopenharmony_ci     * @param { AsyncCallback<void> } callback - The callback of setDistributedTables.
621361847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
621461847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
621561847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
621661847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
621761847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
621861847f8eSopenharmony_ci     * @throws { BusinessError } 14800051 - The type of the distributed table does not match.
621961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
622061847f8eSopenharmony_ci     * @since 12
622161847f8eSopenharmony_ci     */
622261847f8eSopenharmony_ci    setDistributedTables(
622361847f8eSopenharmony_ci      tables: Array<string>,
622461847f8eSopenharmony_ci      type: DistributedType,
622561847f8eSopenharmony_ci      config: DistributedConfig,
622661847f8eSopenharmony_ci      callback: AsyncCallback<void>
622761847f8eSopenharmony_ci    ): void;
622861847f8eSopenharmony_ci
622961847f8eSopenharmony_ci    /**
623061847f8eSopenharmony_ci     * Set table to be a distributed table.
623161847f8eSopenharmony_ci     *
623261847f8eSopenharmony_ci     * @permission ohos.permission.DISTRIBUTED_DATASYNC
623361847f8eSopenharmony_ci     * @param { Array<string> } tables - Indicates the table names you want to set.
623461847f8eSopenharmony_ci     * @param { DistributedType } type - Indicates the distributed type {@link DistributedType}.
623561847f8eSopenharmony_ci     * This method only works when type equals to DistributedType.DISTRIBUTED_CLOUD
623661847f8eSopenharmony_ci     * @param { DistributedConfig } config - Indicates the distributed config of the tables. For details, see {@link DistributedConfig}.
623761847f8eSopenharmony_ci     * @returns { Promise<void> } The promise returned by the function.
623861847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
623961847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
624061847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
624161847f8eSopenharmony_ci     * @throws { BusinessError } 14800051 - The type of the distributed table does not match.
624261847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
624361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
624461847f8eSopenharmony_ci     * @since 10
624561847f8eSopenharmony_ci     */
624661847f8eSopenharmony_ci    /**
624761847f8eSopenharmony_ci     * Set table to be a distributed table.
624861847f8eSopenharmony_ci     *
624961847f8eSopenharmony_ci     * @permission ohos.permission.DISTRIBUTED_DATASYNC
625061847f8eSopenharmony_ci     * @param { Array<string> } tables - Indicates the table names you want to set.
625161847f8eSopenharmony_ci     * @param { DistributedType } type - Indicates the distributed type {@link DistributedType}.
625261847f8eSopenharmony_ci     * ohos.permission.DISTRIBUTED_DATASYNC is required only when type is DISTRIBUTED_DEVICE.
625361847f8eSopenharmony_ci     * @param { DistributedConfig } config - Indicates the distributed config of the tables. For details, see {@link DistributedConfig}.
625461847f8eSopenharmony_ci     * @returns { Promise<void> } The promise returned by the function.
625561847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
625661847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
625761847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
625861847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
625961847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
626061847f8eSopenharmony_ci     * @throws { BusinessError } 14800051 - The type of the distributed table does not match.
626161847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
626261847f8eSopenharmony_ci     * @since 12
626361847f8eSopenharmony_ci     */
626461847f8eSopenharmony_ci    setDistributedTables(tables: Array<string>, type?: DistributedType, config?: DistributedConfig): Promise<void>;
626561847f8eSopenharmony_ci
626661847f8eSopenharmony_ci    /**
626761847f8eSopenharmony_ci     * Obtain distributed table name of specified remote device according to local table name.
626861847f8eSopenharmony_ci     * When query remote device database, distributed table name is needed.
626961847f8eSopenharmony_ci     *
627061847f8eSopenharmony_ci     * @permission ohos.permission.DISTRIBUTED_DATASYNC
627161847f8eSopenharmony_ci     * @param { string } device - Indicates the remote device.
627261847f8eSopenharmony_ci     * @param { string } table - {string}: the distributed table name.
627361847f8eSopenharmony_ci     * @param { AsyncCallback<string> } callback
627461847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
627561847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
627661847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
627761847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
627861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
627961847f8eSopenharmony_ci     * @since 9
628061847f8eSopenharmony_ci     */
628161847f8eSopenharmony_ci    /**
628261847f8eSopenharmony_ci     * Obtain distributed table name of specified remote device according to local table name.
628361847f8eSopenharmony_ci     * When query remote device database, distributed table name is needed.
628461847f8eSopenharmony_ci     *
628561847f8eSopenharmony_ci     * @permission ohos.permission.DISTRIBUTED_DATASYNC
628661847f8eSopenharmony_ci     * @param { string } device - Indicates the remote device.
628761847f8eSopenharmony_ci     * @param { string } table - {string}: the distributed table name.
628861847f8eSopenharmony_ci     * @param { AsyncCallback<string> } callback
628961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
629061847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
629161847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
629261847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
629361847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
629461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
629561847f8eSopenharmony_ci     * @since 12
629661847f8eSopenharmony_ci     */
629761847f8eSopenharmony_ci    obtainDistributedTableName(device: string, table: string, callback: AsyncCallback<string>): void;
629861847f8eSopenharmony_ci
629961847f8eSopenharmony_ci    /**
630061847f8eSopenharmony_ci     * Obtain distributed table name of specified remote device according to local table name.
630161847f8eSopenharmony_ci     * When query remote device database, distributed table name is needed.
630261847f8eSopenharmony_ci     *
630361847f8eSopenharmony_ci     * @permission ohos.permission.DISTRIBUTED_DATASYNC
630461847f8eSopenharmony_ci     * @param { string } device - Indicates the remote device.
630561847f8eSopenharmony_ci     * @param { string } table
630661847f8eSopenharmony_ci     * @returns { Promise<string> } {string}: the distributed table name.
630761847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
630861847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
630961847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
631061847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
631161847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
631261847f8eSopenharmony_ci     * @since 9
631361847f8eSopenharmony_ci     */
631461847f8eSopenharmony_ci    /**
631561847f8eSopenharmony_ci     * Obtain distributed table name of specified remote device according to local table name.
631661847f8eSopenharmony_ci     * When query remote device database, distributed table name is needed.
631761847f8eSopenharmony_ci     *
631861847f8eSopenharmony_ci     * @permission ohos.permission.DISTRIBUTED_DATASYNC
631961847f8eSopenharmony_ci     * @param { string } device - Indicates the remote device.
632061847f8eSopenharmony_ci     * @param { string } table
632161847f8eSopenharmony_ci     * @returns { Promise<string> } {string}: the distributed table name.
632261847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
632361847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
632461847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
632561847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
632661847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
632761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
632861847f8eSopenharmony_ci     * @since 12
632961847f8eSopenharmony_ci     */
633061847f8eSopenharmony_ci    obtainDistributedTableName(device: string, table: string): Promise<string>;
633161847f8eSopenharmony_ci
633261847f8eSopenharmony_ci    /**
633361847f8eSopenharmony_ci     * Sync data between devices.
633461847f8eSopenharmony_ci     *
633561847f8eSopenharmony_ci     * @permission ohos.permission.DISTRIBUTED_DATASYNC
633661847f8eSopenharmony_ci     * @param { SyncMode } mode - Indicates the database synchronization mode.
633761847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - The specified sync condition by the instance object of {@link RdbPredicates}.
633861847f8eSopenharmony_ci     * @param { AsyncCallback<Array<[string, number]>> } callback - {Array<[string, number]>}: devices sync status array,
633961847f8eSopenharmony_ci     *                                                              {string}: device id,
634061847f8eSopenharmony_ci     *                                                              {number}: device sync status.
634161847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
634261847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
634361847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
634461847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
634561847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
634661847f8eSopenharmony_ci     * @since 9
634761847f8eSopenharmony_ci     */
634861847f8eSopenharmony_ci    /**
634961847f8eSopenharmony_ci     * Sync data between devices.
635061847f8eSopenharmony_ci     *
635161847f8eSopenharmony_ci     * @permission ohos.permission.DISTRIBUTED_DATASYNC
635261847f8eSopenharmony_ci     * @param { SyncMode } mode - Indicates the database synchronization mode.
635361847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - The specified sync condition by the instance object of {@link RdbPredicates}.
635461847f8eSopenharmony_ci     * @param { AsyncCallback<Array<[string, number]>> } callback - {Array<[string, number]>}: devices sync status array,
635561847f8eSopenharmony_ci     *                                                              {string}: device id,
635661847f8eSopenharmony_ci     *                                                              {number}: device sync status.
635761847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
635861847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
635961847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
636061847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
636161847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
636261847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
636361847f8eSopenharmony_ci     * @since 12
636461847f8eSopenharmony_ci     */
636561847f8eSopenharmony_ci    sync(mode: SyncMode, predicates: RdbPredicates, callback: AsyncCallback<Array<[string, number]>>): void;
636661847f8eSopenharmony_ci
636761847f8eSopenharmony_ci    /**
636861847f8eSopenharmony_ci     * Sync data between devices.
636961847f8eSopenharmony_ci     *
637061847f8eSopenharmony_ci     * @permission ohos.permission.DISTRIBUTED_DATASYNC
637161847f8eSopenharmony_ci     * @param { SyncMode } mode - Indicates the database synchronization mode.
637261847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - The specified sync condition by the instance object of {@link RdbPredicates}.
637361847f8eSopenharmony_ci     * @returns { Promise<Array<[string, number]>> } {Array<[string, number]>}: devices sync status array, {string}: device id, {number}: device sync status.
637461847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
637561847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
637661847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
637761847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
637861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
637961847f8eSopenharmony_ci     * @since 9
638061847f8eSopenharmony_ci     */
638161847f8eSopenharmony_ci    /**
638261847f8eSopenharmony_ci     * Sync data between devices.
638361847f8eSopenharmony_ci     *
638461847f8eSopenharmony_ci     * @permission ohos.permission.DISTRIBUTED_DATASYNC
638561847f8eSopenharmony_ci     * @param { SyncMode } mode - Indicates the database synchronization mode.
638661847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - The specified sync condition by the instance object of {@link RdbPredicates}.
638761847f8eSopenharmony_ci     * @returns { Promise<Array<[string, number]>> } {Array<[string, number]>}: devices sync status array, {string}: device id, {number}: device sync status.
638861847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
638961847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
639061847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
639161847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
639261847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
639361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
639461847f8eSopenharmony_ci     * @since 12
639561847f8eSopenharmony_ci     */
639661847f8eSopenharmony_ci    sync(mode: SyncMode, predicates: RdbPredicates): Promise<Array<[string, number]>>;
639761847f8eSopenharmony_ci
639861847f8eSopenharmony_ci    /**
639961847f8eSopenharmony_ci     * Sync data to cloud.
640061847f8eSopenharmony_ci     *
640161847f8eSopenharmony_ci     * @param { SyncMode } mode - indicates the database synchronization mode.
640261847f8eSopenharmony_ci     * @param { Callback<ProgressDetails> } progress - the specified sync condition by the instance object of {@link ProgressDetails}.
640361847f8eSopenharmony_ci     * @param { AsyncCallback<void> } callback - {Array<[string, number]>}: devices sync status array, {string}: device id, {number}: device sync status.
640461847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 2 - 4  parameter(s). 2. The RdbStore must be not nullptr.
640561847f8eSopenharmony_ci     * 3. The mode must be a SyncMode of cloud. 4. The progress must be a callback type. 5. The callback must be a function.
640661847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
640761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
640861847f8eSopenharmony_ci     * @since 10
640961847f8eSopenharmony_ci     */
641061847f8eSopenharmony_ci    /**
641161847f8eSopenharmony_ci     * Sync data to cloud.
641261847f8eSopenharmony_ci     *
641361847f8eSopenharmony_ci     * @param { SyncMode } mode - indicates the database synchronization mode.
641461847f8eSopenharmony_ci     * @param { Callback<ProgressDetails> } progress - the specified sync condition by the instance object of {@link ProgressDetails}.
641561847f8eSopenharmony_ci     * @param { AsyncCallback<void> } callback - {Array<[string, number]>}: devices sync status array, {string}: device id, {number}: device sync status.
641661847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 2 - 4  parameter(s). 2. The RdbStore must be not nullptr.
641761847f8eSopenharmony_ci     * 3. The mode must be a SyncMode of cloud. 4. The progress must be a callback type. 5. The callback must be a function.
641861847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
641961847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
642061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
642161847f8eSopenharmony_ci     * @since 12
642261847f8eSopenharmony_ci     */
642361847f8eSopenharmony_ci    cloudSync(mode: SyncMode, progress: Callback<ProgressDetails>, callback: AsyncCallback<void>): void;
642461847f8eSopenharmony_ci
642561847f8eSopenharmony_ci    /**
642661847f8eSopenharmony_ci     * Sync data to cloud.
642761847f8eSopenharmony_ci     *
642861847f8eSopenharmony_ci     * @param { SyncMode } mode - indicates the database synchronization mode.
642961847f8eSopenharmony_ci     * @param { Callback<ProgressDetails> } progress - the specified sync condition by the instance object of {@link ProgressDetails}.
643061847f8eSopenharmony_ci     * @returns { Promise<void> } : devices sync status array, {string}: device id, {number}: device sync status.
643161847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 2 - 4  parameter(s). 2. The RdbStore must be not nullptr.
643261847f8eSopenharmony_ci     * 3. The mode must be a SyncMode of cloud. 4. The progress must be a callback type.
643361847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
643461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
643561847f8eSopenharmony_ci     * @since 10
643661847f8eSopenharmony_ci     */
643761847f8eSopenharmony_ci    /**
643861847f8eSopenharmony_ci     * Sync data to cloud.
643961847f8eSopenharmony_ci     *
644061847f8eSopenharmony_ci     * @param { SyncMode } mode - indicates the database synchronization mode.
644161847f8eSopenharmony_ci     * @param { Callback<ProgressDetails> } progress - the specified sync condition by the instance object of {@link ProgressDetails}.
644261847f8eSopenharmony_ci     * @returns { Promise<void> } : devices sync status array, {string}: device id, {number}: device sync status.
644361847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 2 - 4  parameter(s). 2. The RdbStore must be not nullptr.
644461847f8eSopenharmony_ci     * 3. The mode must be a SyncMode of cloud. 4. The progress must be a callback type.
644561847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
644661847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
644761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
644861847f8eSopenharmony_ci     * @since 12
644961847f8eSopenharmony_ci     */
645061847f8eSopenharmony_ci    cloudSync(mode: SyncMode, progress: Callback<ProgressDetails>): Promise<void>;
645161847f8eSopenharmony_ci
645261847f8eSopenharmony_ci    /**
645361847f8eSopenharmony_ci     * Sync data to cloud.
645461847f8eSopenharmony_ci     *
645561847f8eSopenharmony_ci     * @param { SyncMode } mode - indicates the database synchronization mode.
645661847f8eSopenharmony_ci     * @param { string[] } tables - indicates the database synchronization mode.
645761847f8eSopenharmony_ci     * @param { Callback<ProgressDetails> } progress - the specified sync condition by the instance object of {@link ProgressDetails}.
645861847f8eSopenharmony_ci     * @param { AsyncCallback<void> } callback - {Array<[string, number]>}: devices sync status array, {string}: device id, {number}: device sync status.
645961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 2 - 4  parameter(s). 2. The RdbStore must be not nullptr.
646061847f8eSopenharmony_ci     * 3. The mode must be a SyncMode of cloud. 4. The tablesNames must be not empty. 5. The progress must be a callback type.
646161847f8eSopenharmony_ci     * 6. The callback must be a function.
646261847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
646361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
646461847f8eSopenharmony_ci     * @since 10
646561847f8eSopenharmony_ci     */
646661847f8eSopenharmony_ci    /**
646761847f8eSopenharmony_ci     * Sync data to cloud.
646861847f8eSopenharmony_ci     *
646961847f8eSopenharmony_ci     * @param { SyncMode } mode - indicates the database synchronization mode.
647061847f8eSopenharmony_ci     * @param { string[] } tables - indicates the database synchronization mode.
647161847f8eSopenharmony_ci     * @param { Callback<ProgressDetails> } progress - the specified sync condition by the instance object of {@link ProgressDetails}.
647261847f8eSopenharmony_ci     * @param { AsyncCallback<void> } callback - {Array<[string, number]>}: devices sync status array, {string}: device id, {number}: device sync status.
647361847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 2 - 4  parameter(s). 2. The RdbStore must be not nullptr.
647461847f8eSopenharmony_ci     * 3. The mode must be a SyncMode of cloud. 4. The tablesNames must be not empty. 5. The progress must be a callback type.
647561847f8eSopenharmony_ci     * 6. The callback must be a function.
647661847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
647761847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
647861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
647961847f8eSopenharmony_ci     * @since 12
648061847f8eSopenharmony_ci     */
648161847f8eSopenharmony_ci    cloudSync(
648261847f8eSopenharmony_ci      mode: SyncMode,
648361847f8eSopenharmony_ci      tables: string[],
648461847f8eSopenharmony_ci      progress: Callback<ProgressDetails>,
648561847f8eSopenharmony_ci      callback: AsyncCallback<void>
648661847f8eSopenharmony_ci    ): void;
648761847f8eSopenharmony_ci
648861847f8eSopenharmony_ci    /**
648961847f8eSopenharmony_ci     * Sync data to cloud.
649061847f8eSopenharmony_ci     *
649161847f8eSopenharmony_ci     * @param { SyncMode } mode - indicates the database synchronization mode.
649261847f8eSopenharmony_ci     * @param { string[] } tables - indicates the database synchronization mode.
649361847f8eSopenharmony_ci     * @param { Callback<ProgressDetails> } progress - the specified sync condition by the instance object of {@link ProgressDetails}.
649461847f8eSopenharmony_ci     * @returns { Promise<void> } : devices sync status array, {string}: device id, {number}: device sync status.
649561847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 2 - 4  parameter(s). 2. The RdbStore must be not nullptr.
649661847f8eSopenharmony_ci     * 3. The mode must be a SyncMode of cloud. 4. The tablesNames must be not empty. 5. The progress must be a callback type.
649761847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
649861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
649961847f8eSopenharmony_ci     * @since 10
650061847f8eSopenharmony_ci     */
650161847f8eSopenharmony_ci    /**
650261847f8eSopenharmony_ci     * Sync data to cloud.
650361847f8eSopenharmony_ci     *
650461847f8eSopenharmony_ci     * @param { SyncMode } mode - indicates the database synchronization mode.
650561847f8eSopenharmony_ci     * @param { string[] } tables - indicates the database synchronization mode.
650661847f8eSopenharmony_ci     * @param { Callback<ProgressDetails> } progress - the specified sync condition by the instance object of {@link ProgressDetails}.
650761847f8eSopenharmony_ci     * @returns { Promise<void> } : devices sync status array, {string}: device id, {number}: device sync status.
650861847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 2 - 4  parameter(s). 2. The RdbStore must be not nullptr.
650961847f8eSopenharmony_ci     * 3. The mode must be a SyncMode of cloud. 4. The tablesNames must be not empty. 5. The progress must be a callback type.
651061847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
651161847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
651261847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
651361847f8eSopenharmony_ci     * @since 12
651461847f8eSopenharmony_ci     */
651561847f8eSopenharmony_ci    cloudSync(mode: SyncMode, tables: string[], progress: Callback<ProgressDetails>): Promise<void>;
651661847f8eSopenharmony_ci
651761847f8eSopenharmony_ci    /**
651861847f8eSopenharmony_ci     * Sync data to cloud.
651961847f8eSopenharmony_ci     *
652061847f8eSopenharmony_ci     * @param { SyncMode } mode - indicates the database synchronization mode.
652161847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - The specified sync condition by the instance object of {@link RdbPredicates}.
652261847f8eSopenharmony_ci     * @param { Callback<ProgressDetails> } progress - the specified sync condition by the instance object of {@link ProgressDetails}.
652361847f8eSopenharmony_ci     * @param { AsyncCallback<void> } callback - The callback of cloudSync.
652461847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 2 - 4  parameter(s). 2. The RdbStore must be not nullptr.
652561847f8eSopenharmony_ci     * 3. The mode must be a SyncMode of cloud. 4. The tablesNames must be not empty. 5. The progress must be a callback type.
652661847f8eSopenharmony_ci     * 6. The callback must be a function.
652761847f8eSopenharmony_ci     * @throws { BusinessError } 202 - if permission verification failed, application which is not a system application uses system API.
652861847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
652961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
653061847f8eSopenharmony_ci     * @systemapi
653161847f8eSopenharmony_ci     * @since 11
653261847f8eSopenharmony_ci     */
653361847f8eSopenharmony_ci    /**
653461847f8eSopenharmony_ci     * Sync data to cloud.
653561847f8eSopenharmony_ci     *
653661847f8eSopenharmony_ci     * @param { SyncMode } mode - indicates the database synchronization mode.
653761847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - The specified sync condition by the instance object of {@link RdbPredicates}.
653861847f8eSopenharmony_ci     * @param { Callback<ProgressDetails> } progress - the specified sync condition by the instance object of {@link ProgressDetails}.
653961847f8eSopenharmony_ci     * @param { AsyncCallback<void> } callback - The callback of cloudSync.
654061847f8eSopenharmony_ci     * @throws { BusinessError } 202 - if permission verification failed, application which is not a system application uses system API.
654161847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 2 - 4  parameter(s). 2. The RdbStore must be not nullptr.
654261847f8eSopenharmony_ci     * 3. The mode must be a SyncMode of cloud. 4. The tablesNames must be not empty. 5. The progress must be a callback type.
654361847f8eSopenharmony_ci     * 6. The callback must be a function.
654461847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
654561847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
654661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
654761847f8eSopenharmony_ci     * @systemapi
654861847f8eSopenharmony_ci     * @since 12
654961847f8eSopenharmony_ci     */
655061847f8eSopenharmony_ci    cloudSync(
655161847f8eSopenharmony_ci      mode: SyncMode,
655261847f8eSopenharmony_ci      predicates: RdbPredicates,
655361847f8eSopenharmony_ci      progress: Callback<ProgressDetails>,
655461847f8eSopenharmony_ci      callback: AsyncCallback<void>
655561847f8eSopenharmony_ci    ): void;
655661847f8eSopenharmony_ci
655761847f8eSopenharmony_ci    /**
655861847f8eSopenharmony_ci     * Sync data to cloud.
655961847f8eSopenharmony_ci     *
656061847f8eSopenharmony_ci     * @param { SyncMode } mode - indicates the database synchronization mode.
656161847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - The specified sync condition by the instance object of {@link RdbPredicates}.
656261847f8eSopenharmony_ci     * @param { Callback<ProgressDetails> } progress - the specified sync condition by the instance object of {@link ProgressDetails}.
656361847f8eSopenharmony_ci     * @returns { Promise<void> } : The promise returned by the function.
656461847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 2 - 4  parameter(s). 2. The RdbStore must be not nullptr.
656561847f8eSopenharmony_ci     * 3. The mode must be a SyncMode of cloud. 4. The tablesNames must be not empty. 5. The progress must be a callback type.
656661847f8eSopenharmony_ci     * @throws { BusinessError } 202 - if permission verification failed, application which is not a system
656761847f8eSopenharmony_ci     * application uses system API.
656861847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
656961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
657061847f8eSopenharmony_ci     * @systemapi
657161847f8eSopenharmony_ci     * @since 11
657261847f8eSopenharmony_ci     */
657361847f8eSopenharmony_ci    /**
657461847f8eSopenharmony_ci     * Sync data to cloud.
657561847f8eSopenharmony_ci     *
657661847f8eSopenharmony_ci     * @param { SyncMode } mode - indicates the database synchronization mode.
657761847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - The specified sync condition by the instance object of {@link RdbPredicates}.
657861847f8eSopenharmony_ci     * @param { Callback<ProgressDetails> } progress - the specified sync condition by the instance object of {@link ProgressDetails}.
657961847f8eSopenharmony_ci     * @returns { Promise<void> } : The promise returned by the function.
658061847f8eSopenharmony_ci     * @throws { BusinessError } 202 - if permission verification failed, application which is not a system
658161847f8eSopenharmony_ci     * application uses system API.
658261847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 2 - 4  parameter(s). 2. The RdbStore must be not nullptr.
658361847f8eSopenharmony_ci     * 3. The mode must be a SyncMode of cloud. 4. The tablesNames must be not empty. 5. The progress must be a callback type.
658461847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
658561847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
658661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.CloudSync.Client
658761847f8eSopenharmony_ci     * @systemapi
658861847f8eSopenharmony_ci     * @since 12
658961847f8eSopenharmony_ci     */
659061847f8eSopenharmony_ci    cloudSync(mode: SyncMode, predicates: RdbPredicates, progress: Callback<ProgressDetails>): Promise<void>;
659161847f8eSopenharmony_ci
659261847f8eSopenharmony_ci    /**
659361847f8eSopenharmony_ci     * Queries remote data in the database based on specified conditions before Synchronizing Data.
659461847f8eSopenharmony_ci     *
659561847f8eSopenharmony_ci     * @param { string } device - Indicates specified remote device.
659661847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
659761847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - The specified remote remote query condition by the instance object of {@link RdbPredicates}.
659861847f8eSopenharmony_ci     * @param { Array<string> } columns - The columns to remote query. If the value is empty array, the remote query applies to all columns.
659961847f8eSopenharmony_ci     * @param { AsyncCallback<ResultSet> } callback - The {@link ResultSet} object if the operation is successful.
660061847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
660161847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
660261847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
660361847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
660461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
660561847f8eSopenharmony_ci     * @since 9
660661847f8eSopenharmony_ci     */
660761847f8eSopenharmony_ci    /**
660861847f8eSopenharmony_ci     * Queries remote data in the database based on specified conditions before Synchronizing Data.
660961847f8eSopenharmony_ci     *
661061847f8eSopenharmony_ci     * @param { string } device - Indicates specified remote device.
661161847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
661261847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - The specified remote remote query condition by the instance object of {@link RdbPredicates}.
661361847f8eSopenharmony_ci     * @param { Array<string> } columns - The columns to remote query. If the value is empty array, the remote query applies to all columns.
661461847f8eSopenharmony_ci     * @param { AsyncCallback<ResultSet> } callback - The {@link ResultSet} object if the operation is successful.
661561847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
661661847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
661761847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
661861847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
661961847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
662061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
662161847f8eSopenharmony_ci     * @since 12
662261847f8eSopenharmony_ci     */
662361847f8eSopenharmony_ci    remoteQuery(
662461847f8eSopenharmony_ci      device: string,
662561847f8eSopenharmony_ci      table: string,
662661847f8eSopenharmony_ci      predicates: RdbPredicates,
662761847f8eSopenharmony_ci      columns: Array<string>,
662861847f8eSopenharmony_ci      callback: AsyncCallback<ResultSet>
662961847f8eSopenharmony_ci    ): void;
663061847f8eSopenharmony_ci
663161847f8eSopenharmony_ci    /**
663261847f8eSopenharmony_ci     * Queries remote data in the database based on specified conditions before Synchronizing Data.
663361847f8eSopenharmony_ci     *
663461847f8eSopenharmony_ci     * @param { string } device - Indicates specified remote device.
663561847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
663661847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - The specified remote remote query condition by the instance object of {@link RdbPredicates}.
663761847f8eSopenharmony_ci     * @param { Array<string> } columns - The columns to remote query. If the value is empty array, the remote query applies to all columns.
663861847f8eSopenharmony_ci     * @returns { Promise<ResultSet> } The {@link ResultSet} object if the operation is successful.
663961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
664061847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
664161847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
664261847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
664361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
664461847f8eSopenharmony_ci     * @since 9
664561847f8eSopenharmony_ci     */
664661847f8eSopenharmony_ci    /**
664761847f8eSopenharmony_ci     * Queries remote data in the database based on specified conditions before Synchronizing Data.
664861847f8eSopenharmony_ci     *
664961847f8eSopenharmony_ci     * @param { string } device - Indicates specified remote device.
665061847f8eSopenharmony_ci     * @param { string } table - Indicates the target table.
665161847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - The specified remote remote query condition by the instance object of {@link RdbPredicates}.
665261847f8eSopenharmony_ci     * @param { Array<string> } columns - The columns to remote query. If the value is empty array, the remote query applies to all columns.
665361847f8eSopenharmony_ci     * @returns { Promise<ResultSet> } The {@link ResultSet} object if the operation is successful.
665461847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
665561847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
665661847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
665761847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
665861847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
665961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
666061847f8eSopenharmony_ci     * @since 12
666161847f8eSopenharmony_ci     */
666261847f8eSopenharmony_ci    remoteQuery(device: string, table: string, predicates: RdbPredicates, columns: Array<string>): Promise<ResultSet>;
666361847f8eSopenharmony_ci
666461847f8eSopenharmony_ci    /**
666561847f8eSopenharmony_ci     * Registers an observer for the database. When data in the distributed database changes,
666661847f8eSopenharmony_ci     * the callback will be invoked.
666761847f8eSopenharmony_ci     *
666861847f8eSopenharmony_ci     * @param { 'dataChange' } event - Indicates the event must be string 'dataChange'.
666961847f8eSopenharmony_ci     * @param { SubscribeType } type - Indicates the subscription type, which is defined in {@link SubscribeType}.
667061847f8eSopenharmony_ci     * If its value is SUBSCRIBE_TYPE_REMOTE, ohos.permission.DISTRIBUTED_DATASYNC is required.
667161847f8eSopenharmony_ci     * @param { Callback<Array<string>> } observer - {Array<string>}: the observer of data change events in the distributed database.
667261847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
667361847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
667461847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
667561847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
667661847f8eSopenharmony_ci     * @since 9
667761847f8eSopenharmony_ci     */
667861847f8eSopenharmony_ci    /**
667961847f8eSopenharmony_ci     * Registers an observer for the database. When data in the distributed database changes,
668061847f8eSopenharmony_ci     * the callback will be invoked.
668161847f8eSopenharmony_ci     *
668261847f8eSopenharmony_ci     * @param { 'dataChange' } event - Indicates the event must be string 'dataChange'.
668361847f8eSopenharmony_ci     * @param { SubscribeType } type - Indicates the subscription type, which is defined in {@link SubscribeType}.
668461847f8eSopenharmony_ci     * If its value is SUBSCRIBE_TYPE_REMOTE, ohos.permission.DISTRIBUTED_DATASYNC is required.
668561847f8eSopenharmony_ci     * @param { Callback<Array<string>> } observer - {Array<string>}: the observer of data change events in the distributed database.
668661847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
668761847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
668861847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
668961847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
669061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
669161847f8eSopenharmony_ci     * @since 12
669261847f8eSopenharmony_ci     */
669361847f8eSopenharmony_ci    on(event: 'dataChange', type: SubscribeType, observer: Callback<Array<string>>): void;
669461847f8eSopenharmony_ci
669561847f8eSopenharmony_ci    /**
669661847f8eSopenharmony_ci     * Registers an observer for the database. When data in the distributed database or the local database changes,
669761847f8eSopenharmony_ci     * the callback will be invoked.
669861847f8eSopenharmony_ci     *
669961847f8eSopenharmony_ci     * @param { 'dataChange' } event - Indicates the event must be string 'dataChange'.
670061847f8eSopenharmony_ci     * @param { SubscribeType } type - Indicates the subscription type, which is defined in {@link SubscribeType}.
670161847f8eSopenharmony_ci     * If its value is SUBSCRIBE_TYPE_REMOTE, ohos.permission.DISTRIBUTED_DATASYNC is required.
670261847f8eSopenharmony_ci     * If its value is SUBSCRIBE_TYPE_LOCAL_DETAILS, the callback will be invoked for data changes in the local database.
670361847f8eSopenharmony_ci     * @param { Callback<Array<string>> | Callback<Array<ChangeInfo>> } observer
670461847f8eSopenharmony_ci     * {Array<string>}: The observer of data change events in the distributed database.
670561847f8eSopenharmony_ci     * {Array<ChangeInfo>}: The change info of data change events in the distributed database or the local database.
670661847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
670761847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
670861847f8eSopenharmony_ci     * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API.
670961847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
671061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
671161847f8eSopenharmony_ci     * @since 10
671261847f8eSopenharmony_ci     */
671361847f8eSopenharmony_ci    /**
671461847f8eSopenharmony_ci     * Registers an observer for the database. When data in the distributed database changes,
671561847f8eSopenharmony_ci     * the callback will be invoked.
671661847f8eSopenharmony_ci     *
671761847f8eSopenharmony_ci     * @param { 'dataChange' } event - Indicates the event must be string 'dataChange'.
671861847f8eSopenharmony_ci     * @param { SubscribeType } type - Indicates the subscription type, which is defined in {@link SubscribeType}.
671961847f8eSopenharmony_ci     * If its value is SUBSCRIBE_TYPE_REMOTE, ohos.permission.DISTRIBUTED_DATASYNC is required.
672061847f8eSopenharmony_ci     * @param { Callback<Array<string>> | Callback<Array<ChangeInfo>> } observer
672161847f8eSopenharmony_ci     * {Array<string>}: The observer of data change events in the distributed database.
672261847f8eSopenharmony_ci     * {Array<ChangeInfo>}: The change info of data change events in the distributed database.
672361847f8eSopenharmony_ci     * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API.
672461847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
672561847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
672661847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
672761847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
672861847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
672961847f8eSopenharmony_ci     * @since 12
673061847f8eSopenharmony_ci     */
673161847f8eSopenharmony_ci    on(event: 'dataChange', type: SubscribeType, observer: Callback<Array<string>> | Callback<Array<ChangeInfo>>): void;
673261847f8eSopenharmony_ci
673361847f8eSopenharmony_ci    /**
673461847f8eSopenharmony_ci     * Registers an observer for the database.
673561847f8eSopenharmony_ci     *
673661847f8eSopenharmony_ci     * @param { string } event - Indicates the subscription event.
673761847f8eSopenharmony_ci     * @param { boolean } interProcess - Indicates whether it is an interprocess subscription or an in-process subscription.
673861847f8eSopenharmony_ci     * @param { Callback<void> } observer - The observer of data change events in the database.
673961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
674061847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
674161847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
674261847f8eSopenharmony_ci     * @throws { BusinessError } 14800050 - Failed to obtain subscription service.
674361847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
674461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
674561847f8eSopenharmony_ci     * @since 10
674661847f8eSopenharmony_ci     */
674761847f8eSopenharmony_ci    /**
674861847f8eSopenharmony_ci     * Registers an observer for the database.
674961847f8eSopenharmony_ci     *
675061847f8eSopenharmony_ci     * @param { string } event - Indicates the subscription event.
675161847f8eSopenharmony_ci     * @param { boolean } interProcess - Indicates whether it is an interprocess subscription or an in-process subscription.
675261847f8eSopenharmony_ci     * @param { Callback<void> } observer - The observer of data change events in the database.
675361847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
675461847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
675561847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
675661847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
675761847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
675861847f8eSopenharmony_ci     * @throws { BusinessError } 14800050 - Failed to obtain subscription service.
675961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
676061847f8eSopenharmony_ci     * @since 12
676161847f8eSopenharmony_ci     */
676261847f8eSopenharmony_ci    on(event: string, interProcess: boolean, observer: Callback<void>): void;
676361847f8eSopenharmony_ci
676461847f8eSopenharmony_ci    /**
676561847f8eSopenharmony_ci     * Register an automatic synchronization callback to the database.
676661847f8eSopenharmony_ci     *
676761847f8eSopenharmony_ci     * @param { 'autoSyncProgress' } event - Indicates the event must be string 'autoSyncProgress'.
676861847f8eSopenharmony_ci     * @param { Callback<ProgressDetails> } progress - the specified sync condition by the instance object of {@link ProgressDetails}.
676961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 2 - 3  parameter(s)! 2. The RdbStore must be valid.
677061847f8eSopenharmony_ci     * 3. The event must be a not empty string. 4. The progress must be function.
677161847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
677261847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
677361847f8eSopenharmony_ci     * @since 11
677461847f8eSopenharmony_ci     */
677561847f8eSopenharmony_ci    /**
677661847f8eSopenharmony_ci     * Register an automatic synchronization callback to the database.
677761847f8eSopenharmony_ci     *
677861847f8eSopenharmony_ci     * @param { 'autoSyncProgress' } event - Indicates the event must be string 'autoSyncProgress'.
677961847f8eSopenharmony_ci     * @param { Callback<ProgressDetails> } progress - the specified sync condition by the instance object of {@link ProgressDetails}.
678061847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 2 - 3  parameter(s)! 2. The RdbStore must be valid.
678161847f8eSopenharmony_ci     * 3. The event must be a not empty string. 4. The progress must be function.
678261847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
678361847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
678461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
678561847f8eSopenharmony_ci     * @since 12
678661847f8eSopenharmony_ci     */
678761847f8eSopenharmony_ci    on(event: 'autoSyncProgress', progress: Callback<ProgressDetails>): void;
678861847f8eSopenharmony_ci
678961847f8eSopenharmony_ci    /**
679061847f8eSopenharmony_ci     * Subscribes to the SQL statistics.
679161847f8eSopenharmony_ci     * @param { 'statistics' } event - Indicates the event type, which must be 'statistics'.
679261847f8eSopenharmony_ci     * @param { Callback<SqlExecutionInfo> } observer - Indicates the callback used to return the SQL execution statistics {@link SqlExeInfo} in the database.
679361847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types.
679461847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
679561847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
679661847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
679761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
679861847f8eSopenharmony_ci     * @since 12
679961847f8eSopenharmony_ci     */
680061847f8eSopenharmony_ci    on(event: 'statistics', observer: Callback<SqlExecutionInfo> ): void;
680161847f8eSopenharmony_ci
680261847f8eSopenharmony_ci    /**
680361847f8eSopenharmony_ci     * Remove specified observer of specified type from the database.
680461847f8eSopenharmony_ci     *
680561847f8eSopenharmony_ci     * @param { 'dataChange' } event - Indicates the event must be string 'dataChange'.
680661847f8eSopenharmony_ci     * @param { SubscribeType } type - Indicates the subscription type, which is defined in {@link SubscribeType}.
680761847f8eSopenharmony_ci     * If its value is SUBSCRIBE_TYPE_REMOTE, ohos.permission.DISTRIBUTED_DATASYNC is required.
680861847f8eSopenharmony_ci     * @param { Callback<Array<string>> } observer - {Array<string>}: the data change observer already registered.
680961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
681061847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
681161847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
681261847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
681361847f8eSopenharmony_ci     * @since 9
681461847f8eSopenharmony_ci     */
681561847f8eSopenharmony_ci    /**
681661847f8eSopenharmony_ci     * Remove specified observer of specified type from the database.
681761847f8eSopenharmony_ci     *
681861847f8eSopenharmony_ci     * @param { 'dataChange' } event - Indicates the event must be string 'dataChange'.
681961847f8eSopenharmony_ci     * @param { SubscribeType } type - Indicates the subscription type, which is defined in {@link SubscribeType}.
682061847f8eSopenharmony_ci     * If its value is SUBSCRIBE_TYPE_REMOTE, ohos.permission.DISTRIBUTED_DATASYNC is required.
682161847f8eSopenharmony_ci     * @param { Callback<Array<string>> } observer - {Array<string>}: the data change observer already registered.
682261847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
682361847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
682461847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
682561847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
682661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
682761847f8eSopenharmony_ci     * @since 12
682861847f8eSopenharmony_ci     */
682961847f8eSopenharmony_ci    off(event: 'dataChange', type: SubscribeType, observer: Callback<Array<string>>): void;
683061847f8eSopenharmony_ci
683161847f8eSopenharmony_ci    /**
683261847f8eSopenharmony_ci     * Remove specified observer of specified type from the database.
683361847f8eSopenharmony_ci     *
683461847f8eSopenharmony_ci     * @param { 'dataChange' } event - indicates the event must be string 'dataChange'.
683561847f8eSopenharmony_ci     * @param { SubscribeType } type - indicates the subscription type, which is defined in {@link SubscribeType}.
683661847f8eSopenharmony_ci     * If its value is SUBSCRIBE_TYPE_REMOTE, ohos.permission.DISTRIBUTED_DATASYNC is required.
683761847f8eSopenharmony_ci     * @param { Callback<Array<string>> | Callback<Array<ChangeInfo>> } observer - {Array<string>}: the data change observer already registered.
683861847f8eSopenharmony_ci     * {Array<ChangeInfo>}: the change info already registered.
683961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
684061847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
684161847f8eSopenharmony_ci     * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API.
684261847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
684361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
684461847f8eSopenharmony_ci     * @since 10
684561847f8eSopenharmony_ci     */
684661847f8eSopenharmony_ci    /**
684761847f8eSopenharmony_ci     * Remove specified observer of specified type from the database.
684861847f8eSopenharmony_ci     *
684961847f8eSopenharmony_ci     * @param { 'dataChange' } event - indicates the event must be string 'dataChange'.
685061847f8eSopenharmony_ci     * @param { SubscribeType } type - indicates the subscription type, which is defined in {@link SubscribeType}.
685161847f8eSopenharmony_ci     * If its value is SUBSCRIBE_TYPE_REMOTE, ohos.permission.DISTRIBUTED_DATASYNC is required.
685261847f8eSopenharmony_ci     * @param { Callback<Array<string>> | Callback<Array<ChangeInfo>> } observer - {Array<string>}: the data change observer already registered.
685361847f8eSopenharmony_ci     * {Array<ChangeInfo>}: the change info already registered.
685461847f8eSopenharmony_ci     * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API.
685561847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
685661847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
685761847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
685861847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
685961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
686061847f8eSopenharmony_ci     * @since 12
686161847f8eSopenharmony_ci     */
686261847f8eSopenharmony_ci    off(
686361847f8eSopenharmony_ci      event: 'dataChange',
686461847f8eSopenharmony_ci      type: SubscribeType,
686561847f8eSopenharmony_ci      observer?: Callback<Array<string>> | Callback<Array<ChangeInfo>>
686661847f8eSopenharmony_ci    ): void;
686761847f8eSopenharmony_ci
686861847f8eSopenharmony_ci    /**
686961847f8eSopenharmony_ci     * Remove specified observer of specified type from the database.
687061847f8eSopenharmony_ci     *
687161847f8eSopenharmony_ci     * @param { string } event - Indicates the subscription event.
687261847f8eSopenharmony_ci     * @param { boolean } interProcess - Indicates whether it is an interprocess subscription or an in-process subscription.
687361847f8eSopenharmony_ci     * @param { Callback<void> } observer - The data change observer already registered.
687461847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
687561847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
687661847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
687761847f8eSopenharmony_ci     * @throws { BusinessError } 14800050 - Failed to obtain subscription service.
687861847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
687961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
688061847f8eSopenharmony_ci     * @since 10
688161847f8eSopenharmony_ci     */
688261847f8eSopenharmony_ci    /**
688361847f8eSopenharmony_ci     * Remove specified observer of specified type from the database.
688461847f8eSopenharmony_ci     *
688561847f8eSopenharmony_ci     * @param { string } event - Indicates the subscription event.
688661847f8eSopenharmony_ci     * @param { boolean } interProcess - Indicates whether it is an interprocess subscription or an in-process subscription.
688761847f8eSopenharmony_ci     * @param { Callback<void> } observer - The data change observer already registered.
688861847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
688961847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
689061847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
689161847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
689261847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
689361847f8eSopenharmony_ci     * @throws { BusinessError } 14800050 - Failed to obtain subscription service.
689461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
689561847f8eSopenharmony_ci     * @since 12
689661847f8eSopenharmony_ci     */
689761847f8eSopenharmony_ci    off(event: string, interProcess: boolean, observer?: Callback<void>): void;
689861847f8eSopenharmony_ci
689961847f8eSopenharmony_ci    /**
690061847f8eSopenharmony_ci     * Unregister the database auto synchronization callback.
690161847f8eSopenharmony_ci     *
690261847f8eSopenharmony_ci     * @param { 'autoSyncProgress' } event - indicates the event must be string 'autoSyncProgress'.
690361847f8eSopenharmony_ci     * @param { Callback<ProgressDetails> } progress - the specified sync condition by the instance object of {@link ProgressDetails}.
690461847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 1 - 3  parameter(s)! 2. The RdbStore must be valid.
690561847f8eSopenharmony_ci     * 3. The event must be a not empty string. 4. The progress must be function.
690661847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
690761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
690861847f8eSopenharmony_ci     * @since 11
690961847f8eSopenharmony_ci     */
691061847f8eSopenharmony_ci    /**
691161847f8eSopenharmony_ci     * Unregister the database auto synchronization callback.
691261847f8eSopenharmony_ci     *
691361847f8eSopenharmony_ci     * @param { 'autoSyncProgress' } event - indicates the event must be string 'autoSyncProgress'.
691461847f8eSopenharmony_ci     * @param { Callback<ProgressDetails> } progress - the specified sync condition by the instance object of {@link ProgressDetails}.
691561847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 1 - 3  parameter(s)! 2. The RdbStore must be valid.
691661847f8eSopenharmony_ci     * 3. The event must be a not empty string. 4. The progress must be function.
691761847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
691861847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
691961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
692061847f8eSopenharmony_ci     * @since 12
692161847f8eSopenharmony_ci     */
692261847f8eSopenharmony_ci    off(event: 'autoSyncProgress', progress?: Callback<ProgressDetails>): void;
692361847f8eSopenharmony_ci
692461847f8eSopenharmony_ci    /**
692561847f8eSopenharmony_ci     * Unsubscribes from the SQL statistics.
692661847f8eSopenharmony_ci     * @param { 'statistics' } event - Indicates the event type, which must be 'statistics'.
692761847f8eSopenharmony_ci     * @param { Callback<SqlExecutionInfo> } observer - Indicates the callback to unregister.
692861847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error.
692961847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
693061847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
693161847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
693261847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
693361847f8eSopenharmony_ci     * @since 12
693461847f8eSopenharmony_ci     */
693561847f8eSopenharmony_ci    off(event: 'statistics', observer?: Callback<SqlExecutionInfo> ): void;
693661847f8eSopenharmony_ci
693761847f8eSopenharmony_ci    /**
693861847f8eSopenharmony_ci     * Notifies the registered observers of a change to the data resource specified by Uri.
693961847f8eSopenharmony_ci     *
694061847f8eSopenharmony_ci     * @param { string } event - Indicates the subscription event.
694161847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
694261847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
694361847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
694461847f8eSopenharmony_ci     * @throws { BusinessError } 14800050 - Failed to obtain subscription service.
694561847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
694661847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
694761847f8eSopenharmony_ci     * @since 10
694861847f8eSopenharmony_ci     */
694961847f8eSopenharmony_ci    /**
695061847f8eSopenharmony_ci     * Notifies the registered observers of a change to the data resource specified by Uri.
695161847f8eSopenharmony_ci     *
695261847f8eSopenharmony_ci     * @param { string } event - Indicates the subscription event.
695361847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
695461847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
695561847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
695661847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
695761847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
695861847f8eSopenharmony_ci     * @throws { BusinessError } 14800050 - Failed to obtain subscription service.
695961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
696061847f8eSopenharmony_ci     * @since 12
696161847f8eSopenharmony_ci     */
696261847f8eSopenharmony_ci    emit(event: string): void;
696361847f8eSopenharmony_ci
696461847f8eSopenharmony_ci    /**
696561847f8eSopenharmony_ci     * Close the RdbStore and all resultSets.
696661847f8eSopenharmony_ci     *
696761847f8eSopenharmony_ci     * @returns { Promise<void> } The promise returned by the function.
696861847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. The store must not be nullptr.
696961847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
697061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
697161847f8eSopenharmony_ci     * @since 12
697261847f8eSopenharmony_ci     */
697361847f8eSopenharmony_ci    close(): Promise<void>;
697461847f8eSopenharmony_ci
697561847f8eSopenharmony_ci    /**
697661847f8eSopenharmony_ci     * Attaches a database file to the currently linked database.
697761847f8eSopenharmony_ci     *
697861847f8eSopenharmony_ci     * @param { string } fullPath - Indicates the path of the database file to attach.
697961847f8eSopenharmony_ci     * @param { string } attachName - Indicates the alias of the database.
698061847f8eSopenharmony_ci     * @param { number } waitTime - Indicates the maximum time allowed for attaching the database file.
698161847f8eSopenharmony_ci     * @returns { Promise<number> } Promise used to return the number of attached databases.
698261847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
698361847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
698461847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
698561847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
698661847f8eSopenharmony_ci     * @throws { BusinessError } 14800010 - Invalid database path.
698761847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
698861847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
698961847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
699061847f8eSopenharmony_ci     * @throws { BusinessError } 14800016 - The database is already attached.
699161847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
699261847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
699361847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
699461847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
699561847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
699661847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
699761847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
699861847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
699961847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
700061847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
700161847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
700261847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
700361847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
700461847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
700561847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
700661847f8eSopenharmony_ci     * @since 12
700761847f8eSopenharmony_ci     */
700861847f8eSopenharmony_ci    attach(fullPath: string, attachName: string, waitTime?: number) : Promise<number>;
700961847f8eSopenharmony_ci
701061847f8eSopenharmony_ci    /**
701161847f8eSopenharmony_ci     * Attaches a database file to the currently linked database.
701261847f8eSopenharmony_ci     *
701361847f8eSopenharmony_ci     * @param { Context } context - Indicates the context of an application or ability.
701461847f8eSopenharmony_ci     * @param { StoreConfig } config - Indicates the {@link StoreConfig} configuration of the database related to this RDB store.
701561847f8eSopenharmony_ci     * @param { string } attachName - Indicates the alias of the database.
701661847f8eSopenharmony_ci     * @param { number } waitTime - Indicates the maximum time allowed for attaching the database file.
701761847f8eSopenharmony_ci     * @returns { Promise<number> } Promise used to return the number of attached databases.
701861847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
701961847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
702061847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
702161847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
702261847f8eSopenharmony_ci     * @throws { BusinessError } 14800010 - Invalid database path.
702361847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
702461847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
702561847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
702661847f8eSopenharmony_ci     * @throws { BusinessError } 14800016 - The database is already attached.
702761847f8eSopenharmony_ci     * @throws { BusinessError } 14801001 - Only supported in stage mode.
702861847f8eSopenharmony_ci     * @throws { BusinessError } 14801002 - The data group id is not valid.
702961847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
703061847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
703161847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
703261847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
703361847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
703461847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
703561847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
703661847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
703761847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
703861847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
703961847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
704061847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
704161847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
704261847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
704361847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
704461847f8eSopenharmony_ci     * @since 12
704561847f8eSopenharmony_ci     */
704661847f8eSopenharmony_ci    attach(context: Context, config: StoreConfig, attachName: string, waitTime?: number) : Promise<number>;
704761847f8eSopenharmony_ci
704861847f8eSopenharmony_ci    /**
704961847f8eSopenharmony_ci     * Detaches a database from this database.
705061847f8eSopenharmony_ci     *
705161847f8eSopenharmony_ci     * @param { string } attachName - Indicates the alias of the database.
705261847f8eSopenharmony_ci     * @param { number } waitTime - Indicates the maximum time allowed for detaching the database.
705361847f8eSopenharmony_ci     * @returns { Promise<number> } Return the current number of attached databases.
705461847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
705561847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
705661847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
705761847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
705861847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
705961847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
706061847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
706161847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
706261847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
706361847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
706461847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
706561847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
706661847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
706761847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
706861847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
706961847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
707061847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
707161847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
707261847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
707361847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
707461847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
707561847f8eSopenharmony_ci     * @since 12
707661847f8eSopenharmony_ci     */
707761847f8eSopenharmony_ci    detach(attachName: string, waitTime?: number) : Promise<number>;
707861847f8eSopenharmony_ci
707961847f8eSopenharmony_ci    /**
708061847f8eSopenharmony_ci     * Locks data from the database based on a specified instance object of RdbPredicates.
708161847f8eSopenharmony_ci     *
708261847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - The specified lock condition by the instance object of {@link RdbPredicates}.
708361847f8eSopenharmony_ci     * @returns { Promise<void> } The promise returned by the function.
708461847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
708561847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
708661847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
708761847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
708861847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
708961847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
709061847f8eSopenharmony_ci     * @throws { BusinessError } 14800018 - No data meets the condition.
709161847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
709261847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
709361847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
709461847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
709561847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
709661847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
709761847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
709861847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
709961847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
710061847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
710161847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
710261847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
710361847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
710461847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
710561847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
710661847f8eSopenharmony_ci     * @crossplatform
710761847f8eSopenharmony_ci     * @since 12
710861847f8eSopenharmony_ci     */
710961847f8eSopenharmony_ci    lockRow(predicates: RdbPredicates): Promise<void>;
711061847f8eSopenharmony_ci
711161847f8eSopenharmony_ci    /**
711261847f8eSopenharmony_ci     * Unlocks data from the database based on a specified instance object of RdbPredicates.
711361847f8eSopenharmony_ci     *
711461847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - The specified Unlock condition by the instance object of {@link RdbPredicates}.
711561847f8eSopenharmony_ci     * @returns { Promise<void> } The promise returned by the function.
711661847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
711761847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
711861847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
711961847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
712061847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
712161847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
712261847f8eSopenharmony_ci     * @throws { BusinessError } 14800018 - No data meets the condition.
712361847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
712461847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
712561847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
712661847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
712761847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
712861847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
712961847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
713061847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
713161847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
713261847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
713361847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
713461847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
713561847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
713661847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
713761847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
713861847f8eSopenharmony_ci     * @crossplatform
713961847f8eSopenharmony_ci     * @since 12
714061847f8eSopenharmony_ci     */
714161847f8eSopenharmony_ci    unlockRow(predicates: RdbPredicates): Promise<void>;
714261847f8eSopenharmony_ci
714361847f8eSopenharmony_ci    /**
714461847f8eSopenharmony_ci     * Queries locked data in the database based on specified conditions.
714561847f8eSopenharmony_ci     *
714661847f8eSopenharmony_ci     * @param { RdbPredicates } predicates - The specified query condition by the instance object of {@link RdbPredicates}.
714761847f8eSopenharmony_ci     * @param { Array<string> } columns - The columns to query. If the value is null, the query applies to all columns.
714861847f8eSopenharmony_ci     * @returns { Promise<ResultSet> } The {@link ResultSet} object if the operation is successful.
714961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
715061847f8eSopenharmony_ci     * <br>2. Incorrect parameter types.
715161847f8eSopenharmony_ci     * @throws { BusinessError } 14800000 - Inner error.
715261847f8eSopenharmony_ci     * @throws { BusinessError } 14800011 - Database corrupted.
715361847f8eSopenharmony_ci     * @throws { BusinessError } 14800014 - Already closed.
715461847f8eSopenharmony_ci     * @throws { BusinessError } 14800015 - The database does not respond.
715561847f8eSopenharmony_ci     * @throws { BusinessError } 14800021 - SQLite: Generic error.
715661847f8eSopenharmony_ci     * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
715761847f8eSopenharmony_ci     * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
715861847f8eSopenharmony_ci     * @throws { BusinessError } 14800024 - SQLite: The database file is locked.
715961847f8eSopenharmony_ci     * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked.
716061847f8eSopenharmony_ci     * @throws { BusinessError } 14800026 - SQLite: The database is out of memory.
716161847f8eSopenharmony_ci     * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
716261847f8eSopenharmony_ci     * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
716361847f8eSopenharmony_ci     * @throws { BusinessError } 14800029 - SQLite: The database is full.
716461847f8eSopenharmony_ci     * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
716561847f8eSopenharmony_ci     * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit.
716661847f8eSopenharmony_ci     * @throws { BusinessError } 14800032 - SQLite: Abort due to constraint violation.
716761847f8eSopenharmony_ci     * @throws { BusinessError } 14800033 - SQLite: Data type mismatch.
716861847f8eSopenharmony_ci     * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly.
716961847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
717061847f8eSopenharmony_ci     * @crossplatform
717161847f8eSopenharmony_ci     * @since 12
717261847f8eSopenharmony_ci     */
717361847f8eSopenharmony_ci    queryLockedRow(predicates: RdbPredicates, columns?: Array<string>): Promise<ResultSet>;
717461847f8eSopenharmony_ci
717561847f8eSopenharmony_ci    /**
717661847f8eSopenharmony_ci     * Lock cloud container before non-auto cloud sync.
717761847f8eSopenharmony_ci     *
717861847f8eSopenharmony_ci     * @returns { Promise<number> } The expired time of the lock.
717961847f8eSopenharmony_ci     * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API.
718061847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
718161847f8eSopenharmony_ci     * @systemapi
718261847f8eSopenharmony_ci     * @since 12
718361847f8eSopenharmony_ci     */
718461847f8eSopenharmony_ci    lockCloudContainer(): Promise<number>;
718561847f8eSopenharmony_ci
718661847f8eSopenharmony_ci    /**
718761847f8eSopenharmony_ci     * Unlock cloud container.
718861847f8eSopenharmony_ci     *
718961847f8eSopenharmony_ci     * @returns { Promise<void> } The promise returned by the function.
719061847f8eSopenharmony_ci     * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API.
719161847f8eSopenharmony_ci     * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
719261847f8eSopenharmony_ci     * @systemapi
719361847f8eSopenharmony_ci     * @since 12
719461847f8eSopenharmony_ci     */
719561847f8eSopenharmony_ci    unlockCloudContainer(): Promise<void>;
719661847f8eSopenharmony_ci  }
719761847f8eSopenharmony_ci
719861847f8eSopenharmony_ci  /**
719961847f8eSopenharmony_ci   * Obtains a RDB store.
720061847f8eSopenharmony_ci   * You can set parameters of the RDB store as required. In general, this method is recommended
720161847f8eSopenharmony_ci   * to obtain a rdb store.
720261847f8eSopenharmony_ci   *
720361847f8eSopenharmony_ci   * @param { Context } context - Indicates the context of an application or ability.
720461847f8eSopenharmony_ci   * @param { StoreConfig } config - Indicates the {@link StoreConfig} configuration of the database related to this RDB store.
720561847f8eSopenharmony_ci   * @param { AsyncCallback<RdbStore> } callback - The RDB store {@link RdbStore}.
720661847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
720761847f8eSopenharmony_ci   * <br>2. Incorrect parameter types.
720861847f8eSopenharmony_ci   * @throws { BusinessError } 14800000 - Inner error.
720961847f8eSopenharmony_ci   * @throws { BusinessError } 14800010 - Failed to open or delete database by invalid database path.
721061847f8eSopenharmony_ci   * @throws { BusinessError } 14800011 - Failed to open database by database corrupted.
721161847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
721261847f8eSopenharmony_ci   * @since 9
721361847f8eSopenharmony_ci   */
721461847f8eSopenharmony_ci  /**
721561847f8eSopenharmony_ci   * Obtains a RDB store.
721661847f8eSopenharmony_ci   * You can set parameters of the RDB store as required. In general, this method is recommended
721761847f8eSopenharmony_ci   * to obtain a rdb store.
721861847f8eSopenharmony_ci   *
721961847f8eSopenharmony_ci   * @param { Context } context - Indicates the context of an application or ability.
722061847f8eSopenharmony_ci   * @param { StoreConfig } config - Indicates the {@link StoreConfig} configuration of the database related to this RDB store.
722161847f8eSopenharmony_ci   * @param { AsyncCallback<RdbStore> } callback - The RDB store {@link RdbStore}.
722261847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
722361847f8eSopenharmony_ci   * <br>2. Incorrect parameter types.
722461847f8eSopenharmony_ci   * @throws { BusinessError } 14800000 - Inner error.
722561847f8eSopenharmony_ci   * @throws { BusinessError } 14800010 - Failed to open or delete database by invalid database path.
722661847f8eSopenharmony_ci   * @throws { BusinessError } 14800011 - Failed to open database by database corrupted.
722761847f8eSopenharmony_ci   * @throws { BusinessError } 14801001 - Only supported in stage mode.
722861847f8eSopenharmony_ci   * @throws { BusinessError } 14801002 - The data group id is not valid.
722961847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
723061847f8eSopenharmony_ci   * @crossplatform
723161847f8eSopenharmony_ci   * @since 10
723261847f8eSopenharmony_ci   */
723361847f8eSopenharmony_ci  /**
723461847f8eSopenharmony_ci   * Obtains a RDB store.
723561847f8eSopenharmony_ci   * You can set parameters of the RDB store as required. In general, this method is recommended
723661847f8eSopenharmony_ci   * to obtain a rdb store.
723761847f8eSopenharmony_ci   *
723861847f8eSopenharmony_ci   * @param { Context } context - Indicates the context of an application or ability.
723961847f8eSopenharmony_ci   * @param { StoreConfig } config - Indicates the {@link StoreConfig} configuration of the database related to this RDB store.
724061847f8eSopenharmony_ci   * @param { AsyncCallback<RdbStore> } callback - The RDB store {@link RdbStore}.
724161847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
724261847f8eSopenharmony_ci   * <br>2. Incorrect parameter types.
724361847f8eSopenharmony_ci   * @throws { BusinessError } 14800000 - Inner error.
724461847f8eSopenharmony_ci   * @throws { BusinessError } 14800010 - Invalid database path.
724561847f8eSopenharmony_ci   * @throws { BusinessError } 14800011 - Database corrupted.
724661847f8eSopenharmony_ci   * @throws { BusinessError } 14801001 - Only supported in stage mode.
724761847f8eSopenharmony_ci   * @throws { BusinessError } 14801002 - The data group id is not valid.
724861847f8eSopenharmony_ci   * @throws { BusinessError } 14800017 - Config changed.
724961847f8eSopenharmony_ci   * @throws { BusinessError } 14800021 - SQLite: Generic error.
725061847f8eSopenharmony_ci   * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort.
725161847f8eSopenharmony_ci   * @throws { BusinessError } 14800023 - SQLite: Access permission denied.
725261847f8eSopenharmony_ci   * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
725361847f8eSopenharmony_ci   * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
725461847f8eSopenharmony_ci   * @throws { BusinessError } 14800029 - SQLite: The database is full.
725561847f8eSopenharmony_ci   * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
725661847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
725761847f8eSopenharmony_ci   * @crossplatform
725861847f8eSopenharmony_ci   * @since 12
725961847f8eSopenharmony_ci   */
726061847f8eSopenharmony_ci  function getRdbStore(context: Context, config: StoreConfig, callback: AsyncCallback<RdbStore>): void;
726161847f8eSopenharmony_ci
726261847f8eSopenharmony_ci  /**
726361847f8eSopenharmony_ci   * Obtains a RDB store.
726461847f8eSopenharmony_ci   * You can set parameters of the RDB store as required. In general, this method is recommended
726561847f8eSopenharmony_ci   * to obtain a rdb store.
726661847f8eSopenharmony_ci   *
726761847f8eSopenharmony_ci   * @param { Context } context - Indicates the context of an application or ability.
726861847f8eSopenharmony_ci   * @param { StoreConfig } config - Indicates the {@link StoreConfig} configuration of the database related to this RDB store.
726961847f8eSopenharmony_ci   * @returns { Promise<RdbStore> } The RDB store {@link RdbStore}.
727061847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
727161847f8eSopenharmony_ci   * <br>2. Incorrect parameter types.
727261847f8eSopenharmony_ci   * @throws { BusinessError } 14800000 - Inner error.
727361847f8eSopenharmony_ci   * @throws { BusinessError } 14800010 - Failed to open or delete database by invalid database path.
727461847f8eSopenharmony_ci   * @throws { BusinessError } 14800011 - Failed to open database by database corrupted.
727561847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
727661847f8eSopenharmony_ci   * @since 9
727761847f8eSopenharmony_ci   */
727861847f8eSopenharmony_ci  /**
727961847f8eSopenharmony_ci   * Obtains a RDB store.
728061847f8eSopenharmony_ci   * You can set parameters of the RDB store as required. In general, this method is recommended
728161847f8eSopenharmony_ci   * to obtain a rdb store.
728261847f8eSopenharmony_ci   *
728361847f8eSopenharmony_ci   * @param { Context } context - Indicates the context of an application or ability.
728461847f8eSopenharmony_ci   * @param { StoreConfig } config - Indicates the {@link StoreConfig} configuration of the database related to this RDB store.
728561847f8eSopenharmony_ci   * @returns { Promise<RdbStore> } The RDB store {@link RdbStore}.
728661847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
728761847f8eSopenharmony_ci   * <br>2. Incorrect parameter types.
728861847f8eSopenharmony_ci   * @throws { BusinessError } 14800000 - Inner error.
728961847f8eSopenharmony_ci   * @throws { BusinessError } 14800010 - Failed to open or delete database by invalid database path.
729061847f8eSopenharmony_ci   * @throws { BusinessError } 14800011 - Failed to open database by database corrupted.
729161847f8eSopenharmony_ci   * @throws { BusinessError } 14801001 - Only supported in stage mode.
729261847f8eSopenharmony_ci   * @throws { BusinessError } 14801002 - The data group id is not valid.
729361847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
729461847f8eSopenharmony_ci   * @crossplatform
729561847f8eSopenharmony_ci   * @since 10
729661847f8eSopenharmony_ci   */
729761847f8eSopenharmony_ci  /**
729861847f8eSopenharmony_ci   * Obtains a RDB store.
729961847f8eSopenharmony_ci   * You can set parameters of the RDB store as required. In general, this method is recommended
730061847f8eSopenharmony_ci   * to obtain a rdb store.
730161847f8eSopenharmony_ci   *
730261847f8eSopenharmony_ci   * @param { Context } context - Indicates the context of an application or ability.
730361847f8eSopenharmony_ci   * @param { StoreConfig } config - Indicates the {@link StoreConfig} configuration of the database related to this RDB store.
730461847f8eSopenharmony_ci   * @returns { Promise<RdbStore> } The RDB store {@link RdbStore}.
730561847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
730661847f8eSopenharmony_ci   * <br>2. Incorrect parameter types.
730761847f8eSopenharmony_ci   * @throws { BusinessError } 14800000 - Inner error.
730861847f8eSopenharmony_ci   * @throws { BusinessError } 14800010 - Invalid database path.
730961847f8eSopenharmony_ci   * @throws { BusinessError } 14800011 - Database corrupted.
731061847f8eSopenharmony_ci   * @throws { BusinessError } 14801001 - Only supported in stage mode.
731161847f8eSopenharmony_ci   * @throws { BusinessError } 14801002 - The data group id is not valid.
731261847f8eSopenharmony_ci   * @throws { BusinessError } 14800017 - Config changed.
731361847f8eSopenharmony_ci   * @throws { BusinessError } 14800021 - SQLite: Generic error.
731461847f8eSopenharmony_ci   * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database.
731561847f8eSopenharmony_ci   * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred.
731661847f8eSopenharmony_ci   * @throws { BusinessError } 14800029 - SQLite: The database is full.
731761847f8eSopenharmony_ci   * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file.
731861847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
731961847f8eSopenharmony_ci   * @crossplatform
732061847f8eSopenharmony_ci   * @since 12
732161847f8eSopenharmony_ci   */
732261847f8eSopenharmony_ci  function getRdbStore(context: Context, config: StoreConfig): Promise<RdbStore>;
732361847f8eSopenharmony_ci
732461847f8eSopenharmony_ci  /**
732561847f8eSopenharmony_ci   * Deletes the database with a specified name.
732661847f8eSopenharmony_ci   * When specify custom directory, this function should not be called.
732761847f8eSopenharmony_ci   *
732861847f8eSopenharmony_ci   * @param { Context } context - Indicates the context of application or capability.
732961847f8eSopenharmony_ci   * @param { string } name - Indicates the database name.
733061847f8eSopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of deleteRdbStore.
733161847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
733261847f8eSopenharmony_ci   * <br>2. Incorrect parameter types.
733361847f8eSopenharmony_ci   * @throws { BusinessError } 14800000 - Inner error.
733461847f8eSopenharmony_ci   * @throws { BusinessError } 14800010 - Failed to open or delete database by invalid database path.
733561847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
733661847f8eSopenharmony_ci   * @since 9
733761847f8eSopenharmony_ci   */
733861847f8eSopenharmony_ci  /**
733961847f8eSopenharmony_ci   * Deletes the database with a specified name.
734061847f8eSopenharmony_ci   * When specify custom directory, this function should not be called.
734161847f8eSopenharmony_ci   *
734261847f8eSopenharmony_ci   * @param { Context } context - Indicates the context of application or capability.
734361847f8eSopenharmony_ci   * @param { string } name - Indicates the database name.
734461847f8eSopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of deleteRdbStore.
734561847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
734661847f8eSopenharmony_ci   * <br>2. Incorrect parameter types.
734761847f8eSopenharmony_ci   * @throws { BusinessError } 14800000 - Inner error.
734861847f8eSopenharmony_ci   * @throws { BusinessError } 14800010 - Failed to open or delete database by invalid database path.
734961847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
735061847f8eSopenharmony_ci   * @crossplatform
735161847f8eSopenharmony_ci   * @since 10
735261847f8eSopenharmony_ci   */
735361847f8eSopenharmony_ci  function deleteRdbStore(context: Context, name: string, callback: AsyncCallback<void>): void;
735461847f8eSopenharmony_ci
735561847f8eSopenharmony_ci  /**
735661847f8eSopenharmony_ci   * Deletes the database with a specified store config.
735761847f8eSopenharmony_ci   * When specify custom directory, this function should be called.
735861847f8eSopenharmony_ci   *
735961847f8eSopenharmony_ci   * @param { Context } context - Indicates the context of an application or ability.
736061847f8eSopenharmony_ci   * @param { StoreConfig } config - Indicates the {@link StoreConfig} configuration of the database related to this RDB store.
736161847f8eSopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of deleteRdbStore.
736261847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
736361847f8eSopenharmony_ci   * <br>2. Incorrect parameter types.
736461847f8eSopenharmony_ci   * @throws { BusinessError } 14800000 - Inner error.
736561847f8eSopenharmony_ci   * @throws { BusinessError } 14800010 - Failed to open or delete database by invalid database path.
736661847f8eSopenharmony_ci   * @throws { BusinessError } 14801001 - Only supported in stage mode.
736761847f8eSopenharmony_ci   * @throws { BusinessError } 14801002 - The data group id is not valid.
736861847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
736961847f8eSopenharmony_ci   * @crossplatform
737061847f8eSopenharmony_ci   * @since 10
737161847f8eSopenharmony_ci   */
737261847f8eSopenharmony_ci  function deleteRdbStore(context: Context, config: StoreConfig, callback: AsyncCallback<void>): void;
737361847f8eSopenharmony_ci
737461847f8eSopenharmony_ci  /**
737561847f8eSopenharmony_ci   * Deletes the database with a specified name.
737661847f8eSopenharmony_ci   * When specify custom directory, this function should not be called.
737761847f8eSopenharmony_ci   *
737861847f8eSopenharmony_ci   * @param { Context } context - Indicates the context of application or capability.
737961847f8eSopenharmony_ci   * @param { string } name - Indicates the database name.
738061847f8eSopenharmony_ci   * @returns { Promise<void> } The promise returned by the function.
738161847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
738261847f8eSopenharmony_ci   * <br>2. Incorrect parameter types.
738361847f8eSopenharmony_ci   * @throws { BusinessError } 14800000 - Inner error.
738461847f8eSopenharmony_ci   * @throws { BusinessError } 14800010 - Failed to open or delete database by invalid database path.
738561847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
738661847f8eSopenharmony_ci   * @since 9
738761847f8eSopenharmony_ci   */
738861847f8eSopenharmony_ci  /**
738961847f8eSopenharmony_ci   * Deletes the database with a specified name.
739061847f8eSopenharmony_ci   * When specify custom directory, this function should not be called.
739161847f8eSopenharmony_ci   *
739261847f8eSopenharmony_ci   * @param { Context } context - Indicates the context of application or capability.
739361847f8eSopenharmony_ci   * @param { string } name - Indicates the database name.
739461847f8eSopenharmony_ci   * @returns { Promise<void> } The promise returned by the function.
739561847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
739661847f8eSopenharmony_ci   * <br>2. Incorrect parameter types.
739761847f8eSopenharmony_ci   * @throws { BusinessError } 14800000 - Inner error.
739861847f8eSopenharmony_ci   * @throws { BusinessError } 14800010 - Failed to open or delete database by invalid database path.
739961847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
740061847f8eSopenharmony_ci   * @crossplatform
740161847f8eSopenharmony_ci   * @since 10
740261847f8eSopenharmony_ci   */
740361847f8eSopenharmony_ci  /**
740461847f8eSopenharmony_ci   * Deletes the database with a specified name.
740561847f8eSopenharmony_ci   * When specify custom directory, this function should not be called.
740661847f8eSopenharmony_ci   *
740761847f8eSopenharmony_ci   * @param { Context } context - Indicates the context of application or capability.
740861847f8eSopenharmony_ci   * @param { string } name - Indicates the database name.
740961847f8eSopenharmony_ci   * @returns { Promise<void> } The promise returned by the function.
741061847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
741161847f8eSopenharmony_ci   * <br>2. Incorrect parameter types.
741261847f8eSopenharmony_ci   * @throws { BusinessError } 14800000 - Inner error.
741361847f8eSopenharmony_ci   * @throws { BusinessError } 14800010 - Invalid database path.
741461847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
741561847f8eSopenharmony_ci   * @crossplatform
741661847f8eSopenharmony_ci   * @since 12
741761847f8eSopenharmony_ci   */
741861847f8eSopenharmony_ci  function deleteRdbStore(context: Context, name: string): Promise<void>;
741961847f8eSopenharmony_ci
742061847f8eSopenharmony_ci  /**
742161847f8eSopenharmony_ci   * Deletes the database with a specified store config.
742261847f8eSopenharmony_ci   * When specify custom directory, this function should be called.
742361847f8eSopenharmony_ci   *
742461847f8eSopenharmony_ci   * @param { Context } context - Indicates the context of an application or ability.
742561847f8eSopenharmony_ci   * @param { StoreConfig } config - Indicates the {@link StoreConfig} configuration of the database related to this RDB store.
742661847f8eSopenharmony_ci   * @returns { Promise<void> } The promise returned by the function.
742761847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
742861847f8eSopenharmony_ci   * <br>2. Incorrect parameter types.
742961847f8eSopenharmony_ci   * @throws { BusinessError } 14800000 - Inner error.
743061847f8eSopenharmony_ci   * @throws { BusinessError } 14800010 - Failed to open or delete database by invalid database path.
743161847f8eSopenharmony_ci   * @throws { BusinessError } 14801001 - Only supported in stage mode.
743261847f8eSopenharmony_ci   * @throws { BusinessError } 14801002 - The data group id is not valid.
743361847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
743461847f8eSopenharmony_ci   * @crossplatform
743561847f8eSopenharmony_ci   * @since 10
743661847f8eSopenharmony_ci   */
743761847f8eSopenharmony_ci  /**
743861847f8eSopenharmony_ci   * Deletes the database with a specified store config.
743961847f8eSopenharmony_ci   * When specify custom directory, this function should be called.
744061847f8eSopenharmony_ci   *
744161847f8eSopenharmony_ci   * @param { Context } context - Indicates the context of an application or ability.
744261847f8eSopenharmony_ci   * @param { StoreConfig } config - Indicates the {@link StoreConfig} configuration of the database related to this RDB store.
744361847f8eSopenharmony_ci   * @returns { Promise<void> } The promise returned by the function.
744461847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
744561847f8eSopenharmony_ci   * <br>2. Incorrect parameter types.
744661847f8eSopenharmony_ci   * @throws { BusinessError } 801 - Capability not supported.
744761847f8eSopenharmony_ci   * @throws { BusinessError } 14800000 - Inner error.
744861847f8eSopenharmony_ci   * @throws { BusinessError } 14800010 - Invalid database path.
744961847f8eSopenharmony_ci   * @throws { BusinessError } 14801001 - Only supported in stage mode.
745061847f8eSopenharmony_ci   * @throws { BusinessError } 14801002 - The data group id is not valid.
745161847f8eSopenharmony_ci   * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core
745261847f8eSopenharmony_ci   * @crossplatform
745361847f8eSopenharmony_ci   * @since 12
745461847f8eSopenharmony_ci   */
745561847f8eSopenharmony_ci  function deleteRdbStore(context: Context, config: StoreConfig): Promise<void>;
745661847f8eSopenharmony_ci}
745761847f8eSopenharmony_ci
745861847f8eSopenharmony_ciexport default relationalStore;
7459