Skip to main content
Version: v2

IDirectory Interface

Interface describing actions on a directory.

This API is provided for existing users, but is not recommended for new users.

To use, import via fluid-framework/legacy.

For more information about our API support guarantees, see here.

Sealed

This type is "sealed," meaning that code outside of the library defining it should not implement or extend it. Future versions of this type may add members or make typing of readonly members more specific.

Signature​

/** @sealed */
export interface IDirectory extends Map<string, any>, IEventProvider<IDirectoryEvents>, Partial<IDisposable>

Extends: Map<string, any>, IEventProvider<IDirectoryEvents>, Partial<IDisposable>

Remarks​

When used as a Map, operates on its keys.

Properties​

PropertyModifiersTypeDescription
absolutePathreadonlystringThe absolute path of the directory.

Methods​

MethodModifiersReturn TypeDescription
countSubDirectory()optionalnumberGet the number of sub directory within the directory.
createSubDirectory(subdirName)IDirectoryCreates an IDirectory child of this IDirectory, or retrieves the existing IDirectory child if one with the same name already exists.
deleteSubDirectory(subdirName)booleanDeletes an IDirectory child of this IDirectory, if it exists, along with all descendent keys and directories.
get(key)T | undefinedRetrieves the value stored at the given key from the directory.
getSubDirectory(subdirName)IDirectory | undefinedGets an IDirectory child of this IDirectory, if it exists.
getWorkingDirectory(relativePath)IDirectory | undefinedGet an IDirectory within the directory, in order to use relative paths from that location.
hasSubDirectory(subdirName)booleanChecks whether this directory has a child directory with the given name.
set(key, value)thisSets the value stored at key to the provided value.
subdirectories()IterableIterator<[string, IDirectory]>Gets an iterator over the IDirectory children of this IDirectory.

Property Details​

absolutePath​

The absolute path of the directory.

This API is provided for existing users, but is not recommended for new users.

For more information about our API support guarantees, see here.

Signature​

readonly absolutePath: string;

Type: string

Method Details​

countSubDirectory​

Get the number of sub directory within the directory.

This API is provided for existing users, but is not recommended for new users.

For more information about our API support guarantees, see here.

Signature​

countSubDirectory?(): number;

Returns​

The number of sub directory within a directory.

Return type: number

createSubDirectory​

Creates an IDirectory child of this IDirectory, or retrieves the existing IDirectory child if one with the same name already exists.

This API is provided for existing users, but is not recommended for new users.

For more information about our API support guarantees, see here.

Signature​

createSubDirectory(subdirName: string): IDirectory;

Parameters​

ParameterTypeDescription
subdirNamestringName of the new child directory to create

Returns​

The IDirectory child that was created or retrieved

Return type: IDirectory

deleteSubDirectory​

Deletes an IDirectory child of this IDirectory, if it exists, along with all descendent keys and directories.

This API is provided for existing users, but is not recommended for new users.

For more information about our API support guarantees, see here.

Signature​

deleteSubDirectory(subdirName: string): boolean;

Parameters​

ParameterTypeDescription
subdirNamestringName of the child directory to delete

Returns​

True if the IDirectory existed and was deleted, false if it did not exist

Return type: boolean

get​

Retrieves the value stored at the given key from the directory.

This API is provided for existing users, but is not recommended for new users.

For more information about our API support guarantees, see here.

Signature​

get<T = any>(key: string): T | undefined;
Type Parameters​
ParameterDefaultDescription
Tany

Parameters​

ParameterTypeDescription
keystringKey to retrieve from

Returns​

The stored value, or undefined if the key is not set

Return type: T | undefined

getSubDirectory​

Gets an IDirectory child of this IDirectory, if it exists.

This API is provided for existing users, but is not recommended for new users.

For more information about our API support guarantees, see here.

Signature​

getSubDirectory(subdirName: string): IDirectory | undefined;

Parameters​

ParameterTypeDescription
subdirNamestringName of the child directory to get

Returns​

The requested IDirectory

Return type: IDirectory | undefined

getWorkingDirectory​

Get an IDirectory within the directory, in order to use relative paths from that location.

This API is provided for existing users, but is not recommended for new users.

For more information about our API support guarantees, see here.

Signature​

getWorkingDirectory(relativePath: string): IDirectory | undefined;

Parameters​

ParameterTypeDescription
relativePathstringPath of the IDirectory to get, relative to this IDirectory

Returns​

The requested IDirectory

Return type: IDirectory | undefined

hasSubDirectory​

Checks whether this directory has a child directory with the given name.

This API is provided for existing users, but is not recommended for new users.

For more information about our API support guarantees, see here.

Signature​

hasSubDirectory(subdirName: string): boolean;

Parameters​

ParameterTypeDescription
subdirNamestringName of the child directory to check

Returns​

True if it exists, false otherwise

Return type: boolean

set​

Sets the value stored at key to the provided value.

This API is provided for existing users, but is not recommended for new users.

For more information about our API support guarantees, see here.

Signature​

set<T = unknown>(key: string, value: T): this;
Type Parameters​
ParameterDefaultDescription
Tunknown

Parameters​

ParameterTypeDescription
keystringKey to set at
valueTValue to set

Returns​

The IDirectory itself

Return type: this

subdirectories​

Gets an iterator over the IDirectory children of this IDirectory.

This API is provided for existing users, but is not recommended for new users.

For more information about our API support guarantees, see here.

Signature​

subdirectories(): IterableIterator<[string, IDirectory]>;

Returns​

The IDirectory iterator

Return type: IterableIterator<[string, IDirectory]>