161847f8eSopenharmony_ci/*
261847f8eSopenharmony_ci * Copyright (c) 2021 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 BasicServicesKit
1961847f8eSopenharmony_ci */
2061847f8eSopenharmony_ci
2161847f8eSopenharmony_ciimport { AsyncCallback } from './@ohos.base';
2261847f8eSopenharmony_ciimport Want from './@ohos.app.ability.Want';
2361847f8eSopenharmony_ciimport image from './@ohos.multimedia.image';
2461847f8eSopenharmony_ciimport unifiedDataChannel from './@ohos.data.unifiedDataChannel';
2561847f8eSopenharmony_ci
2661847f8eSopenharmony_ci/**
2761847f8eSopenharmony_ci * systemPasteboard
2861847f8eSopenharmony_ci * @namespace pasteboard
2961847f8eSopenharmony_ci * @syscap SystemCapability.MiscServices.Pasteboard
3061847f8eSopenharmony_ci * @since 6
3161847f8eSopenharmony_ci */
3261847f8eSopenharmony_ci/**
3361847f8eSopenharmony_ci * systemPasteboard
3461847f8eSopenharmony_ci * @namespace pasteboard
3561847f8eSopenharmony_ci * @syscap SystemCapability.MiscServices.Pasteboard
3661847f8eSopenharmony_ci * @atomicservice
3761847f8eSopenharmony_ci * @since 11
3861847f8eSopenharmony_ci */
3961847f8eSopenharmony_cideclare namespace pasteboard {
4061847f8eSopenharmony_ci  /**
4161847f8eSopenharmony_ci   * Indicates the maximum number of records allowed in a PasteData object.
4261847f8eSopenharmony_ci   * @constant
4361847f8eSopenharmony_ci   * @syscap SystemCapability.MiscServices.Pasteboard
4461847f8eSopenharmony_ci   * @since 7
4561847f8eSopenharmony_ci   */
4661847f8eSopenharmony_ci  /**
4761847f8eSopenharmony_ci   * Indicates the maximum number of records allowed in a PasteData object.
4861847f8eSopenharmony_ci   * @constant
4961847f8eSopenharmony_ci   * @syscap SystemCapability.MiscServices.Pasteboard
5061847f8eSopenharmony_ci   * @atomicservice
5161847f8eSopenharmony_ci   * @since 11
5261847f8eSopenharmony_ci   */
5361847f8eSopenharmony_ci  const MAX_RECORD_NUM: number;
5461847f8eSopenharmony_ci  /**
5561847f8eSopenharmony_ci   * Indicates MIME types of HTML text.
5661847f8eSopenharmony_ci   * @constant
5761847f8eSopenharmony_ci   * @syscap SystemCapability.MiscServices.Pasteboard
5861847f8eSopenharmony_ci   * @since 7
5961847f8eSopenharmony_ci   */
6061847f8eSopenharmony_ci  /**
6161847f8eSopenharmony_ci   * Indicates MIME types of HTML text.
6261847f8eSopenharmony_ci   * @constant
6361847f8eSopenharmony_ci   * @syscap SystemCapability.MiscServices.Pasteboard
6461847f8eSopenharmony_ci   * @atomicservice
6561847f8eSopenharmony_ci   * @since 11
6661847f8eSopenharmony_ci   */
6761847f8eSopenharmony_ci  const MIMETYPE_TEXT_HTML: string;
6861847f8eSopenharmony_ci  /**
6961847f8eSopenharmony_ci   * Indicates MIME types of wants.
7061847f8eSopenharmony_ci   * @constant
7161847f8eSopenharmony_ci   * @syscap SystemCapability.MiscServices.Pasteboard
7261847f8eSopenharmony_ci   * @since 7
7361847f8eSopenharmony_ci   */
7461847f8eSopenharmony_ci  /**
7561847f8eSopenharmony_ci   * Indicates MIME types of wants.
7661847f8eSopenharmony_ci   * @constant
7761847f8eSopenharmony_ci   * @syscap SystemCapability.MiscServices.Pasteboard
7861847f8eSopenharmony_ci   * @atomicservice
7961847f8eSopenharmony_ci   * @since 11
8061847f8eSopenharmony_ci   */
8161847f8eSopenharmony_ci  const MIMETYPE_TEXT_WANT: string;
8261847f8eSopenharmony_ci  /**
8361847f8eSopenharmony_ci   * Indicates MIME types of plain text.
8461847f8eSopenharmony_ci   * @constant
8561847f8eSopenharmony_ci   * @syscap SystemCapability.MiscServices.Pasteboard
8661847f8eSopenharmony_ci   * @since 7
8761847f8eSopenharmony_ci   */
8861847f8eSopenharmony_ci  /**
8961847f8eSopenharmony_ci   * Indicates MIME types of plain text.
9061847f8eSopenharmony_ci   * @constant
9161847f8eSopenharmony_ci   * @syscap SystemCapability.MiscServices.Pasteboard
9261847f8eSopenharmony_ci   * @atomicservice
9361847f8eSopenharmony_ci   * @since 11
9461847f8eSopenharmony_ci   */
9561847f8eSopenharmony_ci  const MIMETYPE_TEXT_PLAIN: string;
9661847f8eSopenharmony_ci  /**
9761847f8eSopenharmony_ci   * Indicates MIME types of URIs.
9861847f8eSopenharmony_ci   * @constant
9961847f8eSopenharmony_ci   * @syscap SystemCapability.MiscServices.Pasteboard
10061847f8eSopenharmony_ci   * @since 7
10161847f8eSopenharmony_ci   */
10261847f8eSopenharmony_ci  /**
10361847f8eSopenharmony_ci   * Indicates MIME types of URIs.
10461847f8eSopenharmony_ci   * @constant
10561847f8eSopenharmony_ci   * @syscap SystemCapability.MiscServices.Pasteboard
10661847f8eSopenharmony_ci   * @atomicservice
10761847f8eSopenharmony_ci   * @since 11
10861847f8eSopenharmony_ci   */
10961847f8eSopenharmony_ci  const MIMETYPE_TEXT_URI: string;
11061847f8eSopenharmony_ci  /**
11161847f8eSopenharmony_ci   * Indicates MIME type of PixelMap.
11261847f8eSopenharmony_ci   * @constant
11361847f8eSopenharmony_ci   * @syscap SystemCapability.MiscServices.Pasteboard
11461847f8eSopenharmony_ci   * @since 9
11561847f8eSopenharmony_ci   */
11661847f8eSopenharmony_ci  /**
11761847f8eSopenharmony_ci   * Indicates MIME type of PixelMap.
11861847f8eSopenharmony_ci   * @constant
11961847f8eSopenharmony_ci   * @syscap SystemCapability.MiscServices.Pasteboard
12061847f8eSopenharmony_ci   * @atomicservice
12161847f8eSopenharmony_ci   * @since 11
12261847f8eSopenharmony_ci   */
12361847f8eSopenharmony_ci  const MIMETYPE_PIXELMAP: string;
12461847f8eSopenharmony_ci
12561847f8eSopenharmony_ci  /**
12661847f8eSopenharmony_ci   * Indicates type of value.
12761847f8eSopenharmony_ci   * @type { string | image.PixelMap | Want | ArrayBuffer }
12861847f8eSopenharmony_ci   * @syscap SystemCapability.MiscServices.Pasteboard
12961847f8eSopenharmony_ci   * @since 9
13061847f8eSopenharmony_ci   */
13161847f8eSopenharmony_ci  /**
13261847f8eSopenharmony_ci   * Indicates type of value.
13361847f8eSopenharmony_ci   * @typedef { string | image.PixelMap | Want | ArrayBuffer }
13461847f8eSopenharmony_ci   * @syscap SystemCapability.MiscServices.Pasteboard
13561847f8eSopenharmony_ci   * @atomicservice
13661847f8eSopenharmony_ci   * @since 11
13761847f8eSopenharmony_ci   */
13861847f8eSopenharmony_ci  type ValueType = string | image.PixelMap | Want | ArrayBuffer;
13961847f8eSopenharmony_ci
14061847f8eSopenharmony_ci  /**
14161847f8eSopenharmony_ci   * Creates a PasteData object for PasteData#MIMETYPE_TEXT_HTML.
14261847f8eSopenharmony_ci   * @param { string } htmlText - To save the Html text content.
14361847f8eSopenharmony_ci   * @returns { PasteData } Containing the contents of the clipboard content object.
14461847f8eSopenharmony_ci   * @syscap SystemCapability.MiscServices.Pasteboard
14561847f8eSopenharmony_ci   * @since 7
14661847f8eSopenharmony_ci   * @deprecated since 9
14761847f8eSopenharmony_ci   * @useinstead ohos.pasteboard.pasteboard#createData
14861847f8eSopenharmony_ci   */
14961847f8eSopenharmony_ci  function createHtmlData(htmlText: string): PasteData;
15061847f8eSopenharmony_ci
15161847f8eSopenharmony_ci  /**
15261847f8eSopenharmony_ci   * Creates a PasteData object for PasteData#MIMETYPE_TEXT_WANT.
15361847f8eSopenharmony_ci   * @param { Want } want - To save the want of content.
15461847f8eSopenharmony_ci   * @returns { PasteData } Containing the contents of the clipboard content object.
15561847f8eSopenharmony_ci   * @syscap SystemCapability.MiscServices.Pasteboard
15661847f8eSopenharmony_ci   * @since 7
15761847f8eSopenharmony_ci   * @deprecated since 9
15861847f8eSopenharmony_ci   * @useinstead ohos.pasteboard.pasteboard#createData
15961847f8eSopenharmony_ci   */
16061847f8eSopenharmony_ci  function createWantData(want: Want): PasteData;
16161847f8eSopenharmony_ci
16261847f8eSopenharmony_ci  /**
16361847f8eSopenharmony_ci   * Creates a PasteData object for PasteData#MIMETYPE_TEXT_PLAIN.
16461847f8eSopenharmony_ci   * @param { string } text - To save the text of content.
16561847f8eSopenharmony_ci   * @returns { PasteData } Containing the contents of the clipboard content object.
16661847f8eSopenharmony_ci   * @syscap SystemCapability.MiscServices.Pasteboard
16761847f8eSopenharmony_ci   * @since 6
16861847f8eSopenharmony_ci   * @deprecated since 9
16961847f8eSopenharmony_ci   * @useinstead ohos.pasteboard.pasteboard#createData
17061847f8eSopenharmony_ci   */
17161847f8eSopenharmony_ci  function createPlainTextData(text: string): PasteData;
17261847f8eSopenharmony_ci
17361847f8eSopenharmony_ci  /**
17461847f8eSopenharmony_ci   * Creates a PasteData object for PasteData#MIMETYPE_TEXT_URI.
17561847f8eSopenharmony_ci   * @param { string } uri - To save the uri of content.
17661847f8eSopenharmony_ci   * @returns { PasteData } Containing the contents of the clipboard content object.
17761847f8eSopenharmony_ci   * @syscap SystemCapability.MiscServices.Pasteboard
17861847f8eSopenharmony_ci   * @since 7
17961847f8eSopenharmony_ci   * @deprecated since 9
18061847f8eSopenharmony_ci   * @useinstead ohos.pasteboard.pasteboard#createData
18161847f8eSopenharmony_ci   */
18261847f8eSopenharmony_ci  function createUriData(uri: string): PasteData;
18361847f8eSopenharmony_ci
18461847f8eSopenharmony_ci  /**
18561847f8eSopenharmony_ci   * Creates a PasteData object with MIME type and value.
18661847f8eSopenharmony_ci   * @param { string } mimeType - indicates MIME type of value, its size cannot be greater than 1024 bytes.
18761847f8eSopenharmony_ci   * @param { ValueType } value - indicates the content that is set to PasteData.
18861847f8eSopenharmony_ci   * @returns { PasteData } a new PasteData object which contains mimeType and value.
18961847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified; 
19061847f8eSopenharmony_ci   *    2. Incorrect parameters types;
19161847f8eSopenharmony_ci   *    3. Parameter verification failed.
19261847f8eSopenharmony_ci   * @syscap SystemCapability.MiscServices.Pasteboard
19361847f8eSopenharmony_ci   * @since 9
19461847f8eSopenharmony_ci   */
19561847f8eSopenharmony_ci  /**
19661847f8eSopenharmony_ci   * Creates a PasteData object with MIME type and value.
19761847f8eSopenharmony_ci   * @param { string } mimeType - indicates MIME type of value, its size cannot be greater than 1024 bytes.
19861847f8eSopenharmony_ci   * @param { ValueType } value - indicates the content that is set to PasteData.
19961847f8eSopenharmony_ci   * @returns { PasteData } a new PasteData object which contains mimeType and value.
20061847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified; 
20161847f8eSopenharmony_ci   *    2. Incorrect parameters types;
20261847f8eSopenharmony_ci   *    3. Parameter verification failed.
20361847f8eSopenharmony_ci   * @syscap SystemCapability.MiscServices.Pasteboard
20461847f8eSopenharmony_ci   * @atomicservice
20561847f8eSopenharmony_ci   * @since 11
20661847f8eSopenharmony_ci   */
20761847f8eSopenharmony_ci  function createData(mimeType: string, value: ValueType): PasteData;
20861847f8eSopenharmony_ci
20961847f8eSopenharmony_ci  /**
21061847f8eSopenharmony_ci   * Creates a PasteData object with the specified MIME types and values.
21161847f8eSopenharmony_ci   * @param { Record<string, ValueType> } data - indicates the MEME types and values of the PasteData object to create.
21261847f8eSopenharmony_ci   * @returns { PasteData } Returns the PasteData object created.
21361847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified;
21461847f8eSopenharmony_ci   *    2. Incorrect parameters types;
21561847f8eSopenharmony_ci   *    3. Parameter verification failed.
21661847f8eSopenharmony_ci   * @syscap SystemCapability.MiscServices.Pasteboard
21761847f8eSopenharmony_ci   * @since 14
21861847f8eSopenharmony_ci   */
21961847f8eSopenharmony_ci  function createData(data: Record<string, ValueType>): PasteData;
22061847f8eSopenharmony_ci
22161847f8eSopenharmony_ci  /**
22261847f8eSopenharmony_ci   * Creates a Record object for PasteData#MIMETYPE_TEXT_HTML.
22361847f8eSopenharmony_ci   * @param { string } htmlText - To save the Html text content.
22461847f8eSopenharmony_ci   * @returns { PasteDataRecord } The content of a new record
22561847f8eSopenharmony_ci   * @syscap SystemCapability.MiscServices.Pasteboard
22661847f8eSopenharmony_ci   * @since 7
22761847f8eSopenharmony_ci   * @deprecated since 9
22861847f8eSopenharmony_ci   * @useinstead ohos.pasteboard.pasteboard#createRecord
22961847f8eSopenharmony_ci   */
23061847f8eSopenharmony_ci  function createHtmlTextRecord(htmlText: string): PasteDataRecord;
23161847f8eSopenharmony_ci
23261847f8eSopenharmony_ci  /**
23361847f8eSopenharmony_ci   * Creates a Record object for PasteData#MIMETYPE_TEXT_WANT.
23461847f8eSopenharmony_ci   * @param { Want } want - To save the want of content.
23561847f8eSopenharmony_ci   * @returns { PasteDataRecord } The content of a new record
23661847f8eSopenharmony_ci   * @syscap SystemCapability.MiscServices.Pasteboard
23761847f8eSopenharmony_ci   * @since 7
23861847f8eSopenharmony_ci   * @deprecated since 9
23961847f8eSopenharmony_ci   * @useinstead ohos.pasteboard.pasteboard#createRecord
24061847f8eSopenharmony_ci   */
24161847f8eSopenharmony_ci  function createWantRecord(want: Want): PasteDataRecord;
24261847f8eSopenharmony_ci
24361847f8eSopenharmony_ci  /**
24461847f8eSopenharmony_ci   * Creates a Record object for PasteData#MIMETYPE_TEXT_PLAIN.
24561847f8eSopenharmony_ci   * @param { string } text - To save the text of content.
24661847f8eSopenharmony_ci   * @returns { PasteDataRecord } The content of a new record
24761847f8eSopenharmony_ci   * @syscap SystemCapability.MiscServices.Pasteboard
24861847f8eSopenharmony_ci   * @since 7
24961847f8eSopenharmony_ci   * @deprecated since 9
25061847f8eSopenharmony_ci   * @useinstead ohos.pasteboard.pasteboard#createRecord
25161847f8eSopenharmony_ci   */
25261847f8eSopenharmony_ci  function createPlainTextRecord(text: string): PasteDataRecord;
25361847f8eSopenharmony_ci
25461847f8eSopenharmony_ci  /**
25561847f8eSopenharmony_ci   * Creates a Record object for PasteData#MIMETYPE_TEXT_URI.
25661847f8eSopenharmony_ci   * @param { string } uri - To save the uri of content.
25761847f8eSopenharmony_ci   * @returns { PasteDataRecord } The content of a new record
25861847f8eSopenharmony_ci   * @syscap SystemCapability.MiscServices.Pasteboard
25961847f8eSopenharmony_ci   * @since 7
26061847f8eSopenharmony_ci   * @deprecated since 9
26161847f8eSopenharmony_ci   * @useinstead ohos.pasteboard.pasteboard#createRecord
26261847f8eSopenharmony_ci   */
26361847f8eSopenharmony_ci  function createUriRecord(uri: string): PasteDataRecord;
26461847f8eSopenharmony_ci
26561847f8eSopenharmony_ci  /**
26661847f8eSopenharmony_ci   * Creates a record object with MIME type and value.
26761847f8eSopenharmony_ci   * @param { string } mimeType - indicates MIME type of value, its size cannot be greater than 1024 bytes.
26861847f8eSopenharmony_ci   * @param { ValueType } value - content to be saved.
26961847f8eSopenharmony_ci   * @returns { PasteDataRecord } a new PasteDataRecord object which contains mimeType and value.
27061847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified;
27161847f8eSopenharmony_ci   *    2. Incorrect parameters types;
27261847f8eSopenharmony_ci   *    3. Parameter verification failed.
27361847f8eSopenharmony_ci   * @syscap SystemCapability.MiscServices.Pasteboard
27461847f8eSopenharmony_ci   * @since 9
27561847f8eSopenharmony_ci   */
27661847f8eSopenharmony_ci  /**
27761847f8eSopenharmony_ci   * Creates a record object with MIME type and value.
27861847f8eSopenharmony_ci   * @param { string } mimeType - indicates MIME type of value, its size cannot be greater than 1024 bytes.
27961847f8eSopenharmony_ci   * @param { ValueType } value - content to be saved.
28061847f8eSopenharmony_ci   * @returns { PasteDataRecord } a new PasteDataRecord object which contains mimeType and value.
28161847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified;
28261847f8eSopenharmony_ci   *    2. Incorrect parameters types;
28361847f8eSopenharmony_ci   *    3. Parameter verification failed.
28461847f8eSopenharmony_ci   * @syscap SystemCapability.MiscServices.Pasteboard
28561847f8eSopenharmony_ci   * @atomicservice
28661847f8eSopenharmony_ci   * @since 11
28761847f8eSopenharmony_ci   */
28861847f8eSopenharmony_ci  function createRecord(mimeType: string, value: ValueType): PasteDataRecord;
28961847f8eSopenharmony_ci
29061847f8eSopenharmony_ci  /**
29161847f8eSopenharmony_ci   * get SystemPasteboard
29261847f8eSopenharmony_ci   * @returns { SystemPasteboard } The system clipboard object
29361847f8eSopenharmony_ci   * @syscap SystemCapability.MiscServices.Pasteboard
29461847f8eSopenharmony_ci   * @since 6
29561847f8eSopenharmony_ci   */
29661847f8eSopenharmony_ci  /**
29761847f8eSopenharmony_ci   * get SystemPasteboard
29861847f8eSopenharmony_ci   * @returns { SystemPasteboard } The system clipboard object
29961847f8eSopenharmony_ci   * @syscap SystemCapability.MiscServices.Pasteboard
30061847f8eSopenharmony_ci   * @atomicservice
30161847f8eSopenharmony_ci   * @since 11
30261847f8eSopenharmony_ci   */
30361847f8eSopenharmony_ci  function getSystemPasteboard(): SystemPasteboard;
30461847f8eSopenharmony_ci
30561847f8eSopenharmony_ci  /**
30661847f8eSopenharmony_ci   * Types of scope that PasteData can be pasted.
30761847f8eSopenharmony_ci   * @enum { number }
30861847f8eSopenharmony_ci   * @syscap SystemCapability.MiscServices.Pasteboard
30961847f8eSopenharmony_ci   * @since 9
31061847f8eSopenharmony_ci   */
31161847f8eSopenharmony_ci  /**
31261847f8eSopenharmony_ci   * Types of scope that PasteData can be pasted.
31361847f8eSopenharmony_ci   * @enum { number }
31461847f8eSopenharmony_ci   * @syscap SystemCapability.MiscServices.Pasteboard
31561847f8eSopenharmony_ci   * @atomicservice
31661847f8eSopenharmony_ci   * @since 11
31761847f8eSopenharmony_ci   */
31861847f8eSopenharmony_ci  enum ShareOption {
31961847f8eSopenharmony_ci    /**
32061847f8eSopenharmony_ci     * INAPP indicates that only paste in the same app is allowed.
32161847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
32261847f8eSopenharmony_ci     * @since 9
32361847f8eSopenharmony_ci     */
32461847f8eSopenharmony_ci    /**
32561847f8eSopenharmony_ci     * INAPP indicates that only paste in the same app is allowed.
32661847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
32761847f8eSopenharmony_ci     * @atomicservice
32861847f8eSopenharmony_ci     * @since 11
32961847f8eSopenharmony_ci     */
33061847f8eSopenharmony_ci    INAPP,
33161847f8eSopenharmony_ci    /**
33261847f8eSopenharmony_ci     * LOCALDEVICE indicates that paste in any app in this device is allowed.
33361847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
33461847f8eSopenharmony_ci     * @since 9
33561847f8eSopenharmony_ci     */
33661847f8eSopenharmony_ci    /**
33761847f8eSopenharmony_ci     * LOCALDEVICE indicates that paste in any app in this device is allowed.
33861847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
33961847f8eSopenharmony_ci     * @atomicservice
34061847f8eSopenharmony_ci     * @since 11
34161847f8eSopenharmony_ci     */
34261847f8eSopenharmony_ci    LOCALDEVICE,
34361847f8eSopenharmony_ci    /**
34461847f8eSopenharmony_ci     * CROSSDEVICE indicates that paste in any app across devices is allowed.
34561847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
34661847f8eSopenharmony_ci     * @since 9
34761847f8eSopenharmony_ci     */
34861847f8eSopenharmony_ci    /**
34961847f8eSopenharmony_ci     * CROSSDEVICE indicates that paste in any app across devices is allowed.
35061847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
35161847f8eSopenharmony_ci     * @atomicservice
35261847f8eSopenharmony_ci     * @since 11
35361847f8eSopenharmony_ci     * @deprecated since 12
35461847f8eSopenharmony_ci     */
35561847f8eSopenharmony_ci    CROSSDEVICE
35661847f8eSopenharmony_ci  }
35761847f8eSopenharmony_ci
35861847f8eSopenharmony_ci  /**
35961847f8eSopenharmony_ci   * Enumerates the patterns allowed in the system pasteboard.
36061847f8eSopenharmony_ci   * @enum { number }
36161847f8eSopenharmony_ci   * @syscap SystemCapability.MiscServices.Pasteboard
36261847f8eSopenharmony_ci   * @since 13
36361847f8eSopenharmony_ci   */
36461847f8eSopenharmony_ci  enum Pattern {
36561847f8eSopenharmony_ci    /**
36661847f8eSopenharmony_ci     * URL pattern.
36761847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
36861847f8eSopenharmony_ci     * @since 13
36961847f8eSopenharmony_ci     */
37061847f8eSopenharmony_ci    URL = 0,
37161847f8eSopenharmony_ci    /**
37261847f8eSopenharmony_ci     * Number pattern.
37361847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
37461847f8eSopenharmony_ci     * @since 13
37561847f8eSopenharmony_ci     */
37661847f8eSopenharmony_ci    NUMBER = 1,
37761847f8eSopenharmony_ci    /**
37861847f8eSopenharmony_ci     * Email address pattern.
37961847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
38061847f8eSopenharmony_ci     * @since 13
38161847f8eSopenharmony_ci     */
38261847f8eSopenharmony_ci    EMAIL_ADDRESS = 2,
38361847f8eSopenharmony_ci  }
38461847f8eSopenharmony_ci
38561847f8eSopenharmony_ci
38661847f8eSopenharmony_ci  /**
38761847f8eSopenharmony_ci   * Paste data property.
38861847f8eSopenharmony_ci   * @interface PasteDataProperty
38961847f8eSopenharmony_ci   * @syscap SystemCapability.MiscServices.Pasteboard
39061847f8eSopenharmony_ci   * @since 7
39161847f8eSopenharmony_ci   */
39261847f8eSopenharmony_ci  /**
39361847f8eSopenharmony_ci   * Paste data property.
39461847f8eSopenharmony_ci   * @interface PasteDataProperty
39561847f8eSopenharmony_ci   * @syscap SystemCapability.MiscServices.Pasteboard
39661847f8eSopenharmony_ci   * @atomicservice
39761847f8eSopenharmony_ci   * @since 11
39861847f8eSopenharmony_ci   */
39961847f8eSopenharmony_ci  interface PasteDataProperty {
40061847f8eSopenharmony_ci    /**
40161847f8eSopenharmony_ci     * additional property data. key-value pairs.
40261847f8eSopenharmony_ci     * @type { object }
40361847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
40461847f8eSopenharmony_ci     * @since 7
40561847f8eSopenharmony_ci     */
40661847f8eSopenharmony_ci    /**
40761847f8eSopenharmony_ci     * additional property data. key-value pairs.
40861847f8eSopenharmony_ci     * @type { object }
40961847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
41061847f8eSopenharmony_ci     * @atomicservice
41161847f8eSopenharmony_ci     * @since 11
41261847f8eSopenharmony_ci     */
41361847f8eSopenharmony_ci    additions: {
41461847f8eSopenharmony_ci      [key: string]: object
41561847f8eSopenharmony_ci    }
41661847f8eSopenharmony_ci    /**
41761847f8eSopenharmony_ci     * non-repeating MIME types of all records in PasteData.
41861847f8eSopenharmony_ci     * @type { Array<string> }
41961847f8eSopenharmony_ci     * @readonly
42061847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
42161847f8eSopenharmony_ci     * @since 7
42261847f8eSopenharmony_ci     */
42361847f8eSopenharmony_ci    /**
42461847f8eSopenharmony_ci     * non-repeating MIME types of all records in PasteData.
42561847f8eSopenharmony_ci     * @type { Array<string> }
42661847f8eSopenharmony_ci     * @readonly
42761847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
42861847f8eSopenharmony_ci     * @atomicservice
42961847f8eSopenharmony_ci     * @since 11
43061847f8eSopenharmony_ci     */
43161847f8eSopenharmony_ci    readonly mimeTypes: Array<string>;
43261847f8eSopenharmony_ci    /**
43361847f8eSopenharmony_ci     * the user-defined tag of a PasteData object.
43461847f8eSopenharmony_ci     * @type { string }
43561847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
43661847f8eSopenharmony_ci     * @since 7
43761847f8eSopenharmony_ci     */
43861847f8eSopenharmony_ci    /**
43961847f8eSopenharmony_ci     * the user-defined tag of a PasteData object.
44061847f8eSopenharmony_ci     * @type { string }
44161847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
44261847f8eSopenharmony_ci     * @atomicservice
44361847f8eSopenharmony_ci     * @since 11
44461847f8eSopenharmony_ci     */
44561847f8eSopenharmony_ci    tag: string;
44661847f8eSopenharmony_ci    /**
44761847f8eSopenharmony_ci     * a timestamp, which indicates when data is written to the system pasteboard.
44861847f8eSopenharmony_ci     * @type { number }
44961847f8eSopenharmony_ci     * @readonly
45061847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
45161847f8eSopenharmony_ci     * @since 7
45261847f8eSopenharmony_ci     */
45361847f8eSopenharmony_ci    /**
45461847f8eSopenharmony_ci     * a timestamp, which indicates when data is written to the system pasteboard.
45561847f8eSopenharmony_ci     * @type { number }
45661847f8eSopenharmony_ci     * @readonly
45761847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
45861847f8eSopenharmony_ci     * @atomicservice
45961847f8eSopenharmony_ci     * @since 11
46061847f8eSopenharmony_ci     */
46161847f8eSopenharmony_ci    readonly timestamp: number;
46261847f8eSopenharmony_ci    /**
46361847f8eSopenharmony_ci     * Checks whether PasteData is set for local access only.
46461847f8eSopenharmony_ci     * @type { boolean }
46561847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
46661847f8eSopenharmony_ci     * @since 7
46761847f8eSopenharmony_ci     */
46861847f8eSopenharmony_ci    /**
46961847f8eSopenharmony_ci     * Checks whether PasteData is set for local access only.
47061847f8eSopenharmony_ci     * @type { boolean }
47161847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
47261847f8eSopenharmony_ci     * @atomicservice
47361847f8eSopenharmony_ci     * @since 11
47461847f8eSopenharmony_ci     */
47561847f8eSopenharmony_ci    localOnly: boolean;
47661847f8eSopenharmony_ci    /**
47761847f8eSopenharmony_ci     * Indicates the scope of clipboard data which can be pasted.
47861847f8eSopenharmony_ci     * If it is not set or is incorrectly set, The default value is CrossDevice.
47961847f8eSopenharmony_ci     * @type { ShareOption }
48061847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
48161847f8eSopenharmony_ci     * @since 9
48261847f8eSopenharmony_ci     */
48361847f8eSopenharmony_ci    /**
48461847f8eSopenharmony_ci     * Indicates the scope of clipboard data which can be pasted.
48561847f8eSopenharmony_ci     * If it is not set or is incorrectly set, The default value is CrossDevice.
48661847f8eSopenharmony_ci     * @type { ShareOption }
48761847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
48861847f8eSopenharmony_ci     * @atomicservice
48961847f8eSopenharmony_ci     * @since 11
49061847f8eSopenharmony_ci     */
49161847f8eSopenharmony_ci    shareOption: ShareOption;
49261847f8eSopenharmony_ci  }
49361847f8eSopenharmony_ci
49461847f8eSopenharmony_ci  /**
49561847f8eSopenharmony_ci   * Paste data record.
49661847f8eSopenharmony_ci   * @interface PasteDataRecord
49761847f8eSopenharmony_ci   * @syscap SystemCapability.MiscServices.Pasteboard
49861847f8eSopenharmony_ci   * @since 7
49961847f8eSopenharmony_ci   */
50061847f8eSopenharmony_ci  /**
50161847f8eSopenharmony_ci   * Paste data record.
50261847f8eSopenharmony_ci   * @interface PasteDataRecord
50361847f8eSopenharmony_ci   * @syscap SystemCapability.MiscServices.Pasteboard
50461847f8eSopenharmony_ci   * @atomicservice
50561847f8eSopenharmony_ci   * @since 11
50661847f8eSopenharmony_ci   */
50761847f8eSopenharmony_ci  interface PasteDataRecord {
50861847f8eSopenharmony_ci    /**
50961847f8eSopenharmony_ci     * HTML text in a record.
51061847f8eSopenharmony_ci     * @type { string }
51161847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
51261847f8eSopenharmony_ci     * @since 7
51361847f8eSopenharmony_ci     */
51461847f8eSopenharmony_ci    /**
51561847f8eSopenharmony_ci     * HTML text in a record.
51661847f8eSopenharmony_ci     * @type { string }
51761847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
51861847f8eSopenharmony_ci     * @atomicservice
51961847f8eSopenharmony_ci     * @since 11
52061847f8eSopenharmony_ci     */
52161847f8eSopenharmony_ci    htmlText: string;
52261847f8eSopenharmony_ci    /**
52361847f8eSopenharmony_ci     * an want in a record.
52461847f8eSopenharmony_ci     * @type { Want }
52561847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
52661847f8eSopenharmony_ci     * @since 7
52761847f8eSopenharmony_ci     */
52861847f8eSopenharmony_ci    /**
52961847f8eSopenharmony_ci     * an want in a record.
53061847f8eSopenharmony_ci     * @type { Want }
53161847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
53261847f8eSopenharmony_ci     * @atomicservice
53361847f8eSopenharmony_ci     * @since 11
53461847f8eSopenharmony_ci     */
53561847f8eSopenharmony_ci    want: Want;
53661847f8eSopenharmony_ci    /**
53761847f8eSopenharmony_ci     * MIME types of a record.
53861847f8eSopenharmony_ci     * @type { string }
53961847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
54061847f8eSopenharmony_ci     * @since 7
54161847f8eSopenharmony_ci     */
54261847f8eSopenharmony_ci    /**
54361847f8eSopenharmony_ci     * MIME types of a record.
54461847f8eSopenharmony_ci     * @type { string }
54561847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
54661847f8eSopenharmony_ci     * @atomicservice
54761847f8eSopenharmony_ci     * @since 11
54861847f8eSopenharmony_ci     */
54961847f8eSopenharmony_ci    mimeType: string;
55061847f8eSopenharmony_ci    /**
55161847f8eSopenharmony_ci     * plain text in a record.
55261847f8eSopenharmony_ci     * @type { string }
55361847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
55461847f8eSopenharmony_ci     * @since 7
55561847f8eSopenharmony_ci     */
55661847f8eSopenharmony_ci    /**
55761847f8eSopenharmony_ci     * plain text in a record.
55861847f8eSopenharmony_ci     * @type { string }
55961847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
56061847f8eSopenharmony_ci     * @atomicservice
56161847f8eSopenharmony_ci     * @since 11
56261847f8eSopenharmony_ci     */
56361847f8eSopenharmony_ci    plainText: string;
56461847f8eSopenharmony_ci    /**
56561847f8eSopenharmony_ci     * an URI in a record.
56661847f8eSopenharmony_ci     * @type { string }
56761847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
56861847f8eSopenharmony_ci     * @since 7
56961847f8eSopenharmony_ci     */
57061847f8eSopenharmony_ci    /**
57161847f8eSopenharmony_ci     * an URI in a record.
57261847f8eSopenharmony_ci     * @type { string }
57361847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
57461847f8eSopenharmony_ci     * @atomicservice
57561847f8eSopenharmony_ci     * @since 11
57661847f8eSopenharmony_ci     */
57761847f8eSopenharmony_ci    uri: string;
57861847f8eSopenharmony_ci    /**
57961847f8eSopenharmony_ci     * PixelMap in a record.
58061847f8eSopenharmony_ci     * @type { image.PixelMap }
58161847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
58261847f8eSopenharmony_ci     * @since 9
58361847f8eSopenharmony_ci     */
58461847f8eSopenharmony_ci    /**
58561847f8eSopenharmony_ci     * PixelMap in a record.
58661847f8eSopenharmony_ci     * @type { image.PixelMap }
58761847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
58861847f8eSopenharmony_ci     * @atomicservice
58961847f8eSopenharmony_ci     * @since 11
59061847f8eSopenharmony_ci     */
59161847f8eSopenharmony_ci    pixelMap: image.PixelMap;
59261847f8eSopenharmony_ci    /**
59361847f8eSopenharmony_ci     * Custom data in a record, mimeType indicates the MIME type of custom data, ArrayBuffer indicates the value of custom data.
59461847f8eSopenharmony_ci     * @type { object }
59561847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
59661847f8eSopenharmony_ci     * @since 9
59761847f8eSopenharmony_ci     */
59861847f8eSopenharmony_ci    /**
59961847f8eSopenharmony_ci     * Custom data in a record, mimeType indicates the MIME type of custom data, ArrayBuffer indicates the value of custom data.
60061847f8eSopenharmony_ci     * @type { object }
60161847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
60261847f8eSopenharmony_ci     * @atomicservice
60361847f8eSopenharmony_ci     * @since 11
60461847f8eSopenharmony_ci     */
60561847f8eSopenharmony_ci    data: {
60661847f8eSopenharmony_ci      [mimeType: string]: ArrayBuffer
60761847f8eSopenharmony_ci    }
60861847f8eSopenharmony_ci
60961847f8eSopenharmony_ci    /**
61061847f8eSopenharmony_ci     * Converts data in PasteData to text format.
61161847f8eSopenharmony_ci     * @param { AsyncCallback<string> } callback - the callback of convertToText.
61261847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Possible causes: Incorrect parameters types.
61361847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
61461847f8eSopenharmony_ci     * @since 7
61561847f8eSopenharmony_ci     * @deprecated since 9
61661847f8eSopenharmony_ci     * @useinstead ohos.pasteboard.pasteboard#convertToTextV9
61761847f8eSopenharmony_ci     */
61861847f8eSopenharmony_ci    convertToText(callback: AsyncCallback<string>): void;
61961847f8eSopenharmony_ci
62061847f8eSopenharmony_ci    /**
62161847f8eSopenharmony_ci     * Converts data in PasteData to text format.
62261847f8eSopenharmony_ci     * @returns { Promise<string> } the promise returned by the function.
62361847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
62461847f8eSopenharmony_ci     * @since 7
62561847f8eSopenharmony_ci     * @deprecated since 9
62661847f8eSopenharmony_ci     * @useinstead ohos.pasteboard.pasteboard#convertToTextV9
62761847f8eSopenharmony_ci     */
62861847f8eSopenharmony_ci    convertToText(): Promise<string>;
62961847f8eSopenharmony_ci
63061847f8eSopenharmony_ci    /**
63161847f8eSopenharmony_ci     * Converts data in PasteData to text format.
63261847f8eSopenharmony_ci     * @returns { string } the string returned by the function.
63361847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
63461847f8eSopenharmony_ci     * @since 9
63561847f8eSopenharmony_ci     */
63661847f8eSopenharmony_ci    /**
63761847f8eSopenharmony_ci     * Converts data in PasteData to text format.
63861847f8eSopenharmony_ci     * @returns { string } the string returned by the function.
63961847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
64061847f8eSopenharmony_ci     * @atomicservice
64161847f8eSopenharmony_ci     * @since 11
64261847f8eSopenharmony_ci     */
64361847f8eSopenharmony_ci    toPlainText(): string;
64461847f8eSopenharmony_ci
64561847f8eSopenharmony_ci    /**
64661847f8eSopenharmony_ci     * Adds data to the PasteDataRecord object.
64761847f8eSopenharmony_ci     * @param { string } type - indicates MIME type of the value to add. It cannot exceed 1024 bytes.
64861847f8eSopenharmony_ci     * @param { ValueType } value - indicates the value of the data to add.
64961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified;
65061847f8eSopenharmony_ci     *    2. Incorrect parameters types;
65161847f8eSopenharmony_ci     *    3. Parameter verification failed.
65261847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
65361847f8eSopenharmony_ci     * @since 14
65461847f8eSopenharmony_ci     */
65561847f8eSopenharmony_ci    addEntry(type: string, value: ValueType): void;
65661847f8eSopenharmony_ci
65761847f8eSopenharmony_ci    /**
65861847f8eSopenharmony_ci     * Obtains the valid types in the PasteDataRecord object.
65961847f8eSopenharmony_ci     * @param { Array<string> } types - indicates an array of types from which the valid types are obtained.
66061847f8eSopenharmony_ci     * @returns { Array<string> } Returns the valid types obtained.
66161847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified;
66261847f8eSopenharmony_ci     *    2. Incorrect parameters types;
66361847f8eSopenharmony_ci     *    3. Parameter verification failed.
66461847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
66561847f8eSopenharmony_ci     * @since 14
66661847f8eSopenharmony_ci     */
66761847f8eSopenharmony_ci    getValidTypes(types: Array<string>): Array<string>;
66861847f8eSopenharmony_ci
66961847f8eSopenharmony_ci    /**
67061847f8eSopenharmony_ci     * Obtains data of the specified type.
67161847f8eSopenharmony_ci     * @param { string } type - indicates the type of the data to obtain.
67261847f8eSopenharmony_ci     * @returns { Promise<ValueType> } Promise used to return the data obtained.
67361847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified;
67461847f8eSopenharmony_ci     *    2. Incorrect parameters types;
67561847f8eSopenharmony_ci     *    3. Parameter verification failed.
67661847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
67761847f8eSopenharmony_ci     * @since 14
67861847f8eSopenharmony_ci     */
67961847f8eSopenharmony_ci    getData(type: string): Promise<ValueType>;
68061847f8eSopenharmony_ci  }
68161847f8eSopenharmony_ci
68261847f8eSopenharmony_ci  /**
68361847f8eSopenharmony_ci   * Classes for paste data.
68461847f8eSopenharmony_ci   * @interface PasteData
68561847f8eSopenharmony_ci   * @syscap SystemCapability.MiscServices.Pasteboard
68661847f8eSopenharmony_ci   * @since 6
68761847f8eSopenharmony_ci   */
68861847f8eSopenharmony_ci  /**
68961847f8eSopenharmony_ci   * Classes for paste data.
69061847f8eSopenharmony_ci   * @interface PasteData
69161847f8eSopenharmony_ci   * @syscap SystemCapability.MiscServices.Pasteboard
69261847f8eSopenharmony_ci   * @atomicservice
69361847f8eSopenharmony_ci   * @since 11
69461847f8eSopenharmony_ci   */
69561847f8eSopenharmony_ci  interface PasteData {
69661847f8eSopenharmony_ci    /**
69761847f8eSopenharmony_ci     * Adds a Record for HTML text to a PasteData object, and updates the MIME type to PasteData#MIMETYPE_TEXT_HTML in DataProperty.
69861847f8eSopenharmony_ci     * @param { string } htmlText - To save the Html text content.
69961847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
70061847f8eSopenharmony_ci     * @since 7
70161847f8eSopenharmony_ci     * @deprecated since 9
70261847f8eSopenharmony_ci     * @useinstead ohos.pasteboard.pasteboard#addRecord
70361847f8eSopenharmony_ci     */
70461847f8eSopenharmony_ci    addHtmlRecord(htmlText: string): void;
70561847f8eSopenharmony_ci
70661847f8eSopenharmony_ci    /**
70761847f8eSopenharmony_ci     * Adds an want Record to a PasteData object, and updates the MIME type to PasteData#MIMETYPE_TEXT_WANT in DataProperty.
70861847f8eSopenharmony_ci     * @param { Want } want - To save the want content.
70961847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
71061847f8eSopenharmony_ci     * @since 7
71161847f8eSopenharmony_ci     * @deprecated since 9
71261847f8eSopenharmony_ci     * @useinstead ohos.pasteboard.pasteboard#addRecord
71361847f8eSopenharmony_ci     */
71461847f8eSopenharmony_ci    addWantRecord(want: Want): void;
71561847f8eSopenharmony_ci
71661847f8eSopenharmony_ci    /**
71761847f8eSopenharmony_ci     * Adds a PasteRecord to a PasteData object and updates MIME types in DataProperty.
71861847f8eSopenharmony_ci     * @param { PasteDataRecord } record - The content of a new record.
71961847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
72061847f8eSopenharmony_ci     * @since 7
72161847f8eSopenharmony_ci     */
72261847f8eSopenharmony_ci    /**
72361847f8eSopenharmony_ci     * Adds a PasteRecord to a PasteData object and updates MIME types in DataProperty.
72461847f8eSopenharmony_ci     * @param { PasteDataRecord } record - The content of a new record.
72561847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
72661847f8eSopenharmony_ci     * @atomicservice
72761847f8eSopenharmony_ci     * @since 11
72861847f8eSopenharmony_ci     */
72961847f8eSopenharmony_ci    addRecord(record: PasteDataRecord): void;
73061847f8eSopenharmony_ci
73161847f8eSopenharmony_ci    /**
73261847f8eSopenharmony_ci     * Adds a Record for plain text to a PasteData object, and updates the MIME type to PasteData#MIMETYPE_TEXT_PLAIN in DataProperty.
73361847f8eSopenharmony_ci     * @param { string } text - To save the text of content.
73461847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
73561847f8eSopenharmony_ci     * @since 7
73661847f8eSopenharmony_ci     * @deprecated since 9
73761847f8eSopenharmony_ci     * @useinstead ohos.pasteboard.pasteboard#addRecord
73861847f8eSopenharmony_ci     */
73961847f8eSopenharmony_ci    addTextRecord(text: string): void;
74061847f8eSopenharmony_ci
74161847f8eSopenharmony_ci    /**
74261847f8eSopenharmony_ci     * Adds a URI Record to a PasteData object, and updates the MIME type to PasteData#MIMETYPE_TEXT_URI in DataProperty.
74361847f8eSopenharmony_ci     * @param { string } uri - To save the uri of content.
74461847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
74561847f8eSopenharmony_ci     * @since 7
74661847f8eSopenharmony_ci     * @deprecated since 9
74761847f8eSopenharmony_ci     * @useinstead ohos.pasteboard.pasteboard#addRecord
74861847f8eSopenharmony_ci     */
74961847f8eSopenharmony_ci    addUriRecord(uri: string): void;
75061847f8eSopenharmony_ci
75161847f8eSopenharmony_ci    /**
75261847f8eSopenharmony_ci     * Adds a record with mimeType and value to a PasteData object.
75361847f8eSopenharmony_ci     * @param { string } mimeType - indicates the MIME type of value, its size cannot be greater than 1024 bytes.
75461847f8eSopenharmony_ci     * @param { ValueType } value - content to be saved.
75561847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified;
75661847f8eSopenharmony_ci     *    2. Incorrect parameters types;
75761847f8eSopenharmony_ci     *    3. Parameter verification failed.
75861847f8eSopenharmony_ci     * @throws { BusinessError } 12900002 - The number of records exceeds the upper limit.
75961847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
76061847f8eSopenharmony_ci     * @since 9
76161847f8eSopenharmony_ci     */
76261847f8eSopenharmony_ci    /**
76361847f8eSopenharmony_ci     * Adds a record with mimeType and value to a PasteData object.
76461847f8eSopenharmony_ci     * @param { string } mimeType - indicates the MIME type of value, its size cannot be greater than 1024 bytes.
76561847f8eSopenharmony_ci     * @param { ValueType } value - content to be saved.
76661847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified;
76761847f8eSopenharmony_ci     *    2. Incorrect parameters types;
76861847f8eSopenharmony_ci     *    3. Parameter verification failed.
76961847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
77061847f8eSopenharmony_ci     * @since 10
77161847f8eSopenharmony_ci     */
77261847f8eSopenharmony_ci    /**
77361847f8eSopenharmony_ci     * Adds a record with mimeType and value to a PasteData object.
77461847f8eSopenharmony_ci     * @param { string } mimeType - indicates the MIME type of value, its size cannot be greater than 1024 bytes.
77561847f8eSopenharmony_ci     * @param { ValueType } value - content to be saved.
77661847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified;
77761847f8eSopenharmony_ci     *    2. Incorrect parameters types;
77861847f8eSopenharmony_ci     *    3. Parameter verification failed.
77961847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
78061847f8eSopenharmony_ci     * @atomicservice
78161847f8eSopenharmony_ci     * @since 11
78261847f8eSopenharmony_ci     */
78361847f8eSopenharmony_ci    addRecord(mimeType: string, value: ValueType): void;
78461847f8eSopenharmony_ci
78561847f8eSopenharmony_ci    /**
78661847f8eSopenharmony_ci     * MIME types of all content on the pasteboard.
78761847f8eSopenharmony_ci     * @returns { Array<string> } type of array
78861847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
78961847f8eSopenharmony_ci     * @since 7
79061847f8eSopenharmony_ci     */
79161847f8eSopenharmony_ci    /**
79261847f8eSopenharmony_ci     * MIME types of all content on the pasteboard.
79361847f8eSopenharmony_ci     * @returns { Array<string> } type of array
79461847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
79561847f8eSopenharmony_ci     * @atomicservice
79661847f8eSopenharmony_ci     * @since 11
79761847f8eSopenharmony_ci     */
79861847f8eSopenharmony_ci    getMimeTypes(): Array<string>;
79961847f8eSopenharmony_ci
80061847f8eSopenharmony_ci    /**
80161847f8eSopenharmony_ci     * HTML text of the primary record in a PasteData object.
80261847f8eSopenharmony_ci     * @returns { string } type of htmltext
80361847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
80461847f8eSopenharmony_ci     * @since 7
80561847f8eSopenharmony_ci     */
80661847f8eSopenharmony_ci    /**
80761847f8eSopenharmony_ci     * HTML text of the primary record in a PasteData object.
80861847f8eSopenharmony_ci     * @returns { string } type of htmltext
80961847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
81061847f8eSopenharmony_ci     * @atomicservice
81161847f8eSopenharmony_ci     * @since 11
81261847f8eSopenharmony_ci     */
81361847f8eSopenharmony_ci    getPrimaryHtml(): string;
81461847f8eSopenharmony_ci
81561847f8eSopenharmony_ci    /**
81661847f8eSopenharmony_ci     * the want of the primary record in a PasteData object.
81761847f8eSopenharmony_ci     * @returns { Want } type of want
81861847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
81961847f8eSopenharmony_ci     * @since 7
82061847f8eSopenharmony_ci     */
82161847f8eSopenharmony_ci    /**
82261847f8eSopenharmony_ci     * the want of the primary record in a PasteData object.
82361847f8eSopenharmony_ci     * @returns { Want } type of want
82461847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
82561847f8eSopenharmony_ci     * @atomicservice
82661847f8eSopenharmony_ci     * @since 11
82761847f8eSopenharmony_ci     */
82861847f8eSopenharmony_ci    getPrimaryWant(): Want;
82961847f8eSopenharmony_ci
83061847f8eSopenharmony_ci    /**
83161847f8eSopenharmony_ci     * the MIME type of the primary record in a PasteData object.
83261847f8eSopenharmony_ci     * @returns { string } type of mimetype
83361847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
83461847f8eSopenharmony_ci     * @since 7
83561847f8eSopenharmony_ci     */
83661847f8eSopenharmony_ci    /**
83761847f8eSopenharmony_ci     * the MIME type of the primary record in a PasteData object.
83861847f8eSopenharmony_ci     * @returns { string } type of mimetype
83961847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
84061847f8eSopenharmony_ci     * @atomicservice
84161847f8eSopenharmony_ci     * @since 11
84261847f8eSopenharmony_ci     */
84361847f8eSopenharmony_ci    getPrimaryMimeType(): string;
84461847f8eSopenharmony_ci
84561847f8eSopenharmony_ci    /**
84661847f8eSopenharmony_ci     * the plain text of the primary record in a PasteData object.
84761847f8eSopenharmony_ci     * @returns { string } type of text
84861847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
84961847f8eSopenharmony_ci     * @since 6
85061847f8eSopenharmony_ci     */
85161847f8eSopenharmony_ci    /**
85261847f8eSopenharmony_ci     * the plain text of the primary record in a PasteData object.
85361847f8eSopenharmony_ci     * @returns { string } type of text
85461847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
85561847f8eSopenharmony_ci     * @atomicservice
85661847f8eSopenharmony_ci     * @since 11
85761847f8eSopenharmony_ci     */
85861847f8eSopenharmony_ci    getPrimaryText(): string;
85961847f8eSopenharmony_ci
86061847f8eSopenharmony_ci    /**
86161847f8eSopenharmony_ci     * the URI of the primary record in a PasteData object.
86261847f8eSopenharmony_ci     * @returns { string } type of uri
86361847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
86461847f8eSopenharmony_ci     * @since 7
86561847f8eSopenharmony_ci     */
86661847f8eSopenharmony_ci    /**
86761847f8eSopenharmony_ci     * the URI of the primary record in a PasteData object.
86861847f8eSopenharmony_ci     * @returns { string } type of uri
86961847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
87061847f8eSopenharmony_ci     * @atomicservice
87161847f8eSopenharmony_ci     * @since 11
87261847f8eSopenharmony_ci     */
87361847f8eSopenharmony_ci    getPrimaryUri(): string;
87461847f8eSopenharmony_ci
87561847f8eSopenharmony_ci    /**
87661847f8eSopenharmony_ci     * Gets the primary PixelMap record in a PasteData object.
87761847f8eSopenharmony_ci     * @returns { image.PixelMap } pixelMap
87861847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
87961847f8eSopenharmony_ci     * @since 9
88061847f8eSopenharmony_ci     */
88161847f8eSopenharmony_ci    /**
88261847f8eSopenharmony_ci     * Gets the primary PixelMap record in a PasteData object.
88361847f8eSopenharmony_ci     * @returns { image.PixelMap } pixelMap
88461847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
88561847f8eSopenharmony_ci     * @atomicservice
88661847f8eSopenharmony_ci     * @since 11
88761847f8eSopenharmony_ci     */
88861847f8eSopenharmony_ci    getPrimaryPixelMap(): image.PixelMap;
88961847f8eSopenharmony_ci
89061847f8eSopenharmony_ci    /**
89161847f8eSopenharmony_ci     * DataProperty of a PasteData object.
89261847f8eSopenharmony_ci     * @returns { PasteDataProperty } PasteDataProperty type of PasteDataProperty
89361847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
89461847f8eSopenharmony_ci     * @since 7
89561847f8eSopenharmony_ci     */
89661847f8eSopenharmony_ci    /**
89761847f8eSopenharmony_ci     * DataProperty of a PasteData object.
89861847f8eSopenharmony_ci     * @returns { PasteDataProperty } PasteDataProperty type of PasteDataProperty
89961847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
90061847f8eSopenharmony_ci     * @atomicservice
90161847f8eSopenharmony_ci     * @since 11
90261847f8eSopenharmony_ci     */
90361847f8eSopenharmony_ci    getProperty(): PasteDataProperty;
90461847f8eSopenharmony_ci
90561847f8eSopenharmony_ci    /**
90661847f8eSopenharmony_ci     * Sets PasteDataProperty to a PasteData object, Modifying shareOption is supported only.
90761847f8eSopenharmony_ci     * @param { PasteDataProperty } property - save property to PasteData object.
90861847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified;
90961847f8eSopenharmony_ci     *    2. Incorrect parameters types.
91061847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
91161847f8eSopenharmony_ci     * @since 9
91261847f8eSopenharmony_ci     */
91361847f8eSopenharmony_ci    /**
91461847f8eSopenharmony_ci     * Sets PasteDataProperty to a PasteData object, Modifying shareOption is supported only.
91561847f8eSopenharmony_ci     * @param { PasteDataProperty } property - save property to PasteData object.
91661847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified;
91761847f8eSopenharmony_ci     *    2. Incorrect parameters types.
91861847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
91961847f8eSopenharmony_ci     * @atomicservice
92061847f8eSopenharmony_ci     * @since 11
92161847f8eSopenharmony_ci     */
92261847f8eSopenharmony_ci    setProperty(property: PasteDataProperty): void;
92361847f8eSopenharmony_ci
92461847f8eSopenharmony_ci    /**
92561847f8eSopenharmony_ci     * Gets record by index in PasteData.
92661847f8eSopenharmony_ci     * @param { number } index - indicates the record index in PasteData.
92761847f8eSopenharmony_ci     * @returns { PasteDataRecord } the record in PasteData with index.
92861847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified;
92961847f8eSopenharmony_ci     *    2. Incorrect parameters types.
93061847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
93161847f8eSopenharmony_ci     * @since 7
93261847f8eSopenharmony_ci     * @deprecated since 9
93361847f8eSopenharmony_ci     * @useinstead ohos.pasteboard.pasteboard#getRecord
93461847f8eSopenharmony_ci     */
93561847f8eSopenharmony_ci    getRecordAt(index: number): PasteDataRecord;
93661847f8eSopenharmony_ci
93761847f8eSopenharmony_ci    /**
93861847f8eSopenharmony_ci     * Gets record by index in PasteData.
93961847f8eSopenharmony_ci     * @param { number } index - indicates the record index in PasteData.
94061847f8eSopenharmony_ci     * @returns { PasteDataRecord } the record in PasteData with index.
94161847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified;
94261847f8eSopenharmony_ci     *    2. Incorrect parameters types.
94361847f8eSopenharmony_ci     * @throws { BusinessError } 12900001 - The index is out of the record.
94461847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
94561847f8eSopenharmony_ci     * @since 9
94661847f8eSopenharmony_ci     */
94761847f8eSopenharmony_ci    /**
94861847f8eSopenharmony_ci     * Gets record by index in PasteData.
94961847f8eSopenharmony_ci     * @param { number } index - indicates the record index in PasteData.
95061847f8eSopenharmony_ci     * @returns { PasteDataRecord } the record in PasteData with index.
95161847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified;
95261847f8eSopenharmony_ci     *    2. Incorrect parameters types.
95361847f8eSopenharmony_ci     * @throws { BusinessError } 12900001 - The index is out of the record.
95461847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
95561847f8eSopenharmony_ci     * @atomicservice
95661847f8eSopenharmony_ci     * @since 11
95761847f8eSopenharmony_ci     */
95861847f8eSopenharmony_ci    getRecord(index: number): PasteDataRecord;
95961847f8eSopenharmony_ci
96061847f8eSopenharmony_ci    /**
96161847f8eSopenharmony_ci     * the number of records in a PasteData object.
96261847f8eSopenharmony_ci     * @returns { number } The number of the clipboard contents
96361847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
96461847f8eSopenharmony_ci     * @since 7
96561847f8eSopenharmony_ci     */
96661847f8eSopenharmony_ci    /**
96761847f8eSopenharmony_ci     * the number of records in a PasteData object.
96861847f8eSopenharmony_ci     * @returns { number } The number of the clipboard contents
96961847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
97061847f8eSopenharmony_ci     * @atomicservice
97161847f8eSopenharmony_ci     * @since 11
97261847f8eSopenharmony_ci     */
97361847f8eSopenharmony_ci    getRecordCount(): number;
97461847f8eSopenharmony_ci
97561847f8eSopenharmony_ci    /**
97661847f8eSopenharmony_ci     * the user-defined tag of a PasteData object.
97761847f8eSopenharmony_ci     * @returns { string } type of tag
97861847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
97961847f8eSopenharmony_ci     * @since 7
98061847f8eSopenharmony_ci     */
98161847f8eSopenharmony_ci    /**
98261847f8eSopenharmony_ci     * the user-defined tag of a PasteData object.
98361847f8eSopenharmony_ci     * @returns { string } type of tag
98461847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
98561847f8eSopenharmony_ci     * @atomicservice
98661847f8eSopenharmony_ci     * @since 11
98761847f8eSopenharmony_ci     */
98861847f8eSopenharmony_ci    getTag(): string;
98961847f8eSopenharmony_ci
99061847f8eSopenharmony_ci    /**
99161847f8eSopenharmony_ci     * Checks whether there is a specified MIME type of data in DataProperty.
99261847f8eSopenharmony_ci     * @param { string } mimeType - indicates to query data type.
99361847f8eSopenharmony_ci     * @returns { boolean } if having mimeType in PasteData returns true, else returns false.
99461847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified;
99561847f8eSopenharmony_ci     *    2. Incorrect parameters types.
99661847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
99761847f8eSopenharmony_ci     * @since 7
99861847f8eSopenharmony_ci     * @deprecated since 9
99961847f8eSopenharmony_ci     * @useinstead ohos.pasteboard.pasteboard#hasType
100061847f8eSopenharmony_ci     */
100161847f8eSopenharmony_ci    hasMimeType(mimeType: string): boolean;
100261847f8eSopenharmony_ci
100361847f8eSopenharmony_ci    /**
100461847f8eSopenharmony_ci     * Checks whether there is a specified MIME type of data in DataProperty.
100561847f8eSopenharmony_ci     * @param { string } mimeType - indicates to query data type.
100661847f8eSopenharmony_ci     * @returns { boolean } if having mimeType in PasteData returns true, else returns false.
100761847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified;
100861847f8eSopenharmony_ci     *    2. Incorrect parameters types.
100961847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
101061847f8eSopenharmony_ci     * @since 9
101161847f8eSopenharmony_ci     */
101261847f8eSopenharmony_ci    /**
101361847f8eSopenharmony_ci     * Checks whether there is a specified MIME type of data in DataProperty.
101461847f8eSopenharmony_ci     * @param { string } mimeType - indicates to query data type.
101561847f8eSopenharmony_ci     * @returns { boolean } if having mimeType in PasteData returns true, else returns false.
101661847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified;
101761847f8eSopenharmony_ci     *    2. Incorrect parameters types.
101861847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
101961847f8eSopenharmony_ci     * @atomicservice
102061847f8eSopenharmony_ci     * @since 11
102161847f8eSopenharmony_ci     */
102261847f8eSopenharmony_ci    hasType(mimeType: string): boolean;
102361847f8eSopenharmony_ci
102461847f8eSopenharmony_ci    /**
102561847f8eSopenharmony_ci     * Removes a Record based on a specified index.
102661847f8eSopenharmony_ci     * @param { number } index - indicates the record index in PasteData.
102761847f8eSopenharmony_ci     * @returns { boolean } The query returns True on success, or False on failure.
102861847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified;
102961847f8eSopenharmony_ci     *    2. Incorrect parameters types.
103061847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
103161847f8eSopenharmony_ci     * @since 7
103261847f8eSopenharmony_ci     * @deprecated since 9
103361847f8eSopenharmony_ci     * @useinstead ohos.pasteboard.pasteboard#removeRecord
103461847f8eSopenharmony_ci     */
103561847f8eSopenharmony_ci    removeRecordAt(index: number): boolean;
103661847f8eSopenharmony_ci
103761847f8eSopenharmony_ci    /**
103861847f8eSopenharmony_ci     * Removes a Record based on a specified index.
103961847f8eSopenharmony_ci     * @param { number } index - indicates the record index in PasteData.
104061847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified;
104161847f8eSopenharmony_ci     *    2. Incorrect parameters types.
104261847f8eSopenharmony_ci     * @throws { BusinessError } 12900001 - The index is out of the record.
104361847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
104461847f8eSopenharmony_ci     * @since 9
104561847f8eSopenharmony_ci     */
104661847f8eSopenharmony_ci    /**
104761847f8eSopenharmony_ci     * Removes a Record based on a specified index.
104861847f8eSopenharmony_ci     * @param { number } index - indicates the record index in PasteData.
104961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified;
105061847f8eSopenharmony_ci     *    2. Incorrect parameters types.
105161847f8eSopenharmony_ci     * @throws { BusinessError } 12900001 - The index is out of the record.
105261847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
105361847f8eSopenharmony_ci     * @atomicservice
105461847f8eSopenharmony_ci     * @since 11
105561847f8eSopenharmony_ci     */
105661847f8eSopenharmony_ci    removeRecord(index: number): void;
105761847f8eSopenharmony_ci
105861847f8eSopenharmony_ci    /**
105961847f8eSopenharmony_ci     * Replaces a specified record with a new one.
106061847f8eSopenharmony_ci     * @param { number } index - indicates the record index in PasteData.
106161847f8eSopenharmony_ci     * @param { PasteDataRecord } record - the content of a new record.
106261847f8eSopenharmony_ci     * @returns { boolean } The query returns True on success, or False on failure.
106361847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
106461847f8eSopenharmony_ci     * @since 7
106561847f8eSopenharmony_ci     * @deprecated since 9
106661847f8eSopenharmony_ci     * @useinstead ohos.pasteboard.pasteboard#replaceRecord
106761847f8eSopenharmony_ci     */
106861847f8eSopenharmony_ci    replaceRecordAt(index: number, record: PasteDataRecord): boolean;
106961847f8eSopenharmony_ci
107061847f8eSopenharmony_ci    /**
107161847f8eSopenharmony_ci     * Replaces a specified record with a new one.
107261847f8eSopenharmony_ci     * @param { number } index - indicates the record index in PasteData.
107361847f8eSopenharmony_ci     * @param { PasteDataRecord } record - the content of a new record.
107461847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified;
107561847f8eSopenharmony_ci     *    2. Incorrect parameters types.
107661847f8eSopenharmony_ci     * @throws { BusinessError } 12900001 - The index is out of the record.
107761847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
107861847f8eSopenharmony_ci     * @since 9
107961847f8eSopenharmony_ci     */
108061847f8eSopenharmony_ci    /**
108161847f8eSopenharmony_ci     * Replaces a specified record with a new one.
108261847f8eSopenharmony_ci     * @param { number } index - indicates the record index in PasteData.
108361847f8eSopenharmony_ci     * @param { PasteDataRecord } record - the content of a new record.
108461847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified;
108561847f8eSopenharmony_ci     *    2. Incorrect parameters types.
108661847f8eSopenharmony_ci     * @throws { BusinessError } 12900001 - The index is out of the record.
108761847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
108861847f8eSopenharmony_ci     * @atomicservice
108961847f8eSopenharmony_ci     * @since 11
109061847f8eSopenharmony_ci     */
109161847f8eSopenharmony_ci    replaceRecord(index: number, record: PasteDataRecord): void;
109261847f8eSopenharmony_ci
109361847f8eSopenharmony_ci    /**
109461847f8eSopenharmony_ci     * Utilized to notify pasteboard service while reading PasteData, in this case, the service will help to preserve the context and resources
109561847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
109661847f8eSopenharmony_ci     * @since 12
109761847f8eSopenharmony_ci     */
109861847f8eSopenharmony_ci    pasteStart(): void;
109961847f8eSopenharmony_ci
110061847f8eSopenharmony_ci    /**
110161847f8eSopenharmony_ci     * Invoked to notify pasteboard service the utilization of PasteData has completed and occupied resources can be released for further usage
110261847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
110361847f8eSopenharmony_ci     * @since 12
110461847f8eSopenharmony_ci     */
110561847f8eSopenharmony_ci    pasteComplete(): void;
110661847f8eSopenharmony_ci  }
110761847f8eSopenharmony_ci
110861847f8eSopenharmony_ci  /**
110961847f8eSopenharmony_ci   * Classes for system pasteboard.
111061847f8eSopenharmony_ci   * @interface SystemPasteboard
111161847f8eSopenharmony_ci   * @syscap SystemCapability.MiscServices.Pasteboard
111261847f8eSopenharmony_ci   * @since 6
111361847f8eSopenharmony_ci   */
111461847f8eSopenharmony_ci  /**
111561847f8eSopenharmony_ci   * Classes for system pasteboard.
111661847f8eSopenharmony_ci   * @interface SystemPasteboard
111761847f8eSopenharmony_ci   * @syscap SystemCapability.MiscServices.Pasteboard
111861847f8eSopenharmony_ci   * @atomicservice
111961847f8eSopenharmony_ci   * @since 11
112061847f8eSopenharmony_ci   */
112161847f8eSopenharmony_ci  interface SystemPasteboard {
112261847f8eSopenharmony_ci    /**
112361847f8eSopenharmony_ci     * Callback invoked when pasteboard content changes.
112461847f8eSopenharmony_ci     * @param { 'update' } type - indicates pasteboard content changed.
112561847f8eSopenharmony_ci     * @param { function } callback - the callback to add.
112661847f8eSopenharmony_ci     * @throws { BusinessError }  401 - Possible causes: 1. Mandatory parameters are left unspecified;
112761847f8eSopenharmony_ci     *    2. Incorrect parameters types.
112861847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
112961847f8eSopenharmony_ci     * @since 7
113061847f8eSopenharmony_ci     */
113161847f8eSopenharmony_ci    on(type: 'update', callback: () => void): void;
113261847f8eSopenharmony_ci
113361847f8eSopenharmony_ci    /**
113461847f8eSopenharmony_ci     * Remove a callback invoked when pasteboard content changes.
113561847f8eSopenharmony_ci     * @param { 'update' } type - indicates pasteboard content changed.
113661847f8eSopenharmony_ci     * @param { function } [callback] - the callback to remove. If this parameter is not filled in, it indicates that all
113761847f8eSopenharmony_ci     * callbacks for this application will be cleared. Otherwise, it indicates that the specified callback will be cleared.
113861847f8eSopenharmony_ci     * @throws { BusinessError }  401 - Possible causes: 1. Mandatory parameters are left unspecified;
113961847f8eSopenharmony_ci     *    2. Incorrect parameters types.
114061847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
114161847f8eSopenharmony_ci     * @since 7
114261847f8eSopenharmony_ci     */
114361847f8eSopenharmony_ci    off(type: 'update', callback?: () => void): void;
114461847f8eSopenharmony_ci
114561847f8eSopenharmony_ci    /**
114661847f8eSopenharmony_ci     * Checks whether the data is remote.
114761847f8eSopenharmony_ci     * @returns { boolean } True is remote data, else false.
114861847f8eSopenharmony_ci     * @throws { BusinessError } 12900005 - Request timed out.
114961847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
115061847f8eSopenharmony_ci     * @atomicservice
115161847f8eSopenharmony_ci     * @since 11
115261847f8eSopenharmony_ci     */
115361847f8eSopenharmony_ci    isRemoteData(): boolean;
115461847f8eSopenharmony_ci
115561847f8eSopenharmony_ci    /**
115661847f8eSopenharmony_ci     * Gets source of data.
115761847f8eSopenharmony_ci     * @returns { string } data source.
115861847f8eSopenharmony_ci     * @throws { BusinessError } 12900005 - Request timed out.
115961847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
116061847f8eSopenharmony_ci     * @atomicservice
116161847f8eSopenharmony_ci     * @since 11
116261847f8eSopenharmony_ci     */
116361847f8eSopenharmony_ci    getDataSource(): string;
116461847f8eSopenharmony_ci
116561847f8eSopenharmony_ci    /**
116661847f8eSopenharmony_ci     * Checks whether there is a specified MIME type of data in Data.
116761847f8eSopenharmony_ci     * @param { string } mimeType - indicates to query data type.
116861847f8eSopenharmony_ci     * @returns { boolean } if having mimeType in PasteData returns true, else returns false.
116961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified;
117061847f8eSopenharmony_ci     *    2. Incorrect parameters types.
117161847f8eSopenharmony_ci     * @throws { BusinessError } 12900005 - Request timed out.
117261847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
117361847f8eSopenharmony_ci     * @atomicservice
117461847f8eSopenharmony_ci     * @since 11
117561847f8eSopenharmony_ci     */
117661847f8eSopenharmony_ci    hasDataType(mimeType: string): boolean;
117761847f8eSopenharmony_ci
117861847f8eSopenharmony_ci    /**
117961847f8eSopenharmony_ci     * Clears the pasteboard.
118061847f8eSopenharmony_ci     * @param { AsyncCallback<void> } callback - the callback of clearData.
118161847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified;
118261847f8eSopenharmony_ci     *    2. Incorrect parameters types.
118361847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
118461847f8eSopenharmony_ci     * @since 7
118561847f8eSopenharmony_ci     * @deprecated since 9
118661847f8eSopenharmony_ci     * @useinstead ohos.pasteboard.pasteboard#clearData
118761847f8eSopenharmony_ci     */
118861847f8eSopenharmony_ci    clear(callback: AsyncCallback<void>): void;
118961847f8eSopenharmony_ci
119061847f8eSopenharmony_ci    /**
119161847f8eSopenharmony_ci     * Clears the pasteboard.
119261847f8eSopenharmony_ci     * @returns { Promise<void> } the promise returned by the clearData.
119361847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
119461847f8eSopenharmony_ci     * @since 7
119561847f8eSopenharmony_ci     * @deprecated since 9
119661847f8eSopenharmony_ci     * @useinstead ohos.pasteboard.pasteboard#clearData
119761847f8eSopenharmony_ci     */
119861847f8eSopenharmony_ci    clear(): Promise<void>;
119961847f8eSopenharmony_ci
120061847f8eSopenharmony_ci    /**
120161847f8eSopenharmony_ci     * Clears the pasteboard.
120261847f8eSopenharmony_ci     * @param { AsyncCallback<void> } callback - the callback of clearData.
120361847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified;
120461847f8eSopenharmony_ci     *    2. Incorrect parameters types.
120561847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
120661847f8eSopenharmony_ci     * @since 9
120761847f8eSopenharmony_ci     */
120861847f8eSopenharmony_ci    /**
120961847f8eSopenharmony_ci     * Clears the pasteboard.
121061847f8eSopenharmony_ci     * @param { AsyncCallback<void> } callback - the callback of clearData.
121161847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified;
121261847f8eSopenharmony_ci     *    2. Incorrect parameters types.
121361847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
121461847f8eSopenharmony_ci     * @atomicservice
121561847f8eSopenharmony_ci     * @since 11
121661847f8eSopenharmony_ci     */
121761847f8eSopenharmony_ci    clearData(callback: AsyncCallback<void>): void;
121861847f8eSopenharmony_ci
121961847f8eSopenharmony_ci    /**
122061847f8eSopenharmony_ci     * Clears the pasteboard.
122161847f8eSopenharmony_ci     * @returns { Promise<void> } the promise returned by the clearData.
122261847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
122361847f8eSopenharmony_ci     * @since 9
122461847f8eSopenharmony_ci     */
122561847f8eSopenharmony_ci    /**
122661847f8eSopenharmony_ci     * Clears the pasteboard.
122761847f8eSopenharmony_ci     * @returns { Promise<void> } the promise returned by the clearData.
122861847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
122961847f8eSopenharmony_ci     * @atomicservice
123061847f8eSopenharmony_ci     * @since 11
123161847f8eSopenharmony_ci     */
123261847f8eSopenharmony_ci    clearData(): Promise<void>;
123361847f8eSopenharmony_ci
123461847f8eSopenharmony_ci    /**
123561847f8eSopenharmony_ci     * Clears the pasteboard.
123661847f8eSopenharmony_ci     * @throws { BusinessError } 12900005 - Request timed out.
123761847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
123861847f8eSopenharmony_ci     * @atomicservice
123961847f8eSopenharmony_ci     * @since 11
124061847f8eSopenharmony_ci     */
124161847f8eSopenharmony_ci    clearDataSync(): void;
124261847f8eSopenharmony_ci
124361847f8eSopenharmony_ci    /**
124461847f8eSopenharmony_ci     * Gets pastedata from the system pasteboard.
124561847f8eSopenharmony_ci     * @param { AsyncCallback<PasteData> } callback - the callback of getData.
124661847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified;
124761847f8eSopenharmony_ci     *    2. Incorrect  parameters types.
124861847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
124961847f8eSopenharmony_ci     * @since 6
125061847f8eSopenharmony_ci     * @deprecated since 9
125161847f8eSopenharmony_ci     * @useinstead ohos.pasteboard.pasteboard#getData
125261847f8eSopenharmony_ci     */
125361847f8eSopenharmony_ci    getPasteData(callback: AsyncCallback<PasteData>): void;
125461847f8eSopenharmony_ci
125561847f8eSopenharmony_ci    /**
125661847f8eSopenharmony_ci     * Gets pastedata from the system pasteboard.
125761847f8eSopenharmony_ci     * @returns { Promise<PasteData> } the promise returned by the getData.
125861847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
125961847f8eSopenharmony_ci     * @since 6
126061847f8eSopenharmony_ci     * @deprecated since 9
126161847f8eSopenharmony_ci     * @useinstead ohos.pasteboard.pasteboard#getData
126261847f8eSopenharmony_ci     */
126361847f8eSopenharmony_ci    getPasteData(): Promise<PasteData>;
126461847f8eSopenharmony_ci
126561847f8eSopenharmony_ci    /**
126661847f8eSopenharmony_ci     * Gets pastedata from the system pasteboard.
126761847f8eSopenharmony_ci     * @param { AsyncCallback<PasteData> } callback - the callback of getData.
126861847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified;
126961847f8eSopenharmony_ci     *    2. Incorrect  parameters types.
127061847f8eSopenharmony_ci     * @throws { BusinessError } 12900003 - Another copy or paste operation is in progress.
127161847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
127261847f8eSopenharmony_ci     * @since 9
127361847f8eSopenharmony_ci     */
127461847f8eSopenharmony_ci    /**
127561847f8eSopenharmony_ci     * Gets pastedata from the system pasteboard.
127661847f8eSopenharmony_ci     * @param { AsyncCallback<PasteData> } callback - the callback of getData.
127761847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified;
127861847f8eSopenharmony_ci     *    2. Incorrect  parameters types.
127961847f8eSopenharmony_ci     * @throws { BusinessError } 12900003 - Another copy or paste operation is in progress.
128061847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
128161847f8eSopenharmony_ci     * @atomicservice
128261847f8eSopenharmony_ci     * @since 11
128361847f8eSopenharmony_ci     */
128461847f8eSopenharmony_ci    /**
128561847f8eSopenharmony_ci     * Gets pastedata from the system pasteboard.
128661847f8eSopenharmony_ci     * @permission ohos.permission.READ_PASTEBOARD
128761847f8eSopenharmony_ci     * @param { AsyncCallback<PasteData> } callback - the callback of getData.
128861847f8eSopenharmony_ci     * @throws { BusinessError } 201 - Permission verification failed. The application does not have the
128961847f8eSopenharmony_ci     *    permission required to call the API.
129061847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified;
129161847f8eSopenharmony_ci     *    2. Incorrect  parameters types.
129261847f8eSopenharmony_ci     * @throws { BusinessError } 12900003 - Another copy or paste operation is in progress.
129361847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
129461847f8eSopenharmony_ci     * @atomicservice
129561847f8eSopenharmony_ci     * @since 12
129661847f8eSopenharmony_ci     */
129761847f8eSopenharmony_ci    getData(callback: AsyncCallback<PasteData>): void;
129861847f8eSopenharmony_ci
129961847f8eSopenharmony_ci    /**
130061847f8eSopenharmony_ci     * Gets pastedata from the system pasteboard.
130161847f8eSopenharmony_ci     * @returns { Promise<PasteData> } the promise returned by the getData.
130261847f8eSopenharmony_ci     * @throws { BusinessError } 12900003 - Another copy or paste operation is in progress.
130361847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
130461847f8eSopenharmony_ci     * @since 9
130561847f8eSopenharmony_ci     */
130661847f8eSopenharmony_ci    /**
130761847f8eSopenharmony_ci     * Gets pastedata from the system pasteboard.
130861847f8eSopenharmony_ci     * @returns { Promise<PasteData> } the promise returned by the getData.
130961847f8eSopenharmony_ci     * @throws { BusinessError } 12900003 - Another copy or paste operation is in progress.
131061847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
131161847f8eSopenharmony_ci     * @atomicservice
131261847f8eSopenharmony_ci     * @since 11
131361847f8eSopenharmony_ci     */
131461847f8eSopenharmony_ci    /**
131561847f8eSopenharmony_ci     * Gets pastedata from the system pasteboard.
131661847f8eSopenharmony_ci     * @permission ohos.permission.READ_PASTEBOARD
131761847f8eSopenharmony_ci     * @returns { Promise<PasteData> } the promise returned by the getData.
131861847f8eSopenharmony_ci     * @throws { BusinessError } 201 - Permission verification failed. The application does not have the
131961847f8eSopenharmony_ci     *    permission required to call the API.
132061847f8eSopenharmony_ci     * @throws { BusinessError } 12900003 - Another copy or paste operation is in progress.
132161847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
132261847f8eSopenharmony_ci     * @atomicservice
132361847f8eSopenharmony_ci     * @since 12
132461847f8eSopenharmony_ci     */
132561847f8eSopenharmony_ci    getData(): Promise<PasteData>;
132661847f8eSopenharmony_ci
132761847f8eSopenharmony_ci    /**
132861847f8eSopenharmony_ci     * Gets pasteData from the system pasteboard.
132961847f8eSopenharmony_ci     * @returns { PasteData }  a new PasteData.
133061847f8eSopenharmony_ci     * @throws { BusinessError } 12900005 - Request timed out.
133161847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
133261847f8eSopenharmony_ci     * @atomicservice
133361847f8eSopenharmony_ci     * @since 11
133461847f8eSopenharmony_ci     */
133561847f8eSopenharmony_ci    /**
133661847f8eSopenharmony_ci     * Gets pasteData from the system pasteboard.
133761847f8eSopenharmony_ci     * @permission ohos.permission.READ_PASTEBOARD
133861847f8eSopenharmony_ci     * @returns { PasteData }  a new PasteData.
133961847f8eSopenharmony_ci     * @throws { BusinessError } 201 - Permission verification failed. The application does not have the
134061847f8eSopenharmony_ci     *    permission required to call the API.
134161847f8eSopenharmony_ci     * @throws { BusinessError } 12900005 - Request timed out.
134261847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
134361847f8eSopenharmony_ci     * @atomicservice
134461847f8eSopenharmony_ci     * @since 12
134561847f8eSopenharmony_ci     */
134661847f8eSopenharmony_ci    getDataSync(): PasteData;
134761847f8eSopenharmony_ci
134861847f8eSopenharmony_ci    /**
134961847f8eSopenharmony_ci     * Checks whether there is content in the pasteboard.
135061847f8eSopenharmony_ci     * @param { AsyncCallback<boolean> } callback - the callback of setPasteData.
135161847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified;
135261847f8eSopenharmony_ci     *    2. Incorrect  parameters types.
135361847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
135461847f8eSopenharmony_ci     * @since 7
135561847f8eSopenharmony_ci     * @deprecated since 9
135661847f8eSopenharmony_ci     * @useinstead ohos.pasteboard.pasteboard#hasData
135761847f8eSopenharmony_ci     */
135861847f8eSopenharmony_ci    hasPasteData(callback: AsyncCallback<boolean>): void;
135961847f8eSopenharmony_ci
136061847f8eSopenharmony_ci    /**
136161847f8eSopenharmony_ci     * Checks whether there is content in the pasteboard.
136261847f8eSopenharmony_ci     * @returns { Promise<boolean> } the promise returned by the function.
136361847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
136461847f8eSopenharmony_ci     * @since 7
136561847f8eSopenharmony_ci     * @deprecated since 9
136661847f8eSopenharmony_ci     * @useinstead ohos.pasteboard.pasteboard#hasData
136761847f8eSopenharmony_ci     */
136861847f8eSopenharmony_ci    hasPasteData(): Promise<boolean>;
136961847f8eSopenharmony_ci
137061847f8eSopenharmony_ci    /**
137161847f8eSopenharmony_ci     * Checks whether there is content in the system pasteboard.
137261847f8eSopenharmony_ci     * @param { AsyncCallback<boolean> } callback - the callback of hasData.
137361847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified;
137461847f8eSopenharmony_ci     *    2. Incorrect  parameters types.
137561847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
137661847f8eSopenharmony_ci     * @since 9
137761847f8eSopenharmony_ci     */
137861847f8eSopenharmony_ci    /**
137961847f8eSopenharmony_ci     * Checks whether there is content in the system pasteboard.
138061847f8eSopenharmony_ci     * @param { AsyncCallback<boolean> } callback - the callback of hasData.
138161847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified;
138261847f8eSopenharmony_ci     *    2. Incorrect  parameters types.
138361847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
138461847f8eSopenharmony_ci     * @atomicservice
138561847f8eSopenharmony_ci     * @since 11
138661847f8eSopenharmony_ci     */
138761847f8eSopenharmony_ci    hasData(callback: AsyncCallback<boolean>): void;
138861847f8eSopenharmony_ci
138961847f8eSopenharmony_ci    /**
139061847f8eSopenharmony_ci     * Checks whether there is content in the system pasteboard.
139161847f8eSopenharmony_ci     * @returns { Promise<boolean> } the promise returned by the function.
139261847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
139361847f8eSopenharmony_ci     * @since 9
139461847f8eSopenharmony_ci     */
139561847f8eSopenharmony_ci    /**
139661847f8eSopenharmony_ci     * Checks whether there is content in the system pasteboard.
139761847f8eSopenharmony_ci     * @returns { Promise<boolean> } the promise returned by the function.
139861847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
139961847f8eSopenharmony_ci     * @atomicservice
140061847f8eSopenharmony_ci     * @since 11
140161847f8eSopenharmony_ci     */
140261847f8eSopenharmony_ci    hasData(): Promise<boolean>;
140361847f8eSopenharmony_ci
140461847f8eSopenharmony_ci    /**
140561847f8eSopenharmony_ci     * Checks whether there is content in the system pasteboard.
140661847f8eSopenharmony_ci     * @returns { boolean } True exists, false does not exist.
140761847f8eSopenharmony_ci     * @throws { BusinessError } 12900005 - Request timed out.
140861847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
140961847f8eSopenharmony_ci     * @atomicservice
141061847f8eSopenharmony_ci     * @since 11
141161847f8eSopenharmony_ci     */
141261847f8eSopenharmony_ci    hasDataSync(): boolean;
141361847f8eSopenharmony_ci
141461847f8eSopenharmony_ci    /**
141561847f8eSopenharmony_ci     * Writes PasteData to the pasteboard.
141661847f8eSopenharmony_ci     * @param { PasteData } data - PasteData will be written to the clipboard
141761847f8eSopenharmony_ci     * @param { AsyncCallback<void> } callback - the callback of setPasteData.
141861847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Possible causes: 1.  Mandatory parameters are left unspecified;
141961847f8eSopenharmony_ci     *    2. Incorrect  parameters types.
142061847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
142161847f8eSopenharmony_ci     * @since 6
142261847f8eSopenharmony_ci     * @deprecated since 9
142361847f8eSopenharmony_ci     * @useinstead ohos.pasteboard.pasteboard#setData
142461847f8eSopenharmony_ci     */
142561847f8eSopenharmony_ci    setPasteData(data: PasteData, callback: AsyncCallback<void>): void;
142661847f8eSopenharmony_ci
142761847f8eSopenharmony_ci    /**
142861847f8eSopenharmony_ci     * Writes PasteData to the pasteboard.
142961847f8eSopenharmony_ci     * @param { PasteData } data - Containing the contents of the clipboard content object.
143061847f8eSopenharmony_ci     * @returns { Promise<void> } the promise returned by the function.
143161847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
143261847f8eSopenharmony_ci     * @since 6
143361847f8eSopenharmony_ci     * @deprecated since 9
143461847f8eSopenharmony_ci     * @useinstead ohos.pasteboard.pasteboard#setData
143561847f8eSopenharmony_ci     */
143661847f8eSopenharmony_ci    setPasteData(data: PasteData): Promise<void>;
143761847f8eSopenharmony_ci
143861847f8eSopenharmony_ci    /**
143961847f8eSopenharmony_ci     * Writes PasteData to the system pasteboard.
144061847f8eSopenharmony_ci     * @param { PasteData } data - PasteData will be written to the clipboard
144161847f8eSopenharmony_ci     * @param { AsyncCallback<void> } callback - the callback of setData.
144261847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified.
144361847f8eSopenharmony_ci     *    2. Incorrect parameters types.
144461847f8eSopenharmony_ci     * @throws { BusinessError } 12900003 - Another copy or paste operation is in progress.
144561847f8eSopenharmony_ci     * @throws { BusinessError } 12900004 - Replication is prohibited.
144661847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
144761847f8eSopenharmony_ci     * @since 9
144861847f8eSopenharmony_ci     */
144961847f8eSopenharmony_ci    /**
145061847f8eSopenharmony_ci     * Writes PasteData to the system pasteboard.
145161847f8eSopenharmony_ci     * @param { PasteData } data - PasteData will be written to the clipboard
145261847f8eSopenharmony_ci     * @param { AsyncCallback<void> } callback - the callback of setData.
145361847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified;
145461847f8eSopenharmony_ci     *    2. Incorrect parameters types.
145561847f8eSopenharmony_ci     * @throws { BusinessError } 12900003 - Another copy or paste operation is in progress.
145661847f8eSopenharmony_ci     * @throws { BusinessError } 12900004 - Replication is prohibited.
145761847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
145861847f8eSopenharmony_ci     * @atomicservice
145961847f8eSopenharmony_ci     * @since 11
146061847f8eSopenharmony_ci     */
146161847f8eSopenharmony_ci    setData(data: PasteData, callback: AsyncCallback<void>): void;
146261847f8eSopenharmony_ci
146361847f8eSopenharmony_ci    /**
146461847f8eSopenharmony_ci     * Writes PasteData to the system pasteboard.
146561847f8eSopenharmony_ci     * @param { PasteData } data - PasteData will be written to the clipboard.
146661847f8eSopenharmony_ci     * @returns { Promise<void> } the promise returned by the function.
146761847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified;
146861847f8eSopenharmony_ci     *    2. Incorrect  parameters types.
146961847f8eSopenharmony_ci     * @throws { BusinessError } 12900003 - Another copy or paste operation is in progress.
147061847f8eSopenharmony_ci     * @throws { BusinessError } 12900004 - Replication is prohibited.
147161847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
147261847f8eSopenharmony_ci     * @since 9
147361847f8eSopenharmony_ci     */
147461847f8eSopenharmony_ci    /**
147561847f8eSopenharmony_ci     * Writes PasteData to the system pasteboard.
147661847f8eSopenharmony_ci     * @param { PasteData } data - PasteData will be written to the clipboard.
147761847f8eSopenharmony_ci     * @returns { Promise<void> } the promise returned by the function.
147861847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified;
147961847f8eSopenharmony_ci     *    2. Incorrect  parameters types.
148061847f8eSopenharmony_ci     * @throws { BusinessError } 12900003 - Another copy or paste operation is in progress.
148161847f8eSopenharmony_ci     * @throws { BusinessError } 12900004 - Replication is prohibited.
148261847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
148361847f8eSopenharmony_ci     * @atomicservice
148461847f8eSopenharmony_ci     * @since 11
148561847f8eSopenharmony_ci     */
148661847f8eSopenharmony_ci    setData(data: PasteData): Promise<void>;
148761847f8eSopenharmony_ci
148861847f8eSopenharmony_ci    /**
148961847f8eSopenharmony_ci     * Writes PasteData to the system pasteboard.
149061847f8eSopenharmony_ci     * @param { PasteData } data - PasteData will be written to the clipboard.
149161847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified;
149261847f8eSopenharmony_ci     *    2. Incorrect parameters types.
149361847f8eSopenharmony_ci     * @throws { BusinessError } 12900005 - Request timed out.
149461847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
149561847f8eSopenharmony_ci     * @atomicservice
149661847f8eSopenharmony_ci     * @since 11
149761847f8eSopenharmony_ci     */
149861847f8eSopenharmony_ci    setDataSync(data: PasteData): void;
149961847f8eSopenharmony_ci
150061847f8eSopenharmony_ci    /**
150161847f8eSopenharmony_ci     * Gets unified data from the system pasteboard.
150261847f8eSopenharmony_ci     * @permission ohos.permission.READ_PASTEBOARD
150361847f8eSopenharmony_ci     * @returns { Promise<unifiedDataChannel.UnifiedData> } the promise returned by the getData.
150461847f8eSopenharmony_ci     * @throws { BusinessError } 201 - Permission verification failed. The application does not have the
150561847f8eSopenharmony_ci     *    permission required to call the API.
150661847f8eSopenharmony_ci     * @throws { BusinessError } 12900003 - Another copy or paste operation is in progress.
150761847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
150861847f8eSopenharmony_ci     * @atomicservice
150961847f8eSopenharmony_ci     * @since 12
151061847f8eSopenharmony_ci     */
151161847f8eSopenharmony_ci    getUnifiedData(): Promise<unifiedDataChannel.UnifiedData>;
151261847f8eSopenharmony_ci
151361847f8eSopenharmony_ci    /**
151461847f8eSopenharmony_ci     * Gets unified data from the system pasteboard.
151561847f8eSopenharmony_ci     * @permission ohos.permission.READ_PASTEBOARD
151661847f8eSopenharmony_ci     * @returns { unifiedDataChannel.UnifiedData }  a new UnifiedData.
151761847f8eSopenharmony_ci     * @throws { BusinessError } 201 - Permission verification failed. The application does not have the
151861847f8eSopenharmony_ci     *    permission required to call the API.
151961847f8eSopenharmony_ci     * @throws { BusinessError } 12900005 - Request timed out.
152061847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
152161847f8eSopenharmony_ci     * @atomicservice
152261847f8eSopenharmony_ci     * @since 12
152361847f8eSopenharmony_ci     */
152461847f8eSopenharmony_ci    getUnifiedDataSync(): unifiedDataChannel.UnifiedData;
152561847f8eSopenharmony_ci
152661847f8eSopenharmony_ci    /**
152761847f8eSopenharmony_ci     * Writes unified data to the system pasteboard.
152861847f8eSopenharmony_ci     * @param { unifiedDataChannel.UnifiedData } data - Unified data will be written to the pasteboard.
152961847f8eSopenharmony_ci     * @returns { Promise<void> } the promise returned by the function.
153061847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified;
153161847f8eSopenharmony_ci     *    2. Incorrect  parameters types.
153261847f8eSopenharmony_ci     * @throws { BusinessError } 12900003 - Another copy or paste operation is in progress.
153361847f8eSopenharmony_ci     * @throws { BusinessError } 12900004 - Replication is prohibited.
153461847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
153561847f8eSopenharmony_ci     * @atomicservice
153661847f8eSopenharmony_ci     * @since 12
153761847f8eSopenharmony_ci     */
153861847f8eSopenharmony_ci    setUnifiedData(data: unifiedDataChannel.UnifiedData): Promise<void>;
153961847f8eSopenharmony_ci
154061847f8eSopenharmony_ci    /**
154161847f8eSopenharmony_ci     * Writes unified data to the system pasteboard.
154261847f8eSopenharmony_ci     * @param { unifiedDataChannel.UnifiedData } data - Unified data will be written to the pasteboard.
154361847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified;
154461847f8eSopenharmony_ci     *    2. Incorrect  parameters types.
154561847f8eSopenharmony_ci     * @throws { BusinessError } 12900005 - Request timed out.
154661847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
154761847f8eSopenharmony_ci     * @atomicservice
154861847f8eSopenharmony_ci     * @since 12
154961847f8eSopenharmony_ci     */
155061847f8eSopenharmony_ci    setUnifiedDataSync(data: unifiedDataChannel.UnifiedData): void;
155161847f8eSopenharmony_ci
155261847f8eSopenharmony_ci    /**
155361847f8eSopenharmony_ci     * Sets a unified ShareOptions for your application, so that the PasteData copied from your application is applicable to this ShareOptions.
155461847f8eSopenharmony_ci     * 
155561847f8eSopenharmony_ci     * @param { ShareOption } shareOptions - Scope that PasteData can be pasted.
155661847f8eSopenharmony_ci     * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API.
155761847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
155861847f8eSopenharmony_ci     *                                                                   2. Incorrect parameter types;
155961847f8eSopenharmony_ci     *                                                                   3. Parameter verification failed.
156061847f8eSopenharmony_ci     * @throws { BusinessError } 12900006 - Settings already exist.
156161847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
156261847f8eSopenharmony_ci     * @systemapi
156361847f8eSopenharmony_ci     * @since 12
156461847f8eSopenharmony_ci     */
156561847f8eSopenharmony_ci    setAppShareOptions(shareOptions: ShareOption): void;
156661847f8eSopenharmony_ci
156761847f8eSopenharmony_ci    /**
156861847f8eSopenharmony_ci     * Removes the unified ShareOptions of your application.
156961847f8eSopenharmony_ci     *
157061847f8eSopenharmony_ci     * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API.
157161847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
157261847f8eSopenharmony_ci     * @systemapi
157361847f8eSopenharmony_ci     * @since 12
157461847f8eSopenharmony_ci     */
157561847f8eSopenharmony_ci    removeAppShareOptions(): void;
157661847f8eSopenharmony_ci
157761847f8eSopenharmony_ci    /**
157861847f8eSopenharmony_ci     * Detects the patterns in the pasteboard.
157961847f8eSopenharmony_ci     * 
158061847f8eSopenharmony_ci     * @param { Array<Pattern> } patterns - Patterns to detect.
158161847f8eSopenharmony_ci     * @returns { Promise<Array<Pattern>> } Promise used to return the patterns detected.
158261847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
158361847f8eSopenharmony_ci     *                                                                   2. Incorrect parameter types;
158461847f8eSopenharmony_ci     *                                                                   3. Parameter verification failed.
158561847f8eSopenharmony_ci     * @syscap SystemCapability.MiscServices.Pasteboard
158661847f8eSopenharmony_ci     * @since 13
158761847f8eSopenharmony_ci     */
158861847f8eSopenharmony_ci    detectPatterns(patterns: Array<Pattern>): Promise<Array<Pattern>>;
158961847f8eSopenharmony_ci  }
159061847f8eSopenharmony_ci}
159161847f8eSopenharmony_ci
159261847f8eSopenharmony_ciexport default pasteboard;