import { OpenId4VciMetadata } from "../shared/models/index.mjs"; import "../shared/index.mjs"; import { OpenId4VcParseAndVerifyAuthorizationResponseOptions, OpenId4VciAcceptCredentialOfferOptions, OpenId4VciAuthCodeFlowOptions, OpenId4VciCredentialResponse, OpenId4VciDeferredCredentialRequestOptions, OpenId4VciDeferredCredentialResponse, OpenId4VciDpopRequestOptions, OpenId4VciResolvedAuthorizationRequest, OpenId4VciResolvedCredentialOffer, OpenId4VciRetrieveAuthorizationCodeUsingPresentationOptions, OpenId4VciSendNotificationOptions, OpenId4VciTokenRefreshOptions, OpenId4VciTokenRequestOptions } from "./OpenId4VciHolderServiceOptions.mjs"; import { AgentContext, Logger, W3cCredentialService, W3cV2CredentialService } from "@credo-ts/core"; import { AccessTokenResponse, Oauth2Client } from "@openid4vc/oauth2"; //#region src/openid4vc-holder/OpenId4VciHolderService.d.ts declare class OpenId4VciHolderService { private logger; private w3cCredentialService; private w3cV2CredentialService; constructor(logger: Logger, w3cCredentialService: W3cCredentialService, w3cV2CredentialService: W3cV2CredentialService); resolveIssuerMetadata(agentContext: AgentContext, credentialIssuer: string): Promise; resolveCredentialOffer(agentContext: AgentContext, credentialOffer: string): Promise; resolveAuthorizationRequest(agentContext: AgentContext, resolvedCredentialOffer: OpenId4VciResolvedCredentialOffer, authCodeFlowOptions: OpenId4VciAuthCodeFlowOptions): Promise; sendNotification(agentContext: AgentContext, options: OpenId4VciSendNotificationOptions): Promise; private getDpopOptions; retrieveAuthorizationCodeUsingPresentation(agentContext: AgentContext, options: OpenId4VciRetrieveAuthorizationCodeUsingPresentationOptions): Promise<{ authorizationCode: string; dpop?: OpenId4VciDpopRequestOptions; }>; parseAuthorizationCodeFromAuthorizationResponse(agentContext: AgentContext, options: OpenId4VcParseAndVerifyAuthorizationResponseOptions): { authorizationCode: string; }; requestAccessToken(agentContext: AgentContext, options: OpenId4VciTokenRequestOptions): Promise<{ authorizationServer: string; accessTokenResponse: AccessTokenResponse; dpop?: OpenId4VciDpopRequestOptions; }>; refreshAccessToken(agentContext: AgentContext, options: OpenId4VciTokenRefreshOptions): Promise>, 'dpop'> & { dpop?: OpenId4VciDpopRequestOptions; }>; acceptCredentialOffer(agentContext: AgentContext, options: { resolvedCredentialOffer: OpenId4VciResolvedCredentialOffer; acceptCredentialOfferOptions: OpenId4VciAcceptCredentialOfferOptions; accessToken: string; cNonce?: string; dpop?: OpenId4VciDpopRequestOptions; clientId?: string; }): Promise<{ credentials: OpenId4VciCredentialResponse[]; deferredCredentials: OpenId4VciDeferredCredentialResponse[]; dpop?: OpenId4VciDpopRequestOptions; cNonce?: string; }>; retrieveDeferredCredentials(agentContext: AgentContext, options: OpenId4VciDeferredCredentialRequestOptions): Promise<{ credentials: OpenId4VciCredentialResponse[]; deferredCredentials: OpenId4VciDeferredCredentialResponse[]; dpop?: OpenId4VciDpopRequestOptions; }>; /** * Get the options for the credential request. Internally this will resolve the proof of possession * requirements, and based on that it will call the proofOfPossessionVerificationMethodResolver to * allow the caller to select the correct verification method based on the requirements for the proof * of possession. */ private getCredentialRequestOptions; /** * Get the requirements for creating the proof of possession. Based on the allowed * credential formats, the allowed proof of possession signature algorithms, and the * credential type, this method will select the best credential format and signature * algorithm to use, based on the order of preference. */ private getProofOfPossessionRequirements; private handleCredentialResponse; private getCallbacks; private getClient; private getOauth2Client; } //#endregion export { OpenId4VciHolderService }; //# sourceMappingURL=OpenId4VciHolderService.d.mts.map