import Crypt from "../services/Crypt";
import Persister from "../services/Persister";
import Store from "./Store";
import type { Store as PiniaStore, StateTree } from "pinia";
export default class StorePersister extends Store {
    protected _crypt?: Crypt;
    protected _persister?: Persister;
    private _statePropertiesNotToPersist;
    constructor(store: PiniaStore, persister: Persister, watchedStore: string[], crypt?: Crypt);
    augmentStore(): void;
    cryptState(state: StateTree, decrypt?: boolean): StateTree;
    getPersistedState(): Promise<StateTree | undefined>;
    getStatePropertyToNotPersist(): string[];
    hasPersistProperty(): boolean;
    persist(): Promise<void>;
    populateState(state: StateTree, persistedState?: StateTree): StateTree;
    propertyShouldBePersisted(property: string): boolean;
    private remember;
    shouldBePersisted(): boolean;
    private stateIsEmpty;
    private stopWatch;
    private storeSubscription;
    toBeCrypted(): boolean;
    toBeWatched(): boolean;
}
