import { z } from "zod"; import { type JsonValue, type ParticipantIdentityBinding } from "../protocol/public/schemas"; import type { TransitionRequestCallerEvidence } from "../protocol/context/request-contexts"; import type { TransitionCallerRole } from "./roles"; export declare const HostedIdentityProviderKindSchema: z.ZodEnum<{ other: "other"; clerk: "clerk"; oauth_oidc: "oauth_oidc"; cloudflare_access: "cloudflare_access"; custom_jwt: "custom_jwt"; service_credential: "service_credential"; test_fixture: "test_fixture"; }>; export type HostedIdentityProviderKind = z.infer; export declare const HostedIdentityEvidenceInputSchema: z.ZodObject<{ providerKind: z.ZodEnum<{ other: "other"; clerk: "clerk"; oauth_oidc: "oauth_oidc"; cloudflare_access: "cloudflare_access"; custom_jwt: "custom_jwt"; service_credential: "service_credential"; test_fixture: "test_fixture"; }>; authProviderRef: z.ZodString; callerIdentityRef: z.ZodDefault>; subjectRef: z.ZodDefault>; subjectDigest: z.ZodDefault>; tenantId: z.ZodString; organizationId: z.ZodString; projectId: z.ZodDefault>; workspaceId: z.ZodDefault>; custodyRoles: z.ZodArray>; hostedRoles: z.ZodDefault>>; hostedScopes: z.ZodDefault>>; sessionRef: z.ZodDefault>; sessionDigest: z.ZodDefault>; serviceCredentialRef: z.ZodDefault>; serviceCredentialDigest: z.ZodDefault>; claims: z.ZodDefault>>>; claimsDigest: z.ZodDefault>; membershipRefs: z.ZodDefault>; evidenceRefs: z.ZodDefault>; issuedAt: z.ZodString; expiresAt: z.ZodString; revocationEpochRef: z.ZodString; }, z.core.$strict>; export type HostedIdentityEvidenceInput = z.input; export type HostedIdentityEvidence = z.infer; export declare const TransitionCallerIdentitySchema: z.ZodObject<{ callerIdentityRef: z.ZodString; callerSubjectDigest: z.ZodString; tenantId: z.ZodString; organizationId: z.ZodString; projectId: z.ZodDefault>; workspaceId: z.ZodDefault>; custodyRoles: z.ZodArray>; hostedRoles: z.ZodDefault>>; hostedScopes: z.ZodDefault>>; authProviderRef: z.ZodString; authSessionDigest: z.ZodDefault>; serviceCredentialDigest: z.ZodDefault>; issuedAt: z.ZodString; expiresAt: z.ZodString; revocationEpochRef: z.ZodString; claimsDigest: z.ZodString; }, z.core.$strict>; export type TransitionCallerIdentity = z.infer; export declare const HostedParticipantIdentityBindingInputSchema: z.ZodObject<{ participantRole: z.ZodEnum<{ principal: "principal"; agent: "agent"; }>; participantRef: z.ZodString; verificationEvidenceRef: z.ZodDefault>; bindingEvidenceRef: z.ZodDefault>; }, z.core.$strict>; export type HostedParticipantIdentityBindingInput = z.input; export type HostedCallerVerifierInput = { headers: Headers; method: string; url: string; requiredRole: TransitionCallerRole; requiredRoles: readonly TransitionCallerRole[]; routeId: string; routePath: string; now: string; }; export type HostedCallerVerifier = { verify(input: HostedCallerVerifierInput): Promise; }; export type TransitionScope = { tenantId: string; organizationId: string; projectId?: string | null; workspaceId?: string | null; }; export declare function transitionCallerIdentityFromHostedEvidence(value: HostedIdentityEvidenceInput): Promise; export declare function participantIdentityBindingFromHostedCallerIdentity(identityValue: TransitionCallerIdentity, inputValue: HostedParticipantIdentityBindingInput): ParticipantIdentityBinding; export declare function parseHostedCallerIdentity(value: unknown): TransitionCallerIdentity; export declare function assertHostedCallerRole(identity: TransitionCallerIdentity, requiredRole: TransitionCallerRole): void; export declare function assertHostedCallerAnyRole(identity: TransitionCallerIdentity, requiredRoles: readonly TransitionCallerRole[]): void; export declare function assertHostedCallerFresh(identity: TransitionCallerIdentity, now: string, maxIdentityAgeSeconds?: number): void; export declare function assertHostedCallerScope(identity: TransitionCallerIdentity, scope: TransitionScope): void; export declare function transitionCallerEvidenceFromIdentity(identity: TransitionCallerIdentity): Promise;