sussudio
Version:
An unofficial VS Code Internal API
38 lines (37 loc) • 1.65 kB
text/typescript
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import { URI } from "./uri.mjs";
interface IDataTransferFile {
readonly name: string;
readonly uri?: URI;
data(): Promise<Uint8Array>;
}
export interface IDataTransferItem {
readonly id: string;
asString(): Thenable<string>;
asFile(): IDataTransferFile | undefined;
value: any;
}
export declare function createStringDataTransferItem(stringOrPromise: string | Promise<string>): IDataTransferItem;
export declare function createFileDataTransferItem(fileName: string, uri: URI | undefined, data: () => Promise<Uint8Array>): IDataTransferItem;
export declare class VSDataTransfer {
private readonly _entries;
get size(): number;
has(mimeType: string): boolean;
get(mimeType: string): IDataTransferItem | undefined;
append(mimeType: string, value: IDataTransferItem): void;
replace(mimeType: string, value: IDataTransferItem): void;
delete(mimeType: string): void;
entries(): Iterable<[string, IDataTransferItem]>;
values(): Iterable<IDataTransferItem>;
forEach(f: (value: IDataTransferItem, key: string) => void): void;
private toKey;
}
export declare const UriList: Readonly<{
create: (entries: ReadonlyArray<string | URI>) => string;
split: (str: string) => string[];
parse: (str: string) => string[];
}>;
export {};