@terminal3/t3n-sdk 4.19.0 → 4.22.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -1997,12 +1997,15 @@ declare class T3nClient {
1997
1997
  * standard authenticated `action.execute` path. The node injects the
1998
1998
  * caller's DID into the contract call context, and the contract refuses
1999
1999
  * unless the caller is listed as an admin of `organisationDid`. A brand
2000
- * new secp256k1 wallet is minted in-TEE for the agent; its eth-derived
2001
- * DID and its raw private key are both returned. The private key is the
2002
- * "authentication token" the MCP sidecar uses to authenticate as this
2003
- * agent (the existing `PRIVATE_KEY` eth auth mode) — it is generated and
2004
- * returned exactly once here and is never persisted or recoverable
2005
- * afterwards, so the caller must capture it immediately.
2000
+ * new secp256k1 wallet is minted in-TEE for the agent (its eth-derived
2001
+ * DID is returned), but the raw private key never leaves the TEE.
2002
+ * Instead the contract mints an opaque bearer API key —
2003
+ * `t3n_key_<key_id_hex>.<secret_hex>` — and returns it plus its `keyId`
2004
+ * (the 16-hex lookup id). The `apiKey` is the credential relayed verbatim
2005
+ * in the `X-T3N-Api-Key` header of a stateless `POST /api/invoke` call; only
2006
+ * its hash is stored on-ledger, so it is generated and returned exactly
2007
+ * once here and is never persisted or recoverable afterwards — the caller
2008
+ * must capture it immediately.
2006
2009
  *
2007
2010
  * Atomic provisioning + card hosting: the SAME transaction mints the
2008
2011
  * agent, writes the agent-registry record (owner binding + the org's
@@ -2027,8 +2030,8 @@ declare class T3nClient {
2027
2030
  * (`did:t3n:<40-hex>`); the caller must be one of its admins
2028
2031
  * @param name - human-readable agent name (1..=128 bytes)
2029
2032
  * @param options - optional atomic registration + card hosting
2030
- * @returns the new agent's DID and its one-time private key, plus
2031
- * `agentUri` / `cardEntryId` (the hosted PRIVATE card's entry id)
2033
+ * @returns the new agent's DID and its one-time opaque `apiKey` + `keyId`,
2034
+ * plus `agentUri` / `cardEntryId` (the hosted PRIVATE card's entry id)
2032
2035
  * when the atomic path ran
2033
2036
  * @throws if the session is not authenticated, or if the contract
2034
2037
  * refuses (e.g. the caller is not an admin of `organisationDid`, the
@@ -2041,7 +2044,8 @@ declare class T3nClient {
2041
2044
  defaultCard?: boolean;
2042
2045
  }): Promise<{
2043
2046
  agentDid: Did;
2044
- privateKey: string;
2047
+ apiKey: string;
2048
+ keyId: string;
2045
2049
  agentUri?: string;
2046
2050
  cardEntryId?: string;
2047
2051
  }>;
@@ -2784,6 +2788,123 @@ declare function createRandomHandler(): GuestToHostHandler;
2784
2788
  */
2785
2789
  declare function createDefaultHandlers(baseUrl: string, trustAnchor: TrustAnchorOrUnsafe): GuestToHostHandlers;
2786
2790
 
2791
+ /**
2792
+ * Stateless `api_key` agent auth.
2793
+ *
2794
+ * `invoke` posts once to `POST /api/invoke` — an HTTPS-only
2795
+ * endpoint (see the HTTPS-guard note below) that authenticates an org agent
2796
+ * by an opaque API key (`X-T3N-Api-Key: t3n_key_<...>`) and executes a
2797
+ * `z:` contract as that agent in the SAME request. Unlike
2798
+ * {@link T3nClient.execute}, there is **no** ML-KEM handshake, **no**
2799
+ * `Session-Id`, and **no** session state: the node derives the acting agent
2800
+ * DID from the relayed key per-call (`resolve_stateless_credential`
2801
+ * driving the session contract's `api_key` action), then runs the same
2802
+ * execute pipeline `action.execute` runs after `check_authentication`
2803
+ * (`ActionService::execute_as_did`), and returns the contract's decoded
2804
+ * result as a plain `Json(result)` body — NOT a JSON-RPC envelope.
2805
+ *
2806
+ * Because the response is the bare decoded value (no `{jsonrpc,result,id}`
2807
+ * wrapper to unwrap), decoding reuses {@link parseContractResponse} — the
2808
+ * exact same JSON.parse + optional-schema path {@link T3nClient.executeAndDecode}
2809
+ * uses for the session `execute` RPC — so callers get identical typed /
2810
+ * schema-validated decoding on either path.
2811
+ *
2812
+ * This module intentionally does NOT import {@link T3nClient}, the WASM
2813
+ * component loader, or any handshake/session machinery — `invoke` is
2814
+ * a single fetch, nothing else.
2815
+ *
2816
+ * ### HTTPS guard (CodeRabbit T2)
2817
+ * The API key is a long-lived bearer credential relayed in a plain header,
2818
+ * so `invoke` refuses to send it over an insecure transport: `baseUrl`
2819
+ * must be `https:`, unless the host is a local-dev loopback
2820
+ * (`localhost` / `127.0.0.1` / `[::1]`), in which case plain `http:` is
2821
+ * allowed. The check runs before any network activity — an insecure
2822
+ * `baseUrl` never gets as far as a `fetch` call.
2823
+ *
2824
+ * ### Error hygiene (CodeRabbit T3/T4/T5)
2825
+ * Every error `invoke` throws is a fixed, generic
2826
+ * {@link InvokeError} message — the response body text, the
2827
+ * underlying network error's message, and the api key are never
2828
+ * interpolated into it. This is defense in depth against a server (or a
2829
+ * malicious intermediary) that echoes the key or other secrets back in an
2830
+ * error body: whatever comes back over the wire on a non-2xx response is
2831
+ * discarded, not surfaced. The timeout timer also stays armed until the
2832
+ * response body has been fully read (or has itself timed out) — see
2833
+ * {@link invoke}'s implementation — so a connection that delivers
2834
+ * headers and then stalls on the body still respects `timeoutMs`.
2835
+ */
2836
+
2837
+ /**
2838
+ * Wire body for `POST /api/invoke` — mirrors the server's
2839
+ * server-side `ExecuteActionRequest`, the same shape
2840
+ * `T3nClient`'s `execute*` wrappers build for the session `action.execute`
2841
+ * RPC. Field names are load-bearing: the server deserialises strictly into
2842
+ * `script_name` / `script_version` / `function_name` (see
2843
+ * `T3nClient.executeSystemContract`'s doc comment) — `contract` / `version`
2844
+ * / `function` produce a 400.
2845
+ */
2846
+ interface InvokeRequest {
2847
+ script_name: string;
2848
+ script_version: string;
2849
+ function_name: string;
2850
+ /** Delegated-call target member; omitted for a self (non-delegated) call. */
2851
+ pii_did?: string;
2852
+ input?: unknown;
2853
+ }
2854
+ /** Options for {@link invoke}. */
2855
+ interface InvokeOptions {
2856
+ /**
2857
+ * RPC base URL of the T3n node, e.g. `https://node.example.com`. Must be
2858
+ * `https:` unless the host is a local-dev loopback (`localhost` /
2859
+ * `127.0.0.1` / `[::1]`) — see the module doc comment's HTTPS-guard note.
2860
+ */
2861
+ baseUrl: string;
2862
+ /**
2863
+ * The agent's opaque API key (`t3n_key_<...>`), relayed verbatim in the
2864
+ * `X-T3N-Api-Key` header. Never logged and never interpolated into any
2865
+ * error this module throws — see the module doc comment and
2866
+ * {@link InvokeError}.
2867
+ */
2868
+ apiKey: string;
2869
+ /** The wire request to execute, built to the {@link InvokeRequest} shape. */
2870
+ request: InvokeRequest;
2871
+ /** Fetch timeout in ms. Defaults to 30s, matching {@link HttpTransport}. */
2872
+ timeoutMs?: number;
2873
+ }
2874
+ /**
2875
+ * Thrown when `POST /api/invoke` fails at the transport or HTTP
2876
+ * layer (network failure, timeout, non-2xx status). Contract-level errors
2877
+ * the node returns as a 2xx JSON error value are NOT wrapped here — they
2878
+ * flow through {@link parseContractResponse}'s normal return, same as the
2879
+ * session `execute` path.
2880
+ *
2881
+ * The message is always one of a small set of fixed, generic strings — it
2882
+ * NEVER contains the raw api key, the response body text, or the
2883
+ * underlying network error's message (CodeRabbit T4/T5): a server (or a
2884
+ * misbehaving intermediary) that echoes the key or other secrets back in
2885
+ * an error body must not be able to leak them through this error's
2886
+ * message.
2887
+ */
2888
+ declare class InvokeError extends T3nError {
2889
+ readonly status?: number | undefined;
2890
+ constructor(message: string, status?: number | undefined);
2891
+ }
2892
+ /**
2893
+ * Execute a `z:` contract as an org agent, authenticating with an opaque
2894
+ * API key — one request, no handshake, no session.
2895
+ *
2896
+ * @param opts - baseUrl, apiKey, and the wire request to execute
2897
+ * @param schema - optional validator applied to the decoded result (e.g. a
2898
+ * zod schema); anything exposing `.parse(value)` is accepted, same as
2899
+ * {@link T3nClient.executeAndDecode}
2900
+ * @returns the contract's decoded result, typed as `T`
2901
+ * @throws {InvokeError} if `baseUrl` is insecure, on a network
2902
+ * failure/timeout, or on a non-2xx response
2903
+ * @throws {ContractResponseError} if the node returns a 2xx with a body
2904
+ * that is not valid JSON
2905
+ */
2906
+ declare function invoke<T = unknown>(opts: InvokeOptions, schema?: ContractResponseSchema<T>): Promise<T>;
2907
+
2787
2908
  /**
2788
2909
  * Token fixed-point units (USDT-style 6 decimals).
2789
2910
  *
@@ -3898,6 +4019,116 @@ interface ConfigValidationResult {
3898
4019
  errors: string[];
3899
4020
  }
3900
4021
 
4022
+ /**
4023
+ * Operator-signed trust-manifest distribution.
4024
+ *
4025
+ * The SDK's attestation check (see `TrustAnchor`) needs a trusted source
4026
+ * for the expected cluster identity — the set of node peer IDs and the
4027
+ * allow-listed RTMR3 image measurements. Without a trusted source, every
4028
+ * caller has to hand-pin those values or fall back to
4029
+ * `{ unsafe_trust_server: true }`, which disables verification entirely.
4030
+ *
4031
+ * A trust manifest is a small JSON document published by the cluster
4032
+ * operator to a public URL (a GCS bucket) and signed with the operator's
4033
+ * secp256k1 key. Its public half is baked into the SDK per environment
4034
+ * (`OPERATOR_PUBLIC_KEYS`). `fetchTrustedManifest(env)` fetches the
4035
+ * manifest, verifies the signature against the pinned operator key, and
4036
+ * returns a {@link TrustAnchor} that plugs straight into
4037
+ * `T3nClientConfig.trustAnchor`.
4038
+ *
4039
+ * Trust model: the operator key is the root of trust. A network attacker
4040
+ * can serve any bytes at the manifest URL, but cannot forge a signature
4041
+ * for a manifest naming their own node identities/measurements without
4042
+ * the operator's private key. The manifest only ever *narrows* trust to
4043
+ * the real cluster — it never widens what the on-quote RTMR3 pinning and
4044
+ * peer-id set-equality already enforce inside the WASM verifier.
4045
+ */
4046
+
4047
+ /**
4048
+ * The signed payload an operator publishes. `signature` covers every
4049
+ * other field (see {@link canonicalManifestBytes}); it is excluded from
4050
+ * its own signing input.
4051
+ */
4052
+ interface SignedTrustManifest {
4053
+ /** Environment the manifest describes (e.g. `"production"`). */
4054
+ cluster: string;
4055
+ /** Monotonic manifest version; lets a client reject a rolled-back manifest. */
4056
+ version: number;
4057
+ /** Base58 peer IDs of the expected cluster nodes. */
4058
+ peer_ids: string[];
4059
+ /** Base64-encoded 48-byte RTMR3 measurements of the expected image(s). */
4060
+ rtmr3_allowlist: string[];
4061
+ /** RFC 3339 timestamp the manifest was signed. */
4062
+ signed_at: string;
4063
+ /** Hex secp256k1 signature (compact 64-byte r‖s) over the canonical payload. */
4064
+ signature: string;
4065
+ }
4066
+ /** The payload fields the signature covers — the manifest minus `signature`. */
4067
+ type TrustManifestPayload = Omit<SignedTrustManifest, "signature">;
4068
+ /**
4069
+ * Verify a manifest's signature against an operator public key (hex
4070
+ * compressed secp256k1). Returns `true` iff the signature is valid for
4071
+ * the manifest's canonical payload. Never throws on a bad signature —
4072
+ * malformed inputs (non-hex key/signature) return `false`.
4073
+ */
4074
+ declare function verifyManifestSignature(manifest: SignedTrustManifest, operatorPublicKeyHex: string): boolean;
4075
+ /** Project a verified manifest onto the `TrustAnchor` the client pins. */
4076
+ declare function manifestToTrustAnchor(manifest: SignedTrustManifest): TrustAnchor;
4077
+ /** Options for {@link fetchTrustedManifest}. */
4078
+ interface FetchTrustedManifestOptions {
4079
+ /**
4080
+ * Override the node base URL the manifest is fetched from (defaults to
4081
+ * the environment's `NODE_URLS` entry). Use for a private-cloud cluster
4082
+ * on a custom host — the manifest is served at `<baseUrl>/api/trust-manifest`.
4083
+ */
4084
+ baseUrl?: string;
4085
+ /**
4086
+ * Override the full manifest URL outright (takes precedence over
4087
+ * `baseUrl`). Primarily for tests and non-standard deployments.
4088
+ */
4089
+ manifestUrl?: string;
4090
+ /**
4091
+ * Override the operator public key (hex compressed secp256k1). Defaults
4092
+ * to the SDK-pinned key for the environment. Primarily for tests.
4093
+ */
4094
+ operatorPublicKeyHex?: string;
4095
+ /**
4096
+ * Reject any manifest whose `version` is below this floor, even when its
4097
+ * signature is valid. Pass this when the application persists the last
4098
+ * accepted version across restarts — it closes the rollback window the
4099
+ * in-process high-water mark cannot cover (a fresh process trusts the
4100
+ * first manifest it sees).
4101
+ */
4102
+ minVersion?: number;
4103
+ }
4104
+ /** Reset the per-environment rollback floor. Useful in tests. */
4105
+ declare function clearManifestVersionFloor(): void;
4106
+ /**
4107
+ * Fetch and verify the operator-signed trust manifest for an environment,
4108
+ * returning a {@link TrustAnchor} ready to pass as
4109
+ * `T3nClientConfig.trustAnchor`.
4110
+ *
4111
+ * Throws if the environment has no pinned operator key (the manifest
4112
+ * infrastructure is not provisioned for it yet), if the manifest cannot
4113
+ * be fetched or is malformed, if the signature does not verify against
4114
+ * the pinned operator key, or if the manifest's `version` is below the
4115
+ * rollback floor (see {@link FetchTrustedManifestOptions.minVersion}).
4116
+ * It never returns an unverified anchor.
4117
+ *
4118
+ * Deliberately uncached (unlike the ML-KEM `keyCache`): the manifest is
4119
+ * re-published on deploys and this function is expected to run once per
4120
+ * application startup, not per handshake. Fetch it once, keep the
4121
+ * returned anchor for the process lifetime, and re-fetch only when a
4122
+ * handshake starts failing verification (a sign the cluster rolled).
4123
+ *
4124
+ * The manifest is served by the node itself at `/api/trust-manifest`
4125
+ * (there is no external bucket) — same origin as the node the anchor
4126
+ * describes. That co-location does not weaken the trust: authenticity is
4127
+ * the operator signature verified against the SDK-pinned key, and the
4128
+ * monotonic version floor rejects replays of an old signed manifest.
4129
+ */
4130
+ declare function fetchTrustedManifest(env: Environment, opts?: FetchTrustedManifestOptions): Promise<TrustAnchor>;
4131
+
3901
4132
  /**
3902
4133
  * Configuration validation for T3n SDK
3903
4134
  */
@@ -4384,5 +4615,5 @@ declare function tenantDidHex(tenantDid: string): string;
4384
4615
  declare function validateTail(tail: string): string;
4385
4616
  declare function canonicalTenantName(tenantDid: string, tail: string): string;
4386
4617
 
4387
- export { AGENT_CARDS_SCOPE, AuthMethod, AuthenticationError, BASE_UNITS_PER_TOKEN, ContractResponseError, DEFAULT_ENVIRONMENT, DEFAULT_INDIVIDUAL_THRESHOLD_CENTS, DEFAULT_KYC_POLL_CADENCE, HandshakeError, HttpTransport, KycStatusTimeoutError, LogLevel, MockTransport, NODE_URLS, OrgDataClient, OtpRateLimitedError, RpcError, SessionExpiredError, SessionOrgDataClient, SessionStateError, SessionStatus, SessionUsageReportClient, T3nClient, T3nError, TERMINAL_KYC_STATUSES, TOKEN_DECIMALS, TenantClient, TenantContractsNamespace, TenantMapsNamespace, TenantNamespace, TenantSdkValidationError, TenantTokenNamespace, UnsupportedTenantSdkOperationError, UserUpsertError, WasmError, WireEncodingError, Z_PAYROLL_AUDIT_READ_FUNCTIONS, Z_PAYROLL_RUN_FUNCTIONS, _b64uEncode, assertShape, b64uDecodeStrict, b64uEncodeBytes, bytesToString, canonicalTenantName, clearKeyCache, compactDidFromBytes, createDefaultHandlers, createEmailOtpAuthInput, createEthAuthInput, createLogger, createMlKemPublicKeyHandler, createOidcAuthInput, createOrgDataClientFromSession, createRandomHandler, createUsageReportClientFromSession, createWorkloadAuthInput, decodeWasmErrorMessage, deriveAgentCardEntryId, eth_get_address, extractWasmError, fetchDkgAttestation, fetchMlKemPublicKey, formatTokens, generateRandomString, generateUUID, getEnvironment, getEnvironmentName, getGlobalLogLevel, getLogger, getNodeUrl, getScriptVersion, isAgentCardResponse, isDataGetResponse, isDataListResponse, isMutationResponse, isObject, isOrgAdminStatus, isOrgContractGrants, isOrgPolicyMeta, isOrgPolicyView, isOrgUsageReport, isOrgWriters, isRoleAssignmentsResponse, isRoleGetResponse, isUnsafeTrustServer, loadConfig, loadWasmComponent, maskKeyMaterial, mergeAgentAuthEntries, mergeDiscoverDids, metamask_get_address, metamask_sign, parseAgentAuthGet, parseAgentAuthPolicy, parseContractResponse, redactSecrets, redactSecretsFromJson, requestToWire, setEnvironment, setGlobalLogLevel, setNodeUrl, stringToBytes, tenantDidHex, toAgentAuthUpdateWire, toBaseUnits, validateConfig, validateTail, verifyDkgAttestation, verifyTdxQuote };
4388
- export type { AdmitForOrgOptions, AgentAuthEntry, AgentAuthMergeResult, AgentAuthPolicy, AgentAuthScriptGrant, AgentAuthUpdateInput, AgentCardRefInput, AgentCardResponse, AgentCardSetInput, AssignRolesInput, AuthInput, BalanceRow, ChargeReason, ClientAuth, ClientHandshake, ConfigValidationResult, ContractExecuteInput, ContractKind, ContractPublishInput, ContractRegisterResult, ContractResponseSchema, ContractSetDescriptorInput, CreatePolicyInput, DataGetInput, DataGetResponse, DataListInput, DataListResponse, DelegationGrantKind, DelegationGrantRef, DeleteDataInput, DeleteGrantsInput, DeleteScopeInput, Did, Direction, DkgAttestation, DkgVerifyResult, EmailOtpAuthInput, EmailOtpCredentials, Environment, EthAuthInput, ExecuteBusinessContractOptions, ExecuteOrgDataActionOptions, GetUsageOptions, GrantCheckParams, GrantCheckResult, GranteeInput, GrantsGetInput, GuestToHostHandler, GuestToHostHandlers, HandshakeResult, JsonRpcRequest, JsonRpcResponse, KycPollCadence, KycPollOptions, KycStatus, KycStatusKind, ListContractsParams, ListContractsResult, ListContractsScope, ListedContract, Logger, MapCreateInput, MapLifecycleStatus, MapResponse, MapUpdateInput, MapVisibility, MutationResponse, OidcAuthInput, OidcCredentials, OrgAdminStatus, OrgContractGrants, OrgDataActionWire, OrgDataClientOptions, OrgPolicyMeta, OrgPolicyView, OrgUsageReport, OrgUsageReportInput, OrgWriters, OtpChannel, OtpMergeSuggestion, OtpRequestInput, OtpRequestResult, OtpVerifyInput, OtpVerifyResult, PayrollRunRequest, PeerQuoteResult, PolicyGetInput, PurgeOrgInput, QuoteVerifyResult, ReaderSet, RemoveMemberGrantsInput, RoleAssignments, RoleAssignmentsResponse, RoleDefinition, RoleGetResponse, RoleGrant, RoleIdInput, SdkConfig, SessionCrypto, SessionId, SetGrantsInput, SetRoleInput, SetWritersInput, StringEncoding, SubmitUserInputArgs, SubmitUserInputResult, T3nClientConfig, TenantAdmitProjection, TenantAdmitStatus, TenantBaseClient, TenantClientConfig, TenantContractExecuteInput, TenantContractPublishInput, TenantContractSetDescriptorInput, TenantExecutionSession, TenantMapCreateInput, TenantMapUpdatePatch, TenantMeResponse, TenantSdkEnvironment, TenantSelfAdmitResult, TenantStatus, TenantTargetOptions, TokenTxKind, Transport, TrustAnchor, TrustAnchorOrUnsafe, UnassignRolesInput, UnsafeTrustServer, UpdateMetaInput, UsageEntry, UsagePage, UsageReportSignature, UserGrant, UserInputProfile, UserUpsertErrorKind, WasmComponent, WasmNextResult, WireBlock, WorkloadAuthInput, WriteDataInput, WriterSet, WritersGetInput };
4618
+ export { AGENT_CARDS_SCOPE, AuthMethod, AuthenticationError, BASE_UNITS_PER_TOKEN, ContractResponseError, DEFAULT_ENVIRONMENT, DEFAULT_INDIVIDUAL_THRESHOLD_CENTS, DEFAULT_KYC_POLL_CADENCE, HandshakeError, HttpTransport, InvokeError, KycStatusTimeoutError, LogLevel, MockTransport, NODE_URLS, OrgDataClient, OtpRateLimitedError, RpcError, SessionExpiredError, SessionOrgDataClient, SessionStateError, SessionStatus, SessionUsageReportClient, T3nClient, T3nError, TERMINAL_KYC_STATUSES, TOKEN_DECIMALS, TenantClient, TenantContractsNamespace, TenantMapsNamespace, TenantNamespace, TenantSdkValidationError, TenantTokenNamespace, UnsupportedTenantSdkOperationError, UserUpsertError, WasmError, WireEncodingError, Z_PAYROLL_AUDIT_READ_FUNCTIONS, Z_PAYROLL_RUN_FUNCTIONS, _b64uEncode, assertShape, b64uDecodeStrict, b64uEncodeBytes, bytesToString, canonicalTenantName, clearKeyCache, clearManifestVersionFloor, compactDidFromBytes, createDefaultHandlers, createEmailOtpAuthInput, createEthAuthInput, createLogger, createMlKemPublicKeyHandler, createOidcAuthInput, createOrgDataClientFromSession, createRandomHandler, createUsageReportClientFromSession, createWorkloadAuthInput, decodeWasmErrorMessage, deriveAgentCardEntryId, eth_get_address, extractWasmError, fetchDkgAttestation, fetchMlKemPublicKey, fetchTrustedManifest, formatTokens, generateRandomString, generateUUID, getEnvironment, getEnvironmentName, getGlobalLogLevel, getLogger, getNodeUrl, getScriptVersion, invoke, isAgentCardResponse, isDataGetResponse, isDataListResponse, isMutationResponse, isObject, isOrgAdminStatus, isOrgContractGrants, isOrgPolicyMeta, isOrgPolicyView, isOrgUsageReport, isOrgWriters, isRoleAssignmentsResponse, isRoleGetResponse, isUnsafeTrustServer, loadConfig, loadWasmComponent, manifestToTrustAnchor, maskKeyMaterial, mergeAgentAuthEntries, mergeDiscoverDids, metamask_get_address, metamask_sign, parseAgentAuthGet, parseAgentAuthPolicy, parseContractResponse, redactSecrets, redactSecretsFromJson, requestToWire, setEnvironment, setGlobalLogLevel, setNodeUrl, stringToBytes, tenantDidHex, toAgentAuthUpdateWire, toBaseUnits, validateConfig, validateTail, verifyDkgAttestation, verifyManifestSignature, verifyTdxQuote };
4619
+ export type { AdmitForOrgOptions, AgentAuthEntry, AgentAuthMergeResult, AgentAuthPolicy, AgentAuthScriptGrant, AgentAuthUpdateInput, AgentCardRefInput, AgentCardResponse, AgentCardSetInput, AssignRolesInput, AuthInput, BalanceRow, ChargeReason, ClientAuth, ClientHandshake, ConfigValidationResult, ContractExecuteInput, ContractKind, ContractPublishInput, ContractRegisterResult, ContractResponseSchema, ContractSetDescriptorInput, CreatePolicyInput, DataGetInput, DataGetResponse, DataListInput, DataListResponse, DelegationGrantKind, DelegationGrantRef, DeleteDataInput, DeleteGrantsInput, DeleteScopeInput, Did, Direction, DkgAttestation, DkgVerifyResult, EmailOtpAuthInput, EmailOtpCredentials, Environment, EthAuthInput, ExecuteBusinessContractOptions, ExecuteOrgDataActionOptions, FetchTrustedManifestOptions, GetUsageOptions, GrantCheckParams, GrantCheckResult, GranteeInput, GrantsGetInput, GuestToHostHandler, GuestToHostHandlers, HandshakeResult, InvokeOptions, InvokeRequest, JsonRpcRequest, JsonRpcResponse, KycPollCadence, KycPollOptions, KycStatus, KycStatusKind, ListContractsParams, ListContractsResult, ListContractsScope, ListedContract, Logger, MapCreateInput, MapLifecycleStatus, MapResponse, MapUpdateInput, MapVisibility, MutationResponse, OidcAuthInput, OidcCredentials, OrgAdminStatus, OrgContractGrants, OrgDataActionWire, OrgDataClientOptions, OrgPolicyMeta, OrgPolicyView, OrgUsageReport, OrgUsageReportInput, OrgWriters, OtpChannel, OtpMergeSuggestion, OtpRequestInput, OtpRequestResult, OtpVerifyInput, OtpVerifyResult, PayrollRunRequest, PeerQuoteResult, PolicyGetInput, PurgeOrgInput, QuoteVerifyResult, ReaderSet, RemoveMemberGrantsInput, RoleAssignments, RoleAssignmentsResponse, RoleDefinition, RoleGetResponse, RoleGrant, RoleIdInput, SdkConfig, SessionCrypto, SessionId, SetGrantsInput, SetRoleInput, SetWritersInput, SignedTrustManifest, StringEncoding, SubmitUserInputArgs, SubmitUserInputResult, T3nClientConfig, TenantAdmitProjection, TenantAdmitStatus, TenantBaseClient, TenantClientConfig, TenantContractExecuteInput, TenantContractPublishInput, TenantContractSetDescriptorInput, TenantExecutionSession, TenantMapCreateInput, TenantMapUpdatePatch, TenantMeResponse, TenantSdkEnvironment, TenantSelfAdmitResult, TenantStatus, TenantTargetOptions, TokenTxKind, Transport, TrustAnchor, TrustAnchorOrUnsafe, TrustManifestPayload, UnassignRolesInput, UnsafeTrustServer, UpdateMetaInput, UsageEntry, UsagePage, UsageReportSignature, UserGrant, UserInputProfile, UserUpsertErrorKind, WasmComponent, WasmNextResult, WireBlock, WorkloadAuthInput, WriteDataInput, WriterSet, WritersGetInput };