import type { UmbStore } from './store.interface.js'; import type { UmbControllerHost } from '../../../libs/controller-api/index.js'; import type { UmbApi } from '../../../libs/extension-api/index.js'; import type { Observable, UmbArrayState } from '../../../libs/observable-api/index.js'; import { UmbContextBase } from '../../../libs/class-api/index.js'; import type { UmbContextToken } from '../../../libs/context-api/index.js'; export declare class UmbStoreBase extends UmbContextBase implements UmbStore, UmbApi { protected _data: UmbArrayState; constructor(host: UmbControllerHost, storeAlias: UmbContextToken | string, data: UmbArrayState); /** * Append an item to the store * @param {StoreItemType} item - The item to append * @memberof UmbStoreBase */ append(item: StoreItemType): void; /** * Appends multiple items to the store * @param {Array} items - The items to append * @memberof UmbStoreBase */ appendItems(items: Array): void; /** * Updates an item in the store * @param {string} unique - The unique identifier of the item to update * @param {Partial} data - The (partial) data to update the item with * @memberof UmbStoreBase */ updateItem(unique: string, data: Partial): void; /** * Removes an item from the store * @param {string} unique - The unique identifier of the item to remove * @memberof UmbStoreBase */ removeItem(unique: string): void; /** * Removes multiple items in the store with the given uniques * @param {string[]} uniques - The unique identifiers of the items to remove * @memberof UmbStoreBase */ removeItems(uniques: Array): void; /** * Returns an array of items with the given uniques * @param {string[]} uniques - The unique identifiers of the items to return * @returns {Array} The matching items * @memberof UmbStoreBase */ getItems(uniques: Array): Array; /** * Returns an observable of the entire store * @returns {Observable>} An observable of the entire store * @memberof UmbStoreBase */ all(): Observable>; }