export interface RecoverableFileLockOptions { readonly timeoutMs?: number; readonly retryMs?: number; readonly malformedLockStaleMs?: number; } export interface TextFileStore { read(): Promise; write(content: string): Promise; } export declare class JsonFileTextStore implements TextFileStore { private readonly filePath; constructor(filePath: string); read(): Promise; write(content: string): Promise; withLock(operation: () => Promise): Promise; } export declare function withRecoverableFileLock(lockPath: string, operation: () => Promise, options?: RecoverableFileLockOptions): Promise; declare class JsonFilePluginStorage { private readonly store; constructor(store: TextFileStore); read(): Promise; write(value: unknown): Promise; withLock(operation: () => Promise): Promise; } export declare class JsonFilePluginStorageStore { private readonly root; constructor(root: string); open(pluginId: string, scope: string, projectId?: string): Promise; } export {}; //# sourceMappingURL=plugin-store.d.ts.map