import { ReactiveController, ReactiveControllerHost } from 'lit';
import { PersistProp, PersistStorageCache } from '../utils/persist-properties';
import { WeavyComponentContextProps } from '../classes/weavy-component';
export declare class PersistStateController<T extends ReactiveControllerHost & WeavyComponentContextProps> implements ReactiveController {
    #private;
    host: T;
    properties: Array<PersistProp<T>>;
    initialProperties: Map<keyof T, unknown>;
    persistStorageCache: PersistStorageCache;
    get prefixKey(): string;
    set prefixKey(prefixKey: string);
    get cachePrefix(): string | undefined;
    set cachePrefix(cachePrefix: string | undefined);
    constructor(host: T);
    observe(properties: Array<PersistProp<T>>, prefixKey?: string, cachePrefix?: string): void;
    hostUpdate(): void;
}
//# sourceMappingURL=persist-state-controller.d.ts.map