import type { AsyncMapLike } from 'async-map-like'; import { StorageBackend, StorageBackendOptions } from './storage/mod.js'; import type { MemoryCardPayload } from './types.js'; export declare const NAMESPACE_MULTIPLEX_SEPRATOR = "\r"; export declare const NAMESPACE_KEY_SEPRATOR = "\n"; export interface MemoryCardOptions { name?: string; storageOptions?: StorageBackendOptions; multiplex?: { parent: MemoryCard; name: string; }; } export interface MemoryCardJsonObject { payload: MemoryCardPayload; options: MemoryCardOptions; } export declare class MemoryCard implements AsyncMapLike { /** * * * Static * * */ static VERSION: string; static fromJSON(textOrObj: string | MemoryCardJsonObject): AsyncMapLike; protected static multiplex(this: T, memory: MemoryCard, name: string): T['prototype']; /** * * * Instance * * */ name?: string; protected parent?: MemoryCard; protected payload?: MemoryCardPayload; protected storage?: StorageBackend; protected multiplexNameList: string[]; private options?; constructor(options?: string | MemoryCardOptions); toString(): string; version(): string; private getStorage; load(): Promise; save(): Promise; /** * * Multiplexing related functions START * */ protected isMultiplexKey(key: string): boolean; protected multiplexNamespace(): string; protected resolveKey(name: string): string; isMultiplex(): boolean; protected multiplexPath(): string; multiplex(name: string): this; /** * * Multiplexing related functions END * */ destroy(): Promise; /** * * ES6 Map API (Async Version) * * BEGIN * */ /** * size */ get size(): Promise; get(name: string): Promise; set(name: string, data: T): Promise; [Symbol.asyncIterator](): AsyncIterableIterator<[string, T]>; entries(): AsyncIterableIterator<[string, T]>; clear(): Promise; delete(name: string): Promise; has(key: string): Promise; keys(): AsyncIterableIterator; values(): AsyncIterableIterator; forEach(callbackfn: (value: T, key: string, map: any) => void, thisArg?: any): Promise; /** * Huan(202108): FIXME * I totally forget what are the following two methods are... */ [Symbol.iterator](): AsyncIterableIterator<[string, number]>; get [Symbol.toStringTag](): Promise; } export default MemoryCard; //# sourceMappingURL=memory-card.d.ts.map