import { Client, WlDataDeviceManagerDndAction } from 'westfield-runtime-server'; import DataOffer from './DataOffer'; import { GWebFD } from './WebFS'; export interface DataSource { readonly client: Client; mimeTypes: string[]; setSelection: boolean; dataOffer?: DataOffer; accepted: boolean; dndActions: number; currentDndAction: WlDataDeviceManagerDndAction; compositorAction: WlDataDeviceManagerDndAction; readonly version: 3 | number; accept(mimeType: string | undefined): void; send(mimeType: string, gWebFD: GWebFD): void; cancel(force?: boolean): void; action(action: WlDataDeviceManagerDndAction): void; dndDropPerformed(): void; notifyFinish(): void; addDestroyListener(destroyListener: () => void): void; removeDestroyListener(destroyListener: () => void): void; destroyDataSource(): void; onDestroy(): Promise; }