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?: FilesystemListOpts): Promise<EntryInfo[]>

List entries in a directory.

Parameters
ParameterTypeDescription
pathstringpath to the directory.
opts?FilesystemListOptsconnection 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 & object): 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?WatchOpts & objectconnection options.
Returns

Promise<WatchHandle>

WatchHandle object for stopping watching directory.

write()

write(path, data, opts)
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

write(files, opts)
write(files: WriteEntry[], opts?: FilesystemRequestOpts): Promise<EntryInfo[]>
Parameters
ParameterType
filesWriteEntry[]
opts?FilesystemRequestOpts
Returns

Promise<EntryInfo[]>

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.


FilesystemListOpts

Options for the sandbox filesystem operations.

Properties

depth?

optional depth: number;

Depth of the directory to list.

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.


FilesystemRequestOpts

Options for the sandbox filesystem operations.

Extended by

  • FilesystemListOpts
  • 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.

Type Aliases

WriteEntry

type WriteEntry: object;

Type declaration

NameType
datastring | ArrayBuffer | Blob | ReadableStream
pathstring