interface FileSystemWritableFileStream extends WritableStream { write(data: BufferSource | Blob | string): Promise; seek(position: number): Promise; truncate(size: number): Promise; } interface FileSystemFileHandle { kind: "file"; name: string; getFile(): Promise; createWritable(options?: { keepExistingData?: boolean; }): Promise; } interface FileSystemDirectoryHandle { kind: "directory"; name: string; getDirectoryHandle( name: string, options?: { create?: boolean }, ): Promise; getFileHandle( name: string, options?: { create?: boolean }, ): Promise; } interface SaveFilePickerOptions { suggestedName?: string; types?: Array<{ description?: string; accept: Record; }>; excludeAcceptAllOption?: boolean; } interface Window { showDirectoryPicker(): Promise; showSaveFilePicker( options?: SaveFilePickerOptions, ): Promise; }