Skip to content

@codesoul-co/hypha-memory / structured-managed-store

模块用法

用于持久化并读取该边界的数据。Structured managed store 模块公开 1 类、1 接口。

从包入口导入

ts
import {
  StructuredManagedMemoryRecordStore,
} from '@codesoul-co/hypha-memory';

import type {
  StructuredManagedMemoryRecordStoreOptions,
} from '@codesoul-co/hypha-memory';

使用要点

  • 1 个类型/接口用于应用代码、Adapter 或测试中的静态契约;请使用 import type,运行时不应依赖它们。
  • 1 个类提供可实例化的运行时实现;构造参数与公开方法在各自条目中完整列出。

公共导出

Symbol种类签名说明
StructuredManagedMemoryRecordStorenew StructuredManagedMemoryRecordStore(options: StructuredManagedMemoryRecordStoreOptions): StructuredManagedMemoryRecordStoreStructured Managed Memory Record Store 类,共公开 11 个构造函数或成员;精确签名见本条目的声明与成员表。
StructuredManagedMemoryRecordStoreOptions接口interface StructuredManagedMemoryRecordStoreOptionsStructured Managed Memory Record Store Options 接口,共包含 5 个公开字段或方法。

StructuredManagedMemoryRecordStore

Structured Managed Memory Record Store 类,共公开 11 个构造函数或成员;精确签名见本条目的声明与成员表。

  • 种类: 类
  • 导入: import { StructuredManagedMemoryRecordStore } from '@codesoul-co/hypha-memory';
  • 源码模块: structured-managed-store

声明

text
export declare class StructuredManagedMemoryRecordStore implements ManagedMemoryRecordStore {
    constructor(options: StructuredManagedMemoryRecordStoreOptions);
    create(record: ManagedMemoryRecord): Promise<ManagedMemoryRecord>;
    get(id: string, scope: ManagedMemoryScope): Promise<ManagedMemoryRecord | null>;
    getVersionByScopeHash(id: string, versionId: string, scopeHash: string): Promise<ManagedMemoryRecord | null>;
    list(request: ManagedMemoryRecordQuery): Promise<ManagedMemoryRecord[]>;
    createVersion(record: ManagedMemoryRecord, expectedRevision: number): Promise<ManagedMemoryRecord>;
    updateStatus(id: string, scope: ManagedMemoryScope, expectedRevision: number, status: MemoryStatus, updatedAt: string): Promise<ManagedMemoryRecord>;
    delete(id: string, scope: ManagedMemoryScope): Promise<void>;
    history(id: string, scope: ManagedMemoryScope): Promise<ManagedMemoryRecord[]>;
    transaction<T>(fn: (store: ManagedMemoryRecordStore) => Promise<T>): Promise<T>;
    health(): Promise<ProviderHealth>;
}

公开成员

成员种类签名说明
constructor构造函数(options: StructuredManagedMemoryRecordStoreOptions): StructuredManagedMemoryRecordStore创建该类的实例。
create方法create(record: ManagedMemoryRecord): Promise<ManagedMemoryRecord>公开方法;参数与返回类型以签名列为准。
createVersion方法createVersion(record: ManagedMemoryRecord, expectedRevision: number): Promise<ManagedMemoryRecord>公开方法;参数与返回类型以签名列为准。
delete方法delete(id: string, scope: ManagedMemoryScope): Promise<void>公开方法;参数与返回类型以签名列为准。
get方法get(id: string, scope: ManagedMemoryScope): Promise<ManagedMemoryRecord | null>公开方法;参数与返回类型以签名列为准。
getVersionByScopeHash方法getVersionByScopeHash(id: string, versionId: string, scopeHash: string): Promise<ManagedMemoryRecord | null>公开方法;参数与返回类型以签名列为准。
health方法health(): Promise<ProviderHealth>公开方法;参数与返回类型以签名列为准。
history方法history(id: string, scope: ManagedMemoryScope): Promise<ManagedMemoryRecord[]>公开方法;参数与返回类型以签名列为准。
list方法list(request: ManagedMemoryRecordQuery): Promise<ManagedMemoryRecord[]>公开方法;参数与返回类型以签名列为准。
transaction方法transaction<T>(fn: (store: ManagedMemoryRecordStore) => Promise<T>): Promise<T>公开方法;参数与返回类型以签名列为准。
updateStatus方法updateStatus(id: string, scope: ManagedMemoryScope, expectedRevision: number, status: MemoryStatus, updatedAt: string): Promise<ManagedMemoryRecord>公开方法;参数与返回类型以签名列为准。

StructuredManagedMemoryRecordStoreOptions

Structured Managed Memory Record Store Options 接口,共包含 5 个公开字段或方法。

  • 种类: 接口
  • 导入: import type { StructuredManagedMemoryRecordStoreOptions } from '@codesoul-co/hypha-memory';
  • 源码模块: structured-managed-store

声明

text
export interface StructuredManagedMemoryRecordStoreOptions {
    provider: StructuredStoreProvider;
    currentTable?: string;
    versionsTable?: string;
    inTransaction?: boolean;
    now?: () => Date;
}

契约成员

成员种类签名说明
currentTable属性currentTable?: string公开属性;类型、只读和可选状态以签名列为准。
inTransaction属性inTransaction?: boolean公开属性;类型、只读和可选状态以签名列为准。
now方法now?(): Date公开方法;参数与返回类型以签名列为准。
provider属性provider: StructuredStoreProvider公开属性;类型、只读和可选状态以签名列为准。
versionsTable属性versionsTable?: string公开属性;类型、只读和可选状态以签名列为准。