Skip to content

@codesoul-co/hypha-core / modules/runtime/runtime-io-helpers

Using this module

Use the Runtime io helpers module for executing runtime behavior at this boundary. It exports 3 classes, 1 function, 1 interface.

Import from the package entrypoint

ts
import {
  DefaultRuntimeEventHelper,
  DefaultRuntimeResourceHelper,
  DurableRuntimeEventCommitPort,
  createRuntimeIoHelperSdk,
} from '@codesoul-co/hypha-core';

import type {
  DefaultRuntimeEventHelperOptions,
} from '@codesoul-co/hypha-core';

Usage patterns

  • Use the 1 type/interface export 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.
  • The module exposes 1 function as direct operation entrypoints. Every overload, required/optional parameter, and return type is documented below.

Public exports

SymbolKindSignatureDescription
DefaultRuntimeEventHelperclassnew DefaultRuntimeEventHelper(options: DefaultRuntimeEventHelperOptions): DefaultRuntimeEventHelperDefault Runtime Event Helper class with 4 public constructor or member entries; its exact declarations are listed below.
DefaultRuntimeResourceHelperclassnew DefaultRuntimeResourceHelper(dependencies: RuntimeResourceHelperDependencies): DefaultRuntimeResourceHelperDefault Runtime Resource Helper class with 5 public constructor or member entries; its exact declarations are listed below.
DurableRuntimeEventCommitPortclassnew DurableRuntimeEventCommitPort(store: DurableEventStore): DurableRuntimeEventCommitPortDurable Runtime Event Commit Port class with 3 public constructor or member entries; its exact declarations are listed below.
createRuntimeIoHelperSdkfunctioncreateRuntimeIoHelperSdk(options: { event: DefaultRuntimeEventHelperOptions; resource: RuntimeResourceHelperDependencies; }): RuntimeIoHelperSdkCreate Runtime Io Helper Sdk function with 1 public call signature; parameters and return types are listed below.
DefaultRuntimeEventHelperOptionsinterfaceinterface DefaultRuntimeEventHelperOptionsDefault Runtime Event Helper Options interface with 4 public fields or methods.

DefaultRuntimeEventHelper

Default Runtime Event Helper class with 4 public constructor or member entries; its exact declarations are listed below.

Declaration

text
export declare class DefaultRuntimeEventHelper implements RuntimeEventHelper {
    constructor(options: DefaultRuntimeEventHelperOptions);
    append<T extends RuntimeJsonValue>(type: `runtime.observation.${string}`, payload: T, options?: RuntimeEventAppendOptions): Promise<FrameworkEvent<T>>;
    appendBatch(inputs: RuntimeObservationEventInput[]): Promise<FrameworkEvent[]>;
    readSince(sequence: number): Promise<FrameworkEvent[]>;
}

Public members

MemberKindSignatureDescription
appendmethodappend<T extends RuntimeJsonValue>(type: runtime.observation.${string}, payload: T, options?: RuntimeEventAppendOptions): Promise<FrameworkEvent<T>>Public method; parameters and return type are shown in the signature.
appendBatchmethodappendBatch(inputs: RuntimeObservationEventInput[]): Promise<FrameworkEvent[]>Public method; parameters and return type are shown in the signature.
constructorconstructor(options: DefaultRuntimeEventHelperOptions): DefaultRuntimeEventHelperCreates an instance of this class.
readSincemethodreadSince(sequence: number): Promise<FrameworkEvent[]>Public method; parameters and return type are shown in the signature.

DefaultRuntimeResourceHelper

Default Runtime Resource Helper class with 5 public constructor or member entries; its exact declarations are listed below.

Declaration

text
export declare class DefaultRuntimeResourceHelper implements RuntimeResourceHelper {
    constructor(dependencies: RuntimeResourceHelperDependencies);
    acquire(resources: Omit<RuntimeResourceRequest, 'requestedClaimId'>[], options: RuntimeResourceAcquireOptions): Promise<RuntimeResourceClaim[]>;
    renew(claims: RuntimeResourceClaim[], options: RuntimeResourceRenewOptions): Promise<RuntimeResourceClaim[]>;
    release(claims: RuntimeResourceClaim[]): Promise<void>;
    assertCurrent(claim: RuntimeResourceClaim): Promise<RuntimeResourceClaim>;
}

Public members

MemberKindSignatureDescription
acquiremethodacquire(resources: Omit<RuntimeResourceRequest, "requestedClaimId">[], options: RuntimeResourceAcquireOptions): Promise<RuntimeResourceClaim[]>Public method; parameters and return type are shown in the signature.
assertCurrentmethodassertCurrent(claim: RuntimeResourceClaim): Promise<RuntimeResourceClaim>Public method; parameters and return type are shown in the signature.
constructorconstructor(dependencies: RuntimeResourceHelperDependencies): DefaultRuntimeResourceHelperCreates an instance of this class.
releasemethodrelease(claims: RuntimeResourceClaim[]): Promise<void>Public method; parameters and return type are shown in the signature.
renewmethodrenew(claims: RuntimeResourceClaim[], options: RuntimeResourceRenewOptions): Promise<RuntimeResourceClaim[]>Public method; parameters and return type are shown in the signature.

DurableRuntimeEventCommitPort

Durable Runtime Event Commit Port class with 3 public constructor or member entries; its exact declarations are listed below.

Declaration

text
export declare class DurableRuntimeEventCommitPort implements RuntimeEventCommitPort {
    constructor(store: DurableEventStore);
    append(request: RuntimeEventCommitRequest): Promise<FrameworkEvent[]>;
    readSince(scope: RuntimeScope, sequence: number): Promise<FrameworkEvent[]>;
}

Public members

MemberKindSignatureDescription
appendmethodappend(request: RuntimeEventCommitRequest): Promise<FrameworkEvent[]>Public method; parameters and return type are shown in the signature.
constructorconstructor(store: DurableEventStore): DurableRuntimeEventCommitPortCreates an instance of this class.
readSincemethodreadSince(scope: RuntimeScope, sequence: number): Promise<FrameworkEvent[]>Public method; parameters and return type are shown in the signature.

createRuntimeIoHelperSdk

Create Runtime Io Helper Sdk function with 1 public call signature; parameters and return types are listed below.

Declaration

text
export declare function createRuntimeIoHelperSdk(options: {
    event: DefaultRuntimeEventHelperOptions;
    resource: RuntimeResourceHelperDependencies;
}): RuntimeIoHelperSdk;

Call signature

text
createRuntimeIoHelperSdk(options: { event: DefaultRuntimeEventHelperOptions; resource: RuntimeResourceHelperDependencies; }): RuntimeIoHelperSdk

Parameters

ParameterTypeRequiredDescription
options{ event: DefaultRuntimeEventHelperOptions; resource: RuntimeResourceHelperDependencies; }YesRequired parameter; accepted values are defined by the type column.

Returns

  • Type: RuntimeIoHelperSdk
  • Description: The return contract is defined by the type shown above.

DefaultRuntimeEventHelperOptions

Default Runtime Event Helper Options interface with 4 public fields or methods.

Declaration

text
export interface DefaultRuntimeEventHelperOptions {
    execution: RuntimeHelperExecutionScope;
    ids: RuntimeIdHelper;
    clock: {
        now(): Promise<string>;
    };
    port: RuntimeEventCommitPort;
}

Contract members

MemberKindSignatureDescription
clockpropertyclock: { now(): Promise<string>; }Public property; its type, readonly modifier and optionality are shown in the signature.
executionpropertyexecution: RuntimeHelperExecutionScopePublic property; its type, readonly modifier and optionality are shown in the signature.
idspropertyids: RuntimeIdHelperPublic property; its type, readonly modifier and optionality are shown in the signature.
portpropertyport: RuntimeEventCommitPortPublic property; its type, readonly modifier and optionality are shown in the signature.