epps
Version:
Enhances Pinia stores with advanced features such as persistence, encryption, and store extension. Simplifies state management and ensures data security for Vue.js and Nuxt applications.
29 lines (28 loc) • 930 B
TypeScript
import { EppsStoreOptions } from "../types/store";
import Store from "./Store";
import type { Store as PiniaStore } from "pinia";
export default class StoreExtension extends Store {
private _extendedActions;
constructor(store: PiniaStore, options: EppsStoreOptions, debug?: boolean);
get extendedActions(): string[];
get propertiesToRename(): Record<string, string> | undefined;
private addToCustomProperties;
private createComputed;
/**
* Duplicates storeToExtend to extendedStore
* @param {AnyObject} storeToExtend
*/
private duplicateStore;
/**
* Extends storeToExtend's action to extendedStore
* @param {AnyObject} storeToExtend
* @param {string} key
*/
private extendsAction;
private extendsState;
/**
* Extends to store stores list in parentsStores property
*/
private extendsStore;
private getPropertyNameForChildState;
}