| // Copyright 2014 The Chromium Authors |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| // Use the <code>chrome.documentScan</code> API to discover and retrieve |
| // images from attached paper document scanners. |
| [platforms=("chromeos", "lacros"), |
| implemented_in="chrome/browser/extensions/api/document_scan/document_scan_api.h"] |
| namespace documentScan { |
| dictionary ScanOptions { |
| // The MIME types that are accepted by the caller. |
| DOMString[]? mimeTypes; |
| |
| // The number of scanned images allowed (defaults to 1). |
| long? maxImages; |
| }; |
| |
| dictionary ScanResults { |
| // The data image URLs in a form that can be passed as the "src" value to |
| // an image tag. |
| DOMString[] dataUrls; |
| |
| // The MIME type of <code>dataUrls</code>. |
| DOMString mimeType; |
| }; |
| |
| // Callback from the <code>scan</code> method. |
| // |result| The results from the scan, if successful. |
| // Otherwise will return null and set runtime.lastError. |
| callback ScanCallback = void (ScanResults result); |
| |
| interface Functions { |
| // Performs a document scan. On success, the PNG data will be |
| // sent to the callback. |
| // |options| : Object containing scan parameters. |
| // |callback| : Called with the result and data from the scan. |
| [supportsPromises] static void scan(ScanOptions options, |
| ScanCallback callback); |
| }; |
| }; |