Plugins

Covers Engine Plugin SDK 2.0.0 · Interface Plugin SDK 0.2.0

StorageClient

Scoped file access and layered workspace/project settings.

Import

import type { StorageClient } from "@dartwic/interface-sdk/storage";

Declaration

export interface StorageClient {
    readText(ref: FileReference): Promise<string>;
    writeText(ref: FileReference, content: string): Promise<FileReference>;
    readJson(ref: FileReference): Promise<any>;
    writeJson(ref: FileReference, value: any): Promise<FileReference>;
    readEffectiveSettings(defaults?: Record<string, any>, project?: string): Promise<SettingsSnapshot>;
    writeSettingsOverride(scope: 'workspace' | 'project', patch: Record<string, any>, options?: {reset?: string[]; project?: string; revision?: string}): Promise<SettingsSnapshot>;
    resetSettingsOverride(scope: 'workspace' | 'project', reset: string[], options?: {project?: string; revision?: string}): Promise<SettingsSnapshot>;
}

Members

NameTypeRequirementDescription
readTextPromise<string>Required
writeTextPromise<FileReference>Required
readJsonPromise<any>Required
writeJsonPromise<FileReference>Required
readEffectiveSettingsPromise<SettingsSnapshot>Required
writeSettingsOverridePromise<SettingsSnapshot>Required
resetSettingsOverridePromise<SettingsSnapshot>Required