feature: directly write to fs
parent
759c1bd87e
commit
21d5ae305c
@ -0,0 +1,51 @@
|
||||
export interface FileSystemGetFileOptions {
|
||||
create?: boolean
|
||||
}
|
||||
|
||||
interface FileSystemCreateWritableOptions {
|
||||
keepExistingData?: boolean
|
||||
}
|
||||
|
||||
interface FileSystemFileHandle {
|
||||
getFile(): Promise<File>;
|
||||
|
||||
createWritable(options?: FileSystemCreateWritableOptions): Promise<FileSystemWritableFileStream>
|
||||
}
|
||||
|
||||
enum WriteCommandType {
|
||||
write = "write",
|
||||
seek = "seek",
|
||||
truncate = "truncate",
|
||||
}
|
||||
|
||||
interface WriteParams {
|
||||
type: WriteCommandType
|
||||
size?: number
|
||||
position?: number
|
||||
data: BufferSource | Blob | string
|
||||
}
|
||||
|
||||
type FileSystemWriteChunkType = BufferSource | Blob | string | WriteParams
|
||||
|
||||
interface FileSystemWritableFileStream extends WritableStream {
|
||||
write(data: FileSystemWriteChunkType): Promise<undefined>
|
||||
|
||||
seek(position: number): Promise<undefined>
|
||||
|
||||
truncate(size: number): Promise<undefined>
|
||||
|
||||
close(): Promise<undefined> // should be implemented in WritableStream
|
||||
}
|
||||
|
||||
export declare interface FileSystemDirectoryHandle {
|
||||
getFileHandle(name: string, options?: FileSystemGetFileOptions): Promise<FileSystemFileHandle>
|
||||
}
|
||||
|
||||
declare global {
|
||||
interface Window {
|
||||
FileSystemDirectoryHandle
|
||||
|
||||
showDirectoryPicker?(): Promise<FileSystemDirectoryHandle>
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue