Skip to main content

FileType

Sandbox filesystem object type.

Enumeration Members

Enumeration MemberValueDescription
DIR"dir"Filesystem object is a directory.
FILE"file"Filesystem object is a file.

Classes

Filesystem

Module for interacting with the sandbox filesystem.

Constructors

new Filesystem(
   transport: Transport, 
   envdApi: EnvdApiClient, 
   connectionConfig: ConnectionConfig): Filesystem
Parameters
ParameterType
transportTransport
envdApiEnvdApiClient
connectionConfigConnectionConfig
Returns
Filesystem

Methods

exists()

exists(path: string, opts?: FilesystemRequestOpts): Promise<boolean>
Check if a file or a directory exists.
Parameters
ParameterTypeDescription
pathstringpath to a file or a directory
opts?FilesystemRequestOptsconnection options.
Returns
Promise<boolean> true if the file or directory exists, false otherwise

list()

list(path: string, opts?: FilesystemRequestOpts): Promise<EntryInfo[]>
List entries in a directory.
Parameters
ParameterTypeDescription
pathstringpath to the directory.
opts?FilesystemRequestOptsconnection options.
Returns
Promise<EntryInfo[]> list of entries in the sandbox filesystem directory.

makeDir()

makeDir(path: string, opts?: FilesystemRequestOpts): Promise<boolean>
Create a new directory and all directories along the way if needed on the specified path.
Parameters
ParameterTypeDescription
pathstringpath to a new directory. For example ‘/dirA/dirB’ when creating ‘dirB’.
opts?FilesystemRequestOptsconnection options.
Returns
Promise<boolean> true if the directory was created, false if it already exists.

read()

read(path, opts)
read(path: string, opts?: FilesystemRequestOpts & object): Promise<string>
Read file content as a string. You can pass text, bytes, blob, or stream to opts.format to change the return type.
Parameters
ParameterTypeDescription
pathstringpath to the file.
opts?FilesystemRequestOpts & objectconnection options.
Returns
Promise<string> file content as string
read(path, opts)
read(path: string, opts?: FilesystemRequestOpts & object): Promise<Uint8Array>
Read file content as a Uint8Array. You can pass text, bytes, blob, or stream to opts.format to change the return type.
Parameters
ParameterTypeDescription
pathstringpath to the file.
opts?FilesystemRequestOpts & objectconnection options.
Returns
Promise<Uint8Array> file content as Uint8Array
read(path, opts)
read(path: string, opts?: FilesystemRequestOpts & object): Promise<Blob>
Read file content as a Blob. You can pass text, bytes, blob, or stream to opts.format to change the return type.
Parameters
ParameterTypeDescription
pathstringpath to the file.
opts?FilesystemRequestOpts & objectconnection options.
Returns
Promise<Blob> file content as Blob
read(path, opts)
read(path: string, opts?: FilesystemRequestOpts & object): Promise<ReadableStream<Uint8Array>>
Read file content as a ReadableStream. You can pass text, bytes, blob, or stream to opts.format to change the return type.
Parameters
ParameterTypeDescription
pathstringpath to the file.
opts?FilesystemRequestOpts & objectconnection options.
Returns
Promise<ReadableStream<Uint8Array>> file content as ReadableStream

remove()

remove(path: string, opts?: FilesystemRequestOpts): Promise<void>
Remove a file or directory.
Parameters
ParameterTypeDescription
pathstringpath to a file or directory.
opts?FilesystemRequestOptsconnection options.
Returns
Promise<void>

rename()

rename(
   oldPath: string, 
   newPath: string, 
opts?: FilesystemRequestOpts): Promise<EntryInfo>
Rename a file or directory.
Parameters
ParameterTypeDescription
oldPathstringpath to the file or directory to rename.
newPathstringnew path for the file or directory.
opts?FilesystemRequestOptsconnection options.
Returns
Promise<EntryInfo> information about renamed file or directory.

watchDir()

watchDir(
   path: string, 
   onEvent: (event: FilesystemEvent) => void | Promise<void>, 
opts?: WatchOpts): Promise<WatchHandle>
Start watching a directory for filesystem events.
Parameters
ParameterTypeDescription
pathstringpath to directory to watch.
onEvent(event: FilesystemEvent) => void | Promise<void>callback to call when an event in the directory occurs.
opts?WatchOptsconnection options.
Returns
Promise<WatchHandle> WatchHandle object for stopping watching directory.

write()

write(
   path: string, 
   data: string | ArrayBuffer | Blob | ReadableStream<any>, 
opts?: FilesystemRequestOpts): Promise<EntryInfo>
Write content to a file. Writing to a file that doesn’t exist creates the file. Writing to a file that already exists overwrites the file. Writing to a file at path that doesn’t exist creates the necessary directories.
Parameters
ParameterTypeDescription
pathstringpath to file.
datastring | ArrayBuffer | Blob | ReadableStream<any>data to write to the file. Data can be a string, ArrayBuffer, Blob, or ReadableStream.
opts?FilesystemRequestOptsconnection options.
Returns
Promise<EntryInfo> information about the written file

Interfaces

EntryInfo

Sandbox filesystem object information.

Properties

name

name: string;
Name of the filesystem object.

path

path: string;
Path to the filesystem object.

type?

optional type: FileType;
Type of the filesystem object.

FilesystemRequestOpts

Options for the sandbox filesystem operations.

Extended by

  • WatchOpts

Properties

requestTimeoutMs?

optional requestTimeoutMs: number;
Timeout for requests to the API in milliseconds.
Default
30_000 // 30 seconds

user?

optional user: Username;
User to use for the operation in the sandbox. This affects the resolution of relative paths and ownership of the created filesystem objects.

WatchOpts

Options for watching a directory.

Properties

onExit()?

optional onExit: (err?: Error) => void | Promise<void>;
Callback to call when the watch operation stops.
Parameters
ParameterType
err?Error
Returns
void | Promise<void>

recursive?

optional recursive: boolean;
Watch the directory recursively

requestTimeoutMs?

optional requestTimeoutMs: number;
Timeout for requests to the API in milliseconds.
Default
30_000 // 30 seconds

timeoutMs?

optional timeoutMs: number;
Timeout for the watch operation in milliseconds. You can pass 0 to disable the timeout.
Default
60_000 // 60 seconds

user?

optional user: Username;
User to use for the operation in the sandbox. This affects the resolution of relative paths and ownership of the created filesystem objects.
I