Skip to content

@codesoul-co/hypha-adapters-local / remote-sandbox-provider-factory

Using this module

Use the Remote sandbox provider factory module for binding external or local providers to Hypha ports. It exports 1 class, 1 constant, 1 interface.

Import from the package entrypoint

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

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

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 1 class as constructable runtime implementations. Each symbol entry lists its constructor and public methods.
  • The 1 constant/enum export provides stable values, schemas, definitions, or defaults. Reuse these exports instead of copying internal values into an application.

Public exports

SymbolKindSignatureDescription
RemoteSandboxProviderFactoryclassnew RemoteSandboxProviderFactory(options: RemoteSandboxProviderFactoryOptions): RemoteSandboxProviderFactoryExplicit composition boundary for a remote Sandbox deployment. Credentials remain late-bound through the transport credentialProvider so rotation does not require rebuilding the registry or retaining a token in the Factory.
REMOTE_SANDBOX_PROVIDER_IDconstantconst REMOTE_SANDBOX_PROVIDER_ID: "provider.remote-sandbox"REMOTE SANDBOX PROVIDER ID constant exported by the remote-sandbox-provider-factory module.
RemoteSandboxProviderFactoryOptionsinterfaceinterface RemoteSandboxProviderFactoryOptions extends Omit<RemoteSandboxHttpTransportOptions, 'baseUrl'>Remote Sandbox Provider Factory Options interface with 10 public fields or methods.

RemoteSandboxProviderFactory

Explicit composition boundary for a remote Sandbox deployment. Credentials remain late-bound through the transport credentialProvider so rotation does not require rebuilding the registry or retaining a token in the Factory.

Declaration

text
export declare class RemoteSandboxProviderFactory implements SandboxProviderFactory {
    readonly providerType: "remote_sandbox";
    readonly providerId: string;
    constructor(options: RemoteSandboxProviderFactoryOptions);
    create(): SandboxProvider;
}

Public members

MemberKindSignatureDescription
constructorconstructor(options: RemoteSandboxProviderFactoryOptions): RemoteSandboxProviderFactoryCreates an instance of this class.
createmethodcreate(): SandboxProviderPublic method; parameters and return type are shown in the signature.
providerIdpropertyreadonly providerId: stringPublic property; its type, readonly modifier and optionality are shown in the signature.
providerTypepropertyreadonly providerType: "remote_sandbox"Public property; its type, readonly modifier and optionality are shown in the signature.

REMOTE_SANDBOX_PROVIDER_ID

REMOTE SANDBOX PROVIDER ID constant exported by the remote-sandbox-provider-factory module.

Declaration

text
export declare const REMOTE_SANDBOX_PROVIDER_ID: "provider.remote-sandbox";

RemoteSandboxProviderFactoryOptions

Remote Sandbox Provider Factory Options interface with 10 public fields or methods.

  • Kind: interface
  • Import: import type { RemoteSandboxProviderFactoryOptions } from '@codesoul-co/hypha-adapters-local';
  • Source module: remote-sandbox-provider-factory

Declaration

text
export interface RemoteSandboxProviderFactoryOptions extends Omit<RemoteSandboxHttpTransportOptions, 'baseUrl'> {
    baseUrl: string;
    providerId?: string;
    transport?: RemoteSandboxTransport;
}

Contract members

MemberKindSignatureDescription
baseUrlpropertybaseUrl: stringPublic property; its type, readonly modifier and optionality are shown in the signature.
credentialProvidermethodcredentialProvider(): Promise<RemoteSandboxHttpCredential>Public method; parameters and return type are shown in the signature.
fetchmethodfetch?(url: string, request: RemoteSandboxHttpRequest): Promise<RemoteSandboxHttpResponse>Public method; parameters and return type are shown in the signature.
maxCredentialTtlMspropertymaxCredentialTtlMs?: numberPublic property; its type, readonly modifier and optionality are shown in the signature.
maxNdjsonLineCharacterspropertymaxNdjsonLineCharacters?: numberPublic property; its type, readonly modifier and optionality are shown in the signature.
minCredentialRemainingMspropertyminCredentialRemainingMs?: numberPublic property; its type, readonly modifier and optionality are shown in the signature.
nowmethodnow?(): numberPublic method; parameters and return type are shown in the signature.
providerIdpropertyproviderId?: stringPublic property; its type, readonly modifier and optionality are shown in the signature.
requestTimeoutMspropertyrequestTimeoutMs?: numberPublic property; its type, readonly modifier and optionality are shown in the signature.
transportpropertytransport?: RemoteSandboxTransportPublic property; its type, readonly modifier and optionality are shown in the signature.