import { Plugin } from '../editor/plugin.js';
import Editor from '../editor/editor.js';
export declare abstract class StoragePlugin extends Plugin {
    private key;
    private enabled;
    private debounceDelay;
    private _debouncedSave;
    private editor?;
    constructor(key: string | (() => string), debounceDelay?: number);
    disable(): void;
    enable(): void;
    onInstall(editor: Editor): void;
    load(): void;
    save(): void;
    abstract write(key: string, value: any): Promise<void>;
    abstract read(key: string): Promise<any>;
    getKey(): string;
}
export default StoragePlugin;
