Skip to content

@codesoul-co/hypha-adapters-local / projection-store

模块用法

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

从包入口导入

ts
import {
  SQLiteProjectionStore,
} from '@codesoul-co/hypha-adapters-local';

import type {
  SQLiteProjectionStoreOptions,
} from '@codesoul-co/hypha-adapters-local';

使用要点

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

公共导出

Symbol种类签名说明
SQLiteProjectionStorenew SQLiteProjectionStore<TState = unknown>(options: SQLiteProjectionStoreOptions): SQLiteProjectionStore<TState>SQLite Projection Store 类,共公开 5 个构造函数或成员;精确签名见本条目的声明与成员表。
SQLiteProjectionStoreOptions接口interface SQLiteProjectionStoreOptionsSQLite Projection Store Options 接口,共包含 2 个公开字段或方法。

SQLiteProjectionStore

SQLite Projection Store 类,共公开 5 个构造函数或成员;精确签名见本条目的声明与成员表。

  • 种类: 类
  • 导入: import { SQLiteProjectionStore } from '@codesoul-co/hypha-adapters-local';
  • 源码模块: projection-store

声明

text
export declare class SQLiteProjectionStore<TState = unknown> implements ProjectionStore<TState> {
    constructor(options: SQLiteProjectionStoreOptions);
    get(projectionId: string, key: string): Promise<ProjectionRecord<TState> | null>;
    put(record: ProjectionRecord<TState>, expectedRevision?: number): Promise<void>;
    delete(projectionId: string, key: string): Promise<void>;
    close(): void;
}

公开成员

成员种类签名说明
close方法close(): void公开方法;参数与返回类型以签名列为准。
constructor构造函数<TState = unknown>(options: SQLiteProjectionStoreOptions): SQLiteProjectionStore<TState>创建该类的实例。
delete方法delete(projectionId: string, key: string): Promise<void>公开方法;参数与返回类型以签名列为准。
get方法get(projectionId: string, key: string): Promise<ProjectionRecord<TState> | null>公开方法;参数与返回类型以签名列为准。
put方法put(record: ProjectionRecord<TState>, expectedRevision?: number): Promise<void>公开方法;参数与返回类型以签名列为准。

SQLiteProjectionStoreOptions

SQLite Projection Store Options 接口,共包含 2 个公开字段或方法。

  • 种类: 接口
  • 导入: import type { SQLiteProjectionStoreOptions } from '@codesoul-co/hypha-adapters-local';
  • 源码模块: projection-store

声明

text
export interface SQLiteProjectionStoreOptions {
    filename: string;
    now?: () => string;
}

契约成员

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