| // Copyright 2023 The Chromium Authors |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| /** |
| * @fileoverview Definitions for chrome.clipboard API |
| * Generated from: extensions/common/api/clipboard.idl |
| * This file exists because MV3 supports promises and MV2 does not. |
| * TODO(b/260590502): Delete this after MV3 migration. |
| * run `tools/json_schema_compiler/compiler.py |
| * extensions/common/api/clipboard.idl -g ts_definitions` to regenerate. |
| */ |
| |
| import {ChromeEvent} from '../../../../../../tools/typescript/definitions/chrome_event.js'; |
| |
| declare global { |
| export namespace chrome { |
| |
| export namespace clipboard { |
| |
| export enum ImageType { |
| PNG = 'png', |
| JPEG = 'jpeg', |
| } |
| |
| export enum DataItemType { |
| TEXT_PLAIN = 'textPlain', |
| TEXT_HTML = 'textHtml', |
| } |
| |
| export interface AdditionalDataItem { |
| type: DataItemType; |
| data: string; |
| } |
| |
| export function setImageData( |
| imageData: ArrayBuffer, type: ImageType, |
| additionalItems: AdditionalDataItem[]|undefined, |
| callback: () => void): void; |
| |
| export const onClipboardDataChanged: ChromeEvent<() => void>; |
| |
| } |
| } |
| } |