Skip to content

@codesoul-co/hypha-memory / memory-projection-invalidation

Using this module

Use the Memory projection invalidation module for using the public contracts and operations for this capability boundary. It exports 3 classes, 5 interfaces, 1 type.

Import from the package entrypoint

ts
import {
  InMemoryMemoryMutationGenerationStore,
  MemoryProjectionInvalidationCoordinator,
  MemorySearchCacheInvalidationTarget,
} from '@codesoul-co/hypha-memory';

import type {
  MemoryMutationGenerationStore,
  MemoryProjectionInvalidationPort,
  MemoryProjectionInvalidationReceipt,
  MemoryProjectionInvalidationRequest,
  MemoryProjectionInvalidationTarget,
  MemoryProjectionInvalidationReason,
} from '@codesoul-co/hypha-memory';

Usage patterns

  • Use the 6 type/interface exports as static contracts in application code, adapters, or tests. Import them with import type; they do not exist at runtime.
  • The module exposes 3 classes as constructable runtime implementations. Each symbol entry lists its constructor and public methods.

Public exports

SymbolKindSignatureDescription
InMemoryMemoryMutationGenerationStoreclassnew InMemoryMemoryMutationGenerationStore(): InMemoryMemoryMutationGenerationStoreIn Memory Memory Mutation Generation Store class with 3 public constructor or member entries; its exact declarations are listed below.
MemoryProjectionInvalidationCoordinatorclassnew MemoryProjectionInvalidationCoordinator(generations: MemoryMutationGenerationStore, targets: readonly MemoryProjectionInvalidationTarget[]): MemoryProjectionInvalidationCoordinatorMemory Projection Invalidation Coordinator class with 2 public constructor or member entries; its exact declarations are listed below.
MemorySearchCacheInvalidationTargetclassnew MemorySearchCacheInvalidationTarget(store: MemorySearchCacheStore, id?: string): MemorySearchCacheInvalidationTargetMemory Search Cache Invalidation Target class with 3 public constructor or member entries; its exact declarations are listed below.
MemoryMutationGenerationStoreinterfaceinterface MemoryMutationGenerationStoreMemory Mutation Generation Store interface with 2 public fields or methods.
MemoryProjectionInvalidationPortinterfaceinterface MemoryProjectionInvalidationPortMemory Projection Invalidation Port interface with 1 public fields or methods.
MemoryProjectionInvalidationReceiptinterfaceinterface MemoryProjectionInvalidationReceiptMemory Projection Invalidation Receipt interface with 5 public fields or methods.
MemoryProjectionInvalidationRequestinterfaceinterface MemoryProjectionInvalidationRequestMemory Projection Invalidation Request interface with 5 public fields or methods.
MemoryProjectionInvalidationTargetinterfaceinterface MemoryProjectionInvalidationTargetMemory Projection Invalidation Target interface with 2 public fields or methods.
MemoryProjectionInvalidationReasontypetype MemoryProjectionInvalidationReason = 'updated' | 'deleted'Public type alias for Memory Projection Invalidation Reason; the declaration contains its complete type expression.

InMemoryMemoryMutationGenerationStore

In Memory Memory Mutation Generation Store class with 3 public constructor or member entries; its exact declarations are listed below.

Declaration

text
export declare class InMemoryMemoryMutationGenerationStore implements MemoryMutationGenerationStore {
    current(scopeHash: string): Promise<string>;
    advance(scopeHash: string, operationId: string): Promise<string>;
}

Public members

MemberKindSignatureDescription
advancemethodadvance(scopeHash: string, operationId: string): Promise<string>Public method; parameters and return type are shown in the signature.
constructorconstructor(): InMemoryMemoryMutationGenerationStoreCreates an instance of this class.
currentmethodcurrent(scopeHash: string): Promise<string>Public method; parameters and return type are shown in the signature.

MemoryProjectionInvalidationCoordinator

Memory Projection Invalidation Coordinator class with 2 public constructor or member entries; its exact declarations are listed below.

Declaration

text
export declare class MemoryProjectionInvalidationCoordinator implements MemoryProjectionInvalidationPort {
    constructor(generations: MemoryMutationGenerationStore, targets: readonly MemoryProjectionInvalidationTarget[]);
    invalidate(request: MemoryProjectionInvalidationRequest): Promise<MemoryProjectionInvalidationReceipt>;
}

Public members

MemberKindSignatureDescription
constructorconstructor(generations: MemoryMutationGenerationStore, targets: readonly MemoryProjectionInvalidationTarget[]): MemoryProjectionInvalidationCoordinatorCreates an instance of this class.
invalidatemethodinvalidate(request: MemoryProjectionInvalidationRequest): Promise<MemoryProjectionInvalidationReceipt>Public method; parameters and return type are shown in the signature.

MemorySearchCacheInvalidationTarget

Memory Search Cache Invalidation Target class with 3 public constructor or member entries; its exact declarations are listed below.

Declaration

text
export declare class MemorySearchCacheInvalidationTarget implements MemoryProjectionInvalidationTarget {
    readonly id: string;
    constructor(store: MemorySearchCacheStore, id?: string);
    invalidateScope(scopeHash: string): Promise<number>;
}

Public members

MemberKindSignatureDescription
constructorconstructor(store: MemorySearchCacheStore, id?: string): MemorySearchCacheInvalidationTargetCreates an instance of this class.
idpropertyreadonly id: stringPublic property; its type, readonly modifier and optionality are shown in the signature.
invalidateScopemethodinvalidateScope(scopeHash: string): Promise<number>Public method; parameters and return type are shown in the signature.

MemoryMutationGenerationStore

Memory Mutation Generation Store interface with 2 public fields or methods.

Declaration

text
export interface MemoryMutationGenerationStore {
    current(scopeHash: string): Promise<string>;
    advance(scopeHash: string, operationId: string): Promise<string>;
}

Contract members

MemberKindSignatureDescription
advancemethodadvance(scopeHash: string, operationId: string): Promise<string>Public method; parameters and return type are shown in the signature.
currentmethodcurrent(scopeHash: string): Promise<string>Public method; parameters and return type are shown in the signature.

MemoryProjectionInvalidationPort

Memory Projection Invalidation Port interface with 1 public fields or methods.

  • Kind: interface
  • Import: import type { MemoryProjectionInvalidationPort } from '@codesoul-co/hypha-memory';
  • Source module: memory-projection-invalidation

Declaration

text
export interface MemoryProjectionInvalidationPort {
    invalidate(request: MemoryProjectionInvalidationRequest): Promise<MemoryProjectionInvalidationReceipt>;
}

Contract members

MemberKindSignatureDescription
invalidatemethodinvalidate(request: MemoryProjectionInvalidationRequest): Promise<MemoryProjectionInvalidationReceipt>Public method; parameters and return type are shown in the signature.

MemoryProjectionInvalidationReceipt

Memory Projection Invalidation Receipt interface with 5 public fields or methods.

  • Kind: interface
  • Import: import type { MemoryProjectionInvalidationReceipt } from '@codesoul-co/hypha-memory';
  • Source module: memory-projection-invalidation

Declaration

text
export interface MemoryProjectionInvalidationReceipt {
    operationId: string;
    scopeHash: string;
    mutationGeneration: string;
    reason: MemoryProjectionInvalidationReason;
    targets: Array<{
        id: string;
        invalidatedEntries: number;
    }>;
}

Contract members

MemberKindSignatureDescription
mutationGenerationpropertymutationGeneration: stringPublic property; its type, readonly modifier and optionality are shown in the signature.
operationIdpropertyoperationId: stringPublic property; its type, readonly modifier and optionality are shown in the signature.
reasonpropertyreason: MemoryProjectionInvalidationReasonPublic property; its type, readonly modifier and optionality are shown in the signature.
scopeHashpropertyscopeHash: stringPublic property; its type, readonly modifier and optionality are shown in the signature.
targetspropertytargets: { id: string; invalidatedEntries: number; }[]Public property; its type, readonly modifier and optionality are shown in the signature.

MemoryProjectionInvalidationRequest

Memory Projection Invalidation Request interface with 5 public fields or methods.

  • Kind: interface
  • Import: import type { MemoryProjectionInvalidationRequest } from '@codesoul-co/hypha-memory';
  • Source module: memory-projection-invalidation

Declaration

text
export interface MemoryProjectionInvalidationRequest {
    operationId: string;
    scope: ManagedMemoryScope;
    reason: MemoryProjectionInvalidationReason;
    memoryIds: string[];
    memoryVersionIds?: string[];
}

Contract members

MemberKindSignatureDescription
memoryIdspropertymemoryIds: string[]Public property; its type, readonly modifier and optionality are shown in the signature.
memoryVersionIdspropertymemoryVersionIds?: string[]Public property; its type, readonly modifier and optionality are shown in the signature.
operationIdpropertyoperationId: stringPublic property; its type, readonly modifier and optionality are shown in the signature.
reasonpropertyreason: MemoryProjectionInvalidationReasonPublic property; its type, readonly modifier and optionality are shown in the signature.
scopepropertyscope: ManagedMemoryScopePublic property; its type, readonly modifier and optionality are shown in the signature.

MemoryProjectionInvalidationTarget

Memory Projection Invalidation Target interface with 2 public fields or methods.

  • Kind: interface
  • Import: import type { MemoryProjectionInvalidationTarget } from '@codesoul-co/hypha-memory';
  • Source module: memory-projection-invalidation

Declaration

text
export interface MemoryProjectionInvalidationTarget {
    readonly id: string;
    invalidateScope(scopeHash: string, mutationGeneration: string): Promise<number>;
}

Contract members

MemberKindSignatureDescription
idpropertyreadonly id: stringPublic property; its type, readonly modifier and optionality are shown in the signature.
invalidateScopemethodinvalidateScope(scopeHash: string, mutationGeneration: string): Promise<number>Public method; parameters and return type are shown in the signature.

MemoryProjectionInvalidationReason

Public type alias for Memory Projection Invalidation Reason; the declaration contains its complete type expression.

Declaration

text
export type MemoryProjectionInvalidationReason = 'updated' | 'deleted';