import type { MaybePromise, Event } from '@difizen/mana-common';
import { Emitter } from '@difizen/mana-common';
import type { DebugService } from './debug';
import type { StorageService } from './storage-protocol';
export declare class LocalStorageService implements StorageService {
    usePathInPrefix: boolean;
    private storage;
    protected logger: DebugService;
    protected onDiskQuotaExceededEmitter: Emitter<void>;
    get onDiskQuotaExceeded(): Event<void>;
    constructor();
    setData<T>(key: string, data?: T): MaybePromise<void>;
    getData<T>(key: string, defaultValue?: T): MaybePromise<T>;
    protected prefix(key: string): string;
    /**
     * Verify if there is still some spaces left to save another workspace configuration into the local storage of your browser.
     * If we are close to the limit, use a dialog to notify the user.
     */
    private testLocalStorage;
    clearStorage(): void;
}
export declare const localStorageService: LocalStorageService;
//# sourceMappingURL=storage-service.d.ts.map