import { Future, Logger, Result } from "@adviser/cement"; import { SuperThis } from "@fireproof/core-types-base"; import { CalculatePreSignedUrl } from "./msg-types-data.js"; import { ReadWrite, Role, TenantLedger } from "./msg-types.zod.js"; import { z } from "zod/v4"; export declare const VERSION = "FP-MSG-1.0"; export declare function toReadWrite(i?: string): ReadWrite; export declare function toRole(i?: string): Role; export type MsgWithError = T | ErrorMsg; export interface PreSignedMsg extends MsgWithTenantLedger { readonly methodParam: MethodSignedUrlParam; readonly urlParam: SignedUrlParam; } export interface MsgRawConnection { readonly sthis: SuperThis; isReady: boolean; bind(req: Q, opts: RequestOpts): ReadableStream>; request(req: Q, opts: RequestOpts): Promise>; send(msg: Q): Promise>; start(): Promise>; close(o: T): Promise>; } export interface RequestOpts { readonly waitFor: (msg: MsgBase) => boolean; readonly noConn?: boolean; readonly pollInterval?: number; readonly timeout?: number; readonly noRetry?: boolean; readonly rawConn?: MsgRawConnection; } export interface EnDeCoder { encode(node: T): Uint8Array; decode(data: Uint8Array): T; } export interface WaitForTid { readonly tid: string; readonly future: Future; readonly timeout?: number; readonly waitFor: (msg: MsgBase) => boolean; } export interface NextId { readonly nextId: SuperThis["nextId"]; } export declare function isAuthTypeFPCloudJWK(a: AuthType): a is FPJWKCloudAuthType; export declare function isAuthTypeFPCloud(a: AuthType): a is FPCloudAuthType; export type AuthFactory = (tp?: Partial) => Promise>; export declare function keyTenantLedger(t: TenantLedger): string; export declare function qsidEqual(a: QSId, b: QSId): boolean; export declare function qsidKey(qsid: QSId): string; export declare function MsgIsTid(msg: MsgBase, tid: string): boolean; export type MsgWithConn = T & { readonly conn: QSId; }; export type MsgWithOptionalConn = T & { readonly conn?: Partial; }; export type MsgWithOptionalTenantLedger = T & { readonly tenant?: Partial; }; export type MsgWithTenantLedger = T & { readonly tenant: TenantLedger; }; export declare function MsgIsNotReadyError(msg: MsgBase): msg is NotReadyErrorMsg; export declare function MsgIsError(rq: MsgBase): rq is ErrorMsg; export declare function MsgIsQSError(rq: ReqRes): rq is ReqRes; export type HttpMethods = "GET" | "PUT" | "DELETE"; export type FPStoreTypes = "meta" | "car" | "wal" | "file"; export declare function coerceFPStoreTypes(s?: string): FPStoreTypes; export type ProtocolCapabilities = "reqRes" | "stream"; export declare function isProtocolCapabilities(s: string): s is ProtocolCapabilities; export interface Gestalt { readonly storeTypes: FPStoreTypes[]; readonly id: string; readonly protocolCapabilities: ProtocolCapabilities[]; readonly httpEndpoints: string[]; readonly wsEndpoints: string[]; readonly encodings: ("JSON" | "CBOR")[]; readonly auth: AuthType[]; readonly requiresAuth: boolean; readonly data?: { readonly inband: boolean; readonly outband: boolean; }; readonly meta?: { readonly inband: true; readonly outband: boolean; }; readonly wal?: { readonly inband: boolean; readonly outband: boolean; }; readonly reqTypes: string[]; readonly resTypes: string[]; readonly eventTypes: string[]; } export type GestaltParam = Partial & { readonly id: string; }; export declare function defaultGestalt(msgP: MsgerParams, gestalt: GestaltParam): Gestalt; export declare function buildReqChat(sthis: NextId, auth: AuthType, conn: Partial, message: string, targets?: QSId[]): ReqChat; export declare function buildResChat(req: ReqChat, conn?: QSId, message?: string, targets?: QSId[], auth?: AuthType): ResChat; export declare function MsgIsReqChat(msg: MsgBase): msg is ReqChat; export declare function MsgIsResChat(msg: MsgBase): msg is ResChat; export declare function MsgIsReqGestalt(msg: MsgBase): msg is ReqGestalt; export declare function buildReqGestalt(sthis: NextId, auth: AuthType, gestalt: Gestalt, publish?: boolean): ReqGestalt; export declare function buildResGestalt(req: ReqGestalt, gestalt: Gestalt, auth: AuthType): ResGestalt | ErrorMsg; export declare function MsgIsResGestalt(msg: MsgBase): msg is ResGestalt; export declare function buildReqOpen(sthis: NextId, auth: AuthType, conn: Partial): ReqOpen; export declare function MsgIsReqOpen(imsg: MsgBase): imsg is ReqOpen; export declare function MsgIsWithConn(msg: T): msg is MsgWithConn; export declare function MsgIsWithConnAuth(msg: T): msg is MsgWithConn; export declare function MsgIsConnected(msg: T, qsid: QSId): msg is MsgWithConn; export declare function buildResOpen(sthis: NextId, req: ReqOpen, resStreamId?: string): ResOpen; export declare function MsgIsResOpen(msg: MsgBase): msg is ResOpen; export declare function MsgIsReqClose(msg: MsgBase): msg is ReqClose; export declare function MsgIsResClose(msg: MsgBase): msg is ResClose; export declare function buildResClose(req: ReqClose, conn: QSId): ResClose; export declare function buildReqClose(sthis: NextId, auth: AuthType, conn: QSId): ReqClose; export interface ReqSignedUrlParam { readonly auth: AuthType; readonly methodParam: MethodSignedUrlParam; readonly urlParam: SignedUrlParam; } export interface UpdateReqRes { req: Q; res: S; } export type ReqRes = Readonly>; export declare function buildErrorMsg(msgCtx: { readonly logger: Logger; readonly sthis: SuperThis; }, base: Partial, error: Error, body?: string, stack?: string[]): ErrorMsg; export declare function MsgIsTenantLedger(msg: T): msg is MsgWithTenantLedger>; export type ReqSignedUrlWithoutMethodParams = SignedUrlParams & MsgWithTenantLedger; export type ReqSignedUrl = MethodSignedUrlParams & MsgWithTenantLedger; export declare function buildReqSignedUrl(sthis: NextId, type: string, rparam: ReqSignedUrlParam, gwCtx: GwCtx): T; export interface MsgTypesCtx { readonly sthis: SuperThis; readonly logger: Logger; } export interface MsgTypesCtxSync { readonly sthis: SuperThis; readonly logger: Logger; readonly auth: AuthType; } export declare function resAuth(msg: MsgBase): Promise; declare const UCanAuthSchema: z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>; declare const FPJWKCloudAuthTypeSchema: z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>; export declare const BaseTokenParamSchema: z.ZodReadonly>; export type BaseTokenParam = z.infer; export declare const TokenForParamSchema: z.ZodReadonly; iss: z.ZodOptional; sub: z.ZodOptional; aud: z.ZodOptional]>>; exp: z.ZodOptional; nbf: z.ZodOptional; iat: z.ZodOptional; jti: z.ZodOptional; userId: z.ZodString; email: z.ZodEmail; nickname: z.ZodOptional; provider: z.ZodOptional>; created: z.ZodCoercedDate; tenants: z.ZodArray; }, z.core.$strip>>>; ledgers: z.ZodArray; right: z.ZodEnum<{ read: "read"; write: "write"; }>; }, z.core.$strip>>>; selected: z.ZodReadonly; tenant: z.ZodString; ledger: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>, z.ZodObject<{ alg: z.ZodOptional; issuer: z.ZodOptional; audience: z.ZodOptional; validFor: z.ZodOptional; }, z.core.$strip>>>; export type TokenForParam = z.infer; declare const FPCloudAuthTypeSchema: z.ZodReadonly; params: z.ZodReadonly; iss: z.ZodOptional; sub: z.ZodOptional; aud: z.ZodOptional]>>; exp: z.ZodOptional; nbf: z.ZodOptional; iat: z.ZodOptional; jti: z.ZodOptional; userId: z.ZodString; email: z.ZodEmail; nickname: z.ZodOptional; provider: z.ZodOptional>; created: z.ZodCoercedDate; tenants: z.ZodArray; }, z.core.$strip>>>; ledgers: z.ZodArray; right: z.ZodEnum<{ read: "read"; write: "write"; }>; }, z.core.$strip>>>; selected: z.ZodReadonly; tenant: z.ZodString; ledger: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>, z.ZodObject<{ alg: z.ZodOptional; issuer: z.ZodOptional; audience: z.ZodOptional; validFor: z.ZodOptional; }, z.core.$strip>>>; jwk: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>; export declare const AuthTypeSchema: z.ZodDiscriminatedUnion<[z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly; iss: z.ZodOptional; sub: z.ZodOptional; aud: z.ZodOptional]>>; exp: z.ZodOptional; nbf: z.ZodOptional; iat: z.ZodOptional; jti: z.ZodOptional; userId: z.ZodString; email: z.ZodEmail; nickname: z.ZodOptional; provider: z.ZodOptional>; created: z.ZodCoercedDate; tenants: z.ZodArray; }, z.core.$strip>>>; ledgers: z.ZodArray; right: z.ZodEnum<{ read: "read"; write: "write"; }>; }, z.core.$strip>>>; selected: z.ZodReadonly; tenant: z.ZodString; ledger: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>, z.ZodObject<{ alg: z.ZodOptional; issuer: z.ZodOptional; audience: z.ZodOptional; validFor: z.ZodOptional; }, z.core.$strip>>>; jwk: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; }, z.core.$strip>>], "type">; export type AuthType = z.infer; export type UCanAuth = z.infer; export type FPJWKCloudAuthType = z.infer; export type FPCloudAuthType = z.infer; export declare const QSIdSchema: z.ZodObject<{ reqId: z.ZodString; resId: z.ZodString; }, z.core.$strip>; export type QSId = z.infer; export declare const MsgBaseSchema: z.ZodObject<{ tid: z.ZodString; type: z.ZodString; version: z.ZodString; auth: z.ZodDiscriminatedUnion<[z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly; iss: z.ZodOptional; sub: z.ZodOptional; aud: z.ZodOptional]>>; exp: z.ZodOptional; nbf: z.ZodOptional; iat: z.ZodOptional; jti: z.ZodOptional; userId: z.ZodString; email: z.ZodEmail; nickname: z.ZodOptional; provider: z.ZodOptional>; created: z.ZodCoercedDate; tenants: z.ZodArray; }, z.core.$strip>>>; ledgers: z.ZodArray; right: z.ZodEnum<{ read: "read"; write: "write"; }>; }, z.core.$strip>>>; selected: z.ZodReadonly; tenant: z.ZodString; ledger: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>, z.ZodObject<{ alg: z.ZodOptional; issuer: z.ZodOptional; audience: z.ZodOptional; validFor: z.ZodOptional; }, z.core.$strip>>>; jwk: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; }, z.core.$strip>>], "type">; }, z.core.$strip>; export declare const MsgBaseSchemaReadonly: z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly; iss: z.ZodOptional; sub: z.ZodOptional; aud: z.ZodOptional]>>; exp: z.ZodOptional; nbf: z.ZodOptional; iat: z.ZodOptional; jti: z.ZodOptional; userId: z.ZodString; email: z.ZodEmail; nickname: z.ZodOptional; provider: z.ZodOptional>; created: z.ZodCoercedDate; tenants: z.ZodArray; }, z.core.$strip>>>; ledgers: z.ZodArray; right: z.ZodEnum<{ read: "read"; write: "write"; }>; }, z.core.$strip>>>; selected: z.ZodReadonly; tenant: z.ZodString; ledger: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>, z.ZodObject<{ alg: z.ZodOptional; issuer: z.ZodOptional; audience: z.ZodOptional; validFor: z.ZodOptional; }, z.core.$strip>>>; jwk: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; }, z.core.$strip>>], "type">; }, z.core.$strip>>; export type MsgBase = z.infer; export declare const GestaltSchema: z.ZodType; export declare const MethodSignedUrlParamSchema: z.ZodObject<{ method: z.ZodEnum<{ DELETE: "DELETE"; GET: "GET"; PUT: "PUT"; }>; store: z.ZodEnum<{ car: "car"; file: "file"; meta: "meta"; wal: "wal"; }>; }, z.core.$strip>; export type MethodSignedUrlParam = z.infer; export declare const SignedUrlParamSchema: z.ZodObject<{ path: z.ZodOptional; key: z.ZodString; expires: z.ZodOptional; index: z.ZodOptional; }, z.core.$strip>; export type SignedUrlParam = z.infer; export declare const MethodParamsSchema: z.ZodObject<{ methodParam: z.ZodObject<{ method: z.ZodEnum<{ DELETE: "DELETE"; GET: "GET"; PUT: "PUT"; }>; store: z.ZodEnum<{ car: "car"; file: "file"; meta: "meta"; wal: "wal"; }>; }, z.core.$strip>; }, z.core.$strip>; export type MethodParams = z.infer; export declare const SignedUrlParamsSchema: z.ZodObject<{ urlParam: z.ZodObject<{ path: z.ZodOptional; key: z.ZodString; expires: z.ZodOptional; index: z.ZodOptional; }, z.core.$strip>; }, z.core.$strip>; export type SignedUrlParams = z.infer; export declare const MethodSignedUrlParamsSchema: z.ZodIntersection; store: z.ZodEnum<{ car: "car"; file: "file"; meta: "meta"; wal: "wal"; }>; }, z.core.$strip>; }, z.core.$strip>, z.ZodObject<{ urlParam: z.ZodObject<{ path: z.ZodOptional; key: z.ZodString; expires: z.ZodOptional; index: z.ZodOptional; }, z.core.$strip>; }, z.core.$strip>>; export type MethodSignedUrlParams = z.infer; export declare const ReqChatSchema: z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly; iss: z.ZodOptional; sub: z.ZodOptional; aud: z.ZodOptional]>>; exp: z.ZodOptional; nbf: z.ZodOptional; iat: z.ZodOptional; jti: z.ZodOptional; userId: z.ZodString; email: z.ZodEmail; nickname: z.ZodOptional; provider: z.ZodOptional>; created: z.ZodCoercedDate; tenants: z.ZodArray; }, z.core.$strip>>>; ledgers: z.ZodArray; right: z.ZodEnum<{ read: "read"; write: "write"; }>; }, z.core.$strip>>>; selected: z.ZodReadonly; tenant: z.ZodString; ledger: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>, z.ZodObject<{ alg: z.ZodOptional; issuer: z.ZodOptional; audience: z.ZodOptional; validFor: z.ZodOptional; }, z.core.$strip>>>; jwk: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; }, z.core.$strip>>], "type">; type: z.ZodLiteral<"reqChat">; conn: z.ZodObject<{ reqId: z.ZodString; resId: z.ZodString; }, z.core.$strip>; message: z.ZodString; targets: z.ZodArray>; }, z.core.$strip>>; export declare const ResChatSchema: z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly; iss: z.ZodOptional; sub: z.ZodOptional; aud: z.ZodOptional]>>; exp: z.ZodOptional; nbf: z.ZodOptional; iat: z.ZodOptional; jti: z.ZodOptional; userId: z.ZodString; email: z.ZodEmail; nickname: z.ZodOptional; provider: z.ZodOptional>; created: z.ZodCoercedDate; tenants: z.ZodArray; }, z.core.$strip>>>; ledgers: z.ZodArray; right: z.ZodEnum<{ read: "read"; write: "write"; }>; }, z.core.$strip>>>; selected: z.ZodReadonly; tenant: z.ZodString; ledger: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>, z.ZodObject<{ alg: z.ZodOptional; issuer: z.ZodOptional; audience: z.ZodOptional; validFor: z.ZodOptional; }, z.core.$strip>>>; jwk: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; }, z.core.$strip>>], "type">; type: z.ZodLiteral<"resChat">; conn: z.ZodObject<{ reqId: z.ZodString; resId: z.ZodString; }, z.core.$strip>; message: z.ZodString; targets: z.ZodArray>; }, z.core.$strip>>; export declare const ReqGestaltSchema: z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly; iss: z.ZodOptional; sub: z.ZodOptional; aud: z.ZodOptional]>>; exp: z.ZodOptional; nbf: z.ZodOptional; iat: z.ZodOptional; jti: z.ZodOptional; userId: z.ZodString; email: z.ZodEmail; nickname: z.ZodOptional; provider: z.ZodOptional>; created: z.ZodCoercedDate; tenants: z.ZodArray; }, z.core.$strip>>>; ledgers: z.ZodArray; right: z.ZodEnum<{ read: "read"; write: "write"; }>; }, z.core.$strip>>>; selected: z.ZodReadonly; tenant: z.ZodString; ledger: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>, z.ZodObject<{ alg: z.ZodOptional; issuer: z.ZodOptional; audience: z.ZodOptional; validFor: z.ZodOptional; }, z.core.$strip>>>; jwk: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; }, z.core.$strip>>], "type">; type: z.ZodLiteral<"reqGestalt">; gestalt: z.ZodType>; publish: z.ZodOptional; }, z.core.$strip>>; export declare const ResGestaltSchema: z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly; iss: z.ZodOptional; sub: z.ZodOptional; aud: z.ZodOptional]>>; exp: z.ZodOptional; nbf: z.ZodOptional; iat: z.ZodOptional; jti: z.ZodOptional; userId: z.ZodString; email: z.ZodEmail; nickname: z.ZodOptional; provider: z.ZodOptional>; created: z.ZodCoercedDate; tenants: z.ZodArray; }, z.core.$strip>>>; ledgers: z.ZodArray; right: z.ZodEnum<{ read: "read"; write: "write"; }>; }, z.core.$strip>>>; selected: z.ZodReadonly; tenant: z.ZodString; ledger: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>, z.ZodObject<{ alg: z.ZodOptional; issuer: z.ZodOptional; audience: z.ZodOptional; validFor: z.ZodOptional; }, z.core.$strip>>>; jwk: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; }, z.core.$strip>>], "type">; type: z.ZodLiteral<"resGestalt">; gestalt: z.ZodType>; }, z.core.$strip>>; export declare const ReqOpenConnSchema: z.ZodReadonly; }, z.core.$strip>>; export type ReqOpenConn = z.infer; export declare const ReqOpenSchema: z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly; iss: z.ZodOptional; sub: z.ZodOptional; aud: z.ZodOptional]>>; exp: z.ZodOptional; nbf: z.ZodOptional; iat: z.ZodOptional; jti: z.ZodOptional; userId: z.ZodString; email: z.ZodEmail; nickname: z.ZodOptional; provider: z.ZodOptional>; created: z.ZodCoercedDate; tenants: z.ZodArray; }, z.core.$strip>>>; ledgers: z.ZodArray; right: z.ZodEnum<{ read: "read"; write: "write"; }>; }, z.core.$strip>>>; selected: z.ZodReadonly; tenant: z.ZodString; ledger: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>, z.ZodObject<{ alg: z.ZodOptional; issuer: z.ZodOptional; audience: z.ZodOptional; validFor: z.ZodOptional; }, z.core.$strip>>>; jwk: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; }, z.core.$strip>>], "type">; type: z.ZodLiteral<"reqOpen">; conn: z.ZodReadonly; }, z.core.$strip>>; }, z.core.$strip>>; export declare const ResOpenSchema: z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly; iss: z.ZodOptional; sub: z.ZodOptional; aud: z.ZodOptional]>>; exp: z.ZodOptional; nbf: z.ZodOptional; iat: z.ZodOptional; jti: z.ZodOptional; userId: z.ZodString; email: z.ZodEmail; nickname: z.ZodOptional; provider: z.ZodOptional>; created: z.ZodCoercedDate; tenants: z.ZodArray; }, z.core.$strip>>>; ledgers: z.ZodArray; right: z.ZodEnum<{ read: "read"; write: "write"; }>; }, z.core.$strip>>>; selected: z.ZodReadonly; tenant: z.ZodString; ledger: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>, z.ZodObject<{ alg: z.ZodOptional; issuer: z.ZodOptional; audience: z.ZodOptional; validFor: z.ZodOptional; }, z.core.$strip>>>; jwk: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; }, z.core.$strip>>], "type">; type: z.ZodLiteral<"resOpen">; conn: z.ZodObject<{ reqId: z.ZodString; resId: z.ZodString; }, z.core.$strip>; }, z.core.$strip>>; export declare const ReqCloseSchema: z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly; iss: z.ZodOptional; sub: z.ZodOptional; aud: z.ZodOptional]>>; exp: z.ZodOptional; nbf: z.ZodOptional; iat: z.ZodOptional; jti: z.ZodOptional; userId: z.ZodString; email: z.ZodEmail; nickname: z.ZodOptional; provider: z.ZodOptional>; created: z.ZodCoercedDate; tenants: z.ZodArray; }, z.core.$strip>>>; ledgers: z.ZodArray; right: z.ZodEnum<{ read: "read"; write: "write"; }>; }, z.core.$strip>>>; selected: z.ZodReadonly; tenant: z.ZodString; ledger: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>, z.ZodObject<{ alg: z.ZodOptional; issuer: z.ZodOptional; audience: z.ZodOptional; validFor: z.ZodOptional; }, z.core.$strip>>>; jwk: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; }, z.core.$strip>>], "type">; type: z.ZodLiteral<"reqClose">; conn: z.ZodObject<{ reqId: z.ZodString; resId: z.ZodString; }, z.core.$strip>; }, z.core.$strip>>; export declare const ResCloseSchema: z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly; iss: z.ZodOptional; sub: z.ZodOptional; aud: z.ZodOptional]>>; exp: z.ZodOptional; nbf: z.ZodOptional; iat: z.ZodOptional; jti: z.ZodOptional; userId: z.ZodString; email: z.ZodEmail; nickname: z.ZodOptional; provider: z.ZodOptional>; created: z.ZodCoercedDate; tenants: z.ZodArray; }, z.core.$strip>>>; ledgers: z.ZodArray; right: z.ZodEnum<{ read: "read"; write: "write"; }>; }, z.core.$strip>>>; selected: z.ZodReadonly; tenant: z.ZodString; ledger: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>, z.ZodObject<{ alg: z.ZodOptional; issuer: z.ZodOptional; audience: z.ZodOptional; validFor: z.ZodOptional; }, z.core.$strip>>>; jwk: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; }, z.core.$strip>>], "type">; type: z.ZodLiteral<"resClose">; conn: z.ZodObject<{ reqId: z.ZodString; resId: z.ZodString; }, z.core.$strip>; }, z.core.$strip>>; export declare const MsgConnAuthSchema: z.ZodReadonly; auth: z.ZodDiscriminatedUnion<[z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly; iss: z.ZodOptional; sub: z.ZodOptional; aud: z.ZodOptional]>>; exp: z.ZodOptional; nbf: z.ZodOptional; iat: z.ZodOptional; jti: z.ZodOptional; userId: z.ZodString; email: z.ZodEmail; nickname: z.ZodOptional; provider: z.ZodOptional>; created: z.ZodCoercedDate; tenants: z.ZodArray; }, z.core.$strip>>>; ledgers: z.ZodArray; right: z.ZodEnum<{ read: "read"; write: "write"; }>; }, z.core.$strip>>>; selected: z.ZodReadonly; tenant: z.ZodString; ledger: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>, z.ZodObject<{ alg: z.ZodOptional; issuer: z.ZodOptional; audience: z.ZodOptional; validFor: z.ZodOptional; }, z.core.$strip>>>; jwk: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; }, z.core.$strip>>], "type">; }, z.core.$strip>>; export type MsgConnAuth = z.infer; export declare const ErrorMsgBaseSchema: z.ZodReadonly; src: z.ZodUnknown; message: z.ZodString; body: z.ZodOptional; stack: z.ZodOptional>; conn: z.ZodOptional; resId: z.ZodOptional; }, z.core.$strip>>; tid: z.ZodString; version: z.ZodString; auth: z.ZodDiscriminatedUnion<[z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly; iss: z.ZodOptional; sub: z.ZodOptional; aud: z.ZodOptional]>>; exp: z.ZodOptional; nbf: z.ZodOptional; iat: z.ZodOptional; jti: z.ZodOptional; userId: z.ZodString; email: z.ZodEmail; nickname: z.ZodOptional; provider: z.ZodOptional>; created: z.ZodCoercedDate; tenants: z.ZodArray; }, z.core.$strip>>>; ledgers: z.ZodArray; right: z.ZodEnum<{ read: "read"; write: "write"; }>; }, z.core.$strip>>>; selected: z.ZodReadonly; tenant: z.ZodString; ledger: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>, z.ZodObject<{ alg: z.ZodOptional; issuer: z.ZodOptional; audience: z.ZodOptional; validFor: z.ZodOptional; }, z.core.$strip>>>; jwk: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; }, z.core.$strip>>], "type">; }, z.core.$strip>>; export declare const NotReadyErrorMsgSchema: z.ZodReadonly; src: z.ZodLiteral<"not-ready">; message: z.ZodLiteral<"Not Ready">; reason: z.ZodLiteral<"not-ready">; body: z.ZodOptional; stack: z.ZodOptional>; conn: z.ZodOptional; resId: z.ZodOptional; }, z.core.$strip>>; tid: z.ZodString; version: z.ZodString; auth: z.ZodDiscriminatedUnion<[z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly; iss: z.ZodOptional; sub: z.ZodOptional; aud: z.ZodOptional]>>; exp: z.ZodOptional; nbf: z.ZodOptional; iat: z.ZodOptional; jti: z.ZodOptional; userId: z.ZodString; email: z.ZodEmail; nickname: z.ZodOptional; provider: z.ZodOptional>; created: z.ZodCoercedDate; tenants: z.ZodArray; }, z.core.$strip>>>; ledgers: z.ZodArray; right: z.ZodEnum<{ read: "read"; write: "write"; }>; }, z.core.$strip>>>; selected: z.ZodReadonly; tenant: z.ZodString; ledger: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>, z.ZodObject<{ alg: z.ZodOptional; issuer: z.ZodOptional; audience: z.ZodOptional; validFor: z.ZodOptional; }, z.core.$strip>>>; jwk: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; }, z.core.$strip>>], "type">; }, z.core.$strip>>; export declare const ErrorMsgSchema: z.ZodUnion; src: z.ZodUnknown; message: z.ZodString; body: z.ZodOptional; stack: z.ZodOptional>; conn: z.ZodOptional; resId: z.ZodOptional; }, z.core.$strip>>; tid: z.ZodString; version: z.ZodString; auth: z.ZodDiscriminatedUnion<[z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly; iss: z.ZodOptional; sub: z.ZodOptional; aud: z.ZodOptional]>>; exp: z.ZodOptional; nbf: z.ZodOptional; iat: z.ZodOptional; jti: z.ZodOptional; userId: z.ZodString; email: z.ZodEmail; nickname: z.ZodOptional; provider: z.ZodOptional>; created: z.ZodCoercedDate; tenants: z.ZodArray; }, z.core.$strip>>>; ledgers: z.ZodArray; right: z.ZodEnum<{ read: "read"; write: "write"; }>; }, z.core.$strip>>>; selected: z.ZodReadonly; tenant: z.ZodString; ledger: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>, z.ZodObject<{ alg: z.ZodOptional; issuer: z.ZodOptional; audience: z.ZodOptional; validFor: z.ZodOptional; }, z.core.$strip>>>; jwk: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; }, z.core.$strip>>], "type">; }, z.core.$strip>>, z.ZodReadonly; src: z.ZodLiteral<"not-ready">; message: z.ZodLiteral<"Not Ready">; reason: z.ZodLiteral<"not-ready">; body: z.ZodOptional; stack: z.ZodOptional>; conn: z.ZodOptional; resId: z.ZodOptional; }, z.core.$strip>>; tid: z.ZodString; version: z.ZodString; auth: z.ZodDiscriminatedUnion<[z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly; iss: z.ZodOptional; sub: z.ZodOptional; aud: z.ZodOptional]>>; exp: z.ZodOptional; nbf: z.ZodOptional; iat: z.ZodOptional; jti: z.ZodOptional; userId: z.ZodString; email: z.ZodEmail; nickname: z.ZodOptional; provider: z.ZodOptional>; created: z.ZodCoercedDate; tenants: z.ZodArray; }, z.core.$strip>>>; ledgers: z.ZodArray; right: z.ZodEnum<{ read: "read"; write: "write"; }>; }, z.core.$strip>>>; selected: z.ZodReadonly; tenant: z.ZodString; ledger: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>, z.ZodObject<{ alg: z.ZodOptional; issuer: z.ZodOptional; audience: z.ZodOptional; validFor: z.ZodOptional; }, z.core.$strip>>>; jwk: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; }, z.core.$strip>>], "type">; }, z.core.$strip>>]>; export type ErrorMsgBase = z.infer; export type NotReadyErrorMsg = z.infer; export type ErrorMsg = z.infer; export declare const ConnInfoSchema: z.ZodReadonly; }, z.core.$strip>>; export type ConnInfo = z.infer; export declare const MsgerParamsSchema: z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly; iss: z.ZodOptional; sub: z.ZodOptional; aud: z.ZodOptional]>>; exp: z.ZodOptional; nbf: z.ZodOptional; iat: z.ZodOptional; jti: z.ZodOptional; userId: z.ZodString; email: z.ZodEmail; nickname: z.ZodOptional; provider: z.ZodOptional>; created: z.ZodCoercedDate; tenants: z.ZodArray; }, z.core.$strip>>>; ledgers: z.ZodArray; right: z.ZodEnum<{ read: "read"; write: "write"; }>; }, z.core.$strip>>>; selected: z.ZodReadonly; tenant: z.ZodString; ledger: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>, z.ZodObject<{ alg: z.ZodOptional; issuer: z.ZodOptional; audience: z.ZodOptional; validFor: z.ZodOptional; }, z.core.$strip>>>; jwk: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; }, z.core.$strip>>], "type">>; hasPersistent: z.ZodOptional; protocolCapabilities: z.ZodOptional>>; timeout: z.ZodNumber; }, z.core.$strip>>; export type MsgerParams = z.infer; export declare const GwCtxSchema: z.ZodReadonly; conn: z.ZodObject<{ reqId: z.ZodString; resId: z.ZodString; }, z.core.$strip>; tenant: z.ZodReadonly; tenant: z.ZodString; ledger: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>; export type GwCtx = z.infer; export declare const ReqGwCtxSchema: z.ZodReadonly; conn: z.ZodObject<{ reqId: z.ZodOptional; resId: z.ZodOptional; }, z.core.$strip>; tenant: z.ZodReadonly; tenant: z.ZodString; ledger: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>; export type ReqGwCtx = z.infer; export declare const GwCtxConnSchema: z.ZodReadonly; conn: z.ZodObject<{ reqId: z.ZodString; resId: z.ZodString; }, z.core.$strip>; tenant: z.ZodReadonly; tenant: z.ZodString; ledger: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>; export type GwCtxConn = z.infer; export declare const ResSignedUrlSchema: z.ZodObject<{ tid: z.ZodString; type: z.ZodString; version: z.ZodString; auth: z.ZodDiscriminatedUnion<[z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly; iss: z.ZodOptional; sub: z.ZodOptional; aud: z.ZodOptional]>>; exp: z.ZodOptional; nbf: z.ZodOptional; iat: z.ZodOptional; jti: z.ZodOptional; userId: z.ZodString; email: z.ZodEmail; nickname: z.ZodOptional; provider: z.ZodOptional>; created: z.ZodCoercedDate; tenants: z.ZodArray; }, z.core.$strip>>>; ledgers: z.ZodArray; right: z.ZodEnum<{ read: "read"; write: "write"; }>; }, z.core.$strip>>>; selected: z.ZodReadonly; tenant: z.ZodString; ledger: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>, z.ZodObject<{ alg: z.ZodOptional; issuer: z.ZodOptional; audience: z.ZodOptional; validFor: z.ZodOptional; }, z.core.$strip>>>; jwk: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; }, z.core.$strip>>], "type">; conn: z.ZodObject<{ reqId: z.ZodString; resId: z.ZodString; }, z.core.$strip>; tenant: z.ZodReadonly; tenant: z.ZodString; ledger: z.ZodString; }, z.core.$strip>>; methodParam: z.ZodObject<{ method: z.ZodEnum<{ DELETE: "DELETE"; GET: "GET"; PUT: "PUT"; }>; store: z.ZodEnum<{ car: "car"; file: "file"; meta: "meta"; wal: "wal"; }>; }, z.core.$strip>; urlParam: z.ZodObject<{ path: z.ZodOptional; key: z.ZodString; expires: z.ZodOptional; index: z.ZodOptional; }, z.core.$strip>; signedUrl: z.ZodString; }, z.core.$strip>; export declare const ResOptionalSignedUrlSchema: z.ZodObject<{ tid: z.ZodString; type: z.ZodString; version: z.ZodString; auth: z.ZodDiscriminatedUnion<[z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly; iss: z.ZodOptional; sub: z.ZodOptional; aud: z.ZodOptional]>>; exp: z.ZodOptional; nbf: z.ZodOptional; iat: z.ZodOptional; jti: z.ZodOptional; userId: z.ZodString; email: z.ZodEmail; nickname: z.ZodOptional; provider: z.ZodOptional>; created: z.ZodCoercedDate; tenants: z.ZodArray; }, z.core.$strip>>>; ledgers: z.ZodArray; right: z.ZodEnum<{ read: "read"; write: "write"; }>; }, z.core.$strip>>>; selected: z.ZodReadonly; tenant: z.ZodString; ledger: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>, z.ZodObject<{ alg: z.ZodOptional; issuer: z.ZodOptional; audience: z.ZodOptional; validFor: z.ZodOptional; }, z.core.$strip>>>; jwk: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>, z.ZodReadonly; params: z.ZodReadonly>; }, z.core.$strip>>, z.ZodReadonly; }, z.core.$strip>>], "type">; conn: z.ZodObject<{ reqId: z.ZodString; resId: z.ZodString; }, z.core.$strip>; tenant: z.ZodReadonly; tenant: z.ZodString; ledger: z.ZodString; }, z.core.$strip>>; urlParam: z.ZodObject<{ path: z.ZodOptional; key: z.ZodString; expires: z.ZodOptional; index: z.ZodOptional; }, z.core.$strip>; methodParam: z.ZodObject<{ method: z.ZodEnum<{ DELETE: "DELETE"; GET: "GET"; PUT: "PUT"; }>; store: z.ZodEnum<{ car: "car"; file: "file"; meta: "meta"; wal: "wal"; }>; }, z.core.$strip>; signedUrl: z.ZodOptional; }, z.core.$strip>; export type ReqChat = z.infer; export type ResChat = z.infer; export type ReqGestalt = z.infer; export type ResGestalt = z.infer; export type ReqOpen = z.infer; export type ResOpen = z.infer; export type ReqClose = z.infer; export type ResClose = z.infer; export type ResSignedUrl = z.infer; export type ResOptionalSignedUrl = z.infer; export declare function buildRes>, S extends ResSignedUrl>(methodParam: MethodSignedUrlParam, type: string, msgCtx: MsgTypesCtx, req: Q, ctx: CalculatePreSignedUrl): Promise>; export {};