import type { TrustVerdict } from '../trust/types'; import type { OpenId4VcPluginOptions } from '../types'; import type { BaseAgent } from '@credo-ts/core'; import type { OpenId4VcVerificationSessionRecord, OpenId4VcVerifierApi } from '@credo-ts/openid4vc'; type VerifierApi = Pick; export type OpenId4VcVerifierAgent = Pick & { did?: string; modules: { openId4Vc?: { verifier?: VerifierApi; }; }; }; export interface OpenId4VcVerificationRequest { authorizationRequest: string; verificationSessionId: string; } export interface OpenId4VcVerifiedCredentialResult { vct: string; disclosedClaims: Record; } export interface OpenId4VcVerificationResult { state: OpenId4VcVerificationSessionRecord['state']; cryptographicVerified: boolean; accepted: boolean; trust?: TrustVerdict; credential?: OpenId4VcVerifiedCredentialResult; } export declare class OpenId4VcVerifierRequestError extends Error { } export declare class UnknownVerificationSessionError extends Error { } export declare class VerifierService { private readonly agent; private readonly options; private initialization?; private signingCertificate?; private initialized; private readonly trustClient; constructor(agent: OpenId4VcVerifierAgent, options: OpenId4VcPluginOptions); ensureInitialized(): Promise; createRequest(policyId: string): Promise; getResult(sessionId: string): Promise; private initialize; private createOrUpdateVerifier; private getSession; private getVerifiedResponse; private assertSessionOwnership; private assertStableVerifiedSession; private matchConfiguredPolicy; private blockedResult; private verifierApi; private verifierOptions; private trustOptions; private signingCertificateHandle; } export {};