@terminal3/t3n-sdk 3.11.0 → 3.12.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
@@ -749,9 +749,9 @@ declare class UserUpsertError extends T3nError {
749
749
  interface UserGrant {
750
750
  /** The user this grant applies to (`did:t3n:<40-hex>`). */
751
751
  user_did: string;
752
- /** WIT function names the user may invoke (e.g. `"run-payroll"`). */
752
+ /** WIT function names the user may invoke (e.g. `"set-records"`). */
753
753
  functions: string[];
754
- /** Data scope paths the user may access (e.g. `"payroll/employees"`). */
754
+ /** Data scope paths the user may access (e.g. `"example/records"`). */
755
755
  scopes: string[];
756
756
  /**
757
757
  * Optional key-value constraints that must match the request metadata
@@ -775,44 +775,38 @@ interface OrgPolicyMeta {
775
775
  created_at_secs: number;
776
776
  /** Unix timestamp (secs) of the most recent policy update. */
777
777
  updated_at_secs: number;
778
+ /**
779
+ * Per-org ceiling on delegation-credential validity (seconds).
780
+ *
781
+ * Absent when no org-level cap is set — the contract omits the field
782
+ * (never serialises null) and the cluster-wide
783
+ * `delegation.max_credential_validity_secs` governs instead. When set,
784
+ * the effective cap is `min(max_credential_validity_secs, cluster_ceiling)`.
785
+ */
786
+ max_credential_validity_secs?: number;
778
787
  }
779
788
  /** Shallow runtime guard for {@link OrgPolicyMeta}. */
780
789
  declare function isOrgPolicyMeta(value: unknown): value is OrgPolicyMeta;
781
- type EmploymentStatus = "Active" | "Terminated";
782
- /** Singapore CPF residency categories. */
783
- type ResidencyCategory = "Citizen" | "Pr1" | "Pr2" | "PrThreePlus" | "Foreigner";
784
- type AgeBand = "Under35" | "Age35To45" | "Age45To50" | "Age50To55" | "Age55To60" | "Age60To65" | "Over65";
785
- interface ExpenseClaim {
786
- claim_id: string;
787
- amount_cents: number;
788
- category: string;
789
- description: string;
790
- per_diem_days?: number;
791
- }
792
- /**
793
- * Employee data row stored under `OrgData[org || "payroll/employees" || entry_id]`.
794
- *
795
- * Mirrors the payroll `EmployeeRecord` wire shape.
796
- */
797
- interface EmployeeRecord {
798
- employee_id: string;
799
- employment_status: EmploymentStatus;
800
- is_on_probation: boolean;
801
- hire_date: string;
802
- termination_date?: string;
803
- /** Monthly gross base salary in integer cents SGD. */
804
- base_salary_cents: number;
805
- unpaid_leave_days: number;
806
- working_days_in_period: number;
807
- overtime_hours: number;
808
- hourly_rate_cents: number;
809
- residency: ResidencyCategory;
810
- age_band: AgeBand;
811
- expense_claims: ExpenseClaim[];
812
- /** Opaque reference used by the service layer for disbursement. */
813
- bank_account_ref: string;
814
- bank_account_changed_recently: boolean;
790
+ /**
791
+ * Effective org policy view returned by `org-policy-view`.
792
+ *
793
+ * Readable by any authenticated session (non-sensitive metadata).
794
+ * Returns the **effective** credential validity cap:
795
+ * `min(org.max_credential_validity_secs, cluster_ceiling)`, equal to the
796
+ * cluster ceiling when the org has not set a per-org cap. The contract
797
+ * always returns a value (or errors) — the field is never null.
798
+ */
799
+ interface OrgPolicyView {
800
+ /**
801
+ * Effective delegation-credential validity cap in seconds:
802
+ * `min(org value, cluster ceiling)`, equal to the cluster ceiling when the
803
+ * org has not set a per-org cap. Always present — mirrors the contract's
804
+ * `PolicyViewResponse.effective_validity_secs` (org-data `org-policy-view`).
805
+ */
806
+ effective_validity_secs: number;
815
807
  }
808
+ /** Shallow runtime guard for {@link OrgPolicyView}. */
809
+ declare function isOrgPolicyView(value: unknown): value is OrgPolicyView;
816
810
  /**
817
811
  * Standard response returned by all policy write and data mutation operations.
818
812
  *
@@ -2270,11 +2264,20 @@ declare const AGENT_PUBKEY_LEN = 33;
2270
2264
  declare const ETH_SIG_LEN = 65;
2271
2265
  declare const MAX_FUNCTIONS_PER_CREDENTIAL = 16;
2272
2266
  /**
2273
- * Canonical sorted list of the payroll v2 function surface. One source
2274
- * of truth for callers building a full-cycle credential — pass this
2275
- * (or a sorted subset) as `functions` to {@link buildDelegationCredential}.
2267
+ * Canonical sorted run-pipeline function surface for the z-payroll contract
2268
+ * (`z:<org-tid>:payroll`). Sorted ascending as required by the credential
2269
+ * validator. Mirrors `Z_PAYROLL_RUN_FUNCTIONS` in the Trinity harness.
2270
+ *
2271
+ * Pass this (or a sorted subset) as `functions` to
2272
+ * {@link buildDelegationCredential} for z-payroll credentials.
2276
2273
  */
2277
- declare const PAYROLL_FUNCTIONS_V1: readonly ["compute-payroll", "execute-disbursement", "finalize-audit", "submit-escalations", "validate-credentials"];
2274
+ declare const Z_PAYROLL_RUN_FUNCTIONS: readonly ["compute-payroll", "execute-disbursement", "finalize-audit", "submit-escalations", "validate-credentials"];
2275
+ /**
2276
+ * Canonical sorted audit-read function surface for the z-payroll contract.
2277
+ * These functions authorise history reads via `list-audit-cycles` /
2278
+ * `get-audit-entry`.
2279
+ */
2280
+ declare const Z_PAYROLL_AUDIT_READ_FUNCTIONS: readonly ["get-audit-entry", "list-audit-cycles"];
2278
2281
  /** User-to-agent delegation credential body. */
2279
2282
  interface DelegationCredential {
2280
2283
  /** Domain tag, must equal {@link DELEGATION_CREDENTIAL_DOMAIN}. */
@@ -2285,7 +2288,7 @@ interface DelegationCredential {
2285
2288
  agent_pubkey: Uint8Array;
2286
2289
  /** `did:t3n:<40-hex>` org DID. */
2287
2290
  org_did: string;
2288
- /** Contract id, e.g. `"tee:payroll"`. */
2291
+ /** Contract id, e.g. `"tee:z-payroll"`. */
2289
2292
  contract: string;
2290
2293
  /**
2291
2294
  * Functions this credential authorises. Sorted ascending, deduped,
@@ -2347,7 +2350,7 @@ interface PayrollInvocationDelegated {
2347
2350
  * Direct invocation: the agent acts on its own behalf. No delegation
2348
2351
  * envelope is included. The principal DID is resolved by the service layer
2349
2352
  * from `DynamicContext.authenticated_did`; authorisation falls through to
2350
- * `OrgContractGrants[org || "tee:payroll"]` for the agent's own DID.
2353
+ * `OrgContractGrants[org || "tee:z-payroll"]` for the agent's own DID.
2351
2354
  *
2352
2355
  * Wire shape is `{ request }` — no `envelope` field and no
2353
2356
  * `authenticated_did` field. The contract's entry-point handler injects
@@ -2533,6 +2536,9 @@ interface RevokeDelegationOpts {
2533
2536
  * enforces, and each entry must already appear in the credential's
2534
2537
  * `functions` list (a revocation can only narrow the set, never grow
2535
2538
  * it).
2539
+ *
2540
+ * Ignored when routing to a z-space contract (`revoke-credential` drops
2541
+ * per-function granularity — whole-credential only).
2536
2542
  */
2537
2543
  revokedFunctions?: string[];
2538
2544
  /** Authenticated {@link T3nClient} for the credential's `user_did`. */
@@ -2541,6 +2547,9 @@ interface RevokeDelegationOpts {
2541
2547
  * Override the resolved delegation contract version. Defaults to
2542
2548
  * whatever `GET /api/contracts/current?name=tee:delegation/contracts`
2543
2549
  * returns at call time.
2550
+ *
2551
+ * For z-space credentials this field is REQUIRED — `GET /api/contracts/current`
2552
+ * 404s for z: names, so there is no dynamic resolution path.
2544
2553
  */
2545
2554
  scriptVersion?: string;
2546
2555
  /** Override the node base URL used for `"latest"` resolution. */
@@ -2555,19 +2564,27 @@ interface RevokeDelegationResult {
2555
2564
  * whole-credential, a sorted array means per-function. The contract
2556
2565
  * may return a larger set than `opts.revokedFunctions` when an
2557
2566
  * earlier per-function revocation existed for the same credential.
2567
+ *
2568
+ * Always `null` for z-space credentials (whole-credential granularity only).
2558
2569
  */
2559
2570
  revokedFunctions: string[] | null;
2560
2571
  }
2561
2572
  /**
2562
- * Wraps the `tee:delegation/contracts::revoke` entrypoint. Only the
2563
- * credential's `user_did` may call this the contract reads the
2564
- * authenticated DID from session context and rejects any other caller
2565
- * with `NotCredentialHolder`.
2573
+ * Revoke a delegation credential, routing automatically to the correct
2574
+ * revocation endpoint based on the credential's `contract` field:
2575
+ *
2576
+ * - **`tee:` credentials** — calls `tee:delegation/contracts::revoke`.
2577
+ * Only the credential's `user_did` may call this; the contract reads the
2578
+ * authenticated DID from session context and rejects other callers with
2579
+ * `NotCredentialHolder`. Per-function granularity via `revokedFunctions`
2580
+ * is supported. Merge semantics are handled server-side.
2566
2581
  *
2567
- * Merge semantics are handled server-side: whole-credential revocations
2568
- * are sticky, and per-function revocations accumulate as a sorted +
2569
- * deduped union across calls. The returned `revokedFunctions` reflects
2570
- * the persisted state after merging, not just this call's input.
2582
+ * - **`z:` credentials** routes to `<z-contract>::revoke-credential`.
2583
+ * The tenant owns its own revocation list; the global
2584
+ * `tee:delegation.revoke` rejects z-space credential names with a typed
2585
+ * `TenantScopedCredential` error. `revokedFunctions` is ignored (z-payroll
2586
+ * revokes whole credentials only). `scriptVersion` is REQUIRED for z:
2587
+ * contracts — `GET /api/contracts/current` 404s for them.
2571
2588
  */
2572
2589
  declare function revokeDelegation(opts: RevokeDelegationOpts): Promise<RevokeDelegationResult>;
2573
2590
  /** Options for {@link buildPayrollInvocation}. */
@@ -2603,7 +2620,7 @@ interface BuildPayrollDirectInvocationOpts {
2603
2620
  * `DynamicContext.authenticated_did` at runtime.
2604
2621
  *
2605
2622
  * Callers in direct mode must hold a grant in
2606
- * `OrgContractGrants[org || "tee:payroll"]` under their own DID.
2623
+ * `OrgContractGrants[org || "tee:z-payroll"]` under their own DID.
2607
2624
  *
2608
2625
  * When `request.individual_disbursement_threshold_cents` is undefined this
2609
2626
  * function fills in {@link DEFAULT_INDIVIDUAL_THRESHOLD_CENTS} so the wire
@@ -2637,6 +2654,17 @@ interface UpdateMetaInput {
2637
2654
  orgDid: string;
2638
2655
  admins: string[];
2639
2656
  maxAdmins?: number;
2657
+ /**
2658
+ * Per-org ceiling on delegation-credential validity (seconds).
2659
+ *
2660
+ * Omit to preserve the org's existing cap — the contract merges an
2661
+ * absent field with the stored value, so there is no way to clear the
2662
+ * cap through this call (the contract does not accept an explicit
2663
+ * null). To effectively disable the org cap, set a value at or above
2664
+ * the cluster ceiling — the effective cap is always
2665
+ * `min(org value, cluster ceiling)`.
2666
+ */
2667
+ maxCredentialValiditySecs?: number;
2640
2668
  }
2641
2669
  interface SetWritersInput {
2642
2670
  orgDid: string;
@@ -2752,7 +2780,10 @@ declare class OrgDataClient {
2752
2780
  */
2753
2781
  createPolicy(input: CreatePolicyInput): Promise<MutationResponse>;
2754
2782
  /**
2755
- * Replace the admin list and/or `max_admins` cap on an existing policy.
2783
+ * Replace the admin list and/or `max_admins` cap on an existing policy,
2784
+ * and optionally set the per-org credential validity cap
2785
+ * (`maxCredentialValiditySecs`; omitted fields preserve stored values —
2786
+ * see {@link UpdateMetaInput}).
2756
2787
  *
2757
2788
  * The calling user cannot remove themselves when they are the sole
2758
2789
  * remaining admin; another admin must be added first.
@@ -2793,6 +2824,16 @@ declare class OrgDataClient {
2793
2824
  deleteScope(input: DeleteScopeInput): Promise<MutationResponse>;
2794
2825
  /** Read the policy metadata for an org (admin-only). */
2795
2826
  policyGet(input: PolicyGetInput): Promise<OrgPolicyMeta>;
2827
+ /**
2828
+ * Read the effective org policy view (any authenticated session).
2829
+ *
2830
+ * Returns the **effective** credential validity cap:
2831
+ * `min(org.max_credential_validity_secs, cluster_ceiling)`.
2832
+ * Unlike `policyGet`, this function is not admin-gated — any session
2833
+ * may call it so minting clients can default the requested validity
2834
+ * without needing admin access.
2835
+ */
2836
+ policyView(input: PolicyGetInput): Promise<OrgPolicyView>;
2796
2837
  /** Read the writer list for a scope (admin-only). */
2797
2838
  writersGet(input: WritersGetInput): Promise<OrgWriters>;
2798
2839
  /** Read the grant list for a contract (admin-only). */
@@ -2866,6 +2907,8 @@ declare class SessionOrgDataClient {
2866
2907
  deleteScope(input: DeleteScopeInput): Promise<MutationResponse>;
2867
2908
  /** Mirrors {@link OrgDataClient.policyGet}. */
2868
2909
  policyGet(input: PolicyGetInput): Promise<OrgPolicyMeta>;
2910
+ /** Mirrors {@link OrgDataClient.policyView}. */
2911
+ policyView(input: PolicyGetInput): Promise<OrgPolicyView>;
2869
2912
  /** Mirrors {@link OrgDataClient.writersGet}. */
2870
2913
  writersGet(input: WritersGetInput): Promise<OrgWriters>;
2871
2914
  /** Mirrors {@link OrgDataClient.grantsGet}. */
@@ -3296,6 +3339,46 @@ type TenantMapCreateInput = MapCreateInput;
3296
3339
  type TenantMapUpdatePatch = MapUpdateInput;
3297
3340
  type TenantContractPublishInput = ContractPublishInput;
3298
3341
  type TenantContractExecuteInput = ContractExecuteInput;
3342
+ /**
3343
+ * Options shared by the `tee:tenant` management calls that accept an optional
3344
+ * `tenant` target argument.
3345
+ *
3346
+ * When omitted the server resolves the target from the authenticated session
3347
+ * DID — the original individual-tenant wire-compatible behaviour. When
3348
+ * supplied it must be a 40-hex tid (or `did:t3n:<tid>`):
3349
+ * - individual tenant: must equal the authenticated DID (no new power);
3350
+ * - org-owned tenant: authenticated DID must be in the org's admin set.
3351
+ */
3352
+ interface TenantTargetOptions {
3353
+ /**
3354
+ * Optional 40-hex tenant id (bare or `did:t3n:` prefixed) of the tenant
3355
+ * being managed. Omit for individual self-management (wire-compatible with
3356
+ * the original individual-tenant calls).
3357
+ */
3358
+ tenantTarget?: string;
3359
+ }
3360
+ /**
3361
+ * Options for {@link TenantClient.admitForOrg}.
3362
+ */
3363
+ interface AdmitForOrgOptions {
3364
+ /** 40-hex or `did:t3n:` org DID to admit as an org-owned tenant. */
3365
+ orgDid: string;
3366
+ /** Human-readable label stored with the tenant record. */
3367
+ tenantLabel: string;
3368
+ /** Tenant quotas (same shape as individual tenant admission). */
3369
+ quotas: Record<string, unknown>;
3370
+ /** Storage location (same shape as individual tenant admission). */
3371
+ storageLocation: Record<string, unknown>;
3372
+ /**
3373
+ * A sign function that takes the serialised request body (JSON string) and
3374
+ * returns a hex-encoded Ethereum personal-sign signature. The signed body is
3375
+ * sent to `POST /api/admin` as `x-admin-signature`. The signature format is
3376
+ * identical to other admin operations (`token.transfer`, `tenant.admit`).
3377
+ */
3378
+ signAdminBody: (body: string) => Promise<string>;
3379
+ /** Override the node base URL (defaults to `config.baseUrl`). */
3380
+ baseUrl?: string;
3381
+ }
3299
3382
  declare class TenantNamespace {
3300
3383
  private readonly client;
3301
3384
  constructor(client: TenantClient);
@@ -3305,18 +3388,18 @@ declare class TenantNamespace {
3305
3388
  declare class TenantMapsNamespace {
3306
3389
  private readonly client;
3307
3390
  constructor(client: TenantClient);
3308
- create(input: MapCreateInput): Promise<unknown>;
3309
- update(tail: string, patch: MapUpdateInput): Promise<unknown>;
3310
- delete(tail: string): Promise<unknown>;
3391
+ create(input: MapCreateInput, opts?: TenantTargetOptions): Promise<unknown>;
3392
+ update(tail: string, patch: MapUpdateInput, opts?: TenantTargetOptions): Promise<unknown>;
3393
+ delete(tail: string, opts?: TenantTargetOptions): Promise<unknown>;
3311
3394
  }
3312
3395
  declare class TenantContractsNamespace {
3313
3396
  private readonly client;
3314
3397
  constructor(client: TenantClient);
3315
- publish(input: ContractPublishInput): Promise<unknown>;
3316
- register(input: ContractPublishInput): Promise<unknown>;
3317
- disable(tail: string): Promise<unknown>;
3318
- enable(tail: string): Promise<unknown>;
3319
- unregister(tail: string): Promise<unknown>;
3398
+ publish(input: ContractPublishInput, opts?: TenantTargetOptions): Promise<unknown>;
3399
+ register(input: ContractPublishInput, opts?: TenantTargetOptions): Promise<unknown>;
3400
+ disable(tail: string, opts?: TenantTargetOptions): Promise<unknown>;
3401
+ enable(tail: string, opts?: TenantTargetOptions): Promise<unknown>;
3402
+ unregister(tail: string, opts?: TenantTargetOptions): Promise<unknown>;
3320
3403
  /**
3321
3404
  * Read back debug log entries the tenant's own contract emitted via
3322
3405
  * `logging::info/debug/error`. Scans the per-(tenant, contract) ring written
@@ -3370,8 +3453,32 @@ declare class TenantClient {
3370
3453
  readonly contracts: TenantContractsNamespace;
3371
3454
  readonly token: TenantTokenNamespace;
3372
3455
  constructor(config: TenantClientConfig);
3456
+ /**
3457
+ * Admit an org-owned tenant via the cluster-admin `tenant.admit-for-org`
3458
+ * action.
3459
+ *
3460
+ * This is a signed cluster-admin operation dispatched to `POST /api/admin`
3461
+ * with an `x-admin-signature` header. The caller supplies a `signAdminBody`
3462
+ * function that signs the serialised JSON body (Ethereum personal-sign style,
3463
+ * identical to the `token.transfer` admin operation pattern).
3464
+ *
3465
+ * The org DID becomes the tenant DID (the org's `z:<org-did-hex>:` namespace).
3466
+ * The call is rejected if an `idx:_tenants` row already exists for the org DID,
3467
+ * if `OrgPolicyMeta` is absent, or if the admin set is empty.
3468
+ */
3469
+ admitForOrg(opts: AdmitForOrgOptions): Promise<unknown>;
3373
3470
  getEnvironment(): TenantClientConfig["environment"];
3374
3471
  canonicalName(tail: string): string;
3472
+ /**
3473
+ * Build a canonical `z:<tid>:<tail>` map/contract name for a tenant-targeted
3474
+ * control call. When `tenantTarget` is supplied the name is rooted at that
3475
+ * tenant's namespace, so the `tenant` arg and the resource name agree;
3476
+ * otherwise it falls back to the configured `tenantDid`. Deriving the name
3477
+ * from `config.tenantDid` while targeting a different tenant produces a
3478
+ * `z:<configTid>:` name the server rejects (or, worse, mutates the caller's
3479
+ * own namespace) — this keeps the two in lockstep.
3480
+ */
3481
+ canonicalNameForTarget(tail: string, tenantTarget?: string): string;
3375
3482
  controlPayload(functionName: string, input: unknown): Promise<JsonObject>;
3376
3483
  executeControl(functionName: string, input: unknown): Promise<unknown>;
3377
3484
  executeBusinessContract<T = unknown>(session: TenantExecutionSession, options: ExecuteBusinessContractOptions<T>): Promise<T>;
@@ -3388,5 +3495,5 @@ declare function tenantDidHex(tenantDid: string): string;
3388
3495
  declare function validateTail(tail: string): string;
3389
3496
  declare function canonicalTenantName(tenantDid: string, tail: string): string;
3390
3497
 
3391
- export { AGENT_PUBKEY_LEN, AuthMethod, AuthenticationError, BASE_UNITS_PER_TOKEN, ContractResponseError, DEFAULT_INDIVIDUAL_THRESHOLD_CENTS, DEFAULT_KYC_POLL_CADENCE, DELEGATION_CREDENTIAL_DOMAIN, DELEGATION_INVOCATION_DOMAIN, DelegationCustodialClient, ETH_SIG_LEN, HandshakeError, HttpTransport, KycStatusTimeoutError, LogLevel, MAX_FUNCTIONS_PER_CREDENTIAL, MockTransport, NODE_URLS, NONCE_LEN, OrgDataClient, OtpRateLimitedError, PAYROLL_FUNCTIONS_V1, REQUEST_HASH_LEN, RpcError, SessionExpiredError, SessionOrgDataClient, SessionStateError, SessionStatus, T3nClient, T3nError, TERMINAL_KYC_STATUSES, TOKEN_DECIMALS, TenantClient, TenantContractsNamespace, TenantMapsNamespace, TenantNamespace, TenantSdkValidationError, TenantTokenNamespace, UnsupportedTenantSdkOperationError, UserUpsertError, VC_ID_LEN, WasmError, _b64uEncode, assertShape, b64uDecodeStrict, b64uEncodeBytes, buildDelegationCredential, buildInvocationPreimage, buildPayrollDirectInvocation, buildPayrollInvocation, bytesToString, canonicalTenantName, canonicaliseCredential, canonicaliseRequest, clearKeyCache, compactDidFromBytes, createDefaultHandlers, createEmailOtpAuthInput, createEthAuthInput, createLogger, createMlKemPublicKeyHandler, createOidcAuthInput, createOrgDataClientFromSession, createRandomHandler, decodeWasmErrorMessage, eip191Digest, ethRecoverEip191, eth_get_address, extractWasmError, fetchDkgAttestation, fetchMlKemPublicKey, formatTokens, generateRandomString, generateUUID, getEnvironment, getEnvironmentName, getGlobalLogLevel, getLogger, getNodeUrl, getScriptVersion, isDataGetResponse, isDataListResponse, isMutationResponse, isObject, isOrgContractGrants, isOrgPolicyMeta, isOrgWriters, loadConfig, loadWasmComponent, maskKeyMaterial, metamask_get_address, metamask_sign, parseContractResponse, redactSecrets, redactSecretsFromJson, requestHash, revokeDelegation, setEnvironment, setGlobalLogLevel, setNodeUrl, signAgentInvocation, signCredential, stringToBytes, tenantDidHex, toBaseUnits, validateConfig, validateCredentialBody, validateTail, verifyDkgAttestation, verifyTdxQuote };
3392
- export type { AgeBand, AuthInput, BalanceRow, BuildDelegationCredentialOpts, BuildPayrollDirectInvocationOpts, BuildPayrollInvocationOpts, ChargeReason, ClientAuth, ClientHandshake, ConfigValidationResult, ContractExecuteInput, ContractPublishInput, ContractResponseSchema, CreatePolicyInput, DataGetInput, DataGetResponse, DataListInput, DataListResponse, DelegationCredential, DelegationCustodialClientOpts, DelegationEnvelope, DeleteDataInput, DeleteGrantsInput, DeleteScopeInput, Did, Direction, DkgAttestation, DkgVerifyResult, EmailOtpAuthInput, EmailOtpCredentials, EmployeeRecord, EmploymentStatus, Environment, EthAuthInput, ExecuteBusinessContractOptions, ExecuteOrgDataActionOptions, ExpenseClaim, GetUsageOptions, GrantsGetInput, GuestToHostHandler, GuestToHostHandlers, HandshakeResult, JsonRpcRequest, JsonRpcResponse, KycPollCadence, KycPollOptions, KycStatus, KycStatusKind, Logger, MapCreateInput, MapResponse, MapUpdateInput, MapVisibility, MutationResponse, OidcAuthInput, OidcCredentials, OrgContractGrants, OrgDataActionWire, OrgDataClientOptions, OrgPolicyMeta, OrgWriters, OtpChannel, OtpMergeSuggestion, OtpRequestInput, OtpRequestResult, OtpVerifyInput, OtpVerifyResult, PayrollInvocation, PayrollInvocationDelegated, PayrollInvocationDirect, PayrollRunRequest, PeerQuoteResult, PolicyGetInput, QuoteVerifyResult, ReaderSet, ResidencyCategory, RevokeDelegationOpts, RevokeDelegationResult, SdkConfig, SessionCrypto, SessionId, SetGrantsInput, SetWritersInput, SignCustodialResult, SignDelegationResponse, SubmitUserInputArgs, SubmitUserInputResult, T3nClientConfig, TenantAdmitProjection, TenantAdmitStatus, TenantBaseClient, TenantClientConfig, TenantContractExecuteInput, TenantContractPublishInput, TenantExecutionSession, TenantMapCreateInput, TenantMapUpdatePatch, TenantMeResponse, TenantSdkEnvironment, TenantSelfAdmitResult, TenantStatus, TokenTxKind, Transport, UpdateMetaInput, UsageEntry, UsagePage, UserGrant, UserInputProfile, UserUpsertErrorKind, WasmComponent, WasmNextResult, WriteDataInput, WriterSet, WritersGetInput };
3498
+ export { AGENT_PUBKEY_LEN, AuthMethod, AuthenticationError, BASE_UNITS_PER_TOKEN, ContractResponseError, DEFAULT_INDIVIDUAL_THRESHOLD_CENTS, DEFAULT_KYC_POLL_CADENCE, DELEGATION_CREDENTIAL_DOMAIN, DELEGATION_INVOCATION_DOMAIN, DelegationCustodialClient, ETH_SIG_LEN, HandshakeError, HttpTransport, KycStatusTimeoutError, LogLevel, MAX_FUNCTIONS_PER_CREDENTIAL, MockTransport, NODE_URLS, NONCE_LEN, OrgDataClient, OtpRateLimitedError, REQUEST_HASH_LEN, RpcError, SessionExpiredError, SessionOrgDataClient, SessionStateError, SessionStatus, T3nClient, T3nError, TERMINAL_KYC_STATUSES, TOKEN_DECIMALS, TenantClient, TenantContractsNamespace, TenantMapsNamespace, TenantNamespace, TenantSdkValidationError, TenantTokenNamespace, UnsupportedTenantSdkOperationError, UserUpsertError, VC_ID_LEN, WasmError, Z_PAYROLL_AUDIT_READ_FUNCTIONS, Z_PAYROLL_RUN_FUNCTIONS, _b64uEncode, assertShape, b64uDecodeStrict, b64uEncodeBytes, buildDelegationCredential, buildInvocationPreimage, buildPayrollDirectInvocation, buildPayrollInvocation, bytesToString, canonicalTenantName, canonicaliseCredential, canonicaliseRequest, clearKeyCache, compactDidFromBytes, createDefaultHandlers, createEmailOtpAuthInput, createEthAuthInput, createLogger, createMlKemPublicKeyHandler, createOidcAuthInput, createOrgDataClientFromSession, createRandomHandler, decodeWasmErrorMessage, eip191Digest, ethRecoverEip191, eth_get_address, extractWasmError, fetchDkgAttestation, fetchMlKemPublicKey, formatTokens, generateRandomString, generateUUID, getEnvironment, getEnvironmentName, getGlobalLogLevel, getLogger, getNodeUrl, getScriptVersion, isDataGetResponse, isDataListResponse, isMutationResponse, isObject, isOrgContractGrants, isOrgPolicyMeta, isOrgPolicyView, isOrgWriters, loadConfig, loadWasmComponent, maskKeyMaterial, metamask_get_address, metamask_sign, parseContractResponse, redactSecrets, redactSecretsFromJson, requestHash, revokeDelegation, setEnvironment, setGlobalLogLevel, setNodeUrl, signAgentInvocation, signCredential, stringToBytes, tenantDidHex, toBaseUnits, validateConfig, validateCredentialBody, validateTail, verifyDkgAttestation, verifyTdxQuote };
3499
+ export type { AdmitForOrgOptions, AuthInput, BalanceRow, BuildDelegationCredentialOpts, BuildPayrollDirectInvocationOpts, BuildPayrollInvocationOpts, ChargeReason, ClientAuth, ClientHandshake, ConfigValidationResult, ContractExecuteInput, ContractPublishInput, ContractResponseSchema, CreatePolicyInput, DataGetInput, DataGetResponse, DataListInput, DataListResponse, DelegationCredential, DelegationCustodialClientOpts, DelegationEnvelope, DeleteDataInput, DeleteGrantsInput, DeleteScopeInput, Did, Direction, DkgAttestation, DkgVerifyResult, EmailOtpAuthInput, EmailOtpCredentials, Environment, EthAuthInput, ExecuteBusinessContractOptions, ExecuteOrgDataActionOptions, GetUsageOptions, GrantsGetInput, GuestToHostHandler, GuestToHostHandlers, HandshakeResult, JsonRpcRequest, JsonRpcResponse, KycPollCadence, KycPollOptions, KycStatus, KycStatusKind, Logger, MapCreateInput, MapResponse, MapUpdateInput, MapVisibility, MutationResponse, OidcAuthInput, OidcCredentials, OrgContractGrants, OrgDataActionWire, OrgDataClientOptions, OrgPolicyMeta, OrgPolicyView, OrgWriters, OtpChannel, OtpMergeSuggestion, OtpRequestInput, OtpRequestResult, OtpVerifyInput, OtpVerifyResult, PayrollInvocation, PayrollInvocationDelegated, PayrollInvocationDirect, PayrollRunRequest, PeerQuoteResult, PolicyGetInput, QuoteVerifyResult, ReaderSet, RevokeDelegationOpts, RevokeDelegationResult, SdkConfig, SessionCrypto, SessionId, SetGrantsInput, SetWritersInput, SignCustodialResult, SignDelegationResponse, SubmitUserInputArgs, SubmitUserInputResult, T3nClientConfig, TenantAdmitProjection, TenantAdmitStatus, TenantBaseClient, TenantClientConfig, TenantContractExecuteInput, TenantContractPublishInput, TenantExecutionSession, TenantMapCreateInput, TenantMapUpdatePatch, TenantMeResponse, TenantSdkEnvironment, TenantSelfAdmitResult, TenantStatus, TenantTargetOptions, TokenTxKind, Transport, UpdateMetaInput, UsageEntry, UsagePage, UserGrant, UserInputProfile, UserUpsertErrorKind, WasmComponent, WasmNextResult, WriteDataInput, WriterSet, WritersGetInput };